shiny app with interactive map in R

i have developed a Shiny web application that displays an interactive map where you can select a weather station and a year, and then it generates an Excel file containing the meteorological data for the selected station. However, i'am encountering issues: the map takes a long time to load, and when i select a station and a year and try to export the data, the interface closes and the software displays an error stating that the "annee" argument is missing, with no default value. please help mee to solve that problem here is my code:

library(shiny)
library(shinyWidgets)
library(leaflet)
library(tidyverse)
library(lubridate)
library(shinybusy)
library(readr)
ui <- bootstrapPage(
  ##---------------------------------------------------------------
  ##                          Interface                          --
  ##---------------------------------------------------------------
  add_busy_spinner(spin = "radar", margins = c(10, 20)), # Logo de chargement
  tags$style(type = "text/css", "html, body {width:100%;height:100%}"),
  leafletOutput("map", width = "100%", height = "100%"), # Carte 
  absolutePanel(id='nomappli',top = 0, left=70,img(src = 'EDFMeteostat.png',height = 68.35, width = 397.5),
                downloadButton("dl_aide", "Aide"),
                downloadButton("dl_rapport", "Rapport Ms-Pro")),# Logo 
  absolutePanel(id='parametres',class='panel panel-default' ,top = 10, right = 10, # Panneau au premier plan par dessus la carte
                width = "auto", fixed = TRUE, draggable = TRUE,
                p(),
                p(strong("Extraction de données météos au pas horaire")),
                pickerInput("pays", label = "Pays", # Menu déroulant sélection pays
                            choices = df_conversion_ISO_dispo[[3]],
                            selected = "France Metropole - FR Metro", #sélection par défaut france métropole
                            #multiple = TRUE,
                            options = list(`live-search` = TRUE)),
                checkboxInput("chexkbox_recent", label = "Avec anciennes stations (arretées depuis plus d'un an)", value = FALSE), #choix données récentes
                pickerInput("annee", label = "Choix d'année d'extraction", 
                            choices = c(year(Sys.Date()),
                                        year(Sys.Date() %m-% years(1)),
                                        year(Sys.Date() %m-% years(2)),
                                        year(Sys.Date() %m-% years(3)),
                                        year(Sys.Date() %m-% years(4)),
                                        year(Sys.Date() %m-% years(5)),
                                        year(Sys.Date() %m-% years(6)),
                                        year(Sys.Date() %m-% years(7)),
                                        year(Sys.Date() %m-% years(8)),
                                        year(Sys.Date() %m-% years(9)),
                                        year(Sys.Date() %m-% years(10)),
                                        year(Sys.Date() %m-% years(11)),
                                        year(Sys.Date() %m-% years(12)),
                                        year(Sys.Date() %m-% years(13)),
                                        year(Sys.Date() %m-% years(14)),
                                        year(Sys.Date() %m-% years(15)),
                                        year(Sys.Date() %m-% years(16)),
                                        year(Sys.Date() %m-% years(17)),
                                        year(Sys.Date() %m-% years(18)),
                                        year(Sys.Date() %m-% years(19)),
                                        year(Sys.Date() %m-% years(20)),
                                        year(Sys.Date() %m-% years(21)),
                                        year(Sys.Date() %m-% years(22))
                            ),
                            selected = year(Sys.Date() %m-% years(1))
                ),
                p(),
                p(strong('Calcul des DJU :')),
                sliderInput("slider_chauf", label = "Température de consigne chauffage (°C)", min = 15, max = 25, value = 18),
                sliderInput("slider_clim", label = "Température de consigne climatisation (°C)", min = 15, max = 25, value = 18),
                actionButton("export", label = "Exporter"),
                p(),
                
  )
)

server <- function(input, output, session) { # -------------SERVER------------------------------------------
  #=========================================================================================================== 
  #maj_stations()
  valeurs <- reactiveValues() #liste pour mettre en mémoire des variables "globales"
  
  ##------------------------------------------------------------------------
  ##  Filtration des stations à afficher en fonction du pays sélectionné  --
  ##------------------------------------------------------------------------
  filteredData <- reactive({
    df_filtr_stations <- df_stations
    if (input$chexkbox_recent == FALSE){ # case à cocher si données < à 1 an
      df_filtr_stations  <- filter(df_filtr_stations , inventory.hourly.end >Sys.Date() %m-% years(1))
    }
    if (input$pays == 'France Metropole - FR Metro'){ # Centrage sur la france
      filter(df_filtr_stations , country == 'FR', timezone == 'Europe/Paris')
    } else {
      l<-which(df_conversion_ISO_dispo[[3]]==input$pays) # Prend la ligne qui correspond au pays choisi
      filter(df_filtr_stations, country == df_conversion_ISO_dispo[l,2]) #Filtration en fonction du code ISO du pays
      return(filter(df_filtr_stations, country == df_conversion_ISO_dispo[l,2])) #Filtration en fonction du code ISO du pays
    }
  })
  ##---------------------------------------------------------------
  ##                        Click station                        --
  ##---------------------------------------------------------------
  observe({ #Stockage de l'identifiant d'une station dans la liste "valeurs" quand l'utilisateur clique sur un marker
    click<-input$map_marker_click
    if(is.null(click))
      return()
    valeurs$id <- click$id
  })
  ##---------------------------------------------------------------
  ##                            CARTE                            --
  ##---------------------------------------------------------------
  #Affichage de la carte
  output$map <- renderLeaflet({
    leaflet() %>%
      addTiles() %>%
      setView(lng = 2.2137, lat = 46.2276, zoom = 6) %>% # Centrage sur la France
      addMarkers(data = stations,
                 lng = ~location.longitude,
                 lat = ~location.latitude,
                 label = ~name.en,
                 popup = ~popuptext,
                 layerId = ~id)
  })
  
  ##                  Chargement du fichier meteo                 --
  ##----------------------------------------------------------------  
  data_meteo <- reactive({
    inFile <- input$file
    if (is.null(inFile)){
      return(NULL)
    }
    df_meteo <- fread(inFile$datapath)
    return(df_meteo)
    # saveRDS(df_meteo,'df_meteo_test_tl_fichier.rds')
    # return(df_meteo)
  })
  
  
  ##----------------------------------------------------------------
  ##                  Click du bouton "exporter"                  --
  ##----------------------------------------------------------------
  observeEvent(input$export, {
    if (is.null(valeurs$id)){ #message d'erreur si exporter sans avoir sélectionné de station
      showModal(modalDialog(
        "Pas de station sélectionnée, cliquez sur une station pour la sélectionner.",
        footer = modalButton("Retour"),
      ))
      return()
    }
    showModal(modalDialog(
      title = NULL,
      p(strong("1 - Cliquer sur ce lien :",
               a(nom_lien(valeurs$id))
      )),
      p("2 - Si le lien n'a pas fonctionné, copiez le lien dans votre navigateur internet"),
      footer = NULL,
    ))
  })
}


##----------------------------------------------------------------
##                  Lancement de l'application                  --
##----------------------------------------------------------------
shinyApp(ui = ui, server = server)