@geotab/zenith 3.1.1-beta.6 → 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.js +12 -11
- 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/groupsHelper.d.ts +1 -1
- 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 +1 -0
- package/dist/index.js +4 -1
- 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.js +12 -11
- 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/groupsHelper.d.ts +1 -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 +1 -0
- package/esm/index.js +1 -0
- 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/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/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 { ButtonIconPosition, TextIconButton } from "../../textIconButton/textIconButton";
|
|
3
4
|
import { classNames } from "../../commonHelpers/classNames/classNames";
|
|
@@ -5,141 +6,205 @@ import { useEffect, useRef, useState, Children, cloneElement, useCallback } from
|
|
|
5
6
|
import { IconChevronRight } from "../../icons/iconChevronRight";
|
|
6
7
|
import { useLanguage } from "../../utils/localization/useLanguage";
|
|
7
8
|
import { useDriveClassName } from "../../utils/theme/useDriveClassName";
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
injectString("cs", "Scroll left", "P\u0159ej\xEDt doleva");
|
|
10
|
+
injectString("da-DK", "Scroll left", "Rul til venstre");
|
|
11
|
+
injectString("de", "Scroll left", "Nach links scrollen");
|
|
12
|
+
injectString("en", "Scroll left", "Scroll left");
|
|
13
|
+
injectString("es", "Scroll left", "Desplazarse a la izquierda");
|
|
14
|
+
injectString("fi-FI", "Scroll left", "Selaa vasemmalle");
|
|
15
|
+
injectString("fr", "Scroll left", "D\xE9filer vers la gauche");
|
|
16
|
+
injectString("fr-FR", "Scroll left", "Faire d\xE9filer vers la gauche");
|
|
17
|
+
injectString("hu-HU", "Scroll left", "Lapozz balra.");
|
|
18
|
+
injectString("id", "Scroll left", "Gulir ke kiri");
|
|
19
|
+
injectString("it", "Scroll left", "Scorrere verso sinistra");
|
|
20
|
+
injectString("ja", "Scroll left", "\u5DE6\u306B\u30B9\u30AF\u30ED\u30FC\u30EB");
|
|
21
|
+
injectString("ko-KR", "Scroll left", "\uC67C\uCABD\uC73C\uB85C \uC2A4\uD06C\uB864");
|
|
22
|
+
injectString("ms", "Scroll left", "Skrol ke kiri");
|
|
23
|
+
injectString("nb-NO", "Scroll left", "Rull til venstre");
|
|
24
|
+
injectString("nl", "Scroll left", "Blader naar links");
|
|
25
|
+
injectString("pl", "Scroll left", "Przewi\u0144 w lewo");
|
|
26
|
+
injectString("pt-BR", "Scroll left", "Rolar para a esquerda");
|
|
27
|
+
injectString("sk-SK", "Scroll left", "Posu\u0148 do\u013Eava");
|
|
28
|
+
injectString("sv", "Scroll left", "Bl\xE4ddra \xE5t v\xE4nster");
|
|
29
|
+
injectString("th", "Scroll left", "\u0E40\u0E25\u0E37\u0E48\u0E2D\u0E19\u0E44\u0E1B\u0E17\u0E32\u0E07\u0E0B\u0E49\u0E32\u0E22");
|
|
30
|
+
injectString("tr", "Scroll left", "Sola kayd\u0131r");
|
|
31
|
+
injectString("zh-Hans", "Scroll left", "\u5411\u5DE6\u6EDA\u52A8");
|
|
32
|
+
injectString("zh-TW", "Scroll left", "\u5411\u5DE6\u6372\u52D5");
|
|
33
|
+
injectString("cs", "Scroll right", "P\u0159ej\xEDt doprava");
|
|
34
|
+
injectString("da-DK", "Scroll right", "Rul til h\xF8jre");
|
|
35
|
+
injectString("de", "Scroll right", "Nach rechts scrollen");
|
|
36
|
+
injectString("en", "Scroll right", "Scroll right");
|
|
37
|
+
injectString("es", "Scroll right", "Desplazarse a la derecha");
|
|
38
|
+
injectString("fi-FI", "Scroll right", "Selaa oikealle");
|
|
39
|
+
injectString("fr", "Scroll right", "D\xE9filer vers la droite");
|
|
40
|
+
injectString("fr-FR", "Scroll right", "Faire d\xE9filer vers la droite");
|
|
41
|
+
injectString("hu-HU", "Scroll right", "Lapozz jobbra.");
|
|
42
|
+
injectString("id", "Scroll right", "Gulir ke kanan");
|
|
43
|
+
injectString("it", "Scroll right", "Scorrere verso destra");
|
|
44
|
+
injectString("ja", "Scroll right", "\u53F3\u306B\u30B9\u30AF\u30ED\u30FC\u30EB");
|
|
45
|
+
injectString("ko-KR", "Scroll right", "\uC624\uB978\uCABD\uC73C\uB85C \uC2A4\uD06C\uB864");
|
|
46
|
+
injectString("ms", "Scroll right", "Skrol ke kanan");
|
|
47
|
+
injectString("nb-NO", "Scroll right", "Rull til h\xF8yre");
|
|
48
|
+
injectString("nl", "Scroll right", "Blader naar rechts");
|
|
49
|
+
injectString("pl", "Scroll right", "Przewi\u0144 w prawo");
|
|
50
|
+
injectString("pt-BR", "Scroll right", "Rolar para a direita");
|
|
51
|
+
injectString("sk-SK", "Scroll right", "Posu\u0148 doprava");
|
|
52
|
+
injectString("sv", "Scroll right", "Bl\xE4ddra \xE5t h\xF6ger");
|
|
53
|
+
injectString("th", "Scroll right", "\u0E40\u0E25\u0E37\u0E48\u0E2D\u0E19\u0E44\u0E1B\u0E17\u0E32\u0E07\u0E02\u0E27\u0E32");
|
|
54
|
+
injectString("tr", "Scroll right", "Sa\u011Fa Kayd\u0131r");
|
|
55
|
+
injectString("zh-Hans", "Scroll right", "\u5411\u53F3\u6EDA\u52A8");
|
|
56
|
+
injectString("zh-TW", "Scroll right", "\u5411\u53F3\u6372\u52D5");
|
|
57
|
+
const getScrollButtonType = element => {
|
|
58
|
+
const scrollLeft = element.scrollLeft;
|
|
59
|
+
const scrollWidth = element.scrollWidth;
|
|
60
|
+
const clientWidth = element.clientWidth;
|
|
61
|
+
if (scrollLeft === 0 && scrollWidth === clientWidth) {
|
|
62
|
+
return "";
|
|
63
|
+
}
|
|
64
|
+
if (scrollLeft > 0 && scrollWidth > clientWidth + scrollLeft + 1) {
|
|
65
|
+
return "both";
|
|
66
|
+
}
|
|
67
|
+
if (scrollLeft === 0) {
|
|
68
|
+
return "end";
|
|
69
|
+
}
|
|
70
|
+
return "start";
|
|
71
|
+
};
|
|
72
|
+
export const FiltersContainer = ({
|
|
73
|
+
className,
|
|
74
|
+
children
|
|
75
|
+
}) => {
|
|
76
|
+
const scrollableStep = 200;
|
|
77
|
+
const fadeTransitionDuration = 300;
|
|
78
|
+
const {
|
|
79
|
+
translate
|
|
80
|
+
} = useLanguage();
|
|
81
|
+
const gradientClass = "zen-filters-toolbar__gradient";
|
|
82
|
+
const scrollerClass = "zen-filters-toolbar__scroller";
|
|
83
|
+
const driveClassNameScroller = useDriveClassName(scrollerClass);
|
|
84
|
+
const driveClassNameGradient = useDriveClassName(gradientClass);
|
|
85
|
+
const [scrollButtonType, setScrollButtonType] = useState("");
|
|
86
|
+
const scrollableRef = useRef(null);
|
|
87
|
+
const [isHiddenDisplay, setIsHiddenDisplay] = useState({
|
|
88
|
+
left: true,
|
|
89
|
+
right: true
|
|
90
|
+
});
|
|
91
|
+
const leftTimeoutRef = useRef(null);
|
|
92
|
+
const rightTimeoutRef = useRef(null);
|
|
93
|
+
const showLeft = scrollButtonType === "start" || scrollButtonType === "both";
|
|
94
|
+
const showRight = scrollButtonType === "end" || scrollButtonType === "both";
|
|
95
|
+
useEffect(() => {
|
|
96
|
+
if (!scrollableRef.current) {
|
|
97
|
+
return () => {};
|
|
14
98
|
}
|
|
15
|
-
|
|
16
|
-
|
|
99
|
+
let timer = undefined;
|
|
100
|
+
const resizeHandler = () => {
|
|
101
|
+
const scrollableElt = scrollableRef.current;
|
|
102
|
+
if (scrollableElt) {
|
|
103
|
+
timer && window.clearTimeout(timer);
|
|
104
|
+
timer = window.setTimeout(() => {
|
|
105
|
+
setScrollButtonType(getScrollButtonType(scrollableElt));
|
|
106
|
+
}, 200);
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
const scrollableElement = scrollableRef.current;
|
|
110
|
+
scrollableElement.addEventListener("scroll", resizeHandler);
|
|
111
|
+
window.addEventListener("resize", resizeHandler);
|
|
112
|
+
resizeHandler();
|
|
113
|
+
return () => {
|
|
114
|
+
timer && window.clearTimeout(timer);
|
|
115
|
+
scrollableElement.removeEventListener("scroll", resizeHandler);
|
|
116
|
+
window.removeEventListener("resize", resizeHandler);
|
|
117
|
+
};
|
|
118
|
+
}, [scrollableRef]);
|
|
119
|
+
useEffect(() => {
|
|
120
|
+
if (scrollableRef.current) {
|
|
121
|
+
setScrollButtonType(getScrollButtonType(scrollableRef.current));
|
|
17
122
|
}
|
|
18
|
-
|
|
19
|
-
|
|
123
|
+
}, [scrollableRef, children]);
|
|
124
|
+
useEffect(() => {
|
|
125
|
+
if (showLeft) {
|
|
126
|
+
if (leftTimeoutRef.current) {
|
|
127
|
+
clearTimeout(leftTimeoutRef.current);
|
|
128
|
+
}
|
|
129
|
+
setIsHiddenDisplay(prev => Object.assign(Object.assign({}, prev), {
|
|
130
|
+
left: false
|
|
131
|
+
}));
|
|
132
|
+
} else {
|
|
133
|
+
leftTimeoutRef.current = window.setTimeout(() => {
|
|
134
|
+
setIsHiddenDisplay(prev => Object.assign(Object.assign({}, prev), {
|
|
135
|
+
left: true
|
|
136
|
+
}));
|
|
137
|
+
}, fadeTransitionDuration);
|
|
20
138
|
}
|
|
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
|
-
timer && window.clearTimeout(timer);
|
|
58
|
-
scrollableElement.removeEventListener("scroll", resizeHandler);
|
|
59
|
-
window.removeEventListener("resize", resizeHandler);
|
|
60
|
-
};
|
|
61
|
-
}, [scrollableRef]);
|
|
62
|
-
useEffect(() => {
|
|
63
|
-
if (scrollableRef.current) {
|
|
64
|
-
setScrollButtonType(getScrollButtonType(scrollableRef.current));
|
|
65
|
-
}
|
|
66
|
-
}, [scrollableRef, children]);
|
|
67
|
-
useEffect(() => {
|
|
68
|
-
if (showLeft) {
|
|
69
|
-
if (leftTimeoutRef.current) {
|
|
70
|
-
clearTimeout(leftTimeoutRef.current);
|
|
71
|
-
}
|
|
72
|
-
setIsHiddenDisplay(prev => (Object.assign(Object.assign({}, prev), { left: false })));
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
leftTimeoutRef.current = window.setTimeout(() => {
|
|
76
|
-
setIsHiddenDisplay(prev => (Object.assign(Object.assign({}, prev), { left: true })));
|
|
77
|
-
}, fadeTransitionDuration);
|
|
78
|
-
}
|
|
79
|
-
if (showRight) {
|
|
80
|
-
if (rightTimeoutRef.current) {
|
|
81
|
-
clearTimeout(rightTimeoutRef.current);
|
|
82
|
-
}
|
|
83
|
-
setIsHiddenDisplay(prev => (Object.assign(Object.assign({}, prev), { right: false })));
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
rightTimeoutRef.current = window.setTimeout(() => {
|
|
87
|
-
setIsHiddenDisplay(prev => (Object.assign(Object.assign({}, prev), { right: true })));
|
|
88
|
-
}, fadeTransitionDuration);
|
|
89
|
-
}
|
|
90
|
-
return () => {
|
|
91
|
-
if (leftTimeoutRef.current) {
|
|
92
|
-
clearTimeout(leftTimeoutRef.current);
|
|
93
|
-
}
|
|
94
|
-
if (rightTimeoutRef.current) {
|
|
95
|
-
clearTimeout(rightTimeoutRef.current);
|
|
96
|
-
}
|
|
97
|
-
};
|
|
98
|
-
}, [showLeft, showRight]);
|
|
99
|
-
const handleScrollButtonClick = useCallback((delta) => () => {
|
|
100
|
-
var _a;
|
|
101
|
-
(_a = scrollableRef.current) === null || _a === void 0 ? void 0 : _a.scrollBy({
|
|
102
|
-
left: delta,
|
|
103
|
-
behavior: "smooth"
|
|
104
|
-
});
|
|
105
|
-
}, []);
|
|
106
|
-
const filtersForRender = Children.map(children, (child, index) => {
|
|
107
|
-
if (child.props.hideInBar) {
|
|
108
|
-
return null;
|
|
109
|
-
}
|
|
110
|
-
const childComponent = cloneElement(child, { useSidePanelView: false });
|
|
111
|
-
return _jsx("div", { className: "zen-filters-toolbar__filters-item", children: childComponent }, `filtersBarItem_${index}`);
|
|
139
|
+
if (showRight) {
|
|
140
|
+
if (rightTimeoutRef.current) {
|
|
141
|
+
clearTimeout(rightTimeoutRef.current);
|
|
142
|
+
}
|
|
143
|
+
setIsHiddenDisplay(prev => Object.assign(Object.assign({}, prev), {
|
|
144
|
+
right: false
|
|
145
|
+
}));
|
|
146
|
+
} else {
|
|
147
|
+
rightTimeoutRef.current = window.setTimeout(() => {
|
|
148
|
+
setIsHiddenDisplay(prev => Object.assign(Object.assign({}, prev), {
|
|
149
|
+
right: true
|
|
150
|
+
}));
|
|
151
|
+
}, fadeTransitionDuration);
|
|
152
|
+
}
|
|
153
|
+
return () => {
|
|
154
|
+
if (leftTimeoutRef.current) {
|
|
155
|
+
clearTimeout(leftTimeoutRef.current);
|
|
156
|
+
}
|
|
157
|
+
if (rightTimeoutRef.current) {
|
|
158
|
+
clearTimeout(rightTimeoutRef.current);
|
|
159
|
+
}
|
|
160
|
+
};
|
|
161
|
+
}, [showLeft, showRight]);
|
|
162
|
+
const handleScrollButtonClick = useCallback(delta => () => {
|
|
163
|
+
var _a;
|
|
164
|
+
(_a = scrollableRef.current) === null || _a === void 0 ? void 0 : _a.scrollBy({
|
|
165
|
+
left: delta,
|
|
166
|
+
behavior: "smooth"
|
|
167
|
+
});
|
|
168
|
+
}, []);
|
|
169
|
+
const filtersForRender = Children.map(children, (child, index) => {
|
|
170
|
+
if (child.props.hideInBar) {
|
|
171
|
+
return null;
|
|
172
|
+
}
|
|
173
|
+
const childComponent = cloneElement(child, {
|
|
174
|
+
useSidePanelView: false
|
|
112
175
|
});
|
|
113
|
-
return
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
176
|
+
return _jsx("div", {
|
|
177
|
+
className: "zen-filters-toolbar__filters-item",
|
|
178
|
+
children: childComponent
|
|
179
|
+
}, `filtersBarItem_${index}`);
|
|
180
|
+
});
|
|
181
|
+
return filtersForRender.length ? _jsxs("div", {
|
|
182
|
+
className: classNames(["zen-filters-toolbar__filters-container", className !== null && className !== void 0 ? className : "", `zen-filters-toolbar__filters-container--${scrollButtonType || "none"}`]),
|
|
183
|
+
children: [_jsx("div", {
|
|
184
|
+
className: classNames([gradientClass, driveClassNameGradient || "", `${gradientClass}--left`, showLeft ? `${gradientClass}--visible` : "", isHiddenDisplay.left ? `${gradientClass}--hidden` : ""])
|
|
185
|
+
}), _jsx(TextIconButton, {
|
|
186
|
+
title: translate("Scroll left"),
|
|
187
|
+
className: classNames(["zen-filters-toolbar__scroller", driveClassNameScroller || "", "zen-filters-toolbar__start", showLeft ? `${scrollerClass}--visible` : "", isHiddenDisplay.left ? `${scrollerClass}--hidden` : ""]),
|
|
188
|
+
icon: IconChevronRight,
|
|
189
|
+
iconPosition: ButtonIconPosition.Start,
|
|
190
|
+
onClick: handleScrollButtonClick(-scrollableStep),
|
|
191
|
+
iconClasses: "zen-filters-toolbar__start-icon"
|
|
192
|
+
}), _jsx("div", {
|
|
193
|
+
ref: scrollableRef,
|
|
194
|
+
className: classNames(["zen-filters-toolbar__scrollable", !isHiddenDisplay.left ? "has-left-scroller" : "", !isHiddenDisplay.right ? "has-right-scroller" : ""]),
|
|
195
|
+
children: _jsx("div", {
|
|
196
|
+
className: "zen-filters-toolbar__filters",
|
|
197
|
+
children: filtersForRender
|
|
198
|
+
})
|
|
199
|
+
}), _jsx("div", {
|
|
200
|
+
className: classNames([gradientClass, driveClassNameGradient || "", `${gradientClass}--right`, showRight ? `${gradientClass}--visible` : "", isHiddenDisplay.right ? `${gradientClass}--hidden` : ""])
|
|
201
|
+
}), _jsx(TextIconButton, {
|
|
202
|
+
title: translate("Scroll right"),
|
|
203
|
+
className: classNames([scrollerClass, driveClassNameScroller || "", "zen-filters-toolbar__end", showRight ? `${scrollerClass}--visible` : "", isHiddenDisplay.right ? `${scrollerClass}--hidden` : ""]),
|
|
204
|
+
icon: IconChevronRight,
|
|
205
|
+
onClick: handleScrollButtonClick(scrollableStep),
|
|
206
|
+
iconPosition: ButtonIconPosition.End
|
|
207
|
+
})]
|
|
208
|
+
}) : null;
|
|
141
209
|
};
|
|
142
|
-
export const TRANSLATIONS = [
|
|
143
|
-
"Scroll left",
|
|
144
|
-
"Scroll right"
|
|
145
|
-
];
|
|
210
|
+
export const TRANSLATIONS = ["Scroll left", "Scroll right"];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const FormFieldWithLabel: ({ hasCustomWidth, classes, widthObj, props, id, container, trailing, trailingId }: {
|
|
1
|
+
export declare const FormFieldWithLabel: ({ hasCustomWidth, classes, widthObj, props, id, container, trailing, trailingId, showAdditionalInfo }: {
|
|
2
2
|
hasCustomWidth: any;
|
|
3
3
|
classes: any;
|
|
4
4
|
widthObj: any;
|
|
@@ -7,4 +7,5 @@ export declare const FormFieldWithLabel: ({ hasCustomWidth, classes, widthObj, p
|
|
|
7
7
|
container: any;
|
|
8
8
|
trailing: any;
|
|
9
9
|
trailingId: any;
|
|
10
|
+
showAdditionalInfo: any;
|
|
10
11
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { FormGroupItem } from "../../formGroupItem/formGroupItem";
|
|
3
|
-
|
|
3
|
+
import { TrailingComponent } from "./trailingComponent";
|
|
4
|
+
export const FormFieldWithLabel = ({ hasCustomWidth, classes, widthObj, props, id, container, trailing, trailingId, showAdditionalInfo }) => {
|
|
4
5
|
if (!hasCustomWidth) {
|
|
5
6
|
return _jsxs("div", { className: classes, style: widthObj, children: [props.label && _jsx(FormGroupItem, { className: props.labelClassesName, id: id, value: props.label, tooltip: props.tooltip }), _jsx("div", { className: props.controlClassesName, children: container })] });
|
|
6
7
|
}
|
|
7
|
-
return _jsxs("div", { style: { display: "flex" }, children: [_jsxs("div", { className: classes, style: widthObj, children: [props.label && _jsx(FormGroupItem, { className: props.labelClassesName, id: id, value: props.label, tooltip: props.tooltip }), _jsx("div", { className: props.controlClassesName, children: container })] }), trailing && _jsx(
|
|
8
|
+
return _jsxs("div", { style: { display: "flex" }, children: [_jsxs("div", { className: classes, style: widthObj, children: [props.label && _jsx(FormGroupItem, { className: props.labelClassesName, id: id, value: props.label, tooltip: props.tooltip }), _jsx("div", { className: props.controlClassesName, children: container })] }), trailing && _jsx(TrailingComponent, { id: trailingId, value: trailing, hasAdditionalInfo: !!showAdditionalInfo })] });
|
|
8
9
|
};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
export declare const FormFieldWithoutLabel: ({ hasCustomWidth, classes, widthObj, container, trailing, trailingId }: {
|
|
1
|
+
export declare const FormFieldWithoutLabel: ({ hasCustomWidth, classes, widthObj, container, trailing, trailingId, showAdditionalInfo }: {
|
|
2
2
|
hasCustomWidth: any;
|
|
3
3
|
classes: any;
|
|
4
4
|
widthObj: any;
|
|
5
5
|
container: any;
|
|
6
6
|
trailing: any;
|
|
7
7
|
trailingId: any;
|
|
8
|
+
showAdditionalInfo: any;
|
|
8
9
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
export const FormFieldWithoutLabel = ({ hasCustomWidth, classes, widthObj, container, trailing, trailingId }) => {
|
|
2
|
+
import { TrailingComponent } from "./trailingComponent";
|
|
3
|
+
export const FormFieldWithoutLabel = ({ hasCustomWidth, classes, widthObj, container, trailing, trailingId, showAdditionalInfo }) => {
|
|
4
4
|
if (!hasCustomWidth) {
|
|
5
5
|
return _jsx("div", { className: classes, style: widthObj, children: container });
|
|
6
6
|
}
|
|
7
|
-
return _jsxs("div", { style: { display: "flex", gap: "8px" }, children: [_jsx("div", { className: classes, style: widthObj, children: container }), trailing && _jsx(
|
|
7
|
+
return _jsxs("div", { style: { display: "flex", gap: "8px" }, children: [_jsx("div", { className: classes, style: widthObj, children: container }), trailing && _jsx(TrailingComponent, { id: trailingId, value: trailing, hasAdditionalInfo: !!showAdditionalInfo })] });
|
|
8
8
|
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
export const TrailingComponent = ({ id, value, hasAdditionalInfo }) => {
|
|
3
|
+
if (hasAdditionalInfo) {
|
|
4
|
+
return _jsx("div", { className: "zen-form-field__trailing-wrapper", children: _jsx("span", { className: "zen-form-field__trailing-text", id: id, children: value }) });
|
|
5
|
+
}
|
|
6
|
+
return _jsx("span", { className: "zen-form-field__trailing-text", id: id, children: value });
|
|
7
|
+
};
|
|
@@ -30,6 +30,7 @@ import { useLoading } from "./hooks/useLoading";
|
|
|
30
30
|
import { useReadonly } from "./hooks/useReadonly";
|
|
31
31
|
import { FormFieldWithLabel } from "./components/formFieldWithLabel";
|
|
32
32
|
import { FormFieldWithoutLabel } from "./components/formFieldWithoutLabel";
|
|
33
|
+
import { TrailingComponent } from "./components/trailingComponent";
|
|
33
34
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
34
35
|
export const FormField = function FormFieldInner(WrappedComponent) {
|
|
35
36
|
// eslint-disable-next-line complexity
|
|
@@ -56,15 +57,15 @@ export const FormField = function FormFieldInner(WrappedComponent) {
|
|
|
56
57
|
const ariaDescribedBy = `${assistiveId} ${trailingId} ${errorId} ${bannerId}`.trim();
|
|
57
58
|
const localId = useId();
|
|
58
59
|
const id = props.id || localId;
|
|
59
|
-
const container = useMemo(() => _jsxs(_Fragment, { children: [_jsxs("div", { className: classNames(["zen-form-field__input-container", isReadonly ? "zen-form-field__input-container--review" : "", isInputContainerHidden ? "zen-form-field__input-container--hidden" : "", trailing ? "zen-form-field__input-container--with-trailing" : ""]), children: [_jsx(WrappedComponent, Object.assign({}, rest, disabledProps, { isReadOnly: isReadonly, id: id, className: componentClassName, ref: ref, isLoadingError: props.isError, isError: !!error, "aria-describedby": ariaDescribedBy })),
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
60
|
+
const container = useMemo(() => _jsxs(_Fragment, { children: [_jsxs("div", { className: classNames(["zen-form-field__input-container", isReadonly ? "zen-form-field__input-container--review" : "", isInputContainerHidden ? "zen-form-field__input-container--hidden" : "", trailing ? "zen-form-field__input-container--with-trailing" : ""]), children: [_jsxs("div", { children: [_jsx(WrappedComponent, Object.assign({}, rest, disabledProps, { isReadOnly: isReadonly, id: id, className: componentClassName, ref: ref, isLoadingError: props.isError, isError: !!error, "aria-describedby": ariaDescribedBy })), showAdditionalInfo ?
|
|
61
|
+
_jsxs("div", { className: "zen-form-field__secondary", children: [_jsx("div", { id: assistiveId || errorId, className: classNames([
|
|
62
|
+
"zen-form-field__text",
|
|
63
|
+
driveTextClass || "",
|
|
64
|
+
error ? "zen-form-field__text--error" : ""
|
|
65
|
+
]), children: error ? _jsx(FormFieldError, { error: error }) : assistive }), counter
|
|
66
|
+
? _jsx("div", { className: classNames(["zen-form-field__length"]), children: counter })
|
|
67
|
+
: ""] })
|
|
68
|
+
: null] }), !hasCustomWidth && trailing && _jsx(TrailingComponent, { id: trailingId, value: trailing, hasAdditionalInfo: !!showAdditionalInfo })] }), banner] }), [isInputContainerHidden, trailing, rest, disabledProps, isReadonly, id, componentClassName, ref, props.isError, error, ariaDescribedBy, hasCustomWidth, trailingId, showAdditionalInfo, assistiveId, errorId, driveTextClass, assistive, counter, banner]);
|
|
68
69
|
const classes = classNames([
|
|
69
70
|
"zen-form-field",
|
|
70
71
|
isMobile ? "zen-form-field--mobile" : "",
|
|
@@ -78,9 +79,9 @@ export const FormField = function FormFieldInner(WrappedComponent) {
|
|
|
78
79
|
}
|
|
79
80
|
// TODO: refactor?
|
|
80
81
|
if (props.label && rangeRawLabelCheck(WrappedComponent, props)) {
|
|
81
|
-
return _jsx(FormFieldWithLabel, { hasCustomWidth: hasCustomWidth, classes: classes, widthObj: widthObj, props: props, id: id, container: container, trailing: trailing, trailingId: trailingId });
|
|
82
|
+
return _jsx(FormFieldWithLabel, { hasCustomWidth: hasCustomWidth, classes: classes, widthObj: widthObj, props: props, id: id, container: container, trailing: trailing, trailingId: trailingId, showAdditionalInfo: !!showAdditionalInfo });
|
|
82
83
|
}
|
|
83
|
-
return _jsx(FormFieldWithoutLabel, { hasCustomWidth: hasCustomWidth, classes: classes, widthObj: widthObj, container: container, trailing: trailing, trailingId: trailingId });
|
|
84
|
+
return _jsx(FormFieldWithoutLabel, { hasCustomWidth: hasCustomWidth, classes: classes, widthObj: widthObj, container: container, trailing: trailing, trailingId: trailingId, showAdditionalInfo: !!showAdditionalInfo });
|
|
84
85
|
};
|
|
85
86
|
InnerFormField.displayName = "InnerFormField";
|
|
86
87
|
return InnerFormField;
|
|
@@ -1,45 +1,104 @@
|
|
|
1
|
+
import { injectString } from "../../utils/localization/translationsDictionary";
|
|
1
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
3
|
import { useId } from "react";
|
|
3
4
|
import { useFormField } from "../../commonHelpers/hooks/useFormField";
|
|
4
5
|
import { useLanguage } from "../../utils/localization/useLanguage";
|
|
5
6
|
import { FormFieldBanner } from "../components/formFieldBanner";
|
|
6
7
|
import { hasErrorProps } from "../../commonHelpers/loading";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
8
|
+
injectString("cs", "Reload", "Na\u010D\xEDst znovu");
|
|
9
|
+
injectString("da-DK", "Reload", "Genindl\xE6s");
|
|
10
|
+
injectString("de", "Reload", "Neu laden");
|
|
11
|
+
injectString("en", "Reload", "Reload");
|
|
12
|
+
injectString("es", "Reload", "Volver a cargar");
|
|
13
|
+
injectString("fi-FI", "Reload", "Ladata uudelleen");
|
|
14
|
+
injectString("fr", "Reload", "Recharger");
|
|
15
|
+
injectString("fr-FR", "Reload", "Actualiser");
|
|
16
|
+
injectString("hu-HU", "Reload", "\xDAjrat\xF6lt\xE9s");
|
|
17
|
+
injectString("id", "Reload", "Muat ulang");
|
|
18
|
+
injectString("it", "Reload", "Ricarica");
|
|
19
|
+
injectString("ja", "Reload", "\u518D\u8AAD\u8FBC");
|
|
20
|
+
injectString("ko-KR", "Reload", "\uB2E4\uC2DC \uBD88\uB7EC\uC624\uAE30");
|
|
21
|
+
injectString("ms", "Reload", "Muatkan semula");
|
|
22
|
+
injectString("nb-NO", "Reload", "Last inn p\xE5 nytt");
|
|
23
|
+
injectString("nl", "Reload", "Herladen");
|
|
24
|
+
injectString("pl", "Reload", "Od\u015Bwie\u017C");
|
|
25
|
+
injectString("pt-BR", "Reload", "Recarregar");
|
|
26
|
+
injectString("sk-SK", "Reload", "Obnovi\u0165");
|
|
27
|
+
injectString("sv", "Reload", "Ladda igen");
|
|
28
|
+
injectString("th", "Reload", "\u0E42\u0E2B\u0E25\u0E14\u0E2D\u0E35\u0E01\u0E04\u0E23\u0E31\u0E49\u0E07");
|
|
29
|
+
injectString("tr", "Reload", "Yeniden y\xFCkle");
|
|
30
|
+
injectString("zh-Hans", "Reload", "\u91CD\u65B0\u52A0\u8F7D");
|
|
31
|
+
injectString("zh-TW", "Reload", "\u91CD\u65B0\u8F09\u5165");
|
|
32
|
+
injectString("en", "Failed to load {0}", "Failed to load {0}");
|
|
33
|
+
injectString("cs", "This field is required.", "Toto pole je povinn\xE9.");
|
|
34
|
+
injectString("da-DK", "This field is required.", "Dette felt er p\xE5kr\xE6vet.");
|
|
35
|
+
injectString("de", "This field is required.", "Dieses Feld ist erforderlich.");
|
|
36
|
+
injectString("en", "This field is required.", "This field is required.");
|
|
37
|
+
injectString("es", "This field is required.", "Este campo es obligatorio.");
|
|
38
|
+
injectString("fi-FI", "This field is required.", "T\xE4m\xE4 kentt\xE4 on pakollinen.");
|
|
39
|
+
injectString("fr", "This field is required.", "Ce champ est obligatoire.");
|
|
40
|
+
injectString("fr-FR", "This field is required.", "Ce champ est requis.");
|
|
41
|
+
injectString("hu-HU", "This field is required.", "Ez a mez\u0151 k\xF6telez\u0151.");
|
|
42
|
+
injectString("id", "This field is required.", "Bidang ini harus diisi.");
|
|
43
|
+
injectString("it", "This field is required.", "Questo campo \xE8 obbligatorio.");
|
|
44
|
+
injectString("ja", "This field is required.", "\u3053\u306E\u30D5\u30A3\u30FC\u30EB\u30C9\u306F\u5FC5\u9808\u3067\u3059\u3002");
|
|
45
|
+
injectString("ko-KR", "This field is required.", "\uC774 \uD544\uB4DC\uB294 \uD544\uC218\uC785\uB2C8\uB2E4.");
|
|
46
|
+
injectString("ms", "This field is required.", "Medan ini diperlukan.");
|
|
47
|
+
injectString("nb-NO", "This field is required.", "Dette feltet er p\xE5krevd.");
|
|
48
|
+
injectString("nl", "This field is required.", "Dit veld is verplicht.");
|
|
49
|
+
injectString("pl", "This field is required.", "To pole jest wymagane.");
|
|
50
|
+
injectString("pt-BR", "This field is required.", "Este campo \xE9 obrigat\xF3rio.");
|
|
51
|
+
injectString("sk-SK", "This field is required.", "Toto pole je povinn\xE9.");
|
|
52
|
+
injectString("sv", "This field is required.", "Det h\xE4r f\xE4ltet \xE4r obligatoriskt.");
|
|
53
|
+
injectString("th", "This field is required.", "\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E2A\u0E48\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E43\u0E19\u0E1F\u0E34\u0E25\u0E14\u0E4C\u0E19\u0E35\u0E49");
|
|
54
|
+
injectString("tr", "This field is required.", "Bu alan zorunludur.");
|
|
55
|
+
injectString("zh-Hans", "This field is required.", "\u8BE5\u5B57\u6BB5\u4E3A\u5FC5\u586B\u9879\u3002");
|
|
56
|
+
injectString("zh-TW", "This field is required.", "\u6B64\u6B04\u4F4D\u70BA\u5FC5\u586B\u3002");
|
|
57
|
+
export const useError = props => {
|
|
58
|
+
var _a, _b, _c, _d;
|
|
59
|
+
const errorId = useId();
|
|
60
|
+
const {
|
|
61
|
+
fieldState
|
|
62
|
+
} = useFormField(props.controller);
|
|
63
|
+
const {
|
|
64
|
+
translate
|
|
65
|
+
} = useLanguage();
|
|
66
|
+
if (hasErrorProps(props)) {
|
|
67
|
+
const action = props.retry ? {
|
|
68
|
+
text: translate("Reload"),
|
|
69
|
+
onClick: props.retry
|
|
70
|
+
} : undefined;
|
|
71
|
+
return {
|
|
72
|
+
id: errorId,
|
|
73
|
+
errorBanner: _jsx(FormFieldBanner, {
|
|
74
|
+
multiline: false,
|
|
75
|
+
action: action,
|
|
76
|
+
type: "error",
|
|
77
|
+
children: translate("Failed to load {0}").replace("{0}", props.bannerLabel || "")
|
|
78
|
+
})
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
if (!props.error && !((_a = fieldState === null || fieldState === void 0 ? void 0 : fieldState.error) === null || _a === void 0 ? void 0 : _a.message) || props.isReadOnly) {
|
|
82
|
+
if (props.isReadOnly) {
|
|
83
|
+
return {
|
|
84
|
+
id: "",
|
|
85
|
+
error: null
|
|
86
|
+
};
|
|
21
87
|
}
|
|
22
|
-
if ((
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
if (!((_b = fieldState === null || fieldState === void 0 ? void 0 : fieldState.error) === null || _b === void 0 ? void 0 : _b.message) && ((_c = fieldState === null || fieldState === void 0 ? void 0 : fieldState.error) === null || _c === void 0 ? void 0 : _c.type) === "required") {
|
|
30
|
-
return {
|
|
31
|
-
id: errorId,
|
|
32
|
-
error: translate("This field is required.")
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
return {
|
|
36
|
-
id: "",
|
|
37
|
-
error: null
|
|
38
|
-
};
|
|
88
|
+
if (!((_b = fieldState === null || fieldState === void 0 ? void 0 : fieldState.error) === null || _b === void 0 ? void 0 : _b.message) && ((_c = fieldState === null || fieldState === void 0 ? void 0 : fieldState.error) === null || _c === void 0 ? void 0 : _c.type) === "required") {
|
|
89
|
+
return {
|
|
90
|
+
id: errorId,
|
|
91
|
+
error: translate("This field is required.")
|
|
92
|
+
};
|
|
39
93
|
}
|
|
40
|
-
const error = ((_d = fieldState === null || fieldState === void 0 ? void 0 : fieldState.error) === null || _d === void 0 ? void 0 : _d.message) || props.error;
|
|
41
94
|
return {
|
|
42
|
-
|
|
43
|
-
|
|
95
|
+
id: "",
|
|
96
|
+
error: null
|
|
44
97
|
};
|
|
45
|
-
}
|
|
98
|
+
}
|
|
99
|
+
const error = ((_d = fieldState === null || fieldState === void 0 ? void 0 : fieldState.error) === null || _d === void 0 ? void 0 : _d.message) || props.error;
|
|
100
|
+
return {
|
|
101
|
+
id: error ? errorId : "",
|
|
102
|
+
error
|
|
103
|
+
};
|
|
104
|
+
};
|