ui <- shiny::fluidPage(
queryBuilderInput(
"qb",
filters = list(
queryFilter(
"Species", type = "character", operators = c("in", "equal"),
values = levels(iris$Species), multiple = TRUE,
optgroup = "char_fields"
),
queryFilter(
"Sepal.Length", type = "numeric",
values = range(iris$Sepal.Length), optgroup = "num_fields"
)
),
rules = queryGroup(
condition = "AND",
queryRule("Species", "equal", "setosa", flags = list(no_delete = TRUE)),
queryRule("Sepal.Length", "between", c(5, 7))
),
optgroups = list(num_fields = "Numerical fields", char_fields = "Character fields")
),
shiny::verbatimTextOutput("expr")
)
server <- function(input, output, session) {}
if (interactive()) {
shiny::runApp(ui, server)
}
Run the code above in your browser using DataLab