Make a GIF play when server is busy and stop when idle.
Path to the GIF, an URL or a file in www/ folder.
Number of milliseconds after the server is busy to display the GIF.
Where to display the GIF: 'top-right', 'top-left', 'bottom-right',
'bottom-left', 'full-page'.
Distance from margins, a vector of length two, where first element is distance from top/bottom, second element distance from right/left.
Background color for the overlay if position = "full-page".
Additional CSS for the overlay, for example "z-index: 1000;" to make it appear above everything.
Height and width of the spinner, default to '50px' for both, must be specified.
An HTML tag that should be used in UI.
library(shiny)
library(shinybusy)
ui <- fluidPage(
# Use this function somewhere in UI
# with navBarPage use the "header" argument
add_busy_gif(
src = "https://jeroen.github.io/images/banana.gif",
height = 70, width = 70
),
actionButton("sleep", "Long calculation")
)
server <- function(input, output, session) {
observeEvent(input$sleep, {
Sys.sleep(5)
})
}
if (interactive()) {
shinyApp(ui, server)
}