@cnamts/synapse 1.0.19 → 1.0.21
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/dist/{DateFilter-CeVuSfJ9.js → DateFilter-uN8OURoP.js} +1 -1
- package/dist/{NumberFilter-C8PAu_sw.js → NumberFilter-sm1dQNQi.js} +1 -1
- package/dist/{PeriodFilter-UMUaxx3d.js → PeriodFilter-Cklsxnh9.js} +1 -1
- package/dist/{SelectFilter-CqZl8CYt.js → SelectFilter-CWefj27Z.js} +1 -1
- package/dist/{TextFilter-D_RhhNOh.js → TextFilter-Ddyj885L.js} +1 -1
- package/dist/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.d.ts +4 -4
- package/dist/components/Amelipro/AmeliproClickableTile/AmeliproClickableTile.d.ts +17 -7
- package/dist/components/Amelipro/AmeliproSelect/AmeliproSelect.d.ts +4 -4
- package/dist/components/Amelipro/AmeliproTabs/AmeliproTabs.d.ts +4 -4
- package/dist/components/Customs/Selects/SyAutocomplete/SyAutocomplete.d.ts +2416 -0
- package/dist/components/Customs/Selects/SyAutocomplete/types.d.ts +5 -0
- package/dist/components/Customs/Selects/SyAutocomplete/utils/ariaManager.d.ts +14 -0
- package/dist/components/Customs/Selects/SyAutocomplete/utils/useItemUtils.d.ts +16 -0
- package/dist/components/Customs/Selects/SyAutocomplete/utils/useKeyboardHandler.d.ts +28 -0
- package/dist/components/Customs/Selects/SyAutocomplete/utils/useSelectionLogic.d.ts +12 -0
- package/dist/components/Customs/Selects/SySelect/composables/useSySelectKeyboard.d.ts +2 -0
- package/dist/components/Customs/SyCheckBoxGroup/SyCheckBoxGroup.d.ts +160 -0
- package/dist/components/Customs/SyCheckBoxGroup/locales.d.ts +3 -0
- package/dist/components/Customs/SyCheckBoxGroup/types.d.ts +10 -0
- package/dist/components/Customs/SyCheckbox/SyCheckbox.d.ts +1545 -2
- package/dist/components/Customs/SyIcon/SyIcon.d.ts +2 -1
- package/dist/components/Customs/SyRadioGroup/SyRadioGroup.d.ts +1495 -2
- package/dist/components/DatePicker/composables/useDateSelection.d.ts +1 -0
- package/dist/components/DeclarationAccessibilityPage/DeclarationAccessibilityPage.d.ts +60 -0
- package/dist/components/ErrorPage/ErrorPage.d.ts +1 -12
- package/dist/components/ErrorPage/locales.d.ts +18 -3
- package/dist/components/FileUpload/FileUpload.d.ts +2 -0
- package/dist/components/MaintenancePage/locales.d.ts +18 -2
- package/dist/components/NotFoundPage/locales.d.ts +20 -4
- package/dist/components/PaginatedTable/PaginatedTable.d.ts +1 -1
- package/dist/components/PaginatedTable/Pagination.d.ts +17 -0
- package/dist/components/StatusPage/StatusPage.d.ts +39 -0
- package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +5 -5
- package/dist/components/Tables/SyTable/SyTable.d.ts +5 -5
- package/dist/components/UploadWorkflow/UploadWorkflow.d.ts +13 -3
- package/dist/components/index.d.ts +4 -0
- package/dist/components/types.d.ts +15 -0
- package/dist/composables/useFormFieldErrorHandling.d.ts +31 -0
- package/dist/design-system-v3.js +126 -122
- package/dist/design-system-v3.umd.cjs +325 -314
- package/dist/{main-B39UVv5p.js → main-CWniLr0s.js} +15837 -14587
- package/dist/modules.d.ts +6 -0
- package/dist/style.css +1 -1
- package/dist/utils/theme/index.d.ts +6 -0
- package/package.json +12 -10
- package/src/assets/amelipro/icons.ts +166 -153
- package/src/components/Accordion/Accordion.mdx +4 -1
- package/src/components/Accordion/{Accessibilite/AccessibilityGuide.mdx → accessibilite/Accessibility.mdx} +2 -2
- package/src/components/Amelipro/AmeliproClickableTile/AmeliproClickableTile.stories.ts +73 -14
- package/src/components/Amelipro/AmeliproClickableTile/AmeliproClickableTile.vue +119 -27
- package/src/components/Amelipro/AmeliproClickableTile/tests/AmeliproClickableTile.a11y.spec.ts +304 -0
- package/src/components/Amelipro/AmeliproClickableTile/tests/AmeliproClickableTile.spec.ts +435 -9
- package/src/components/Amelipro/AmeliproClickableTile/tests/__snapshots__/AmeliproClickableTile.spec.ts.snap +60 -0
- package/src/components/Amelipro/AmeliproIcon/__tests__/AmeliproIcon.spec.ts +1 -1
- package/src/components/Amelipro/AmeliproIcon/iconList.ts +2 -0
- package/src/components/BackBtn/BackBtn.vue +5 -4
- package/src/components/BackBtn/accessibilite/Accessibility.mdx +15 -0
- package/src/components/BackToTopBtn/BackToTopBtn.vue +6 -3
- package/src/components/BackToTopBtn/accessibilite/Accessibility.mdx +15 -0
- package/src/components/Captcha/Captcha.vue +5 -1
- package/src/components/Captcha/CaptchaAlert.vue +9 -7
- package/src/components/Captcha/accessibilite/Accessibility.mdx +10 -0
- package/src/components/ChipList/accessibilite/Accessibility.mdx +15 -0
- package/src/components/CollapsibleList/{Accessibilite.mdx → accessibilite/Accessibility.mdx} +8 -6
- package/src/components/Common/IconSlot/IconSlot.vue +1 -1
- package/src/components/ContextualMenu/ContextualMenu.stories.ts +0 -3
- package/src/components/ContextualMenu/accessibilite/Accessibility.mdx +71 -0
- package/src/components/CookieBanner/CookieBanner.stories.ts +11 -20
- package/src/components/CookieBanner/CookieBanner.vue +20 -5
- package/src/components/CookieBanner/accessibilite/Accessibility.mdx +71 -0
- package/src/components/CookieBanner/tests/CookieBanner.spec.ts +48 -4
- package/src/components/CookiesSelection/CookiesInformation/CookiesInformation.vue +5 -4
- package/src/components/CopyBtn/CopyBtn.vue +6 -3
- package/src/components/CopyBtn/accessibilite/Accessibility.mdx +15 -0
- package/src/components/Customs/Selects/SelectBtnField/accessibilite/Accessibility.mdx +15 -0
- package/src/components/Customs/Selects/SelectOverview.mdx +112 -1
- package/src/components/Customs/Selects/SyAutocomplete/SyAutocomplete.mdx +52 -0
- package/src/components/Customs/Selects/SyAutocomplete/SyAutocomplete.stories.ts +979 -0
- package/src/components/Customs/Selects/SyAutocomplete/SyAutocomplete.vue +653 -0
- package/src/components/Customs/Selects/{SySelect → SyAutocomplete/accessibilite}/Accessibilite.stories.ts +7 -38
- package/src/components/Customs/Selects/{SySelect/Accessibilite.mdx → SyAutocomplete/accessibilite/Accessibility.mdx} +15 -20
- package/src/components/Customs/Selects/SyAutocomplete/tests/SyAutocomplete.a11y.spec.ts +72 -0
- package/src/components/Customs/Selects/SyAutocomplete/tests/SyAutocomplete.spec.ts +345 -0
- package/src/components/Customs/Selects/SyAutocomplete/types.ts +7 -0
- package/src/components/Customs/Selects/SyAutocomplete/utils/ariaManager.ts +180 -0
- package/src/components/Customs/Selects/SyAutocomplete/utils/useItemUtils.ts +46 -0
- package/src/components/Customs/Selects/SyAutocomplete/utils/useKeyboardHandler.ts +107 -0
- package/src/components/Customs/Selects/SyAutocomplete/utils/useSelectionLogic.ts +74 -0
- package/src/components/Customs/Selects/SyInputSelect/SyInputSelect.vue +13 -9
- package/src/components/Customs/Selects/SyInputSelect/accessibilite/Accessibility.mdx +12 -0
- package/src/components/Customs/Selects/SySelect/SySelect.stories.ts +43 -34
- package/src/components/Customs/Selects/SySelect/SySelect.vue +19 -2
- package/src/components/Customs/Selects/SySelect/accessibilite/Accessibility.mdx +274 -0
- package/src/components/Customs/Selects/SySelect/composables/useSySelectKeyboard.ts +21 -16
- package/src/components/Customs/SyCheckBoxGroup/SyCheckBoxGroup.mdx +32 -0
- package/src/components/Customs/SyCheckBoxGroup/SyCheckBoxGroup.stories.ts +856 -0
- package/src/components/Customs/SyCheckBoxGroup/SyCheckBoxGroup.vue +334 -0
- package/src/components/Customs/SyCheckBoxGroup/accessibilite/Accessibility.mdx +243 -0
- package/src/components/Customs/SyCheckBoxGroup/locales.ts +3 -0
- package/src/components/Customs/SyCheckBoxGroup/tests/SyCheckBoxGroup.a11y.spec.ts +30 -0
- package/src/components/Customs/SyCheckBoxGroup/tests/SyCheckBoxGroup.spec.ts +152 -0
- package/src/components/Customs/SyCheckBoxGroup/types.ts +10 -0
- package/src/components/Customs/SyCheckbox/SyCheckbox.vue +16 -27
- package/src/components/Customs/SyCheckbox/{Accessibilite.mdx → accessibilite/Accessibility.mdx} +3 -3
- package/src/components/Customs/SyForm/SyForm.a11y.spec.ts +1 -1
- package/src/components/Customs/SyForm/accessibilite/Accessibility.mdx +10 -0
- package/src/components/Customs/SyIcon/SyIcon.mdx +4 -1
- package/src/components/Customs/SyIcon/SyIcon.vue +4 -3
- package/src/components/Customs/SyIcon/{Accessibilite.stories.ts → accessibilite/Accessibilite.stories.ts} +3 -3
- package/src/components/Customs/SyIcon/{Accessibilite.mdx → accessibilite/Accessibility.mdx} +2 -2
- package/src/components/Customs/SyPagination/SyPagination.mdx +4 -2
- package/src/components/Customs/SyPagination/accessibilite/Accessibility.mdx +10 -0
- package/src/components/Customs/SyRadioGroup/SyRadioGroup.vue +16 -43
- package/src/components/Customs/SyRadioGroup/{Accessibilite.mdx → accessibilite/Accessibility.mdx} +2 -2
- package/src/components/Customs/SyTabs/SyTabs.mdx +4 -2
- package/src/components/Customs/SyTabs/{Accessibilite.mdx → accessibilite/Accessibility.mdx} +2 -2
- package/src/components/Customs/SyTextField/SyTextField.mdx +1 -2
- package/src/components/Customs/SyTextField/SyTextField.vue +13 -0
- package/src/components/Customs/SyTextField/accessibilite/Accessibility.mdx +15 -0
- package/src/components/DataList/accessibilite/Accessibility.mdx +15 -0
- package/src/components/DataListGroup/accessibilite/Accessibility.mdx +14 -0
- package/src/components/DatePicker/Accessibilite.mdx +1 -1
- package/src/components/DatePicker/Accessibilite.stories.ts +1 -1
- package/src/components/DatePicker/CalendarMode/DatePicker.stories.ts +7 -4
- package/src/components/DatePicker/CalendarMode/DatePicker.vue +49 -13
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.stories.ts +43 -2
- package/src/components/DatePicker/DatePickerValidationExample/DatePickerValidation.stories.ts +297 -0
- package/src/components/DatePicker/DateTextInput/DateTextInput.vue +48 -21
- package/src/components/DatePicker/DateTextInput/NoCalendar.stories.ts +98 -0
- package/src/components/DatePicker/composables/useDateSelection.ts +5 -0
- package/src/components/DatePicker/docExamples/BidirectionalComplexValidation.vue +273 -0
- package/src/components/DatePicker/docExamples/DatePickerBidirectionalValidation.vue +4 -4
- package/src/components/DatePicker/docExamples/DatePickerValidationExamples.vue +10 -0
- package/src/components/DeclarationAccessibilityPage/DeclarationAccessibilityPage.mdx +83 -0
- package/src/components/DeclarationAccessibilityPage/DeclarationAccessibilityPage.stories.ts +502 -0
- package/src/components/DeclarationAccessibilityPage/DeclarationAccessibilityPage.vue +428 -0
- package/src/components/DeclarationAccessibilityPage/accessibilite/Accessibility.mdx +75 -0
- package/src/components/DeclarationAccessibilityPage/tests/DeclarationAccessibilityPage.a11y.spec.ts +53 -0
- package/src/components/DeclarationAccessibilityPage/tests/DeclarationAccessibilityPage.spec.ts +59 -0
- package/src/components/DiacriticPicker/DiacriticPicker.vue +20 -1
- package/src/components/DiacriticPicker/accessibilite/Accessibility.mdx +10 -0
- package/src/components/DialogBox/accessibilite/Accessibility.mdx +15 -0
- package/src/components/DownloadBtn/DownloadBtn.vue +5 -4
- package/src/components/DownloadBtn/accessibilite/Accessibility.mdx +15 -0
- package/src/components/ErrorPage/ErrorPage.mdx +6 -16
- package/src/components/ErrorPage/ErrorPage.stories.ts +16 -87
- package/src/components/ErrorPage/ErrorPage.vue +38 -125
- package/src/components/ErrorPage/accessibilite/Accessibility.mdx +77 -0
- package/src/components/ErrorPage/assets/error-ap.svg +1774 -0
- package/src/components/ErrorPage/locales.ts +21 -3
- package/src/components/ErrorPage/tests/ErrorPage.a11y.spec.ts +5 -13
- package/src/components/ErrorPage/tests/ErrorPage.spec.ts +2 -41
- package/src/components/ErrorPage/tests/__snapshots__/ErrorPage.spec.ts.snap +8 -266
- package/src/components/ExternalLinks/accessibilite/Accessibility.mdx +15 -0
- package/src/components/FileList/UploadItem/UploadItem.vue +25 -20
- package/src/components/FileList/accessibilite/Accessibility.mdx +12 -0
- package/src/components/FilePreview/accessibilite/Accessibility.mdx +12 -0
- package/src/components/FileUpload/FileUpload.vue +5 -0
- package/src/components/FileUpload/FileUploadContent.vue +5 -4
- package/src/components/FileUpload/accessibilite/Accessibility.mdx +12 -0
- package/src/components/FilterInline/FilterInline.vue +5 -4
- package/src/components/FilterInline/accessibilite/Accessibility.mdx +12 -0
- package/src/components/FilterSideBar/accessibilite/Accessibility.mdx +15 -0
- package/src/components/FooterBar/FooterBar.stories.ts +18 -14
- package/src/components/FooterBar/{Accessibilite.mdx → accessibilite/Accessibility.mdx} +3 -4
- package/src/components/FooterBar/defaultSocialMediaLinks.ts +6 -4
- package/src/components/FranceConnectBtn/FranceConnectBtn.vue +6 -5
- package/src/components/FranceConnectBtn/accessibilite/Accessibility.mdx +15 -0
- package/src/components/FranceConnectBtn/tests/__snapshots__/FranceConnectBtn.spec.ts.snap +3 -0
- package/src/components/HeaderBar/HeaderBurgerMenu/accessibilite/Accessibility.mdx +15 -0
- package/src/components/HeaderBar/accessibilite/Accessibility.mdx +15 -0
- package/src/components/HeaderBar/{Usages.mdx → usages/Usages.mdx} +2 -2
- package/src/components/HeaderLoading/{Accessibilite.mdx → accessibilite/Accessibility.mdx} +9 -5
- package/src/components/HeaderToolbar/accessibilite/Accessibility.mdx +15 -0
- package/src/components/LangBtn/LangBtn.vue +5 -4
- package/src/components/LangBtn/accessibilite/Accessibility.mdx +15 -0
- package/src/components/Logo/accessibilite/Accessibility.mdx +17 -0
- package/src/components/LogoBrandSection/accessibilite/Accessibility.mdx +12 -0
- package/src/components/LunarCalendar/accessibilite/Accessibility.mdx +10 -0
- package/src/components/MaintenancePage/MaintenancePage.mdx +1 -1
- package/src/components/MaintenancePage/MaintenancePage.vue +15 -7
- package/src/components/MaintenancePage/accessibilite/Accessibility.mdx +70 -0
- package/src/components/MaintenancePage/assets/maintenance-ap.svg +1718 -0
- package/src/components/MaintenancePage/locales.ts +24 -3
- package/src/components/MaintenancePage/tests/MaintenancePage.a11y.spec.ts +75 -3
- package/src/components/MaintenancePage/tests/MaintenancePage.spec.ts +42 -2
- package/src/components/MaintenancePage/tests/__snapshots__/MaintenancePage.spec.ts.snap +3 -2
- package/src/components/NirField/accessibilite/Accessibility.mdx +15 -0
- package/src/components/NotFoundPage/NotFoundPage.mdx +1 -1
- package/src/components/NotFoundPage/NotFoundPage.stories.ts +3 -3
- package/src/components/NotFoundPage/NotFoundPage.vue +16 -11
- package/src/components/NotFoundPage/accessibilite/Accessibility.mdx +87 -0
- package/src/components/NotFoundPage/assets/not-found-ap.svg +2061 -0
- package/src/components/NotFoundPage/locales.ts +24 -4
- package/src/components/NotFoundPage/tests/NotFoundPage.a11y.spec.ts +168 -4
- package/src/components/NotFoundPage/tests/NotFoundPage.spec.ts +100 -12
- package/src/components/NotFoundPage/tests/__snapshots__/NotFoundPage.spec.ts.snap +2 -2
- package/src/components/NotificationBar/Notification/Notification.vue +1 -1
- package/src/components/NotificationBar/NotificationBar.mdx +2 -2
- package/src/components/NotificationBar/accessibilite/Accessibility.mdx +75 -0
- package/src/components/PageContainer/{AccessibilityGuide.mdx → accessibilite/Accessibility.mdx} +7 -4
- package/src/components/PageContainer/tests/PageContainer.a11y.spec.ts +14 -7
- package/src/components/PaginatedTable/PaginatedTable.vue +27 -47
- package/src/components/PaginatedTable/Pagination.vue +93 -0
- package/src/components/PaginatedTable/accessibilite/Accessibility.mdx +12 -0
- package/src/components/PasswordField/PasswordField.vue +2 -1
- package/src/components/PasswordField/accessibilite/Accessibility.mdx +108 -0
- package/src/components/PeriodField/accessibilite/Accessibility.mdx +12 -0
- package/src/components/PhoneField/PhoneField.stories.ts +46 -38
- package/src/components/PhoneField/accessibilite/Accessibility.mdx +15 -0
- package/src/components/RangeField/accessibilite/Accessibility.mdx +15 -0
- package/src/components/RatingPicker/accessibilite/Accessibility.mdx +15 -0
- package/src/components/SearchListField/SearchListField.vue +6 -3
- package/src/components/SearchListField/accessibilite/Accessibility.mdx +15 -0
- package/src/components/SkipLink/{Accessibilite.mdx → accessibilite/Accessibility.mdx} +7 -4
- package/src/components/SocialMediaLinks/DefaultSocialMediaLinks.ts +6 -4
- package/src/components/SocialMediaLinks/SocialMediaLinks.mdx +7 -5
- package/src/components/SocialMediaLinks/SocialMediaLinks.stories.ts +17 -13
- package/src/components/SocialMediaLinks/SocialMediaLinks.vue +9 -1
- package/src/components/SocialMediaLinks/accessibilite/Accessibility.mdx +67 -0
- package/src/components/SocialMediaLinks/tests/DefaultSocialMediaLinks.spec.ts +5 -5
- package/src/components/SocialMediaLinks/tests/SocialMediaLinks.a11y.spec.ts +59 -0
- package/src/components/SocialMediaLinks/tests/SocialMediaLinks.spec.ts +9 -7
- package/src/components/StatusPage/StatusPage.mdx +22 -0
- package/src/components/StatusPage/StatusPage.stories.ts +193 -0
- package/src/components/StatusPage/StatusPage.vue +145 -0
- package/src/components/StatusPage/accessibilite/Accessibility.mdx +81 -0
- package/src/components/StatusPage/tests/StatusPage.a11y.spec.ts +29 -0
- package/src/components/StatusPage/tests/StatusPage.spec.ts +50 -0
- package/src/components/StatusPage/tests/__snapshots__/StatusPage.spec.ts.snap +270 -0
- package/src/components/SubHeader/accessibilite/Accessibility.mdx +15 -0
- package/src/components/SyAlert/SyAlert.vue +6 -6
- package/src/components/SyAlert/accessibilite/Accessibility.mdx +12 -0
- package/src/components/SyTextArea/accessibilite/Accessibility.mdx +10 -0
- package/src/components/TableToolbar/TableToolbar.stories.ts +6 -6
- package/src/components/TableToolbar/TableToolbar.vue +7 -4
- package/src/components/TableToolbar/accessibilite/Accessibility.mdx +12 -0
- package/src/components/TableToolbar/tests/__snapshots__/TableToolbar.spec.ts.snap +0 -5
- package/src/components/Tables/SyServerTable/SyServerTable.mdx +4 -1
- package/src/components/Tables/SyServerTable/accessibilite/Accessibility.mdx +10 -0
- package/src/components/Tables/SyTable/SyTable.mdx +4 -1
- package/src/components/Tables/SyTable/accessibilite/Accessibility.mdx +10 -0
- package/src/components/Tables/common/TableHeader.vue +3 -1
- package/src/components/Tables/common/organizeColumns/OrganizeColumns.vue +18 -14
- package/src/components/ToolbarContainer/ToolbarContainer.mdx +2 -1
- package/src/components/ToolbarContainer/ToolbarContainer.stories.ts +563 -420
- package/src/components/ToolbarContainer/accessibilite/Accessibility.mdx +69 -0
- package/src/components/UploadWorkflow/UploadWorkflow.mdx +11 -1
- package/src/components/UploadWorkflow/UploadWorkflow.stories.ts +107 -3
- package/src/components/UploadWorkflow/UploadWorkflow.vue +35 -24
- package/src/components/UploadWorkflow/accessibilite/Accessibility.mdx +12 -0
- package/src/components/UploadWorkflow/tests/UploadWorkflow.spec.ts +48 -0
- package/src/components/UploadWorkflow/tests/__snapshots__/UploadWorkflow.spec.ts.snap +9 -5
- package/src/components/UploadWorkflow/useFileList.ts +7 -0
- package/src/components/Usages/Usages.vue +3 -2
- package/src/components/UserMenuBtn/UserMenuBtn.vue +7 -5
- package/src/components/UserMenuBtn/accessibilite/Accessibility.mdx +12 -0
- package/src/components/index.ts +5 -0
- package/src/components/types.ts +10 -0
- package/src/composables/rules/tests/useFieldValidation.spec.ts +39 -3
- package/src/composables/rules/useFieldValidation.ts +31 -9
- package/src/composables/useFormFieldErrorHandling.ts +141 -0
- package/src/modules.d.ts +6 -0
- package/src/stories/Accessibilite/KitDePreAudit/Preaudit.mdx +7 -0
- package/src/utils/theme/index.ts +19 -0
- package/src/utils/theme/tests/useThemeLocales.spec.ts +245 -0
- package/dist/components/MaintenancePage/index.d.ts +0 -2
- package/src/components/BackBtn/Accessibilite.mdx +0 -14
- package/src/components/BackBtn/Accessibilite.stories.ts +0 -30
- package/src/components/BackToTopBtn/Accessibilite.mdx +0 -14
- package/src/components/BackToTopBtn/Accessibilite.stories.ts +0 -31
- package/src/components/ChipList/Accessibilite.mdx +0 -14
- package/src/components/ChipList/Accessibilite.stories.ts +0 -31
- package/src/components/CollapsibleList/Accessibilite.stories.ts +0 -29
- package/src/components/ContextualMenu/Accessibilite.mdx +0 -13
- package/src/components/ContextualMenu/Accessibilite.stories.ts +0 -29
- package/src/components/CookieBanner/Accessibilite.mdx +0 -13
- package/src/components/CookieBanner/Accessibilite.stories.ts +0 -30
- package/src/components/CopyBtn/Accessibilite.mdx +0 -13
- package/src/components/CopyBtn/Accessibilite.stories.ts +0 -29
- package/src/components/Customs/Selects/SelectBtnField/Accessibilite.mdx +0 -14
- package/src/components/Customs/Selects/SelectBtnField/Accessibilite.stories.ts +0 -29
- package/src/components/Customs/Selects/SyInputSelect/Accessibilite.mdx +0 -13
- package/src/components/Customs/Selects/SyInputSelect/Accessibilite.stories.ts +0 -25
- package/src/components/Customs/SyPagination/tests/SyPagination.a11y.spec.ts +0 -27
- package/src/components/Customs/SyTabs/tests/SyTabs.a11y.spec.ts +0 -51
- package/src/components/Customs/SyTextField/Accessibilite.mdx +0 -14
- package/src/components/Customs/SyTextField/Accessibilite.stories.ts +0 -34
- package/src/components/DataList/Accessibilite.mdx +0 -13
- package/src/components/DataList/Accessibilite.stories.ts +0 -29
- package/src/components/DataListGroup/Accessibilite.mdx +0 -13
- package/src/components/DataListGroup/Accessibilite.stories.ts +0 -29
- package/src/components/DataListItem/tests/DataListItem.a11y.spec.ts +0 -31
- package/src/components/DatePicker/CalendarMode/tests/DatePicker.a11y.spec.ts +0 -27
- package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.a11y.spec.ts +0 -26
- package/src/components/DatePicker/DateTextInput/tests/DateTextInput.a11y.spec.ts +0 -27
- package/src/components/DialogBox/Accessibilite.mdx +0 -14
- package/src/components/DialogBox/Accessibilite.stories.ts +0 -29
- package/src/components/DownloadBtn/Accessibilite.mdx +0 -14
- package/src/components/DownloadBtn/Accessibilite.stories.ts +0 -29
- package/src/components/DownloadBtn/tests/DownloadBtn.a11y.spec.ts +0 -26
- package/src/components/ErrorPage/Accessibilite.mdx +0 -13
- package/src/components/ErrorPage/Accessibilite.stories.ts +0 -36
- package/src/components/ExternalLinks/Accessibilite.mdx +0 -18
- package/src/components/ExternalLinks/Accessibilite.stories.ts +0 -62
- package/src/components/ExternalLinks/tests/ExternalLinks.a11y.spec.ts +0 -39
- package/src/components/FileList/Accessibilite.mdx +0 -13
- package/src/components/FileList/Accessibilite.stories.ts +0 -26
- package/src/components/FilePreview/Accessibilite.mdx +0 -14
- package/src/components/FilePreview/Accessibilite.stories.ts +0 -26
- package/src/components/FileUpload/Accessibilite.mdx +0 -13
- package/src/components/FileUpload/Accessibilite.stories.ts +0 -26
- package/src/components/FilterInline/Accessibilite.mdx +0 -15
- package/src/components/FilterInline/Accessibilite.stories.ts +0 -26
- package/src/components/FilterSideBar/Accessibilite.mdx +0 -13
- package/src/components/FilterSideBar/Accessibilite.stories.ts +0 -30
- package/src/components/FooterBar/Accessibilite.stories.ts +0 -26
- package/src/components/FranceConnectBtn/Accessibilite.mdx +0 -13
- package/src/components/FranceConnectBtn/Accessibilite.stories.ts +0 -30
- package/src/components/HeaderBar/Accessibilite.mdx +0 -13
- package/src/components/HeaderBar/Accessibilite.stories.ts +0 -31
- package/src/components/HeaderBar/HeaderBurgerMenu/Accessibilite.mdx +0 -13
- package/src/components/HeaderBar/HeaderBurgerMenu/Accessibilite.stories.ts +0 -30
- package/src/components/HeaderLoading/Accessibilite.stories.ts +0 -31
- package/src/components/HeaderNavigationBar/tests/HeaderNavigationBar.a11y.spec.ts +0 -45
- package/src/components/HeaderToolbar/Accessibilite.mdx +0 -13
- package/src/components/HeaderToolbar/Accessibilite.stories.ts +0 -36
- package/src/components/HeaderToolbar/tests/HeaderToolbar.a11y.spec.ts +0 -25
- package/src/components/LangBtn/Accessibilite.mdx +0 -13
- package/src/components/LangBtn/Accessibilite.stories.ts +0 -32
- package/src/components/Logo/Accessibilite.mdx +0 -13
- package/src/components/Logo/Accessibilite.stories.ts +0 -30
- package/src/components/LogoBrandSection/Accessibilite.mdx +0 -13
- package/src/components/LogoBrandSection/Accessibilite.stories.ts +0 -26
- package/src/components/LunarCalendar/tests/LunarCalendar.a11y.spec.ts +0 -31
- package/src/components/MaintenancePage/Accessibilite.mdx +0 -13
- package/src/components/MaintenancePage/Accessibilite.stories.ts +0 -36
- package/src/components/MaintenancePage/index.ts +0 -3
- package/src/components/NirField/Accessibilite.mdx +0 -13
- package/src/components/NirField/Accessibilite.stories.ts +0 -31
- package/src/components/NotFoundPage/Accessibilite.mdx +0 -13
- package/src/components/NotFoundPage/Accessibilite.stories.ts +0 -36
- package/src/components/NotificationBar/Accessibilite.mdx +0 -13
- package/src/components/NotificationBar/Accessibilite.stories.ts +0 -30
- package/src/components/PageContainer/Accessibilite.mdx +0 -13
- package/src/components/PageContainer/Accessibilite.stories.ts +0 -30
- package/src/components/PaginatedTable/Accessibilite.mdx +0 -13
- package/src/components/PaginatedTable/Accessibilite.stories.ts +0 -26
- package/src/components/PaginatedTable/tests/PaginatedTable.a11y.spec.ts +0 -43
- package/src/components/PasswordField/Accessibilite.mdx +0 -13
- package/src/components/PasswordField/Accessibilite.stories.ts +0 -121
- package/src/components/PeriodField/Accessibilite.mdx +0 -13
- package/src/components/PeriodField/Accessibilite.stories.ts +0 -27
- package/src/components/PhoneField/Accessibilite.mdx +0 -13
- package/src/components/PhoneField/Accessibilite.stories.ts +0 -32
- package/src/components/PhoneField/tests/PhoneField.a11y.spec.ts +0 -34
- package/src/components/RangeField/Accessibilite.mdx +0 -13
- package/src/components/RangeField/Accessibilite.stories.ts +0 -32
- package/src/components/RatingPicker/Accessibilite.mdx +0 -13
- package/src/components/RatingPicker/Accessibilite.stories.ts +0 -30
- package/src/components/SearchListField/Accessibilite.mdx +0 -13
- package/src/components/SearchListField/Accessibilite.stories.ts +0 -30
- package/src/components/SkipLink/Accessibilite.stories.ts +0 -36
- package/src/components/SocialMediaLinks/Accessibilite.mdx +0 -13
- package/src/components/SocialMediaLinks/Accessibilite.stories.ts +0 -36
- package/src/components/SubHeader/Accessibilite.mdx +0 -13
- package/src/components/SubHeader/Accessibilite.stories.ts +0 -36
- package/src/components/SyAlert/Accessibilite.mdx +0 -13
- package/src/components/SyAlert/Accessibilite.stories.ts +0 -30
- package/src/components/TableToolbar/Accessibilite.mdx +0 -13
- package/src/components/TableToolbar/Accessibilite.stories.ts +0 -26
- package/src/components/UploadWorkflow/Accessibilite.mdx +0 -13
- package/src/components/UploadWorkflow/Accessibilite.stories.ts +0 -26
- package/src/components/UserMenuBtn/Accessibilite.mdx +0 -13
- package/src/components/UserMenuBtn/Accessibilite.stories.ts +0 -25
- /package/src/components/HeaderBar/{Usages.stories.ts → usages/Usages.stories.ts} +0 -0
- /package/src/components/NotFoundPage/assets/{not-found.svg → not-found-cnam.svg} +0 -0
- /package/src/components/SyBtnMenu/accessibilite/{AccessibilityGuide.mdx → Accessibility.mdx} +0 -0
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
<script lang="ts" setup>
|
|
2
|
+
import { ref, computed, watch } from 'vue'
|
|
3
|
+
import DatePicker from '@/components/DatePicker/CalendarMode/DatePicker.vue'
|
|
4
|
+
// useDateFormat n'est plus nécessaire avec les règles prédéfinies
|
|
5
|
+
|
|
6
|
+
// État des dates
|
|
7
|
+
const startDate = ref<string | null>(null)
|
|
8
|
+
const endDate = ref<string | null>(null)
|
|
9
|
+
|
|
10
|
+
// Références aux composants CalendarMode pour accéder à leurs méthodes
|
|
11
|
+
const startDatePickerRef = ref<InstanceType<typeof DatePicker> | null>(null)
|
|
12
|
+
const endDatePickerRef = ref<InstanceType<typeof DatePicker> | null>(null)
|
|
13
|
+
|
|
14
|
+
// Les règles de validation sont définies directement dans les computed startDateRules et endDateRules
|
|
15
|
+
|
|
16
|
+
// Règles de validation pour la date de début
|
|
17
|
+
const startDateRules = computed(() => {
|
|
18
|
+
const rules = [
|
|
19
|
+
{
|
|
20
|
+
type: 'required',
|
|
21
|
+
options: {
|
|
22
|
+
message: 'La date de début est requise.',
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
]
|
|
26
|
+
|
|
27
|
+
// Ajouter la règle notAfterDate seulement si endDate.value existe
|
|
28
|
+
if (endDate.value) {
|
|
29
|
+
rules.push({
|
|
30
|
+
type: 'notAfterDate',
|
|
31
|
+
|
|
32
|
+
options: {
|
|
33
|
+
message: 'La date de début ne peut pas être postérieure à la date de fin',
|
|
34
|
+
date: endDate.value, // Déjà une chaîne au format DD/MM/YYYY
|
|
35
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- mock Axios headers
|
|
36
|
+
} as any,
|
|
37
|
+
})
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
return rules
|
|
41
|
+
})
|
|
42
|
+
|
|
43
|
+
// Règles de validation pour la date de fin
|
|
44
|
+
const endDateRules = computed(() => {
|
|
45
|
+
const rules = [
|
|
46
|
+
{
|
|
47
|
+
type: 'required',
|
|
48
|
+
options: {
|
|
49
|
+
message: 'La date de fin est requise.',
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
]
|
|
53
|
+
// Ajouter la règle notBeforeDate seulement si startDate.value existe
|
|
54
|
+
if (startDate.value) {
|
|
55
|
+
rules.push({
|
|
56
|
+
type: 'notBeforeDate',
|
|
57
|
+
|
|
58
|
+
options: {
|
|
59
|
+
message: 'La date de fin ne peut pas être antérieure à la date de début',
|
|
60
|
+
date: startDate.value, // Déjà une chaîne au format DD/MM/YYYY
|
|
61
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- mock Axios headers
|
|
62
|
+
} as any,
|
|
63
|
+
})
|
|
64
|
+
}
|
|
65
|
+
return rules
|
|
66
|
+
})
|
|
67
|
+
|
|
68
|
+
// Fonction pour forcer la validation de la date de fin quand la date de début change
|
|
69
|
+
const validateEndDate = () => {
|
|
70
|
+
if (endDatePickerRef.value && endDate.value) {
|
|
71
|
+
// On utilise validateOnSubmit pour forcer la validation complète
|
|
72
|
+
endDatePickerRef.value.validateOnSubmit()
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// Fonction pour forcer la validation de la date de début quand la date de fin change
|
|
77
|
+
const validateStartDate = () => {
|
|
78
|
+
if (startDatePickerRef.value && startDate.value) {
|
|
79
|
+
// On utilise validateOnSubmit pour forcer la validation complète
|
|
80
|
+
startDatePickerRef.value.validateOnSubmit()
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
// Watcher pour la date de début qui force la revalidation de la date de fin
|
|
85
|
+
watch(startDate, () => {
|
|
86
|
+
// Laisser le temps au système de mettre à jour les valeurs
|
|
87
|
+
setTimeout(() => {
|
|
88
|
+
validateEndDate()
|
|
89
|
+
}, 0)
|
|
90
|
+
})
|
|
91
|
+
|
|
92
|
+
// Watcher pour la date de fin qui force la revalidation de la date de début
|
|
93
|
+
watch(endDate, () => {
|
|
94
|
+
// Laisser le temps au système de mettre à jour les valeurs
|
|
95
|
+
setTimeout(() => {
|
|
96
|
+
validateStartDate()
|
|
97
|
+
}, 0)
|
|
98
|
+
})
|
|
99
|
+
|
|
100
|
+
// Fonction pour définir des dates de test
|
|
101
|
+
const setTestDates = () => {
|
|
102
|
+
// Définir une date de début (aujourd'hui)
|
|
103
|
+
const today = new Date()
|
|
104
|
+
const day = String(today.getDate()).padStart(2, '0')
|
|
105
|
+
const month = String(today.getMonth() + 1).padStart(2, '0')
|
|
106
|
+
const year = today.getFullYear()
|
|
107
|
+
startDate.value = `${day}/${month}/${year}`
|
|
108
|
+
|
|
109
|
+
// Définir une date de fin (demain) - pour démontrer une validation valide
|
|
110
|
+
const tomorrow = new Date(today)
|
|
111
|
+
tomorrow.setDate(today.getDate() + 1)
|
|
112
|
+
const tomorrowDay = String(tomorrow.getDate()).padStart(2, '0')
|
|
113
|
+
const tomorrowMonth = String(tomorrow.getMonth() + 1).padStart(2, '0')
|
|
114
|
+
const tomorrowYear = tomorrow.getFullYear()
|
|
115
|
+
endDate.value = `${tomorrowDay}/${tomorrowMonth}/${tomorrowYear}`
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
// Fonction pour définir des dates invalides (date de fin avant date de début)
|
|
119
|
+
const setInvalidDates = () => {
|
|
120
|
+
// Définir une date de début (aujourd'hui)
|
|
121
|
+
const today = new Date()
|
|
122
|
+
const day = String(today.getDate()).padStart(2, '0')
|
|
123
|
+
const month = String(today.getMonth() + 1).padStart(2, '0')
|
|
124
|
+
const year = today.getFullYear()
|
|
125
|
+
startDate.value = `${day}/${month}/${year}`
|
|
126
|
+
|
|
127
|
+
// Définir une date de fin (hier) - pour démontrer une validation invalide
|
|
128
|
+
const yesterday = new Date(today)
|
|
129
|
+
yesterday.setDate(today.getDate() - 1)
|
|
130
|
+
const yesterdayDay = String(yesterday.getDate()).padStart(2, '0')
|
|
131
|
+
const yesterdayMonth = String(yesterday.getMonth() + 1).padStart(2, '0')
|
|
132
|
+
const yesterdayYear = yesterday.getFullYear()
|
|
133
|
+
endDate.value = `${yesterdayDay}/${yesterdayMonth}/${yesterdayYear}`
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
// Fonction pour réinitialiser les dates
|
|
137
|
+
const resetDates = () => {
|
|
138
|
+
startDate.value = null
|
|
139
|
+
endDate.value = null
|
|
140
|
+
}
|
|
141
|
+
</script>
|
|
142
|
+
|
|
143
|
+
<template>
|
|
144
|
+
<div class="date-picker-bidirectional-validation">
|
|
145
|
+
<h1 class="text-h5 mb-6">
|
|
146
|
+
Validation bidirectionnelle entre deux DatePickers
|
|
147
|
+
</h1>
|
|
148
|
+
|
|
149
|
+
<div class="text-body-2 mb-4">
|
|
150
|
+
Ce composant démontre la validation bidirectionnelle entre deux DatePickers. Les règles de validation sont appliquées dans les deux sens :
|
|
151
|
+
<ul class="ml-4">
|
|
152
|
+
<li>La date de fin doit être postérieure ou égale à la date de début</li>
|
|
153
|
+
<li>La date de début doit être antérieure ou égale à la date de fin</li>
|
|
154
|
+
<li>Lorsque la date de début change, la validation de la date de fin est mise à jour</li>
|
|
155
|
+
<li>Lorsque la date de fin change, la validation de la date de début est mise à jour</li>
|
|
156
|
+
</ul>
|
|
157
|
+
</div>
|
|
158
|
+
|
|
159
|
+
<div class="date-range-container mb-6">
|
|
160
|
+
<div class="date-picker-wrapper">
|
|
161
|
+
<h2 class="text-subtitle-1 mb-2">
|
|
162
|
+
Date de début
|
|
163
|
+
</h2>
|
|
164
|
+
<DatePicker
|
|
165
|
+
ref="startDatePickerRef"
|
|
166
|
+
v-model="startDate"
|
|
167
|
+
label="Date de début"
|
|
168
|
+
:custom-rules="startDateRules"
|
|
169
|
+
use-combined-mode
|
|
170
|
+
required
|
|
171
|
+
@update:model-value="validateEndDate"
|
|
172
|
+
/>
|
|
173
|
+
</div>
|
|
174
|
+
<div class="date-picker-wrapper">
|
|
175
|
+
<h2 class="text-subtitle-1 mb-2">
|
|
176
|
+
Date de fin
|
|
177
|
+
</h2>
|
|
178
|
+
<DatePicker
|
|
179
|
+
ref="endDatePickerRef"
|
|
180
|
+
v-model="endDate"
|
|
181
|
+
label="Date de fin"
|
|
182
|
+
:custom-rules="endDateRules"
|
|
183
|
+
use-combined-mode
|
|
184
|
+
required
|
|
185
|
+
@update:model-value="validateStartDate"
|
|
186
|
+
/>
|
|
187
|
+
</div>
|
|
188
|
+
</div>
|
|
189
|
+
|
|
190
|
+
<div class="actions mb-4">
|
|
191
|
+
<v-btn
|
|
192
|
+
size="small"
|
|
193
|
+
color="primary"
|
|
194
|
+
class="mr-2"
|
|
195
|
+
@click="resetDates"
|
|
196
|
+
>
|
|
197
|
+
Réinitialiser
|
|
198
|
+
</v-btn>
|
|
199
|
+
|
|
200
|
+
<v-btn
|
|
201
|
+
size="small"
|
|
202
|
+
color="success"
|
|
203
|
+
class="mr-2"
|
|
204
|
+
@click="setTestDates"
|
|
205
|
+
>
|
|
206
|
+
Dates valides
|
|
207
|
+
</v-btn>
|
|
208
|
+
|
|
209
|
+
<v-btn
|
|
210
|
+
size="small"
|
|
211
|
+
color="error"
|
|
212
|
+
@click="setInvalidDates"
|
|
213
|
+
>
|
|
214
|
+
Dates invalides
|
|
215
|
+
</v-btn>
|
|
216
|
+
</div>
|
|
217
|
+
|
|
218
|
+
<div class="current-values mt-4">
|
|
219
|
+
<p><strong>Date de début :</strong> {{ startDate || 'Non sélectionnée' }}</p>
|
|
220
|
+
<p><strong>Date de fin :</strong> {{ endDate || 'Non sélectionnée' }}</p>
|
|
221
|
+
</div>
|
|
222
|
+
|
|
223
|
+
<div class="mt-6 pa-4 bg-grey-lighten-4 rounded">
|
|
224
|
+
<h3 class="text-subtitle-1 mb-2">
|
|
225
|
+
Comment fonctionne la validation bidirectionnelle
|
|
226
|
+
</h3>
|
|
227
|
+
<p class="text-body-2">
|
|
228
|
+
La validation bidirectionnelle entre les DatePickers est implémentée grâce à des règles de validation personnalisées
|
|
229
|
+
qui vérifient la relation entre les deux dates. Chaque DatePicker a sa propre règle qui vérifie sa valeur par rapport à l'autre.
|
|
230
|
+
</p>
|
|
231
|
+
<p class="text-body-2 mt-2">
|
|
232
|
+
Lorsqu'une date change, un watcher déclenche la validation de l'autre DatePicker. Cela garantit que les messages d'erreur
|
|
233
|
+
sont toujours à jour, même lorsque les dates sont modifiées dans n'importe quel ordre.
|
|
234
|
+
</p>
|
|
235
|
+
<p class="text-body-2 mt-2">
|
|
236
|
+
Les messages d'erreur apparaissent directement dans les composants DatePicker, ce qui améliore l'expérience utilisateur
|
|
237
|
+
en fournissant un retour immédiat sur la validité des dates sélectionnées.
|
|
238
|
+
</p>
|
|
239
|
+
<p class="text-body-2 mt-2">
|
|
240
|
+
Vous trouverez le code source dans la story Bidirectional Validation.
|
|
241
|
+
</p>
|
|
242
|
+
</div>
|
|
243
|
+
</div>
|
|
244
|
+
</template>
|
|
245
|
+
|
|
246
|
+
<style scoped>
|
|
247
|
+
.date-picker-bidirectional-validation {
|
|
248
|
+
padding: 20px;
|
|
249
|
+
max-width: 800px;
|
|
250
|
+
margin: 0 auto;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
.date-range-container {
|
|
254
|
+
display: flex;
|
|
255
|
+
gap: 20px;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
.date-picker-wrapper {
|
|
259
|
+
flex: 1;
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
.actions {
|
|
263
|
+
display: flex;
|
|
264
|
+
flex-wrap: wrap;
|
|
265
|
+
gap: 8px;
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
.current-values {
|
|
269
|
+
padding: 15px;
|
|
270
|
+
background-color: #f5f5f5;
|
|
271
|
+
border-radius: 4px;
|
|
272
|
+
}
|
|
273
|
+
</style>
|
|
@@ -158,9 +158,9 @@
|
|
|
158
158
|
|
|
159
159
|
<div class="date-range-container mb-6">
|
|
160
160
|
<div class="date-picker-wrapper">
|
|
161
|
-
<
|
|
161
|
+
<h2 class="text-subtitle-1 mb-2">
|
|
162
162
|
Date de début
|
|
163
|
-
</
|
|
163
|
+
</h2>
|
|
164
164
|
<DatePicker
|
|
165
165
|
ref="startDatePickerRef"
|
|
166
166
|
v-model="startDate"
|
|
@@ -171,9 +171,9 @@
|
|
|
171
171
|
/>
|
|
172
172
|
</div>
|
|
173
173
|
<div class="date-picker-wrapper">
|
|
174
|
-
<
|
|
174
|
+
<h2 class="text-subtitle-1 mb-2">
|
|
175
175
|
Date de fin
|
|
176
|
-
</
|
|
176
|
+
</h2>
|
|
177
177
|
<DatePicker
|
|
178
178
|
ref="endDatePickerRef"
|
|
179
179
|
v-model="endDate"
|
|
@@ -68,6 +68,7 @@
|
|
|
68
68
|
<div class="mb-2">
|
|
69
69
|
<DatePicker
|
|
70
70
|
v-model="date1"
|
|
71
|
+
label="Date requise"
|
|
71
72
|
placeholder="Date requise"
|
|
72
73
|
required
|
|
73
74
|
/>
|
|
@@ -102,6 +103,7 @@
|
|
|
102
103
|
<div class="mb-2">
|
|
103
104
|
<DatePicker
|
|
104
105
|
v-model="date2"
|
|
106
|
+
label="Jour de semaine"
|
|
105
107
|
placeholder="Jour de semaine uniquement"
|
|
106
108
|
:custom-rules="[{
|
|
107
109
|
type: 'notWeekend',
|
|
@@ -143,6 +145,7 @@
|
|
|
143
145
|
<div class="mb-2">
|
|
144
146
|
<DatePicker
|
|
145
147
|
v-model="date3"
|
|
148
|
+
label="Date passée"
|
|
146
149
|
placeholder="Date passée ou aujourd'hui"
|
|
147
150
|
:custom-rules="[{
|
|
148
151
|
type: 'notAfterToday',
|
|
@@ -191,6 +194,7 @@
|
|
|
191
194
|
<div class="mb-2">
|
|
192
195
|
<DatePicker
|
|
193
196
|
v-model="date4"
|
|
197
|
+
label="Date future"
|
|
194
198
|
placeholder="Date future ou aujourd'hui"
|
|
195
199
|
:custom-rules="[{
|
|
196
200
|
type: 'notBeforeToday',
|
|
@@ -239,6 +243,7 @@
|
|
|
239
243
|
<div class="mb-2">
|
|
240
244
|
<DatePicker
|
|
241
245
|
v-model="date5"
|
|
246
|
+
label="Date après le 01/01/2025"
|
|
242
247
|
placeholder="Date après le 01/01/2025"
|
|
243
248
|
:custom-rules="[{
|
|
244
249
|
type: 'notBeforeDate',
|
|
@@ -281,6 +286,7 @@
|
|
|
281
286
|
<div class="mb-2">
|
|
282
287
|
<DatePicker
|
|
283
288
|
v-model="date6"
|
|
289
|
+
label="Date avant le 31/12/2025"
|
|
284
290
|
placeholder="Date avant le 31/12/2025"
|
|
285
291
|
:custom-rules="[{
|
|
286
292
|
type: 'notAfterDate',
|
|
@@ -323,6 +329,7 @@
|
|
|
323
329
|
<div class="mb-2">
|
|
324
330
|
<DatePicker
|
|
325
331
|
v-model="date7"
|
|
332
|
+
label="Date exacte"
|
|
326
333
|
placeholder="Date exacte: 25/12/2025"
|
|
327
334
|
:custom-rules="[{
|
|
328
335
|
type: 'dateExact',
|
|
@@ -365,6 +372,7 @@
|
|
|
365
372
|
<div class="mb-2">
|
|
366
373
|
<DatePicker
|
|
367
374
|
v-model="date8"
|
|
375
|
+
label="Date hors 2024"
|
|
368
376
|
placeholder="Date hors 2024"
|
|
369
377
|
:custom-rules="[{
|
|
370
378
|
type: 'custom',
|
|
@@ -419,6 +427,7 @@
|
|
|
419
427
|
<div class="mb-2">
|
|
420
428
|
<DatePicker
|
|
421
429
|
v-model="date9"
|
|
430
|
+
label="Date avec avertissement"
|
|
422
431
|
placeholder="Date (avertissement pour 2025)"
|
|
423
432
|
:custom-warning-rules="[{
|
|
424
433
|
type: 'custom',
|
|
@@ -477,6 +486,7 @@
|
|
|
477
486
|
<div class="mb-2">
|
|
478
487
|
<DatePicker
|
|
479
488
|
v-model="date10"
|
|
489
|
+
label="Date de travail"
|
|
480
490
|
placeholder="Date de travail"
|
|
481
491
|
required
|
|
482
492
|
:custom-rules="[
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { Controls, Canvas, Meta, Source } from '@storybook/blocks';
|
|
2
|
+
|
|
3
|
+
import * as DeclarationAccessibilityPageStories from './DeclarationAccessibilityPage.stories.ts';
|
|
4
|
+
|
|
5
|
+
<Meta of={DeclarationAccessibilityPageStories} />
|
|
6
|
+
|
|
7
|
+
# DeclarationAccessibilityPage
|
|
8
|
+
|
|
9
|
+
Le composant `DeclarationAccessibilityPage` permet de générer une déclaration d'accessibilité conforme aux exigences légales françaises (RGAA) pour un site ou une application web.
|
|
10
|
+
|
|
11
|
+
<Canvas of={DeclarationAccessibilityPageStories.Default} />
|
|
12
|
+
|
|
13
|
+
## API
|
|
14
|
+
|
|
15
|
+
<Controls />
|
|
16
|
+
|
|
17
|
+
## Utilisation standard
|
|
18
|
+
|
|
19
|
+
La version standard de la déclaration d'accessibilité contient les informations minimales requises.
|
|
20
|
+
|
|
21
|
+
<Canvas of={DeclarationAccessibilityPageStories.Default} />
|
|
22
|
+
|
|
23
|
+
## Cas simple
|
|
24
|
+
|
|
25
|
+
Un exemple de déclaration avec les informations minimales requises.
|
|
26
|
+
|
|
27
|
+
<Canvas of={DeclarationAccessibilityPageStories.SimpleCase} />
|
|
28
|
+
|
|
29
|
+
## Avec non-conformités
|
|
30
|
+
|
|
31
|
+
Exemple de déclaration incluant des non-conformités identifiées.
|
|
32
|
+
|
|
33
|
+
<Canvas of={DeclarationAccessibilityPageStories.WithNonConformities} />
|
|
34
|
+
|
|
35
|
+
## Avec dérogations
|
|
36
|
+
|
|
37
|
+
Exemple de déclaration incluant des dérogations pour charge disproportionnée.
|
|
38
|
+
|
|
39
|
+
<Canvas of={DeclarationAccessibilityPageStories.WithExemptions} />
|
|
40
|
+
|
|
41
|
+
## Avec environnements de tests
|
|
42
|
+
|
|
43
|
+
Exemple de déclaration incluant les environnements de tests utilisés pour l'audit d'accessibilité.
|
|
44
|
+
|
|
45
|
+
<Canvas of={DeclarationAccessibilityPageStories.WithTestsEnvironement} />
|
|
46
|
+
|
|
47
|
+
## Avec plan d'accessibilité
|
|
48
|
+
|
|
49
|
+
Exemple de déclaration incluant un plan d'accessibilité avec des libellés personnalisés.
|
|
50
|
+
|
|
51
|
+
<Canvas of={DeclarationAccessibilityPageStories.WithAccessibilityPlan} />
|
|
52
|
+
|
|
53
|
+
## Accessibilité
|
|
54
|
+
|
|
55
|
+
Le composant `DeclarationAccessibilityPage` est lui-même conçu pour être pleinement accessible :
|
|
56
|
+
- Structure sémantique avec utilisation appropriée des balises HTML5
|
|
57
|
+
- Contraste des couleurs conforme aux exigences RGAA
|
|
58
|
+
- Navigation au clavier facilitée
|
|
59
|
+
- Compatibilité avec les technologies d'assistance
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
## Exemple d'utilisation
|
|
63
|
+
|
|
64
|
+
<Source dark code={`
|
|
65
|
+
<script setup lang="ts">
|
|
66
|
+
import { DeclarationAccessibilityPage } from '@cnamts/synapse'
|
|
67
|
+
</script>
|
|
68
|
+
|
|
69
|
+
<template>
|
|
70
|
+
<DeclarationAccessibilityPage
|
|
71
|
+
entityName="L'Assurance Maladie"
|
|
72
|
+
siteName="ameli.fr"
|
|
73
|
+
siteUrl="https://www.ameli.fr"
|
|
74
|
+
:averageComplianceRate="78"
|
|
75
|
+
auditEntity="Société d'audit AccessiWeb"
|
|
76
|
+
contactEmail="accessibilite@ameli.fr"
|
|
77
|
+
:nonConformities="[
|
|
78
|
+
'La vidéo de présentation n\'a pas de transcription. Cette erreur sera corrigée avant le 31 mars 2023.',
|
|
79
|
+
'Le bouton d\'envoi du formulaire contient un intitulé incorrect. Cette erreur sera corrigée prochainement.'
|
|
80
|
+
]"
|
|
81
|
+
/>
|
|
82
|
+
</template>
|
|
83
|
+
`} />
|