@geotab/zenith 3.14.1 → 3.15.0-beta.0
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/README.md +28 -2
- package/dist/advancedGroupsFilter/advancedGroupsFilterFormSection.js +17 -7
- package/dist/alert/banner.d.ts +2 -3
- package/dist/alert/hooks/useAlertState.d.ts +0 -1
- package/dist/banner/bannerMultipLine.d.ts +0 -1
- package/dist/banner/bannerSingleLine.d.ts +0 -1
- package/dist/banner/utils/isSummaryErrorElement.d.ts +1 -2
- package/dist/calendar/dateUtils.js +2 -2
- package/dist/card/card.js +17 -7
- package/dist/card/components/content.d.ts +0 -1
- package/dist/cardContainer/helpers/getSizeClass.js +1 -2
- package/dist/chart/accessibleChart/accessibleChart.js +1 -1
- package/dist/chart/accessibleChart/accessibleChartNarrative.d.ts +1 -1
- package/dist/chart/accessibleChart/accessibleChartNarrative.js +11 -5
- package/dist/chart/accessibleChart/generatePieNarrative.d.ts +7 -0
- package/dist/chart/accessibleChart/generatePieNarrative.js +179 -0
- package/dist/chart/accessibleChart/interfaces.d.ts +1 -0
- package/dist/chart/barChart/getDefaultOptions.js +5 -6
- package/dist/chart/barChart.js +152 -50
- package/dist/chart/interfaces.d.ts +0 -1
- package/dist/chart/lineChart/getDefaultOptions.js +5 -6
- package/dist/chart/lineChart/useChartTicks.d.ts +0 -1
- package/dist/chart/lineChart/useSummary.d.ts +7 -8
- package/dist/chart/lineChart.js +167 -59
- package/dist/chart/pieChart.js +174 -76
- package/dist/chart/plugins/linePlugin/getInterpolatedValue.js +1 -2
- package/dist/chart/plugins/linePlugin/linePlugin.js +29 -7
- package/dist/chart/utils/convertDates.d.ts +1 -1
- package/dist/chart/utils/getFormattedLabel.js +1 -2
- package/dist/chart/utils/getNiceAxisRange.d.ts +21 -0
- package/dist/chart/utils/getNiceAxisRange.js +76 -0
- package/dist/chart/utils/getRange.js +2 -2
- package/dist/chart/utils/getYAxisMeta.d.ts +2 -5
- package/dist/chart/utils/getYAxisMeta.js +17 -2
- package/dist/chart/utils/getYAxisTickCount.d.ts +15 -0
- package/dist/chart/utils/getYAxisTickCount.js +19 -0
- package/dist/chart/utils/resampleArrayEvenly.js +1 -2
- package/dist/checkbox/checkbox.js +17 -7
- package/dist/checkboxListWithAction/checkboxListWithAction.d.ts +0 -1
- package/dist/chip/chip.d.ts +0 -1
- package/dist/chip/utils/useChip.d.ts +0 -1
- package/dist/commonHelpers/HOC/reducerLogger/reducerLogger.d.ts +1 -1
- package/dist/commonHelpers/arrowNavigation/components/arrowButton/arrowButton.d.ts +0 -1
- package/dist/commonHelpers/arrowNavigation/hooks/useHoldOnScroll.d.ts +0 -1
- package/dist/commonHelpers/generateId.js +1 -2
- package/dist/commonHelpers/hooks/breakpoints.d.ts +4 -0
- package/dist/commonHelpers/hooks/breakpoints.js +7 -0
- package/dist/commonHelpers/hooks/fetch.reducer.d.ts +1 -1
- package/dist/commonHelpers/hooks/fetch.reducer.js +1 -2
- package/dist/commonHelpers/hooks/useDebouncedMemo.d.ts +0 -1
- package/dist/commonHelpers/hooks/useDebouncedMemo.js +1 -2
- package/dist/commonHelpers/hooks/useDeviceType.js +2 -2
- package/dist/commonHelpers/hooks/useEscape.d.ts +1 -1
- package/dist/commonHelpers/hooks/useGridSize.d.ts +0 -1
- package/dist/commonHelpers/hooks/useMobileOrTablet.d.ts +1 -0
- package/dist/commonHelpers/hooks/useMobileOrTablet.js +21 -0
- package/dist/commonHelpers/hooks/usePillSize.d.ts +0 -1
- package/dist/{gridLayout → commonHelpers}/hooks/useTablet.js +8 -11
- package/dist/commonHelpers/utils.js +3 -3
- package/dist/commonStyles/colors/colors.less +1 -0
- package/dist/dataFeed/dataFeed.d.ts +1 -1
- package/dist/dataFeed/dataFeed.js +2 -2
- package/dist/dataFeed/dataFeedCell/dataFeedCell.d.ts +3 -1
- package/dist/dataFeed/dataFeedColumnsItems.d.ts +2 -2
- package/dist/dataGrid/cell/cell.d.ts +3 -1
- package/dist/dataGrid/columns/actionsColumn/actionsButton.js +1 -2
- package/dist/dataGrid/columns/actionsColumn/actionsColumn.d.ts +3 -3
- package/dist/dataGrid/dataGrid.d.ts +13 -1
- package/dist/dataGrid/dataGrid.js +48 -3
- package/dist/dataGrid/emptySearchList/emptySearchList.d.ts +0 -1
- package/dist/dataGrid/row/row.d.ts +3 -1
- package/dist/dataGrid/withActions/withActions.d.ts +1 -1
- package/dist/dataGrid/withFlexibleColumns/components/columnSettingsList.js +1 -2
- package/dist/dataGrid/withFlexibleColumns/withFlexibleColumns.d.ts +1 -1
- package/dist/dataGrid/withLoading/withLoading.d.ts +1 -1
- package/dist/dataGrid/withSelectableRows/withLimitedSelectableRows.d.ts +1 -1
- package/dist/dataGrid/withSelectableRows/withSelectableRows.d.ts +1 -1
- package/dist/dataGrid/withSortableColumns/withSortableColumns.d.ts +1 -1
- package/dist/dateInputInner/dateInputInnerReducer.js +2 -2
- package/dist/dateRangeRaw/utils/areMapsEqual.js +1 -2
- package/dist/dialog/dialog.d.ts +0 -1
- package/dist/dropdown/dropdown.js +1 -1
- package/dist/dropdown/useDropdownState.d.ts +0 -1
- package/dist/dropdownRaw/dropdownHelper.js +2 -2
- package/dist/dropdownRaw/dropdownList.d.ts +3 -2
- package/dist/dropdownRaw/dropdownList.js +31 -49
- package/dist/dropdownRaw/dropdownRaw.js +34 -13
- package/dist/dropdownRaw/stateReducer/stateReducer.d.ts +4 -1
- package/dist/dropdownRaw/stateReducer/stateReducer.js +33 -23
- package/dist/dropdownRaw/stateReducer/stateReducerHelper.d.ts +1 -2
- package/dist/dropdownRaw/stateReducer/stateReducerHelper.js +8 -13
- package/dist/dropdownRaw/types.d.ts +20 -0
- package/dist/feedbackContainer/feedbackContainer.js +17 -7
- package/dist/feedbackContainer/hooks/useFeedbackAlert.d.ts +0 -1
- package/dist/feedbackContainer/hooks/useFeedbackToast.d.ts +0 -1
- package/dist/filters/components/filtersDropdown.js +2 -2
- package/dist/filters/components/filtersItem.d.ts +2 -2
- package/dist/filters/components/filtersSearchList.d.ts +0 -1
- package/dist/filters/components/filtersSelect.d.ts +0 -1
- package/dist/filters/components/filtersSelectCompact.d.ts +0 -1
- package/dist/filters/components/filtersSelectListItem.d.ts +0 -1
- package/dist/filters/components/filtersSelectUnfoldingPill.d.ts +0 -1
- package/dist/filters/components/filtersSidePanelItem.js +17 -7
- package/dist/filters/filtersHelper.d.ts +1 -1
- package/dist/filters/filtersHelper.js +5 -5
- package/dist/filters/filtersHooks.d.ts +0 -1
- package/dist/filtersBar/components/filtersBarDropdownWithCheckbox/filtersBarDropdownWithCheckbox.js +1 -1
- package/dist/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +2 -2
- package/dist/filtersBar/filtersBar.js +2 -2
- package/dist/filtersBar/filtersBarActions/filtersBarActions.d.ts +0 -1
- package/dist/filtersBar/filtersBarInterfaces.d.ts +0 -1
- package/dist/filtersBar/filtersBarReducer.js +2 -2
- package/dist/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelDropdownWithCheckbox/filtersBarSidePanelDropdownWithCheckbox.d.ts +4 -10
- package/dist/filtersBar/filtersBarSidePanel/sidePanelReducer.js +2 -2
- package/dist/filtersBar/utils/getNumberOfChangedFilters.js +1 -2
- package/dist/footerButtons/footerButtons.js +17 -7
- package/dist/formField/components/formFieldAdditionalInfo.d.ts +0 -1
- package/dist/formField/components/formFieldCounter.d.ts +0 -1
- package/dist/formField/components/formFieldLoading.d.ts +0 -1
- package/dist/formField/components/formFieldSkeleton.d.ts +0 -1
- package/dist/formField/components/formFieldWithLabel.d.ts +0 -1
- package/dist/formField/components/formFieldWithoutLabel.d.ts +0 -1
- package/dist/formField/formField.d.ts +1 -1
- package/dist/formField/hooks/useBanner.d.ts +0 -1
- package/dist/formField/hooks/useDisabled.d.ts +1 -1
- package/dist/formGroup/components/customRow/customRow.d.ts +0 -1
- package/dist/formGroup/formGroup.js +17 -7
- package/dist/formGroup/hooks/listHooks/useStateToElements.d.ts +0 -1
- package/dist/formGroup/hooks/listHooks/useStateToElements.js +1 -1
- package/dist/formGroup/utils/formGroupProvider.d.ts +0 -1
- package/dist/formGroup/utils/isFormLabel.d.ts +1 -1
- package/dist/formGroupItem/formGroupItem.d.ts +0 -1
- package/dist/formLayout/components/layoutColumn/layoutColum.d.ts +0 -1
- package/dist/formLayout/hooks/useFormButtons.d.ts +1 -1
- package/dist/formLayout/types.d.ts +0 -1
- package/dist/formLayout/utils/attachHeadings.d.ts +1 -1
- package/dist/formLayout/utils/attachSeparators.d.ts +0 -1
- package/dist/formLayout/utils/getChildrenWithCustomColumns.d.ts +1 -2
- package/dist/formLayout/utils/getChildrenWithCustomColumns.js +2 -2
- package/dist/formLayout/utils/getFieldLabel.js +5 -5
- package/dist/formSection/components/actions.d.ts +0 -1
- package/dist/formSection/components/additional.d.ts +0 -1
- package/dist/formSection/utils/isFormSection.d.ts +2 -4
- package/dist/formStepper/components/formStepRaw.d.ts +0 -1
- package/dist/formStepper/formStepper.d.ts +0 -1
- package/dist/formStepper/formStepper.js +5 -5
- package/dist/formStepperButtons/formStepperButtons.js +3 -3
- package/dist/gridLayout/hooks/useStretch.js +1 -1
- package/dist/gridLayout/utils/convertStateToClasses.js +1 -2
- package/dist/gridLayout/utils/gridLayoutProvider.d.ts +0 -1
- package/dist/gridLayout/utils/gridLayoutProvider.js +1 -1
- package/dist/gridLayout/utils/isGridItem.d.ts +1 -1
- package/dist/groupsFilter/groupsHelper.d.ts +5 -5
- package/dist/groupsFilterRaw/groupsFilterHelper.js +16 -16
- package/dist/groupsFilterRaw/groupsHelper.d.ts +1 -1
- package/dist/groupsFilterRaw/groupsHelper.js +4 -4
- package/dist/groupsFilterRaw/stateReducer/stateReducer.d.ts +1 -1
- package/dist/groupsFilterRaw/stateReducer/stateReducer.js +2 -2
- package/dist/groupsFilterRaw/testData.js +3 -4
- package/dist/groupsFilterRaw/uiStateReducer/uiStateReducer.js +2 -2
- package/dist/header/components/collapsedItemsControl/utils/handleCustomMenuWrapper.js +5 -0
- package/dist/header/components/mobileFilterControl/mobileFilterControl.d.ts +0 -1
- package/dist/header/components/mobileSearchControl/mobileSearchControl.d.ts +0 -1
- package/dist/header/header.js +17 -7
- package/dist/header/headerButton.d.ts +0 -1
- package/dist/header/headerContext.d.ts +1 -2
- package/dist/header/headerHelpers.d.ts +5 -5
- package/dist/header/headerHelpers.js +17 -7
- package/dist/header/hooks/useNonFittingElements.d.ts +3 -4
- package/dist/headerTitle/headerTitle.d.ts +0 -1
- package/dist/icons/iconAce.d.ts +3 -0
- package/dist/icons/iconAce.js +12 -0
- package/dist/icons/iconBreak.d.ts +3 -0
- package/dist/icons/iconBreak.js +12 -0
- package/dist/icons/iconChevronStepper.d.ts +3 -0
- package/dist/icons/iconChevronStepper.js +12 -0
- package/dist/icons/iconPotato.d.ts +3 -0
- package/dist/icons/iconPotato.js +12 -0
- package/dist/icons/iconToggleLarge.d.ts +3 -0
- package/dist/icons/iconToggleLarge.js +12 -0
- package/dist/icons/iconToggleSmall.d.ts +3 -0
- package/dist/icons/iconToggleSmall.js +12 -0
- package/dist/icons/iconTrendNeutral.d.ts +3 -0
- package/dist/icons/iconTrendNeutral.js +12 -0
- package/dist/icons/iconTruck.d.ts +3 -0
- package/dist/icons/iconTruck.js +12 -0
- package/dist/index.css +219 -169
- package/dist/index.d.ts +8 -0
- package/dist/index.js +30 -13
- package/dist/layout/layout.d.ts +2 -1
- package/dist/layout/layout.js +17 -7
- package/dist/layout/layoutBanner.d.ts +0 -1
- package/dist/lineChart/lineChart.d.ts +1 -0
- package/dist/lineChart/lineChart.js +135 -70
- package/dist/lineChartMini/lineChartMini.d.ts +1 -0
- package/dist/lineChartMini/lineChartMini.js +141 -73
- package/dist/list/itemData/itemData.d.ts +2 -1
- package/dist/list/itemData/itemDataInternal.d.ts +2 -1
- package/dist/list/list.d.ts +0 -1
- package/dist/list/utils/changeOrder.js +1 -2
- package/dist/list/utils/isDataListitem.d.ts +1 -1
- package/dist/list/viewportProvider/viewportContext.d.ts +0 -1
- package/dist/menu/components/controlledMenuList/controlledMenuList.d.ts +2 -4
- package/dist/menu/components/controlledMenuList/controlledMenuList.js +3 -1
- package/dist/menu/components/createControlledMenuList.js +1 -2
- package/dist/menu/components/createMenuItem.js +1 -2
- package/dist/menu/contexts/usePathContext.js +1 -2
- package/dist/menu/utils/buildMenuContent.js +1 -2
- package/dist/menu/utils/findPrevFocusable.js +1 -2
- package/dist/menu/utils/useDisplayContent.d.ts +21 -0
- package/dist/menu/utils/useDisplayContent.js +35 -0
- package/dist/menu/utils/useMenuItemKeyboardNav.js +1 -2
- package/dist/miniTabs/miniTabsHelper.js +17 -7
- package/dist/mobileSheet/components/mobileSheetTitle.d.ts +0 -1
- package/dist/modal/modal.js +17 -7
- package/dist/nav/context/nav.context.d.ts +0 -1
- package/dist/nav/navFooter/navEditFooter/navEditFooter.d.ts +0 -1
- package/dist/nav/navFooter/navFooter.d.ts +1 -1
- package/dist/nav/navFooter/navFooterAction/navFooterAction.d.ts +2 -1
- package/dist/nav/navFooter/navFooterAction/navFooterAction.js +3 -1
- package/dist/nav/navItem/navItem.d.ts +2 -0
- package/dist/nav/navItem/navItem.js +56 -47
- package/dist/nav/navItem/navItemContent.d.ts +19 -0
- package/dist/nav/navItem/navItemContent.js +21 -0
- package/dist/nav/navItem/navItemType.d.ts +7 -0
- package/dist/nav/navItem/navItemType.js +9 -0
- package/dist/nav/utils/navUtils.d.ts +2 -4
- package/dist/nav/utils/navUtils.js +2 -2
- package/dist/overview/overview.d.ts +0 -1
- package/dist/pageHeader/pageHeader.d.ts +1 -1
- package/dist/pageHeader/pageHeaderButton.d.ts +0 -1
- package/dist/pageHeader/pageHeaderHelpers.d.ts +1 -1
- package/dist/pageHeader/pageHeaderMenu.d.ts +0 -1
- package/dist/pagination/paginationArrow.d.ts +0 -1
- package/dist/pill/interfaces/pill.interface.d.ts +0 -1
- package/dist/pillBox/components/pillBoxItem.d.ts +1 -2
- package/dist/popup/popup.js +17 -7
- package/dist/progressIndicator/progressIndicator.d.ts +39 -0
- package/dist/progressIndicator/progressIndicator.js +30 -0
- package/dist/progressIndicator/progressIndicatorUtils.d.ts +12 -0
- package/dist/progressIndicator/progressIndicatorUtils.js +30 -0
- package/dist/radioGroupRaw/radioGroupRaw.js +17 -7
- package/dist/radioGroupRaw/types.d.ts +0 -1
- package/dist/react-chartjs/dateFns/dateFns.js +10 -11
- package/dist/react-chartjs/utils.d.ts +3 -3
- package/dist/react-chartjs/utils.js +8 -9
- package/dist/searchInputRaw/searchInputRaw.js +17 -7
- package/dist/searchInputRaw/types.d.ts +0 -1
- package/dist/selectField/selectField.d.ts +2 -3
- package/dist/selectList/selectList.d.ts +0 -1
- package/dist/selectRaw/hooks/usePopupWidth.js +17 -7
- package/dist/selectRaw/selectRaw.js +20 -7
- package/dist/sidePanel/sidePanelCell/sidePanelCell.d.ts +0 -1
- package/dist/summaries/utils/splitIntoPairs.js +1 -2
- package/dist/summaryTile/summaryTile.js +17 -7
- package/dist/summaryTile/summaryTileTrigger.js +17 -7
- package/dist/table/actions/actionsMenu.d.ts +0 -1
- package/dist/table/children/useTableChildren.d.ts +7 -7
- package/dist/table/detailPanel/interfaces.d.ts +0 -1
- package/dist/table/flexible/columnsList.js +1 -2
- package/dist/table/loading/useLoading.d.ts +10 -10
- package/dist/table/nested/nestedData.d.ts +3 -1
- package/dist/table/nested/useNestedRows.d.ts +2 -2
- package/dist/table/selectable/selectableHeader.d.ts +2 -1
- package/dist/table/selectable/selectableHeader.js +4 -3
- package/dist/table/selectable/useSelectableRows.d.ts +1 -1
- package/dist/table/selectable/useSelectableRows.js +7 -4
- package/dist/table/table.d.ts +16 -1
- package/dist/table/table.js +101 -5
- package/dist/tag/tag.d.ts +19 -0
- package/dist/tag/tag.js +14 -0
- package/dist/textIconButton/textIconButton.js +17 -7
- package/dist/toastRaw/toastRaw.d.ts +1 -1
- package/dist/toastRaw/toastRaw.js +3 -1
- package/dist/toggleButtonRaw/toggleButtonRaw.js +17 -7
- package/dist/toggleButtonRaw/types.d.ts +0 -1
- package/dist/tooltip/tooltip.js +17 -7
- package/dist/tooltipInfo/tooltipInfo.d.ts +0 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -0
- package/dist/utils/compareElementsUtils/isArraysEqualDeeply.js +1 -2
- package/dist/utils/compareElementsUtils/isElementsEqual.js +2 -2
- package/dist/utils/escapeHtml.js +1 -2
- package/dist/utils/localization/directionContext.d.ts +0 -1
- package/dist/utils/localization/languageContext.d.ts +0 -1
- package/dist/utils/localization/translations/en.json +12 -1
- package/dist/utils/theme/themeContext.d.ts +0 -1
- package/dist/utils/topWindow/topWindowContext.d.ts +0 -1
- package/dist/utils/useFadeComponent.d.ts +0 -1
- package/dist/utils/userFormat/userFormatContext.d.ts +0 -1
- package/dist/waiting/waiting.d.ts +2 -1
- package/dist/waiting/waiting.js +23 -6
- package/esm/alert/banner.d.ts +2 -3
- package/esm/alert/hooks/useAlertState.d.ts +0 -1
- package/esm/banner/bannerMultipLine.d.ts +0 -1
- package/esm/banner/bannerSingleLine.d.ts +0 -1
- package/esm/banner/utils/isSummaryErrorElement.d.ts +1 -2
- package/esm/card/components/content.d.ts +0 -1
- package/esm/chart/accessibleChart/accessibleChart.js +1 -1
- package/esm/chart/accessibleChart/accessibleChartNarrative.d.ts +1 -1
- package/esm/chart/accessibleChart/accessibleChartNarrative.js +8 -2
- package/esm/chart/accessibleChart/generatePieNarrative.d.ts +7 -0
- package/esm/chart/accessibleChart/generatePieNarrative.js +167 -0
- package/esm/chart/accessibleChart/interfaces.d.ts +1 -0
- package/esm/chart/barChart/getDefaultOptions.js +5 -6
- package/esm/chart/barChart.js +147 -50
- package/esm/chart/interfaces.d.ts +0 -1
- package/esm/chart/lineChart/getDefaultOptions.js +5 -6
- package/esm/chart/lineChart/useChartTicks.d.ts +0 -1
- package/esm/chart/lineChart/useSummary.d.ts +7 -8
- package/esm/chart/lineChart.js +162 -59
- package/esm/chart/pieChart.js +169 -76
- package/esm/chart/plugins/linePlugin/linePlugin.js +29 -7
- package/esm/chart/utils/convertDates.d.ts +1 -1
- package/esm/chart/utils/getNiceAxisRange.d.ts +21 -0
- package/esm/chart/utils/getNiceAxisRange.js +72 -0
- package/esm/chart/utils/getRange.js +2 -2
- package/esm/chart/utils/getYAxisMeta.d.ts +2 -5
- package/esm/chart/utils/getYAxisMeta.js +17 -2
- package/esm/chart/utils/getYAxisTickCount.d.ts +15 -0
- package/esm/chart/utils/getYAxisTickCount.js +15 -0
- package/esm/checkboxListWithAction/checkboxListWithAction.d.ts +0 -1
- package/esm/chip/chip.d.ts +0 -1
- package/esm/chip/utils/useChip.d.ts +0 -1
- package/esm/commonHelpers/HOC/reducerLogger/reducerLogger.d.ts +1 -1
- package/esm/commonHelpers/arrowNavigation/components/arrowButton/arrowButton.d.ts +0 -1
- package/esm/commonHelpers/arrowNavigation/hooks/useHoldOnScroll.d.ts +0 -1
- package/esm/commonHelpers/hooks/breakpoints.d.ts +4 -0
- package/esm/commonHelpers/hooks/breakpoints.js +4 -0
- package/esm/commonHelpers/hooks/fetch.reducer.d.ts +1 -1
- package/esm/commonHelpers/hooks/useDebouncedMemo.d.ts +0 -1
- package/esm/commonHelpers/hooks/useDeviceType.js +2 -2
- package/esm/commonHelpers/hooks/useEscape.d.ts +1 -1
- package/esm/commonHelpers/hooks/useGridSize.d.ts +0 -1
- package/esm/commonHelpers/hooks/useMobileOrTablet.d.ts +1 -0
- package/esm/commonHelpers/hooks/useMobileOrTablet.js +17 -0
- package/esm/commonHelpers/hooks/usePillSize.d.ts +0 -1
- package/esm/commonHelpers/hooks/useTablet.js +17 -0
- package/esm/dataFeed/dataFeed.d.ts +1 -1
- package/esm/dataFeed/dataFeed.js +2 -2
- package/esm/dataFeed/dataFeedCell/dataFeedCell.d.ts +3 -1
- package/esm/dataFeed/dataFeedColumnsItems.d.ts +2 -2
- package/esm/dataGrid/cell/cell.d.ts +3 -1
- package/esm/dataGrid/columns/actionsColumn/actionsColumn.d.ts +3 -3
- package/esm/dataGrid/dataGrid.d.ts +13 -1
- package/esm/dataGrid/dataGrid.js +48 -3
- package/esm/dataGrid/emptySearchList/emptySearchList.d.ts +0 -1
- package/esm/dataGrid/row/row.d.ts +3 -1
- package/esm/dataGrid/withActions/withActions.d.ts +1 -1
- package/esm/dataGrid/withFlexibleColumns/withFlexibleColumns.d.ts +1 -1
- package/esm/dataGrid/withLoading/withLoading.d.ts +1 -1
- package/esm/dataGrid/withSelectableRows/withLimitedSelectableRows.d.ts +1 -1
- package/esm/dataGrid/withSelectableRows/withSelectableRows.d.ts +1 -1
- package/esm/dataGrid/withSortableColumns/withSortableColumns.d.ts +1 -1
- package/esm/dialog/dialog.d.ts +0 -1
- package/esm/dropdown/dropdown.js +1 -1
- package/esm/dropdown/useDropdownState.d.ts +0 -1
- package/esm/dropdownRaw/dropdownList.d.ts +3 -2
- package/esm/dropdownRaw/dropdownList.js +14 -42
- package/esm/dropdownRaw/dropdownRaw.js +35 -14
- package/esm/dropdownRaw/stateReducer/stateReducer.d.ts +4 -1
- package/esm/dropdownRaw/stateReducer/stateReducer.js +32 -22
- package/esm/dropdownRaw/stateReducer/stateReducerHelper.d.ts +1 -2
- package/esm/dropdownRaw/stateReducer/stateReducerHelper.js +5 -10
- package/esm/dropdownRaw/types.d.ts +20 -0
- package/esm/feedbackContainer/hooks/useFeedbackAlert.d.ts +0 -1
- package/esm/feedbackContainer/hooks/useFeedbackToast.d.ts +0 -1
- package/esm/filters/components/filtersItem.d.ts +2 -2
- package/esm/filters/components/filtersSearchList.d.ts +0 -1
- package/esm/filters/components/filtersSelect.d.ts +0 -1
- package/esm/filters/components/filtersSelectCompact.d.ts +0 -1
- package/esm/filters/components/filtersSelectListItem.d.ts +0 -1
- package/esm/filters/components/filtersSelectUnfoldingPill.d.ts +0 -1
- package/esm/filters/filtersHelper.d.ts +1 -1
- package/esm/filters/filtersHooks.d.ts +0 -1
- package/esm/filtersBar/components/filtersBarDropdownWithCheckbox/filtersBarDropdownWithCheckbox.js +1 -1
- package/esm/filtersBar/filtersBar.js +2 -2
- package/esm/filtersBar/filtersBarActions/filtersBarActions.d.ts +0 -1
- package/esm/filtersBar/filtersBarInterfaces.d.ts +0 -1
- package/esm/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelDropdownWithCheckbox/filtersBarSidePanelDropdownWithCheckbox.d.ts +4 -10
- package/esm/formField/components/formFieldAdditionalInfo.d.ts +0 -1
- package/esm/formField/components/formFieldCounter.d.ts +0 -1
- package/esm/formField/components/formFieldLoading.d.ts +0 -1
- package/esm/formField/components/formFieldSkeleton.d.ts +0 -1
- package/esm/formField/components/formFieldWithLabel.d.ts +0 -1
- package/esm/formField/components/formFieldWithoutLabel.d.ts +0 -1
- package/esm/formField/formField.d.ts +1 -1
- package/esm/formField/hooks/useBanner.d.ts +0 -1
- package/esm/formField/hooks/useDisabled.d.ts +1 -1
- package/esm/formGroup/components/customRow/customRow.d.ts +0 -1
- package/esm/formGroup/hooks/listHooks/useStateToElements.d.ts +0 -1
- package/esm/formGroup/hooks/listHooks/useStateToElements.js +1 -1
- package/esm/formGroup/utils/formGroupProvider.d.ts +0 -1
- package/esm/formGroup/utils/isFormLabel.d.ts +1 -1
- package/esm/formGroupItem/formGroupItem.d.ts +0 -1
- package/esm/formLayout/components/layoutColumn/layoutColum.d.ts +0 -1
- package/esm/formLayout/hooks/useFormButtons.d.ts +1 -1
- package/esm/formLayout/types.d.ts +0 -1
- package/esm/formLayout/utils/attachHeadings.d.ts +1 -1
- package/esm/formLayout/utils/attachSeparators.d.ts +0 -1
- package/esm/formLayout/utils/getChildrenWithCustomColumns.d.ts +1 -2
- package/esm/formLayout/utils/getChildrenWithCustomColumns.js +2 -2
- package/esm/formLayout/utils/getFieldLabel.js +5 -5
- package/esm/formSection/components/actions.d.ts +0 -1
- package/esm/formSection/components/additional.d.ts +0 -1
- package/esm/formSection/utils/isFormSection.d.ts +2 -4
- package/esm/formStepper/components/formStepRaw.d.ts +0 -1
- package/esm/formStepper/formStepper.d.ts +0 -1
- package/esm/formStepper/formStepper.js +5 -5
- package/esm/formStepperButtons/formStepperButtons.js +3 -3
- package/esm/gridLayout/hooks/useStretch.js +1 -1
- package/esm/gridLayout/utils/gridLayoutProvider.d.ts +0 -1
- package/esm/gridLayout/utils/gridLayoutProvider.js +1 -1
- package/esm/gridLayout/utils/isGridItem.d.ts +1 -1
- package/esm/groupsFilter/groupsHelper.d.ts +5 -5
- package/esm/groupsFilterRaw/groupsHelper.d.ts +1 -1
- package/esm/groupsFilterRaw/stateReducer/stateReducer.d.ts +1 -1
- package/esm/groupsFilterRaw/testData.js +1 -2
- package/esm/header/components/collapsedItemsControl/utils/handleCustomMenuWrapper.js +5 -0
- package/esm/header/components/mobileFilterControl/mobileFilterControl.d.ts +0 -1
- package/esm/header/components/mobileSearchControl/mobileSearchControl.d.ts +0 -1
- package/esm/header/headerButton.d.ts +0 -1
- package/esm/header/headerContext.d.ts +1 -2
- package/esm/header/headerHelpers.d.ts +5 -5
- package/esm/header/hooks/useNonFittingElements.d.ts +3 -4
- package/esm/headerTitle/headerTitle.d.ts +0 -1
- package/esm/icons/iconAce.d.ts +3 -0
- package/esm/icons/iconAce.js +8 -0
- package/esm/icons/iconBreak.d.ts +3 -0
- package/esm/icons/iconBreak.js +8 -0
- package/esm/icons/iconChevronStepper.d.ts +3 -0
- package/esm/icons/iconChevronStepper.js +8 -0
- package/esm/icons/iconPotato.d.ts +3 -0
- package/esm/icons/iconPotato.js +8 -0
- package/esm/icons/iconToggleLarge.d.ts +3 -0
- package/esm/icons/iconToggleLarge.js +8 -0
- package/esm/icons/iconToggleSmall.d.ts +3 -0
- package/esm/icons/iconToggleSmall.js +8 -0
- package/esm/icons/iconTrendNeutral.d.ts +3 -0
- package/esm/icons/iconTrendNeutral.js +8 -0
- package/esm/icons/iconTruck.d.ts +3 -0
- package/esm/icons/iconTruck.js +8 -0
- package/esm/index.d.ts +8 -0
- package/esm/index.js +8 -0
- package/esm/layout/layout.d.ts +2 -1
- package/esm/layout/layoutBanner.d.ts +0 -1
- package/esm/lineChart/lineChart.d.ts +1 -0
- package/esm/lineChart/lineChart.js +129 -69
- package/esm/lineChartMini/lineChartMini.d.ts +1 -0
- package/esm/lineChartMini/lineChartMini.js +136 -73
- package/esm/list/itemData/itemData.d.ts +2 -1
- package/esm/list/itemData/itemDataInternal.d.ts +2 -1
- package/esm/list/list.d.ts +0 -1
- package/esm/list/utils/isDataListitem.d.ts +1 -1
- package/esm/list/viewportProvider/viewportContext.d.ts +0 -1
- package/esm/menu/components/controlledMenuList/controlledMenuList.d.ts +2 -4
- package/esm/menu/components/controlledMenuList/controlledMenuList.js +3 -1
- package/esm/menu/utils/useDisplayContent.d.ts +21 -0
- package/esm/menu/utils/useDisplayContent.js +31 -0
- package/esm/mobileSheet/components/mobileSheetTitle.d.ts +0 -1
- package/esm/nav/context/nav.context.d.ts +0 -1
- package/esm/nav/navFooter/navEditFooter/navEditFooter.d.ts +0 -1
- package/esm/nav/navFooter/navFooter.d.ts +1 -1
- package/esm/nav/navFooter/navFooterAction/navFooterAction.d.ts +2 -1
- package/esm/nav/navFooter/navFooterAction/navFooterAction.js +3 -1
- package/esm/nav/navItem/navItem.d.ts +2 -0
- package/esm/nav/navItem/navItem.js +57 -48
- package/esm/nav/navItem/navItemContent.d.ts +19 -0
- package/esm/nav/navItem/navItemContent.js +17 -0
- package/esm/nav/navItem/navItemType.d.ts +7 -0
- package/esm/nav/navItem/navItemType.js +6 -0
- package/esm/nav/utils/navUtils.d.ts +2 -4
- package/esm/overview/overview.d.ts +0 -1
- package/esm/pageHeader/pageHeader.d.ts +1 -1
- package/esm/pageHeader/pageHeaderButton.d.ts +0 -1
- package/esm/pageHeader/pageHeaderHelpers.d.ts +1 -1
- package/esm/pageHeader/pageHeaderMenu.d.ts +0 -1
- package/esm/pagination/paginationArrow.d.ts +0 -1
- package/esm/pill/interfaces/pill.interface.d.ts +0 -1
- package/esm/pillBox/components/pillBoxItem.d.ts +1 -2
- package/esm/progressIndicator/progressIndicator.d.ts +39 -0
- package/esm/progressIndicator/progressIndicator.js +26 -0
- package/esm/progressIndicator/progressIndicatorUtils.d.ts +12 -0
- package/esm/progressIndicator/progressIndicatorUtils.js +25 -0
- package/esm/radioGroupRaw/types.d.ts +0 -1
- package/esm/react-chartjs/utils.d.ts +3 -3
- package/esm/searchInputRaw/types.d.ts +0 -1
- package/esm/selectField/selectField.d.ts +2 -3
- package/esm/selectList/selectList.d.ts +0 -1
- package/esm/selectRaw/selectRaw.js +3 -0
- package/esm/sidePanel/sidePanelCell/sidePanelCell.d.ts +0 -1
- package/esm/table/actions/actionsMenu.d.ts +0 -1
- package/esm/table/children/useTableChildren.d.ts +7 -7
- package/esm/table/detailPanel/interfaces.d.ts +0 -1
- package/esm/table/loading/useLoading.d.ts +10 -10
- package/esm/table/nested/nestedData.d.ts +3 -1
- package/esm/table/nested/useNestedRows.d.ts +2 -2
- package/esm/table/selectable/selectableHeader.d.ts +2 -1
- package/esm/table/selectable/selectableHeader.js +4 -3
- package/esm/table/selectable/useSelectableRows.d.ts +1 -1
- package/esm/table/selectable/useSelectableRows.js +7 -4
- package/esm/table/table.d.ts +16 -1
- package/esm/table/table.js +102 -6
- package/esm/tag/tag.d.ts +19 -0
- package/esm/tag/tag.js +10 -0
- package/esm/testHelpers/geotab-axe/index.d.ts +0 -1
- package/esm/toastRaw/toastRaw.d.ts +1 -1
- package/esm/toastRaw/toastRaw.js +3 -1
- package/esm/toggleButtonRaw/types.d.ts +0 -1
- package/esm/tooltipInfo/tooltipInfo.d.ts +0 -1
- package/esm/tsconfig.esm.tsbuildinfo +1 -0
- package/esm/utils/localization/directionContext.d.ts +0 -1
- package/esm/utils/localization/languageContext.d.ts +0 -1
- package/esm/utils/localization/translations/en.json +12 -1
- package/esm/utils/theme/themeContext.d.ts +0 -1
- package/esm/utils/topWindow/topWindowContext.d.ts +0 -1
- package/esm/utils/useFadeComponent.d.ts +0 -1
- package/esm/utils/userFormat/userFormatContext.d.ts +0 -1
- package/esm/waiting/waiting.d.ts +2 -1
- package/esm/waiting/waiting.js +24 -7
- package/package.json +13 -6
- package/esm/gridLayout/hooks/useTablet.js +0 -20
- /package/dist/{gridLayout → commonHelpers}/hooks/useTablet.d.ts +0 -0
- /package/esm/{gridLayout → commonHelpers}/hooks/useTablet.d.ts +0 -0
|
@@ -40,7 +40,8 @@ injectString("el-GR", "Configure", "\u0394\u03B9\u03B1\u03BC\u03CC\u03C1\u03C6\u
|
|
|
40
40
|
injectString("et-EE", "Configure", "Seadista");
|
|
41
41
|
injectString("bg-BG", "Configure", "\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043D\u0435");
|
|
42
42
|
export const NavFooterAction = ({
|
|
43
|
-
children
|
|
43
|
+
children,
|
|
44
|
+
active
|
|
44
45
|
}) => {
|
|
45
46
|
const {
|
|
46
47
|
translate
|
|
@@ -58,6 +59,7 @@ export const NavFooterAction = ({
|
|
|
58
59
|
title: translate("Configure"),
|
|
59
60
|
menuAlignment: "end-bottom",
|
|
60
61
|
isMenuItem: false,
|
|
62
|
+
active: active,
|
|
61
63
|
children: filteredItems
|
|
62
64
|
});
|
|
63
65
|
};
|
|
@@ -3,6 +3,7 @@ import { IZenComponentProps } from "../../commonHelpers/zenComponent";
|
|
|
3
3
|
import { FC, ReactNode } from "react";
|
|
4
4
|
import { IIcon } from "../../icons/icon";
|
|
5
5
|
import { TAlignment } from "../../absolute/absolute";
|
|
6
|
+
import { TNavItemType } from "./navItemType";
|
|
6
7
|
interface INavItemCommon extends IZenComponentProps {
|
|
7
8
|
title: string;
|
|
8
9
|
primaryIcon?: FC<IIcon> | ReactNode;
|
|
@@ -17,6 +18,7 @@ interface INavItemCommon extends IZenComponentProps {
|
|
|
17
18
|
isExternalLink?: boolean;
|
|
18
19
|
iconClass?: string;
|
|
19
20
|
isPrimary?: boolean;
|
|
21
|
+
type?: TNavItemType;
|
|
20
22
|
tabIndex?: 0 | -1;
|
|
21
23
|
isMenuItem?: boolean;
|
|
22
24
|
tooltipAlignment?: TAlignment;
|
|
@@ -9,32 +9,48 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
9
9
|
}
|
|
10
10
|
return t;
|
|
11
11
|
};
|
|
12
|
-
import { jsx as _jsx, jsxs as _jsxs
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
13
|
import { classNames } from "../../commonHelpers/classNames/classNames";
|
|
14
|
-
import { useRef, useState, useEffect, Children, cloneElement, createContext, useContext, useId } from "react";
|
|
15
|
-
import { IconBeta } from "../../icons/iconBeta";
|
|
16
|
-
import { IconChevronRight } from "../../icons/iconChevronRight";
|
|
17
|
-
import { IconChevronLeft } from "../../icons/iconChevronLeft";
|
|
18
|
-
import { IconOpen2 } from "../../icons/iconOpen2";
|
|
19
|
-
import { useDirectionalIcon } from "../../utils/localization/useDirectionalIcon";
|
|
14
|
+
import { useRef, useState, useEffect, Children, cloneElement, createContext, useContext, useId, isValidElement } from "react";
|
|
20
15
|
import { Tooltip } from "../../tooltip/tooltip";
|
|
21
16
|
import { ControlledMenu } from "../../menu/controlledMenu";
|
|
22
17
|
import { useNavContext } from "../context/nav.context";
|
|
23
18
|
import { useMobile } from "../../commonHelpers/hooks/useMobile";
|
|
24
|
-
|
|
25
|
-
|
|
19
|
+
import { NavItemContent, ICON_SIZE, SUBMENU_ICON_SIZE } from "./navItemContent";
|
|
20
|
+
import { createMenuItem } from "../../menu/components/createMenuItem";
|
|
21
|
+
import { NavItemType } from "./navItemType";
|
|
26
22
|
export const NavItemContext = createContext({ parentLevel: 0 });
|
|
27
23
|
const defaultTooltipAlignment = "end";
|
|
28
24
|
const isLinkNavItem = (item) => !!item.link;
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
25
|
+
const isNavItemElement = (child) => isValidElement(child) && child.type.displayName === "NavItem";
|
|
26
|
+
const getWrapperClassName = ({ className, collapsed, active, isMobile, hasNested, isNested, isLink, type }) => classNames([
|
|
27
|
+
"zen-nav-item",
|
|
28
|
+
isLink ? "zen-nav-item--link" : "zen-nav-item--button",
|
|
29
|
+
isMobile ? "zen-nav-item--mobile" : "",
|
|
30
|
+
collapsed ? "zen-nav-item--collapsed" : "",
|
|
31
|
+
active ? "zen-nav-item--active" : "",
|
|
32
|
+
hasNested ? "zen-nav-item--has-nested" : "",
|
|
33
|
+
isNested ? "zen-nav-item--nested" : "",
|
|
34
|
+
type && type !== NavItemType.Default ? `zen-nav-item--${type}` : "",
|
|
35
|
+
className || ""
|
|
36
|
+
]);
|
|
37
|
+
const MobileNavMenuItem = createMenuItem((props) => {
|
|
38
|
+
const wrapperClassNames = getWrapperClassName(props);
|
|
39
|
+
return (_jsx("div", { className: wrapperClassNames, children: _jsx(NavItemContent, Object.assign({}, props, { hasSubmenu: props.hasChildren })) }));
|
|
40
|
+
});
|
|
41
|
+
// Recursively converts a NavItem subtree into a static tree of menu items for the mobile ControlledMenu.
|
|
42
|
+
const buildMobileMenuItems = (children, parentId, onNavigate) => Children.toArray(children)
|
|
43
|
+
.filter(isNavItemElement)
|
|
44
|
+
.map(child => {
|
|
45
|
+
const link = isLinkNavItem(child.props) ? child.props.link : "";
|
|
46
|
+
const title = child.props.title;
|
|
47
|
+
const isExternal = child.props.isExternalLink;
|
|
48
|
+
const id = `${parentId}/${link}_${title}`;
|
|
49
|
+
const nested = buildMobileMenuItems(child.props.children, id, onNavigate);
|
|
50
|
+
const onClick = isLinkNavItem(child.props) ? onNavigate : nested.length === 0 ? child.props.onClick : undefined;
|
|
51
|
+
const wrappedOnClick = () => onClick && onClick();
|
|
52
|
+
return (_jsx(MobileNavMenuItem, Object.assign({ id: id }, child.props, { ariaLabel: child.props.title, isLink: isLinkNavItem(child.props), target: isExternal ? "_blank" : undefined, rel: isExternal ? "noopener noreferrer" : undefined, onClick: wrappedOnClick, onOpenChange: child.props.onDropdownStateChange, children: nested.length > 0 ? nested : undefined }), id));
|
|
53
|
+
});
|
|
38
54
|
const NavItemAction = ({ actionIcon, actionIconTitle = "", onActionIconClick, collapsed, isMenuItem, level = 1 }) => {
|
|
39
55
|
const ActionIconComponent = actionIcon;
|
|
40
56
|
const iconSize = level > 1 ? SUBMENU_ICON_SIZE : ICON_SIZE;
|
|
@@ -47,18 +63,8 @@ const NavItemAction = ({ actionIcon, actionIconTitle = "", onActionIconClick, co
|
|
|
47
63
|
};
|
|
48
64
|
return (_jsx("button", { type: "button", className: "zen-nav-item__action", onClick: handleActionIconClick, "aria-label": actionIconTitle, title: actionIconTitle, role: isMenuItem ? "menuitem" : undefined, children: _jsx(ActionIconComponent, { size: iconSize }) }));
|
|
49
65
|
};
|
|
50
|
-
const getWrapperClassName = ({ className, collapsed, active, isMobile, hasNested, isNested, isLink }) => classNames([
|
|
51
|
-
"zen-nav-item",
|
|
52
|
-
isLink ? "zen-nav-item--link" : "zen-nav-item--button",
|
|
53
|
-
isMobile ? "zen-nav-item--mobile" : "",
|
|
54
|
-
collapsed ? "zen-nav-item--collapsed" : "",
|
|
55
|
-
active ? "zen-nav-item--active" : "",
|
|
56
|
-
hasNested ? "zen-nav-item--has-nested" : "",
|
|
57
|
-
isNested ? "zen-nav-item--nested" : "",
|
|
58
|
-
className || ""
|
|
59
|
-
]);
|
|
60
66
|
const LinkNavItem = (_a) => {
|
|
61
|
-
var { className, title, collapsed, active, link, isExternalLink, tabIndex, isMenuItem = true, tooltipAlignment = defaultTooltipAlignment, actionIcon, actionIconTitle, onActionIconClick } = _a, rest = __rest(_a, ["className", "title", "collapsed", "active", "link", "isExternalLink", "tabIndex", "isMenuItem", "tooltipAlignment", "actionIcon", "actionIconTitle", "onActionIconClick"]);
|
|
67
|
+
var { className, title, collapsed, active, link, isExternalLink, tabIndex, isMenuItem = true, tooltipAlignment = defaultTooltipAlignment, actionIcon, actionIconTitle, onActionIconClick, type } = _a, rest = __rest(_a, ["className", "title", "collapsed", "active", "link", "isExternalLink", "tabIndex", "isMenuItem", "tooltipAlignment", "actionIcon", "actionIconTitle", "onActionIconClick", "type"]);
|
|
62
68
|
const isMobile = useMobile();
|
|
63
69
|
const { parentLevel = 0, closeParentMenu } = useContext(NavItemContext);
|
|
64
70
|
const { onNavigate } = useNavContext();
|
|
@@ -66,13 +72,13 @@ const LinkNavItem = (_a) => {
|
|
|
66
72
|
const linkElement = (_jsx("a", { href: link, "aria-label": title, title: title, target: isExternalLink ? "_blank" : undefined, rel: isExternalLink ? "noopener noreferrer" : undefined, tabIndex: tabIndex, role: isMenuItem ? "menuitem" : undefined, onClick: () => {
|
|
67
73
|
closeParentMenu && closeParentMenu();
|
|
68
74
|
onNavigate && onNavigate();
|
|
69
|
-
}, className: "zen-link--light zen-nav-item__main", children:
|
|
75
|
+
}, className: "zen-link--light zen-nav-item__main", children: _jsx(NavItemContent, Object.assign({ title: title, collapsed: collapsed, level: currentLevel, isExternalLink: isExternalLink }, rest)) }));
|
|
70
76
|
const item = collapsed ? (_jsx(Tooltip, { trigger: linkElement, alignment: tooltipAlignment, children: title })) : (linkElement);
|
|
71
|
-
return (_jsxs("div", { className: getWrapperClassName({ className, collapsed, active, isMobile, isLink: true }), children: [item, _jsx(NavItemAction, { actionIcon: actionIcon, actionIconTitle: actionIconTitle, onActionIconClick: onActionIconClick, collapsed: collapsed, level: currentLevel, isMenuItem: isMenuItem })] }));
|
|
77
|
+
return (_jsxs("div", { className: getWrapperClassName({ className, collapsed, active, isMobile, isLink: true, type }), children: [item, _jsx(NavItemAction, { actionIcon: actionIcon, actionIconTitle: actionIconTitle, onActionIconClick: onActionIconClick, collapsed: collapsed, level: currentLevel, isMenuItem: isMenuItem })] }));
|
|
72
78
|
};
|
|
73
79
|
LinkNavItem.displayName = "LinkNavItem";
|
|
74
80
|
const ButtonNavItem = (_a) => {
|
|
75
|
-
var { className, title, onClick, collapsed, active, children, tabIndex, menuAlignment = "end-top", isMenuItem = true, tooltipAlignment = defaultTooltipAlignment, actionIcon, actionIconTitle, onActionIconClick, onDropdownStateChange } = _a, rest = __rest(_a, ["className", "title", "onClick", "collapsed", "active", "children", "tabIndex", "menuAlignment", "isMenuItem", "tooltipAlignment", "actionIcon", "actionIconTitle", "onActionIconClick", "onDropdownStateChange"]);
|
|
81
|
+
var { className, title, onClick, collapsed, active, children, tabIndex, menuAlignment = "end-top", isMenuItem = true, tooltipAlignment = defaultTooltipAlignment, actionIcon, actionIconTitle, onActionIconClick, onDropdownStateChange, type } = _a, rest = __rest(_a, ["className", "title", "onClick", "collapsed", "active", "children", "tabIndex", "menuAlignment", "isMenuItem", "tooltipAlignment", "actionIcon", "actionIconTitle", "onActionIconClick", "onDropdownStateChange", "type"]);
|
|
76
82
|
const [menuOpen, setMenuOpen] = useState(false);
|
|
77
83
|
const { parentLevel = 0, closeParentMenu } = useContext(NavItemContext);
|
|
78
84
|
useEffect(() => {
|
|
@@ -93,7 +99,7 @@ const ButtonNavItem = (_a) => {
|
|
|
93
99
|
onClick === null || onClick === void 0 ? void 0 : onClick();
|
|
94
100
|
}
|
|
95
101
|
};
|
|
96
|
-
const handleKeyPress = evt => {
|
|
102
|
+
const handleKeyPress = (evt) => {
|
|
97
103
|
if (hasNestedItems && (evt.key === "Enter" || evt.key === " ")) {
|
|
98
104
|
evt.preventDefault();
|
|
99
105
|
setMenuOpen(true);
|
|
@@ -104,32 +110,35 @@ const ButtonNavItem = (_a) => {
|
|
|
104
110
|
}
|
|
105
111
|
};
|
|
106
112
|
const isMobile = useMobile();
|
|
113
|
+
const { onNavigate } = useNavContext();
|
|
107
114
|
const isActive = active || (hasNestedItems && menuOpen);
|
|
108
115
|
const triggerId = useId();
|
|
109
|
-
const buttonElement = (_jsx("button", { id: triggerId, ref: triggerRef, "aria-label": title, title: title, tabIndex: tabIndex, role: isMenuItem ? "menuitem" : undefined, "aria-haspopup": hasNestedItems ? "menu" : undefined, "aria-expanded": hasNestedItems ? menuOpen : undefined, className: "zen-nav-item__main", onClick: handleClick, onKeyDown: handleKeyPress, children: _jsx(NavItemContent, Object.assign({ title: title, collapsed: collapsed, hasSubmenu: hasNestedItems, level: currentLevel }, rest
|
|
116
|
+
const buttonElement = (_jsx("button", { id: triggerId, ref: triggerRef, "aria-label": title, title: title, tabIndex: tabIndex, role: isMenuItem ? "menuitem" : undefined, "aria-haspopup": hasNestedItems ? "menu" : undefined, "aria-expanded": hasNestedItems ? menuOpen : undefined, className: "zen-nav-item__main", onClick: handleClick, onKeyDown: handleKeyPress, children: _jsx(NavItemContent, Object.assign({ title: title, collapsed: collapsed, hasSubmenu: hasNestedItems, level: currentLevel }, rest)) }));
|
|
110
117
|
const trigger = collapsed ? (_jsx(Tooltip, { trigger: buttonElement, alignment: tooltipAlignment, children: title })) : (buttonElement);
|
|
111
118
|
if (hasNestedItems) {
|
|
112
|
-
// Process children to add appropriate level classes while allowing unlimited nesting
|
|
113
119
|
const childLevel = currentLevel + 1;
|
|
120
|
+
const popupClass = `zen-nav-popup zen-nav-l${childLevel}-popup`;
|
|
121
|
+
const popupClassMobile = `zen-nav-popup--mobile zen-nav-l${childLevel}-popup--mobile`;
|
|
122
|
+
const popupListClass = `zen-nav-popup__list zen-nav-l${childLevel}-popup__list`;
|
|
123
|
+
const popupListClassMobile = `zen-nav-popup__list--mobile zen-nav-l${childLevel}-popup__list--mobile`;
|
|
124
|
+
const closeLevelMenu = () => {
|
|
125
|
+
setMenuOpen(false);
|
|
126
|
+
closeParentMenu && closeParentMenu();
|
|
127
|
+
};
|
|
128
|
+
// For mobiles convert the entire subtree into a static NavMenuItem tree
|
|
129
|
+
if (isMobile) {
|
|
130
|
+
return (_jsxs("div", { className: getWrapperClassName({ className, collapsed, active: isActive, isMobile, hasNested: hasNestedItems, type }), children: [trigger, _jsx(ControlledMenu, { triggerRef: triggerRef, isOpen: menuOpen, setIsOpen: setMenuOpen, title: title, alignment: menuAlignment, className: classNames([popupClass, popupClassMobile]), listClassName: classNames([popupListClass, popupListClassMobile]), ariaLabelledby: triggerId, children: buildMobileMenuItems(children, triggerId, onNavigate) })] }));
|
|
131
|
+
}
|
|
132
|
+
// Desktop: clone children with level classes and render nested ControlledMenu popups per level.
|
|
114
133
|
const processedChildren = validChildren.map(child => {
|
|
115
134
|
const childElement = child;
|
|
116
135
|
const levelClass = `zen-nav-item--level-${childLevel}`;
|
|
117
|
-
const levelClassMobile = `zen-nav-item--level-${childLevel}--mobile`;
|
|
118
136
|
const nestedClass = childLevel > 1 ? "zen-nav-item--nested" : "";
|
|
119
|
-
return cloneElement(childElement, Object.assign(Object.assign({}, childElement.props), { className: classNames([levelClass, nestedClass,
|
|
137
|
+
return cloneElement(childElement, Object.assign(Object.assign({}, childElement.props), { className: classNames([levelClass, nestedClass, childElement.props.className || ""]), collapsed: false }));
|
|
120
138
|
});
|
|
121
|
-
|
|
122
|
-
const popupClass = `zen-nav-popup zen-nav-l${popupLevel}-popup`;
|
|
123
|
-
const popupClassMobile = `zen-nav-popup--mobile zen-nav-l${popupLevel}-popup--mobile`;
|
|
124
|
-
const popupListClass = `zen-nav-popup__list zen-nav-l${popupLevel}-popup__list`;
|
|
125
|
-
const popupListClassMobile = `zen-nav-popup__list--mobile zen-nav-l${popupLevel}-popup__list--mobile`;
|
|
126
|
-
const closeLevelMenu = () => {
|
|
127
|
-
setMenuOpen(false);
|
|
128
|
-
closeParentMenu && closeParentMenu();
|
|
129
|
-
};
|
|
130
|
-
return (_jsxs("div", { className: getWrapperClassName({ className, collapsed, active: isActive, isMobile, hasNested: hasNestedItems }), children: [trigger, _jsx(NavItemContext, { value: { parentLevel: currentLevel, closeParentMenu: closeLevelMenu }, children: _jsx(ControlledMenu, { triggerRef: triggerRef, isOpen: menuOpen, setIsOpen: setMenuOpen, title: title, alignment: menuAlignment, className: classNames([popupClass, isMobile ? popupClassMobile : ""]), listClassName: classNames([popupListClass, isMobile ? popupListClassMobile : ""]), ariaLabelledby: triggerId, children: processedChildren }) })] }));
|
|
139
|
+
return (_jsxs("div", { className: getWrapperClassName({ className, collapsed, active: isActive, isMobile, hasNested: hasNestedItems, type }), children: [trigger, _jsx(NavItemContext, { value: { parentLevel: currentLevel, closeParentMenu: closeLevelMenu }, children: _jsx(ControlledMenu, { triggerRef: triggerRef, isOpen: menuOpen, setIsOpen: setMenuOpen, title: title, alignment: menuAlignment, className: popupClass, listClassName: popupListClass, ariaLabelledby: triggerId, children: processedChildren }) })] }));
|
|
131
140
|
}
|
|
132
|
-
return (_jsxs("div", { className: getWrapperClassName({ className, collapsed, active: isActive, isMobile, hasNested: hasNestedItems }), children: [trigger, _jsx(NavItemAction, { actionIcon: actionIcon, actionIconTitle: actionIconTitle, onActionIconClick: onActionIconClick, collapsed: collapsed, level: currentLevel, isMenuItem: isMenuItem })] }));
|
|
141
|
+
return (_jsxs("div", { className: getWrapperClassName({ className, collapsed, active: isActive, isMobile, hasNested: hasNestedItems, type }), children: [trigger, _jsx(NavItemAction, { actionIcon: actionIcon, actionIconTitle: actionIconTitle, onActionIconClick: onActionIconClick, collapsed: collapsed, level: currentLevel, isMenuItem: isMenuItem })] }));
|
|
133
142
|
};
|
|
134
143
|
ButtonNavItem.displayName = "ButtonNavItem";
|
|
135
144
|
/**
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import "./navItem.less";
|
|
2
|
+
import { FC, ReactNode } from "react";
|
|
3
|
+
import { IIcon } from "../../icons/icon";
|
|
4
|
+
import { TIconSize } from "../../icons/iconSize";
|
|
5
|
+
export declare const ICON_SIZE: TIconSize;
|
|
6
|
+
export declare const SUBMENU_ICON_SIZE: TIconSize;
|
|
7
|
+
export interface INavItemContent {
|
|
8
|
+
title: string;
|
|
9
|
+
primaryIcon?: FC<IIcon> | ReactNode;
|
|
10
|
+
secondaryIcon?: FC<IIcon>;
|
|
11
|
+
isBeta?: boolean;
|
|
12
|
+
counter?: string;
|
|
13
|
+
collapsed?: boolean;
|
|
14
|
+
hasSubmenu?: boolean;
|
|
15
|
+
iconClass?: string;
|
|
16
|
+
level?: number;
|
|
17
|
+
isExternalLink?: boolean;
|
|
18
|
+
}
|
|
19
|
+
export declare const NavItemContent: ({ title, primaryIcon, secondaryIcon, isBeta, counter, collapsed, hasSubmenu, iconClass, level, isExternalLink }: INavItemContent) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { classNames } from "../../commonHelpers/classNames/classNames";
|
|
3
|
+
import { IconBeta } from "../../icons/iconBeta";
|
|
4
|
+
import { IconChevronRight } from "../../icons/iconChevronRight";
|
|
5
|
+
import { IconChevronLeft } from "../../icons/iconChevronLeft";
|
|
6
|
+
import { useDirectionalIcon } from "../../utils/localization/useDirectionalIcon";
|
|
7
|
+
import { IconOpen2 } from "../../icons/iconOpen2";
|
|
8
|
+
export const ICON_SIZE = "huge";
|
|
9
|
+
export const SUBMENU_ICON_SIZE = "large";
|
|
10
|
+
export const NavItemContent = ({ title, primaryIcon, secondaryIcon, isBeta, counter, collapsed, hasSubmenu, iconClass, level = 1, isExternalLink = false }) => {
|
|
11
|
+
const ChevronIcon = useDirectionalIcon(IconChevronRight, IconChevronLeft);
|
|
12
|
+
const PrimaryIconComponent = typeof primaryIcon === "function" ? primaryIcon : null;
|
|
13
|
+
const SecondaryIconComponent = secondaryIcon;
|
|
14
|
+
const iconSize = level > 1 ? SUBMENU_ICON_SIZE : ICON_SIZE;
|
|
15
|
+
const primaryIconComponent = primaryIcon ? (_jsx("span", { className: classNames(["zen-nav-item__icon", counter ? "zen-nav-item__icon--with-counter" : "", iconClass || ""]), children: PrimaryIconComponent ? _jsx(PrimaryIconComponent, { size: iconSize }) : primaryIcon })) : null;
|
|
16
|
+
return (_jsxs(_Fragment, { children: [_jsx("div", { className: "zen-nav-item__content-left", children: !collapsed ? (_jsxs(_Fragment, { children: [isBeta ? (_jsx("span", { className: "zen-nav-item__beta", children: _jsx(IconBeta, { size: "big" }) })) : null, primaryIconComponent, SecondaryIconComponent ? (_jsx("span", { className: "zen-nav-item__icon", children: _jsx(SecondaryIconComponent, { size: iconSize }) })) : null, _jsxs("span", { className: "zen-nav-item__title", children: [_jsx("span", { className: "zen-nav-item__title-text", children: title }), isExternalLink ? _jsx(IconOpen2, { className: "zen-nav-item__title-icon", size: ICON_SIZE }) : null] })] })) : (primaryIconComponent) }), !collapsed && (counter || hasSubmenu) ? (_jsxs("div", { className: "zen-nav-item__content-right", children: [counter ? _jsx("div", { className: "zen-nav-item__counter", children: counter }) : null, hasSubmenu ? _jsx(ChevronIcon, { className: "zen-nav-item__title-icon", size: iconSize }) : null] })) : null] }));
|
|
17
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const NavItemType: {
|
|
2
|
+
/** Standard navigation item: secondary text colour. */
|
|
3
|
+
readonly Default: "default";
|
|
4
|
+
/** Call to action: label and icons follow the hyperlink colour. */
|
|
5
|
+
readonly Tertiary: "tertiary";
|
|
6
|
+
};
|
|
7
|
+
export type TNavItemType = (typeof NavItemType)[keyof typeof NavItemType];
|
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import { ReactElement, ReactNode } from "react";
|
|
1
|
+
import { PropsWithChildren, ReactElement, ReactNode } from "react";
|
|
2
2
|
import { IButtonNavItem, ILinkNavItem } from "../navItem/navItem";
|
|
3
3
|
export declare const navHeaderImage = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIzIiBoZWlnaHQ9IjE1IiB2aWV3Qm94PSIwIDAgMTIzIDE1IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNNDcuNDE3OCA1LjY2MDFIMzkuNTkxNVY2Ljc0NTI2SDQ1LjM1MjdDNDUuNDE5MiA3LjA2NjkzIDQ1LjQ1MjggNy4yNzc1IDQ1LjQ1MjggNy4zNzA5QzQ1LjQ1MjggOC41OTE3NyA0NS4xOTczIDkuMzU1MjUgNDQuNjk0IDkuNjM5OTdDNDQuMTg1NCA5LjkyODEzIDQyLjgyODkgMTAuMDczOSA0MC42NjIzIDEwLjA3MzlDMzcuODI1NyAxMC4wNzM5IDM2LjA1NzggOS45MTk3IDM1LjQwNzkgOS42MTUxNEMzNC43NjUzIDkuMzE0NDkgMzQuNDM5NyA4LjQ4ODM4IDM0LjQzOTcgNy4xNTkwM0wzNC40MjY2IDUuNjMwOThMMzQuNDUzIDQuMjExNTVDMzQuNDUzIDIuOTAyNCAzNC43NDYyIDIuMDc0MzkgMzUuMzI0MiAxLjc1MDMzQzM1LjkwNzcgMS40MjMxOSAzNy4zOTE1IDEuMjU3MzEgMzkuNzM0MiAxLjI1NzMxQzQyLjI3MjQgMS4yNTczMSA0My44NjMxIDEuMzYwOTMgNDQuNDYyIDEuNTY0ODRDNDUuMDQ5IDEuNzY1MTkgNDUuMzQ2NyAyLjI5OTU3IDQ1LjM0NjcgMy4xNTMwMVYzLjQ1MjQ2SDQ3LjQyMTlWMy4wMTE4NEM0Ny40MjE5IDEuODE2NCA0Ni45NjM3IDEuMDM0NjIgNDYuMDYwMyAwLjY4ODIyN0M0NS4xNjY1IDAuMzQ1NzU4IDQzLjE1ODUgMC4xNzIwMjggNDAuMDkyIDAuMTcyMDI4QzM3LjAzMjQgMC4xNzIwMjggMzQuOTY3NSAwLjQzNzI1NyAzMy45NTQxIDAuOTYwMjMxQzMyLjkzNDUgMS40ODcwMSAzMi40MTc2IDIuNTU5NTcgMzIuNDE3NiA0LjE0ODFMMzIuNDA0MyA1LjA5NzMyTDMyLjQxNzYgNi42NzMxM0MzMi40MTc2IDguNTYyODkgMzIuODgyNiA5Ljc5NzMgMzMuNzk5NyAxMC4zNDI0QzM0LjcxMjEgMTAuODg0MSAzNi43ODg3IDExLjE1OSAzOS45NzI3IDExLjE1OUM0My4zNDA5IDExLjE1OSA0NS40NTU0IDEwLjkyNjggNDYuMjU3NyAxMC40NjgyQzQ3LjA2NTMgMTAuMDA2NiA0Ny40NzQ4IDguNzkyODMgNDcuNDc0OCA2Ljg2MTM2QzQ3LjQ3NDggNi4zNjIzOSA0Ny40NTY5IDUuOTY4MTEgNDcuNDIxNCA1LjY4OTMzTDQ3LjQxNzggNS42NjAxWiIgZmlsbD0iIzI1NDc3QiIvPgo8cGF0aCBkPSJNNDkuNDEyMSAxMS4wNDk4SDYxLjExNDVWOS45NjQ2M0g1MS41MjcxVjYuMDMyMjlINjAuNzE2NlY0Ljk0NzI1SDUxLjUyNzFWMS4zNjc2SDYxLjExNDVWMC4yODI0NEg0OS40MTIxVjExLjA0OThaIiBmaWxsPSIjMjU0NzdCIi8+CjxwYXRoIGQ9Ik03Ni44NTk5IDEuMDY0OEM3NS45OTk4IDAuNDcyNTUgNzMuODMzIDAuMTcyMDI4IDcwLjQxOTcgMC4xNzIwMjhDNjcuNDY2NSAwLjE3MjAyOCA2NS40MTkyIDAuNDM1NzEzIDY0LjMzNjQgMC45NTU5NTNDNjMuMjQ1NSAxLjQ4IDYyLjY5MjUgMi40Njk3MyA2Mi42OTI1IDMuODk2ODlMNjIuNjY2IDQuOTA5MDlWNS42NjE2NEM2Mi42NjYgOC4xMjI2MiA2My4wOTIzIDkuNjcxOTQgNjMuOTMyNyAxMC4yNjYxQzY0Ljc3MTEgMTAuODU4NSA2Ni45NTM3IDExLjE1OSA3MC40MTk3IDExLjE1OUM3My45MDQgMTEuMTU5IDc2LjA4ODggMTAuODU2MSA3Ni45MTM5IDEwLjI1OEM3Ny43NDExIDkuNjU4NTEgNzguMTYwNiA4LjA2NDUyIDc4LjE2MDYgNS41MjA1OUM3OC4xNjA2IDMuMTU4NDggNzcuNzIzMSAxLjY1OTQzIDc2Ljg1OTkgMS4wNjQ4Wk02NS40MDQ1IDEuODEzNzlDNjUuODgxOCAxLjQ0NDU4IDY3LjU2NDUgMS4yNTcxOSA3MC40MDY3IDEuMjU3MTlDNzIuODgxNiAxLjI1NzE5IDc0LjQ3MzEgMS40MTY5IDc1LjEzNjkgMS43MzE4Qzc1Ljc5MzEgMi4wNDMxMyA3Ni4xMjUyIDIuNzkwMjIgNzYuMTI1MiAzLjk1Mjk4TDc2LjEzODYgNC45NjM4N1Y1LjY2MTc2Qzc2LjEzODYgNy44NTIyOCA3NS44OTc1IDkuMTQ5NTYgNzUuNDIyMSA5LjUxNzQ2Qzc0Ljk0NDggOS44ODY5IDczLjI1NzQgMTAuMDczOSA3MC40MDY3IDEwLjA3MzlDNjcuNTY0NSAxMC4wNzM5IDY1Ljg4MTYgOS44ODcwMiA2NS40MDQ1IDkuNTE3NDZDNjQuOTI5MiA5LjE0OTQ0IDY0LjY4ODEgNy44NTIxNiA2NC42ODgxIDUuNjYxNzZDNjQuNjg4MSAzLjQ3NjM1IDY0LjkyOTIgMi4xODE2OSA2NS40MDQ1IDEuODEzNzlaIiBmaWxsPSIjMjU0NzdCIi8+CjxwYXRoIGQ9Ik05Mi44NDYzIDAuMjgyNDRINzguOTgyNFYxLjQ2OTQ0SDg0Ljg4MzVWMTEuMDQ5OEg4Ni45OTg2VjEuNDY5NDRIOTIuODQ2M1YwLjI4MjQ0WiIgZmlsbD0iIzI1NDc3QiIvPgo8cGF0aCBkPSJNMTAwLjMxOCAwLjI4MjQ0SDk3LjQxMTVMOTAuNzQwMiAxMS4wNDk4SDkyLjk4NTRMOTQuMzc3NCA4Ljc4NDE3SDEwMy40OThMMTA0LjkwMyAxMS4wNDk4SDEwNy4xMjJMMTAwLjMyOSAwLjI5OTA3NkwxMDAuMzE4IDAuMjgyNDRaTTEwMi44NjEgNy44MDg4MUg5NS4wMDFMOTguOTA0OCAxLjM3MTE3TDEwMi44NjEgNy44MDg4MVoiIGZpbGw9IiMyNTQ3N0IiLz4KPHBhdGggZD0iTTEyMC4yMDcgNS40MDM2OEMxMjEuNjkxIDUuMDczOTMgMTIyLjQ0MiA0LjMxNDYgMTIyLjQ0MiAzLjE0NTU0QzEyMi40NDIgMS45NzI5MiAxMjIuMDkxIDEuMTkyOTIgMTIxLjM5NyAwLjgyNzc1NEMxMjAuNzA5IDAuNDY1Nzk2IDExOS4yMzcgMC4yODI0NCAxMTcuMDIyIDAuMjgyNDRIMTA4Ljk3N1YxMS4wNDk4SDExNy44ODRDMTE5Ljc1NyAxMS4wNDk4IDEyMS4wOTEgMTAuODE1OCAxMjEuODUgMTAuMzU0MkMxMjIuNjEzIDkuODkwMDEgMTIzIDkuMDc2MzggMTIzIDcuOTM1ODRDMTIzIDYuNTQ2MzYgMTIyLjA2IDUuNjk0ODIgMTIwLjIwNyA1LjQwMzY4Wk0xMTkuNzA0IDQuNjI5NUMxMTkuMjIgNC44NjYzMyAxMTguMTE4IDQuOTg2MjMgMTE2LjQyNiA0Ljk4NjIzSDExMS4wOTJWMS4zNjc0OEgxMTYuOTgzQzExOC40MjggMS4zNjc0OCAxMTkuMzc1IDEuNDczIDExOS43OTYgMS42ODA5NkMxMjAuMjExIDEuODg1NTggMTIwLjQyIDIuMzQ2NTMgMTIwLjQyIDMuMDUxNTVDMTIwLjQyIDMuODY1NjYgMTIwLjE4IDQuMzk2NTkgMTE5LjcwNCA0LjYyOTVaTTExMS4wOTIgNi4wNzEyN0gxMTYuMzJDMTE4LjQ2MSA2LjA3MTI3IDExOS43ODkgNi4xNzk3NiAxMjAuMjY5IDYuMzkzM0MxMjAuNzM5IDYuNjAzMzkgMTIwLjk3OCA3LjE4NTU1IDEyMC45NzggOC4xMjM3MUMxMjAuOTc4IDguODc1NDMgMTIwLjc0MSA5LjM3MzgxIDEyMC4yNzQgOS42MDM5OUMxMTkuOCA5LjgzODIgMTE4Ljc3NyA5Ljk1NzAzIDExNy4yMzUgOS45NTcwM0wxMTUuMzkxIDkuOTY0NTJIMTExLjA5MlY2LjA3MTI3WiIgZmlsbD0iIzI1NDc3QiIvPgo8cGF0aCBkPSJNMCAwLjI3NzM1MUgyLjk4NzI1VjEuNTE1OEMzLjQ5ODA3IDEuMDA3MjEgNC4wNjYzOCAwLjYyNzU0NCA0LjY4OTk1IDAuMzc2NDU1QzUuMzE0NyAwLjEyNTYwNCA1Ljk5NDg0IDAgNi43MzI3MiAwQzcuNDc2OTEgMCA4LjE0ODc4IDAuMTY1MjkzIDguNzQ3MTQgMC40OTUyODZDOS4zNDYxNyAwLjgyNTUxNiA5LjgyNzg2IDEuMzA3ODUgMTAuMTkzMyAxLjk0MTgxQzEwLjY2NzcgMS4zMDc4NSAxMS4yNDk2IDAuODI1NTE2IDExLjkzOTggMC40OTUyODZDMTIuNjMgMC4xNjUyOTMgMTMuMzgzNSAwIDE0LjIwMTQgMEMxNS4wNDc1IDAgMTUuNzkyNiAwLjE3ODI0NiAxNi40MzQ2IDAuNTM0OTc1QzE3LjA3NzYgMC44OTE3MDQgMTcuNTM5IDEuMzU3MjggMTcuODIwNyAxLjkzMjA3QzE4LjEwMTggMi41MDY2MSAxOC4yNDIgMy40NDEyMSAxOC4yNDIgNC43MzU3NVYxMS4wNTY1SDE1LjIzMjZWNS41ODc4OUMxNS4yMzI2IDQuMzY1OTUgMTUuMDY0OSAzLjUzODU0IDE0LjcyOTIgMy4xMDYxMUMxNC4zOTM4IDIuNjczMzMgMTMuODkwMyAyLjQ1NzE4IDEzLjIxOTEgMi40NTcxOEMxMi43MDg1IDIuNDU3MTggMTIuMjUwOSAyLjU4OTIgMTEuODQ1NyAyLjg1MzI0QzExLjQ0MSAzLjExNzUyIDExLjE0IDMuNDgyMzMgMTAuOTQzIDMuOTQ4MDNDMTAuNzQ2MSA0LjQxMzcyIDEwLjY0NzYgNS4xNjE2NCAxMC42NDc2IDYuMTkxOVYxMS4wNTY0SDcuNjM4MjJWNS44MzU1M0M3LjYzODIyIDQuODcxMjIgNy41NTk5OSA0LjE3MjczIDcuNDAyMSAzLjc0MDE5QzcuMjQ1MTIgMy4zMDc0MSA3LjAwOSAyLjk4NTUgNi42OTUzMiAyLjc3NDFDNi4zODA3MSAyLjU2MjU4IDYuMDAwNzQgMi40NTcxOCA1LjU1NDM2IDIuNDU3MThDNS4wNTY2NiAyLjQ1NzE4IDQuNjA1MDMgMi41OTA4NiA0LjE5OTQ3IDIuODU4MzVDMy43OTMzOCAzLjEyNTk2IDMuNDg5OTMgMy41MDA1MSAzLjI4OTI1IDMuOTgyODRDMy4wODc2NSA0LjQ2NDk0IDIuOTg3MjUgNS4yMjQ1IDIuOTg3MjUgNi4yNjE2NlYxMS4wNTY1SDBWMC4yNzczNTFaIiBmaWxsPSIjMDA3OEQzIi8+CjxwYXRoIGQ9Ik0xOC44MTg0IDAuMjc3MzY3SDIxLjg3MTJMMjQuOTYzOSA3LjA0MDg1TDI4LjM3NjkgMC4yNzczNjdIMzEuNDM4M0wyMy45ODE2IDE1SDIwLjg5NjZMMjMuMzQ0IDEwLjI1MjdMMTguODE4NCAwLjI3NzM2N1oiIGZpbGw9IiMwMDc4RDMiLz4KPC9zdmc+Cg==";
|
|
4
4
|
export declare const navHeaderImageCollapsed = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzOCIgaGVpZ2h0PSIxMyIgdmlld0JveD0iMCAwIDM4IDEzIiBmaWxsPSJub25lIj4KPHBhdGggZD0iTTE1LjE5OTcgMC4yMjU0NTdIMTcuNjAyOEwyMC4wMzczIDYuMDk0TDIyLjcyNCAwLjIyNTQ1N0gyNS4xMzM5TDE5LjI2NDEgMTNIMTYuODM1NkwxOC43NjIyIDguODgwODhMMTUuMTk5NyAwLjIyNTQ1N1oiIGZpbGw9IiMwMDc4RDMiLz4KPHBhdGggZD0iTTAuMzg2NzE5IDAuMjQwNjUySDIuNzM4MjVWMS4zMTUyM0MzLjE0MDM2IDAuODczOTM1IDMuNTg3NzMgMC41NDQ1MDggNC4wNzg2IDAuMzI2NjQzQzQuNTcwMzkgMC4xMDg5ODQgNS4xMDU3OSAwIDUuNjg2NjUgMEM2LjI3MjQ2IDAgNi44MDEzNSAwLjE0MzQyMiA3LjI3MjM4IDAuNDI5NzVDNy43NDM5MiAwLjcxNjI4NCA4LjEyMzEgMS4xMzQ4IDguNDEwNzQgMS42ODQ4N0M4Ljc4NDI0IDEuMTM0OCA5LjI0MjI1IDAuNzE2Mjg0IDkuNzg1NiAwLjQyOTc1QzEwLjMyODkgMC4xNDM0MjIgMTAuOTIyMSAwIDExLjU2NTkgMEMxMi4yMzIgMCAxMi44MTg1IDAuMTU0NjYgMTMuMzIzOCAwLjQ2NDE4OEMxMy44MyAwLjc3MzcxNSAxNC4xOTMzIDEuMTc3NjkgMTQuNDE1IDEuNjc2NDJDMTQuNjM2MyAyLjE3NDk0IDE0Ljc0NjYgMi45ODU4NyAxNC43NDY2IDQuMTA5MTJWOS41OTM0OEgxMi4zNzc3VjQuODQ4NUMxMi4zNzc3IDMuNzg4MjUgMTIuMjQ1NiAzLjA3MDMyIDExLjk4MTQgMi42OTUxMUMxMS43MTczIDIuMzE5NiAxMS4zMjEgMi4xMzIwNSAxMC43OTI2IDIuMTMyMDVDMTAuMzkwNyAyLjEzMjA1IDEwLjAzMDUgMi4yNDY2IDkuNzExNTIgMi40NzU3QzkuMzkyOTkgMi43MDUwMSA5LjE1NTk4IDMuMDIxNTUgOS4wMDA4OSAzLjQyNTYzQzguODQ1OTIgMy44Mjk3IDguNzY4NDMgNC40Nzg2NiA4Ljc2ODQzIDUuMzcyNTlWOS41OTMzOEg2LjM5OTQ0VjUuMDYzMzhDNi4zOTk0NCA0LjIyNjY2IDYuMzM3ODYgMy42MjA2IDYuMjEzNTcgMy4yNDUyOUM2LjA5IDIuODY5NzggNS45MDQxMyAyLjU5MDQ2IDUuNjU3MiAyLjQwNzAzQzUuNDA5NTQgMi4yMjM1IDUuMTEwNDQgMi4xMzIwNSA0Ljc1OTA1IDIuMTMyMDVDNC4zNjcyNyAyLjEzMjA1IDQuMDExNzUgMi4yNDgwNCAzLjY5MjUgMi40ODAxNEMzLjM3MjgzIDIuNzEyMzMgMy4xMzM5NiAzLjAzNzMzIDIuOTc1OTggMy40NTU4NEMyLjgxNzI5IDMuODc0MTQgMi43MzgyNSA0LjUzMzIgMi43MzgyNSA1LjQzMzEyVjkuNTkzNDhIMC4zODY3MTlWMC4yNDA2NTJaIiBmaWxsPSIjMDA3OEQzIi8+CjxwYXRoIGQ9Ik0zNy41Njg1IDQuODc0NjhIMzEuNDA3N1Y1LjgxNjI2SDM1Ljk0MjlDMzUuOTk1MiA2LjA5NTM3IDM2LjAyMTYgNi4yNzgwNyAzNi4wMjE2IDYuMzU5MTJDMzYuMDIxNiA3LjQxODQ0IDM1LjgyMDYgOC4wODA5IDM1LjQyNDMgOC4zMjc5NEMzNS4wMjQgOC41Nzc5OCAzMy45NTYyIDguNzA0NDkgMzIuMjUwNiA4LjcwNDQ5QzMwLjAxNzcgOC43MDQ0OSAyOC42MjYgOC41NzA2NiAyOC4xMTQ0IDguMzA2MzlDMjcuNjA4NiA4LjA0NTUzIDI3LjM1MjMgNy4zMjg3MyAyNy4zNTIzIDYuMTc1MjhMMjcuMzQxOSA0Ljg0OTQyTDI3LjM2MjcgMy42MTc4MUMyNy4zNjI3IDIuNDgxODggMjcuNTkzNSAxLjc2MzQzIDI4LjA0ODUgMS40ODIyNkMyOC41MDc5IDEuMTk4NDEgMjkuNjc1OSAxLjA1NDQ3IDMxLjUyIDEuMDU0NDdDMzMuNTE4MSAxLjA1NDQ3IDM0Ljc3MDIgMS4xNDQzOCAzNS4yNDE3IDEuMzIxMzFDMzUuNzAzOCAxLjQ5NTE1IDM1LjkzODEgMS45NTg4MiAzNS45MzgxIDIuNjk5MzNWMi45NTkxNkgzNy41NzE3VjIuNTc2ODRDMzcuNTcxNyAxLjUzOTU5IDM3LjIxMSAwLjg2MTI0NiAzNi40OTk5IDAuNTYwNjlDMzUuNzk2MyAwLjI2MzUzNSAzNC4yMTU2IDAuMTEyNzkzIDMxLjgwMTcgMC4xMTI3OTNDMjkuMzkzMiAwLjExMjc5MyAyNy43Njc3IDAuMzQyOTI4IDI2Ljk3IDAuNzk2NzAxQzI2LjE2NzQgMS4yNTM3NyAyNS43NjA0IDIuMTg0NDIgMjUuNzYwNCAzLjU2Mjc1TDI1Ljc1IDQuMzg2MzdMMjUuNzYwNCA1Ljc1MzY3QzI1Ljc2MDQgNy4zOTMzOCAyNi4xMjY1IDguNDY0NDYgMjYuODQ4NSA4LjkzNzQxQzI3LjU2NjYgOS40MDc0NyAyOS4yMDE0IDkuNjQ1OTYgMzEuNzA3OCA5LjY0NTk2QzM0LjM1OTIgOS42NDU5NiAzNi4wMjM3IDkuNDQ0NDkgMzYuNjU1MyA5LjA0NjZDMzcuMjkxIDguNjQ2MDMgMzcuNjEzMyA3LjU5Mjg5IDM3LjYxMzMgNS45MTY5OUMzNy42MTMzIDUuNDg0MDUgMzcuNTk5MyA1LjE0MTk0IDM3LjU3MTMgNC45MDAwNUwzNy41Njg1IDQuODc0NjhaIiBmaWxsPSIjMjU0NzdCIi8+Cjwvc3ZnPg==";
|
|
5
5
|
export declare const detectOverlayScrollbar: () => boolean;
|
|
6
6
|
export declare function isImageUrl(str?: string | ReactNode): boolean;
|
|
7
|
-
export declare const filterPrimaryNavItems: <T extends
|
|
8
|
-
children?: ReactNode;
|
|
9
|
-
}>(element: ReactElement<T>, isNegative: boolean) => ReactElement<T> | null;
|
|
7
|
+
export declare const filterPrimaryNavItems: <T extends PropsWithChildren>(element: ReactElement<T>, isNegative: boolean) => ReactElement<T> | null;
|
|
10
8
|
export declare const collectNavItems: (element: ReactElement) => (ReactElement<ILinkNavItem> | ReactElement<IButtonNavItem>)[];
|
|
@@ -12,5 +12,5 @@ interface IPageHeaderComponents {
|
|
|
12
12
|
}
|
|
13
13
|
export declare const PageHeaderDisplayName = "PageHeader";
|
|
14
14
|
export declare const PageHeaderInner: React.FC<IPageHeader>;
|
|
15
|
-
export declare const PageHeader:
|
|
15
|
+
export declare const PageHeader: typeof PageHeaderInner & IPageHeaderComponents;
|
|
16
16
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { ReactElement } from "react";
|
|
2
2
|
import React from "react";
|
|
3
|
-
export declare const getItemsFromFragments: <T extends ReactElement
|
|
3
|
+
export declare const getItemsFromFragments: <T extends ReactElement>(items: T[]) => T[];
|
|
4
4
|
export declare const regulatePageHeaderChildren: (children: ReactElement | ReactElement[] | (ReactElement | null | undefined)[] | null | undefined) => ReactElement<unknown, string | React.JSXElementConstructor<any>>[][];
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { IPillData } from "../pillBox";
|
|
3
2
|
import "./pillBoxItem.less";
|
|
4
3
|
interface IPillItem {
|
|
@@ -6,6 +5,6 @@ interface IPillItem {
|
|
|
6
5
|
onRemove: (value: string) => void;
|
|
7
6
|
className: string;
|
|
8
7
|
}
|
|
9
|
-
export declare const PillBoxItem: import("react").
|
|
8
|
+
export declare const PillBoxItem: import("react").MemoExoticComponent<({ item, onRemove, className }: IPillItem) => import("react/jsx-runtime").JSX.Element>;
|
|
10
9
|
export declare const TRANSLATIONS: string[];
|
|
11
10
|
export {};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import "./progressIndicator.less";
|
|
2
|
+
import { IZenComponentProps } from "../commonHelpers/zenComponent";
|
|
3
|
+
export declare enum ProgressIndicatorType {
|
|
4
|
+
Positive = "positive",
|
|
5
|
+
Negative = "negative",
|
|
6
|
+
Default = "default",
|
|
7
|
+
Warning = "warning"
|
|
8
|
+
}
|
|
9
|
+
export interface IProgressIndicator extends Pick<IZenComponentProps, "className"> {
|
|
10
|
+
/**
|
|
11
|
+
* Accessible name describing what the value measures (e.g. `"Route progress"`).
|
|
12
|
+
* Applied as `aria-label` on the `progressbar` element, which requires a name.
|
|
13
|
+
* Not rendered visually — provide a localized string. Required.
|
|
14
|
+
*/
|
|
15
|
+
label: string;
|
|
16
|
+
/** Lower bound of the value scale. Defaults to `0`. */
|
|
17
|
+
min?: number;
|
|
18
|
+
/** Upper bound of the value scale. Defaults to `100`. */
|
|
19
|
+
max?: number;
|
|
20
|
+
/** Current value on the `[min, max]` scale. Clamped into range. Defaults to `0`. */
|
|
21
|
+
now?: number;
|
|
22
|
+
/** Fill color category, mapped to design tokens. Defaults to {@link ProgressIndicatorType.Default}. */
|
|
23
|
+
type?: ProgressIndicatorType;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* A compact, pill-shaped progress visual built for table cells.
|
|
27
|
+
*
|
|
28
|
+
* Presentational and grid-agnostic — use it inside a data grid column's inline
|
|
29
|
+
* `render`. It is distinct from `ProgressBar`: it exposes categorical fill
|
|
30
|
+
* colors (positive / negative / default / warning) rather than low/average/high
|
|
31
|
+
* semantics, and always renders as a full-width pill.
|
|
32
|
+
*
|
|
33
|
+
* A `label` is required: it names the `progressbar` for assistive technology
|
|
34
|
+
* (applied as `aria-label`) and is not rendered visually.
|
|
35
|
+
*/
|
|
36
|
+
export declare const ProgressIndicator: {
|
|
37
|
+
({ label, min, max, now, type, className }: IProgressIndicator): import("react/jsx-runtime").JSX.Element;
|
|
38
|
+
displayName: string;
|
|
39
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { classNames } from "../commonHelpers/classNames/classNames";
|
|
3
|
+
import { getProgressIndicatorPercent, getProgressIndicatorValue } from "./progressIndicatorUtils";
|
|
4
|
+
export var ProgressIndicatorType;
|
|
5
|
+
(function (ProgressIndicatorType) {
|
|
6
|
+
ProgressIndicatorType["Positive"] = "positive";
|
|
7
|
+
ProgressIndicatorType["Negative"] = "negative";
|
|
8
|
+
ProgressIndicatorType["Default"] = "default";
|
|
9
|
+
ProgressIndicatorType["Warning"] = "warning";
|
|
10
|
+
})(ProgressIndicatorType || (ProgressIndicatorType = {}));
|
|
11
|
+
/**
|
|
12
|
+
* A compact, pill-shaped progress visual built for table cells.
|
|
13
|
+
*
|
|
14
|
+
* Presentational and grid-agnostic — use it inside a data grid column's inline
|
|
15
|
+
* `render`. It is distinct from `ProgressBar`: it exposes categorical fill
|
|
16
|
+
* colors (positive / negative / default / warning) rather than low/average/high
|
|
17
|
+
* semantics, and always renders as a full-width pill.
|
|
18
|
+
*
|
|
19
|
+
* A `label` is required: it names the `progressbar` for assistive technology
|
|
20
|
+
* (applied as `aria-label`) and is not rendered visually.
|
|
21
|
+
*/
|
|
22
|
+
export const ProgressIndicator = ({ label, min = 0, max = 100, now = 0, type = ProgressIndicatorType.Default, className }) => {
|
|
23
|
+
const percent = getProgressIndicatorPercent(min, max, now);
|
|
24
|
+
return (_jsx("div", { className: classNames(["zen-progress-indicator", className !== null && className !== void 0 ? className : ""]), children: _jsx("div", { className: classNames(["zen-progress-indicator__fill", `zen-progress-indicator__fill--${type}`]), role: "progressbar", "aria-label": label, "aria-valuemin": min, "aria-valuemax": max, "aria-valuenow": getProgressIndicatorValue(min, max, now), style: { width: `${percent}%` } }) }));
|
|
25
|
+
};
|
|
26
|
+
ProgressIndicator.displayName = "ProgressIndicator";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Clamps `now` into the inclusive `[min, max]` range so callers can never
|
|
3
|
+
* over- or under-fill the track. Returns `min` when the range is invalid
|
|
4
|
+
* (`max <= min`).
|
|
5
|
+
*/
|
|
6
|
+
export declare const getProgressIndicatorValue: (min: number, max: number, now: number) => number;
|
|
7
|
+
/**
|
|
8
|
+
* Converts a value on the `[min, max]` scale to a fill percentage in the
|
|
9
|
+
* inclusive `[0, 100]` range, rounded to {@link PROGRESS_INDICATOR_PRECISION}
|
|
10
|
+
* decimals. Returns `0` when the range is invalid (`max <= min`).
|
|
11
|
+
*/
|
|
12
|
+
export declare const getProgressIndicatorPercent: (min: number, max: number, now: number) => number;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
const PROGRESS_INDICATOR_PRECISION = 2;
|
|
2
|
+
/**
|
|
3
|
+
* Clamps `now` into the inclusive `[min, max]` range so callers can never
|
|
4
|
+
* over- or under-fill the track. Returns `min` when the range is invalid
|
|
5
|
+
* (`max <= min`).
|
|
6
|
+
*/
|
|
7
|
+
export const getProgressIndicatorValue = (min, max, now) => {
|
|
8
|
+
if (max <= min) {
|
|
9
|
+
return min;
|
|
10
|
+
}
|
|
11
|
+
return Math.min(Math.max(now, min), max);
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Converts a value on the `[min, max]` scale to a fill percentage in the
|
|
15
|
+
* inclusive `[0, 100]` range, rounded to {@link PROGRESS_INDICATOR_PRECISION}
|
|
16
|
+
* decimals. Returns `0` when the range is invalid (`max <= min`).
|
|
17
|
+
*/
|
|
18
|
+
export const getProgressIndicatorPercent = (min, max, now) => {
|
|
19
|
+
if (max <= min) {
|
|
20
|
+
return 0;
|
|
21
|
+
}
|
|
22
|
+
const clamped = getProgressIndicatorValue(min, max, now);
|
|
23
|
+
const percent = ((clamped - min) / (max - min)) * 100;
|
|
24
|
+
return Number(percent.toFixed(PROGRESS_INDICATOR_PRECISION));
|
|
25
|
+
};
|
|
@@ -12,18 +12,18 @@ export declare function cloneData<TType extends ChartType = ChartType, TData = D
|
|
|
12
12
|
* @param event - Mouse click event
|
|
13
13
|
* @returns Dataset
|
|
14
14
|
*/
|
|
15
|
-
export declare function getDatasetAtEvent(chart: Chart, event: MouseEvent<HTMLCanvasElement>): import("chart.js
|
|
15
|
+
export declare function getDatasetAtEvent(chart: Chart, event: MouseEvent<HTMLCanvasElement>): import("chart.js").InteractionItem[];
|
|
16
16
|
/**
|
|
17
17
|
* Get single dataset element from mouse click event
|
|
18
18
|
* @param chart - Chart.js instance
|
|
19
19
|
* @param event - Mouse click event
|
|
20
20
|
* @returns Dataset
|
|
21
21
|
*/
|
|
22
|
-
export declare function getElementAtEvent(chart: Chart, event: MouseEvent<HTMLCanvasElement>): import("chart.js
|
|
22
|
+
export declare function getElementAtEvent(chart: Chart, event: MouseEvent<HTMLCanvasElement>): import("chart.js").InteractionItem[];
|
|
23
23
|
/**
|
|
24
24
|
* Get all dataset elements from mouse click event
|
|
25
25
|
* @param chart - Chart.js instance
|
|
26
26
|
* @param event - Mouse click event
|
|
27
27
|
* @returns Dataset
|
|
28
28
|
*/
|
|
29
|
-
export declare function getElementsAtEvent(chart: Chart, event: MouseEvent<HTMLCanvasElement>): import("chart.js
|
|
29
|
+
export declare function getElementsAtEvent(chart: Chart, event: MouseEvent<HTMLCanvasElement>): import("chart.js").InteractionItem[];
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
children?: import("react").ReactNode;
|
|
1
|
+
export declare const SelectField: ({ ...props }: import("..").TSelect & {
|
|
2
|
+
children?: React.ReactNode;
|
|
4
3
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -15,6 +15,7 @@ import { usePopupWidth } from "./hooks/usePopupWidth";
|
|
|
15
15
|
import { ReviewTextControl } from "../formGroup/components/reviewTextControl";
|
|
16
16
|
import { useFormFieldValues } from "../commonHelpers/hooks/useFormFieldValues/useFormFieldValues";
|
|
17
17
|
import { zen } from "../utils/zen";
|
|
18
|
+
import { useDriveClassName } from "../utils/theme/useDriveClassName";
|
|
18
19
|
// get default active item (based on items array)
|
|
19
20
|
const getItemById = (items, id) => items.find(item => item.id === id);
|
|
20
21
|
const closedListActionGetters = {
|
|
@@ -44,6 +45,7 @@ const openListActionGetters = {
|
|
|
44
45
|
const PassiveSelectListComp = React.memo(PassiveSelectList);
|
|
45
46
|
export const SelectRaw = (props) => {
|
|
46
47
|
var _a, _b;
|
|
48
|
+
const driveComponentClass = useDriveClassName("zen-text-input");
|
|
47
49
|
const { id, title, pageSize = 10, placeholder, className, classNamePopup, items: outerItems, isError, isReadOnly, ref: selectRef, forceSelection = false } = props;
|
|
48
50
|
const { value, onChange, onBlur, disabled } = useFormFieldValues(props.controller, props);
|
|
49
51
|
const items = React.useMemo(() => outerItems, [outerItems]);
|
|
@@ -140,6 +142,7 @@ export const SelectRaw = (props) => {
|
|
|
140
142
|
return (_jsxs("div", { className: classes, ref: ref, children: [_jsxs("div", { "aria-controls": listId, "aria-expanded": isOpen, "aria-haspopup": "listbox", "aria-label": title, "aria-disabled": disabled, id: id, className: classNames([
|
|
141
143
|
"zen-select__trigger",
|
|
142
144
|
"zen-text-input",
|
|
145
|
+
driveComponentClass || "",
|
|
143
146
|
isError ? "zen-text-input--error" : "",
|
|
144
147
|
"zen-caption zen-caption--full-width"
|
|
145
148
|
]), role: "combobox", tabIndex: disabled ? -1 : 0, "aria-activedescendant": isOpen && state.activeIndex > -1 ? items[state.activeIndex].id : undefined, onClick: onPopupVisibilityChange, onKeyDown: onTriggerKeyDown, onBlur: onBlurHandler, ref: innerTriggerRef, children: [_jsx("div", { className: classNames([
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { ReactElement, ReactNode, RefObject } from "react";
|
|
2
2
|
export declare const useTableChildren: (children: ReactNode, isMobile: boolean, selected: number, allSelected: boolean, clearSelection: () => void, activeId?: string, gridRef?: RefObject<HTMLElement | null>, onCloseDetailPanel?: () => void) => {
|
|
3
|
-
bulkActions: ReactElement
|
|
4
|
-
pagination: ReactElement
|
|
5
|
-
activePage:
|
|
6
|
-
fullscreenButton: ReactElement
|
|
7
|
-
emptyList: ReactElement
|
|
8
|
-
footer: ReactElement
|
|
9
|
-
detailPanel: ReactElement
|
|
3
|
+
bulkActions: ReactElement | undefined;
|
|
4
|
+
pagination: ReactElement | undefined;
|
|
5
|
+
activePage: undefined;
|
|
6
|
+
fullscreenButton: ReactElement | undefined;
|
|
7
|
+
emptyList: ReactElement | undefined;
|
|
8
|
+
footer: ReactElement | undefined;
|
|
9
|
+
detailPanel: ReactElement | undefined;
|
|
10
10
|
other: ReactNode[];
|
|
11
11
|
};
|