How can i use the leaflet add control inputs in the shiny R app?

I want to make a map using leaflet in shiny with a checkboxGroupInput inside the map and use the inputs of the checkboxGroupInput to update the data that is used to make the map. But I don't know how to use those inputs, I tried the code below but it didn't work. I would aprecciate any advice.


df <- data.frame(
  cat = sample(letters[1:3],10, replace = TRUE),
  long = runif(10,60,100),
  lat  = runif(10,40,60)

ui <- fluidPage(

server <- function(input, output, session) {
  output$map1 <- renderLeaflet({
    leaflet(df %>% filter(cat %in% input$x))%>%
      addTiles() %>%
      addMarkers(~long,~lat) %>%
      addControl(checkboxGroupInput(inputId = 'x',
                                    'Select cat',

shinyApp(ui, server)