What i want to achieve that user can flexiblely disable/enable 2nd level filters id2('Resource') and id3('Case'):
- id2('Resource')and- id3('Case')enabled: program show relevant result based on id1, id2 and id3 filters
- id2('Resource')and- id3('Case')disabled: program ONLY show level 1 id1('ThrouputTime') filtered result.
I implement (pheusdo) code below, the program will fetch result based on these 3 filtered at SAMETIME, but can not achieve 2nd situation mentioned above. Any suggestion?
ui <- dashboardPage(
    dashboardBody(
        tabItems(
                tabItem(tabName = "dashboard",
            fluidRow(
                        box(
                            title = "ThrouputTime",
                            width = 3,
                            sliderInput(inputId="id1", label="ThrouputTime", ...)
                           )    
                ),      
            fluidRow(
                        box(
                            title = "Resource",
                            width = 3,
                            selectInput(inputId="id2", label="resource", ...)
                           ),
                box(
                            title = "Case",
                            width = 3,
                            selectInput(inputId="id3", label="case", ...)
                           )
                )
            )
              )
           )
server <- function(input, output, session){
  observe({
    output$process <- renderProcessanimater(expr = {
      filtered_event <- newevent %>%
        filter_throughput_time(interval = c(input$throughput[1], input$throughput[2])) %>%
        filter_resource(input$id2)  %>%                 
        filter_case(input$id3, reverse = F)                   
        #.... generate a workflow graph based on 'filtered_event' from above    
    })
  })
}
graph <- shinyApp(ui, server)
runApp(graph, host = "0.0.0.0", port = 5050)
