@geotab/zenith 3.1.1-beta.5 → 3.2.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 +20 -0
- package/dist/advancedGroupsFilter/advancedGroupsFilter.js +136 -30
- package/dist/advancedGroupsFilter/advancedGroupsFilterForm.js +139 -34
- package/dist/advancedGroupsFilter/advancedGroupsFilterFormSection.js +352 -87
- package/dist/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.d.ts +0 -1
- package/dist/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.js +83 -9
- package/dist/alertRaw/alertRaw.js +175 -54
- package/dist/banner/bannerMultipLine.js +131 -23
- package/dist/banner/bannerSingleLine.js +110 -16
- package/dist/betaPill/betaPill.js +111 -20
- package/dist/bookmark/bookmark.js +95 -28
- package/dist/bulkEditControl/bulkEditControl.js +167 -34
- package/dist/calendar/calendar.js +943 -273
- package/dist/calendar/calendarUtils.js +157 -85
- package/dist/card/card.js +268 -123
- package/dist/chart/accessibleChart/accessibleChartNarrative.js +648 -555
- package/dist/chart/accessibleChart/accessibleChartTable.js +245 -86
- package/dist/chart/chart.js +36 -21
- package/dist/chart/chartAxis/chartAxis.js +85 -7
- package/dist/checkboxListWithAction/checkboxListWithAction.js +224 -69
- package/dist/chip/chip.js +195 -91
- package/dist/columnsSelector/columnsSelector.js +97 -12
- package/dist/columnsSelector/columnsTab/columnsTab.js +59 -15
- package/dist/columnsSelector/columnsTabGroup/columnsTabGroup.js +81 -34
- package/dist/comboboxSelected/comboboxSelected.js +1 -3
- package/dist/dataFeed/feedExpandControl/feedExpandControl.js +25 -10
- package/dist/dataGrid/columns/checkboxColumn/checkboxHeaderCell.js +92 -11
- package/dist/dataGrid/dataGrid.js +227 -117
- package/dist/dataGrid/emptySearchList/emptySearchList.js +56 -9
- package/dist/dataGrid/entitiesListActions/actions/columnsListButton.js +51 -7
- package/dist/dataGrid/entitiesListActions/actions/fullscreenButton.js +64 -18
- package/dist/dataGrid/withFlexibleColumns/components/columnSettings.js +84 -10
- package/dist/dataGrid/withFlexibleColumns/components/columnSettingsSidePanel.js +48 -16
- package/dist/dataGrid/withSelectableRows/components/bulkActions/bulkActions.js +223 -32
- package/dist/dataGrid/withSelectableRows/withSelectableRows.js +286 -213
- package/dist/dataGrid/withSortableColumns/columns/sortableColumnWrapper.js +178 -95
- package/dist/dateInputInner/dateInputInner.js +791 -476
- package/dist/dateInputInner/dateInputInnerControlBlock.js +125 -22
- package/dist/dateInputRaw/dateInputRaw.js +315 -104
- package/dist/dateInputRaw/utils/getLabel.js +38 -7
- package/dist/dateRangeInner/dateRangeInner.js +172 -58
- package/dist/dateRangeRaw/dateRangeRaw.js +601 -239
- package/dist/dateRangeRaw/utils/dateRangeUtils.js +629 -241
- package/dist/dateSelectionWrapper/dateSelectionWrapper.js +152 -14
- package/dist/dialog/dialogContent.js +123 -40
- package/dist/dropdownRaw/dropdownHelper.d.ts +2 -2
- package/dist/dropdownRaw/dropdownHelper.js +9 -9
- package/dist/dropdownRaw/dropdownList.js +447 -78
- package/dist/dropdownRaw/dropdownPopup.js +218 -20
- package/dist/dropdownRaw/dropdownRaw.js +866 -506
- package/dist/dropdownRaw/dropdownSearchableTrigger.js +223 -46
- package/dist/dropdownRaw/stateReducer/stateAction.d.ts +5 -1
- package/dist/dropdownRaw/stateReducer/stateActionType.d.ts +2 -1
- package/dist/dropdownRaw/stateReducer/stateActionType.js +1 -0
- package/dist/dropdownRaw/stateReducer/stateReducer.d.ts +6 -1
- package/dist/dropdownRaw/stateReducer/stateReducer.js +24 -12
- package/dist/dropdownRaw/stateReducer/stateReducerHelper.d.ts +2 -0
- package/dist/dropdownRaw/stateReducer/stateReducerHelper.js +20 -1
- package/dist/dropdownRaw/stateReducer/stateReducerTestData.d.ts +39 -0
- package/dist/dropdownRaw/stateReducer/stateReducerTestData.js +74 -0
- package/dist/dropdownRaw/types.d.ts +1 -0
- package/dist/favoriteButton/favoriteButton.js +59 -10
- package/dist/filters/components/filtersContainer.js +151 -64
- package/dist/filters/components/filtersEmptySelectedList.js +30 -4
- package/dist/filters/components/filtersSaveModal.js +140 -42
- package/dist/filters/components/filtersSavedChipComponent.js +318 -108
- package/dist/filters/components/filtersSearchItemData.js +127 -47
- package/dist/filters/components/filtersSearchList.js +381 -179
- package/dist/filters/components/filtersSelect.js +128 -61
- package/dist/filters/components/filtersSelectListItem.js +125 -13
- package/dist/filters/components/filtersSidePanel.js +510 -178
- package/dist/filters/filters.js +445 -268
- package/dist/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +729 -272
- package/dist/filtersBar/components/resetComponentButton.js +45 -5
- package/dist/filtersBar/filtersBarActions/filtersBarActions.js +126 -15
- package/dist/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelRange/filtersBarSidePanelRange.js +155 -49
- package/dist/filtersBar/filtersBarSidePanel/filtersBarSidePanel.js +360 -104
- package/dist/filtersBar/filtersContainer/filtersContainer.js +204 -134
- package/dist/formField/components/formFieldWithLabel.d.ts +2 -1
- package/dist/formField/components/formFieldWithLabel.js +3 -2
- package/dist/formField/components/formFieldWithoutLabel.d.ts +2 -1
- package/dist/formField/components/formFieldWithoutLabel.js +3 -3
- package/dist/formField/components/trailingComponent.d.ts +8 -0
- package/dist/formField/components/trailingComponent.js +11 -0
- package/dist/formField/formField.d.ts +0 -1
- package/dist/formField/formField.js +15 -16
- package/dist/formField/hooks/useError.js +100 -36
- package/dist/formGroup/components/reviewListToggle/reviewListToggle.js +72 -7
- package/dist/formGroup/hooks/useToggle.js +37 -11
- package/dist/formGroup/utils/getControls.js +8 -7
- package/dist/formLayout/hooks/useError.js +55 -15
- package/dist/formLayout/hooks/useFormButtons.js +128 -27
- package/dist/formSection/components/formSectionModal.js +1 -1
- package/dist/formSection/formSection.js +1 -1
- package/dist/formSection/hooks/useError.js +70 -22
- package/dist/formStepper/components/formStep.js +65 -10
- package/dist/formStepper/formStepper.js +129 -33
- package/dist/formStepperButtons/formStepperButtons.js +184 -38
- package/dist/groupsFilter/groupsFilterTestData.d.ts +37 -0
- package/dist/groupsFilter/groupsFilterTestData.js +7 -0
- package/dist/groupsFilter/groupsHelper.d.ts +24 -1
- package/dist/groupsFilter/groupsHelper.js +25 -15
- package/dist/groupsFilterRaw/groupsFilterAdjustmentState.js +162 -17
- package/dist/groupsFilterRaw/groupsFilterBox.js +137 -32
- package/dist/groupsFilterRaw/groupsFilterCommon.js +75 -8
- package/dist/groupsFilterRaw/groupsFilterCurrentlySelectedState.js +184 -25
- package/dist/groupsFilterRaw/groupsFilterHelper.d.ts +2 -1
- package/dist/groupsFilterRaw/groupsFilterHelper.js +284 -168
- package/dist/groupsFilterRaw/groupsFilterInitialState.js +266 -18
- package/dist/groupsFilterRaw/groupsFilterMenu.js +124 -9
- package/dist/groupsFilterRaw/groupsFilterRaw.d.ts +1 -0
- package/dist/groupsFilterRaw/groupsFilterRaw.js +816 -308
- package/dist/groupsFilterRaw/groupsFilterTestData.d.ts +155 -2
- package/dist/groupsFilterRaw/groupsFilterTestData.js +153 -58
- package/dist/groupsFilterRaw/groupsFilterTrigger.js +139 -35
- package/dist/groupsFilterRaw/groupsHelper.js +739 -208
- package/dist/groupsFilterRaw/stateReducer/stateReducerHelper.js +3 -1
- package/dist/groupsFilterRaw/types.d.ts +1 -0
- package/dist/header/components/collapsedItemsControl/collapsedItemsControl.js +107 -52
- package/dist/header/components/mobileFilterControl/mobileFilterControl.js +62 -9
- package/dist/header/components/mobileSearchControl/mobileSearchControl.js +119 -14
- package/dist/header/headerBack.js +64 -20
- package/dist/index.css +110 -71
- package/dist/index.d.ts +2 -1
- package/dist/index.js +5 -2
- package/dist/list/itemData/itemDataInternal.js +216 -51
- package/dist/list/listItem/listItem.js +168 -55
- package/dist/menu/components/menuErrorItem.js +33 -5
- package/dist/mobileSheet/mobileSheet.js +195 -69
- package/dist/modal/modal.js +300 -142
- package/dist/nav/nav.js +1 -1
- package/dist/nav/navFooter/navFooter.js +82 -39
- package/dist/nav/navFooter/navFooterAction/navFooterAction.js +52 -13
- package/dist/nav/navHeader/navHeader.js +86 -36
- package/dist/nav/navHeader/navHeaderSearch/navHeaderSearch.js +88 -29
- package/dist/nav/navItem/navItem.d.ts +3 -3
- package/dist/nav/navItem/navItem.js +35 -33
- package/dist/nav/navMobileBar/navMobileBar.js +67 -21
- package/dist/notification/notification.js +124 -21
- package/dist/pagination/paginationArrow.js +81 -11
- package/dist/pagination/paginationText/paginationText.js +45 -11
- package/dist/pill/components/pillNonActionable/pillNonActionable.js +93 -24
- package/dist/pillBox/components/pillBoxItem.js +52 -9
- package/dist/pillBox/pillBox.js +121 -20
- package/dist/pillExpandable/pillExpandable.js +333 -139
- package/dist/rangeRaw/rangeRaw.js +486 -141
- package/dist/rangeRaw/utils/rangeHelper.js +209 -39
- package/dist/searchInputRaw/searchInputRaw.js +180 -65
- package/dist/skeleton/skeleton.js +51 -6
- package/dist/sortControl/sortControl.js +152 -42
- package/dist/stepperRaw/stepperRaw.js +116 -42
- package/dist/summary/summary.js +94 -8
- package/dist/table/actions/actionsMenu.js +171 -78
- package/dist/table/flexible/columnSettings.js +80 -10
- package/dist/table/flexible/columnsList.js +110 -43
- package/dist/table/flexible/columnsPopup.js +77 -20
- package/dist/table/nested/useNestedRows.js +167 -77
- package/dist/table/selectable/selectableHeader.js +180 -41
- package/dist/table/selectable/useSelectableRows.js +270 -191
- package/dist/table/sortable/sortableHeader.js +153 -75
- package/dist/tabs/tabs.js +227 -118
- package/dist/timePickerRaw/timePickerRaw.js +278 -58
- package/dist/toastRaw/toastRaw.js +138 -32
- package/dist/toggleButton/toggleButton.d.ts +0 -1
- package/dist/toggleButtonRaw/toggleButtonRaw.d.ts +1 -0
- package/dist/toggleButtonRaw/toggleButtonRaw.js +146 -40
- package/dist/utils/formatDate.js +1001 -117
- package/{esm/utils/localization/translations/cs-json.js → dist/utils/localization/translations/cs.json} +11 -12
- package/{esm/utils/localization/translations/da-DK-json.js → dist/utils/localization/translations/da-DK.json} +31 -23
- package/{esm/utils/localization/translations/de-json.js → dist/utils/localization/translations/de.json} +12 -13
- package/dist/utils/localization/translations/en.json +308 -0
- package/{esm/utils/localization/translations/es-json.js → dist/utils/localization/translations/es.json} +11 -12
- package/{esm/utils/localization/translations/fi-FI-json.js → dist/utils/localization/translations/fi-FI.json} +31 -23
- package/{esm/utils/localization/translations/fr-FR-json.js → dist/utils/localization/translations/fr-FR.json} +12 -12
- package/{esm/utils/localization/translations/fr-json.js → dist/utils/localization/translations/fr.json} +11 -12
- package/{esm/utils/localization/translations/hu-HU-json.js → dist/utils/localization/translations/hu-HU.json} +31 -23
- package/{esm/utils/localization/translations/id-json.js → dist/utils/localization/translations/id.json} +11 -13
- package/{esm/utils/localization/translations/it-json.js → dist/utils/localization/translations/it.json} +11 -12
- package/{esm/utils/localization/translations/ja-json.js → dist/utils/localization/translations/ja.json} +11 -12
- package/{esm/utils/localization/translations/ko-KR-json.js → dist/utils/localization/translations/ko-KR.json} +24 -23
- package/{esm/utils/localization/translations/ms-json.js → dist/utils/localization/translations/ms.json} +11 -12
- package/{esm/utils/localization/translations/nb-NO-json.js → dist/utils/localization/translations/nb-NO.json} +31 -23
- package/{esm/utils/localization/translations/nl-json.js → dist/utils/localization/translations/nl.json} +11 -12
- package/{esm/utils/localization/translations/pl-json.js → dist/utils/localization/translations/pl.json} +11 -12
- package/{esm/utils/localization/translations/pt-BR-json.js → dist/utils/localization/translations/pt-BR.json} +11 -12
- package/{esm/utils/localization/translations/sk-SK-json.js → dist/utils/localization/translations/sk-SK.json} +31 -23
- package/{esm/utils/localization/translations/sv-json.js → dist/utils/localization/translations/sv.json} +11 -12
- package/{esm/utils/localization/translations/th-json.js → dist/utils/localization/translations/th.json} +11 -12
- package/{esm/utils/localization/translations/tr-json.js → dist/utils/localization/translations/tr.json} +11 -12
- package/{esm/utils/localization/translations/zh-Hans-json.js → dist/utils/localization/translations/zh-Hans.json} +11 -12
- package/{esm/utils/localization/translations/zh-TW-json.js → dist/utils/localization/translations/zh-TW.json} +11 -23
- package/dist/utils/localization/translationsDictionary.d.ts +2 -0
- package/dist/utils/localization/translationsDictionary.js +63 -0
- package/dist/utils/localization/useLanguage.js +2 -74
- package/esm/advancedGroupsFilter/advancedGroupsFilter.js +130 -29
- package/esm/advancedGroupsFilter/advancedGroupsFilterForm.js +133 -33
- package/esm/advancedGroupsFilter/advancedGroupsFilterFormSection.js +317 -65
- package/esm/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.d.ts +0 -1
- package/esm/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.js +77 -8
- package/esm/alertRaw/alertRaw.js +165 -51
- package/esm/banner/bannerMultipLine.js +121 -20
- package/esm/banner/bannerSingleLine.js +100 -13
- package/esm/betaPill/betaPill.js +105 -19
- package/esm/bookmark/bookmark.js +89 -27
- package/esm/bulkEditControl/bulkEditControl.js +161 -33
- package/esm/calendar/calendar.js +937 -272
- package/esm/calendar/calendarUtils.js +151 -84
- package/esm/card/card.js +233 -101
- package/esm/chart/accessibleChart/accessibleChartNarrative.js +642 -554
- package/esm/chart/accessibleChart/accessibleChartTable.js +239 -85
- package/esm/chart/chart.js +30 -20
- package/esm/chart/chartAxis/chartAxis.js +79 -6
- package/esm/checkboxListWithAction/checkboxListWithAction.js +218 -68
- package/esm/chip/chip.js +189 -90
- package/esm/columnsSelector/columnsSelector.js +91 -11
- package/esm/columnsSelector/columnsTab/columnsTab.js +53 -14
- package/esm/columnsSelector/columnsTabGroup/columnsTabGroup.js +75 -33
- package/esm/comboboxSelected/comboboxSelected.js +1 -3
- package/esm/dataFeed/feedExpandControl/feedExpandControl.js +21 -9
- package/esm/dataGrid/columns/checkboxColumn/checkboxHeaderCell.js +86 -10
- package/esm/dataGrid/dataGrid.js +221 -116
- package/esm/dataGrid/emptySearchList/emptySearchList.js +50 -8
- package/esm/dataGrid/entitiesListActions/actions/columnsListButton.js +45 -6
- package/esm/dataGrid/entitiesListActions/actions/fullscreenButton.js +58 -17
- package/esm/dataGrid/withFlexibleColumns/components/columnSettings.js +78 -9
- package/esm/dataGrid/withFlexibleColumns/components/columnSettingsSidePanel.js +44 -15
- package/esm/dataGrid/withSelectableRows/components/bulkActions/bulkActions.js +217 -31
- package/esm/dataGrid/withSelectableRows/withSelectableRows.js +280 -212
- package/esm/dataGrid/withSortableColumns/columns/sortableColumnWrapper.js +172 -94
- package/esm/dateInputInner/dateInputInner.js +785 -475
- package/esm/dateInputInner/dateInputInnerControlBlock.js +119 -21
- package/esm/dateInputRaw/dateInputRaw.js +309 -103
- package/esm/dateInputRaw/utils/getLabel.js +32 -6
- package/esm/dateRangeInner/dateRangeInner.js +166 -57
- package/esm/dateRangeRaw/dateRangeRaw.js +595 -238
- package/esm/dateRangeRaw/utils/dateRangeUtils.js +622 -239
- package/esm/dateSelectionWrapper/dateSelectionWrapper.js +146 -13
- package/esm/dialog/dialogContent.js +117 -39
- package/esm/dropdownRaw/dropdownHelper.d.ts +2 -2
- package/esm/dropdownRaw/dropdownHelper.js +10 -10
- package/esm/dropdownRaw/dropdownList.js +412 -56
- package/esm/dropdownRaw/dropdownPopup.js +212 -19
- package/esm/dropdownRaw/dropdownRaw.js +862 -507
- package/esm/dropdownRaw/dropdownSearchableTrigger.js +217 -45
- package/esm/dropdownRaw/stateReducer/stateAction.d.ts +5 -1
- package/esm/dropdownRaw/stateReducer/stateActionType.d.ts +2 -1
- package/esm/dropdownRaw/stateReducer/stateActionType.js +1 -0
- package/esm/dropdownRaw/stateReducer/stateReducer.d.ts +6 -1
- package/esm/dropdownRaw/stateReducer/stateReducer.js +24 -12
- package/esm/dropdownRaw/stateReducer/stateReducerHelper.d.ts +2 -0
- package/esm/dropdownRaw/stateReducer/stateReducerHelper.js +18 -0
- package/esm/dropdownRaw/stateReducer/stateReducerTestData.d.ts +39 -0
- package/esm/dropdownRaw/stateReducer/stateReducerTestData.js +71 -0
- package/esm/dropdownRaw/types.d.ts +1 -0
- package/esm/favoriteButton/favoriteButton.js +53 -9
- package/esm/filters/components/filtersContainer.js +141 -61
- package/esm/filters/components/filtersEmptySelectedList.js +24 -3
- package/esm/filters/components/filtersSaveModal.js +134 -41
- package/esm/filters/components/filtersSavedChipComponent.js +312 -107
- package/esm/filters/components/filtersSearchItemData.js +121 -46
- package/esm/filters/components/filtersSearchList.js +375 -178
- package/esm/filters/components/filtersSelect.js +122 -60
- package/esm/filters/components/filtersSelectListItem.js +119 -12
- package/esm/filters/components/filtersSidePanel.js +504 -177
- package/esm/filters/filters.js +435 -265
- package/esm/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +722 -270
- package/esm/filtersBar/components/resetComponentButton.js +39 -4
- package/esm/filtersBar/filtersBarActions/filtersBarActions.js +120 -14
- package/esm/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelRange/filtersBarSidePanelRange.js +149 -48
- package/esm/filtersBar/filtersBarSidePanel/filtersBarSidePanel.js +354 -103
- package/esm/filtersBar/filtersContainer/filtersContainer.js +198 -133
- package/esm/formField/components/formFieldWithLabel.d.ts +2 -1
- package/esm/formField/components/formFieldWithLabel.js +3 -2
- package/esm/formField/components/formFieldWithoutLabel.d.ts +2 -1
- package/esm/formField/components/formFieldWithoutLabel.js +3 -3
- package/esm/formField/components/trailingComponent.d.ts +8 -0
- package/esm/formField/components/trailingComponent.js +7 -0
- package/esm/formField/formField.d.ts +0 -1
- package/esm/formField/formField.js +15 -16
- package/esm/formField/hooks/useError.js +94 -35
- package/esm/formGroup/components/reviewListToggle/reviewListToggle.js +66 -6
- package/esm/formGroup/hooks/useToggle.js +31 -10
- package/esm/formGroup/utils/getControls.js +8 -7
- package/esm/formLayout/hooks/useError.js +49 -14
- package/esm/formLayout/hooks/useFormButtons.js +122 -26
- package/esm/formSection/components/formSectionModal.js +1 -1
- package/esm/formSection/formSection.js +1 -1
- package/esm/formSection/hooks/useError.js +64 -21
- package/esm/formStepper/components/formStep.js +59 -9
- package/esm/formStepper/formStepper.js +123 -32
- package/esm/formStepperButtons/formStepperButtons.js +178 -37
- package/esm/groupsFilter/groupsFilterTestData.d.ts +37 -0
- package/esm/groupsFilter/groupsFilterTestData.js +4 -0
- package/esm/groupsFilter/groupsHelper.d.ts +24 -1
- package/esm/groupsFilter/groupsHelper.js +24 -1
- package/esm/groupsFilterRaw/groupsFilterAdjustmentState.js +152 -14
- package/esm/groupsFilterRaw/groupsFilterBox.js +131 -31
- package/esm/groupsFilterRaw/groupsFilterCommon.js +69 -7
- package/esm/groupsFilterRaw/groupsFilterCurrentlySelectedState.js +178 -24
- package/esm/groupsFilterRaw/groupsFilterHelper.d.ts +2 -1
- package/esm/groupsFilterRaw/groupsFilterHelper.js +279 -168
- package/esm/groupsFilterRaw/groupsFilterInitialState.js +260 -17
- package/esm/groupsFilterRaw/groupsFilterMenu.js +118 -8
- package/esm/groupsFilterRaw/groupsFilterRaw.d.ts +1 -0
- package/esm/groupsFilterRaw/groupsFilterRaw.js +811 -308
- package/esm/groupsFilterRaw/groupsFilterTestData.d.ts +155 -2
- package/esm/groupsFilterRaw/groupsFilterTestData.js +152 -57
- package/esm/groupsFilterRaw/groupsFilterTrigger.js +133 -34
- package/esm/groupsFilterRaw/groupsHelper.js +733 -207
- package/esm/groupsFilterRaw/stateReducer/stateReducerHelper.js +3 -1
- package/esm/groupsFilterRaw/types.d.ts +1 -0
- package/esm/header/components/collapsedItemsControl/collapsedItemsControl.js +101 -51
- package/esm/header/components/mobileFilterControl/mobileFilterControl.js +56 -8
- package/esm/header/components/mobileSearchControl/mobileSearchControl.js +113 -13
- package/esm/header/headerBack.js +58 -19
- package/esm/index.d.ts +2 -1
- package/esm/index.js +2 -1
- package/esm/list/itemData/itemDataInternal.js +210 -50
- package/esm/list/listItem/listItem.js +162 -54
- package/esm/menu/components/menuErrorItem.js +27 -4
- package/esm/mobileSheet/mobileSheet.js +189 -68
- package/esm/modal/modal.js +265 -120
- package/esm/nav/nav.js +1 -1
- package/esm/nav/navFooter/navFooter.js +76 -38
- package/esm/nav/navFooter/navFooterAction/navFooterAction.js +46 -12
- package/esm/nav/navHeader/navHeader.js +80 -35
- package/esm/nav/navHeader/navHeaderSearch/navHeaderSearch.js +82 -28
- package/esm/nav/navItem/navItem.d.ts +3 -3
- package/esm/nav/navItem/navItem.js +35 -33
- package/esm/nav/navMobileBar/navMobileBar.js +61 -20
- package/esm/notification/notification.js +114 -18
- package/esm/pagination/paginationArrow.js +75 -10
- package/esm/pagination/paginationText/paginationText.js +39 -10
- package/esm/pill/components/pillNonActionable/pillNonActionable.js +87 -23
- package/esm/pillBox/components/pillBoxItem.js +46 -8
- package/esm/pillBox/pillBox.js +115 -19
- package/esm/pillExpandable/pillExpandable.js +327 -138
- package/esm/rangeRaw/rangeRaw.js +480 -140
- package/esm/rangeRaw/utils/rangeHelper.js +203 -38
- package/esm/searchInputRaw/searchInputRaw.js +145 -43
- package/esm/skeleton/skeleton.js +45 -5
- package/esm/sortControl/sortControl.js +146 -41
- package/esm/stepperRaw/stepperRaw.js +112 -41
- package/esm/storybookHelpers/dataGridWithDifferentCellOptions/components/EntitiesListAction.js +178 -19
- package/esm/summary/summary.js +88 -7
- package/esm/table/actions/actionsMenu.js +165 -77
- package/esm/table/flexible/columnSettings.js +74 -9
- package/esm/table/flexible/columnsList.js +104 -42
- package/esm/table/flexible/columnsPopup.js +71 -19
- package/esm/table/nested/useNestedRows.js +161 -76
- package/esm/table/selectable/selectableHeader.js +174 -40
- package/esm/table/selectable/useSelectableRows.js +264 -190
- package/esm/table/sortable/sortableHeader.js +147 -74
- package/esm/tabs/tabs.js +221 -117
- package/esm/timePickerRaw/timePickerRaw.js +272 -57
- package/esm/toastRaw/toastRaw.js +132 -31
- package/esm/toggleButton/toggleButton.d.ts +0 -1
- package/esm/toggleButtonRaw/toggleButtonRaw.d.ts +1 -0
- package/esm/toggleButtonRaw/toggleButtonRaw.js +111 -18
- package/esm/utils/formatDate.js +995 -116
- package/{dist/utils/localization/translations/cs-json.js → esm/utils/localization/translations/cs.json} +11 -15
- package/{dist/utils/localization/translations/da-DK-json.js → esm/utils/localization/translations/da-DK.json} +31 -26
- package/{dist/utils/localization/translations/de-json.js → esm/utils/localization/translations/de.json} +12 -16
- package/esm/utils/localization/translations/en.json +308 -0
- package/{dist/utils/localization/translations/es-json.js → esm/utils/localization/translations/es.json} +11 -15
- package/{dist/utils/localization/translations/fi-FI-json.js → esm/utils/localization/translations/fi-FI.json} +31 -26
- package/{dist/utils/localization/translations/fr-FR-json.js → esm/utils/localization/translations/fr-FR.json} +12 -15
- package/{dist/utils/localization/translations/fr-json.js → esm/utils/localization/translations/fr.json} +11 -15
- package/{dist/utils/localization/translations/hu-HU-json.js → esm/utils/localization/translations/hu-HU.json} +31 -26
- package/{dist/utils/localization/translations/id-json.js → esm/utils/localization/translations/id.json} +11 -16
- package/{dist/utils/localization/translations/it-json.js → esm/utils/localization/translations/it.json} +11 -15
- package/{dist/utils/localization/translations/ja-json.js → esm/utils/localization/translations/ja.json} +11 -15
- package/{dist/utils/localization/translations/ko-KR-json.js → esm/utils/localization/translations/ko-KR.json} +24 -26
- package/{dist/utils/localization/translations/ms-json.js → esm/utils/localization/translations/ms.json} +11 -15
- package/{dist/utils/localization/translations/nb-NO-json.js → esm/utils/localization/translations/nb-NO.json} +31 -26
- package/{dist/utils/localization/translations/nl-json.js → esm/utils/localization/translations/nl.json} +11 -15
- package/{dist/utils/localization/translations/pl-json.js → esm/utils/localization/translations/pl.json} +11 -15
- package/{dist/utils/localization/translations/pt-BR-json.js → esm/utils/localization/translations/pt-BR.json} +11 -15
- package/{dist/utils/localization/translations/sk-SK-json.js → esm/utils/localization/translations/sk-SK.json} +31 -26
- package/{dist/utils/localization/translations/sv-json.js → esm/utils/localization/translations/sv.json} +11 -15
- package/{dist/utils/localization/translations/th-json.js → esm/utils/localization/translations/th.json} +11 -15
- package/{dist/utils/localization/translations/tr-json.js → esm/utils/localization/translations/tr.json} +11 -15
- package/{dist/utils/localization/translations/zh-Hans-json.js → esm/utils/localization/translations/zh-Hans.json} +11 -15
- package/{dist/utils/localization/translations/zh-TW-json.js → esm/utils/localization/translations/zh-TW.json} +11 -26
- package/esm/utils/localization/translationsDictionary.d.ts +2 -0
- package/esm/utils/localization/translationsDictionary.js +59 -0
- package/esm/utils/localization/useLanguage.js +1 -50
- package/package.json +17 -10
- package/dist/formField/hooks/useClasses.d.ts +0 -8
- package/dist/formField/hooks/useClasses.js +0 -25
- package/dist/utils/localization/translations/cs-json.d.ts +0 -251
- package/dist/utils/localization/translations/da-DK-json.d.ts +0 -252
- package/dist/utils/localization/translations/de-json.d.ts +0 -251
- package/dist/utils/localization/translations/en-json.d.ts +0 -314
- package/dist/utils/localization/translations/en-json.js +0 -317
- package/dist/utils/localization/translations/es-json.d.ts +0 -251
- package/dist/utils/localization/translations/fi-FI-json.d.ts +0 -252
- package/dist/utils/localization/translations/fr-FR-json.d.ts +0 -250
- package/dist/utils/localization/translations/fr-json.d.ts +0 -251
- package/dist/utils/localization/translations/hu-HU-json.d.ts +0 -252
- package/dist/utils/localization/translations/id-json.d.ts +0 -252
- package/dist/utils/localization/translations/it-json.d.ts +0 -251
- package/dist/utils/localization/translations/ja-json.d.ts +0 -251
- package/dist/utils/localization/translations/ko-KR-json.d.ts +0 -258
- package/dist/utils/localization/translations/ms-json.d.ts +0 -251
- package/dist/utils/localization/translations/nb-NO-json.d.ts +0 -252
- package/dist/utils/localization/translations/nl-json.d.ts +0 -251
- package/dist/utils/localization/translations/pl-json.d.ts +0 -251
- package/dist/utils/localization/translations/pt-BR-json.d.ts +0 -251
- package/dist/utils/localization/translations/sk-SK-json.d.ts +0 -251
- package/dist/utils/localization/translations/sv-json.d.ts +0 -251
- package/dist/utils/localization/translations/th-json.d.ts +0 -251
- package/dist/utils/localization/translations/tr-json.d.ts +0 -251
- package/dist/utils/localization/translations/zh-Hans-json.d.ts +0 -251
- package/dist/utils/localization/translations/zh-TW-json.d.ts +0 -271
- package/esm/formField/hooks/useClasses.d.ts +0 -8
- package/esm/formField/hooks/useClasses.js +0 -21
- package/esm/utils/localization/translations/cs-json.d.ts +0 -251
- package/esm/utils/localization/translations/da-DK-json.d.ts +0 -252
- package/esm/utils/localization/translations/de-json.d.ts +0 -251
- package/esm/utils/localization/translations/en-json.d.ts +0 -314
- package/esm/utils/localization/translations/en-json.js +0 -314
- package/esm/utils/localization/translations/es-json.d.ts +0 -251
- package/esm/utils/localization/translations/fi-FI-json.d.ts +0 -252
- package/esm/utils/localization/translations/fr-FR-json.d.ts +0 -250
- package/esm/utils/localization/translations/fr-json.d.ts +0 -251
- package/esm/utils/localization/translations/hu-HU-json.d.ts +0 -252
- package/esm/utils/localization/translations/id-json.d.ts +0 -252
- package/esm/utils/localization/translations/it-json.d.ts +0 -251
- package/esm/utils/localization/translations/ja-json.d.ts +0 -251
- package/esm/utils/localization/translations/ko-KR-json.d.ts +0 -258
- package/esm/utils/localization/translations/ms-json.d.ts +0 -251
- package/esm/utils/localization/translations/nb-NO-json.d.ts +0 -252
- package/esm/utils/localization/translations/nl-json.d.ts +0 -251
- package/esm/utils/localization/translations/pl-json.d.ts +0 -251
- package/esm/utils/localization/translations/pt-BR-json.d.ts +0 -251
- package/esm/utils/localization/translations/sk-SK-json.d.ts +0 -251
- package/esm/utils/localization/translations/sv-json.d.ts +0 -251
- package/esm/utils/localization/translations/th-json.d.ts +0 -251
- package/esm/utils/localization/translations/tr-json.d.ts +0 -251
- package/esm/utils/localization/translations/zh-Hans-json.d.ts +0 -251
- package/esm/utils/localization/translations/zh-TW-json.d.ts +0 -271
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { injectString } from "../utils/localization/translationsDictionary";
|
|
1
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
3
|
import { useCallback, useMemo } from "react";
|
|
3
4
|
import { classNames } from "../commonHelpers/classNames/classNames";
|
|
@@ -6,12 +7,55 @@ import { IconStarFilled } from "../icons/iconStarFilled";
|
|
|
6
7
|
import { useLanguage } from "../utils/localization/useLanguage";
|
|
7
8
|
import { useDriveClassName } from "../utils/theme/useDriveClassName";
|
|
8
9
|
import { useDrive } from "../utils/theme/useDrive";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
10
|
+
injectString("cs", "Favorite", "Obl\xEDben\xE9");
|
|
11
|
+
injectString("da-DK", "Favorite", "Favorit");
|
|
12
|
+
injectString("de", "Favorite", "Favorit");
|
|
13
|
+
injectString("en", "Favorite", "Favorite");
|
|
14
|
+
injectString("es", "Favorite", "Favorito");
|
|
15
|
+
injectString("fi-FI", "Favorite", "Suosikki");
|
|
16
|
+
injectString("fr", "Favorite", "Favori");
|
|
17
|
+
injectString("fr-FR", "Favorite", "Favori");
|
|
18
|
+
injectString("hu-HU", "Favorite", "Kedvenc");
|
|
19
|
+
injectString("id", "Favorite", "Favorit");
|
|
20
|
+
injectString("it", "Favorite", "Preferito");
|
|
21
|
+
injectString("ja", "Favorite", "\u304A\u6C17\u306B\u5165\u308A");
|
|
22
|
+
injectString("ko-KR", "Favorite", "\uC990\uACA8\uCC3E\uAE30");
|
|
23
|
+
injectString("ms", "Favorite", "Kegemaran");
|
|
24
|
+
injectString("nb-NO", "Favorite", "Favoritt");
|
|
25
|
+
injectString("nl", "Favorite", "Favoriet");
|
|
26
|
+
injectString("pl", "Favorite", "Ulubione");
|
|
27
|
+
injectString("pt-BR", "Favorite", "Favorito");
|
|
28
|
+
injectString("sk-SK", "Favorite", "Ob\u013E\xFAben\xE9");
|
|
29
|
+
injectString("sv", "Favorite", "Favorit");
|
|
30
|
+
injectString("th", "Favorite", "\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23\u0E42\u0E1B\u0E23\u0E14");
|
|
31
|
+
injectString("tr", "Favorite", "Favori");
|
|
32
|
+
injectString("zh-Hans", "Favorite", "\u6536\u85CF");
|
|
33
|
+
injectString("zh-TW", "Favorite", "\u6211\u7684\u6700\u611B");
|
|
34
|
+
export const FavoriteButton = ({
|
|
35
|
+
isFavorite,
|
|
36
|
+
onChange,
|
|
37
|
+
className
|
|
38
|
+
}) => {
|
|
39
|
+
const {
|
|
40
|
+
translate
|
|
41
|
+
} = useLanguage();
|
|
42
|
+
const driveClassName = useDriveClassName("zen-favorite-button");
|
|
43
|
+
const isDrive = useDrive();
|
|
44
|
+
const iconSize = useMemo(() => isDrive ? "huge" : "large", [isDrive]);
|
|
45
|
+
const filledClassName = isFavorite ? "zen-favorite-button--filled" : "";
|
|
46
|
+
const onClick = useCallback(() => onChange(!isFavorite), [isFavorite, onChange]);
|
|
47
|
+
return _jsxs("button", {
|
|
48
|
+
onClick: onClick,
|
|
49
|
+
className: classNames(["zen-favorite-button", driveClassName || "", filledClassName, className || ""]),
|
|
50
|
+
title: translate("Favorite"),
|
|
51
|
+
"aria-label": translate("Favorite"),
|
|
52
|
+
"aria-pressed": isFavorite,
|
|
53
|
+
children: [_jsx(IconStar, {
|
|
54
|
+
size: iconSize,
|
|
55
|
+
className: "zen-favorite-button__empty"
|
|
56
|
+
}), _jsx(IconStarFilled, {
|
|
57
|
+
size: iconSize,
|
|
58
|
+
className: "zen-favorite-button__filled"
|
|
59
|
+
})]
|
|
60
|
+
});
|
|
61
|
+
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { injectString } from "../../utils/localization/translationsDictionary";
|
|
1
2
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
3
|
import { useCallback, useMemo } from "react";
|
|
3
4
|
import { classNames } from "../../commonHelpers/classNames/classNames";
|
|
@@ -10,64 +11,143 @@ import { IconClose } from "../../icons/iconClose";
|
|
|
10
11
|
import { useChipStatus } from "../../chip/chipStatusProvider";
|
|
11
12
|
import { useLanguage } from "../../utils/localization/useLanguage";
|
|
12
13
|
import { useMobile } from "../../commonHelpers/hooks/useMobile";
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
14
|
+
injectString("cs", "All Filters", "V\u0161echny filtry");
|
|
15
|
+
injectString("da-DK", "All Filters", "Alle filtre");
|
|
16
|
+
injectString("de", "All Filters", "Alle Filter");
|
|
17
|
+
injectString("en", "All Filters", "All Filters");
|
|
18
|
+
injectString("es", "All Filters", "Todos los filtros");
|
|
19
|
+
injectString("fi-FI", "All Filters", "Kaikki suodattimet");
|
|
20
|
+
injectString("fr", "All Filters", "Tous les filtres");
|
|
21
|
+
injectString("fr-FR", "All Filters", "Tous les filtres");
|
|
22
|
+
injectString("hu-HU", "All Filters", "Minden sz\u0171r\u0151");
|
|
23
|
+
injectString("id", "All Filters", "Semua Filter");
|
|
24
|
+
injectString("it", "All Filters", "Tutti i filtri");
|
|
25
|
+
injectString("ja", "All Filters", "\u3059\u3079\u3066\u306E\u30D5\u30A3\u30EB\u30BF\u30FC");
|
|
26
|
+
injectString("ko-KR", "All Filters", "\uBAA8\uB4E0 \uD544\uD130");
|
|
27
|
+
injectString("ms", "All Filters", "Semua Penyaring");
|
|
28
|
+
injectString("nb-NO", "All Filters", "Alle filtre");
|
|
29
|
+
injectString("nl", "All Filters", "Alle filters");
|
|
30
|
+
injectString("pl", "All Filters", "Wszystkie filtry");
|
|
31
|
+
injectString("pt-BR", "All Filters", "Todos os filtros");
|
|
32
|
+
injectString("sk-SK", "All Filters", "V\u0161etky filtre");
|
|
33
|
+
injectString("sv", "All Filters", "Alla filter");
|
|
34
|
+
injectString("th", "All Filters", "\u0E15\u0E31\u0E27\u0E01\u0E23\u0E2D\u0E07\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14");
|
|
35
|
+
injectString("tr", "All Filters", "T\xFCm Filtreler");
|
|
36
|
+
injectString("zh-Hans", "All Filters", "\u6240\u6709\u7B5B\u9009\u5668");
|
|
37
|
+
injectString("zh-TW", "All Filters", "\u6240\u6709\u7BE9\u9078\u5668");
|
|
38
|
+
injectString("cs", "Clear", "Vymazat");
|
|
39
|
+
injectString("da-DK", "Clear", "Ryd");
|
|
40
|
+
injectString("de", "Clear", "L\xF6schen");
|
|
41
|
+
injectString("en", "Clear", "Clear");
|
|
42
|
+
injectString("es", "Clear", "Borrar");
|
|
43
|
+
injectString("fi-FI", "Clear", "Tyhjenn\xE4");
|
|
44
|
+
injectString("fr", "Clear", "Effacer");
|
|
45
|
+
injectString("fr-FR", "Clear", "Effacer");
|
|
46
|
+
injectString("hu-HU", "Clear", "T\xF6r\xF6ld.");
|
|
47
|
+
injectString("id", "Clear", "Hapus");
|
|
48
|
+
injectString("it", "Clear", "Cancella");
|
|
49
|
+
injectString("ja", "Clear", "\u30AF\u30EA\u30A2");
|
|
50
|
+
injectString("ko-KR", "Clear", "\uC9C0\uC6B0\uAE30");
|
|
51
|
+
injectString("ms", "Clear", "Kosongkan");
|
|
52
|
+
injectString("nb-NO", "Clear", "T\xF8m");
|
|
53
|
+
injectString("nl", "Clear", "Wissen");
|
|
54
|
+
injectString("pl", "Clear", "Wyczy\u015B\u0107");
|
|
55
|
+
injectString("pt-BR", "Clear", "Limpar");
|
|
56
|
+
injectString("sk-SK", "Clear", "Vyma\u017E");
|
|
57
|
+
injectString("sv", "Clear", "Rensa");
|
|
58
|
+
injectString("th", "Clear", "\u0E25\u0E49\u0E32\u0E07");
|
|
59
|
+
injectString("tr", "Clear", "Temizle");
|
|
60
|
+
injectString("zh-Hans", "Clear", "\u6E05\u9664");
|
|
61
|
+
injectString("zh-TW", "Clear", "\u6E05\u9664");
|
|
62
|
+
export const FiltersContainer = ({
|
|
63
|
+
className,
|
|
64
|
+
isPinned = false,
|
|
65
|
+
onPinChange,
|
|
66
|
+
filtersClickHandler,
|
|
67
|
+
hasSavedFilters,
|
|
68
|
+
filtersForCalculation,
|
|
69
|
+
children,
|
|
70
|
+
filtersChipRef
|
|
71
|
+
}) => {
|
|
72
|
+
const chipStatus = useChipStatus();
|
|
73
|
+
const {
|
|
74
|
+
translate
|
|
75
|
+
} = useLanguage();
|
|
76
|
+
const isMobile = useMobile();
|
|
77
|
+
const numberOfChangedFilters = useMemo(() => {
|
|
78
|
+
const suppressedFilters = new Set();
|
|
79
|
+
filtersForCalculation.forEach(filter => {
|
|
80
|
+
const filterProps = filter.props;
|
|
81
|
+
const inhibited = filterProps.inhibit;
|
|
82
|
+
if (inhibited) {
|
|
83
|
+
inhibited.forEach(id => suppressedFilters.add(id));
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
const filteredState = getFiltersState(filtersForCalculation.filter(f => !suppressedFilters.has(f.props.id)));
|
|
87
|
+
return getNumberOfChangedFilters(filteredState);
|
|
88
|
+
}, [filtersForCalculation]);
|
|
89
|
+
const filtersChipComponent = useMemo(() => _jsx(Chip, {
|
|
90
|
+
quantity: numberOfChangedFilters,
|
|
91
|
+
isOpen: false,
|
|
92
|
+
status: numberOfChangedFilters > 0 ? chipStatus || "active" : undefined,
|
|
93
|
+
onClick: filtersClickHandler,
|
|
94
|
+
icon: IconFilter,
|
|
95
|
+
title: translate("All Filters"),
|
|
96
|
+
triggerRef: filtersChipRef,
|
|
97
|
+
children: "+"
|
|
98
|
+
}), [numberOfChangedFilters, chipStatus, filtersClickHandler, translate, filtersChipRef]);
|
|
99
|
+
const childrenSignature = useMemo(() => {
|
|
100
|
+
const childrenArray = React.Children.toArray(children).filter(Boolean);
|
|
101
|
+
return childrenArray.map(child => {
|
|
102
|
+
if (!React.isValidElement(child)) {
|
|
103
|
+
return "invalid";
|
|
104
|
+
}
|
|
105
|
+
const childId = child.props.id || "no-id";
|
|
106
|
+
const state = child.props.state;
|
|
107
|
+
const defaultState = child.props.defaultState;
|
|
108
|
+
const childPropsQuery = JSON.stringify(child.props.fetchState || {});
|
|
109
|
+
const childPropsDataItems = JSON.stringify(child.props.dataItems || "no-data-items");
|
|
110
|
+
const stateHash = createStateHash(state);
|
|
111
|
+
const defaultStateHash = createStateHash(defaultState);
|
|
112
|
+
const propsHash = createPropsHash(child.props);
|
|
113
|
+
return `${childId}|${stateHash}|${defaultStateHash}|${propsHash}|${childPropsQuery}|${childPropsDataItems}`;
|
|
114
|
+
}).join("||");
|
|
115
|
+
}, [children]);
|
|
116
|
+
const memoizedChildren = useMemo(() => stabilizeChildrenWithId(children).filter(Boolean),
|
|
117
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
118
|
+
[childrenSignature]);
|
|
119
|
+
const handleRemovalClick = useCallback(() => {
|
|
120
|
+
const defaultState = createStateObject(filtersForCalculation, "defaultState");
|
|
121
|
+
filtersForCalculation.forEach(child => {
|
|
122
|
+
var _a;
|
|
123
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
124
|
+
if (child) {
|
|
125
|
+
const childProps = child.props;
|
|
126
|
+
if (childProps.id) {
|
|
127
|
+
const childDefaultState = defaultState[childProps.id];
|
|
128
|
+
(_a = childProps.onChange) === null || _a === void 0 ? void 0 : _a.call(childProps, childDefaultState);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
onPinChange === null || onPinChange === void 0 ? void 0 : onPinChange(false);
|
|
133
|
+
filtersChipRef.current.focus();
|
|
134
|
+
}, [filtersChipRef, filtersForCalculation, onPinChange]);
|
|
135
|
+
const chipRemovalComponent = useMemo(() => numberOfChangedFilters ? _jsx(Chip, {
|
|
136
|
+
title: translate("Clear"),
|
|
137
|
+
className: "zen-filters-container__removal-chip",
|
|
138
|
+
active: false,
|
|
139
|
+
status: isPinned ? "accent" : undefined,
|
|
140
|
+
onChange: handleRemovalClick,
|
|
141
|
+
icon: IconClose
|
|
142
|
+
}) : null, [isPinned, handleRemovalClick, translate, numberOfChangedFilters]);
|
|
143
|
+
const memoizedFiltersElements = useMemo(() => _jsxs(_Fragment, {
|
|
144
|
+
children: [memoizedChildren, hasSavedFilters ? _jsx(FiltersSavedChipComponent, {}) : null, filtersChipComponent, chipRemovalComponent]
|
|
145
|
+
}), [chipRemovalComponent, filtersChipComponent, hasSavedFilters, memoizedChildren]);
|
|
146
|
+
return _jsx("div", {
|
|
147
|
+
className: classNames(["zen-filters-container", isMobile ? "zen-filters-container--mobile" : "", className || ""]),
|
|
148
|
+
children: isMobile ? _jsx("div", {
|
|
149
|
+
className: "zen-filters-container__mobile-scroll-wrapper",
|
|
150
|
+
children: memoizedFiltersElements
|
|
151
|
+
}) : memoizedFiltersElements
|
|
152
|
+
});
|
|
153
|
+
};
|
|
@@ -1,7 +1,28 @@
|
|
|
1
|
+
import { injectString } from "../../utils/localization/translationsDictionary";
|
|
1
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
3
|
import { useLanguage } from "../../utils/localization/useLanguage";
|
|
3
4
|
import { ImageLooking } from "../../images/imageLooking";
|
|
5
|
+
injectString("en", "No Filters Selected", "No Filters Selected");
|
|
6
|
+
injectString("en", "Selected filters will appear here.", "Selected filters will appear here.");
|
|
4
7
|
export const FiltersEmptySelectedList = () => {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
};
|
|
8
|
+
const {
|
|
9
|
+
translate
|
|
10
|
+
} = useLanguage();
|
|
11
|
+
return _jsxs("div", {
|
|
12
|
+
className: "zen-filters-empty-selected-list",
|
|
13
|
+
children: [_jsx(ImageLooking, {
|
|
14
|
+
className: "zen-filters-empty-selected-list__image",
|
|
15
|
+
title: translate("No Filters Selected"),
|
|
16
|
+
description: translate("Selected filters will appear here.")
|
|
17
|
+
}), _jsxs("div", {
|
|
18
|
+
className: "zen-filters-empty-selected-list__text",
|
|
19
|
+
children: [_jsx("div", {
|
|
20
|
+
className: "zen-filters-empty-selected-list__header",
|
|
21
|
+
children: translate("No Filters Selected")
|
|
22
|
+
}), _jsx("div", {
|
|
23
|
+
className: "zen-filters-empty-selected-list__description",
|
|
24
|
+
children: translate("Selected filters will appear here.")
|
|
25
|
+
})]
|
|
26
|
+
})]
|
|
27
|
+
});
|
|
28
|
+
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { injectString } from "../../utils/localization/translationsDictionary";
|
|
1
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
3
|
import { useCallback, useMemo, useState } from "react";
|
|
3
4
|
import { Modal } from "../../modal/modal";
|
|
@@ -6,44 +7,136 @@ import { TextInput } from "../../textInput/textInput";
|
|
|
6
7
|
import { useFiltersSavedItems } from "./filtersSavedItemsProvider";
|
|
7
8
|
import { IconDisk } from "../../icons/iconDisk";
|
|
8
9
|
import { useDriveClassName } from "../../utils/theme/useDriveClassName";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
10
|
+
injectString("en", "Title already in use", "Title already in use");
|
|
11
|
+
injectString("cs", "Save", "Ulo\u017Eit");
|
|
12
|
+
injectString("da-DK", "Save", "Spare");
|
|
13
|
+
injectString("de", "Save", "Speichern");
|
|
14
|
+
injectString("en", "Save", "Save");
|
|
15
|
+
injectString("es", "Save", "Guardar");
|
|
16
|
+
injectString("fi-FI", "Save", "S\xE4\xE4st\xE4\xE4");
|
|
17
|
+
injectString("fr", "Save", "Enregistrer");
|
|
18
|
+
injectString("fr-FR", "Save", "Enregistrer");
|
|
19
|
+
injectString("hu-HU", "Save", "Ment\xE9s");
|
|
20
|
+
injectString("id", "Save", "Simpan");
|
|
21
|
+
injectString("it", "Save", "Salvare");
|
|
22
|
+
injectString("ja", "Save", "\u4FDD\u5B58");
|
|
23
|
+
injectString("ko-KR", "Save", "\uC800\uC7A5");
|
|
24
|
+
injectString("ms", "Save", "Simpan");
|
|
25
|
+
injectString("nb-NO", "Save", "Lagre");
|
|
26
|
+
injectString("nl", "Save", "Opslaan");
|
|
27
|
+
injectString("pl", "Save", "Zapisz");
|
|
28
|
+
injectString("pt-BR", "Save", "Salvar");
|
|
29
|
+
injectString("sk-SK", "Save", "Ulo\u017Ei\u0165");
|
|
30
|
+
injectString("sv", "Save", "Spara");
|
|
31
|
+
injectString("th", "Save", "\u0E1A\u0E31\u0E19\u0E17\u0E36\u0E01");
|
|
32
|
+
injectString("tr", "Save", "Kaydet");
|
|
33
|
+
injectString("zh-Hans", "Save", "\u4FDD\u5B58");
|
|
34
|
+
injectString("zh-TW", "Save", "\u5132\u5B58");
|
|
35
|
+
injectString("en", "Save filters", "Save filters");
|
|
36
|
+
injectString("en", "Filter title", "Filter title");
|
|
37
|
+
injectString("cs", "Cancel", "Zru\u0161it");
|
|
38
|
+
injectString("da-DK", "Cancel", "Annuller");
|
|
39
|
+
injectString("de", "Cancel", "Abbrechen");
|
|
40
|
+
injectString("en", "Cancel", "Cancel");
|
|
41
|
+
injectString("es", "Cancel", "Cancelar");
|
|
42
|
+
injectString("fi-FI", "Cancel", "Peruuta");
|
|
43
|
+
injectString("fr", "Cancel", "Annuler");
|
|
44
|
+
injectString("fr-FR", "Cancel", "Annuler");
|
|
45
|
+
injectString("hu-HU", "Cancel", "M\xE9gse");
|
|
46
|
+
injectString("id", "Cancel", "Batalkan");
|
|
47
|
+
injectString("it", "Cancel", "Annullare");
|
|
48
|
+
injectString("ja", "Cancel", "\u30AD\u30E3\u30F3\u30BB\u30EB");
|
|
49
|
+
injectString("ko-KR", "Cancel", "\uCDE8\uC18C");
|
|
50
|
+
injectString("ms", "Cancel", "Batal");
|
|
51
|
+
injectString("nb-NO", "Cancel", "Avbryt");
|
|
52
|
+
injectString("nl", "Cancel", "Annuleren");
|
|
53
|
+
injectString("pl", "Cancel", "Anuluj");
|
|
54
|
+
injectString("pt-BR", "Cancel", "Cancelar");
|
|
55
|
+
injectString("sk-SK", "Cancel", "Zru\u0161.");
|
|
56
|
+
injectString("sv", "Cancel", "Avbryt");
|
|
57
|
+
injectString("th", "Cancel", "\u0E22\u0E01\u0E40\u0E25\u0E34\u0E01");
|
|
58
|
+
injectString("tr", "Cancel", "\u0130ptal");
|
|
59
|
+
injectString("zh-Hans", "Cancel", "\u53D6\u6D88");
|
|
60
|
+
injectString("zh-TW", "Cancel", "\u53D6\u6D88");
|
|
61
|
+
export const FiltersSaveModal = ({
|
|
62
|
+
isOpen,
|
|
63
|
+
onClose,
|
|
64
|
+
onSave,
|
|
65
|
+
className,
|
|
66
|
+
prioritize
|
|
67
|
+
}) => {
|
|
68
|
+
const {
|
|
69
|
+
translate
|
|
70
|
+
} = useLanguage();
|
|
71
|
+
const {
|
|
72
|
+
items
|
|
73
|
+
} = useFiltersSavedItems();
|
|
74
|
+
const iconDriveClassName = useDriveClassName("icon");
|
|
75
|
+
const [filterName, setFilterName] = useState("");
|
|
76
|
+
const toggleSaveModal = useCallback(() => {
|
|
77
|
+
onClose(!isOpen);
|
|
78
|
+
}, [isOpen, onClose]);
|
|
79
|
+
const handleCancelSaveModal = useCallback(() => {
|
|
80
|
+
onClose(false);
|
|
81
|
+
setFilterName("");
|
|
82
|
+
}, [onClose]);
|
|
83
|
+
const isValidFilterName = useCallback((name, existingNames) => {
|
|
84
|
+
if (!name) {
|
|
85
|
+
return false;
|
|
86
|
+
}
|
|
87
|
+
return !existingNames.map(item => item.toLowerCase().trim()).includes(name.toLowerCase().trim());
|
|
88
|
+
}, []);
|
|
89
|
+
const handleApplySaveModal = useCallback(() => {
|
|
90
|
+
if (!isValidFilterName(filterName, Array.from(items))) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
onClose(false);
|
|
94
|
+
onSave(filterName);
|
|
95
|
+
setFilterName("");
|
|
96
|
+
}, [filterName, isValidFilterName, items, onClose, onSave]);
|
|
97
|
+
const handleSaveModalFieldChange = useCallback(e => {
|
|
98
|
+
setFilterName(e.target.value);
|
|
99
|
+
}, []);
|
|
100
|
+
const errorText = useMemo(() => {
|
|
101
|
+
if (!filterName) {
|
|
102
|
+
return "";
|
|
103
|
+
}
|
|
104
|
+
if (!isValidFilterName(filterName, Array.from(items))) {
|
|
105
|
+
return translate("Title already in use");
|
|
106
|
+
}
|
|
107
|
+
return "";
|
|
108
|
+
}, [filterName, isValidFilterName, items, translate]);
|
|
109
|
+
const saveIcon = useCallback(() => _jsx(IconDisk, {
|
|
110
|
+
description: translate("Save"),
|
|
111
|
+
className: "svgIcon",
|
|
112
|
+
size: iconDriveClassName ? "huge" : "large"
|
|
113
|
+
}), [iconDriveClassName, translate]);
|
|
114
|
+
return _jsxs(Modal, {
|
|
115
|
+
focus: "content",
|
|
116
|
+
modalContainerClassName: prioritize ? "zen-filters-prioritized-modal" : "",
|
|
117
|
+
isOpen: isOpen,
|
|
118
|
+
onClose: toggleSaveModal,
|
|
119
|
+
title: translate("Save filters"),
|
|
120
|
+
className: className || "",
|
|
121
|
+
children: [_jsx("div", {
|
|
122
|
+
className: "zen-filters-modal__content",
|
|
123
|
+
children: _jsx(TextInput, {
|
|
124
|
+
value: filterName,
|
|
125
|
+
ariaLabel: translate("Filter title"),
|
|
126
|
+
placeholder: translate("Filter title"),
|
|
127
|
+
onChange: handleSaveModalFieldChange,
|
|
128
|
+
maxLength: 100,
|
|
129
|
+
error: errorText
|
|
130
|
+
})
|
|
131
|
+
}), _jsx(Modal.SecondaryButton, {
|
|
132
|
+
onClick: handleCancelSaveModal,
|
|
133
|
+
title: translate("Cancel"),
|
|
134
|
+
children: translate("Cancel")
|
|
135
|
+
}), _jsx(Modal.PrimaryButton, {
|
|
136
|
+
onClick: handleApplySaveModal,
|
|
137
|
+
icon: saveIcon,
|
|
138
|
+
title: translate("Save"),
|
|
139
|
+
children: translate("Save")
|
|
140
|
+
})]
|
|
141
|
+
});
|
|
142
|
+
};
|