@portnet/ui 6.0.1 → 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 +737 -0
- package/dist/esm/index.js +90 -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 -39
- 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 +146 -0
- package/dist/esm/v2/__tests__/FieldWidth.test.js.map +1 -0
- package/dist/esm/v2/__tests__/FileCard.test.js +18 -18
- package/dist/esm/v2/__tests__/FileCard.test.js.map +1 -1
- package/dist/esm/v2/__tests__/FormikCheckbox.test.js +173 -0
- package/dist/esm/v2/__tests__/FormikCheckbox.test.js.map +1 -0
- package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js +236 -0
- package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js.map +1 -0
- 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 +299 -0
- package/dist/esm/v2/__tests__/FormikRadioGroup.test.js.map +1 -0
- package/dist/esm/v2/__tests__/MobileRowCard.test.js +44 -43
- 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 -22
- 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 +118 -90
- 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 +210 -52
- 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 +64 -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 +14 -4
- 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 +26 -75
- 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 +130 -0
- package/dist/esm/v2/patterns/FormikCheckbox.js.map +1 -0
- 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 -66
- package/dist/esm/v2/patterns/FormikCombobox.js.map +1 -1
- package/dist/esm/v2/patterns/FormikDatePicker.js +51 -99
- package/dist/esm/v2/patterns/FormikDatePicker.js.map +1 -1
- package/dist/esm/v2/patterns/FormikDateTimePicker.js +136 -0
- package/dist/esm/v2/patterns/FormikDateTimePicker.js.map +1 -0
- 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 -50
- package/dist/esm/v2/patterns/FormikInput.js.map +1 -1
- package/dist/esm/v2/patterns/FormikRadioGroup.js +129 -0
- package/dist/esm/v2/patterns/FormikRadioGroup.js.map +1 -0
- 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 -84
- package/dist/esm/v2/patterns/FormikSelect.js.map +1 -1
- package/dist/esm/v2/patterns/FormikTextarea.js +30 -43
- package/dist/esm/v2/patterns/FormikTextarea.js.map +1 -1
- package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js +64 -65
- 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 +127 -0
- package/dist/esm/v2/patterns/RowFavoriteToggle.js.map +1 -0
- 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 +72 -0
- package/dist/esm/v2/patterns/_pickerSerialisation.js.map +1 -0
- 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 +235 -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 +203 -0
- package/dist/esm/v2/personalization/capabilities/gridPreferences.js.map +1 -0
- package/dist/esm/v2/personalization/capabilities/index.js +5 -0
- package/dist/esm/v2/personalization/capabilities/index.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 +35 -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 +9 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +122 -47
- 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 +98 -69
- 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 +148 -0
- package/dist/v2/__tests__/FieldWidth.test.js.map +1 -0
- package/dist/v2/__tests__/FileCard.test.js +45 -48
- package/dist/v2/__tests__/FileCard.test.js.map +1 -1
- package/dist/v2/__tests__/FormikCheckbox.test.js +175 -0
- package/dist/v2/__tests__/FormikCheckbox.test.js.map +1 -0
- package/dist/v2/__tests__/FormikDateTimePicker.test.js +237 -0
- package/dist/v2/__tests__/FormikDateTimePicker.test.js.map +1 -0
- 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 +300 -0
- package/dist/v2/__tests__/FormikRadioGroup.test.js.map +1 -0
- package/dist/v2/__tests__/MobileRowCard.test.js +100 -102
- 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 +38 -46
- 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.d.ts.map +1 -1
- package/dist/v2/components/DateTimePicker.js +121 -95
- 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 +121 -5
- package/dist/v2/components/Field.d.ts.map +1 -1
- package/dist/v2/components/Field.js +221 -62
- 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 +67 -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.d.ts.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.d.ts +9 -9
- package/dist/v2/patterns/FavoriteColumn.d.ts.map +1 -1
- package/dist/v2/patterns/FavoriteColumn.js +32 -80
- 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.d.ts +77 -0
- package/dist/v2/patterns/FormikCheckbox.d.ts.map +1 -0
- package/dist/v2/patterns/FormikCheckbox.js +138 -0
- package/dist/v2/patterns/FormikCheckbox.js.map +1 -0
- 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.d.ts +7 -1
- package/dist/v2/patterns/FormikCombobox.d.ts.map +1 -1
- package/dist/v2/patterns/FormikCombobox.js +55 -69
- package/dist/v2/patterns/FormikCombobox.js.map +1 -1
- package/dist/v2/patterns/FormikDatePicker.d.ts +13 -1
- package/dist/v2/patterns/FormikDatePicker.d.ts.map +1 -1
- package/dist/v2/patterns/FormikDatePicker.js +59 -106
- package/dist/v2/patterns/FormikDatePicker.js.map +1 -1
- package/dist/v2/patterns/FormikDateTimePicker.d.ts +111 -0
- package/dist/v2/patterns/FormikDateTimePicker.d.ts.map +1 -0
- package/dist/v2/patterns/FormikDateTimePicker.js +144 -0
- package/dist/v2/patterns/FormikDateTimePicker.js.map +1 -0
- 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.d.ts +11 -1
- package/dist/v2/patterns/FormikInput.d.ts.map +1 -1
- package/dist/v2/patterns/FormikInput.js +45 -55
- package/dist/v2/patterns/FormikInput.js.map +1 -1
- package/dist/v2/patterns/FormikRadioGroup.d.ts +80 -0
- package/dist/v2/patterns/FormikRadioGroup.d.ts.map +1 -0
- package/dist/v2/patterns/FormikRadioGroup.js +137 -0
- package/dist/v2/patterns/FormikRadioGroup.js.map +1 -0
- 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.d.ts +9 -1
- package/dist/v2/patterns/FormikSelect.d.ts.map +1 -1
- package/dist/v2/patterns/FormikSelect.js +70 -89
- package/dist/v2/patterns/FormikSelect.js.map +1 -1
- package/dist/v2/patterns/FormikTextarea.d.ts +9 -1
- package/dist/v2/patterns/FormikTextarea.d.ts.map +1 -1
- package/dist/v2/patterns/FormikTextarea.js +35 -48
- package/dist/v2/patterns/FormikTextarea.js.map +1 -1
- package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts +14 -1
- package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts.map +1 -1
- package/dist/v2/patterns/KeyboardShortcutsHelp.js +71 -74
- 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 +98 -0
- package/dist/v2/patterns/RowFavoriteToggle.d.ts.map +1 -0
- package/dist/v2/patterns/RowFavoriteToggle.js +135 -0
- package/dist/v2/patterns/RowFavoriteToggle.js.map +1 -0
- 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.d.ts +44 -0
- package/dist/v2/patterns/_pickerSerialisation.d.ts.map +1 -0
- package/dist/v2/patterns/_pickerSerialisation.js +80 -0
- package/dist/v2/patterns/_pickerSerialisation.js.map +1 -0
- 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 +247 -0
- package/dist/v2/patterns/index.d.ts.map +1 -1
- package/dist/v2/patterns/index.js +182 -70
- 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.d.ts +100 -0
- package/dist/v2/personalization/capabilities/gridPreferences.d.ts.map +1 -0
- package/dist/v2/personalization/capabilities/gridPreferences.js +210 -0
- package/dist/v2/personalization/capabilities/gridPreferences.js.map +1 -0
- package/dist/v2/personalization/capabilities/index.d.ts +6 -0
- package/dist/v2/personalization/capabilities/index.d.ts.map +1 -1
- package/dist/v2/personalization/capabilities/index.js +23 -10
- package/dist/v2/personalization/capabilities/index.js.map +1 -1
- 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 +34 -0
- package/dist/v2/personalization/index.d.ts.map +1 -1
- package/dist/v2/personalization/index.js +41 -21
- 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
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
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
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
7
|
-
exports
|
|
6
|
+
exports.default = void 0;
|
|
8
7
|
var React = _interopRequireWildcard(require("react"));
|
|
9
8
|
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
10
9
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
_excluded3 = ["span", "children", "sx"];
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
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); }
|
|
14
12
|
/**
|
|
15
13
|
* FormGrid — Portnet UI v2
|
|
16
14
|
*
|
|
@@ -52,24 +50,16 @@ var _excluded = ["children", "columns", "minColumnWidth", "gap", "sx"],
|
|
|
52
50
|
* </FormGrid.Full>
|
|
53
51
|
* </FormGrid>
|
|
54
52
|
*/
|
|
55
|
-
|
|
56
|
-
function
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
function FormGrid(_ref) {
|
|
66
|
-
var children = _ref.children,
|
|
67
|
-
columns = _ref.columns,
|
|
68
|
-
minColumnWidth = _ref.minColumnWidth,
|
|
69
|
-
gap = _ref.gap,
|
|
70
|
-
sx = _ref.sx,
|
|
71
|
-
rest = _objectWithoutProperties(_ref, _excluded);
|
|
72
|
-
var gridTemplateColumns = React.useMemo(function () {
|
|
53
|
+
|
|
54
|
+
function FormGrid({
|
|
55
|
+
children,
|
|
56
|
+
columns,
|
|
57
|
+
minColumnWidth,
|
|
58
|
+
gap,
|
|
59
|
+
sx,
|
|
60
|
+
...rest
|
|
61
|
+
}) {
|
|
62
|
+
const gridTemplateColumns = React.useMemo(() => {
|
|
73
63
|
/* Auto-fill adaptatif — minColumnWidth prime sur columns.
|
|
74
64
|
* min(${minColumnWidth}px, 100%) borne la largeur mini de chaque
|
|
75
65
|
* piste à celle du conteneur : au-dessus de sm, une piste ne peut
|
|
@@ -77,10 +67,10 @@ function FormGrid(_ref) {
|
|
|
77
67
|
if (minColumnWidth) {
|
|
78
68
|
return {
|
|
79
69
|
xs: "1fr",
|
|
80
|
-
sm:
|
|
70
|
+
sm: `repeat(auto-fill, minmax(min(${minColumnWidth}px, 100%), 1fr))`
|
|
81
71
|
};
|
|
82
72
|
}
|
|
83
|
-
|
|
73
|
+
const cols = typeof columns === "number" && columns > 0 ? columns : 3;
|
|
84
74
|
|
|
85
75
|
/* Colonne unique — textarea, notes, upload : toujours pleine largeur */
|
|
86
76
|
if (cols === 1) return "1fr";
|
|
@@ -105,13 +95,13 @@ function FormGrid(_ref) {
|
|
|
105
95
|
return {
|
|
106
96
|
xs: "1fr",
|
|
107
97
|
sm: "repeat(2, minmax(0, 1fr))",
|
|
108
|
-
md:
|
|
98
|
+
md: `repeat(${cols}, minmax(0, 1fr))`
|
|
109
99
|
};
|
|
110
100
|
}, [columns, minColumnWidth]);
|
|
111
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box
|
|
112
|
-
sx:
|
|
101
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
|
|
102
|
+
sx: {
|
|
113
103
|
display: "grid",
|
|
114
|
-
gridTemplateColumns
|
|
104
|
+
gridTemplateColumns,
|
|
115
105
|
/* Charter §2.3 — `-s-4` (16px) EST le « Gap formulaire (default) » ; le
|
|
116
106
|
* défaut précédent était `-s-3` (12px), que la même table réserve au
|
|
117
107
|
* « Padding cards compact ». Le composant canonique de grille de
|
|
@@ -122,12 +112,13 @@ function FormGrid(_ref) {
|
|
|
122
112
|
*
|
|
123
113
|
* `??` et non `||` : `gap={0}` est une valeur légitime que `||`
|
|
124
114
|
* écrasait silencieusement par le défaut. */
|
|
125
|
-
gap: gap
|
|
126
|
-
alignItems: "start"
|
|
127
|
-
|
|
128
|
-
|
|
115
|
+
gap: gap ?? "var(--s-4)",
|
|
116
|
+
alignItems: "start",
|
|
117
|
+
...sx
|
|
118
|
+
},
|
|
119
|
+
...rest,
|
|
129
120
|
children: children
|
|
130
|
-
})
|
|
121
|
+
});
|
|
131
122
|
}
|
|
132
123
|
|
|
133
124
|
/* ── FormGrid.Full ────────────────────────────────────────────────────
|
|
@@ -135,18 +126,20 @@ function FormGrid(_ref) {
|
|
|
135
126
|
* Usage : textareas, file uploads, sub-tables, notes.
|
|
136
127
|
*/
|
|
137
128
|
|
|
138
|
-
function FormGridFull(
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
129
|
+
function FormGridFull({
|
|
130
|
+
children,
|
|
131
|
+
sx,
|
|
132
|
+
...rest
|
|
133
|
+
}) {
|
|
134
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
|
|
135
|
+
sx: {
|
|
144
136
|
gridColumn: "1 / -1",
|
|
145
|
-
minWidth: 0
|
|
146
|
-
|
|
147
|
-
|
|
137
|
+
minWidth: 0,
|
|
138
|
+
...sx
|
|
139
|
+
},
|
|
140
|
+
...rest,
|
|
148
141
|
children: children
|
|
149
|
-
})
|
|
142
|
+
});
|
|
150
143
|
}
|
|
151
144
|
|
|
152
145
|
/* ── FormGrid.Item ────────────────────────────────────────────────────
|
|
@@ -158,30 +151,31 @@ function FormGridFull(_ref2) {
|
|
|
158
151
|
* Usage : Description (span=2 sur desktop, full-width mobile/tablette)
|
|
159
152
|
*/
|
|
160
153
|
|
|
161
|
-
function FormGridItem(
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box
|
|
168
|
-
sx:
|
|
154
|
+
function FormGridItem({
|
|
155
|
+
span = 1,
|
|
156
|
+
children,
|
|
157
|
+
sx,
|
|
158
|
+
...rest
|
|
159
|
+
}) {
|
|
160
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default, {
|
|
161
|
+
sx: {
|
|
169
162
|
gridColumn: {
|
|
170
163
|
xs: "1 / -1",
|
|
171
164
|
/* mobile : toujours pleine largeur */
|
|
172
165
|
sm: "span 1",
|
|
173
166
|
/* tablette (2-col) : 1 cellule */
|
|
174
|
-
md:
|
|
167
|
+
md: `span ${span}` /* desktop (N-col) : span explicite */
|
|
175
168
|
},
|
|
176
|
-
minWidth: 0
|
|
177
|
-
|
|
178
|
-
|
|
169
|
+
minWidth: 0,
|
|
170
|
+
...sx
|
|
171
|
+
},
|
|
172
|
+
...rest,
|
|
179
173
|
children: children
|
|
180
|
-
})
|
|
174
|
+
});
|
|
181
175
|
}
|
|
182
|
-
|
|
176
|
+
const FormGridWithStatics = Object.assign(FormGrid, {
|
|
183
177
|
Item: FormGridItem,
|
|
184
178
|
Full: FormGridFull
|
|
185
179
|
});
|
|
186
|
-
var _default = exports
|
|
180
|
+
var _default = exports.default = FormGridWithStatics;
|
|
187
181
|
//# sourceMappingURL=FormGrid.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormGrid.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_jsxRuntime","_excluded","_excluded2","_excluded3","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","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","FormGrid","_ref","children","columns","minColumnWidth","gap","sx","rest","gridTemplateColumns","useMemo","xs","sm","concat","cols","md","jsx","display","alignItems","FormGridFull","_ref2","gridColumn","minWidth","FormGridItem","_ref3","_ref3$span","span","FormGridWithStatics","assign","Item","Full","_default","exports"],"sources":["../../../src/lib/v2/components/FormGrid.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport type { BoxProps } from \"@mui/material/Box\";\r\n\r\n/**\r\n * FormGrid — Portnet UI v2\r\n *\r\n * Charter §03 R-3.2 — canonical RESPONSIVE form grid.\r\n *\r\n * ── Breakpoint strategy (aligné addpe-fe) ───────────────────────────\r\n *\r\n * Les clés xs/sm/md ci-dessous résolvent contre l'échelle de tokens\r\n * Portnet câblée dans le thème MUI (Batch 1), PAS les défauts MUI :\r\n *\r\n * xs (<481px) : 1 colonne — mobile, chaque champ pleine largeur\r\n * sm (481-767px) : 2 colonnes — tablette / grand mobile (transition douce)\r\n * md (≥768px) : N colonnes — desktop (layout cible)\r\n *\r\n * Source: addpe-fe/AutorisationForm.js\r\n * gridTemplateColumns: { xs: \"1fr\", sm: \"1fr 1fr\", md: \"repeat(3, 1fr)\" }\r\n *\r\n * ── Presets ─────────────────────────────────────────────────────────\r\n *\r\n * columns={1} → toujours 1 col (textarea, notes, upload)\r\n * columns={2} → 1col xs / 2col sm+ (formulaires courts)\r\n * columns={3} → 1col xs / 2col sm / 3col md (DEFAULT FormSection)\r\n * columns={4} → 1col xs / 2col sm / 4col md (champs courts : codes, dates)\r\n * minColumnWidth={N} → auto-fill adaptatif, 1col xs\r\n *\r\n * ── Sous-composants ─────────────────────────────────────────────────\r\n *\r\n * <FormGrid.Full> → span toutes colonnes (textarea, tables)\r\n * <FormGrid.Item span> → span explicite (sm+), full-width xs\r\n *\r\n * ── Exemple ─────────────────────────────────────────────────────────\r\n *\r\n * <FormGrid columns={3}>\r\n * <FormikInput name=\"nom\" label=\"Nom\" />\r\n * <FormikInput name=\"prenom\" label=\"Prénom\" />\r\n * <FormikInput name=\"code\" label=\"Code\" />\r\n * <FormGrid.Full>\r\n * <FormikTextarea name=\"obs\" label=\"Observations\" />\r\n * </FormGrid.Full>\r\n * </FormGrid>\r\n */\r\nexport interface FormGridProps extends Omit<BoxProps, \"gap\"> {\r\n /**\r\n * Nombre de colonnes égales.\r\n * 1 → pleine largeur (notes, textarea)\r\n * 2 → 2 cols sm+\r\n * 3 → DEFAULT FormSection : 1col xs / 2col sm / 3col md\r\n * 4 → 1col xs / 2col sm / 4col md (champs courts)\r\n * Mutually exclusive avec minColumnWidth.\r\n */\r\n columns?: number | undefined;\r\n /** Auto-fill adaptatif — tracks d'au moins N px de large. */\r\n minColumnWidth?: number | undefined;\r\n /**\r\n * Gap de la grille. Défaut `var(--s-4)` — la charte §2.3 assigne\r\n * explicitement `-s-4` (16px) à « Gap formulaire (default) », `-s-3` (12px)\r\n * étant réservé au « Padding cards compact ». Gap G-13.\r\n */\r\n gap?: string | number | undefined;\r\n}\r\n\r\nfunction FormGrid({\r\n children,\r\n columns,\r\n minColumnWidth,\r\n gap,\r\n sx,\r\n ...rest\r\n}: FormGridProps) {\r\n const gridTemplateColumns = React.useMemo(() => {\r\n /* Auto-fill adaptatif — minColumnWidth prime sur columns.\r\n * min(${minColumnWidth}px, 100%) borne la largeur mini de chaque\r\n * piste à celle du conteneur : au-dessus de sm, une piste ne peut\r\n * jamais dépasser le conteneur (pas de débordement / Reflow 1.4.10). */\r\n if (minColumnWidth) {\r\n return {\r\n xs: \"1fr\",\r\n sm: `repeat(auto-fill, minmax(min(${minColumnWidth}px, 100%), 1fr))`,\r\n };\r\n }\r\n\r\n const cols = typeof columns === \"number\" && columns > 0 ? columns : 3;\r\n\r\n /* Colonne unique — textarea, notes, upload : toujours pleine largeur */\r\n if (cols === 1) return \"1fr\";\r\n\r\n /* 2 colonnes — dès tablette (sm), pas d'échelon md nécessaire */\r\n if (cols === 2) {\r\n return { xs: \"1fr\", sm: \"repeat(2, minmax(0, 1fr))\" };\r\n }\r\n\r\n /*\r\n * 3+ colonnes — 3 échelons :\r\n * xs : 1 col (mobile)\r\n * sm : 2 cols (tablette — transition douce, évite les champs trop étroits)\r\n * md : N cols (desktop — layout cible)\r\n *\r\n * Identique au pattern addpe-fe :\r\n * { xs:\"1fr\", sm:\"1fr 1fr\", md:\"repeat(3, 1fr)\" }\r\n */\r\n return {\r\n xs: \"1fr\",\r\n sm: \"repeat(2, minmax(0, 1fr))\",\r\n md: `repeat(${cols}, minmax(0, 1fr))`,\r\n };\r\n }, [columns, minColumnWidth]);\r\n\r\n return (\r\n <Box\r\n sx={{\r\n display: \"grid\",\r\n gridTemplateColumns,\r\n /* Charter §2.3 — `-s-4` (16px) EST le « Gap formulaire (default) » ; le\r\n * défaut précédent était `-s-3` (12px), que la même table réserve au\r\n * « Padding cards compact ». Le composant canonique de grille de\r\n * formulaire contredisait donc la valeur par défaut de la charte, et\r\n * chaque module compensait en passant `gap` à la main. Changement\r\n * VISUEL fleet-wide 12→16px sur toute grille sans `gap` explicite —\r\n * même classe de correction que le 15→16px des titres FormSection.\r\n *\r\n * `??` et non `||` : `gap={0}` est une valeur légitime que `||`\r\n * écrasait silencieusement par le défaut. */\r\n gap: gap ?? \"var(--s-4)\",\r\n alignItems: \"start\",\r\n ...sx,\r\n }}\r\n {...rest}\r\n >\r\n {children}\r\n </Box>\r\n );\r\n}\r\n\r\n/* ── FormGrid.Full ────────────────────────────────────────────────────\r\n * Span toutes les colonnes à tous les breakpoints.\r\n * Usage : textareas, file uploads, sub-tables, notes.\r\n */\r\nexport type FormGridFullProps = BoxProps;\r\n\r\nfunction FormGridFull({ children, sx, ...rest }: FormGridFullProps) {\r\n return (\r\n <Box sx={{ gridColumn: \"1 / -1\", minWidth: 0, ...sx }} {...rest}>\r\n {children}\r\n </Box>\r\n );\r\n}\r\n\r\n/* ── FormGrid.Item ────────────────────────────────────────────────────\r\n * Span explicite par breakpoint.\r\n * xs → toujours pleine largeur (1 / -1)\r\n * sm → span 1 (une cellule dans la grille 2-col tablette)\r\n * md → span explicite (grille N-col desktop)\r\n *\r\n * Usage : Description (span=2 sur desktop, full-width mobile/tablette)\r\n */\r\nexport interface FormGridItemProps extends BoxProps {\r\n /**\r\n * Colonnes à couvrir sur md+ (desktop).\r\n * xs → toujours 1/-1 (pleine largeur).\r\n * sm → toujours span 1 (grille 2-col tablette).\r\n * Default : 1.\r\n */\r\n span?: number | undefined;\r\n}\r\n\r\nfunction FormGridItem({ span = 1, children, sx, ...rest }: FormGridItemProps) {\r\n return (\r\n <Box\r\n sx={{\r\n gridColumn: {\r\n xs: \"1 / -1\", /* mobile : toujours pleine largeur */\r\n sm: \"span 1\", /* tablette (2-col) : 1 cellule */\r\n md: `span ${span}`, /* desktop (N-col) : span explicite */\r\n },\r\n minWidth: 0,\r\n ...sx,\r\n }}\r\n {...rest}\r\n >\r\n {children}\r\n </Box>\r\n );\r\n}\r\n\r\nconst FormGridWithStatics = Object.assign(FormGrid, {\r\n Item: FormGridItem,\r\n Full: FormGridFull,\r\n});\r\n\r\nexport default FormGridWithStatics;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"FormGrid.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","FormGrid","children","columns","minColumnWidth","gap","sx","rest","gridTemplateColumns","useMemo","xs","sm","cols","md","jsx","display","alignItems","FormGridFull","gridColumn","minWidth","FormGridItem","span","FormGridWithStatics","assign","Item","Full","_default","exports"],"sources":["../../../src/lib/v2/components/FormGrid.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport type { BoxProps } from \"@mui/material/Box\";\r\n\r\n/**\r\n * FormGrid — Portnet UI v2\r\n *\r\n * Charter §03 R-3.2 — canonical RESPONSIVE form grid.\r\n *\r\n * ── Breakpoint strategy (aligné addpe-fe) ───────────────────────────\r\n *\r\n * Les clés xs/sm/md ci-dessous résolvent contre l'échelle de tokens\r\n * Portnet câblée dans le thème MUI (Batch 1), PAS les défauts MUI :\r\n *\r\n * xs (<481px) : 1 colonne — mobile, chaque champ pleine largeur\r\n * sm (481-767px) : 2 colonnes — tablette / grand mobile (transition douce)\r\n * md (≥768px) : N colonnes — desktop (layout cible)\r\n *\r\n * Source: addpe-fe/AutorisationForm.js\r\n * gridTemplateColumns: { xs: \"1fr\", sm: \"1fr 1fr\", md: \"repeat(3, 1fr)\" }\r\n *\r\n * ── Presets ─────────────────────────────────────────────────────────\r\n *\r\n * columns={1} → toujours 1 col (textarea, notes, upload)\r\n * columns={2} → 1col xs / 2col sm+ (formulaires courts)\r\n * columns={3} → 1col xs / 2col sm / 3col md (DEFAULT FormSection)\r\n * columns={4} → 1col xs / 2col sm / 4col md (champs courts : codes, dates)\r\n * minColumnWidth={N} → auto-fill adaptatif, 1col xs\r\n *\r\n * ── Sous-composants ─────────────────────────────────────────────────\r\n *\r\n * <FormGrid.Full> → span toutes colonnes (textarea, tables)\r\n * <FormGrid.Item span> → span explicite (sm+), full-width xs\r\n *\r\n * ── Exemple ─────────────────────────────────────────────────────────\r\n *\r\n * <FormGrid columns={3}>\r\n * <FormikInput name=\"nom\" label=\"Nom\" />\r\n * <FormikInput name=\"prenom\" label=\"Prénom\" />\r\n * <FormikInput name=\"code\" label=\"Code\" />\r\n * <FormGrid.Full>\r\n * <FormikTextarea name=\"obs\" label=\"Observations\" />\r\n * </FormGrid.Full>\r\n * </FormGrid>\r\n */\r\nexport interface FormGridProps extends Omit<BoxProps, \"gap\"> {\r\n /**\r\n * Nombre de colonnes égales.\r\n * 1 → pleine largeur (notes, textarea)\r\n * 2 → 2 cols sm+\r\n * 3 → DEFAULT FormSection : 1col xs / 2col sm / 3col md\r\n * 4 → 1col xs / 2col sm / 4col md (champs courts)\r\n * Mutually exclusive avec minColumnWidth.\r\n */\r\n columns?: number | undefined;\r\n /** Auto-fill adaptatif — tracks d'au moins N px de large. */\r\n minColumnWidth?: number | undefined;\r\n /**\r\n * Gap de la grille. Défaut `var(--s-4)` — la charte §2.3 assigne\r\n * explicitement `-s-4` (16px) à « Gap formulaire (default) », `-s-3` (12px)\r\n * étant réservé au « Padding cards compact ». Gap G-13.\r\n */\r\n gap?: string | number | undefined;\r\n}\r\n\r\nfunction FormGrid({\r\n children,\r\n columns,\r\n minColumnWidth,\r\n gap,\r\n sx,\r\n ...rest\r\n}: FormGridProps) {\r\n const gridTemplateColumns = React.useMemo(() => {\r\n /* Auto-fill adaptatif — minColumnWidth prime sur columns.\r\n * min(${minColumnWidth}px, 100%) borne la largeur mini de chaque\r\n * piste à celle du conteneur : au-dessus de sm, une piste ne peut\r\n * jamais dépasser le conteneur (pas de débordement / Reflow 1.4.10). */\r\n if (minColumnWidth) {\r\n return {\r\n xs: \"1fr\",\r\n sm: `repeat(auto-fill, minmax(min(${minColumnWidth}px, 100%), 1fr))`,\r\n };\r\n }\r\n\r\n const cols = typeof columns === \"number\" && columns > 0 ? columns : 3;\r\n\r\n /* Colonne unique — textarea, notes, upload : toujours pleine largeur */\r\n if (cols === 1) return \"1fr\";\r\n\r\n /* 2 colonnes — dès tablette (sm), pas d'échelon md nécessaire */\r\n if (cols === 2) {\r\n return { xs: \"1fr\", sm: \"repeat(2, minmax(0, 1fr))\" };\r\n }\r\n\r\n /*\r\n * 3+ colonnes — 3 échelons :\r\n * xs : 1 col (mobile)\r\n * sm : 2 cols (tablette — transition douce, évite les champs trop étroits)\r\n * md : N cols (desktop — layout cible)\r\n *\r\n * Identique au pattern addpe-fe :\r\n * { xs:\"1fr\", sm:\"1fr 1fr\", md:\"repeat(3, 1fr)\" }\r\n */\r\n return {\r\n xs: \"1fr\",\r\n sm: \"repeat(2, minmax(0, 1fr))\",\r\n md: `repeat(${cols}, minmax(0, 1fr))`,\r\n };\r\n }, [columns, minColumnWidth]);\r\n\r\n return (\r\n <Box\r\n sx={{\r\n display: \"grid\",\r\n gridTemplateColumns,\r\n /* Charter §2.3 — `-s-4` (16px) EST le « Gap formulaire (default) » ; le\r\n * défaut précédent était `-s-3` (12px), que la même table réserve au\r\n * « Padding cards compact ». Le composant canonique de grille de\r\n * formulaire contredisait donc la valeur par défaut de la charte, et\r\n * chaque module compensait en passant `gap` à la main. Changement\r\n * VISUEL fleet-wide 12→16px sur toute grille sans `gap` explicite —\r\n * même classe de correction que le 15→16px des titres FormSection.\r\n *\r\n * `??` et non `||` : `gap={0}` est une valeur légitime que `||`\r\n * écrasait silencieusement par le défaut. */\r\n gap: gap ?? \"var(--s-4)\",\r\n alignItems: \"start\",\r\n ...sx,\r\n }}\r\n {...rest}\r\n >\r\n {children}\r\n </Box>\r\n );\r\n}\r\n\r\n/* ── FormGrid.Full ────────────────────────────────────────────────────\r\n * Span toutes les colonnes à tous les breakpoints.\r\n * Usage : textareas, file uploads, sub-tables, notes.\r\n */\r\nexport type FormGridFullProps = BoxProps;\r\n\r\nfunction FormGridFull({ children, sx, ...rest }: FormGridFullProps) {\r\n return (\r\n <Box sx={{ gridColumn: \"1 / -1\", minWidth: 0, ...sx }} {...rest}>\r\n {children}\r\n </Box>\r\n );\r\n}\r\n\r\n/* ── FormGrid.Item ────────────────────────────────────────────────────\r\n * Span explicite par breakpoint.\r\n * xs → toujours pleine largeur (1 / -1)\r\n * sm → span 1 (une cellule dans la grille 2-col tablette)\r\n * md → span explicite (grille N-col desktop)\r\n *\r\n * Usage : Description (span=2 sur desktop, full-width mobile/tablette)\r\n */\r\nexport interface FormGridItemProps extends BoxProps {\r\n /**\r\n * Colonnes à couvrir sur md+ (desktop).\r\n * xs → toujours 1/-1 (pleine largeur).\r\n * sm → toujours span 1 (grille 2-col tablette).\r\n * Default : 1.\r\n */\r\n span?: number | undefined;\r\n}\r\n\r\nfunction FormGridItem({ span = 1, children, sx, ...rest }: FormGridItemProps) {\r\n return (\r\n <Box\r\n sx={{\r\n gridColumn: {\r\n xs: \"1 / -1\", /* mobile : toujours pleine largeur */\r\n sm: \"span 1\", /* tablette (2-col) : 1 cellule */\r\n md: `span ${span}`, /* desktop (N-col) : span explicite */\r\n },\r\n minWidth: 0,\r\n ...sx,\r\n }}\r\n {...rest}\r\n >\r\n {children}\r\n </Box>\r\n );\r\n}\r\n\r\nconst FormGridWithStatics = Object.assign(FormGrid, {\r\n Item: FormGridItem,\r\n Full: FormGridFull,\r\n});\r\n\r\nexport default FormGridWithStatics;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import type { SxProps, Theme } from "@mui/material/styles";
|
|
3
|
+
import type { FieldWidth } from "./Field";
|
|
3
4
|
/**
|
|
4
5
|
* FormikDisplay — Portnet UI v2
|
|
5
6
|
*
|
|
@@ -14,15 +15,50 @@ import type { SxProps, Theme } from "@mui/material/styles";
|
|
|
14
15
|
* --fg-subtle (#6B7280) → 4.30:1 sur #F1F2F5 ❌ sous AA (4.5:1)
|
|
15
16
|
* (--fg-subtle est calibré "on white only" dans colors.js)
|
|
16
17
|
*
|
|
18
|
+
* NB : ces ratios sont calculés sur les valeurs du thème CLAIR. Le
|
|
19
|
+
* mode sombre redéfinit --bg-subtle et --fg-muted ; l'appairage n'a
|
|
20
|
+
* pas été re-vérifié là.
|
|
21
|
+
*
|
|
17
22
|
* ── Fond ────────────────────────────────────────────────────────────
|
|
18
23
|
* --bg-subtle (#F1F2F5) est clairement visible sur les sections
|
|
19
24
|
* (#FFFFFF surface), contrairement à --bg (#F7F8FA ≈ blanc).
|
|
20
25
|
*
|
|
26
|
+
* ── Sémantique (D-3) ────────────────────────────────────────────────
|
|
27
|
+
* Le couple label/valeur est lié par `aria-labelledby`, comme dans
|
|
28
|
+
* KV — donc annoncé comme une seule unité quand l'utilisateur
|
|
29
|
+
* l'atteint. Ce bloc portait auparavant `role="status"`, ce qui en
|
|
30
|
+
* faisait une région live : sur un écran de consultation à vingt
|
|
31
|
+
* champs, vingt régions live polies. C'est précisément ce que le
|
|
32
|
+
* composant Status refuse de faire, et pour la même raison.
|
|
33
|
+
*
|
|
34
|
+
* ── LARGEUR SEMANTIQUE (G-H) ───────────────────────────────────────
|
|
35
|
+
*
|
|
36
|
+
* `width` rattache le champ a l'un des cinq gabarits de la section « Form
|
|
37
|
+
* Field Width & Layout Standards », avec LE MEME plafond et LE MEME palier
|
|
38
|
+
* que `Field` : `FIELD_MAX_WIDTH` est importe de `Field`, pas recopie. Deux
|
|
39
|
+
* tables de largeurs finiraient par diverger, et le standard interdit
|
|
40
|
+
* justement les largeurs arbitraires.
|
|
41
|
+
*
|
|
42
|
+
* POURQUOI CE COMPOSANT EN AVAIT BESOIN. Il ne passe PAS par `Field` — il
|
|
43
|
+
* rend sa propre boite, parce qu'un champ en lecture seule n'a ni controle
|
|
44
|
+
* a nommer par `htmlFor` ni erreur a decrire. Il etait donc le seul champ
|
|
45
|
+
* de la library a ne pas pouvoir porter de gabarit, et un formulaire
|
|
46
|
+
* melant `FormikInput` borne et `FormikDisplay` non borne produit
|
|
47
|
+
* exactement le « jagged right-side layout edge » que le standard
|
|
48
|
+
* proscrit : les champs saisissables s'arretent a 400px, les champs
|
|
49
|
+
* affiches remplissent toute la cellule.
|
|
50
|
+
*
|
|
51
|
+
* Retrocompatible : sans `width`, aucun plafond n'est pose.
|
|
52
|
+
*
|
|
21
53
|
* ── Usage ────────────────────────────────────────────────────────────
|
|
22
54
|
* <FormikDisplay name="donneesTI.etat" label="État"
|
|
23
55
|
* hint="Géré par le workflow" />
|
|
24
56
|
*
|
|
25
57
|
* <FormikDisplay name="importateur.codePIN" label="Code PIN" mono />
|
|
58
|
+
*
|
|
59
|
+
* <FormikDisplay name="observation" label="Observations" wrap />
|
|
60
|
+
*
|
|
61
|
+
* <FormikDisplay name="raisonSociale" label="Raison sociale" width="l" />
|
|
26
62
|
*/
|
|
27
63
|
export interface FormikDisplayProps {
|
|
28
64
|
name: string;
|
|
@@ -31,8 +67,21 @@ export interface FormikDisplayProps {
|
|
|
31
67
|
format?: ((raw: unknown) => React.ReactNode) | undefined;
|
|
32
68
|
mono?: boolean | undefined;
|
|
33
69
|
empty?: string | undefined;
|
|
70
|
+
/**
|
|
71
|
+
* Laisse la valeur passer à la ligne (jusqu'à 3 lignes) au lieu de
|
|
72
|
+
* la tronquer (D-4). Par défaut la valeur reste sur une ligne avec
|
|
73
|
+
* une ellipse — et un `title` natif porte le texte complet.
|
|
74
|
+
*/
|
|
75
|
+
wrap?: boolean | undefined;
|
|
76
|
+
/**
|
|
77
|
+
* Gabarit de largeur semantique (G-H) : `xs` | `s` | `m` | `l` | `xl`,
|
|
78
|
+
* choisi d'apres la contrainte de CARACTERES du champ affiche. Meme table
|
|
79
|
+
* et meme palier que `Field.width`. Omis = aucun plafond, la cellule de
|
|
80
|
+
* grille decide seule.
|
|
81
|
+
*/
|
|
82
|
+
width?: FieldWidth | undefined;
|
|
34
83
|
sx?: SxProps<Theme> | undefined;
|
|
35
84
|
}
|
|
36
|
-
declare function FormikDisplay({ name, label, hint, format, mono, empty, sx, }: FormikDisplayProps): React.JSX.Element;
|
|
85
|
+
declare function FormikDisplay({ name, label, hint, format, mono, empty, wrap, width, sx, }: FormikDisplayProps): React.JSX.Element;
|
|
37
86
|
export default FormikDisplay;
|
|
38
87
|
//# sourceMappingURL=FormikDisplay.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormikDisplay.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/components/FormikDisplay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE3D
|
|
1
|
+
{"version":3,"file":"FormikDisplay.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/components/FormikDisplay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AAEH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACpC,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACnC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IACzD,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B;;;;OAIG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B;;;;;OAKG;IACH,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAC/B,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;CACjC;AAED,iBAAS,aAAa,CAAC,EACrB,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,EACN,IAAa,EACb,KAAgB,EAChB,IAAa,EACb,KAAK,EACL,EAAE,GACH,EAAE,kBAAkB,qBA6HpB;AAED,eAAe,aAAa,CAAC"}
|
|
@@ -3,16 +3,16 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports
|
|
6
|
+
exports.default = void 0;
|
|
7
7
|
var React = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
9
9
|
var _Typography = _interopRequireDefault(require("@mui/material/Typography"));
|
|
10
10
|
var _formik = require("formik");
|
|
11
|
+
var _Field = require("./Field");
|
|
11
12
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
-
function _interopRequireDefault(
|
|
13
|
-
function
|
|
14
|
-
|
|
15
|
-
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); } /**
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
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); }
|
|
15
|
+
/**
|
|
16
16
|
* FormikDisplay — Portnet UI v2
|
|
17
17
|
*
|
|
18
18
|
* Affiche une valeur Formik en lecture seule avec un fond grisé
|
|
@@ -26,44 +26,100 @@ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" =
|
|
|
26
26
|
* --fg-subtle (#6B7280) → 4.30:1 sur #F1F2F5 ❌ sous AA (4.5:1)
|
|
27
27
|
* (--fg-subtle est calibré "on white only" dans colors.js)
|
|
28
28
|
*
|
|
29
|
+
* NB : ces ratios sont calculés sur les valeurs du thème CLAIR. Le
|
|
30
|
+
* mode sombre redéfinit --bg-subtle et --fg-muted ; l'appairage n'a
|
|
31
|
+
* pas été re-vérifié là.
|
|
32
|
+
*
|
|
29
33
|
* ── Fond ────────────────────────────────────────────────────────────
|
|
30
34
|
* --bg-subtle (#F1F2F5) est clairement visible sur les sections
|
|
31
35
|
* (#FFFFFF surface), contrairement à --bg (#F7F8FA ≈ blanc).
|
|
32
36
|
*
|
|
37
|
+
* ── Sémantique (D-3) ────────────────────────────────────────────────
|
|
38
|
+
* Le couple label/valeur est lié par `aria-labelledby`, comme dans
|
|
39
|
+
* KV — donc annoncé comme une seule unité quand l'utilisateur
|
|
40
|
+
* l'atteint. Ce bloc portait auparavant `role="status"`, ce qui en
|
|
41
|
+
* faisait une région live : sur un écran de consultation à vingt
|
|
42
|
+
* champs, vingt régions live polies. C'est précisément ce que le
|
|
43
|
+
* composant Status refuse de faire, et pour la même raison.
|
|
44
|
+
*
|
|
45
|
+
* ── LARGEUR SEMANTIQUE (G-H) ───────────────────────────────────────
|
|
46
|
+
*
|
|
47
|
+
* `width` rattache le champ a l'un des cinq gabarits de la section « Form
|
|
48
|
+
* Field Width & Layout Standards », avec LE MEME plafond et LE MEME palier
|
|
49
|
+
* que `Field` : `FIELD_MAX_WIDTH` est importe de `Field`, pas recopie. Deux
|
|
50
|
+
* tables de largeurs finiraient par diverger, et le standard interdit
|
|
51
|
+
* justement les largeurs arbitraires.
|
|
52
|
+
*
|
|
53
|
+
* POURQUOI CE COMPOSANT EN AVAIT BESOIN. Il ne passe PAS par `Field` — il
|
|
54
|
+
* rend sa propre boite, parce qu'un champ en lecture seule n'a ni controle
|
|
55
|
+
* a nommer par `htmlFor` ni erreur a decrire. Il etait donc le seul champ
|
|
56
|
+
* de la library a ne pas pouvoir porter de gabarit, et un formulaire
|
|
57
|
+
* melant `FormikInput` borne et `FormikDisplay` non borne produit
|
|
58
|
+
* exactement le « jagged right-side layout edge » que le standard
|
|
59
|
+
* proscrit : les champs saisissables s'arretent a 400px, les champs
|
|
60
|
+
* affiches remplissent toute la cellule.
|
|
61
|
+
*
|
|
62
|
+
* Retrocompatible : sans `width`, aucun plafond n'est pose.
|
|
63
|
+
*
|
|
33
64
|
* ── Usage ────────────────────────────────────────────────────────────
|
|
34
65
|
* <FormikDisplay name="donneesTI.etat" label="État"
|
|
35
66
|
* hint="Géré par le workflow" />
|
|
36
67
|
*
|
|
37
68
|
* <FormikDisplay name="importateur.codePIN" label="Code PIN" mono />
|
|
69
|
+
*
|
|
70
|
+
* <FormikDisplay name="observation" label="Observations" wrap />
|
|
71
|
+
*
|
|
72
|
+
* <FormikDisplay name="raisonSociale" label="Raison sociale" width="l" />
|
|
38
73
|
*/
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
74
|
+
|
|
75
|
+
function FormikDisplay({
|
|
76
|
+
name,
|
|
77
|
+
label,
|
|
78
|
+
hint,
|
|
79
|
+
format,
|
|
80
|
+
mono = false,
|
|
81
|
+
empty = "\u2014",
|
|
82
|
+
wrap = false,
|
|
83
|
+
width,
|
|
84
|
+
sx
|
|
85
|
+
}) {
|
|
86
|
+
const {
|
|
87
|
+
values
|
|
88
|
+
} = (0, _formik.useFormikContext)();
|
|
89
|
+
const raw = name ? (0, _formik.getIn)(values, name) : undefined;
|
|
90
|
+
const labelId = React.useId();
|
|
91
|
+
let display;
|
|
53
92
|
if (format) {
|
|
54
93
|
display = format(raw);
|
|
55
94
|
} else if (raw === null || raw === undefined || String(raw).trim() === "") {
|
|
56
95
|
display = empty;
|
|
57
|
-
} else if (
|
|
58
|
-
|
|
96
|
+
} else if (typeof raw === "object") {
|
|
97
|
+
const obj = raw;
|
|
59
98
|
display = obj.description || obj.libelle || obj.code || JSON.stringify(raw);
|
|
60
99
|
} else {
|
|
61
100
|
display = String(raw);
|
|
62
101
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
102
|
+
const isEmpty = display === empty;
|
|
103
|
+
|
|
104
|
+
/* D-4 — the full text as a native tooltip, so a truncated value stays
|
|
105
|
+
recoverable. Only when the resolved display is a string: a `format`
|
|
106
|
+
returning a node has no meaningful title, and "[object Object]" would
|
|
107
|
+
be worse than nothing. */
|
|
108
|
+
const titleAttr = typeof display === "string" ? display : undefined;
|
|
109
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Box.default, {
|
|
110
|
+
sx: {
|
|
111
|
+
/* G-H — plafond a partir de `sm` seulement : sur mobile le standard
|
|
112
|
+
* impose 100% de la largeur de grille. Identique a `Field`. */
|
|
113
|
+
...(width ? {
|
|
114
|
+
maxWidth: {
|
|
115
|
+
xs: "100%",
|
|
116
|
+
sm: _Field.FIELD_MAX_WIDTH[width]
|
|
117
|
+
}
|
|
118
|
+
} : {}),
|
|
119
|
+
...sx
|
|
120
|
+
},
|
|
121
|
+
children: [label && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
122
|
+
id: labelId,
|
|
67
123
|
component: "span",
|
|
68
124
|
sx: {
|
|
69
125
|
display: "block",
|
|
@@ -75,9 +131,18 @@ function FormikDisplay(_ref) {
|
|
|
75
131
|
userSelect: "none"
|
|
76
132
|
},
|
|
77
133
|
children: label
|
|
78
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box
|
|
79
|
-
|
|
80
|
-
|
|
134
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Box.default
|
|
135
|
+
/* D-3 — plus de role="status". Le couple est lié par
|
|
136
|
+
aria-labelledby (motif KV) ; sans label, on retombe sur un
|
|
137
|
+
aria-label pour ne pas laisser la valeur anonyme. */, {
|
|
138
|
+
...(label ? {
|
|
139
|
+
"aria-labelledby": labelId
|
|
140
|
+
} : {
|
|
141
|
+
"aria-label": typeof display === "string" ? display : undefined
|
|
142
|
+
}),
|
|
143
|
+
...(titleAttr !== undefined ? {
|
|
144
|
+
title: titleAttr
|
|
145
|
+
} : {}),
|
|
81
146
|
sx: {
|
|
82
147
|
minHeight: 40,
|
|
83
148
|
display: "flex",
|
|
@@ -90,7 +155,7 @@ function FormikDisplay(_ref) {
|
|
|
90
155
|
userSelect: "text",
|
|
91
156
|
overflow: "hidden"
|
|
92
157
|
},
|
|
93
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography
|
|
158
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
94
159
|
component: "span",
|
|
95
160
|
sx: {
|
|
96
161
|
fontSize: "var(--text-sm, 14px)",
|
|
@@ -104,12 +169,22 @@ function FormikDisplay(_ref) {
|
|
|
104
169
|
color: "var(--fg-muted)",
|
|
105
170
|
fontStyle: isEmpty ? "italic" : "normal",
|
|
106
171
|
overflow: "hidden",
|
|
107
|
-
|
|
108
|
-
|
|
172
|
+
/* D-4 — `wrap` autorise jusqu'à 3 lignes (comportement KV) ;
|
|
173
|
+
sinon une seule ligne tronquée, récupérable via `title`. */
|
|
174
|
+
...(wrap ? {
|
|
175
|
+
whiteSpace: "normal",
|
|
176
|
+
wordBreak: "break-word",
|
|
177
|
+
display: "-webkit-box",
|
|
178
|
+
WebkitBoxOrient: "vertical",
|
|
179
|
+
WebkitLineClamp: 3
|
|
180
|
+
} : {
|
|
181
|
+
whiteSpace: "nowrap",
|
|
182
|
+
textOverflow: "ellipsis"
|
|
183
|
+
})
|
|
109
184
|
},
|
|
110
185
|
children: display
|
|
111
186
|
})
|
|
112
|
-
}), hint && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography
|
|
187
|
+
}), hint && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
113
188
|
component: "span",
|
|
114
189
|
sx: {
|
|
115
190
|
display: "block",
|
|
@@ -121,5 +196,5 @@ function FormikDisplay(_ref) {
|
|
|
121
196
|
})]
|
|
122
197
|
});
|
|
123
198
|
}
|
|
124
|
-
var _default = exports
|
|
199
|
+
var _default = exports.default = FormikDisplay;
|
|
125
200
|
//# sourceMappingURL=FormikDisplay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormikDisplay.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_Typography","_formik","_jsxRuntime","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Symbol","iterator","constructor","FormikDisplay","_ref","name","label","hint","format","_ref$mono","mono","_ref$empty","empty","sx","_useFormikContext","useFormikContext","values","raw","getIn","undefined","display","String","trim","description","libelle","code","JSON","stringify","isEmpty","jsxs","children","jsx","component","fontSize","fontWeight","color","marginBottom","userSelect","role","concat","minHeight","alignItems","padding","background","border","borderRadius","cursor","overflow","fontFamily","fontStyle","textOverflow","whiteSpace","marginTop","_default","exports"],"sources":["../../../src/lib/v2/components/FormikDisplay.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport Typography from \"@mui/material/Typography\";\r\nimport { getIn, useFormikContext } from \"formik\";\r\nimport type { SxProps, Theme } from \"@mui/material/styles\";\r\n\r\n/**\r\n * FormikDisplay — Portnet UI v2\r\n *\r\n * Affiche une valeur Formik en lecture seule avec un fond grisé\r\n * clairement distinct des champs saisissables (fond blanc).\r\n *\r\n * ── Audit contraste WCAG 2.1 SC 1.4.3 ──────────────────────────────\r\n * Fond : --bg-subtle = #F1F2F5\r\n *\r\n * Valeur/hint : --fg-muted (#474C5A) → 7.52:1 ✅ AAA (> 7:1)\r\n * À NE PAS utiliser sur ce fond :\r\n * --fg-subtle (#6B7280) → 4.30:1 sur #F1F2F5 ❌ sous AA (4.5:1)\r\n * (--fg-subtle est calibré \"on white only\" dans colors.js)\r\n *\r\n * ── Fond ────────────────────────────────────────────────────────────\r\n * --bg-subtle (#F1F2F5) est clairement visible sur les sections\r\n * (#FFFFFF surface), contrairement à --bg (#F7F8FA ≈ blanc).\r\n *\r\n * ── Usage ────────────────────────────────────────────────────────────\r\n * <FormikDisplay name=\"donneesTI.etat\" label=\"État\"\r\n * hint=\"Géré par le workflow\" />\r\n *\r\n * <FormikDisplay name=\"importateur.codePIN\" label=\"Code PIN\" mono />\r\n */\r\n\r\nexport interface FormikDisplayProps {\r\n name: string;\r\n label?: React.ReactNode | undefined;\r\n hint?: React.ReactNode | undefined;\r\n format?: ((raw: unknown) => React.ReactNode) | undefined;\r\n mono?: boolean | undefined;\r\n empty?: string | undefined;\r\n sx?: SxProps<Theme> | undefined;\r\n}\r\n\r\nfunction FormikDisplay({\r\n name,\r\n label,\r\n hint,\r\n format,\r\n mono = false,\r\n empty = \"\\u2014\",\r\n sx,\r\n}: FormikDisplayProps) {\r\n const { values } = useFormikContext();\r\n const raw: unknown = name ? getIn(values, name) : undefined;\r\n\r\n let display: React.ReactNode;\r\n if (format) {\r\n display = format(raw);\r\n } else if (raw === null || raw === undefined || String(raw).trim() === \"\") {\r\n display = empty;\r\n } else if (typeof raw === \"object\") {\r\n const obj = raw as { description?: React.ReactNode; libelle?: React.ReactNode; code?: React.ReactNode };\r\n display = obj.description || obj.libelle || obj.code || JSON.stringify(raw);\r\n } else {\r\n display = String(raw);\r\n }\r\n\r\n const isEmpty = display === empty;\r\n\r\n return (\r\n <Box sx={sx}>\r\n {/* Label — même style que Field.js */}\r\n {label && (\r\n <Typography\r\n component=\"span\"\r\n sx={{\r\n display: \"block\",\r\n fontSize: \"var(--text-xs, 12px)\",\r\n fontWeight: \"var(--fw-semibold, 600)\",\r\n color: \"var(--fg-muted)\", /* 7.52:1 sur bg-subtle ✅ AAA */\r\n marginBottom: \"var(--s-2)\",\r\n userSelect: \"none\",\r\n }}\r\n >\r\n {label}\r\n </Typography>\r\n )}\r\n\r\n <Box\r\n role=\"status\"\r\n aria-label={label ? `${label} : ${display}` : `${display}`}\r\n sx={{\r\n minHeight: 40,\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n padding: \"var(--s-2) var(--s-3)\",\r\n background: \"var(--bg-subtle, #f1f2f5)\",\r\n border: \"1px solid var(--border, #e4e6eb)\",\r\n borderRadius: \"var(--r-md, 6px)\",\r\n cursor: \"default\",\r\n userSelect: \"text\",\r\n overflow: \"hidden\",\r\n }}\r\n >\r\n <Typography\r\n component=\"span\"\r\n sx={{\r\n fontSize: \"var(--text-sm, 14px)\",\r\n fontFamily: mono ? \"var(--font-mono, monospace)\" : \"inherit\",\r\n /*\r\n * --fg-muted (#474C5A) = 7.52:1 sur --bg-subtle ✅ AAA\r\n * Utilisé pour valeur présente ET placeholder vide.\r\n * NE PAS substituer --fg-subtle (#6B7280) qui tombe à 4.30:1\r\n * sur ce fond (sous WCAG AA).\r\n */\r\n color: \"var(--fg-muted)\",\r\n fontStyle: isEmpty ? \"italic\" : \"normal\",\r\n overflow: \"hidden\",\r\n textOverflow: \"ellipsis\",\r\n whiteSpace: \"nowrap\",\r\n }}\r\n >\r\n {display}\r\n </Typography>\r\n </Box>\r\n\r\n {/* Hint — --fg-muted (7.52:1) car --fg-subtle (4.30:1) échoue AA sur bg-subtle */}\r\n {hint && (\r\n <Typography\r\n component=\"span\"\r\n sx={{\r\n display: \"block\",\r\n marginTop: \"var(--s-1)\",\r\n fontSize: \"var(--text-xs, 12px)\",\r\n color: \"var(--fg-muted)\", /* 7.52:1 sur bg-subtle ✅ */\r\n }}\r\n >\r\n {hint}\r\n </Typography>\r\n )}\r\n </Box>\r\n );\r\n}\r\n\r\nexport default FormikDisplay;\r\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,WAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAAiD,IAAAK,WAAA,GAAAL,OAAA;AAAA,SAAAE,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAV,wBAAAO,GAAA,EAAAG,WAAA,SAAAA,WAAA,IAAAH,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAO,OAAA,CAAAP,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAQ,KAAA,GAAAN,wBAAA,CAAAC,WAAA,OAAAK,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,cAAAX,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAJ,QAAAP,GAAA,sCAAAO,OAAA,wBAAAe,MAAA,uBAAAA,MAAA,CAAAC,QAAA,aAAAvB,GAAA,kBAAAA,GAAA,gBAAAA,GAAA,WAAAA,GAAA,yBAAAsB,MAAA,IAAAtB,GAAA,CAAAwB,WAAA,KAAAF,MAAA,IAAAtB,GAAA,KAAAsB,MAAA,CAAAL,SAAA,qBAAAjB,GAAA,KAAAO,OAAA,CAAAP,GAAA,KAGjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAYA,SAASyB,aAAaA,CAAAC,IAAA,EAQC;EAAA,IAPrBC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,KAAK,GAAAF,IAAA,CAALE,KAAK;IACLC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IACJC,MAAM,GAAAJ,IAAA,CAANI,MAAM;IAAAC,SAAA,GAAAL,IAAA,CACNM,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAI,KAAK,GAAAA,SAAA;IAAAE,UAAA,GAAAP,IAAA,CACbQ,KAAK;IAALA,KAAK,GAAAD,UAAA,cAAG,QAAQ,GAAAA,UAAA;IAChBE,EAAE,GAAAT,IAAA,CAAFS,EAAE;EAEF,IAAAC,iBAAA,GAAmB,IAAAC,wBAAgB,EAAC,CAAC;IAA7BC,MAAM,GAAAF,iBAAA,CAANE,MAAM;EACd,IAAMC,GAAY,GAAGZ,IAAI,GAAG,IAAAa,aAAK,EAACF,MAAM,EAAEX,IAAI,CAAC,GAAGc,SAAS;EAE3D,IAAIC,OAAwB;EAC5B,IAAIZ,MAAM,EAAE;IACVY,OAAO,GAAGZ,MAAM,CAACS,GAAG,CAAC;EACvB,CAAC,MAAM,IAAIA,GAAG,KAAK,IAAI,IAAIA,GAAG,KAAKE,SAAS,IAAIE,MAAM,CAACJ,GAAG,CAAC,CAACK,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;IACzEF,OAAO,GAAGR,KAAK;EACjB,CAAC,MAAM,IAAI3B,OAAA,CAAOgC,GAAG,MAAK,QAAQ,EAAE;IAClC,IAAMvC,GAAG,GAAGuC,GAA2F;IACvGG,OAAO,GAAG1C,GAAG,CAAC6C,WAAW,IAAI7C,GAAG,CAAC8C,OAAO,IAAI9C,GAAG,CAAC+C,IAAI,IAAIC,IAAI,CAACC,SAAS,CAACV,GAAG,CAAC;EAC7E,CAAC,MAAM;IACLG,OAAO,GAAGC,MAAM,CAACJ,GAAG,CAAC;EACvB;EAEA,IAAMW,OAAO,GAAGR,OAAO,KAAKR,KAAK;EAEjC,oBACE,IAAAnC,WAAA,CAAAoD,IAAA,EAACxD,IAAA,WAAG;IAACwC,EAAE,EAAEA,EAAG;IAAAiB,QAAA,GAETxB,KAAK,iBACJ,IAAA7B,WAAA,CAAAsD,GAAA,EAACxD,WAAA,WAAU;MACTyD,SAAS,EAAC,MAAM;MAChBnB,EAAE,EAAE;QACFO,OAAO,EAAE,OAAO;QAChBa,QAAQ,EAAE,sBAAsB;QAChCC,UAAU,EAAE,yBAAyB;QACrCC,KAAK,EAAE,iBAAiB;QAAI;QAC5BC,YAAY,EAAE,YAAY;QAC1BC,UAAU,EAAE;MACd,CAAE;MAAAP,QAAA,EAEDxB;IAAK,CACI,CACb,eAED,IAAA7B,WAAA,CAAAsD,GAAA,EAAC1D,IAAA,WAAG;MACFiE,IAAI,EAAC,QAAQ;MACb,cAAYhC,KAAK,MAAAiC,MAAA,CAAMjC,KAAK,SAAAiC,MAAA,CAAMnB,OAAO,OAAAmB,MAAA,CAAQnB,OAAO,CAAG;MAC3DP,EAAE,EAAE;QACF2B,SAAS,EAAE,EAAE;QACbpB,OAAO,EAAE,MAAM;QACfqB,UAAU,EAAE,QAAQ;QACpBC,OAAO,EAAE,uBAAuB;QAChCC,UAAU,EAAE,2BAA2B;QACvCC,MAAM,EAAE,kCAAkC;QAC1CC,YAAY,EAAE,kBAAkB;QAChCC,MAAM,EAAE,SAAS;QACjBT,UAAU,EAAE,MAAM;QAClBU,QAAQ,EAAE;MACZ,CAAE;MAAAjB,QAAA,eAEF,IAAArD,WAAA,CAAAsD,GAAA,EAACxD,WAAA,WAAU;QACTyD,SAAS,EAAC,MAAM;QAChBnB,EAAE,EAAE;UACFoB,QAAQ,EAAE,sBAAsB;UAChCe,UAAU,EAAEtC,IAAI,GAAG,6BAA6B,GAAG,SAAS;UAC5D;AACZ;AACA;AACA;AACA;AACA;UACYyB,KAAK,EAAE,iBAAiB;UACxBc,SAAS,EAAErB,OAAO,GAAG,QAAQ,GAAG,QAAQ;UACxCmB,QAAQ,EAAE,QAAQ;UAClBG,YAAY,EAAE,UAAU;UACxBC,UAAU,EAAE;QACd,CAAE;QAAArB,QAAA,EAEDV;MAAO,CACE;IAAC,CACV,CAAC,EAGLb,IAAI,iBACH,IAAA9B,WAAA,CAAAsD,GAAA,EAACxD,WAAA,WAAU;MACTyD,SAAS,EAAC,MAAM;MAChBnB,EAAE,EAAE;QACFO,OAAO,EAAE,OAAO;QAChBgC,SAAS,EAAE,YAAY;QACvBnB,QAAQ,EAAE,sBAAsB;QAChCE,KAAK,EAAE,iBAAiB,CAAI;MAC9B,CAAE;MAAAL,QAAA,EAEDvB;IAAI,CACK,CACb;EAAA,CACE,CAAC;AAEV;AAAC,IAAA8C,QAAA,GAAAC,OAAA,cAEcnD,aAAa","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"FormikDisplay.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_Typography","_formik","_Field","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","FormikDisplay","name","label","hint","format","mono","empty","wrap","width","sx","values","useFormikContext","raw","getIn","undefined","labelId","useId","display","String","trim","obj","description","libelle","code","JSON","stringify","isEmpty","titleAttr","jsxs","maxWidth","xs","sm","FIELD_MAX_WIDTH","children","jsx","id","component","fontSize","fontWeight","color","marginBottom","userSelect","title","minHeight","alignItems","padding","background","border","borderRadius","cursor","overflow","fontFamily","fontStyle","whiteSpace","wordBreak","WebkitBoxOrient","WebkitLineClamp","textOverflow","marginTop","_default","exports"],"sources":["../../../src/lib/v2/components/FormikDisplay.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport Typography from \"@mui/material/Typography\";\r\nimport { getIn, useFormikContext } from \"formik\";\r\nimport type { SxProps, Theme } from \"@mui/material/styles\";\r\nimport { FIELD_MAX_WIDTH } from \"./Field\";\r\nimport type { FieldWidth } from \"./Field\";\r\n\r\n/**\r\n * FormikDisplay — Portnet UI v2\r\n *\r\n * Affiche une valeur Formik en lecture seule avec un fond grisé\r\n * clairement distinct des champs saisissables (fond blanc).\r\n *\r\n * ── Audit contraste WCAG 2.1 SC 1.4.3 ──────────────────────────────\r\n * Fond : --bg-subtle = #F1F2F5\r\n *\r\n * Valeur/hint : --fg-muted (#474C5A) → 7.52:1 ✅ AAA (> 7:1)\r\n * À NE PAS utiliser sur ce fond :\r\n * --fg-subtle (#6B7280) → 4.30:1 sur #F1F2F5 ❌ sous AA (4.5:1)\r\n * (--fg-subtle est calibré \"on white only\" dans colors.js)\r\n *\r\n * NB : ces ratios sont calculés sur les valeurs du thème CLAIR. Le\r\n * mode sombre redéfinit --bg-subtle et --fg-muted ; l'appairage n'a\r\n * pas été re-vérifié là.\r\n *\r\n * ── Fond ────────────────────────────────────────────────────────────\r\n * --bg-subtle (#F1F2F5) est clairement visible sur les sections\r\n * (#FFFFFF surface), contrairement à --bg (#F7F8FA ≈ blanc).\r\n *\r\n * ── Sémantique (D-3) ────────────────────────────────────────────────\r\n * Le couple label/valeur est lié par `aria-labelledby`, comme dans\r\n * KV — donc annoncé comme une seule unité quand l'utilisateur\r\n * l'atteint. Ce bloc portait auparavant `role=\"status\"`, ce qui en\r\n * faisait une région live : sur un écran de consultation à vingt\r\n * champs, vingt régions live polies. C'est précisément ce que le\r\n * composant Status refuse de faire, et pour la même raison.\r\n *\r\n * ── LARGEUR SEMANTIQUE (G-H) ───────────────────────────────────────\r\n *\r\n * `width` rattache le champ a l'un des cinq gabarits de la section « Form\r\n * Field Width & Layout Standards », avec LE MEME plafond et LE MEME palier\r\n * que `Field` : `FIELD_MAX_WIDTH` est importe de `Field`, pas recopie. Deux\r\n * tables de largeurs finiraient par diverger, et le standard interdit\r\n * justement les largeurs arbitraires.\r\n *\r\n * POURQUOI CE COMPOSANT EN AVAIT BESOIN. Il ne passe PAS par `Field` — il\r\n * rend sa propre boite, parce qu'un champ en lecture seule n'a ni controle\r\n * a nommer par `htmlFor` ni erreur a decrire. Il etait donc le seul champ\r\n * de la library a ne pas pouvoir porter de gabarit, et un formulaire\r\n * melant `FormikInput` borne et `FormikDisplay` non borne produit\r\n * exactement le « jagged right-side layout edge » que le standard\r\n * proscrit : les champs saisissables s'arretent a 400px, les champs\r\n * affiches remplissent toute la cellule.\r\n *\r\n * Retrocompatible : sans `width`, aucun plafond n'est pose.\r\n *\r\n * ── Usage ────────────────────────────────────────────────────────────\r\n * <FormikDisplay name=\"donneesTI.etat\" label=\"État\"\r\n * hint=\"Géré par le workflow\" />\r\n *\r\n * <FormikDisplay name=\"importateur.codePIN\" label=\"Code PIN\" mono />\r\n *\r\n * <FormikDisplay name=\"observation\" label=\"Observations\" wrap />\r\n *\r\n * <FormikDisplay name=\"raisonSociale\" label=\"Raison sociale\" width=\"l\" />\r\n */\r\n\r\nexport interface FormikDisplayProps {\r\n name: string;\r\n label?: React.ReactNode | undefined;\r\n hint?: React.ReactNode | undefined;\r\n format?: ((raw: unknown) => React.ReactNode) | undefined;\r\n mono?: boolean | undefined;\r\n empty?: string | undefined;\r\n /**\r\n * Laisse la valeur passer à la ligne (jusqu'à 3 lignes) au lieu de\r\n * la tronquer (D-4). Par défaut la valeur reste sur une ligne avec\r\n * une ellipse — et un `title` natif porte le texte complet.\r\n */\r\n wrap?: boolean | undefined;\r\n /**\r\n * Gabarit de largeur semantique (G-H) : `xs` | `s` | `m` | `l` | `xl`,\r\n * choisi d'apres la contrainte de CARACTERES du champ affiche. Meme table\r\n * et meme palier que `Field.width`. Omis = aucun plafond, la cellule de\r\n * grille decide seule.\r\n */\r\n width?: FieldWidth | undefined;\r\n sx?: SxProps<Theme> | undefined;\r\n}\r\n\r\nfunction FormikDisplay({\r\n name,\r\n label,\r\n hint,\r\n format,\r\n mono = false,\r\n empty = \"\\u2014\",\r\n wrap = false,\r\n width,\r\n sx,\r\n}: FormikDisplayProps) {\r\n const { values } = useFormikContext();\r\n const raw: unknown = name ? getIn(values, name) : undefined;\r\n const labelId = React.useId();\r\n\r\n let display: React.ReactNode;\r\n if (format) {\r\n display = format(raw);\r\n } else if (raw === null || raw === undefined || String(raw).trim() === \"\") {\r\n display = empty;\r\n } else if (typeof raw === \"object\") {\r\n const obj = raw as { description?: React.ReactNode; libelle?: React.ReactNode; code?: React.ReactNode };\r\n display = obj.description || obj.libelle || obj.code || JSON.stringify(raw);\r\n } else {\r\n display = String(raw);\r\n }\r\n\r\n const isEmpty = display === empty;\r\n\r\n /* D-4 — the full text as a native tooltip, so a truncated value stays\r\n recoverable. Only when the resolved display is a string: a `format`\r\n returning a node has no meaningful title, and \"[object Object]\" would\r\n be worse than nothing. */\r\n const titleAttr = typeof display === \"string\" ? display : undefined;\r\n\r\n return (\r\n <Box\r\n sx={{\r\n /* G-H — plafond a partir de `sm` seulement : sur mobile le standard\r\n * impose 100% de la largeur de grille. Identique a `Field`. */\r\n ...(width\r\n ? { maxWidth: { xs: \"100%\", sm: FIELD_MAX_WIDTH[width] } }\r\n : {}),\r\n ...sx,\r\n }}\r\n >\r\n {/* Label — même style que Field.js */}\r\n {label && (\r\n <Typography\r\n id={labelId}\r\n component=\"span\"\r\n sx={{\r\n display: \"block\",\r\n fontSize: \"var(--text-xs, 12px)\",\r\n fontWeight: \"var(--fw-semibold, 600)\",\r\n color: \"var(--fg-muted)\", /* 7.52:1 sur bg-subtle ✅ AAA */\r\n marginBottom: \"var(--s-2)\",\r\n userSelect: \"none\",\r\n }}\r\n >\r\n {label}\r\n </Typography>\r\n )}\r\n\r\n <Box\r\n /* D-3 — plus de role=\"status\". Le couple est lié par\r\n aria-labelledby (motif KV) ; sans label, on retombe sur un\r\n aria-label pour ne pas laisser la valeur anonyme. */\r\n {...(label\r\n ? { \"aria-labelledby\": labelId }\r\n : { \"aria-label\": typeof display === \"string\" ? display : undefined })}\r\n {...(titleAttr !== undefined ? { title: titleAttr } : {})}\r\n sx={{\r\n minHeight: 40,\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n padding: \"var(--s-2) var(--s-3)\",\r\n background: \"var(--bg-subtle, #f1f2f5)\",\r\n border: \"1px solid var(--border, #e4e6eb)\",\r\n borderRadius: \"var(--r-md, 6px)\",\r\n cursor: \"default\",\r\n userSelect: \"text\",\r\n overflow: \"hidden\",\r\n }}\r\n >\r\n <Typography\r\n component=\"span\"\r\n sx={{\r\n fontSize: \"var(--text-sm, 14px)\",\r\n fontFamily: mono ? \"var(--font-mono, monospace)\" : \"inherit\",\r\n /*\r\n * --fg-muted (#474C5A) = 7.52:1 sur --bg-subtle ✅ AAA\r\n * Utilisé pour valeur présente ET placeholder vide.\r\n * NE PAS substituer --fg-subtle (#6B7280) qui tombe à 4.30:1\r\n * sur ce fond (sous WCAG AA).\r\n */\r\n color: \"var(--fg-muted)\",\r\n fontStyle: isEmpty ? \"italic\" : \"normal\",\r\n overflow: \"hidden\",\r\n /* D-4 — `wrap` autorise jusqu'à 3 lignes (comportement KV) ;\r\n sinon une seule ligne tronquée, récupérable via `title`. */\r\n ...(wrap\r\n ? {\r\n whiteSpace: \"normal\",\r\n wordBreak: \"break-word\",\r\n display: \"-webkit-box\",\r\n WebkitBoxOrient: \"vertical\",\r\n WebkitLineClamp: 3,\r\n }\r\n : {\r\n whiteSpace: \"nowrap\",\r\n textOverflow: \"ellipsis\",\r\n }),\r\n }}\r\n >\r\n {display}\r\n </Typography>\r\n </Box>\r\n\r\n {/* Hint — --fg-muted (7.52:1) car --fg-subtle (4.30:1) échoue AA sur bg-subtle */}\r\n {hint && (\r\n <Typography\r\n component=\"span\"\r\n sx={{\r\n display: \"block\",\r\n marginTop: \"var(--s-1)\",\r\n fontSize: \"var(--text-xs, 12px)\",\r\n color: \"var(--fg-muted)\", /* 7.52:1 sur bg-subtle ✅ */\r\n }}\r\n >\r\n {hint}\r\n </Typography>\r\n )}\r\n </Box>\r\n );\r\n}\r\n\r\nexport default FormikDisplay;"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,WAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAEA,IAAAK,MAAA,GAAAL,OAAA;AAA0C,IAAAM,WAAA,GAAAN,OAAA;AAAA,SAAAE,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAR,wBAAAQ,CAAA,EAAAG,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAZ,uBAAA,YAAAA,CAAAQ,CAAA,EAAAG,CAAA,SAAAA,CAAA,IAAAH,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,MAAAO,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAR,OAAA,EAAAF,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAS,CAAA,MAAAF,CAAA,GAAAJ,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAE,CAAA,CAAAI,GAAA,CAAAX,CAAA,UAAAO,CAAA,CAAAK,GAAA,CAAAZ,CAAA,GAAAO,CAAA,CAAAM,GAAA,CAAAb,CAAA,EAAAS,CAAA,gBAAAN,CAAA,IAAAH,CAAA,gBAAAG,CAAA,OAAAW,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAG,CAAA,OAAAK,CAAA,IAAAD,CAAA,GAAAS,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAG,CAAA,OAAAK,CAAA,CAAAI,GAAA,IAAAJ,CAAA,CAAAK,GAAA,IAAAN,CAAA,CAAAE,CAAA,EAAAN,CAAA,EAAAK,CAAA,IAAAC,CAAA,CAAAN,CAAA,IAAAH,CAAA,CAAAG,CAAA,WAAAM,CAAA,KAAAT,CAAA,EAAAG,CAAA;AAG1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAyBA,SAASgB,aAAaA,CAAC;EACrBC,IAAI;EACJC,KAAK;EACLC,IAAI;EACJC,MAAM;EACNC,IAAI,GAAI,KAAK;EACbC,KAAK,GAAG,QAAQ;EAChBC,IAAI,GAAI,KAAK;EACbC,KAAK;EACLC;AACkB,CAAC,EAAE;EACrB,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,wBAAgB,EAAC,CAAC;EACrC,MAAMC,GAAY,GAAGX,IAAI,GAAG,IAAAY,aAAK,EAACH,MAAM,EAAET,IAAI,CAAC,GAAGa,SAAS;EAC3D,MAAMC,OAAO,GAAG3C,KAAK,CAAC4C,KAAK,CAAC,CAAC;EAE7B,IAAIC,OAAwB;EAC5B,IAAIb,MAAM,EAAE;IACVa,OAAO,GAAGb,MAAM,CAACQ,GAAG,CAAC;EACvB,CAAC,MAAM,IAAIA,GAAG,KAAK,IAAI,IAAIA,GAAG,KAAKE,SAAS,IAAII,MAAM,CAACN,GAAG,CAAC,CAACO,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;IACzEF,OAAO,GAAGX,KAAK;EACjB,CAAC,MAAM,IAAI,OAAOM,GAAG,KAAK,QAAQ,EAAE;IAClC,MAAMQ,GAAG,GAAGR,GAA2F;IACvGK,OAAO,GAAGG,GAAG,CAACC,WAAW,IAAID,GAAG,CAACE,OAAO,IAAIF,GAAG,CAACG,IAAI,IAAIC,IAAI,CAACC,SAAS,CAACb,GAAG,CAAC;EAC7E,CAAC,MAAM;IACLK,OAAO,GAAGC,MAAM,CAACN,GAAG,CAAC;EACvB;EAEA,MAAMc,OAAO,GAAGT,OAAO,KAAKX,KAAK;;EAEjC;AACF;AACA;AACA;EACE,MAAMqB,SAAS,GAAG,OAAOV,OAAO,KAAK,QAAQ,GAAGA,OAAO,GAAGH,SAAS;EAEnE,oBACE,IAAAlC,WAAA,CAAAgD,IAAA,EAACrD,IAAA,CAAAQ,OAAG;IACF0B,EAAE,EAAE;MACF;AACR;MACQ,IAAID,KAAK,GACL;QAAEqB,QAAQ,EAAE;UAAEC,EAAE,EAAE,MAAM;UAAEC,EAAE,EAAEC,sBAAe,CAACxB,KAAK;QAAE;MAAE,CAAC,GACxD,CAAC,CAAC,CAAC;MACP,GAAGC;IACL,CAAE;IAAAwB,QAAA,GAGD/B,KAAK,iBACJ,IAAAtB,WAAA,CAAAsD,GAAA,EAACzD,WAAA,CAAAM,OAAU;MACToD,EAAE,EAAEpB,OAAQ;MACZqB,SAAS,EAAC,MAAM;MAChB3B,EAAE,EAAE;QACFQ,OAAO,EAAE,OAAO;QAChBoB,QAAQ,EAAE,sBAAsB;QAChCC,UAAU,EAAE,yBAAyB;QACrCC,KAAK,EAAE,iBAAiB;QAAI;QAC5BC,YAAY,EAAE,YAAY;QAC1BC,UAAU,EAAE;MACd,CAAE;MAAAR,QAAA,EAED/B;IAAK,CACI,CACb,eAED,IAAAtB,WAAA,CAAAsD,GAAA,EAAC3D,IAAA,CAAAQ;IACC;AACR;AACA,2DAFQ;MAAA,IAGKmB,KAAK,GACN;QAAE,iBAAiB,EAAEa;MAAQ,CAAC,GAC9B;QAAE,YAAY,EAAE,OAAOE,OAAO,KAAK,QAAQ,GAAGA,OAAO,GAAGH;MAAU,CAAC;MAAA,IAClEa,SAAS,KAAKb,SAAS,GAAG;QAAE4B,KAAK,EAAEf;MAAU,CAAC,GAAG,CAAC,CAAC;MACxDlB,EAAE,EAAE;QACFkC,SAAS,EAAE,EAAE;QACb1B,OAAO,EAAE,MAAM;QACf2B,UAAU,EAAE,QAAQ;QACpBC,OAAO,EAAE,uBAAuB;QAChCC,UAAU,EAAE,2BAA2B;QACvCC,MAAM,EAAE,kCAAkC;QAC1CC,YAAY,EAAE,kBAAkB;QAChCC,MAAM,EAAE,SAAS;QACjBR,UAAU,EAAE,MAAM;QAClBS,QAAQ,EAAE;MACZ,CAAE;MAAAjB,QAAA,eAEF,IAAArD,WAAA,CAAAsD,GAAA,EAACzD,WAAA,CAAAM,OAAU;QACTqD,SAAS,EAAC,MAAM;QAChB3B,EAAE,EAAE;UACF4B,QAAQ,EAAE,sBAAsB;UAChCc,UAAU,EAAE9C,IAAI,GAAG,6BAA6B,GAAG,SAAS;UAC5D;AACZ;AACA;AACA;AACA;AACA;UACYkC,KAAK,EAAE,iBAAiB;UACxBa,SAAS,EAAE1B,OAAO,GAAG,QAAQ,GAAG,QAAQ;UACxCwB,QAAQ,EAAE,QAAQ;UAClB;AACZ;UACY,IAAI3C,IAAI,GACJ;YACE8C,UAAU,EAAE,QAAQ;YACpBC,SAAS,EAAE,YAAY;YACvBrC,OAAO,EAAE,aAAa;YACtBsC,eAAe,EAAE,UAAU;YAC3BC,eAAe,EAAE;UACnB,CAAC,GACD;YACEH,UAAU,EAAE,QAAQ;YACpBI,YAAY,EAAE;UAChB,CAAC;QACP,CAAE;QAAAxB,QAAA,EAEDhB;MAAO,CACE;IAAC,CACV,CAAC,EAGLd,IAAI,iBACH,IAAAvB,WAAA,CAAAsD,GAAA,EAACzD,WAAA,CAAAM,OAAU;MACTqD,SAAS,EAAC,MAAM;MAChB3B,EAAE,EAAE;QACFQ,OAAO,EAAE,OAAO;QAChByC,SAAS,EAAE,YAAY;QACvBrB,QAAQ,EAAE,sBAAsB;QAChCE,KAAK,EAAE,iBAAiB,CAAI;MAC9B,CAAE;MAAAN,QAAA,EAED9B;IAAI,CACK,CACb;EAAA,CACE,CAAC;AAEV;AAAC,IAAAwD,QAAA,GAAAC,OAAA,CAAA7E,OAAA,GAEciB,aAAa","ignoreList":[]}
|