Skip to content

shinydashboard v2.0.0 (CRAN)

Compare
Choose a tag to compare
@DivadNojnarg DivadNojnarg released this 26 Apr 10:07

shinydashboardPlus 2.0.0

This release is a major step for shinydashboardPlus. It is also a significant breaking
change compared to the latest CRAN version. Overall this release will simplify the transition from shinydashboard to shinydashboardPlus and bring more consistency, more interactivity between components. Below is the changelog.

Breaking changes

  • Change maxstar and grade in starBlock() to max and value.
  • Remove footerPadding from boxPlus() to align with {bs4Dash}
  • Remove all sidebar related parameters from boxPlus(). This is now part of the new boxPlusSidebar()
  • remove dropdownIcon parameter from boxPlus(). It is now part of the dropdownItemList()
  • Remove all label params from boxPlus(). This is to reduce the number of parameters of cards. Now part of boxPlusLabel()
  • In dropdownItemList() icon must be provided as shiny::icon() and not a simple string containing the icon name. This is to be consistent with {shinydashboard}
  • Replace left_text and right_text by left and right, respectively in dashboardFooter()
  • Remove all sidebar related parameters of dashboardPagePlus(). They now belong to dashboardSidebarPlus() to Align with {shinydashboard}
  • In dashboardSidebarPlus(): replace rightSidebar by controlbar (align with {bs4Dash}). Rename enable_preloader to preloader and loading_duration to duration
  • Rename rightSidebar() to dashboardControlbar() to align with {bs4Dash}
  • Remove enable_rightSidebar from dashboardHeaderPlus(). This is now part of dashboardControlbar() as disable like in {shinydashboard}. rightSidebarIcon becomes
    controlbarIcon that accepts shiny::icon instead of a simple string containing the icon name to be consistent with {shinydashboard}. left_menu becomes leftUi like in {bs4Dash}
  • Remove rightSiderbarMenu(), rightSidebarTablist(), rightSidebarTabItem(), rightSidebarPanel() and rightSidebarTabContent(). They are now replaces by dashboardControlbar(), controlbarMenu() and controlbarItem()
  • Remove rightSidebarMenuItem(), menuIcon() and menuInfo()
  • Rename boxPlus() to box(), dashboardPagePlus() to dashboardPage() and
    dashboardHeaderPlus() to dashboardHeader()
  • dropdownBlock() icon expects a shiny::icon() and not a simple string containing the icon name. This is to be consistent with {shinydashboard}
  • In gradientBox() icon expects a shiny::icon() and not a simple string containing the icon name. This is to be consistent with {shinydashboard}
  • In descriptionBlock() icon expects a shiny::icon() and not a simple string containing the icon name. This is to be consistent with {shinydashboard}
  • Rework navPillsItem(): pillName becomes left, pillText becomes right,
    pillColor becomes color, pillIcon becomes icon and expects a shiny::icon(). Add inputId so that the item behaves like an action button
  • Rework productListItem(): productTitle becomes title, productPrice becomes subtitle, priceColor becomes color
  • In timelineItem(), timelineStart() and timelineEnd(), icon expects a shiny::icon() and not a simple string containing the icon name. This is to be consistent with {shinydashboard}
  • In userListItem(), user_name becomes title, description becomes subtitle
  • dropdownItemList() becomes boxDropdown(). dropdownItem() becomes boxDropdownItem()
  • userPostToolItemList() becomes userPostTagItems(). userPostToolItem() becomes userPostTagItem()
  • Remove boxProfileItemList(). boxProfile() gets a new parameter bordered, inherited from the old boxProfileItemList()
  • In boxProfile(), title becomes mandatory
  • title and description mandatory in boxProfileItem()
  • In boxComment(): src and title are mandatory
  • widgetUserBox() becomes userBox() for more naming consistency
  • Remove gradientBox() for consistency with {bs4Dash}
  • Add icon, gradient and boxToolSize to box()
  • title mandatory in userBox(). Remove background. Replace backgroundUrl by backgroundImage. Reworked type parameter
  • Restore accordion() id. We should distinguish between TRUE inputs (sliderInput) and secondary inputs (that you can use for interactivity)...
  • color becomes status in accordionItem(). This is to be consistent with AdminLTE2 classes and {shinydashboard}
  • In attachmentBlock(): src becomes image and titleUrl becomes href. image is mandatory
  • In socialButton(): url becomes href and type becomes icon (expect shiny::icon)
  • In productListItem(): src becomes image to be consistent with {shinydashboard}
  • In timelineItemMedia(): src becomes image to be consistent with {shinydashboard}
  • In userListItem(): src becomes image to be consistent with {shinydashboard}
  • In userPost(): src becomes image to be consistent with {shinydashboard}. image and author are mandatory
  • In userPostMedia(): src becomes image to be consistent with {shinydashboard}. image is mandatory
  • Reworked verticalProgress() to progressBar()
  • In userMessage(): src becomes image to be consistent with {shinydashboard}. side becomes type (semantic)
  • In dashboardUser(): src becomes image to be consistent with {shinydashboard}
  • In userBox(): src becomes image to be consistent with {shinydashboard}
  • In socialBox(): src becomes image to be consistent with {shinydashboard}
  • In boxComment(): src becomes image to be consistent with {shinydashboard}
  • In boxProfile(): src becomes image to be consistent with {shinydashboard}
  • In boxDropdownItem(): url becomes href to be consistent with {shinydashboard}.
    name is removed
  • Rework preloader feature: remove duration and preloader now expects a list...
  • In navPillsItem(): active becomes selected

