@cnamts/synapse 1.0.21 → 1.0.23
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-uN8OURoP.js → DateFilter-Dc-gSGwk.js} +29 -24
- package/dist/{NumberFilter-sm1dQNQi.js → NumberFilter-vP38Wp6j.js} +1 -1
- package/dist/{PeriodFilter-Cklsxnh9.js → PeriodFilter-Ba1uYUnT.js} +1 -1
- package/dist/{SelectFilter-CWefj27Z.js → SelectFilter-BioGT6Nn.js} +1 -1
- package/dist/{TextFilter-Ddyj885L.js → TextFilter-B84dpnoq.js} +1 -1
- package/dist/components/Accordion/Accordion.d.ts +13 -2
- package/dist/components/Accordion/composables/useAccordionState.d.ts +2 -1
- package/dist/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.d.ts +7405 -5973
- package/dist/components/Amelipro/AmeliproBtn/AmeliproBtn.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproCallback/AmeliproCallback.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproCarousel/AmeliproCarousel.d.ts +10 -14
- package/dist/components/Amelipro/AmeliproCarousel/AmeliproCarouselItem/AmeliproCarouselItem.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproClickableTile/AmeliproClickableTile.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproErrorTemplate/AmeliproErrorTemplate.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproFirstLogin/AmeliproFirstLogin.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproFooter/AmeliproFooter.d.ts +8 -8
- package/dist/components/Amelipro/AmeliproHeader/AmeliproHeader.d.ts +3 -3
- package/dist/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBar.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBrandSection/AmeliproHeaderBrandSection.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproIcon/AmeliproIcon.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproIconBtn/AmeliproIconBtn.d.ts +16 -20
- package/dist/components/Amelipro/AmeliproMenu/AmeliproMenu.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproPagination/AmeliproPaginationBtn/AmeliproPaginationBtn.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproPatientBanner/AmeliproPatientBanner.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/AmeliproPostalAddressCityRow.d.ts +1610 -1354
- package/dist/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressField.d.ts +2413 -2029
- package/dist/components/Amelipro/AmeliproSelect/AmeliproSelect.d.ts +8885 -7323
- package/dist/components/Amelipro/AmeliproStateTile/AmeliproStateTile.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproStepper/AmeliproStepper.d.ts +2 -6
- package/dist/components/Amelipro/AmeliproTabs/AmeliproTabs.d.ts +8884 -7330
- package/dist/components/Amelipro/AmeliproTextArea/AmeliproTextArea.d.ts +950 -838
- package/dist/components/Amelipro/AmeliproTextField/AmeliproTextField.d.ts +1614 -1358
- package/dist/components/Amelipro/AmeliproTileBtn/AmeliproTileBtn.d.ts +223 -203
- package/dist/components/Amelipro/AmeliproTransmission/AmeliproTransmission.d.ts +3 -3
- package/dist/components/Amelipro/StructureMenu/StructureTabs/StructureTabs.d.ts +3 -7
- package/dist/components/CollapsibleList/CollapsibleList.d.ts +4 -1
- package/dist/components/CookieBanner/CookieBanner.d.ts +303 -273
- package/dist/components/CookiesSelection/CookiesInformation/CookiesInformation.d.ts +1297 -1156
- package/dist/components/CookiesSelection/CookiesSelection.d.ts +404 -377
- package/dist/components/Customs/Selects/SelectBtnField/SelectBtnField.d.ts +1 -1
- package/dist/components/Customs/Selects/SyAutocomplete/SyAutocomplete.d.ts +1108 -846
- package/dist/components/Customs/Selects/SyAutocomplete/locales.d.ts +5 -0
- package/dist/components/Customs/Selects/SySelect/SySelect.d.ts +514 -320
- package/dist/components/Customs/Selects/SySelect/locales.d.ts +1 -0
- package/dist/components/Customs/SyCheckBoxGroup/SyCheckBoxGroup.d.ts +40 -38
- package/dist/components/Customs/SyCheckbox/SyCheckbox.d.ts +920 -800
- package/dist/components/Customs/SyForm/SyForm.d.ts +356 -348
- package/dist/components/Customs/SyPagination/SyPagination.d.ts +11 -1
- package/dist/components/Customs/SyRadioGroup/SyRadioGroup.d.ts +906 -794
- package/dist/components/Customs/SyTextField/SyTextField.d.ts +1634 -1367
- package/dist/components/DataList/DataList.d.ts +1 -1
- package/dist/components/DatePicker/CalendarMode/DatePicker.d.ts +3869 -3120
- package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +1947 -1561
- package/dist/components/DatePicker/DateTextInput/DateTextInput.d.ts +831 -684
- package/dist/components/DialogBox/DialogBox.d.ts +482 -416
- package/dist/components/DownloadBtn/config.d.ts +1 -1
- package/dist/components/ErrorPage/ErrorPage.d.ts +6 -0
- package/dist/components/FileList/UploadItem/UploadItem.d.ts +6 -0
- package/dist/components/FileList/UploadItem/locales.d.ts +1 -0
- package/dist/components/FileUpload/FileUpload.d.ts +4 -4
- package/dist/components/FileUpload/FileUploadContent.d.ts +2 -0
- package/dist/components/FileUpload/locales.d.ts +1 -0
- package/dist/components/FileUpload/validateFiles.d.ts +2 -1
- package/dist/components/FilterSideBar/FilterSideBar.d.ts +418 -366
- package/dist/components/FooterBar/FooterBar.d.ts +13 -1
- package/dist/components/FooterBar/locales.d.ts +1 -0
- package/dist/components/FooterBar/types.d.ts +1 -0
- package/dist/components/HeaderBar/HeaderBar.d.ts +2 -0
- package/dist/components/HeaderBar/HeaderLogo/HeaderLogo.d.ts +2 -0
- package/dist/components/HeaderNavigationBar/HeaderNavigationBar.d.ts +4 -6
- package/dist/components/HeaderToolbar/HeaderToolbar.d.ts +1031 -643
- package/dist/components/LangBtn/LangBtn.d.ts +277 -239
- package/dist/components/LogoBrandSection/LogoBrandSection.d.ts +4 -0
- package/dist/components/MaintenancePage/MaintenancePage.d.ts +16 -1
- package/dist/components/MonthPicker/MonthPicker.d.ts +1939 -0
- package/dist/components/MonthPicker/MonthPickerText/MonthPickerInput.d.ts +1899 -0
- package/dist/components/MonthPicker/MonthPickerText/useTextField.d.ts +21 -0
- package/dist/components/MonthPicker/MonthPickerVisual/MonthPickerVisual.d.ts +21 -0
- package/dist/components/MonthPicker/MonthPickerVisual/MonthPickerVisualProps.d.ts +12 -0
- package/dist/components/MonthPicker/MonthPickerVisual/MonthSelector.d.ts +11 -0
- package/dist/components/MonthPicker/MonthPickerVisual/VisualPickerFooter.d.ts +6 -0
- package/dist/components/MonthPicker/MonthPickerVisual/VisualPickerHeader.d.ts +14 -0
- package/dist/components/MonthPicker/MonthPickerVisual/YearSelector.d.ts +14 -0
- package/dist/components/MonthPicker/MonthPickerVisual/useMonthGrid.d.ts +9 -0
- package/dist/components/MonthPicker/MonthPickerVisual/useYearGrid.d.ts +8 -0
- package/dist/components/MonthPicker/MonthPickerVisual/utils.d.ts +8 -0
- package/dist/components/MonthPicker/locales.d.ts +12 -0
- package/dist/components/MonthPicker/useMonthPickerValidation.d.ts +25 -0
- package/dist/components/NirField/NirField.d.ts +1669 -1379
- package/dist/components/NotFoundPage/NotFoundPage.d.ts +9 -3
- package/dist/components/NotificationBar/Notification/Notification.d.ts +3 -0
- package/dist/components/PageContainer/PageContainer.d.ts +3 -1
- package/dist/components/PeriodField/PeriodField.d.ts +7696 -6192
- package/dist/components/PhoneField/PhoneField.d.ts +829 -684
- package/dist/components/RangeField/RangeSlider/RangeSlider.d.ts +4 -12
- package/dist/components/StatusPage/StatusPage.d.ts +12 -1
- package/dist/components/SubHeader/SubHeader.d.ts +2 -0
- package/dist/components/SyAlert/SyAlert.d.ts +74 -70
- package/dist/components/SyBtnMenu/SyBtnMenu.d.ts +9 -0
- package/dist/components/SyHeading/SyHeading.a11y.test.d.ts +1 -0
- package/dist/components/SyHeading/SyHeading.d.ts +22 -0
- package/dist/components/SyHeading/SyHeading.test.d.ts +1 -0
- package/dist/components/SyTextArea/SyTextArea.d.ts +475 -419
- package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +759 -468
- package/dist/components/Tables/SyTable/SyTable.d.ts +761 -470
- package/dist/components/Tables/common/SyTableFilter.d.ts +1 -1
- package/dist/components/Tables/common/SyTablePagination.d.ts +263 -164
- package/dist/components/Tables/common/filters/DateFilter.d.ts +10 -1
- package/dist/components/Tables/common/filters/NumberFilter.d.ts +1 -1
- package/dist/components/Tables/common/filters/PeriodFilter.d.ts +1 -1
- package/dist/components/Tables/common/filters/SelectFilter.d.ts +1 -1
- package/dist/components/Tables/common/filters/TextFilter.d.ts +1 -1
- package/dist/components/Tables/common/organizeColumns/OrganizeColumns.d.ts +166 -138
- package/dist/components/Tables/common/types.d.ts +2 -0
- package/dist/components/UploadWorkflow/UploadWorkflow.d.ts +24 -1211
- package/dist/components/UserMenuBtn/UserMenuBtn.d.ts +1 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/components/types.d.ts +2 -0
- package/dist/design-system-v3.js +111 -107
- package/dist/design-system-v3.umd.cjs +158 -158
- package/dist/designTokens/tokens/amelipro/apLightTheme.d.ts +26 -14
- package/dist/designTokens/tokens/amelipro/apSemantic.d.ts +19 -13
- package/dist/designTokens/tokens/cnam/cnamContextual.d.ts +5 -0
- package/dist/designTokens/tokens/cnam/cnamLightTheme.d.ts +28 -15
- package/dist/designTokens/tokens/cnam/cnamSemantic.d.ts +20 -13
- package/dist/designTokens/tokens/pa/paLightTheme.d.ts +26 -15
- package/dist/designTokens/tokens/pa/paSemantic.d.ts +19 -13
- package/dist/main-aLKwdMi1.js +37886 -0
- package/dist/main.d.ts +1 -0
- package/dist/style.css +1 -1
- package/dist/vuetifyConfig.d.ts +14 -14
- package/package.json +21 -9
- package/src/assets/amelipro/img/logo-amelipro.svg +9 -0
- package/src/assets/apTokens.scss +53 -17
- package/src/assets/overrides/_btns.scss +8 -0
- package/src/assets/overrides/_forms.scss +9 -0
- package/src/assets/overrides/_icons.scss +43 -4
- package/src/assets/overrides/_tables.scss +19 -0
- package/src/assets/overrides/_tooltips.scss +5 -6
- package/src/assets/overrides/_typography.scss +17 -2
- package/src/assets/overrides/_utilities.scss +49 -3
- package/src/assets/tokens.scss +53 -17
- package/src/components/Accordion/Accordion.mdx +23 -9
- package/src/components/Accordion/Accordion.stories.ts +153 -3
- package/src/components/Accordion/Accordion.vue +7 -6
- package/src/components/Accordion/accessibilite/Accessibility.mdx +5 -4
- package/src/components/Accordion/composables/__tests__/useAccordionState.spec.ts +40 -12
- package/src/components/Accordion/composables/useAccordionState.ts +3 -4
- package/src/components/Accordion/tests/accordion.spec.ts +131 -19
- package/src/components/Amelipro/AmeliproAccordion/AmeliproAccordionTemplate/AmeliproAccordionTemplate.vue +2 -2
- package/src/components/Amelipro/AmeliproAccordion/AmeliproAccordionTemplate/__tests__/__snapshots__/AmeliproAccordionTemplate.spec.ts.snap +0 -2
- package/src/components/Amelipro/AmeliproAccordionFrieze/AmeliproAccordionFrieze.vue +2 -2
- package/src/components/Amelipro/AmeliproAccordionFrieze/__tests__/__snapshots__/AmeliproAccordionFrieze.spec.ts.snap +14 -56
- package/src/components/Amelipro/AmeliproAccordionList/AmeliproAccordionList.vue +1 -1
- package/src/components/Amelipro/AmeliproAccordionList/__tests__/__snapshots__/AmeliproAccordionList.spec.ts.snap +15 -23
- package/src/components/Amelipro/AmeliproAccordionResultList/AmeliproAccordionResultList.vue +1 -1
- package/src/components/Amelipro/AmeliproAccordionResultList/__tests__/__snapshots__/AmeliproAccordionResultList.spec.ts.snap +15 -3
- package/src/components/Amelipro/AmeliproCarousel/__tests__/__snapshots__/AmeliproCarousel.spec.ts.snap +0 -2
- package/src/components/Amelipro/AmeliproClickableTile/tests/__snapshots__/AmeliproClickableTile.spec.ts.snap +0 -98
- package/src/components/Amelipro/AmeliproContentLayout/AmeliproContentLayout.mdx +1 -1
- package/src/components/Amelipro/AmeliproContentLayout/AmeliproContentLayout.stories.ts +5 -16
- package/src/components/Amelipro/AmeliproCopyBtn/AmeliproCopyBtn.mdx +3 -1
- package/src/components/Amelipro/AmeliproCopyBtn/AmeliproCopyBtn.stories.ts +7 -0
- package/src/components/Amelipro/AmeliproDentalChart/AmeliproTooth/AmeliproTooth.vue +0 -1
- package/src/components/Amelipro/AmeliproDentalChart/AmeliproTooth/tests/__snapshots__/AmeliproTooth.spec.ts.snap +0 -1
- package/src/components/Amelipro/AmeliproDentalChart/tests/__snapshots__/AmeliproDentalChart.spec.ts.snap +0 -52
- package/src/components/Amelipro/AmeliproDialog/__tests__/__snapshots__/AmeliproDialog.spec.ts.snap +6 -0
- package/src/components/Amelipro/AmeliproErrorTemplate/AmeliproErrorTemplate.mdx +3 -1
- package/src/components/Amelipro/AmeliproErrorTemplate/AmeliproErrorTemplate.stories.ts +19 -0
- package/src/components/Amelipro/AmeliproErrorTemplate/AmeliproErrorTemplate.vue +2 -2
- package/src/components/Amelipro/AmeliproFirstLogin/AmeliproFirstLogin.vue +3 -4
- package/src/components/Amelipro/AmeliproFirstLogin/__tests__/__snapshots__/AmeliproFirstLogin.spec.ts.snap +2 -13
- package/src/components/Amelipro/AmeliproFooter/AmeliproFooter.mdx +3 -1
- package/src/components/Amelipro/AmeliproFooter/AmeliproFooter.stories.ts +7 -0
- package/src/components/Amelipro/AmeliproMenu/__tests__/__snapshots__/AmeliproMenu.spec.ts.snap +8 -0
- package/src/components/Amelipro/AmeliproPagination/AmeliproPagination.mdx +3 -1
- package/src/components/Amelipro/AmeliproPagination/AmeliproPagination.stories.ts +8 -0
- package/src/components/Amelipro/AmeliproPatientLogged/__tests__/__snapshots__/AmeliproPatientLogged.spec.ts.snap +9 -2
- package/src/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/__tests__/__snapshots__/AmeliproPostalAddressCityRow.spec.ts.snap +28 -10
- package/src/components/Amelipro/AmeliproPostalAddressField/__tests__/__snapshots__/AmeliproPostalAddressField.spec.ts.snap +44 -8
- package/src/components/Amelipro/AmeliproResultList/AmeliproResultList.vue +1 -1
- package/src/components/Amelipro/AmeliproResultList/__tests__/__snapshots__/AmeliproResultList.spec.ts.snap +15 -3
- package/src/components/Amelipro/AmeliproTable/AmeliproTable.vue +1 -1
- package/src/components/Amelipro/AmeliproTable/__tests__/__snapshots__/AmeliproTable.spec.ts.snap +0 -1
- package/src/components/Amelipro/AmeliproTooltips/__tests__/__snapshots__/AmeliproTooltips.spec.ts.snap +6 -0
- package/src/components/Amelipro/AmeliproUpload/__tests__/__snapshots__/AmeliproUpload.spec.ts.snap +2 -4
- package/src/components/Amelipro/StructureMenu/StructureList/__tests__/__snapshots__/StructureList.spec.ts.snap +0 -2
- package/src/components/Amelipro/UserMenu/__tests__/__snapshots__/UserMenu.spec.ts.snap +8 -0
- package/src/components/BackBtn/BackBtn.vue +1 -1
- package/src/components/BackBtn/accessibilite/Accessibility.mdx +62 -10
- package/src/components/BackToTopBtn/BackToTopBtn.stories.ts +9 -3
- package/src/components/BackToTopBtn/accessibilite/Accessibility.mdx +86 -6
- package/src/components/Captcha/tests/Captcha.spec.ts +0 -29
- package/src/components/Captcha/tests/__snapshots__/Captcha.spec.ts.snap +18 -108
- package/src/components/ChipList/ChipList.vue +4 -2
- package/src/components/CollapsibleList/CollapsibleList.stories.ts +8 -3
- package/src/components/CollapsibleList/CollapsibleList.vue +14 -6
- package/src/components/CollapsibleList/accessibilite/Accessibility.mdx +19 -6
- package/src/components/CollapsibleList/tests/CollapsibleList.a11y.spec.ts +1 -0
- package/src/components/CollapsibleList/tests/CollapsibleList.spec.ts +2 -0
- package/src/components/CookieBanner/CookieBanner.stories.ts +10 -0
- package/src/components/CookieBanner/CookieBanner.vue +15 -5
- package/src/components/CookieBanner/accessibilite/Accessibility.mdx +9 -0
- package/src/components/CookieBanner/tests/CookieBanner.spec.ts +10 -2
- package/src/components/CookieBanner/tests/__snapshots__/CookieBanner.spec.ts.snap +21 -15
- package/src/components/CookiesSelection/CookiesInformation/CookiesInformation.vue +17 -8
- package/src/components/CookiesSelection/CookiesInformation/tests/CookiesInformation.a11y.spec.ts +1 -0
- package/src/components/CookiesSelection/CookiesInformation/tests/CookiesInformation.spec.ts +5 -0
- package/src/components/CookiesSelection/CookiesSelection.vue +7 -2
- package/src/components/CookiesSelection/tests/CookiesSelection.a11y.spec.ts +1 -0
- package/src/components/CookiesSelection/tests/CookiesSelection.spec.ts +5 -0
- package/src/components/CookiesSelection/tests/__snapshots__/CookiesSelection.spec.ts.snap +21 -15
- package/src/components/CopyBtn/CopyBtn.vue +6 -4
- package/src/components/CopyBtn/accessibilite/Accessibility.mdx +82 -11
- package/src/components/CopyBtn/tests/__snapshots__/CopyBtn.spec.ts.snap +5 -1
- package/src/components/Customs/Selects/SelectBtnField/accessibilite/Accessibility.mdx +133 -10
- package/src/components/Customs/Selects/SyAutocomplete/SyAutocomplete.stories.ts +379 -93
- package/src/components/Customs/Selects/SyAutocomplete/SyAutocomplete.vue +144 -83
- package/src/components/Customs/Selects/SyAutocomplete/accessibilite/Accessibilite.stories.ts +40 -1
- package/src/components/Customs/Selects/SyAutocomplete/accessibilite/Accessibility.mdx +7 -1
- package/src/components/Customs/Selects/SyAutocomplete/locales.ts +5 -0
- package/src/components/Customs/Selects/SyAutocomplete/tests/SyAutocomplete.a11y.spec.ts +96 -0
- package/src/components/Customs/Selects/SyAutocomplete/tests/SyAutocomplete.spec.ts +234 -9
- package/src/components/Customs/Selects/SyAutocomplete/utils/ariaManager.ts +13 -3
- package/src/components/Customs/Selects/SyAutocomplete/utils/useSelectionLogic.ts +9 -10
- package/src/components/Customs/Selects/SyInputSelect/SyInputSelect.stories.ts +4 -10
- package/src/components/Customs/Selects/SySelect/SySelect.mdx +0 -1
- package/src/components/Customs/Selects/SySelect/SySelect.stories.ts +10 -10
- package/src/components/Customs/Selects/SySelect/SySelect.vue +63 -3
- package/src/components/Customs/Selects/SySelect/composables/useSySelectKeyboard.ts +1 -1
- package/src/components/Customs/Selects/SySelect/locales.ts +1 -0
- package/src/components/Customs/Selects/SySelect/tests/SySelect.a11y.spec.ts +1 -3
- package/src/components/Customs/Selects/SySelect/tests/SySelect.spec.ts +72 -0
- package/src/components/Customs/SyCheckbox/SyCheckbox.vue +1 -1
- package/src/components/Customs/SyIcon/SyIcon.a11y.spec.ts +31 -2
- package/src/components/Customs/SyIcon/SyIcon.vue +9 -5
- package/src/components/Customs/SyIcon/tests/SyIcon.a11y.spec.ts +20 -0
- package/src/components/Customs/SyIconButton/SyIconButton.mdx +46 -0
- package/src/components/Customs/SyIconButton/SyIconButton.stories.ts +184 -0
- package/src/components/Customs/SyIconButton/SyIconButton.vue +38 -0
- package/src/components/Customs/SyIconButton/accessibilite/Accessibility.mdx +64 -0
- package/src/components/Customs/SyIconButton/tests/SyIconButton.a11y.spec.ts +87 -0
- package/src/components/Customs/SyIconButton/tests/SyIconButton.spec.ts +152 -0
- package/src/components/Customs/SyIconButton/tests/__snapshots__/SyIconButton.spec.ts.snap +61 -0
- package/src/components/Customs/SyPagination/SyPagination.stories.ts +14 -2
- package/src/components/Customs/SyPagination/SyPagination.vue +25 -10
- package/src/components/Customs/SyPagination/accessibilite/Accessibility.mdx +79 -8
- package/src/components/Customs/SyPagination/tests/SyPagination.a11y.spec.ts +53 -0
- package/src/components/Customs/SyPagination/tests/SyPagination.spec.ts +12 -0
- package/src/components/Customs/SyTextField/SyTextField.stories.ts +4 -0
- package/src/components/Customs/SyTextField/SyTextField.vue +59 -7
- package/src/components/Customs/SyTextField/accessibilite/Accessibility.mdx +67 -9
- package/src/components/Customs/SyTextField/tests/SyTextField.a11y.spec.ts +15 -0
- package/src/components/Customs/SyTextField/tests/SyTextField.spec.ts +36 -0
- package/src/components/DataList/accessibilite/Accessibility.mdx +79 -11
- package/src/components/DataListGroup/accessibilite/Accessibility.mdx +80 -11
- package/src/components/DatePicker/CalendarMode/DatePicker.stories.ts +28 -3
- package/src/components/DatePicker/CalendarMode/DatePicker.vue +20 -8
- package/src/components/DatePicker/CalendarMode/tests/DatePicker.spec.ts +9 -3
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.stories.ts +1 -1
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +70 -47
- package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.a11y.spec.ts +34 -0
- package/src/components/DatePicker/DateTextInput/tests/DateTextInput.a11y.spec.ts +27 -0
- package/src/components/DatePicker/docExamples/BidirectionalComplexValidation.vue +23 -9
- package/src/components/DatePicker/docExamples/DatePickerBidirectionalValidation.vue +21 -8
- package/src/components/DatePicker/docExamples/DatePickerValidationExamples.vue +50 -22
- package/src/components/DatePicker/playground/ComplexDatePickerPlayground.vue +48 -10
- package/src/components/DatePicker/playground/DatePickerHolidayRule.vue +16 -3
- package/src/components/DialogBox/DialogBox.stories.ts +13 -0
- package/src/components/DialogBox/DialogBox.vue +12 -5
- package/src/components/DialogBox/accessibilite/Accessibility.mdx +27 -7
- package/src/components/DialogBox/tests/DialogBox.a11y.spec.ts +1 -0
- package/src/components/DialogBox/tests/DialogBox.spec.ts +40 -6
- package/src/components/DownloadBtn/accessibilite/Accessibility.mdx +73 -11
- package/src/components/DownloadBtn/config.ts +1 -1
- package/src/components/DownloadBtn/tests/DownloadBtn.a11y.spec.ts +25 -0
- package/src/components/ErrorPage/ErrorPage.stories.ts +176 -47
- package/src/components/ErrorPage/ErrorPage.vue +21 -0
- package/src/components/ErrorPage/accessibilite/Accessibility.mdx +15 -0
- package/src/components/ErrorPage/tests/ErrorPage.a11y.spec.ts +17 -0
- package/src/components/ErrorPage/tests/ErrorPage.spec.ts +21 -1
- package/src/components/ErrorPage/tests/__snapshots__/ErrorPage.spec.ts.snap +1 -0
- package/src/components/ExternalLinks/tests/ExternalLinks.a11y.spec.ts +23 -0
- package/src/components/ExternalLinks/tests/__snapshots__/ExternalLinks.spec.ts.snap +13 -2
- package/src/components/FileList/FileList.stories.ts +55 -1
- package/src/components/FileList/UploadItem/UploadItem.vue +17 -5
- package/src/components/FileList/UploadItem/locales.ts +3 -2
- package/src/components/FileList/accessibilite/Accessibility.mdx +58 -7
- package/src/components/FileUpload/FileUpload.vue +62 -38
- package/src/components/FileUpload/FileUploadContent.vue +3 -2
- package/src/components/FileUpload/accessibilite/Accessibility.mdx +48 -5
- package/src/components/FileUpload/locales.ts +1 -0
- package/src/components/FileUpload/tests/FileUpload.spec.ts +61 -14
- package/src/components/FileUpload/validateFiles.ts +5 -2
- package/src/components/FilterInline/FilterInline.stories.ts +0 -15
- package/src/components/FilterInline/FilterInline.vue +1 -0
- package/src/components/FilterInline/accessibilite/Accessibility.mdx +70 -7
- package/src/components/FilterInline/tests/__snapshots__/FilterInline.spec.ts.snap +3 -3
- package/src/components/FilterSideBar/FilterSideBar.stories.ts +0 -3
- package/src/components/FilterSideBar/FilterSideBar.vue +2 -1
- package/src/components/FilterSideBar/accessibilite/Accessibility.mdx +70 -9
- package/src/components/FooterBar/FooterBar.stories.ts +298 -34
- package/src/components/FooterBar/FooterBar.vue +67 -9
- package/src/components/FooterBar/config.ts +2 -2
- package/src/components/FooterBar/locales.ts +1 -0
- package/src/components/FooterBar/tests/FooterBarConfig.spec.ts +1 -1
- package/src/components/FooterBar/tests/__snapshots__/FooterBar.spec.ts.snap +6 -25
- package/src/components/FooterBar/types.d.ts +1 -0
- package/src/components/FranceConnectBtn/accessibilite/Accessibility.mdx +62 -9
- package/src/components/HeaderBar/HeaderBar.stories.ts +23 -1
- package/src/components/HeaderBar/HeaderBar.vue +5 -0
- package/src/components/HeaderBar/HeaderLogo/HeaderLogo.vue +8 -2
- package/src/components/HeaderBar/HeaderLogo/tests/HeaderLogo.spec.ts +5 -0
- package/src/components/HeaderBar/accessibilite/Accessibility.mdx +24 -5
- package/src/components/HeaderBar/tests/HeaderBar.a11y.spec.ts +1 -0
- package/src/components/HeaderBar/tests/HeaderBar.spec.ts +3 -0
- package/src/components/HeaderNavigationBar/HeaderNavigationBar.stories.ts +4 -0
- package/src/components/HeaderNavigationBar/HeaderNavigationBar.vue +3 -0
- package/src/components/HeaderNavigationBar/tests/HeaderNavigationBar.spec.ts +3 -0
- package/src/components/LogoBrandSection/LogoBrandSection.stories.ts +22 -0
- package/src/components/LogoBrandSection/LogoBrandSection.vue +13 -5
- package/src/components/LogoBrandSection/tests/LogoBrandSection.a11y.spec.ts +2 -0
- package/src/components/LogoBrandSection/tests/LogoBrandSection.spec.ts +44 -0
- package/src/components/LogoBrandSection/tests/__snapshots__/LogoBrandSection.spec.ts.snap +2 -0
- package/src/components/LunarCalendar/accessibilite/Accessibility.mdx +74 -8
- package/src/components/LunarCalendar/tests/LunarCalendar.a11y.spec.ts +163 -0
- package/src/components/MaintenancePage/MaintenancePage.vue +33 -6
- package/src/components/MaintenancePage/accessibilite/Accessibility.mdx +3 -1
- package/src/components/MaintenancePage/tests/MaintenancePage.a11y.spec.ts +3 -2
- package/src/components/MaintenancePage/tests/MaintenancePage.spec.ts +18 -1
- package/src/components/MaintenancePage/tests/__snapshots__/MaintenancePage.spec.ts.snap +1 -0
- package/src/components/MonthPicker/MonthPicker.mdx +35 -0
- package/src/components/MonthPicker/MonthPicker.stories.ts +527 -0
- package/src/components/MonthPicker/MonthPicker.vue +79 -0
- package/src/components/MonthPicker/MonthPickerText/MonthPickerInput.vue +89 -0
- package/src/components/MonthPicker/MonthPickerText/useTextField.ts +27 -0
- package/src/components/MonthPicker/MonthPickerVisual/MonthPickerVisual.vue +154 -0
- package/src/components/MonthPicker/MonthPickerVisual/MonthPickerVisualProps.ts +13 -0
- package/src/components/MonthPicker/MonthPickerVisual/MonthSelector.vue +137 -0
- package/src/components/MonthPicker/MonthPickerVisual/VisualPickerFooter.vue +60 -0
- package/src/components/MonthPicker/MonthPickerVisual/VisualPickerHeader.vue +149 -0
- package/src/components/MonthPicker/MonthPickerVisual/YearSelector.vue +143 -0
- package/src/components/MonthPicker/MonthPickerVisual/useMonthGrid.ts +45 -0
- package/src/components/MonthPicker/MonthPickerVisual/useYearGrid.ts +45 -0
- package/src/components/MonthPicker/MonthPickerVisual/utils.ts +17 -0
- package/src/components/MonthPicker/accessibilite/Accessibility.mdx +59 -0
- package/src/components/MonthPicker/locales.ts +12 -0
- package/src/components/MonthPicker/tests/MonthPicker.a11y.spec.ts +71 -0
- package/src/components/MonthPicker/tests/MonthPicker.spec.ts +1248 -0
- package/src/components/MonthPicker/tests/__snapshots__/MonthPicker.spec.ts.snap +2545 -0
- package/src/components/MonthPicker/useMonthPickerValidation.ts +30 -0
- package/src/components/NirField/NirField.mdx +1 -2
- package/src/components/NirField/NirField.stories.ts +66 -6
- package/src/components/NotFoundPage/NotFoundPage.stories.ts +1 -1
- package/src/components/NotFoundPage/NotFoundPage.vue +16 -5
- package/src/components/NotFoundPage/accessibilite/Accessibility.mdx +2 -0
- package/src/components/NotFoundPage/tests/NotFoundPage.a11y.spec.ts +49 -0
- package/src/components/NotFoundPage/tests/NotFoundPage.spec.ts +24 -2
- package/src/components/NotFoundPage/tests/__snapshots__/NotFoundPage.spec.ts.snap +24 -14
- package/src/components/NotificationBar/Notification/Notification.vue +3 -1
- package/src/components/NotificationBar/NotificationBar.stories.ts +154 -0
- package/src/components/NotificationBar/tests/NotificationBar.a11y.spec.ts +26 -0
- package/src/components/NotificationBar/tests/NotificationBar.spec.ts +60 -0
- package/src/components/PageContainer/PageContainer.stories.ts +47 -0
- package/src/components/PageContainer/PageContainer.vue +4 -2
- package/src/components/PageContainer/accessibilite/Accessibility.mdx +31 -17
- package/src/components/PaginatedTable/PaginatedTable.mdx +3 -3
- package/src/components/PaginatedTable/PaginatedTable.stories.ts +9 -1
- package/src/components/PeriodField/PeriodField.vue +4 -0
- package/src/components/PeriodField/tests/PeriodField.a11y.spec.ts +10 -1
- package/src/components/PhoneField/PhoneField.stories.ts +73 -35
- package/src/components/PhoneField/PhoneField.vue +152 -83
- package/src/components/PhoneField/accessibilite/Accessibility.mdx +306 -9
- package/src/components/PhoneField/indicatifs.ts +2 -2
- package/src/components/PhoneField/tests/PhoneField.a11y.spec.ts +47 -0
- package/src/components/PhoneField/tests/PhoneField.spec.ts +82 -5
- package/src/components/RangeField/accessibilite/Accessibility.mdx +79 -11
- package/src/components/SearchListField/SearchListField.vue +1 -1
- package/src/components/SearchListField/accessibilite/Accessibility.mdx +69 -9
- package/src/components/SearchListField/tests/SearchListField.a11y.spec.ts +37 -0
- package/src/components/SkipLink/tests/SkipLink.a11y.spec.ts +23 -0
- package/src/components/SocialMediaLinks/SocialMediaLinks.vue +1 -1
- package/src/components/StatusPage/StatusPage.mdx +10 -1
- package/src/components/StatusPage/StatusPage.stories.ts +161 -0
- package/src/components/StatusPage/StatusPage.vue +29 -5
- package/src/components/StatusPage/accessibilite/Accessibility.mdx +24 -5
- package/src/components/StatusPage/tests/StatusPage.a11y.spec.ts +23 -0
- package/src/components/StatusPage/tests/StatusPage.spec.ts +25 -0
- package/src/components/StatusPage/tests/__snapshots__/StatusPage.spec.ts.snap +24 -14
- package/src/components/SubHeader/SubHeader.stories.ts +16 -0
- package/src/components/SubHeader/SubHeader.vue +6 -3
- package/src/components/SubHeader/accessibilite/Accessibility.mdx +27 -6
- package/src/components/SubHeader/tests/SubHeader.a11y.spec.ts +20 -0
- package/src/components/SyAlert/SyAlert.vue +22 -20
- package/src/components/SyAlert/accessibilite/Accessibility.mdx +79 -9
- package/src/components/SyAlert/tests/SyAlert.a11y.spec.ts +23 -0
- package/src/components/SyBtnMenu/SyBtnMenu.vue +33 -17
- package/src/components/SyBtnMenu/tests/SyBtnMenu.a11y.spec.ts +38 -0
- package/src/components/SyBtnMenu/tests/SyBtnMenu.spec.ts +41 -0
- package/src/components/SyHeading/SyHeading.a11y.test.ts +149 -0
- package/src/components/SyHeading/SyHeading.test.ts +115 -0
- package/src/components/SyHeading/SyHeading.vue +20 -0
- package/src/components/SyTextArea/accessibilite/Accessibility.mdx +80 -8
- package/src/components/SyTextArea/tests/SyTextArea.a11y.spec.ts +151 -0
- package/src/components/TableToolbar/tests/__snapshots__/TableToolbar.spec.ts.snap +96 -30
- package/src/components/Tables/SyServerTable/SyServerTable.vue +2 -0
- package/src/components/Tables/SyTable/SyTable.vue +2 -0
- package/src/components/Tables/common/SyTablePagination.vue +16 -10
- package/src/components/Tables/common/filters/DateFilter.vue +5 -0
- package/src/components/Tables/common/tests/SyTablePagination.spec.ts +40 -24
- package/src/components/Tables/common/types.ts +3 -0
- package/src/components/ToolbarContainer/tests/ToolbarContainer.a11y.spec.ts +126 -0
- package/src/components/UploadWorkflow/UploadWorkflow.stories.ts +11 -11
- package/src/components/UploadWorkflow/UploadWorkflow.vue +30 -13
- package/src/components/UploadWorkflow/accessibilite/Accessibility.mdx +56 -5
- package/src/components/UploadWorkflow/accessibilite/UploadWorkflow.a11y.spec.ts +110 -0
- package/src/components/UploadWorkflow/tests/UploadWorkflow.spec.ts +7 -25
- package/src/components/UploadWorkflow/tests/__snapshots__/UploadWorkflow.spec.ts.snap +146 -123
- package/src/components/UserMenuBtn/UserMenuBtn.stories.ts +53 -31
- package/src/components/UserMenuBtn/UserMenuBtn.vue +4 -1
- package/src/components/UserMenuBtn/accessibilite/Accessibility.mdx +72 -8
- package/src/components/index.ts +2 -0
- package/src/components/types.ts +4 -0
- package/src/composables/date/tests/useDateInitialization.spec.ts +22 -1
- package/src/composables/date/useDateInitializationDayjs.ts +4 -7
- package/src/composables/date/useDatePickerAccessibility.ts +2 -3
- package/src/composables/useFilterable/useFilterable.spec.ts +52 -2
- package/src/composables/useFilterable/useFilterable.ts +7 -1
- package/src/composables/useFormFieldErrorHandling.ts +11 -2
- package/src/designTokens/tokens/amelipro/apLightTheme.ts +27 -15
- package/src/designTokens/tokens/amelipro/apSemantic.ts +21 -15
- package/src/designTokens/tokens/cnam/cnamContextual.ts +6 -1
- package/src/designTokens/tokens/cnam/cnamLightTheme.ts +28 -15
- package/src/designTokens/tokens/cnam/cnamSemantic.ts +21 -14
- package/src/designTokens/tokens/pa/paLightTheme.ts +27 -16
- package/src/designTokens/tokens/pa/paSemantic.ts +19 -13
- package/src/directives/rgaaSvgFix.ts +2 -7
- package/src/main.ts +2 -0
- package/src/stories/Accessibilite/{Audit → AuditEtContreAudit}/Exemptions-derogations.mdx +1 -1
- package/src/stories/Accessibilite/AuditEtContreAudit/Introduction.mdx +188 -0
- package/src/stories/Accessibilite/{Audit → AuditEtContreAudit}/RGAA.mdx +1 -1
- package/src/stories/Accessibilite/Introduction.mdx +22 -3
- package/src/stories/Accessibilite/KitDePreAudit/Introduction.mdx +21 -22
- package/src/stories/DeprecationNotice/DeprecationNotice.ts +41 -0
- package/src/stories/DesignTokens/ColorDisplay.vue +12 -5
- package/src/stories/DesignTokens/Colors.mdx +8 -59
- package/src/stories/DesignTokens/colors.stories.ts +1862 -1071
- package/src/stories/EcoConception/EcoGuideComponent.vue +10 -4
- package/dist/main-CWniLr0s.js +0 -36919
|
@@ -92,7 +92,7 @@ type Story = StoryObj<typeof meta>
|
|
|
92
92
|
export const Default: Story = {
|
|
93
93
|
parameters: {
|
|
94
94
|
a11y: {
|
|
95
|
-
disable:
|
|
95
|
+
disable: false,
|
|
96
96
|
},
|
|
97
97
|
sourceCode: [
|
|
98
98
|
{
|
|
@@ -104,6 +104,7 @@ export const Default: Story = {
|
|
|
104
104
|
max-height="200px"
|
|
105
105
|
class="overflow-y-auto"
|
|
106
106
|
style="scroll-behavior: smooth"
|
|
107
|
+
tabindex="0"
|
|
107
108
|
>
|
|
108
109
|
<VSheet
|
|
109
110
|
height="600px"
|
|
@@ -166,6 +167,7 @@ export const Default: Story = {
|
|
|
166
167
|
max-height="200px"
|
|
167
168
|
class="overflow-y-auto"
|
|
168
169
|
style="scroll-behavior: smooth"
|
|
170
|
+
tabindex="0"
|
|
169
171
|
>
|
|
170
172
|
<VSheet
|
|
171
173
|
height="600px"
|
|
@@ -192,7 +194,7 @@ export const Default: Story = {
|
|
|
192
194
|
export const Customization: Story = {
|
|
193
195
|
parameters: {
|
|
194
196
|
a11y: {
|
|
195
|
-
disable:
|
|
197
|
+
disable: false,
|
|
196
198
|
},
|
|
197
199
|
sourceCode: [
|
|
198
200
|
{
|
|
@@ -204,6 +206,7 @@ export const Customization: Story = {
|
|
|
204
206
|
max-height="200px"
|
|
205
207
|
class="overflow-y-auto"
|
|
206
208
|
style="scroll-behavior: smooth"
|
|
209
|
+
tabindex="0"
|
|
207
210
|
>
|
|
208
211
|
<VSheet
|
|
209
212
|
height="600px"
|
|
@@ -276,6 +279,7 @@ export const Customization: Story = {
|
|
|
276
279
|
max-height="200px"
|
|
277
280
|
class="overflow-y-auto"
|
|
278
281
|
style="scroll-behavior: smooth"
|
|
282
|
+
tabindex="0"
|
|
279
283
|
>
|
|
280
284
|
<VSheet
|
|
281
285
|
height="600px"
|
|
@@ -302,7 +306,7 @@ export const Customization: Story = {
|
|
|
302
306
|
export const CustomPosition: Story = {
|
|
303
307
|
parameters: {
|
|
304
308
|
a11y: {
|
|
305
|
-
disable:
|
|
309
|
+
disable: false,
|
|
306
310
|
},
|
|
307
311
|
sourceCode: [
|
|
308
312
|
{
|
|
@@ -314,6 +318,7 @@ export const CustomPosition: Story = {
|
|
|
314
318
|
max-height="200px"
|
|
315
319
|
class="overflow-y-auto"
|
|
316
320
|
style="scroll-behavior: smooth"
|
|
321
|
+
tabindex="0"
|
|
317
322
|
>
|
|
318
323
|
<VSheet
|
|
319
324
|
height="600px"
|
|
@@ -386,6 +391,7 @@ export const CustomPosition: Story = {
|
|
|
386
391
|
max-height="200px"
|
|
387
392
|
class="overflow-y-auto"
|
|
388
393
|
style="scroll-behavior: smooth"
|
|
394
|
+
tabindex="0"
|
|
389
395
|
>
|
|
390
396
|
<VSheet
|
|
391
397
|
height="600px"
|
|
@@ -1,15 +1,95 @@
|
|
|
1
1
|
import { Meta, Story } from '@storybook/addon-docs';
|
|
2
2
|
import * as Stories from '../BackToTopBtn.stories.ts';
|
|
3
|
+
import AccessibilityIcon from '@/common/imgs/accessibility-svgrepo-com.svg';
|
|
3
4
|
import '@/stories/styles/shared.css';
|
|
5
|
+
import {
|
|
6
|
+
AccessibilityGuideLayout,
|
|
7
|
+
CriteriaSection,
|
|
8
|
+
CriteriaCard,
|
|
9
|
+
DemoSection,
|
|
10
|
+
BestPracticesSection,
|
|
11
|
+
ResourcesSection,
|
|
12
|
+
} from '@/stories/accessibility/AccessibilityGuideLayout.mdx';
|
|
4
13
|
|
|
5
14
|
<Meta of={Stories} />
|
|
6
15
|
|
|
7
|
-
<
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
16
|
+
<AccessibilityGuideLayout
|
|
17
|
+
componentName="BackToTopBtn"
|
|
18
|
+
iconSrc={AccessibilityIcon}
|
|
19
|
+
apgHref="https://www.w3.org/WAI/ARIA/apg/patterns/button/"
|
|
20
|
+
apgLabel="WAI-ARIA Authoring Practices pour les boutons"
|
|
21
|
+
>
|
|
11
22
|
|
|
12
23
|
<div class="mt-2">
|
|
13
|
-
<p>Rapport d
|
|
14
|
-
|
|
24
|
+
<p>Rapport d'audit manuel : <a href="/audits/BackToTopBtn.xlsx" style={{ color:'#0C41BD' }}>Voir le rapport</a></p>
|
|
25
|
+
<p style={{ color: 'grey', fontSize: '14px', marginTop: '0px' }}>Correctifs associés (<a href="https://github.com/assurance-maladie-digital/design-system-v3/issues/4022" target="_blank" style={{color:'#0C41BD'}}>issue #4022</a>)</p>
|
|
15
26
|
</div>
|
|
27
|
+
|
|
28
|
+
<CriteriaSection>
|
|
29
|
+
<CriteriaCard icon="⌨️" title="Navigation au clavier">
|
|
30
|
+
<ul>
|
|
31
|
+
<li><strong>Accessibilité native</strong> : Le bouton est un élément focusable via la touche Tab</li>
|
|
32
|
+
<li><strong>Activation clavier</strong> : Peut être activé avec les touches Entrée et Espace</li>
|
|
33
|
+
<li><strong>Focus visible</strong> : Indicateur de focus clair pour les utilisateurs du clavier</li>
|
|
34
|
+
<li><strong>Positionnement cohérent</strong> : Le bouton reste toujours accessible et n'interfère pas avec la navigation</li>
|
|
35
|
+
</ul>
|
|
36
|
+
</CriteriaCard>
|
|
37
|
+
|
|
38
|
+
<CriteriaCard icon="🔊" title="Lecteurs d'écran">
|
|
39
|
+
<ul>
|
|
40
|
+
<li><strong>Texte descriptif</strong> : Le bouton contient un texte clair indiquant sa fonction ("Retour en haut")</li>
|
|
41
|
+
<li><strong>Icône décorative</strong> : L'icône flèche est marquée comme décorative pour éviter la redondance</li>
|
|
42
|
+
<li><strong>Annonce sémantique</strong> : La fonction du bouton est clairement annoncée par les technologies d'assistance</li>
|
|
43
|
+
</ul>
|
|
44
|
+
</CriteriaCard>
|
|
45
|
+
|
|
46
|
+
<CriteriaCard icon="📱" title="Adaptation responsive">
|
|
47
|
+
<ul>
|
|
48
|
+
<li><strong>Mode mobile</strong> : Le texte est masqué visuellement sur mobile (screen reader only)</li>
|
|
49
|
+
<li><strong>Taille minimale</strong> : Le bouton maintient une taille de 36px minimum sur mobile pour le toucher</li>
|
|
50
|
+
<li><strong>Positionnement optimisé</strong> : Le positionnement s'adapte aux différentes tailles d'écran</li>
|
|
51
|
+
<li><strong>Comportement cohérent</strong> : La fonctionnalité reste identique quel que soit l'appareil utilisé</li>
|
|
52
|
+
</ul>
|
|
53
|
+
</CriteriaCard>
|
|
54
|
+
|
|
55
|
+
<CriteriaCard icon="🎯" title="Critères RGAA respectés">
|
|
56
|
+
<ul>
|
|
57
|
+
<li><strong>Critère 7.1</strong> : Chaque script est compatible avec les technologies d'assistance</li>
|
|
58
|
+
<li><strong>Critère 7.3</strong> : Chaque script est contrôlable par le clavier et par tout dispositif de pointage</li>
|
|
59
|
+
<li><strong>Critère 11.2</strong> : Chaque conteneur d'informations possède une balise permettant de le rendre accessible</li>
|
|
60
|
+
<li><strong>Critère 12.4</strong> : Chaque texte est lisible lorsque la taille des caractères est modifiée</li>
|
|
61
|
+
</ul>
|
|
62
|
+
</CriteriaCard>
|
|
63
|
+
</CriteriaSection>
|
|
64
|
+
|
|
65
|
+
<DemoSection>
|
|
66
|
+
<p>
|
|
67
|
+
Explorez ci-dessous un exemple de BackToTopBtn entièrement accessible.
|
|
68
|
+
Essayez de modifier les propriétés pour voir comment le composant s'adapte.
|
|
69
|
+
</p>
|
|
70
|
+
<Story of={Stories.Default} />
|
|
71
|
+
</DemoSection>
|
|
72
|
+
|
|
73
|
+
<BestPracticesSection>
|
|
74
|
+
<ul>
|
|
75
|
+
<li><strong>Rendre les conteneurs accessibles</strong> : Ajouter <code>tabindex="0"</code> sur les conteneurs scrollables pour permettre l'accès au clavier</li>
|
|
76
|
+
<li><strong>Choisir le bon seuil</strong> : Utiliser un threshold raisonnable (100-200px) pour éviter que le bouton n'apparaisse trop tôt</li>
|
|
77
|
+
<li><strong>Positionnement cohérent</strong> : Maintenir une position cohérente du bouton pour ne pas dérouter les utilisateurs</li>
|
|
78
|
+
<li><strong>Texte clair et concis</strong> : Utiliser un texte descriptif mais court pour le bouton (ex: "Retour en haut", "Haut de page")</li>
|
|
79
|
+
<li><strong>Contraste suffisant</strong> : S'assurer que le bouton a un contraste suffisant avec l'arrière-plan dans tous les thèmes</li>
|
|
80
|
+
<li><strong>Ne pas surcharger</strong> : Éviter d'utiliser plusieurs boutons de retour en haut sur la même page</li>
|
|
81
|
+
<li><strong>Test mobile</strong> : Vérifier que le bouton reste facilement accessible sur les écrans tactiles</li>
|
|
82
|
+
</ul>
|
|
83
|
+
</BestPracticesSection>
|
|
84
|
+
|
|
85
|
+
<ResourcesSection>
|
|
86
|
+
<ul>
|
|
87
|
+
<li><a href="https://www.w3.org/WAI/WCAG21/Understanding/keyboard.html" target="_blank" rel="noopener noreferrer">WCAG 2.1 - Keyboard Accessibility</a> - Guide complet sur l'accessibilité au clavier</li>
|
|
88
|
+
<li><a href="https://www.w3.org/WAI/ARIA/apg/patterns/button/" target="_blank" rel="noopener noreferrer">ARIA Authoring Practices - Button Pattern</a> - Bonnes pratiques pour les boutons accessibles</li>
|
|
89
|
+
<li><a href="https://rgaa_numerique.gitbook.io/rgaa-accessibilite/criteres-techniques/" target="_blank" rel="noopener noreferrer">Référentiel Général d'Amélioration de l'Accessibilité (RGAA)</a> - Critères techniques français</li>
|
|
90
|
+
<li><a href="https://web.dev/focus-visible/" target="_blank" rel="noopener noreferrer">Focus Visible Best Practices</a> - Guide sur les indicateurs de focus visibles</li>
|
|
91
|
+
<li><a href="https://www.w3.org/WAI/WCAG21/Understanding/focus-visible.html" target="_blank" rel="noopener noreferrer">WCAG Understanding Focus Visible</a> - Comprendre l'exigence de focus visible</li>
|
|
92
|
+
</ul>
|
|
93
|
+
</ResourcesSection>
|
|
94
|
+
|
|
95
|
+
</AccessibilityGuideLayout>
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { describe, it, expect, vi, afterEach } from 'vitest'
|
|
2
2
|
import { mount } from '@vue/test-utils'
|
|
3
|
-
|
|
4
3
|
import Captcha from '../Captcha.vue'
|
|
5
|
-
import { vuetify } from '@tests/unit/setup'
|
|
6
4
|
|
|
7
5
|
describe('Captcha', () => {
|
|
8
6
|
afterEach(() => {
|
|
@@ -18,9 +16,6 @@ describe('Captcha', () => {
|
|
|
18
16
|
vi.stubGlobal('fetch', vi.fn().mockResolvedValue(response))
|
|
19
17
|
|
|
20
18
|
const wrapper = mount(Captcha, {
|
|
21
|
-
global: {
|
|
22
|
-
plugins: [vuetify],
|
|
23
|
-
},
|
|
24
19
|
props: {
|
|
25
20
|
urlCreate: '/captcha/captcha.json',
|
|
26
21
|
urlGetImage: '/captcha/captcha.png',
|
|
@@ -60,9 +55,6 @@ describe('Captcha', () => {
|
|
|
60
55
|
vi.stubGlobal('fetch', vi.fn().mockResolvedValue(response))
|
|
61
56
|
|
|
62
57
|
const wrapper = mount(Captcha, {
|
|
63
|
-
global: {
|
|
64
|
-
plugins: [vuetify],
|
|
65
|
-
},
|
|
66
58
|
props: {
|
|
67
59
|
urlCreate: '/captcha/captcha.json',
|
|
68
60
|
urlGetImage: '/captcha/captcha.png',
|
|
@@ -101,9 +93,6 @@ describe('Captcha', () => {
|
|
|
101
93
|
vi.stubGlobal('fetch', vi.fn().mockResolvedValue(response))
|
|
102
94
|
|
|
103
95
|
const wrapper = mount(Captcha, {
|
|
104
|
-
global: {
|
|
105
|
-
plugins: [vuetify],
|
|
106
|
-
},
|
|
107
96
|
props: {
|
|
108
97
|
urlCreate: '/captcha/captcha.json',
|
|
109
98
|
urlGetImage: '/captcha/captcha.png',
|
|
@@ -124,9 +113,6 @@ describe('Captcha', () => {
|
|
|
124
113
|
vi.stubGlobal('fetch', vi.fn().mockResolvedValue(response))
|
|
125
114
|
|
|
126
115
|
const wrapper = mount(Captcha, {
|
|
127
|
-
global: {
|
|
128
|
-
plugins: [vuetify],
|
|
129
|
-
},
|
|
130
116
|
props: {
|
|
131
117
|
urlCreate: '/captcha/captcha.json',
|
|
132
118
|
urlGetImage: '/captcha/captcha.png',
|
|
@@ -163,9 +149,6 @@ describe('Captcha', () => {
|
|
|
163
149
|
vi.stubGlobal('fetch', vi.fn().mockResolvedValue(response))
|
|
164
150
|
|
|
165
151
|
const wrapper = mount(Captcha, {
|
|
166
|
-
global: {
|
|
167
|
-
plugins: [vuetify],
|
|
168
|
-
},
|
|
169
152
|
props: {
|
|
170
153
|
urlCreate: '/captcha/captcha.json',
|
|
171
154
|
urlGetImage: '/captcha/captcha.png',
|
|
@@ -193,9 +176,6 @@ describe('Captcha', () => {
|
|
|
193
176
|
vi.stubGlobal('fetch', vi.fn().mockResolvedValue(response))
|
|
194
177
|
|
|
195
178
|
const wrapper = mount(Captcha, {
|
|
196
|
-
global: {
|
|
197
|
-
plugins: [vuetify],
|
|
198
|
-
},
|
|
199
179
|
props: {
|
|
200
180
|
urlCreate: '/captcha/captcha.json',
|
|
201
181
|
urlGetImage: '/captcha/captcha.png',
|
|
@@ -221,9 +201,6 @@ describe('Captcha', () => {
|
|
|
221
201
|
vi.stubGlobal('fetch', vi.fn().mockResolvedValue(response))
|
|
222
202
|
|
|
223
203
|
const wrapper = mount(Captcha, {
|
|
224
|
-
global: {
|
|
225
|
-
plugins: [vuetify],
|
|
226
|
-
},
|
|
227
204
|
props: {
|
|
228
205
|
urlCreate: '/captcha/captcha.json',
|
|
229
206
|
urlGetImage: '/captcha/captcha.png',
|
|
@@ -251,9 +228,6 @@ describe('Captcha', () => {
|
|
|
251
228
|
vi.stubGlobal('fetch', vi.fn().mockResolvedValue(response))
|
|
252
229
|
|
|
253
230
|
const wrapper = mount(Captcha, {
|
|
254
|
-
global: {
|
|
255
|
-
plugins: [vuetify],
|
|
256
|
-
},
|
|
257
231
|
props: {
|
|
258
232
|
urlCreate: '/captcha/captcha.json',
|
|
259
233
|
urlGetImage: '/captcha/captcha.png',
|
|
@@ -278,9 +252,6 @@ describe('Captcha', () => {
|
|
|
278
252
|
vi.stubGlobal('fetch', vi.fn().mockResolvedValue(response))
|
|
279
253
|
|
|
280
254
|
const wrapper = mount(Captcha, {
|
|
281
|
-
global: {
|
|
282
|
-
plugins: [vuetify],
|
|
283
|
-
},
|
|
284
255
|
props: {
|
|
285
256
|
urlCreate: '/captcha/captcha.json',
|
|
286
257
|
urlGetImage: '/captcha/captcha.png',
|
|
@@ -100,56 +100,9 @@ exports[`Captcha > renders correctly in audio mode 1`] = `
|
|
|
100
100
|
">
|
|
101
101
|
<div class="v-field__overlay"></div>
|
|
102
102
|
<div class="v-field__loader">
|
|
103
|
-
|
|
104
|
-
aria-hidden="true"
|
|
105
|
-
aria-valuemax="100"
|
|
106
|
-
aria-valuemin="0"
|
|
107
|
-
class="
|
|
108
|
-
v-locale--is-ltr
|
|
109
|
-
v-progress-linear
|
|
110
|
-
v-theme--light
|
|
111
|
-
"
|
|
112
|
-
role="progressbar"
|
|
113
|
-
style="
|
|
114
|
-
top: 0px;
|
|
115
|
-
height: 0px;
|
|
116
|
-
--v-progress-linear-height: 2px;
|
|
117
|
-
"
|
|
118
|
-
>
|
|
119
|
-
<!---->
|
|
120
|
-
<div
|
|
121
|
-
class="v-progress-linear__background"
|
|
122
|
-
style="opacity: NaN;"
|
|
123
|
-
></div>
|
|
124
|
-
<div
|
|
125
|
-
class="v-progress-linear__buffer"
|
|
126
|
-
style="
|
|
127
|
-
opacity: NaN;
|
|
128
|
-
width: 0%;
|
|
129
|
-
"
|
|
130
|
-
></div>
|
|
131
|
-
<transition-stub
|
|
132
|
-
appear="false"
|
|
133
|
-
css="true"
|
|
134
|
-
name="fade-transition"
|
|
135
|
-
persisted="false"
|
|
136
|
-
>
|
|
137
|
-
<div class="v-progress-linear__indeterminate">
|
|
138
|
-
<div class="
|
|
139
|
-
long
|
|
140
|
-
v-progress-linear__indeterminate
|
|
141
|
-
"></div>
|
|
142
|
-
<div class="
|
|
143
|
-
short
|
|
144
|
-
v-progress-linear__indeterminate
|
|
145
|
-
"></div>
|
|
146
|
-
</div>
|
|
147
|
-
</transition-stub>
|
|
148
|
-
<!---->
|
|
149
|
-
</div>
|
|
103
|
+
<!-- v-if -->
|
|
150
104
|
</div>
|
|
151
105
|
<div class="v-field__prepend-inner">
|
|
152
|
-
<!---->
|
|
153
106
|
<!-- v-if -->
|
|
154
107
|
<!-- v-if -->
|
|
155
108
|
</div>
|
|
@@ -159,22 +112,26 @@ exports[`Captcha > renders correctly in audio mode 1`] = `
|
|
|
159
112
|
>
|
|
160
113
|
<!---->
|
|
161
114
|
<label
|
|
115
|
+
aria-hidden="false"
|
|
162
116
|
class="
|
|
163
117
|
v-field-label
|
|
164
118
|
v-label
|
|
165
119
|
"
|
|
166
|
-
for="input-v-
|
|
120
|
+
for="input-v-2"
|
|
121
|
+
id="input-v-2-label"
|
|
167
122
|
>
|
|
168
123
|
<!---->
|
|
169
124
|
Caractères de l’audio
|
|
170
125
|
</label>
|
|
171
126
|
<!---->
|
|
172
127
|
<input
|
|
173
|
-
aria-describedby="input-v-
|
|
128
|
+
aria-describedby="input-v-2-messages"
|
|
174
129
|
aria-label="Caractères de l’audio"
|
|
130
|
+
aria-labelledby="input-v-2-label"
|
|
175
131
|
autocomplete="off"
|
|
176
132
|
class="v-field__input"
|
|
177
|
-
|
|
133
|
+
direction="horizontal"
|
|
134
|
+
id="input-v-2"
|
|
178
135
|
title="Caractères de l’audio"
|
|
179
136
|
type="text"
|
|
180
137
|
/>
|
|
@@ -186,7 +143,6 @@ exports[`Captcha > renders correctly in audio mode 1`] = `
|
|
|
186
143
|
<!-- v-if -->
|
|
187
144
|
<!-- v-if -->
|
|
188
145
|
<!-- v-if -->
|
|
189
|
-
<!---->
|
|
190
146
|
</div>
|
|
191
147
|
<div class="v-field__outline">
|
|
192
148
|
<div class="v-field__outline__start"></div>
|
|
@@ -198,7 +154,6 @@ exports[`Captcha > renders correctly in audio mode 1`] = `
|
|
|
198
154
|
v-field-label--floating
|
|
199
155
|
v-label
|
|
200
156
|
"
|
|
201
|
-
for="input-v-1"
|
|
202
157
|
>
|
|
203
158
|
<!---->
|
|
204
159
|
Caractères de l’audio
|
|
@@ -215,7 +170,7 @@ exports[`Captcha > renders correctly in audio mode 1`] = `
|
|
|
215
170
|
appear="false"
|
|
216
171
|
class="v-messages"
|
|
217
172
|
css="true"
|
|
218
|
-
id="input-v-
|
|
173
|
+
id="input-v-2-messages"
|
|
219
174
|
name="slide-y-transition"
|
|
220
175
|
persisted="false"
|
|
221
176
|
tag="div"
|
|
@@ -487,56 +442,9 @@ exports[`Captcha > renders correctly in image mode 1`] = `
|
|
|
487
442
|
">
|
|
488
443
|
<div class="v-field__overlay"></div>
|
|
489
444
|
<div class="v-field__loader">
|
|
490
|
-
|
|
491
|
-
aria-hidden="true"
|
|
492
|
-
aria-valuemax="100"
|
|
493
|
-
aria-valuemin="0"
|
|
494
|
-
class="
|
|
495
|
-
v-locale--is-ltr
|
|
496
|
-
v-progress-linear
|
|
497
|
-
v-theme--light
|
|
498
|
-
"
|
|
499
|
-
role="progressbar"
|
|
500
|
-
style="
|
|
501
|
-
top: 0px;
|
|
502
|
-
height: 0px;
|
|
503
|
-
--v-progress-linear-height: 2px;
|
|
504
|
-
"
|
|
505
|
-
>
|
|
506
|
-
<!---->
|
|
507
|
-
<div
|
|
508
|
-
class="v-progress-linear__background"
|
|
509
|
-
style="opacity: NaN;"
|
|
510
|
-
></div>
|
|
511
|
-
<div
|
|
512
|
-
class="v-progress-linear__buffer"
|
|
513
|
-
style="
|
|
514
|
-
opacity: NaN;
|
|
515
|
-
width: 0%;
|
|
516
|
-
"
|
|
517
|
-
></div>
|
|
518
|
-
<transition-stub
|
|
519
|
-
appear="false"
|
|
520
|
-
css="true"
|
|
521
|
-
name="fade-transition"
|
|
522
|
-
persisted="false"
|
|
523
|
-
>
|
|
524
|
-
<div class="v-progress-linear__indeterminate">
|
|
525
|
-
<div class="
|
|
526
|
-
long
|
|
527
|
-
v-progress-linear__indeterminate
|
|
528
|
-
"></div>
|
|
529
|
-
<div class="
|
|
530
|
-
short
|
|
531
|
-
v-progress-linear__indeterminate
|
|
532
|
-
"></div>
|
|
533
|
-
</div>
|
|
534
|
-
</transition-stub>
|
|
535
|
-
<!---->
|
|
536
|
-
</div>
|
|
445
|
+
<!-- v-if -->
|
|
537
446
|
</div>
|
|
538
447
|
<div class="v-field__prepend-inner">
|
|
539
|
-
<!---->
|
|
540
448
|
<!-- v-if -->
|
|
541
449
|
<!-- v-if -->
|
|
542
450
|
</div>
|
|
@@ -546,22 +454,26 @@ exports[`Captcha > renders correctly in image mode 1`] = `
|
|
|
546
454
|
>
|
|
547
455
|
<!---->
|
|
548
456
|
<label
|
|
457
|
+
aria-hidden="false"
|
|
549
458
|
class="
|
|
550
459
|
v-field-label
|
|
551
460
|
v-label
|
|
552
461
|
"
|
|
553
|
-
for="input-v-
|
|
462
|
+
for="input-v-1"
|
|
463
|
+
id="input-v-1-label"
|
|
554
464
|
>
|
|
555
465
|
<!---->
|
|
556
466
|
Caractères de l’image
|
|
557
467
|
</label>
|
|
558
468
|
<!---->
|
|
559
469
|
<input
|
|
560
|
-
aria-describedby="input-v-
|
|
470
|
+
aria-describedby="input-v-1-messages"
|
|
561
471
|
aria-label="Caractères de l’image"
|
|
472
|
+
aria-labelledby="input-v-1-label"
|
|
562
473
|
autocomplete="off"
|
|
563
474
|
class="v-field__input"
|
|
564
|
-
|
|
475
|
+
direction="horizontal"
|
|
476
|
+
id="input-v-1"
|
|
565
477
|
title="Caractères de l’image"
|
|
566
478
|
type="text"
|
|
567
479
|
/>
|
|
@@ -573,7 +485,6 @@ exports[`Captcha > renders correctly in image mode 1`] = `
|
|
|
573
485
|
<!-- v-if -->
|
|
574
486
|
<!-- v-if -->
|
|
575
487
|
<!-- v-if -->
|
|
576
|
-
<!---->
|
|
577
488
|
</div>
|
|
578
489
|
<div class="v-field__outline">
|
|
579
490
|
<div class="v-field__outline__start"></div>
|
|
@@ -585,7 +496,6 @@ exports[`Captcha > renders correctly in image mode 1`] = `
|
|
|
585
496
|
v-field-label--floating
|
|
586
497
|
v-label
|
|
587
498
|
"
|
|
588
|
-
for="input-v-0"
|
|
589
499
|
>
|
|
590
500
|
<!---->
|
|
591
501
|
Caractères de l’image
|
|
@@ -602,7 +512,7 @@ exports[`Captcha > renders correctly in image mode 1`] = `
|
|
|
602
512
|
appear="false"
|
|
603
513
|
class="v-messages"
|
|
604
514
|
css="true"
|
|
605
|
-
id="input-v-
|
|
515
|
+
id="input-v-1-messages"
|
|
606
516
|
name="slide-y-transition"
|
|
607
517
|
persisted="false"
|
|
608
518
|
tag="div"
|
|
@@ -312,14 +312,16 @@
|
|
|
312
312
|
padding: 0;
|
|
313
313
|
}
|
|
314
314
|
|
|
315
|
-
|
|
316
|
-
.remove-chip {
|
|
315
|
+
.sy-chip-list .remove-chip {
|
|
317
316
|
padding: 0 !important;
|
|
318
317
|
min-width: auto !important;
|
|
319
318
|
width: auto !important;
|
|
320
319
|
height: auto !important;
|
|
321
320
|
flex-shrink: 0 !important;
|
|
321
|
+
}
|
|
322
322
|
|
|
323
|
+
// Styles pour le bouton de suppression
|
|
324
|
+
.remove-chip {
|
|
323
325
|
// Assurer que l'icône reste visible en zoom texte 200%
|
|
324
326
|
:deep(.v-icon) {
|
|
325
327
|
font-size: 1rem !important;
|
|
@@ -15,6 +15,10 @@ const meta = {
|
|
|
15
15
|
items: {
|
|
16
16
|
control: 'object',
|
|
17
17
|
},
|
|
18
|
+
headingLevel: {
|
|
19
|
+
control: { type: 'select' },
|
|
20
|
+
options: [1, 2, 3, 4, 5, 6],
|
|
21
|
+
},
|
|
18
22
|
},
|
|
19
23
|
} as Meta<typeof CollapsibleList>
|
|
20
24
|
|
|
@@ -32,7 +36,7 @@ export const Default: Story = {
|
|
|
32
36
|
<CollapsibleList
|
|
33
37
|
:list-title="listTitle"
|
|
34
38
|
:items="items"
|
|
35
|
-
/>
|
|
39
|
+
:heading-level="headingLevel" />
|
|
36
40
|
</div>
|
|
37
41
|
</template>
|
|
38
42
|
`,
|
|
@@ -43,7 +47,7 @@ export const Default: Story = {
|
|
|
43
47
|
import { CollapsibleList } from '@cnamts/synapse'
|
|
44
48
|
|
|
45
49
|
const listTitle = 'Santé'
|
|
46
|
-
|
|
50
|
+
const headingLevel = 4
|
|
47
51
|
const items = [
|
|
48
52
|
{
|
|
49
53
|
text: 'Mon espace santé',
|
|
@@ -61,6 +65,7 @@ export const Default: Story = {
|
|
|
61
65
|
},
|
|
62
66
|
args: {
|
|
63
67
|
listTitle: 'Santé',
|
|
68
|
+
headingLevel: 4,
|
|
64
69
|
items: [
|
|
65
70
|
{
|
|
66
71
|
text: 'Mon espace santé',
|
|
@@ -80,7 +85,7 @@ export const Default: Story = {
|
|
|
80
85
|
},
|
|
81
86
|
template: `
|
|
82
87
|
<div class="d-flex flex-wrap align-center pa-4">
|
|
83
|
-
<CollapsibleList v-bind="args"
|
|
88
|
+
<CollapsibleList v-bind="args"/>
|
|
84
89
|
</div>
|
|
85
90
|
`,
|
|
86
91
|
}
|
|
@@ -2,11 +2,15 @@
|
|
|
2
2
|
import { computed } from 'vue'
|
|
3
3
|
import { useDisplay } from 'vuetify'
|
|
4
4
|
import type { ListItem } from './types'
|
|
5
|
+
import SyHeading from '@/components/SyHeading/SyHeading.vue'
|
|
5
6
|
|
|
6
|
-
const props = defineProps<{
|
|
7
|
+
const props = withDefaults(defineProps<{
|
|
7
8
|
listTitle: string | null
|
|
8
9
|
items: ListItem[]
|
|
9
|
-
|
|
10
|
+
headingLevel?: 1 | 2 | 3 | 4 | 5 | 6
|
|
11
|
+
}>(), {
|
|
12
|
+
headingLevel: 4,
|
|
13
|
+
})
|
|
10
14
|
|
|
11
15
|
const { smAndDown } = useDisplay()
|
|
12
16
|
|
|
@@ -55,13 +59,17 @@
|
|
|
55
59
|
v-else
|
|
56
60
|
class="vd-collapse-list"
|
|
57
61
|
>
|
|
58
|
-
<
|
|
59
|
-
class="text-subtitle-1 font-weight-bold mb-3"
|
|
62
|
+
<SyHeading
|
|
63
|
+
:class="headingLevel === 4 ? 'text-subtitle-1 font-weight-bold mb-3' : 'font-weight-bold mb-3'"
|
|
64
|
+
:level="headingLevel"
|
|
60
65
|
>
|
|
61
66
|
{{ listTitle }}
|
|
62
|
-
</
|
|
67
|
+
</SyHeading>
|
|
63
68
|
|
|
64
|
-
<ul
|
|
69
|
+
<ul
|
|
70
|
+
class="
|
|
71
|
+
pl-0"
|
|
72
|
+
>
|
|
65
73
|
<li
|
|
66
74
|
v-for="(item, index) in items"
|
|
67
75
|
:key="index"
|
|
@@ -18,7 +18,26 @@ import {
|
|
|
18
18
|
iconSrc={AccessibilityIcon}
|
|
19
19
|
apgHref="https://www.w3.org/WAI/ARIA/apg/patterns/disclosure/"
|
|
20
20
|
>
|
|
21
|
+
<AuditSection>
|
|
22
|
+
<div class="mt-2">
|
|
23
|
+
<p>Rapport d’audit manuel : <a href="/audits/CollapsibleList.xlsx" style={{ color:'#0C41BD' }}>Voir le rapport</a></p>
|
|
24
|
+
<p style={{ color: 'grey', fontSize: '14px', marginTop: '0px' }}>Correctifs associés (<a href="https://github.com/assurance-maladie-digital/design-system-v3/issues/792" target="_blank" style={{color:'#0C41BD'}}>issue #792</a>)</p>
|
|
25
|
+
</div>
|
|
26
|
+
|
|
27
|
+
</AuditSection>
|
|
21
28
|
<CriteriaSection>
|
|
29
|
+
<CriteriaCard icon="🧩" title="Niveau de titre configurable via la prop headingLevel">
|
|
30
|
+
<ul>
|
|
31
|
+
<li>Le niveau du titre (h1 à h6) est défini grâce à la propriété <strong>headingLevel</strong> déclarée dans le composant. Si aucune valeur n’est fournie, le composant applique par défaut un titre de niveau h4, défini dans l’implémentation du composant.</li>
|
|
32
|
+
<code><CollapsibleList
|
|
33
|
+
:list-title="listTitle"
|
|
34
|
+
:items="items"
|
|
35
|
+
:heading-level="4" /> </code>
|
|
36
|
+
|
|
37
|
+
<li><strong>Accessibilité</strong> : Permet que la hiérarchie entre les titres soit pertinente (critère 9.1.1 RGAA) </li>
|
|
38
|
+
</ul>
|
|
39
|
+
</CriteriaCard>
|
|
40
|
+
|
|
22
41
|
<CriteriaCard icon="🔍" title="Structure sémantique">
|
|
23
42
|
<ul>
|
|
24
43
|
<li><strong>Comportement adaptatif</strong> : Section pliable sur mobile, liste statique sur desktop</li>
|
|
@@ -66,11 +85,5 @@ import {
|
|
|
66
85
|
</ul>
|
|
67
86
|
</ResourcesSection>
|
|
68
87
|
|
|
69
|
-
<AuditSection>
|
|
70
|
-
<div class="mt-2">
|
|
71
|
-
<p>Rapport d’audit manuel : <a href="/audits/CollapsibleList.xlsx" style={{ color:'#0C41BD' }}>Voir le rapport</a></p>
|
|
72
|
-
<p style={{ color: 'grey', fontSize: '14px', marginTop: '0px' }}>Correctifs associés (<a href="https://github.com/assurance-maladie-digital/design-system-v3/issues/792" target="_blank" style={{color:'#0C41BD'}}>issue #792</a>)</p>
|
|
73
|
-
</div>
|
|
74
88
|
|
|
75
|
-
</AuditSection>
|
|
76
89
|
</AccessibilityGuideLayout>
|
|
@@ -7,6 +7,7 @@ describe('CollapsibleList', () => {
|
|
|
7
7
|
it('renders correctly', async () => {
|
|
8
8
|
const wrapper = mount(CollapsibleList, {
|
|
9
9
|
propsData: {
|
|
10
|
+
headingLevel: 4,
|
|
10
11
|
listTitle: 'Santé',
|
|
11
12
|
items: [
|
|
12
13
|
{
|
|
@@ -30,6 +31,7 @@ describe('CollapsibleList', () => {
|
|
|
30
31
|
it('renders correctly with in mobile mode', () => {
|
|
31
32
|
const wrapper = mount(CollapsibleList, {
|
|
32
33
|
propsData: {
|
|
34
|
+
headingLevel: 4,
|
|
33
35
|
listTitle: 'Santé',
|
|
34
36
|
items: [
|
|
35
37
|
{
|