@portnet/ui 6.0.0 → 6.0.2
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 +85 -0
- package/dist/esm/index.js +214 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/v2/__tests__/FieldError.test.js +159 -0
- package/dist/esm/v2/__tests__/FieldError.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 +143 -0
- package/dist/esm/v2/__tests__/FileCard.test.js.map +1 -0
- package/dist/esm/v2/__tests__/FormikCheckbox.test.js +265 -0
- package/dist/esm/v2/__tests__/FormikCheckbox.test.js.map +1 -0
- package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js +248 -0
- package/dist/esm/v2/__tests__/FormikDateTimePicker.test.js.map +1 -0
- package/dist/esm/v2/__tests__/FormikRadioGroup.test.js +380 -0
- package/dist/esm/v2/__tests__/FormikRadioGroup.test.js.map +1 -0
- package/dist/esm/v2/__tests__/MobileRowCard.test.js +332 -0
- package/dist/esm/v2/__tests__/MobileRowCard.test.js.map +1 -0
- package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js +235 -0
- package/dist/esm/v2/__tests__/SectionErrorBoundary.test.js.map +1 -0
- package/dist/esm/v2/__tests__/apiError.test.js +181 -0
- package/dist/esm/v2/__tests__/apiError.test.js.map +1 -0
- package/dist/esm/v2/__tests__/banned-patterns.test.js +270 -0
- package/dist/esm/v2/__tests__/banned-patterns.test.js.map +1 -0
- package/dist/esm/v2/__tests__/contrast-palette.test.js +224 -0
- package/dist/esm/v2/__tests__/contrast-palette.test.js.map +1 -0
- package/dist/esm/v2/__tests__/cssVariables.test.js +157 -0
- package/dist/esm/v2/__tests__/cssVariables.test.js.map +1 -0
- package/dist/esm/v2/__tests__/labels-merge.test.js +146 -0
- package/dist/esm/v2/__tests__/labels-merge.test.js.map +1 -0
- package/dist/esm/v2/__tests__/locale-fallback.test.js +109 -0
- package/dist/esm/v2/__tests__/locale-fallback.test.js.map +1 -0
- package/dist/esm/v2/__tests__/useFocusTrap.test.js +514 -0
- package/dist/esm/v2/__tests__/useFocusTrap.test.js.map +1 -0
- package/dist/esm/v2/components/Accordion.js +230 -0
- package/dist/esm/v2/components/Accordion.js.map +1 -0
- package/dist/esm/v2/components/ActionStrip.js +146 -0
- package/dist/esm/v2/components/ActionStrip.js.map +1 -0
- package/dist/esm/v2/components/Banner.js +254 -0
- package/dist/esm/v2/components/Banner.js.map +1 -0
- package/dist/esm/v2/components/Busy.js +97 -0
- package/dist/esm/v2/components/Busy.js.map +1 -0
- package/dist/esm/v2/components/Button.js +114 -0
- package/dist/esm/v2/components/Button.js.map +1 -0
- package/dist/esm/v2/components/CategoryTag.js +81 -0
- package/dist/esm/v2/components/CategoryTag.js.map +1 -0
- package/dist/esm/v2/components/Checkbox.js +124 -0
- package/dist/esm/v2/components/Checkbox.js.map +1 -0
- package/dist/esm/v2/components/Chip.js +124 -0
- package/dist/esm/v2/components/Chip.js.map +1 -0
- package/dist/esm/v2/components/Combobox.js +394 -0
- package/dist/esm/v2/components/Combobox.js.map +1 -0
- package/dist/esm/v2/components/CommandPalette.js +660 -0
- package/dist/esm/v2/components/CommandPalette.js.map +1 -0
- package/dist/esm/v2/components/ConfirmDialog.js +144 -0
- package/dist/esm/v2/components/ConfirmDialog.js.map +1 -0
- package/dist/esm/v2/components/DatePicker.js +200 -0
- package/dist/esm/v2/components/DatePicker.js.map +1 -0
- package/dist/esm/v2/components/DateRangePicker.js +289 -0
- package/dist/esm/v2/components/DateRangePicker.js.map +1 -0
- package/dist/esm/v2/components/DateTimePicker.js +215 -0
- package/dist/esm/v2/components/DateTimePicker.js.map +1 -0
- package/dist/esm/v2/components/Drawer.js +333 -0
- package/dist/esm/v2/components/Drawer.js.map +1 -0
- package/dist/esm/v2/components/Dropzone.js +540 -0
- package/dist/esm/v2/components/Dropzone.js.map +1 -0
- package/dist/esm/v2/components/EmptyState.js +102 -0
- package/dist/esm/v2/components/EmptyState.js.map +1 -0
- package/dist/esm/v2/components/FavoriteToggle.js +127 -0
- package/dist/esm/v2/components/FavoriteToggle.js.map +1 -0
- package/dist/esm/v2/components/Field.js +259 -0
- package/dist/esm/v2/components/Field.js.map +1 -0
- package/dist/esm/v2/components/FieldError.js +124 -0
- package/dist/esm/v2/components/FieldError.js.map +1 -0
- package/dist/esm/v2/components/FieldHelp.js +202 -0
- package/dist/esm/v2/components/FieldHelp.js.map +1 -0
- package/dist/esm/v2/components/FileCard.js +162 -0
- package/dist/esm/v2/components/FileCard.js.map +1 -0
- package/dist/esm/v2/components/FilterTab.js +138 -0
- package/dist/esm/v2/components/FilterTab.js.map +1 -0
- package/dist/esm/v2/components/ForbiddenPage.js +74 -0
- package/dist/esm/v2/components/ForbiddenPage.js.map +1 -0
- package/dist/esm/v2/components/FormGrid.js +179 -0
- package/dist/esm/v2/components/FormGrid.js.map +1 -0
- package/dist/esm/v2/components/FormikDisplay.js +118 -0
- package/dist/esm/v2/components/FormikDisplay.js.map +1 -0
- package/dist/esm/v2/components/Input.js +107 -0
- package/dist/esm/v2/components/Input.js.map +1 -0
- package/dist/esm/v2/components/KPICard.js +237 -0
- package/dist/esm/v2/components/KPICard.js.map +1 -0
- package/dist/esm/v2/components/KPIStrip.js +84 -0
- package/dist/esm/v2/components/KPIStrip.js.map +1 -0
- package/dist/esm/v2/components/KV.js +75 -0
- package/dist/esm/v2/components/KV.js.map +1 -0
- package/dist/esm/v2/components/KVGrid.js +74 -0
- package/dist/esm/v2/components/KVGrid.js.map +1 -0
- package/dist/esm/v2/components/Layout.js +284 -0
- package/dist/esm/v2/components/Layout.js.map +1 -0
- package/dist/esm/v2/components/MobileRowCard.js +314 -0
- package/dist/esm/v2/components/MobileRowCard.js.map +1 -0
- package/dist/esm/v2/components/Modal.js +276 -0
- package/dist/esm/v2/components/Modal.js.map +1 -0
- package/dist/esm/v2/components/NetworkErrorPage.js +78 -0
- package/dist/esm/v2/components/NetworkErrorPage.js.map +1 -0
- package/dist/esm/v2/components/NotFoundPage.js +58 -0
- package/dist/esm/v2/components/NotFoundPage.js.map +1 -0
- package/dist/esm/v2/components/NumberInput.js +309 -0
- package/dist/esm/v2/components/NumberInput.js.map +1 -0
- package/dist/esm/v2/components/OverflowMenu.js +184 -0
- package/dist/esm/v2/components/OverflowMenu.js.map +1 -0
- package/dist/esm/v2/components/PdfViewer.js +122 -0
- package/dist/esm/v2/components/PdfViewer.js.map +1 -0
- package/dist/esm/v2/components/ProgressBar.js +202 -0
- package/dist/esm/v2/components/ProgressBar.js.map +1 -0
- package/dist/esm/v2/components/Radio.js +228 -0
- package/dist/esm/v2/components/Radio.js.map +1 -0
- package/dist/esm/v2/components/SectionErrorBoundary.js +214 -0
- package/dist/esm/v2/components/SectionErrorBoundary.js.map +1 -0
- package/dist/esm/v2/components/SectionHeader.js +132 -0
- package/dist/esm/v2/components/SectionHeader.js.map +1 -0
- package/dist/esm/v2/components/Segmented.js +254 -0
- package/dist/esm/v2/components/Segmented.js.map +1 -0
- package/dist/esm/v2/components/Select.js +490 -0
- package/dist/esm/v2/components/Select.js.map +1 -0
- package/dist/esm/v2/components/ServerErrorPage.js +74 -0
- package/dist/esm/v2/components/ServerErrorPage.js.map +1 -0
- package/dist/esm/v2/components/Skeleton.js +269 -0
- package/dist/esm/v2/components/Skeleton.js.map +1 -0
- package/dist/esm/v2/components/SkipLink.js +49 -0
- package/dist/esm/v2/components/SkipLink.js.map +1 -0
- package/dist/esm/v2/components/Spinner.js +69 -0
- package/dist/esm/v2/components/Spinner.js.map +1 -0
- package/dist/esm/v2/components/Status.js +64 -0
- package/dist/esm/v2/components/Status.js.map +1 -0
- package/dist/esm/v2/components/Stepper.js +432 -0
- package/dist/esm/v2/components/Stepper.js.map +1 -0
- package/dist/esm/v2/components/Surface.js +159 -0
- package/dist/esm/v2/components/Surface.js.map +1 -0
- package/dist/esm/v2/components/Switch.js +128 -0
- package/dist/esm/v2/components/Switch.js.map +1 -0
- package/dist/esm/v2/components/Tabs.js +150 -0
- package/dist/esm/v2/components/Tabs.js.map +1 -0
- package/dist/esm/v2/components/TelInput.js +274 -0
- package/dist/esm/v2/components/TelInput.js.map +1 -0
- package/dist/esm/v2/components/Textarea.js +72 -0
- package/dist/esm/v2/components/Textarea.js.map +1 -0
- package/dist/esm/v2/components/TimePicker.js +134 -0
- package/dist/esm/v2/components/TimePicker.js.map +1 -0
- package/dist/esm/v2/components/Toast.js +376 -0
- package/dist/esm/v2/components/Toast.js.map +1 -0
- package/dist/esm/v2/components/Tooltip.js +161 -0
- package/dist/esm/v2/components/Tooltip.js.map +1 -0
- package/dist/esm/v2/components/_ErrorPageBody.js +85 -0
- package/dist/esm/v2/components/_ErrorPageBody.js.map +1 -0
- package/dist/esm/v2/components/_pickerShared.js +60 -0
- package/dist/esm/v2/components/_pickerShared.js.map +1 -0
- package/dist/esm/v2/components/index.js +271 -0
- package/dist/esm/v2/components/index.js.map +1 -0
- package/dist/esm/v2/hooks/index.js +10 -0
- package/dist/esm/v2/hooks/index.js.map +1 -0
- package/dist/esm/v2/hooks/useDelayedFlag.js +55 -0
- package/dist/esm/v2/hooks/useDelayedFlag.js.map +1 -0
- package/dist/esm/v2/hooks/useDensity.js +119 -0
- package/dist/esm/v2/hooks/useDensity.js.map +1 -0
- package/dist/esm/v2/hooks/useFocusFirstError.js +197 -0
- package/dist/esm/v2/hooks/useFocusFirstError.js.map +1 -0
- package/dist/esm/v2/hooks/useFocusTrap.js +202 -0
- package/dist/esm/v2/hooks/useFocusTrap.js.map +1 -0
- package/dist/esm/v2/hooks/useFormAutoSave.js +181 -0
- package/dist/esm/v2/hooks/useFormAutoSave.js.map +1 -0
- package/dist/esm/v2/hooks/useFormCompletionProgress.js +131 -0
- package/dist/esm/v2/hooks/useFormCompletionProgress.js.map +1 -0
- package/dist/esm/v2/hooks/useResolvedDensity.js +44 -0
- package/dist/esm/v2/hooks/useResolvedDensity.js.map +1 -0
- package/dist/esm/v2/hooks/useSortedRows.js +32 -0
- package/dist/esm/v2/hooks/useSortedRows.js.map +1 -0
- package/dist/esm/v2/hooks/useTabLoading.js +79 -0
- package/dist/esm/v2/hooks/useTabLoading.js.map +1 -0
- package/dist/esm/v2/index.js +132 -0
- package/dist/esm/v2/index.js.map +1 -0
- package/dist/esm/v2/modalContext.js +108 -0
- package/dist/esm/v2/modalContext.js.map +1 -0
- package/dist/esm/v2/models/favorite.js +2 -0
- package/dist/esm/v2/models/favorite.js.map +1 -0
- package/dist/esm/v2/models/index.js +12 -0
- package/dist/esm/v2/models/index.js.map +1 -0
- package/dist/esm/v2/models/personalization.js +2 -0
- package/dist/esm/v2/models/personalization.js.map +1 -0
- package/dist/esm/v2/models/referentiel.js +2 -0
- package/dist/esm/v2/models/referentiel.js.map +1 -0
- package/dist/esm/v2/models/savedFilter.js +2 -0
- package/dist/esm/v2/models/savedFilter.js.map +1 -0
- package/dist/esm/v2/patterns/ActionBar.js +603 -0
- package/dist/esm/v2/patterns/ActionBar.js.map +1 -0
- package/dist/esm/v2/patterns/BulkActionBar.js +147 -0
- package/dist/esm/v2/patterns/BulkActionBar.js.map +1 -0
- package/dist/esm/v2/patterns/CollapsibleDataGrid.js +303 -0
- package/dist/esm/v2/patterns/CollapsibleDataGrid.js.map +1 -0
- package/dist/esm/v2/patterns/ColumnsToggle.js +301 -0
- package/dist/esm/v2/patterns/ColumnsToggle.js.map +1 -0
- package/dist/esm/v2/patterns/DataGrid.js +820 -0
- package/dist/esm/v2/patterns/DataGrid.js.map +1 -0
- package/dist/esm/v2/patterns/DataGridSettingsMenu.js +375 -0
- package/dist/esm/v2/patterns/DataGridSettingsMenu.js.map +1 -0
- package/dist/esm/v2/patterns/DataGridToolbar.js +249 -0
- package/dist/esm/v2/patterns/DataGridToolbar.js.map +1 -0
- package/dist/esm/v2/patterns/DataGridVirtualized.js +523 -0
- package/dist/esm/v2/patterns/DataGridVirtualized.js.map +1 -0
- package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js +70 -0
- package/dist/esm/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -0
- package/dist/esm/v2/patterns/FavoriteColumn.js +117 -0
- package/dist/esm/v2/patterns/FavoriteColumn.js.map +1 -0
- package/dist/esm/v2/patterns/FavoritesFilter.js +91 -0
- package/dist/esm/v2/patterns/FavoritesFilter.js.map +1 -0
- package/dist/esm/v2/patterns/FormErrorSummary.js +101 -0
- package/dist/esm/v2/patterns/FormErrorSummary.js.map +1 -0
- package/dist/esm/v2/patterns/FormPageShell.js +126 -0
- package/dist/esm/v2/patterns/FormPageShell.js.map +1 -0
- package/dist/esm/v2/patterns/FormSection.js +190 -0
- package/dist/esm/v2/patterns/FormSection.js.map +1 -0
- package/dist/esm/v2/patterns/FormikCheckbox.js +140 -0
- package/dist/esm/v2/patterns/FormikCheckbox.js.map +1 -0
- package/dist/esm/v2/patterns/FormikCheckboxGroup.js +110 -0
- package/dist/esm/v2/patterns/FormikCheckboxGroup.js.map +1 -0
- package/dist/esm/v2/patterns/FormikCombobox.js +118 -0
- package/dist/esm/v2/patterns/FormikCombobox.js.map +1 -0
- package/dist/esm/v2/patterns/FormikDatePicker.js +162 -0
- package/dist/esm/v2/patterns/FormikDatePicker.js.map +1 -0
- package/dist/esm/v2/patterns/FormikDateTimePicker.js +150 -0
- package/dist/esm/v2/patterns/FormikDateTimePicker.js.map +1 -0
- package/dist/esm/v2/patterns/FormikErrorFocus.js +77 -0
- package/dist/esm/v2/patterns/FormikErrorFocus.js.map +1 -0
- package/dist/esm/v2/patterns/FormikFile.js +148 -0
- package/dist/esm/v2/patterns/FormikFile.js.map +1 -0
- package/dist/esm/v2/patterns/FormikInput.js +130 -0
- package/dist/esm/v2/patterns/FormikInput.js.map +1 -0
- package/dist/esm/v2/patterns/FormikRadioGroup.js +141 -0
- package/dist/esm/v2/patterns/FormikRadioGroup.js.map +1 -0
- package/dist/esm/v2/patterns/FormikReferentielField.js +116 -0
- package/dist/esm/v2/patterns/FormikReferentielField.js.map +1 -0
- package/dist/esm/v2/patterns/FormikSelect.js +162 -0
- package/dist/esm/v2/patterns/FormikSelect.js.map +1 -0
- package/dist/esm/v2/patterns/FormikTextarea.js +79 -0
- package/dist/esm/v2/patterns/FormikTextarea.js.map +1 -0
- package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js +212 -0
- package/dist/esm/v2/patterns/KeyboardShortcutsHelp.js.map +1 -0
- package/dist/esm/v2/patterns/NetworkErrorBanner.js +72 -0
- package/dist/esm/v2/patterns/NetworkErrorBanner.js.map +1 -0
- package/dist/esm/v2/patterns/PageContent.js +62 -0
- package/dist/esm/v2/patterns/PageContent.js.map +1 -0
- package/dist/esm/v2/patterns/ReferentielField.js +615 -0
- package/dist/esm/v2/patterns/ReferentielField.js.map +1 -0
- package/dist/esm/v2/patterns/RowFavoriteToggle.js +122 -0
- package/dist/esm/v2/patterns/RowFavoriteToggle.js.map +1 -0
- package/dist/esm/v2/patterns/SaveFilterDialog.js +197 -0
- package/dist/esm/v2/patterns/SaveFilterDialog.js.map +1 -0
- package/dist/esm/v2/patterns/SavedFiltersMenu.js +406 -0
- package/dist/esm/v2/patterns/SavedFiltersMenu.js.map +1 -0
- package/dist/esm/v2/patterns/SkeletonPageShell.js +342 -0
- package/dist/esm/v2/patterns/SkeletonPageShell.js.map +1 -0
- package/dist/esm/v2/patterns/SortableHeader.js +179 -0
- package/dist/esm/v2/patterns/SortableHeader.js.map +1 -0
- package/dist/esm/v2/patterns/Tour.js +471 -0
- package/dist/esm/v2/patterns/Tour.js.map +1 -0
- package/dist/esm/v2/patterns/_dataGridShared.js +431 -0
- package/dist/esm/v2/patterns/_dataGridShared.js.map +1 -0
- package/dist/esm/v2/patterns/_pickerSerialisation.js +74 -0
- package/dist/esm/v2/patterns/_pickerSerialisation.js.map +1 -0
- package/dist/esm/v2/patterns/_sort.js +112 -0
- package/dist/esm/v2/patterns/_sort.js.map +1 -0
- package/dist/esm/v2/patterns/_useColumnReorder.js +257 -0
- package/dist/esm/v2/patterns/_useColumnReorder.js.map +1 -0
- package/dist/esm/v2/patterns/_useColumnResize.js +191 -0
- package/dist/esm/v2/patterns/_useColumnResize.js.map +1 -0
- package/dist/esm/v2/patterns/index.js +178 -0
- package/dist/esm/v2/patterns/index.js.map +1 -0
- package/dist/esm/v2/personalization/PersonalizationProvider.js +168 -0
- package/dist/esm/v2/personalization/PersonalizationProvider.js.map +1 -0
- package/dist/esm/v2/personalization/adapters/_storageKey.js +60 -0
- package/dist/esm/v2/personalization/adapters/_storageKey.js.map +1 -0
- package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js +124 -0
- package/dist/esm/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -0
- package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js +70 -0
- package/dist/esm/v2/personalization/adapters/createMemoryAdapter.js.map +1 -0
- package/dist/esm/v2/personalization/adapters/index.js +11 -0
- package/dist/esm/v2/personalization/adapters/index.js.map +1 -0
- package/dist/esm/v2/personalization/capabilities/favorites.js +216 -0
- package/dist/esm/v2/personalization/capabilities/favorites.js.map +1 -0
- package/dist/esm/v2/personalization/capabilities/favoritesView.js +111 -0
- package/dist/esm/v2/personalization/capabilities/favoritesView.js.map +1 -0
- package/dist/esm/v2/personalization/capabilities/gridPreferences.js +209 -0
- package/dist/esm/v2/personalization/capabilities/gridPreferences.js.map +1 -0
- package/dist/esm/v2/personalization/capabilities/index.js +22 -0
- package/dist/esm/v2/personalization/capabilities/index.js.map +1 -0
- package/dist/esm/v2/personalization/capabilities/savedFilters.js +291 -0
- package/dist/esm/v2/personalization/capabilities/savedFilters.js.map +1 -0
- package/dist/esm/v2/personalization/createPersonalizationStore.js +472 -0
- package/dist/esm/v2/personalization/createPersonalizationStore.js.map +1 -0
- package/dist/esm/v2/personalization/index.js +64 -0
- package/dist/esm/v2/personalization/index.js.map +1 -0
- package/dist/esm/v2/personalization/personalizationContext.js +108 -0
- package/dist/esm/v2/personalization/personalizationContext.js.map +1 -0
- package/dist/esm/v2/personalization/schema.js +92 -0
- package/dist/esm/v2/personalization/schema.js.map +1 -0
- package/dist/esm/v2/personalization/types.js +2 -0
- package/dist/esm/v2/personalization/types.js.map +1 -0
- package/dist/esm/v2/referentiel/ReferentielProvider.js +87 -0
- package/dist/esm/v2/referentiel/ReferentielProvider.js.map +1 -0
- package/dist/esm/v2/referentiel/index.js +15 -0
- package/dist/esm/v2/referentiel/index.js.map +1 -0
- package/dist/esm/v2/referentiel/useReferentielClient.js +37 -0
- package/dist/esm/v2/referentiel/useReferentielClient.js.map +1 -0
- package/dist/esm/v2/referentiel/useReferentielOptions.js +169 -0
- package/dist/esm/v2/referentiel/useReferentielOptions.js.map +1 -0
- package/dist/esm/v2/referentiel/useReferentielSearch.js +132 -0
- package/dist/esm/v2/referentiel/useReferentielSearch.js.map +1 -0
- package/dist/esm/v2/styles/base.css +425 -0
- package/dist/esm/v2/styles/css.d.ts +10 -0
- package/dist/esm/v2/styles/index.js +12 -0
- package/dist/esm/v2/styles/index.js.map +1 -0
- package/dist/esm/v2/theme/_brand.js +64 -0
- package/dist/esm/v2/theme/_brand.js.map +1 -0
- package/dist/esm/v2/theme/_brandSecondary.js +60 -0
- package/dist/esm/v2/theme/_brandSecondary.js.map +1 -0
- package/dist/esm/v2/theme/createPortnetTheme.js +548 -0
- package/dist/esm/v2/theme/createPortnetTheme.js.map +1 -0
- package/dist/esm/v2/theme/cssVariables.js +198 -0
- package/dist/esm/v2/theme/cssVariables.js.map +1 -0
- package/dist/esm/v2/theme/index.js +32 -0
- package/dist/esm/v2/theme/index.js.map +1 -0
- package/dist/esm/v2/tokens/breakpoints.js +106 -0
- package/dist/esm/v2/tokens/breakpoints.js.map +1 -0
- package/dist/esm/v2/tokens/colors.js +219 -0
- package/dist/esm/v2/tokens/colors.js.map +1 -0
- package/dist/esm/v2/tokens/density.js +98 -0
- package/dist/esm/v2/tokens/density.js.map +1 -0
- package/dist/esm/v2/tokens/index.js +80 -0
- package/dist/esm/v2/tokens/index.js.map +1 -0
- package/dist/esm/v2/tokens/motion.js +88 -0
- package/dist/esm/v2/tokens/motion.js.map +1 -0
- package/dist/esm/v2/tokens/radius.js +22 -0
- package/dist/esm/v2/tokens/radius.js.map +1 -0
- package/dist/esm/v2/tokens/shadows.js +40 -0
- package/dist/esm/v2/tokens/shadows.js.map +1 -0
- package/dist/esm/v2/tokens/spacing.js +51 -0
- package/dist/esm/v2/tokens/spacing.js.map +1 -0
- package/dist/esm/v2/tokens/state.js +41 -0
- package/dist/esm/v2/tokens/state.js.map +1 -0
- package/dist/esm/v2/tokens/statusPalette.js +66 -0
- package/dist/esm/v2/tokens/statusPalette.js.map +1 -0
- package/dist/esm/v2/tokens/tokens.json +153 -0
- package/dist/esm/v2/tokens/typography.js +149 -0
- package/dist/esm/v2/tokens/typography.js.map +1 -0
- package/dist/esm/v2/tokens/zIndex.js +44 -0
- package/dist/esm/v2/tokens/zIndex.js.map +1 -0
- package/dist/esm/v2/types/common.js +2 -0
- package/dist/esm/v2/types/common.js.map +1 -0
- package/dist/esm/v2/types/datagrid.js +2 -0
- package/dist/esm/v2/types/datagrid.js.map +1 -0
- package/dist/esm/v2/types/index.js +12 -0
- package/dist/esm/v2/types/index.js.map +1 -0
- package/dist/esm/v2/utils/apiError.js +281 -0
- package/dist/esm/v2/utils/apiError.js.map +1 -0
- package/dist/esm/v2/utils/contrast.js +157 -0
- package/dist/esm/v2/utils/contrast.js.map +1 -0
- package/dist/esm/v2/utils/cx.js +38 -0
- package/dist/esm/v2/utils/cx.js.map +1 -0
- package/dist/esm/v2/utils/fileDownload.js +226 -0
- package/dist/esm/v2/utils/fileDownload.js.map +1 -0
- package/dist/esm/v2/utils/fmtMoney.js +78 -0
- package/dist/esm/v2/utils/fmtMoney.js.map +1 -0
- package/dist/esm/v2/utils/index.js +43 -0
- package/dist/esm/v2/utils/index.js.map +1 -0
- package/dist/esm/v2/utils/mergeLabels.js +86 -0
- package/dist/esm/v2/utils/mergeLabels.js.map +1 -0
- package/dist/esm/v2/utils/networkStatus.js +114 -0
- package/dist/esm/v2/utils/networkStatus.js.map +1 -0
- package/dist/index.d.ts +5 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +35 -0
- package/dist/index.js.map +1 -1
- package/dist/v2/__tests__/FieldError.test.js +160 -0
- package/dist/v2/__tests__/FieldError.test.js.map +1 -0
- package/dist/v2/__tests__/FieldWidth.test.js +150 -0
- package/dist/v2/__tests__/FieldWidth.test.js.map +1 -0
- package/dist/v2/__tests__/FileCard.test.js +144 -0
- package/dist/v2/__tests__/FileCard.test.js.map +1 -0
- package/dist/v2/__tests__/FormikCheckbox.test.js +268 -0
- package/dist/v2/__tests__/FormikCheckbox.test.js.map +1 -0
- package/dist/v2/__tests__/FormikDateTimePicker.test.js +247 -0
- package/dist/v2/__tests__/FormikDateTimePicker.test.js.map +1 -0
- package/dist/v2/__tests__/FormikRadioGroup.test.js +381 -0
- package/dist/v2/__tests__/FormikRadioGroup.test.js.map +1 -0
- package/dist/v2/__tests__/MobileRowCard.test.js +52 -56
- package/dist/v2/__tests__/MobileRowCard.test.js.map +1 -1
- package/dist/v2/__tests__/SectionErrorBoundary.test.js +237 -0
- package/dist/v2/__tests__/SectionErrorBoundary.test.js.map +1 -0
- package/dist/v2/__tests__/labels-merge.test.js +20 -24
- package/dist/v2/__tests__/labels-merge.test.js.map +1 -1
- package/dist/v2/components/Accordion.d.ts +6 -6
- package/dist/v2/components/Accordion.d.ts.map +1 -1
- package/dist/v2/components/Accordion.js.map +1 -1
- package/dist/v2/components/ActionStrip.d.ts +12 -12
- package/dist/v2/components/ActionStrip.d.ts.map +1 -1
- package/dist/v2/components/ActionStrip.js.map +1 -1
- package/dist/v2/components/Banner.d.ts +48 -9
- package/dist/v2/components/Banner.d.ts.map +1 -1
- package/dist/v2/components/Banner.js +116 -35
- package/dist/v2/components/Banner.js.map +1 -1
- package/dist/v2/components/Busy.d.ts +3 -3
- package/dist/v2/components/Busy.d.ts.map +1 -1
- package/dist/v2/components/Busy.js.map +1 -1
- package/dist/v2/components/Button.d.ts +6 -6
- package/dist/v2/components/Button.d.ts.map +1 -1
- package/dist/v2/components/Button.js.map +1 -1
- package/dist/v2/components/CategoryTag.d.ts +3 -3
- package/dist/v2/components/CategoryTag.d.ts.map +1 -1
- package/dist/v2/components/CategoryTag.js.map +1 -1
- package/dist/v2/components/Checkbox.d.ts +11 -11
- package/dist/v2/components/Checkbox.d.ts.map +1 -1
- package/dist/v2/components/Checkbox.js.map +1 -1
- package/dist/v2/components/Chip.d.ts +8 -8
- package/dist/v2/components/Chip.d.ts.map +1 -1
- package/dist/v2/components/Chip.js +2 -1
- package/dist/v2/components/Chip.js.map +1 -1
- package/dist/v2/components/Combobox.d.ts +27 -27
- package/dist/v2/components/Combobox.d.ts.map +1 -1
- package/dist/v2/components/Combobox.js +3 -2
- package/dist/v2/components/Combobox.js.map +1 -1
- package/dist/v2/components/CommandPalette.d.ts +20 -20
- package/dist/v2/components/CommandPalette.d.ts.map +1 -1
- package/dist/v2/components/CommandPalette.js +2 -6
- package/dist/v2/components/CommandPalette.js.map +1 -1
- package/dist/v2/components/ConfirmDialog.d.ts +13 -13
- package/dist/v2/components/ConfirmDialog.d.ts.map +1 -1
- package/dist/v2/components/ConfirmDialog.js +2 -1
- package/dist/v2/components/ConfirmDialog.js.map +1 -1
- package/dist/v2/components/DatePicker.d.ts +11 -11
- package/dist/v2/components/DatePicker.d.ts.map +1 -1
- package/dist/v2/components/DatePicker.js.map +1 -1
- package/dist/v2/components/DateRangePicker.d.ts +16 -16
- package/dist/v2/components/DateRangePicker.d.ts.map +1 -1
- package/dist/v2/components/DateRangePicker.js +2 -1
- package/dist/v2/components/DateRangePicker.js.map +1 -1
- package/dist/v2/components/DateTimePicker.d.ts +11 -11
- package/dist/v2/components/DateTimePicker.d.ts.map +1 -1
- package/dist/v2/components/DateTimePicker.js +37 -4
- package/dist/v2/components/DateTimePicker.js.map +1 -1
- package/dist/v2/components/Drawer.d.ts +18 -18
- package/dist/v2/components/Drawer.d.ts.map +1 -1
- package/dist/v2/components/Drawer.js +2 -1
- package/dist/v2/components/Drawer.js.map +1 -1
- package/dist/v2/components/Dropzone.d.ts +34 -34
- package/dist/v2/components/Dropzone.d.ts.map +1 -1
- package/dist/v2/components/Dropzone.js +11 -3
- package/dist/v2/components/Dropzone.js.map +1 -1
- package/dist/v2/components/EmptyState.d.ts +7 -7
- package/dist/v2/components/EmptyState.d.ts.map +1 -1
- package/dist/v2/components/EmptyState.js.map +1 -1
- package/dist/v2/components/FavoriteToggle.d.ts +7 -7
- package/dist/v2/components/FavoriteToggle.d.ts.map +1 -1
- package/dist/v2/components/FavoriteToggle.js +2 -1
- package/dist/v2/components/FavoriteToggle.js.map +1 -1
- package/dist/v2/components/Field.d.ts +76 -13
- package/dist/v2/components/Field.d.ts.map +1 -1
- package/dist/v2/components/Field.js +87 -9
- package/dist/v2/components/Field.js.map +1 -1
- package/dist/v2/components/FieldError.d.ts +78 -0
- package/dist/v2/components/FieldError.d.ts.map +1 -0
- package/dist/v2/components/FieldError.js +131 -0
- package/dist/v2/components/FieldError.js.map +1 -0
- package/dist/v2/components/FieldHelp.d.ts +7 -7
- package/dist/v2/components/FieldHelp.d.ts.map +1 -1
- package/dist/v2/components/FieldHelp.js.map +1 -1
- package/dist/v2/components/FileCard.d.ts +75 -0
- package/dist/v2/components/FileCard.d.ts.map +1 -0
- package/dist/v2/components/FileCard.js +169 -0
- package/dist/v2/components/FileCard.js.map +1 -0
- package/dist/v2/components/FilterTab.d.ts +9 -9
- package/dist/v2/components/FilterTab.d.ts.map +1 -1
- package/dist/v2/components/FilterTab.js +2 -1
- package/dist/v2/components/FilterTab.js.map +1 -1
- package/dist/v2/components/FormGrid.d.ts +9 -4
- package/dist/v2/components/FormGrid.d.ts.map +1 -1
- package/dist/v2/components/FormGrid.js +11 -1
- package/dist/v2/components/FormGrid.js.map +1 -1
- package/dist/v2/components/FormikDisplay.d.ts +6 -6
- package/dist/v2/components/FormikDisplay.d.ts.map +1 -1
- package/dist/v2/components/FormikDisplay.js.map +1 -1
- package/dist/v2/components/Input.d.ts +6 -6
- package/dist/v2/components/Input.d.ts.map +1 -1
- package/dist/v2/components/Input.js.map +1 -1
- package/dist/v2/components/KPICard.d.ts +43 -13
- package/dist/v2/components/KPICard.d.ts.map +1 -1
- package/dist/v2/components/KPICard.js +53 -14
- package/dist/v2/components/KPICard.js.map +1 -1
- package/dist/v2/components/KPIStrip.d.ts +68 -0
- package/dist/v2/components/KPIStrip.d.ts.map +1 -0
- package/dist/v2/components/KPIStrip.js +92 -0
- package/dist/v2/components/KPIStrip.js.map +1 -0
- package/dist/v2/components/KV.d.ts +3 -3
- package/dist/v2/components/KV.d.ts.map +1 -1
- package/dist/v2/components/KV.js.map +1 -1
- package/dist/v2/components/KVGrid.d.ts +2 -2
- package/dist/v2/components/KVGrid.d.ts.map +1 -1
- package/dist/v2/components/KVGrid.js +8 -1
- package/dist/v2/components/KVGrid.js.map +1 -1
- package/dist/v2/components/Layout.d.ts +7 -7
- package/dist/v2/components/Layout.d.ts.map +1 -1
- package/dist/v2/components/Layout.js.map +1 -1
- package/dist/v2/components/MobileRowCard.d.ts +13 -13
- package/dist/v2/components/MobileRowCard.d.ts.map +1 -1
- package/dist/v2/components/MobileRowCard.js.map +1 -1
- package/dist/v2/components/Modal.d.ts +12 -12
- package/dist/v2/components/Modal.d.ts.map +1 -1
- package/dist/v2/components/Modal.js.map +1 -1
- package/dist/v2/components/NetworkErrorPage.d.ts +1 -1
- package/dist/v2/components/NetworkErrorPage.d.ts.map +1 -1
- package/dist/v2/components/NetworkErrorPage.js.map +1 -1
- package/dist/v2/components/NumberInput.d.ts +14 -14
- package/dist/v2/components/NumberInput.d.ts.map +1 -1
- package/dist/v2/components/NumberInput.js +7 -6
- package/dist/v2/components/NumberInput.js.map +1 -1
- package/dist/v2/components/OverflowMenu.d.ts +14 -14
- package/dist/v2/components/OverflowMenu.d.ts.map +1 -1
- package/dist/v2/components/OverflowMenu.js +4 -8
- package/dist/v2/components/OverflowMenu.js.map +1 -1
- package/dist/v2/components/PdfViewer.d.ts +9 -9
- package/dist/v2/components/PdfViewer.d.ts.map +1 -1
- package/dist/v2/components/PdfViewer.js.map +1 -1
- package/dist/v2/components/ProgressBar.d.ts +10 -10
- package/dist/v2/components/ProgressBar.d.ts.map +1 -1
- package/dist/v2/components/ProgressBar.js.map +1 -1
- package/dist/v2/components/Radio.d.ts +7 -7
- package/dist/v2/components/Radio.d.ts.map +1 -1
- package/dist/v2/components/Radio.js.map +1 -1
- package/dist/v2/components/SectionErrorBoundary.d.ts +89 -0
- package/dist/v2/components/SectionErrorBoundary.d.ts.map +1 -0
- package/dist/v2/components/SectionErrorBoundary.js +221 -0
- package/dist/v2/components/SectionErrorBoundary.js.map +1 -0
- package/dist/v2/components/SectionHeader.d.ts +5 -5
- package/dist/v2/components/SectionHeader.d.ts.map +1 -1
- package/dist/v2/components/SectionHeader.js.map +1 -1
- package/dist/v2/components/Segmented.d.ts +11 -11
- package/dist/v2/components/Segmented.d.ts.map +1 -1
- package/dist/v2/components/Segmented.js.map +1 -1
- package/dist/v2/components/Select.d.ts +33 -15
- package/dist/v2/components/Select.d.ts.map +1 -1
- package/dist/v2/components/Select.js +147 -30
- package/dist/v2/components/Select.js.map +1 -1
- package/dist/v2/components/ServerErrorPage.d.ts +1 -1
- package/dist/v2/components/ServerErrorPage.d.ts.map +1 -1
- package/dist/v2/components/ServerErrorPage.js.map +1 -1
- package/dist/v2/components/Skeleton.d.ts +15 -15
- package/dist/v2/components/Skeleton.d.ts.map +1 -1
- package/dist/v2/components/Skeleton.js.map +1 -1
- package/dist/v2/components/SkipLink.d.ts +2 -2
- package/dist/v2/components/SkipLink.d.ts.map +1 -1
- package/dist/v2/components/SkipLink.js.map +1 -1
- package/dist/v2/components/Status.d.ts +3 -3
- package/dist/v2/components/Status.d.ts.map +1 -1
- package/dist/v2/components/Status.js.map +1 -1
- package/dist/v2/components/Stepper.d.ts +28 -22
- package/dist/v2/components/Stepper.d.ts.map +1 -1
- package/dist/v2/components/Stepper.js +31 -5
- package/dist/v2/components/Stepper.js.map +1 -1
- package/dist/v2/components/Surface.d.ts +94 -0
- package/dist/v2/components/Surface.d.ts.map +1 -0
- package/dist/v2/components/Surface.js +163 -0
- package/dist/v2/components/Surface.js.map +1 -0
- package/dist/v2/components/Switch.d.ts +4 -4
- package/dist/v2/components/Switch.d.ts.map +1 -1
- package/dist/v2/components/Switch.js.map +1 -1
- package/dist/v2/components/Tabs.d.ts +6 -6
- package/dist/v2/components/Tabs.d.ts.map +1 -1
- package/dist/v2/components/Tabs.js.map +1 -1
- package/dist/v2/components/TelInput.d.ts +8 -8
- package/dist/v2/components/TelInput.d.ts.map +1 -1
- package/dist/v2/components/TelInput.js +18 -18
- package/dist/v2/components/TelInput.js.map +1 -1
- package/dist/v2/components/Textarea.d.ts +1 -1
- package/dist/v2/components/Textarea.d.ts.map +1 -1
- package/dist/v2/components/Textarea.js.map +1 -1
- package/dist/v2/components/TimePicker.d.ts +11 -11
- package/dist/v2/components/TimePicker.d.ts.map +1 -1
- package/dist/v2/components/TimePicker.js.map +1 -1
- package/dist/v2/components/Toast.d.ts +6 -6
- package/dist/v2/components/Toast.d.ts.map +1 -1
- package/dist/v2/components/Toast.js +9 -8
- package/dist/v2/components/Toast.js.map +1 -1
- package/dist/v2/components/Tooltip.d.ts +1 -1
- package/dist/v2/components/Tooltip.d.ts.map +1 -1
- package/dist/v2/components/Tooltip.js.map +1 -1
- package/dist/v2/components/index.d.ts +170 -0
- package/dist/v2/components/index.d.ts.map +1 -1
- package/dist/v2/components/index.js +35 -0
- package/dist/v2/components/index.js.map +1 -1
- package/dist/v2/index.d.ts.map +1 -1
- package/dist/v2/index.js.map +1 -1
- package/dist/v2/models/favorite.d.ts +1 -1
- package/dist/v2/models/favorite.d.ts.map +1 -1
- package/dist/v2/models/favorite.js.map +1 -1
- package/dist/v2/models/personalization.d.ts +13 -13
- 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 +11 -11
- 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 -8
- package/dist/v2/models/savedFilter.d.ts.map +1 -1
- package/dist/v2/models/savedFilter.js.map +1 -1
- package/dist/v2/patterns/ActionBar.d.ts +33 -33
- package/dist/v2/patterns/ActionBar.d.ts.map +1 -1
- package/dist/v2/patterns/ActionBar.js +2 -1
- package/dist/v2/patterns/ActionBar.js.map +1 -1
- package/dist/v2/patterns/BulkActionBar.d.ts +12 -12
- package/dist/v2/patterns/BulkActionBar.d.ts.map +1 -1
- package/dist/v2/patterns/BulkActionBar.js +2 -1
- package/dist/v2/patterns/BulkActionBar.js.map +1 -1
- package/dist/v2/patterns/CollapsibleDataGrid.d.ts +15 -15
- package/dist/v2/patterns/CollapsibleDataGrid.d.ts.map +1 -1
- package/dist/v2/patterns/CollapsibleDataGrid.js.map +1 -1
- package/dist/v2/patterns/ColumnsToggle.d.ts +7 -7
- package/dist/v2/patterns/ColumnsToggle.d.ts.map +1 -1
- package/dist/v2/patterns/ColumnsToggle.js +4 -8
- package/dist/v2/patterns/ColumnsToggle.js.map +1 -1
- package/dist/v2/patterns/DataGridSettingsMenu.d.ts +12 -12
- package/dist/v2/patterns/DataGridSettingsMenu.d.ts.map +1 -1
- package/dist/v2/patterns/DataGridSettingsMenu.js +9 -8
- package/dist/v2/patterns/DataGridSettingsMenu.js.map +1 -1
- package/dist/v2/patterns/DataGridToolbar.d.ts +40 -40
- package/dist/v2/patterns/DataGridToolbar.d.ts.map +1 -1
- package/dist/v2/patterns/DataGridToolbar.js +2 -1
- package/dist/v2/patterns/DataGridToolbar.js.map +1 -1
- package/dist/v2/patterns/DataGridVirtualized.d.ts +27 -27
- package/dist/v2/patterns/DataGridVirtualized.d.ts.map +1 -1
- package/dist/v2/patterns/DataGridVirtualized.js.map +1 -1
- package/dist/v2/patterns/DeleteResourceConfirmDialog.d.ts +5 -5
- package/dist/v2/patterns/DeleteResourceConfirmDialog.d.ts.map +1 -1
- package/dist/v2/patterns/DeleteResourceConfirmDialog.js.map +1 -1
- package/dist/v2/patterns/FavoriteColumn.d.ts +15 -15
- package/dist/v2/patterns/FavoriteColumn.d.ts.map +1 -1
- package/dist/v2/patterns/FavoriteColumn.js +14 -61
- package/dist/v2/patterns/FavoriteColumn.js.map +1 -1
- package/dist/v2/patterns/FavoritesFilter.d.ts +10 -10
- package/dist/v2/patterns/FavoritesFilter.d.ts.map +1 -1
- package/dist/v2/patterns/FavoritesFilter.js +2 -1
- package/dist/v2/patterns/FavoritesFilter.js.map +1 -1
- package/dist/v2/patterns/FormErrorSummary.d.ts +4 -4
- package/dist/v2/patterns/FormErrorSummary.d.ts.map +1 -1
- package/dist/v2/patterns/FormErrorSummary.js.map +1 -1
- package/dist/v2/patterns/FormPageShell.d.ts +4 -4
- package/dist/v2/patterns/FormPageShell.d.ts.map +1 -1
- package/dist/v2/patterns/FormPageShell.js.map +1 -1
- package/dist/v2/patterns/FormSection.d.ts +19 -8
- package/dist/v2/patterns/FormSection.d.ts.map +1 -1
- package/dist/v2/patterns/FormSection.js +106 -71
- 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 +147 -0
- package/dist/v2/patterns/FormikCheckbox.js.map +1 -0
- package/dist/v2/patterns/FormikCheckboxGroup.d.ts +6 -6
- package/dist/v2/patterns/FormikCheckboxGroup.d.ts.map +1 -1
- package/dist/v2/patterns/FormikCheckboxGroup.js.map +1 -1
- package/dist/v2/patterns/FormikCombobox.d.ts +18 -12
- package/dist/v2/patterns/FormikCombobox.d.ts.map +1 -1
- package/dist/v2/patterns/FormikCombobox.js +5 -2
- package/dist/v2/patterns/FormikCombobox.js.map +1 -1
- package/dist/v2/patterns/FormikDatePicker.d.ts +48 -8
- package/dist/v2/patterns/FormikDatePicker.d.ts.map +1 -1
- package/dist/v2/patterns/FormikDatePicker.js +58 -65
- 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 +158 -0
- package/dist/v2/patterns/FormikDateTimePicker.js.map +1 -0
- package/dist/v2/patterns/FormikErrorFocus.d.ts +3 -3
- package/dist/v2/patterns/FormikErrorFocus.d.ts.map +1 -1
- package/dist/v2/patterns/FormikErrorFocus.js.map +1 -1
- package/dist/v2/patterns/FormikFile.d.ts +8 -8
- package/dist/v2/patterns/FormikFile.d.ts.map +1 -1
- package/dist/v2/patterns/FormikFile.js.map +1 -1
- package/dist/v2/patterns/FormikInput.d.ts +51 -6
- package/dist/v2/patterns/FormikInput.d.ts.map +1 -1
- package/dist/v2/patterns/FormikInput.js +53 -2
- 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 +148 -0
- package/dist/v2/patterns/FormikRadioGroup.js.map +1 -0
- package/dist/v2/patterns/FormikReferentielField.d.ts +8 -8
- package/dist/v2/patterns/FormikReferentielField.d.ts.map +1 -1
- package/dist/v2/patterns/FormikReferentielField.js.map +1 -1
- package/dist/v2/patterns/FormikSelect.d.ts +41 -12
- package/dist/v2/patterns/FormikSelect.d.ts.map +1 -1
- package/dist/v2/patterns/FormikSelect.js +32 -3
- package/dist/v2/patterns/FormikSelect.js.map +1 -1
- package/dist/v2/patterns/FormikTextarea.d.ts +14 -6
- package/dist/v2/patterns/FormikTextarea.d.ts.map +1 -1
- package/dist/v2/patterns/FormikTextarea.js +5 -2
- package/dist/v2/patterns/FormikTextarea.js.map +1 -1
- package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts +21 -8
- package/dist/v2/patterns/KeyboardShortcutsHelp.d.ts.map +1 -1
- package/dist/v2/patterns/KeyboardShortcutsHelp.js +27 -14
- package/dist/v2/patterns/KeyboardShortcutsHelp.js.map +1 -1
- package/dist/v2/patterns/NetworkErrorBanner.d.ts +4 -4
- package/dist/v2/patterns/NetworkErrorBanner.d.ts.map +1 -1
- package/dist/v2/patterns/NetworkErrorBanner.js.map +1 -1
- package/dist/v2/patterns/PageContent.d.ts +3 -3
- package/dist/v2/patterns/PageContent.d.ts.map +1 -1
- package/dist/v2/patterns/PageContent.js.map +1 -1
- package/dist/v2/patterns/ReferentielField.d.ts +49 -49
- package/dist/v2/patterns/ReferentielField.d.ts.map +1 -1
- package/dist/v2/patterns/ReferentielField.js +2 -1
- package/dist/v2/patterns/ReferentielField.js.map +1 -1
- package/dist/v2/patterns/RowFavoriteToggle.d.ts +92 -0
- package/dist/v2/patterns/RowFavoriteToggle.d.ts.map +1 -0
- package/dist/v2/patterns/RowFavoriteToggle.js +127 -0
- package/dist/v2/patterns/RowFavoriteToggle.js.map +1 -0
- package/dist/v2/patterns/SaveFilterDialog.d.ts +10 -10
- package/dist/v2/patterns/SaveFilterDialog.d.ts.map +1 -1
- package/dist/v2/patterns/SaveFilterDialog.js +9 -8
- package/dist/v2/patterns/SaveFilterDialog.js.map +1 -1
- package/dist/v2/patterns/SavedFiltersMenu.d.ts +7 -7
- package/dist/v2/patterns/SavedFiltersMenu.d.ts.map +1 -1
- package/dist/v2/patterns/SavedFiltersMenu.js +9 -8
- package/dist/v2/patterns/SavedFiltersMenu.js.map +1 -1
- package/dist/v2/patterns/SkeletonPageShell.d.ts +7 -7
- package/dist/v2/patterns/SkeletonPageShell.d.ts.map +1 -1
- package/dist/v2/patterns/SkeletonPageShell.js.map +1 -1
- package/dist/v2/patterns/SortableHeader.d.ts +1 -1
- package/dist/v2/patterns/SortableHeader.d.ts.map +1 -1
- package/dist/v2/patterns/SortableHeader.js.map +1 -1
- package/dist/v2/patterns/Tour.d.ts +12 -12
- package/dist/v2/patterns/Tour.d.ts.map +1 -1
- package/dist/v2/patterns/Tour.js +9 -8
- package/dist/v2/patterns/Tour.js.map +1 -1
- package/dist/v2/patterns/_dataGridShared.d.ts +25 -6
- package/dist/v2/patterns/_dataGridShared.d.ts.map +1 -1
- package/dist/v2/patterns/_dataGridShared.js +37 -3
- 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 +81 -0
- package/dist/v2/patterns/_pickerSerialisation.js.map +1 -0
- package/dist/v2/patterns/_useColumnReorder.d.ts +1 -1
- package/dist/v2/patterns/_useColumnReorder.d.ts.map +1 -1
- package/dist/v2/patterns/_useColumnReorder.js.map +1 -1
- package/dist/v2/patterns/_useColumnResize.d.ts +1 -1
- package/dist/v2/patterns/_useColumnResize.d.ts.map +1 -1
- package/dist/v2/patterns/_useColumnResize.js.map +1 -1
- package/dist/v2/patterns/index.d.ts +114 -0
- package/dist/v2/patterns/index.d.ts.map +1 -1
- package/dist/v2/patterns/index.js +34 -0
- package/dist/v2/patterns/index.js.map +1 -1
- package/dist/v2/personalization/PersonalizationProvider.d.ts +9 -9
- package/dist/v2/personalization/PersonalizationProvider.d.ts.map +1 -1
- package/dist/v2/personalization/PersonalizationProvider.js.map +1 -1
- package/dist/v2/personalization/adapters/createLocalStorageAdapter.d.ts +1 -1
- package/dist/v2/personalization/adapters/createLocalStorageAdapter.d.ts.map +1 -1
- package/dist/v2/personalization/adapters/createLocalStorageAdapter.js.map +1 -1
- package/dist/v2/personalization/adapters/createMemoryAdapter.d.ts +1 -1
- package/dist/v2/personalization/adapters/createMemoryAdapter.d.ts.map +1 -1
- package/dist/v2/personalization/adapters/createMemoryAdapter.js.map +1 -1
- package/dist/v2/personalization/capabilities/favoritesView.d.ts +3 -3
- package/dist/v2/personalization/capabilities/favoritesView.d.ts.map +1 -1
- 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 +215 -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 +13 -0
- package/dist/v2/personalization/capabilities/index.js.map +1 -1
- package/dist/v2/personalization/capabilities/savedFilters.d.ts +3 -3
- package/dist/v2/personalization/capabilities/savedFilters.d.ts.map +1 -1
- package/dist/v2/personalization/capabilities/savedFilters.js.map +1 -1
- package/dist/v2/personalization/createPersonalizationStore.d.ts +8 -8
- package/dist/v2/personalization/createPersonalizationStore.d.ts.map +1 -1
- package/dist/v2/personalization/createPersonalizationStore.js.map +1 -1
- package/dist/v2/personalization/index.d.ts +18 -0
- package/dist/v2/personalization/index.d.ts.map +1 -1
- package/dist/v2/personalization/index.js +13 -0
- package/dist/v2/personalization/index.js.map +1 -1
- package/dist/v2/personalization/schema.d.ts +2 -2
- package/dist/v2/personalization/schema.d.ts.map +1 -1
- package/dist/v2/personalization/schema.js.map +1 -1
- package/dist/v2/personalization/types.d.ts +19 -19
- package/dist/v2/personalization/types.d.ts.map +1 -1
- package/dist/v2/personalization/types.js.map +1 -1
- package/dist/v2/referentiel/ReferentielProvider.d.ts +4 -4
- package/dist/v2/referentiel/ReferentielProvider.d.ts.map +1 -1
- package/dist/v2/referentiel/ReferentielProvider.js.map +1 -1
- package/dist/v2/referentiel/useReferentielOptions.d.ts +4 -4
- package/dist/v2/referentiel/useReferentielOptions.d.ts.map +1 -1
- package/dist/v2/referentiel/useReferentielOptions.js.map +1 -1
- package/dist/v2/referentiel/useReferentielSearch.d.ts +3 -3
- package/dist/v2/referentiel/useReferentielSearch.d.ts.map +1 -1
- package/dist/v2/referentiel/useReferentielSearch.js.map +1 -1
- package/dist/v2/theme/createPortnetTheme.d.ts +32 -7
- package/dist/v2/theme/createPortnetTheme.d.ts.map +1 -1
- package/dist/v2/theme/createPortnetTheme.js +25 -1
- package/dist/v2/theme/createPortnetTheme.js.map +1 -1
- package/dist/v2/types/datagrid.d.ts +59 -59
- package/dist/v2/types/datagrid.d.ts.map +1 -1
- package/dist/v2/types/datagrid.js.map +1 -1
- package/dist/v2/utils/apiError.d.ts +65 -4
- package/dist/v2/utils/apiError.d.ts.map +1 -1
- package/dist/v2/utils/apiError.js +69 -6
- package/dist/v2/utils/apiError.js.map +1 -1
- package/dist/v2/utils/index.d.ts +1 -0
- package/dist/v2/utils/index.d.ts.map +1 -1
- package/dist/v2/utils/index.js +7 -0
- package/dist/v2/utils/index.js.map +1 -1
- package/dist/v2/utils/mergeLabels.d.ts +59 -0
- package/dist/v2/utils/mergeLabels.d.ts.map +1 -0
- package/dist/v2/utils/mergeLabels.js +93 -0
- package/dist/v2/utils/mergeLabels.js.map +1 -0
- package/package.json +23 -15
|
@@ -8,6 +8,7 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
8
8
|
var _Modal = _interopRequireDefault(require("./Modal"));
|
|
9
9
|
var _Button = _interopRequireDefault(require("./Button"));
|
|
10
10
|
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
11
|
+
var _mergeLabels = require("../utils/mergeLabels");
|
|
11
12
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
13
14
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -67,7 +68,7 @@ function ConfirmDialog(_ref) {
|
|
|
67
68
|
impact = _ref.impact,
|
|
68
69
|
labels = _ref.labels,
|
|
69
70
|
children = _ref.children;
|
|
70
|
-
var L =
|
|
71
|
+
var L = (0, _mergeLabels.mergeLabels)(DEFAULT_LABELS, labels);
|
|
71
72
|
|
|
72
73
|
// R-Ar.1 - stable id linking the impact heading to its <ul>
|
|
73
74
|
// so SR users hear the relationship as a single semantic unit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmDialog.js","names":["React","_interopRequireWildcard","require","_Modal","_interopRequireDefault","_Button","_Box","_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","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","toPrimitive","undefined","res","TypeError","Number","DEFAULT_LABELS","freeze","impactHeading","ConfirmDialog","_ref","open","onClose","onConfirm","title","description","_ref$confirmLabel","confirmLabel","_ref$cancelLabel","cancelLabel","_ref$confirmVariant","confirmVariant","_ref$loading","loading","impact","labels","children","L","impactHeadingId","useId","hasImpact","jsxs","subtitle","size","footer","Fragment","jsx","variant","onClick","disabled","sx","background","border","borderRadius","padding","marginBottom","component","id","margin","fontSize","fontWeight","color","textTransform","letterSpacing","lineHeight","paddingInlineStart","map","item","_default","exports"],"sources":["../../../src/lib/v2/components/ConfirmDialog.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Modal from \"./Modal\";\r\nimport Button from \"./Button\";\r\nimport type { ButtonProps } from \"./Button\";\r\nimport Box from \"@mui/material/Box\";\r\n\r\n/**\r\n * ConfirmDialog - Portnet UI v2\r\n *\r\n * Charter §04.4 - confirmation pattern for irreversible actions.\r\n * Use whenever an action cannot be undone with a 5-s toast.\r\n *\r\n * R-5.1 - Action irréversible → ConfirmDialog avec récap des conséquences.\r\n * R-5.2 - Suppression multiple → forcer la saisie ou clic bouton danger.\r\n *\r\n * <ConfirmDialog\r\n * open={open}\r\n * onClose={close}\r\n * onConfirm={remove}\r\n * title=\"Supprimer ce titre ?\"\r\n * description=\"Cette action est définitive.\"\r\n * confirmLabel=\"Supprimer\"\r\n * confirmVariant=\"danger\"\r\n * impact={[\r\n * \"Le titre 2025-IM-0042 sera supprimé.\",\r\n * \"Les pièces jointes liées seront archivées.\",\r\n * ]}\r\n * />\r\n *\r\n * Localisation (FR / EN / AR):\r\n * confirmLabel / cancelLabel are direct overrides on the props.\r\n * The \"Conséquences\" heading rendered above the impact list is\r\n * localised via the `labels` prop:\r\n *\r\n * <ConfirmDialog labels={{ impactHeading: \"Consequences\" }} ... />\r\n */\r\n\r\nconst DEFAULT_LABELS = Object.freeze({\r\n impactHeading: \"Conséquences\",\r\n});\r\n\r\nexport interface ConfirmDialogLabels {\r\n impactHeading?: React.ReactNode;\r\n}\r\n\r\nexport interface ConfirmDialogProps {\r\n open?: boolean;\r\n onClose?: () => void;\r\n onConfirm?: () => void;\r\n title?: React.ReactNode;\r\n description?: React.ReactNode;\r\n confirmLabel?: React.ReactNode;\r\n cancelLabel?: React.ReactNode;\r\n confirmVariant?: ButtonProps[\"variant\"];\r\n loading?: boolean;\r\n impact?: React.ReactNode[];\r\n labels?: ConfirmDialogLabels;\r\n children?: React.ReactNode;\r\n}\r\n\r\nfunction ConfirmDialog({\r\n open,\r\n onClose,\r\n onConfirm,\r\n title,\r\n description,\r\n confirmLabel = \"Confirmer\",\r\n cancelLabel = \"Annuler\",\r\n confirmVariant = \"primary\",\r\n loading = false,\r\n impact, // optional list of bullet-point consequences\r\n labels,\r\n children,\r\n}: ConfirmDialogProps) {\r\n const L = labels ? { ...DEFAULT_LABELS, ...labels } : DEFAULT_LABELS;\r\n\r\n // R-Ar.1 - stable id linking the impact heading to its <ul>\r\n // so SR users hear the relationship as a single semantic unit.\r\n const impactHeadingId = React.useId();\r\n const hasImpact = !!(impact && impact.length > 0);\r\n\r\n return (\r\n <Modal\r\n title={title}\r\n subtitle={description}\r\n size=\"sm\"\r\n footer={\r\n <>\r\n <Button variant=\"ghost\" onClick={onClose} disabled={loading}>\r\n {cancelLabel}\r\n </Button>\r\n <Button variant={confirmVariant} loading={loading} onClick={onConfirm}>\r\n {confirmLabel}\r\n </Button>\r\n </>\r\n }\r\n {...(open !== undefined ? { open } : {})}\r\n {...(onClose !== undefined ? { onClose } : {})}\r\n >\r\n {hasImpact && (\r\n <Box\r\n sx={{\r\n background: \"var(--bg-subtle)\",\r\n border: \"1px solid var(--border)\",\r\n borderRadius: \"var(--r-md)\",\r\n padding: \"var(--s-3) var(--s-4)\",\r\n marginBottom: children ? 2 : 0,\r\n }}\r\n >\r\n <Box\r\n component=\"h3\"\r\n id={impactHeadingId}\r\n sx={{\r\n // Modal title is <h2>; this is the correct next level. Visual\r\n // styling (uppercase caption) overrides the default <h3>.\r\n margin: 0,\r\n fontSize: \"var(--text-xs)\",\r\n fontWeight: \"var(--fw-semibold)\",\r\n color: \"var(--fg-muted)\",\r\n marginBottom: 1,\r\n textTransform: \"uppercase\",\r\n /* A7-02 — was a raw \"0.04em\"; now the promoted token. */\r\n letterSpacing: \"var(--ls-wide)\",\r\n lineHeight: \"var(--lh-snug)\",\r\n }}\r\n >\r\n {L.impactHeading}\r\n </Box>\r\n <Box\r\n component=\"ul\"\r\n aria-labelledby={impactHeadingId}\r\n sx={{\r\n margin: 0,\r\n // RTL-safe: paddingInlineStart resets correctly in both\r\n // LTR (left) and RTL (right). Was paddingLeft, which in\r\n // Arabic indented to the wrong side.\r\n paddingInlineStart: \"var(--s-5)\",\r\n fontSize: \"var(--text-sm)\",\r\n color: \"var(--fg)\",\r\n }}\r\n >\r\n {impact?.map((item, i) => (\r\n <Box\r\n component=\"li\"\r\n key={i}\r\n sx={{ marginBottom: \"var(--s-1)\", lineHeight: \"var(--lh-normal)\" }}\r\n >\r\n {item}\r\n </Box>\r\n ))}\r\n </Box>\r\n </Box>\r\n )}\r\n {children}\r\n </Modal>\r\n );\r\n}\r\n\r\nexport default ConfirmDialog;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ConfirmDialog.js","names":["React","_interopRequireWildcard","require","_Modal","_interopRequireDefault","_Button","_Box","_mergeLabels","_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","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","toPrimitive","undefined","res","TypeError","Number","DEFAULT_LABELS","freeze","impactHeading","ConfirmDialog","_ref","open","onClose","onConfirm","title","description","_ref$confirmLabel","confirmLabel","_ref$cancelLabel","cancelLabel","_ref$confirmVariant","confirmVariant","_ref$loading","loading","impact","labels","children","L","mergeLabels","impactHeadingId","useId","hasImpact","jsxs","subtitle","size","footer","Fragment","jsx","variant","onClick","disabled","sx","background","border","borderRadius","padding","marginBottom","component","id","margin","fontSize","fontWeight","color","textTransform","letterSpacing","lineHeight","paddingInlineStart","map","item","_default","exports"],"sources":["../../../src/lib/v2/components/ConfirmDialog.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Modal from \"./Modal\";\r\nimport Button from \"./Button\";\r\nimport type { ButtonProps } from \"./Button\";\r\nimport Box from \"@mui/material/Box\";\r\nimport { mergeLabels } from \"../utils/mergeLabels\";\r\n\r\n/**\r\n * ConfirmDialog - Portnet UI v2\r\n *\r\n * Charter §04.4 - confirmation pattern for irreversible actions.\r\n * Use whenever an action cannot be undone with a 5-s toast.\r\n *\r\n * R-5.1 - Action irréversible → ConfirmDialog avec récap des conséquences.\r\n * R-5.2 - Suppression multiple → forcer la saisie ou clic bouton danger.\r\n *\r\n * <ConfirmDialog\r\n * open={open}\r\n * onClose={close}\r\n * onConfirm={remove}\r\n * title=\"Supprimer ce titre ?\"\r\n * description=\"Cette action est définitive.\"\r\n * confirmLabel=\"Supprimer\"\r\n * confirmVariant=\"danger\"\r\n * impact={[\r\n * \"Le titre 2025-IM-0042 sera supprimé.\",\r\n * \"Les pièces jointes liées seront archivées.\",\r\n * ]}\r\n * />\r\n *\r\n * Localisation (FR / EN / AR):\r\n * confirmLabel / cancelLabel are direct overrides on the props.\r\n * The \"Conséquences\" heading rendered above the impact list is\r\n * localised via the `labels` prop:\r\n *\r\n * <ConfirmDialog labels={{ impactHeading: \"Consequences\" }} ... />\r\n */\r\n\r\nconst DEFAULT_LABELS = Object.freeze({\r\n impactHeading: \"Conséquences\",\r\n});\r\n\r\nexport interface ConfirmDialogLabels {\r\n impactHeading?: React.ReactNode | undefined;\r\n}\r\n\r\nexport interface ConfirmDialogProps {\r\n open?: boolean | undefined;\r\n onClose?: (() => void) | undefined;\r\n onConfirm?: (() => void) | undefined;\r\n title?: React.ReactNode | undefined;\r\n description?: React.ReactNode | undefined;\r\n confirmLabel?: React.ReactNode | undefined;\r\n cancelLabel?: React.ReactNode | undefined;\r\n confirmVariant?: ButtonProps[\"variant\"] | undefined;\r\n loading?: boolean | undefined;\r\n impact?: React.ReactNode[] | undefined;\r\n labels?: ConfirmDialogLabels | undefined;\r\n children?: React.ReactNode | undefined;\r\n}\r\n\r\nfunction ConfirmDialog({\r\n open,\r\n onClose,\r\n onConfirm,\r\n title,\r\n description,\r\n confirmLabel = \"Confirmer\",\r\n cancelLabel = \"Annuler\",\r\n confirmVariant = \"primary\",\r\n loading = false,\r\n impact, // optional list of bullet-point consequences\r\n labels,\r\n children,\r\n}: ConfirmDialogProps) {\r\n const L = mergeLabels(DEFAULT_LABELS, labels);\r\n\r\n // R-Ar.1 - stable id linking the impact heading to its <ul>\r\n // so SR users hear the relationship as a single semantic unit.\r\n const impactHeadingId = React.useId();\r\n const hasImpact = !!(impact && impact.length > 0);\r\n\r\n return (\r\n <Modal\r\n title={title}\r\n subtitle={description}\r\n size=\"sm\"\r\n footer={\r\n <>\r\n <Button variant=\"ghost\" onClick={onClose} disabled={loading}>\r\n {cancelLabel}\r\n </Button>\r\n <Button variant={confirmVariant} loading={loading} onClick={onConfirm}>\r\n {confirmLabel}\r\n </Button>\r\n </>\r\n }\r\n {...(open !== undefined ? { open } : {})}\r\n {...(onClose !== undefined ? { onClose } : {})}\r\n >\r\n {hasImpact && (\r\n <Box\r\n sx={{\r\n background: \"var(--bg-subtle)\",\r\n border: \"1px solid var(--border)\",\r\n borderRadius: \"var(--r-md)\",\r\n padding: \"var(--s-3) var(--s-4)\",\r\n marginBottom: children ? 2 : 0,\r\n }}\r\n >\r\n <Box\r\n component=\"h3\"\r\n id={impactHeadingId}\r\n sx={{\r\n // Modal title is <h2>; this is the correct next level. Visual\r\n // styling (uppercase caption) overrides the default <h3>.\r\n margin: 0,\r\n fontSize: \"var(--text-xs)\",\r\n fontWeight: \"var(--fw-semibold)\",\r\n color: \"var(--fg-muted)\",\r\n marginBottom: 1,\r\n textTransform: \"uppercase\",\r\n /* A7-02 — was a raw \"0.04em\"; now the promoted token. */\r\n letterSpacing: \"var(--ls-wide)\",\r\n lineHeight: \"var(--lh-snug)\",\r\n }}\r\n >\r\n {L.impactHeading}\r\n </Box>\r\n <Box\r\n component=\"ul\"\r\n aria-labelledby={impactHeadingId}\r\n sx={{\r\n margin: 0,\r\n // RTL-safe: paddingInlineStart resets correctly in both\r\n // LTR (left) and RTL (right). Was paddingLeft, which in\r\n // Arabic indented to the wrong side.\r\n paddingInlineStart: \"var(--s-5)\",\r\n fontSize: \"var(--text-sm)\",\r\n color: \"var(--fg)\",\r\n }}\r\n >\r\n {impact?.map((item, i) => (\r\n <Box\r\n component=\"li\"\r\n key={i}\r\n sx={{ marginBottom: \"var(--s-1)\", lineHeight: \"var(--lh-normal)\" }}\r\n >\r\n {item}\r\n </Box>\r\n ))}\r\n </Box>\r\n </Box>\r\n )}\r\n {children}\r\n </Modal>\r\n );\r\n}\r\n\r\nexport default ConfirmDialog;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,17 +3,17 @@ import type { DatePickerProps as MuiDatePickerProps } from "@mui/x-date-pickers/
|
|
|
3
3
|
import "moment/locale/fr";
|
|
4
4
|
import type { SxProps, Theme } from "@mui/material/styles";
|
|
5
5
|
export interface DatePickerProps extends Omit<MuiDatePickerProps, "value" | "onChange" | "minDate" | "maxDate" | "slots" | "slotProps" | "sx" | "ref"> {
|
|
6
|
-
value?: Date | null;
|
|
7
|
-
onChange?: (value: Date | null) => void;
|
|
8
|
-
onBlur?: React.FocusEventHandler<HTMLInputElement | HTMLTextAreaElement
|
|
9
|
-
minDate?: Date | null;
|
|
10
|
-
maxDate?: Date | null;
|
|
11
|
-
error?: boolean;
|
|
12
|
-
placeholder?: string;
|
|
13
|
-
fullWidth?: boolean;
|
|
14
|
-
inputProps?: React.InputHTMLAttributes<HTMLInputElement
|
|
15
|
-
adapterLocale?: string;
|
|
16
|
-
sx?: SxProps<Theme
|
|
6
|
+
value?: Date | null | undefined;
|
|
7
|
+
onChange?: ((value: Date | null) => void) | undefined;
|
|
8
|
+
onBlur?: React.FocusEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined;
|
|
9
|
+
minDate?: Date | null | undefined;
|
|
10
|
+
maxDate?: Date | null | undefined;
|
|
11
|
+
error?: boolean | undefined;
|
|
12
|
+
placeholder?: string | undefined;
|
|
13
|
+
fullWidth?: boolean | undefined;
|
|
14
|
+
inputProps?: React.InputHTMLAttributes<HTMLInputElement> | undefined;
|
|
15
|
+
adapterLocale?: string | undefined;
|
|
16
|
+
sx?: SxProps<Theme> | undefined;
|
|
17
17
|
}
|
|
18
18
|
declare const DatePicker: React.ForwardRefExoticComponent<DatePickerProps & React.RefAttributes<HTMLDivElement>>;
|
|
19
19
|
export declare const DATE_FORMAT_CHARTER = "YYYY-MM-DD";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/components/DatePicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,eAAe,IAAI,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAG5F,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AA6E3D,MAAM,WAAW,eACf,SAAQ,IAAI,CACV,kBAAkB,EAClB,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,IAAI,GAAG,KAAK,CACpF;IACD,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/components/DatePicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,eAAe,IAAI,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAG5F,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AA6E3D,MAAM,WAAW,eACf,SAAQ,IAAI,CACV,kBAAkB,EAClB,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,IAAI,GAAG,KAAK,CACpF;IACD,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAChC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACtD,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,GAAG,SAAS,CAAC;IACrF,OAAO,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,OAAO,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC,UAAU,CAAC,EAAE,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC;IACrE,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;CACjC;AAED,QAAA,MAAM,UAAU,wFA8Hd,CAAC;AAEH,eAAO,MAAM,mBAAmB,eAAiB,CAAC;AAElD,eAAe,UAAU,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePicker.js","names":["React","_interopRequireWildcard","require","_LocalizationProvider","_DatePicker","_AdapterMoment","_pickerShared","_jsxRuntime","_excluded","_excluded2","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_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","CHARTER_FORMAT","DatePicker","forwardRef","_ref","ref","onChange","onBlur","minDate","maxDate","_ref$disablePast","disablePast","_ref$disableFuture","disableFuture","_ref$disabled","disabled","_ref$readOnly","readOnly","error","_ref$placeholder","placeholder","_ref$fullWidth","fullWidth","inputProps","_ref$adapterLocale","adapterLocale","sx","rest","_ref2","fieldId","id","ariaDescribedby","ariaInvalid","ariaRequired","ariaLabelledby","domRest","handleChange","next","momentToDate","slotProps","useMemo","textField","size","fontVariantNumeric","htmlInput","minDateM","dateToMoment","maxDateM","jsx","LocalizationProvider","dateAdapter","AdapterMoment","children","format","DATE_FORMAT_CHARTER","exports","_default"],"sources":["../../../src/lib/v2/components/DatePicker.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport { LocalizationProvider } from \"@mui/x-date-pickers/LocalizationProvider\";\r\nimport { DatePicker as MuiDatePicker } from \"@mui/x-date-pickers/DatePicker\";\r\nimport type { DatePickerProps as MuiDatePickerProps } from \"@mui/x-date-pickers/DatePicker\";\r\nimport { AdapterMoment } from \"@mui/x-date-pickers/AdapterMoment\";\r\nimport type { Moment } from \"moment\";\r\nimport \"moment/locale/fr\";\r\nimport type { SxProps, Theme } from \"@mui/material/styles\";\r\nimport { dateToMoment, momentToDate } from \"./_pickerShared\";\r\n\r\n/**\r\n * DatePicker — Portnet UI v2\r\n *\r\n * Charter §03 · Component \"DatePicker\". Format AAAA-MM-JJ.\r\n *\r\n * <Field label=\"Date d'expiration\" required>\r\n * <DatePicker\r\n * value={expDate}\r\n * onChange={setExpDate}\r\n * minDate={new Date()}\r\n * />\r\n * </Field>\r\n *\r\n * Value contract:\r\n * - value/onChange exchange JavaScript Date objects (or null).\r\n * - Invalid dates (NaN, malformed user input) are coerced to null\r\n * so consumers never receive an \"Invalid Date\" instance.\r\n * - The component handles moment conversion internally.\r\n *\r\n * Locale:\r\n * Default `adapterLocale=\"fr\"` — picker reads month / weekday names\r\n * from moment's French locale data (imported here). Hosts wanting\r\n * other locales pass the BCP-47 / moment short tag AND import the\r\n * matching moment locale data themselves:\r\n *\r\n * import \"moment/locale/ar\";\r\n * <DatePicker adapterLocale=\"ar\" />\r\n *\r\n * This component does NOT mutate moment's GLOBAL locale on import\r\n * (older versions did via `moment.locale(\"fr\")` — that leaked the\r\n * library's preference into ALL host code using moment outside the\r\n * picker).\r\n *\r\n * Format:\r\n * - Display: AAAA-MM-JJ (charter convention). MUI X v6+ derives the\r\n * input mask from this format string automatically — no need for\r\n * the v5-era `mask=\"____-__-__\"` companion prop.\r\n * - The text input accepts user typing in the same format; partial\r\n * entries are tolerated until the user blurs or hits Enter.\r\n *\r\n * Constraints:\r\n * - minDate / maxDate accept Date objects or null.\r\n * - disablePast / disableFuture for relative bounds.\r\n *\r\n * Sibling pickers in the same family:\r\n * - DateTimePicker — adds time-of-day (HH:MM) on top of the date.\r\n * - TimePicker — time only (HH:MM), date portion ignored.\r\n * - DateRangePicker — paired start/end with cross-validation and\r\n * optional preset shortcuts.\r\n * All consume the same _pickerShared boundary helpers as this file\r\n * and follow the same MUI X v9 slots / slotProps surface.\r\n *\r\n * A11y (DP-1): when used inside <Field>, Field cloneElement-injects id +\r\n * aria-describedby / aria-invalid / aria-required (label + hint/error\r\n * association) onto this child. MUI X does NOT forward top-level aria/id to the\r\n * field <input>, so those are intercepted here and routed onto the input via\r\n * slotProps.htmlInput (the <input> element slot — see the v9 note below).\r\n * Explicit `inputProps` still win.\r\n *\r\n * MUI X v9 surface notes (migrated from v5 in Batch 4):\r\n * - The v5 `renderInput` callback + `inputFormat` + `mask` triad has\r\n * been REPLACED by the v6+ `slots`/`slotProps` API and the single\r\n * `format` prop. The textField slot is the canonical entry point\r\n * for any TextField prop override.\r\n * - Inside `slotProps.textField`, the `slotProps.htmlInput` nested\r\n * bag carries what used to be TextField's `inputProps={...}`\r\n * (placeholder, aria-*, min/max, etc.). This double-nesting\r\n * reflects MUI v9's own TextField API: the htmlInput slot is the\r\n * <input/> element target, distinct from the input slot (which\r\n * wraps it).\r\n */\r\n\r\nconst CHARTER_FORMAT = \"YYYY-MM-DD\";\r\n\r\nexport interface DatePickerProps\r\n extends Omit<\r\n MuiDatePickerProps,\r\n \"value\" | \"onChange\" | \"minDate\" | \"maxDate\" | \"slots\" | \"slotProps\" | \"sx\" | \"ref\"\r\n > {\r\n value?: Date | null;\r\n onChange?: (value: Date | null) => void;\r\n onBlur?: React.FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;\r\n minDate?: Date | null;\r\n maxDate?: Date | null;\r\n error?: boolean;\r\n placeholder?: string;\r\n fullWidth?: boolean;\r\n inputProps?: React.InputHTMLAttributes<HTMLInputElement>;\r\n adapterLocale?: string;\r\n sx?: SxProps<Theme>;\r\n}\r\n\r\nconst DatePicker = React.forwardRef<HTMLDivElement, DatePickerProps>(function DatePicker(\r\n {\r\n value,\r\n onChange,\r\n onBlur,\r\n minDate,\r\n maxDate,\r\n disablePast = false,\r\n disableFuture = false,\r\n disabled = false,\r\n readOnly = false,\r\n error,\r\n placeholder = \"AAAA-MM-JJ\",\r\n fullWidth = true,\r\n inputProps,\r\n adapterLocale = \"fr\",\r\n sx,\r\n ...rest\r\n },\r\n ref,\r\n) {\r\n // DP-1 — Field cloneElement-injects the label + hint/error association props\r\n // onto this child; MUI X won't forward top-level aria/id to the field input,\r\n // so intercept them (cast — they aren't part of MuiDatePickerProps) and route\r\n // them onto the <input> via slotProps.htmlInput below. Everything else stays\r\n // in domRest for MuiDatePicker (real picker props: views, openTo, etc.).\r\n const {\r\n id: fieldId,\r\n \"aria-describedby\": ariaDescribedby,\r\n \"aria-invalid\": ariaInvalid,\r\n \"aria-required\": ariaRequired,\r\n \"aria-labelledby\": ariaLabelledby,\r\n ...domRest\r\n } = rest as typeof rest & {\r\n id?: string;\r\n \"aria-describedby\"?: string;\r\n \"aria-invalid\"?: boolean | \"true\" | \"false\" | \"grammar\" | \"spelling\";\r\n \"aria-required\"?: boolean | \"true\" | \"false\";\r\n \"aria-labelledby\"?: string;\r\n };\r\n\r\n const handleChange = (next: Moment | null) => {\r\n if (!onChange) return;\r\n onChange(momentToDate(next));\r\n };\r\n\r\n // MUI X v9: every input customisation flows through\r\n // slotProps.textField. The nested slotProps.htmlInput is the MUI v9\r\n // landing zone for what used to be TextField's `inputProps={...}`\r\n // (now the <input/> element slot) — and the DP-1 landing zone for the\r\n // Field-injected id + aria-* so the label / hint / error actually\r\n // associate with the date input. Memoised on the deps so the slotProps\r\n // object reference stays stable across renders.\r\n const slotProps = React.useMemo<NonNullable<MuiDatePickerProps[\"slotProps\"]>>(\r\n () => ({\r\n textField: {\r\n ref,\r\n error: !!error,\r\n fullWidth,\r\n size: \"small\",\r\n // onBlur: the textField slot types this as FocusEventHandler<HTMLDivElement>;\r\n // our public onBlur is input-based. Cast (type-only) and include only\r\n // when defined so no explicit undefined reaches the slot.\r\n ...(onBlur ? { onBlur: onBlur as unknown as React.FocusEventHandler<HTMLDivElement> } : {}),\r\n sx: {\r\n \"& .MuiOutlinedInput-input\": { fontVariantNumeric: \"tabular-nums\" },\r\n ...sx,\r\n },\r\n slotProps: {\r\n htmlInput: {\r\n placeholder,\r\n // DP-1 — Field-injected association attrs land on the <input>.\r\n ...(fieldId != null ? { id: fieldId } : {}),\r\n ...(ariaDescribedby != null\r\n ? { \"aria-describedby\": ariaDescribedby }\r\n : {}),\r\n ...(ariaInvalid != null ? { \"aria-invalid\": ariaInvalid } : {}),\r\n ...(ariaRequired != null ? { \"aria-required\": ariaRequired } : {}),\r\n ...(ariaLabelledby != null\r\n ? { \"aria-labelledby\": ariaLabelledby }\r\n : {}),\r\n // Explicit host inputProps win over the injected defaults.\r\n ...inputProps,\r\n },\r\n },\r\n },\r\n }),\r\n [\r\n ref,\r\n error,\r\n fullWidth,\r\n onBlur,\r\n sx,\r\n placeholder,\r\n inputProps,\r\n fieldId,\r\n ariaDescribedby,\r\n ariaInvalid,\r\n ariaRequired,\r\n ariaLabelledby,\r\n ],\r\n );\r\n\r\n // exactOptionalPropertyTypes: MUI's minDate/maxDate are `Moment` (not\r\n // `Moment | undefined`), so spread the key only when a bound is set\r\n // rather than passing an explicit `undefined`.\r\n const minDateM = minDate ? dateToMoment(minDate) : null;\r\n const maxDateM = maxDate ? dateToMoment(maxDate) : null;\r\n\r\n return (\r\n <LocalizationProvider dateAdapter={AdapterMoment} adapterLocale={adapterLocale}>\r\n <MuiDatePicker\r\n value={dateToMoment(value)}\r\n onChange={handleChange}\r\n {...(minDateM ? { minDate: minDateM } : {})}\r\n {...(maxDateM ? { maxDate: maxDateM } : {})}\r\n disablePast={disablePast}\r\n disableFuture={disableFuture}\r\n disabled={disabled}\r\n readOnly={readOnly}\r\n format={CHARTER_FORMAT}\r\n slotProps={slotProps}\r\n {...domRest}\r\n />\r\n </LocalizationProvider>\r\n );\r\n});\r\n\r\nexport const DATE_FORMAT_CHARTER = CHARTER_FORMAT;\r\n\r\nexport default DatePicker;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"DatePicker.js","names":["React","_interopRequireWildcard","require","_LocalizationProvider","_DatePicker","_AdapterMoment","_pickerShared","_jsxRuntime","_excluded","_excluded2","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_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","CHARTER_FORMAT","DatePicker","forwardRef","_ref","ref","onChange","onBlur","minDate","maxDate","_ref$disablePast","disablePast","_ref$disableFuture","disableFuture","_ref$disabled","disabled","_ref$readOnly","readOnly","error","_ref$placeholder","placeholder","_ref$fullWidth","fullWidth","inputProps","_ref$adapterLocale","adapterLocale","sx","rest","_ref2","fieldId","id","ariaDescribedby","ariaInvalid","ariaRequired","ariaLabelledby","domRest","handleChange","next","momentToDate","slotProps","useMemo","textField","size","fontVariantNumeric","htmlInput","minDateM","dateToMoment","maxDateM","jsx","LocalizationProvider","dateAdapter","AdapterMoment","children","format","DATE_FORMAT_CHARTER","exports","_default"],"sources":["../../../src/lib/v2/components/DatePicker.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport { LocalizationProvider } from \"@mui/x-date-pickers/LocalizationProvider\";\r\nimport { DatePicker as MuiDatePicker } from \"@mui/x-date-pickers/DatePicker\";\r\nimport type { DatePickerProps as MuiDatePickerProps } from \"@mui/x-date-pickers/DatePicker\";\r\nimport { AdapterMoment } from \"@mui/x-date-pickers/AdapterMoment\";\r\nimport type { Moment } from \"moment\";\r\nimport \"moment/locale/fr\";\r\nimport type { SxProps, Theme } from \"@mui/material/styles\";\r\nimport { dateToMoment, momentToDate } from \"./_pickerShared\";\r\n\r\n/**\r\n * DatePicker — Portnet UI v2\r\n *\r\n * Charter §03 · Component \"DatePicker\". Format AAAA-MM-JJ.\r\n *\r\n * <Field label=\"Date d'expiration\" required>\r\n * <DatePicker\r\n * value={expDate}\r\n * onChange={setExpDate}\r\n * minDate={new Date()}\r\n * />\r\n * </Field>\r\n *\r\n * Value contract:\r\n * - value/onChange exchange JavaScript Date objects (or null).\r\n * - Invalid dates (NaN, malformed user input) are coerced to null\r\n * so consumers never receive an \"Invalid Date\" instance.\r\n * - The component handles moment conversion internally.\r\n *\r\n * Locale:\r\n * Default `adapterLocale=\"fr\"` — picker reads month / weekday names\r\n * from moment's French locale data (imported here). Hosts wanting\r\n * other locales pass the BCP-47 / moment short tag AND import the\r\n * matching moment locale data themselves:\r\n *\r\n * import \"moment/locale/ar\";\r\n * <DatePicker adapterLocale=\"ar\" />\r\n *\r\n * This component does NOT mutate moment's GLOBAL locale on import\r\n * (older versions did via `moment.locale(\"fr\")` — that leaked the\r\n * library's preference into ALL host code using moment outside the\r\n * picker).\r\n *\r\n * Format:\r\n * - Display: AAAA-MM-JJ (charter convention). MUI X v6+ derives the\r\n * input mask from this format string automatically — no need for\r\n * the v5-era `mask=\"____-__-__\"` companion prop.\r\n * - The text input accepts user typing in the same format; partial\r\n * entries are tolerated until the user blurs or hits Enter.\r\n *\r\n * Constraints:\r\n * - minDate / maxDate accept Date objects or null.\r\n * - disablePast / disableFuture for relative bounds.\r\n *\r\n * Sibling pickers in the same family:\r\n * - DateTimePicker — adds time-of-day (HH:MM) on top of the date.\r\n * - TimePicker — time only (HH:MM), date portion ignored.\r\n * - DateRangePicker — paired start/end with cross-validation and\r\n * optional preset shortcuts.\r\n * All consume the same _pickerShared boundary helpers as this file\r\n * and follow the same MUI X v9 slots / slotProps surface.\r\n *\r\n * A11y (DP-1): when used inside <Field>, Field cloneElement-injects id +\r\n * aria-describedby / aria-invalid / aria-required (label + hint/error\r\n * association) onto this child. MUI X does NOT forward top-level aria/id to the\r\n * field <input>, so those are intercepted here and routed onto the input via\r\n * slotProps.htmlInput (the <input> element slot — see the v9 note below).\r\n * Explicit `inputProps` still win.\r\n *\r\n * MUI X v9 surface notes (migrated from v5 in Batch 4):\r\n * - The v5 `renderInput` callback + `inputFormat` + `mask` triad has\r\n * been REPLACED by the v6+ `slots`/`slotProps` API and the single\r\n * `format` prop. The textField slot is the canonical entry point\r\n * for any TextField prop override.\r\n * - Inside `slotProps.textField`, the `slotProps.htmlInput` nested\r\n * bag carries what used to be TextField's `inputProps={...}`\r\n * (placeholder, aria-*, min/max, etc.). This double-nesting\r\n * reflects MUI v9's own TextField API: the htmlInput slot is the\r\n * <input/> element target, distinct from the input slot (which\r\n * wraps it).\r\n */\r\n\r\nconst CHARTER_FORMAT = \"YYYY-MM-DD\";\r\n\r\nexport interface DatePickerProps\r\n extends Omit<\r\n MuiDatePickerProps,\r\n \"value\" | \"onChange\" | \"minDate\" | \"maxDate\" | \"slots\" | \"slotProps\" | \"sx\" | \"ref\"\r\n > {\r\n value?: Date | null | undefined;\r\n onChange?: ((value: Date | null) => void) | undefined;\r\n onBlur?: React.FocusEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined;\r\n minDate?: Date | null | undefined;\r\n maxDate?: Date | null | undefined;\r\n error?: boolean | undefined;\r\n placeholder?: string | undefined;\r\n fullWidth?: boolean | undefined;\r\n inputProps?: React.InputHTMLAttributes<HTMLInputElement> | undefined;\r\n adapterLocale?: string | undefined;\r\n sx?: SxProps<Theme> | undefined;\r\n}\r\n\r\nconst DatePicker = React.forwardRef<HTMLDivElement, DatePickerProps>(function DatePicker(\r\n {\r\n value,\r\n onChange,\r\n onBlur,\r\n minDate,\r\n maxDate,\r\n disablePast = false,\r\n disableFuture = false,\r\n disabled = false,\r\n readOnly = false,\r\n error,\r\n placeholder = \"AAAA-MM-JJ\",\r\n fullWidth = true,\r\n inputProps,\r\n adapterLocale = \"fr\",\r\n sx,\r\n ...rest\r\n },\r\n ref,\r\n) {\r\n // DP-1 — Field cloneElement-injects the label + hint/error association props\r\n // onto this child; MUI X won't forward top-level aria/id to the field input,\r\n // so intercept them (cast — they aren't part of MuiDatePickerProps) and route\r\n // them onto the <input> via slotProps.htmlInput below. Everything else stays\r\n // in domRest for MuiDatePicker (real picker props: views, openTo, etc.).\r\n const {\r\n id: fieldId,\r\n \"aria-describedby\": ariaDescribedby,\r\n \"aria-invalid\": ariaInvalid,\r\n \"aria-required\": ariaRequired,\r\n \"aria-labelledby\": ariaLabelledby,\r\n ...domRest\r\n } = rest as typeof rest & {\r\n id?: string;\r\n \"aria-describedby\"?: string;\r\n \"aria-invalid\"?: boolean | \"true\" | \"false\" | \"grammar\" | \"spelling\";\r\n \"aria-required\"?: boolean | \"true\" | \"false\";\r\n \"aria-labelledby\"?: string;\r\n };\r\n\r\n const handleChange = (next: Moment | null) => {\r\n if (!onChange) return;\r\n onChange(momentToDate(next));\r\n };\r\n\r\n // MUI X v9: every input customisation flows through\r\n // slotProps.textField. The nested slotProps.htmlInput is the MUI v9\r\n // landing zone for what used to be TextField's `inputProps={...}`\r\n // (now the <input/> element slot) — and the DP-1 landing zone for the\r\n // Field-injected id + aria-* so the label / hint / error actually\r\n // associate with the date input. Memoised on the deps so the slotProps\r\n // object reference stays stable across renders.\r\n const slotProps = React.useMemo<NonNullable<MuiDatePickerProps[\"slotProps\"]>>(\r\n () => ({\r\n textField: {\r\n ref,\r\n error: !!error,\r\n fullWidth,\r\n size: \"small\",\r\n // onBlur: the textField slot types this as FocusEventHandler<HTMLDivElement>;\r\n // our public onBlur is input-based. Cast (type-only) and include only\r\n // when defined so no explicit undefined reaches the slot.\r\n ...(onBlur ? { onBlur: onBlur as unknown as React.FocusEventHandler<HTMLDivElement> } : {}),\r\n sx: {\r\n \"& .MuiOutlinedInput-input\": { fontVariantNumeric: \"tabular-nums\" },\r\n ...sx,\r\n },\r\n slotProps: {\r\n htmlInput: {\r\n placeholder,\r\n // DP-1 — Field-injected association attrs land on the <input>.\r\n ...(fieldId != null ? { id: fieldId } : {}),\r\n ...(ariaDescribedby != null\r\n ? { \"aria-describedby\": ariaDescribedby }\r\n : {}),\r\n ...(ariaInvalid != null ? { \"aria-invalid\": ariaInvalid } : {}),\r\n ...(ariaRequired != null ? { \"aria-required\": ariaRequired } : {}),\r\n ...(ariaLabelledby != null\r\n ? { \"aria-labelledby\": ariaLabelledby }\r\n : {}),\r\n // Explicit host inputProps win over the injected defaults.\r\n ...inputProps,\r\n },\r\n },\r\n },\r\n }),\r\n [\r\n ref,\r\n error,\r\n fullWidth,\r\n onBlur,\r\n sx,\r\n placeholder,\r\n inputProps,\r\n fieldId,\r\n ariaDescribedby,\r\n ariaInvalid,\r\n ariaRequired,\r\n ariaLabelledby,\r\n ],\r\n );\r\n\r\n // exactOptionalPropertyTypes: MUI's minDate/maxDate are `Moment` (not\r\n // `Moment | undefined`), so spread the key only when a bound is set\r\n // rather than passing an explicit `undefined`.\r\n const minDateM = minDate ? dateToMoment(minDate) : null;\r\n const maxDateM = maxDate ? dateToMoment(maxDate) : null;\r\n\r\n return (\r\n <LocalizationProvider dateAdapter={AdapterMoment} adapterLocale={adapterLocale}>\r\n <MuiDatePicker\r\n value={dateToMoment(value)}\r\n onChange={handleChange}\r\n {...(minDateM ? { minDate: minDateM } : {})}\r\n {...(maxDateM ? { maxDate: maxDateM } : {})}\r\n disablePast={disablePast}\r\n disableFuture={disableFuture}\r\n disabled={disabled}\r\n readOnly={readOnly}\r\n format={CHARTER_FORMAT}\r\n slotProps={slotProps}\r\n {...domRest}\r\n />\r\n </LocalizationProvider>\r\n );\r\n});\r\n\r\nexport const DATE_FORMAT_CHARTER = CHARTER_FORMAT;\r\n\r\nexport default DatePicker;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -52,29 +52,29 @@ export interface DateRangeValue {
|
|
|
52
52
|
endDate: Date | null;
|
|
53
53
|
}
|
|
54
54
|
export interface DateRangePreset {
|
|
55
|
-
id?: string | number;
|
|
55
|
+
id?: string | number | undefined;
|
|
56
56
|
label: React.ReactNode;
|
|
57
57
|
from: Date;
|
|
58
58
|
to: Date;
|
|
59
59
|
}
|
|
60
60
|
export interface DateRangeLabels {
|
|
61
|
-
startLabel?: React.ReactNode;
|
|
62
|
-
endLabel?: React.ReactNode;
|
|
63
|
-
presetsAria?: string;
|
|
61
|
+
startLabel?: React.ReactNode | undefined;
|
|
62
|
+
endLabel?: React.ReactNode | undefined;
|
|
63
|
+
presetsAria?: string | undefined;
|
|
64
64
|
}
|
|
65
65
|
export interface DateRangePickerProps {
|
|
66
|
-
value?: DateRangeValue | null;
|
|
67
|
-
onChange?: (value: DateRangeValue) => void;
|
|
68
|
-
minDate?: Date | null;
|
|
69
|
-
maxDate?: Date | null;
|
|
70
|
-
disablePast?: boolean;
|
|
71
|
-
disableFuture?: boolean;
|
|
72
|
-
disabled?: boolean;
|
|
73
|
-
readOnly?: boolean;
|
|
74
|
-
presets?: DateRangePreset[];
|
|
75
|
-
adapterLocale?: string;
|
|
76
|
-
labels?: DateRangeLabels;
|
|
77
|
-
sx?: SxProps<Theme
|
|
66
|
+
value?: DateRangeValue | null | undefined;
|
|
67
|
+
onChange?: ((value: DateRangeValue) => void) | undefined;
|
|
68
|
+
minDate?: Date | null | undefined;
|
|
69
|
+
maxDate?: Date | null | undefined;
|
|
70
|
+
disablePast?: boolean | undefined;
|
|
71
|
+
disableFuture?: boolean | undefined;
|
|
72
|
+
disabled?: boolean | undefined;
|
|
73
|
+
readOnly?: boolean | undefined;
|
|
74
|
+
presets?: DateRangePreset[] | undefined;
|
|
75
|
+
adapterLocale?: string | undefined;
|
|
76
|
+
labels?: DateRangeLabels | undefined;
|
|
77
|
+
sx?: SxProps<Theme> | undefined;
|
|
78
78
|
}
|
|
79
79
|
declare function DateRangePicker({ value, onChange, minDate, maxDate, disablePast, disableFuture, disabled, readOnly, presets, adapterLocale, labels, sx, }: DateRangePickerProps): React.JSX.Element;
|
|
80
80
|
export default DateRangePicker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateRangePicker.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/components/DateRangePicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"DateRangePicker.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/components/DateRangePicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAI3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,IAAI,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACjC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,EAAE,IAAI,CAAC;IACX,EAAE,EAAE,IAAI,CAAC;CACV;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IACvC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACzD,OAAO,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,OAAO,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,OAAO,CAAC,EAAE,eAAe,EAAE,GAAG,SAAS,CAAC;IACxC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,MAAM,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACrC,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;CACjC;AAwFD,iBAAS,eAAe,CAAC,EACvB,KAAK,EACL,QAAQ,EACR,OAAO,EACP,OAAO,EACP,WAAmB,EACnB,aAAqB,EACrB,QAAgB,EAChB,QAAgB,EAChB,OAAO,EACP,aAAoB,EACpB,MAAM,EACN,EAAE,GACH,EAAE,oBAAoB,qBAkGtB;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -7,6 +7,7 @@ exports["default"] = void 0;
|
|
|
7
7
|
var React = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _Box = _interopRequireDefault(require("@mui/material/Box"));
|
|
9
9
|
var _DatePicker = _interopRequireDefault(require("./DatePicker"));
|
|
10
|
+
var _mergeLabels = require("../utils/mergeLabels");
|
|
10
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
12
13
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -176,7 +177,7 @@ function DateRangePicker(_ref) {
|
|
|
176
177
|
adapterLocale = _ref$adapterLocale === void 0 ? "fr" : _ref$adapterLocale,
|
|
177
178
|
labels = _ref.labels,
|
|
178
179
|
sx = _ref.sx;
|
|
179
|
-
var L =
|
|
180
|
+
var L = (0, _mergeLabels.mergeLabels)(DEFAULT_LABELS, labels);
|
|
180
181
|
var startDate = (_value$startDate = value === null || value === void 0 ? void 0 : value.startDate) !== null && _value$startDate !== void 0 ? _value$startDate : null;
|
|
181
182
|
var endDate = (_value$endDate = value === null || value === void 0 ? void 0 : value.endDate) !== null && _value$endDate !== void 0 ? _value$endDate : null;
|
|
182
183
|
var startInputId = React.useId();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateRangePicker.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_DatePicker","_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","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","toPrimitive","undefined","res","TypeError","Number","DEFAULT_LABELS","freeze","startLabel","endLabel","presetsAria","ROOT_SX","display","flexDirection","xs","sm","gap","PRESETS_GROUP_SX","flexWrap","minWidth","PICKERS_ROW_SX","flex","alignItems","FIELD_BLOCK_SX","FIELD_LABEL_SX","fontSize","fontWeight","color","marginBottom","SEPARATOR_SX","paddingBottom","transform","PRESET_BUTTON_SX","font","background","border","padding","borderRadius","cursor","textAlign","whiteSpace","minHeight","borderColor","outline","outlineOffset","opacity","DateRangePicker","_ref","_value$startDate","_value$endDate","onChange","minDate","maxDate","_ref$disablePast","disablePast","_ref$disableFuture","disableFuture","_ref$disabled","disabled","_ref$readOnly","readOnly","presets","_ref$adapterLocale","adapterLocale","labels","sx","L","startDate","endDate","startInputId","useId","endInputId","setStart","next","newEnd","setEnd","newStart","applyPreset","preset","from","to","endEffectiveMinDate","jsxs","children","jsx","role","map","p","_p$id","component","type","onClick","label","id","htmlFor","inputProps","_default","exports"],"sources":["../../../src/lib/v2/components/DateRangePicker.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport type { SxProps, Theme } from \"@mui/material/styles\";\r\nimport DatePicker from \"./DatePicker\";\r\n\r\n/**\r\n * DateRangePicker — Portnet UI v2\r\n *\r\n * Two DatePicker instances side-by-side with cross-validation and\r\n * optional preset shortcuts. Built without @mui/x-date-pickers-pro —\r\n * see commit message for rationale.\r\n *\r\n * <Field label=\"Période\">\r\n * <DateRangePicker\r\n * value={{ startDate: from, endDate: to }}\r\n * onChange={({ startDate, endDate }) => setRange({ from: startDate, to: endDate })}\r\n * presets={[\r\n * { label: \"Aujourd'hui\", from: today, to: today },\r\n * { label: \"7 derniers jours\", from: weekAgo, to: today },\r\n * { label: \"Ce mois\", from: monthStart, to: monthEnd },\r\n * ]}\r\n * />\r\n * </Field>\r\n *\r\n * Value contract:\r\n * - value: { startDate: Date|null, endDate: Date|null } | null\r\n * - onChange({ startDate, endDate }) — both fields always included.\r\n * - Invalid dates from inner pickers come through as null; the\r\n * range stays consistent.\r\n *\r\n * Cross-validation:\r\n * - Picking startDate > endDate clamps endDate to startDate.\r\n * - Picking endDate < startDate clamps startDate to endDate.\r\n * - The end picker's effective minDate is max(startDate, minDate\r\n * prop) so the calendar dialog itself prevents invalid selection.\r\n *\r\n * Presets:\r\n * - Host-supplied. Shape: { id?, label, from, to }.\r\n * - Clicking a preset fires onChange with the preset's range.\r\n * - Lib ships NO default presets (locale + business meaning vary).\r\n *\r\n * A11y:\r\n * - Each inner DatePicker carries its own label via React.useId\r\n * plumbed through inputProps.id + <label htmlFor>.\r\n * - The presets group is wrapped in role=\"group\" with an\r\n * aria-label so SR users hear \"Raccourcis\" before the buttons.\r\n *\r\n * Locale + i18n:\r\n * - adapterLocale forwards to BOTH inner pickers.\r\n * - labels.{startLabel, endLabel} override the FR defaults.\r\n * - presets.label is host-controlled, host owns translation.\r\n */\r\n\r\nexport interface DateRangeValue {\r\n startDate: Date | null;\r\n endDate: Date | null;\r\n}\r\n\r\nexport interface DateRangePreset {\r\n id?: string | number;\r\n label: React.ReactNode;\r\n from: Date;\r\n to: Date;\r\n}\r\n\r\nexport interface DateRangeLabels {\r\n startLabel?: React.ReactNode;\r\n endLabel?: React.ReactNode;\r\n presetsAria?: string;\r\n}\r\n\r\nexport interface DateRangePickerProps {\r\n value?: DateRangeValue | null;\r\n onChange?: (value: DateRangeValue) => void;\r\n minDate?: Date | null;\r\n maxDate?: Date | null;\r\n disablePast?: boolean;\r\n disableFuture?: boolean;\r\n disabled?: boolean;\r\n readOnly?: boolean;\r\n presets?: DateRangePreset[];\r\n adapterLocale?: string;\r\n labels?: DateRangeLabels;\r\n sx?: SxProps<Theme>;\r\n}\r\n\r\nconst DEFAULT_LABELS = Object.freeze({\r\n startLabel: \"Du\",\r\n endLabel: \"Au\",\r\n presetsAria: \"Raccourcis\",\r\n});\r\n\r\n// Hoisted sx for visible elements that don't depend on props. The\r\n// preset button sx is hoisted too — same emotion-cache rationale as\r\n// Batch 14 D5.\r\nconst ROOT_SX = Object.freeze({\r\n display: \"flex\",\r\n flexDirection: { xs: \"column\", sm: \"row\" },\r\n gap: \"var(--s-3)\",\r\n} satisfies SxProps<Theme>);\r\n\r\nconst PRESETS_GROUP_SX = Object.freeze({\r\n display: \"flex\",\r\n flexDirection: { xs: \"row\", sm: \"column\" },\r\n gap: \"var(--s-1)\",\r\n flexWrap: \"wrap\",\r\n minWidth: { sm: 140 },\r\n} satisfies SxProps<Theme>);\r\n\r\nconst PICKERS_ROW_SX = Object.freeze({\r\n display: \"flex\",\r\n flexDirection: { xs: \"column\", sm: \"row\" },\r\n gap: \"var(--s-2)\",\r\n flex: 1,\r\n alignItems: { sm: \"flex-end\" },\r\n} satisfies SxProps<Theme>);\r\n\r\nconst FIELD_BLOCK_SX = Object.freeze({\r\n flex: 1,\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n} satisfies SxProps<Theme>);\r\n\r\nconst FIELD_LABEL_SX = Object.freeze({\r\n fontSize: \"var(--text-xs)\",\r\n fontWeight: \"var(--fw-medium)\",\r\n color: \"var(--fg-muted)\",\r\n display: \"block\",\r\n marginBottom: \"var(--s-1)\",\r\n} satisfies SxProps<Theme>);\r\n\r\n// Visual range separator. transform: scaleX(...) flips on [dir=\"rtl\"]\r\n// via --pui-rtl-flip (declared in base.css). Hidden from SR — the\r\n// labels Du / Au already convey the relationship.\r\nconst SEPARATOR_SX = Object.freeze({\r\n flex: \"0 0 auto\",\r\n color: \"var(--fg-muted)\",\r\n fontSize: \"var(--text-sm)\",\r\n // align with the inputs (which sit at the bottom of FIELD_BLOCK_SX\r\n // because the label is above them in the same column).\r\n paddingBottom: \"var(--s-2)\",\r\n transform: \"scaleX(var(--pui-rtl-flip, 1))\",\r\n} satisfies SxProps<Theme>);\r\n\r\nconst PRESET_BUTTON_SX = Object.freeze({\r\n font: \"inherit\",\r\n background: \"transparent\",\r\n border: \"1px solid var(--border)\",\r\n color: \"var(--fg)\",\r\n padding: \"var(--s-1) var(--s-3)\",\r\n borderRadius: \"var(--r-sm)\",\r\n fontSize: \"var(--text-xs)\",\r\n fontWeight: \"var(--fw-medium)\",\r\n cursor: \"pointer\",\r\n textAlign: \"start\", // RTL-safe equivalent of \"left\"\r\n whiteSpace: \"nowrap\",\r\n minHeight: \"var(--tactile-min)\",\r\n \"&:hover:not(:disabled)\": {\r\n background: \"var(--bg-hover)\",\r\n borderColor: \"var(--accent)\",\r\n color: \"var(--accent)\",\r\n },\r\n \"&:focus-visible\": {\r\n outline: \"2px solid var(--accent)\",\r\n outlineOffset: \"var(--pui-outline-offset)\",\r\n },\r\n \"&:disabled\": {\r\n opacity: 0.5,\r\n cursor: \"not-allowed\",\r\n },\r\n} satisfies SxProps<Theme>);\r\n\r\nfunction DateRangePicker({\r\n value,\r\n onChange,\r\n minDate,\r\n maxDate,\r\n disablePast = false,\r\n disableFuture = false,\r\n disabled = false,\r\n readOnly = false,\r\n presets,\r\n adapterLocale = \"fr\",\r\n labels,\r\n sx,\r\n}: DateRangePickerProps) {\r\n const L = labels ? { ...DEFAULT_LABELS, ...labels } : DEFAULT_LABELS;\r\n const startDate = value?.startDate ?? null;\r\n const endDate = value?.endDate ?? null;\r\n\r\n const startInputId = React.useId();\r\n const endInputId = React.useId();\r\n\r\n const setStart = (next: Date | null) => {\r\n if (!onChange) return;\r\n let newEnd = endDate;\r\n // Cross-validation: clamp end UP if the new start exceeds it.\r\n if (next && endDate && next > endDate) newEnd = next;\r\n onChange({ startDate: next, endDate: newEnd });\r\n };\r\n\r\n const setEnd = (next: Date | null) => {\r\n if (!onChange) return;\r\n let newStart = startDate;\r\n // Cross-validation: clamp start DOWN if the new end precedes it.\r\n if (next && startDate && next < startDate) newStart = next;\r\n onChange({ startDate: newStart, endDate: next });\r\n };\r\n\r\n const applyPreset = (preset: DateRangePreset) => {\r\n if (!onChange) return;\r\n onChange({ startDate: preset.from, endDate: preset.to });\r\n };\r\n\r\n // The end picker's effective minDate is max(startDate, props.minDate).\r\n // Computing it here means the calendar dialog itself disables dates\r\n // before the start — the cross-validation in setEnd is the fallback\r\n // for direct text-typing.\r\n const endEffectiveMinDate =\r\n startDate && minDate\r\n ? (startDate > minDate ? startDate : minDate)\r\n : (startDate || minDate);\r\n\r\n return (\r\n <Box sx={sx ? { ...ROOT_SX, ...sx } : ROOT_SX}>\r\n {presets && presets.length > 0 && (\r\n <Box role=\"group\" aria-label={L.presetsAria} sx={PRESETS_GROUP_SX}>\r\n {presets.map((p, i) => (\r\n <Box\r\n component=\"button\"\r\n type=\"button\"\r\n key={p.id ?? i}\r\n onClick={() => applyPreset(p)}\r\n disabled={disabled || readOnly}\r\n sx={PRESET_BUTTON_SX}\r\n >\r\n {p.label}\r\n </Box>\r\n ))}\r\n </Box>\r\n )}\r\n\r\n <Box sx={PICKERS_ROW_SX}>\r\n <Box sx={FIELD_BLOCK_SX}>\r\n <Box component=\"label\" htmlFor={startInputId} sx={FIELD_LABEL_SX}>\r\n {L.startLabel}\r\n </Box>\r\n <DatePicker\r\n value={startDate}\r\n onChange={setStart}\r\n {...(minDate != null ? { minDate } : {})}\r\n {...(maxDate != null ? { maxDate } : {})}\r\n disablePast={disablePast}\r\n disableFuture={disableFuture}\r\n disabled={disabled}\r\n readOnly={readOnly}\r\n adapterLocale={adapterLocale}\r\n inputProps={{ id: startInputId }}\r\n />\r\n </Box>\r\n\r\n <Box aria-hidden=\"true\" sx={SEPARATOR_SX}>→</Box>\r\n\r\n <Box sx={FIELD_BLOCK_SX}>\r\n <Box component=\"label\" htmlFor={endInputId} sx={FIELD_LABEL_SX}>\r\n {L.endLabel}\r\n </Box>\r\n <DatePicker\r\n value={endDate}\r\n onChange={setEnd}\r\n {...(endEffectiveMinDate != null ? { minDate: endEffectiveMinDate } : {})}\r\n {...(maxDate != null ? { maxDate } : {})}\r\n disablePast={disablePast}\r\n disableFuture={disableFuture}\r\n disabled={disabled}\r\n readOnly={readOnly}\r\n adapterLocale={adapterLocale}\r\n inputProps={{ id: endInputId }}\r\n />\r\n </Box>\r\n </Box>\r\n </Box>\r\n );\r\n}\r\n\r\nexport default DateRangePicker;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"DateRangePicker.js","names":["React","_interopRequireWildcard","require","_Box","_interopRequireDefault","_DatePicker","_mergeLabels","_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","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","toPrimitive","undefined","res","TypeError","Number","DEFAULT_LABELS","freeze","startLabel","endLabel","presetsAria","ROOT_SX","display","flexDirection","xs","sm","gap","PRESETS_GROUP_SX","flexWrap","minWidth","PICKERS_ROW_SX","flex","alignItems","FIELD_BLOCK_SX","FIELD_LABEL_SX","fontSize","fontWeight","color","marginBottom","SEPARATOR_SX","paddingBottom","transform","PRESET_BUTTON_SX","font","background","border","padding","borderRadius","cursor","textAlign","whiteSpace","minHeight","borderColor","outline","outlineOffset","opacity","DateRangePicker","_ref","_value$startDate","_value$endDate","onChange","minDate","maxDate","_ref$disablePast","disablePast","_ref$disableFuture","disableFuture","_ref$disabled","disabled","_ref$readOnly","readOnly","presets","_ref$adapterLocale","adapterLocale","labels","sx","L","mergeLabels","startDate","endDate","startInputId","useId","endInputId","setStart","next","newEnd","setEnd","newStart","applyPreset","preset","from","to","endEffectiveMinDate","jsxs","children","jsx","role","map","p","_p$id","component","type","onClick","label","id","htmlFor","inputProps","_default","exports"],"sources":["../../../src/lib/v2/components/DateRangePicker.tsx"],"sourcesContent":["import * as React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport type { SxProps, Theme } from \"@mui/material/styles\";\r\nimport DatePicker from \"./DatePicker\";\r\nimport { mergeLabels } from \"../utils/mergeLabels\";\r\n\r\n/**\r\n * DateRangePicker — Portnet UI v2\r\n *\r\n * Two DatePicker instances side-by-side with cross-validation and\r\n * optional preset shortcuts. Built without @mui/x-date-pickers-pro —\r\n * see commit message for rationale.\r\n *\r\n * <Field label=\"Période\">\r\n * <DateRangePicker\r\n * value={{ startDate: from, endDate: to }}\r\n * onChange={({ startDate, endDate }) => setRange({ from: startDate, to: endDate })}\r\n * presets={[\r\n * { label: \"Aujourd'hui\", from: today, to: today },\r\n * { label: \"7 derniers jours\", from: weekAgo, to: today },\r\n * { label: \"Ce mois\", from: monthStart, to: monthEnd },\r\n * ]}\r\n * />\r\n * </Field>\r\n *\r\n * Value contract:\r\n * - value: { startDate: Date|null, endDate: Date|null } | null\r\n * - onChange({ startDate, endDate }) — both fields always included.\r\n * - Invalid dates from inner pickers come through as null; the\r\n * range stays consistent.\r\n *\r\n * Cross-validation:\r\n * - Picking startDate > endDate clamps endDate to startDate.\r\n * - Picking endDate < startDate clamps startDate to endDate.\r\n * - The end picker's effective minDate is max(startDate, minDate\r\n * prop) so the calendar dialog itself prevents invalid selection.\r\n *\r\n * Presets:\r\n * - Host-supplied. Shape: { id?, label, from, to }.\r\n * - Clicking a preset fires onChange with the preset's range.\r\n * - Lib ships NO default presets (locale + business meaning vary).\r\n *\r\n * A11y:\r\n * - Each inner DatePicker carries its own label via React.useId\r\n * plumbed through inputProps.id + <label htmlFor>.\r\n * - The presets group is wrapped in role=\"group\" with an\r\n * aria-label so SR users hear \"Raccourcis\" before the buttons.\r\n *\r\n * Locale + i18n:\r\n * - adapterLocale forwards to BOTH inner pickers.\r\n * - labels.{startLabel, endLabel} override the FR defaults.\r\n * - presets.label is host-controlled, host owns translation.\r\n */\r\n\r\nexport interface DateRangeValue {\r\n startDate: Date | null;\r\n endDate: Date | null;\r\n}\r\n\r\nexport interface DateRangePreset {\r\n id?: string | number | undefined;\r\n label: React.ReactNode;\r\n from: Date;\r\n to: Date;\r\n}\r\n\r\nexport interface DateRangeLabels {\r\n startLabel?: React.ReactNode | undefined;\r\n endLabel?: React.ReactNode | undefined;\r\n presetsAria?: string | undefined;\r\n}\r\n\r\nexport interface DateRangePickerProps {\r\n value?: DateRangeValue | null | undefined;\r\n onChange?: ((value: DateRangeValue) => void) | undefined;\r\n minDate?: Date | null | undefined;\r\n maxDate?: Date | null | undefined;\r\n disablePast?: boolean | undefined;\r\n disableFuture?: boolean | undefined;\r\n disabled?: boolean | undefined;\r\n readOnly?: boolean | undefined;\r\n presets?: DateRangePreset[] | undefined;\r\n adapterLocale?: string | undefined;\r\n labels?: DateRangeLabels | undefined;\r\n sx?: SxProps<Theme> | undefined;\r\n}\r\n\r\nconst DEFAULT_LABELS = Object.freeze({\r\n startLabel: \"Du\",\r\n endLabel: \"Au\",\r\n presetsAria: \"Raccourcis\",\r\n});\r\n\r\n// Hoisted sx for visible elements that don't depend on props. The\r\n// preset button sx is hoisted too — same emotion-cache rationale as\r\n// Batch 14 D5.\r\nconst ROOT_SX = Object.freeze({\r\n display: \"flex\",\r\n flexDirection: { xs: \"column\", sm: \"row\" },\r\n gap: \"var(--s-3)\",\r\n} satisfies SxProps<Theme>);\r\n\r\nconst PRESETS_GROUP_SX = Object.freeze({\r\n display: \"flex\",\r\n flexDirection: { xs: \"row\", sm: \"column\" },\r\n gap: \"var(--s-1)\",\r\n flexWrap: \"wrap\",\r\n minWidth: { sm: 140 },\r\n} satisfies SxProps<Theme>);\r\n\r\nconst PICKERS_ROW_SX = Object.freeze({\r\n display: \"flex\",\r\n flexDirection: { xs: \"column\", sm: \"row\" },\r\n gap: \"var(--s-2)\",\r\n flex: 1,\r\n alignItems: { sm: \"flex-end\" },\r\n} satisfies SxProps<Theme>);\r\n\r\nconst FIELD_BLOCK_SX = Object.freeze({\r\n flex: 1,\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n} satisfies SxProps<Theme>);\r\n\r\nconst FIELD_LABEL_SX = Object.freeze({\r\n fontSize: \"var(--text-xs)\",\r\n fontWeight: \"var(--fw-medium)\",\r\n color: \"var(--fg-muted)\",\r\n display: \"block\",\r\n marginBottom: \"var(--s-1)\",\r\n} satisfies SxProps<Theme>);\r\n\r\n// Visual range separator. transform: scaleX(...) flips on [dir=\"rtl\"]\r\n// via --pui-rtl-flip (declared in base.css). Hidden from SR — the\r\n// labels Du / Au already convey the relationship.\r\nconst SEPARATOR_SX = Object.freeze({\r\n flex: \"0 0 auto\",\r\n color: \"var(--fg-muted)\",\r\n fontSize: \"var(--text-sm)\",\r\n // align with the inputs (which sit at the bottom of FIELD_BLOCK_SX\r\n // because the label is above them in the same column).\r\n paddingBottom: \"var(--s-2)\",\r\n transform: \"scaleX(var(--pui-rtl-flip, 1))\",\r\n} satisfies SxProps<Theme>);\r\n\r\nconst PRESET_BUTTON_SX = Object.freeze({\r\n font: \"inherit\",\r\n background: \"transparent\",\r\n border: \"1px solid var(--border)\",\r\n color: \"var(--fg)\",\r\n padding: \"var(--s-1) var(--s-3)\",\r\n borderRadius: \"var(--r-sm)\",\r\n fontSize: \"var(--text-xs)\",\r\n fontWeight: \"var(--fw-medium)\",\r\n cursor: \"pointer\",\r\n textAlign: \"start\", // RTL-safe equivalent of \"left\"\r\n whiteSpace: \"nowrap\",\r\n minHeight: \"var(--tactile-min)\",\r\n \"&:hover:not(:disabled)\": {\r\n background: \"var(--bg-hover)\",\r\n borderColor: \"var(--accent)\",\r\n color: \"var(--accent)\",\r\n },\r\n \"&:focus-visible\": {\r\n outline: \"2px solid var(--accent)\",\r\n outlineOffset: \"var(--pui-outline-offset)\",\r\n },\r\n \"&:disabled\": {\r\n opacity: 0.5,\r\n cursor: \"not-allowed\",\r\n },\r\n} satisfies SxProps<Theme>);\r\n\r\nfunction DateRangePicker({\r\n value,\r\n onChange,\r\n minDate,\r\n maxDate,\r\n disablePast = false,\r\n disableFuture = false,\r\n disabled = false,\r\n readOnly = false,\r\n presets,\r\n adapterLocale = \"fr\",\r\n labels,\r\n sx,\r\n}: DateRangePickerProps) {\r\n const L = mergeLabels(DEFAULT_LABELS, labels);\r\n const startDate = value?.startDate ?? null;\r\n const endDate = value?.endDate ?? null;\r\n\r\n const startInputId = React.useId();\r\n const endInputId = React.useId();\r\n\r\n const setStart = (next: Date | null) => {\r\n if (!onChange) return;\r\n let newEnd = endDate;\r\n // Cross-validation: clamp end UP if the new start exceeds it.\r\n if (next && endDate && next > endDate) newEnd = next;\r\n onChange({ startDate: next, endDate: newEnd });\r\n };\r\n\r\n const setEnd = (next: Date | null) => {\r\n if (!onChange) return;\r\n let newStart = startDate;\r\n // Cross-validation: clamp start DOWN if the new end precedes it.\r\n if (next && startDate && next < startDate) newStart = next;\r\n onChange({ startDate: newStart, endDate: next });\r\n };\r\n\r\n const applyPreset = (preset: DateRangePreset) => {\r\n if (!onChange) return;\r\n onChange({ startDate: preset.from, endDate: preset.to });\r\n };\r\n\r\n // The end picker's effective minDate is max(startDate, props.minDate).\r\n // Computing it here means the calendar dialog itself disables dates\r\n // before the start — the cross-validation in setEnd is the fallback\r\n // for direct text-typing.\r\n const endEffectiveMinDate =\r\n startDate && minDate\r\n ? (startDate > minDate ? startDate : minDate)\r\n : (startDate || minDate);\r\n\r\n return (\r\n <Box sx={sx ? { ...ROOT_SX, ...sx } : ROOT_SX}>\r\n {presets && presets.length > 0 && (\r\n <Box role=\"group\" aria-label={L.presetsAria} sx={PRESETS_GROUP_SX}>\r\n {presets.map((p, i) => (\r\n <Box\r\n component=\"button\"\r\n type=\"button\"\r\n key={p.id ?? i}\r\n onClick={() => applyPreset(p)}\r\n disabled={disabled || readOnly}\r\n sx={PRESET_BUTTON_SX}\r\n >\r\n {p.label}\r\n </Box>\r\n ))}\r\n </Box>\r\n )}\r\n\r\n <Box sx={PICKERS_ROW_SX}>\r\n <Box sx={FIELD_BLOCK_SX}>\r\n <Box component=\"label\" htmlFor={startInputId} sx={FIELD_LABEL_SX}>\r\n {L.startLabel}\r\n </Box>\r\n <DatePicker\r\n value={startDate}\r\n onChange={setStart}\r\n {...(minDate != null ? { minDate } : {})}\r\n {...(maxDate != null ? { maxDate } : {})}\r\n disablePast={disablePast}\r\n disableFuture={disableFuture}\r\n disabled={disabled}\r\n readOnly={readOnly}\r\n adapterLocale={adapterLocale}\r\n inputProps={{ id: startInputId }}\r\n />\r\n </Box>\r\n\r\n <Box aria-hidden=\"true\" sx={SEPARATOR_SX}>→</Box>\r\n\r\n <Box sx={FIELD_BLOCK_SX}>\r\n <Box component=\"label\" htmlFor={endInputId} sx={FIELD_LABEL_SX}>\r\n {L.endLabel}\r\n </Box>\r\n <DatePicker\r\n value={endDate}\r\n onChange={setEnd}\r\n {...(endEffectiveMinDate != null ? { minDate: endEffectiveMinDate } : {})}\r\n {...(maxDate != null ? { maxDate } : {})}\r\n disablePast={disablePast}\r\n disableFuture={disableFuture}\r\n disabled={disabled}\r\n readOnly={readOnly}\r\n adapterLocale={adapterLocale}\r\n inputProps={{ id: endInputId }}\r\n />\r\n </Box>\r\n </Box>\r\n </Box>\r\n );\r\n}\r\n\r\nexport default DateRangePicker;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,17 +3,17 @@ import type { DateTimePickerProps as MuiDateTimePickerProps } from "@mui/x-date-
|
|
|
3
3
|
import "moment/locale/fr";
|
|
4
4
|
import type { SxProps, Theme } from "@mui/material/styles";
|
|
5
5
|
export interface DateTimePickerProps extends Omit<MuiDateTimePickerProps, "value" | "onChange" | "minDate" | "maxDate" | "slots" | "slotProps" | "sx" | "ref"> {
|
|
6
|
-
value?: Date | null;
|
|
7
|
-
onChange?: (value: Date | null) => void;
|
|
8
|
-
onBlur?: React.FocusEventHandler<HTMLInputElement | HTMLTextAreaElement
|
|
9
|
-
minDate?: Date | null;
|
|
10
|
-
maxDate?: Date | null;
|
|
11
|
-
error?: boolean;
|
|
12
|
-
placeholder?: string;
|
|
13
|
-
fullWidth?: boolean;
|
|
14
|
-
inputProps?: React.InputHTMLAttributes<HTMLInputElement
|
|
15
|
-
adapterLocale?: string;
|
|
16
|
-
sx?: SxProps<Theme
|
|
6
|
+
value?: Date | null | undefined;
|
|
7
|
+
onChange?: ((value: Date | null) => void) | undefined;
|
|
8
|
+
onBlur?: React.FocusEventHandler<HTMLInputElement | HTMLTextAreaElement> | undefined;
|
|
9
|
+
minDate?: Date | null | undefined;
|
|
10
|
+
maxDate?: Date | null | undefined;
|
|
11
|
+
error?: boolean | undefined;
|
|
12
|
+
placeholder?: string | undefined;
|
|
13
|
+
fullWidth?: boolean | undefined;
|
|
14
|
+
inputProps?: React.InputHTMLAttributes<HTMLInputElement> | undefined;
|
|
15
|
+
adapterLocale?: string | undefined;
|
|
16
|
+
sx?: SxProps<Theme> | undefined;
|
|
17
17
|
}
|
|
18
18
|
declare const DateTimePicker: React.ForwardRefExoticComponent<DateTimePickerProps & React.RefAttributes<HTMLDivElement>>;
|
|
19
19
|
export declare const DATETIME_FORMAT_CHARTER = "YYYY-MM-DD HH:mm";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimePicker.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/components/DateTimePicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,mBAAmB,IAAI,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAGxG,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"DateTimePicker.d.ts","sourceRoot":"","sources":["../../../src/lib/v2/components/DateTimePicker.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,mBAAmB,IAAI,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAGxG,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAwF3D,MAAM,WAAW,mBACf,SAAQ,IAAI,CACV,sBAAsB,EACtB,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,IAAI,GAAG,KAAK,CACpF;IACD,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAChC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACtD,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,GAAG,SAAS,CAAC;IACrF,OAAO,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,OAAO,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC,UAAU,CAAC,EAAE,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC;IACrE,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;CACjC;AAED,QAAA,MAAM,cAAc,4FAgIlB,CAAC;AAEH,eAAO,MAAM,uBAAuB,qBAAiB,CAAC;AAEtD,eAAe,cAAc,CAAC"}
|
|
@@ -51,10 +51,43 @@ var _excluded = ["value", "onChange", "onBlur", "minDate", "maxDate", "disablePa
|
|
|
51
51
|
* the picker dialog also lets the user choose hours/minutes within
|
|
52
52
|
* the resulting day.
|
|
53
53
|
*
|
|
54
|
-
* A11y (DP-1):
|
|
55
|
-
* aria-
|
|
56
|
-
*
|
|
57
|
-
*
|
|
54
|
+
* A11y (DP-1) : when used inside <Field> the injected id + aria-describedby /
|
|
55
|
+
* aria-invalid / aria-required are intercepted and routed onto the field
|
|
56
|
+
* <input> via slotProps.htmlInput (MUI X does not forward top-level aria/id to
|
|
57
|
+
* the input). Explicit `inputProps` still win.
|
|
58
|
+
*
|
|
59
|
+
* ── KNOWN A11Y DEFECT, NOT FIXED HERE (opened as G-F, deferred) ────
|
|
60
|
+
*
|
|
61
|
+
* DP-1's routing lands on the value <input>, and MUI X v9 marks that input
|
|
62
|
+
* `aria-hidden="true"`. The visible field is a `role="group"` of one
|
|
63
|
+
* `role="spinbutton"` per section (Year, Month, Day, Hours, Minutes).
|
|
64
|
+
*
|
|
65
|
+
* So all four association attributes are INERT, on every date field of the
|
|
66
|
+
* platform, and none of it is visible on screen:
|
|
67
|
+
* — the `<label htmlFor>` names nothing: a screen reader announces « Year »,
|
|
68
|
+
* « Month », « Hours » without ever saying of WHAT (R-I.1) ;
|
|
69
|
+
* — a hint or an error message rendered by Field is never announced
|
|
70
|
+
* (R-I.3, R-4.1) ;
|
|
71
|
+
* — a required field does not report itself as required (R-I.2).
|
|
72
|
+
*
|
|
73
|
+
* Found while writing the tests for gap G-E: the DOM dump showed `role="group"`
|
|
74
|
+
* with `Name ""` beside a correctly wired `<label for>`.
|
|
75
|
+
*
|
|
76
|
+
* TWO ATTEMPTS FAILED, and both are worth recording so the next person does
|
|
77
|
+
* not repeat them:
|
|
78
|
+
* 1. routing the attrs through `slotProps.textField.InputProps` — accepted
|
|
79
|
+
* by the types, lands nowhere. `InputProps` is not the v9 anchor for the
|
|
80
|
+
* group element.
|
|
81
|
+
* 2. switching the Formik bridge to `Field`'s `group` mode — `Field` does
|
|
82
|
+
* emit `aria-labelledby` (verified in its source), but with (1) failing
|
|
83
|
+
* nothing carries it to the group, AND group mode drops the `<label
|
|
84
|
+
* for>`, so the label-click-to-focus is lost for no gain. A net
|
|
85
|
+
* regression.
|
|
86
|
+
*
|
|
87
|
+
* The fix needs the real v9 anchor for the `PickersInputBase` root, and it
|
|
88
|
+
* touches DatePicker AND DateTimePicker, hence every date field in the
|
|
89
|
+
* portfolio. It belongs to a pass with time to investigate the slot chain —
|
|
90
|
+
* Batch 10 (accessibility certification), not a side effect of G-E.
|
|
58
91
|
*
|
|
59
92
|
* MUI X v9 surface notes (migrated from v5 in Batch 4):
|
|
60
93
|
* See DatePicker.tsx for the same rationale — renderInput +
|