httr_progress function to use the waitress or the
attendant instead of httr::progress.withProgressWaitress,
setProgressWaitress, and incProgressWairess
analogous to the same functions in shiny.withProgressAttendant,
incProgressAttendant, and
setProgressAttendant.Hostess, it was basically broken
#108.withWaiter as requested in #105.bs4_spinner and bs5_spinner.position: fixed).?Waiter.logo argument it is no longer used and
can be easily achieved in other ways.triggerWaiter to trigger the waiter without going
through the server.spinners argument of use_waiter
function. All CSS is bundled with webpack.autoWaiter to easily add waiter to
dynamic Shiny-rendered elements from the UI.attendant progress bars, for easy progress
display without bringing in additional dependencies.console.logimage argument to the waiter, allows using a
background image on the waiter.hide_on_render #94waiter_hide_on_render see #79.waiter_preloader shows the full page loading
screen when the app is loaded and automatically removes it when all the
UI is rendered: only runs once. #82show_waiter_on_load in favour of
waiter_show_on_loadhide_waiter_on_drawn in favour of
waiter_hide_on_drawnhide_waiter in favour of waiter_hideupdate_waiter in favour of
waiter_updateshow_waiter in favour of waiter_showButler in favour of the
Waitresshostess_init in favour of
Hostess$inithostess_set in favour of Hostess$setbrowse_waiters and browse_waitresses in
favour of the online demo.call_waitress in favour of
Waitress$new()rstudioapi dependency; assumes most users have
moved up from version 1.2waiter_show_on_load ran
Shiny.setInputValue before shiny connected #73 + correct
the erroneous example in the READMEhide_on_error, and
hide_on_silent_error to the Waiter to control
whether the waiter should be removed when the underlying plot/table/or
other throws an error. Silent errors are those raised by
req and validate/need.waiter_shown and
waiter_hidden fired when the loading screen with waiter is
shown or hidden.preview_spinner.print method added
for this.waiter_on_busyinclude_js argument to simplify APIwaiter_set_theme,
waiter_get_theme, and waiter_unset_theme) to
enable setting a global theme; making such that every waiter loading
screen uses the same options (color, html, and
logo). This can e overridden in individual waiter loading
screens.spin_google spinnertransparent to easily
create transparent waiter backgrounds.use_waiter takes a spinner argument to which
one can specify any of 7 spinner CSS kits, by default all kits are
loaded. One can know which kits should be specified by simply typing the
spinner in the console, e.g.: spin_rotating_plane().Version 0.1.0 sees great many changes. Nothing has been
broken but has been deprecated. The steward and
garcon family of functions have been added.
All functions now start with waiter_.
waiter_show function deprecates
show_waiterwaiter_hide function deprecates
hide_waiterwaiter_update function deprecates
update_waiterwaiter_show_on_load function
deprecates show_waiter_on_loadwaiter_hide_on_load function
deprecates hide_waiter_on_loadThe Reference class Waiter takes a new optional
id first argument which takes one or more ids of elements
to overlay the waiter over, the content of the waiter
(html) becomes the second argument. If passing a list of
ids one can pass a list of content html.
library(shiny)
library(waiter)
ui <- fluidPage(
use_waiter(),
actionButton("btn", "Render"),
fluidRow(
column(6, plotOutput("plot1")),
column(6, plotOutput("plot2"))
)
)
server <- function(input, output) {
w <- Waiter$new(
list("plot1", "plot2"),
html = list(spin_1(), spin_2())
)
dataset <- reactive({
input$btn
w$show()
Sys.sleep(2)
runif(100)
})
output$plot1 <- renderPlot(plot(dataset()))
output$plot2 <- renderPlot(plot(dataset()))
}
shinyApp(ui, server)The waitress also sees a lot of changes, again nothing has been broken.
call_waitress has been deprecated in favour of the
Reference class, please use Waitress$new() instead.shiny::Progressmin and max arguments, one
is no longer limited to percentageshtml argument on start method
to add content on waitresslibrary(shiny)
library(waiter)
ui <- fluidPage(
use_waitress(),
actionButton("btn", "render"),
plotOutput("plot")
)
server <- function(input, output) {
w <- Waitress$new("#plot", min = 0, max = 10)
output$plot <- renderPlot({
input$btn
w$start("LOADING")
for(i in 1:10){
Sys.sleep(.3)
w$inc(1)
}
w$close()
plot(runif(100))
})
}
shinyApp(ui, server)The hostess is a new addition to the staff, it works hand in hand with waiter to allow you to layer a progress bar on top of the waiter (though it can be used on its own). Moreover the latter progress bars can be greatly customised.
library(shiny)
library(waiter)
ui <- fluidPage(
use_waiter(),
use_hostess(),
waiter_show_on_load(
color = "#f7fff7",
hostess_loader(
"loader",
preset = "circle",
text_color = "black",
class = "label-center",
center_page = TRUE
)
)
)
server <- function(input, output){
hostess <- Hostess$new("loader")
for(i in 1:10){
Sys.sleep(runif(1) / 2)
hostess$set(i * 10)
}
waiter_hide()
}
shinyApp(ui, server)