Releases: JohnCoene/waiter
Bootstrap
With
- Added
httr_progressfunction to use the waitress or
the attendant instead ofhttr::progress. - Added
withProgressWaitress,setProgressWaitress, and
incProgressWairessanalogous to the same functions in shiny. - Added
withProgressAttendant,
incProgressAttendant, andsetProgressAttendant. - Fix major issue with
Hostess, it was basically broken
#108. - Add
withWaiteras requested in
#105
To the Moon
- Fix #95 with different CSS for full screen (
position: fixed). - Fix CSS injection that repeatedly injected CSS to hide recalculating effect.
- Remove magrittr in favour of R native pipe.
- Add active bindings for many of the waiter components, see
?Waiter. - Prep deprecation of functions with underscores in favour of camel case (only for that which are to be used in the shiny UI).
- Deprecate the
logoargument it is no longer used and can be easily achieved in other ways. - Add
triggerWaiterto trigger the waiter without going through the server. - Implement webpack for waiter, minifies and optimises code.
- Deprecate
spinnersargument ofuse_waiterfunction. All CSS is bundled with webpack. - Performance improvements with use of maps instead of arrays.
- Improve documentation, new site.
- Added function
autoWaiterto easily add waiter to dynamic Shiny-rendered elements from the UI.
Bug Fixes
Cleanup
- Fixed
waiter_hide_on_rendersee #79. - Added
waiter_preloadershows the full page loading screen when the app is loaded and automatically removes it when all the UI is rendered: only runs once. #82 - Remove logging of shiny event, #83
- Fix stewart, broken due to removal of progress.js #81
- Added fadeout effect on waiter overlays, #53
- Improve waiter screen responsiveness.
Events
- Added
hide_on_error, andhide_on_silent_errorto theWaiterto control whether the waiter should be removed when the underlying plot/table/or other throws an error. Silent errors are those raised byreqandvalidate/need. - Added events
waiter_shownandwaiter_hiddenfired when the loading screen with waiter is shown or hidden.
Busy
- Much improved spinners API.
- Allow previewing the spinners with
preview_spinner. - Spinner kit no longer force prints,
printmethod added for this. - Added ability to automatically show and hide the loading screen when the server is busy/idle with
waiter_on_busy - Remove
include_jsargument to simplify API
Revamp
waiter 0.1.0
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.
Waiter
All functions now start with waiter_.
- The new
waiter_showfunction deprecatesshow_waiter - The new
waiter_hidefunction deprecateshide_waiter - The new
waiter_updatefunction deprecatesupdate_waiter - The new
waiter_show_on_loadfunction deprecatesshow_waiter_on_load - The new
waiter_hide_on_loadfunction deprecateshide_waiter_on_load
The 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)Waitress
The waitress also sees a lot of changes, again nothing has been broken.
call_waitresshas been deprecated in favour of the Reference class, please useWaitress$new()instead.- The Waitress can now also be used as notification
- Many methods have been renamed (deprecated) to more closely match
shiny::Progress - Addition of the
minandmaxarguments, one is no longer limited to percentages - Possibility to create an infinite progress bar (deprecates the butler)
- Additional
htmlargument onstartmethod to add content on waitress
library(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)Hostess
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)Steward & Hostess
Added steward and hostess
Consolidate
Bug fixes