@cnamts/synapse 1.0.16 → 1.0.17
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-DSwJUvBu.js → DateFilter-RHtdShO1.js} +1 -1
- package/dist/{NumberFilter-CwsbYyz4.js → NumberFilter-DXYz_b_w.js} +1 -1
- package/dist/{PeriodFilter-csnEZU30.js → PeriodFilter-CzphmrNu.js} +1 -1
- package/dist/{SelectFilter-Bd5fndzR.js → SelectFilter-a4fUV5Jp.js} +1 -1
- package/dist/{TextFilter-B6gxzq2a.js → TextFilter-CZ4LTKoq.js} +1 -1
- package/dist/components/Accordion/Accordion.d.ts +22 -7
- package/dist/components/Amelipro/AmeliproPatientLogged/AmeliproPatientLogged.d.ts +31 -8
- package/dist/components/Amelipro/AmeliproPatientLogged/types.d.ts +2 -1
- package/dist/components/Amelipro/AmeliproTabs/AmeliproTabBtn/AmeliproTabBtn.d.ts +1 -1
- package/dist/components/Amelipro/AmeliproTabs/AmeliproTabs.d.ts +14 -5
- package/dist/components/Amelipro/AmeliproTextField/AmeliproTextField.d.ts +10 -1
- package/dist/components/Amelipro/AmeliproTooltips/AmeliproTooltips.d.ts +6 -2
- package/dist/components/Amelipro/StructureMenu/StructureBtn/StructureBtn.d.ts +9 -0
- package/dist/components/Amelipro/StructureMenu/StructureItem/types.d.ts +1 -0
- package/dist/components/Amelipro/StructureMenu/StructureMenu.d.ts +9 -0
- package/dist/components/Amelipro/StructureMenu/StructureTabs/StructureTabs.d.ts +23 -2
- package/dist/components/ChipList/locales.d.ts +1 -0
- package/dist/components/CookieBanner/CookieBanner.d.ts +2 -2
- package/dist/components/Customs/SyTextField/SyTextField.d.ts +1 -1
- package/dist/components/DatePicker/CalendarMode/DatePicker.d.ts +4 -4
- package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +9 -11
- package/dist/components/DatePicker/DateTextInput/DateTextInput.d.ts +7 -10
- package/dist/components/DatePicker/composables/index.d.ts +0 -1
- package/dist/components/DialogBox/DialogBox.d.ts +3 -3
- package/dist/components/DialogBox/config.d.ts +4 -0
- package/dist/components/FilterSideBar/FilterSideBar.d.ts +10 -3
- package/dist/components/FilterSideBar/locales.d.ts +5 -0
- package/dist/components/HeaderBar/HeaderBar.d.ts +2 -0
- package/dist/components/HeaderNavigationBar/HeaderNavigationBar.d.ts +14 -4
- package/dist/components/HeaderNavigationBar/HorizontalNavbar/HorizontalNavbar.d.ts +5 -1
- package/dist/components/MaintenancePage/MaintenancePage.d.ts +8 -1
- package/dist/components/NotFoundPage/NotFoundPage.d.ts +9 -2
- package/dist/components/NotificationBar/Notification/Notification.d.ts +30 -0
- package/dist/components/NotificationBar/NotificationBar.d.ts +32 -20
- package/dist/components/PeriodField/PeriodField.d.ts +16 -16
- package/dist/components/SubHeader/SubHeader.d.ts +11 -8
- package/dist/components/SyTextArea/SyTextArea.d.ts +2 -0
- package/dist/components/SyTextArea/locales.d.ts +1 -0
- package/dist/components/UserMenuBtn/UserMenuBtn.d.ts +2 -0
- package/dist/design-system-v3.js +1 -1
- package/dist/design-system-v3.umd.cjs +18 -18
- package/dist/directives/lockFocus.d.ts +1 -1
- package/dist/{main-DkZZpa3S.js → main-BXIMMzFS.js} +9368 -9157
- package/dist/style.css +1 -1
- package/package.json +11 -4
- package/src/components/Accordion/Accessibilite/AccessibilityGuide.mdx +70 -241
- package/src/components/Accordion/Accordion.mdx +6 -1
- package/src/components/Accordion/Accordion.stories.ts +88 -9
- package/src/components/Accordion/Accordion.vue +56 -24
- package/src/components/Accordion/tests/Accordion.a11y.spec.ts +46 -0
- package/src/components/Accordion/tests/__snapshots__/accordion.spec.ts.snap +26 -30
- package/src/components/Accordion/tests/accordion.spec.ts +27 -26
- package/src/components/Amelipro/AmeliproPatientLogged/AmeliproPatientLogged.stories.ts +62 -34
- package/src/components/Amelipro/AmeliproPatientLogged/AmeliproPatientLogged.vue +48 -15
- package/src/components/Amelipro/AmeliproPatientLogged/__tests__/AmeliproPatientLogged.spec.ts +4 -2
- package/src/components/Amelipro/AmeliproPatientLogged/__tests__/__snapshots__/AmeliproPatientLogged.spec.ts.snap +54 -4
- package/src/components/Amelipro/AmeliproPatientLogged/types.d.ts +2 -1
- package/src/components/Amelipro/AmeliproPatientLogin/AmeliproPatientLogin.stories.ts +11 -5
- package/src/components/Amelipro/AmeliproPatientLogin/AmeliproPatientLoginForm/AmeliproPatientLoginForm.vue +8 -0
- package/src/components/Amelipro/AmeliproSelect/AmeliproSelect.vue +37 -1
- package/src/components/Amelipro/AmeliproSelect/__tests__/__snapshots__/AmeliproSelect.spec.ts.snap +2 -2
- package/src/components/Amelipro/AmeliproTabs/AmeliproTabs.stories.ts +94 -0
- package/src/components/Amelipro/AmeliproTabs/AmeliproTabs.vue +6 -2
- package/src/components/Amelipro/AmeliproTabs/__tests__/AmeliproTabs.spec.ts +4 -0
- package/src/components/Amelipro/AmeliproTabs/__tests__/__snapshots__/AmeliproTabs.spec.ts.snap +4 -2
- package/src/components/Amelipro/AmeliproTextField/AmeliproTextField.stories.ts +68 -0
- package/src/components/Amelipro/AmeliproTextField/AmeliproTextField.vue +110 -2
- package/src/components/Amelipro/AmeliproTextField/__tests__/AmeliproTextField.spec.ts +14 -2
- package/src/components/Amelipro/AmeliproTextField/__tests__/__snapshots__/AmeliproTextField.spec.ts.snap +2 -0
- package/src/components/Amelipro/AmeliproTooltips/AmeliproTooltips.stories.ts +45 -0
- package/src/components/Amelipro/AmeliproTooltips/AmeliproTooltips.vue +6 -0
- package/src/components/Amelipro/StructureMenu/StructureBtn/StructureBtn.vue +13 -0
- package/src/components/Amelipro/StructureMenu/StructureBtn/__tests__/StructureBtn.spec.ts +6 -0
- package/src/components/Amelipro/StructureMenu/StructureBtn/__tests__/__snapshots__/StructureBtn.spec.ts.snap +1 -1
- package/src/components/Amelipro/StructureMenu/StructureItem/StructureItem.vue +14 -2
- package/src/components/Amelipro/StructureMenu/StructureItem/__tests__/__snapshots__/StructureItem.spec.ts.snap +22 -6
- package/src/components/Amelipro/StructureMenu/StructureItem/types.d.ts +1 -0
- package/src/components/Amelipro/StructureMenu/StructureMenu.stories.ts +93 -63
- package/src/components/Amelipro/StructureMenu/StructureMenu.vue +5 -0
- package/src/components/Amelipro/StructureMenu/StructureTabs/StructureTabs.vue +22 -1
- package/src/components/Amelipro/StructureMenu/StructureTabs/__tests__/StructureTabs.spec.ts +4 -0
- package/src/components/Amelipro/StructureMenu/StructureTabs/__tests__/__snapshots__/StructureTabs.spec.ts.snap +2 -0
- package/src/components/Amelipro/StructureMenu/__tests__/StructureMenu.spec.ts +12 -6
- package/src/components/BackBtn/tests/BackBtn.a11y.spec.ts +20 -0
- package/src/components/BackToTopBtn/BackToTopBtn.stories.ts +9 -0
- package/src/components/BackToTopBtn/tests/BackToTopBtn.a11y.spec.ts +37 -0
- package/src/components/Captcha/tests/Captcha.a11y.spec.ts +49 -0
- package/src/components/ChipList/ChipList.stories.ts +15 -0
- package/src/components/ChipList/ChipList.vue +20 -17
- package/src/components/ChipList/locales.ts +1 -0
- package/src/components/ChipList/tests/ChipList.a11y.spec.ts +40 -0
- package/src/components/CollapsibleList/Accessibilite.mdx +67 -11
- package/src/components/CollapsibleList/tests/CollapsibleList.a11y.spec.ts +38 -0
- package/src/components/ContextualMenu/ContextualMenu.stories.ts +3 -0
- package/src/components/ContextualMenu/tests/ContextualMenu.a11y.spec.ts +30 -0
- package/src/components/CookieBanner/CookieBanner.stories.ts +15 -0
- package/src/components/CookieBanner/CookieBanner.vue +0 -1
- package/src/components/CookieBanner/tests/CookieBanner.a11y.spec.ts +29 -0
- package/src/components/CookiesSelection/CookiesInformation/tests/CookiesInformation.a11y.spec.ts +46 -0
- package/src/components/CookiesSelection/CookiesTable/tests/CookiesTable.a11y.spec.ts +37 -0
- package/src/components/CookiesSelection/tests/CookiesSelection.a11y.spec.ts +58 -0
- package/src/components/CopyBtn/CopyBtn.stories.ts +21 -0
- package/src/components/CopyBtn/tests/CopyBtn.a11y.spec.ts +40 -0
- package/src/components/Customs/Selects/SyBtnSelect/SyBtnSelect.stories.ts +30 -0
- package/src/components/Customs/Selects/SyBtnSelect/SyBtnSelect.vue +1 -0
- package/src/components/Customs/Selects/SySelect/SySelect.stories.ts +27 -0
- package/src/components/Customs/Selects/SySelect/tests/SySelect.a11y.spec.ts +40 -0
- package/src/components/Customs/SyCheckbox/SyCheckbox.stories.ts +7 -3
- package/src/components/Customs/SyCheckbox/SyCheckbox.vue +20 -2
- package/src/components/Customs/SyCheckbox/tests/SyCheckbox.a11y.spec.ts +26 -0
- package/src/components/Customs/SyForm/SyForm.a11y.spec.ts +33 -0
- package/src/components/Customs/SyIcon/SyIcon.a11y.spec.ts +37 -0
- package/src/components/Customs/SyIcon/SyIcon.stories.ts +5 -0
- package/src/components/Customs/SyPagination/tests/SyPagination.a11y.spec.ts +27 -0
- package/src/components/Customs/SyRadioGroup/tests/SyRadioGroup.a11y.spec.ts +30 -0
- package/src/components/Customs/SyTabs/SyTabs.stories.ts +33 -0
- package/src/components/Customs/SyTabs/tests/SyTabs.a11y.spec.ts +51 -0
- package/src/components/Customs/SyTextField/SyTextField.stories.ts +3 -0
- package/src/components/Customs/SyTextField/SyTextField.vue +13 -11
- package/src/components/Customs/SyTextField/tests/SyTextField.a11y.spec.ts +27 -0
- package/src/components/DataList/tests/DataList.a11y.spec.ts +35 -0
- package/src/components/DataListGroup/tests/DataListGroup.a11y.spec.ts +24 -0
- package/src/components/DataListItem/tests/DataListItem.a11y.spec.ts +31 -0
- package/src/components/DatePicker/CalendarMode/DatePicker.stories.ts +45 -0
- package/src/components/DatePicker/CalendarMode/DatePicker.vue +76 -30
- package/src/components/DatePicker/CalendarMode/tests/DatePicker.a11y.spec.ts +27 -0
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.stories.ts +54 -0
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +79 -23
- package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.a11y.spec.ts +26 -0
- package/src/components/DatePicker/DateTextInput/DateRange.stories.ts +12 -0
- package/src/components/DatePicker/DateTextInput/DateTextInput.vue +0 -8
- package/src/components/DatePicker/DateTextInput/tests/DateTextInput.a11y.spec.ts +27 -0
- package/src/components/DatePicker/composables/index.ts +0 -1
- package/src/components/DatePicker/composables/useMonthButtonCustomization.ts +0 -1
- package/src/components/DiacriticPicker/tests/DiacriticPicker.a11y.spec.ts +46 -0
- package/src/components/DialogBox/DialogBox.stories.ts +5 -2
- package/src/components/DialogBox/DialogBox.vue +5 -0
- package/src/components/DialogBox/config.ts +5 -0
- package/src/components/DialogBox/tests/DialogBox.a11y.spec.ts +43 -0
- package/src/components/DownloadBtn/tests/DownloadBtn.a11y.spec.ts +26 -0
- package/src/components/ErrorPage/ErrorPage.stories.ts +60 -0
- package/src/components/ErrorPage/tests/ErrorPage.a11y.spec.ts +29 -0
- package/src/components/ExternalLinks/ExternalLinks.stories.ts +21 -0
- package/src/components/ExternalLinks/tests/ExternalLinks.a11y.spec.ts +39 -0
- package/src/components/FileList/FileList.stories.ts +3 -0
- package/src/components/FileList/tests/FileList.a11y.spec.ts +41 -0
- package/src/components/FilePreview/FilePreview.stories.ts +3 -0
- package/src/components/FilePreview/tests/FilePreview.a11y.spec.ts +47 -0
- package/src/components/FileUpload/tests/FileUpload.a11y.spec.ts +25 -0
- package/src/components/FilterInline/FilterInline.stories.ts +15 -0
- package/src/components/FilterInline/FilterInline.vue +8 -4
- package/src/components/FilterInline/tests/FilterInline.a11y.spec.ts +36 -0
- package/src/components/FilterInline/tests/__snapshots__/FilterInline.spec.ts.snap +0 -3
- package/src/components/FilterSideBar/Accessibilite.stories.ts +4 -0
- package/src/components/FilterSideBar/FilterSideBar.stories.ts +33 -11
- package/src/components/FilterSideBar/FilterSideBar.vue +146 -83
- package/src/components/FilterSideBar/locales.ts +6 -0
- package/src/components/FilterSideBar/tests/FilterSideBar.a11y.spec.ts +59 -0
- package/src/components/FilterSideBar/tests/FilterSideBar.spec.ts +2 -2
- package/src/components/FooterBar/Accessibilite.mdx +67 -11
- package/src/components/FooterBar/FooterBar.vue +1 -1
- package/src/components/FooterBar/config.ts +2 -2
- package/src/components/FooterBar/tests/FooterBar.a11y.spec.ts +31 -0
- package/src/components/FooterBar/tests/FooterBarConfig.spec.ts +1 -1
- package/src/components/FooterBar/tests/__snapshots__/FooterBar.spec.ts.snap +1 -1
- package/src/components/FranceConnectBtn/tests/FranceConnectBtn.a11y.spec.ts +25 -0
- package/src/components/HeaderBar/HeaderBar.stories.ts +21 -0
- package/src/components/HeaderBar/HeaderBar.vue +47 -40
- package/src/components/HeaderBar/HeaderBurgerMenu/HeaderBurgerMenu.stories.ts +12 -0
- package/src/components/HeaderBar/HeaderBurgerMenu/HeaderSubMenu/HeaderSubMenu.stories.ts +3 -0
- package/src/components/HeaderBar/HeaderBurgerMenu/HeaderSubMenu/HeaderSubMenu.vue +4 -0
- package/src/components/HeaderBar/HeaderBurgerMenu/menu.scss +17 -7
- package/src/components/HeaderBar/consts.scss +0 -1
- package/src/components/HeaderBar/tests/HeaderBar.a11y.spec.ts +33 -0
- package/src/components/HeaderBar/tests/__snapshots__/HeaderBar.spec.ts.snap +58 -57
- package/src/components/HeaderLoading/tests/HeaderLoading.a11y.spec.ts +25 -0
- package/src/components/HeaderNavigationBar/HeaderNavigationBar.stories.ts +42 -0
- package/src/components/HeaderNavigationBar/HeaderNavigationBar.vue +4 -0
- package/src/components/HeaderNavigationBar/HorizontalNavbar/HorizontalNavbar.vue +6 -2
- package/src/components/HeaderNavigationBar/tests/HeaderNavigationBar.a11y.spec.ts +45 -0
- package/src/components/HeaderToolbar/HeaderToolbar.stories.ts +6 -0
- package/src/components/HeaderToolbar/HeaderToolbar.vue +0 -3
- package/src/components/HeaderToolbar/tests/HeaderToolbar.a11y.spec.ts +25 -0
- package/src/components/LangBtn/LangBtn.stories.ts +12 -0
- package/src/components/LangBtn/tests/LangBtn.a11y.spec.ts +25 -0
- package/src/components/Logo/tests/Logo.a11y.spec.ts +20 -0
- package/src/components/LogoBrandSection/tests/LogoBrandSection.a11y.spec.ts +38 -0
- package/src/components/LunarCalendar/tests/LunarCalendar.a11y.spec.ts +31 -0
- package/src/components/MaintenancePage/MaintenancePage.stories.ts +46 -0
- package/src/components/MaintenancePage/MaintenancePage.vue +7 -5
- package/src/components/MaintenancePage/tests/MaintenancePage.a11y.spec.ts +21 -0
- package/src/components/NirField/NirField.stories.ts +6 -0
- package/src/components/NirField/tests/NirField.a11y.spec.ts +32 -0
- package/src/components/NotFoundPage/NotFoundPage.stories.ts +56 -0
- package/src/components/NotFoundPage/NotFoundPage.vue +7 -5
- package/src/components/NotFoundPage/tests/NotFoundPage.a11y.spec.ts +31 -0
- package/src/components/NotificationBar/Notification/Notification.vue +203 -0
- package/src/components/NotificationBar/NotificationBar.stories.ts +151 -140
- package/src/components/NotificationBar/NotificationBar.vue +148 -202
- package/src/components/NotificationBar/config.ts +1 -1
- package/src/components/NotificationBar/tests/NotificationBar.a11y.spec.ts +66 -0
- package/src/components/NotificationBar/tests/NotificationBar.spec.ts +173 -177
- package/src/components/NotificationBar/tests/__snapshots__/NotificationBar.spec.ts.snap +67 -29
- package/src/components/PageContainer/tests/PageContainer.a11y.spec.ts +27 -0
- package/src/components/PaginatedTable/PaginatedTable.stories.ts +6 -0
- package/src/components/PaginatedTable/PaginatedTable.vue +48 -1
- package/src/components/PaginatedTable/tests/PaginatedTable.a11y.spec.ts +43 -0
- package/src/components/PasswordField/PasswordField.stories.ts +39 -0
- package/src/components/PasswordField/tests/PasswordField.a11y.spec.ts +26 -0
- package/src/components/PeriodField/tests/PeriodField.a11y.spec.ts +31 -0
- package/src/components/PhoneField/PhoneField.stories.ts +51 -0
- package/src/components/PhoneField/tests/PhoneField.a11y.spec.ts +34 -0
- package/src/components/RangeField/tests/RangeField.a11y.spec.ts +32 -0
- package/src/components/RatingPicker/RatingPicker.stories.ts +21 -0
- package/src/components/SkipLink/Accessibilite.mdx +59 -13
- package/src/components/SkipLink/SkipLink.stories.ts +41 -8
- package/src/components/SubHeader/SubHeader.stories.ts +178 -92
- package/src/components/SubHeader/SubHeader.vue +84 -71
- package/src/components/SubHeader/config.ts +1 -1
- package/src/components/SyAlert/SyAlert.vue +1 -1
- package/src/components/SyTextArea/SyTextArea.stories.ts +40 -0
- package/src/components/SyTextArea/SyTextArea.vue +13 -0
- package/src/components/SyTextArea/locales.ts +1 -0
- package/src/components/SyTextArea/tests/SyTextArea.spec.ts +42 -0
- package/src/components/TableToolbar/TableToolbar.stories.ts +3 -0
- package/src/components/Tables/SyServerTable/SyServerTable.stories.ts +70 -1
- package/src/components/Tables/SyTable/FilterRules.stories.ts +12 -0
- package/src/components/Tables/SyTable/SyTable.stories.ts +69 -0
- package/src/components/UserMenuBtn/UserMenuBtn.stories.ts +31 -1
- package/src/components/UserMenuBtn/UserMenuBtn.vue +2 -1
- package/src/components/UserMenuBtn/tests/UserMenuBtn.a11y.spec.ts +31 -0
- package/src/directives/lockFocus.ts +12 -2
- package/src/stories/GuideDuDev/ClassesUtilitaires/DataUtilities.mdx +6 -6
- package/src/stories/GuideDuDev/ClassesUtilitaires/DomBrowserUtilities.mdx +52 -59
- package/src/stories/GuideDuDev/ClassesUtilitaires/FormattingUtilities.mdx +9 -9
- package/src/stories/GuideDuDev/ClassesUtilitaires/StorageUtilities.mdx +2 -2
- package/src/stories/GuideDuDev/ClassesUtilitaires/ValidationRules.mdx +3 -3
- package/src/stories/GuideDuDev/ClassesUtilitaires/ValidationUtilities.mdx +11 -11
- package/src/stories/GuideDuDev/ClassesUtilitaires/index.mdx +15 -15
- package/src/stories/GuideDuDev/MigrationDepuisBridge.mdx +1 -1
- package/src/stories/GuideDuDev/moduleDeNotification.mdx +1 -1
- package/src/stories/accessibility/AccessibilityGuideLayout.mdx +87 -0
- package/src/stories/styles/accessibility-guide.css +153 -0
- package/dist/components/DatePicker/composables/useIconState.d.ts +0 -17
- package/src/components/Amelipro/AmeliproTextField/tests/__snapshots__/AmeliproTextField.spec.ts.snap +0 -162
- package/src/components/DatePicker/composables/tests/useIconState.spec.ts +0 -130
- package/src/components/DatePicker/composables/useIconState.ts +0 -53
- package/src/components/Usages/tests/Usages.spec.ts +0 -155
|
@@ -7,16 +7,12 @@
|
|
|
7
7
|
import useAccordionState from './composables/useAccordionState'
|
|
8
8
|
import useAccordionGroupCommunication from './composables/useAccordionGroupCommunication'
|
|
9
9
|
import useAccordionKeyboardNavigation, { type AccordionItem as KeyboardNavigationItem } from './composables/useAccordionKeyboardNavigation'
|
|
10
|
-
|
|
11
|
-
interface ContentObject {
|
|
12
|
-
title: string
|
|
13
|
-
content: string
|
|
14
|
-
}
|
|
10
|
+
import SyIcon from '@/components/Customs/SyIcon/SyIcon.vue'
|
|
15
11
|
|
|
16
12
|
interface AccordionItem {
|
|
17
13
|
id: string
|
|
18
14
|
title: string
|
|
19
|
-
content: string |
|
|
15
|
+
content: string | Record<string, unknown>
|
|
20
16
|
headingLevel?: number
|
|
21
17
|
disabled?: boolean
|
|
22
18
|
}
|
|
@@ -117,7 +113,7 @@
|
|
|
117
113
|
:is="getHeadingTag(item)"
|
|
118
114
|
class="sy-accordion-heading"
|
|
119
115
|
>
|
|
120
|
-
<
|
|
116
|
+
<span
|
|
121
117
|
class="sy-accordion-title"
|
|
122
118
|
:class="isItemOpen(item.id) ? `text-${options.accordion.activeColor}` : `text-${options.accordion.titleColor}`"
|
|
123
119
|
>
|
|
@@ -125,10 +121,29 @@
|
|
|
125
121
|
class="sy-accordion-icon"
|
|
126
122
|
:class="{ 'sy-accordion-icon--open': isItemOpen(item.id) }"
|
|
127
123
|
>
|
|
128
|
-
<
|
|
124
|
+
<SyIcon
|
|
125
|
+
:icon="mdiChevronRight"
|
|
126
|
+
decorative
|
|
127
|
+
/>
|
|
129
128
|
</span>
|
|
130
|
-
<
|
|
131
|
-
|
|
129
|
+
<slot
|
|
130
|
+
name="title"
|
|
131
|
+
:item="item"
|
|
132
|
+
:index="index"
|
|
133
|
+
>
|
|
134
|
+
<span>{{ item.title }}</span>
|
|
135
|
+
</slot>
|
|
136
|
+
</span>
|
|
137
|
+
<span
|
|
138
|
+
v-if="$slots['right-content']"
|
|
139
|
+
class="sy-accordion-right-content"
|
|
140
|
+
>
|
|
141
|
+
<slot
|
|
142
|
+
name="right-content"
|
|
143
|
+
:item="item"
|
|
144
|
+
:index="index"
|
|
145
|
+
/>
|
|
146
|
+
</span>
|
|
132
147
|
</component>
|
|
133
148
|
</div>
|
|
134
149
|
|
|
@@ -141,20 +156,28 @@
|
|
|
141
156
|
:tabindex="isItemOpen(item.id) ? 0 : -1"
|
|
142
157
|
>
|
|
143
158
|
<div class="sy-accordion-content-inner">
|
|
144
|
-
<
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
<
|
|
151
|
-
<
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
159
|
+
<slot
|
|
160
|
+
name="content"
|
|
161
|
+
:item="item"
|
|
162
|
+
:index="index"
|
|
163
|
+
:is-open="isItemOpen(item.id)"
|
|
164
|
+
>
|
|
165
|
+
<template v-if="typeof item.content === 'string'">
|
|
166
|
+
<p class="sy-accordion-content-text">
|
|
167
|
+
{{ item.content }}
|
|
168
|
+
</p>
|
|
169
|
+
</template>
|
|
170
|
+
<template v-else>
|
|
171
|
+
<div class="sy-accordion-content-item">
|
|
172
|
+
<p class="sy-accordion-content-text">
|
|
173
|
+
<strong>{{ (item.content as any).title }}</strong>
|
|
174
|
+
</p>
|
|
175
|
+
<p class="sy-accordion-content-text">
|
|
176
|
+
{{ (item.content as any).content }}
|
|
177
|
+
</p>
|
|
155
178
|
</div>
|
|
156
|
-
</
|
|
157
|
-
</
|
|
179
|
+
</template>
|
|
180
|
+
</slot>
|
|
158
181
|
</div>
|
|
159
182
|
</div>
|
|
160
183
|
</div>
|
|
@@ -175,6 +198,10 @@
|
|
|
175
198
|
|
|
176
199
|
.sy-accordion-heading {
|
|
177
200
|
margin: 0;
|
|
201
|
+
display: flex;
|
|
202
|
+
align-items: center;
|
|
203
|
+
justify-content: space-between;
|
|
204
|
+
width: 100%;
|
|
178
205
|
}
|
|
179
206
|
|
|
180
207
|
.sy-accordion-button {
|
|
@@ -197,6 +224,12 @@
|
|
|
197
224
|
display: flex;
|
|
198
225
|
}
|
|
199
226
|
|
|
227
|
+
.sy-accordion-right-content {
|
|
228
|
+
display: flex;
|
|
229
|
+
align-items: center;
|
|
230
|
+
margin-left: 16px;
|
|
231
|
+
}
|
|
232
|
+
|
|
200
233
|
.sy-accordion-button:hover,
|
|
201
234
|
.sy-accordion-content--open + .sy-accordion-button,
|
|
202
235
|
.sy-accordion-item:has(.sy-accordion-content--open) .sy-accordion-button {
|
|
@@ -266,7 +299,6 @@
|
|
|
266
299
|
}
|
|
267
300
|
|
|
268
301
|
.sy-accordion-content-line {
|
|
269
|
-
margin-bottom: 8px;
|
|
270
302
|
line-height: 1.5;
|
|
271
303
|
}
|
|
272
304
|
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
// @vitest-environment jsdom
|
|
2
|
+
|
|
3
|
+
import { describe, it } from 'vitest'
|
|
4
|
+
import { mount } from '@vue/test-utils'
|
|
5
|
+
import { axe } from 'vitest-axe'
|
|
6
|
+
import { assertNoA11yViolations } from '@tests/unit/accessibility/axeUtils'
|
|
7
|
+
import Accordion from '../Accordion.vue'
|
|
8
|
+
|
|
9
|
+
const defaultItems = [
|
|
10
|
+
{ id: 'item1', title: 'Section 1', content: 'Contenu de la section 1' },
|
|
11
|
+
{
|
|
12
|
+
id: 'item2',
|
|
13
|
+
title: 'Section 2',
|
|
14
|
+
content: {
|
|
15
|
+
title: 'Sous-titre de la section 2',
|
|
16
|
+
content: 'Contenu détaillé de la section 2',
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
]
|
|
20
|
+
|
|
21
|
+
// Test d'accessibilité dédié à Accordion, basé sur un scénario réaliste :
|
|
22
|
+
// - plusieurs items
|
|
23
|
+
// - ouvertures successives pour vérifier l'état ouvert/fermé et les attributs ARIA
|
|
24
|
+
|
|
25
|
+
describe('Accordion – accessibility (axe)', () => {
|
|
26
|
+
it('has no obvious axe violations when sections are opened', async () => {
|
|
27
|
+
const wrapper = mount(Accordion, {
|
|
28
|
+
props: {
|
|
29
|
+
items: defaultItems,
|
|
30
|
+
headingLevel: 2,
|
|
31
|
+
},
|
|
32
|
+
})
|
|
33
|
+
|
|
34
|
+
// Ouvrir les deux sections pour inclure le contenu dans l’audit axe
|
|
35
|
+
const buttons = wrapper.findAll('.sy-accordion-button')
|
|
36
|
+
if (buttons.length > 0) {
|
|
37
|
+
await buttons[0].trigger('click')
|
|
38
|
+
}
|
|
39
|
+
if (buttons.length > 1) {
|
|
40
|
+
await buttons[1].trigger('click')
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
const results = await axe(wrapper.element as HTMLElement)
|
|
44
|
+
assertNoA11yViolations(results, 'Accordion – sections opened')
|
|
45
|
+
})
|
|
46
|
+
})
|
|
@@ -23,24 +23,22 @@ exports[`Accordion > renders correctly 1`] = `
|
|
|
23
23
|
tabindex="0"
|
|
24
24
|
>
|
|
25
25
|
<h2 class="sy-accordion-heading">
|
|
26
|
-
<
|
|
26
|
+
<span class="
|
|
27
27
|
sy-accordion-title
|
|
28
28
|
text-primary
|
|
29
29
|
">
|
|
30
30
|
<span class="sy-accordion-icon">
|
|
31
|
-
<
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
<sy-icon-stub
|
|
32
|
+
autodetectbutton="false"
|
|
33
|
+
decorative="true"
|
|
34
34
|
icon="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"
|
|
35
|
-
|
|
36
|
-
start="false"
|
|
37
|
-
tag="i"
|
|
38
|
-
></v-icon-stub>
|
|
35
|
+
></sy-icon-stub>
|
|
39
36
|
</span>
|
|
40
37
|
<span>
|
|
41
38
|
Section 1
|
|
42
39
|
</span>
|
|
43
|
-
</
|
|
40
|
+
</span>
|
|
41
|
+
<!-- v-if -->
|
|
44
42
|
</h2>
|
|
45
43
|
</div>
|
|
46
44
|
<div
|
|
@@ -71,24 +69,22 @@ exports[`Accordion > renders correctly 1`] = `
|
|
|
71
69
|
tabindex="0"
|
|
72
70
|
>
|
|
73
71
|
<h2 class="sy-accordion-heading">
|
|
74
|
-
<
|
|
72
|
+
<span class="
|
|
75
73
|
sy-accordion-title
|
|
76
74
|
text-primary
|
|
77
75
|
">
|
|
78
76
|
<span class="sy-accordion-icon">
|
|
79
|
-
<
|
|
80
|
-
|
|
81
|
-
|
|
77
|
+
<sy-icon-stub
|
|
78
|
+
autodetectbutton="false"
|
|
79
|
+
decorative="true"
|
|
82
80
|
icon="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"
|
|
83
|
-
|
|
84
|
-
start="false"
|
|
85
|
-
tag="i"
|
|
86
|
-
></v-icon-stub>
|
|
81
|
+
></sy-icon-stub>
|
|
87
82
|
</span>
|
|
88
83
|
<span>
|
|
89
84
|
Section 2
|
|
90
85
|
</span>
|
|
91
|
-
</
|
|
86
|
+
</span>
|
|
87
|
+
<!-- v-if -->
|
|
92
88
|
</h2>
|
|
93
89
|
</div>
|
|
94
90
|
<div
|
|
@@ -119,24 +115,22 @@ exports[`Accordion > renders correctly 1`] = `
|
|
|
119
115
|
tabindex="0"
|
|
120
116
|
>
|
|
121
117
|
<h2 class="sy-accordion-heading">
|
|
122
|
-
<
|
|
118
|
+
<span class="
|
|
123
119
|
sy-accordion-title
|
|
124
120
|
text-primary
|
|
125
121
|
">
|
|
126
122
|
<span class="sy-accordion-icon">
|
|
127
|
-
<
|
|
128
|
-
|
|
129
|
-
|
|
123
|
+
<sy-icon-stub
|
|
124
|
+
autodetectbutton="false"
|
|
125
|
+
decorative="true"
|
|
130
126
|
icon="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"
|
|
131
|
-
|
|
132
|
-
start="false"
|
|
133
|
-
tag="i"
|
|
134
|
-
></v-icon-stub>
|
|
127
|
+
></sy-icon-stub>
|
|
135
128
|
</span>
|
|
136
129
|
<span>
|
|
137
130
|
Section 3
|
|
138
131
|
</span>
|
|
139
|
-
</
|
|
132
|
+
</span>
|
|
133
|
+
<!-- v-if -->
|
|
140
134
|
</h2>
|
|
141
135
|
</div>
|
|
142
136
|
<div
|
|
@@ -148,12 +142,14 @@ exports[`Accordion > renders correctly 1`] = `
|
|
|
148
142
|
>
|
|
149
143
|
<div class="sy-accordion-content-inner">
|
|
150
144
|
<div class="sy-accordion-content-item">
|
|
151
|
-
<
|
|
145
|
+
<p class="sy-accordion-content-text">
|
|
152
146
|
<strong>
|
|
153
147
|
Sous-titre de la section 3
|
|
154
148
|
</strong>
|
|
155
|
-
|
|
156
|
-
|
|
149
|
+
</p>
|
|
150
|
+
<p class="sy-accordion-content-text">
|
|
151
|
+
Contenu détaillé de la section 3
|
|
152
|
+
</p>
|
|
157
153
|
</div>
|
|
158
154
|
</div>
|
|
159
155
|
</div>
|
|
@@ -83,7 +83,7 @@ describe('Accordion', () => {
|
|
|
83
83
|
it('renders string content correctly', () => {
|
|
84
84
|
const wrapper = mount(Accordion, {
|
|
85
85
|
propsData: {
|
|
86
|
-
items: [defaultItems[0]],
|
|
86
|
+
items: [defaultItems[0]!],
|
|
87
87
|
headingLevel: 2,
|
|
88
88
|
},
|
|
89
89
|
})
|
|
@@ -92,13 +92,13 @@ describe('Accordion', () => {
|
|
|
92
92
|
button.trigger('click')
|
|
93
93
|
|
|
94
94
|
const content = wrapper.find('.sy-accordion-content-inner')
|
|
95
|
-
expect(content.text()).toContain(defaultItems[0]
|
|
95
|
+
expect(content.text()).toContain(defaultItems[0]!.content)
|
|
96
96
|
})
|
|
97
97
|
|
|
98
98
|
it('renders object content correctly', async () => {
|
|
99
99
|
const wrapper = mount(Accordion, {
|
|
100
100
|
propsData: {
|
|
101
|
-
items: [defaultItems[2]],
|
|
101
|
+
items: [defaultItems[2]!],
|
|
102
102
|
headingLevel: 2,
|
|
103
103
|
},
|
|
104
104
|
})
|
|
@@ -106,10 +106,10 @@ describe('Accordion', () => {
|
|
|
106
106
|
const button = wrapper.find('.sy-accordion-button')
|
|
107
107
|
await button.trigger('click')
|
|
108
108
|
|
|
109
|
-
const
|
|
110
|
-
const
|
|
111
|
-
expect(
|
|
112
|
-
expect(
|
|
109
|
+
const objectContent = defaultItems[2]!.content as { title: string, content: string }
|
|
110
|
+
const content = wrapper.find('.sy-accordion-content-inner')
|
|
111
|
+
expect(content.text()).toContain(objectContent.title)
|
|
112
|
+
expect(content.text()).toContain(objectContent.content)
|
|
113
113
|
})
|
|
114
114
|
|
|
115
115
|
it('has correct accessibility attributes', () => {
|
|
@@ -263,26 +263,27 @@ describe('Accordion', () => {
|
|
|
263
263
|
})
|
|
264
264
|
|
|
265
265
|
// Ouvrir le premier accordéon (contenu string)
|
|
266
|
-
const firstButton = wrapper.findAll('.sy-accordion-button')[0]
|
|
266
|
+
const firstButton = wrapper.findAll('.sy-accordion-button')[0]!
|
|
267
267
|
await firstButton.trigger('click')
|
|
268
268
|
|
|
269
269
|
// Vérifier que le contenu string est rendu dans un élément p
|
|
270
|
-
const firstContent = wrapper.findAll('.sy-accordion-content-inner')[0]
|
|
270
|
+
const firstContent = wrapper.findAll('.sy-accordion-content-inner')[0]!
|
|
271
271
|
const paragraph = firstContent.find('p.sy-accordion-content-text')
|
|
272
272
|
expect(paragraph.exists()).toBe(true)
|
|
273
273
|
expect(paragraph.text()).toBe('Contenu de la section 1')
|
|
274
274
|
|
|
275
275
|
// Ouvrir le deuxième accordéon (contenu objet)
|
|
276
|
-
const secondButton = wrapper.findAll('.sy-accordion-button')[1]
|
|
276
|
+
const secondButton = wrapper.findAll('.sy-accordion-button')[1]!
|
|
277
277
|
await secondButton.trigger('click')
|
|
278
278
|
|
|
279
279
|
// Vérifier que le contenu objet est rendu avec la structure appropriée
|
|
280
|
-
const secondContent = wrapper.findAll('.sy-accordion-content-inner')[1]
|
|
281
|
-
const
|
|
282
|
-
expect(
|
|
283
|
-
expect(
|
|
284
|
-
expect(
|
|
285
|
-
|
|
280
|
+
const secondContent = wrapper.findAll('.sy-accordion-content-inner')[1]!
|
|
281
|
+
const paragraphs = secondContent.findAll('p.sy-accordion-content-text')
|
|
282
|
+
expect(paragraphs.length).toBe(2)
|
|
283
|
+
expect(paragraphs[0]!.text()).toContain('Sous-titre')
|
|
284
|
+
expect(paragraphs[1]!.text()).toContain('Contenu détaillé')
|
|
285
|
+
// Le titre est affiché en gras
|
|
286
|
+
expect(paragraphs[0]!.find('strong').exists()).toBe(true)
|
|
286
287
|
})
|
|
287
288
|
|
|
288
289
|
it('applies custom colors from options', async () => {
|
|
@@ -372,11 +373,11 @@ describe('Accordion', () => {
|
|
|
372
373
|
expect(buttons.length).toBeGreaterThan(1) // S'assurer qu'il y a plusieurs boutons
|
|
373
374
|
|
|
374
375
|
// Ouvrir le premier accordéon
|
|
375
|
-
await buttons[0]
|
|
376
|
+
await buttons[0]!.trigger('click')
|
|
376
377
|
expect(wrapper.findAll('.sy-accordion-content--open').length).toBe(1)
|
|
377
378
|
|
|
378
379
|
// Ouvrir le deuxième accordéon
|
|
379
|
-
await buttons[1]
|
|
380
|
+
await buttons[1]!.trigger('click')
|
|
380
381
|
expect(wrapper.findAll('.sy-accordion-content--open').length).toBe(2)
|
|
381
382
|
|
|
382
383
|
// Vérifier que les deux accordéons sont ouverts
|
|
@@ -396,18 +397,18 @@ describe('Accordion', () => {
|
|
|
396
397
|
expect(buttons.length).toBeGreaterThan(1) // S'assurer qu'il y a plusieurs boutons
|
|
397
398
|
|
|
398
399
|
// Ouvrir le premier accordéon - il devrait avoir le focus
|
|
399
|
-
await buttons[0]
|
|
400
|
-
expect(buttons[0]
|
|
401
|
-
expect(buttons[1]
|
|
400
|
+
await buttons[0]!.trigger('click')
|
|
401
|
+
expect(buttons[0]!.classes()).toContain('sy-accordion-button--focused')
|
|
402
|
+
expect(buttons[1]!.classes()).not.toContain('sy-accordion-button--focused')
|
|
402
403
|
|
|
403
404
|
// Ouvrir le deuxième accordéon - le focus devrait être transféré
|
|
404
|
-
await buttons[1]
|
|
405
|
-
expect(buttons[0]
|
|
406
|
-
expect(buttons[1]
|
|
405
|
+
await buttons[1]!.trigger('click')
|
|
406
|
+
expect(buttons[0]!.classes()).not.toContain('sy-accordion-button--focused')
|
|
407
|
+
expect(buttons[1]!.classes()).toContain('sy-accordion-button--focused')
|
|
407
408
|
|
|
408
409
|
// Fermer le deuxième accordéon - le focus devrait être supprimé
|
|
409
|
-
await buttons[1]
|
|
410
|
-
expect(buttons[1]
|
|
410
|
+
await buttons[1]!.trigger('click')
|
|
411
|
+
expect(buttons[1]!.classes()).not.toContain('sy-accordion-button--focused')
|
|
411
412
|
})
|
|
412
413
|
|
|
413
414
|
it('removes event listener on component unmount', async () => {
|
|
@@ -4,12 +4,35 @@ import AmeliproPatientLogged from './AmeliproPatientLogged.vue'
|
|
|
4
4
|
import { ref, watch } from 'vue'
|
|
5
5
|
|
|
6
6
|
const meta = {
|
|
7
|
+
title: 'Composants/Amelipro/IDPA/AmeliproPatientLogged',
|
|
8
|
+
component: AmeliproPatientLogged,
|
|
9
|
+
parameters: {
|
|
10
|
+
controls: {
|
|
11
|
+
exclude: [
|
|
12
|
+
'onClick:info',
|
|
13
|
+
'onClick:copy',
|
|
14
|
+
'onClick:pdf',
|
|
15
|
+
'onClick:postal-address',
|
|
16
|
+
'onClick:prevention',
|
|
17
|
+
'onClick:fund-dialog',
|
|
18
|
+
'onClick:doctor-dialog',
|
|
19
|
+
'onClick:beneficiary-change',
|
|
20
|
+
'onClick:patient-change',
|
|
21
|
+
],
|
|
22
|
+
},
|
|
23
|
+
},
|
|
7
24
|
argTypes: {
|
|
8
|
-
'
|
|
25
|
+
'btnPostalAddress': { description: 'Affiche le bouton adresse postale' },
|
|
26
|
+
'btnPrevention': { description: 'Affiche le bouton prévention' },
|
|
9
27
|
'isRestrictedData': { description: 'affiche la liste des bénéficiaires sans séléction possible' },
|
|
10
|
-
'click': { description: 'Evénement émis au click sur le bouton changer de patient' },
|
|
11
28
|
'click:info': { description: 'Evénement émis au click sur le bouton informations' },
|
|
12
|
-
'click:
|
|
29
|
+
'click:copy': { description: 'Evénement émis au click sur le bouton copier le texte' },
|
|
30
|
+
'click:postal-address': { description: 'Evénement émis au click sur le bouton adresse postale' },
|
|
31
|
+
'click:prevention': { description: 'Evénement émis au click sur le bouton prévention' },
|
|
32
|
+
'click:fund-dialog': { description: 'Evénement émis au click sur le bouton caisse' },
|
|
33
|
+
'click:doctor-dialog': { description: 'Evénement émis au click sur le bouton MT' },
|
|
34
|
+
'click:beneficiary-change': { description: 'Evénement émis au changement de bénéficiaire' },
|
|
35
|
+
'click:patient-change': { description: 'Evénement émis au click sur le bouton changement de patient' },
|
|
13
36
|
'click:pdf': { description: 'Evénement émis au click sur le bouton pdf' },
|
|
14
37
|
'default': { description: 'Espace libre avant le bouton informations supplémentaire au cas où il y aurait besoin de lignes supplémentaires' },
|
|
15
38
|
'doctor': { description: 'Slot permettant de remplacer le contenu de la ligne médecin traitant au besoin' },
|
|
@@ -38,7 +61,7 @@ const meta = {
|
|
|
38
61
|
firstName: string
|
|
39
62
|
fund: string
|
|
40
63
|
fundDialogTitle: string
|
|
41
|
-
|
|
64
|
+
postalAddress: string
|
|
42
65
|
mtm: string
|
|
43
66
|
name: string
|
|
44
67
|
nir: string
|
|
@@ -87,8 +110,6 @@ const meta = {
|
|
|
87
110
|
'uniqueId': { description: 'Identifiant unique du composant' },
|
|
88
111
|
'update:model-value': { description: 'Evénement émis à la mise à jour du v-model' },
|
|
89
112
|
},
|
|
90
|
-
component: AmeliproPatientLogged,
|
|
91
|
-
title: 'Composants/Amelipro/IDPA/AmeliproPatientLogged',
|
|
92
113
|
} as Meta<typeof AmeliproPatientLogged>
|
|
93
114
|
|
|
94
115
|
export default meta
|
|
@@ -97,7 +118,8 @@ type Story = StoryObj<typeof AmeliproPatientLogged>
|
|
|
97
118
|
|
|
98
119
|
export const Default: Story = {
|
|
99
120
|
args: {
|
|
100
|
-
'
|
|
121
|
+
'btnPostalAddress': true,
|
|
122
|
+
'btnPrevention': true,
|
|
101
123
|
'doctorTooltipRed': true,
|
|
102
124
|
'isRestrictedData': false,
|
|
103
125
|
'patientInfos': {
|
|
@@ -133,9 +155,14 @@ export const Default: Story = {
|
|
|
133
155
|
],
|
|
134
156
|
},
|
|
135
157
|
'uniqueId': 'test-id',
|
|
136
|
-
'onClick': fn(),
|
|
137
158
|
'onClick:info': fn(),
|
|
138
|
-
'onClick:
|
|
159
|
+
'onClick:copy': fn(),
|
|
160
|
+
'onClick:postal-address': fn(),
|
|
161
|
+
'onClick:prevention': fn(),
|
|
162
|
+
'onClick:fund-dialog': fn(),
|
|
163
|
+
'onClick:doctor-dialog': fn(),
|
|
164
|
+
'onClick:beneficiary-change': fn(),
|
|
165
|
+
'onClick:patient-change': fn(),
|
|
139
166
|
'onClick:pdf': fn(),
|
|
140
167
|
},
|
|
141
168
|
parameters: {
|
|
@@ -144,7 +171,7 @@ export const Default: Story = {
|
|
|
144
171
|
name: 'Template',
|
|
145
172
|
code: `<AmeliproPatientLogged
|
|
146
173
|
v-model="myModel"
|
|
147
|
-
:
|
|
174
|
+
:postal-address-info="true"
|
|
148
175
|
:doctor-tooltip-red="true"
|
|
149
176
|
:patient-infos="{
|
|
150
177
|
ame: 'oui',
|
|
@@ -222,31 +249,32 @@ export const Default: Story = {
|
|
|
222
249
|
})
|
|
223
250
|
return { args, model }
|
|
224
251
|
},
|
|
225
|
-
template:
|
|
226
|
-
|
|
227
|
-
v-model="model"
|
|
228
|
-
@click="args['onClick']"
|
|
229
|
-
@click:infos="args['onClick:infos']"
|
|
230
|
-
@click:more-infos="args['onClick:more-infos']"
|
|
231
|
-
@click:pdf="args['onClick:pdf']"
|
|
232
|
-
>
|
|
233
|
-
<template #doctorDialog>
|
|
234
|
-
<p>
|
|
235
|
-
Contenu du slot "doctorDialog"
|
|
236
|
-
</p>
|
|
237
|
-
</template>
|
|
252
|
+
template: `
|
|
253
|
+
<div style="display: flex; justify-content: center;">
|
|
238
254
|
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
255
|
+
<AmeliproPatientLogged
|
|
256
|
+
v-bind="args"
|
|
257
|
+
v-model="model"
|
|
258
|
+
style="width: 350px !important;"
|
|
259
|
+
>
|
|
260
|
+
<template #doctorDialog>
|
|
261
|
+
<p>
|
|
262
|
+
Contenu du slot "doctorDialog"
|
|
263
|
+
</p>
|
|
264
|
+
</template>
|
|
244
265
|
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
266
|
+
<template #doctorDialogFooter>
|
|
267
|
+
<p>
|
|
268
|
+
Contenu du slot "doctorDialogFooter"
|
|
269
|
+
</p>
|
|
270
|
+
</template>
|
|
271
|
+
|
|
272
|
+
<template #fundDialog>
|
|
273
|
+
<p>
|
|
274
|
+
Contenu du slot "fundDialog"
|
|
275
|
+
</p>
|
|
276
|
+
</template>
|
|
277
|
+
</AmeliproPatientLogged>
|
|
278
|
+
</div>`,
|
|
251
279
|
}),
|
|
252
280
|
}
|