Bs4Dash Versions Save

Bootstrap 4 shinydashboard using AdminLTE3

v2.3.3

3 months ago

Breaking change (potential)

  • Fix #302: both dashboardSidebar() and dashboardControlbar() default skin value is NULL. This allows them to inherit from the parent dashboardPage() 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 the dashboardPage() when the main theme is dark and inversely. If you want to do so, you have to set dark = 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 from bs4Table().
  • Fix #315: alert title is not added to alert body and if Alert is not closable the header contains “undefined” key word. Thanks @MohammedFCIS.

v2.3.0

11 months ago

bs4Dash 2.3.0

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 pass tabItem() 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 in accordion(). 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 in dashboardPage(). If NULL, no icon is shown. If FALSE, icon and toggle are shown but not checked. If TRUE the toggle is checked.

Internal

  • Change dark/light switch CSS class for consistency.

v2.2.1

1 year ago

Happy Christmas break to everyone!

bs4Dash 2.2.1

New features

  • New pagination() and updatePagination(). 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 a menuSubItem(). Thanks @echoplaza for reporting.
  • Fix #322: notificationItem() href does not work.
  • Fix #306: Dynamic menuSubItems() with apply() adds some extra text. Added .list param to menuItem() to programmatically pass menuSubItem() as list.
  • Fix #297: tabsetPanel() renders below the list of tabPanels when vertical = TRUE. Changed layout to fluidRow. Thanks @lucas-alcantara for reporting.
  • Fix #296: Documentation issue for valueBox() and infoBox() 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" when href is not NULL in tabsetPanel(). 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.

v2.1.0

2 years ago

bs4Dash 2.1.0

Breaking change

Minor changes/fixes

v2.0.3

2 years ago

bs4Dash 2.0.3

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.

v2.0.2

2 years ago

bs4Dash 2.0.2

Patch to fix CRAN warning on Mac M1.

Minor changes

  • Move away from shiny:::processDeps in favor of htmltools::renderTags. Does not impact end user.

v2.0.1

2 years ago

bs4Dash 2.0.1

Minor changes

Bug Fix

  • Fix #220: Disable badgeLabel in SidebarMenuItem when collapsed. Wrong tag structure fixed.
  • Fix #219: icon appears after header in bs4Card/box.

v2.0.0

2 years ago

bs4Dash 2.0.0

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.

bs4DashFooter

  • ... becomes left.
  • right_text becomes right.

bs4DashNavbar/dashboardHeader

  • controlbarIcon accepts shiny::icon instead of the icon name.
  • sidebarIcon accepts shiny::icon instead of the icon name.
  • add title, titleWidth and disable

bs4UserMenu

  • src becomes image.

bs4DashControlbar/dashboardControlbar

  • Add collapsed and overlay.
  • Remove title.
  • Rename inputId to id.

updatebs4Controlbar

  • inputId becomes id.
  • New alias: updateControlbar.
  • session is not mandatory

bs4DashSidebar/dashboardSidebar/updateSidebar

  • inputId moved to the end.
  • inputId renamed to id.
  • Added collapsed and minified.
  • Add width.
  • Remove opacity, title, brandColor, url and src.

bs4SidebarMenu

  • child_indent becomes childIndent.
  • Add .list to pass programmatically generated bs4SidebarMenuItem.

bs4SidebarMenuItem

  • Add href and newTab.
  • icon expects shiny::icon.

bs4SidebarUserPanel

  • img and text become image and name, respectively.

bs4Card

  • Change solidHeader behavior.
  • Remove all sidebar related parameters from bs4Card(). This is now part of the new bs4CardSidebar().
  • Remove dropdownIcon parameter from bs4Card(). It is now part of the dropdownItemList().
  • Remove labelStatus, labelText and labelTooltip params from bs4Card(). This is to reduce the number of parameters of cards.
  • By default, closable is now FALSE for bs4Card().
  • Rename dropdownItemList by cardDropdown
  • Rename dropdownItemListItem by cardDropdownItem

bs4CardSidebar

  • inputId becomes id.
  • icon expects shiny::icon.

bs4TabCard

  • Change solidHeader behavior.

bs4ValueBox

  • status becomes color.
  • icon expects shiny::icon.

bs4InfoBox

  • status becomes color
  • Remove ... for subtitle
  • Remove iconStatus.
  • Add href and fill.
  • Rename gradientColor to gradient.

bs4UserCard

  • src becomes image.
  • status becomes color.

bs4SocialBox

  • rework component
  • add userBlock() to pass on title.

attachmentBlock

  • src becomes image.
  • titleUrl becomes href.

descriptionBlock

  • icon expects shiny::icon.

bs4Box

  • This component has been removed

bs4TabCard

  • rework component. Like tabBox() from {shinydashboard}

bs4DropdownMenu

  • badge becomes badgeStatus
  • Add type.
  • icon expects shiny::icon.
  • Replace labelText by headerText.
  • Add .list and href.
  • Remove align.

bs4DropdownMenuItem

  • This has been replaced by notificationItem() and messageItem()

