@arbor-education/design-system.components 0.25.9 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gather/instructions/project-overview.md +1 -1
- package/.github/workflows/release.yml +3 -1
- package/.storybook/main.ts +12 -6
- package/CHANGELOG.md +20 -0
- package/CONTRIBUTING.md +7 -5
- package/component-library.md +97 -3
- package/dist/components/emptyState/EmptyState.d.ts +22 -0
- package/dist/components/emptyState/EmptyState.d.ts.map +1 -0
- package/dist/components/emptyState/EmptyState.js +11 -0
- package/dist/components/emptyState/EmptyState.js.map +1 -0
- package/dist/components/emptyState/EmptyState.stories.d.ts +117 -0
- package/dist/components/emptyState/EmptyState.stories.d.ts.map +1 -0
- package/dist/components/emptyState/EmptyState.stories.js +332 -0
- package/dist/components/emptyState/EmptyState.stories.js.map +1 -0
- package/dist/components/emptyState/EmptyState.test.d.ts +2 -0
- package/dist/components/emptyState/EmptyState.test.d.ts.map +1 -0
- package/dist/components/emptyState/EmptyState.test.js +80 -0
- package/dist/components/emptyState/EmptyState.test.js.map +1 -0
- package/dist/components/favourite/FavouriteButton.d.ts +18 -0
- package/dist/components/favourite/FavouriteButton.d.ts.map +1 -0
- package/dist/components/favourite/FavouriteButton.js +16 -0
- package/dist/components/favourite/FavouriteButton.js.map +1 -0
- package/dist/components/favourite/FavouriteButton.test.d.ts +2 -0
- package/dist/components/favourite/FavouriteButton.test.d.ts.map +1 -0
- package/dist/components/favourite/FavouriteButton.test.js +37 -0
- package/dist/components/favourite/FavouriteButton.test.js.map +1 -0
- package/dist/components/filterBar/FilterBar.d.ts +1 -1
- package/dist/components/filterBar/FilterBar.stories.d.ts +1 -1
- package/dist/components/icon/Icon.d.ts +1 -1
- package/dist/components/icon/Icon.d.ts.map +1 -1
- package/dist/components/icon/Icon.js +1 -1
- package/dist/components/icon/Icon.js.map +1 -1
- package/dist/components/pill/Pill.d.ts +3 -2
- package/dist/components/pill/Pill.d.ts.map +1 -1
- package/dist/components/pill/Pill.js +15 -9
- package/dist/components/pill/Pill.js.map +1 -1
- package/dist/components/pill/Pill.stories.d.ts +21 -3
- package/dist/components/pill/Pill.stories.d.ts.map +1 -1
- package/dist/components/pill/Pill.stories.js +275 -40
- package/dist/components/pill/Pill.stories.js.map +1 -1
- package/dist/components/pill/Pill.test.js +64 -3
- package/dist/components/pill/Pill.test.js.map +1 -1
- package/dist/components/sideNavigation/SideNavigation.d.ts +34 -0
- package/dist/components/sideNavigation/SideNavigation.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigation.js +30 -0
- package/dist/components/sideNavigation/SideNavigation.js.map +1 -0
- package/dist/components/sideNavigation/SideNavigation.stories.d.ts +72 -0
- package/dist/components/sideNavigation/SideNavigation.stories.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigation.stories.js +298 -0
- package/dist/components/sideNavigation/SideNavigation.stories.js.map +1 -0
- package/dist/components/sideNavigation/SideNavigation.test.d.ts +2 -0
- package/dist/components/sideNavigation/SideNavigation.test.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigation.test.js +74 -0
- package/dist/components/sideNavigation/SideNavigation.test.js.map +1 -0
- package/dist/components/sideNavigation/SideNavigationContext.d.ts +10 -0
- package/dist/components/sideNavigation/SideNavigationContext.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigationContext.js +15 -0
- package/dist/components/sideNavigation/SideNavigationContext.js.map +1 -0
- package/dist/components/{sidebarNav/SidebarNavGroup.d.ts → sideNavigation/SideNavigationGroup.d.ts} +3 -3
- package/dist/components/sideNavigation/SideNavigationGroup.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigationGroup.js +16 -0
- package/dist/components/sideNavigation/SideNavigationGroup.js.map +1 -0
- package/dist/components/sideNavigation/SideNavigationGroup.test.d.ts +2 -0
- package/dist/components/sideNavigation/SideNavigationGroup.test.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigationGroup.test.js +58 -0
- package/dist/components/sideNavigation/SideNavigationGroup.test.js.map +1 -0
- package/dist/components/{sidebarNav/SidebarNavItem.d.ts → sideNavigation/SideNavigationItem.d.ts} +11 -12
- package/dist/components/sideNavigation/SideNavigationItem.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigationItem.js +28 -0
- package/dist/components/sideNavigation/SideNavigationItem.js.map +1 -0
- package/dist/components/sideNavigation/SideNavigationItem.test.d.ts +2 -0
- package/dist/components/sideNavigation/SideNavigationItem.test.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigationItem.test.js +65 -0
- package/dist/components/sideNavigation/SideNavigationItem.test.js.map +1 -0
- package/dist/components/sideNavigation/SideNavigationItemFavourite.d.ts +8 -0
- package/dist/components/sideNavigation/SideNavigationItemFavourite.d.ts.map +1 -0
- package/dist/components/{sidebarNav/SidebarNavItemFavourite.js → sideNavigation/SideNavigationItemFavourite.js} +5 -5
- package/dist/components/sideNavigation/SideNavigationItemFavourite.js.map +1 -0
- package/dist/components/sideNavigation/SideNavigationItemFavourite.test.d.ts +2 -0
- package/dist/components/sideNavigation/SideNavigationItemFavourite.test.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigationItemFavourite.test.js +31 -0
- package/dist/components/sideNavigation/SideNavigationItemFavourite.test.js.map +1 -0
- package/dist/components/sideNavigation/SideNavigationTitle.d.ts +4 -0
- package/dist/components/sideNavigation/SideNavigationTitle.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigationTitle.js +7 -0
- package/dist/components/sideNavigation/SideNavigationTitle.js.map +1 -0
- package/dist/components/sideNavigation/SideNavigationTitle.test.d.ts +2 -0
- package/dist/components/sideNavigation/SideNavigationTitle.test.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigationTitle.test.js +22 -0
- package/dist/components/sideNavigation/SideNavigationTitle.test.js.map +1 -0
- package/dist/components/sideNavigation/SideNavigationTooltip.d.ts +7 -0
- package/dist/components/sideNavigation/SideNavigationTooltip.d.ts.map +1 -0
- package/dist/components/{sidebarNav/SidebarNavTooltip.js → sideNavigation/SideNavigationTooltip.js} +2 -2
- package/dist/components/sideNavigation/SideNavigationTooltip.js.map +1 -0
- package/dist/components/sideNavigation/SideNavigationTooltip.test.d.ts +2 -0
- package/dist/components/sideNavigation/SideNavigationTooltip.test.d.ts.map +1 -0
- package/dist/components/sideNavigation/SideNavigationTooltip.test.js +26 -0
- package/dist/components/sideNavigation/SideNavigationTooltip.test.js.map +1 -0
- package/dist/components/sideNavigation/resolvePanelItemProps.d.ts +4 -0
- package/dist/components/sideNavigation/resolvePanelItemProps.d.ts.map +1 -0
- package/dist/components/{sidebarNav → sideNavigation}/resolvePanelItemProps.js +5 -4
- package/dist/components/sideNavigation/resolvePanelItemProps.js.map +1 -0
- package/dist/components/sideNavigation/resolvePanelItemProps.test.d.ts.map +1 -0
- package/dist/components/{sidebarNav → sideNavigation}/resolvePanelItemProps.test.js +18 -4
- package/dist/components/sideNavigation/resolvePanelItemProps.test.js.map +1 -0
- package/dist/components/sideNavigation/types.d.ts +47 -0
- package/dist/components/sideNavigation/types.d.ts.map +1 -0
- package/dist/components/sideNavigation/types.js +2 -0
- package/dist/components/sideNavigation/types.js.map +1 -0
- package/dist/components/sidebar/Sidebar.d.ts +13 -0
- package/dist/components/sidebar/Sidebar.d.ts.map +1 -0
- package/dist/components/sidebar/Sidebar.js +9 -0
- package/dist/components/sidebar/Sidebar.js.map +1 -0
- package/dist/components/sidebar/Sidebar.stories.d.ts +48 -0
- package/dist/components/sidebar/Sidebar.stories.d.ts.map +1 -0
- package/dist/components/sidebar/Sidebar.stories.js +444 -0
- package/dist/components/sidebar/Sidebar.stories.js.map +1 -0
- package/dist/components/sidebar/Sidebar.test.d.ts +2 -0
- package/dist/components/sidebar/Sidebar.test.d.ts.map +1 -0
- package/dist/components/sidebar/Sidebar.test.js +81 -0
- package/dist/components/sidebar/Sidebar.test.js.map +1 -0
- package/dist/components/sidebar/SidebarItem.d.ts +7 -0
- package/dist/components/sidebar/SidebarItem.d.ts.map +1 -0
- package/dist/components/sidebar/SidebarItem.js +11 -0
- package/dist/components/sidebar/SidebarItem.js.map +1 -0
- package/dist/components/singleUser/SingleUser.d.ts +1 -1
- package/dist/components/table/Table.d.ts.map +1 -1
- package/dist/components/table/Table.js +2 -1
- package/dist/components/table/Table.js.map +1 -1
- package/dist/components/table/Table.stories.d.ts.map +1 -1
- package/dist/components/table/Table.stories.js +24 -70
- package/dist/components/table/Table.stories.js.map +1 -1
- package/dist/components/table/cellEditors/DateCellEditor.stories.d.ts.map +1 -1
- package/dist/components/table/cellEditors/DateCellEditor.stories.js +16 -13
- package/dist/components/table/cellEditors/DateCellEditor.stories.js.map +1 -1
- package/dist/components/table/cellRenderers/BooleanCellRenderer.stories.d.ts.map +1 -1
- package/dist/components/table/cellRenderers/BooleanCellRenderer.stories.js +6 -7
- package/dist/components/table/cellRenderers/BooleanCellRenderer.stories.js.map +1 -1
- package/dist/components/table/cellRenderers/ButtonCellRenderer.stories.d.ts.map +1 -1
- package/dist/components/table/cellRenderers/ButtonCellRenderer.stories.js +7 -8
- package/dist/components/table/cellRenderers/ButtonCellRenderer.stories.js.map +1 -1
- package/dist/components/table/cellRenderers/CheckboxCellRenderer.stories.d.ts.map +1 -1
- package/dist/components/table/cellRenderers/CheckboxCellRenderer.stories.js +7 -8
- package/dist/components/table/cellRenderers/CheckboxCellRenderer.stories.js.map +1 -1
- package/dist/components/table/cellRenderers/InlineTextCellRenderer.stories.d.ts.map +1 -1
- package/dist/components/table/cellRenderers/InlineTextCellRenderer.stories.js +7 -8
- package/dist/components/table/cellRenderers/InlineTextCellRenderer.stories.js.map +1 -1
- package/dist/components/table/cellRenderers/NumberInputCellRenderer.stories.d.ts.map +1 -1
- package/dist/components/table/cellRenderers/NumberInputCellRenderer.stories.js +12 -15
- package/dist/components/table/cellRenderers/NumberInputCellRenderer.stories.js.map +1 -1
- package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.stories.d.ts.map +1 -1
- package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.stories.js +19 -29
- package/dist/components/table/cellRenderers/SelectDropdownCellRenderer.stories.js.map +1 -1
- package/dist/components/table/columnTypes.d.ts +3 -0
- package/dist/components/table/columnTypes.d.ts.map +1 -0
- package/dist/components/table/columnTypes.js +55 -0
- package/dist/components/table/columnTypes.js.map +1 -0
- package/dist/components/tabs/TabsItem.stories.d.ts +2 -2
- package/dist/components/toast/Toast.d.ts +11 -2
- package/dist/components/toast/Toast.d.ts.map +1 -1
- package/dist/components/toast/Toast.js +5 -3
- package/dist/components/toast/Toast.js.map +1 -1
- package/dist/components/toast/Toast.stories.d.ts +15 -3
- package/dist/components/toast/Toast.stories.d.ts.map +1 -1
- package/dist/components/toast/Toast.stories.js +43 -41
- package/dist/components/toast/Toast.stories.js.map +1 -1
- package/dist/components/toast/Toast.test.js +19 -4
- package/dist/components/toast/Toast.test.js.map +1 -1
- package/dist/components/toast/ToastAction.d.ts +7 -0
- package/dist/components/toast/ToastAction.d.ts.map +1 -0
- package/dist/components/toast/ToastAction.js +9 -0
- package/dist/components/toast/ToastAction.js.map +1 -0
- package/dist/components/toggleGroup/ToggleGroup.stories.js +1 -1
- package/dist/components/toggleGroup/ToggleGroup.stories.js.map +1 -1
- package/dist/components/tooltip/TooltipWrapper.d.ts +1 -0
- package/dist/components/tooltip/TooltipWrapper.d.ts.map +1 -1
- package/dist/components/tooltip/TooltipWrapper.js +2 -2
- package/dist/components/tooltip/TooltipWrapper.js.map +1 -1
- package/dist/components/widget/Widget.d.ts +18 -0
- package/dist/components/widget/Widget.d.ts.map +1 -0
- package/dist/components/widget/Widget.js +51 -0
- package/dist/components/widget/Widget.js.map +1 -0
- package/dist/components/widget/Widget.stories.d.ts +128 -0
- package/dist/components/widget/Widget.stories.d.ts.map +1 -0
- package/dist/components/widget/Widget.stories.js +417 -0
- package/dist/components/widget/Widget.stories.js.map +1 -0
- package/dist/components/widget/Widget.test.d.ts +2 -0
- package/dist/components/widget/Widget.test.d.ts.map +1 -0
- package/dist/components/widget/Widget.test.js +110 -0
- package/dist/components/widget/Widget.test.js.map +1 -0
- package/dist/components/widget/WidgetBody.d.ts +6 -0
- package/dist/components/widget/WidgetBody.d.ts.map +1 -0
- package/dist/components/widget/WidgetBody.js +20 -0
- package/dist/components/widget/WidgetBody.js.map +1 -0
- package/dist/components/widget/WidgetContext.d.ts +20 -0
- package/dist/components/widget/WidgetContext.d.ts.map +1 -0
- package/dist/components/widget/WidgetContext.js +10 -0
- package/dist/components/widget/WidgetContext.js.map +1 -0
- package/dist/components/widget/WidgetHeader.d.ts +8 -0
- package/dist/components/widget/WidgetHeader.d.ts.map +1 -0
- package/dist/components/widget/WidgetHeader.js +56 -0
- package/dist/components/widget/WidgetHeader.js.map +1 -0
- package/dist/components/widget/types.d.ts +43 -0
- package/dist/components/widget/types.d.ts.map +1 -0
- package/dist/components/widget/types.js +2 -0
- package/dist/components/widget/types.js.map +1 -0
- package/dist/components/widgetCalendar/WidgetCalendar.d.ts +35 -0
- package/dist/components/widgetCalendar/WidgetCalendar.d.ts.map +1 -0
- package/dist/components/widgetCalendar/WidgetCalendar.js +22 -0
- package/dist/components/widgetCalendar/WidgetCalendar.js.map +1 -0
- package/dist/components/widgetCalendar/WidgetCalendar.stories.d.ts +60 -0
- package/dist/components/widgetCalendar/WidgetCalendar.stories.d.ts.map +1 -0
- package/dist/components/widgetCalendar/WidgetCalendar.stories.js +140 -0
- package/dist/components/widgetCalendar/WidgetCalendar.stories.js.map +1 -0
- package/dist/components/widgetCalendar/WidgetCalendar.test.d.ts +2 -0
- package/dist/components/widgetCalendar/WidgetCalendar.test.d.ts.map +1 -0
- package/dist/components/widgetCalendar/WidgetCalendar.test.js +88 -0
- package/dist/components/widgetCalendar/WidgetCalendar.test.js.map +1 -0
- package/dist/components/widgetCalendar/WidgetCalendarItem.d.ts +17 -0
- package/dist/components/widgetCalendar/WidgetCalendarItem.d.ts.map +1 -0
- package/dist/components/widgetCalendar/WidgetCalendarItem.js +25 -0
- package/dist/components/widgetCalendar/WidgetCalendarItem.js.map +1 -0
- package/dist/components/widgetFavourites/WidgetFavourites.d.ts +12 -0
- package/dist/components/widgetFavourites/WidgetFavourites.d.ts.map +1 -0
- package/dist/components/widgetFavourites/WidgetFavourites.js +23 -0
- package/dist/components/widgetFavourites/WidgetFavourites.js.map +1 -0
- package/dist/components/widgetFavourites/WidgetFavourites.stories.d.ts +84 -0
- package/dist/components/widgetFavourites/WidgetFavourites.stories.d.ts.map +1 -0
- package/dist/components/widgetFavourites/WidgetFavourites.stories.js +210 -0
- package/dist/components/widgetFavourites/WidgetFavourites.stories.js.map +1 -0
- package/dist/components/widgetFavourites/WidgetFavourites.test.d.ts +2 -0
- package/dist/components/widgetFavourites/WidgetFavourites.test.d.ts.map +1 -0
- package/dist/components/widgetFavourites/WidgetFavourites.test.js +67 -0
- package/dist/components/widgetFavourites/WidgetFavourites.test.js.map +1 -0
- package/dist/components/widgetFavourites/WidgetFavouritesItem.d.ts +3 -0
- package/dist/components/widgetFavourites/WidgetFavouritesItem.d.ts.map +1 -0
- package/dist/components/widgetFavourites/WidgetFavouritesItem.js +10 -0
- package/dist/components/widgetFavourites/WidgetFavouritesItem.js.map +1 -0
- package/dist/components/widgetFavourites/types.d.ts +25 -0
- package/dist/components/widgetFavourites/types.d.ts.map +1 -0
- package/dist/components/widgetFavourites/types.js +2 -0
- package/dist/components/widgetFavourites/types.js.map +1 -0
- package/dist/components/widgetNotifications/WidgetNotifications.d.ts +33 -0
- package/dist/components/widgetNotifications/WidgetNotifications.d.ts.map +1 -0
- package/dist/components/widgetNotifications/WidgetNotifications.js +18 -0
- package/dist/components/widgetNotifications/WidgetNotifications.js.map +1 -0
- package/dist/components/widgetNotifications/WidgetNotifications.stories.d.ts +60 -0
- package/dist/components/widgetNotifications/WidgetNotifications.stories.d.ts.map +1 -0
- package/dist/components/widgetNotifications/WidgetNotifications.stories.js +269 -0
- package/dist/components/widgetNotifications/WidgetNotifications.stories.js.map +1 -0
- package/dist/components/widgetNotifications/WidgetNotifications.test.d.ts +2 -0
- package/dist/components/widgetNotifications/WidgetNotifications.test.d.ts.map +1 -0
- package/dist/components/widgetNotifications/WidgetNotifications.test.js +79 -0
- package/dist/components/widgetNotifications/WidgetNotifications.test.js.map +1 -0
- package/dist/components/widgetNotifications/WidgetNotificationsItem.d.ts +14 -0
- package/dist/components/widgetNotifications/WidgetNotificationsItem.d.ts.map +1 -0
- package/dist/components/widgetNotifications/WidgetNotificationsItem.js +14 -0
- package/dist/components/widgetNotifications/WidgetNotificationsItem.js.map +1 -0
- package/dist/index.css +756 -78
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +15 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -8
- package/dist/index.js.map +1 -1
- package/dist/utils/favourites/favouriteConstants.d.ts +12 -0
- package/dist/utils/favourites/favouriteConstants.d.ts.map +1 -0
- package/dist/utils/favourites/favouriteConstants.js +16 -0
- package/dist/utils/favourites/favouriteConstants.js.map +1 -0
- package/dist/utils/favourites/favouriteConstants.test.d.ts +2 -0
- package/dist/utils/favourites/favouriteConstants.test.d.ts.map +1 -0
- package/dist/utils/favourites/favouriteConstants.test.js +12 -0
- package/dist/utils/favourites/favouriteConstants.test.js.map +1 -0
- package/dist/utils/hooks/useControllableBoolean.d.ts.map +1 -0
- package/dist/utils/hooks/useControllableBoolean.js.map +1 -0
- package/dist/utils/hooks/useControllableBoolean.test.d.ts +2 -0
- package/dist/utils/hooks/useControllableBoolean.test.d.ts.map +1 -0
- package/dist/utils/hooks/useControllableBoolean.test.js +34 -0
- package/dist/utils/hooks/useControllableBoolean.test.js.map +1 -0
- package/package.json +10 -11
- package/src/components/emptyState/EmptyState.stories.tsx +487 -0
- package/src/components/emptyState/EmptyState.test.tsx +140 -0
- package/src/components/emptyState/EmptyState.tsx +84 -0
- package/src/components/emptyState/emptyState.scss +63 -0
- package/src/components/favourite/FavouriteButton.test.tsx +83 -0
- package/src/components/favourite/FavouriteButton.tsx +70 -0
- package/src/components/favourite/favouriteButton.scss +37 -0
- package/src/components/icon/Icon.tsx +2 -2
- package/src/components/link/link.scss +26 -0
- package/src/components/pill/Pill.stories.tsx +432 -41
- package/src/components/pill/Pill.test.tsx +74 -3
- package/src/components/pill/Pill.tsx +26 -11
- package/src/components/sideNavigation/SideNavigation.stories.tsx +578 -0
- package/src/components/sideNavigation/SideNavigation.test.tsx +109 -0
- package/src/components/sideNavigation/SideNavigation.tsx +98 -0
- package/src/components/sideNavigation/SideNavigationContext.tsx +25 -0
- package/src/components/sideNavigation/SideNavigationGroup.test.tsx +103 -0
- package/src/components/{sidebarNav/SidebarNavGroup.tsx → sideNavigation/SideNavigationGroup.tsx} +8 -8
- package/src/components/sideNavigation/SideNavigationItem.test.tsx +137 -0
- package/src/components/sideNavigation/SideNavigationItem.tsx +125 -0
- package/src/components/sideNavigation/SideNavigationItemFavourite.test.tsx +54 -0
- package/src/components/{sidebarNav/SidebarNavItemFavourite.tsx → sideNavigation/SideNavigationItemFavourite.tsx} +7 -7
- package/src/components/sideNavigation/SideNavigationTitle.test.tsx +23 -0
- package/src/components/sideNavigation/SideNavigationTitle.tsx +13 -0
- package/src/components/sideNavigation/SideNavigationTooltip.test.tsx +44 -0
- package/src/components/{sidebarNav/SidebarNavTooltip.tsx → sideNavigation/SideNavigationTooltip.tsx} +2 -2
- package/src/components/{sidebarNav → sideNavigation}/resolvePanelItemProps.test.ts +20 -4
- package/src/components/{sidebarNav → sideNavigation}/resolvePanelItemProps.ts +8 -7
- package/src/components/{sidebarNav/sidebarNav.scss → sideNavigation/sideNavigation.scss} +37 -136
- package/src/components/sideNavigation/types.ts +56 -0
- package/src/components/sidebar/Sidebar.stories.tsx +670 -0
- package/src/components/sidebar/Sidebar.test.tsx +155 -0
- package/src/components/sidebar/Sidebar.tsx +27 -0
- package/src/components/sidebar/SidebarItem.tsx +64 -0
- package/src/components/sidebar/sidebar.scss +65 -0
- package/src/components/table/Table.stories.tsx +24 -73
- package/src/components/table/Table.tsx +2 -0
- package/src/components/table/cellEditors/DateCellEditor.stories.tsx +16 -14
- package/src/components/table/cellRenderers/BooleanCellRenderer.stories.tsx +6 -7
- package/src/components/table/cellRenderers/ButtonCellRenderer.stories.tsx +7 -8
- package/src/components/table/cellRenderers/CheckboxCellRenderer.stories.tsx +7 -8
- package/src/components/table/cellRenderers/InlineTextCellRenderer.stories.tsx +7 -8
- package/src/components/table/cellRenderers/NumberInputCellRenderer.stories.tsx +12 -15
- package/src/components/table/cellRenderers/SelectDropdownCellRenderer.stories.tsx +19 -29
- package/src/components/table/columnTypes.ts +56 -0
- package/src/components/toast/Toast.stories.tsx +75 -67
- package/src/components/toast/Toast.test.tsx +40 -10
- package/src/components/toast/Toast.tsx +19 -5
- package/src/components/toast/ToastAction.tsx +17 -0
- package/src/components/toast/toast.scss +37 -0
- package/src/components/toggleGroup/ToggleGroup.stories.tsx +1 -1
- package/src/components/tooltip/TooltipWrapper.tsx +3 -1
- package/src/components/widget/Widget.stories.tsx +600 -0
- package/src/components/widget/Widget.test.tsx +263 -0
- package/src/components/widget/Widget.tsx +102 -0
- package/src/components/widget/WidgetBody.tsx +66 -0
- package/src/components/widget/WidgetContext.tsx +31 -0
- package/src/components/widget/WidgetHeader.tsx +155 -0
- package/src/components/widget/types.ts +47 -0
- package/src/components/widget/widget.scss +218 -0
- package/src/components/widgetCalendar/WidgetCalendar.stories.tsx +241 -0
- package/src/components/widgetCalendar/WidgetCalendar.test.tsx +137 -0
- package/src/components/widgetCalendar/WidgetCalendar.tsx +105 -0
- package/src/components/widgetCalendar/WidgetCalendarItem.tsx +105 -0
- package/src/components/widgetCalendar/widgetCalendar.scss +124 -0
- package/src/components/widgetFavourites/WidgetFavourites.stories.tsx +341 -0
- package/src/components/widgetFavourites/WidgetFavourites.test.tsx +127 -0
- package/src/components/widgetFavourites/WidgetFavourites.tsx +83 -0
- package/src/components/widgetFavourites/WidgetFavouritesItem.tsx +37 -0
- package/src/components/widgetFavourites/types.ts +26 -0
- package/src/components/widgetFavourites/widgetFavourites.scss +84 -0
- package/src/components/widgetNotifications/WidgetNotifications.stories.tsx +417 -0
- package/src/components/widgetNotifications/WidgetNotifications.test.tsx +152 -0
- package/src/components/widgetNotifications/WidgetNotifications.tsx +112 -0
- package/src/components/widgetNotifications/WidgetNotificationsItem.tsx +88 -0
- package/src/components/widgetNotifications/widgetNotifications.scss +186 -0
- package/src/docs/Contributing.mdx +1 -1
- package/src/index.scss +9 -1
- package/src/index.ts +22 -18
- package/src/tokens.scss +12 -2
- package/src/utils/favourites/favouriteConstants.test.ts +19 -0
- package/src/utils/favourites/favouriteConstants.ts +21 -0
- package/src/utils/hooks/useControllableBoolean.test.ts +48 -0
- package/dist/components/sidebarNav/SidebarNav.d.ts +0 -46
- package/dist/components/sidebarNav/SidebarNav.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNav.js +0 -102
- package/dist/components/sidebarNav/SidebarNav.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNav.stories.d.ts +0 -61
- package/dist/components/sidebarNav/SidebarNav.stories.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNav.stories.js +0 -253
- package/dist/components/sidebarNav/SidebarNav.stories.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNav.test.d.ts +0 -2
- package/dist/components/sidebarNav/SidebarNav.test.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNav.test.js +0 -240
- package/dist/components/sidebarNav/SidebarNav.test.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavContext.d.ts +0 -13
- package/dist/components/sidebarNav/SidebarNavContext.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavContext.js +0 -15
- package/dist/components/sidebarNav/SidebarNavContext.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavGroup.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavGroup.js +0 -16
- package/dist/components/sidebarNav/SidebarNavGroup.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavItem.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavItem.js +0 -44
- package/dist/components/sidebarNav/SidebarNavItem.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavItemFavourite.d.ts +0 -8
- package/dist/components/sidebarNav/SidebarNavItemFavourite.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavItemFavourite.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavPanel.d.ts +0 -4
- package/dist/components/sidebarNav/SidebarNavPanel.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavPanel.js +0 -9
- package/dist/components/sidebarNav/SidebarNavPanel.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavPanelNav.d.ts +0 -10
- package/dist/components/sidebarNav/SidebarNavPanelNav.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavPanelNav.js +0 -21
- package/dist/components/sidebarNav/SidebarNavPanelNav.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavRail.d.ts +0 -6
- package/dist/components/sidebarNav/SidebarNavRail.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavRail.js +0 -7
- package/dist/components/sidebarNav/SidebarNavRail.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavRailItem.d.ts +0 -10
- package/dist/components/sidebarNav/SidebarNavRailItem.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavRailItem.js +0 -25
- package/dist/components/sidebarNav/SidebarNavRailItem.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavRailList.d.ts +0 -4
- package/dist/components/sidebarNav/SidebarNavRailList.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavRailList.js +0 -7
- package/dist/components/sidebarNav/SidebarNavRailList.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavRailSlot.d.ts +0 -6
- package/dist/components/sidebarNav/SidebarNavRailSlot.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavRailSlot.js +0 -7
- package/dist/components/sidebarNav/SidebarNavRailSlot.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavSeparator.d.ts +0 -6
- package/dist/components/sidebarNav/SidebarNavSeparator.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavSeparator.js +0 -8
- package/dist/components/sidebarNav/SidebarNavSeparator.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavTitle.d.ts +0 -4
- package/dist/components/sidebarNav/SidebarNavTitle.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavTitle.js +0 -7
- package/dist/components/sidebarNav/SidebarNavTitle.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavTooltip.d.ts +0 -7
- package/dist/components/sidebarNav/SidebarNavTooltip.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavTooltip.js.map +0 -1
- package/dist/components/sidebarNav/SidebarNavTrigger.d.ts +0 -8
- package/dist/components/sidebarNav/SidebarNavTrigger.d.ts.map +0 -1
- package/dist/components/sidebarNav/SidebarNavTrigger.js +0 -15
- package/dist/components/sidebarNav/SidebarNavTrigger.js.map +0 -1
- package/dist/components/sidebarNav/index.d.ts +0 -4
- package/dist/components/sidebarNav/index.d.ts.map +0 -1
- package/dist/components/sidebarNav/index.js +0 -3
- package/dist/components/sidebarNav/index.js.map +0 -1
- package/dist/components/sidebarNav/resolvePanelItemProps.d.ts +0 -4
- package/dist/components/sidebarNav/resolvePanelItemProps.d.ts.map +0 -1
- package/dist/components/sidebarNav/resolvePanelItemProps.js.map +0 -1
- package/dist/components/sidebarNav/resolvePanelItemProps.test.d.ts.map +0 -1
- package/dist/components/sidebarNav/resolvePanelItemProps.test.js.map +0 -1
- package/dist/components/sidebarNav/types.d.ts +0 -100
- package/dist/components/sidebarNav/types.d.ts.map +0 -1
- package/dist/components/sidebarNav/types.js +0 -4
- package/dist/components/sidebarNav/types.js.map +0 -1
- package/dist/components/sidebarNav/useControllableBoolean.d.ts.map +0 -1
- package/dist/components/sidebarNav/useControllableBoolean.js.map +0 -1
- package/src/components/sidebarNav/SidebarNav.stories.tsx +0 -484
- package/src/components/sidebarNav/SidebarNav.test.tsx +0 -611
- package/src/components/sidebarNav/SidebarNav.tsx +0 -230
- package/src/components/sidebarNav/SidebarNavContext.tsx +0 -28
- package/src/components/sidebarNav/SidebarNavItem.tsx +0 -162
- package/src/components/sidebarNav/SidebarNavPanel.tsx +0 -20
- package/src/components/sidebarNav/SidebarNavPanelNav.tsx +0 -55
- package/src/components/sidebarNav/SidebarNavRail.tsx +0 -20
- package/src/components/sidebarNav/SidebarNavRailItem.tsx +0 -83
- package/src/components/sidebarNav/SidebarNavRailList.tsx +0 -11
- package/src/components/sidebarNav/SidebarNavRailSlot.tsx +0 -15
- package/src/components/sidebarNav/SidebarNavSeparator.tsx +0 -19
- package/src/components/sidebarNav/SidebarNavTitle.tsx +0 -13
- package/src/components/sidebarNav/SidebarNavTrigger.tsx +0 -52
- package/src/components/sidebarNav/index.ts +0 -6
- package/src/components/sidebarNav/types.ts +0 -126
- /package/dist/components/{sidebarNav → sideNavigation}/resolvePanelItemProps.test.d.ts +0 -0
- /package/dist/{components/sidebarNav → utils/hooks}/useControllableBoolean.d.ts +0 -0
- /package/dist/{components/sidebarNav → utils/hooks}/useControllableBoolean.js +0 -0
- /package/src/{components/sidebarNav → utils/hooks}/useControllableBoolean.ts +0 -0
|
@@ -21,7 +21,8 @@ const DESCRIPTION_INTRO = [
|
|
|
21
21
|
'The cell `value` (or `valueFormatted`) must be a `ButtonProps` object — the renderer spreads it',
|
|
22
22
|
'directly onto `Button`, so all button variants, sizes, and handlers are supported.',
|
|
23
23
|
'',
|
|
24
|
-
'Register it via the
|
|
24
|
+
'Register it via `type: \'dsButtonColumn\'` on the column definition (pre-registered by Arbor\'s `Table`),',
|
|
25
|
+
'via the string key `dsButtonCellRenderer`, or by importing the component directly.',
|
|
25
26
|
].join('\n');
|
|
26
27
|
|
|
27
28
|
const USAGE_GUIDANCE = [
|
|
@@ -56,7 +57,7 @@ const DEVELOPER_NOTES = [
|
|
|
56
57
|
' {',
|
|
57
58
|
" colId: 'viewAction',",
|
|
58
59
|
" headerName: '',",
|
|
59
|
-
"
|
|
60
|
+
" type: 'dsButtonColumn',",
|
|
60
61
|
' valueGetter: (params) => ({',
|
|
61
62
|
" children: 'View',",
|
|
62
63
|
" variant: 'secondary',",
|
|
@@ -199,7 +200,7 @@ const colDefs = [
|
|
|
199
200
|
{
|
|
200
201
|
colId: 'action',
|
|
201
202
|
headerName: '',
|
|
202
|
-
|
|
203
|
+
type: 'dsButtonColumn',
|
|
203
204
|
valueGetter: (params) => ({
|
|
204
205
|
children: 'Enrol',
|
|
205
206
|
variant: 'primary',
|
|
@@ -282,8 +283,7 @@ function ButtonCellRendererExample() {
|
|
|
282
283
|
headerName: '',
|
|
283
284
|
flex: 1,
|
|
284
285
|
maxWidth: 180,
|
|
285
|
-
|
|
286
|
-
cellRenderer: 'dsButtonCellRenderer',
|
|
286
|
+
type: 'dsButtonColumn',
|
|
287
287
|
valueGetter: (params) => ({
|
|
288
288
|
children: 'View details',
|
|
289
289
|
variant: 'secondary',
|
|
@@ -314,8 +314,7 @@ export default ButtonCellRendererExample;
|
|
|
314
314
|
headerName: '',
|
|
315
315
|
flex: 1,
|
|
316
316
|
maxWidth: 180,
|
|
317
|
-
|
|
318
|
-
cellRenderer: 'dsButtonCellRenderer',
|
|
317
|
+
type: 'dsButtonColumn',
|
|
319
318
|
valueGetter: params => ({
|
|
320
319
|
children: 'View details',
|
|
321
320
|
variant: 'secondary',
|
|
@@ -329,5 +328,5 @@ export default ButtonCellRendererExample;
|
|
|
329
328
|
/>
|
|
330
329
|
),
|
|
331
330
|
},
|
|
332
|
-
'`
|
|
331
|
+
'`type: \'dsButtonColumn\'` wired up inside a full `Table`. The action column uses `valueGetter` to return a `ButtonProps` object per row — `onClick` closes over `params.data` so each button knows its row. Click a button and check the browser console.',
|
|
333
332
|
);
|
|
@@ -21,7 +21,8 @@ const DESCRIPTION_INTRO = [
|
|
|
21
21
|
'`CheckboxCellRenderer` is an AG Grid cell renderer that renders an editable Arbor `CheckboxInput`',
|
|
22
22
|
'inside a table cell. On toggle, it calls `node.setDataValue` to update the row data in-place.',
|
|
23
23
|
'',
|
|
24
|
-
'Register it via the
|
|
24
|
+
'Register it via `type: \'dsCheckboxColumn\'` on the column definition (pre-registered by Arbor\'s `Table`),',
|
|
25
|
+
'via the string key `dsCheckboxCellRenderer`, or by importing the component directly.',
|
|
25
26
|
].join('\n');
|
|
26
27
|
|
|
27
28
|
const USAGE_GUIDANCE = [
|
|
@@ -61,7 +62,7 @@ const DEVELOPER_NOTES = [
|
|
|
61
62
|
' {',
|
|
62
63
|
" field: 'isEnrolled',",
|
|
63
64
|
" headerName: 'Enrolled',",
|
|
64
|
-
"
|
|
65
|
+
" type: 'dsCheckboxColumn',",
|
|
65
66
|
' // optional extra CheckboxInput props:',
|
|
66
67
|
' cellRendererParams: { disabled: isReadOnly },',
|
|
67
68
|
' },',
|
|
@@ -230,7 +231,7 @@ const colDefs = [
|
|
|
230
231
|
{
|
|
231
232
|
field: 'isEnrolled',
|
|
232
233
|
headerName: 'Enrolled',
|
|
233
|
-
|
|
234
|
+
type: 'dsCheckboxColumn',
|
|
234
235
|
},
|
|
235
236
|
];
|
|
236
237
|
`.trim(),
|
|
@@ -300,8 +301,7 @@ function CheckboxCellRendererExample() {
|
|
|
300
301
|
field: 'enrolled',
|
|
301
302
|
headerName: 'Enrolled',
|
|
302
303
|
flex: 1,
|
|
303
|
-
|
|
304
|
-
cellRenderer: 'dsCheckboxCellRenderer',
|
|
304
|
+
type: 'dsCheckboxColumn',
|
|
305
305
|
},
|
|
306
306
|
]}
|
|
307
307
|
defaultColDef={{ flex: 1, minWidth: 120 }}
|
|
@@ -324,8 +324,7 @@ export default CheckboxCellRendererExample;
|
|
|
324
324
|
field: 'enrolled',
|
|
325
325
|
headerName: 'Enrolled',
|
|
326
326
|
flex: 1,
|
|
327
|
-
|
|
328
|
-
cellRenderer: 'dsCheckboxCellRenderer',
|
|
327
|
+
type: 'dsCheckboxColumn',
|
|
329
328
|
},
|
|
330
329
|
]}
|
|
331
330
|
defaultColDef={{ flex: 1, minWidth: 120 }}
|
|
@@ -333,5 +332,5 @@ export default CheckboxCellRendererExample;
|
|
|
333
332
|
/>
|
|
334
333
|
),
|
|
335
334
|
},
|
|
336
|
-
'`
|
|
335
|
+
'`type: \'dsCheckboxColumn\'` wired up inside a full `Table`. Click a checkbox to toggle the value — AG Grid calls `node.setDataValue` which updates the row data in-place. The `headerName` ("Enrolled") becomes the checkbox `aria-label`.',
|
|
337
336
|
);
|
|
@@ -21,7 +21,8 @@ const DESCRIPTION_INTRO = [
|
|
|
21
21
|
'inside a table cell for inline text editing. Pressing Enter commits the current value via',
|
|
22
22
|
'`node.setDataValue`. The input is pre-populated from `valueFormatted ?? value`.',
|
|
23
23
|
'',
|
|
24
|
-
'Register it via the
|
|
24
|
+
'Register it via `type: \'dsInlineTextColumn\'` on the column definition (pre-registered by Arbor\'s `Table`),',
|
|
25
|
+
'via the string key `dsInlineTextCellRenderer`, or by importing the component directly.',
|
|
25
26
|
].join('\n');
|
|
26
27
|
|
|
27
28
|
const USAGE_GUIDANCE = [
|
|
@@ -60,7 +61,7 @@ const DEVELOPER_NOTES = [
|
|
|
60
61
|
' {',
|
|
61
62
|
" field: 'forename',",
|
|
62
63
|
" headerName: 'First name',",
|
|
63
|
-
"
|
|
64
|
+
" type: 'dsInlineTextColumn',",
|
|
64
65
|
' },',
|
|
65
66
|
'];',
|
|
66
67
|
'```',
|
|
@@ -206,7 +207,7 @@ const colDefs = [
|
|
|
206
207
|
{
|
|
207
208
|
field: 'forename',
|
|
208
209
|
headerName: 'First name',
|
|
209
|
-
|
|
210
|
+
type: 'dsInlineTextColumn',
|
|
210
211
|
},
|
|
211
212
|
];
|
|
212
213
|
`.trim(),
|
|
@@ -255,8 +256,7 @@ function InlineTextCellRendererExample() {
|
|
|
255
256
|
field: 'forename',
|
|
256
257
|
headerName: 'First Name',
|
|
257
258
|
flex: 1,
|
|
258
|
-
|
|
259
|
-
cellRenderer: 'dsInlineTextCellRenderer',
|
|
259
|
+
type: 'dsInlineTextColumn',
|
|
260
260
|
},
|
|
261
261
|
]}
|
|
262
262
|
defaultColDef={{ flex: 1, minWidth: 120 }}
|
|
@@ -279,8 +279,7 @@ export default InlineTextCellRendererExample;
|
|
|
279
279
|
field: 'forename',
|
|
280
280
|
headerName: 'First Name',
|
|
281
281
|
flex: 1,
|
|
282
|
-
|
|
283
|
-
cellRenderer: 'dsInlineTextCellRenderer',
|
|
282
|
+
type: 'dsInlineTextColumn',
|
|
284
283
|
},
|
|
285
284
|
]}
|
|
286
285
|
defaultColDef={{ flex: 1, minWidth: 120 }}
|
|
@@ -288,5 +287,5 @@ export default InlineTextCellRendererExample;
|
|
|
288
287
|
/>
|
|
289
288
|
),
|
|
290
289
|
},
|
|
291
|
-
'`
|
|
290
|
+
'`type: \'dsInlineTextColumn\'` wired up inside a full `Table`. Click into any First Name cell to start editing — the `TextInput` is always visible. Press Enter to commit the value via `node.setDataValue`, updating the row data in-place.',
|
|
292
291
|
);
|
|
@@ -21,7 +21,8 @@ const DESCRIPTION_INTRO = [
|
|
|
21
21
|
'`NumberInputCellRenderer` is an AG Grid cell renderer that renders an editable Arbor `NumberInput`',
|
|
22
22
|
'permanently inside a table cell. On change, it calls `node.setDataValue` to update the row data in-place.',
|
|
23
23
|
'',
|
|
24
|
-
'Register it via the
|
|
24
|
+
'Register it via `type: \'dsNumberInputColumn\'` on the column definition (pre-registered by Arbor\'s `Table`),',
|
|
25
|
+
'via the string key `dsNumberInputCellRenderer`, or by importing the component directly.',
|
|
25
26
|
].join('\n');
|
|
26
27
|
|
|
27
28
|
const USAGE_GUIDANCE = [
|
|
@@ -61,7 +62,7 @@ const DEVELOPER_NOTES = [
|
|
|
61
62
|
' {',
|
|
62
63
|
" field: 'quantity',",
|
|
63
64
|
" headerName: 'Quantity',",
|
|
64
|
-
"
|
|
65
|
+
" type: 'dsNumberInputColumn',",
|
|
65
66
|
' cellRendererParams: { min: 0, max: 100 },',
|
|
66
67
|
' },',
|
|
67
68
|
'];',
|
|
@@ -293,17 +294,15 @@ function NumberInputCellRendererExample() {
|
|
|
293
294
|
field: 'sessions',
|
|
294
295
|
headerName: 'Sessions',
|
|
295
296
|
flex: 1,
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
cellRendererParams: { min: 0, suppressCellFocusAndFocusFirstElement: true },
|
|
297
|
+
type: 'dsNumberInputColumn',
|
|
298
|
+
cellRendererParams: { min: 0 },
|
|
299
299
|
},
|
|
300
300
|
{
|
|
301
301
|
field: 'score',
|
|
302
302
|
headerName: 'Score (/100)',
|
|
303
303
|
flex: 1,
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
cellRendererParams: { min: 0, max: 100, suppressCellFocusAndFocusFirstElement: true },
|
|
304
|
+
type: 'dsNumberInputColumn',
|
|
305
|
+
cellRendererParams: { min: 0, max: 100 },
|
|
307
306
|
},
|
|
308
307
|
]}
|
|
309
308
|
defaultColDef={{ flex: 1, minWidth: 120 }}
|
|
@@ -324,17 +323,15 @@ function NumberInputCellRendererExample() {
|
|
|
324
323
|
field: 'sessions',
|
|
325
324
|
headerName: 'Sessions',
|
|
326
325
|
flex: 1,
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
cellRendererParams: { min: 0, suppressCellFocusAndFocusFirstElement: true },
|
|
326
|
+
type: 'dsNumberInputColumn',
|
|
327
|
+
cellRendererParams: { min: 0 },
|
|
330
328
|
},
|
|
331
329
|
{
|
|
332
330
|
field: 'score',
|
|
333
331
|
headerName: 'Score (/100)',
|
|
334
332
|
flex: 1,
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
cellRendererParams: { min: 0, max: 100, suppressCellFocusAndFocusFirstElement: true },
|
|
333
|
+
type: 'dsNumberInputColumn',
|
|
334
|
+
cellRendererParams: { min: 0, max: 100 },
|
|
338
335
|
},
|
|
339
336
|
]}
|
|
340
337
|
defaultColDef={{ flex: 1, minWidth: 120 }}
|
|
@@ -342,5 +339,5 @@ function NumberInputCellRendererExample() {
|
|
|
342
339
|
/>
|
|
343
340
|
),
|
|
344
341
|
},
|
|
345
|
-
'`
|
|
342
|
+
'`type: \'dsNumberInputColumn\'` wired up inside a full `Table`. Sessions has `min={0}`; Score has `min={0}` and `max={100}`. Edit any cell — AG Grid calls `node.setDataValue` which updates the row data in-place.',
|
|
346
343
|
);
|
|
@@ -23,7 +23,8 @@ const DESCRIPTION_INTRO = [
|
|
|
23
23
|
'dropdown when the user presses Enter in the focused cell. On selection, it calls `node.setDataValue`',
|
|
24
24
|
'to update the row data in-place.',
|
|
25
25
|
'',
|
|
26
|
-
'Register it via the
|
|
26
|
+
'Register it via `type: \'dsSelectDropdownColumn\'` on the column definition (pre-registered by Arbor\'s `Table`),',
|
|
27
|
+
'via the string key `dsSelectDropdownCellRenderer`, or by importing the component directly.',
|
|
27
28
|
].join('\n');
|
|
28
29
|
|
|
29
30
|
const USAGE_GUIDANCE = [
|
|
@@ -63,7 +64,7 @@ const DEVELOPER_NOTES = [
|
|
|
63
64
|
' {',
|
|
64
65
|
" field: 'status',",
|
|
65
66
|
" headerName: 'Status',",
|
|
66
|
-
"
|
|
67
|
+
" type: 'dsSelectDropdownColumn',",
|
|
67
68
|
' cellRendererParams: {',
|
|
68
69
|
' options: [',
|
|
69
70
|
" { label: 'Active', value: 'active' },",
|
|
@@ -273,7 +274,7 @@ const colDefs = [
|
|
|
273
274
|
{
|
|
274
275
|
field: 'status',
|
|
275
276
|
headerName: 'Status',
|
|
276
|
-
|
|
277
|
+
type: 'dsSelectDropdownColumn',
|
|
277
278
|
cellRendererParams: {
|
|
278
279
|
options: [
|
|
279
280
|
{ label: 'Active', value: 'active' },
|
|
@@ -414,8 +415,7 @@ function SelectDropdownCellRendererExample() {
|
|
|
414
415
|
field: 'status',
|
|
415
416
|
headerName: 'Status',
|
|
416
417
|
flex: 1,
|
|
417
|
-
|
|
418
|
-
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
418
|
+
type: 'dsSelectDropdownColumn',
|
|
419
419
|
cellRendererParams: { options: statusOptions },
|
|
420
420
|
},
|
|
421
421
|
]}
|
|
@@ -439,8 +439,7 @@ export default SelectDropdownCellRendererExample;
|
|
|
439
439
|
field: 'status',
|
|
440
440
|
headerName: 'Status',
|
|
441
441
|
flex: 1,
|
|
442
|
-
|
|
443
|
-
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
442
|
+
type: 'dsSelectDropdownColumn',
|
|
444
443
|
cellRendererParams: { options: STATUS_OPTIONS },
|
|
445
444
|
},
|
|
446
445
|
]}
|
|
@@ -449,7 +448,7 @@ export default SelectDropdownCellRendererExample;
|
|
|
449
448
|
/>
|
|
450
449
|
),
|
|
451
450
|
},
|
|
452
|
-
'`
|
|
451
|
+
'`type: \'dsSelectDropdownColumn\'` wired up inside a full `Table`. Click a Status dropdown to select a new value — the selection is committed to the row via `node.setDataValue`. Press Enter in a focused Status cell to open the dropdown via keyboard.',
|
|
453
452
|
);
|
|
454
453
|
|
|
455
454
|
const STATUS_BACKGROUND_COLORS: Record<string, string> = {
|
|
@@ -480,8 +479,7 @@ const columnDefs = [
|
|
|
480
479
|
field: 'status',
|
|
481
480
|
headerName: 'Status',
|
|
482
481
|
flex: 1,
|
|
483
|
-
|
|
484
|
-
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
482
|
+
type: 'dsSelectDropdownColumn',
|
|
485
483
|
// Per-row params: derive the cell background from the row's current value.
|
|
486
484
|
cellRendererParams: (params) => ({
|
|
487
485
|
options: statusOptions,
|
|
@@ -505,8 +503,7 @@ const columnDefs = [
|
|
|
505
503
|
field: 'status',
|
|
506
504
|
headerName: 'Status',
|
|
507
505
|
flex: 1,
|
|
508
|
-
|
|
509
|
-
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
506
|
+
type: 'dsSelectDropdownColumn',
|
|
510
507
|
cellRendererParams: (params: { value?: string }) => ({
|
|
511
508
|
options: STATUS_OPTIONS,
|
|
512
509
|
backgroundColor: params.value ? STATUS_BACKGROUND_COLORS[params.value] : undefined,
|
|
@@ -555,7 +552,7 @@ const columnDefs = [
|
|
|
555
552
|
{
|
|
556
553
|
field: 'english',
|
|
557
554
|
headerName: 'English',
|
|
558
|
-
|
|
555
|
+
type: 'dsSelectDropdownColumn',
|
|
559
556
|
cellRendererParams: {
|
|
560
557
|
options: gradeOptions,
|
|
561
558
|
iconClickOnly: true,
|
|
@@ -583,24 +580,21 @@ const columnDefs = [
|
|
|
583
580
|
field: 'english',
|
|
584
581
|
headerName: 'English',
|
|
585
582
|
flex: 1,
|
|
586
|
-
|
|
587
|
-
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
583
|
+
type: 'dsSelectDropdownColumn',
|
|
588
584
|
cellRendererParams: { options: GRADE_OPTIONS, iconClickOnly: true },
|
|
589
585
|
},
|
|
590
586
|
{
|
|
591
587
|
field: 'maths',
|
|
592
588
|
headerName: 'Maths',
|
|
593
589
|
flex: 1,
|
|
594
|
-
|
|
595
|
-
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
590
|
+
type: 'dsSelectDropdownColumn',
|
|
596
591
|
cellRendererParams: { options: GRADE_OPTIONS, iconClickOnly: true },
|
|
597
592
|
},
|
|
598
593
|
{
|
|
599
594
|
field: 'science',
|
|
600
595
|
headerName: 'Science',
|
|
601
596
|
flex: 1,
|
|
602
|
-
|
|
603
|
-
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
597
|
+
type: 'dsSelectDropdownColumn',
|
|
604
598
|
cellRendererParams: { options: GRADE_OPTIONS, iconClickOnly: true },
|
|
605
599
|
},
|
|
606
600
|
]}
|
|
@@ -648,7 +642,7 @@ const columnDefs = [
|
|
|
648
642
|
{
|
|
649
643
|
field: 'english',
|
|
650
644
|
headerName: 'English',
|
|
651
|
-
|
|
645
|
+
type: 'dsSelectDropdownColumn',
|
|
652
646
|
cellRendererParams: (params) => ({
|
|
653
647
|
options: gradeOptions,
|
|
654
648
|
backgroundColor: GRADE_BACKGROUND_COLORS[params.value],
|
|
@@ -679,8 +673,7 @@ const columnDefs = [
|
|
|
679
673
|
field: 'english',
|
|
680
674
|
headerName: 'English',
|
|
681
675
|
flex: 1,
|
|
682
|
-
|
|
683
|
-
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
676
|
+
type: 'dsSelectDropdownColumn',
|
|
684
677
|
cellRendererParams: (params: { value?: string }) => ({
|
|
685
678
|
options: GRADE_OPTIONS,
|
|
686
679
|
backgroundColor: params.value ? GRADE_BACKGROUND_COLORS[params.value] : undefined,
|
|
@@ -693,8 +686,7 @@ const columnDefs = [
|
|
|
693
686
|
field: 'maths',
|
|
694
687
|
headerName: 'Maths',
|
|
695
688
|
flex: 1,
|
|
696
|
-
|
|
697
|
-
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
689
|
+
type: 'dsSelectDropdownColumn',
|
|
698
690
|
cellRendererParams: (params: { value?: string }) => ({
|
|
699
691
|
options: GRADE_OPTIONS,
|
|
700
692
|
backgroundColor: params.value ? GRADE_BACKGROUND_COLORS[params.value] : undefined,
|
|
@@ -707,8 +699,7 @@ const columnDefs = [
|
|
|
707
699
|
field: 'science',
|
|
708
700
|
headerName: 'Science',
|
|
709
701
|
flex: 1,
|
|
710
|
-
|
|
711
|
-
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
702
|
+
type: 'dsSelectDropdownColumn',
|
|
712
703
|
cellRendererParams: (params: { value?: string }) => ({
|
|
713
704
|
options: GRADE_OPTIONS,
|
|
714
705
|
backgroundColor: params.value ? GRADE_BACKGROUND_COLORS[params.value] : undefined,
|
|
@@ -742,7 +733,7 @@ const columnDefs = [
|
|
|
742
733
|
{
|
|
743
734
|
field: 'status',
|
|
744
735
|
headerName: 'Status',
|
|
745
|
-
|
|
736
|
+
type: 'dsSelectDropdownColumn',
|
|
746
737
|
cellRendererParams: {
|
|
747
738
|
options: statusOptions,
|
|
748
739
|
onCloseAutoFocus: (event) => {
|
|
@@ -767,8 +758,7 @@ const columnDefs = [
|
|
|
767
758
|
field: 'status',
|
|
768
759
|
headerName: 'Status',
|
|
769
760
|
flex: 1,
|
|
770
|
-
|
|
771
|
-
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
761
|
+
type: 'dsSelectDropdownColumn',
|
|
772
762
|
cellRendererParams: {
|
|
773
763
|
options: STATUS_OPTIONS,
|
|
774
764
|
onCloseAutoFocus: (event: Event) => {
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { type ColDef } from 'ag-grid-community';
|
|
2
|
+
import { ComboboxCellRenderer } from 'Components/table/cellRenderers/ComboboxCellRenderer.js';
|
|
3
|
+
|
|
4
|
+
export const columnTypes: Record<string, ColDef> = {
|
|
5
|
+
dsBooleanColumn: {
|
|
6
|
+
cellRenderer: 'dsBooleanCellRenderer',
|
|
7
|
+
editable: false,
|
|
8
|
+
},
|
|
9
|
+
dsButtonColumn: {
|
|
10
|
+
cellRenderer: 'dsButtonCellRenderer',
|
|
11
|
+
editable: false,
|
|
12
|
+
cellRendererParams: {
|
|
13
|
+
suppressCellFocusAndFocusFirstElement: true,
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
dsCheckboxColumn: {
|
|
17
|
+
cellRenderer: 'dsCheckboxCellRenderer',
|
|
18
|
+
editable: false,
|
|
19
|
+
cellRendererParams: {
|
|
20
|
+
suppressCellFocusAndFocusFirstElement: true,
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
dsComboboxColumn: {
|
|
24
|
+
cellRenderer: 'dsComboboxCellRenderer',
|
|
25
|
+
editable: false,
|
|
26
|
+
...ComboboxCellRenderer.colDefDefaults,
|
|
27
|
+
},
|
|
28
|
+
dsDateColumn: {
|
|
29
|
+
cellEditor: 'dsDateCellEditor',
|
|
30
|
+
editable: true,
|
|
31
|
+
valueFormatter: params =>
|
|
32
|
+
params.value instanceof Date
|
|
33
|
+
? params.value.toLocaleDateString('en-GB')
|
|
34
|
+
: params.value,
|
|
35
|
+
},
|
|
36
|
+
dsInlineTextColumn: {
|
|
37
|
+
cellRenderer: 'dsInlineTextCellRenderer',
|
|
38
|
+
editable: false,
|
|
39
|
+
cellRendererParams: {
|
|
40
|
+
suppressCellFocusAndFocusFirstElement: true,
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
dsNumberColumn: {
|
|
44
|
+
cellEditor: 'dsNumberCellEditor',
|
|
45
|
+
editable: true,
|
|
46
|
+
},
|
|
47
|
+
dsNumberInputColumn: {
|
|
48
|
+
cellRenderer: 'dsNumberInputCellRenderer',
|
|
49
|
+
editable: false,
|
|
50
|
+
cellRendererParams: { suppressCellFocusAndFocusFirstElement: true },
|
|
51
|
+
},
|
|
52
|
+
dsSelectDropdownColumn: {
|
|
53
|
+
cellRenderer: 'dsSelectDropdownCellRenderer',
|
|
54
|
+
editable: false,
|
|
55
|
+
},
|
|
56
|
+
};
|