@portnet/ui 5.0.32 → 6.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +524 -0
- package/README.md +101 -38
- package/dist/esm/index.js +196 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/v2/__tests__/FieldError.test.js +160 -0
- package/dist/esm/v2/__tests__/FieldError.test.js.map +1 -0
- package/dist/esm/v2/__tests__/FileCard.test.js +144 -0
- package/dist/esm/v2/__tests__/FileCard.test.js.map +1 -0
- package/dist/esm/v2/__tests__/MobileRowCard.test.js +333 -0
- package/dist/esm/v2/__tests__/MobileRowCard.test.js.map +1 -0
- package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js +235 -0
- package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js.map +1 -0
- package/dist/esm/v2/__tests__/apiError.test.js +181 -0
- package/dist/esm/v2/__tests__/apiError.test.js.map +1 -0
- package/dist/esm/v2/__tests__/banned-patterns.test.js +270 -0
- package/dist/esm/v2/__tests__/banned-patterns.test.js.map +1 -0
- package/dist/esm/v2/__tests__/contrast-palette.test.js +224 -0
- package/dist/esm/v2/__tests__/contrast-palette.test.js.map +1 -0
- package/dist/esm/v2/__tests__/cssVariables.test.js +157 -0
- package/dist/esm/v2/__tests__/cssVariables.test.js.map +1 -0
- package/dist/esm/v2/__tests__/labels-merge.test.js +147 -0
- package/dist/esm/v2/__tests__/labels-merge.test.js.map +1 -0
- package/dist/esm/v2/__tests__/locale-fallback.test.js +109 -0
- package/dist/esm/v2/__tests__/locale-fallback.test.js.map +1 -0
- package/dist/esm/v2/__tests__/useFocusTrap.test.js +514 -0
- package/dist/esm/v2/__tests__/useFocusTrap.test.js.map +1 -0
- package/dist/esm/v2/components/Accordion.js +230 -0
- package/dist/esm/v2/components/Accordion.js.map +1 -0
- package/dist/esm/v2/components/ActionStrip.js +146 -0
- package/dist/esm/v2/components/ActionStrip.js.map +1 -0
- package/dist/esm/v2/components/Banner.js +254 -0
- package/dist/esm/v2/components/Banner.js.map +1 -0
- package/dist/esm/v2/components/Busy.js +97 -0
- package/dist/esm/v2/components/Busy.js.map +1 -0
- package/dist/esm/v2/components/Button.js +114 -0
- package/dist/esm/v2/components/Button.js.map +1 -0
- package/dist/esm/v2/components/CategoryTag.js +81 -0
- package/dist/esm/v2/components/CategoryTag.js.map +1 -0
- package/dist/esm/v2/components/Checkbox.js +124 -0
- package/dist/esm/v2/components/Checkbox.js.map +1 -0
- package/dist/esm/v2/components/Chip.js +124 -0
- package/dist/esm/v2/components/Chip.js.map +1 -0
- package/dist/esm/v2/components/Combobox.js +394 -0
- package/dist/esm/v2/components/Combobox.js.map +1 -0
- package/dist/esm/v2/components/CommandPalette.js +660 -0
- package/dist/esm/v2/components/CommandPalette.js.map +1 -0
- package/dist/esm/v2/components/ConfirmDialog.js +144 -0
- package/dist/esm/v2/components/ConfirmDialog.js.map +1 -0
- package/dist/esm/v2/components/DatePicker.js +200 -0
- package/dist/esm/v2/components/DatePicker.js.map +1 -0
- package/dist/esm/v2/components/DateRangePicker.js +289 -0
- package/dist/esm/v2/components/DateRangePicker.js.map +1 -0
- package/dist/esm/v2/components/DateTimePicker.js +182 -0
- package/dist/esm/v2/components/DateTimePicker.js.map +1 -0
- package/dist/esm/v2/components/Drawer.js +333 -0
- package/dist/esm/v2/components/Drawer.js.map +1 -0
- package/dist/esm/v2/components/Dropzone.js +540 -0
- package/dist/esm/v2/components/Dropzone.js.map +1 -0
- package/dist/esm/v2/components/EmptyState.js +102 -0
- package/dist/esm/v2/components/EmptyState.js.map +1 -0
- package/dist/esm/v2/components/FavoriteToggle.js +127 -0
- package/dist/esm/v2/components/FavoriteToggle.js.map +1 -0
- package/dist/esm/v2/components/Field.js +197 -0
- package/dist/esm/v2/components/Field.js.map +1 -0
- package/dist/esm/v2/components/FieldError.js +124 -0
- package/dist/esm/v2/components/FieldError.js.map +1 -0
- package/dist/esm/v2/components/FieldHelp.js +202 -0
- package/dist/esm/v2/components/FieldHelp.js.map +1 -0
- package/dist/esm/v2/components/FileCard.js +162 -0
- package/dist/esm/v2/components/FileCard.js.map +1 -0
- package/dist/esm/v2/components/FilterTab.js +138 -0
- package/dist/esm/v2/components/FilterTab.js.map +1 -0
- package/dist/esm/v2/components/ForbiddenPage.js +74 -0
- package/dist/esm/v2/components/ForbiddenPage.js.map +1 -0
- package/dist/esm/v2/components/FormGrid.js +179 -0
- package/dist/esm/v2/components/FormGrid.js.map +1 -0
- package/dist/esm/v2/components/FormikDisplay.js +118 -0
- package/dist/esm/v2/components/FormikDisplay.js.map +1 -0
- package/dist/esm/v2/components/Input.js +107 -0
- package/dist/esm/v2/components/Input.js.map +1 -0
- package/dist/esm/v2/components/KPICard.js +237 -0
- package/dist/esm/v2/components/KPICard.js.map +1 -0
- package/dist/esm/v2/components/KPIStrip.js +84 -0
- package/dist/esm/v2/components/KPIStrip.js.map +1 -0
- package/dist/esm/v2/components/KV.js +75 -0
- package/dist/esm/v2/components/KV.js.map +1 -0
- package/dist/esm/v2/components/KVGrid.js +74 -0
- package/dist/esm/v2/components/KVGrid.js.map +1 -0
- package/dist/esm/v2/components/Layout.js +284 -0
- package/dist/esm/v2/components/Layout.js.map +1 -0
- package/dist/esm/v2/components/MobileRowCard.js +314 -0
- package/dist/esm/v2/components/MobileRowCard.js.map +1 -0
- package/dist/esm/v2/components/Modal.js +276 -0
- package/dist/esm/v2/components/Modal.js.map +1 -0
- package/dist/esm/v2/components/NetworkErrorPage.js +78 -0
- package/dist/esm/v2/components/NetworkErrorPage.js.map +1 -0
- package/dist/esm/v2/components/NotFoundPage.js +58 -0
- package/dist/esm/v2/components/NotFoundPage.js.map +1 -0
- package/dist/esm/v2/components/NumberInput.js +309 -0
- package/dist/esm/v2/components/NumberInput.js.map +1 -0
- package/dist/esm/v2/components/OverflowMenu.js +184 -0
- package/dist/esm/v2/components/OverflowMenu.js.map +1 -0
- package/dist/esm/v2/components/PdfViewer.js +122 -0
- package/dist/esm/v2/components/PdfViewer.js.map +1 -0
- package/dist/esm/v2/components/ProgressBar.js +202 -0
- package/dist/esm/v2/components/ProgressBar.js.map +1 -0
- package/dist/esm/v2/components/Radio.js +228 -0
- package/dist/esm/v2/components/Radio.js.map +1 -0
- package/dist/esm/v2/components/SectionErrorBoundary.js +214 -0
- package/dist/esm/v2/components/SectionErrorBoundary.js.map +1 -0
- package/dist/esm/v2/components/SectionHeader.js +132 -0
- package/dist/esm/v2/components/SectionHeader.js.map +1 -0
- package/dist/esm/v2/components/Segmented.js +254 -0
- package/dist/esm/v2/components/Segmented.js.map +1 -0
- package/dist/esm/v2/components/Select.js +490 -0
- package/dist/esm/v2/components/Select.js.map +1 -0
- package/dist/esm/v2/components/ServerErrorPage.js +74 -0
- package/dist/esm/v2/components/ServerErrorPage.js.map +1 -0
- package/dist/esm/v2/components/Skeleton.js +269 -0
- package/dist/esm/v2/components/Skeleton.js.map +1 -0
- package/dist/esm/v2/components/SkipLink.js +49 -0
- package/dist/esm/v2/components/SkipLink.js.map +1 -0
- package/dist/esm/v2/components/Spinner.js +69 -0
- package/dist/esm/v2/components/Spinner.js.map +1 -0
- package/dist/esm/v2/components/Status.js +64 -0
- package/dist/esm/v2/components/Status.js.map +1 -0
- package/dist/esm/v2/components/Stepper.js +432 -0
- package/dist/esm/v2/components/Stepper.js.map +1 -0
- package/dist/esm/v2/components/Surface.js +159 -0
- package/dist/esm/v2/components/Surface.js.map +1 -0
- package/dist/esm/v2/components/Switch.js +128 -0
- package/dist/esm/v2/components/Switch.js.map +1 -0
- package/dist/esm/v2/components/Tabs.js +150 -0
- package/dist/esm/v2/components/Tabs.js.map +1 -0
- package/dist/esm/v2/components/TelInput.js +274 -0
- package/dist/esm/v2/components/TelInput.js.map +1 -0
- package/dist/esm/v2/components/Textarea.js +72 -0
- package/dist/esm/v2/components/Textarea.js.map +1 -0
- package/dist/esm/v2/components/TimePicker.js +134 -0
- package/dist/esm/v2/components/TimePicker.js.map +1 -0
- package/dist/esm/v2/components/Toast.js +376 -0
- package/dist/esm/v2/components/Toast.js.map +1 -0
- package/dist/esm/v2/components/Tooltip.js +161 -0
- package/dist/esm/v2/components/Tooltip.js.map +1 -0
- package/dist/esm/v2/components/_ErrorPageBody.js +85 -0
- package/dist/esm/v2/components/_ErrorPageBody.js.map +1 -0
- package/dist/esm/v2/components/_pickerShared.js +60 -0
- package/dist/esm/v2/components/_pickerShared.js.map +1 -0
- package/dist/esm/v2/components/index.js +244 -0
- package/dist/esm/v2/components/index.js.map +1 -0
- package/dist/esm/v2/hooks/index.js +10 -0
- package/dist/esm/v2/hooks/index.js.map +1 -0
- package/dist/esm/v2/hooks/useDelayedFlag.js +55 -0
- package/dist/esm/v2/hooks/useDelayedFlag.js.map +1 -0
- package/dist/esm/v2/hooks/useDensity.js +119 -0
- package/dist/esm/v2/hooks/useDensity.js.map +1 -0
- package/dist/esm/v2/hooks/useFocusFirstError.js +197 -0
- package/dist/esm/v2/hooks/useFocusFirstError.js.map +1 -0
- package/dist/esm/v2/hooks/useFocusTrap.js +202 -0
- package/dist/esm/v2/hooks/useFocusTrap.js.map +1 -0
- package/dist/esm/v2/hooks/useFormAutoSave.js +181 -0
- package/dist/esm/v2/hooks/useFormAutoSave.js.map +1 -0
- package/dist/esm/v2/hooks/useFormCompletionProgress.js +131 -0
- package/dist/esm/v2/hooks/useFormCompletionProgress.js.map +1 -0
- package/dist/esm/v2/hooks/useResolvedDensity.js +44 -0
- package/dist/esm/v2/hooks/useResolvedDensity.js.map +1 -0
- package/dist/esm/v2/hooks/useSortedRows.js +32 -0
- package/dist/esm/v2/hooks/useSortedRows.js.map +1 -0
- package/dist/esm/v2/hooks/useTabLoading.js +79 -0
- package/dist/esm/v2/hooks/useTabLoading.js.map +1 -0
- package/dist/esm/v2/index.js +121 -0
- package/dist/esm/v2/index.js.map +1 -0
- package/dist/esm/v2/modalContext.js +108 -0
- package/dist/esm/v2/modalContext.js.map +1 -0
- package/dist/esm/v2/models/favorite.js +2 -0
- package/dist/esm/v2/models/favorite.js.map +1 -0
- package/dist/esm/v2/models/index.js +12 -0
- package/dist/esm/v2/models/index.js.map +1 -0
- package/dist/esm/v2/models/personalization.js +2 -0
- package/dist/esm/v2/models/personalization.js.map +1 -0
- package/dist/esm/v2/models/referentiel.js +2 -0
- package/dist/esm/v2/models/referentiel.js.map +1 -0
- package/dist/esm/v2/models/savedFilter.js +2 -0
- package/dist/esm/v2/models/savedFilter.js.map +1 -0
- package/dist/esm/v2/patterns/ActionBar.js +603 -0
- package/dist/esm/v2/patterns/ActionBar.js.map +1 -0
- package/dist/esm/v2/patterns/BulkActionBar.js +147 -0
- package/dist/esm/v2/patterns/BulkActionBar.js.map +1 -0
- package/dist/esm/v2/patterns/CollapsibleDataGrid.js +303 -0
- package/dist/esm/v2/patterns/CollapsibleDataGrid.js.map +1 -0
- package/dist/esm/v2/patterns/ColumnsToggle.js +301 -0
- package/dist/esm/v2/patterns/ColumnsToggle.js.map +1 -0
- package/dist/esm/v2/patterns/DataGrid.js +820 -0
- package/dist/esm/v2/patterns/DataGrid.js.map +1 -0
- package/dist/esm/v2/patterns/DataGridSettingsMenu.js +375 -0
- package/dist/esm/v2/patterns/DataGridSettingsMenu.js.map +1 -0
- package/dist/esm/v2/patterns/DataGridToolbar.js +249 -0
- package/dist/esm/v2/patterns/DataGridToolbar.js.map +1 -0
- package/dist/esm/v2/patterns/DataGridVirtualized.js +523 -0
- package/dist/esm/v2/patterns/DataGridVirtualized.js.map +1 -0
- package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js +70 -0
- package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -0
- package/dist/esm/v2/patterns/FavoriteColumn.js +164 -0
- package/dist/esm/v2/patterns/FavoriteColumn.js.map +1 -0
- package/dist/esm/v2/patterns/FavoritesFilter.js +91 -0
- package/dist/esm/v2/patterns/FavoritesFilter.js.map +1 -0
- package/dist/esm/v2/patterns/FormErrorSummary.js +101 -0
- package/dist/esm/v2/patterns/FormErrorSummary.js.map +1 -0
- package/dist/esm/v2/patterns/FormPageShell.js +126 -0
- package/dist/esm/v2/patterns/FormPageShell.js.map +1 -0
- package/dist/esm/v2/patterns/FormSection.js +190 -0
- package/dist/esm/v2/patterns/FormSection.js.map +1 -0
- package/dist/esm/v2/patterns/FormikCheckboxGroup.js +110 -0
- package/dist/esm/v2/patterns/FormikCheckboxGroup.js.map +1 -0
- package/dist/esm/v2/patterns/FormikCombobox.js +115 -0
- package/dist/esm/v2/patterns/FormikCombobox.js.map +1 -0
- package/dist/esm/v2/patterns/FormikDatePicker.js +196 -0
- package/dist/esm/v2/patterns/FormikDatePicker.js.map +1 -0
- package/dist/esm/v2/patterns/FormikErrorFocus.js +77 -0
- package/dist/esm/v2/patterns/FormikErrorFocus.js.map +1 -0
- package/dist/esm/v2/patterns/FormikFile.js +148 -0
- package/dist/esm/v2/patterns/FormikFile.js.map +1 -0
- package/dist/esm/v2/patterns/FormikInput.js +127 -0
- package/dist/esm/v2/patterns/FormikInput.js.map +1 -0
- package/dist/esm/v2/patterns/FormikReferentielField.js +116 -0
- package/dist/esm/v2/patterns/FormikReferentielField.js.map +1 -0
- package/dist/esm/v2/patterns/FormikSelect.js +159 -0
- package/dist/esm/v2/patterns/FormikSelect.js.map +1 -0
- package/dist/esm/v2/patterns/FormikTextarea.js +76 -0
- package/dist/esm/v2/patterns/FormikTextarea.js.map +1 -0
- package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js +195 -0
- package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js.map +1 -0
- package/dist/esm/v2/patterns/NetworkErrorBanner.js +72 -0
- package/dist/esm/v2/patterns/NetworkErrorBanner.js.map +1 -0
- package/dist/esm/v2/patterns/PageContent.js +62 -0
- package/dist/esm/v2/patterns/PageContent.js.map +1 -0
- package/dist/esm/v2/patterns/ReferentielField.js +615 -0
- package/dist/esm/v2/patterns/ReferentielField.js.map +1 -0
- package/dist/esm/v2/patterns/SaveFilterDialog.js +197 -0
- package/dist/esm/v2/patterns/SaveFilterDialog.js.map +1 -0
- package/dist/esm/v2/patterns/SavedFiltersMenu.js +406 -0
- package/dist/esm/v2/patterns/SavedFiltersMenu.js.map +1 -0
- package/dist/esm/v2/patterns/SkeletonPageShell.js +342 -0
- package/dist/esm/v2/patterns/SkeletonPageShell.js.map +1 -0
- package/dist/esm/v2/patterns/SortableHeader.js +179 -0
- package/dist/esm/v2/patterns/SortableHeader.js.map +1 -0
- package/dist/esm/v2/patterns/Tour.js +471 -0
- package/dist/esm/v2/patterns/Tour.js.map +1 -0
- package/dist/esm/v2/patterns/_dataGridShared.js +431 -0
- package/dist/esm/v2/patterns/_dataGridShared.js.map +1 -0
- package/dist/esm/v2/patterns/_sort.js +112 -0
- package/dist/esm/v2/patterns/_sort.js.map +1 -0
- package/dist/esm/v2/patterns/_useColumnReorder.js +257 -0
- package/dist/esm/v2/patterns/_useColumnReorder.js.map +1 -0
- package/dist/esm/v2/patterns/_useColumnResize.js +191 -0
- package/dist/esm/v2/patterns/_useColumnResize.js.map +1 -0
- package/dist/esm/v2/patterns/index.js +95 -0
- package/dist/esm/v2/patterns/index.js.map +1 -0
- package/dist/esm/v2/personalization/PersonalizationProvider.js +168 -0
- package/dist/esm/v2/personalization/PersonalizationProvider.js.map +1 -0
- package/dist/esm/v2/personalization/adapters/_storageKey.js +60 -0
- package/dist/esm/v2/personalization/adapters/_storageKey.js.map +1 -0
- package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js +124 -0
- package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -0
- package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js +70 -0
- package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js.map +1 -0
- package/dist/esm/v2/personalization/adapters/index.js +11 -0
- package/dist/esm/v2/personalization/adapters/index.js.map +1 -0
- package/dist/esm/v2/personalization/capabilities/favorites.js +216 -0
- package/dist/esm/v2/personalization/capabilities/favorites.js.map +1 -0
- package/dist/esm/v2/personalization/capabilities/favoritesView.js +111 -0
- package/dist/esm/v2/personalization/capabilities/favoritesView.js.map +1 -0
- package/dist/esm/v2/personalization/capabilities/index.js +17 -0
- package/dist/esm/v2/personalization/capabilities/index.js.map +1 -0
- package/dist/esm/v2/personalization/capabilities/savedFilters.js +291 -0
- package/dist/esm/v2/personalization/capabilities/savedFilters.js.map +1 -0
- package/dist/esm/v2/personalization/createPersonalizationStore.js +472 -0
- package/dist/esm/v2/personalization/createPersonalizationStore.js.map +1 -0
- package/dist/esm/v2/personalization/index.js +46 -0
- package/dist/esm/v2/personalization/index.js.map +1 -0
- package/dist/esm/v2/personalization/personalizationContext.js +108 -0
- package/dist/esm/v2/personalization/personalizationContext.js.map +1 -0
- package/dist/esm/v2/personalization/schema.js +92 -0
- package/dist/esm/v2/personalization/schema.js.map +1 -0
- package/dist/esm/v2/personalization/types.js +2 -0
- package/dist/esm/v2/personalization/types.js.map +1 -0
- package/dist/esm/v2/referentiel/ReferentielProvider.js +87 -0
- package/dist/esm/v2/referentiel/ReferentielProvider.js.map +1 -0
- package/dist/esm/v2/referentiel/index.js +15 -0
- package/dist/esm/v2/referentiel/index.js.map +1 -0
- package/dist/esm/v2/referentiel/useReferentielClient.js +37 -0
- package/dist/esm/v2/referentiel/useReferentielClient.js.map +1 -0
- package/dist/esm/v2/referentiel/useReferentielOptions.js +169 -0
- package/dist/esm/v2/referentiel/useReferentielOptions.js.map +1 -0
- package/dist/esm/v2/referentiel/useReferentielSearch.js +132 -0
- package/dist/esm/v2/referentiel/useReferentielSearch.js.map +1 -0
- package/dist/esm/v2/styles/base.css +425 -0
- package/dist/esm/v2/styles/css.d.ts +10 -0
- package/dist/esm/v2/styles/index.js +12 -0
- package/dist/esm/v2/styles/index.js.map +1 -0
- package/dist/esm/v2/theme/_brand.js +64 -0
- package/dist/esm/v2/theme/_brand.js.map +1 -0
- package/dist/esm/v2/theme/_brandSecondary.js +60 -0
- package/dist/esm/v2/theme/_brandSecondary.js.map +1 -0
- package/dist/esm/v2/theme/createPortnetTheme.js +548 -0
- package/dist/esm/v2/theme/createPortnetTheme.js.map +1 -0
- package/dist/esm/v2/theme/cssVariables.js +198 -0
- package/dist/esm/v2/theme/cssVariables.js.map +1 -0
- package/dist/esm/v2/theme/index.js +32 -0
- package/dist/esm/v2/theme/index.js.map +1 -0
- package/dist/esm/v2/tokens/breakpoints.js +106 -0
- package/dist/esm/v2/tokens/breakpoints.js.map +1 -0
- package/dist/esm/v2/tokens/colors.js +219 -0
- package/dist/esm/v2/tokens/colors.js.map +1 -0
- package/dist/esm/v2/tokens/density.js +98 -0
- package/dist/esm/v2/tokens/density.js.map +1 -0
- package/dist/esm/v2/tokens/index.js +80 -0
- package/dist/esm/v2/tokens/index.js.map +1 -0
- package/dist/esm/v2/tokens/motion.js +88 -0
- package/dist/esm/v2/tokens/motion.js.map +1 -0
- package/dist/esm/v2/tokens/radius.js +22 -0
- package/dist/esm/v2/tokens/radius.js.map +1 -0
- package/dist/esm/v2/tokens/shadows.js +40 -0
- package/dist/esm/v2/tokens/shadows.js.map +1 -0
- package/dist/esm/v2/tokens/spacing.js +51 -0
- package/dist/esm/v2/tokens/spacing.js.map +1 -0
- package/dist/esm/v2/tokens/state.js +41 -0
- package/dist/esm/v2/tokens/state.js.map +1 -0
- package/dist/esm/v2/tokens/statusPalette.js +66 -0
- package/dist/esm/v2/tokens/statusPalette.js.map +1 -0
- package/dist/esm/v2/tokens/tokens.json +153 -0
- package/dist/esm/v2/tokens/typography.js +149 -0
- package/dist/esm/v2/tokens/typography.js.map +1 -0
- package/dist/esm/v2/tokens/zIndex.js +44 -0
- package/dist/esm/v2/tokens/zIndex.js.map +1 -0
- package/dist/esm/v2/types/common.js +2 -0
- package/dist/esm/v2/types/common.js.map +1 -0
- package/dist/esm/v2/types/datagrid.js +2 -0
- package/dist/esm/v2/types/datagrid.js.map +1 -0
- package/dist/esm/v2/types/index.js +12 -0
- package/dist/esm/v2/types/index.js.map +1 -0
- package/dist/esm/v2/utils/apiError.js +281 -0
- package/dist/esm/v2/utils/apiError.js.map +1 -0
- package/dist/esm/v2/utils/contrast.js +157 -0
- package/dist/esm/v2/utils/contrast.js.map +1 -0
- package/dist/esm/v2/utils/cx.js +38 -0
- package/dist/esm/v2/utils/cx.js.map +1 -0
- package/dist/esm/v2/utils/fileDownload.js +226 -0
- package/dist/esm/v2/utils/fileDownload.js.map +1 -0
- package/dist/esm/v2/utils/fmtMoney.js +78 -0
- package/dist/esm/v2/utils/fmtMoney.js.map +1 -0
- package/dist/esm/v2/utils/index.js +43 -0
- package/dist/esm/v2/utils/index.js.map +1 -0
- package/dist/esm/v2/utils/mergeLabels.js +86 -0
- package/dist/esm/v2/utils/mergeLabels.js.map +1 -0
- package/dist/esm/v2/utils/networkStatus.js +114 -0
- package/dist/esm/v2/utils/networkStatus.js.map +1 -0
- package/dist/index.d.ts +60 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +183 -191
- package/dist/index.js.map +1 -0
- package/dist/v2/__tests__/FieldError.test.js +164 -0
- package/dist/v2/__tests__/FieldError.test.js.map +1 -0
- package/dist/v2/__tests__/FileCard.test.js +148 -0
- package/dist/v2/__tests__/FileCard.test.js.map +1 -0
- package/dist/v2/__tests__/MobileRowCard.test.js +337 -0
- package/dist/v2/__tests__/MobileRowCard.test.js.map +1 -0
- package/dist/v2/__tests__/SectionErrorBoundary.test.js +237 -0
- package/dist/v2/__tests__/SectionErrorBoundary.test.js.map +1 -0
- package/dist/v2/__tests__/apiError.test.js +182 -0
- package/dist/v2/__tests__/apiError.test.js.map +1 -0
- package/dist/v2/__tests__/banned-patterns.test.js +272 -0
- package/dist/v2/__tests__/banned-patterns.test.js.map +1 -0
- package/dist/v2/__tests__/contrast-palette.test.js +225 -0
- package/dist/v2/__tests__/contrast-palette.test.js.map +1 -0
- package/dist/v2/__tests__/cssVariables.test.js +158 -0
- package/dist/v2/__tests__/cssVariables.test.js.map +1 -0
- package/dist/v2/__tests__/labels-merge.test.js +153 -0
- package/dist/v2/__tests__/labels-merge.test.js.map +1 -0
- package/dist/v2/__tests__/locale-fallback.test.js +111 -0
- package/dist/v2/__tests__/locale-fallback.test.js.map +1 -0
- package/dist/v2/__tests__/useFocusTrap.test.js +517 -0
- package/dist/v2/__tests__/useFocusTrap.test.js.map +1 -0
- package/dist/v2/components/Accordion.d.ts +56 -0
- package/dist/v2/components/Accordion.d.ts.map +1 -0
- package/dist/v2/components/Accordion.js +238 -0
- package/dist/v2/components/Accordion.js.map +1 -0
- package/dist/v2/components/ActionStrip.d.ts +67 -0
- package/dist/v2/components/ActionStrip.d.ts.map +1 -0
- package/dist/v2/components/ActionStrip.js +154 -0
- package/dist/v2/components/ActionStrip.js.map +1 -0
- package/dist/v2/components/Banner.d.ts +88 -0
- package/dist/v2/components/Banner.d.ts.map +1 -0
- package/dist/v2/components/Banner.js +264 -0
- package/dist/v2/components/Banner.js.map +1 -0
- package/dist/v2/components/Busy.d.ts +18 -0
- package/dist/v2/components/Busy.d.ts.map +1 -0
- package/dist/v2/components/Busy.js +104 -0
- package/dist/v2/components/Busy.js.map +1 -0
- package/dist/v2/components/Button.d.ts +36 -0
- package/dist/v2/components/Button.d.ts.map +1 -0
- package/dist/v2/components/Button.js +122 -0
- package/dist/v2/components/Button.js.map +1 -0
- package/dist/v2/components/CategoryTag.d.ts +45 -0
- package/dist/v2/components/CategoryTag.d.ts.map +1 -0
- package/dist/v2/components/CategoryTag.js +89 -0
- package/dist/v2/components/CategoryTag.js.map +1 -0
- package/dist/v2/components/Checkbox.d.ts +59 -0
- package/dist/v2/components/Checkbox.d.ts.map +1 -0
- package/dist/v2/components/Checkbox.js +134 -0
- package/dist/v2/components/Checkbox.js.map +1 -0
- package/dist/v2/components/Chip.d.ts +48 -0
- package/dist/v2/components/Chip.d.ts.map +1 -0
- package/dist/v2/components/Chip.js +132 -0
- package/dist/v2/components/Chip.js.map +1 -0
- package/dist/v2/components/Combobox.d.ts +134 -0
- package/dist/v2/components/Combobox.d.ts.map +1 -0
- package/dist/v2/components/Combobox.js +400 -0
- package/dist/v2/components/Combobox.js.map +1 -0
- package/dist/v2/components/CommandPalette.d.ts +36 -0
- package/dist/v2/components/CommandPalette.d.ts.map +1 -0
- package/dist/v2/components/CommandPalette.js +668 -0
- package/dist/v2/components/CommandPalette.js.map +1 -0
- package/dist/v2/components/ConfirmDialog.d.ts +23 -0
- package/dist/v2/components/ConfirmDialog.d.ts.map +1 -0
- package/dist/v2/components/ConfirmDialog.js +151 -0
- package/dist/v2/components/ConfirmDialog.js.map +1 -0
- package/dist/v2/components/DatePicker.d.ts +21 -0
- package/dist/v2/components/DatePicker.d.ts.map +1 -0
- package/dist/v2/components/DatePicker.js +207 -0
- package/dist/v2/components/DatePicker.js.map +1 -0
- package/dist/v2/components/DateRangePicker.d.ts +81 -0
- package/dist/v2/components/DateRangePicker.d.ts.map +1 -0
- package/dist/v2/components/DateRangePicker.js +296 -0
- package/dist/v2/components/DateRangePicker.js.map +1 -0
- package/dist/v2/components/DateTimePicker.d.ts +21 -0
- package/dist/v2/components/DateTimePicker.d.ts.map +1 -0
- package/dist/v2/components/DateTimePicker.js +189 -0
- package/dist/v2/components/DateTimePicker.js.map +1 -0
- package/dist/v2/components/Drawer.d.ts +34 -0
- package/dist/v2/components/Drawer.d.ts.map +1 -0
- package/dist/v2/components/Drawer.js +340 -0
- package/dist/v2/components/Drawer.js.map +1 -0
- package/dist/v2/components/Dropzone.d.ts +150 -0
- package/dist/v2/components/Dropzone.d.ts.map +1 -0
- package/dist/v2/components/Dropzone.js +547 -0
- package/dist/v2/components/Dropzone.js.map +1 -0
- package/dist/v2/components/EmptyState.d.ts +36 -0
- package/dist/v2/components/EmptyState.d.ts.map +1 -0
- package/dist/v2/components/EmptyState.js +112 -0
- package/dist/v2/components/EmptyState.js.map +1 -0
- package/dist/v2/components/FavoriteToggle.d.ts +22 -0
- package/dist/v2/components/FavoriteToggle.d.ts.map +1 -0
- package/dist/v2/components/FavoriteToggle.js +135 -0
- package/dist/v2/components/FavoriteToggle.js.map +1 -0
- package/dist/v2/components/Field.d.ts +63 -0
- package/dist/v2/components/Field.d.ts.map +1 -0
- package/dist/v2/components/Field.js +204 -0
- package/dist/v2/components/Field.js.map +1 -0
- package/dist/v2/components/FieldError.d.ts +78 -0
- package/dist/v2/components/FieldError.d.ts.map +1 -0
- package/dist/v2/components/FieldError.js +131 -0
- package/dist/v2/components/FieldError.js.map +1 -0
- package/dist/v2/components/FieldHelp.d.ts +54 -0
- package/dist/v2/components/FieldHelp.d.ts.map +1 -0
- package/dist/v2/components/FieldHelp.js +209 -0
- package/dist/v2/components/FieldHelp.js.map +1 -0
- package/dist/v2/components/FileCard.d.ts +75 -0
- package/dist/v2/components/FileCard.d.ts.map +1 -0
- package/dist/v2/components/FileCard.js +169 -0
- package/dist/v2/components/FileCard.js.map +1 -0
- package/dist/v2/components/FilterTab.d.ts +35 -0
- package/dist/v2/components/FilterTab.d.ts.map +1 -0
- package/dist/v2/components/FilterTab.js +145 -0
- package/dist/v2/components/FilterTab.js.map +1 -0
- package/dist/v2/components/ForbiddenPage.d.ts +40 -0
- package/dist/v2/components/ForbiddenPage.d.ts.map +1 -0
- package/dist/v2/components/ForbiddenPage.js +81 -0
- package/dist/v2/components/ForbiddenPage.js.map +1 -0
- package/dist/v2/components/FormGrid.d.ts +81 -0
- package/dist/v2/components/FormGrid.d.ts.map +1 -0
- package/dist/v2/components/FormGrid.js +187 -0
- package/dist/v2/components/FormGrid.js.map +1 -0
- package/dist/v2/components/FormikDisplay.d.ts +38 -0
- package/dist/v2/components/FormikDisplay.d.ts.map +1 -0
- package/dist/v2/components/FormikDisplay.js +125 -0
- package/dist/v2/components/FormikDisplay.js.map +1 -0
- package/dist/v2/components/Input.d.ts +62 -0
- package/dist/v2/components/Input.d.ts.map +1 -0
- package/dist/v2/components/Input.js +115 -0
- package/dist/v2/components/Input.js.map +1 -0
- package/dist/v2/components/KPICard.d.ts +52 -0
- package/dist/v2/components/KPICard.d.ts.map +1 -0
- package/dist/v2/components/KPICard.js +244 -0
- package/dist/v2/components/KPICard.js.map +1 -0
- package/dist/v2/components/KPIStrip.d.ts +68 -0
- package/dist/v2/components/KPIStrip.d.ts.map +1 -0
- package/dist/v2/components/KPIStrip.js +92 -0
- package/dist/v2/components/KPIStrip.js.map +1 -0
- package/dist/v2/components/KV.d.ts +25 -0
- package/dist/v2/components/KV.d.ts.map +1 -0
- package/dist/v2/components/KV.js +82 -0
- package/dist/v2/components/KV.js.map +1 -0
- package/dist/v2/components/KVGrid.d.ts +44 -0
- package/dist/v2/components/KVGrid.d.ts.map +1 -0
- package/dist/v2/components/KVGrid.js +80 -0
- package/dist/v2/components/KVGrid.js.map +1 -0
- package/dist/v2/components/Layout.d.ts +78 -0
- package/dist/v2/components/Layout.d.ts.map +1 -0
- package/dist/v2/components/Layout.js +284 -0
- package/dist/v2/components/Layout.js.map +1 -0
- package/dist/v2/components/MobileRowCard.d.ts +63 -0
- package/dist/v2/components/MobileRowCard.d.ts.map +1 -0
- package/dist/v2/components/MobileRowCard.js +321 -0
- package/dist/v2/components/MobileRowCard.js.map +1 -0
- package/dist/v2/components/Modal.d.ts +21 -0
- package/dist/v2/components/Modal.d.ts.map +1 -0
- package/dist/v2/components/Modal.js +281 -0
- package/dist/v2/components/Modal.js.map +1 -0
- package/dist/v2/components/NetworkErrorPage.d.ts +11 -0
- package/dist/v2/components/NetworkErrorPage.d.ts.map +1 -0
- package/dist/v2/components/NetworkErrorPage.js +86 -0
- package/dist/v2/components/NetworkErrorPage.js.map +1 -0
- package/dist/v2/components/NotFoundPage.d.ts +9 -0
- package/dist/v2/components/NotFoundPage.d.ts.map +1 -0
- package/dist/v2/components/NotFoundPage.js +66 -0
- package/dist/v2/components/NotFoundPage.js.map +1 -0
- package/dist/v2/components/NumberInput.d.ts +83 -0
- package/dist/v2/components/NumberInput.d.ts.map +1 -0
- package/dist/v2/components/NumberInput.js +317 -0
- package/dist/v2/components/NumberInput.js.map +1 -0
- package/dist/v2/components/OverflowMenu.d.ts +55 -0
- package/dist/v2/components/OverflowMenu.d.ts.map +1 -0
- package/dist/v2/components/OverflowMenu.js +192 -0
- package/dist/v2/components/OverflowMenu.js.map +1 -0
- package/dist/v2/components/PdfViewer.d.ts +56 -0
- package/dist/v2/components/PdfViewer.d.ts.map +1 -0
- package/dist/v2/components/PdfViewer.js +132 -0
- package/dist/v2/components/PdfViewer.js.map +1 -0
- package/dist/v2/components/ProgressBar.d.ts +53 -0
- package/dist/v2/components/ProgressBar.d.ts.map +1 -0
- package/dist/v2/components/ProgressBar.js +209 -0
- package/dist/v2/components/ProgressBar.js.map +1 -0
- package/dist/v2/components/Radio.d.ts +78 -0
- package/dist/v2/components/Radio.d.ts.map +1 -0
- package/dist/v2/components/Radio.js +238 -0
- package/dist/v2/components/Radio.js.map +1 -0
- package/dist/v2/components/SectionErrorBoundary.d.ts +89 -0
- package/dist/v2/components/SectionErrorBoundary.d.ts.map +1 -0
- package/dist/v2/components/SectionErrorBoundary.js +221 -0
- package/dist/v2/components/SectionErrorBoundary.js.map +1 -0
- package/dist/v2/components/SectionHeader.d.ts +53 -0
- package/dist/v2/components/SectionHeader.d.ts.map +1 -0
- package/dist/v2/components/SectionHeader.js +140 -0
- package/dist/v2/components/SectionHeader.js.map +1 -0
- package/dist/v2/components/Segmented.d.ts +61 -0
- package/dist/v2/components/Segmented.d.ts.map +1 -0
- package/dist/v2/components/Segmented.js +261 -0
- package/dist/v2/components/Segmented.js.map +1 -0
- package/dist/v2/components/Select.d.ts +90 -0
- package/dist/v2/components/Select.d.ts.map +1 -0
- package/dist/v2/components/Select.js +499 -0
- package/dist/v2/components/Select.js.map +1 -0
- package/dist/v2/components/ServerErrorPage.d.ts +11 -0
- package/dist/v2/components/ServerErrorPage.d.ts.map +1 -0
- package/dist/v2/components/ServerErrorPage.js +82 -0
- package/dist/v2/components/ServerErrorPage.js.map +1 -0
- package/dist/v2/components/Skeleton.d.ts +56 -0
- package/dist/v2/components/Skeleton.d.ts.map +1 -0
- package/dist/v2/components/Skeleton.js +281 -0
- package/dist/v2/components/Skeleton.js.map +1 -0
- package/dist/v2/components/SkipLink.d.ts +30 -0
- package/dist/v2/components/SkipLink.d.ts.map +1 -0
- package/dist/v2/components/SkipLink.js +58 -0
- package/dist/v2/components/SkipLink.js.map +1 -0
- package/dist/v2/components/Spinner.d.ts +40 -0
- package/dist/v2/components/Spinner.d.ts.map +1 -0
- package/dist/v2/components/Spinner.js +76 -0
- package/dist/v2/components/Spinner.js.map +1 -0
- package/dist/v2/components/Status.d.ts +42 -0
- package/dist/v2/components/Status.d.ts.map +1 -0
- package/dist/v2/components/Status.js +71 -0
- package/dist/v2/components/Status.js.map +1 -0
- package/dist/v2/components/Stepper.d.ts +142 -0
- package/dist/v2/components/Stepper.d.ts.map +1 -0
- package/dist/v2/components/Stepper.js +441 -0
- package/dist/v2/components/Stepper.js.map +1 -0
- package/dist/v2/components/Surface.d.ts +94 -0
- package/dist/v2/components/Surface.d.ts.map +1 -0
- package/dist/v2/components/Surface.js +163 -0
- package/dist/v2/components/Surface.js.map +1 -0
- package/dist/v2/components/Switch.d.ts +30 -0
- package/dist/v2/components/Switch.d.ts.map +1 -0
- package/dist/v2/components/Switch.js +136 -0
- package/dist/v2/components/Switch.js.map +1 -0
- package/dist/v2/components/Tabs.d.ts +49 -0
- package/dist/v2/components/Tabs.d.ts.map +1 -0
- package/dist/v2/components/Tabs.js +160 -0
- package/dist/v2/components/Tabs.js.map +1 -0
- package/dist/v2/components/TelInput.d.ts +33 -0
- package/dist/v2/components/TelInput.d.ts.map +1 -0
- package/dist/v2/components/TelInput.js +282 -0
- package/dist/v2/components/TelInput.js.map +1 -0
- package/dist/v2/components/Textarea.d.ts +23 -0
- package/dist/v2/components/Textarea.d.ts.map +1 -0
- package/dist/v2/components/Textarea.js +80 -0
- package/dist/v2/components/Textarea.js.map +1 -0
- package/dist/v2/components/TimePicker.d.ts +21 -0
- package/dist/v2/components/TimePicker.d.ts.map +1 -0
- package/dist/v2/components/TimePicker.js +141 -0
- package/dist/v2/components/TimePicker.js.map +1 -0
- package/dist/v2/components/Toast.d.ts +32 -0
- package/dist/v2/components/Toast.d.ts.map +1 -0
- package/dist/v2/components/Toast.js +385 -0
- package/dist/v2/components/Toast.js.map +1 -0
- package/dist/v2/components/Tooltip.d.ts +9 -0
- package/dist/v2/components/Tooltip.d.ts.map +1 -0
- package/dist/v2/components/Tooltip.js +169 -0
- package/dist/v2/components/Tooltip.js.map +1 -0
- package/dist/v2/components/_ErrorPageBody.d.ts +48 -0
- package/dist/v2/components/_ErrorPageBody.d.ts.map +1 -0
- package/dist/v2/components/_ErrorPageBody.js +96 -0
- package/dist/v2/components/_ErrorPageBody.js.map +1 -0
- package/dist/v2/components/_pickerShared.d.ts +47 -0
- package/dist/v2/components/_pickerShared.d.ts.map +1 -0
- package/dist/v2/components/_pickerShared.js +68 -0
- package/dist/v2/components/_pickerShared.js.map +1 -0
- package/dist/v2/components/index.d.ts +226 -0
- package/dist/v2/components/index.d.ts.map +1 -0
- package/dist/v2/components/index.js +512 -0
- package/dist/v2/components/index.js.map +1 -0
- package/dist/v2/hooks/index.d.ts +11 -0
- package/dist/v2/hooks/index.d.ts.map +1 -0
- package/dist/v2/hooks/index.js +85 -0
- package/dist/v2/hooks/index.js.map +1 -0
- package/dist/v2/hooks/useDelayedFlag.d.ts +22 -0
- package/dist/v2/hooks/useDelayedFlag.d.ts.map +1 -0
- package/dist/v2/hooks/useDelayedFlag.js +60 -0
- package/dist/v2/hooks/useDelayedFlag.js.map +1 -0
- package/dist/v2/hooks/useDensity.d.ts +23 -0
- package/dist/v2/hooks/useDensity.d.ts.map +1 -0
- package/dist/v2/hooks/useDensity.js +124 -0
- package/dist/v2/hooks/useDensity.js.map +1 -0
- package/dist/v2/hooks/useFocusFirstError.d.ts +121 -0
- package/dist/v2/hooks/useFocusFirstError.d.ts.map +1 -0
- package/dist/v2/hooks/useFocusFirstError.js +203 -0
- package/dist/v2/hooks/useFocusFirstError.js.map +1 -0
- package/dist/v2/hooks/useFocusTrap.d.ts +3 -0
- package/dist/v2/hooks/useFocusTrap.d.ts.map +1 -0
- package/dist/v2/hooks/useFocusTrap.js +207 -0
- package/dist/v2/hooks/useFocusTrap.js.map +1 -0
- package/dist/v2/hooks/useFormAutoSave.d.ts +42 -0
- package/dist/v2/hooks/useFormAutoSave.d.ts.map +1 -0
- package/dist/v2/hooks/useFormAutoSave.js +186 -0
- package/dist/v2/hooks/useFormAutoSave.js.map +1 -0
- package/dist/v2/hooks/useFormCompletionProgress.d.ts +52 -0
- package/dist/v2/hooks/useFormCompletionProgress.d.ts.map +1 -0
- package/dist/v2/hooks/useFormCompletionProgress.js +136 -0
- package/dist/v2/hooks/useFormCompletionProgress.js.map +1 -0
- package/dist/v2/hooks/useResolvedDensity.d.ts +31 -0
- package/dist/v2/hooks/useResolvedDensity.d.ts.map +1 -0
- package/dist/v2/hooks/useResolvedDensity.js +50 -0
- package/dist/v2/hooks/useResolvedDensity.js.map +1 -0
- package/dist/v2/hooks/useSortedRows.d.ts +25 -0
- package/dist/v2/hooks/useSortedRows.d.ts.map +1 -0
- package/dist/v2/hooks/useSortedRows.js +38 -0
- package/dist/v2/hooks/useSortedRows.js.map +1 -0
- package/dist/v2/hooks/useTabLoading.d.ts +39 -0
- package/dist/v2/hooks/useTabLoading.d.ts.map +1 -0
- package/dist/v2/hooks/useTabLoading.js +85 -0
- package/dist/v2/hooks/useTabLoading.js.map +1 -0
- package/dist/v2/index.d.ts +115 -0
- package/dist/v2/index.d.ts.map +1 -0
- package/dist/v2/index.js +1127 -0
- package/dist/v2/index.js.map +1 -0
- package/dist/v2/modalContext.d.ts +96 -0
- package/dist/v2/modalContext.d.ts.map +1 -0
- package/dist/v2/modalContext.js +113 -0
- package/dist/v2/modalContext.js.map +1 -0
- package/dist/v2/models/favorite.d.ts +14 -0
- package/dist/v2/models/favorite.d.ts.map +1 -0
- package/dist/v2/models/favorite.js +6 -0
- package/dist/v2/models/favorite.js.map +1 -0
- package/dist/v2/models/index.d.ts +11 -0
- package/dist/v2/models/index.d.ts.map +1 -0
- package/dist/v2/models/index.js +50 -0
- package/dist/v2/models/index.js.map +1 -0
- package/dist/v2/models/personalization.d.ts +65 -0
- package/dist/v2/models/personalization.d.ts.map +1 -0
- package/dist/v2/models/personalization.js +6 -0
- package/dist/v2/models/personalization.js.map +1 -0
- package/dist/v2/models/referentiel.d.ts +67 -0
- package/dist/v2/models/referentiel.d.ts.map +1 -0
- package/dist/v2/models/referentiel.js +6 -0
- package/dist/v2/models/referentiel.js.map +1 -0
- package/dist/v2/models/savedFilter.d.ts +22 -0
- package/dist/v2/models/savedFilter.d.ts.map +1 -0
- package/dist/v2/models/savedFilter.js +6 -0
- package/dist/v2/models/savedFilter.js.map +1 -0
- package/dist/v2/patterns/ActionBar.d.ts +137 -0
- package/dist/v2/patterns/ActionBar.d.ts.map +1 -0
- package/dist/v2/patterns/ActionBar.js +602 -0
- package/dist/v2/patterns/ActionBar.js.map +1 -0
- package/dist/v2/patterns/BulkActionBar.d.ts +63 -0
- package/dist/v2/patterns/BulkActionBar.d.ts.map +1 -0
- package/dist/v2/patterns/BulkActionBar.js +154 -0
- package/dist/v2/patterns/BulkActionBar.js.map +1 -0
- package/dist/v2/patterns/CollapsibleDataGrid.d.ts +62 -0
- package/dist/v2/patterns/CollapsibleDataGrid.d.ts.map +1 -0
- package/dist/v2/patterns/CollapsibleDataGrid.js +306 -0
- package/dist/v2/patterns/CollapsibleDataGrid.js.map +1 -0
- package/dist/v2/patterns/ColumnsToggle.d.ts +55 -0
- package/dist/v2/patterns/ColumnsToggle.d.ts.map +1 -0
- package/dist/v2/patterns/ColumnsToggle.js +310 -0
- package/dist/v2/patterns/ColumnsToggle.js.map +1 -0
- package/dist/v2/patterns/DataGrid.d.ts +7 -0
- package/dist/v2/patterns/DataGrid.d.ts.map +1 -0
- package/dist/v2/patterns/DataGrid.js +834 -0
- package/dist/v2/patterns/DataGrid.js.map +1 -0
- package/dist/v2/patterns/DataGridSettingsMenu.d.ts +68 -0
- package/dist/v2/patterns/DataGridSettingsMenu.d.ts.map +1 -0
- package/dist/v2/patterns/DataGridSettingsMenu.js +382 -0
- package/dist/v2/patterns/DataGridSettingsMenu.js.map +1 -0
- package/dist/v2/patterns/DataGridToolbar.d.ts +81 -0
- package/dist/v2/patterns/DataGridToolbar.d.ts.map +1 -0
- package/dist/v2/patterns/DataGridToolbar.js +256 -0
- package/dist/v2/patterns/DataGridToolbar.js.map +1 -0
- package/dist/v2/patterns/DataGridVirtualized.d.ts +76 -0
- package/dist/v2/patterns/DataGridVirtualized.d.ts.map +1 -0
- package/dist/v2/patterns/DataGridVirtualized.js +528 -0
- package/dist/v2/patterns/DataGridVirtualized.js.map +1 -0
- package/dist/v2/patterns/DeleteResourceConfirmDialog.d.ts +46 -0
- package/dist/v2/patterns/DeleteResourceConfirmDialog.d.ts.map +1 -0
- package/dist/v2/patterns/DeleteResourceConfirmDialog.js +77 -0
- package/dist/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -0
- package/dist/v2/patterns/FavoriteColumn.d.ts +72 -0
- package/dist/v2/patterns/FavoriteColumn.d.ts.map +1 -0
- package/dist/v2/patterns/FavoriteColumn.js +171 -0
- package/dist/v2/patterns/FavoriteColumn.js.map +1 -0
- package/dist/v2/patterns/FavoritesFilter.d.ts +51 -0
- package/dist/v2/patterns/FavoritesFilter.d.ts.map +1 -0
- package/dist/v2/patterns/FavoritesFilter.js +98 -0
- package/dist/v2/patterns/FavoritesFilter.js.map +1 -0
- package/dist/v2/patterns/FormErrorSummary.d.ts +39 -0
- package/dist/v2/patterns/FormErrorSummary.d.ts.map +1 -0
- package/dist/v2/patterns/FormErrorSummary.js +111 -0
- package/dist/v2/patterns/FormErrorSummary.js.map +1 -0
- package/dist/v2/patterns/FormPageShell.d.ts +55 -0
- package/dist/v2/patterns/FormPageShell.d.ts.map +1 -0
- package/dist/v2/patterns/FormPageShell.js +133 -0
- package/dist/v2/patterns/FormPageShell.js.map +1 -0
- package/dist/v2/patterns/FormSection.d.ts +64 -0
- package/dist/v2/patterns/FormSection.d.ts.map +1 -0
- package/dist/v2/patterns/FormSection.js +197 -0
- package/dist/v2/patterns/FormSection.js.map +1 -0
- package/dist/v2/patterns/FormikCheckboxGroup.d.ts +51 -0
- package/dist/v2/patterns/FormikCheckboxGroup.d.ts.map +1 -0
- package/dist/v2/patterns/FormikCheckboxGroup.js +117 -0
- package/dist/v2/patterns/FormikCheckboxGroup.js.map +1 -0
- package/dist/v2/patterns/FormikCombobox.d.ts +43 -0
- package/dist/v2/patterns/FormikCombobox.d.ts.map +1 -0
- package/dist/v2/patterns/FormikCombobox.js +121 -0
- package/dist/v2/patterns/FormikCombobox.js.map +1 -0
- package/dist/v2/patterns/FormikDatePicker.d.ts +115 -0
- package/dist/v2/patterns/FormikDatePicker.d.ts.map +1 -0
- package/dist/v2/patterns/FormikDatePicker.js +203 -0
- package/dist/v2/patterns/FormikDatePicker.js.map +1 -0
- package/dist/v2/patterns/FormikErrorFocus.d.ts +59 -0
- package/dist/v2/patterns/FormikErrorFocus.d.ts.map +1 -0
- package/dist/v2/patterns/FormikErrorFocus.js +83 -0
- package/dist/v2/patterns/FormikErrorFocus.js.map +1 -0
- package/dist/v2/patterns/FormikFile.d.ts +43 -0
- package/dist/v2/patterns/FormikFile.d.ts.map +1 -0
- package/dist/v2/patterns/FormikFile.js +156 -0
- package/dist/v2/patterns/FormikFile.js.map +1 -0
- package/dist/v2/patterns/FormikInput.d.ts +72 -0
- package/dist/v2/patterns/FormikInput.d.ts.map +1 -0
- package/dist/v2/patterns/FormikInput.js +135 -0
- package/dist/v2/patterns/FormikInput.js.map +1 -0
- package/dist/v2/patterns/FormikReferentielField.d.ts +33 -0
- package/dist/v2/patterns/FormikReferentielField.d.ts.map +1 -0
- package/dist/v2/patterns/FormikReferentielField.js +124 -0
- package/dist/v2/patterns/FormikReferentielField.js.map +1 -0
- package/dist/v2/patterns/FormikSelect.d.ts +61 -0
- package/dist/v2/patterns/FormikSelect.d.ts.map +1 -0
- package/dist/v2/patterns/FormikSelect.js +165 -0
- package/dist/v2/patterns/FormikSelect.js.map +1 -0
- package/dist/v2/patterns/FormikTextarea.d.ts +31 -0
- package/dist/v2/patterns/FormikTextarea.d.ts.map +1 -0
- package/dist/v2/patterns/FormikTextarea.js +84 -0
- package/dist/v2/patterns/FormikTextarea.js.map +1 -0
- package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts +44 -0
- package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts.map +1 -0
- package/dist/v2/patterns/KeyboardShortcutsHelp.js +203 -0
- package/dist/v2/patterns/KeyboardShortcutsHelp.js.map +1 -0
- package/dist/v2/patterns/NetworkErrorBanner.d.ts +26 -0
- package/dist/v2/patterns/NetworkErrorBanner.d.ts.map +1 -0
- package/dist/v2/patterns/NetworkErrorBanner.js +82 -0
- package/dist/v2/patterns/NetworkErrorBanner.js.map +1 -0
- package/dist/v2/patterns/PageContent.d.ts +40 -0
- package/dist/v2/patterns/PageContent.d.ts.map +1 -0
- package/dist/v2/patterns/PageContent.js +69 -0
- package/dist/v2/patterns/PageContent.js.map +1 -0
- package/dist/v2/patterns/ReferentielField.d.ts +118 -0
- package/dist/v2/patterns/ReferentielField.d.ts.map +1 -0
- package/dist/v2/patterns/ReferentielField.js +618 -0
- package/dist/v2/patterns/ReferentielField.js.map +1 -0
- package/dist/v2/patterns/SaveFilterDialog.d.ts +68 -0
- package/dist/v2/patterns/SaveFilterDialog.d.ts.map +1 -0
- package/dist/v2/patterns/SaveFilterDialog.js +204 -0
- package/dist/v2/patterns/SaveFilterDialog.js.map +1 -0
- package/dist/v2/patterns/SavedFiltersMenu.d.ts +74 -0
- package/dist/v2/patterns/SavedFiltersMenu.d.ts.map +1 -0
- package/dist/v2/patterns/SavedFiltersMenu.js +413 -0
- package/dist/v2/patterns/SavedFiltersMenu.js.map +1 -0
- package/dist/v2/patterns/SkeletonPageShell.d.ts +76 -0
- package/dist/v2/patterns/SkeletonPageShell.d.ts.map +1 -0
- package/dist/v2/patterns/SkeletonPageShell.js +347 -0
- package/dist/v2/patterns/SkeletonPageShell.js.map +1 -0
- package/dist/v2/patterns/SortableHeader.d.ts +47 -0
- package/dist/v2/patterns/SortableHeader.d.ts.map +1 -0
- package/dist/v2/patterns/SortableHeader.js +193 -0
- package/dist/v2/patterns/SortableHeader.js.map +1 -0
- package/dist/v2/patterns/Tour.d.ts +55 -0
- package/dist/v2/patterns/Tour.d.ts.map +1 -0
- package/dist/v2/patterns/Tour.js +474 -0
- package/dist/v2/patterns/Tour.js.map +1 -0
- package/dist/v2/patterns/_dataGridShared.d.ts +144 -0
- package/dist/v2/patterns/_dataGridShared.d.ts.map +1 -0
- package/dist/v2/patterns/_dataGridShared.js +440 -0
- package/dist/v2/patterns/_dataGridShared.js.map +1 -0
- package/dist/v2/patterns/_sort.d.ts +22 -0
- package/dist/v2/patterns/_sort.d.ts.map +1 -0
- package/dist/v2/patterns/_sort.js +118 -0
- package/dist/v2/patterns/_sort.js.map +1 -0
- package/dist/v2/patterns/_useColumnReorder.d.ts +69 -0
- package/dist/v2/patterns/_useColumnReorder.d.ts.map +1 -0
- package/dist/v2/patterns/_useColumnReorder.js +264 -0
- package/dist/v2/patterns/_useColumnReorder.js.map +1 -0
- package/dist/v2/patterns/_useColumnResize.d.ts +49 -0
- package/dist/v2/patterns/_useColumnResize.d.ts.map +1 -0
- package/dist/v2/patterns/_useColumnResize.js +198 -0
- package/dist/v2/patterns/_useColumnResize.js.map +1 -0
- package/dist/v2/patterns/index.d.ts +89 -0
- package/dist/v2/patterns/index.d.ts.map +1 -0
- package/dist/v2/patterns/index.js +246 -0
- package/dist/v2/patterns/index.js.map +1 -0
- package/dist/v2/personalization/PersonalizationProvider.d.ts +80 -0
- package/dist/v2/personalization/PersonalizationProvider.d.ts.map +1 -0
- package/dist/v2/personalization/PersonalizationProvider.js +177 -0
- package/dist/v2/personalization/PersonalizationProvider.js.map +1 -0
- package/dist/v2/personalization/adapters/_storageKey.d.ts +35 -0
- package/dist/v2/personalization/adapters/_storageKey.d.ts.map +1 -0
- package/dist/v2/personalization/adapters/_storageKey.js +69 -0
- package/dist/v2/personalization/adapters/_storageKey.js.map +1 -0
- package/dist/v2/personalization/adapters/createLocalStorageAdapter.d.ts +31 -0
- package/dist/v2/personalization/adapters/createLocalStorageAdapter.d.ts.map +1 -0
- package/dist/v2/personalization/adapters/createLocalStorageAdapter.js +128 -0
- package/dist/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -0
- package/dist/v2/personalization/adapters/createMemoryAdapter.d.ts +25 -0
- package/dist/v2/personalization/adapters/createMemoryAdapter.d.ts.map +1 -0
- package/dist/v2/personalization/adapters/createMemoryAdapter.js +76 -0
- package/dist/v2/personalization/adapters/createMemoryAdapter.js.map +1 -0
- package/dist/v2/personalization/adapters/index.d.ts +10 -0
- package/dist/v2/personalization/adapters/index.d.ts.map +1 -0
- package/dist/v2/personalization/adapters/index.js +21 -0
- package/dist/v2/personalization/adapters/index.js.map +1 -0
- package/dist/v2/personalization/capabilities/favorites.d.ts +53 -0
- package/dist/v2/personalization/capabilities/favorites.d.ts.map +1 -0
- package/dist/v2/personalization/capabilities/favorites.js +223 -0
- package/dist/v2/personalization/capabilities/favorites.js.map +1 -0
- package/dist/v2/personalization/capabilities/favoritesView.d.ts +58 -0
- package/dist/v2/personalization/capabilities/favoritesView.d.ts.map +1 -0
- package/dist/v2/personalization/capabilities/favoritesView.js +121 -0
- package/dist/v2/personalization/capabilities/favoritesView.js.map +1 -0
- package/dist/v2/personalization/capabilities/index.d.ts +16 -0
- package/dist/v2/personalization/capabilities/index.d.ts.map +1 -0
- package/dist/v2/personalization/capabilities/index.js +69 -0
- package/dist/v2/personalization/capabilities/index.js.map +1 -0
- package/dist/v2/personalization/capabilities/savedFilters.d.ts +61 -0
- package/dist/v2/personalization/capabilities/savedFilters.d.ts.map +1 -0
- package/dist/v2/personalization/capabilities/savedFilters.js +297 -0
- package/dist/v2/personalization/capabilities/savedFilters.js.map +1 -0
- package/dist/v2/personalization/createPersonalizationStore.d.ts +76 -0
- package/dist/v2/personalization/createPersonalizationStore.d.ts.map +1 -0
- package/dist/v2/personalization/createPersonalizationStore.js +475 -0
- package/dist/v2/personalization/createPersonalizationStore.js.map +1 -0
- package/dist/v2/personalization/index.d.ts +33 -0
- package/dist/v2/personalization/index.d.ts.map +1 -0
- package/dist/v2/personalization/index.js +111 -0
- package/dist/v2/personalization/index.js.map +1 -0
- package/dist/v2/personalization/personalizationContext.d.ts +78 -0
- package/dist/v2/personalization/personalizationContext.d.ts.map +1 -0
- package/dist/v2/personalization/personalizationContext.js +121 -0
- package/dist/v2/personalization/personalizationContext.js.map +1 -0
- package/dist/v2/personalization/schema.d.ts +60 -0
- package/dist/v2/personalization/schema.d.ts.map +1 -0
- package/dist/v2/personalization/schema.js +102 -0
- package/dist/v2/personalization/schema.js.map +1 -0
- package/dist/v2/personalization/types.d.ts +81 -0
- package/dist/v2/personalization/types.d.ts.map +1 -0
- package/dist/v2/personalization/types.js +6 -0
- package/dist/v2/personalization/types.js.map +1 -0
- package/dist/v2/referentiel/ReferentielProvider.d.ts +53 -0
- package/dist/v2/referentiel/ReferentielProvider.d.ts.map +1 -0
- package/dist/v2/referentiel/ReferentielProvider.js +94 -0
- package/dist/v2/referentiel/ReferentielProvider.js.map +1 -0
- package/dist/v2/referentiel/index.d.ts +18 -0
- package/dist/v2/referentiel/index.d.ts.map +1 -0
- package/dist/v2/referentiel/index.js +44 -0
- package/dist/v2/referentiel/index.js.map +1 -0
- package/dist/v2/referentiel/useReferentielClient.d.ts +15 -0
- package/dist/v2/referentiel/useReferentielClient.d.ts.map +1 -0
- package/dist/v2/referentiel/useReferentielClient.js +46 -0
- package/dist/v2/referentiel/useReferentielClient.js.map +1 -0
- package/dist/v2/referentiel/useReferentielOptions.d.ts +40 -0
- package/dist/v2/referentiel/useReferentielOptions.d.ts.map +1 -0
- package/dist/v2/referentiel/useReferentielOptions.js +177 -0
- package/dist/v2/referentiel/useReferentielOptions.js.map +1 -0
- package/dist/v2/referentiel/useReferentielSearch.d.ts +76 -0
- package/dist/v2/referentiel/useReferentielSearch.d.ts.map +1 -0
- package/dist/v2/referentiel/useReferentielSearch.js +140 -0
- package/dist/v2/referentiel/useReferentielSearch.js.map +1 -0
- package/dist/v2/styles/base.css +425 -0
- package/dist/v2/styles/css.d.ts +10 -0
- package/dist/v2/styles/index.d.ts +12 -0
- package/dist/v2/styles/index.d.ts.map +1 -0
- package/dist/v2/styles/index.js +4 -0
- package/dist/v2/styles/index.js.map +1 -0
- package/dist/v2/theme/_brand.d.ts +29 -0
- package/dist/v2/theme/_brand.d.ts.map +1 -0
- package/dist/v2/theme/_brand.js +69 -0
- package/dist/v2/theme/_brand.js.map +1 -0
- package/dist/v2/theme/_brandSecondary.d.ts +26 -0
- package/dist/v2/theme/_brandSecondary.d.ts.map +1 -0
- package/dist/v2/theme/_brandSecondary.js +65 -0
- package/dist/v2/theme/_brandSecondary.js.map +1 -0
- package/dist/v2/theme/createPortnetTheme.d.ts +75 -0
- package/dist/v2/theme/createPortnetTheme.d.ts.map +1 -0
- package/dist/v2/theme/createPortnetTheme.js +553 -0
- package/dist/v2/theme/createPortnetTheme.js.map +1 -0
- package/dist/v2/theme/cssVariables.d.ts +41 -0
- package/dist/v2/theme/cssVariables.d.ts.map +1 -0
- package/dist/v2/theme/cssVariables.js +205 -0
- package/dist/v2/theme/cssVariables.js.map +1 -0
- package/dist/v2/theme/index.d.ts +33 -0
- package/dist/v2/theme/index.d.ts.map +1 -0
- package/dist/v2/theme/index.js +60 -0
- package/dist/v2/theme/index.js.map +1 -0
- package/dist/v2/tokens/breakpoints.d.ts +74 -0
- package/dist/v2/tokens/breakpoints.d.ts.map +1 -0
- package/dist/v2/tokens/breakpoints.js +114 -0
- package/dist/v2/tokens/breakpoints.js.map +1 -0
- package/dist/v2/tokens/colors.d.ts +228 -0
- package/dist/v2/tokens/colors.d.ts.map +1 -0
- package/dist/v2/tokens/colors.js +225 -0
- package/dist/v2/tokens/colors.js.map +1 -0
- package/dist/v2/tokens/density.d.ts +142 -0
- package/dist/v2/tokens/density.d.ts.map +1 -0
- package/dist/v2/tokens/density.js +111 -0
- package/dist/v2/tokens/density.js.map +1 -0
- package/dist/v2/tokens/index.d.ts +556 -0
- package/dist/v2/tokens/index.d.ts.map +1 -0
- package/dist/v2/tokens/index.js +313 -0
- package/dist/v2/tokens/index.js.map +1 -0
- package/dist/v2/tokens/motion.d.ts +85 -0
- package/dist/v2/tokens/motion.d.ts.map +1 -0
- package/dist/v2/tokens/motion.js +94 -0
- package/dist/v2/tokens/motion.js.map +1 -0
- package/dist/v2/tokens/radius.d.ts +18 -0
- package/dist/v2/tokens/radius.d.ts.map +1 -0
- package/dist/v2/tokens/radius.js +28 -0
- package/dist/v2/tokens/radius.js.map +1 -0
- package/dist/v2/tokens/shadows.d.ts +25 -0
- package/dist/v2/tokens/shadows.d.ts.map +1 -0
- package/dist/v2/tokens/shadows.js +46 -0
- package/dist/v2/tokens/shadows.js.map +1 -0
- package/dist/v2/tokens/spacing.d.ts +38 -0
- package/dist/v2/tokens/spacing.d.ts.map +1 -0
- package/dist/v2/tokens/spacing.js +57 -0
- package/dist/v2/tokens/spacing.js.map +1 -0
- package/dist/v2/tokens/state.d.ts +40 -0
- package/dist/v2/tokens/state.d.ts.map +1 -0
- package/dist/v2/tokens/state.js +47 -0
- package/dist/v2/tokens/state.js.map +1 -0
- package/dist/v2/tokens/statusPalette.d.ts +54 -0
- package/dist/v2/tokens/statusPalette.d.ts.map +1 -0
- package/dist/v2/tokens/statusPalette.js +72 -0
- package/dist/v2/tokens/statusPalette.js.map +1 -0
- package/dist/v2/tokens/tokens.json +153 -0
- package/dist/v2/tokens/typography.d.ts +206 -0
- package/dist/v2/tokens/typography.d.ts.map +1 -0
- package/dist/v2/tokens/typography.js +155 -0
- package/dist/v2/tokens/typography.js.map +1 -0
- package/dist/v2/tokens/zIndex.d.ts +33 -0
- package/dist/v2/tokens/zIndex.d.ts.map +1 -0
- package/dist/v2/tokens/zIndex.js +50 -0
- package/dist/v2/tokens/zIndex.js.map +1 -0
- package/dist/v2/types/common.d.ts +24 -0
- package/dist/v2/types/common.d.ts.map +1 -0
- package/dist/v2/types/common.js +6 -0
- package/dist/v2/types/common.js.map +1 -0
- package/dist/v2/types/datagrid.d.ts +131 -0
- package/dist/v2/types/datagrid.d.ts.map +1 -0
- package/dist/v2/types/datagrid.js +6 -0
- package/dist/v2/types/datagrid.js.map +1 -0
- package/dist/v2/types/index.d.ts +11 -0
- package/dist/v2/types/index.d.ts.map +1 -0
- package/dist/v2/types/index.js +28 -0
- package/dist/v2/types/index.js.map +1 -0
- package/dist/v2/utils/apiError.d.ts +151 -0
- package/dist/v2/utils/apiError.d.ts.map +1 -0
- package/dist/v2/utils/apiError.js +290 -0
- package/dist/v2/utils/apiError.js.map +1 -0
- package/dist/v2/utils/contrast.d.ts +68 -0
- package/dist/v2/utils/contrast.d.ts.map +1 -0
- package/dist/v2/utils/contrast.js +167 -0
- package/dist/v2/utils/contrast.js.map +1 -0
- package/dist/v2/utils/cx.d.ts +9 -0
- package/dist/v2/utils/cx.d.ts.map +1 -0
- package/dist/v2/utils/cx.js +45 -0
- package/dist/v2/utils/cx.js.map +1 -0
- package/dist/v2/utils/fileDownload.d.ts +94 -0
- package/dist/v2/utils/fileDownload.d.ts.map +1 -0
- package/dist/v2/utils/fileDownload.js +236 -0
- package/dist/v2/utils/fileDownload.js.map +1 -0
- package/dist/v2/utils/fmtMoney.d.ts +28 -0
- package/dist/v2/utils/fmtMoney.d.ts.map +1 -0
- package/dist/v2/utils/fmtMoney.js +84 -0
- package/dist/v2/utils/fmtMoney.js.map +1 -0
- package/dist/v2/utils/index.d.ts +9 -0
- package/dist/v2/utils/index.d.ts.map +1 -0
- package/dist/v2/utils/index.js +97 -0
- package/dist/v2/utils/index.js.map +1 -0
- package/dist/v2/utils/mergeLabels.d.ts +59 -0
- package/dist/v2/utils/mergeLabels.d.ts.map +1 -0
- package/dist/v2/utils/mergeLabels.js +93 -0
- package/dist/v2/utils/mergeLabels.js.map +1 -0
- package/dist/v2/utils/networkStatus.d.ts +88 -0
- package/dist/v2/utils/networkStatus.d.ts.map +1 -0
- package/dist/v2/utils/networkStatus.js +121 -0
- package/dist/v2/utils/networkStatus.js.map +1 -0
- package/package.json +198 -76
- package/dist/api/guideApi.js +0 -12
- package/dist/api/guideImageService.js +0 -119
- package/dist/api/reclamationApi.js +0 -119
- package/dist/assets/guides/FAQ.json +0 -118
- package/dist/assets/guides/index.js +0 -11
- package/dist/assets/images/tijariaLogo.ico +0 -0
- package/dist/components/buttons/PuiButton.js +0 -217
- package/dist/components/buttons/PuiIconButton.js +0 -98
- package/dist/components/common/PuiAlertContext.js +0 -12
- package/dist/components/common/PuiHelpWidgetContext.js +0 -17
- package/dist/components/common/StyledMuiButton.js +0 -48
- package/dist/components/common/StyledMuiTextField.js +0 -180
- package/dist/components/inputs/PuiAutocomplete.js +0 -352
- package/dist/components/inputs/PuiCheckbox.js +0 -308
- package/dist/components/inputs/PuiCheckboxGroup.js +0 -215
- package/dist/components/inputs/PuiCheckboxItem.js +0 -162
- package/dist/components/inputs/PuiDateField.js +0 -280
- package/dist/components/inputs/PuiDateTimeField.js +0 -276
- package/dist/components/inputs/PuiFileField.js +0 -265
- package/dist/components/inputs/PuiRadioGroup.js +0 -197
- package/dist/components/inputs/PuiRadioItem.js +0 -100
- package/dist/components/inputs/PuiSelect.js +0 -427
- package/dist/components/inputs/PuiTextField.js +0 -263
- package/dist/components/others/PuiBadge.js +0 -58
- package/dist/components/others/PuiChip.js +0 -150
- package/dist/components/others/PuiDialog.js +0 -102
- package/dist/components/others/PuiFormikForm.js +0 -70
- package/dist/components/others/PuiGrid.js +0 -23
- package/dist/components/others/PuiIcon.js +0 -92
- package/dist/components/others/PuiLoadingBackdrop.js +0 -32
- package/dist/components/others/PuiMainContainer.js +0 -41
- package/dist/components/others/PuiNavigation.js +0 -68
- package/dist/components/others/PuiSection.js +0 -187
- package/dist/components/others/PuiTooltip.js +0 -86
- package/dist/components/providers/PuiAlertProvider.js +0 -134
- package/dist/components/providers/PuiHelpWidgetProvider.js +0 -91
- package/dist/components/providers/PuiLocalizationProvider.js +0 -34
- package/dist/components/referentiel/common/ReferetielContext.js +0 -12
- package/dist/components/referentiel/common/constants/specificReferentielsApis.js +0 -22
- package/dist/components/referentiel/common/constants/specificReferentielsBaseColumns.js +0 -691
- package/dist/components/referentiel/common/constants/specificReferentielsBaseFilters.js +0 -598
- package/dist/components/referentiel/common/constants/specificReferentielsInitialValues.js +0 -80
- package/dist/components/referentiel/common/constants/specificReferentielsKeys.js +0 -18
- package/dist/components/referentiel/common/constants/specificReferentielsTitles.js +0 -22
- package/dist/components/referentiel/common/constants/specificReferentielsValidationSchemas.js +0 -85
- package/dist/components/referentiel/components/PuiBasePopupReferentielField.js +0 -356
- package/dist/components/referentiel/components/PuiCustomPopupReferentielField.js +0 -181
- package/dist/components/referentiel/components/PuiSimplePopupReferentielField.js +0 -325
- package/dist/components/referentiel/components/PuiSimpleReferentielField.js +0 -203
- package/dist/components/referentiel/components/PuiSpecificReferentielField.js +0 -352
- package/dist/components/referentiel/providers/PuiReferentielProvider.js +0 -66
- package/dist/components/tab/PuiTab.js +0 -25
- package/dist/components/tab/PuiTabs.js +0 -148
- package/dist/components/table/PuiTable.js +0 -643
- package/dist/components/table/PuiTableAction.js +0 -75
- package/dist/components/typography/PuiDefinition.js +0 -42
- package/dist/components/typography/PuiIndication.js +0 -80
- package/dist/components/typography/PuiMainTitle.js +0 -144
- package/dist/components/ui/dialogs/PuiSearchDialog.js +0 -106
- package/dist/components/ui/pages/errors/PuiErrorBasePage.js +0 -73
- package/dist/components/ui/pages/errors/PuiForbiddenErrorPage.js +0 -36
- package/dist/components/ui/pages/errors/PuiNetworkErrorPage.js +0 -36
- package/dist/components/ui/pages/errors/PuiNotFoundErrorPage.js +0 -30
- package/dist/components/ui/pages/errors/PuiServerErrorPage.js +0 -37
- package/dist/components/ui/pages/general/PuiDefaultPage.js +0 -68
- package/dist/components/ui/pages/general/PuiSearchPage.js +0 -203
- package/dist/components/widgets/GuideImage.js +0 -251
- package/dist/components/widgets/PuiHelpWidget.js +0 -4276
- package/dist/config/apperance.js +0 -26
- package/dist/config/mapping.js +0 -26
- package/dist/config/referentiel.js +0 -10
- package/dist/general/yupValidationErrors.js +0 -8
- package/dist/hooks/useAlert.js +0 -19
- package/dist/hooks/useAxios.js +0 -23
- package/dist/hooks/useQuery.js +0 -21
- package/dist/hooks/useReclamation.js +0 -116
- package/dist/styles/ReclamationFormModal.css +0 -629
- package/dist/styles/help-widget.css +0 -621
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReferentielField.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_IconButton","_Search","_Close","_Field","_Input","_Combobox","_DatePicker","_Button","_Banner","_Modal","_DataGrid","_EmptyState","_mergeLabels","_jsxRuntime","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_regeneratorRuntime","exports","Op","hasOwn","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","type","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","state","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","done","methodName","undefined","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","_catch","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","args","arguments","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","Array","from","test","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","isArray","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","filter","sym","_objectSpread","target","source","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","String","input","hint","prim","toPrimitive","res","Number","DEFAULT_LABELS","freeze","searchAria","clearAria","modalCancel","modalConfirm","searchSubmit","resultsHeading","concat","initialEmptyTitle","initialEmptyHint","noResultsTitle","noResultsHint","errorTitle","errorRetry","loadingHint","placeholder","DEFAULT_PAGE_SIZE","DEFAULT_PAGE_SIZES","defaultGetRowId","row","id","renderCriterionField","c","onChange","_c$options","kind","jsx","_target$value","_target","extracted","options","loading","Boolean","getOptionLabel","disableFuture","e","ReferentielField","_ref","getDisplayValue","_ref$disabled","disabled","_ref$readOnly","readOnly","_ref$clearable","clearable","_ref$title","title","subtitle","_ref$size","size","modalProps","search","_ref$criteria","criteria","initialCriteria","_ref$columns","columns","_ref$pageSize","pageSize","pageSizeProp","_ref$pageSizes","pageSizes","_ref$getRowId","getRowId","_ref$confirmOnSelecti","confirmOnSelection","sort","onSortChange","labels","locale","ariaInvalid","ariaRequired","ariaDescribedBy","L","useMemo","mergeLabels","_React$useState","useState","_React$useState2","open","setOpen","triggerRef","useRef","openModal","useCallback","closeModal","setTimeout","el","current","focus","preventScroll","seedCriteria","seed","_React$useState3","_React$useState4","draft","setDraft","useEffect","_React$useState5","_React$useState6","page","setPage","_React$useState7","_React$useState8","setPageSize","_React$useState9","_React$useState0","items","setItems","_React$useState1","_React$useState10","total","setTotal","_React$useState11","_React$useState12","setLoading","_React$useState13","_React$useState14","setError","_React$useState15","_React$useState16","hasSearched","setHasSearched","_React$useState17","_React$useState18","pendingSelection","setPendingSelection","requestSeq","runSearch","_callee","_overrides$criteria","_overrides$page","_overrides$pageSize","overrides","myReq","effective","nextTotal","_args","_callee$","_context","isFinite","t0","onSubmitCriteria","preventDefault","onPageChange","nextPage","onPageSizeChange","nextPageSize","handleRowClick","handleConfirmSelection","handleClear","stopPropagation","display","_getDisplayValue","_unused","v","description","label","code","pagination","initialEmpty","variant","filteredEmpty","errorState","action","onClick","children","message","showClear","triggerAria","trigger","ref","onKeyDown","inputProps","sx","cursor","endIcon","jsxs","alignItems","gap","edge","color","fontSize","criteriaRow","component","onSubmit","gridTemplateColumns","xs","sm","md","Math","min","marginBottom","map","d","justifyContent","liveResults","className","decoratedRows","pendingId","r","__pending","footer","Fragment","onClose","rows","onRowClick","emptyState","filteredEmptyState","filtered","rowFlashId","_default"],"sources":["../../../src/lib/v2/patterns/ReferentielField.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport IconButton from \"@mui/material/IconButton\";\r\nimport SearchIcon from \"@mui/icons-material/Search\";\r\nimport ClearIcon from \"@mui/icons-material/Close\";\r\n\r\nimport Field from \"../components/Field\";\r\nimport Input from \"../components/Input\";\r\nimport Combobox from \"../components/Combobox\";\r\nimport type { ComboboxOption, ComboboxOptionValue, ComboboxValue } from \"../components/Combobox\";\r\nimport DatePicker from \"../components/DatePicker\";\r\nimport Button from \"../components/Button\";\r\nimport Banner from \"../components/Banner\";\r\nimport Modal from \"../components/Modal\";\r\nimport DataGrid from \"./DataGrid\";\r\nimport EmptyState from \"../components/EmptyState\";\r\nimport type { DataGridColumn } from \"../types/datagrid\";\r\nimport type { RowId, SortDescriptor } from \"../types/common\";\r\nimport { mergeLabels } from \"../utils/mergeLabels\";\r\n\r\n/**\r\n * ReferentielField — Portnet UI v2 (pattern)\r\n *\r\n * Charter §03 · Component \"Referentiel · Search-and-select\".\r\n *\r\n * Use this when:\r\n * - The selectable population is too large for <Combobox> to load.\r\n * - The host needs MULTI-CRITERIA search.\r\n * - The result rows benefit from a structured view.\r\n *\r\n * Criteria shape (B17 extension)\r\n * ------------------------------\r\n * Each criterion descriptor accepts:\r\n *\r\n * { name, label, placeholder, hint, kind, options, loading,\r\n * getOptionValue, getOptionLabel, disableFuture }\r\n *\r\n * - kind — discriminator: \"input\" (default) | \"combobox\" | \"date\"\r\n *\r\n * The B17 extension is purely additive: existing call sites with\r\n * `criteria=[{name, label}]` keep rendering plain Inputs because\r\n * `kind` defaults to \"input\".\r\n *\r\n * A11y trigger (audit Batch 5, finding B4-3):\r\n * The trigger Input acts as a combobox-like disclosure for a dialog\r\n * (the search Modal). aria-haspopup=\"dialog\" + aria-expanded MUST sit\r\n * on the FOCUSABLE element (the <input/>), so every aria-* on the\r\n * trigger is routed through `inputProps` → slotProps.input. This\r\n * includes the Field-injected aria-invalid / aria-required /\r\n * aria-describedby so the whole aria contract lives on one element.\r\n */\r\n\r\n/** Localisable strings; `resultsHeading` is a function for plural rules. */\r\nexport interface ReferentielFieldLabels {\r\n searchAria?: string | undefined;\r\n clearAria?: string | undefined;\r\n modalCancel?: React.ReactNode | undefined;\r\n modalConfirm?: React.ReactNode | undefined;\r\n searchSubmit?: React.ReactNode | undefined;\r\n resultsHeading?: ((n: number) => string) | undefined;\r\n initialEmptyTitle?: React.ReactNode | undefined;\r\n initialEmptyHint?: React.ReactNode | undefined;\r\n noResultsTitle?: React.ReactNode | undefined;\r\n noResultsHint?: React.ReactNode | undefined;\r\n errorTitle?: React.ReactNode | undefined;\r\n errorRetry?: React.ReactNode | undefined;\r\n loadingHint?: React.ReactNode | undefined;\r\n placeholder?: string | undefined;\r\n}\r\n\r\n/** One search criterion. combobox/date-only fields reuse the real\r\n * component prop types so they stay exactly aligned. */\r\nexport interface ReferentielCriterion {\r\n name: string;\r\n label: React.ReactNode;\r\n placeholder?: string | undefined;\r\n hint?: React.ReactNode | undefined;\r\n kind?: \"input\" | \"combobox\" | \"date\" | undefined;\r\n options?: React.ComponentProps<typeof Combobox>[\"options\"] | undefined;\r\n loading?: boolean | undefined;\r\n /**\r\n * Accepted for backward API compatibility with older criterion configs.\r\n * Combobox has no equivalent hook (it resolves value/label straight off\r\n * each option's own .value/.label), so this is currently NOT wired into\r\n * the \"combobox\" kind's render below — kept typed rather than removed so\r\n * any existing caller that sets it doesn't get a compile error.\r\n */\r\n getOptionValue?: ((option: ComboboxOption | ComboboxOptionValue) => ComboboxOptionValue) | undefined;\r\n getOptionLabel?: React.ComponentProps<typeof Combobox>[\"getOptionLabel\"] | undefined;\r\n disableFuture?: boolean | undefined;\r\n}\r\n\r\nexport interface ReferentielSearchParams {\r\n criteria: Record<string, unknown>;\r\n page: number;\r\n pageSize: number;\r\n sort: SortDescriptor[] | undefined;\r\n}\r\n\r\nexport interface ReferentielSearchResult<T> {\r\n items: T[];\r\n total?: number | undefined;\r\n}\r\n\r\nexport interface ReferentielFieldProps<T> {\r\n // Value contract\r\n value?: T | null | undefined;\r\n onChange?: ((value: T | null) => void) | undefined;\r\n getDisplayValue?: ((value: T) => string) | undefined;\r\n placeholder?: string | undefined;\r\n disabled?: boolean | undefined;\r\n readOnly?: boolean | undefined;\r\n clearable?: boolean | undefined;\r\n // Modal\r\n title?: React.ReactNode | undefined;\r\n subtitle?: React.ReactNode | undefined;\r\n size?: \"sm\" | \"md\" | \"lg\" | \"xl\" | undefined;\r\n modalProps?: Partial<React.ComponentProps<typeof Modal>> | undefined;\r\n // Search contract\r\n search: (\r\n params: ReferentielSearchParams\r\n ) => ReferentielSearchResult<T> | Promise<ReferentielSearchResult<T>>;\r\n criteria?: ReferentielCriterion[] | undefined;\r\n initialCriteria?: Record<string, unknown> | undefined;\r\n columns: DataGridColumn<T>[];\r\n pageSize?: number | undefined;\r\n pageSizes?: number[] | undefined;\r\n getRowId?: ((row: T) => RowId) | undefined;\r\n // Selection UX\r\n confirmOnSelection?: boolean | undefined;\r\n // Sort (delegated to DataGrid)\r\n sort?: SortDescriptor[] | undefined;\r\n onSortChange?: React.Dispatch<React.SetStateAction<SortDescriptor[]>> | undefined;\r\n // Localisation\r\n labels?: ReferentielFieldLabels | undefined;\r\n locale?: string | undefined;\r\n // Forwarded down so Field can wire id / aria-* / name\r\n id?: string | undefined;\r\n name?: string | undefined;\r\n \"aria-invalid\"?: React.AriaAttributes[\"aria-invalid\"] | undefined;\r\n \"aria-required\"?: React.AriaAttributes[\"aria-required\"] | undefined;\r\n \"aria-describedby\"?: string | undefined;\r\n}\r\n\r\nconst DEFAULT_LABELS = Object.freeze({\r\n searchAria: \"Rechercher\",\r\n clearAria: \"Effacer la sélection\",\r\n modalCancel: \"Annuler\",\r\n modalConfirm: \"Sélectionner\",\r\n searchSubmit: \"Rechercher\",\r\n resultsHeading: (n: number) => `${n} résultat${n > 1 ? \"s\" : \"\"}`,\r\n initialEmptyTitle: \"Aucune recherche\",\r\n initialEmptyHint: \"Saisissez un critère puis lancez la recherche.\",\r\n noResultsTitle: \"Aucun résultat\",\r\n noResultsHint: \"Modifiez vos critères et relancez la recherche.\",\r\n errorTitle: \"Recherche impossible\",\r\n errorRetry: \"Réessayer\",\r\n loadingHint: \"Recherche en cours…\",\r\n placeholder: \"Sélectionner…\",\r\n});\r\n\r\nconst DEFAULT_PAGE_SIZE = 25;\r\nconst DEFAULT_PAGE_SIZES = [25, 50, 100];\r\n\r\n/* Default getRowId (`(r) => r.id`); `(unknown) => RowId` is assignable to\r\n * the declared `(row: T) => RowId` by parameter contravariance. */\r\nconst defaultGetRowId = (row: unknown): RowId => (row as { id: RowId }).id;\r\n\r\n/* B17 — render a single criterion based on its `kind` discriminator.\r\n * Falls back to Input for unknown kinds. The draft value is `unknown`\r\n * (criteria are heterogeneous); one assertion at each value seam. */\r\nfunction renderCriterionField(\r\n c: ReferentielCriterion,\r\n value: unknown,\r\n onChange: (next: unknown) => void\r\n): React.ReactElement {\r\n const kind = c.kind || \"input\";\r\n\r\n switch (kind) {\r\n case \"combobox\":\r\n return (\r\n <Combobox\r\n value={(value ?? \"\") as ComboboxValue}\r\n onChange={(next) => {\r\n // Combobox may emit either a raw value or an event-like object;\r\n // extract defensively in a way that is sound for any shape.\r\n const extracted =\r\n next && typeof next === \"object\" && \"target\" in next\r\n ? ((next as { target?: { value?: unknown } }).target?.value ??\r\n next)\r\n : next;\r\n onChange(extracted);\r\n }}\r\n options={c.options ?? []}\r\n loading={Boolean(c.loading)}\r\n {...(c.getOptionLabel !== undefined ? { getOptionLabel: c.getOptionLabel } : {})}\r\n {...(c.placeholder !== undefined ? { placeholder: c.placeholder } : {})}\r\n />\r\n );\r\n case \"date\":\r\n return (\r\n <DatePicker\r\n name={c.name}\r\n value={(value ?? null) as Date | null}\r\n onChange={(next) => onChange(next)}\r\n disableFuture={Boolean(c.disableFuture)}\r\n {...(c.placeholder !== undefined ? { placeholder: c.placeholder } : {})}\r\n />\r\n );\r\n case \"input\":\r\n default:\r\n return (\r\n <Input\r\n name={c.name}\r\n value={(value ?? \"\") as string}\r\n onChange={(e) => onChange(e.target.value)}\r\n placeholder={c.placeholder}\r\n />\r\n );\r\n }\r\n}\r\n\r\nfunction ReferentielField<T>({\r\n value,\r\n onChange,\r\n // Display / trigger\r\n getDisplayValue,\r\n placeholder,\r\n disabled = false,\r\n readOnly = false,\r\n clearable = true,\r\n // Modal content\r\n title = \"Rechercher\",\r\n subtitle,\r\n size = \"lg\",\r\n modalProps,\r\n // Search contract\r\n search,\r\n criteria = [],\r\n initialCriteria,\r\n columns = [],\r\n pageSize: pageSizeProp = DEFAULT_PAGE_SIZE,\r\n pageSizes = DEFAULT_PAGE_SIZES,\r\n getRowId = defaultGetRowId,\r\n // Selection UX\r\n confirmOnSelection = false,\r\n // Sort (delegated to DataGrid)\r\n sort,\r\n onSortChange,\r\n // Localisation\r\n labels,\r\n locale,\r\n // Forwarded down so Field can wire id / aria-* / name\r\n id,\r\n name,\r\n \"aria-invalid\": ariaInvalid,\r\n \"aria-required\": ariaRequired,\r\n \"aria-describedby\": ariaDescribedBy,\r\n}: ReferentielFieldProps<T>) {\r\n const L = React.useMemo(\r\n () => (mergeLabels(DEFAULT_LABELS, labels)),\r\n [labels]\r\n );\r\n\r\n /* ── Modal lifecycle ──────────────────────────────────────── */\r\n const [open, setOpen] = React.useState(false);\r\n const triggerRef = React.useRef<React.ElementRef<typeof Input>>(null);\r\n\r\n const openModal = React.useCallback(() => {\r\n if (disabled || readOnly) return;\r\n setOpen(true);\r\n }, [disabled, readOnly]);\r\n\r\n const closeModal = React.useCallback(() => {\r\n setOpen(false);\r\n setTimeout(() => {\r\n // triggerRef's element type resolves to `{}` via React.ElementRef<typeof\r\n // Input> (a TS inference gap, not a real absence of .focus at runtime —\r\n // Input forwards its ref to a real focusable element). Cast narrowly at\r\n // the point of use rather than widening the ref's declared type, so the\r\n // `ref={triggerRef}` binding on <Input> below is unaffected.\r\n const el = triggerRef.current as { focus?: (options?: FocusOptions) => void } | null;\r\n if (el && typeof el.focus === \"function\") {\r\n el.focus({ preventScroll: true });\r\n }\r\n }, 0);\r\n }, []);\r\n\r\n /* ── Criteria draft + search state ───────────────────────── */\r\n const seedCriteria = React.useMemo(() => {\r\n const seed: Record<string, unknown> = {};\r\n (criteria || []).forEach((c) => {\r\n seed[c.name] = (initialCriteria && initialCriteria[c.name]) || \"\";\r\n });\r\n return seed;\r\n }, [criteria, initialCriteria]);\r\n\r\n const [draft, setDraft] = React.useState<Record<string, unknown>>(seedCriteria);\r\n\r\n React.useEffect(() => {\r\n if (open) setDraft(seedCriteria);\r\n }, [open, seedCriteria]);\r\n\r\n const [page, setPage] = React.useState(1);\r\n const [pageSize, setPageSize] = React.useState(pageSizeProp);\r\n\r\n const [items, setItems] = React.useState<T[]>([]);\r\n const [total, setTotal] = React.useState(0);\r\n const [loading, setLoading] = React.useState(false);\r\n const [error, setError] = React.useState<Error | null>(null);\r\n const [hasSearched, setHasSearched] = React.useState(false);\r\n const [pendingSelection, setPendingSelection] = React.useState<T | null>(null);\r\n\r\n /* ── Search executor ─────────────────────────────────────── */\r\n const requestSeq = React.useRef(0);\r\n\r\n const runSearch = React.useCallback(\r\n async (\r\n overrides: {\r\n criteria?: Record<string, unknown>;\r\n page?: number;\r\n pageSize?: number;\r\n } = {}\r\n ) => {\r\n if (typeof search !== \"function\") return;\r\n const myReq = ++requestSeq.current;\r\n const effective: ReferentielSearchParams = {\r\n criteria: overrides.criteria ?? draft,\r\n page: overrides.page ?? 1,\r\n pageSize: overrides.pageSize ?? pageSize,\r\n sort,\r\n };\r\n setLoading(true);\r\n setError(null);\r\n setHasSearched(true);\r\n try {\r\n const result = await search(effective);\r\n if (myReq !== requestSeq.current) return;\r\n setItems(Array.isArray(result.items) ? result.items : []);\r\n const nextTotal =\r\n typeof result.total === \"number\" && Number.isFinite(result.total)\r\n ? result.total\r\n : result.items.length;\r\n setTotal(nextTotal);\r\n setPage(effective.page);\r\n setPageSize(effective.pageSize);\r\n } catch (e) {\r\n if (myReq !== requestSeq.current) return;\r\n setError(e instanceof Error ? e : new Error(\"search failed\"));\r\n setItems([]);\r\n setTotal(0);\r\n } finally {\r\n if (myReq === requestSeq.current) setLoading(false);\r\n }\r\n },\r\n [search, draft, pageSize, sort]\r\n );\r\n\r\n /* ── Form submission inside the modal ────────────────────── */\r\n const onSubmitCriteria = (e: React.FormEvent<HTMLFormElement>) => {\r\n e.preventDefault();\r\n setPendingSelection(null);\r\n runSearch({ criteria: draft, page: 1 });\r\n };\r\n\r\n const onPageChange = (nextPage: number) => {\r\n runSearch({ page: nextPage });\r\n };\r\n const onPageSizeChange = (nextPageSize: number) => {\r\n runSearch({ page: 1, pageSize: nextPageSize });\r\n };\r\n\r\n /* ── Selection ───────────────────────────────────────────── */\r\n const handleRowClick = (row: T) => {\r\n if (confirmOnSelection) {\r\n setPendingSelection(row);\r\n return;\r\n }\r\n onChange?.(row);\r\n closeModal();\r\n };\r\n\r\n const handleConfirmSelection = () => {\r\n if (!pendingSelection) return;\r\n onChange?.(pendingSelection);\r\n setPendingSelection(null);\r\n closeModal();\r\n };\r\n\r\n const handleClear = (e: React.MouseEvent<HTMLButtonElement>) => {\r\n e.stopPropagation();\r\n if (disabled || readOnly) return;\r\n onChange?.(null);\r\n };\r\n\r\n /* ── Trigger display ─────────────────────────────────────── */\r\n const display = React.useMemo<string>(() => {\r\n if (value == null || value === \"\") return \"\";\r\n if (typeof getDisplayValue === \"function\") {\r\n try {\r\n return getDisplayValue(value) ?? \"\";\r\n } catch {\r\n return \"\";\r\n }\r\n }\r\n if (typeof value === \"string\") return value;\r\n if (value && typeof value === \"object\") {\r\n const v = value as {\r\n description?: string;\r\n label?: string;\r\n name?: string;\r\n code?: string;\r\n };\r\n return v.description || v.label || v.name || v.code || \"\";\r\n }\r\n return String(value);\r\n }, [value, getDisplayValue]);\r\n\r\n /* ── DataGrid pagination contract ────────────────────────── */\r\n const pagination = React.useMemo(\r\n () => ({\r\n page,\r\n pageSize,\r\n total,\r\n pageSizes,\r\n onPageChange,\r\n onPageSizeChange,\r\n }),\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n [page, pageSize, total, pageSizes]\r\n );\r\n\r\n /* ── Empty / error states for DataGrid ───────────────────── */\r\n const initialEmpty = (\r\n <EmptyState\r\n variant=\"initial\"\r\n title={L.initialEmptyTitle}\r\n description={L.initialEmptyHint}\r\n />\r\n );\r\n const filteredEmpty = (\r\n <EmptyState\r\n variant=\"filtered\"\r\n title={L.noResultsTitle}\r\n description={L.noResultsHint}\r\n />\r\n );\r\n const errorState = (\r\n <Banner\r\n variant=\"error\"\r\n title={L.errorTitle}\r\n action={{ label: L.errorRetry, onClick: () => runSearch({ page: 1 }) }}\r\n >\r\n {error?.message || String(error || \"\")}\r\n </Banner>\r\n );\r\n\r\n /* ── Render the trigger ──────────────────────────────────── */\r\n const showClear = clearable && !disabled && !readOnly && Boolean(display);\r\n\r\n // B4-3 fix — bundle every aria-* attribute of the trigger so v2.Input\r\n // routes them into slotProps.input → the native <input/>. Typed as\r\n // AriaAttributes so \"aria-haspopup\":\"dialog\" stays a valid literal.\r\n const triggerAria = React.useMemo<React.AriaAttributes>(\r\n () => ({\r\n \"aria-haspopup\": \"dialog\",\r\n \"aria-expanded\": open,\r\n ...(ariaInvalid != null ? { \"aria-invalid\": ariaInvalid } : {}),\r\n ...(ariaRequired != null ? { \"aria-required\": ariaRequired } : {}),\r\n ...(ariaDescribedBy ? { \"aria-describedby\": ariaDescribedBy } : {}),\r\n }),\r\n [open, ariaInvalid, ariaRequired, ariaDescribedBy]\r\n );\r\n\r\n const trigger = (\r\n <Input\r\n ref={triggerRef}\r\n id={id}\r\n name={name}\r\n value={display}\r\n placeholder={placeholder ?? L.placeholder}\r\n readOnly\r\n disabled={disabled}\r\n onClick={openModal}\r\n onKeyDown={(e) => {\r\n if (e.key === \"Enter\" || e.key === \" \") {\r\n e.preventDefault();\r\n openModal();\r\n }\r\n }}\r\n inputProps={triggerAria}\r\n sx={{\r\n cursor: disabled ? \"not-allowed\" : \"pointer\",\r\n \"& input\": { cursor: disabled ? \"not-allowed\" : \"pointer\" },\r\n }}\r\n endIcon={\r\n <Box\r\n sx={{ display: \"inline-flex\", alignItems: \"center\", gap: \"var(--s-1)\" }}\r\n >\r\n {showClear && (\r\n <IconButton\r\n type=\"button\"\r\n size=\"small\"\r\n onClick={handleClear}\r\n aria-label={L.clearAria}\r\n edge=\"end\"\r\n sx={{ color: \"var(--fg-subtle)\" }}\r\n >\r\n <ClearIcon fontSize=\"small\" />\r\n </IconButton>\r\n )}\r\n <IconButton\r\n type=\"button\"\r\n size=\"small\"\r\n onClick={(e) => {\r\n e.stopPropagation();\r\n openModal();\r\n }}\r\n aria-label={L.searchAria}\r\n edge=\"end\"\r\n disabled={disabled}\r\n sx={{ color: \"var(--accent)\" }}\r\n >\r\n <SearchIcon fontSize=\"small\" />\r\n </IconButton>\r\n </Box>\r\n }\r\n />\r\n );\r\n\r\n /* ── Modal body ──────────────────────────────────────────── */\r\n const criteriaRow = criteria.length > 0 && (\r\n <Box\r\n component=\"form\"\r\n onSubmit={onSubmitCriteria}\r\n sx={{\r\n display: \"grid\",\r\n gap: \"var(--s-3)\",\r\n gridTemplateColumns: {\r\n xs: \"1fr\",\r\n sm: criteria.length > 1 ? \"1fr 1fr\" : \"1fr\",\r\n md: `repeat(${Math.min(criteria.length, 3)}, 1fr) auto`,\r\n },\r\n alignItems: \"end\",\r\n marginBottom: \"var(--s-4)\",\r\n }}\r\n >\r\n {criteria.map((c) => (\r\n <Field key={c.name} label={c.label} hint={c.hint}>\r\n {renderCriterionField(c, draft[c.name], (next) =>\r\n setDraft((d) => ({ ...d, [c.name]: next }))\r\n )}\r\n </Field>\r\n ))}\r\n <Box sx={{ display: \"flex\", justifyContent: \"flex-end\" }}>\r\n <Button variant=\"primary\" type=\"submit\" loading={loading}>\r\n {L.searchSubmit}\r\n </Button>\r\n </Box>\r\n </Box>\r\n );\r\n\r\n const liveResults = (\r\n <Box aria-live=\"polite\" aria-atomic=\"true\" className=\"pui-sr-only\">\r\n {hasSearched && !loading && !error ? L.resultsHeading(total) : \"\"}\r\n </Box>\r\n );\r\n\r\n const decoratedRows = React.useMemo<T[]>(() => {\r\n if (!confirmOnSelection || !pendingSelection) return items;\r\n const pendingId = getRowId(pendingSelection);\r\n return items.map((r) =>\r\n getRowId(r) === pendingId ? { ...r, __pending: true } : r\r\n );\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [items, pendingSelection, confirmOnSelection]);\r\n\r\n /* ── Modal footer ────────────────────────────────────────── */\r\n const footer = (\r\n <>\r\n <Button variant=\"ghost\" onClick={closeModal}>\r\n {L.modalCancel}\r\n </Button>\r\n {confirmOnSelection && (\r\n <Button\r\n variant=\"primary\"\r\n disabled={!pendingSelection}\r\n onClick={handleConfirmSelection}\r\n >\r\n {L.modalConfirm}\r\n </Button>\r\n )}\r\n </>\r\n );\r\n\r\n return (\r\n <>\r\n {trigger}\r\n <Modal\r\n open={open}\r\n onClose={closeModal}\r\n title={title}\r\n subtitle={subtitle}\r\n size={size}\r\n footer={footer}\r\n {...modalProps}\r\n >\r\n {criteriaRow}\r\n {liveResults}\r\n <DataGrid\r\n rows={decoratedRows}\r\n columns={columns}\r\n loading={loading}\r\n error={error}\r\n onRowClick={handleRowClick}\r\n pagination={pagination}\r\n getRowId={getRowId}\r\n emptyState={initialEmpty}\r\n filteredEmptyState={filteredEmpty}\r\n errorState={errorState}\r\n filtered={hasSearched}\r\n {...(sort !== undefined ? { sort } : {})}\r\n {...(onSortChange !== undefined ? { onSortChange } : {})}\r\n {...(locale !== undefined ? { locale } : {})}\r\n {...(confirmOnSelection && pendingSelection\r\n ? { rowFlashId: getRowId(pendingSelection) }\r\n : {})}\r\n />\r\n </Modal>\r\n </>\r\n );\r\n}\r\n\r\nexport default ReferentielField;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* SaveFilterDialog - Portnet UI v2 (pattern)
|
|
4
|
+
*
|
|
5
|
+
* "Save current filter" dialog for the Saved Filters framework
|
|
6
|
+
* (v2/personalization · savedFilters). Built on the v2 Modal, so it
|
|
7
|
+
* inherits the focus trap, Esc / backdrop / X close affordances, and the
|
|
8
|
+
* aria-labelledby contract (Charter R-M.*).
|
|
9
|
+
*
|
|
10
|
+
* Presentational and provider-FREE by design: it collects a name and two
|
|
11
|
+
* options and emits them via `onSubmit`. The parent (SavedFiltersMenu or
|
|
12
|
+
* a host) persists through useSavedFilters().save and closes the dialog.
|
|
13
|
+
*
|
|
14
|
+
* <SaveFilterDialog
|
|
15
|
+
* open={open}
|
|
16
|
+
* onClose={() => setOpen(false)}
|
|
17
|
+
* existingNames={filters.map(f => f.name)}
|
|
18
|
+
* allowDefault
|
|
19
|
+
* onSubmit={({ name, isDefault, shared }) => {
|
|
20
|
+
* save({ name, criteria: currentCriteria, isDefault, shared });
|
|
21
|
+
* setOpen(false);
|
|
22
|
+
* }}
|
|
23
|
+
* />
|
|
24
|
+
*
|
|
25
|
+
* Name is required (validated on submit; the error is announced via
|
|
26
|
+
* Field's role="alert" binding). A duplicate name is allowed (Odoo-style)
|
|
27
|
+
* but surfaced as a non-blocking hint.
|
|
28
|
+
*/
|
|
29
|
+
export interface SaveFilterDialogSubmit {
|
|
30
|
+
name: string;
|
|
31
|
+
isDefault: boolean;
|
|
32
|
+
shared: boolean;
|
|
33
|
+
}
|
|
34
|
+
export interface SaveFilterDialogLabels {
|
|
35
|
+
title: string;
|
|
36
|
+
nameLabel: string;
|
|
37
|
+
namePlaceholder: string;
|
|
38
|
+
nameRequired: string;
|
|
39
|
+
duplicateHint: string;
|
|
40
|
+
setAsDefault: string;
|
|
41
|
+
shareLabel: string;
|
|
42
|
+
shareHint: string;
|
|
43
|
+
cancel: string;
|
|
44
|
+
save: string;
|
|
45
|
+
}
|
|
46
|
+
export interface SaveFilterDialogProps {
|
|
47
|
+
open?: boolean | undefined;
|
|
48
|
+
/** Required — a dialog must be closable (fed to Modal + both footer buttons). */
|
|
49
|
+
onClose: () => void;
|
|
50
|
+
/** Emitted on a valid submit: ({ name, isDefault, shared }) => void. */
|
|
51
|
+
onSubmit?: ((values: SaveFilterDialogSubmit) => void) | undefined;
|
|
52
|
+
initialName?: string | undefined;
|
|
53
|
+
initialIsDefault?: boolean | undefined;
|
|
54
|
+
initialShared?: boolean | undefined;
|
|
55
|
+
/** Show the "set as default" switch. */
|
|
56
|
+
allowDefault?: boolean | undefined;
|
|
57
|
+
/** Show the "share with team" switch (modelled, not enforced in Phase 1). */
|
|
58
|
+
allowShared?: boolean | undefined;
|
|
59
|
+
/** Existing filter names, for a non-blocking duplicate hint. */
|
|
60
|
+
existingNames?: readonly string[] | undefined;
|
|
61
|
+
/** Disable the submit button while a save is in flight. */
|
|
62
|
+
busy?: boolean | undefined;
|
|
63
|
+
/** Localised labels (FR default; EN/AR supported). */
|
|
64
|
+
labels?: Partial<SaveFilterDialogLabels> | undefined;
|
|
65
|
+
}
|
|
66
|
+
declare function SaveFilterDialog(props: SaveFilterDialogProps): React.JSX.Element;
|
|
67
|
+
export default SaveFilterDialog;
|
|
68
|
+
//# sourceMappingURL=SaveFilterDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SaveFilterDialog.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/patterns/SaveFilterDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAW/B;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAqBD,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,iFAAiF;IACjF,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAClE,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,wCAAwC;IACxC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,6EAA6E;IAC7E,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAClC,gEAAgE;IAChE,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;IAC9C,2DAA2D;IAC3D,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,sDAAsD;IACtD,MAAM,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GAAG,SAAS,CAAC;CACtD;AAED,iBAAS,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA2HzE;AAED,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var React = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
10
|
+
var _Modal = _interopRequireDefault(require("../components/Modal"));
|
|
11
|
+
var _Field = _interopRequireDefault(require("../components/Field"));
|
|
12
|
+
var _Input = _interopRequireDefault(require("../components/Input"));
|
|
13
|
+
var _Switch = _interopRequireDefault(require("../components/Switch"));
|
|
14
|
+
var _Button = _interopRequireDefault(require("../components/Button"));
|
|
15
|
+
var _mergeLabels = require("../utils/mergeLabels");
|
|
16
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
18
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
20
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
21
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
22
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
23
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
24
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
25
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
26
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
27
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
28
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
29
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) { ; } } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
30
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /**
|
|
31
|
+
* SaveFilterDialog - Portnet UI v2 (pattern)
|
|
32
|
+
*
|
|
33
|
+
* "Save current filter" dialog for the Saved Filters framework
|
|
34
|
+
* (v2/personalization · savedFilters). Built on the v2 Modal, so it
|
|
35
|
+
* inherits the focus trap, Esc / backdrop / X close affordances, and the
|
|
36
|
+
* aria-labelledby contract (Charter R-M.*).
|
|
37
|
+
*
|
|
38
|
+
* Presentational and provider-FREE by design: it collects a name and two
|
|
39
|
+
* options and emits them via `onSubmit`. The parent (SavedFiltersMenu or
|
|
40
|
+
* a host) persists through useSavedFilters().save and closes the dialog.
|
|
41
|
+
*
|
|
42
|
+
* <SaveFilterDialog
|
|
43
|
+
* open={open}
|
|
44
|
+
* onClose={() => setOpen(false)}
|
|
45
|
+
* existingNames={filters.map(f => f.name)}
|
|
46
|
+
* allowDefault
|
|
47
|
+
* onSubmit={({ name, isDefault, shared }) => {
|
|
48
|
+
* save({ name, criteria: currentCriteria, isDefault, shared });
|
|
49
|
+
* setOpen(false);
|
|
50
|
+
* }}
|
|
51
|
+
* />
|
|
52
|
+
*
|
|
53
|
+
* Name is required (validated on submit; the error is announced via
|
|
54
|
+
* Field's role="alert" binding). A duplicate name is allowed (Odoo-style)
|
|
55
|
+
* but surfaced as a non-blocking hint.
|
|
56
|
+
*/
|
|
57
|
+
var DEFAULT_LABELS = Object.freeze({
|
|
58
|
+
title: "Enregistrer le filtre",
|
|
59
|
+
nameLabel: "Nom du filtre",
|
|
60
|
+
namePlaceholder: "ex. Dossiers en attente",
|
|
61
|
+
nameRequired: "Le nom est obligatoire.",
|
|
62
|
+
duplicateHint: "Un filtre porte déjà ce nom.",
|
|
63
|
+
setAsDefault: "Appliquer par défaut à l'ouverture",
|
|
64
|
+
shareLabel: "Partager avec mon équipe",
|
|
65
|
+
shareHint: "Visible par les autres utilisateurs (selon les droits).",
|
|
66
|
+
cancel: "Annuler",
|
|
67
|
+
save: "Enregistrer"
|
|
68
|
+
});
|
|
69
|
+
var BODY_SX = Object.freeze({
|
|
70
|
+
display: "flex",
|
|
71
|
+
flexDirection: "column",
|
|
72
|
+
gap: "var(--s-4)"
|
|
73
|
+
});
|
|
74
|
+
function SaveFilterDialog(props) {
|
|
75
|
+
var _props$open = props.open,
|
|
76
|
+
open = _props$open === void 0 ? false : _props$open,
|
|
77
|
+
onClose = props.onClose,
|
|
78
|
+
onSubmit = props.onSubmit,
|
|
79
|
+
_props$initialName = props.initialName,
|
|
80
|
+
initialName = _props$initialName === void 0 ? "" : _props$initialName,
|
|
81
|
+
_props$initialIsDefau = props.initialIsDefault,
|
|
82
|
+
initialIsDefault = _props$initialIsDefau === void 0 ? false : _props$initialIsDefau,
|
|
83
|
+
_props$initialShared = props.initialShared,
|
|
84
|
+
initialShared = _props$initialShared === void 0 ? false : _props$initialShared,
|
|
85
|
+
_props$allowDefault = props.allowDefault,
|
|
86
|
+
allowDefault = _props$allowDefault === void 0 ? true : _props$allowDefault,
|
|
87
|
+
_props$allowShared = props.allowShared,
|
|
88
|
+
allowShared = _props$allowShared === void 0 ? false : _props$allowShared,
|
|
89
|
+
existingNames = props.existingNames,
|
|
90
|
+
_props$busy = props.busy,
|
|
91
|
+
busy = _props$busy === void 0 ? false : _props$busy,
|
|
92
|
+
labels = props.labels;
|
|
93
|
+
var L = (0, _mergeLabels.mergeLabels)(DEFAULT_LABELS, labels);
|
|
94
|
+
var _React$useState = React.useState(initialName),
|
|
95
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
96
|
+
name = _React$useState2[0],
|
|
97
|
+
setName = _React$useState2[1];
|
|
98
|
+
var _React$useState3 = React.useState(!!initialIsDefault),
|
|
99
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
100
|
+
isDefault = _React$useState4[0],
|
|
101
|
+
setIsDefault = _React$useState4[1];
|
|
102
|
+
var _React$useState5 = React.useState(!!initialShared),
|
|
103
|
+
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
|
104
|
+
shared = _React$useState6[0],
|
|
105
|
+
setShared = _React$useState6[1];
|
|
106
|
+
var _React$useState7 = React.useState(false),
|
|
107
|
+
_React$useState8 = _slicedToArray(_React$useState7, 2),
|
|
108
|
+
touched = _React$useState8[0],
|
|
109
|
+
setTouched = _React$useState8[1];
|
|
110
|
+
|
|
111
|
+
// Reset the form each time the dialog opens.
|
|
112
|
+
React.useEffect(function resetOnOpen() {
|
|
113
|
+
if (open) {
|
|
114
|
+
setName(initialName || "");
|
|
115
|
+
setIsDefault(!!initialIsDefault);
|
|
116
|
+
setShared(!!initialShared);
|
|
117
|
+
setTouched(false);
|
|
118
|
+
}
|
|
119
|
+
}, [open, initialName, initialIsDefault, initialShared]);
|
|
120
|
+
var trimmed = name.trim();
|
|
121
|
+
var nameError = touched && !trimmed ? L.nameRequired : undefined;
|
|
122
|
+
var isDuplicate = !!trimmed && Array.isArray(existingNames) && existingNames.some(function eq(n) {
|
|
123
|
+
return typeof n === "string" && n.trim().toLowerCase() === trimmed.toLowerCase();
|
|
124
|
+
});
|
|
125
|
+
var handleSubmit = function handleSubmit() {
|
|
126
|
+
if (!trimmed) {
|
|
127
|
+
setTouched(true);
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
if (typeof onSubmit === "function") {
|
|
131
|
+
onSubmit({
|
|
132
|
+
name: trimmed,
|
|
133
|
+
isDefault: isDefault,
|
|
134
|
+
shared: shared
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
var handleKeyDown = function handleKeyDown(e) {
|
|
139
|
+
if (e.key === "Enter") {
|
|
140
|
+
e.preventDefault();
|
|
141
|
+
handleSubmit();
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
var footer = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
145
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button["default"], {
|
|
146
|
+
variant: "ghost",
|
|
147
|
+
type: "button",
|
|
148
|
+
onClick: onClose,
|
|
149
|
+
children: L.cancel
|
|
150
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button["default"], {
|
|
151
|
+
variant: "primary",
|
|
152
|
+
type: "button",
|
|
153
|
+
onClick: handleSubmit,
|
|
154
|
+
disabled: busy,
|
|
155
|
+
children: L.save
|
|
156
|
+
})]
|
|
157
|
+
});
|
|
158
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Modal["default"], {
|
|
159
|
+
open: open,
|
|
160
|
+
onClose: onClose,
|
|
161
|
+
title: L.title,
|
|
162
|
+
size: "sm",
|
|
163
|
+
footer: footer,
|
|
164
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box["default"], {
|
|
165
|
+
sx: BODY_SX,
|
|
166
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Field["default"], _objectSpread(_objectSpread(_objectSpread({
|
|
167
|
+
label: L.nameLabel,
|
|
168
|
+
required: true
|
|
169
|
+
}, nameError !== undefined ? {
|
|
170
|
+
error: nameError
|
|
171
|
+
} : {}), isDuplicate ? {
|
|
172
|
+
hint: L.duplicateHint
|
|
173
|
+
} : {}), {}, {
|
|
174
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Input["default"], {
|
|
175
|
+
value: name,
|
|
176
|
+
onChange: function onChange(e) {
|
|
177
|
+
setName(e.target.value);
|
|
178
|
+
},
|
|
179
|
+
placeholder: L.namePlaceholder,
|
|
180
|
+
inputProps: {
|
|
181
|
+
autoFocus: true,
|
|
182
|
+
maxLength: 80,
|
|
183
|
+
onKeyDown: handleKeyDown
|
|
184
|
+
}
|
|
185
|
+
})
|
|
186
|
+
})), allowDefault && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Switch["default"], {
|
|
187
|
+
checked: isDefault,
|
|
188
|
+
onChange: function onChange(e) {
|
|
189
|
+
setIsDefault(e.target.checked);
|
|
190
|
+
},
|
|
191
|
+
label: L.setAsDefault
|
|
192
|
+
}), allowShared && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Switch["default"], {
|
|
193
|
+
checked: shared,
|
|
194
|
+
onChange: function onChange(e) {
|
|
195
|
+
setShared(e.target.checked);
|
|
196
|
+
},
|
|
197
|
+
label: L.shareLabel,
|
|
198
|
+
description: L.shareHint
|
|
199
|
+
})]
|
|
200
|
+
})
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
var _default = exports["default"] = SaveFilterDialog;
|
|
204
|
+
//# sourceMappingURL=SaveFilterDialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SaveFilterDialog.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_Modal","_Field","_Input","_Switch","_Button","_mergeLabels","_jsxRuntime","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","err","isArray","DEFAULT_LABELS","freeze","title","nameLabel","namePlaceholder","nameRequired","duplicateHint","setAsDefault","shareLabel","shareHint","cancel","save","BODY_SX","display","flexDirection","gap","SaveFilterDialog","props","_props$open","open","onClose","onSubmit","_props$initialName","initialName","_props$initialIsDefau","initialIsDefault","_props$initialShared","initialShared","_props$allowDefault","allowDefault","_props$allowShared","allowShared","existingNames","_props$busy","busy","labels","L","mergeLabels","_React$useState","useState","_React$useState2","setName","_React$useState3","_React$useState4","isDefault","setIsDefault","_React$useState5","_React$useState6","shared","setShared","_React$useState7","_React$useState8","touched","setTouched","useEffect","resetOnOpen","trimmed","trim","nameError","isDuplicate","some","eq","toLowerCase","handleSubmit","handleKeyDown","e","preventDefault","footer","jsxs","Fragment","children","jsx","variant","type","onClick","disabled","size","sx","label","required","error","onChange","placeholder","inputProps","autoFocus","maxLength","onKeyDown","checked","description","_default","exports"],"sources":["../../../src/lib/v2/patterns/SaveFilterDialog.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport type { SxProps, Theme } from \"@mui/material/styles\";\r\n\r\nimport Modal from \"../components/Modal\";\r\nimport Field from \"../components/Field\";\r\nimport Input from \"../components/Input\";\r\nimport Switch from \"../components/Switch\";\r\nimport Button from \"../components/Button\";\r\nimport { mergeLabels } from \"../utils/mergeLabels\";\r\n\r\n/**\r\n * SaveFilterDialog - Portnet UI v2 (pattern)\r\n *\r\n * \"Save current filter\" dialog for the Saved Filters framework\r\n * (v2/personalization · savedFilters). Built on the v2 Modal, so it\r\n * inherits the focus trap, Esc / backdrop / X close affordances, and the\r\n * aria-labelledby contract (Charter R-M.*).\r\n *\r\n * Presentational and provider-FREE by design: it collects a name and two\r\n * options and emits them via `onSubmit`. The parent (SavedFiltersMenu or\r\n * a host) persists through useSavedFilters().save and closes the dialog.\r\n *\r\n * <SaveFilterDialog\r\n * open={open}\r\n * onClose={() => setOpen(false)}\r\n * existingNames={filters.map(f => f.name)}\r\n * allowDefault\r\n * onSubmit={({ name, isDefault, shared }) => {\r\n * save({ name, criteria: currentCriteria, isDefault, shared });\r\n * setOpen(false);\r\n * }}\r\n * />\r\n *\r\n * Name is required (validated on submit; the error is announced via\r\n * Field's role=\"alert\" binding). A duplicate name is allowed (Odoo-style)\r\n * but surfaced as a non-blocking hint.\r\n */\r\n\r\nexport interface SaveFilterDialogSubmit {\r\n name: string;\r\n isDefault: boolean;\r\n shared: boolean;\r\n}\r\n\r\nexport interface SaveFilterDialogLabels {\r\n title: string;\r\n nameLabel: string;\r\n namePlaceholder: string;\r\n nameRequired: string;\r\n duplicateHint: string;\r\n setAsDefault: string;\r\n shareLabel: string;\r\n shareHint: string;\r\n cancel: string;\r\n save: string;\r\n}\r\n\r\nconst DEFAULT_LABELS = Object.freeze({\r\n title: \"Enregistrer le filtre\",\r\n nameLabel: \"Nom du filtre\",\r\n namePlaceholder: \"ex. Dossiers en attente\",\r\n nameRequired: \"Le nom est obligatoire.\",\r\n duplicateHint: \"Un filtre porte déjà ce nom.\",\r\n setAsDefault: \"Appliquer par défaut à l'ouverture\",\r\n shareLabel: \"Partager avec mon équipe\",\r\n shareHint: \"Visible par les autres utilisateurs (selon les droits).\",\r\n cancel: \"Annuler\",\r\n save: \"Enregistrer\",\r\n} satisfies SaveFilterDialogLabels);\r\n\r\nconst BODY_SX = Object.freeze({\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n gap: \"var(--s-4)\",\r\n} satisfies SxProps<Theme>);\r\n\r\nexport interface SaveFilterDialogProps {\r\n open?: boolean | undefined;\r\n /** Required — a dialog must be closable (fed to Modal + both footer buttons). */\r\n onClose: () => void;\r\n /** Emitted on a valid submit: ({ name, isDefault, shared }) => void. */\r\n onSubmit?: ((values: SaveFilterDialogSubmit) => void) | undefined;\r\n initialName?: string | undefined;\r\n initialIsDefault?: boolean | undefined;\r\n initialShared?: boolean | undefined;\r\n /** Show the \"set as default\" switch. */\r\n allowDefault?: boolean | undefined;\r\n /** Show the \"share with team\" switch (modelled, not enforced in Phase 1). */\r\n allowShared?: boolean | undefined;\r\n /** Existing filter names, for a non-blocking duplicate hint. */\r\n existingNames?: readonly string[] | undefined;\r\n /** Disable the submit button while a save is in flight. */\r\n busy?: boolean | undefined;\r\n /** Localised labels (FR default; EN/AR supported). */\r\n labels?: Partial<SaveFilterDialogLabels> | undefined;\r\n}\r\n\r\nfunction SaveFilterDialog(props: SaveFilterDialogProps): React.JSX.Element {\r\n const {\r\n open = false,\r\n onClose,\r\n onSubmit,\r\n initialName = \"\",\r\n initialIsDefault = false,\r\n initialShared = false,\r\n allowDefault = true,\r\n allowShared = false,\r\n existingNames,\r\n busy = false,\r\n labels,\r\n } = props;\r\n const L: SaveFilterDialogLabels = mergeLabels(DEFAULT_LABELS, labels);\r\n\r\n const [name, setName] = React.useState(initialName);\r\n const [isDefault, setIsDefault] = React.useState(!!initialIsDefault);\r\n const [shared, setShared] = React.useState(!!initialShared);\r\n const [touched, setTouched] = React.useState(false);\r\n\r\n // Reset the form each time the dialog opens.\r\n React.useEffect(\r\n function resetOnOpen() {\r\n if (open) {\r\n setName(initialName || \"\");\r\n setIsDefault(!!initialIsDefault);\r\n setShared(!!initialShared);\r\n setTouched(false);\r\n }\r\n },\r\n [open, initialName, initialIsDefault, initialShared]\r\n );\r\n\r\n const trimmed = name.trim();\r\n const nameError = touched && !trimmed ? L.nameRequired : undefined;\r\n const isDuplicate =\r\n !!trimmed &&\r\n Array.isArray(existingNames) &&\r\n existingNames.some(function eq(n) {\r\n return (\r\n typeof n === \"string\" &&\r\n n.trim().toLowerCase() === trimmed.toLowerCase()\r\n );\r\n });\r\n\r\n const handleSubmit = function handleSubmit(): void {\r\n if (!trimmed) {\r\n setTouched(true);\r\n return;\r\n }\r\n if (typeof onSubmit === \"function\") {\r\n onSubmit({ name: trimmed, isDefault: isDefault, shared: shared });\r\n }\r\n };\r\n\r\n const handleKeyDown = function handleKeyDown(\r\n e: React.KeyboardEvent<HTMLInputElement>\r\n ): void {\r\n if (e.key === \"Enter\") {\r\n e.preventDefault();\r\n handleSubmit();\r\n }\r\n };\r\n\r\n const footer = (\r\n <>\r\n <Button variant=\"ghost\" type=\"button\" onClick={onClose}>\r\n {L.cancel}\r\n </Button>\r\n <Button\r\n variant=\"primary\"\r\n type=\"button\"\r\n onClick={handleSubmit}\r\n disabled={busy}\r\n >\r\n {L.save}\r\n </Button>\r\n </>\r\n );\r\n\r\n return (\r\n <Modal open={open} onClose={onClose} title={L.title} size=\"sm\" footer={footer}>\r\n <Box sx={BODY_SX}>\r\n <Field\r\n label={L.nameLabel}\r\n required\r\n {...(nameError !== undefined ? { error: nameError } : {})}\r\n {...(isDuplicate ? { hint: L.duplicateHint } : {})}\r\n >\r\n <Input\r\n value={name}\r\n onChange={function (e) {\r\n setName(e.target.value);\r\n }}\r\n placeholder={L.namePlaceholder}\r\n inputProps={{ autoFocus: true, maxLength: 80, onKeyDown: handleKeyDown }}\r\n />\r\n </Field>\r\n\r\n {allowDefault && (\r\n <Switch\r\n checked={isDefault}\r\n onChange={function (e) {\r\n setIsDefault(e.target.checked);\r\n }}\r\n label={L.setAsDefault}\r\n />\r\n )}\r\n\r\n {allowShared && (\r\n <Switch\r\n checked={shared}\r\n onChange={function (e) {\r\n setShared(e.target.checked);\r\n }}\r\n label={L.shareLabel}\r\n description={L.shareHint}\r\n />\r\n )}\r\n </Box>\r\n </Modal>\r\n );\r\n}\r\n\r\nexport default SaveFilterDialog;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { SavedFilter } from "../personalization/types";
|
|
3
|
+
/**
|
|
4
|
+
* SavedFiltersMenu - Portnet UI v2 (pattern)
|
|
5
|
+
*
|
|
6
|
+
* Turn-key dropdown for the Saved Filters framework. Connected to the
|
|
7
|
+
* savedFilters capability via useSavedFilters(resourceKey); the host only
|
|
8
|
+
* supplies the live `currentCriteria` (to save) and an `onApply` callback
|
|
9
|
+
* (to apply a recalled filter to its own state).
|
|
10
|
+
*
|
|
11
|
+
* <SavedFiltersMenu
|
|
12
|
+
* resourceKey="ti:list"
|
|
13
|
+
* currentCriteria={filters}
|
|
14
|
+
* onApply={(criteria) => setFilters(criteria)}
|
|
15
|
+
* allowDefault
|
|
16
|
+
* />
|
|
17
|
+
*
|
|
18
|
+
* The component owns the criteria neither in shape nor semantics — it
|
|
19
|
+
* stores whatever the host passes and hands it back on apply, which is
|
|
20
|
+
* what makes it reusable across every list.
|
|
21
|
+
*
|
|
22
|
+
* a11y: the Popover carries role="dialog" + aria-label (like
|
|
23
|
+
* ColumnsToggle); each filter row is a real <button> (apply), with a pin
|
|
24
|
+
* toggle (default) and a delete control, all aria-labelled per filter.
|
|
25
|
+
* For a default filter the apply button's accessible name appends the
|
|
26
|
+
* visible "Par défaut" badge text (WCAG 2.5.3 Label in Name).
|
|
27
|
+
*
|
|
28
|
+
* Note (icons): the delete control uses CloseIcon (@mui/icons-material/Close)
|
|
29
|
+
* rather than a trash glyph because DeleteOutline is absent from the internal
|
|
30
|
+
* @mui/icons-material@9 republish used by the consuming apps; the control's
|
|
31
|
+
* aria-label and --danger hover colour keep the delete semantics intact.
|
|
32
|
+
*/
|
|
33
|
+
export interface SavedFiltersMenuLabels {
|
|
34
|
+
button: string;
|
|
35
|
+
title: string;
|
|
36
|
+
noSavedFilters: string;
|
|
37
|
+
saveCurrentFilter: string;
|
|
38
|
+
apply: string;
|
|
39
|
+
setDefault: string;
|
|
40
|
+
unsetDefault: string;
|
|
41
|
+
delete: string;
|
|
42
|
+
defaultBadge: string;
|
|
43
|
+
countSuffix: (n: number) => string;
|
|
44
|
+
dialogTitle: string;
|
|
45
|
+
nameLabel: string;
|
|
46
|
+
namePlaceholder: string;
|
|
47
|
+
nameRequired: string;
|
|
48
|
+
duplicateHint: string;
|
|
49
|
+
setAsDefault: string;
|
|
50
|
+
shareLabel: string;
|
|
51
|
+
shareHint: string;
|
|
52
|
+
cancel: string;
|
|
53
|
+
save: string;
|
|
54
|
+
}
|
|
55
|
+
export interface SavedFiltersMenuProps {
|
|
56
|
+
/** Namespaces saved filters per list/entity type. */
|
|
57
|
+
resourceKey: string;
|
|
58
|
+
/** The host's live filter payload — stored verbatim when saving. */
|
|
59
|
+
currentCriteria?: Record<string, unknown> | undefined;
|
|
60
|
+
/** Applied when a saved filter is recalled: (criteria, filter) => void. */
|
|
61
|
+
onApply?: ((criteria: Record<string, unknown> | undefined, filter: SavedFilter) => void) | undefined;
|
|
62
|
+
/** Allow saving the current filter (also requires currentCriteria != null). */
|
|
63
|
+
canSave?: boolean | undefined;
|
|
64
|
+
/** Forwarded to SaveFilterDialog — show the "set as default" switch. */
|
|
65
|
+
allowDefault?: boolean | undefined;
|
|
66
|
+
/** Forwarded to SaveFilterDialog — show the "share with team" switch. */
|
|
67
|
+
allowShared?: boolean | undefined;
|
|
68
|
+
align?: "left" | "right" | undefined;
|
|
69
|
+
/** Localised labels (FR default; EN/AR supported). */
|
|
70
|
+
labels?: Partial<SavedFiltersMenuLabels> | undefined;
|
|
71
|
+
}
|
|
72
|
+
declare function SavedFiltersMenu(props: SavedFiltersMenuProps): React.JSX.Element;
|
|
73
|
+
export default SavedFiltersMenu;
|
|
74
|
+
//# sourceMappingURL=SavedFiltersMenu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SavedFiltersMenu.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/patterns/SavedFiltersMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAkB/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IAEnC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AA+ID,MAAM,WAAW,qBAAqB;IACpC,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IACtD,2EAA2E;IAC3E,OAAO,CAAC,EAAE,CAAC,CACT,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC7C,MAAM,EAAE,WAAW,KAChB,IAAI,CAAC,GAAG,SAAS,CAAC;IACvB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,wEAAwE;IACxE,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,yEAAyE;IACzE,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IACrC,sDAAsD;IACtD,MAAM,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,GAAG,SAAS,CAAC;CACtD;AAED,iBAAS,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA8OzE;AAED,eAAe,gBAAgB,CAAC"}
|