Changelog
Source:NEWS.md
bs4Dash 2.3.4
CRAN release: 2024-09-03
- Added shinylive to support documentation examples.
Minor change
- Update jquery-ui to 1.13.2. Thanks @biognosys-so.
- Fix CRAN NOTES.
bs4Dash 2.3.3
CRAN release: 2024-01-23
Breaking change (potential)
- Fix #302: both
dashboardSidebar()
anddashboardControlbar()
default skin value is NULL. This allows them to inherit from the parentdashboardPage()
dark parameter and have either a full light or full dark skin. Therefore, it won’t be possible anymore to apply a light sidebar background with thedashboardPage()
when the main theme is dark and inversely. If you want to do so, you have to setdark = NULL
, for instance:
library(shiny)
library(bs4Dash)
shinyApp(
ui = dashboardPage(
dark = NULL,
header = dashboardHeader(
title = dashboardBrand(
title = "My dashboard",
color = "primary",
href = "https://adminlte.io/themes/v3",
image = "https://adminlte.io/themes/v3/dist/img/AdminLTELogo.png"
)
),
sidebar = dashboardSidebar(skin = "dark"),
body = dashboardBody(
box(status = "danger"),
box(status = "primary"),
box(status = "orange")
),
controlbar = dashboardControlbar(skin = "dark"),
title = "DashboardPage"
),
server = function(input, output) { }
)
Bug fixes
- Remove unused
headTitles
parameter frombs4Table()
. - Fix #315: alert title is not added to alert body and if Alert is not closable the header contains “undefined” key word. Thanks @MohammedFCIS.
bs4Dash 2.3.0
CRAN release: 2023-06-15
New feature
New navbar navigation menu. - navbarTab()
, navbarMenu()
and updateNavbarTabs()
to create navbar navigation. This will close #108.
Minor change
- New
dropdownHeader()
function to display Bootstrap 4 dropdown headers. - Adjust
dropdownDivider()
as it was invisible. -
tabItems()
has .list parameter to passtabItem()
elements as list. - Fix #342: better title alignment in
tabBox()
. Increase padding for card with pills. Thanks @HugoGit39 for reporting.
Bug fixes
- Fix #349: allow to pass list of
accordionItem()
with.list
parameter inaccordion()
. Thanks @vladimirstroganov for reporting. - Fix #330: allow to use input elements (or any not
menuItem
element) in the sidebar. - Fix #343: Refine
help
parameter behavior indashboardPage()
. If NULL, no icon is shown. If FALSE, icon and toggle are shown but not checked. If TRUE the toggle is checked.
bs4Dash 2.2.1
CRAN release: 2022-12-20
New features
- New
pagination()
andupdatePagination()
. Bootstrap 4 implementation of pagination.
Minor change
- Fix #323: remove sidebar collapse animation on app startup. JS code moved back to R. Thanks @lucas-alcantara for reporting.
Bug fixes
- Fix #325:
menuItem()
applied wrong class to any nested element that is not amenuSubItem()
. Thanks @echoplaza for reporting. - Fix #322:
notificationItem()
href does not work. - Fix #306: Dynamic
menuSubItems()
with apply() adds some extra text. Added .list param tomenuItem()
to programmatically passmenuSubItem()
as list. - Fix #297:
tabsetPanel()
renders below the list oftabPanels
when vertical = TRUE. Changed layout tofluidRow
. Thanks @lucas-alcantara for reporting. - Fix #296: Documentation issue for
valueBox()
andinfoBox()
in the render function section. Thanks @corderoortiz for reporting. - Fix #293: Navbar stays keeps white background, even when dark mode is selected/toggled. Related to a previous PR. Thanks to @JJohnson-DA for reporting.
- Fix #290: don’t set
data-toggle="tab"
whenhref
is not NULL intabsetPanel()
. Thanks @veer0318 for reporting. - Fix #243:
tabsetPanel()
id’s not properly generated when inserting tabs to non-empty tabset. Thanks @DarkSideOfTheMat for reporting and giving hints.
bs4Dash 2.1.0
CRAN release: 2022-05-05
Breaking change
- Align with shiny and remove
position
fromtabsetPanel()
. This was long time deprecated.
Minor changes/fixes
- Remove echarts4r suggest causing #240.
- Fix issue in
bs4DashGallery()
andtabsetPanel()
. We now usebs4Dash::tabsetPanel()
. - Fix issue with navbar theme. #268. Thanks @etiennebacher.
- Allow
type = "hidden"
fortabsetPanel
. Fixes #248. - Fix regression introduced in 2.0.3:
renderMenu()
not working. See #234 - Update Github actions.
- Add bs4Dash class for card binding. Thanks @galachad.
- Typo in vignette. Thanks @Duque-de-Sealand.
- Wrong parameter in doc. Thanks @zoezhang106.
- Add new
.list
param totabBox()
to allow programmatically generated items, like intabsetPanel()
. Thanks @mtopart
bs4Dash 2.0.3
CRAN release: 2021-09-16
This release is a patch to fix an issue preventing the release of Shiny 1.7.0.
Minor changes
- Internal change regarding the waiter package but no user impact. Thanks @JohnCoene.
bs4Dash 2.0.2
CRAN release: 2021-07-23
Patch to fix CRAN warning on Mac M1.
Minor changes
- Move away from
shiny:::processDeps
in favor ofhtmltools::renderTags
. Does not impact end user.
bs4Dash 2.0.1
CRAN release: 2021-07-16
Minor changes
- Simple patch to fix wrong .Rbuildignore rule.
- Update internal file structure.
- Clean NOTE: https://cran.rstudio.com//web/checks/check_results_bs4Dash.html
bs4Dash 2.0.0
CRAN release: 2021-05-26
Breaking changes
This is to align with shinydashboard and shinydashboardPlus. ### bs4DashPage/dashboardPage - navbar
param becomes header
. - Remove old_school
, sidebar_mini
, sidebar_collapsed
, controlbar_collapsed
, controlbar_overlay
, enable_preloader
, loading_duration
and loading_background
. These parameters move to dashboardSidebar, controlbar … - New freshTheme
parameter to pass fresh powered themes. - New options
parameter to configure AdminLTE3. - New preloader
to use waiter as a preloading engine.
bs4DashNavbar/dashboardHeader
-
controlbarIcon
acceptsshiny::icon
instead of the icon name. -
sidebarIcon
acceptsshiny::icon
instead of the icon name. - add
title
,titleWidth
anddisable
bs4DashControlbar/dashboardControlbar
- Add
collapsed
andoverlay
. - Remove
title
. - Rename
inputId
toid
.
bs4DashSidebar/dashboardSidebar/updateSidebar
-
inputId
moved to the end. -
inputId
renamed toid
. - Added
collapsed
andminified
. - Add
width
. - Remove
opacity
,title
,brandColor
,url
andsrc
.
bs4SidebarMenu
-
child_indent
becomeschildIndent
. - Add
.list
to pass programmatically generatedbs4SidebarMenuItem
.
bs4SidebarMenuItem
- Add
href
andnewTab
. -
icon
expectsshiny::icon
.
bs4Card
- Change
solidHeader
behavior. - Remove all sidebar related parameters from
bs4Card()
. This is now part of the newbs4CardSidebar()
. - Remove dropdownIcon parameter from
bs4Card()
. It is now part of thedropdownItemList()
. - Remove labelStatus, labelText and labelTooltip params from
bs4Card()
. This is to reduce the number of parameters of cards. - By default,
closable
is now FALSE forbs4Card()
. - Rename
dropdownItemList
bycardDropdown
- Rename
dropdownItemListItem
bycardDropdownItem
bs4CardSidebar
-
inputId
becomesid
. -
icon
expectsshiny::icon
.
bs4ValueBox
-
status
becomescolor
. -
icon
expectsshiny::icon
.
bs4InfoBox
-
status
becomes color - Remove
...
forsubtitle
- Remove
iconStatus
. - Add
href
andfill
. - Rename
gradientColor
togradient
.
bs4SocialBox
- rework component
- add
userBlock()
to pass on title.
descriptionBlock
-
icon
expectsshiny::icon
.
bs4TabCard
- rework component. Like
tabBox()
from shinydashboard
bs4DropdownMenu
-
badge
becomesbadgeStatus
- Add
type
. - icon expects
shiny::icon
. - Replace
labelText
byheaderText
. - Add
.list
andhref
. - Remove
align
.
bs4DropdownMenuItem
- This has been replaced by
notificationItem()
andmessageItem()
Others
- Reworked
bs4Table()
API. - In
bs4Stars()
:grade
andmaxstar
, respectively becomevalue
andgrade
. - In
listGroupItem()
, removetype
and put it inlistGroup()
.src
becomeshref
. -
status
becomescolor
inblockQuote
. - Remove
src
fromcarouselItem()
- In
bs4Ribbon()
,status
becomescolor
. Removesize
. - In
bs4Badge()
,status
becomescolor
. - In
userMessage()
,src
becomesimage
andside
becomestype
. - In
timelineItemMedia()
,src
becomesimage
. - In
timelineItem()
,timelineStart()
andtimelineEnd()
,icon
expectsshiny::icon
. -
status
becomescolor
intimelineItem()
,timelineLabel()
,timelineStart()
andtimelineEnd()
. - In
userPost()
anduserPostMedia()
,src
becomesimage
. RemovedcollapseStatus
. - In
bs4Stars()
, status becomescolor
. - Remove
bs4ShowTab()
,bs4HideTab()
andbs4RemoveTab()
. shiny vanilla function should work well now. - Remove
bs4TabPanel()
. -
bs4TabSetPanel()
becomesbs4TabsetPanel()
and is built on top ofshiny::tabsetPanel
. - In
cardProfile()
, addbordered
.src
becomesimage
. - Remove
cardProfileItemList()
. -
updatebs4TabSetPanel()
: selected takes the name of the tab instead of its index. This is more convenient (same as in shinydashboard) - value is now mandatory in
bs4InfoBox()
- change
attachmentBlock()
title_url to titleUrl (to match with a new upcoming package…) -
descriptionBlock()
: number_color, number_icon, right_border and margin_bottom become camel case parms (numberColor, numberIcon, rightBorder and marginBottom) - numberIcon in
descriptionBlock()
only need the name of the icon (‘times’) instead -
bs4Jumbotron()
: btn_name becomes btnName -
userPost()
: collapse_status becomes collapseStatus
New features
- Add
easyClose
param toboxSidebar()
to allow to close sidebar on outside-click. Thanks @predict42-patrick for the suggestion and JS code. - New
gradient
parameter tovaluebox()
. - New help mode in
dashboardPage()
to automatically toggle all tooltips and popovers. Use withbs4TooltipUI()
andbs4PopoverUI()
. - New
useAutoColor()
leveraging new Shiny features and {thematic} to automatically style plots depending on the dashboard background color. - New bottom area for
dashboardSidebar()
. - Add fullscreen widget to
dashboardPage()
. - New
updateAccordion()
. -
actionButton()
is updated to provide Bootstrap 4 features. - New
appButton()
. - New
updateUserMessages()
. - New
userList()
anduserListItem()
. - New
productList()
andproductListItem()
. - New
userDescription()
anduserBlock()
. - New built-in
skinSelector
. - New built-in dark/light mode switcher.
- New “go to top” feature.
- New
dashboardUserItem()
,userOutput()
andrenderUser()
. - New
bs4DashBrand
for better dashboard titles. - add
bs4ShowTab()
andbs4HideTab()
: thanks @fmmattioni for the reminder ;) - New
bs4CardLayout()
: simplify the way to deal withbs4Card()
! - New
bs4CloseAlert()
: programmatically closebs4Alert()
- New
bs4Toast()
: include the builtin AdminLTE3 toasts! - Add options to select
bs4SidebarMenuItem()
andbs4SidebarMenuSubItem()
at start. - Now
bs4DropdownMenuItem()
may act as an actionButton - Whenever a
bs4Card()
is maximized, the collapsible icon is hidden (does not make sense to have it) - new
bs4CardLabel()
to add text labels inbs4Card()
- new
bs4CardSidebar()
: access the status via input$id. Addupdatebs4CardSidebar()
to toggle the card sidebar - add
bs4PopoverServer()
,bs4PopoverUI()
,bs4TooltipUI()
andbs4TooltipServer()
-
bs4TabSetPanel()
: you may access the currently selected tab with input$id - add type parameter to
bs4TabSetPanel()
andbs4TabCard()
so as to select between pills or tabs (cosmetic choice). If type is not provided, the behaviour is unchanged (pills are the default) - add fixed param to
bs4DashFooter()
- add fixed parameter to
bs4DashSidebar()
. Thanks @mppallante - re-add fixed parameter to
bs4DashNavbar()
. This is reintroduced by adminlte with a new css class name - add animated, label parameters to
bs4ProgressBar()
- add iconStatus parameter to
bs4InfoBox()
to allow icon color to be independant from the card status (https://adminlte.io/themes/v3/pages/widgets.html). Thanks @rolando-gsw
Minor change
-
bs4Sortable()
is initialized each time a new sortable element is added. Fixes #198. - New
taskItem()
. - Add
indicators
and.list
tocarousel()
. -
insertTab()
is using more shiny vanilla elements. -
bs4UserMenu()
does not close when clicked inside. - Add glyphicons as an html dependency
- New legacy parameter in
bs4SidebarMenu()
: to use old AdminLTE2 styling for item selection - Now, clicking outside the
bs4DashControlbar()
when it is opened will close it. To keep it open, see below - New pinned option for
bs4DashControlbar()
: allow to block the controlbar state - New expandedName param for
bs4SidebarMenuItem
to align with shinydashboard - id is NULL in
bs4TabSetPanel()
by default - side is default to left in
bs4TabSetPanel()
- change
bs4TabPanel()
param order to align with shiny
Bug Fix
- Fix #200: simplified
bs4Table()
API. - Fix #189:
hidden
type is not available forbs4Dash::tabsetPanel
that uses an old version of theshiny::tabsetPanel
. Thanks @zilch42. - Upgrade AdminLTE to 3.1.0. This fixes many sidebar issues!!!
- Fix issue #110: due to the fact that the
bs4Controlbar()
now collapse when clicked outside, clicking on an input triggering theupdatebs4Controlbar()
would toggle it twice. Thanks @dwhdai - Fix issue #112 with
sliderInput
z-index andbs4DashPage()
preloader. Thanks @analytichealth for the report - Fix issue in
bs4DashSidebar()
url link. Thanks @pvictor - Fix #30: programmatically close
bs4Alert()
- Fix #47: Control bar not showing top elements when collapsed is FALSE
- Fix #99: rework the way sidebar items work. By default, when sidebar items has subitems and is selected, the first item is not selected. We leave the choice to the user. Thanks @analytichealth
- Fix
bs4DropdownMenu()
example - fix #94: cannot render element with dependencies in
bs4InsertTab()
- fix #93: set default inputId when it is not provided in
bs4DashControlbar()
so thatrenderUI
works. Thanks @artemklevtsov - fix #86 : cannot use
updatebs4TabSetPanel()
withrenderUI
. Thanks @jyjek - add condition argument to
bs4SidebarMenuItem()
. See https://github.com/RinteRface/bs4Dash/issues/35. Thanks @aldomann - some vignettes examples were not up to date
bs4Dash 0.5.0
CRAN release: 2019-11-27
Breaking Changes
- remove fixed parameters from
bs4DashNavbar()
since it does not exist in the new AdminLTE version - rework on
bs4DropdownMenuItem
: change text to message, date to time. Add new params: from, src, status and type.
Major Changes
- add link back to https://www.glyphicons.com. Thanks @statnmap
- upgrade AdminLTE3 version to rc4
- add
bs4DashSidebar()
input binding to indicate the state (collapse: FALSE, open: TRUE) as well asupdatebs4Sidebar()
to programmatically toggle its state - add
bs4Controlbar()
input binding to indicate the state (collapse: FALSE, open: TRUE) as well asupdatebs4Controlbar()
to programmatically toggle its state - add
bs4Card()
input binding to indicate the state (collapse: FALSE, open: TRUE, maximize, closed, …) as well asupdatebs4Card()
to programmatically toggle its state - add
bs4InsertTab()
to programmatically insertbs4TabPanel()
inbs4TabSetPanel()
- add
bs4RemoveTab()
to programmatically removebs4TabPanel()
inbs4TabSetPanel()
New features
-
bs4DashPage()
has a new sidebar_mini parameter. When TRUE, the sidebar has a minimum width when collapsed (you still see icons). When false, it behaves like in shinydashboard -
bs4InfoBox()
can now navigate between tabs if the tabName parameter is specified. It must however correspond to an existingbs4TabItem()
in the body! -
bs4ValueBox()
has a footer argument. It is different from the href parameter. Thanks @stefanfritsch - add expand_on_hover parameter to
bs4DashSidebar()
- add compact parameters to
bs4DashNavbar()
to reduce the navbar size - add
getAdminLTEColors()
to preview all available color themes - by default,
bs4DashSidebar()
has a fixed layout. This prevent from not seeing sidebar items if the body contains too many elements -
bs4DashPage()
has options to change thebs4Controlbar()
behavior when it expands (see controlbar_overlay) -
bs4SidebarMenu()
has 3 new parameters: flat (design effect), child_indent and compact - add sidebar in
bs4Card()
- add
bs4UserMenu()
forbs4DashNavbar()
- add
bs4Ribbon()
, a sort of enhanced label for cards or any content - add
bs4Quote()
, an improved blockquote tag for Bootstrap 4
Bug Fix
- fix #66 and #71: sidebar_collapsed was not working. Thanks @analytichealth and @federicomarini
- remove hardcoded style for navbar dropdown icons
- remove hardcoded style for navbar icons (fixed in the last adminLTE3 release). Thanks @federicomarini
- fix height issue in
bs4Card()
. Thanks @analytichealth - Rework the
column()
function from Shiny to make it work with Bootstrap 4. Thanks @federicomarini - fix
bs4DashNavbar()
background color issue. - rework
bs4DashBody()
so that when no element is in the sidebar and no tabItems are in the body, margin between the sidebar, the controlbar is not 0 - when btn_name is NULL in
bs4Jumbotron()
, do not show a button. Thanks @davidlvb - fix
bs4ProgressBar()
: remove height and width parameters. Add size parameter. This fix the progress behaviour which was wrong
bs4Dash 0.4.0
CRAN release: 2019-07-25
Major changes
- add
bs4DashControlbarMenu()
,bs4DashControlbarItem()
andupdatebs4ControlbarMenu()
- add
updatebs4TabItems()
andupdateTabItems()
to programatically update the selected sidebar tab and the corresponding body tab - add
updatebs4TabSetPanel()
andupdateTabsetPanel()
(aliases) to dynamically updatebs4TabSetPanel()
from the server side - add maximizable option for
bs4Card()
andbs4TabCard()
. In other words, allow full screen option - Fix #8: add input binding to the
bs4SidebarMenu()
. Now by adding an id to the menu, the user can recover the currently selected tab. Thanks @rpodcast - add aliases to make bs4Dash closer to shinydashboard (the conversion is easier). For instance
bs4DashPage()
can also bedashboardPage()
- update adminLTE dependencies
- add vertical mode to
bs4TabSetPanel()
- add
bs4SidebarMenuSubItem()
- add
bs4Table()
,bs4TableItems()
andbs4TableItem()
Breaking changes
- add text arg to
bs4SidebarMenuItem()
- Now the … arg is for
bs4SidebarMenuSubItem()
Minor Changes
- Fix #41: add disable argument to
bs4DashSidebar()
andbs4DashControlbar()
. Thanks @jamiebono - images are centered in
userPost()
- add startExpanded arg to
bs4SidebarMenuItem()
- add
bs4TabSetPanel()
to the gallery
Bug Fix
- fix overflow-y issue in
bs4TabCard()
- fix #44: update
bs4InfoBox()
class. Thanks @henry090. - update adminLTE dependencies (fix sidebar horizontal overflow, …)
- hide the
bs4DashControlbar()
toggle if nobs4DashControlbar()
is given inbs4DashPage()
- fix wrong url in
attachmentBlock()
image (and replace http by https) - fix #24: No right border on collapsed sidebar menu items. Thanks @aldomann
- Tooltips z-index is lower than sidebar’s z-index, this cause tooltips are not showing up (see https://github.com/ColorlibHQ/AdminLTE/pull/2105)
- after Bootstrap 4.3.1 update the table color in the green calendar widget changed to black, caused by bootstrap (see https://github.com/ColorlibHQ/AdminLTE/pull/2105)
bs4Dash 0.3.0
CRAN release: 2019-04-06
Breaking change
- rework
bs4TabSetPanel()
andbs4TabCard()
.bs4TabSetPanel()
can now be used independently ofbs4TabCard()
. Need to provide id argument tobs4TabCard()
.
Major changes
- update adminLTE3 to the latest release
- update to bootstrap 4.3.1
- add preloader options to
bs4DashPage()
- add collapsible and closable to
bs4TabCard()
. Buttons visible by default. PR by @statnmap - add preloader options to
bs4DashPage()
- move to RinteRface
- add
bs4Sortable()
and all necessary javascript dependencies - add
userPost()
,userPostMedia()
,userPostTagItems()
anduserPostTagItem()
- add
userMessages()
anduserMessage()
- add
descriptionBlock()
,attachmentBlock()
andcardPad()
- add
bs4SidebarUserPanel()
- add
cardProfile()
,cardProfileItemList()
andcardProfileItem()
- add
bs4SocialCard()
andcardComment()
Minor changes
- add collapse_status argument to
userPost()
- add glyphicons (BS3 old dependency) thanks to @ntncmch
- add overflow argument to
bs4Card()
to enable or disable overflow - hide
bs4Card()
footer when footer is NULL - patch for
bs4Accordion()
: click on 1 item collapse all other items in the same accordion add an id argument. - add licence
- add controlbar_collapsed argument to
bs4DashPage()
- fix #16: add side argument to
bs4TabCard()
. Thanks @stephLH - fix #11: add width arg to
bs4DashControlbar()
. Thanks @stephLH - fix #14: remove
bs4TabCard()
max-height attribute. Thanks @stephLH - add hex icon
- add menuIcon arg and align arg to
bs4DropdownMenu()
, add id arg tobs4DashControlbar()
PR by @bjornlind - add background and header colours like cards to
bs4TabCard()
. PR by @statnmap
Bug fix
- Fix icon rendering issue due to a change in shiny 1.2.0 dependencies (font awesome)
- Fix #19: Whenever a
bs4Card()
starts on a collapsed state, the content is displayed when uncollapsed is pressed. Thanks @stanmap for the remark. (See here for a similar issue) -
bs4Card()
: the collapse icon changes to + and - depending on the current collapse status. - fix various issues in
bs4DropdownMenu()
- fix #12: Compatibility with shinyWidgets pickerInput. Thanks @pvictor
- fix #13 in
bs4TabPanel()
: handle tabName with space and with punctuation characters. Thanks @stephLH - fix
bs4TabCard()
: when the user set 2 or more active tabs at the same time, only the first one is selected - related to #16: modify bs4Dash.js file so that only the first body content tab is selected and not that of the
bs4TabCard()
, as they have the same class (tab-pane).
bs4Dash 0.2.0
CRAN release: 2018-09-20
Major changes
- bs4Dash now works on shinyapp.io (previously, there was a problem with tab navigation)
- major update of all dependencies (bootstrap 4, fontawesome, ionicons, …) with htmltools
Minor changes
- close and collapse buttons not shown when the title is NULL in
bs4Card()
-
bs4ValueBox()
footer is not shown when the external link is NULL -
bs4ValueBox()
external link opens in a new page - add sidebar_collapsed argument to
bs4DashPage()
to control the sidebar opening at start - update
bs4DashGallery()
. Add a “theme” argument - add
ionicon()
(implementation of ionicons) - fix vignette titles
- add a “fixed” argument to the
bs4DashNavbar()
(#7, thanks @theRcast) - update Readme