Others

  • Reworked bs4Table() API.
  • In bs4Stars(): grade and maxstar, respectively become value and grade.
  • In listGroupItem(), remove type and put it in listGroup(). src becomes href.
  • status becomes color in blockQuote.
  • Remove src from carouselItem()
  • In bs4Ribbon(), status becomes color. Remove size.
  • In bs4Badge(), status becomes color.
  • In userMessage(), src becomes image and side becomes type.
  • In timelineItemMedia(), src becomes image.
  • In timelineItem(), timelineStart() and timelineEnd(), icon expects shiny::icon.
  • status becomes color in timelineItem(), timelineLabel(), timelineStart() and timelineEnd().
  • In userPost() and userPostMedia(), src becomes image. Removed collapseStatus.
  • In bs4Stars(), status becomes color.
  • Remove bs4ShowTab(), bs4HideTab() and bs4RemoveTab(). shiny vanilla function should work well now.
  • Remove bs4TabPanel().
  • bs4TabSetPanel() becomes bs4TabsetPanel() and is built on top of shiny::tabsetPanel.
  • In cardProfile(), add bordered. src becomes image.
  • 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 to boxSidebar() to allow to close sidebar on outside-click. Thanks @predict42-patrick for the suggestion and JS code.
  • New gradient parameter to valuebox().
  • New help mode in dashboardPage() to automatically toggle all tooltips and popovers. Use with bs4TooltipUI() and bs4PopoverUI().
  • 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() and userListItem().
  • New productList() and productListItem().
  • New userDescription() and userBlock().
  • New built-in skinSelector.
  • New built-in dark/light mode switcher.
  • New "go to top" feature.
  • New dashboardUserItem(), userOutput() and renderUser().
  • New bs4DashBrand for better dashboard titles.
  • add bs4ShowTab() and bs4HideTab(): thanks @fmmattioni for the reminder ;)
  • New bs4CardLayout(): simplify the way to deal with bs4Card()!
  • New bs4CloseAlert(): programmatically close bs4Alert()
  • New bs4Toast(): include the builtin AdminLTE3 toasts!
  • Add options to select bs4SidebarMenuItem() and bs4SidebarMenuSubItem() 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 in bs4Card()
  • new bs4CardSidebar(): access the status via input$id. Add updatebs4CardSidebar() to toggle the card sidebar
  • add bs4PopoverServer(), bs4PopoverUI(), bs4TooltipUI() and bs4TooltipServer()
  • bs4TabSetPanel(): you may access the currently selected tab with input$id
  • add type parameter to bs4TabSetPanel() and bs4TabCard() 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 to carousel().
  • 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 for bs4Dash::tabsetPanel that uses an old version of the shiny::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 the updatebs4Controlbar() would toggle it twice. Thanks @dwhdai
  • Fix issue #112 with sliderInput z-index and bs4DashPage() 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 that renderUI works. Thanks @artemklevtsov
  • fix #86 : cannot use updatebs4TabSetPanel() with renderUI. 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

v0.6.0.9000

3 years ago

Note: this is not an official release and has never been published on CRAN.

bs4Dash 0.6.0.9000

Breaking changes

  • updatebs4TabSetPanel(): selected takes the name of the tab instead of its index. This is more convenient (same as in shinydashboard)
  • remove all sidebar related parameters from bs4Card(). This is now part of the new bs4CardSidebar()
  • remove dropdownIcon parameter from bs4Card(). It is now part of the dropdownItemList()
  • remove labelStatus, labelText and labelTooltip params from bs4Card(). This is to reduce the number of parameters of cards
  • By default, closable is now FALSE for bs4Card()
  • 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 bs4ShowTab() and bs4HideTab(): thanks @fmmattioni for the reminder ;)
  • New bs4CardLayout(): simplify the way to deal with bs4Card()!
  • New bs4CloseAlert(): programmatically close bs4Alert()
  • New bs4Toast(): include the builtin AdminLTE3 toasts!
  • Add options to select bs4SidebarMenuItem() and bs4SidebarMenuSubItem() 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 in bs4Card()
  • new bs4CardSidebar(): access the status via input$id. Add updatebs4CardSidebar() to toggle the card sidebar
  • add bs4PopoverServer(), bs4PopoverUI(), bs4TooltipUI() and bs4TooltipServer()
  • bs4TabSetPanel(): you may access the currently selected tab with input$id
  • add type parameter to bs4TabSetPanel() and bs4TabCard() 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

  • 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 issue #110: due to the fact that the bs4Controlbar() now collapse when clicked outside, clicking on an input triggering the updatebs4Controlbar() would toggle it twice. Thanks @dwhdai
  • Fix issue #112 with sliderInput z-index and bs4DashPage() 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 that renderUI works. Thanks @artemklevtsov
  • fix #86 : cannot use updatebs4TabSetPanel() with renderUI. 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

v0.5.0

4 years ago

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 as updatebs4Sidebar() to programmatically toggle its state
  • add bs4Controlbar() input binding to indicate the state (collapse: FALSE, open: TRUE) as well as updatebs4Controlbar() to programmatically toggle its state
  • add bs4Card() input binding to indicate the state (collapse: FALSE, open: TRUE, maximize, closed, ...) as well as updatebs4Card() to programmatically toggle its state
  • add bs4InsertTab() to programmatically insert bs4TabPanel() in bs4TabSetPanel()
  • add bs4RemoveTab() to programmatically remove bs4TabPanel() in bs4TabSetPanel()

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 existing bs4TabItem() 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 the bs4Controlbar() 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() for bs4DashNavbar()
  • 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