Compile Bootstrap Sass with (optional) theming
bs_theme_dependencies()
compiles Bootstrap Sass into CSS and returns it,
along with other HTML dependencies, as a list of
htmltools::htmlDependency()
s. Most users won't need to call this function
directly as Shiny & R Markdown will perform this compilation automatically
when handed a bs_theme()
. If you're here looking to create a themeable
component, see bs_dependency()
.
bs_theme_dependencies( theme, sass_options = sass::sass_options(output_style = "compressed"), cache = sass::sass_cache_get(), jquery = jquerylib::jquery_core(3), precompiled = get_precompiled_option("bslib.precompiled", default = TRUE) )
theme |
a |
sass_options |
a |
cache |
This can be a directory to use for the cache, a FileCache
object created by |
jquery |
a |
precompiled |
Before compiling the theme object, first look for a
precompiled CSS file for the |
a list of HTML dependencies containing Bootstrap CSS, Bootstrap
JavaScript, and jquery
. This list may contain additional HTML
dependencies if bundled with the theme
.
If Shiny Developer Mode is enabled (by setting options(shiny.devmode = TRUE)
or calling shiny::devmode(TRUE)
), both sass caching and bslib
precompilation are disabled by default; that is, a call to
bs_theme_dependencies(theme)
expands to bs_theme_dependencies(theme, cache = F, precompiled = F)
). This is useful for local development as
enabling caching/precompilation may produce incorrect results if local
changes are made to bslib's source files.
# Function to preview the styling a (primary) Bootstrap button library(htmltools) button <- tags$a(class = "btn btn-primary", href = "#", role = "button", "Hello") preview_button <- function(theme) { if (interactive()) { browsable(tags$body(bs_theme_dependencies(theme), button)) } } # Latest Bootstrap preview_button(bs_theme()) # Bootstrap 3 preview_button(bs_theme(3)) # Bootswatch 4 minty theme preview_button(bs_theme(4, bootswatch = "minty")) # Bootswatch 4 sketchy theme preview_button(bs_theme(4, bootswatch = "sketchy"))
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.