Themeable HTML components — bs_dependency
Themeable HTML components use Sass to generate CSS rules from Bootstrap Sass
variables, functions, and/or mixins (i.e., stuff inside of theme).
bs_dependencies() makes it a bit easier to create themeable components by
compiling sass::sass() (input) together with Bootstrap Sass inside of a
theme, and packaging up the result into an htmltools::htmlDependency().
Themable components can also be dynamically themed inside of Shiny (i.e.,
they may be themed in 'real-time' via bs_themer(), and more generally,
update their styles in response to shiny::session's setCurrentTheme()
method). Dynamically themeable components provide a "recipe" (i.e., a
function) to bs_dependency_defer(), describing how to generate new CSS
stylesheet(s) from a new theme. This function is called when the HTML page
is first rendered, and may be invoked again with a new theme whenever
shiny::session's setCurrentTheme() is called.