@cnamts/synapse 1.0.23 → 1.0.24
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/AutocompleteFilter-BWLR3U7W.js +114 -0
- package/dist/AutocompleteFilter-D9jzRzAL.cjs +1 -0
- package/dist/{DateFilter-Dc-gSGwk.js → DateFilter-BpwFexzi.js} +1 -1
- package/dist/DateFilter-DTUl8hb1.cjs +1 -0
- package/dist/{NumberFilter-vP38Wp6j.js → NumberFilter-Bz_NTdX9.js} +3 -3
- package/dist/NumberFilter-MAEojdk0.cjs +1 -0
- package/dist/PeriodFilter-CC4WgIhl.cjs +1 -0
- package/dist/{PeriodFilter-Ba1uYUnT.js → PeriodFilter-DX_wy9g-.js} +1 -1
- package/dist/SelectFilter-BR3fvl-a.cjs +1 -0
- package/dist/SelectFilter-xqiPtPgX.js +135 -0
- package/dist/{TextFilter-B84dpnoq.js → TextFilter-BBl3JFqK.js} +7 -7
- package/dist/TextFilter-CCfYFl5F.cjs +1 -0
- package/dist/apLightTheme-CFSRrjv2.cjs +1 -0
- package/dist/apLightTheme-D1P4jcD0.js +1231 -0
- package/dist/components/Amelipro/AmeliproAutoCompleteField/AmeliproAutoCompleteField.d.ts +7022 -9616
- package/dist/components/Amelipro/AmeliproCarousel/AmeliproCarousel.d.ts +2 -2
- package/dist/components/Amelipro/AmeliproIconBtn/AmeliproIconBtn.d.ts +2 -2
- package/dist/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressCityRow/AmeliproPostalAddressCityRow.d.ts +40 -40
- package/dist/components/Amelipro/AmeliproPostalAddressField/AmeliproPostalAddressField.d.ts +60 -60
- package/dist/components/Amelipro/AmeliproSelect/AmeliproSelect.d.ts +7168 -9762
- package/dist/components/Amelipro/AmeliproStepper/AmeliproStepper.d.ts +2 -2
- package/dist/components/Amelipro/AmeliproTabs/AmeliproTabs.d.ts +7501 -10095
- package/dist/components/Amelipro/AmeliproTextArea/AmeliproTextArea.d.ts +21 -21
- package/dist/components/Amelipro/AmeliproTextField/AmeliproTextField.d.ts +41 -41
- package/dist/components/Amelipro/StructureMenu/StructureTabs/StructureTabs.d.ts +2 -2
- package/dist/components/CookiesSelection/CookiesInformation/CookiesInformation.d.ts +20 -498
- package/dist/components/Customs/Selects/SyAutocomplete/SyAutocomplete.d.ts +108 -146
- package/dist/components/Customs/Selects/SyInputSelect/SyInputSelect.d.ts +5 -5
- package/dist/components/Customs/Selects/SySelect/SySelect.d.ts +12 -16
- package/dist/components/Customs/SyCheckBoxGroup/SyCheckBoxGroup.d.ts +8 -8
- package/dist/components/Customs/SyCheckbox/SyCheckbox.d.ts +28 -506
- package/dist/components/Customs/SyRadioGroup/SyRadioGroup.d.ts +28 -506
- package/dist/components/Customs/SyTextField/SyTextField.d.ts +65 -85
- package/dist/components/DatePicker/CalendarMode/DatePicker.d.ts +627 -771
- package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +315 -402
- package/dist/components/DatePicker/DateTextInput/DateTextInput.d.ts +112 -155
- package/dist/components/DatePicker/composables/index.d.ts +1 -0
- package/dist/components/DatePicker/composables/useDatePickerFocusTrap.d.ts +11 -0
- package/dist/components/DatePicker/composables/useDateTextField.d.ts +4 -4
- package/dist/components/DatePicker/composables/useDateValidation.d.ts +3 -3
- package/dist/components/DatePicker/composables/useInputBlurHandler.d.ts +2 -2
- package/dist/components/DatePicker/composables/useManualDateValidation.d.ts +2 -2
- package/dist/components/HeaderNavigationBar/HeaderNavigationBar.d.ts +4 -4
- package/dist/components/HeaderToolbar/HeaderToolbar.d.ts +20 -28
- package/dist/components/LunarCalendar/useLunarCalendarValidation.d.ts +3 -3
- package/dist/components/MonthPicker/MonthPicker.d.ts +86 -122
- package/dist/components/MonthPicker/MonthPickerText/MonthPickerInput.d.ts +85 -121
- package/dist/components/NirField/NirField.d.ts +206 -270
- package/dist/components/NirField/locales.d.ts +10 -10
- package/dist/components/NirField/useNirValidation.d.ts +64 -0
- package/dist/components/PasswordField/PasswordField.d.ts +8 -9
- package/dist/components/PeriodField/PeriodField.d.ts +1352 -1640
- package/dist/components/PhoneField/PhoneField.d.ts +88 -124
- package/dist/components/RangeField/RangeSlider/RangeSlider.d.ts +12 -12
- package/dist/components/SyTextArea/SyTextArea.d.ts +34 -14
- package/dist/components/SyTextArea/useDefaultValidationRules.d.ts +11 -0
- package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +9 -6
- package/dist/components/Tables/SyTable/SyTable.d.ts +9 -6
- package/dist/components/Tables/common/SyTableFilter.d.ts +2 -3
- package/dist/components/Tables/common/SyTablePagination.d.ts +17 -19
- package/dist/components/Tables/common/filters/AutocompleteFilter.d.ts +120 -0
- package/dist/components/Tables/common/filters/locales.d.ts +0 -1
- package/dist/components/Tables/common/types.d.ts +19 -3
- package/dist/components/Tables/common/useClickableTableRow.d.ts +17 -0
- package/dist/components/Tables/common/usePagination.d.ts +3 -1
- package/dist/components/Tables/common/usePinnedColumns.d.ts +31 -0
- package/dist/components/Tables/common/useTableHeaders.d.ts +2 -0
- package/dist/components/Tables/common/useTableRowCheckboxAccessibility.d.ts +5 -0
- package/dist/components/UploadWorkflow/UploadWorkflow.d.ts +6 -6
- package/dist/composables/date/useDatePickerAccessibility.d.ts +1 -1
- package/dist/composables/rules/useFieldValidation.d.ts +4 -4
- package/dist/composables/unifyValidation/useCustomValidation.d.ts +8 -0
- package/dist/composables/unifyValidation/useValidation.d.ts +102 -0
- package/dist/composables/unifyValidation/useVuetifyValidation.d.ts +18 -0
- package/dist/composables/useFormFieldErrorHandling.d.ts +2 -2
- package/dist/composables/validation/useFormValidation.d.ts +11 -2
- package/dist/composables/validation/useValidation.d.ts +15 -9
- package/dist/design-system-v3.d.ts +2 -0
- package/dist/design-system-v3.js +186 -187
- package/dist/design-system-v3.umd.cjs +1 -1066
- package/dist/{main-aLKwdMi1.js → main-BtTqyn4z.js} +16434 -15672
- package/dist/main-C1e3eoxd.cjs +1067 -0
- package/dist/main.d.ts +0 -1
- package/dist/synapse.css +1 -0
- package/dist/tooth-11-D3sLWv2n.cjs +1 -0
- package/dist/tooth-12-CXrLuH03.cjs +1 -0
- package/dist/tooth-13-BSfo5fpT.cjs +1 -0
- package/dist/tooth-14-DMzulx0h.cjs +1 -0
- package/dist/tooth-15-BKRFVi-9.cjs +1 -0
- package/dist/tooth-16-CpuxAbuM.cjs +1 -0
- package/dist/tooth-17-BPoahUdg.cjs +1 -0
- package/dist/tooth-18-DhHJz8sy.cjs +1 -0
- package/dist/tooth-21-Dgd5hn_X.cjs +1 -0
- package/dist/tooth-22-C2Tn19sB.cjs +1 -0
- package/dist/tooth-23-C9uaaSGb.cjs +1 -0
- package/dist/tooth-24-BrK9UGpf.cjs +1 -0
- package/dist/tooth-25-CE_EfGNp.cjs +1 -0
- package/dist/tooth-26-Ctv4i9Fy.cjs +1 -0
- package/dist/tooth-27-C5J7JkWM.cjs +1 -0
- package/dist/tooth-28-Z9oWqjo0.cjs +1 -0
- package/dist/tooth-31-BrYqmkTi.cjs +1 -0
- package/dist/tooth-32-BNNR0oCZ.cjs +1 -0
- package/dist/tooth-33-DuxvqO2J.cjs +1 -0
- package/dist/tooth-34-BCSCXMB6.cjs +1 -0
- package/dist/tooth-35-BLUXkX88.cjs +1 -0
- package/dist/tooth-36-IrKHYqlA.cjs +1 -0
- package/dist/tooth-37-BYqpdMwo.cjs +1 -0
- package/dist/tooth-38-B_eNXXdu.cjs +1 -0
- package/dist/tooth-41-Ddva4Ot8.cjs +1 -0
- package/dist/tooth-42-szcDqlM0.cjs +1 -0
- package/dist/tooth-43-B3ka6rQm.cjs +1 -0
- package/dist/tooth-44-CazyQucj.cjs +1 -0
- package/dist/tooth-45-B4HQtc8n.cjs +1 -0
- package/dist/tooth-46-BPM40gbG.cjs +1 -0
- package/dist/tooth-47-Dvr20dlh.cjs +1 -0
- package/dist/tooth-48-Bd8ljGsF.cjs +1 -0
- package/dist/tooth-51-OBpwCOF3.cjs +1 -0
- package/dist/tooth-52-aKxyHcmq.cjs +1 -0
- package/dist/tooth-53-vCwJjTOc.cjs +1 -0
- package/dist/tooth-54-DsWu2iFy.cjs +1 -0
- package/dist/tooth-55-BxC1X2Dn.cjs +1 -0
- package/dist/tooth-61-BbLvxMQi.cjs +1 -0
- package/dist/tooth-62-CmTkWczP.cjs +1 -0
- package/dist/tooth-63-DI7l_2qI.cjs +1 -0
- package/dist/tooth-64-B21sOsJh.cjs +1 -0
- package/dist/tooth-65-D2ZC2VEr.cjs +1 -0
- package/dist/tooth-71-D473PPO5.cjs +1 -0
- package/dist/tooth-72-Drh1wnNu.cjs +1 -0
- package/dist/tooth-73-DzlwYI23.cjs +1 -0
- package/dist/tooth-74-8aGvcZPg.cjs +1 -0
- package/dist/tooth-75-BFK7At_r.cjs +1 -0
- package/dist/tooth-81-BZmR-I0M.cjs +1 -0
- package/dist/tooth-82-euVfUUZV.cjs +1 -0
- package/dist/tooth-83-KV010j64.cjs +1 -0
- package/dist/tooth-84-BBg1RjhZ.cjs +1 -0
- package/dist/tooth-85-Cr-kc1wM.cjs +1 -0
- package/dist/vuetifyConfig.js +561 -0
- package/dist/vuetifyConfig.umd.cjs +1 -0
- package/package.json +10 -4
- package/src/assets/overrides/_btns.scss +0 -6
- package/src/assets/overrides/_icons.scss +9 -1
- package/src/assets/overrides/_typography.scss +0 -10
- package/src/components/Amelipro/AmeliproAutoCompleteField/__tests__/__snapshots__/AmeliproAutoCompleteField.spec.ts.snap +2 -2
- package/src/components/Amelipro/AmeliproHeader/AmeliproHeaderBar/AmeliproHeaderBrandSection/__tests__/__snapshots__/AmeliproHeaderBrandSection.spec.ts.snap +1 -1
- package/src/components/Amelipro/AmeliproTextArea/__tests__/__snapshots__/AmeliproTextArea.spec.ts.snap +2 -2
- package/src/components/Captcha/accessibilite/Accessibility.mdx +86 -8
- package/src/components/Captcha/tests/__snapshots__/Captcha.spec.ts.snap +12 -12
- package/src/components/ChipList/ChipList.stories.ts +0 -15
- package/src/components/ChipList/ChipList.vue +5 -1
- package/src/components/ChipList/accessibilite/Accessibility.mdx +83 -10
- package/src/components/ChipList/tests/ChipList.a11y.spec.ts +41 -0
- package/src/components/Customs/Selects/SelectBtnField/accessibilite/Accessibility.mdx +0 -9
- package/src/components/Customs/Selects/SyAutocomplete/SyAutocomplete.vue +22 -5
- package/src/components/Customs/Selects/SyAutocomplete/tests/SyAutocomplete.spec.ts +143 -0
- package/src/components/Customs/Selects/SyAutocomplete/utils/ariaManager.ts +14 -10
- package/src/components/Customs/Selects/SyInputSelect/SyInputSelect.stories.ts +4 -4
- package/src/components/Customs/Selects/SyInputSelect/SyInputSelect.vue +8 -9
- package/src/components/Customs/Selects/SyInputSelect/tests/SyInputSelect.spec.ts +10 -10
- package/src/components/Customs/Selects/SySelect/SySelect.vue +14 -11
- package/src/components/Customs/Selects/SySelect/tests/SySelect.spec.ts +54 -0
- package/src/components/Customs/SyCheckBoxGroup/SyCheckBoxGroup.vue +6 -9
- package/src/components/Customs/SyCheckbox/SyCheckbox.stories.ts +10 -16
- package/src/components/Customs/SyCheckbox/SyCheckbox.vue +16 -11
- package/src/components/Customs/SyCheckbox/accessibilite/Accessibility.mdx +35 -0
- package/src/components/Customs/SyCheckbox/tests/SyCheckbox.a11y.spec.ts +134 -2
- package/src/components/Customs/SyForm/SyForm.stories.ts +31 -5
- package/src/components/Customs/SyRadioGroup/SyRadioGroup.vue +4 -7
- package/src/components/Customs/SyTextField/SyTextField.mdx +1 -1
- package/src/components/Customs/SyTextField/SyTextField.stories.ts +29 -27
- package/src/components/Customs/SyTextField/SyTextField.vue +154 -157
- package/src/components/Customs/SyTextField/tests/SyTextField.a11y.spec.ts +32 -0
- package/src/components/Customs/SyTextField/tests/SyTextField.spec.ts +120 -11
- package/src/components/DatePicker/CalendarMode/DatePicker.stories.ts +62 -58
- package/src/components/DatePicker/CalendarMode/DatePicker.vue +330 -223
- package/src/components/DatePicker/CalendarMode/accessibilite/Accessibility.mdx +82 -0
- package/src/components/DatePicker/CalendarMode/tests/DatePicker.a11y.spec.ts +141 -0
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.stories.ts +2 -56
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +195 -159
- package/src/components/DatePicker/ComplexDatePicker/accessibilite/Accessibility.mdx +76 -0
- package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.spec.ts +10 -10
- package/src/components/DatePicker/DatePickerValidationExample/CalendarMode.stories.ts +8 -8
- package/src/components/DatePicker/DatePickerValidationExample/ComplexDatePicker.stories.ts +106 -8
- package/src/components/DatePicker/DatePickerValidationExample/DateTextInput.stories.ts +12 -11
- package/src/components/DatePicker/DatePickerValidationExample/MultiMode.stories.ts +12 -12
- package/src/components/DatePicker/DateTextInput/DateRange.stories.ts +0 -12
- package/src/components/DatePicker/DateTextInput/DateTextInput.vue +63 -57
- package/src/components/DatePicker/DateTextInput/NoCalendar.stories.ts +3 -0
- package/src/components/DatePicker/DateTextInput/accessibilite/Accessibility.mdx +66 -0
- package/src/components/DatePicker/DateTextInput/tests/DateTextInput.spec.ts +52 -1
- package/src/components/DatePicker/composables/index.ts +1 -0
- package/src/components/DatePicker/composables/tests/useCalendarKeyboardNavigation.spec.ts +109 -65
- package/src/components/DatePicker/composables/tests/useDatePickerFocusTrap.spec.ts +138 -0
- package/src/components/DatePicker/composables/tests/useDateValidation.spec.ts +74 -18
- package/src/components/DatePicker/composables/tests/useInputBlurHandler.spec.ts +39 -0
- package/src/components/DatePicker/composables/tests/useManualDateValidation.spec.ts +91 -0
- package/src/components/DatePicker/composables/useCalendarKeyboardNavigation.ts +442 -36
- package/src/components/DatePicker/composables/useDatePickerFocusTrap.ts +92 -0
- package/src/components/DatePicker/composables/useDateTextField.ts +7 -6
- package/src/components/DatePicker/composables/useDateValidation.ts +36 -35
- package/src/components/DatePicker/composables/useInputBlurHandler.ts +3 -3
- package/src/components/DatePicker/composables/useManualDateValidation.ts +6 -2
- package/src/components/DiacriticPicker/accessibilite/Accessibility.mdx +76 -8
- package/src/components/HeaderBar/HeaderBar.stories.ts +14 -2
- package/src/components/Logo/accessibilite/Accessibility.mdx +73 -11
- package/src/components/LogoBrandSection/accessibilite/Accessibility.mdx +85 -9
- package/src/components/LunarCalendar/tests/LunarCalendar.spec.ts +3 -1
- package/src/components/LunarCalendar/useLunarCalendarValidation.ts +4 -5
- package/src/components/MonthPicker/tests/MonthPicker.spec.ts +2 -1
- package/src/components/MonthPicker/tests/__snapshots__/MonthPicker.spec.ts.snap +7 -7
- package/src/components/NirField/NirField.stories.ts +4 -0
- package/src/components/NirField/NirField.vue +64 -260
- package/src/components/NirField/accessibilite/Accessibility.mdx +2 -2
- package/src/components/NirField/locales.ts +1 -1
- package/src/components/NirField/tests/NirField.spec.ts +6 -0
- package/src/components/NirField/useNirValidation.ts +271 -0
- package/src/components/PasswordField/PasswordField.stories.ts +4 -4
- package/src/components/PasswordField/PasswordField.vue +18 -24
- package/src/components/PasswordField/tests/PasswordField.spec.ts +6 -3
- package/src/components/PeriodField/PeriodField.stories.ts +4 -4
- package/src/components/PeriodField/PeriodField.vue +57 -57
- package/src/components/PeriodField/__tests__/PeriodField.async.spec.ts +32 -0
- package/src/components/PeriodField/accessibilite/Accessibility.mdx +68 -8
- package/src/components/PeriodField/tests/PeriodField.spec.ts +28 -2
- package/src/components/PhoneField/PhoneField.vue +5 -6
- package/src/components/PhoneField/tests/PhoneField.spec.ts +1 -0
- package/src/components/RangeField/RangeField.vue +6 -0
- package/src/components/SyTextArea/SyTextArea.stories.ts +138 -2
- package/src/components/SyTextArea/SyTextArea.vue +53 -23
- package/src/components/SyTextArea/tests/SyTextArea.spec.ts +126 -3
- package/src/components/SyTextArea/useDefaultValidationRules.ts +74 -0
- package/src/components/Tables/SyServerTable/SyServerTable.mdx +25 -0
- package/src/components/Tables/SyServerTable/SyServerTable.stories.ts +673 -1
- package/src/components/Tables/SyServerTable/SyServerTable.vue +148 -91
- package/src/components/Tables/SyServerTable/tests/SyServerTable.a11y.spec.ts +58 -0
- package/src/components/Tables/SyServerTable/tests/SyServerTable.spec.ts +122 -0
- package/src/components/Tables/SyTable/SyTable.mdx +25 -0
- package/src/components/Tables/SyTable/SyTable.stories.ts +452 -1
- package/src/components/Tables/SyTable/SyTable.vue +130 -56
- package/src/components/Tables/SyTable/tests/SyTable.a11y.spec.ts +57 -0
- package/src/components/Tables/SyTable/tests/SyTable.spec.ts +108 -0
- package/src/components/Tables/common/SyTableFilter.vue +22 -2
- package/src/components/Tables/common/TableHeader.vue +5 -1
- package/src/components/Tables/common/filters/AutocompleteFilter.vue +160 -0
- package/src/components/Tables/common/filters/NumberFilter.vue +1 -1
- package/src/components/Tables/common/filters/SelectFilter.vue +10 -11
- package/src/components/Tables/common/filters/TextFilter.vue +1 -1
- package/src/components/Tables/common/filters/getFilterComponent.ts +8 -1
- package/src/components/Tables/common/filters/locales.ts +0 -1
- package/src/components/Tables/common/filters/tests/AutocompleteFilter.a11y.spec.ts +110 -0
- package/src/components/Tables/common/filters/tests/AutocompleteFilter.spec.ts +203 -0
- package/src/components/Tables/common/filters/tests/SelectFilter.a11y.spec.ts +104 -0
- package/src/components/Tables/common/filters/tests/SelectFilter.spec.ts +152 -16
- package/src/components/Tables/common/tableFilterUtils.ts +3 -0
- package/src/components/Tables/common/tableStyles.scss +48 -4
- package/src/components/Tables/common/tests/filterByRange.spec.ts +2 -1
- package/src/components/Tables/common/types.ts +13 -4
- package/src/components/Tables/common/useClickableTableRow.ts +103 -0
- package/src/components/Tables/common/usePagination.ts +13 -0
- package/src/components/Tables/common/usePinnedColumns.ts +237 -0
- package/src/components/Tables/common/useTableHeaders.ts +3 -3
- package/src/components/Tables/common/useTableRowCheckboxAccessibility.ts +41 -0
- package/src/composables/date/tests/useDatePickerAccessibility.spec.ts +2 -6
- package/src/composables/date/useDatePickerAccessibility.ts +42 -207
- package/src/composables/rules/tests/useFieldValidation.spec.ts +120 -120
- package/src/composables/rules/useFieldValidation.ts +34 -17
- package/src/composables/unifyValidation/tests/useCustomValidation.spec.ts +601 -0
- package/src/composables/unifyValidation/tests/useValidation.spec.ts +2048 -0
- package/src/composables/unifyValidation/tests/useVuetifyValidation.spec.ts +184 -0
- package/src/composables/unifyValidation/useCustomValidation.ts +95 -0
- package/src/composables/unifyValidation/useValidation.ts +190 -0
- package/src/composables/unifyValidation/useVuetifyValidation.ts +54 -0
- package/src/composables/useFormFieldErrorHandling.ts +4 -7
- package/src/composables/validation/tests/useFormValidation.spec.ts +14 -0
- package/src/composables/validation/tests/useValidation.spec.ts +116 -21
- package/src/composables/validation/useFormValidation.ts +20 -13
- package/src/composables/validation/useValidatable.ts +8 -1
- package/src/composables/validation/useValidation.ts +135 -99
- package/src/composantsVuetify/Introduction.mdx +48 -0
- package/src/composantsVuetify/VBtn/VBtn.mdx +72 -0
- package/src/composantsVuetify/VBtn/v-btn.stories.ts +121 -0
- package/src/composantsVuetify/VTooltip/VTooltip.mdx +32 -0
- package/src/composantsVuetify/VTooltip/v-tooltip.stories.ts +95 -0
- package/src/designTokens/tokens/cnam/cnamSemantic.ts +2 -2
- package/src/main.ts +0 -2
- package/src/stories/Components/Components.stories.ts +74 -9
- package/src/stories/Demarrer/Accueil.stories.ts +3 -3
- package/src/stories/GuideDuDev/Amelipro.mdx +15 -0
- package/src/stories/GuideDuDev/Amelipro.stories.ts +209 -0
- package/src/stories/GuideDuDev/vuetifyOptions.mdx +3 -3
- package/dist/SelectFilter-BioGT6Nn.js +0 -136
- package/dist/style.css +0 -1
- package/src/components/DatePicker/Accessibilite.mdx +0 -14
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Meta, Canvas } from '@storybook/blocks'
|
|
2
|
+
import * as VBtnStories from './v-btn.stories'
|
|
3
|
+
|
|
4
|
+
<Meta title="Composants/Composants Vuetify/VBtn" />
|
|
5
|
+
|
|
6
|
+
<div className="header">
|
|
7
|
+
<h1>VBtn</h1>
|
|
8
|
+
Ce composant utilise directement le composant natif `v-btn` de Vuetify avec les couleurs du thème actif du design system.
|
|
9
|
+
Pour l'API complète du composant, consulter la [documentation Vuetify](https://vuetifyjs.com/en/api/v-btn/#props).
|
|
10
|
+
</div>
|
|
11
|
+
|
|
12
|
+
## Primary
|
|
13
|
+
|
|
14
|
+
<div style={{ display: 'flex', flexWrap: 'wrap', gap: '12px', alignItems: 'center', padding: '24px' }}>
|
|
15
|
+
<Canvas of={VBtnStories.PrimaryElevated} />
|
|
16
|
+
<Canvas of={VBtnStories.PrimaryOutlined} />
|
|
17
|
+
<Canvas of={VBtnStories.PrimaryTonal} />
|
|
18
|
+
<Canvas of={VBtnStories.PrimaryText} />
|
|
19
|
+
</div>
|
|
20
|
+
|
|
21
|
+
## Primary – Désactivé
|
|
22
|
+
|
|
23
|
+
<div style={{ display: 'flex', flexWrap: 'wrap', gap: '12px', alignItems: 'center', padding: '24px' }}>
|
|
24
|
+
<Canvas of={VBtnStories.PrimaryElevatedDisabled} />
|
|
25
|
+
<Canvas of={VBtnStories.PrimaryOutlinedDisabled} />
|
|
26
|
+
<Canvas of={VBtnStories.PrimaryTonalDisabled} />
|
|
27
|
+
<Canvas of={VBtnStories.PrimaryTextDisabled} />
|
|
28
|
+
</div>
|
|
29
|
+
|
|
30
|
+
## Secondary
|
|
31
|
+
|
|
32
|
+
<div style={{ display: 'flex', flexWrap: 'wrap', gap: '12px', alignItems: 'center', padding: '24px' }}>
|
|
33
|
+
<Canvas of={VBtnStories.SecondaryElevated} />
|
|
34
|
+
<Canvas of={VBtnStories.SecondaryOutlined} />
|
|
35
|
+
<Canvas of={VBtnStories.SecondaryTonal} />
|
|
36
|
+
<Canvas of={VBtnStories.SecondaryText} />
|
|
37
|
+
</div>
|
|
38
|
+
|
|
39
|
+
## Secondary – Désactivé
|
|
40
|
+
|
|
41
|
+
<div style={{ display: 'flex', flexWrap: 'wrap', gap: '12px', alignItems: 'center', padding: '24px' }}>
|
|
42
|
+
<Canvas of={VBtnStories.SecondaryElevatedDisabled} />
|
|
43
|
+
<Canvas of={VBtnStories.SecondaryOutlinedDisabled} />
|
|
44
|
+
<Canvas of={VBtnStories.SecondaryTonalDisabled} />
|
|
45
|
+
<Canvas of={VBtnStories.SecondaryTextDisabled} />
|
|
46
|
+
</div>
|
|
47
|
+
|
|
48
|
+
## Tertiary
|
|
49
|
+
|
|
50
|
+
<div style={{ display: 'flex', flexWrap: 'wrap', gap: '12px', alignItems: 'center', padding: '24px' }}>
|
|
51
|
+
<Canvas of={VBtnStories.TertiaryElevated} />
|
|
52
|
+
<Canvas of={VBtnStories.TertiaryOutlined} />
|
|
53
|
+
<Canvas of={VBtnStories.TertiaryTonal} />
|
|
54
|
+
<Canvas of={VBtnStories.TertiaryText} />
|
|
55
|
+
</div>
|
|
56
|
+
|
|
57
|
+
## Tertiary – Désactivé
|
|
58
|
+
|
|
59
|
+
<div style={{ display: 'flex', flexWrap: 'wrap', gap: '12px', alignItems: 'center', padding: '24px' }}>
|
|
60
|
+
<Canvas of={VBtnStories.TertiaryElevatedDisabled} />
|
|
61
|
+
<Canvas of={VBtnStories.TertiaryOutlinedDisabled} />
|
|
62
|
+
<Canvas of={VBtnStories.TertiaryTonalDisabled} />
|
|
63
|
+
<Canvas of={VBtnStories.TertiaryTextDisabled} />
|
|
64
|
+
</div>
|
|
65
|
+
|
|
66
|
+
## Variants disponibles
|
|
67
|
+
|
|
68
|
+
- `elevated` – Bouton avec ombre (défaut)
|
|
69
|
+
- `outlined` – Fond transparent avec bordure
|
|
70
|
+
- `tonal` – Fond teinté de la couleur
|
|
71
|
+
- `text` – Sans fond ni bordure
|
|
72
|
+
- `plain` – Sans fond ni bordure, opacité réduite
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/vue3'
|
|
2
|
+
|
|
3
|
+
const meta: Meta = {
|
|
4
|
+
title: 'Composants/Composants Vuetify/VBtn',
|
|
5
|
+
tags: ['!dev'],
|
|
6
|
+
render: args => ({
|
|
7
|
+
setup() {
|
|
8
|
+
return { args }
|
|
9
|
+
},
|
|
10
|
+
template: `
|
|
11
|
+
<v-btn :color="args.color" :variant="args.variant" :disabled="args.disabled">
|
|
12
|
+
{{ args.label }}
|
|
13
|
+
</v-btn>
|
|
14
|
+
`,
|
|
15
|
+
}),
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export default meta
|
|
19
|
+
type Story = StoryObj<typeof meta>
|
|
20
|
+
|
|
21
|
+
// --- Primary ---
|
|
22
|
+
export const PrimaryElevated: Story = {
|
|
23
|
+
args: { label: 'Button primary elevated', color: 'primary', variant: 'elevated', disabled: false },
|
|
24
|
+
parameters: { docs: { source: { code: `<v-btn color="primary" variant="elevated">Button</v-btn>` } } },
|
|
25
|
+
}
|
|
26
|
+
export const PrimaryOutlined: Story = {
|
|
27
|
+
args: { label: 'Button primary outlined', color: 'primary', variant: 'outlined', disabled: false },
|
|
28
|
+
parameters: { docs: { source: { code: `<v-btn color="primary" variant="outlined">Button</v-btn>` } } },
|
|
29
|
+
}
|
|
30
|
+
export const PrimaryTonal: Story = {
|
|
31
|
+
args: { label: 'Button primary tonal', color: 'primary', variant: 'tonal', disabled: false },
|
|
32
|
+
parameters: { docs: { source: { code: `<v-btn color="primary" variant="tonal">Button</v-btn>` } } },
|
|
33
|
+
}
|
|
34
|
+
export const PrimaryText: Story = {
|
|
35
|
+
args: { label: 'Button primary text', color: 'primary', variant: 'text', disabled: false },
|
|
36
|
+
parameters: { docs: { source: { code: `<v-btn color="primary" variant="text">Button</v-btn>` } } },
|
|
37
|
+
}
|
|
38
|
+
export const PrimaryElevatedDisabled: Story = {
|
|
39
|
+
args: { label: 'Button primary elevated disabled', color: 'primary', variant: 'elevated', disabled: true },
|
|
40
|
+
parameters: { docs: { source: { code: `<v-btn color="primary" variant="elevated" disabled>Button</v-btn>` } } },
|
|
41
|
+
}
|
|
42
|
+
export const PrimaryOutlinedDisabled: Story = {
|
|
43
|
+
args: { label: 'Button primary outlined disabled', color: 'primary', variant: 'outlined', disabled: true },
|
|
44
|
+
parameters: { docs: { source: { code: `<v-btn color="primary" variant="outlined" disabled>Button</v-btn>` } } },
|
|
45
|
+
}
|
|
46
|
+
export const PrimaryTonalDisabled: Story = {
|
|
47
|
+
args: { label: 'Button primary tonal disabled', color: 'primary', variant: 'tonal', disabled: true },
|
|
48
|
+
parameters: { docs: { source: { code: `<v-btn color="primary" variant="tonal" disabled>Button</v-btn>` } } },
|
|
49
|
+
}
|
|
50
|
+
export const PrimaryTextDisabled: Story = {
|
|
51
|
+
args: { label: 'Button primary text disabled', color: 'primary', variant: 'text', disabled: true },
|
|
52
|
+
parameters: { docs: { source: { code: `<v-btn color="primary" variant="text" disabled>Button</v-btn>` } } },
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// --- Secondary ---
|
|
56
|
+
export const SecondaryElevated: Story = {
|
|
57
|
+
args: { label: 'Button secondary elevated', color: 'secondary', variant: 'elevated', disabled: false },
|
|
58
|
+
parameters: { docs: { source: { code: `<v-btn color="secondary" variant="elevated">Button</v-btn>` } } },
|
|
59
|
+
}
|
|
60
|
+
export const SecondaryOutlined: Story = {
|
|
61
|
+
args: { label: 'Button secondary outlined', color: 'secondary', variant: 'outlined', disabled: false },
|
|
62
|
+
parameters: { docs: { source: { code: `<v-btn color="secondary" variant="outlined">Button</v-btn>` } } },
|
|
63
|
+
}
|
|
64
|
+
export const SecondaryTonal: Story = {
|
|
65
|
+
args: { label: 'Button secondary tonal', color: 'secondary', variant: 'tonal', disabled: false },
|
|
66
|
+
parameters: { docs: { source: { code: `<v-btn color="secondary" variant="tonal">Button</v-btn>` } } },
|
|
67
|
+
}
|
|
68
|
+
export const SecondaryText: Story = {
|
|
69
|
+
args: { label: 'Button secondary text', color: 'secondary', variant: 'text', disabled: false },
|
|
70
|
+
parameters: { docs: { source: { code: `<v-btn color="secondary" variant="text">Button</v-btn>` } } },
|
|
71
|
+
}
|
|
72
|
+
export const SecondaryElevatedDisabled: Story = {
|
|
73
|
+
args: { label: 'Button secondary elevated disabled', color: 'secondary', variant: 'elevated', disabled: true },
|
|
74
|
+
parameters: { docs: { source: { code: `<v-btn color="secondary" variant="elevated" disabled>Button</v-btn>` } } },
|
|
75
|
+
}
|
|
76
|
+
export const SecondaryOutlinedDisabled: Story = {
|
|
77
|
+
args: { label: 'Button secondary outlined disabled', color: 'secondary', variant: 'outlined', disabled: true },
|
|
78
|
+
parameters: { docs: { source: { code: `<v-btn color="secondary" variant="outlined" disabled>Button</v-btn>` } } },
|
|
79
|
+
}
|
|
80
|
+
export const SecondaryTonalDisabled: Story = {
|
|
81
|
+
args: { label: 'Button secondary tonal disabled', color: 'secondary', variant: 'tonal', disabled: true },
|
|
82
|
+
parameters: { docs: { source: { code: `<v-btn color="secondary" variant="tonal" disabled>Button</v-btn>` } } },
|
|
83
|
+
}
|
|
84
|
+
export const SecondaryTextDisabled: Story = {
|
|
85
|
+
args: { label: 'Button secondary text disabled', color: 'secondary', variant: 'text', disabled: true },
|
|
86
|
+
parameters: { docs: { source: { code: `<v-btn color="secondary" variant="text" disabled>Button</v-btn>` } } },
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// --- Tertiary ---
|
|
90
|
+
export const TertiaryElevated: Story = {
|
|
91
|
+
args: { label: 'Button tertiary elevated', color: 'tertiary', variant: 'elevated', disabled: false },
|
|
92
|
+
parameters: { docs: { source: { code: `<v-btn color="tertiary" variant="elevated">Button</v-btn>` } } },
|
|
93
|
+
}
|
|
94
|
+
export const TertiaryOutlined: Story = {
|
|
95
|
+
args: { label: 'Button tertiary outlined', color: 'tertiary', variant: 'outlined', disabled: false },
|
|
96
|
+
parameters: { docs: { source: { code: `<v-btn color="tertiary" variant="outlined">Button</v-btn>` } } },
|
|
97
|
+
}
|
|
98
|
+
export const TertiaryTonal: Story = {
|
|
99
|
+
args: { label: 'Button tertiary tonal', color: 'tertiary', variant: 'tonal', disabled: false },
|
|
100
|
+
parameters: { docs: { source: { code: `<v-btn color="tertiary" variant="tonal">Button</v-btn>` } } },
|
|
101
|
+
}
|
|
102
|
+
export const TertiaryText: Story = {
|
|
103
|
+
args: { label: 'Button tertiary text', color: 'tertiary', variant: 'text', disabled: false },
|
|
104
|
+
parameters: { docs: { source: { code: `<v-btn color="tertiary" variant="text">Button</v-btn>` } } },
|
|
105
|
+
}
|
|
106
|
+
export const TertiaryElevatedDisabled: Story = {
|
|
107
|
+
args: { label: 'Button tertiary elevated disabled', color: 'tertiary', variant: 'elevated', disabled: true },
|
|
108
|
+
parameters: { docs: { source: { code: `<v-btn color="tertiary" variant="elevated" disabled>Button</v-btn>` } } },
|
|
109
|
+
}
|
|
110
|
+
export const TertiaryOutlinedDisabled: Story = {
|
|
111
|
+
args: { label: 'Button tertiary outlined disabled', color: 'tertiary', variant: 'outlined', disabled: true },
|
|
112
|
+
parameters: { docs: { source: { code: `<v-btn color="tertiary" variant="outlined" disabled>Button</v-btn>` } } },
|
|
113
|
+
}
|
|
114
|
+
export const TertiaryTonalDisabled: Story = {
|
|
115
|
+
args: { label: 'Button tertiary tonal disabled', color: 'tertiary', variant: 'tonal', disabled: true },
|
|
116
|
+
parameters: { docs: { source: { code: `<v-btn color="tertiary" variant="tonal" disabled>Button</v-btn>` } } },
|
|
117
|
+
}
|
|
118
|
+
export const TertiaryTextDisabled: Story = {
|
|
119
|
+
args: { label: 'Button tertiary text disabled', color: 'tertiary', variant: 'text', disabled: true },
|
|
120
|
+
parameters: { docs: { source: { code: `<v-btn color="tertiary" variant="text" disabled>Button</v-btn>` } } },
|
|
121
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Meta, Canvas } from '@storybook/blocks'
|
|
2
|
+
import * as VTooltipStories from './v-tooltip.stories'
|
|
3
|
+
|
|
4
|
+
<Meta title="Composants/Composants Vuetify/VTooltip" />
|
|
5
|
+
|
|
6
|
+
<div className="header">
|
|
7
|
+
<h1>VTooltip</h1>
|
|
8
|
+
Ce composant utilise directement le composant natif `v-tooltip` de Vuetify avec les couleurs du thème actif du design system.
|
|
9
|
+
Pour l'API complète du composant, consulter la [documentation Vuetify](https://vuetifyjs.com/en/api/v-tooltip/#props).
|
|
10
|
+
</div>
|
|
11
|
+
|
|
12
|
+
## Positions
|
|
13
|
+
|
|
14
|
+
<div style={{ display: 'flex', flexWrap: 'wrap', gap: '50px', alignItems: 'center', padding: '24px' }}>
|
|
15
|
+
<Canvas of={VTooltipStories.Top} />
|
|
16
|
+
<Canvas of={VTooltipStories.Bottom} />
|
|
17
|
+
<Canvas of={VTooltipStories.Left} />
|
|
18
|
+
<Canvas of={VTooltipStories.Right} />
|
|
19
|
+
</div>
|
|
20
|
+
|
|
21
|
+
## Désactivé
|
|
22
|
+
|
|
23
|
+
<div style={{ display: 'flex', flexWrap: 'wrap', gap: '24px', alignItems: 'center', padding: '24px' }}>
|
|
24
|
+
<Canvas of={VTooltipStories.Disabled} />
|
|
25
|
+
</div>
|
|
26
|
+
|
|
27
|
+
## Locations disponibles
|
|
28
|
+
|
|
29
|
+
- `top` – Tooltip au dessus de l'élément (défaut)
|
|
30
|
+
- `bottom` – Tooltip en dessous de l'élément
|
|
31
|
+
- `left` – Tooltip à gauche de l'élément
|
|
32
|
+
- `right` – Tooltip à droite de l'élément
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/vue3'
|
|
2
|
+
|
|
3
|
+
const meta: Meta = {
|
|
4
|
+
title: 'Composants/Composants Vuetify/VTooltip',
|
|
5
|
+
tags: ['!dev'],
|
|
6
|
+
render: args => ({
|
|
7
|
+
setup() {
|
|
8
|
+
return { args }
|
|
9
|
+
},
|
|
10
|
+
template: `
|
|
11
|
+
<v-tooltip :text="args.text" :location="args.location" :disabled="args.disabled">
|
|
12
|
+
<template v-slot:activator="{ props }">
|
|
13
|
+
<v-btn v-bind="props" color="primary">{{ args.activator }}</v-btn>
|
|
14
|
+
</template>
|
|
15
|
+
</v-tooltip>
|
|
16
|
+
`,
|
|
17
|
+
}),
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export default meta
|
|
21
|
+
type Story = StoryObj<typeof meta>
|
|
22
|
+
|
|
23
|
+
// --- Location ---
|
|
24
|
+
export const Top: Story = {
|
|
25
|
+
args: { text: 'Tooltip top', activator: 'Hover me', location: 'top', disabled: false },
|
|
26
|
+
parameters: {
|
|
27
|
+
docs: {
|
|
28
|
+
source: {
|
|
29
|
+
code: `<v-tooltip text="Tooltip top" location="top">
|
|
30
|
+
<template v-slot:activator="{ props }">
|
|
31
|
+
<v-btn v-bind="props" color="primary">Hover me</v-btn>
|
|
32
|
+
</template>
|
|
33
|
+
</v-tooltip>`,
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
}
|
|
38
|
+
export const Bottom: Story = {
|
|
39
|
+
args: { text: 'Tooltip bottom', activator: 'Hover me', location: 'bottom', disabled: false },
|
|
40
|
+
parameters: {
|
|
41
|
+
docs: {
|
|
42
|
+
source: {
|
|
43
|
+
code: `<v-tooltip text="Tooltip bottom" location="bottom">
|
|
44
|
+
<template v-slot:activator="{ props }">
|
|
45
|
+
<v-btn v-bind="props" color="primary">Hover me</v-btn>
|
|
46
|
+
</template>
|
|
47
|
+
</v-tooltip>`,
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
}
|
|
52
|
+
export const Left: Story = {
|
|
53
|
+
args: { text: 'Tooltip left', activator: 'Hover me', location: 'left', disabled: false },
|
|
54
|
+
parameters: {
|
|
55
|
+
docs: {
|
|
56
|
+
source: {
|
|
57
|
+
code: `<v-tooltip text="Tooltip left" location="left">
|
|
58
|
+
<template v-slot:activator="{ props }">
|
|
59
|
+
<v-btn v-bind="props" color="primary">Hover me</v-btn>
|
|
60
|
+
</template>
|
|
61
|
+
</v-tooltip>`,
|
|
62
|
+
},
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
}
|
|
66
|
+
export const Right: Story = {
|
|
67
|
+
args: { text: 'Tooltip right', activator: 'Hover me', location: 'right', disabled: false },
|
|
68
|
+
parameters: {
|
|
69
|
+
docs: {
|
|
70
|
+
source: {
|
|
71
|
+
code: `<v-tooltip text="Tooltip right" location="right">
|
|
72
|
+
<template v-slot:activator="{ props }">
|
|
73
|
+
<v-btn v-bind="props" color="primary">Hover me</v-btn>
|
|
74
|
+
</template>
|
|
75
|
+
</v-tooltip>`,
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
// --- Disabled ---
|
|
82
|
+
export const Disabled: Story = {
|
|
83
|
+
args: { text: 'Tooltip disabled', activator: 'Hover me', location: 'top', disabled: true },
|
|
84
|
+
parameters: {
|
|
85
|
+
docs: {
|
|
86
|
+
source: {
|
|
87
|
+
code: `<v-tooltip text="Tooltip disabled" location="top" disabled>
|
|
88
|
+
<template v-slot:activator="{ props }">
|
|
89
|
+
<v-btn v-bind="props" color="primary">Hover me</v-btn>
|
|
90
|
+
</template>
|
|
91
|
+
</v-tooltip>`,
|
|
92
|
+
},
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
}
|
|
@@ -41,7 +41,7 @@ export const cnamSemanticTokens = {
|
|
|
41
41
|
accentSecondaryContrasted: cnamColorsTokens.cyan.darken40,
|
|
42
42
|
info: cnamColorsTokens.blue.base,
|
|
43
43
|
success: cnamColorsTokens.green.darken60,
|
|
44
|
-
warning: cnamColorsTokens.yellow.
|
|
44
|
+
warning: cnamColorsTokens.yellow.darken60,
|
|
45
45
|
error: cnamColorsTokens.orange.darken20,
|
|
46
46
|
onDark: cnamColorsTokens.white.lighten70,
|
|
47
47
|
disabled: cnamColorsTokens.grey.lighten80,
|
|
@@ -55,7 +55,7 @@ export const cnamSemanticTokens = {
|
|
|
55
55
|
subdued: cnamColorsTokens.grey.base,
|
|
56
56
|
info: cnamColorsTokens.blue.base,
|
|
57
57
|
success: cnamColorsTokens.green.darken60,
|
|
58
|
-
warning: cnamColorsTokens.yellow.
|
|
58
|
+
warning: cnamColorsTokens.yellow.darken60,
|
|
59
59
|
error: cnamColorsTokens.orange.darken20,
|
|
60
60
|
disabled: cnamColorsTokens.grey.lighten40,
|
|
61
61
|
onDark: cnamColorsTokens.white.base,
|
package/src/main.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { VCard, VCardText, VCardTitle, VRow, VCol, VIcon } from 'vuetify/components'
|
|
2
2
|
import type { StoryObj } from '@storybook/vue3'
|
|
3
|
+
import { useTheme } from 'vuetify'
|
|
3
4
|
|
|
4
5
|
export default {
|
|
5
6
|
title: 'Composants/Vue d\'ensemble',
|
|
@@ -24,12 +25,14 @@ export const ComponentsList: StoryObj = {
|
|
|
24
25
|
return {
|
|
25
26
|
components: { VCard, VCardText, VCardTitle, VRow, VCol, VIcon },
|
|
26
27
|
setup() {
|
|
28
|
+
const theme = useTheme()
|
|
29
|
+
const isAp = theme.global.name.value === 'ap'
|
|
27
30
|
const components = [
|
|
28
31
|
{
|
|
29
32
|
title: 'HeaderBar',
|
|
30
33
|
description: 'Utilisé pour afficher l’en-tête d’une page ainsi qu’une barre de navigation.',
|
|
31
34
|
link: '/?path=/docs/composants-structure-headerbar--docs',
|
|
32
|
-
img:
|
|
35
|
+
img: `/components/header-bar${isAp ? '-ap' : ''}.svg`,
|
|
33
36
|
category: 'Structure',
|
|
34
37
|
},
|
|
35
38
|
{
|
|
@@ -57,7 +60,7 @@ export const ComponentsList: StoryObj = {
|
|
|
57
60
|
title: 'FooterBar',
|
|
58
61
|
description: 'Utilisé pour afficher une barre de pied de page avec des liens et des informations supplémentaires.',
|
|
59
62
|
link: '/?path=/docs/composants-structure-footerbar--docs',
|
|
60
|
-
img:
|
|
63
|
+
img: `/components/footer-bar${isAp ? '-ap' : ''}.svg`,
|
|
61
64
|
category: 'Structure',
|
|
62
65
|
},
|
|
63
66
|
{
|
|
@@ -92,7 +95,14 @@ export const ComponentsList: StoryObj = {
|
|
|
92
95
|
title: 'SkipLink',
|
|
93
96
|
description: 'Utilisé pour permettre à l\'utilisateur utilisant la navigation au clavier de passer directement à une section de contenu.',
|
|
94
97
|
link: '/?path=/docs/composants-navigation-skiplink--docs',
|
|
95
|
-
img:
|
|
98
|
+
img: `/components/skip-link${isAp ? '-ap' : ''}.svg`,
|
|
99
|
+
category: 'Navigation',
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
title: 'SyPagination',
|
|
103
|
+
description: 'Utilisé pour permettre la navigation entre plusieurs pages de contenu.',
|
|
104
|
+
link: '/?path=/docs/composants-navigation-sypagination--docs',
|
|
105
|
+
img: `/components/pagination${isAp ? '-ap' : ''}.svg`,
|
|
96
106
|
category: 'Navigation',
|
|
97
107
|
},
|
|
98
108
|
{
|
|
@@ -113,7 +123,7 @@ export const ComponentsList: StoryObj = {
|
|
|
113
123
|
title: 'CopyBtn',
|
|
114
124
|
description: 'Utilisé pour afficher un bouton permettant à l’utilisateur de copier du texte.',
|
|
115
125
|
link: '/?path=/docs/composants-boutons-copybtn--docs',
|
|
116
|
-
img:
|
|
126
|
+
img: `/components/copy-btn${isAp ? '-ap' : ''}.svg`,
|
|
117
127
|
category: 'Boutons',
|
|
118
128
|
},
|
|
119
129
|
{
|
|
@@ -127,7 +137,7 @@ export const ComponentsList: StoryObj = {
|
|
|
127
137
|
title: 'DownloadBtn',
|
|
128
138
|
description: 'Utilisé pour permettre à l’utilisateur de télécharger un document provenant d’une API.',
|
|
129
139
|
link: '/?path=/docs/composants-boutons-downloadbtn--docs',
|
|
130
|
-
img:
|
|
140
|
+
img: `/components/download-btn${isAp ? '-ap' : ''}.svg`,
|
|
131
141
|
category: 'Boutons',
|
|
132
142
|
},
|
|
133
143
|
{
|
|
@@ -151,11 +161,18 @@ export const ComponentsList: StoryObj = {
|
|
|
151
161
|
img: '/components/sy-text-field.svg',
|
|
152
162
|
category: 'Formulaires',
|
|
153
163
|
},
|
|
164
|
+
{
|
|
165
|
+
title: 'SyAutocomplete',
|
|
166
|
+
description: 'Utilisé pour permettre à l’utilisateur de rechercher et sélectionner une valeur dans une liste d\'options (alternative au v-autocomplete de Vuetify).',
|
|
167
|
+
link: '/?path=/docs/composants-formulaires-selects-syautocomplete--docs',
|
|
168
|
+
img: `/components/sy-select${isAp ? '-ap' : ''}.svg`,
|
|
169
|
+
category: 'Formulaires',
|
|
170
|
+
},
|
|
154
171
|
{
|
|
155
172
|
title: 'SySelect',
|
|
156
173
|
description: 'Utilisé pour proposer une alternative au v-select de Vuetify qui ne respecte pas les règles d\'accessibilité RGAA. Il est basé sur un v-textfield.',
|
|
157
174
|
link: '/?path=/docs/composants-formulaires-syselect--docs',
|
|
158
|
-
img:
|
|
175
|
+
img: `/components/sy-select${isAp ? '-ap' : ''}.svg`,
|
|
159
176
|
category: 'Formulaires',
|
|
160
177
|
},
|
|
161
178
|
{
|
|
@@ -174,7 +191,7 @@ export const ComponentsList: StoryObj = {
|
|
|
174
191
|
},
|
|
175
192
|
{
|
|
176
193
|
title: 'DatePicker',
|
|
177
|
-
description: '
|
|
194
|
+
description: 'Utilisé pour permettre à l’utilisateur de sélectionner ou de saisir une date.',
|
|
178
195
|
link: '/?path=/docs/composants-formulaires-datepicker--docs',
|
|
179
196
|
img: '/components/date-picker.svg',
|
|
180
197
|
category: 'Formulaires',
|
|
@@ -235,6 +252,27 @@ export const ComponentsList: StoryObj = {
|
|
|
235
252
|
img: '/components/select-btn-field.svg',
|
|
236
253
|
category: 'Formulaires',
|
|
237
254
|
},
|
|
255
|
+
{
|
|
256
|
+
title: 'SyCheckBox',
|
|
257
|
+
description: 'Utilisé pour permettre à l’utilisateur de selectionner une option.',
|
|
258
|
+
link: '/?path=/docs/composants-formulaires-sycheckbox--docs',
|
|
259
|
+
img: `/components/sy-checkbox${isAp ? '-ap' : ''}.svg`,
|
|
260
|
+
category: 'Formulaires',
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
title: 'SyCheckBoxGroup',
|
|
264
|
+
description: 'Utilisé pour permettre à l’utilisateur de selectionner plusieurs options.',
|
|
265
|
+
link: '/?path=/docs/composants-formulaires-sycheckboxgroup--docs',
|
|
266
|
+
img: `/components/sy-checkbox-group${isAp ? '-ap' : ''}.svg`,
|
|
267
|
+
category: 'Formulaires',
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
title: 'SyRadioGroup',
|
|
271
|
+
description: 'Utilisé pour permettre à l\'utilisateur de choisir une option parmi plusieurs.',
|
|
272
|
+
link: '/?path=/docs/composants-formulaires-syradiogroup--docs',
|
|
273
|
+
img: `/components/sy-radiogroup${isAp ? '-ap' : ''}.svg`,
|
|
274
|
+
category: 'Formulaires',
|
|
275
|
+
},
|
|
238
276
|
{
|
|
239
277
|
title: 'PaginatedTable',
|
|
240
278
|
description: 'Utilisé pour afficher une VDataTable de Vuetify avec une pagination persistante.',
|
|
@@ -353,10 +391,37 @@ export const ComponentsList: StoryObj = {
|
|
|
353
391
|
'Feedback',
|
|
354
392
|
]
|
|
355
393
|
|
|
394
|
+
const apComponents = [
|
|
395
|
+
'FooterBar',
|
|
396
|
+
'HeaderBar',
|
|
397
|
+
'HeaderLoading',
|
|
398
|
+
'PageContainer',
|
|
399
|
+
'CopyBtn',
|
|
400
|
+
'DownloadBtn',
|
|
401
|
+
'SyPagination',
|
|
402
|
+
'SkipLink',
|
|
403
|
+
'SyCheckBox',
|
|
404
|
+
'SyCheckBoxGroup',
|
|
405
|
+
'SyAutocomplete',
|
|
406
|
+
'SySelect',
|
|
407
|
+
'SyRadioGroup',
|
|
408
|
+
]
|
|
409
|
+
|
|
410
|
+
const shouldDisplayComponent = (component: { category: string, title: string }, category: string) => {
|
|
411
|
+
if (isAp) {
|
|
412
|
+
return (
|
|
413
|
+
component.category === category
|
|
414
|
+
&& apComponents.some(apComponent => component.title.includes(apComponent))
|
|
415
|
+
)
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
return component.category === category
|
|
419
|
+
}
|
|
420
|
+
|
|
356
421
|
const groupedComponents = categoryOrder.map(category => ({
|
|
357
422
|
category,
|
|
358
|
-
components: components.filter(component => component
|
|
359
|
-
}))
|
|
423
|
+
components: components.filter(component => shouldDisplayComponent(component, category)),
|
|
424
|
+
})).filter(group => group.components.length > 0)
|
|
360
425
|
|
|
361
426
|
return {
|
|
362
427
|
groupedComponents,
|
|
@@ -43,8 +43,8 @@ export const Header: StoryObj = {
|
|
|
43
43
|
<img alt="line" src="/home-line.svg" width="120" height="5" class="mb-5" />
|
|
44
44
|
<h2 style="font-family: Arial !important; font-size: 1.5rem !important; font-weight: 400 !important; line-height: 1.30 !important; letter-spacing: normal !important;" class="mb-5">Synapse :
|
|
45
45
|
<span v-if="theme === 'pa'" class="text-h5">thème Portail Agent</span>
|
|
46
|
-
<span v-if="theme === 'ap'">thème Amelipro
|
|
47
|
-
<span v-if="theme === 'ap2026'">thème Amelipro</span>
|
|
46
|
+
<span v-if="theme === 'ap'">thème Amelipro</span>
|
|
47
|
+
<span v-if="theme === 'ap2026'">thème Amelipro 2026</span>
|
|
48
48
|
<span v-if="theme === 'cnam'" class="text-h5">thème CNAM</span></h2>
|
|
49
49
|
<p style="font-family: Arial !important; font-size: 1rem !important;" class="mb-5">Veuillez sélectionner dans la barre d’outil en haut de l’écran le thème graphique de votre produit avant de consulter la documentation, elle s’actualisera en conséquence avec les tokens et composants disponibles.
|
|
50
50
|
<br/>Si vous ne connaissez pas le thème auquel votre produit est soumis veuillez consulter le dossier d’architecture du produit.
|
|
@@ -153,7 +153,7 @@ export const DesignSystem: StoryObj = {
|
|
|
153
153
|
</VCard>
|
|
154
154
|
</VCol>
|
|
155
155
|
<VCol cols="12" md="4">
|
|
156
|
-
<VCard class="pa-0 h-100 card-hover" elevation="0" href="/?path=/docs/guide-du-dev-
|
|
156
|
+
<VCard class="pa-0 h-100 card-hover" elevation="0" href="/?path=/docs/guide-du-dev-installation--docs">
|
|
157
157
|
<img src="/home-card-dev.svg" alt="Guide du dev" class="w-100" />
|
|
158
158
|
<VCardTitle><b>Guides du dev</b></VCardTitle>
|
|
159
159
|
<VCardText>Les Guides du Dev accompagnent les équipes techniques dans l'implémentation du Design System en garantissant une intégration fluide et efficace.</VCardText>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Meta, Story } from '@storybook/blocks';
|
|
2
|
+
import * as AmeliproStories from './Amelipro.stories';
|
|
3
|
+
import '../styles/shared.css';
|
|
4
|
+
|
|
5
|
+
<Meta of={AmeliproStories}/>
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
<div className="header">
|
|
10
|
+
<h1>Equivalence des composants Amelipro avec la stack front VueJs 3</h1>
|
|
11
|
+
</div>
|
|
12
|
+
|
|
13
|
+
Suite au besoin de migration de l'ensemble des applications du parc de Amelipro vers Vue.js 3, les composants graphiques ont été unifiés. Voici les composants Amelipro et leur équivalence dans la stack front Vue.js 3.
|
|
14
|
+
|
|
15
|
+
<Story of={AmeliproStories.ApComponents}/>
|