New features

  • Completely redesigned pkgdown website with much better documentation
  • New updateUserMessages() function
  • New updateAccordion() to toggle accordion() on the client
  • Automatic "scroll to top" feature to quickly go to the top of the dashboard
  • Use {waiter} for custom preloaders
  • Add inputId to taskItem(), notificationItem() and messageItem()
  • New id and icon to boxDropdownItem(), that behaves like an action button if passed
  • New updateNavPills() to programmatically change the selected item in navPills()
  • Add freshTheme parameter to dashboardPage(). This allows to use the awsesome {fresh} package. See here for more details.
  • Add skinSelector() to allow dynamically change the dashboard skin on the client side.
  • Add updateControlbarMenu() to programmatically change the selected controlbar item
  • Add id to dashboardControlbar() to be able to use updateControlbar()
  • Add id to dashboardSidebar() to be able to use updateSidebar()
  • New dashboardSidebar() (reworked shinydashboard sidebar)
  • New boxLabel() to add text labels in box()
  • New boxSidebar(): access the status via input$id. Add updateBoxSidebar() to toggle the box sidebar
  • new options parameter to dashboardPage(). See here for the
    list of available options
  • Toggle box() with updateBox() (see #10 and #69, @happyshows and @daatali)

Minor change

  • Add headerBorder to box()
  • add width to accordion() (default to 12)
  • Simplified dependencies code (No end-user impact)

Bug fixes

  • Fix #102: dashboardUser not displayed when using shinydashboard::sidebarMenuOutput. ensureActivatedTab was not
    in the global scope, whereas it was needed by the output binding code
  • Fix #107: collapsed = FALSE not working for dashboardControlbar.
  • Fix #56: When controlbar is expanded/collapsed, a plot does not fit in body.
  • Fix #78: Menu Item with Sub Menu Item Arrow Not Rotating.
  • Fix #105: box animation speed. Allow user defined options to prevail over internals.
  • Fix #57: broken default input$sidebarCollapsed.
  • Fix #86: controlbar should also trigger a window resize, like the left
    shinydashboard sidebar. Thanks @ajfisher83
  • Fix ugly layout of the box body (wrong padding and margins) when one puts a sidebar in box()...
  • title is mandatory in accordionItem() (Setting title to NULL would prevent the item
    to be able to collapse ...)