R/onLoad.R

Defines functions .onLoad

#' Register an InputHandler
#' @importFrom shiny registerInputHandler
#' @noRd
.onLoad <- function(...) {
  shiny::registerInputHandler("DateRangePickerBinding", function(data, ...) {
    if (is.null(data)) {
      NULL
    } else {
      ## Return POSIX or Date, depending on format
      if (data$format == "POSIX") {
        res <- try(as.POSIXct(c(data$start, data$end),
          origin = "1970-01-01 00:00:00"
        ),
        silent = TRUE
        )
      } else {
        res <- try(as.Date(c(data$start, data$end)), silent = TRUE)
      }
      if ("try-error" %in% class(res)) {
        warning("Failed to parse dates!")
        data
      } else {
        res
      }
    }
  }, force = TRUE)
}

Try the daterangepicker package in your browser

Any scripts or data that you put into this service are public.

daterangepicker documentation built on May 31, 2023, 6:19 p.m.