Releases: gadenbuie/countdown
[R] countdown v0.6.0
Breaking changes
- The first
countdown()timer no longer provides global styles for all other
countdown timers. Instead, usecountdown_style()with the same style-related
arguments to set global styles for all countdown timers. (#36)
New features and improvements
-
The countdown JavaScript implementation was entirely re-written as a custom
<countdown-timer>element. This improves lifecycle management of the timer
component, making it possible to use countdown timers with dynamic UI in
Shiny apps. (#59) -
Rewritten countdown timer CSS now uses CSS variables rather than a template
rendered in R. This improves how countdown's dependencies are handled and
makes it easier to customize and use countdown in other projects and
settings. (#36) -
Implemented emitting of native browser events alongside Shiny communication. (#37)
-
Added two new event types:
"finished"when the timer completes its cycle
and"warning"when it reaches the warning period. (#37) -
Set
class = "inline"incountdown()to create an inline, rather than
absolute-positioned, countdown timer. (#36) -
Set
class = "no-controls"incountdown()to create a countdown timer
without the controls. (#40)
Bug fixes
-
Fixed an issue where custom URLs for
play_soundwere not used for the timer
end sound. (thanks @jannismain, #38) -
Fixed
countdown_fullscreen()not passing alongclassandstart_immediatelyparameters. (#43)
Changes
v0.4.0
countdown 0.4.0
Release Post: countdown v0.4.0 – Now on CRAN!
New Features
-
{countdown} now uses {prismatic} for color calculations.
-
The JavaScript implementation of countdown has been completely rewritten. It
now supports a wide range of new interactions:-
Start, pause, and reset the timer (click, click again, double click).
-
+or-buttons to bump timer up or down. -
Keyboard shortcuts: Space/Enter to start/stop, Escape to reset, and up/down
arrows to bump timer. -
The timers now work on mobile devices (in particular in xaringan slides).
-
-
countdown timers can now be used in or controlled by Shiny apps:
-
Use
countdown_update()to update key initial timer settings. -
Use
countdown_action()to trigger common action: start, stop, reset,
bump up or bump down. -
State changes are reported back to the Shiny app, e.g. Shiny apps can
useinput$timerto receive event data from the timer with
id = "timer". -
countdown_shiny_example()runs a Shiny app that demonstrates key
Shiny app features.
-
-
Timers can now start immediately by setting the argument
start_immediately = TRUE. WhenTRUE, timers will start as soon as they
are visible. This feature works in xaringan slides, Quarto slides and general
HTML web pages (thanks @Dr-Joe-Roberts, @davidkane9, #12). -
The
countdown_app()now supports bookmarking, making it possible to share
pre-configured timer URLs. This feature improves the usability of the
timer available at https://apps.garrickadenbuie.com/countdown.
v0.3.5
v0.3.3
countdown v0.3.0
-
Added a warning state to the coundown timer that is enabled by setting
warn_when = N. Thewarningclass is applied to the timer for the lastN
seconds, and the colors of this state are configured with the arguments with
color_warning_prefix (thanks @hadley, #5). -
Added a new convenience function for full-screen (and stand-alone) countdown
timers,countdown_fullscreen(). This function's defaults work best when
called from RStudio, in xaringan slides it will still be necessary to fiddle
withfont_size,margin, andpadding(thanks @hadley, #6). -
Add
countdown_app()to launch an interactive Shiny app with a full-screen
countdown timer.