@cnamts/synapse 1.0.0 → 1.0.1
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-BmRuzQ9Z.js +98 -0
- package/dist/NumberFilter-CnIPDHqx.js +121 -0
- package/dist/PeriodFilter-CZwZ8CnQ.js +112 -0
- package/dist/SelectFilter-Cj-GW2Cc.js +97 -0
- package/dist/TextFilter-DTxZHJwX.js +114 -0
- package/dist/{components/BackBtn → common}/constants/ExpertiseLevelEnum.d.ts +3 -0
- package/dist/components/BackBtn/AccessibiliteItems.d.ts +1 -1
- package/dist/components/BackToTopBtn/AccessibiliteItems.d.ts +1 -1
- package/dist/components/ChipList/AccessibiliteItems.d.ts +1 -1
- package/dist/components/CollapsibleList/AccessibiliteItems.d.ts +1 -1
- package/dist/components/ContextualMenu/AccessibiliteItems.d.ts +1 -1
- package/dist/components/CookieBanner/AccessibiliteItems.d.ts +1 -1
- package/dist/components/CopyBtn/AccessibiliteItems.d.ts +1 -1
- package/dist/components/Customs/SyBtnSelect/AccessibiliteItems.d.ts +1 -1
- package/dist/components/Customs/SyInputSelect/AccessibiliteItems.d.ts +1 -1
- package/dist/components/Customs/SySelect/AccessibiliteItems.d.ts +1 -1
- package/dist/components/Customs/SyTextField/AccessibiliteItems.d.ts +1 -1
- package/dist/components/DataList/AccessibiliteItems.d.ts +1 -1
- package/dist/components/DataListGroup/AccessibiliteItems.d.ts +1 -1
- package/dist/components/DatePicker/AccessibiliteItems.d.ts +1 -1
- package/dist/components/DatePicker/ComplexDatePicker/ComplexDatePicker.d.ts +4162 -0
- package/dist/components/DatePicker/{DatePicker.d.ts → DatePicker/DatePicker.d.ts} +142 -102
- package/dist/components/DatePicker/{DateTextInput.d.ts → DateTextInput/DateTextInput.d.ts} +32 -26
- package/dist/components/DatePicker/composables/index.d.ts +15 -0
- package/dist/components/DatePicker/composables/useDateFormatValidation.d.ts +25 -0
- package/dist/components/DatePicker/composables/useDateInputEditing.d.ts +33 -0
- package/dist/components/DatePicker/composables/useDatePickerViewMode.d.ts +16 -0
- package/dist/components/DatePicker/composables/useDatePickerVisibility.d.ts +27 -0
- package/dist/components/DatePicker/composables/useDateRangeInput.d.ts +29 -0
- package/dist/components/DatePicker/composables/useDateRangeValidation.d.ts +11 -0
- package/dist/components/DatePicker/composables/useDateSelection.d.ts +10 -0
- package/dist/components/DatePicker/composables/useDateValidation.d.ts +35 -0
- package/dist/components/DatePicker/composables/useDisplayedDateString.d.ts +16 -0
- package/dist/components/DatePicker/composables/useIconState.d.ts +17 -0
- package/dist/components/DatePicker/composables/useInputBlurHandler.d.ts +30 -0
- package/dist/components/DatePicker/composables/useInputHandler.d.ts +32 -0
- package/dist/components/DatePicker/composables/useManualDateValidation.d.ts +33 -0
- package/dist/components/DatePicker/composables/useMonthButtonCustomization.d.ts +9 -0
- package/dist/components/DatePicker/composables/useTodayButton.d.ts +16 -0
- package/dist/components/DatePicker/composables/useWeekendDays.d.ts +11 -0
- package/dist/components/DatePicker/constants/messages.d.ts +29 -0
- package/dist/components/DatePicker/types.d.ts +13 -0
- package/dist/components/DialogBox/AccessibiliteItems.d.ts +1 -1
- package/dist/components/DownloadBtn/AccessibiliteItems.d.ts +1 -1
- package/dist/components/ErrorPage/AccessibiliteItems.d.ts +1 -1
- package/dist/components/ExternalLinks/AccessibiliteItems.d.ts +1 -1
- package/dist/components/FileList/AccessibiliteItems.d.ts +1 -1
- package/dist/components/FilePreview/AccessibiliteItems.d.ts +1 -1
- package/dist/components/FileUpload/AccessibiliteItems.d.ts +1 -1
- package/dist/components/FilterInline/AccessibiliteItems.d.ts +1 -1
- package/dist/components/FilterSideBar/AccessibiliteItems.d.ts +1 -1
- package/dist/components/FilterSideBar/FilterSideBar.d.ts +395 -1
- package/dist/components/FooterBar/AccessibiliteItems.d.ts +1 -1
- package/dist/components/FranceConnectBtn/AccessibiliteItems.d.ts +1 -1
- package/dist/components/HeaderBar/AccessibiliteItems.d.ts +1 -1
- package/dist/components/HeaderBar/HeaderBurgerMenu/AccessibiliteItems.d.ts +1 -1
- package/dist/components/HeaderLoading/AccessibiliteItems.d.ts +1 -1
- package/dist/components/HeaderToolbar/AccessibiliteItems.d.ts +1 -1
- package/dist/components/LangBtn/AccessibiliteItems.d.ts +1 -1
- package/dist/components/Logo/AccessibiliteItems.d.ts +1 -1
- package/dist/components/LogoBrandSection/AccessibiliteItems.d.ts +1 -1
- package/dist/components/MaintenancePage/AccessibiliteItems.d.ts +1 -1
- package/dist/components/NirField/AccessibiliteItems.d.ts +1 -1
- package/dist/components/NotFoundPage/AccessibiliteItems.d.ts +1 -1
- package/dist/components/NotificationBar/AccessibiliteItems.d.ts +1 -1
- package/dist/components/PageContainer/AccessibiliteItems.d.ts +1 -1
- package/dist/components/PaginatedTable/AccessibiliteItems.d.ts +1 -1
- package/dist/components/PasswordField/AccessibiliteItems.d.ts +1 -1
- package/dist/components/PeriodField/AccessibiliteItems.d.ts +1 -1
- package/dist/components/PeriodField/PeriodField.d.ts +171 -37
- package/dist/components/PhoneField/AccessibiliteItems.d.ts +1 -1
- package/dist/components/RangeField/AccessibiliteItems.d.ts +1 -1
- package/dist/components/RatingPicker/AccessibiliteItems.d.ts +1 -1
- package/dist/components/SearchListField/AccessibiliteItems.d.ts +1 -1
- package/dist/components/SelectBtnField/AccessibiliteItems.d.ts +1 -1
- package/dist/components/SkipLink/AccessibiliteItems.d.ts +1 -1
- package/dist/components/SocialMediaLinks/AccessibiliteItems.d.ts +1 -1
- package/dist/components/SubHeader/AccessibiliteItems.d.ts +1 -1
- package/dist/components/SyAlert/AccessibiliteItems.d.ts +1 -1
- package/dist/components/TableToolbar/AccessibiliteItems.d.ts +1 -1
- package/dist/components/Tables/SyServerTable/SyServerTable.d.ts +647 -0
- package/dist/components/Tables/SyTable/SyTable.d.ts +666 -0
- package/dist/components/Tables/common/SyTableFilter.d.ts +126 -0
- package/dist/components/Tables/common/TableHeader.d.ts +33 -0
- package/dist/components/Tables/common/constants/StateEnum.d.ts +6 -0
- package/dist/components/Tables/common/filters/DateFilter.d.ts +121 -0
- package/dist/components/Tables/common/filters/NumberFilter.d.ts +132 -0
- package/dist/components/Tables/common/filters/PeriodFilter.d.ts +135 -0
- package/dist/components/Tables/common/filters/SelectFilter.d.ts +120 -0
- package/dist/components/Tables/common/filters/TextFilter.d.ts +132 -0
- package/dist/components/Tables/common/formatters.d.ts +17 -0
- package/dist/components/Tables/common/locales.d.ts +7 -0
- package/dist/components/Tables/common/tableAccessibilityUtils.d.ts +8 -0
- package/dist/components/Tables/common/tableFilterUtils.d.ts +2 -0
- package/dist/components/Tables/common/tableStorageUtils.d.ts +29 -0
- package/dist/components/Tables/common/tableUtils.d.ts +42 -0
- package/dist/components/Tables/common/types.d.ts +80 -0
- package/dist/components/Tables/common/useTableFilter.d.ts +9 -0
- package/dist/components/Tables/index.d.ts +2 -0
- package/dist/components/UploadWorkflow/AccessibiliteItems.d.ts +1 -1
- package/dist/components/UserMenuBtn/AccessibiliteItems.d.ts +1 -1
- package/dist/components/index.d.ts +3 -1
- package/dist/design-system-v3.js +100 -11944
- package/dist/design-system-v3.umd.cjs +22 -4
- package/dist/designTokens/index.d.ts +3 -1
- package/dist/designTokens/tokens/cnam/cnamFonts.d.ts +140 -0
- package/dist/designTokens/tokens/pa/paFonts.d.ts +140 -0
- package/dist/designTokens/utils/createFontVariables.d.ts +39 -0
- package/dist/designTokens/utils/index.d.ts +2 -1
- package/dist/main-WDqeoGM-.js +14788 -0
- package/dist/style.css +1 -1
- package/dist/utils/rules/isRequired/index.d.ts +1 -1
- package/dist/vite-env.d.ts +12 -0
- package/package.json +3 -3
- package/src/assets/_spacers.scss +37 -1
- package/src/assets/_typography.scss +158 -0
- package/src/assets/settings.scss +7 -0
- package/src/common/constants/ExpertiseLevelEnum.ts +7 -0
- package/src/components/BackBtn/AccessibiliteItems.ts +1 -1
- package/src/components/BackToTopBtn/AccessibiliteItems.ts +1 -1
- package/src/components/ChipList/AccessibiliteItems.ts +1 -1
- package/src/components/CollapsibleList/AccessibiliteItems.ts +1 -1
- package/src/components/ContextualMenu/AccessibiliteItems.ts +1 -1
- package/src/components/CookieBanner/AccessibiliteItems.ts +1 -1
- package/src/components/CopyBtn/AccessibiliteItems.ts +1 -1
- package/src/components/Customs/SyBtnSelect/AccessibiliteItems.ts +1 -1
- package/src/components/Customs/SyInputSelect/AccessibiliteItems.ts +1 -1
- package/src/components/Customs/SySelect/AccessibiliteItems.ts +1 -1
- package/src/components/Customs/SySelect/SySelect.vue +3 -9
- package/src/components/Customs/SySelect/tests/SySelect.spec.ts +4 -2
- package/src/components/Customs/SyTextField/AccessibiliteItems.ts +1 -1
- package/src/components/DataList/AccessibiliteItems.ts +1 -1
- package/src/components/DataListGroup/AccessibiliteItems.ts +1 -1
- package/src/components/DatePicker/AccessibiliteItems.ts +1 -1
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.mdx +212 -0
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.stories.ts +1097 -0
- package/src/components/DatePicker/ComplexDatePicker/ComplexDatePicker.vue +497 -180
- package/src/components/DatePicker/ComplexDatePicker/tests/ComplexDatePicker.spec.ts +941 -0
- package/src/components/DatePicker/DatePicker/DatePicker.mdx +176 -0
- package/src/components/DatePicker/{tests → DatePicker}/DatePicker.spec.ts +1 -1
- package/src/components/DatePicker/{DatePicker.stories.ts → DatePicker/DatePicker.stories.ts} +115 -400
- package/src/components/DatePicker/{DatePicker.vue → DatePicker/DatePicker.vue} +302 -84
- package/src/components/DatePicker/DatePickerOverview.mdx +227 -0
- package/src/components/DatePicker/{DatePickerValidation.mdx → DatePickerValidationExample/DatePickerValidation.mdx} +3 -3
- package/src/components/DatePicker/{DatePickerValidation.stories.ts → DatePickerValidationExample/DatePickerValidation.stories.ts} +2 -2
- package/src/components/DatePicker/DateTextInput/DateRange.stories.ts +310 -0
- package/src/components/DatePicker/DateTextInput/DateTextInput.range.spec.ts +278 -0
- package/src/components/DatePicker/{tests → DateTextInput}/DateTextInput.spec.ts +8 -7
- package/src/components/DatePicker/DateTextInput/DateTextInput.vue +916 -0
- package/src/components/DatePicker/DateTextInput/NoCalendar.mdx +64 -0
- package/src/components/DatePicker/DateTextInput/NoCalendar.stories.ts +572 -0
- package/src/components/DatePicker/composables/index.ts +22 -0
- package/src/components/DatePicker/composables/tests/useDateFormatValidation.spec.ts +165 -0
- package/src/components/DatePicker/composables/tests/useDateInputEditing.spec.ts +359 -0
- package/src/components/DatePicker/composables/tests/useDatePickerViewMode.spec.ts +160 -0
- package/src/components/DatePicker/composables/tests/useDatePickerVisibility.spec.ts +339 -0
- package/src/components/DatePicker/composables/tests/useDateRangeInput.spec.ts +277 -0
- package/src/components/DatePicker/composables/tests/useDateRangeValidation.spec.ts +107 -0
- package/src/components/DatePicker/composables/tests/useDateSelection.spec.ts +171 -0
- package/src/components/DatePicker/composables/tests/useDateValidation.spec.ts +245 -0
- package/src/components/DatePicker/composables/tests/useDisplayedDateString.spec.ts +98 -0
- package/src/components/DatePicker/composables/tests/useIconState.spec.ts +130 -0
- package/src/components/DatePicker/composables/tests/useInputBlurHandler.spec.ts +278 -0
- package/src/components/DatePicker/composables/tests/useManualDateValidation.spec.ts +233 -0
- package/src/components/DatePicker/composables/tests/useMonthButtonCustomization.spec.ts +100 -0
- package/src/components/DatePicker/composables/tests/useTodayButton.spec.ts +97 -0
- package/src/components/DatePicker/composables/tests/useWeekendDays.spec.ts +28 -0
- package/src/components/DatePicker/composables/useDateFormatValidation.ts +95 -0
- package/src/components/DatePicker/composables/useDateInputEditing.ts +326 -0
- package/src/components/DatePicker/composables/useDatePickerViewMode.ts +61 -0
- package/src/components/DatePicker/composables/useDatePickerVisibility.ts +146 -0
- package/src/components/DatePicker/composables/useDateRangeInput.ts +375 -0
- package/src/components/DatePicker/composables/useDateRangeValidation.ts +48 -0
- package/src/components/DatePicker/composables/useDateSelection.ts +121 -0
- package/src/components/DatePicker/composables/useDateValidation.ts +225 -0
- package/src/components/DatePicker/composables/useDisplayedDateString.ts +58 -0
- package/src/components/DatePicker/composables/useIconState.ts +53 -0
- package/src/components/DatePicker/composables/useInputBlurHandler.ts +101 -0
- package/src/components/DatePicker/composables/useInputHandler.ts +436 -0
- package/src/components/DatePicker/composables/useManualDateValidation.ts +161 -0
- package/src/components/DatePicker/composables/useMonthButtonCustomization.ts +89 -0
- package/src/components/DatePicker/composables/useTodayButton.ts +43 -0
- package/src/components/DatePicker/composables/useWeekendDays.ts +21 -0
- package/src/components/DatePicker/constants/messages.ts +50 -0
- package/src/components/DatePicker/docExamples/DatePickerBidirectionalValidation.vue +4 -4
- package/src/components/DatePicker/docExamples/DatePickerValidationExamples.vue +1 -1
- package/src/components/DatePicker/playground/ComplexDatePickerPlayground.vue +172 -0
- package/src/components/DatePicker/types.ts +15 -0
- package/src/components/DialogBox/AccessibiliteItems.ts +1 -1
- package/src/components/DownloadBtn/AccessibiliteItems.ts +1 -1
- package/src/components/ErrorPage/AccessibiliteItems.ts +1 -1
- package/src/components/ExternalLinks/AccessibiliteItems.ts +1 -1
- package/src/components/FileList/AccessibiliteItems.ts +1 -1
- package/src/components/FilePreview/AccessibiliteItems.ts +1 -1
- package/src/components/FileUpload/AccessibiliteItems.ts +1 -1
- package/src/components/FilterInline/AccessibiliteItems.ts +1 -1
- package/src/components/FilterSideBar/AccessibiliteItems.ts +1 -1
- package/src/components/FilterSideBar/FilterSideBar.vue +108 -90
- package/src/components/FilterSideBar/tests/FilterSideBar.spec.ts +27 -0
- package/src/components/FilterSideBar/tests/__snapshots__/FilterSideBar.spec.ts.snap +114 -109
- package/src/components/FooterBar/AccessibiliteItems.ts +1 -1
- package/src/components/FooterBar/FooterBar.vue +2 -1
- package/src/components/FranceConnectBtn/AccessibiliteItems.ts +1 -1
- package/src/components/HeaderBar/AccessibiliteItems.ts +1 -1
- package/src/components/HeaderBar/HeaderBurgerMenu/AccessibiliteItems.ts +1 -1
- package/src/components/HeaderLoading/AccessibiliteItems.ts +1 -1
- package/src/components/HeaderToolbar/AccessibiliteItems.ts +1 -1
- package/src/components/LangBtn/AccessibiliteItems.ts +1 -1
- package/src/components/Logo/Accessibilite.stories.ts +4 -0
- package/src/components/Logo/AccessibiliteItems.ts +1 -1
- package/src/components/LogoBrandSection/AccessibiliteItems.ts +1 -1
- package/src/components/MaintenancePage/AccessibiliteItems.ts +1 -1
- package/src/components/NirField/AccessibiliteItems.ts +1 -1
- package/src/components/NotFoundPage/AccessibiliteItems.ts +1 -1
- package/src/components/NotificationBar/AccessibiliteItems.ts +1 -1
- package/src/components/PageContainer/AccessibiliteItems.ts +1 -1
- package/src/components/PaginatedTable/AccessibiliteItems.ts +1 -1
- package/src/components/PaginatedTable/PaginatedTable.stories.ts +19 -0
- package/src/components/PaginatedTable/PaginatedTable.vue +51 -13
- package/src/components/PaginatedTable/tests/PaginatedTable.spec.ts +0 -2
- package/src/components/PasswordField/AccessibiliteItems.ts +1 -1
- package/src/components/PeriodField/AccessibiliteItems.ts +1 -1
- package/src/components/PeriodField/PeriodField.vue +13 -1
- package/src/components/PhoneField/AccessibiliteItems.ts +1 -1
- package/src/components/RangeField/AccessibiliteItems.ts +1 -1
- package/src/components/RatingPicker/AccessibiliteItems.ts +1 -1
- package/src/components/SearchListField/AccessibiliteItems.ts +1 -1
- package/src/components/SelectBtnField/AccessibiliteItems.ts +1 -1
- package/src/components/SkipLink/AccessibiliteItems.ts +1 -1
- package/src/components/SocialMediaLinks/AccessibiliteItems.ts +1 -1
- package/src/components/SubHeader/AccessibiliteItems.ts +1 -1
- package/src/components/SyAlert/AccessibiliteItems.ts +1 -1
- package/src/components/TableToolbar/AccessibiliteItems.ts +1 -1
- package/src/components/TableToolbar/TableToolbar.stories.ts +110 -56
- package/src/components/Tables/SyServerTable/FilterRules.stories.ts +83 -0
- package/src/components/Tables/SyServerTable/SyServerTable.mdx +160 -0
- package/src/components/Tables/SyServerTable/SyServerTable.stories.ts +2887 -0
- package/src/components/Tables/SyServerTable/SyServerTable.vue +302 -0
- package/src/components/Tables/SyServerTable/tests/SyServerTable.spec.ts +450 -0
- package/src/components/Tables/SyServerTable/tests/__snapshots__/SyServerTable.spec.ts.snap +521 -0
- package/src/components/Tables/SyTable/FilterRules.stories.ts +235 -0
- package/src/components/Tables/SyTable/SyTable.mdx +129 -0
- package/src/components/Tables/SyTable/SyTable.stories.ts +1966 -0
- package/src/components/Tables/SyTable/SyTable.vue +317 -0
- package/src/components/Tables/SyTable/tests/SyTable.spec.ts +345 -0
- package/src/components/Tables/SyTable/tests/__snapshots__/SyTable.spec.ts.snap +521 -0
- package/src/components/Tables/common/SyTableFilter.vue +342 -0
- package/src/components/Tables/common/TableHeader.vue +221 -0
- package/src/components/Tables/common/constants/StateEnum.ts +6 -0
- package/src/components/Tables/common/filters/DateFilter.vue +140 -0
- package/src/components/Tables/common/filters/NumberFilter.vue +234 -0
- package/src/components/Tables/common/filters/PeriodFilter.vue +147 -0
- package/src/components/Tables/common/filters/SelectFilter.vue +126 -0
- package/src/components/Tables/common/filters/TextFilter.vue +191 -0
- package/src/components/Tables/common/filters/tests/DateFilter.spec.ts +187 -0
- package/src/components/Tables/common/filters/tests/NumberFilter.spec.ts +280 -0
- package/src/components/Tables/common/filters/tests/PeriodFilter.spec.ts +192 -0
- package/src/components/Tables/common/filters/tests/SelectFilter.spec.ts +219 -0
- package/src/components/Tables/common/filters/tests/TextFilter.spec.ts +260 -0
- package/src/components/Tables/common/formatters.ts +72 -0
- package/src/components/Tables/common/locales.ts +7 -0
- package/src/components/Tables/common/tableAccessibilityUtils.ts +61 -0
- package/src/components/Tables/common/tableFilterUtils.ts +327 -0
- package/src/components/Tables/common/tableStorageUtils.ts +102 -0
- package/src/components/Tables/common/tableStyles.scss +54 -0
- package/src/components/Tables/common/tableUtils.ts +115 -0
- package/src/components/Tables/common/tests/SyTableFilter.spec.ts +312 -0
- package/src/components/Tables/common/tests/resize.spec.ts +161 -0
- package/src/components/Tables/common/tests/tableFilterUtils.spec.ts +106 -0
- package/src/components/Tables/common/tests/tableUtils.spec.ts +272 -0
- package/src/components/Tables/common/types.ts +81 -0
- package/src/components/Tables/common/useTableFilter.ts +19 -0
- package/src/components/Tables/index.ts +3 -0
- package/src/components/UploadWorkflow/AccessibiliteItems.ts +1 -1
- package/src/components/UserMenuBtn/AccessibiliteItems.ts +1 -1
- package/src/components/index.ts +3 -1
- package/src/composables/date/useDateFormatDayjs.ts +8 -3
- package/src/composables/date/useDateInitializationDayjs.ts +28 -36
- package/src/composables/rules/useFieldValidation.ts +1 -2
- package/src/designTokens/index.ts +4 -0
- package/src/designTokens/tokens/cnam/cnamFonts.ts +140 -0
- package/src/designTokens/tokens/pa/paFonts.ts +140 -0
- package/src/designTokens/utils/createFontVariables.ts +143 -0
- package/src/designTokens/utils/index.ts +2 -1
- package/src/stories/Demarrer/Accueil.stories.ts +12 -3
- package/src/utils/rules/isHolidayDay/IsHolidayDay.stories.ts +1 -1
- package/src/utils/rules/isRequired/index.ts +2 -1
- package/src/vite-env.d.ts +12 -0
- package/src/vuetifyConfig.ts +10 -3
- package/dist/components/BackToTopBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/ChipList/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/CollapsibleList/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/ContextualMenu/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/CookieBanner/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/CopyBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/Customs/SyBtnSelect/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/Customs/SyInputSelect/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/Customs/SySelect/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/Customs/SyTextField/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/DataList/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/DataListGroup/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/DatePicker/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/DialogBox/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/DownloadBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/ErrorPage/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/ExternalLinks/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/FileList/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/FilePreview/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/FileUpload/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/FilterInline/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/FilterSideBar/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/FooterBar/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/FranceConnectBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/HeaderBar/HeaderBurgerMenu/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/HeaderBar/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/HeaderLoading/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/HeaderToolbar/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/LangBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/Logo/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/LogoBrandSection/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/MaintenancePage/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/NirField/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/NotFoundPage/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/NotificationBar/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/PageContainer/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/PaginatedTable/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/PasswordField/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/PeriodField/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/PhoneField/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/RangeField/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/RatingPicker/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/SearchListField/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/SelectBtnField/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/SkipLink/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/SocialMediaLinks/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/SubHeader/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/SyAlert/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/TableToolbar/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/UploadWorkflow/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/dist/components/UserMenuBtn/constants/ExpertiseLevelEnum.d.ts +0 -4
- package/src/components/BackBtn/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/BackToTopBtn/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/ChipList/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/CollapsibleList/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/ContextualMenu/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/CookieBanner/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/CopyBtn/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/Customs/SyBtnSelect/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/Customs/SyInputSelect/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/Customs/SySelect/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/Customs/SyTextField/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/DataList/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/DataListGroup/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/DatePicker/DatePicker.mdx +0 -222
- package/src/components/DatePicker/DateTextInput.vue +0 -504
- package/src/components/DatePicker/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/DialogBox/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/DownloadBtn/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/ErrorPage/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/ExternalLinks/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/FileList/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/FilePreview/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/FileUpload/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/FilterInline/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/FilterSideBar/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/FooterBar/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/FranceConnectBtn/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/HeaderBar/HeaderBurgerMenu/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/HeaderBar/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/HeaderLoading/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/HeaderToolbar/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/LangBtn/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/Logo/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/LogoBrandSection/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/MaintenancePage/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/NirField/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/NotFoundPage/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/NotificationBar/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/PageContainer/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/PaginatedTable/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/PasswordField/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/PeriodField/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/PhoneField/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/RangeField/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/RatingPicker/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/SearchListField/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/SelectBtnField/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/SkipLink/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/SocialMediaLinks/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/SubHeader/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/SyAlert/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/TableToolbar/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/UploadWorkflow/constants/ExpertiseLevelEnum.ts +0 -4
- package/src/components/UserMenuBtn/constants/ExpertiseLevelEnum.ts +0 -4
- /package/src/components/DatePicker/{examples → playground}/DatePickerHolidayRule.vue +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { ValidationRule, ErrorMessages } from '../types';
|
|
2
|
-
export type Value = string |
|
|
2
|
+
export type Value = string | any[] | null;
|
|
3
3
|
export declare function isRequiredFn(errorMessages?: ErrorMessages): ValidationRule<Value>;
|
|
4
4
|
export declare const isRequired: ValidationRule<Value>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/// <reference types="vite/client" />
|
|
2
|
+
|
|
3
|
+
interface ImportMeta {
|
|
4
|
+
readonly env: {
|
|
5
|
+
readonly VITEST?: boolean
|
|
6
|
+
readonly MODE: string
|
|
7
|
+
readonly BASE_URL: string
|
|
8
|
+
readonly PROD: boolean
|
|
9
|
+
readonly DEV: boolean
|
|
10
|
+
[key: string]: string | boolean | undefined
|
|
11
|
+
}
|
|
12
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cnamts/synapse",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "CNAM DS v3",
|
|
6
6
|
"type": "module",
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
"types": "./dist/main.d.ts",
|
|
14
14
|
"exports": {
|
|
15
15
|
".": {
|
|
16
|
+
"types": "./dist/main.d.ts",
|
|
16
17
|
"import": "./dist/design-system-v3.js",
|
|
17
|
-
"require": "./dist/design-system-v3.umd.cjs"
|
|
18
|
-
"types": "./dist/main.d.ts"
|
|
18
|
+
"require": "./dist/design-system-v3.umd.cjs"
|
|
19
19
|
},
|
|
20
20
|
"./style.css": "./dist/style.css",
|
|
21
21
|
"./*": "./src/*"
|
package/src/assets/_spacers.scss
CHANGED
|
@@ -142,8 +142,44 @@ $pa-spacers: (
|
|
|
142
142
|
@include generate-side-spacing-classes(margin, mb, bottom);
|
|
143
143
|
@include generate-side-spacing-classes(margin, ml, left);
|
|
144
144
|
|
|
145
|
+
// Définir les points de rupture
|
|
146
|
+
$breakpoints: (
|
|
147
|
+
'sm': 600px,
|
|
148
|
+
'md': 960px,
|
|
149
|
+
'lg': 1280px,
|
|
150
|
+
'xl': 1920px,
|
|
151
|
+
);
|
|
152
|
+
|
|
153
|
+
// Mixin pour générer les classes de marges et de paddings avec les points de rupture
|
|
154
|
+
@mixin generate-breakpoint-spacing-classes($property, $prefix) {
|
|
155
|
+
@each $breakpoint, $value in $breakpoints {
|
|
156
|
+
@for $i from 0 through 64 {
|
|
157
|
+
.#{$prefix}-#{$breakpoint}-#{$i} {
|
|
158
|
+
@media (min-width: #{$value}) {
|
|
159
|
+
#{$property}: var(--spacing-#{$i}) !important;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
// Générer les classes de marges et de paddings avec les points de rupture
|
|
167
|
+
@include generate-breakpoint-spacing-classes(margin-right, mr);
|
|
168
|
+
@include generate-breakpoint-spacing-classes(padding-right, pr);
|
|
169
|
+
@include generate-breakpoint-spacing-classes(margin-left, ml);
|
|
170
|
+
@include generate-breakpoint-spacing-classes(padding-left, pl);
|
|
171
|
+
@include generate-breakpoint-spacing-classes(margin-top, mt);
|
|
172
|
+
@include generate-breakpoint-spacing-classes(padding-top, pt);
|
|
173
|
+
@include generate-breakpoint-spacing-classes(margin-bottom, mb);
|
|
174
|
+
@include generate-breakpoint-spacing-classes(padding-bottom, pb);
|
|
175
|
+
@include generate-breakpoint-spacing-classes(margin, mx);
|
|
176
|
+
@include generate-breakpoint-spacing-classes(padding, px);
|
|
177
|
+
@include generate-breakpoint-spacing-classes(margin, my);
|
|
178
|
+
@include generate-breakpoint-spacing-classes(padding, py);
|
|
179
|
+
|
|
145
180
|
// Additional classes for specific spacing
|
|
146
181
|
|
|
147
|
-
.v-btn
|
|
182
|
+
.theme-cnam .v-btn,
|
|
183
|
+
.theme-pa .v-btn {
|
|
148
184
|
padding: 0 var(--spacing-4) !important;
|
|
149
185
|
}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/* Typography styles for CNAM and PA themes */
|
|
2
|
+
|
|
3
|
+
/* Theme Typography */
|
|
4
|
+
.v-theme--cnam,
|
|
5
|
+
.v-theme--pa {
|
|
6
|
+
/* Headings with Vuetify classes */
|
|
7
|
+
.text-h1 {
|
|
8
|
+
font-size: var(--v-typography-h1-font-size) !important;
|
|
9
|
+
font-weight: var(--v-typography-h1-font-weight) !important;
|
|
10
|
+
line-height: var(--v-typography-h1-line-height) !important;
|
|
11
|
+
letter-spacing: var(--v-typography-h1-letter-spacing) !important;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.text-h2 {
|
|
15
|
+
font-size: var(--v-typography-h2-font-size) !important;
|
|
16
|
+
font-weight: var(--v-typography-h2-font-weight) !important;
|
|
17
|
+
line-height: var(--v-typography-h2-line-height) !important;
|
|
18
|
+
letter-spacing: var(--v-typography-h2-letter-spacing) !important;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.text-h3 {
|
|
22
|
+
font-size: var(--v-typography-h3-font-size) !important;
|
|
23
|
+
font-weight: var(--v-typography-h3-font-weight) !important;
|
|
24
|
+
line-height: var(--v-typography-h3-line-height) !important;
|
|
25
|
+
letter-spacing: var(--v-typography-h3-letter-spacing) !important;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.text-h4 {
|
|
29
|
+
font-size: var(--v-typography-h4-font-size) !important;
|
|
30
|
+
font-weight: var(--v-typography-h4-font-weight) !important;
|
|
31
|
+
line-height: var(--v-typography-h4-line-height) !important;
|
|
32
|
+
letter-spacing: var(--v-typography-h4-letter-spacing) !important;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.text-h5 {
|
|
36
|
+
font-size: var(--v-typography-h5-font-size) !important;
|
|
37
|
+
font-weight: var(--v-typography-h5-font-weight) !important;
|
|
38
|
+
line-height: var(--v-typography-h5-line-height) !important;
|
|
39
|
+
letter-spacing: var(--v-typography-h5-letter-spacing) !important;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.text-h6 {
|
|
43
|
+
font-size: var(--v-typography-h6-font-size) !important;
|
|
44
|
+
font-weight: var(--v-typography-h6-font-weight) !important;
|
|
45
|
+
line-height: var(--v-typography-h6-line-height) !important;
|
|
46
|
+
letter-spacing: var(--v-typography-h6-letter-spacing) !important;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/* Native HTML heading elements */
|
|
50
|
+
h1 {
|
|
51
|
+
font-size: var(--v-typography-h1-font-size) !important;
|
|
52
|
+
font-weight: var(--v-typography-h1-font-weight) !important;
|
|
53
|
+
line-height: var(--v-typography-h1-line-height) !important;
|
|
54
|
+
letter-spacing: var(--v-typography-h1-letter-spacing) !important;
|
|
55
|
+
margin-bottom: 0.5rem;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
h2 {
|
|
59
|
+
font-size: var(--v-typography-h2-font-size) !important;
|
|
60
|
+
font-weight: var(--v-typography-h2-font-weight) !important;
|
|
61
|
+
line-height: var(--v-typography-h2-line-height) !important;
|
|
62
|
+
letter-spacing: var(--v-typography-h2-letter-spacing) !important;
|
|
63
|
+
margin-bottom: 0.5rem;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
h3 {
|
|
67
|
+
font-size: var(--v-typography-h3-font-size) !important;
|
|
68
|
+
font-weight: var(--v-typography-h3-font-weight) !important;
|
|
69
|
+
line-height: var(--v-typography-h3-line-height) !important;
|
|
70
|
+
letter-spacing: var(--v-typography-h3-letter-spacing) !important;
|
|
71
|
+
margin-bottom: 0.5rem;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
h4 {
|
|
75
|
+
font-size: var(--v-typography-h4-font-size) !important;
|
|
76
|
+
font-weight: var(--v-typography-h4-font-weight) !important;
|
|
77
|
+
line-height: var(--v-typography-h4-line-height) !important;
|
|
78
|
+
letter-spacing: var(--v-typography-h4-letter-spacing) !important;
|
|
79
|
+
margin-bottom: 0.5rem;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
h5 {
|
|
83
|
+
font-size: var(--v-typography-h5-font-size) !important;
|
|
84
|
+
font-weight: var(--v-typography-h5-font-weight) !important;
|
|
85
|
+
line-height: var(--v-typography-h5-line-height) !important;
|
|
86
|
+
letter-spacing: var(--v-typography-h5-letter-spacing) !important;
|
|
87
|
+
margin-bottom: 0.5rem;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
h6 {
|
|
91
|
+
font-size: var(--v-typography-h6-font-size) !important;
|
|
92
|
+
font-weight: var(--v-typography-h6-font-weight) !important;
|
|
93
|
+
line-height: var(--v-typography-h6-line-height) !important;
|
|
94
|
+
letter-spacing: var(--v-typography-h6-letter-spacing) !important;
|
|
95
|
+
margin-bottom: 0.5rem;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/* Body text */
|
|
99
|
+
.text-body-1 {
|
|
100
|
+
font-size: var(--v-typography-body1-font-size) !important;
|
|
101
|
+
font-weight: var(--v-typography-body1-font-weight) !important;
|
|
102
|
+
line-height: var(--v-typography-body1-line-height) !important;
|
|
103
|
+
letter-spacing: var(--v-typography-body1-letter-spacing) !important;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.text-body-2 {
|
|
107
|
+
font-size: var(--v-typography-body2-font-size) !important;
|
|
108
|
+
font-weight: var(--v-typography-body2-font-weight) !important;
|
|
109
|
+
line-height: var(--v-typography-body2-line-height) !important;
|
|
110
|
+
letter-spacing: var(--v-typography-body2-letter-spacing) !important;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/* Subtitle text */
|
|
114
|
+
.text-subtitle-1 {
|
|
115
|
+
font-size: var(--v-typography-subtitle1-font-size) !important;
|
|
116
|
+
font-weight: var(--v-typography-subtitle1-font-weight) !important;
|
|
117
|
+
line-height: var(--v-typography-subtitle1-line-height) !important;
|
|
118
|
+
letter-spacing: var(--v-typography-subtitle1-letter-spacing) !important;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.text-subtitle-2 {
|
|
122
|
+
font-size: var(--v-typography-subtitle2-font-size) !important;
|
|
123
|
+
font-weight: var(--v-typography-subtitle2-font-weight) !important;
|
|
124
|
+
line-height: var(--v-typography-subtitle2-line-height) !important;
|
|
125
|
+
letter-spacing: var(--v-typography-subtitle2-letter-spacing) !important;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/* Other typography */
|
|
129
|
+
.text-caption {
|
|
130
|
+
font-size: var(--v-typography-caption-font-size) !important;
|
|
131
|
+
font-weight: var(--v-typography-caption-font-weight) !important;
|
|
132
|
+
line-height: var(--v-typography-caption-line-height) !important;
|
|
133
|
+
letter-spacing: var(--v-typography-caption-letter-spacing) !important;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
.text-overline {
|
|
137
|
+
font-size: var(--v-typography-overline-font-size) !important;
|
|
138
|
+
font-weight: var(--v-typography-overline-font-weight) !important;
|
|
139
|
+
line-height: var(--v-typography-overline-line-height) !important;
|
|
140
|
+
letter-spacing: var(--v-typography-overline-letter-spacing) !important;
|
|
141
|
+
text-transform: var(--v-typography-overline-text-transform, uppercase) !important;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
/* Display text */
|
|
145
|
+
.text-display-1 {
|
|
146
|
+
font-size: var(--v-typography-display1-font-size) !important;
|
|
147
|
+
font-weight: var(--v-typography-display1-font-weight) !important;
|
|
148
|
+
line-height: var(--v-typography-display1-line-height) !important;
|
|
149
|
+
letter-spacing: var(--v-typography-display1-letter-spacing) !important;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
.text-display-2 {
|
|
153
|
+
font-size: var(--v-typography-display2-font-size) !important;
|
|
154
|
+
font-weight: var(--v-typography-display2-font-weight) !important;
|
|
155
|
+
line-height: var(--v-typography-display2-line-height) !important;
|
|
156
|
+
letter-spacing: var(--v-typography-display2-letter-spacing) !important;
|
|
157
|
+
}
|
|
158
|
+
}
|
package/src/assets/settings.scss
CHANGED
|
@@ -26,6 +26,13 @@
|
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
+
// Common table styles
|
|
30
|
+
.v-data-table thead th .v-data-table-header__content {
|
|
31
|
+
opacity: 0.65;
|
|
32
|
+
font-size: 0.875rem;
|
|
33
|
+
font-weight: 700 !important;
|
|
34
|
+
}
|
|
35
|
+
|
|
29
36
|
.v-data-table-progress {
|
|
30
37
|
.v-progress-linear {
|
|
31
38
|
height: 4px !important;
|
|
@@ -170,7 +170,7 @@
|
|
|
170
170
|
})
|
|
171
171
|
|
|
172
172
|
const isRequired = computed(() => {
|
|
173
|
-
if (props.disableErrorHandling
|
|
173
|
+
if (props.disableErrorHandling) return false
|
|
174
174
|
if (props.readonly) return
|
|
175
175
|
return (props.required || props.errorMessages.length > 0) && !selectedItem.value
|
|
176
176
|
})
|
|
@@ -218,13 +218,6 @@
|
|
|
218
218
|
}
|
|
219
219
|
window.addEventListener('scroll', updateListPosition, true)
|
|
220
220
|
window.addEventListener('resize', updateListPosition)
|
|
221
|
-
|
|
222
|
-
if (props.hideMessages) {
|
|
223
|
-
const message = document.querySelector('.v-input__details')
|
|
224
|
-
if (message) {
|
|
225
|
-
message.classList.add('d-sr-only')
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
221
|
})
|
|
229
222
|
|
|
230
223
|
onUnmounted(() => {
|
|
@@ -253,11 +246,12 @@
|
|
|
253
246
|
:aria-label="labelWithAsterisk"
|
|
254
247
|
:error-messages="props.disableErrorHandling ? [] : errorMessages"
|
|
255
248
|
:variant="outlined ? 'outlined' : 'underlined'"
|
|
256
|
-
:rules="isRequired && !props.disableErrorHandling
|
|
249
|
+
:rules="isRequired && !props.disableErrorHandling ? ['Le champ est requis.'] : []"
|
|
257
250
|
:display-asterisk="displayAsterisk"
|
|
258
251
|
:bg-color="props.bgColor"
|
|
259
252
|
:density="props.density"
|
|
260
253
|
readonly
|
|
254
|
+
:hide-details="props.hideMessages"
|
|
261
255
|
class="sy-select"
|
|
262
256
|
:width="calculatedWidth"
|
|
263
257
|
:style="hasError ? { minWidth: `${labelWidth + 18}px`} : {minWidth: `${labelWidth}px`}"
|
|
@@ -50,12 +50,14 @@ describe('SySelect.vue', () => {
|
|
|
50
50
|
it('renders error messages when provided', () => {
|
|
51
51
|
const errorMessages = ['Error 1']
|
|
52
52
|
const wrapper = mount(SySelect, {
|
|
53
|
-
props: { errorMessages },
|
|
53
|
+
props: { errorMessages, hideMessages: false },
|
|
54
54
|
global: {
|
|
55
55
|
plugins: [vuetify],
|
|
56
56
|
},
|
|
57
57
|
})
|
|
58
|
-
|
|
58
|
+
const message = wrapper.find('.v-messages__message')
|
|
59
|
+
expect(message.exists()).toBe(true)
|
|
60
|
+
expect(message.text()).toContain('Error 1')
|
|
59
61
|
})
|
|
60
62
|
|
|
61
63
|
it('does not render error messages when not provided', () => {
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import {Meta, Canvas, Controls, Source} from '@storybook/blocks';
|
|
2
|
+
import * as DatePickerStories from "./ComplexDatePicker.stories.ts";
|
|
3
|
+
|
|
4
|
+
<Meta of={DatePickerStories}/>
|
|
5
|
+
|
|
6
|
+
# DatePicker - Mode combiné
|
|
7
|
+
|
|
8
|
+
Le DatePicker en mode combiné (`useCombinedMode: true`) permet d'utiliser à la fois le calendrier interactif et la saisie manuelle avec formatage automatique.
|
|
9
|
+
|
|
10
|
+
## Description
|
|
11
|
+
|
|
12
|
+
Cette variante du DatePicker est particulièrement utile lorsque :
|
|
13
|
+
- Vous souhaitez offrir plusieurs méthodes de saisie de date aux utilisateurs
|
|
14
|
+
- Vous avez besoin du formatage automatique intelligent des dates pendant la saisie
|
|
15
|
+
- Vous voulez conserver l'interaction avec le calendrier pour une meilleure expérience utilisateur
|
|
16
|
+
|
|
17
|
+
Le formatage automatique intelligent ajoute les séparateurs (/, -, etc.) pendant la saisie en fonction du format spécifié.
|
|
18
|
+
|
|
19
|
+
<Canvas story={{height: '550px'}} of={DatePickerStories.Default}/>
|
|
20
|
+
|
|
21
|
+
## Propriétés spécifiques
|
|
22
|
+
|
|
23
|
+
Propriétés applicables pour le mode combiné :
|
|
24
|
+
|
|
25
|
+
<Controls of={DatePickerStories.Default}/>
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
# Fonctionnalités spécifiques
|
|
29
|
+
|
|
30
|
+
## Formatage automatique des dates
|
|
31
|
+
|
|
32
|
+
Le composant ComplexDatePicker offre un formatage automatique intelligent des dates pendant la saisie. Les séparateurs sont automatiquement ajoutés lors de la saisie des chiffres, en s'adaptant au format spécifié (DD/MM/YYYY, MM/DD/YYYY, YYYY-MM-DD, etc.).
|
|
33
|
+
|
|
34
|
+
<Canvas of={DatePickerStories.AutoFormattingInput}/>
|
|
35
|
+
|
|
36
|
+
## Désactivation de l'interaction avec le calendrier
|
|
37
|
+
|
|
38
|
+
La propriété `disablePickerInteraction` permet d'utiliser le champ de saisie avec formatage automatique sans que le calendrier n'apparaisse au clic sur l'input ou sur l'icône. Cette option est utile pour les cas où on souhaite uniquement la saisie manuelle.
|
|
39
|
+
|
|
40
|
+
<Canvas of={DatePickerStories.DisablePickerInteraction}/>
|
|
41
|
+
|
|
42
|
+
## Formats de date personnalisés
|
|
43
|
+
|
|
44
|
+
Le composant supporte différents formats de date et détecte automatiquement le séparateur utilisé dans le format (/, -, ., etc.) pour l'appliquer lors de la saisie.
|
|
45
|
+
|
|
46
|
+
<Canvas of={DatePickerStories.CustomDateFormat}/>
|
|
47
|
+
|
|
48
|
+
## Mode lecture seule
|
|
49
|
+
|
|
50
|
+
Le composant peut être configuré en mode lecture seule, ce qui empêche toute modification de la valeur.
|
|
51
|
+
|
|
52
|
+
<Canvas of={DatePickerStories.ReadonlyMode}/>
|
|
53
|
+
|
|
54
|
+
## Plages de dates
|
|
55
|
+
|
|
56
|
+
Le composant permet la sélection de plages de dates avec validation automatique.
|
|
57
|
+
|
|
58
|
+
<Canvas of={DatePickerStories.DateRange}/>
|
|
59
|
+
|
|
60
|
+
### DatePicker avec période personnalisée
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
<div
|
|
64
|
+
style={{
|
|
65
|
+
border: '2px solid #FF0000',
|
|
66
|
+
padding: '1rem',
|
|
67
|
+
borderRadius: '4px',
|
|
68
|
+
marginBottom: '1rem',
|
|
69
|
+
}}
|
|
70
|
+
>
|
|
71
|
+
<strong>Note importante</strong>
|
|
72
|
+
<ul>
|
|
73
|
+
<li>La prop <code>period</code> permet de définir une période de dates valides. Les dates en dehors de cette période ne seront pas visibles dans le calendrier.</li>
|
|
74
|
+
<li>Le format de la prop <code>period</code> est <code>MM/DD/YYYY</code>.</li>
|
|
75
|
+
</ul>
|
|
76
|
+
</div>
|
|
77
|
+
|
|
78
|
+
<Canvas of={DatePickerStories.WithCustomPeriod}/>
|
|
79
|
+
|
|
80
|
+
## Personnalisation des icônes
|
|
81
|
+
|
|
82
|
+
Vous pouvez personnaliser la position de l'icône du calendrier (au début ou à la fin du champ).
|
|
83
|
+
|
|
84
|
+
<Canvas of={DatePickerStories.WithCustomIcons}/>
|
|
85
|
+
|
|
86
|
+
## Activation par le champ de texte
|
|
87
|
+
|
|
88
|
+
La propriété `textFieldActivator` permet d'ouvrir le calendrier en cliquant n'importe où sur le champ de texte.
|
|
89
|
+
|
|
90
|
+
<Canvas of={DatePickerStories.WithTextFieldActivator}/>
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
# Validation et règles personnalisées
|
|
94
|
+
|
|
95
|
+
Le composant prend en charge des règles de validation personnalisées pour vérifier les dates saisies.
|
|
96
|
+
|
|
97
|
+
<Canvas of={DatePickerStories.WithValidation}/>
|
|
98
|
+
|
|
99
|
+
## Formats de retour différents
|
|
100
|
+
|
|
101
|
+
Vous pouvez spécifier un format différent pour la valeur de retour avec la propriété `dateFormatReturn`.
|
|
102
|
+
|
|
103
|
+
<Canvas of={DatePickerStories.WithDateFormatReturn}/>
|
|
104
|
+
|
|
105
|
+
## Intégration dans un formulaire
|
|
106
|
+
|
|
107
|
+
Le composant s'intègre facilement dans un formulaire avec validation à la soumission.
|
|
108
|
+
|
|
109
|
+
<Canvas of={DatePickerStories.WithFormSubmission}/>
|
|
110
|
+
|
|
111
|
+
# Méthodes exposées
|
|
112
|
+
|
|
113
|
+
Le composant expose plusieurs méthodes qui peuvent être utilisées via une référence :
|
|
114
|
+
|
|
115
|
+
### validateOnSubmit
|
|
116
|
+
- **Description** : Valide le champ lors de la soumission d'un formulaire
|
|
117
|
+
- **Retour** : `boolean` - Indique si la validation a réussi
|
|
118
|
+
|
|
119
|
+
### clearValidation
|
|
120
|
+
- **Description** : Efface les messages de validation
|
|
121
|
+
|
|
122
|
+
### validateDates
|
|
123
|
+
- **Description** : Valide les dates sélectionnées
|
|
124
|
+
|
|
125
|
+
### openDatePicker
|
|
126
|
+
- **Description** : Ouvre le calendrier programmatiquement
|
|
127
|
+
|
|
128
|
+
### toggleDatePicker
|
|
129
|
+
- **Description** : Bascule l'état d'ouverture du calendrier
|
|
130
|
+
|
|
131
|
+
### Exemple d'utilisation
|
|
132
|
+
|
|
133
|
+
<Source
|
|
134
|
+
dark code={`
|
|
135
|
+
<script setup lang="ts">
|
|
136
|
+
import { ref } from 'vue'
|
|
137
|
+
import { DatePicker } from '@cnamts/synapse'
|
|
138
|
+
|
|
139
|
+
const date = ref('')
|
|
140
|
+
const datePicker = ref(null)
|
|
141
|
+
|
|
142
|
+
const submitForm = () => {
|
|
143
|
+
const isValid = datePicker.value.validateOnSubmit()
|
|
144
|
+
if (isValid) {
|
|
145
|
+
// Traitement du formulaire
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
</script>
|
|
149
|
+
|
|
150
|
+
<template>
|
|
151
|
+
<form @submit.prevent="submitForm">
|
|
152
|
+
<DatePicker
|
|
153
|
+
ref="datePicker"
|
|
154
|
+
v-model="date"
|
|
155
|
+
placeholder="Date requise"
|
|
156
|
+
format="DD/MM/YYYY"
|
|
157
|
+
useCombinedMode
|
|
158
|
+
required
|
|
159
|
+
/>
|
|
160
|
+
<button type="submit">Soumettre</button>
|
|
161
|
+
</form>
|
|
162
|
+
</template>
|
|
163
|
+
`}
|
|
164
|
+
/>
|
|
165
|
+
|
|
166
|
+
### Exemple avec période personnalisée
|
|
167
|
+
|
|
168
|
+
<Source
|
|
169
|
+
dark code={`
|
|
170
|
+
<script setup lang="ts">
|
|
171
|
+
import { ref } from 'vue'
|
|
172
|
+
import { DatePicker } from '@cnamts/synapse'
|
|
173
|
+
|
|
174
|
+
const date = ref('')
|
|
175
|
+
</script>
|
|
176
|
+
|
|
177
|
+
<template>
|
|
178
|
+
<DatePicker
|
|
179
|
+
v-model="date"
|
|
180
|
+
placeholder="Sélectionner une date (1995-2005)"
|
|
181
|
+
format="DD/MM/YYYY"
|
|
182
|
+
useCombinedMode
|
|
183
|
+
:period="{
|
|
184
|
+
min: '01/01/1995',
|
|
185
|
+
max: '31/12/2005'
|
|
186
|
+
}"
|
|
187
|
+
/>
|
|
188
|
+
</template>
|
|
189
|
+
`}
|
|
190
|
+
/>
|
|
191
|
+
|
|
192
|
+
# Événements
|
|
193
|
+
|
|
194
|
+
Le composant émet plusieurs événements :
|
|
195
|
+
|
|
196
|
+
### update:modelValue
|
|
197
|
+
- **Payload** : `string | string[]` - La nouvelle valeur du champ
|
|
198
|
+
|
|
199
|
+
### closed
|
|
200
|
+
- **Description** : Émis lorsque le calendrier est fermé
|
|
201
|
+
|
|
202
|
+
### focus
|
|
203
|
+
- **Description** : Émis lorsque le champ reçoit le focus
|
|
204
|
+
|
|
205
|
+
### blur
|
|
206
|
+
- **Description** : Émis lorsque le champ perd le focus
|
|
207
|
+
|
|
208
|
+
### input
|
|
209
|
+
- **Payload** : `string` - La valeur saisie dans le champ
|
|
210
|
+
|
|
211
|
+
### date-selected
|
|
212
|
+
- **Payload** : `Date | Date[] | null` - La date ou les dates sélectionnées
|