@cnamts/synapse 1.0.24 → 1.0.26
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/README.md +27 -5
- package/dist/{AutocompleteFilter-BWLR3U7W.js → AutocompleteFilter-BPR-a55G.js} +1 -1
- package/dist/{DateFilter-BpwFexzi.js → DateFilter-CknrJWs2.js} +2 -2
- package/dist/{NumberFilter-Bz_NTdX9.js → NumberFilter-DJ-yNlzv.js} +1 -1
- package/dist/{PeriodFilter-DX_wy9g-.js → PeriodFilter-CiB5Oa9Z.js} +1 -1
- package/dist/{SelectFilter-xqiPtPgX.js → SelectFilter-EiafX97M.js} +2 -2
- package/dist/{TextFilter-BBl3JFqK.js → TextFilter-BzOmpdxj.js} +1 -1
- package/dist/{apLightTheme-D1P4jcD0.js → apLightTheme-DS0Uy44H.js} +446 -723
- package/dist/components/Customs/Selects/SyAutocomplete/SyAutocomplete.d.ts +14 -8
- package/dist/components/Customs/Selects/SySelect/SySelect.d.ts +60 -289
- package/dist/components/Customs/SyCheckBoxGroup/SyCheckBoxGroup.d.ts +1 -0
- package/dist/components/Customs/SyCheckbox/SyCheckbox.d.ts +4 -0
- package/dist/components/Customs/SyRadioGroup/SyRadioGroup.d.ts +1 -0
- package/dist/components/Customs/SyTabs/SyTabs.d.ts +13 -11
- package/dist/components/Customs/SyTextField/SyTextField.d.ts +0 -2
- package/dist/components/DatePicker/CalendarMode/DatePicker.d.ts +54 -73
- package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +31 -40
- package/dist/components/DatePicker/DateTextInput/DateTextInput.d.ts +9 -14
- package/dist/components/DatePicker/composables/useDatePickerState.d.ts +4 -3
- package/dist/components/DatePicker/composables/useDateTextField.d.ts +2 -2
- package/dist/components/DatePicker/composables/useInputBlurHandler.d.ts +2 -2
- package/dist/components/DatePicker/types.d.ts +1 -2
- package/dist/components/FileList/FileList.d.ts +6 -0
- package/dist/components/FilterSideBar/FilterSideBar.d.ts +2 -0
- package/dist/components/HeaderNavigationBar/HeaderNavigationBar.d.ts +13 -13
- package/dist/components/HeaderNavigationBar/HorizontalNavbar/HorizontalNavbar.d.ts +3 -3
- package/dist/components/LunarCalendar/useLunarCalendarValidation.d.ts +1 -0
- package/dist/components/MonthPicker/MonthPicker.d.ts +2 -7
- package/dist/components/MonthPicker/MonthPickerText/MonthPickerInput.d.ts +2 -7
- package/dist/components/NirField/NirField.d.ts +12 -20
- package/dist/components/NirField/useNirValidation.d.ts +6 -2
- package/dist/components/PeriodField/PeriodField.d.ts +110 -150
- package/dist/components/PhoneField/PhoneField.d.ts +12 -7
- package/dist/components/RangeField/RangeSlider/RangeSlider.d.ts +0 -3
- package/dist/components/RatingPicker/EmotionPicker/EmotionPicker.d.ts +3 -1
- package/dist/components/RatingPicker/NumberPicker/NumberPicker.d.ts +4 -3
- package/dist/components/RatingPicker/RatingPicker.d.ts +18 -5
- package/dist/components/RatingPicker/StarsPicker/StarsPicker.d.ts +3 -1
- package/dist/components/RatingPicker/tests/RatingPicker.a11y.spect.d.ts +1 -0
- package/dist/components/RatingPicker/useRatingFocus.d.ts +18 -0
- package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +5 -4
- package/dist/components/Tables/SyTable/SyTable.d.ts +5 -4
- package/dist/components/Tables/common/SyTablePagination.d.ts +154 -364
- package/dist/components/Tables/common/TableHeader.d.ts +6 -1
- package/dist/components/Tables/common/filters/DateFilter.d.ts +4 -4
- package/dist/components/Tables/common/locales.d.ts +3 -0
- package/dist/components/Tables/common/types.d.ts +2 -0
- package/dist/components/UploadWorkflow/UploadWorkflow.d.ts +1 -0
- package/dist/composables/date/useDateInitializationDayjs.d.ts +3 -1
- package/dist/composables/unifyValidation/documentationValidationProps.d.ts +230 -0
- package/dist/composables/unifyValidation/useCustomValidation.d.ts +3 -1
- package/dist/composables/unifyValidation/useValidation.d.ts +12 -6
- package/dist/composables/unifyValidation/useVuetifyValidation.d.ts +1 -1
- package/dist/composables/validation/useValidation.d.ts +6 -1
- package/dist/design-system-v3.js +2 -2
- package/dist/designTokens/tokens/amelipro/apColors.d.ts +10 -10
- package/dist/designTokens/tokens/amelipro/apColors2026.d.ts +1 -2
- package/dist/designTokens/tokens/amelipro/apContextual.d.ts +44 -0
- package/dist/designTokens/tokens/amelipro/apLightTheme.d.ts +2 -0
- package/dist/designTokens/tokens/amelipro/apSemantic.d.ts +1 -1
- package/dist/designTokens/tokens/baseColors.d.ts +127 -0
- package/dist/designTokens/tokens/baseContextualTokens.d.ts +50 -0
- package/dist/designTokens/tokens/cnam/cnamColors.d.ts +10 -10
- package/dist/designTokens/tokens/cnam/cnamLightTheme.d.ts +2 -0
- package/dist/designTokens/tokens/cnam/cnamSemantic.d.ts +1 -1
- package/dist/designTokens/tokens/pa/paColors.d.ts +1 -166
- package/dist/designTokens/tokens/pa/paSemantic.d.ts +1 -1
- package/dist/designTokens/utils/buildColorClassMap.d.ts +12 -0
- package/dist/designTokens/utils/createFlattenTheme.d.ts +1 -3
- package/dist/designTokens/utils/index.d.ts +2 -2
- package/dist/{main-BtTqyn4z.js → main-BsJ9ec3i.js} +16021 -15715
- package/dist/synapse.css +1 -1
- package/dist/utils/functions/classToHex.d.ts +1 -1
- package/dist/utils/functions/createHexResolver.d.ts +16 -0
- package/dist/vuetifyConfig.js +113 -152
- package/package.json +35 -23
- package/src/assets/amelipro/apTokens2026.scss +5 -5
- package/src/assets/overrides/_breakpoints.scss +25 -0
- package/src/assets/overrides/_btns.scss +0 -2
- package/src/assets/overrides/_forms.scss +1 -3
- package/src/assets/overrides/_icons.scss +5 -22
- package/src/assets/overrides/_otp.scss +40 -0
- package/src/assets/overrides/_tables.scss +11 -20
- package/src/assets/overrides/_tooltips.scss +17 -7
- package/src/assets/overrides/_typography.scss +35 -37
- package/src/assets/overrides/_utilities.scss +43 -47
- package/src/assets/themes.scss +1 -0
- package/src/components/Accordion/Accordion.vue +2 -0
- package/src/components/Amelipro/AmeliproAccordion/AmeliproAccordionTemplate/AmeliproAccordionTemplate.vue +20 -20
- package/src/components/Amelipro/AmeliproAccordionFrieze/AmeliproAccordionFrieze.vue +12 -14
- package/src/components/Amelipro/AmeliproAccordionList/AmeliproAccordionList.vue +4 -6
- package/src/components/Amelipro/AmeliproAccordionResult/AmeliproAccordionResultTemplate/AmeliproAccordionResultTemplate.vue +5 -5
- package/src/components/Amelipro/AmeliproAccordionResultList/AmeliproAccordionResultList.vue +4 -6
- package/src/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.vue +4 -6
- package/src/components/Amelipro/AmeliproBadge/AmeliproBadge.vue +4 -6
- package/src/components/Amelipro/AmeliproBreadcrumb/AmeliproBreadcrumb.vue +1 -3
- package/src/components/Amelipro/AmeliproBtn/AmeliproBtn.vue +4 -6
- package/src/components/Amelipro/AmeliproCallback/AmeliproCallback.vue +2 -2
- package/src/components/Amelipro/AmeliproCard/AmeliproCard.vue +31 -31
- package/src/components/Amelipro/AmeliproCarousel/AmeliproCarousel.vue +5 -7
- package/src/components/Amelipro/AmeliproCheckbox/AmeliproCheckbox.vue +13 -15
- package/src/components/Amelipro/AmeliproCheckboxGroup/AmeliproCheckboxGroup.vue +23 -23
- package/src/components/Amelipro/AmeliproChips/AmeliproChips.vue +1 -3
- package/src/components/Amelipro/AmeliproClickableTile/AmeliproClickableTile.vue +17 -12
- package/src/components/Amelipro/AmeliproClickableTile/tests/__snapshots__/AmeliproClickableTile.spec.ts.snap +2 -2
- package/src/components/Amelipro/AmeliproCopyBtn/AmeliproCopyBtn.vue +4 -6
- package/src/components/Amelipro/AmeliproCustomSelector/AmeliproCustomSelector.vue +13 -13
- package/src/components/Amelipro/AmeliproDentalChart/AmeliproDentalChart.vue +4 -2
- package/src/components/Amelipro/AmeliproDentalChart/AmeliproTooth/AmeliproTooth.vue +4 -4
- package/src/components/Amelipro/AmeliproDialog/AmeliproDialog.vue +5 -7
- package/src/components/Amelipro/AmeliproDisclosure/AmeliproDisclosure.vue +1 -3
- package/src/components/Amelipro/AmeliproErrorTemplate/AmeliproErrorTemplate.vue +2 -4
- package/src/components/Amelipro/AmeliproFilePreview/AmeliproFilePreview.vue +4 -6
- package/src/components/Amelipro/AmeliproFilters/AmeliproFilters.vue +13 -13
- package/src/components/Amelipro/AmeliproFirstLogin/AmeliproFirstLogin.vue +3 -5
- package/src/components/Amelipro/AmeliproFooter/AmeliproFooter.vue +1 -3
- package/src/components/Amelipro/AmeliproHeader/AmeliproHeader.vue +2 -4
- package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBar.vue +1 -3
- package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBrandSection/AmeliproHeaderBrandSection.vue +20 -16
- package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBrandSection/__tests__/__snapshots__/AmeliproHeaderBrandSection.spec.ts.snap +1 -1
- package/src/components/Amelipro/AmeliproIconBtn/AmeliproIconBtn.vue +2 -4
- package/src/components/Amelipro/AmeliproIllustratedDataTile/AmeliproIllustratedDataTile.vue +5 -7
- package/src/components/Amelipro/AmeliproIllustratedRadioGroup/AmeliproIllustratedRadioGroup.vue +6 -8
- package/src/components/Amelipro/AmeliproMailTile/AmeliproMailTile.vue +14 -14
- package/src/components/Amelipro/AmeliproMenu/AmeliproMenu.vue +11 -13
- package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproDropdownMenu/AmeliproDropdownMenu.vue +2 -4
- package/src/components/Amelipro/AmeliproMessagingLayout/AmeliproMessagingLayout.vue +8 -8
- package/src/components/Amelipro/AmeliproMultipleFoldingCard/AmeliproMultipleFoldingCard.vue +40 -40
- package/src/components/Amelipro/AmeliproNumberedCard/AmeliproNumberedCard.vue +27 -27
- package/src/components/Amelipro/AmeliproOnboarding/AmeliproOnboarding.vue +3 -5
- package/src/components/Amelipro/AmeliproPageLayout/AmeliproPageLayout.vue +2 -4
- package/src/components/Amelipro/AmeliproPagination/AmeliproPagination.vue +2 -4
- package/src/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/AmeliproPaginationBtn.vue +3 -5
- package/src/components/Amelipro/AmeliproPatientBanner/AmeliproPatientBanner.vue +1 -3
- package/src/components/Amelipro/AmeliproPatientLogged/AmeliproPatientLogged.vue +2 -4
- package/src/components/Amelipro/AmeliproPatientLogin/AmeliproPatientLogin.vue +4 -4
- package/src/components/Amelipro/AmeliproPatientLogin/AmeliproPatientLoginForm/AmeliproPatientLoginForm.vue +1 -3
- package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/AmeliproPostalAddressCityRow.vue +3 -5
- package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressField.vue +3 -5
- package/src/components/Amelipro/AmeliproRadioGroup/AmeliproRadioGroup.vue +23 -23
- package/src/components/Amelipro/AmeliproResultList/AmeliproResultList.vue +4 -6
- package/src/components/Amelipro/AmeliproSelect/AmeliproSelect.vue +12 -22
- package/src/components/Amelipro/AmeliproStateTile/AmeliproStateTile.vue +10 -12
- package/src/components/Amelipro/AmeliproStepper/AmeliproStepper.vue +17 -17
- package/src/components/Amelipro/AmeliproTable/AmeliproTable.vue +8 -10
- package/src/components/Amelipro/AmeliproTabs/AmeliproTabBtn/AmeliproTabBtn.vue +6 -8
- package/src/components/Amelipro/AmeliproTabs/AmeliproTabs.vue +4 -4
- package/src/components/Amelipro/AmeliproTextArea/AmeliproTextArea.vue +4 -6
- package/src/components/Amelipro/AmeliproTextField/AmeliproTextField.vue +7 -9
- package/src/components/Amelipro/AmeliproTileBtn/AmeliproTileBtn.vue +3 -5
- package/src/components/Amelipro/AmeliproTooltips/AmeliproTooltips.vue +0 -2
- package/src/components/Amelipro/AmeliproUpload/AmeliproUpload.vue +6 -6
- package/src/components/Amelipro/ServiceMenu/ServiceMenu.vue +2 -2
- package/src/components/Amelipro/StructureMenu/StructureBtn/StructureBtn.vue +4 -4
- package/src/components/Amelipro/StructureMenu/StructureItem/StructureItem.vue +4 -6
- package/src/components/Amelipro/StructureMenu/StructureMenu.vue +2 -2
- package/src/components/Amelipro/StructureMenu/StructureTabs/StructureTabs.vue +2 -2
- package/src/components/Amelipro/UserMenu/UserMenu.vue +1 -3
- package/src/components/BackBtn/tests/BackBtn.visual.cy.ts +43 -0
- package/src/components/BackBtn/tests/__snapshots__/back-btn-custom-bg.snap.png +0 -0
- package/src/components/BackBtn/tests/__snapshots__/back-btn-dark-mode.snap.png +0 -0
- package/src/components/BackBtn/tests/__snapshots__/back-btn-default.snap.png +0 -0
- package/src/components/BackBtn/tests/__snapshots__/back-btn-no-icon.snap.png +0 -0
- package/src/components/Captcha/Captcha.vue +1 -3
- package/src/components/ChipList/ChipList.vue +14 -16
- package/src/components/CookiesSelection/CookiesInformation/CookiesInformation.vue +2 -3
- package/src/components/CookiesSelection/CookiesSelection.vue +2 -1
- package/src/components/CopyBtn/CopyBtn.vue +10 -3
- package/src/components/Customs/Selects/SelectBtnField/SelectBtnField.vue +17 -17
- package/src/components/Customs/Selects/SelectBtnField/tests/SelectBtnField.spec.ts +31 -0
- package/src/components/Customs/Selects/SyAutocomplete/SyAutocomplete.stories.ts +66 -0
- package/src/components/Customs/Selects/SyAutocomplete/SyAutocomplete.vue +8 -4
- package/src/components/Customs/Selects/SyAutocomplete/tests/SyAutocomplete.a11y.spec.ts +18 -0
- package/src/components/Customs/Selects/SyAutocomplete/tests/SyAutocomplete.spec.ts +66 -0
- package/src/components/Customs/Selects/SyInputSelect/SyInputSelect.vue +4 -6
- package/src/components/Customs/Selects/SySelect/SySelect.stories.ts +414 -135
- package/src/components/Customs/Selects/SySelect/SySelect.vue +502 -257
- package/src/components/Customs/Selects/SySelect/accessibilite/Accessibility.mdx +199 -269
- package/src/components/Customs/Selects/SySelect/tests/SySelect.spec.ts +278 -4
- package/src/components/Customs/SyCheckBoxGroup/SyCheckBoxGroup.vue +3 -3
- package/src/components/Customs/SyCheckbox/SyCheckbox.mdx +5 -0
- package/src/components/Customs/SyCheckbox/SyCheckbox.vue +52 -2
- package/src/components/Customs/SyCheckbox/accessibilite/Accessibility.mdx +18 -3
- package/src/components/Customs/SyPagination/SyPagination.vue +0 -2
- package/src/components/Customs/SyRadioGroup/SyRadioGroup.vue +23 -5
- package/src/components/Customs/SyTabs/SyTabs.mdx +0 -58
- package/src/components/Customs/SyTabs/SyTabs.stories.ts +34 -35
- package/src/components/Customs/SyTabs/SyTabs.vue +87 -67
- package/src/components/Customs/SyTabs/accessibilite/Accessibility.mdx +83 -23
- package/src/components/Customs/SyTabs/config.ts +3 -3
- package/src/components/Customs/SyTabs/tests/SyTabs.a11y.spec.ts +88 -0
- package/src/components/Customs/SyTabs/tests/SyTabs.spec.ts +46 -1
- package/src/components/Customs/SyTextField/SyTextField.stories.ts +21 -41
- package/src/components/Customs/SyTextField/SyTextField.vue +34 -9
- package/src/components/DatePicker/CalendarMode/DatePicker.stories.ts +1 -1
- package/src/components/DatePicker/CalendarMode/DatePicker.vue +29 -28
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.stories.ts +1 -1
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +28 -23
- package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.spec.ts +24 -1
- package/src/components/DatePicker/DatePickerValidationExample/DatePickerValidation.stories.ts +1 -1
- package/src/components/DatePicker/DateTextInput/DateTextInput.vue +65 -33
- package/src/components/DatePicker/DateTextInput/NoCalendar.stories.ts +1 -1
- package/src/components/DatePicker/composables/tests/useDatePickerState.spec.ts +53 -0
- package/src/components/DatePicker/composables/useDatePickerState.ts +56 -13
- package/src/components/DatePicker/composables/useDateRangeInput.ts +2 -1
- package/src/components/DatePicker/composables/useDateSelection.ts +2 -1
- package/src/components/DatePicker/composables/useDateTextField.ts +2 -3
- package/src/components/DatePicker/composables/useInputBlurHandler.ts +2 -2
- package/src/components/DatePicker/composables/useMonthButtonCustomization.ts +9 -8
- package/src/components/DatePicker/playground/DatePickerHolidayRule.vue +1 -1
- package/src/components/DatePicker/types.ts +1 -2
- package/src/components/DialogBox/DialogBox.stories.ts +8 -8
- package/src/components/DialogBox/DialogBox.vue +3 -5
- package/src/components/DialogBox/accessibilite/Accessibility.mdx +86 -22
- package/src/components/DialogBox/tests/DialogBox.visual.cy.ts +76 -0
- package/src/components/DialogBox/tests/__snapshots__/dialog-box-custom-texts.snap.png +0 -0
- package/src/components/DialogBox/tests/__snapshots__/dialog-box-default.snap.png +0 -0
- package/src/components/DialogBox/tests/__snapshots__/dialog-box-no-actions.snap.png +0 -0
- package/src/components/FileList/FileList.vue +9 -2
- package/src/components/FileList/UploadItem/UploadItem.vue +11 -13
- package/src/components/FileList/tests/FileList.spec.ts +47 -0
- package/src/components/FileUpload/FileUpload.vue +3 -5
- package/src/components/FileUpload/FileUploadContent.vue +3 -5
- package/src/components/FilterInline/FilterInline.vue +1 -3
- package/src/components/FilterSideBar/FilterSideBar.mdx +44 -1
- package/src/components/FilterSideBar/FilterSideBar.stories.ts +105 -1
- package/src/components/FilterSideBar/FilterSideBar.vue +9 -1
- package/src/components/FilterSideBar/tests/FilterSideBar.a11y.spec.ts +54 -1
- package/src/components/FilterSideBar/tests/FilterSideBar.spec.ts +42 -0
- package/src/components/FooterBar/FooterBar.vue +9 -13
- package/src/components/FranceConnectBtn/FranceConnectBtn.vue +1 -1
- package/src/components/HeaderBar/HeaderBar.vue +2 -3
- package/src/components/HeaderBar/HeaderBurgerMenu/HeaderBurgerMenu.vue +2 -3
- package/src/components/HeaderBar/HeaderBurgerMenu/HeaderMenuItem/HeaderMenuItem.vue +2 -3
- package/src/components/HeaderBar/HeaderBurgerMenu/HeaderMenuSection/HeaderMenuSection.vue +0 -1
- package/src/components/HeaderBar/HeaderBurgerMenu/HeaderSubMenu/HeaderSubMenu.vue +8 -9
- package/src/components/HeaderBar/HeaderBurgerMenu/menu.scss +0 -8
- package/src/components/HeaderBar/HeaderBurgerMenu/tests/HeaderBurgerMenu.visual.cy.ts +196 -0
- package/src/components/HeaderBar/HeaderBurgerMenu/tests/__snapshots__/header-burger-menu-generated-submenu-open.snap.png +0 -0
- package/src/components/HeaderBar/HeaderBurgerMenu/tests/__snapshots__/header-burger-menu-generated.snap.png +0 -0
- package/src/components/HeaderBar/HeaderLogo/HeaderLogo.vue +0 -1
- package/src/components/HeaderBar/HeaderMenuBtn/HeaderMenuBtn.vue +6 -7
- package/src/components/HeaderBar/tests/HeaderBar.visual.cy.ts +81 -0
- package/src/components/HeaderBar/tests/__snapshots__/header-bar-custom-width.snap.png +0 -0
- package/src/components/HeaderBar/tests/__snapshots__/header-bar-default.snap.png +0 -0
- package/src/components/HeaderBar/tests/__snapshots__/header-bar-no-sticky.snap.png +0 -0
- package/src/components/HeaderBar/tests/__snapshots__/header-bar-with-prepend.snap.png +0 -0
- package/src/components/HeaderBar/tests/__snapshots__/header-bar-with-side.snap.png +0 -0
- package/src/components/HeaderBar/tests/__snapshots__/header-bar-with-subtitle.snap.png +0 -0
- package/src/components/HeaderNavigationBar/HeaderNavigationBar.vue +12 -3
- package/src/components/HeaderNavigationBar/HorizontalNavbar/HorizontalNavbar.vue +15 -8
- package/src/components/HeaderToolbar/HeaderToolbar.vue +6 -7
- package/src/components/LangBtn/LangBtn.vue +4 -5
- package/src/components/Logo/tests/Logo.visual.cy.ts +57 -0
- package/src/components/Logo/tests/__snapshots__/logo-avatar.snap.png +0 -0
- package/src/components/Logo/tests/__snapshots__/logo-dark.snap.png +0 -0
- package/src/components/Logo/tests/__snapshots__/logo-default.snap.png +0 -0
- package/src/components/Logo/tests/__snapshots__/logo-no-organism.snap.png +0 -0
- package/src/components/Logo/tests/__snapshots__/logo-no-signature.snap.png +0 -0
- package/src/components/Logo/tests/__snapshots__/logo-risque-pro.snap.png +0 -0
- package/src/components/LogoBrandSection/LogoBrandSection.vue +2 -2
- package/src/components/MonthPicker/MonthPickerVisual/VisualPickerHeader.vue +1 -1
- package/src/components/NirField/NirField.stories.ts +2 -2
- package/src/components/NirField/NirField.vue +3 -5
- package/src/components/NirField/accessibilite/Accessibility.mdx +100 -5
- package/src/components/NirField/tests/NirField.spec.ts +118 -0
- package/src/components/NirField/tests/useNirValidation.spec.ts +449 -0
- package/src/components/NirField/useNirValidation.ts +38 -32
- package/src/components/NotificationBar/Notification/Notification.vue +7 -9
- package/src/components/NotificationBar/NotificationBar.vue +1 -3
- package/src/components/PaginatedTable/PaginatedTable.vue +3 -4
- package/src/components/PaginatedTable/Pagination.vue +4 -6
- package/src/components/PasswordField/PasswordField.vue +15 -13
- package/src/components/PhoneField/PhoneField.vue +7 -5
- package/src/components/RangeField/RangeSlider/RangeSlider.vue +11 -20
- package/src/components/RangeField/RangeSlider/Tooltip/Tooltip.vue +1 -1
- package/src/components/RangeField/tests/RangeField.visual.cy.ts +65 -0
- package/src/components/RangeField/tests/__snapshots__/range-field-custom-bg.snap.png +0 -0
- package/src/components/RangeField/tests/__snapshots__/range-field-custom-range.snap.png +0 -0
- package/src/components/RangeField/tests/__snapshots__/range-field-default.snap.png +0 -0
- package/src/components/RangeField/tests/__snapshots__/range-field-step.snap.png +0 -0
- package/src/components/RangeField/tests/__snapshots__/range-field-with-label.snap.png +0 -0
- package/src/components/RatingPicker/EmotionPicker/EmotionPicker.vue +38 -56
- package/src/components/RatingPicker/EmotionPicker/tests/__snapshots__/EmotionPicker.spec.ts.snap +5 -0
- package/src/components/RatingPicker/NumberPicker/NumberPicker.vue +48 -53
- package/src/components/RatingPicker/NumberPicker/tests/NumberPicker.spec.ts +2 -1
- package/src/components/RatingPicker/NumberPicker/tests/__snapshots__/NumberPicker.spec.ts.snap +40 -13
- package/src/components/RatingPicker/RatingPicker.stories.ts +65 -88
- package/src/components/RatingPicker/RatingPicker.vue +71 -15
- package/src/components/RatingPicker/StarsPicker/StarsPicker.vue +31 -42
- package/src/components/RatingPicker/StarsPicker/tests/StarsPicker.spec.ts +1 -1
- package/src/components/RatingPicker/StarsPicker/tests/__snapshots__/StarsPicker.spec.ts.snap +5 -0
- package/src/components/RatingPicker/accessibilite/Accessibility.mdx +137 -9
- package/src/components/RatingPicker/tests/RatingPicker.a11y.spect.ts +123 -0
- package/src/components/RatingPicker/tests/RatingPicker.spec.ts +3 -2
- package/src/components/RatingPicker/tests/__snapshots__/RatingPicker.spec.ts.snap +40 -11
- package/src/components/RatingPicker/useRatingFocus.ts +97 -0
- package/src/components/SearchListField/SearchListField.vue +0 -2
- package/src/components/SkipLink/SkipLink.vue +2 -4
- package/src/components/SocialMediaLinks/SocialMediaLinks.vue +6 -6
- package/src/components/SubHeader/SubHeader.vue +1 -1
- package/src/components/SyAlert/SyAlert.vue +7 -9
- package/src/components/SyAlert/tests/SyAlert.visual.cy.ts +46 -0
- package/src/components/SyAlert/tests/__snapshots__/sy-alert-closable.snap.png +0 -0
- package/src/components/SyAlert/tests/__snapshots__/sy-alert-error.snap.png +0 -0
- package/src/components/SyAlert/tests/__snapshots__/sy-alert-info.snap.png +0 -0
- package/src/components/SyAlert/tests/__snapshots__/sy-alert-success.snap.png +0 -0
- package/src/components/SyAlert/tests/__snapshots__/sy-alert-variant-outlined.snap.png +0 -0
- package/src/components/SyAlert/tests/__snapshots__/sy-alert-variant-tonal.snap.png +0 -0
- package/src/components/SyAlert/tests/__snapshots__/sy-alert-warning.snap.png +0 -0
- package/src/components/SyBtnMenu/SyBtnMenu.vue +2 -4
- package/src/components/SyTextArea/SyTextArea.vue +32 -1
- package/src/components/TableToolbar/TableToolbar.vue +6 -8
- package/src/components/Tables/SyServerTable/SyServerTable.stories.ts +166 -0
- package/src/components/Tables/SyServerTable/SyServerTable.vue +10 -8
- package/src/components/Tables/SyServerTable/tests/SyServerTable.a11y.spec.ts +23 -0
- package/src/components/Tables/SyServerTable/tests/SyServerTable.spec.ts +268 -0
- package/src/components/Tables/SyTable/SyTable.stories.ts +104 -0
- package/src/components/Tables/SyTable/SyTable.vue +10 -8
- package/src/components/Tables/SyTable/tests/SyTable.a11y.spec.ts +22 -0
- package/src/components/Tables/SyTable/tests/SyTable.spec.ts +274 -0
- package/src/components/Tables/common/SyTableFilter.vue +31 -6
- package/src/components/Tables/common/SyTablePagination.vue +143 -19
- package/src/components/Tables/common/TableHeader.vue +41 -4
- package/src/components/Tables/common/filters/DateFilter.vue +2 -2
- package/src/components/Tables/common/filters/SelectFilter.vue +1 -1
- package/src/components/Tables/common/locales.ts +3 -0
- package/src/components/Tables/common/tableStyles.scss +16 -19
- package/src/components/Tables/common/tests/SyTablePagination.spec.ts +18 -0
- package/src/components/Tables/common/tests/TableHeader.spec.ts +39 -0
- package/src/components/Tables/common/types.ts +2 -0
- package/src/components/Tables/common/useTableHeaders.ts +49 -27
- package/src/components/UploadWorkflow/UploadWorkflow.vue +1 -0
- package/src/components/UploadWorkflow/tests/UploadWorkflow.spec.ts +23 -0
- package/src/components/UploadWorkflow/tests/__snapshots__/UploadWorkflow.spec.ts.snap +66 -0
- package/src/components/UploadWorkflow/useFileList.ts +3 -0
- package/src/components/UserMenuBtn/UserMenuBtn.vue +1 -3
- package/src/composables/date/tests/useDateFormatDayjs.spec.ts +81 -0
- package/src/composables/date/tests/{useDateInitialization.spec.ts → useDateInitializationDayjs.spec.ts} +39 -3
- package/src/composables/date/useDateInitializationDayjs.ts +4 -1
- package/src/composables/unifyValidation/documentationValidationProps.ts +235 -0
- package/src/composables/unifyValidation/tests/useCustomValidation.spec.ts +2 -1
- package/src/composables/unifyValidation/tests/useValidation.spec.ts +22 -0
- package/src/composables/unifyValidation/useCustomValidation.ts +16 -4
- package/src/composables/unifyValidation/useValidation.ts +46 -15
- package/src/composables/unifyValidation/useVuetifyValidation.ts +2 -2
- package/src/composables/useFormFieldErrorHandling.ts +4 -1
- package/src/composables/validation/tests/useValidation.spec.ts +2 -2
- package/src/composables/validation/useValidation.ts +32 -4
- package/src/composantsVuetify/VBreadcrumbs/VBreadcrumbs.mdx +28 -0
- package/src/composantsVuetify/VBreadcrumbs/v-breadcrumbs.stories.ts +108 -0
- package/src/composantsVuetify/VCard/VCard.mdx +59 -0
- package/src/composantsVuetify/VCard/v-card.stories.ts +279 -0
- package/src/composantsVuetify/VOtpInput/VOtpInput.mdx +39 -0
- package/src/composantsVuetify/VOtpInput/v-otp-input.stories.ts +56 -0
- package/src/composantsVuetify/VSkeletonLoader/VSkeletonLoader.mdx +42 -0
- package/src/composantsVuetify/VSkeletonLoader/v-skeleton-loader.stories.ts +77 -0
- package/src/composantsVuetify/VSwitch/VSwitch.mdx +47 -0
- package/src/composantsVuetify/VSwitch/v-switch.stories.ts +166 -0
- package/src/designTokens/tests/buildColorClassMap.spec.ts +31 -0
- package/src/designTokens/tests/generateScssTokens.spec.ts +12 -0
- package/src/designTokens/tests/themeUtils.spec.ts +53 -0
- package/src/designTokens/tokens/amelipro/apColors.ts +8 -130
- package/src/designTokens/tokens/amelipro/apColors2026.ts +3 -15
- package/src/designTokens/tokens/amelipro/apContextual.ts +55 -47
- package/src/designTokens/tokens/amelipro/apLightTheme.ts +4 -1
- package/src/designTokens/tokens/amelipro/apSemantic.ts +1 -1
- package/src/designTokens/tokens/baseColors.ts +129 -0
- package/src/designTokens/tokens/baseContextualTokens.ts +52 -0
- package/src/designTokens/tokens/cnam/cnamColors.ts +3 -125
- package/src/designTokens/tokens/cnam/cnamContextual.ts +4 -48
- package/src/designTokens/tokens/cnam/cnamLightTheme.ts +4 -1
- package/src/designTokens/tokens/cnam/cnamSemantic.ts +1 -1
- package/src/designTokens/tokens/pa/paColors.ts +2 -166
- package/src/designTokens/tokens/pa/paContextual.ts +3 -48
- package/src/designTokens/tokens/pa/paLightTheme.ts +1 -1
- package/src/designTokens/tokens/pa/paSemantic.ts +2 -2
- package/src/designTokens/utils/buildColorClassMap.ts +34 -0
- package/src/designTokens/utils/convertSemanticsToken.ts +8 -11
- package/src/designTokens/utils/createFlattenTheme.ts +15 -7
- package/src/designTokens/utils/index.ts +2 -2
- package/src/stories/Accessibilite/Aculturation/SensibilisationAccessibilite.mdx +61 -91
- package/src/stories/Accessibilite/AuditDesignSystem.mdx +5 -19
- package/src/stories/Accessibilite/AuditEtContreAudit/Exemptions-derogations.mdx +1 -1
- package/src/stories/Accessibilite/AuditEtContreAudit/Introduction.mdx +11 -8
- package/src/stories/Accessibilite/AuditEtContreAudit/RGAA.mdx +6 -7
- package/src/stories/Accessibilite/DesignSystem/Avancement.mdx +433 -0
- package/src/stories/Accessibilite/DesignSystem/a11y-status.json +692 -0
- package/src/stories/Accessibilite/Introduction.mdx +30 -30
- package/src/stories/Accessibilite/KitDePreAudit/Echantillonnage.mdx +176 -79
- package/src/stories/Accessibilite/KitDePreAudit/Introduction.mdx +67 -19
- package/src/stories/Accessibilite/KitDePreAudit/Outils/Introduction.mdx +78 -50
- package/src/stories/Accessibilite/KitDePreAudit/Outils/LecteursDEcran.mdx +23 -49
- package/src/stories/Accessibilite/KitDePreAudit/Outils/Tanaguru/FauxPositifs.stories.ts +6 -0
- package/src/stories/Accessibilite/KitDePreAudit/Outils/Tanaguru/Utilisation.mdx +7 -19
- package/src/stories/Accessibilite/KitDePreAudit/Preaudit.mdx +55 -67
- package/src/stories/Components/Components.stories.ts +92 -4
- package/src/stories/Demarrer/EnrichirLeDesignSystem.mdx +4 -9
- package/src/stories/Demarrer/EnrichirLeDesignSystem.stories.ts +28 -0
- package/src/stories/Demarrer/Releases.stories.ts +48 -5
- package/src/stories/DesignTokens/ColorDisplay.vue +6 -5
- package/src/stories/DesignTokens/ColorIntegrationExample.vue +2 -4
- package/src/stories/DesignTokens/colors.stories.ts +5 -6
- package/src/stories/GuideDuDev/CreateVuetifyInstance.mdx +95 -0
- package/src/stories/GuideDuDev/Theme.mdx +36 -26
- package/src/stories/GuideDuDev/moduleDeNotification.mdx +3 -2
- package/src/stories/styles/accessibility-guide.css +3 -3
- package/src/utils/functions/classToHex.ts +6 -34
- package/src/utils/functions/createHexResolver.ts +45 -0
- package/src/utils/functions/tests/classToHex.spec.ts +36 -0
- package/src/utils/functions/tests/convertToHex.spec.ts +31 -0
- package/src/utils/functions/tests/createHexResolver.spec.ts +66 -0
- package/src/utils/functions/tests/isCssColor.spec.ts +48 -0
- package/dist/AutocompleteFilter-D9jzRzAL.cjs +0 -1
- package/dist/DateFilter-DTUl8hb1.cjs +0 -1
- package/dist/NumberFilter-MAEojdk0.cjs +0 -1
- package/dist/PeriodFilter-CC4WgIhl.cjs +0 -1
- package/dist/SelectFilter-BR3fvl-a.cjs +0 -1
- package/dist/TextFilter-CCfYFl5F.cjs +0 -1
- package/dist/apLightTheme-CFSRrjv2.cjs +0 -1
- package/dist/composables/date/useDateFormat.d.ts +0 -26
- package/dist/composables/date/useDateInitialization.d.ts +0 -18
- package/dist/design-system-v3.umd.cjs +0 -1
- package/dist/designTokens/utils/convertGaps.d.ts +0 -5
- package/dist/main-C1e3eoxd.cjs +0 -1067
- package/dist/tooth-11-D3sLWv2n.cjs +0 -1
- package/dist/tooth-12-CXrLuH03.cjs +0 -1
- package/dist/tooth-13-BSfo5fpT.cjs +0 -1
- package/dist/tooth-14-DMzulx0h.cjs +0 -1
- package/dist/tooth-15-BKRFVi-9.cjs +0 -1
- package/dist/tooth-16-CpuxAbuM.cjs +0 -1
- package/dist/tooth-17-BPoahUdg.cjs +0 -1
- package/dist/tooth-18-DhHJz8sy.cjs +0 -1
- package/dist/tooth-21-Dgd5hn_X.cjs +0 -1
- package/dist/tooth-22-C2Tn19sB.cjs +0 -1
- package/dist/tooth-23-C9uaaSGb.cjs +0 -1
- package/dist/tooth-24-BrK9UGpf.cjs +0 -1
- package/dist/tooth-25-CE_EfGNp.cjs +0 -1
- package/dist/tooth-26-Ctv4i9Fy.cjs +0 -1
- package/dist/tooth-27-C5J7JkWM.cjs +0 -1
- package/dist/tooth-28-Z9oWqjo0.cjs +0 -1
- package/dist/tooth-31-BrYqmkTi.cjs +0 -1
- package/dist/tooth-32-BNNR0oCZ.cjs +0 -1
- package/dist/tooth-33-DuxvqO2J.cjs +0 -1
- package/dist/tooth-34-BCSCXMB6.cjs +0 -1
- package/dist/tooth-35-BLUXkX88.cjs +0 -1
- package/dist/tooth-36-IrKHYqlA.cjs +0 -1
- package/dist/tooth-37-BYqpdMwo.cjs +0 -1
- package/dist/tooth-38-B_eNXXdu.cjs +0 -1
- package/dist/tooth-41-Ddva4Ot8.cjs +0 -1
- package/dist/tooth-42-szcDqlM0.cjs +0 -1
- package/dist/tooth-43-B3ka6rQm.cjs +0 -1
- package/dist/tooth-44-CazyQucj.cjs +0 -1
- package/dist/tooth-45-B4HQtc8n.cjs +0 -1
- package/dist/tooth-46-BPM40gbG.cjs +0 -1
- package/dist/tooth-47-Dvr20dlh.cjs +0 -1
- package/dist/tooth-48-Bd8ljGsF.cjs +0 -1
- package/dist/tooth-51-OBpwCOF3.cjs +0 -1
- package/dist/tooth-52-aKxyHcmq.cjs +0 -1
- package/dist/tooth-53-vCwJjTOc.cjs +0 -1
- package/dist/tooth-54-DsWu2iFy.cjs +0 -1
- package/dist/tooth-55-BxC1X2Dn.cjs +0 -1
- package/dist/tooth-61-BbLvxMQi.cjs +0 -1
- package/dist/tooth-62-CmTkWczP.cjs +0 -1
- package/dist/tooth-63-DI7l_2qI.cjs +0 -1
- package/dist/tooth-64-B21sOsJh.cjs +0 -1
- package/dist/tooth-65-D2ZC2VEr.cjs +0 -1
- package/dist/tooth-71-D473PPO5.cjs +0 -1
- package/dist/tooth-72-Drh1wnNu.cjs +0 -1
- package/dist/tooth-73-DzlwYI23.cjs +0 -1
- package/dist/tooth-74-8aGvcZPg.cjs +0 -1
- package/dist/tooth-75-BFK7At_r.cjs +0 -1
- package/dist/tooth-81-BZmR-I0M.cjs +0 -1
- package/dist/tooth-82-euVfUUZV.cjs +0 -1
- package/dist/tooth-83-KV010j64.cjs +0 -1
- package/dist/tooth-84-BBg1RjhZ.cjs +0 -1
- package/dist/tooth-85-Cr-kc1wM.cjs +0 -1
- package/dist/vuetifyConfig.umd.cjs +0 -1
- package/src/assets/apTokens.scss +0 -343
- package/src/assets/overrides/_container.scss +0 -36
- package/src/assets/tokens.scss +0 -388
- package/src/composables/date/tests/useDateFormat.spec.ts +0 -67
- package/src/composables/date/useDateFormat.ts +0 -110
- package/src/composables/date/useDateInitialization.ts +0 -92
- package/src/designTokens/apColors.md +0 -66
- package/src/designTokens/cnamColors.md +0 -193
- package/src/designTokens/paColors.md +0 -66
- package/src/designTokens/tokens/json/contextual-tokens.json +0 -156
- package/src/designTokens/tokens/json/primitives.json +0 -209
- package/src/designTokens/tokens/json/semantic.json +0 -120
- package/src/designTokens/utils/convertGaps.ts +0 -11
- package/src/stories/Accessibilite/Avancement/Avancement.mdx +0 -533
- package/src/stories/Accessibilite/Avancement/Avancement.stories.ts +0 -306
|
@@ -34,12 +34,9 @@ import '../../styles/shared.css';
|
|
|
34
34
|
|
|
35
35
|
.info-section {
|
|
36
36
|
margin: 2.5rem 0;
|
|
37
|
-
padding: 2rem;
|
|
38
37
|
background-color: var(--neutral-100);
|
|
39
38
|
border-radius: var(--radius-md);
|
|
40
|
-
box-shadow: var(--shadow-sm);
|
|
41
39
|
transition: var(--transition);
|
|
42
|
-
border: 1px solid var(--neutral-300);
|
|
43
40
|
}
|
|
44
41
|
|
|
45
42
|
.info-section h2 {
|
|
@@ -48,6 +45,7 @@ import '../../styles/shared.css';
|
|
|
48
45
|
margin-top: 0;
|
|
49
46
|
color: var(--primary);
|
|
50
47
|
font-weight: 700;
|
|
48
|
+
font-size: 1.6rem;
|
|
51
49
|
display: flex;
|
|
52
50
|
align-items: center;
|
|
53
51
|
gap: 0.5rem;
|
|
@@ -60,7 +58,6 @@ import '../../styles/shared.css';
|
|
|
60
58
|
left: 0;
|
|
61
59
|
width: 60px;
|
|
62
60
|
height: 3px;
|
|
63
|
-
|
|
64
61
|
border-radius: 3px;
|
|
65
62
|
}
|
|
66
63
|
|
|
@@ -78,28 +75,15 @@ import '../../styles/shared.css';
|
|
|
78
75
|
}
|
|
79
76
|
|
|
80
77
|
.verification-card {
|
|
81
|
-
background-color: var(--neutral-200);
|
|
82
|
-
border: 1px solid var(--neutral-300);
|
|
83
78
|
padding: 1.75rem;
|
|
84
79
|
margin-bottom: 2rem;
|
|
85
80
|
border-radius: var(--radius-md);
|
|
86
|
-
box-shadow: var(--shadow-sm);
|
|
87
81
|
transition: var(--transition);
|
|
88
82
|
position: relative;
|
|
89
83
|
}
|
|
90
84
|
|
|
91
|
-
.verification-card::before {
|
|
92
|
-
content: '';
|
|
93
|
-
position: absolute;
|
|
94
|
-
left: 0;
|
|
95
|
-
top: 0;
|
|
96
|
-
height: 100%;
|
|
97
|
-
width: 4px;
|
|
98
|
-
background: linear-gradient(to bottom, var(--primary), var(--primary-light));
|
|
99
|
-
border-radius: var(--radius-sm) 0 0 var(--radius-sm);
|
|
100
|
-
}
|
|
101
85
|
|
|
102
|
-
.verification-card
|
|
86
|
+
.verification-card h2 {
|
|
103
87
|
color: var(--primary);
|
|
104
88
|
margin-top: 0;
|
|
105
89
|
display: flex;
|
|
@@ -146,12 +130,12 @@ import '../../styles/shared.css';
|
|
|
146
130
|
background: linear-gradient(135deg, #f0f7ff 0%, #e6f0ff 100%);
|
|
147
131
|
border-radius: var(--radius-md);
|
|
148
132
|
padding: 1.75rem;
|
|
149
|
-
margin:
|
|
133
|
+
margin: 1rem 0;
|
|
150
134
|
border: 1px solid #d9e8ff;
|
|
151
135
|
position: relative;
|
|
152
136
|
}
|
|
153
137
|
|
|
154
|
-
.contact-info
|
|
138
|
+
.contact-info h2 {
|
|
155
139
|
color: var(--primary-dark);
|
|
156
140
|
margin-top: 0;
|
|
157
141
|
display: flex;
|
|
@@ -168,6 +152,10 @@ import '../../styles/shared.css';
|
|
|
168
152
|
color: var(--primary-dark);
|
|
169
153
|
border: 1px solid var(--neutral-300);
|
|
170
154
|
}
|
|
155
|
+
|
|
156
|
+
h4 {
|
|
157
|
+
font-weight: bold !important;
|
|
158
|
+
}
|
|
171
159
|
|
|
172
160
|
a {
|
|
173
161
|
color: var(--primary);
|
|
@@ -187,61 +175,61 @@ import '../../styles/shared.css';
|
|
|
187
175
|
|
|
188
176
|
<div className="header">
|
|
189
177
|
<h1>Pré-audit d'accessibilité</h1>
|
|
190
|
-
<p>Vérifiez la conformité de votre service web avant l'audit officiel
|
|
178
|
+
<p>Vérifiez la conformité de votre service web avant l'audit officiel ou pendant les phases de développement.</p>
|
|
191
179
|
</div>
|
|
192
180
|
|
|
193
181
|
<div className="info-section">
|
|
194
|
-
<h2
|
|
195
|
-
<p>L'
|
|
182
|
+
<h2>Objectif:</h2>
|
|
183
|
+
<p>L'Objectif du pré-audit est d'atteindre en semi-autonomie un premier palier de conformité de votre service web avant de convenir d'un réel audit <abbr title="Référentiel Général d'Amélioration de l'Accessibilité">RGAA</abbr>. La procédure se fait en autonomie par l'équipe de développement du produit. Le relevé des non-conformités relève de la responsabilité de l’équipe de développement, ce kit étant conçu pour guider l’auto-évaluation.</p>
|
|
196
184
|
|
|
197
185
|
<p>Pour prouver ce palier et être éligible à la demande d'audit complet vous devez compléter <a href="/documents/Checklist_pre-audit_CNAM_NOM_DU_PRODUIT.xlsx" target="_blank">ce fichier</a> qui mentionne les exigences requises par la vérification assistée des outils automatisés et la vérification manuelle.</p>
|
|
186
|
+
|
|
187
|
+
<p>Les tests ci dessous permettent aussi de vérifier tout au long des phases de développement, qu’un niveau intermédiaire d’accessibilité est bien respecté.</p>
|
|
198
188
|
</div>
|
|
199
189
|
|
|
200
190
|
<div className="contact-info">
|
|
201
|
-
<
|
|
191
|
+
<h2>Contact et assistance</h2>
|
|
202
192
|
<p>Dans le cas où vous rencontrez une difficulté avec un test, un critère ou un outil n'hésitez pas à nous contacter via l'adresse <a href="mailto:valentin.becquet@assurance-maladie.fr">valentin.becquet@assurance-maladie.fr</a> (cette adresse évoluera prochainement).</p>
|
|
203
193
|
|
|
204
194
|
<p>Pour demander un audit, contactez également cette adresse. L'acceptance de la demande est soumise à la démonstration de l'effort engagé par l'équipe-produit. Cette appréciation fera l'objet d'une discussion.</p>
|
|
205
195
|
</div>
|
|
206
196
|
|
|
207
197
|
<div className="alert">
|
|
208
|
-
<p><strong
|
|
198
|
+
<p><strong>Rappel important :</strong> Avant de lancer votre pré-audit, vous devez définir l'échantillon de votre audit. Vous trouverez toutes les informations associées <a href="/?path=/docs/accessibilit%C3%A9-kit-de-pr%C3%A9-audit-%C3%A9chantillonnage--docs">ici</a>.</p>
|
|
209
199
|
</div>
|
|
210
200
|
|
|
211
201
|
<div className="info-section">
|
|
212
|
-
<h2
|
|
202
|
+
<h2>Vérification assistée des outils automatisés</h2>
|
|
213
203
|
|
|
214
204
|
<div className="verification-card">
|
|
215
|
-
<
|
|
205
|
+
<h2>Utilisation de Tanaguru</h2>
|
|
216
206
|
<p>Lancez Tanaguru sur chaque page de l'échantillon de test. Vous pouvez retrouver une documentation d'utilisation de Tanaguru <a href="/?path=/docs/accessibilité-kit-de-pré-audit-outils-tanaguru-utilisation--docs">ici</a>.</p>
|
|
217
207
|
|
|
218
208
|
<div className="alert">
|
|
219
209
|
<p><strong>Capacité de l'outil :</strong> Tanaguru peut contrôler <span className="highlight">158 tests sur les 258</span> du <abbr title="Référentiel Général d'Amélioration de l'Accessibilité">RGAA</abbr>.</p>
|
|
220
210
|
</div>
|
|
221
211
|
|
|
222
|
-
<p>Les exigences du pré-audit sont respectées dès lors que vous atteignez un minimum d'erreur en lançant les tests automatisés avec Tanaguru. Ce seuil est volontairement sujet à discussion pour ne pas bloquer les produits en cas de grande complexit
|
|
223
|
-
|
|
224
|
-
<p>Dans le cas où un test est présenté en résultat "non conforme" pour la demande d'audit, une justification devra être apportée pour motiver l'éligibilité du produit.</p>
|
|
212
|
+
<p>Les exigences du pré-audit sont respectées dès lors que vous atteignez un minimum d'erreur en lançant les tests automatisés avec Tanaguru. Ce seuil est volontairement sujet à discussion pour ne pas bloquer les produits en cas de grande complexité. Pour être considéré comme conforme au pré-audit, le projet doit corriger les tests invalidés et contrôler les tests indéterminés. Ce dernier type de test doit faire l'objet d'un contrôle manuel par un opérateur humain puisqu'il relève généralement d'une notion d'interprétation (ex : subjectivité, ordre de tabulation, pertinence du contenu éditorial). Dans le cas où un test est présenté en résultat "non conforme" pour la demande d'audit, une justification devra être apportée pour motiver l'éligibilité du produit.</p>
|
|
225
213
|
</div>
|
|
226
214
|
</div>
|
|
227
215
|
|
|
228
216
|
<div className="info-section">
|
|
229
|
-
<h2
|
|
217
|
+
<h2>Vérification manuelle</h2>
|
|
230
218
|
|
|
231
|
-
<p>L'
|
|
219
|
+
<p>L'Objectif est de vérifier chacun des 8 points suivants pour chaque page de l'échantillon de test. Nous recommandons vivement, au préalable, de naviguer sur la totalité de la page via le lecteur d'écran car il s'agit d'un moyen concret de vérifier si le code sémantique et la navigation au clavier sont réellement conformes. Vous pouvez consulter notre <a href="/?path=/docs/accessibilité-kit-de-pré-audit-outils-lecteurs-d-écran--docs">mode d'emploi sur les lecteurs d'écran</a>.</p>
|
|
232
220
|
|
|
233
221
|
<div className="alert">
|
|
234
|
-
<p><strong>Notation :</strong> Au sein de la
|
|
222
|
+
<p><strong>Notation :</strong> Au sein de la rapport de pre-audit, il faudra choisir entre <span className="highlight">"Conforme"</span>, <span className="highlight">"Non conforme"</span>, <span className="highlight">"Non applicable"</span>, <span className="highlight">"Dérogé"</span> ou <span className="highlight">"Non testé"</span> pour chacun des critères.</p>
|
|
235
223
|
<p>Il est possible d'ajouter un commentaire pour expliciter les erreurs relevées, des recommandations ou d'éventuelles questions.</p>
|
|
236
224
|
</div>
|
|
237
225
|
</div>
|
|
238
226
|
|
|
239
227
|
<div className="verification-card">
|
|
240
|
-
<
|
|
228
|
+
<h2>1. Navigation au clavier</h2>
|
|
241
229
|
|
|
242
|
-
<h4>Objectif
|
|
230
|
+
<h4>Objectif:</h4>
|
|
243
231
|
<p>S'assurer que toutes les parties sont entièrement navigables au clavier</p>
|
|
244
|
-
<h4>Méthode de test
|
|
232
|
+
<h4>Méthode de test:</h4>
|
|
245
233
|
<ol>
|
|
246
234
|
<li>Naviguer via la touche Tab pour se déplacer, Shift+Tab pour revenir en arrière, Entrée/Espace/Flèches/etc. en fonction des composants.</li>
|
|
247
235
|
<li>Tester tous les éléments interactifs : menus, menus déroulants, formulaires, liens, boutons, carrousels, fenêtres modales, etc. Concernant le comportement clavier pour les composants d'interface, se renseigner via les <a href="https://www.w3.org/WAI/ARIA/apg/patterns/">patterns du W3C</a>.</li>
|
|
@@ -249,7 +237,7 @@ import '../../styles/shared.css';
|
|
|
249
237
|
<li>S'assurer que le focus du clavier reste visible et possède un contraste minimum de 3:1.</li>
|
|
250
238
|
<li>Vérifier qu'aucun piège au clavier n'existe (boucle, etc.).</li>
|
|
251
239
|
</ol>
|
|
252
|
-
<h4>Outil éventuel
|
|
240
|
+
<h4>Outil éventuel:</h4>
|
|
253
241
|
<p>Aucun</p>
|
|
254
242
|
|
|
255
243
|
<div className="alert">
|
|
@@ -262,17 +250,17 @@ import '../../styles/shared.css';
|
|
|
262
250
|
</div>
|
|
263
251
|
|
|
264
252
|
<div className="verification-card">
|
|
265
|
-
<
|
|
253
|
+
<h2>2. Éléments visuels et déclenchements automatiques</h2>
|
|
266
254
|
|
|
267
|
-
<h4>Objectif
|
|
255
|
+
<h4>Objectif:</h4>
|
|
268
256
|
<p>Vérifier que les animations, transitions et autres éléments visuels peuvent être arrêtés, mis en pause ou désactivés par l'utilisateur.</p>
|
|
269
|
-
<h4>Méthode de test
|
|
257
|
+
<h4>Méthode de test:</h4>
|
|
270
258
|
<ol>
|
|
271
259
|
<li>Identifier tous les éléments animés, qui clignotent ou se mettent à jour automatiquement sur votre site.</li>
|
|
272
260
|
<li>Vérifier que ces éléments peuvent être arrêtés ou mis en pause par l'utilisateur.</li>
|
|
273
261
|
<li>S'assurer que la durée du mouvement est inférieure ou égale à 5 secondes s'il n'existe aucun moyen d'arrêter ou de masquer le contenu.</li>
|
|
274
262
|
</ol>
|
|
275
|
-
<h4>Outil éventuel
|
|
263
|
+
<h4>Outil éventuel:</h4>
|
|
276
264
|
<p>Aucun</p>
|
|
277
265
|
|
|
278
266
|
<div className="alert">
|
|
@@ -281,17 +269,17 @@ import '../../styles/shared.css';
|
|
|
281
269
|
</div>
|
|
282
270
|
|
|
283
271
|
<div className="verification-card">
|
|
284
|
-
<
|
|
272
|
+
<h2>3. Pertinence des libellés et textes alternatifs</h2>
|
|
285
273
|
|
|
286
|
-
<h4>Objectif
|
|
274
|
+
<h4>Objectif:</h4>
|
|
287
275
|
<p>Les libellés et textes alternatifs des images, liens, boutons doivent être explicite, clair et contextuel, en évitant les termes génériques comme "Logo", "Cliquez ici" ou "En savoir plus".</p>
|
|
288
|
-
<h4>Méthode de test
|
|
276
|
+
<h4>Méthode de test:</h4>
|
|
289
277
|
<ol>
|
|
290
278
|
<li>Inspecter les images porteuses d'information et s'assurer qu'elles contiennent un alt pertinent (ou legend pour les balises picture)</li>
|
|
291
279
|
<li>À l'inverse, s'assurer que seules les images de décoration sont ignorées par les technologies d'assistance (ex: aria-hidden="true")</li>
|
|
292
280
|
<li>Vérifier que chaque lien ou bouton a un intitulé qui décrit clairement sa fonction ou sa destination.</li>
|
|
293
281
|
</ol>
|
|
294
|
-
<h4>Outil éventuel
|
|
282
|
+
<h4>Outil éventuel:</h4>
|
|
295
283
|
<p>Pour les images, le plugin Assistant RGAA permet de mettre en évidence les images considérées avec ou sans alternative textuelle (catégorie 1). La catégorie 6 du même plugin permet de mettre en évidence les liens et liens images.</p>
|
|
296
284
|
|
|
297
285
|
<div className="alert">
|
|
@@ -305,12 +293,12 @@ import '../../styles/shared.css';
|
|
|
305
293
|
</div>
|
|
306
294
|
|
|
307
295
|
<div className="verification-card">
|
|
308
|
-
<
|
|
296
|
+
<h2>4. Formulaires</h2>
|
|
309
297
|
|
|
310
|
-
<h4>Objectif
|
|
298
|
+
<h4>Objectif:</h4>
|
|
311
299
|
<p>Assurez-vous que tous les éléments d'un formulaire sont accessibles et compréhensibles pour les utilisateurs, y compris ceux qui utilisent des technologies d'assistance (lecteurs d'écran, commandes vocales, etc.).</p>
|
|
312
300
|
|
|
313
|
-
<h4>Méthode de test :</h4>
|
|
301
|
+
<h4>Méthode de test: :</h4>
|
|
314
302
|
|
|
315
303
|
<div className="verification-steps">
|
|
316
304
|
<h5>1. Labels associés aux champs</h5>
|
|
@@ -349,7 +337,7 @@ import '../../styles/shared.css';
|
|
|
349
337
|
</ol>
|
|
350
338
|
</div>
|
|
351
339
|
|
|
352
|
-
<h4>Outil éventuel
|
|
340
|
+
<h4>Outil éventuel:</h4>
|
|
353
341
|
<p>Utilisation du lecteur d'écran pour vérifier la navigation et l'accessibilité des formulaires, tel que l'indication du caractère obligatoire du champ, la liaison du champ aux aides à la saisie ainsi qu'aux messages d'erreurs, le comportement à la soumission du formulaire, etc.</p>
|
|
354
342
|
|
|
355
343
|
<h4>Ressources</h4>
|
|
@@ -357,18 +345,18 @@ import '../../styles/shared.css';
|
|
|
357
345
|
</div>
|
|
358
346
|
|
|
359
347
|
<div className="verification-card">
|
|
360
|
-
<
|
|
348
|
+
<h2>5. Tableaux</h2>
|
|
361
349
|
|
|
362
|
-
<h4>Objectif
|
|
350
|
+
<h4>Objectif:</h4>
|
|
363
351
|
<p>Vérifier que les tableaux de données sont bien structurés</p>
|
|
364
|
-
<h4>Méthode de test
|
|
352
|
+
<h4>Méthode de test:</h4>
|
|
365
353
|
<ol>
|
|
366
354
|
<li>S'assurer que les titres des tableaux de données sont sémantiquement rattachés au tableau et sont pertinents.</li>
|
|
367
355
|
<li>S'assurer que tableaux de données complexes (en-têtes n'étant pas qu'en une seule ligne ou une seule colonne) possèdent un résumé pertinent.</li>
|
|
368
356
|
<li>Vérifiez que les cellules d'en-tête sont correctement déclarées avec des balises <code><th></code> et non des balises <code><td></code> stylisées.</li>
|
|
369
357
|
<li>Assurez-vous que les tableaux complexes ont des attributs <code>scope</code> ou des associations entre cellules d'en-tête et cellules de données.</li>
|
|
370
358
|
</ol>
|
|
371
|
-
<h4>Outil éventuel
|
|
359
|
+
<h4>Outil éventuel:</h4>
|
|
372
360
|
<p>Inspecteur de code</p>
|
|
373
361
|
|
|
374
362
|
<div className="alert">
|
|
@@ -383,15 +371,15 @@ import '../../styles/shared.css';
|
|
|
383
371
|
</div>
|
|
384
372
|
|
|
385
373
|
<div className="verification-card">
|
|
386
|
-
<
|
|
387
|
-
<h4>Objectif
|
|
374
|
+
<h2>6. Langue</h2>
|
|
375
|
+
<h4>Objectif:</h4>
|
|
388
376
|
<p>Permettre aux lecteurs d’écran d’utiliser la bonne prononciation.</p>
|
|
389
|
-
<h4>Méthode de test
|
|
377
|
+
<h4>Méthode de test:</h4>
|
|
390
378
|
<ol>
|
|
391
379
|
<li>Inspectez le code source de la page (clic droit > "Inspecter" dans le navigateur) et vérifiez que l’attribut `lang="fr"` (ou la langue correspondante) est bien présent dans l’élément `<html>`. S’il s’agit d’une autre langue, elle doit être pertinente ([voir documentation MDN sur l’attribut lang](https://developer.mozilla.org/fr/docs/Web/HTML/Global_attributes/lang))</li>
|
|
392
380
|
<li>Repérer les mots/phrases dans une autre langue au sein de la page et vérifier l'existence et la valeur de l’attribut <code>lang</code>.</li>
|
|
393
381
|
</ol>
|
|
394
|
-
<h4>Outil éventuel
|
|
382
|
+
<h4>Outil éventuel:</h4>
|
|
395
383
|
<p>Inspecteur de code</p>
|
|
396
384
|
|
|
397
385
|
<div className="alert">
|
|
@@ -400,18 +388,18 @@ import '../../styles/shared.css';
|
|
|
400
388
|
</div>
|
|
401
389
|
|
|
402
390
|
<div className="verification-card">
|
|
403
|
-
<
|
|
391
|
+
<h2>7. Titre de la page et hiérarchie des titres</h2>
|
|
404
392
|
|
|
405
|
-
<h4>Objectif
|
|
393
|
+
<h4>Objectif:</h4>
|
|
406
394
|
<p>Vérifier que la page possède un titre descriptif, unique et pertinent. De plus, s'assurer que la structure des titres au sein de la page est cohérente.</p>
|
|
407
|
-
<h4>Méthode de test
|
|
395
|
+
<h4>Méthode de test:</h4>
|
|
408
396
|
<ol>
|
|
409
397
|
<li>Identifier si le titre affiché dans l'onglet du navigateur est pertinent.</li>
|
|
410
398
|
<li>Le contenu de la page devra avoir au moins un titre.</li>
|
|
411
399
|
<li>Analyser les balises de <code>h1</code> à <code>h6</code> en vérifiant la pertinence et la structure (aucun saut de niveau).</li>
|
|
412
400
|
<li>S'assurer que les titres sont sémantiquement correctes (présence d'une balise <code>hx</code> ou balises <code>role="heading" aria-level="x"</code></li>
|
|
413
401
|
</ol>
|
|
414
|
-
<h4>Outil éventuel
|
|
402
|
+
<h4>Outil éventuel:</h4>
|
|
415
403
|
<p>Extension HeadingsMap (<a href="/?path=/docs/accessibilité-kit-de-pré-audit-outils-introduction--docs">voir la page des outils</a>)</p>
|
|
416
404
|
|
|
417
405
|
<div className="alert">
|
|
@@ -424,29 +412,29 @@ import '../../styles/shared.css';
|
|
|
424
412
|
</div>
|
|
425
413
|
|
|
426
414
|
<div className="verification-card">
|
|
427
|
-
<
|
|
415
|
+
<h2>8. Contenus multimédia</h2>
|
|
428
416
|
|
|
429
|
-
<h4>Objectif
|
|
417
|
+
<h4>Objectif:</h4>
|
|
430
418
|
<p>Vérifier que les vidéos et autres contenus multimédia temporels possèdent, si nécessaire, une transcription textuelle, une audiodescription synchronisée et/ou des sous-titres synchronisés. Concernant les médias non temporels, s'assurer qu'ils possèdent une alternative ou sont accessibles par le clavier et tout dispositif de pointage.</p>
|
|
431
|
-
<h4>Méthode de test
|
|
419
|
+
<h4>Méthode de test:</h4>
|
|
432
420
|
<ol>
|
|
433
421
|
<li>Écouter les vidéos sans regarder l’écran et statuer sur la pertinence de l'audiodescription.</li>
|
|
434
422
|
<li>Lire une vidéo avec sous-titres activés et statuer sur leur pertinence.</li>
|
|
435
423
|
<li>Vérifier que toute transcription textuelle exprime tout ce qui est retranscrit oralement et suivent la chronologie du média.</li>
|
|
436
424
|
<li>S'assurer que tout son déclenché automatiquement peut, soit être stoppé, soit contrôlé indépendemment du volume, soit possède une durée inféreure ou égale à 3 secondes.</li>
|
|
437
425
|
</ol>
|
|
438
|
-
<h4>Outil éventuel
|
|
426
|
+
<h4>Outil éventuel:</h4>
|
|
439
427
|
<p>Aucun</p>
|
|
440
428
|
<h4>Ressources</h4>
|
|
441
429
|
<p><a href="https://bati-itao.github.io/learning/esdc-self-paced-web-accessibility-course/module9/introduction-fr.html">Concepts des contenus multimédia</a></p>
|
|
442
430
|
</div>
|
|
443
431
|
|
|
444
432
|
<div className="info-section">
|
|
445
|
-
<h2
|
|
433
|
+
<h2>Conclusion</h2>
|
|
446
434
|
|
|
447
435
|
<p>En suivant ces vérifications manuelles et automatisées, vous pourrez atteindre un premier niveau de conformité d'accessibilité pour votre service web. N'hésitez pas à documenter vos résultats et à solliciter de l'aide si nécessaire.</p>
|
|
448
436
|
|
|
449
437
|
<div className="alert">
|
|
450
|
-
<p><strong>Rappel :</strong> Complétez <a href="/documents/Checklist_pre-audit_CNAM_NOM_DU_PRODUIT.xlsx" target="_blank">le fichier de
|
|
438
|
+
<p><strong>Rappel :</strong> Complétez <a href="/documents/Checklist_pre-audit_CNAM_NOM_DU_PRODUIT.xlsx" target="_blank">le fichier de rapport de pre-audit</a> pour chaque page de votre échantillon afin de prouver votre niveau de conformité.</p>
|
|
451
439
|
</div>
|
|
452
440
|
</div>
|
|
@@ -56,6 +56,13 @@ export const ComponentsList: StoryObj = {
|
|
|
56
56
|
img: '/components/sub-header.svg',
|
|
57
57
|
category: 'Structure',
|
|
58
58
|
},
|
|
59
|
+
{
|
|
60
|
+
title: 'SkeletonLoader',
|
|
61
|
+
description: 'Utilisé pour améliorer l’expérience utilisateur pendant le chargement des données, affiche une structure visuelle temporaire qui ressemble au contenu final.',
|
|
62
|
+
link: '/?path=/docs/composants-composants-vuetify-vskeletonloader--docs',
|
|
63
|
+
img: '/components/v-skeleton-loader.svg',
|
|
64
|
+
category: 'Structure',
|
|
65
|
+
},
|
|
59
66
|
{
|
|
60
67
|
title: 'FooterBar',
|
|
61
68
|
description: 'Utilisé pour afficher une barre de pied de page avec des liens et des informations supplémentaires.',
|
|
@@ -70,6 +77,20 @@ export const ComponentsList: StoryObj = {
|
|
|
70
77
|
img: '/components/page-container.svg',
|
|
71
78
|
category: 'Layout',
|
|
72
79
|
},
|
|
80
|
+
{
|
|
81
|
+
title: 'Card',
|
|
82
|
+
description: 'Conteneur transparent utilisé pour afficher une page.',
|
|
83
|
+
link: '/?path=/docs/composants-composants-vuetify-vcard--docs',
|
|
84
|
+
img: `/components/card${isAp ? '-ap' : ''}.svg`,
|
|
85
|
+
category: 'Layout',
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
title: 'SyTabs',
|
|
89
|
+
description: 'Permet de masquer du contenu derrière un élément sélectionnable.',
|
|
90
|
+
link: '/?path=/docs/composants-navigation-sytabs--docs',
|
|
91
|
+
img: `/components/sy-tabs${isAp ? '-ap' : ''}.svg`,
|
|
92
|
+
category: 'Navigation',
|
|
93
|
+
},
|
|
73
94
|
{
|
|
74
95
|
title: 'ContextualMenu',
|
|
75
96
|
description: 'Utilisé pour afficher un menu avec une liste d’ancres pour la navigation.',
|
|
@@ -77,6 +98,13 @@ export const ComponentsList: StoryObj = {
|
|
|
77
98
|
img: '/components/contextual-menu.svg',
|
|
78
99
|
category: 'Navigation',
|
|
79
100
|
},
|
|
101
|
+
{
|
|
102
|
+
title: 'Breadcrumbs',
|
|
103
|
+
description: 'Utilisé comme un outil d’aide à la navigation et comme une structure hiérarchique pour les pages.',
|
|
104
|
+
link: '/?path=/docs/composants-composants-vuetify-vbreadcrumbs--docs',
|
|
105
|
+
img: '/components/breadcrumbs.svg',
|
|
106
|
+
category: 'Navigation',
|
|
107
|
+
},
|
|
80
108
|
{
|
|
81
109
|
title: 'ExternalLinks',
|
|
82
110
|
description: 'Utilisé pour afficher un menu avec une liste vers des liens externes.',
|
|
@@ -112,6 +140,13 @@ export const ComponentsList: StoryObj = {
|
|
|
112
140
|
img: '/components/back-btn.svg',
|
|
113
141
|
category: 'Boutons',
|
|
114
142
|
},
|
|
143
|
+
{
|
|
144
|
+
title: 'SyIconBtn',
|
|
145
|
+
description: 'Utilisé lorsque on a besoin d’un bouton qui sert principalement à afficher une icône.',
|
|
146
|
+
link: '/?path=/docs/composants-boutons-syiconbutton--docs',
|
|
147
|
+
img: `/components/sy-icon-button${isAp ? '-ap' : ''}.svg`,
|
|
148
|
+
category: 'Boutons',
|
|
149
|
+
},
|
|
115
150
|
{
|
|
116
151
|
title: 'BackToTopBtn',
|
|
117
152
|
description: 'Utilisé pour afficher un bouton permettant à l’utilisateur de remonter en haut de la page.',
|
|
@@ -126,6 +161,13 @@ export const ComponentsList: StoryObj = {
|
|
|
126
161
|
img: `/components/copy-btn${isAp ? '-ap' : ''}.svg`,
|
|
127
162
|
category: 'Boutons',
|
|
128
163
|
},
|
|
164
|
+
{
|
|
165
|
+
title: 'Tooltip',
|
|
166
|
+
description: 'Utilisé pour transmettre des informations lorsqu’un utilisateur survole un élément.',
|
|
167
|
+
link: '/?path=/docs/composants-composants-vuetify-vtooltip--docs',
|
|
168
|
+
img: `/components/tooltip${isAp ? '-ap' : ''}.svg`,
|
|
169
|
+
category: 'Feedback',
|
|
170
|
+
},
|
|
129
171
|
{
|
|
130
172
|
title: 'LangBtn',
|
|
131
173
|
description: 'Utilisé pour permettre à l’utilisateur de choisir la langue de l’application.',
|
|
@@ -168,6 +210,13 @@ export const ComponentsList: StoryObj = {
|
|
|
168
210
|
img: `/components/sy-select${isAp ? '-ap' : ''}.svg`,
|
|
169
211
|
category: 'Formulaires',
|
|
170
212
|
},
|
|
213
|
+
{
|
|
214
|
+
title: 'Switch',
|
|
215
|
+
description: 'Utilisé pour permettre à l’utilisateur de choisir entre deux valeurs distinctes. Il est très similaire à un bouton bascule (toggle) ou à un interrupteur marche/arrêt.',
|
|
216
|
+
link: '/?path=/docs/composants-composants-vuetify-vswitch--docs',
|
|
217
|
+
img: `/components/switch${isAp ? '-ap' : ''}.svg`,
|
|
218
|
+
category: 'Boutons',
|
|
219
|
+
},
|
|
171
220
|
{
|
|
172
221
|
title: 'SySelect',
|
|
173
222
|
description: 'Utilisé pour proposer une alternative au v-select de Vuetify qui ne respecte pas les règles d\'accessibilité RGAA. Il est basé sur un v-textfield.',
|
|
@@ -189,6 +238,13 @@ export const ComponentsList: StoryObj = {
|
|
|
189
238
|
img: '/components/sy-btn-select.svg',
|
|
190
239
|
category: 'Formulaires',
|
|
191
240
|
},
|
|
241
|
+
{
|
|
242
|
+
title: 'OTPInput',
|
|
243
|
+
description: 'Utilisé pour une procédure MFA d’authentification des utilisateurs via un mot de passe à usage unique.',
|
|
244
|
+
link: '/?path=/docs/composants-composants-vuetify-votpinput--docs',
|
|
245
|
+
img: `/components/otp${isAp ? '-ap' : ''}.svg`,
|
|
246
|
+
category: 'Formulaires',
|
|
247
|
+
},
|
|
192
248
|
{
|
|
193
249
|
title: 'DatePicker',
|
|
194
250
|
description: 'Utilisé pour permettre à l’utilisateur de sélectionner ou de saisir une date.',
|
|
@@ -312,7 +368,7 @@ export const ComponentsList: StoryObj = {
|
|
|
312
368
|
title: 'ChipList',
|
|
313
369
|
description: 'Utilisé pour afficher une liste de puces.',
|
|
314
370
|
link: '/?path=/docs/composants-donn%C3%A9es-chiplist--docs',
|
|
315
|
-
img:
|
|
371
|
+
img: `/components/chip-list${isAp ? '-ap' : ''}.svg`,
|
|
316
372
|
category: 'Données',
|
|
317
373
|
},
|
|
318
374
|
{
|
|
@@ -322,6 +378,13 @@ export const ComponentsList: StoryObj = {
|
|
|
322
378
|
img: '/components/data-list.svg',
|
|
323
379
|
category: 'Données',
|
|
324
380
|
},
|
|
381
|
+
{
|
|
382
|
+
title: 'Accordion',
|
|
383
|
+
description: 'Utilisé pour optimiser l’espace vertical lors de l’affichage d’une grande quantité d’informations.',
|
|
384
|
+
link: '/?path=/docs/composants-donn%C3%A9es-accordion--docs',
|
|
385
|
+
img: `/components/accordion${isAp ? '-ap' : ''}.svg`,
|
|
386
|
+
category: 'Données',
|
|
387
|
+
},
|
|
325
388
|
{
|
|
326
389
|
title: 'DataListGroup',
|
|
327
390
|
description: 'Utilisé pour afficher une liste de DataList.',
|
|
@@ -354,14 +417,14 @@ export const ComponentsList: StoryObj = {
|
|
|
354
417
|
title: 'DialogBox',
|
|
355
418
|
description: 'Utilisé pour afficher une boîte de dialogue avec des boutons d\'action.',
|
|
356
419
|
link: '/?path=/docs/composants-feedback-dialogbox--docs',
|
|
357
|
-
img:
|
|
420
|
+
img: `/components/dialog-box${isAp ? '-ap' : ''}.svg`,
|
|
358
421
|
category: 'Feedback',
|
|
359
422
|
},
|
|
360
423
|
{
|
|
361
424
|
title: 'NotificationBar',
|
|
362
425
|
description: 'Utilisé pour afficher des notifications à l’utilisateur.',
|
|
363
426
|
link: '/?path=/docs/composants-feedback-notificationbar--docs',
|
|
364
|
-
img:
|
|
427
|
+
img: `/components/notification-bar${isAp ? '-ap' : ''}.svg`,
|
|
365
428
|
category: 'Feedback',
|
|
366
429
|
},
|
|
367
430
|
{
|
|
@@ -378,6 +441,13 @@ export const ComponentsList: StoryObj = {
|
|
|
378
441
|
img: '/components/rating-picker.svg',
|
|
379
442
|
category: 'Feedback',
|
|
380
443
|
},
|
|
444
|
+
{
|
|
445
|
+
title: 'FilterSideBar',
|
|
446
|
+
description: 'Permet de filtrer rapidement les contenus selon plusieurs critères.',
|
|
447
|
+
link: '/?path=/docs/composants-filtres-filterssidebar--docs',
|
|
448
|
+
img: `/components/filter-side-bar${isAp ? '-ap' : ''}.svg`,
|
|
449
|
+
category: 'Filtres',
|
|
450
|
+
},
|
|
381
451
|
]
|
|
382
452
|
|
|
383
453
|
const categoryOrder = [
|
|
@@ -389,12 +459,14 @@ export const ComponentsList: StoryObj = {
|
|
|
389
459
|
'Tableaux',
|
|
390
460
|
'Données',
|
|
391
461
|
'Feedback',
|
|
462
|
+
'Filtres',
|
|
392
463
|
]
|
|
393
464
|
|
|
394
465
|
const apComponents = [
|
|
395
466
|
'FooterBar',
|
|
396
467
|
'HeaderBar',
|
|
397
468
|
'HeaderLoading',
|
|
469
|
+
'Breadcrumbs',
|
|
398
470
|
'PageContainer',
|
|
399
471
|
'CopyBtn',
|
|
400
472
|
'DownloadBtn',
|
|
@@ -405,6 +477,20 @@ export const ComponentsList: StoryObj = {
|
|
|
405
477
|
'SyAutocomplete',
|
|
406
478
|
'SySelect',
|
|
407
479
|
'SyRadioGroup',
|
|
480
|
+
'SyIconBtn',
|
|
481
|
+
'NirField',
|
|
482
|
+
'Card',
|
|
483
|
+
'FilterSideBar',
|
|
484
|
+
'SyTextField',
|
|
485
|
+
'Switch',
|
|
486
|
+
'Tooltip',
|
|
487
|
+
'SkeletonLoader',
|
|
488
|
+
'OTPInput',
|
|
489
|
+
'DialogBox',
|
|
490
|
+
'NotificationBar',
|
|
491
|
+
'Accordion',
|
|
492
|
+
'ChipList',
|
|
493
|
+
'SyTabs',
|
|
408
494
|
]
|
|
409
495
|
|
|
410
496
|
const shouldDisplayComponent = (component: { category: string, title: string }, category: string) => {
|
|
@@ -420,7 +506,9 @@ export const ComponentsList: StoryObj = {
|
|
|
420
506
|
|
|
421
507
|
const groupedComponents = categoryOrder.map(category => ({
|
|
422
508
|
category,
|
|
423
|
-
components: components
|
|
509
|
+
components: components
|
|
510
|
+
.filter(component => shouldDisplayComponent(component, category))
|
|
511
|
+
.sort((a, b) => a.title.localeCompare(b.title)),
|
|
424
512
|
})).filter(group => group.components.length > 0)
|
|
425
513
|
|
|
426
514
|
return {
|
|
@@ -14,7 +14,8 @@ Le Design System de l'Assurance Maladie est un projet vivant qui évolue constam
|
|
|
14
14
|
Votre contribution est essentielle pour garantir que le Design System reste pertinent, accessible et efficace.<br/>
|
|
15
15
|
Toute demande ne sera pas nécessairement intégrée, mais chaque suggestion est examinée avec attention par l'équipe du Studio Design.
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
#
|
|
18
|
+
<Story of={ComponentStories.WarningIntro}/>
|
|
18
19
|
|
|
19
20
|
<a id="exigences" />
|
|
20
21
|
## Exigences requises pour acceptation d'un nouveau composant ou d'une nouvelle fonctionnalité
|
|
@@ -31,13 +32,7 @@ Toute demande ne sera pas nécessairement intégrée, mais chaque suggestion est
|
|
|
31
32
|
10. Doit se conformer aux **exigences techniques** du Design System et à son bon fonctionnement sur le Starter Kit (VueJS 3, version des plugins...).
|
|
32
33
|
|
|
33
34
|
## Créer une nouvelle demande
|
|
34
|
-
|
|
35
|
-
<Story of={ComponentStories.Optimisation}/>
|
|
36
|
-
|
|
35
|
+
#
|
|
37
36
|
<Story of={ComponentStories.AjoutFonctionnalite}/>
|
|
38
37
|
|
|
39
|
-
<Story of={ComponentStories.
|
|
40
|
-
|
|
41
|
-
<Story of={ComponentStories.CreationComposant}/>
|
|
42
|
-
|
|
43
|
-
<Story of={ComponentStories.IntegrationComposant}/>
|
|
38
|
+
<Story of={ComponentStories.CreationComposant}/>
|
|
@@ -26,6 +26,34 @@ export const InfoIntro = {
|
|
|
26
26
|
tags: ['!dev'],
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
+
export const WarningIntro = {
|
|
30
|
+
render: () => {
|
|
31
|
+
return {
|
|
32
|
+
components: { SyAlert },
|
|
33
|
+
setup() {
|
|
34
|
+
return {}
|
|
35
|
+
},
|
|
36
|
+
template: `
|
|
37
|
+
<SyAlert type="error" variant="tonal" :closable="false">
|
|
38
|
+
<template #default>
|
|
39
|
+
<b>Pour limiter les risques de régression et d'anomalie nous mettons temporairement en pause les demandes de nouvelles fonctionnalités. Nous invitons les projets à mettre en place des solutions de contournement.</b>
|
|
40
|
+
<br/><br/>
|
|
41
|
+
Une fois les chantiers ci-après complétés au 1er juillet 2026 nous pourrons reprendre l'analyse et l'intégration de vos features au fil de l'eau selon la disponibilité de l'équipe.
|
|
42
|
+
<br/><br/>
|
|
43
|
+
Chantiers en cours :
|
|
44
|
+
<ul><li>- Disponibilité des composants Amelipro</li>
|
|
45
|
+
<li>- Optimisation de la validation des composants de formulaire</li>
|
|
46
|
+
<li>- Optimisation des tokens pour la convergence des 3 thèmes (Amelipro, Cnam, Portail Agent)</li>
|
|
47
|
+
<li>- Optimisation de l'accessibilité numérique</li>
|
|
48
|
+
</ul>
|
|
49
|
+
</template>
|
|
50
|
+
</SyAlert>
|
|
51
|
+
`,
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
tags: ['!dev'],
|
|
55
|
+
}
|
|
56
|
+
|
|
29
57
|
export const Optimisation = {
|
|
30
58
|
render: () => {
|
|
31
59
|
return {
|