@portnet/ui 6.0.2 → 6.0.3
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 +652 -0
- package/dist/esm/index.js +72 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/v2/__tests__/AppMain.test.js +130 -0
- package/dist/esm/v2/__tests__/AppMain.test.js.map +1 -0
- package/dist/esm/v2/__tests__/ChartFigure.test.js +180 -0
- package/dist/esm/v2/__tests__/ChartFigure.test.js.map +1 -0
- package/dist/esm/v2/__tests__/DataGridRowActionsPropagation.test.js +150 -0
- package/dist/esm/v2/__tests__/DataGridRowActionsPropagation.test.js.map +1 -0
- package/dist/esm/v2/__tests__/DrawerTactileTargets.test.js +93 -0
- package/dist/esm/v2/__tests__/DrawerTactileTargets.test.js.map +1 -0
- package/dist/esm/v2/__tests__/FieldError.test.js +71 -38
- package/dist/esm/v2/__tests__/FieldError.test.js.map +1 -1
- package/dist/esm/v2/__tests__/FieldNaming.test.js +160 -0
- package/dist/esm/v2/__tests__/FieldNaming.test.js.map +1 -0
- package/dist/esm/v2/__tests__/FieldWidth.test.js +11 -11
- package/dist/esm/v2/__tests__/FieldWidth.test.js.map +1 -1
- package/dist/esm/v2/__tests__/FileCard.test.js +18 -17
- package/dist/esm/v2/__tests__/FileCard.test.js.map +1 -1
- package/dist/esm/v2/__tests__/FormikCheckbox.test.js +87 -179
- package/dist/esm/v2/__tests__/FormikCheckbox.test.js.map +1 -1
- package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js +32 -44
- package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js.map +1 -1
- package/dist/esm/v2/__tests__/FormikDisplayWidth.test.js +101 -0
- package/dist/esm/v2/__tests__/FormikDisplayWidth.test.js.map +1 -0
- package/dist/esm/v2/__tests__/FormikRadioGroup.test.js +118 -199
- package/dist/esm/v2/__tests__/FormikRadioGroup.test.js.map +1 -1
- package/dist/esm/v2/__tests__/MobileRowCard.test.js +44 -42
- package/dist/esm/v2/__tests__/MobileRowCard.test.js.map +1 -1
- package/dist/esm/v2/__tests__/PreviewDrawer.test.js +165 -0
- package/dist/esm/v2/__tests__/PreviewDrawer.test.js.map +1 -0
- package/dist/esm/v2/__tests__/ReferentielFieldContainer.test.js +156 -0
- package/dist/esm/v2/__tests__/ReferentielFieldContainer.test.js.map +1 -0
- package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js +37 -52
- package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js.map +1 -1
- package/dist/esm/v2/__tests__/apiError.test.js +50 -69
- package/dist/esm/v2/__tests__/apiError.test.js.map +1 -1
- package/dist/esm/v2/__tests__/banned-patterns.test.js +41 -122
- package/dist/esm/v2/__tests__/banned-patterns.test.js.map +1 -1
- package/dist/esm/v2/__tests__/chart-palette.test.js +204 -0
- package/dist/esm/v2/__tests__/chart-palette.test.js.map +1 -0
- package/dist/esm/v2/__tests__/contrast-palette.test.js +42 -74
- package/dist/esm/v2/__tests__/contrast-palette.test.js.map +1 -1
- package/dist/esm/v2/__tests__/cssVariables.test.js +44 -51
- package/dist/esm/v2/__tests__/cssVariables.test.js.map +1 -1
- package/dist/esm/v2/__tests__/fileValidation.test.js +134 -0
- package/dist/esm/v2/__tests__/fileValidation.test.js.map +1 -0
- package/dist/esm/v2/__tests__/filterCriteria.test.js +321 -0
- package/dist/esm/v2/__tests__/filterCriteria.test.js.map +1 -0
- package/dist/esm/v2/__tests__/fmtDate.test.js +68 -0
- package/dist/esm/v2/__tests__/fmtDate.test.js.map +1 -0
- package/dist/esm/v2/__tests__/gap-leakage-refonte.test.js +218 -0
- package/dist/esm/v2/__tests__/gap-leakage-refonte.test.js.map +1 -0
- package/dist/esm/v2/__tests__/labels-merge.test.js +17 -21
- package/dist/esm/v2/__tests__/labels-merge.test.js.map +1 -1
- package/dist/esm/v2/__tests__/locale-fallback.test.js +35 -40
- package/dist/esm/v2/__tests__/locale-fallback.test.js.map +1 -1
- package/dist/esm/v2/__tests__/reviveSavedCriteria.test.js +143 -0
- package/dist/esm/v2/__tests__/reviveSavedCriteria.test.js.map +1 -0
- package/dist/esm/v2/__tests__/rowActions.test.js +182 -0
- package/dist/esm/v2/__tests__/rowActions.test.js.map +1 -0
- package/dist/esm/v2/__tests__/useFocusOnRouteChange.test.js +155 -0
- package/dist/esm/v2/__tests__/useFocusOnRouteChange.test.js.map +1 -0
- package/dist/esm/v2/__tests__/useFocusTrap.test.js +266 -402
- package/dist/esm/v2/__tests__/useFocusTrap.test.js.map +1 -1
- package/dist/esm/v2/__tests__/usePrefersReducedMotion.test.js +120 -0
- package/dist/esm/v2/__tests__/usePrefersReducedMotion.test.js.map +1 -0
- package/dist/esm/v2/components/Accordion.js +48 -70
- package/dist/esm/v2/components/Accordion.js.map +1 -1
- package/dist/esm/v2/components/ActionStrip.js +31 -43
- package/dist/esm/v2/components/ActionStrip.js.map +1 -1
- package/dist/esm/v2/components/Banner.js +25 -22
- package/dist/esm/v2/components/Banner.js.map +1 -1
- package/dist/esm/v2/components/Busy.js +14 -19
- package/dist/esm/v2/components/Busy.js.map +1 -1
- package/dist/esm/v2/components/Button.js +34 -45
- package/dist/esm/v2/components/Button.js.map +1 -1
- package/dist/esm/v2/components/CategoryTag.js +44 -27
- package/dist/esm/v2/components/CategoryTag.js.map +1 -1
- package/dist/esm/v2/components/Checkbox.js +32 -38
- package/dist/esm/v2/components/Checkbox.js.map +1 -1
- package/dist/esm/v2/components/Chip.js +23 -36
- package/dist/esm/v2/components/Chip.js.map +1 -1
- package/dist/esm/v2/components/Combobox.js +112 -136
- package/dist/esm/v2/components/Combobox.js.map +1 -1
- package/dist/esm/v2/components/CommandPalette.js +113 -198
- package/dist/esm/v2/components/CommandPalette.js.map +1 -1
- package/dist/esm/v2/components/ConfirmDialog.js +36 -45
- package/dist/esm/v2/components/ConfirmDialog.js.map +1 -1
- package/dist/esm/v2/components/DatePicker.js +78 -81
- package/dist/esm/v2/components/DatePicker.js.map +1 -1
- package/dist/esm/v2/components/DateRangePicker.js +63 -74
- package/dist/esm/v2/components/DateRangePicker.js.map +1 -1
- package/dist/esm/v2/components/DateTimePicker.js +81 -86
- package/dist/esm/v2/components/DateTimePicker.js.map +1 -1
- package/dist/esm/v2/components/Drawer.js +71 -65
- package/dist/esm/v2/components/Drawer.js.map +1 -1
- package/dist/esm/v2/components/Dropzone.js +130 -177
- package/dist/esm/v2/components/Dropzone.js.map +1 -1
- package/dist/esm/v2/components/EmptyState.js +9 -9
- package/dist/esm/v2/components/EmptyState.js.map +1 -1
- package/dist/esm/v2/components/FavoriteToggle.js +24 -33
- package/dist/esm/v2/components/FavoriteToggle.js.map +1 -1
- package/dist/esm/v2/components/Field.js +155 -59
- package/dist/esm/v2/components/Field.js.map +1 -1
- package/dist/esm/v2/components/FieldError.js +9 -13
- package/dist/esm/v2/components/FieldError.js.map +1 -1
- package/dist/esm/v2/components/FieldHelp.js +28 -49
- package/dist/esm/v2/components/FieldHelp.js.map +1 -1
- package/dist/esm/v2/components/FileCard.js +14 -19
- package/dist/esm/v2/components/FileCard.js.map +1 -1
- package/dist/esm/v2/components/FilterTab.js +22 -31
- package/dist/esm/v2/components/FilterTab.js.map +1 -1
- package/dist/esm/v2/components/ForbiddenPage.js +28 -8
- package/dist/esm/v2/components/ForbiddenPage.js.map +1 -1
- package/dist/esm/v2/components/FormGrid.js +48 -54
- package/dist/esm/v2/components/FormGrid.js.map +1 -1
- package/dist/esm/v2/components/FormikDisplay.js +98 -24
- package/dist/esm/v2/components/FormikDisplay.js.map +1 -1
- package/dist/esm/v2/components/Input.js +75 -34
- package/dist/esm/v2/components/Input.js.map +1 -1
- package/dist/esm/v2/components/KPICard.js +42 -51
- package/dist/esm/v2/components/KPICard.js.map +1 -1
- package/dist/esm/v2/components/KPIStrip.js +9 -15
- package/dist/esm/v2/components/KPIStrip.js.map +1 -1
- package/dist/esm/v2/components/KV.js +16 -23
- package/dist/esm/v2/components/KV.js.map +1 -1
- package/dist/esm/v2/components/KVGrid.js +15 -23
- package/dist/esm/v2/components/KVGrid.js.map +1 -1
- package/dist/esm/v2/components/Layout.js +81 -117
- package/dist/esm/v2/components/Layout.js.map +1 -1
- package/dist/esm/v2/components/MobileRowCard.js +64 -75
- package/dist/esm/v2/components/MobileRowCard.js.map +1 -1
- package/dist/esm/v2/components/Modal.js +44 -53
- package/dist/esm/v2/components/Modal.js.map +1 -1
- package/dist/esm/v2/components/NetworkErrorPage.js +28 -11
- package/dist/esm/v2/components/NetworkErrorPage.js.map +1 -1
- package/dist/esm/v2/components/NotFoundPage.js +28 -9
- package/dist/esm/v2/components/NotFoundPage.js.map +1 -1
- package/dist/esm/v2/components/NumberInput.js +77 -107
- package/dist/esm/v2/components/NumberInput.js.map +1 -1
- package/dist/esm/v2/components/OverflowMenu.js +24 -42
- package/dist/esm/v2/components/OverflowMenu.js.map +1 -1
- package/dist/esm/v2/components/PdfViewer.js +24 -33
- package/dist/esm/v2/components/PdfViewer.js.map +1 -1
- package/dist/esm/v2/components/ProgressBar.js +28 -36
- package/dist/esm/v2/components/ProgressBar.js.map +1 -1
- package/dist/esm/v2/components/Radio.js +49 -57
- package/dist/esm/v2/components/Radio.js.map +1 -1
- package/dist/esm/v2/components/SectionErrorBoundary.js +84 -130
- package/dist/esm/v2/components/SectionErrorBoundary.js.map +1 -1
- package/dist/esm/v2/components/SectionHeader.js +24 -31
- package/dist/esm/v2/components/SectionHeader.js.map +1 -1
- package/dist/esm/v2/components/Segmented.js +59 -84
- package/dist/esm/v2/components/Segmented.js.map +1 -1
- package/dist/esm/v2/components/Select.js +100 -138
- package/dist/esm/v2/components/Select.js.map +1 -1
- package/dist/esm/v2/components/ServerErrorPage.js +27 -10
- package/dist/esm/v2/components/ServerErrorPage.js.map +1 -1
- package/dist/esm/v2/components/Skeleton.js +81 -96
- package/dist/esm/v2/components/Skeleton.js.map +1 -1
- package/dist/esm/v2/components/SkipLink.js +6 -7
- package/dist/esm/v2/components/SkipLink.js.map +1 -1
- package/dist/esm/v2/components/Spinner.js +13 -22
- package/dist/esm/v2/components/Spinner.js.map +1 -1
- package/dist/esm/v2/components/Status.js +14 -25
- package/dist/esm/v2/components/Status.js.map +1 -1
- package/dist/esm/v2/components/Stepper.js +68 -71
- package/dist/esm/v2/components/Stepper.js.map +1 -1
- package/dist/esm/v2/components/Surface.js +25 -44
- package/dist/esm/v2/components/Surface.js.map +1 -1
- package/dist/esm/v2/components/Switch.js +21 -29
- package/dist/esm/v2/components/Switch.js.map +1 -1
- package/dist/esm/v2/components/TabPanel.js +84 -0
- package/dist/esm/v2/components/TabPanel.js.map +1 -0
- package/dist/esm/v2/components/Tabs.js +43 -19
- package/dist/esm/v2/components/Tabs.js.map +1 -1
- package/dist/esm/v2/components/TelInput.js +75 -108
- package/dist/esm/v2/components/TelInput.js.map +1 -1
- package/dist/esm/v2/components/Textarea.js +21 -30
- package/dist/esm/v2/components/Textarea.js.map +1 -1
- package/dist/esm/v2/components/TimePicker.js +59 -69
- package/dist/esm/v2/components/TimePicker.js.map +1 -1
- package/dist/esm/v2/components/Toast.js +109 -163
- package/dist/esm/v2/components/Toast.js.map +1 -1
- package/dist/esm/v2/components/Tooltip.js +18 -31
- package/dist/esm/v2/components/Tooltip.js.map +1 -1
- package/dist/esm/v2/components/_ErrorPageBody.js +6 -5
- package/dist/esm/v2/components/_ErrorPageBody.js.map +1 -1
- package/dist/esm/v2/components/_pickerShared.js +2 -2
- package/dist/esm/v2/components/_pickerShared.js.map +1 -1
- package/dist/esm/v2/components/index.js +37 -0
- package/dist/esm/v2/components/index.js.map +1 -1
- package/dist/esm/v2/hooks/index.js +62 -0
- package/dist/esm/v2/hooks/index.js.map +1 -1
- package/dist/esm/v2/hooks/useAppliedFilters.js +112 -0
- package/dist/esm/v2/hooks/useAppliedFilters.js.map +1 -0
- package/dist/esm/v2/hooks/useDebouncedCallback.js +82 -0
- package/dist/esm/v2/hooks/useDebouncedCallback.js.map +1 -0
- package/dist/esm/v2/hooks/useDelayedFlag.js +5 -19
- package/dist/esm/v2/hooks/useDelayedFlag.js.map +1 -1
- package/dist/esm/v2/hooks/useDensity.js +13 -17
- package/dist/esm/v2/hooks/useDensity.js.map +1 -1
- package/dist/esm/v2/hooks/useFocusFirstError.js +25 -33
- package/dist/esm/v2/hooks/useFocusFirstError.js.map +1 -1
- package/dist/esm/v2/hooks/useFocusOnRouteChange.js +81 -0
- package/dist/esm/v2/hooks/useFocusOnRouteChange.js.map +1 -0
- package/dist/esm/v2/hooks/useFocusTrap.js +19 -23
- package/dist/esm/v2/hooks/useFocusTrap.js.map +1 -1
- package/dist/esm/v2/hooks/useFormAutoSave.js +38 -53
- package/dist/esm/v2/hooks/useFormAutoSave.js.map +1 -1
- package/dist/esm/v2/hooks/useFormCompletionProgress.js +32 -51
- package/dist/esm/v2/hooks/useFormCompletionProgress.js.map +1 -1
- package/dist/esm/v2/hooks/useKeyboardShortcuts.js +125 -0
- package/dist/esm/v2/hooks/useKeyboardShortcuts.js.map +1 -0
- package/dist/esm/v2/hooks/usePrefersReducedMotion.js +99 -0
- package/dist/esm/v2/hooks/usePrefersReducedMotion.js.map +1 -0
- package/dist/esm/v2/hooks/useResolvedDensity.js +2 -10
- package/dist/esm/v2/hooks/useResolvedDensity.js.map +1 -1
- package/dist/esm/v2/hooks/useSortedRows.js +3 -5
- package/dist/esm/v2/hooks/useSortedRows.js.map +1 -1
- package/dist/esm/v2/hooks/useTabLoading.js +6 -21
- package/dist/esm/v2/hooks/useTabLoading.js.map +1 -1
- package/dist/esm/v2/index.js +2 -3
- package/dist/esm/v2/index.js.map +1 -1
- package/dist/esm/v2/modalContext.js +2 -2
- package/dist/esm/v2/modalContext.js.map +1 -1
- package/dist/esm/v2/models/favorite.js.map +1 -1
- package/dist/esm/v2/models/personalization.js.map +1 -1
- package/dist/esm/v2/models/referentiel.js.map +1 -1
- package/dist/esm/v2/models/savedFilter.js.map +1 -1
- package/dist/esm/v2/patterns/ActionBar.js +115 -159
- package/dist/esm/v2/patterns/ActionBar.js.map +1 -1
- package/dist/esm/v2/patterns/AppMain.js +108 -0
- package/dist/esm/v2/patterns/AppMain.js.map +1 -0
- package/dist/esm/v2/patterns/BulkActionBar.js +31 -34
- package/dist/esm/v2/patterns/BulkActionBar.js.map +1 -1
- package/dist/esm/v2/patterns/ChartFigure.js +151 -0
- package/dist/esm/v2/patterns/ChartFigure.js.map +1 -0
- package/dist/esm/v2/patterns/CollapsibleDataGrid.js +111 -152
- package/dist/esm/v2/patterns/CollapsibleDataGrid.js.map +1 -1
- package/dist/esm/v2/patterns/ColumnsToggle.js +43 -77
- package/dist/esm/v2/patterns/ColumnsToggle.js.map +1 -1
- package/dist/esm/v2/patterns/DataGrid.js +221 -255
- package/dist/esm/v2/patterns/DataGrid.js.map +1 -1
- package/dist/esm/v2/patterns/DataGridSettingsMenu.js +76 -94
- package/dist/esm/v2/patterns/DataGridSettingsMenu.js.map +1 -1
- package/dist/esm/v2/patterns/DataGridToolbar.js +85 -89
- package/dist/esm/v2/patterns/DataGridToolbar.js.map +1 -1
- package/dist/esm/v2/patterns/DataGridVirtualized.js +141 -182
- package/dist/esm/v2/patterns/DataGridVirtualized.js.map +1 -1
- package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js +26 -30
- package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -1
- package/dist/esm/v2/patterns/DetailSplit.js +108 -0
- package/dist/esm/v2/patterns/DetailSplit.js.map +1 -0
- package/dist/esm/v2/patterns/FavoriteColumn.js +15 -17
- package/dist/esm/v2/patterns/FavoriteColumn.js.map +1 -1
- package/dist/esm/v2/patterns/FavoritesFilter.js +30 -39
- package/dist/esm/v2/patterns/FavoritesFilter.js.map +1 -1
- package/dist/esm/v2/patterns/FilterTabBar.js +112 -0
- package/dist/esm/v2/patterns/FilterTabBar.js.map +1 -0
- package/dist/esm/v2/patterns/FormErrorSummary.js +12 -13
- package/dist/esm/v2/patterns/FormErrorSummary.js.map +1 -1
- package/dist/esm/v2/patterns/FormPageShell.js +43 -41
- package/dist/esm/v2/patterns/FormPageShell.js.map +1 -1
- package/dist/esm/v2/patterns/FormSection.js +30 -38
- package/dist/esm/v2/patterns/FormSection.js.map +1 -1
- package/dist/esm/v2/patterns/FormikCheckbox.js +29 -39
- package/dist/esm/v2/patterns/FormikCheckbox.js.map +1 -1
- package/dist/esm/v2/patterns/FormikCheckboxGroup.js +56 -60
- package/dist/esm/v2/patterns/FormikCheckboxGroup.js.map +1 -1
- package/dist/esm/v2/patterns/FormikCombobox.js +51 -69
- package/dist/esm/v2/patterns/FormikCombobox.js.map +1 -1
- package/dist/esm/v2/patterns/FormikDatePicker.js +44 -58
- package/dist/esm/v2/patterns/FormikDatePicker.js.map +1 -1
- package/dist/esm/v2/patterns/FormikDateTimePicker.js +44 -58
- package/dist/esm/v2/patterns/FormikDateTimePicker.js.map +1 -1
- package/dist/esm/v2/patterns/FormikErrorFocus.js +22 -23
- package/dist/esm/v2/patterns/FormikErrorFocus.js.map +1 -1
- package/dist/esm/v2/patterns/FormikErrorSummary.js +89 -0
- package/dist/esm/v2/patterns/FormikErrorSummary.js.map +1 -0
- package/dist/esm/v2/patterns/FormikFile.js +94 -78
- package/dist/esm/v2/patterns/FormikFile.js.map +1 -1
- package/dist/esm/v2/patterns/FormikInput.js +40 -53
- package/dist/esm/v2/patterns/FormikInput.js.map +1 -1
- package/dist/esm/v2/patterns/FormikRadioGroup.js +39 -51
- package/dist/esm/v2/patterns/FormikRadioGroup.js.map +1 -1
- package/dist/esm/v2/patterns/FormikReferentielField.js +49 -59
- package/dist/esm/v2/patterns/FormikReferentielField.js.map +1 -1
- package/dist/esm/v2/patterns/FormikSelect.js +64 -87
- package/dist/esm/v2/patterns/FormikSelect.js.map +1 -1
- package/dist/esm/v2/patterns/FormikTextarea.js +30 -46
- package/dist/esm/v2/patterns/FormikTextarea.js.map +1 -1
- package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js +53 -71
- package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js.map +1 -1
- package/dist/esm/v2/patterns/NetworkErrorBanner.js +6 -7
- package/dist/esm/v2/patterns/NetworkErrorBanner.js.map +1 -1
- package/dist/esm/v2/patterns/PageContent.js +10 -14
- package/dist/esm/v2/patterns/PageContent.js.map +1 -1
- package/dist/esm/v2/patterns/PreviewDrawer.js +153 -0
- package/dist/esm/v2/patterns/PreviewDrawer.js.map +1 -0
- package/dist/esm/v2/patterns/ReferentielField.js +327 -312
- package/dist/esm/v2/patterns/ReferentielField.js.map +1 -1
- package/dist/esm/v2/patterns/RowFavoriteToggle.js +27 -22
- package/dist/esm/v2/patterns/RowFavoriteToggle.js.map +1 -1
- package/dist/esm/v2/patterns/SaveFilterDialog.js +38 -66
- package/dist/esm/v2/patterns/SaveFilterDialog.js.map +1 -1
- package/dist/esm/v2/patterns/SavedFiltersMenu.js +62 -81
- package/dist/esm/v2/patterns/SavedFiltersMenu.js.map +1 -1
- package/dist/esm/v2/patterns/SkeletonPageShell.js +106 -129
- package/dist/esm/v2/patterns/SkeletonPageShell.js.map +1 -1
- package/dist/esm/v2/patterns/SortableHeader.js +22 -45
- package/dist/esm/v2/patterns/SortableHeader.js.map +1 -1
- package/dist/esm/v2/patterns/Tour.js +94 -120
- package/dist/esm/v2/patterns/Tour.js.map +1 -1
- package/dist/esm/v2/patterns/_dataGridShared.js +107 -128
- package/dist/esm/v2/patterns/_dataGridShared.js.map +1 -1
- package/dist/esm/v2/patterns/_pickerSerialisation.js +6 -8
- package/dist/esm/v2/patterns/_pickerSerialisation.js.map +1 -1
- package/dist/esm/v2/patterns/_sort.js +17 -33
- package/dist/esm/v2/patterns/_sort.js.map +1 -1
- package/dist/esm/v2/patterns/_useColumnReorder.js +122 -160
- package/dist/esm/v2/patterns/_useColumnReorder.js.map +1 -1
- package/dist/esm/v2/patterns/_useColumnResize.js +78 -96
- package/dist/esm/v2/patterns/_useColumnResize.js.map +1 -1
- package/dist/esm/v2/patterns/filterCriteria.js +102 -0
- package/dist/esm/v2/patterns/filterCriteria.js.map +1 -0
- package/dist/esm/v2/patterns/index.js +152 -0
- package/dist/esm/v2/patterns/index.js.map +1 -1
- package/dist/esm/v2/patterns/rowActions.js +223 -0
- package/dist/esm/v2/patterns/rowActions.js.map +1 -0
- package/dist/esm/v2/personalization/PersonalizationProvider.js +50 -47
- package/dist/esm/v2/personalization/PersonalizationProvider.js.map +1 -1
- package/dist/esm/v2/personalization/adapters/_storageKey.js +5 -5
- package/dist/esm/v2/personalization/adapters/_storageKey.js.map +1 -1
- package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js +22 -23
- package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -1
- package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js +13 -13
- package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js.map +1 -1
- package/dist/esm/v2/personalization/capabilities/favorites.js +36 -60
- package/dist/esm/v2/personalization/capabilities/favorites.js.map +1 -1
- package/dist/esm/v2/personalization/capabilities/favoritesView.js +22 -34
- package/dist/esm/v2/personalization/capabilities/favoritesView.js.map +1 -1
- package/dist/esm/v2/personalization/capabilities/gridPreferences.js +28 -34
- package/dist/esm/v2/personalization/capabilities/gridPreferences.js.map +1 -1
- package/dist/esm/v2/personalization/capabilities/reviveSavedCriteria.js +119 -0
- package/dist/esm/v2/personalization/capabilities/reviveSavedCriteria.js.map +1 -0
- package/dist/esm/v2/personalization/capabilities/savedFilters.js +90 -98
- package/dist/esm/v2/personalization/capabilities/savedFilters.js.map +1 -1
- package/dist/esm/v2/personalization/createPersonalizationStore.js +78 -181
- package/dist/esm/v2/personalization/createPersonalizationStore.js.map +1 -1
- package/dist/esm/v2/personalization/index.js +17 -0
- package/dist/esm/v2/personalization/index.js.map +1 -1
- package/dist/esm/v2/personalization/personalizationContext.js +9 -9
- package/dist/esm/v2/personalization/personalizationContext.js.map +1 -1
- package/dist/esm/v2/personalization/schema.js +8 -9
- package/dist/esm/v2/personalization/schema.js.map +1 -1
- package/dist/esm/v2/referentiel/ReferentielProvider.js +27 -42
- package/dist/esm/v2/referentiel/ReferentielProvider.js.map +1 -1
- package/dist/esm/v2/referentiel/types.js +2 -0
- package/dist/esm/v2/referentiel/types.js.map +1 -0
- package/dist/esm/v2/referentiel/useReferentielClient.js +10 -11
- package/dist/esm/v2/referentiel/useReferentielClient.js.map +1 -1
- package/dist/esm/v2/referentiel/useReferentielOptions.js +60 -117
- package/dist/esm/v2/referentiel/useReferentielOptions.js.map +1 -1
- package/dist/esm/v2/referentiel/useReferentielSearch.js +37 -91
- package/dist/esm/v2/referentiel/useReferentielSearch.js.map +1 -1
- package/dist/esm/v2/theme/_brand.js +8 -24
- package/dist/esm/v2/theme/_brand.js.map +1 -1
- package/dist/esm/v2/theme/_brandSecondary.js +8 -24
- package/dist/esm/v2/theme/_brandSecondary.js.map +1 -1
- package/dist/esm/v2/theme/createPortnetTheme.js +51 -61
- package/dist/esm/v2/theme/createPortnetTheme.js.map +1 -1
- package/dist/esm/v2/theme/cssVariables.js +62 -69
- package/dist/esm/v2/theme/cssVariables.js.map +1 -1
- package/dist/esm/v2/theme/index.js +5 -5
- package/dist/esm/v2/theme/index.js.map +1 -1
- package/dist/esm/v2/tokens/breakpoints.js +14 -14
- package/dist/esm/v2/tokens/breakpoints.js.map +1 -1
- package/dist/esm/v2/tokens/chart.js +261 -0
- package/dist/esm/v2/tokens/chart.js.map +1 -0
- package/dist/esm/v2/tokens/colors.js +22 -22
- package/dist/esm/v2/tokens/colors.js.map +1 -1
- package/dist/esm/v2/tokens/density.js +62 -7
- package/dist/esm/v2/tokens/density.js.map +1 -1
- package/dist/esm/v2/tokens/index.js +49 -34
- package/dist/esm/v2/tokens/index.js.map +1 -1
- package/dist/esm/v2/tokens/motion.js +12 -20
- package/dist/esm/v2/tokens/motion.js.map +1 -1
- package/dist/esm/v2/tokens/radius.js +1 -1
- package/dist/esm/v2/tokens/radius.js.map +1 -1
- package/dist/esm/v2/tokens/shadows.js +6 -6
- package/dist/esm/v2/tokens/shadows.js.map +1 -1
- package/dist/esm/v2/tokens/spacing.js +2 -2
- package/dist/esm/v2/tokens/spacing.js.map +1 -1
- package/dist/esm/v2/tokens/state.js +1 -1
- package/dist/esm/v2/tokens/state.js.map +1 -1
- package/dist/esm/v2/tokens/statusPalette.js +17 -21
- package/dist/esm/v2/tokens/statusPalette.js.map +1 -1
- package/dist/esm/v2/tokens/tokens.json +6 -1
- package/dist/esm/v2/tokens/typography.js +13 -13
- package/dist/esm/v2/tokens/typography.js.map +1 -1
- package/dist/esm/v2/tokens/zIndex.js +1 -1
- package/dist/esm/v2/tokens/zIndex.js.map +1 -1
- package/dist/esm/v2/types/datagrid.js.map +1 -1
- package/dist/esm/v2/utils/apiError.js +16 -37
- package/dist/esm/v2/utils/apiError.js.map +1 -1
- package/dist/esm/v2/utils/contrast.js +31 -32
- package/dist/esm/v2/utils/contrast.js.map +1 -1
- package/dist/esm/v2/utils/cx.js +5 -25
- package/dist/esm/v2/utils/cx.js.map +1 -1
- package/dist/esm/v2/utils/fileDownload.js +23 -26
- package/dist/esm/v2/utils/fileDownload.js.map +1 -1
- package/dist/esm/v2/utils/fileValidation.js +209 -0
- package/dist/esm/v2/utils/fileValidation.js.map +1 -0
- package/dist/esm/v2/utils/fmtDate.js +111 -0
- package/dist/esm/v2/utils/fmtDate.js.map +1 -0
- package/dist/esm/v2/utils/fmtMoney.js +8 -10
- package/dist/esm/v2/utils/fmtMoney.js.map +1 -1
- package/dist/esm/v2/utils/formikErrors.js +78 -0
- package/dist/esm/v2/utils/formikErrors.js.map +1 -0
- package/dist/esm/v2/utils/index.js +35 -2
- package/dist/esm/v2/utils/index.js.map +1 -1
- package/dist/esm/v2/utils/mergeLabels.js +7 -12
- package/dist/esm/v2/utils/mergeLabels.js.map +1 -1
- package/dist/esm/v2/utils/networkStatus.js +12 -12
- package/dist/esm/v2/utils/networkStatus.js.map +1 -1
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +110 -49
- package/dist/index.js.map +1 -1
- package/dist/v2/__tests__/AppMain.test.js +133 -0
- package/dist/v2/__tests__/AppMain.test.js.map +1 -0
- package/dist/v2/__tests__/ChartFigure.test.js +183 -0
- package/dist/v2/__tests__/ChartFigure.test.js.map +1 -0
- package/dist/v2/__tests__/DataGridRowActionsPropagation.test.js +153 -0
- package/dist/v2/__tests__/DataGridRowActionsPropagation.test.js.map +1 -0
- package/dist/v2/__tests__/DrawerTactileTargets.test.js +94 -0
- package/dist/v2/__tests__/DrawerTactileTargets.test.js.map +1 -0
- package/dist/v2/__tests__/FieldError.test.js +82 -49
- package/dist/v2/__tests__/FieldError.test.js.map +1 -1
- package/dist/v2/__tests__/FieldNaming.test.js +161 -0
- package/dist/v2/__tests__/FieldNaming.test.js.map +1 -0
- package/dist/v2/__tests__/FieldWidth.test.js +23 -25
- package/dist/v2/__tests__/FieldWidth.test.js.map +1 -1
- package/dist/v2/__tests__/FileCard.test.js +29 -28
- package/dist/v2/__tests__/FileCard.test.js.map +1 -1
- package/dist/v2/__tests__/FormikCheckbox.test.js +90 -183
- package/dist/v2/__tests__/FormikCheckbox.test.js.map +1 -1
- package/dist/v2/__tests__/FormikDateTimePicker.test.js +38 -48
- package/dist/v2/__tests__/FormikDateTimePicker.test.js.map +1 -1
- package/dist/v2/__tests__/FormikDisplayWidth.test.js +102 -0
- package/dist/v2/__tests__/FormikDisplayWidth.test.js.map +1 -0
- package/dist/v2/__tests__/FormikRadioGroup.test.js +123 -204
- package/dist/v2/__tests__/FormikRadioGroup.test.js.map +1 -1
- package/dist/v2/__tests__/MobileRowCard.test.js +63 -61
- package/dist/v2/__tests__/MobileRowCard.test.js.map +1 -1
- package/dist/v2/__tests__/PreviewDrawer.test.js +169 -0
- package/dist/v2/__tests__/PreviewDrawer.test.js.map +1 -0
- package/dist/v2/__tests__/ReferentielFieldContainer.test.js +159 -0
- package/dist/v2/__tests__/ReferentielFieldContainer.test.js.map +1 -0
- package/dist/v2/__tests__/SectionErrorBoundary.test.js +53 -68
- package/dist/v2/__tests__/SectionErrorBoundary.test.js.map +1 -1
- package/dist/v2/__tests__/apiError.test.js +50 -69
- package/dist/v2/__tests__/apiError.test.js.map +1 -1
- package/dist/v2/__tests__/banned-patterns.test.js +42 -123
- package/dist/v2/__tests__/banned-patterns.test.js.map +1 -1
- package/dist/v2/__tests__/chart-palette.test.js +205 -0
- package/dist/v2/__tests__/chart-palette.test.js.map +1 -0
- package/dist/v2/__tests__/contrast-palette.test.js +42 -74
- package/dist/v2/__tests__/contrast-palette.test.js.map +1 -1
- package/dist/v2/__tests__/cssVariables.test.js +44 -51
- package/dist/v2/__tests__/cssVariables.test.js.map +1 -1
- package/dist/v2/__tests__/fileValidation.test.js +136 -0
- package/dist/v2/__tests__/fileValidation.test.js.map +1 -0
- package/dist/v2/__tests__/filterCriteria.test.js +324 -0
- package/dist/v2/__tests__/filterCriteria.test.js.map +1 -0
- package/dist/v2/__tests__/fmtDate.test.js +69 -0
- package/dist/v2/__tests__/fmtDate.test.js.map +1 -0
- package/dist/v2/__tests__/gap-leakage-refonte.test.js +221 -0
- package/dist/v2/__tests__/gap-leakage-refonte.test.js.map +1 -0
- package/dist/v2/__tests__/labels-merge.test.js +23 -27
- package/dist/v2/__tests__/labels-merge.test.js.map +1 -1
- package/dist/v2/__tests__/locale-fallback.test.js +47 -52
- package/dist/v2/__tests__/locale-fallback.test.js.map +1 -1
- package/dist/v2/__tests__/reviveSavedCriteria.test.js +144 -0
- package/dist/v2/__tests__/reviveSavedCriteria.test.js.map +1 -0
- package/dist/v2/__tests__/rowActions.test.js +186 -0
- package/dist/v2/__tests__/rowActions.test.js.map +1 -0
- package/dist/v2/__tests__/useFocusOnRouteChange.test.js +156 -0
- package/dist/v2/__tests__/useFocusOnRouteChange.test.js.map +1 -0
- package/dist/v2/__tests__/useFocusTrap.test.js +270 -407
- package/dist/v2/__tests__/useFocusTrap.test.js.map +1 -1
- package/dist/v2/__tests__/usePrefersReducedMotion.test.js +123 -0
- package/dist/v2/__tests__/usePrefersReducedMotion.test.js.map +1 -0
- package/dist/v2/components/Accordion.js +60 -82
- package/dist/v2/components/Accordion.js.map +1 -1
- package/dist/v2/components/ActionStrip.js +40 -52
- package/dist/v2/components/ActionStrip.js.map +1 -1
- package/dist/v2/components/Banner.js +42 -41
- package/dist/v2/components/Banner.js.map +1 -1
- package/dist/v2/components/Busy.js +22 -27
- package/dist/v2/components/Busy.js.map +1 -1
- package/dist/v2/components/Button.js +39 -50
- package/dist/v2/components/Button.js.map +1 -1
- package/dist/v2/components/CategoryTag.d.ts.map +1 -1
- package/dist/v2/components/CategoryTag.js +49 -32
- package/dist/v2/components/CategoryTag.js.map +1 -1
- package/dist/v2/components/Checkbox.js +39 -45
- package/dist/v2/components/Checkbox.js.map +1 -1
- package/dist/v2/components/Chip.js +29 -42
- package/dist/v2/components/Chip.js.map +1 -1
- package/dist/v2/components/Combobox.js +122 -144
- package/dist/v2/components/Combobox.js.map +1 -1
- package/dist/v2/components/CommandPalette.js +138 -225
- package/dist/v2/components/CommandPalette.js.map +1 -1
- package/dist/v2/components/ConfirmDialog.js +46 -56
- package/dist/v2/components/ConfirmDialog.js.map +1 -1
- package/dist/v2/components/DatePicker.js +81 -86
- package/dist/v2/components/DatePicker.js.map +1 -1
- package/dist/v2/components/DateRangePicker.js +77 -87
- package/dist/v2/components/DateRangePicker.js.map +1 -1
- package/dist/v2/components/DateTimePicker.js +84 -91
- package/dist/v2/components/DateTimePicker.js.map +1 -1
- package/dist/v2/components/Drawer.d.ts.map +1 -1
- package/dist/v2/components/Drawer.js +93 -88
- package/dist/v2/components/Drawer.js.map +1 -1
- package/dist/v2/components/Dropzone.js +150 -196
- package/dist/v2/components/Dropzone.js.map +1 -1
- package/dist/v2/components/EmptyState.js +18 -20
- package/dist/v2/components/EmptyState.js.map +1 -1
- package/dist/v2/components/FavoriteToggle.js +28 -39
- package/dist/v2/components/FavoriteToggle.js.map +1 -1
- package/dist/v2/components/Field.d.ts +62 -4
- package/dist/v2/components/Field.d.ts.map +1 -1
- package/dist/v2/components/Field.js +169 -70
- package/dist/v2/components/Field.js.map +1 -1
- package/dist/v2/components/FieldError.js +18 -21
- package/dist/v2/components/FieldError.js.map +1 -1
- package/dist/v2/components/FieldHelp.js +40 -60
- package/dist/v2/components/FieldHelp.js.map +1 -1
- package/dist/v2/components/FileCard.js +27 -31
- package/dist/v2/components/FileCard.js.map +1 -1
- package/dist/v2/components/FilterTab.js +30 -38
- package/dist/v2/components/FilterTab.js.map +1 -1
- package/dist/v2/components/ForbiddenPage.d.ts +25 -1
- package/dist/v2/components/ForbiddenPage.d.ts.map +1 -1
- package/dist/v2/components/ForbiddenPage.js +37 -17
- package/dist/v2/components/ForbiddenPage.js.map +1 -1
- package/dist/v2/components/FormGrid.js +53 -59
- package/dist/v2/components/FormGrid.js.map +1 -1
- package/dist/v2/components/FormikDisplay.d.ts +50 -1
- package/dist/v2/components/FormikDisplay.d.ts.map +1 -1
- package/dist/v2/components/FormikDisplay.js +108 -33
- package/dist/v2/components/FormikDisplay.js.map +1 -1
- package/dist/v2/components/Input.d.ts +40 -0
- package/dist/v2/components/Input.d.ts.map +1 -1
- package/dist/v2/components/Input.js +81 -41
- package/dist/v2/components/Input.js.map +1 -1
- package/dist/v2/components/KPICard.js +57 -67
- package/dist/v2/components/KPICard.js.map +1 -1
- package/dist/v2/components/KPIStrip.js +16 -22
- package/dist/v2/components/KPIStrip.js.map +1 -1
- package/dist/v2/components/KV.js +25 -31
- package/dist/v2/components/KV.js.map +1 -1
- package/dist/v2/components/KVGrid.js +19 -26
- package/dist/v2/components/KVGrid.js.map +1 -1
- package/dist/v2/components/Layout.js +91 -120
- package/dist/v2/components/Layout.js.map +1 -1
- package/dist/v2/components/MobileRowCard.js +79 -91
- package/dist/v2/components/MobileRowCard.js.map +1 -1
- package/dist/v2/components/Modal.js +61 -69
- package/dist/v2/components/Modal.js.map +1 -1
- package/dist/v2/components/NetworkErrorPage.d.ts +19 -1
- package/dist/v2/components/NetworkErrorPage.d.ts.map +1 -1
- package/dist/v2/components/NetworkErrorPage.js +38 -21
- package/dist/v2/components/NetworkErrorPage.js.map +1 -1
- package/dist/v2/components/NotFoundPage.d.ts +17 -1
- package/dist/v2/components/NotFoundPage.d.ts.map +1 -1
- package/dist/v2/components/NotFoundPage.js +37 -18
- package/dist/v2/components/NotFoundPage.js.map +1 -1
- package/dist/v2/components/NumberInput.js +88 -118
- package/dist/v2/components/NumberInput.js.map +1 -1
- package/dist/v2/components/OverflowMenu.js +38 -56
- package/dist/v2/components/OverflowMenu.js.map +1 -1
- package/dist/v2/components/PdfViewer.js +34 -45
- package/dist/v2/components/PdfViewer.js.map +1 -1
- package/dist/v2/components/ProgressBar.js +42 -49
- package/dist/v2/components/ProgressBar.js.map +1 -1
- package/dist/v2/components/Radio.js +59 -67
- package/dist/v2/components/Radio.js.map +1 -1
- package/dist/v2/components/SectionErrorBoundary.js +90 -135
- package/dist/v2/components/SectionErrorBoundary.js.map +1 -1
- package/dist/v2/components/SectionHeader.js +34 -41
- package/dist/v2/components/SectionHeader.js.map +1 -1
- package/dist/v2/components/Segmented.js +69 -93
- package/dist/v2/components/Segmented.js.map +1 -1
- package/dist/v2/components/Select.d.ts +26 -2
- package/dist/v2/components/Select.d.ts.map +1 -1
- package/dist/v2/components/Select.js +120 -155
- package/dist/v2/components/Select.js.map +1 -1
- package/dist/v2/components/ServerErrorPage.d.ts +27 -1
- package/dist/v2/components/ServerErrorPage.d.ts.map +1 -1
- package/dist/v2/components/ServerErrorPage.js +37 -20
- package/dist/v2/components/ServerErrorPage.js.map +1 -1
- package/dist/v2/components/Skeleton.js +86 -100
- package/dist/v2/components/Skeleton.js.map +1 -1
- package/dist/v2/components/SkipLink.js +9 -12
- package/dist/v2/components/SkipLink.js.map +1 -1
- package/dist/v2/components/Spinner.js +16 -25
- package/dist/v2/components/Spinner.js.map +1 -1
- package/dist/v2/components/Status.js +18 -29
- package/dist/v2/components/Status.js.map +1 -1
- package/dist/v2/components/Stepper.js +80 -82
- package/dist/v2/components/Stepper.js.map +1 -1
- package/dist/v2/components/Surface.js +34 -49
- package/dist/v2/components/Surface.js.map +1 -1
- package/dist/v2/components/Switch.js +29 -37
- package/dist/v2/components/Switch.js.map +1 -1
- package/dist/v2/components/TabPanel.d.ts +17 -0
- package/dist/v2/components/TabPanel.d.ts.map +1 -0
- package/dist/v2/components/TabPanel.js +90 -0
- package/dist/v2/components/TabPanel.js.map +1 -0
- package/dist/v2/components/Tabs.d.ts +25 -0
- package/dist/v2/components/Tabs.d.ts.map +1 -1
- package/dist/v2/components/Tabs.js +53 -29
- package/dist/v2/components/Tabs.js.map +1 -1
- package/dist/v2/components/TelInput.js +80 -115
- package/dist/v2/components/TelInput.js.map +1 -1
- package/dist/v2/components/Textarea.js +26 -35
- package/dist/v2/components/Textarea.js.map +1 -1
- package/dist/v2/components/TimePicker.js +62 -74
- package/dist/v2/components/TimePicker.js.map +1 -1
- package/dist/v2/components/Toast.js +119 -174
- package/dist/v2/components/Toast.js.map +1 -1
- package/dist/v2/components/Tooltip.js +23 -38
- package/dist/v2/components/Tooltip.js.map +1 -1
- package/dist/v2/components/_ErrorPageBody.js +15 -16
- package/dist/v2/components/_ErrorPageBody.js.map +1 -1
- package/dist/v2/components/_pickerShared.js +5 -5
- package/dist/v2/components/_pickerShared.js.map +1 -1
- package/dist/v2/components/index.d.ts +40 -1
- package/dist/v2/components/index.d.ts.map +1 -1
- package/dist/v2/components/index.js +153 -136
- package/dist/v2/components/index.js.map +1 -1
- package/dist/v2/hooks/index.d.ts +65 -0
- package/dist/v2/hooks/index.d.ts.map +1 -1
- package/dist/v2/hooks/index.js +63 -24
- package/dist/v2/hooks/index.js.map +1 -1
- package/dist/v2/hooks/useAppliedFilters.d.ts +102 -0
- package/dist/v2/hooks/useAppliedFilters.d.ts.map +1 -0
- package/dist/v2/hooks/useAppliedFilters.js +117 -0
- package/dist/v2/hooks/useAppliedFilters.js.map +1 -0
- package/dist/v2/hooks/useDebouncedCallback.d.ts +64 -0
- package/dist/v2/hooks/useDebouncedCallback.d.ts.map +1 -0
- package/dist/v2/hooks/useDebouncedCallback.js +87 -0
- package/dist/v2/hooks/useDebouncedCallback.js.map +1 -0
- package/dist/v2/hooks/useDelayedFlag.js +6 -20
- package/dist/v2/hooks/useDelayedFlag.js.map +1 -1
- package/dist/v2/hooks/useDensity.d.ts.map +1 -1
- package/dist/v2/hooks/useDensity.js +14 -18
- package/dist/v2/hooks/useDensity.js.map +1 -1
- package/dist/v2/hooks/useFocusFirstError.js +26 -34
- package/dist/v2/hooks/useFocusFirstError.js.map +1 -1
- package/dist/v2/hooks/useFocusOnRouteChange.d.ts +65 -0
- package/dist/v2/hooks/useFocusOnRouteChange.d.ts.map +1 -0
- package/dist/v2/hooks/useFocusOnRouteChange.js +88 -0
- package/dist/v2/hooks/useFocusOnRouteChange.js.map +1 -0
- package/dist/v2/hooks/useFocusTrap.js +20 -24
- package/dist/v2/hooks/useFocusTrap.js.map +1 -1
- package/dist/v2/hooks/useFormAutoSave.d.ts +4 -4
- package/dist/v2/hooks/useFormAutoSave.d.ts.map +1 -1
- package/dist/v2/hooks/useFormAutoSave.js +39 -54
- package/dist/v2/hooks/useFormAutoSave.js.map +1 -1
- package/dist/v2/hooks/useFormCompletionProgress.d.ts +1 -1
- package/dist/v2/hooks/useFormCompletionProgress.d.ts.map +1 -1
- package/dist/v2/hooks/useFormCompletionProgress.js +33 -52
- package/dist/v2/hooks/useFormCompletionProgress.js.map +1 -1
- package/dist/v2/hooks/useKeyboardShortcuts.d.ts +25 -0
- package/dist/v2/hooks/useKeyboardShortcuts.d.ts.map +1 -0
- package/dist/v2/hooks/useKeyboardShortcuts.js +132 -0
- package/dist/v2/hooks/useKeyboardShortcuts.js.map +1 -0
- package/dist/v2/hooks/usePrefersReducedMotion.d.ts +56 -0
- package/dist/v2/hooks/usePrefersReducedMotion.d.ts.map +1 -0
- package/dist/v2/hooks/usePrefersReducedMotion.js +105 -0
- package/dist/v2/hooks/usePrefersReducedMotion.js.map +1 -0
- package/dist/v2/hooks/useResolvedDensity.js +5 -13
- package/dist/v2/hooks/useResolvedDensity.js.map +1 -1
- package/dist/v2/hooks/useSortedRows.js +4 -6
- package/dist/v2/hooks/useSortedRows.js.map +1 -1
- package/dist/v2/hooks/useTabLoading.js +7 -22
- package/dist/v2/hooks/useTabLoading.js.map +1 -1
- package/dist/v2/index.js +143 -145
- package/dist/v2/index.js.map +1 -1
- package/dist/v2/modalContext.js +2 -2
- package/dist/v2/modalContext.js.map +1 -1
- package/dist/v2/models/favorite.d.ts +8 -9
- package/dist/v2/models/favorite.d.ts.map +1 -1
- package/dist/v2/models/favorite.js.map +1 -1
- package/dist/v2/models/index.js +4 -4
- package/dist/v2/models/index.js.map +1 -1
- package/dist/v2/models/personalization.d.ts +44 -48
- package/dist/v2/models/personalization.d.ts.map +1 -1
- package/dist/v2/models/personalization.js.map +1 -1
- package/dist/v2/models/referentiel.d.ts +32 -50
- package/dist/v2/models/referentiel.d.ts.map +1 -1
- package/dist/v2/models/referentiel.js.map +1 -1
- package/dist/v2/models/savedFilter.d.ts +8 -17
- package/dist/v2/models/savedFilter.d.ts.map +1 -1
- package/dist/v2/models/savedFilter.js.map +1 -1
- package/dist/v2/patterns/ActionBar.js +152 -187
- package/dist/v2/patterns/ActionBar.js.map +1 -1
- package/dist/v2/patterns/AppMain.d.ts +109 -0
- package/dist/v2/patterns/AppMain.d.ts.map +1 -0
- package/dist/v2/patterns/AppMain.js +115 -0
- package/dist/v2/patterns/AppMain.js.map +1 -0
- package/dist/v2/patterns/BulkActionBar.js +40 -42
- package/dist/v2/patterns/BulkActionBar.js.map +1 -1
- package/dist/v2/patterns/ChartFigure.d.ts +124 -0
- package/dist/v2/patterns/ChartFigure.d.ts.map +1 -0
- package/dist/v2/patterns/ChartFigure.js +159 -0
- package/dist/v2/patterns/ChartFigure.js.map +1 -0
- package/dist/v2/patterns/CollapsibleDataGrid.js +138 -174
- package/dist/v2/patterns/CollapsibleDataGrid.js.map +1 -1
- package/dist/v2/patterns/ColumnsToggle.js +60 -94
- package/dist/v2/patterns/ColumnsToggle.js.map +1 -1
- package/dist/v2/patterns/DataGrid.d.ts.map +1 -1
- package/dist/v2/patterns/DataGrid.js +262 -297
- package/dist/v2/patterns/DataGrid.js.map +1 -1
- package/dist/v2/patterns/DataGridSettingsMenu.d.ts +12 -0
- package/dist/v2/patterns/DataGridSettingsMenu.d.ts.map +1 -1
- package/dist/v2/patterns/DataGridSettingsMenu.js +104 -121
- package/dist/v2/patterns/DataGridSettingsMenu.js.map +1 -1
- package/dist/v2/patterns/DataGridToolbar.js +103 -106
- package/dist/v2/patterns/DataGridToolbar.js.map +1 -1
- package/dist/v2/patterns/DataGridVirtualized.js +179 -217
- package/dist/v2/patterns/DataGridVirtualized.js.map +1 -1
- package/dist/v2/patterns/DeleteResourceConfirmDialog.js +32 -35
- package/dist/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -1
- package/dist/v2/patterns/DetailSplit.d.ts +87 -0
- package/dist/v2/patterns/DetailSplit.d.ts.map +1 -0
- package/dist/v2/patterns/DetailSplit.js +116 -0
- package/dist/v2/patterns/DetailSplit.js.map +1 -0
- package/dist/v2/patterns/FavoriteColumn.js +22 -23
- package/dist/v2/patterns/FavoriteColumn.js.map +1 -1
- package/dist/v2/patterns/FavoritesFilter.js +36 -44
- package/dist/v2/patterns/FavoritesFilter.js.map +1 -1
- package/dist/v2/patterns/FilterTabBar.d.ts +28 -0
- package/dist/v2/patterns/FilterTabBar.d.ts.map +1 -0
- package/dist/v2/patterns/FilterTabBar.js +120 -0
- package/dist/v2/patterns/FilterTabBar.js.map +1 -0
- package/dist/v2/patterns/FormErrorSummary.js +20 -23
- package/dist/v2/patterns/FormErrorSummary.js.map +1 -1
- package/dist/v2/patterns/FormPageShell.js +53 -50
- package/dist/v2/patterns/FormPageShell.js.map +1 -1
- package/dist/v2/patterns/FormSection.d.ts +8 -3
- package/dist/v2/patterns/FormSection.d.ts.map +1 -1
- package/dist/v2/patterns/FormSection.js +44 -51
- package/dist/v2/patterns/FormSection.js.map +1 -1
- package/dist/v2/patterns/FormikCheckbox.js +36 -45
- package/dist/v2/patterns/FormikCheckbox.js.map +1 -1
- package/dist/v2/patterns/FormikCheckboxGroup.d.ts +17 -1
- package/dist/v2/patterns/FormikCheckboxGroup.d.ts.map +1 -1
- package/dist/v2/patterns/FormikCheckboxGroup.js +62 -65
- package/dist/v2/patterns/FormikCheckboxGroup.js.map +1 -1
- package/dist/v2/patterns/FormikCombobox.js +55 -72
- package/dist/v2/patterns/FormikCombobox.js.map +1 -1
- package/dist/v2/patterns/FormikDatePicker.js +50 -64
- package/dist/v2/patterns/FormikDatePicker.js.map +1 -1
- package/dist/v2/patterns/FormikDateTimePicker.js +50 -64
- package/dist/v2/patterns/FormikDateTimePicker.js.map +1 -1
- package/dist/v2/patterns/FormikErrorFocus.js +25 -26
- package/dist/v2/patterns/FormikErrorFocus.js.map +1 -1
- package/dist/v2/patterns/FormikErrorSummary.d.ts +74 -0
- package/dist/v2/patterns/FormikErrorSummary.d.ts.map +1 -0
- package/dist/v2/patterns/FormikErrorSummary.js +97 -0
- package/dist/v2/patterns/FormikErrorSummary.js.map +1 -0
- package/dist/v2/patterns/FormikFile.d.ts +14 -1
- package/dist/v2/patterns/FormikFile.d.ts.map +1 -1
- package/dist/v2/patterns/FormikFile.js +99 -83
- package/dist/v2/patterns/FormikFile.js.map +1 -1
- package/dist/v2/patterns/FormikInput.js +45 -58
- package/dist/v2/patterns/FormikInput.js.map +1 -1
- package/dist/v2/patterns/FormikRadioGroup.js +45 -56
- package/dist/v2/patterns/FormikRadioGroup.js.map +1 -1
- package/dist/v2/patterns/FormikReferentielField.d.ts +12 -1
- package/dist/v2/patterns/FormikReferentielField.d.ts.map +1 -1
- package/dist/v2/patterns/FormikReferentielField.js +54 -64
- package/dist/v2/patterns/FormikReferentielField.js.map +1 -1
- package/dist/v2/patterns/FormikSelect.js +70 -92
- package/dist/v2/patterns/FormikSelect.js.map +1 -1
- package/dist/v2/patterns/FormikTextarea.js +35 -51
- package/dist/v2/patterns/FormikTextarea.js.map +1 -1
- package/dist/v2/patterns/KeyboardShortcutsHelp.js +60 -80
- package/dist/v2/patterns/KeyboardShortcutsHelp.js.map +1 -1
- package/dist/v2/patterns/NetworkErrorBanner.js +13 -16
- package/dist/v2/patterns/NetworkErrorBanner.js.map +1 -1
- package/dist/v2/patterns/PageContent.js +17 -20
- package/dist/v2/patterns/PageContent.js.map +1 -1
- package/dist/v2/patterns/PreviewDrawer.d.ts +49 -0
- package/dist/v2/patterns/PreviewDrawer.d.ts.map +1 -0
- package/dist/v2/patterns/PreviewDrawer.js +159 -0
- package/dist/v2/patterns/PreviewDrawer.js.map +1 -0
- package/dist/v2/patterns/ReferentielField.d.ts +86 -2
- package/dist/v2/patterns/ReferentielField.d.ts.map +1 -1
- package/dist/v2/patterns/ReferentielField.js +347 -327
- package/dist/v2/patterns/ReferentielField.js.map +1 -1
- package/dist/v2/patterns/RowFavoriteToggle.d.ts +6 -0
- package/dist/v2/patterns/RowFavoriteToggle.d.ts.map +1 -1
- package/dist/v2/patterns/RowFavoriteToggle.js +38 -30
- package/dist/v2/patterns/RowFavoriteToggle.js.map +1 -1
- package/dist/v2/patterns/SaveFilterDialog.js +50 -77
- package/dist/v2/patterns/SaveFilterDialog.js.map +1 -1
- package/dist/v2/patterns/SavedFiltersMenu.js +89 -107
- package/dist/v2/patterns/SavedFiltersMenu.js.map +1 -1
- package/dist/v2/patterns/SkeletonPageShell.js +122 -143
- package/dist/v2/patterns/SkeletonPageShell.js.map +1 -1
- package/dist/v2/patterns/SortableHeader.js +35 -57
- package/dist/v2/patterns/SortableHeader.js.map +1 -1
- package/dist/v2/patterns/Tour.js +121 -142
- package/dist/v2/patterns/Tour.js.map +1 -1
- package/dist/v2/patterns/_dataGridShared.d.ts.map +1 -1
- package/dist/v2/patterns/_dataGridShared.js +131 -147
- package/dist/v2/patterns/_dataGridShared.js.map +1 -1
- package/dist/v2/patterns/_pickerSerialisation.js +9 -10
- package/dist/v2/patterns/_pickerSerialisation.js.map +1 -1
- package/dist/v2/patterns/_sort.js +17 -33
- package/dist/v2/patterns/_sort.js.map +1 -1
- package/dist/v2/patterns/_useColumnReorder.js +124 -163
- package/dist/v2/patterns/_useColumnReorder.js.map +1 -1
- package/dist/v2/patterns/_useColumnResize.js +80 -99
- package/dist/v2/patterns/_useColumnResize.js.map +1 -1
- package/dist/v2/patterns/filterCriteria.d.ts +78 -0
- package/dist/v2/patterns/filterCriteria.d.ts.map +1 -0
- package/dist/v2/patterns/filterCriteria.js +110 -0
- package/dist/v2/patterns/filterCriteria.js.map +1 -0
- package/dist/v2/patterns/index.d.ts +160 -0
- package/dist/v2/patterns/index.d.ts.map +1 -1
- package/dist/v2/patterns/index.js +157 -79
- package/dist/v2/patterns/index.js.map +1 -1
- package/dist/v2/patterns/rowActions.d.ts +150 -0
- package/dist/v2/patterns/rowActions.d.ts.map +1 -0
- package/dist/v2/patterns/rowActions.js +232 -0
- package/dist/v2/patterns/rowActions.js.map +1 -0
- package/dist/v2/personalization/PersonalizationProvider.d.ts.map +1 -1
- package/dist/v2/personalization/PersonalizationProvider.js +57 -53
- package/dist/v2/personalization/PersonalizationProvider.js.map +1 -1
- package/dist/v2/personalization/adapters/_storageKey.js +5 -5
- package/dist/v2/personalization/adapters/_storageKey.js.map +1 -1
- package/dist/v2/personalization/adapters/createLocalStorageAdapter.js +25 -24
- package/dist/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -1
- package/dist/v2/personalization/adapters/createMemoryAdapter.js +14 -14
- package/dist/v2/personalization/adapters/createMemoryAdapter.js.map +1 -1
- package/dist/v2/personalization/adapters/index.js +5 -5
- package/dist/v2/personalization/adapters/index.js.map +1 -1
- package/dist/v2/personalization/capabilities/favorites.js +39 -62
- package/dist/v2/personalization/capabilities/favorites.js.map +1 -1
- package/dist/v2/personalization/capabilities/favoritesView.js +25 -37
- package/dist/v2/personalization/capabilities/favoritesView.js.map +1 -1
- package/dist/v2/personalization/capabilities/gridPreferences.js +31 -36
- package/dist/v2/personalization/capabilities/gridPreferences.js.map +1 -1
- package/dist/v2/personalization/capabilities/index.js +12 -12
- package/dist/v2/personalization/capabilities/reviveSavedCriteria.d.ts +88 -0
- package/dist/v2/personalization/capabilities/reviveSavedCriteria.d.ts.map +1 -0
- package/dist/v2/personalization/capabilities/reviveSavedCriteria.js +126 -0
- package/dist/v2/personalization/capabilities/reviveSavedCriteria.js.map +1 -0
- package/dist/v2/personalization/capabilities/savedFilters.js +93 -100
- package/dist/v2/personalization/capabilities/savedFilters.js.map +1 -1
- package/dist/v2/personalization/createPersonalizationStore.d.ts.map +1 -1
- package/dist/v2/personalization/createPersonalizationStore.js +81 -182
- package/dist/v2/personalization/createPersonalizationStore.js.map +1 -1
- package/dist/v2/personalization/index.d.ts +16 -0
- package/dist/v2/personalization/index.d.ts.map +1 -1
- package/dist/v2/personalization/index.js +30 -23
- package/dist/v2/personalization/index.js.map +1 -1
- package/dist/v2/personalization/personalizationContext.js +10 -12
- package/dist/v2/personalization/personalizationContext.js.map +1 -1
- package/dist/v2/personalization/schema.js +8 -9
- package/dist/v2/personalization/schema.js.map +1 -1
- package/dist/v2/referentiel/ReferentielProvider.js +31 -45
- package/dist/v2/referentiel/ReferentielProvider.js.map +1 -1
- package/dist/v2/referentiel/index.js +11 -13
- package/dist/v2/referentiel/index.js.map +1 -1
- package/dist/v2/referentiel/types.d.ts +105 -0
- package/dist/v2/referentiel/types.d.ts.map +1 -0
- package/dist/v2/referentiel/types.js +6 -0
- package/dist/v2/referentiel/types.js.map +1 -0
- package/dist/v2/referentiel/useReferentielClient.js +13 -16
- package/dist/v2/referentiel/useReferentielClient.js.map +1 -1
- package/dist/v2/referentiel/useReferentielOptions.d.ts +7 -17
- package/dist/v2/referentiel/useReferentielOptions.d.ts.map +1 -1
- package/dist/v2/referentiel/useReferentielOptions.js +63 -120
- package/dist/v2/referentiel/useReferentielOptions.js.map +1 -1
- package/dist/v2/referentiel/useReferentielSearch.d.ts +7 -48
- package/dist/v2/referentiel/useReferentielSearch.d.ts.map +1 -1
- package/dist/v2/referentiel/useReferentielSearch.js +40 -95
- package/dist/v2/referentiel/useReferentielSearch.js.map +1 -1
- package/dist/v2/theme/_brand.js +12 -26
- package/dist/v2/theme/_brand.js.map +1 -1
- package/dist/v2/theme/_brandSecondary.js +12 -26
- package/dist/v2/theme/_brandSecondary.js.map +1 -1
- package/dist/v2/theme/createPortnetTheme.js +41 -49
- package/dist/v2/theme/createPortnetTheme.js.map +1 -1
- package/dist/v2/theme/cssVariables.d.ts +3 -3
- package/dist/v2/theme/cssVariables.d.ts.map +1 -1
- package/dist/v2/theme/cssVariables.js +65 -70
- package/dist/v2/theme/cssVariables.js.map +1 -1
- package/dist/v2/theme/index.js +10 -10
- package/dist/v2/theme/index.js.map +1 -1
- package/dist/v2/tokens/breakpoints.js +16 -16
- package/dist/v2/tokens/breakpoints.js.map +1 -1
- package/dist/v2/tokens/chart.d.ts +103 -0
- package/dist/v2/tokens/chart.d.ts.map +1 -0
- package/dist/v2/tokens/chart.js +270 -0
- package/dist/v2/tokens/chart.js.map +1 -0
- package/dist/v2/tokens/colors.js +24 -24
- package/dist/v2/tokens/colors.js.map +1 -1
- package/dist/v2/tokens/density.d.ts +104 -0
- package/dist/v2/tokens/density.d.ts.map +1 -1
- package/dist/v2/tokens/density.js +67 -12
- package/dist/v2/tokens/density.js.map +1 -1
- package/dist/v2/tokens/index.d.ts +50 -1
- package/dist/v2/tokens/index.d.ts.map +1 -1
- package/dist/v2/tokens/index.js +116 -68
- package/dist/v2/tokens/index.js.map +1 -1
- package/dist/v2/tokens/motion.js +16 -22
- package/dist/v2/tokens/motion.js.map +1 -1
- package/dist/v2/tokens/radius.js +3 -3
- package/dist/v2/tokens/radius.js.map +1 -1
- package/dist/v2/tokens/shadows.js +8 -8
- package/dist/v2/tokens/shadows.js.map +1 -1
- package/dist/v2/tokens/spacing.js +4 -4
- package/dist/v2/tokens/spacing.js.map +1 -1
- package/dist/v2/tokens/state.js +3 -3
- package/dist/v2/tokens/state.js.map +1 -1
- package/dist/v2/tokens/statusPalette.js +21 -23
- package/dist/v2/tokens/statusPalette.js.map +1 -1
- package/dist/v2/tokens/tokens.json +6 -1
- package/dist/v2/tokens/typography.js +15 -15
- package/dist/v2/tokens/typography.js.map +1 -1
- package/dist/v2/tokens/zIndex.js +3 -3
- package/dist/v2/tokens/zIndex.js.map +1 -1
- package/dist/v2/types/datagrid.d.ts +9 -1
- package/dist/v2/types/datagrid.d.ts.map +1 -1
- package/dist/v2/types/datagrid.js.map +1 -1
- package/dist/v2/types/index.js +2 -2
- package/dist/v2/types/index.js.map +1 -1
- package/dist/v2/utils/apiError.js +16 -37
- package/dist/v2/utils/apiError.js.map +1 -1
- package/dist/v2/utils/contrast.js +31 -32
- package/dist/v2/utils/contrast.js.map +1 -1
- package/dist/v2/utils/cx.js +7 -27
- package/dist/v2/utils/cx.js.map +1 -1
- package/dist/v2/utils/fileDownload.js +25 -28
- package/dist/v2/utils/fileDownload.js.map +1 -1
- package/dist/v2/utils/fileValidation.d.ts +116 -0
- package/dist/v2/utils/fileValidation.d.ts.map +1 -0
- package/dist/v2/utils/fileValidation.js +220 -0
- package/dist/v2/utils/fileValidation.js.map +1 -0
- package/dist/v2/utils/fmtDate.d.ts +103 -0
- package/dist/v2/utils/fmtDate.d.ts.map +1 -0
- package/dist/v2/utils/fmtDate.js +119 -0
- package/dist/v2/utils/fmtDate.js.map +1 -0
- package/dist/v2/utils/fmtMoney.d.ts +3 -3
- package/dist/v2/utils/fmtMoney.d.ts.map +1 -1
- package/dist/v2/utils/fmtMoney.js +9 -11
- package/dist/v2/utils/fmtMoney.js.map +1 -1
- package/dist/v2/utils/formikErrors.d.ts +67 -0
- package/dist/v2/utils/formikErrors.d.ts.map +1 -0
- package/dist/v2/utils/formikErrors.js +85 -0
- package/dist/v2/utils/formikErrors.js.map +1 -0
- package/dist/v2/utils/index.d.ts +5 -0
- package/dist/v2/utils/index.d.ts.map +1 -1
- package/dist/v2/utils/index.js +67 -18
- package/dist/v2/utils/index.js.map +1 -1
- package/dist/v2/utils/mergeLabels.js +9 -14
- package/dist/v2/utils/mergeLabels.js.map +1 -1
- package/dist/v2/utils/networkStatus.js +14 -14
- package/dist/v2/utils/networkStatus.js.map +1 -1
- package/package.json +26 -9
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var React = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _Visibility = _interopRequireDefault(require("@mui/icons-material/Visibility"));
|
|
9
|
+
var _Button = _interopRequireDefault(require("../components/Button"));
|
|
10
|
+
var _Drawer = _interopRequireDefault(require("../components/Drawer"));
|
|
11
|
+
var _KV = _interopRequireDefault(require("../components/KV"));
|
|
12
|
+
var _KVGrid = _interopRequireDefault(require("../components/KVGrid"));
|
|
13
|
+
var _mergeLabels = require("../utils/mergeLabels");
|
|
14
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
16
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
17
|
+
/**
|
|
18
|
+
* PreviewDrawer — Portnet UI v2 (pattern)
|
|
19
|
+
*
|
|
20
|
+
* §Preview Drawer of the Platform Mandatory UX Patterns: the summary of a
|
|
21
|
+
* listing row — status, key information, quick actions — shown WITHOUT leaving
|
|
22
|
+
* the listing.
|
|
23
|
+
*
|
|
24
|
+
* ─────────────────────────────────────────────────────────────────────────────
|
|
25
|
+
* WHY THIS BELONGS IN THE LIBRARY (capability gap G-40)
|
|
26
|
+
*
|
|
27
|
+
* §Row Interaction and §Preview Drawer are both MUST, on EVERY listing page of
|
|
28
|
+
* the platform: rows must be clickable, and clicking one must open a preview
|
|
29
|
+
* carrying summary, status, main information and quick actions. That is not a
|
|
30
|
+
* per-module feature, it is the platform's listing contract — and the library
|
|
31
|
+
* shipped only `Drawer`, the empty shell.
|
|
32
|
+
*
|
|
33
|
+
* So each module assembled the same body by hand, and the copies drifted where
|
|
34
|
+
* it is least visible: `ms-ti-fe` renders its label/value block with
|
|
35
|
+
* `KVGrid` + `KV`, while `refonte-frontend` had built a local `<dl>` with its
|
|
36
|
+
* own two-column grid — the same concept, two renderings, which is precisely
|
|
37
|
+
* what R-2.1 forbids. That module's Area 3 pass had to correct it before this
|
|
38
|
+
* promotion could even be considered.
|
|
39
|
+
*
|
|
40
|
+
* >>> AND THE SHELL WITHOUT THE BODY IS WHAT MADE THE UNSAFE VERSION LOOK
|
|
41
|
+
* >>> REASONABLE. The promoted implementation had carried an
|
|
42
|
+
* >>> `as unknown as DemandeRow` assertion, because a single component was
|
|
43
|
+
* >>> generic over the row type while computing its DEFAULTS from one specific
|
|
44
|
+
* >>> type's fields. Its own comment recorded the consequence: without those
|
|
45
|
+
* >>> defaults "the drawer does not fail — it shows dashes and an Unknown
|
|
46
|
+
* >>> status, which is worse than an error because it is noticed late". The
|
|
47
|
+
* >>> split below is what removes the cast rather than hiding it: THIS
|
|
48
|
+
* >>> component reads NO field of `row`. It renders what it is given and hands
|
|
49
|
+
* >>> the row back to the host's callbacks. A business default therefore lives
|
|
50
|
+
* >>> in a host wrapper whose `row` is a concrete type, and neither half has to
|
|
51
|
+
* >>> assert anything. <<<
|
|
52
|
+
* ─────────────────────────────────────────────────────────────────────────────
|
|
53
|
+
*
|
|
54
|
+
* VALUES, NOT ACCESSORS, AND THE REASON IS THE CLOSING ANIMATION.
|
|
55
|
+
* `title` / `status` / `items` are optional VALUES rather than
|
|
56
|
+
* `(row: T) => …` functions. Hosts pass them through a conditional spread
|
|
57
|
+
* (`{...(row ? { title: …, items: … } : {})}`), which requiring them would
|
|
58
|
+
* make invalid — the compiler cannot see that the spread always supplies the
|
|
59
|
+
* keys. The natural workaround, mounting the drawer only when a row exists,
|
|
60
|
+
* would UNMOUNT it on close and destroy `Drawer`'s 220 ms exit animation
|
|
61
|
+
* (Charter §08).
|
|
62
|
+
*
|
|
63
|
+
* Consequence accepted: a missing `title` is not a compile error, it falls back
|
|
64
|
+
* to `labels.fallbackTitle`. The gain is that the drawer can no longer PRETEND
|
|
65
|
+
* an arbitrary row is a particular business object.
|
|
66
|
+
*
|
|
67
|
+
* Renders nothing when `row` is null, so hosts can mount it unconditionally.
|
|
68
|
+
*
|
|
69
|
+
* Usage:
|
|
70
|
+
*
|
|
71
|
+
* <PreviewDrawer<DemandeRow>
|
|
72
|
+
* open={apercuOuvert}
|
|
73
|
+
* onClose={fermer}
|
|
74
|
+
* row={ligneApercu}
|
|
75
|
+
* subtitle="Déclaration d'importation"
|
|
76
|
+
* onOpenItem={consulter}
|
|
77
|
+
* labels={{ open: "Consulter la demande" }}
|
|
78
|
+
* {...(ligneApercu ? { title: ligneApercu.identifiant, items: fiche } : {})}
|
|
79
|
+
* />
|
|
80
|
+
*/const DEFAULT_LABELS = Object.freeze({
|
|
81
|
+
/** Generic on purpose: the business verb+object belongs to the host (§9.2). */
|
|
82
|
+
open: "Consulter",
|
|
83
|
+
fallbackTitle: "Détail"
|
|
84
|
+
});
|
|
85
|
+
|
|
86
|
+
/** One label/value line of the summary sheet. */
|
|
87
|
+
|
|
88
|
+
function PreviewDrawer({
|
|
89
|
+
open,
|
|
90
|
+
onClose,
|
|
91
|
+
row,
|
|
92
|
+
subtitle,
|
|
93
|
+
title,
|
|
94
|
+
status,
|
|
95
|
+
items,
|
|
96
|
+
minColumnWidth,
|
|
97
|
+
onOpenItem,
|
|
98
|
+
canOpenItem,
|
|
99
|
+
actions,
|
|
100
|
+
onPrev,
|
|
101
|
+
onNext,
|
|
102
|
+
hasPrev,
|
|
103
|
+
hasNext,
|
|
104
|
+
children,
|
|
105
|
+
labels
|
|
106
|
+
}) {
|
|
107
|
+
const L = (0, _mergeLabels.mergeLabels)(DEFAULT_LABELS, labels);
|
|
108
|
+
if (!row) return null;
|
|
109
|
+
const canOpen = canOpenItem ? canOpenItem(row) : true;
|
|
110
|
+
const lines = items ?? [];
|
|
111
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Drawer.default, {
|
|
112
|
+
open: open,
|
|
113
|
+
onClose: onClose,
|
|
114
|
+
title: title ?? L.fallbackTitle,
|
|
115
|
+
...(subtitle !== undefined ? {
|
|
116
|
+
subtitle
|
|
117
|
+
} : {}),
|
|
118
|
+
...(status !== undefined ? {
|
|
119
|
+
status
|
|
120
|
+
} : {}),
|
|
121
|
+
...(onPrev ? {
|
|
122
|
+
onPrev
|
|
123
|
+
} : {}),
|
|
124
|
+
...(onNext ? {
|
|
125
|
+
onNext
|
|
126
|
+
} : {}),
|
|
127
|
+
...(hasPrev !== undefined ? {
|
|
128
|
+
hasPrev
|
|
129
|
+
} : {}),
|
|
130
|
+
...(hasNext !== undefined ? {
|
|
131
|
+
hasNext
|
|
132
|
+
} : {}),
|
|
133
|
+
actions: actions ?? (canOpen && onOpenItem ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button.default, {
|
|
134
|
+
icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Visibility.default, {}),
|
|
135
|
+
onClick: () => onOpenItem(row),
|
|
136
|
+
children: L.open
|
|
137
|
+
}) : null),
|
|
138
|
+
children: [lines.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_KVGrid.default, {
|
|
139
|
+
...(minColumnWidth !== undefined ? {
|
|
140
|
+
minColumnWidth
|
|
141
|
+
} : {}),
|
|
142
|
+
children: lines.map((line, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_KV.default
|
|
143
|
+
// Index-based key on purpose: `label` is a ReactNode, so it is
|
|
144
|
+
// not always a usable key, and this list is not reorderable —
|
|
145
|
+
// it is rebuilt whole per row (R-R.3's exception).
|
|
146
|
+
, {
|
|
147
|
+
label: line.label,
|
|
148
|
+
...(line.value !== undefined ? {
|
|
149
|
+
value: line.value
|
|
150
|
+
} : {}),
|
|
151
|
+
...(line.mono !== undefined ? {
|
|
152
|
+
mono: line.mono
|
|
153
|
+
} : {})
|
|
154
|
+
}, index))
|
|
155
|
+
}), children]
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
var _default = exports.default = PreviewDrawer;
|
|
159
|
+
//# sourceMappingURL=PreviewDrawer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreviewDrawer.js","names":["React","_interopRequireWildcard","require","_Visibility","_interopRequireDefault","_Button","_Drawer","_KV","_KVGrid","_mergeLabels","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DEFAULT_LABELS","freeze","open","fallbackTitle","PreviewDrawer","onClose","row","subtitle","title","status","items","minColumnWidth","onOpenItem","canOpenItem","actions","onPrev","onNext","hasPrev","hasNext","children","labels","L","mergeLabels","canOpen","lines","jsxs","undefined","jsx","icon","onClick","length","map","line","index","label","value","mono","_default","exports"],"sources":["../../../src/lib/v2/patterns/PreviewDrawer.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport VisibilityIcon from \"@mui/icons-material/Visibility\";\r\nimport Button from \"../components/Button\";\r\nimport Drawer from \"../components/Drawer\";\r\nimport KV from \"../components/KV\";\r\nimport KVGrid from \"../components/KVGrid\";\r\nimport { mergeLabels } from \"../utils/mergeLabels\";\r\n\r\n/**\r\n * PreviewDrawer — Portnet UI v2 (pattern)\r\n *\r\n * §Preview Drawer of the Platform Mandatory UX Patterns: the summary of a\r\n * listing row — status, key information, quick actions — shown WITHOUT leaving\r\n * the listing.\r\n *\r\n * ─────────────────────────────────────────────────────────────────────────────\r\n * WHY THIS BELONGS IN THE LIBRARY (capability gap G-40)\r\n *\r\n * §Row Interaction and §Preview Drawer are both MUST, on EVERY listing page of\r\n * the platform: rows must be clickable, and clicking one must open a preview\r\n * carrying summary, status, main information and quick actions. That is not a\r\n * per-module feature, it is the platform's listing contract — and the library\r\n * shipped only `Drawer`, the empty shell.\r\n *\r\n * So each module assembled the same body by hand, and the copies drifted where\r\n * it is least visible: `ms-ti-fe` renders its label/value block with\r\n * `KVGrid` + `KV`, while `refonte-frontend` had built a local `<dl>` with its\r\n * own two-column grid — the same concept, two renderings, which is precisely\r\n * what R-2.1 forbids. That module's Area 3 pass had to correct it before this\r\n * promotion could even be considered.\r\n *\r\n * >>> AND THE SHELL WITHOUT THE BODY IS WHAT MADE THE UNSAFE VERSION LOOK\r\n * >>> REASONABLE. The promoted implementation had carried an\r\n * >>> `as unknown as DemandeRow` assertion, because a single component was\r\n * >>> generic over the row type while computing its DEFAULTS from one specific\r\n * >>> type's fields. Its own comment recorded the consequence: without those\r\n * >>> defaults \"the drawer does not fail — it shows dashes and an Unknown\r\n * >>> status, which is worse than an error because it is noticed late\". The\r\n * >>> split below is what removes the cast rather than hiding it: THIS\r\n * >>> component reads NO field of `row`. It renders what it is given and hands\r\n * >>> the row back to the host's callbacks. A business default therefore lives\r\n * >>> in a host wrapper whose `row` is a concrete type, and neither half has to\r\n * >>> assert anything. <<<\r\n * ─────────────────────────────────────────────────────────────────────────────\r\n *\r\n * VALUES, NOT ACCESSORS, AND THE REASON IS THE CLOSING ANIMATION.\r\n * `title` / `status` / `items` are optional VALUES rather than\r\n * `(row: T) => …` functions. Hosts pass them through a conditional spread\r\n * (`{...(row ? { title: …, items: … } : {})}`), which requiring them would\r\n * make invalid — the compiler cannot see that the spread always supplies the\r\n * keys. The natural workaround, mounting the drawer only when a row exists,\r\n * would UNMOUNT it on close and destroy `Drawer`'s 220 ms exit animation\r\n * (Charter §08).\r\n *\r\n * Consequence accepted: a missing `title` is not a compile error, it falls back\r\n * to `labels.fallbackTitle`. The gain is that the drawer can no longer PRETEND\r\n * an arbitrary row is a particular business object.\r\n *\r\n * Renders nothing when `row` is null, so hosts can mount it unconditionally.\r\n *\r\n * Usage:\r\n *\r\n * <PreviewDrawer<DemandeRow>\r\n * open={apercuOuvert}\r\n * onClose={fermer}\r\n * row={ligneApercu}\r\n * subtitle=\"Déclaration d'importation\"\r\n * onOpenItem={consulter}\r\n * labels={{ open: \"Consulter la demande\" }}\r\n * {...(ligneApercu ? { title: ligneApercu.identifiant, items: fiche } : {})}\r\n * />\r\n */\r\n\r\nconst DEFAULT_LABELS = Object.freeze({\r\n /** Generic on purpose: the business verb+object belongs to the host (§9.2). */\r\n open: \"Consulter\",\r\n fallbackTitle: \"Détail\",\r\n});\r\n\r\nexport interface PreviewDrawerLabels {\r\n open?: string | undefined;\r\n fallbackTitle?: string | undefined;\r\n}\r\n\r\n/** One label/value line of the summary sheet. */\r\nexport interface PreviewDrawerItem {\r\n label: React.ReactNode;\r\n value?: React.ReactNode | undefined;\r\n /** Renders the value in the mono face — IDs, references, amounts (§2.2). */\r\n mono?: boolean | undefined;\r\n}\r\n\r\nexport interface PreviewDrawerProps<T> {\r\n open?: boolean | undefined;\r\n onClose?: (() => void) | undefined;\r\n /** The previewed row. `null` renders nothing. */\r\n row: T | null;\r\n /** What kind of thing this is. Host vocabulary (§9.4). */\r\n subtitle?: React.ReactNode | undefined;\r\n /** Falls back to `labels.fallbackTitle` — see the note on values vs accessors. */\r\n title?: React.ReactNode | undefined;\r\n /** Status chip. Build it from `Status` so it stays on the `--status-*` palette (R-2.2). */\r\n status?: React.ReactNode | undefined;\r\n /** The summary sheet. Rendered as `KVGrid` + `KV`. */\r\n items?: readonly PreviewDrawerItem[] | undefined;\r\n /** Track minimum of the summary grid, in px. Defaults to `KVGrid`'s own. */\r\n minColumnWidth?: number | undefined;\r\n /** Opens the full record. Without it, no default action is rendered. */\r\n onOpenItem?: ((row: T) => void) | undefined;\r\n /**\r\n * Whether the open action applies to this row.\r\n *\r\n * Defaults to ALLOWED. This component knows no business status, so it cannot\r\n * derive a masking rule — and inventing one would be worse than having none.\r\n */\r\n canOpenItem?: ((row: T) => boolean) | undefined;\r\n /** Replaces the default action entirely. */\r\n actions?: React.ReactNode | undefined;\r\n onPrev?: (() => void) | undefined;\r\n onNext?: (() => void) | undefined;\r\n hasPrev?: boolean | undefined;\r\n hasNext?: boolean | undefined;\r\n /** Rendered under the summary sheet — tabs, documents, a nested grid. */\r\n children?: React.ReactNode | undefined;\r\n labels?: PreviewDrawerLabels | undefined;\r\n}\r\n\r\nfunction PreviewDrawer<T>({\r\n open,\r\n onClose,\r\n row,\r\n subtitle,\r\n title,\r\n status,\r\n items,\r\n minColumnWidth,\r\n onOpenItem,\r\n canOpenItem,\r\n actions,\r\n onPrev,\r\n onNext,\r\n hasPrev,\r\n hasNext,\r\n children,\r\n labels,\r\n}: PreviewDrawerProps<T>) {\r\n const L = mergeLabels(DEFAULT_LABELS, labels);\r\n\r\n if (!row) return null;\r\n\r\n const canOpen = canOpenItem ? canOpenItem(row) : true;\r\n const lines: readonly PreviewDrawerItem[] = items ?? [];\r\n\r\n return (\r\n <Drawer\r\n open={open}\r\n onClose={onClose}\r\n title={title ?? L.fallbackTitle}\r\n {...(subtitle !== undefined ? { subtitle } : {})}\r\n {...(status !== undefined ? { status } : {})}\r\n {...(onPrev ? { onPrev } : {})}\r\n {...(onNext ? { onNext } : {})}\r\n {...(hasPrev !== undefined ? { hasPrev } : {})}\r\n {...(hasNext !== undefined ? { hasNext } : {})}\r\n actions={\r\n actions ??\r\n (canOpen && onOpenItem ? (\r\n <Button icon={<VisibilityIcon />} onClick={() => onOpenItem(row)}>\r\n {L.open}\r\n </Button>\r\n ) : null)\r\n }\r\n >\r\n {lines.length > 0 && (\r\n <KVGrid {...(minColumnWidth !== undefined ? { minColumnWidth } : {})}>\r\n {lines.map((line, index) => (\r\n <KV\r\n // Index-based key on purpose: `label` is a ReactNode, so it is\r\n // not always a usable key, and this list is not reorderable —\r\n // it is rebuilt whole per row (R-R.3's exception).\r\n key={index}\r\n label={line.label}\r\n {...(line.value !== undefined ? { value: line.value } : {})}\r\n {...(line.mono !== undefined ? { mono: line.mono } : {})}\r\n />\r\n ))}\r\n </KVGrid>\r\n )}\r\n {children}\r\n </Drawer>\r\n );\r\n}\r\n\r\nexport default PreviewDrawer;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@ import Combobox from "../components/Combobox";
|
|
|
3
3
|
import type { ComboboxOption, ComboboxOptionValue } from "../components/Combobox";
|
|
4
4
|
import Modal from "../components/Modal";
|
|
5
5
|
import type { DataGridColumn } from "../types/datagrid";
|
|
6
|
-
import type { RowId, SortDescriptor } from "../types/common";
|
|
6
|
+
import type { Breakpoint, RowId, SortDescriptor } from "../types/common";
|
|
7
7
|
/**
|
|
8
8
|
* ReferentielField — Portnet UI v2 (pattern)
|
|
9
9
|
*
|
|
@@ -72,6 +72,25 @@ export interface ReferentielCriterion {
|
|
|
72
72
|
getOptionValue?: ((option: ComboboxOption | ComboboxOptionValue) => ComboboxOptionValue) | undefined;
|
|
73
73
|
getOptionLabel?: React.ComponentProps<typeof Combobox>["getOptionLabel"] | undefined;
|
|
74
74
|
disableFuture?: boolean | undefined;
|
|
75
|
+
/**
|
|
76
|
+
* Native `maxLength` for an `"input"` criterion (ignored by the combobox and
|
|
77
|
+
* date kinds, which have no free-text entry).
|
|
78
|
+
*
|
|
79
|
+
* Added closing a gap found migrating ms-ti-fe off its local
|
|
80
|
+
* `AppFormikSearchField`: every criterion in that module's six search forms
|
|
81
|
+
* carried `inputProps={{ maxLength: 32 | 64 }}`, mirroring the column widths
|
|
82
|
+
* the backend accepts, and this descriptor had no way to carry it — so the
|
|
83
|
+
* migration would have SILENTLY DROPPED an input constraint on every
|
|
84
|
+
* criterion. A host could not work around it either: `criteria` descriptors
|
|
85
|
+
* are rendered by this component, not by the caller, so there is no element
|
|
86
|
+
* to put the attribute on.
|
|
87
|
+
*
|
|
88
|
+
* Deliberately narrow: `maxLength` only, not an open `inputProps` passthrough.
|
|
89
|
+
* A criterion is a search box owned by this pattern; letting hosts spray
|
|
90
|
+
* arbitrary input attributes into it would reopen the same drift the
|
|
91
|
+
* descriptor exists to prevent.
|
|
92
|
+
*/
|
|
93
|
+
maxLength?: number | undefined;
|
|
75
94
|
}
|
|
76
95
|
export interface ReferentielSearchParams {
|
|
77
96
|
criteria: Record<string, unknown>;
|
|
@@ -95,6 +114,52 @@ export interface ReferentielFieldProps<T> {
|
|
|
95
114
|
subtitle?: React.ReactNode | undefined;
|
|
96
115
|
size?: "sm" | "md" | "lg" | "xl" | undefined;
|
|
97
116
|
modalProps?: Partial<React.ComponentProps<typeof Modal>> | undefined;
|
|
117
|
+
/**
|
|
118
|
+
* Conteneur du sélecteur. `"modal"` par défaut — aucun appelant existant ne
|
|
119
|
+
* change.
|
|
120
|
+
*
|
|
121
|
+
* ─── POURQUOI CE CHOIX EXISTE (gap S-1) ─────────────────────────────
|
|
122
|
+
*
|
|
123
|
+
* R-M.5 est explicite : « Drawer plutôt que Modal pour ≥ 3 champs ou contenu
|
|
124
|
+
* défilable long ». Un sélecteur à critères PLUS une grille paginée satisfait
|
|
125
|
+
* les DEUX branches, et §Drawer Pattern réserve par ailleurs le drawer à la
|
|
126
|
+
* « consultation rapide » — ce qu'est le choix d'une ligne de référentiel.
|
|
127
|
+
*
|
|
128
|
+
* Le conteneur était en dur (`Modal`), et `modalProps` étant un
|
|
129
|
+
* `Partial<ComponentProps<typeof Modal>>`, aucun réglage ne pouvait le
|
|
130
|
+
* changer. Un hôte qui LIT R-M.5 ne pouvait donc pas adopter ce pattern — et
|
|
131
|
+
* c'est l'une des deux raisons pour lesquelles `addm-fe` gardait deux
|
|
132
|
+
* sélecteurs locaux de 14 Ko chacun (Area 3, lot 3E).
|
|
133
|
+
*/
|
|
134
|
+
container?: "modal" | "drawer" | undefined;
|
|
135
|
+
/**
|
|
136
|
+
* Largeur du drawer, quand `container="drawer"`. Défaut : `layout.drawer` du
|
|
137
|
+
* socle, via le défaut propre de `Drawer` — non réécrit ici pour qu'une
|
|
138
|
+
* révision du token s'applique aussi à ce pattern.
|
|
139
|
+
*/
|
|
140
|
+
drawerWidth?: number | undefined;
|
|
141
|
+
/**
|
|
142
|
+
* Lance une recherche à critères vides à l'ouverture, au lieu d'afficher
|
|
143
|
+
* l'état « Aucune recherche ».
|
|
144
|
+
*
|
|
145
|
+
* ─── POURQUOI (gap S-2) ──────────────────────────────────────
|
|
146
|
+
*
|
|
147
|
+
* « Saisissez un critère puis lancez la recherche » est le bon état initial
|
|
148
|
+
* quand la population est trop grande pour être listée — c'est le cas d'usage
|
|
149
|
+
* que décrit l'en-tête de ce fichier. Mais certaines populations sont COURTES
|
|
150
|
+
* et CONNUES : les mandatants habilités d'un transitaire, la nomenclature
|
|
151
|
+
* paginable par cinq. La réponse attendue y est la liste, pas un formulaire
|
|
152
|
+
* vide, et c'est le comportement hérité des écrans v1.
|
|
153
|
+
*
|
|
154
|
+
* `initialCriteria` ne couvrait pas ce besoin : il SEME les critères sans
|
|
155
|
+
* déclencher d'appel. Seconde raison pour laquelle `addm-fe` ne pouvait pas
|
|
156
|
+
* adopter ce pattern.
|
|
157
|
+
*
|
|
158
|
+
* La recherche part UNE fois par ouverture : un changement de critère dans le
|
|
159
|
+
* formulaire ne la relance pas (c'est le rôle du bouton), et une fermeture
|
|
160
|
+
* réarme le déclencheur.
|
|
161
|
+
*/
|
|
162
|
+
searchOnOpen?: boolean | undefined;
|
|
98
163
|
search: (params: ReferentielSearchParams) => ReferentielSearchResult<T> | Promise<ReferentielSearchResult<T>>;
|
|
99
164
|
criteria?: ReferentielCriterion[] | undefined;
|
|
100
165
|
initialCriteria?: Record<string, unknown> | undefined;
|
|
@@ -107,12 +172,31 @@ export interface ReferentielFieldProps<T> {
|
|
|
107
172
|
onSortChange?: React.Dispatch<React.SetStateAction<SortDescriptor[]>> | undefined;
|
|
108
173
|
labels?: ReferentielFieldLabels | undefined;
|
|
109
174
|
locale?: string | undefined;
|
|
175
|
+
/**
|
|
176
|
+
* Card renderer for the result grid below `mobileBreakpoint`.
|
|
177
|
+
*
|
|
178
|
+
* RESPONSIVE GAP (found auditing ms-ti-fe, Area 9). This pattern rendered
|
|
179
|
+
* its `DataGrid` with no card renderer at all, and `DataGrid` falls back to
|
|
180
|
+
* HORIZONTAL SCROLL when none is supplied. Every referentiel picker in the
|
|
181
|
+
* fleet therefore scrolled sideways on a phone — ms-ti-fe's comptes-bancaires
|
|
182
|
+
* picker is 778px of fixed column widths inside a `size="lg"` modal, on
|
|
183
|
+
* viewports the Platform standard lists down to 320px, against "No horizontal
|
|
184
|
+
* scrolling except for justified business cases".
|
|
185
|
+
*
|
|
186
|
+
* A host could not fix it either: the grid is rendered here, not by the
|
|
187
|
+
* caller. Omit this prop and a card is DERIVED from `columns` (header ->
|
|
188
|
+
* label, `render` / `getValue` / `row[key]` -> value), so the card can never
|
|
189
|
+
* drift from the table; pass it to override.
|
|
190
|
+
*/
|
|
191
|
+
renderMobileCard?: ((row: T) => React.ReactNode) | undefined;
|
|
192
|
+
/** Breakpoint below which the result grid switches to cards (default "sm"). */
|
|
193
|
+
mobileBreakpoint?: Breakpoint | undefined;
|
|
110
194
|
id?: string | undefined;
|
|
111
195
|
name?: string | undefined;
|
|
112
196
|
"aria-invalid"?: React.AriaAttributes["aria-invalid"] | undefined;
|
|
113
197
|
"aria-required"?: React.AriaAttributes["aria-required"] | undefined;
|
|
114
198
|
"aria-describedby"?: string | undefined;
|
|
115
199
|
}
|
|
116
|
-
declare function ReferentielField<T>({ value, onChange, getDisplayValue, placeholder, disabled, readOnly, clearable, title, subtitle, size, modalProps, search, criteria, initialCriteria, columns, pageSize: pageSizeProp, pageSizes, getRowId, confirmOnSelection, sort, onSortChange, labels, locale, id, name, "aria-invalid": ariaInvalid, "aria-required": ariaRequired, "aria-describedby": ariaDescribedBy, }: ReferentielFieldProps<T>): React.JSX.Element;
|
|
200
|
+
declare function ReferentielField<T>({ value, onChange, getDisplayValue, placeholder, disabled, readOnly, clearable, title, subtitle, size, modalProps, container, drawerWidth, searchOnOpen, search, criteria, initialCriteria, columns, pageSize: pageSizeProp, pageSizes, getRowId, confirmOnSelection, sort, onSortChange, labels, locale, renderMobileCard, mobileBreakpoint, id, name, "aria-invalid": ariaInvalid, "aria-required": ariaRequired, "aria-describedby": ariaDescribedBy, }: ReferentielFieldProps<T>): React.JSX.Element;
|
|
117
201
|
export default ReferentielField;
|
|
118
202
|
//# sourceMappingURL=ReferentielField.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReferentielField.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/patterns/ReferentielField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAiB,MAAM,wBAAwB,CAAC;AAIjG,OAAO,KAAK,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"ReferentielField.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/patterns/ReferentielField.tsx"],"names":[],"mappings":"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"}
|