diff --git a/packages/synapse-bridge/CHANGELOG.md b/packages/synapse-bridge/CHANGELOG.md index c780a11cd0..d8be6d03e8 100644 --- a/packages/synapse-bridge/CHANGELOG.md +++ b/packages/synapse-bridge/CHANGELOG.md @@ -1,112 +1,111 @@ #### v1.4.8-alpha.0 -- Feat/readme update [`#3602`](https://github.com/assurance-maladie-digital/design-system/pull/3602) - +- Feat/readme update [`#3602`](https://github.com/assurance-maladie-digital/design-system/pull/3602) #### v1.4.7-alpha.0 -- add changelog [`#3600`](https://github.com/assurance-maladie-digital/design-system/pull/3600) -- Feature/add paste to date picker [`#3599`](https://github.com/assurance-maladie-digital/design-system/pull/3599) -- fix outlined style [`#3597`](https://github.com/assurance-maladie-digital/design-system/pull/3597) -- add forgotten components exports [`#3595`](https://github.com/assurance-maladie-digital/design-system/pull/3595) -- fix alertWrapper type [`#3593`](https://github.com/assurance-maladie-digital/design-system/pull/3593) -- fix chips [`#3590`](https://github.com/assurance-maladie-digital/design-system/pull/3590) -- fix forgotten type [`#3587`](https://github.com/assurance-maladie-digital/design-system/pull/3587) -- Bugfix/fix h1 h2 [`#3586`](https://github.com/assurance-maladie-digital/design-system/pull/3586) -- fix append icon color [`#3583`](https://github.com/assurance-maladie-digital/design-system/pull/3583) -- Feature/add ci on bridge [`#3571`](https://github.com/assurance-maladie-digital/design-system/pull/3571) -- fix sticky header [`#3570`](https://github.com/assurance-maladie-digital/design-system/pull/3570) -- Feat/some fixs [`#3569`](https://github.com/assurance-maladie-digital/design-system/pull/3569) -- add linter + prettier [`#3561`](https://github.com/assurance-maladie-digital/design-system/pull/3561) -- add custom message on error [`#3564`](https://github.com/assurance-maladie-digital/design-system/pull/3564) -- migrate filter module [`#3563`](https://github.com/assurance-maladie-digital/design-system/pull/3563) -- Form Builder v3 [`#3247`](https://github.com/assurance-maladie-digital/design-system/pull/3247) -- Add types export [`#3560`](https://github.com/assurance-maladie-digital/design-system/pull/3560) -- add missing type [`#3558`](https://github.com/assurance-maladie-digital/design-system/pull/3558) -- fix nierfield for the Corsican departments [`#3551`](https://github.com/assurance-maladie-digital/design-system/pull/3551) -- fix issue 3540 [`#3550`](https://github.com/assurance-maladie-digital/design-system/pull/3550) -- fix error DatePicker [`#3548`](https://github.com/assurance-maladie-digital/design-system/pull/3548) -- Fix/header fonts [`#3547`](https://github.com/assurance-maladie-digital/design-system/pull/3547) -- fix dark theme + style [`#3546`](https://github.com/assurance-maladie-digital/design-system/pull/3546) -- Allow to add class to the text field of the DatePicker compo… [`#3543`](https://github.com/assurance-maladie-digital/design-system/pull/3543) -- Update NirField component to emit correct model value [`#3535`](https://github.com/assurance-maladie-digital/design-system/pull/3535) -- FiltersSideBar v3 [`#3230`](https://github.com/assurance-maladie-digital/design-system/pull/3230) -- add inva font [`#3530`](https://github.com/assurance-maladie-digital/design-system/pull/3530) -- UploadWorkflow v3 [`#3217`](https://github.com/assurance-maladie-digital/design-system/pull/3217) -- FiltersInline v3 [`#3227`](https://github.com/assurance-maladie-digital/design-system/pull/3227) -- fix error on bad date [`#3524`](https://github.com/assurance-maladie-digital/design-system/pull/3524) -- fix imgs in headers [`#3519`](https://github.com/assurance-maladie-digital/design-system/pull/3519) -- fix icon with outlined props [`#3508`](https://github.com/assurance-maladie-digital/design-system/pull/3508) -- fix theme error on header [`#3517`](https://github.com/assurance-maladie-digital/design-system/pull/3517) -- fix link to images [`#3516`](https://github.com/assurance-maladie-digital/design-system/pull/3516) -- test export [`#3514`](https://github.com/assurance-maladie-digital/design-system/pull/3514) -- add export [`#3513`](https://github.com/assurance-maladie-digital/design-system/pull/3513) -- add forgotten rules exports [`#3512`](https://github.com/assurance-maladie-digital/design-system/pull/3512) -- add forgotten rules exports [`#3510`](https://github.com/assurance-maladie-digital/design-system/pull/3510) -- Feature/improve header loading [`#3507`](https://github.com/assurance-maladie-digital/design-system/pull/3507) -- Feature/period field [`#3506`](https://github.com/assurance-maladie-digital/design-system/pull/3506) -- Add DatePicker [`#3475`](https://github.com/assurance-maladie-digital/design-system/pull/3475) -- fix hasOwnProperty error [`#3503`](https://github.com/assurance-maladie-digital/design-system/pull/3503) -- fix les transitions [`#3501`](https://github.com/assurance-maladie-digital/design-system/pull/3501) -- ajout des règles de validations manquantes [`#3494`](https://github.com/assurance-maladie-digital/design-system/pull/3494) -- ➖bridge: Remove deprecated vsc extensions [`#3452`](https://github.com/assurance-maladie-digital/design-system/pull/3452) -- FileUpload + FilePreview v3 [`#3162`](https://github.com/assurance-maladie-digital/design-system/pull/3162) -- mettre la couleur du boutton en noir [`#3490`](https://github.com/assurance-maladie-digital/design-system/pull/3490) -- fix build warning [`#3488`](https://github.com/assurance-maladie-digital/design-system/pull/3488) -- 🐛bridge: Update PaginatedTable component to handle both old and new h… [`#3482`](https://github.com/assurance-maladie-digital/design-system/pull/3482) -- PaginatedTable v3 [`#3219`](https://github.com/assurance-maladie-digital/design-system/pull/3219) -- PasswordField v3 [`#3183`](https://github.com/assurance-maladie-digital/design-system/pull/3183) -- ✨ Add ExternalLink component [`#3160`](https://github.com/assurance-maladie-digital/design-system/pull/3160) -- CustomIcon [`#3158`](https://github.com/assurance-maladie-digital/design-system/pull/3158) -- DownloadBtn v3 [`#3151`](https://github.com/assurance-maladie-digital/design-system/pull/3151) -- Update Vue3 version [`#3480`](https://github.com/assurance-maladie-digital/design-system/pull/3480) -- SearchListField v3 [`#3204`](https://github.com/assurance-maladie-digital/design-system/pull/3204) -- FileList v3 [`#3159`](https://github.com/assurance-maladie-digital/design-system/pull/3159) -- TableToolbar v3 [`#3198`](https://github.com/assurance-maladie-digital/design-system/pull/3198) -- RangeField v3 [`#3210`](https://github.com/assurance-maladie-digital/design-system/pull/3210) -- NirField v3 [`#3181`](https://github.com/assurance-maladie-digital/design-system/pull/3181) -- add ratingPicker [`#3461`](https://github.com/assurance-maladie-digital/design-system/pull/3461) -- Fix/demo [`#3462`](https://github.com/assurance-maladie-digital/design-system/pull/3462) -- upgrade vuetify [`#3458`](https://github.com/assurance-maladie-digital/design-system/pull/3458) -- SelectBtnField v3 [`#3201`](https://github.com/assurance-maladie-digital/design-system/pull/3201) -- LangBtn v3 [`#3177`](https://github.com/assurance-maladie-digital/design-system/pull/3177) -- PhoneField v3 [`#3185`](https://github.com/assurance-maladie-digital/design-system/pull/3185) -- Bridge : fix ts errors on build [`#3446`](https://github.com/assurance-maladie-digital/design-system/pull/3446) -- Fix/rgaa bridge [`#3444`](https://github.com/assurance-maladie-digital/design-system/pull/3444) -- Fix/rgaa header bar bridge [`#3445`](https://github.com/assurance-maladie-digital/design-system/pull/3445) -- HeaderBar [`#3395`](https://github.com/assurance-maladie-digital/design-system/pull/3395) -- NotificationBar v3 [`#3206`](https://github.com/assurance-maladie-digital/design-system/pull/3206) -- AlertWrapper v3 [`#3167`](https://github.com/assurance-maladie-digital/design-system/pull/3167) -- DialogBox : fix overlay click [`#3430`](https://github.com/assurance-maladie-digital/design-system/pull/3430) -- ♻️ Port v2 changes to ErrorPage [`#3328`](https://github.com/assurance-maladie-digital/design-system/pull/3328) -- ✨ Add DialogBox [`#3153`](https://github.com/assurance-maladie-digital/design-system/pull/3153) -- Bridge: fix build errors [`#3407`](https://github.com/assurance-maladie-digital/design-system/pull/3407) -- Fix Skeleton build [`#3406`](https://github.com/assurance-maladie-digital/design-system/pull/3406) -- add missing components imports [`#3404`](https://github.com/assurance-maladie-digital/design-system/pull/3404) -- SubHeader v3 [`#3196`](https://github.com/assurance-maladie-digital/design-system/pull/3196) -- FooterBar v3 [`#3179`](https://github.com/assurance-maladie-digital/design-system/pull/3179) -- MaintenancePage v3 [`#3191`](https://github.com/assurance-maladie-digital/design-system/pull/3191) -- NotFoundPage v3 [`#3189`](https://github.com/assurance-maladie-digital/design-system/pull/3189) -- DataListGroup v3 [`#3170`](https://github.com/assurance-maladie-digital/design-system/pull/3170) -- UserMenuBtn v3 [`#3161`](https://github.com/assurance-maladie-digital/design-system/pull/3161) -- Logo + LogoBrandSection v3 [`#3163`](https://github.com/assurance-maladie-digital/design-system/pull/3163) -- Fix useDisplay use in components [`#3384`](https://github.com/assurance-maladie-digital/design-system/pull/3384) -- 🐛 Fix Vuetify component import [`#3383`](https://github.com/assurance-maladie-digital/design-system/pull/3383) -- ✨ Add CookiesPage component [`#3194`](https://github.com/assurance-maladie-digital/design-system/pull/3194) -- ✨ Add ErrorPage component [`#3186`](https://github.com/assurance-maladie-digital/design-system/pull/3186) -- ✨ Add CookieBanner component [`#3168`](https://github.com/assurance-maladie-digital/design-system/pull/3168) -- ✨ Add FooterWrapper component [`#3174`](https://github.com/assurance-maladie-digital/design-system/pull/3174) -- 💄 Configure Vuetify variables [`#3154`](https://github.com/assurance-maladie-digital/design-system/pull/3154) -- ✨ Add SkipLink component [`#3149`](https://github.com/assurance-maladie-digital/design-system/pull/3149) -- ✨ Add FranceConnectBtn component [`#3148`](https://github.com/assurance-maladie-digital/design-system/pull/3148) -- ✨ Add ContextualMenu component [`#3147`](https://github.com/assurance-maladie-digital/design-system/pull/3147) -- ✨ Add DataList component [`#3145`](https://github.com/assurance-maladie-digital/design-system/pull/3145) -- ✨ Add ChipList component [`#3144`](https://github.com/assurance-maladie-digital/design-system/pull/3144) -- 🔧 Setup packaging [`#3150`](https://github.com/assurance-maladie-digital/design-system/pull/3150) -- ✨ Add first components & setup unit tests [`#3088`](https://github.com/assurance-maladie-digital/design-system/pull/3088) -- 🔧 Add dummy CI config [`#3109`](https://github.com/assurance-maladie-digital/design-system/pull/3109) -- ✨ Add CopyBtn component [`#3074`](https://github.com/assurance-maladie-digital/design-system/pull/3074) -- 🎉 Init synapse-bridge [`#3073`](https://github.com/assurance-maladie-digital/design-system/pull/3073) -- redo VLayout on HeaderBar [`d37c0df`](https://github.com/assurance-maladie-digital/design-system/commit/d37c0df1b03e8c602d6f751d5338c58c73cb0da1) -- add body font [`5c1f63b`](https://github.com/assurance-maladie-digital/design-system/commit/5c1f63b42297113094ba009936dabaeac27378b5) -- fix build [`617554d`](https://github.com/assurance-maladie-digital/design-system/commit/617554dc6c984302353db0f1e2b1ea205dc4c7a7) +- add changelog [`#3600`](https://github.com/assurance-maladie-digital/design-system/pull/3600) +- Feature/add paste to date picker [`#3599`](https://github.com/assurance-maladie-digital/design-system/pull/3599) +- fix outlined style [`#3597`](https://github.com/assurance-maladie-digital/design-system/pull/3597) +- add forgotten components exports [`#3595`](https://github.com/assurance-maladie-digital/design-system/pull/3595) +- fix alertWrapper type [`#3593`](https://github.com/assurance-maladie-digital/design-system/pull/3593) +- fix chips [`#3590`](https://github.com/assurance-maladie-digital/design-system/pull/3590) +- fix forgotten type [`#3587`](https://github.com/assurance-maladie-digital/design-system/pull/3587) +- Bugfix/fix h1 h2 [`#3586`](https://github.com/assurance-maladie-digital/design-system/pull/3586) +- fix append icon color [`#3583`](https://github.com/assurance-maladie-digital/design-system/pull/3583) +- Feature/add ci on bridge [`#3571`](https://github.com/assurance-maladie-digital/design-system/pull/3571) +- fix sticky header [`#3570`](https://github.com/assurance-maladie-digital/design-system/pull/3570) +- Feat/some fixs [`#3569`](https://github.com/assurance-maladie-digital/design-system/pull/3569) +- add linter + prettier [`#3561`](https://github.com/assurance-maladie-digital/design-system/pull/3561) +- add custom message on error [`#3564`](https://github.com/assurance-maladie-digital/design-system/pull/3564) +- migrate filter module [`#3563`](https://github.com/assurance-maladie-digital/design-system/pull/3563) +- Form Builder v3 [`#3247`](https://github.com/assurance-maladie-digital/design-system/pull/3247) +- Add types export [`#3560`](https://github.com/assurance-maladie-digital/design-system/pull/3560) +- add missing type [`#3558`](https://github.com/assurance-maladie-digital/design-system/pull/3558) +- fix nierfield for the Corsican departments [`#3551`](https://github.com/assurance-maladie-digital/design-system/pull/3551) +- fix issue 3540 [`#3550`](https://github.com/assurance-maladie-digital/design-system/pull/3550) +- fix error DatePicker [`#3548`](https://github.com/assurance-maladie-digital/design-system/pull/3548) +- Fix/header fonts [`#3547`](https://github.com/assurance-maladie-digital/design-system/pull/3547) +- fix dark theme + style [`#3546`](https://github.com/assurance-maladie-digital/design-system/pull/3546) +- Allow to add class to the text field of the DatePicker compo… [`#3543`](https://github.com/assurance-maladie-digital/design-system/pull/3543) +- Update NirField component to emit correct model value [`#3535`](https://github.com/assurance-maladie-digital/design-system/pull/3535) +- FiltersSideBar v3 [`#3230`](https://github.com/assurance-maladie-digital/design-system/pull/3230) +- add inva font [`#3530`](https://github.com/assurance-maladie-digital/design-system/pull/3530) +- UploadWorkflow v3 [`#3217`](https://github.com/assurance-maladie-digital/design-system/pull/3217) +- FiltersInline v3 [`#3227`](https://github.com/assurance-maladie-digital/design-system/pull/3227) +- fix error on bad date [`#3524`](https://github.com/assurance-maladie-digital/design-system/pull/3524) +- fix imgs in headers [`#3519`](https://github.com/assurance-maladie-digital/design-system/pull/3519) +- fix icon with outlined props [`#3508`](https://github.com/assurance-maladie-digital/design-system/pull/3508) +- fix theme error on header [`#3517`](https://github.com/assurance-maladie-digital/design-system/pull/3517) +- fix link to images [`#3516`](https://github.com/assurance-maladie-digital/design-system/pull/3516) +- test export [`#3514`](https://github.com/assurance-maladie-digital/design-system/pull/3514) +- add export [`#3513`](https://github.com/assurance-maladie-digital/design-system/pull/3513) +- add forgotten rules exports [`#3512`](https://github.com/assurance-maladie-digital/design-system/pull/3512) +- add forgotten rules exports [`#3510`](https://github.com/assurance-maladie-digital/design-system/pull/3510) +- Feature/improve header loading [`#3507`](https://github.com/assurance-maladie-digital/design-system/pull/3507) +- Feature/period field [`#3506`](https://github.com/assurance-maladie-digital/design-system/pull/3506) +- Add DatePicker [`#3475`](https://github.com/assurance-maladie-digital/design-system/pull/3475) +- fix hasOwnProperty error [`#3503`](https://github.com/assurance-maladie-digital/design-system/pull/3503) +- fix les transitions [`#3501`](https://github.com/assurance-maladie-digital/design-system/pull/3501) +- ajout des règles de validations manquantes [`#3494`](https://github.com/assurance-maladie-digital/design-system/pull/3494) +- ➖bridge: Remove deprecated vsc extensions [`#3452`](https://github.com/assurance-maladie-digital/design-system/pull/3452) +- FileUpload + FilePreview v3 [`#3162`](https://github.com/assurance-maladie-digital/design-system/pull/3162) +- mettre la couleur du boutton en noir [`#3490`](https://github.com/assurance-maladie-digital/design-system/pull/3490) +- fix build warning [`#3488`](https://github.com/assurance-maladie-digital/design-system/pull/3488) +- 🐛bridge: Update PaginatedTable component to handle both old and new h… [`#3482`](https://github.com/assurance-maladie-digital/design-system/pull/3482) +- PaginatedTable v3 [`#3219`](https://github.com/assurance-maladie-digital/design-system/pull/3219) +- PasswordField v3 [`#3183`](https://github.com/assurance-maladie-digital/design-system/pull/3183) +- ✨ Add ExternalLink component [`#3160`](https://github.com/assurance-maladie-digital/design-system/pull/3160) +- CustomIcon [`#3158`](https://github.com/assurance-maladie-digital/design-system/pull/3158) +- DownloadBtn v3 [`#3151`](https://github.com/assurance-maladie-digital/design-system/pull/3151) +- Update Vue3 version [`#3480`](https://github.com/assurance-maladie-digital/design-system/pull/3480) +- SearchListField v3 [`#3204`](https://github.com/assurance-maladie-digital/design-system/pull/3204) +- FileList v3 [`#3159`](https://github.com/assurance-maladie-digital/design-system/pull/3159) +- TableToolbar v3 [`#3198`](https://github.com/assurance-maladie-digital/design-system/pull/3198) +- RangeField v3 [`#3210`](https://github.com/assurance-maladie-digital/design-system/pull/3210) +- NirField v3 [`#3181`](https://github.com/assurance-maladie-digital/design-system/pull/3181) +- add ratingPicker [`#3461`](https://github.com/assurance-maladie-digital/design-system/pull/3461) +- Fix/demo [`#3462`](https://github.com/assurance-maladie-digital/design-system/pull/3462) +- upgrade vuetify [`#3458`](https://github.com/assurance-maladie-digital/design-system/pull/3458) +- SelectBtnField v3 [`#3201`](https://github.com/assurance-maladie-digital/design-system/pull/3201) +- LangBtn v3 [`#3177`](https://github.com/assurance-maladie-digital/design-system/pull/3177) +- PhoneField v3 [`#3185`](https://github.com/assurance-maladie-digital/design-system/pull/3185) +- Bridge : fix ts errors on build [`#3446`](https://github.com/assurance-maladie-digital/design-system/pull/3446) +- Fix/rgaa bridge [`#3444`](https://github.com/assurance-maladie-digital/design-system/pull/3444) +- Fix/rgaa header bar bridge [`#3445`](https://github.com/assurance-maladie-digital/design-system/pull/3445) +- HeaderBar [`#3395`](https://github.com/assurance-maladie-digital/design-system/pull/3395) +- NotificationBar v3 [`#3206`](https://github.com/assurance-maladie-digital/design-system/pull/3206) +- AlertWrapper v3 [`#3167`](https://github.com/assurance-maladie-digital/design-system/pull/3167) +- DialogBox : fix overlay click [`#3430`](https://github.com/assurance-maladie-digital/design-system/pull/3430) +- ♻️ Port v2 changes to ErrorPage [`#3328`](https://github.com/assurance-maladie-digital/design-system/pull/3328) +- ✨ Add DialogBox [`#3153`](https://github.com/assurance-maladie-digital/design-system/pull/3153) +- Bridge: fix build errors [`#3407`](https://github.com/assurance-maladie-digital/design-system/pull/3407) +- Fix Skeleton build [`#3406`](https://github.com/assurance-maladie-digital/design-system/pull/3406) +- add missing components imports [`#3404`](https://github.com/assurance-maladie-digital/design-system/pull/3404) +- SubHeader v3 [`#3196`](https://github.com/assurance-maladie-digital/design-system/pull/3196) +- FooterBar v3 [`#3179`](https://github.com/assurance-maladie-digital/design-system/pull/3179) +- MaintenancePage v3 [`#3191`](https://github.com/assurance-maladie-digital/design-system/pull/3191) +- NotFoundPage v3 [`#3189`](https://github.com/assurance-maladie-digital/design-system/pull/3189) +- DataListGroup v3 [`#3170`](https://github.com/assurance-maladie-digital/design-system/pull/3170) +- UserMenuBtn v3 [`#3161`](https://github.com/assurance-maladie-digital/design-system/pull/3161) +- Logo + LogoBrandSection v3 [`#3163`](https://github.com/assurance-maladie-digital/design-system/pull/3163) +- Fix useDisplay use in components [`#3384`](https://github.com/assurance-maladie-digital/design-system/pull/3384) +- 🐛 Fix Vuetify component import [`#3383`](https://github.com/assurance-maladie-digital/design-system/pull/3383) +- ✨ Add CookiesPage component [`#3194`](https://github.com/assurance-maladie-digital/design-system/pull/3194) +- ✨ Add ErrorPage component [`#3186`](https://github.com/assurance-maladie-digital/design-system/pull/3186) +- ✨ Add CookieBanner component [`#3168`](https://github.com/assurance-maladie-digital/design-system/pull/3168) +- ✨ Add FooterWrapper component [`#3174`](https://github.com/assurance-maladie-digital/design-system/pull/3174) +- 💄 Configure Vuetify variables [`#3154`](https://github.com/assurance-maladie-digital/design-system/pull/3154) +- ✨ Add SkipLink component [`#3149`](https://github.com/assurance-maladie-digital/design-system/pull/3149) +- ✨ Add FranceConnectBtn component [`#3148`](https://github.com/assurance-maladie-digital/design-system/pull/3148) +- ✨ Add ContextualMenu component [`#3147`](https://github.com/assurance-maladie-digital/design-system/pull/3147) +- ✨ Add DataList component [`#3145`](https://github.com/assurance-maladie-digital/design-system/pull/3145) +- ✨ Add ChipList component [`#3144`](https://github.com/assurance-maladie-digital/design-system/pull/3144) +- 🔧 Setup packaging [`#3150`](https://github.com/assurance-maladie-digital/design-system/pull/3150) +- ✨ Add first components & setup unit tests [`#3088`](https://github.com/assurance-maladie-digital/design-system/pull/3088) +- 🔧 Add dummy CI config [`#3109`](https://github.com/assurance-maladie-digital/design-system/pull/3109) +- ✨ Add CopyBtn component [`#3074`](https://github.com/assurance-maladie-digital/design-system/pull/3074) +- 🎉 Init synapse-bridge [`#3073`](https://github.com/assurance-maladie-digital/design-system/pull/3073) +- redo VLayout on HeaderBar [`d37c0df`](https://github.com/assurance-maladie-digital/design-system/commit/d37c0df1b03e8c602d6f751d5338c58c73cb0da1) +- add body font [`5c1f63b`](https://github.com/assurance-maladie-digital/design-system/commit/5c1f63b42297113094ba009936dabaeac27378b5) +- fix build [`617554d`](https://github.com/assurance-maladie-digital/design-system/commit/617554dc6c984302353db0f1e2b1ea205dc4c7a7) diff --git a/packages/synapse-bridge/README.md b/packages/synapse-bridge/README.md index 4fa5a6832d..ec1a785f9f 100644 --- a/packages/synapse-bridge/README.md +++ b/packages/synapse-bridge/README.md @@ -15,30 +15,32 @@ Pour utiliser ce Design System, vous devez avoir au moins les versions suivantes ## Stack Technique -- Vue 3 -- Vuetify 3 -- Vue Router 4 -- Vuex 4 +- Vue 3 +- Vuetify 3 +- Vue Router 4 +- Vuex 4 ## Outils Inclus -- Typescript -- Axios -- Sass -- Vitest pour les tests unitaires +- Typescript +- Axios +- Sass +- Vitest pour les tests unitaires ## Installation et utilisation ### Starter kits Pour utiliser ce package, vous pouvez installer un des starter kits suivants : -- [Starter Kit Bridge](https://github.com/assurance-maladie-digital/starter-kit-vue-bridge/tree/dev) (projets en migration) -- [Starter Kit Synapse](https://github.com/assurance-maladie-digital/starter-kit-vue-bridge/tree/dev) (nouveaux projets) + +- [Starter Kit Bridge](https://github.com/assurance-maladie-digital/starter-kit-vue-bridge/tree/dev) (projets en migration) +- [Starter Kit Synapse](https://github.com/assurance-maladie-digital/starter-kit-vue-bridge/tree/dev) (nouveaux projets) ### Librairie uniquement Vous pouvez également utiliser ce package en tant que librairie de composants dans votre projet. Pour cela, vous pouvez l'installer via npm ou un autre gestionnaire de paquets : + ```bash npm i @cnamts/synapse-bridge ``` diff --git a/packages/synapse-bridge/dev/Playground.template.vue b/packages/synapse-bridge/dev/Playground.template.vue index 04d85e1bdb..94fac07dc2 100644 --- a/packages/synapse-bridge/dev/Playground.template.vue +++ b/packages/synapse-bridge/dev/Playground.template.vue @@ -1,3 +1,3 @@ diff --git a/packages/synapse-bridge/dev/main.ts b/packages/synapse-bridge/dev/main.ts index 6e4fdc04b4..9150bbb7a5 100644 --- a/packages/synapse-bridge/dev/main.ts +++ b/packages/synapse-bridge/dev/main.ts @@ -1,41 +1,41 @@ -import { createApp } from "vue"; -import { createStore } from "vuex"; +import { createApp } from 'vue' +import { createStore } from 'vuex' -import "vuetify/styles"; -import { createVuetify } from "vuetify"; -import { aliases, mdi } from "vuetify/iconsets/mdi-svg"; +import 'vuetify/styles' +import { createVuetify } from 'vuetify' +import { aliases, mdi } from 'vuetify/iconsets/mdi-svg' -import { colorTheme } from "@cnamts/design-tokens/src/colors"; -import Playground from "./Playground.vue"; -import { router } from "./router"; +import { colorTheme } from '@cnamts/design-tokens/src/colors' +import Playground from './Playground.vue' +import { router } from './router' -import { notification } from "@/modules/notification"; +import { notification } from '@/modules/notification' const vuetify = createVuetify({ - icons: { - defaultSet: "mdi", - aliases, - sets: { - mdi, - }, - }, - theme: { - defaultTheme: "light", - themes: { - light: { - colors: colorTheme, - }, - dark: { - colors: colorTheme, - }, - }, - }, -}); + icons: { + defaultSet: 'mdi', + aliases, + sets: { + mdi, + }, + }, + theme: { + defaultTheme: 'light', + themes: { + light: { + colors: colorTheme, + }, + dark: { + colors: colorTheme, + }, + }, + }, +}) const store = createStore({ - modules: { - notification, - }, -}); + modules: { + notification, + }, +}) -createApp(Playground).use(store).use(vuetify).use(router).mount("#app"); +createApp(Playground).use(store).use(vuetify).use(router).mount('#app') diff --git a/packages/synapse-bridge/dev/router.ts b/packages/synapse-bridge/dev/router.ts index 4e82b052c5..e6ec9bfdb9 100644 --- a/packages/synapse-bridge/dev/router.ts +++ b/packages/synapse-bridge/dev/router.ts @@ -1,12 +1,12 @@ -import { createRouter, createWebHistory } from "vue-router"; +import { createRouter, createWebHistory } from 'vue-router' export const router = createRouter({ - history: createWebHistory(), - routes: [ - { - name: "home", - path: "/", - component: () => import("./Playground.vue"), - }, - ], -}); + history: createWebHistory(), + routes: [ + { + name: 'home', + path: '/', + component: () => import('./Playground.vue'), + }, + ], +}) diff --git a/packages/synapse-bridge/eslint.config.js b/packages/synapse-bridge/eslint.config.js index 7ee3a41cb8..ad0360cdfe 100644 --- a/packages/synapse-bridge/eslint.config.js +++ b/packages/synapse-bridge/eslint.config.js @@ -1,49 +1,59 @@ -import a11y from "eslint-plugin-vuejs-accessibility"; -import antfu from "@antfu/eslint-config"; +import a11y from 'eslint-plugin-vuejs-accessibility' +import antfu from '@antfu/eslint-config' -export default antfu({ - plugins: { - "vuejs-accessibility": a11y, +export default antfu( + { + plugins: { + 'vuejs-accessibility': a11y, + }, + ignores: [ + 'src/elements/Logo/*', + 'src/elements/CustomIcon/mixins/themeIcon.ts', + 'src/assets/locales/*.json', + 'src/assets/locales/*.json/**', + 'public/**/*', + ], + rules: { + ...a11y.configs.recommended.rules, + 'ts/semi': 'off', + curly: ['error', 'all'], + 'no-console': 'error', + 'no-alert': 'off', + 'no-shadow': 'off', + 'vue/html-self-closing': 'off', + 'vue/no-template-shadow': 'off', + 'vue/custom-event-name-casing': 'off', + '@typescript-eslint/no-shadow': 'off', + '@typescript-eslint/explicit-module-boundary-types': 'off', + 'style/max-len': ['error', { code: 120, tabWidth: 4 }], + 'style/semi': ['error', 'always'], + 'style/indent': 'off', + 'style/quotes': ['error', 'double'], + 'style/no-tabs': 'off', + 'vuejs-accessibility/label-has-for': [ + 'error', + { required: { every: ['nesting'] } }, + ], + 'vuejs-accessibility/anchor-has-content': 'off', + }, }, - ignores: [ - "src/elements/Logo/*", - "src/elements/CustomIcon/mixins/themeIcon.ts", - "src/assets/locales/*.json", - "src/assets/locales/*.json/**", - "public/**/*", - ], - rules: { - ...a11y.configs.recommended.rules, - "ts/semi": "off", - "curly": ["error", "all"], - "no-console": "error", - "no-alert": "off", - "no-shadow": "off", - "vue/html-self-closing": "off", - "vue/no-template-shadow": "off", - "@typescript-eslint/no-shadow": "off", - "@typescript-eslint/explicit-module-boundary-types": "off", - "style/max-len": ["error", { code: 120, tabWidth: 4 }], - "style/semi": ["error", "always"], - "style/indent": "off", - "style/quotes": ["error", "double"], - "style/no-tabs": "off", - "vuejs-accessibility/label-has-for": ["error", { required: { every: ["nesting"] } }], - "vuejs-accessibility/anchor-has-content": "off", + { + ignores: ['public/**/*'], }, -}, { - ignores: ["public/**/*"], -}, { - files: ["**/*.json", "**/*.md", "**/*.spec.ts"], - ignores: ["public/**/*.json"], - rules: { - "style/max-len": ["error", { code: 600, tabWidth: 2 }], + { + files: ['**/*.json', '**/*.md', '**/*.spec.ts'], + ignores: ['public/**/*.json'], + rules: { + 'style/max-len': ['error', { code: 600, tabWidth: 2 }], + }, }, - -}, { - files: ["src/elements/FranceConnectBtn/FranceConnectBtn.vue", "src/elements/FilePreview/FilePreview.vue"], + { + files: [ + 'src/elements/FranceConnectBtn/FranceConnectBtn.vue', + 'src/elements/FilePreview/FilePreview.vue', + ], rules: { - "style/max-len": "off", + 'style/max-len': 'off', }, - - }); + } +) diff --git a/packages/synapse-bridge/package.json b/packages/synapse-bridge/package.json index afe859dee4..3416c49ea0 100644 --- a/packages/synapse-bridge/package.json +++ b/packages/synapse-bridge/package.json @@ -1,91 +1,91 @@ { - "name": "@cnamts/synapse-bridge", - "type": "module", - "version": "1.4.8-alpha.0", - "description": "Portage of our components to Vue 3 without breaking changes", - "author": { - "name": "CNAM", - "email": "digital_TL.cnam@assurance-maladie.fr" - }, - "license": "MIT", - "exports": { - ".": { - "import": "./dist/synapse-bridge.js", - "require": "./dist/synapse-bridge.umd.cjs" - }, - "./style.css": "./dist/style.css", - "./constants": "./src/constants/index.ts", - "./functions/*": "./src/functions/*/index.ts", - "./modules/*": "./src/modules/*/index.ts", - "./helpers/*": "./src/helpers/*/index.ts", - "./rules/*": "./src/rules/*/index.ts" - }, - "main": "./dist/synapse-bridge.umd.cjs", - "module": "./dist/synapse-bridge.js", - "types": "./dist/index.d.ts", - "files": [ - "dist", - "src" - ], - "scripts": { - "dev:setup": "tsx scripts/devSetup.ts", - "dev": "vite", - "test:unit": "vitest run", - "preview": "vite preview", - "analyze": "vite build --mode analyze", - "build": "vue-tsc && vite build", - "lint": "pnpm lint:eslint && pnpm lint:prettier", - "lint:eslint": "eslint . --ignore-pattern 'dist/*'", - "lint:prettier": "pnpm exec prettier . --write", - "lint:fix": "eslint . --fix && prettier --write --list-different .", - "generate:changelog": "auto-changelog -o CHANGELOG-TEMP.md -p --starting-date 2024-07-16" - }, - "peerDependencies": { - "vue": "^3.4.21", - "vuetify": "3.5.10", - "vuex": "^4.1.0" - }, - "dependencies": { - "@cnamts/design-tokens": "2.12.0", - "@vuepic/vue-datepicker": "^8.6.0", - "consola": "2.15.3" - }, - "devDependencies": { - "@antfu/eslint-config": "^2.23.2", - "@mdi/js": "7.2.96", - "@types/node": "18.11.9", - "@vitejs/plugin-vue": "4.3.4", - "@vitest/coverage-v8": "0.34.6", - "@vue/test-utils": "2.4.1", - "auto-changelog": "^2.4.0", - "axios": "^1.5.0", - "content-disposition-header": "^0.6.0", - "dayjs": "^1.8.0", - "deepmerge": "4.3.1", - "eslint": "^9.7.0", - "eslint-config-prettier": "^9.1.0", - "eslint-plugin-prettier": "^5.1.3", - "eslint-plugin-vuejs-accessibility": "^2.4.0", - "jest-serializer-vue": "3.1.0", - "jsdom": "22.1.0", - "languages": "^0.1.3", - "maska": "^2.1.11", - "prettier": "^3.3.2", - "resize-observer-polyfill": "1.5.1", - "rollup-plugin-visualizer": "5.9.2", - "sass": "1.67.0", - "sass-loader": "13.3.2", - "slugify": "^1.6.6", - "tsx": "3.13.0", - "typescript": "5.0.4", - "vite": "5.2.8", - "vite-plugin-dts": "3.6.0", - "vite-plugin-vuetify": "2.0.3", - "vitest": "0.34.6", - "vue-router": "4.2.5", - "vue-tsc": "1.8.11" - }, - "publishConfig": { - "access": "public" - } + "name": "@cnamts/synapse-bridge", + "type": "module", + "version": "1.4.8-alpha.0", + "description": "Portage of our components to Vue 3 without breaking changes", + "author": { + "name": "CNAM", + "email": "digital_TL.cnam@assurance-maladie.fr" + }, + "license": "MIT", + "exports": { + ".": { + "import": "./dist/synapse-bridge.js", + "require": "./dist/synapse-bridge.umd.cjs" + }, + "./style.css": "./dist/style.css", + "./constants": "./src/constants/index.ts", + "./functions/*": "./src/functions/*/index.ts", + "./modules/*": "./src/modules/*/index.ts", + "./helpers/*": "./src/helpers/*/index.ts", + "./rules/*": "./src/rules/*/index.ts" + }, + "main": "./dist/synapse-bridge.umd.cjs", + "module": "./dist/synapse-bridge.js", + "types": "./dist/index.d.ts", + "files": [ + "dist", + "src" + ], + "scripts": { + "dev:setup": "tsx scripts/devSetup.ts", + "dev": "vite", + "test:unit": "vitest run", + "preview": "vite preview", + "analyze": "vite build --mode analyze", + "build": "vue-tsc && vite build", + "lint": "pnpm lint:eslint && pnpm lint:prettier", + "lint:eslint": "eslint . --ignore-pattern 'dist/*'", + "lint:prettier": "pnpm exec prettier . --write", + "lint:fix": "eslint . --fix && prettier --write --list-different .", + "generate:changelog": "auto-changelog -o CHANGELOG-TEMP.md -p --starting-date 2024-07-16" + }, + "peerDependencies": { + "vue": "^3.4.21", + "vuetify": "3.5.10", + "vuex": "^4.1.0" + }, + "dependencies": { + "@cnamts/design-tokens": "2.12.0", + "@vuepic/vue-datepicker": "^8.6.0", + "consola": "2.15.3" + }, + "devDependencies": { + "@antfu/eslint-config": "^2.23.2", + "@mdi/js": "7.2.96", + "@types/node": "18.11.9", + "@vitejs/plugin-vue": "4.3.4", + "@vitest/coverage-v8": "0.34.6", + "@vue/test-utils": "2.4.1", + "auto-changelog": "^2.4.0", + "axios": "^1.5.0", + "content-disposition-header": "^0.6.0", + "dayjs": "^1.8.0", + "deepmerge": "4.3.1", + "eslint": "^9.7.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-prettier": "^5.1.3", + "eslint-plugin-vuejs-accessibility": "^2.4.0", + "jest-serializer-vue": "3.1.0", + "jsdom": "22.1.0", + "languages": "^0.1.3", + "maska": "^2.1.11", + "prettier": "^3.3.2", + "resize-observer-polyfill": "1.5.1", + "rollup-plugin-visualizer": "5.9.2", + "sass": "1.67.0", + "sass-loader": "13.3.2", + "slugify": "^1.6.6", + "tsx": "3.13.0", + "typescript": "5.0.4", + "vite": "5.2.8", + "vite-plugin-dts": "3.6.0", + "vite-plugin-vuetify": "2.0.3", + "vitest": "0.34.6", + "vue-router": "4.2.5", + "vue-tsc": "1.8.11" + }, + "publishConfig": { + "access": "public" + } } diff --git a/packages/synapse-bridge/prettier.config.js b/packages/synapse-bridge/prettier.config.js index 8e705aa29b..3e509ec5df 100644 --- a/packages/synapse-bridge/prettier.config.js +++ b/packages/synapse-bridge/prettier.config.js @@ -1,9 +1,9 @@ const config = { - trailingComma: "es5", - tabWidth: 4, - semi: false, - singleQuote: true, - htmlWhitespaceSensitivity: "ignore", -}; + trailingComma: 'es5', + tabWidth: 4, + semi: false, + singleQuote: true, + htmlWhitespaceSensitivity: 'ignore', +} -export default config; +export default config diff --git a/packages/synapse-bridge/scripts/devSetup.ts b/packages/synapse-bridge/scripts/devSetup.ts index ca554c7b48..edc3be85fb 100644 --- a/packages/synapse-bridge/scripts/devSetup.ts +++ b/packages/synapse-bridge/scripts/devSetup.ts @@ -1,18 +1,18 @@ -import { copyFile, existsSync } from "node:fs"; +import { copyFile, existsSync } from 'node:fs' function createPlayground(): void { - const devFolder = "./dev"; - const targetFile = `${devFolder}/Playground.vue`; + const devFolder = './dev' + const targetFile = `${devFolder}/Playground.vue` - if (existsSync(targetFile)) { - return; - } + if (existsSync(targetFile)) { + return + } - copyFile(`${devFolder}/Playground.template.vue`, targetFile, (error) => { - if (error) { - throw error; - } - }); + copyFile(`${devFolder}/Playground.template.vue`, targetFile, (error) => { + if (error) { + throw error + } + }) } -createPlayground(); +createPlayground() diff --git a/packages/synapse-bridge/src/constants/enums/StateEnum.ts b/packages/synapse-bridge/src/constants/enums/StateEnum.ts index a0b4f6981a..58e93ea053 100644 --- a/packages/synapse-bridge/src/constants/enums/StateEnum.ts +++ b/packages/synapse-bridge/src/constants/enums/StateEnum.ts @@ -1,14 +1,14 @@ export enum StateEnum { - IDLE = "idle", - PENDING = "pending", - REJECTED = "rejected", - RESOLVED = "resolved", + IDLE = 'idle', + PENDING = 'pending', + REJECTED = 'rejected', + RESOLVED = 'resolved', } /** @deprecated Use StateEnum instead */ export enum STATE_ENUM { - idle = "idle", - pending = "pending", - rejected = "rejected", - resolved = "resolved", + idle = 'idle', + pending = 'pending', + rejected = 'rejected', + resolved = 'resolved', } diff --git a/packages/synapse-bridge/src/constants/enums/ThemeEnum.ts b/packages/synapse-bridge/src/constants/enums/ThemeEnum.ts index 203417bff0..8c14fb8183 100644 --- a/packages/synapse-bridge/src/constants/enums/ThemeEnum.ts +++ b/packages/synapse-bridge/src/constants/enums/ThemeEnum.ts @@ -1,11 +1,11 @@ export enum ThemeEnum { - AMELI = "ameli", - AMELI_PRO = "ameli-pro", - CNAM = "cnam", - COMPTE_AMELI = "compte-ameli", - COMPTE_ENTREPRISE = "compte-entreprise", - DEFAULT = "default", - RISQUE_PRO = "risque-pro", + AMELI = 'ameli', + AMELI_PRO = 'ameli-pro', + CNAM = 'cnam', + COMPTE_AMELI = 'compte-ameli', + COMPTE_ENTREPRISE = 'compte-entreprise', + DEFAULT = 'default', + RISQUE_PRO = 'risque-pro', } -export const THEME_ENUM_VALUES = Object.values(ThemeEnum); +export const THEME_ENUM_VALUES = Object.values(ThemeEnum) diff --git a/packages/synapse-bridge/src/constants/index.ts b/packages/synapse-bridge/src/constants/index.ts index 5fca5aba68..209b1cd042 100644 --- a/packages/synapse-bridge/src/constants/index.ts +++ b/packages/synapse-bridge/src/constants/index.ts @@ -1,8 +1,8 @@ -import dayjs from "dayjs"; -import { formatDate } from "../functions/formatDate"; -import { StateEnum } from "./enums/StateEnum"; -import { THEME_ENUM_VALUES, ThemeEnum } from "./enums/ThemeEnum"; +import dayjs from 'dayjs' +import { formatDate } from '../functions/formatDate' +import { StateEnum } from './enums/StateEnum' +import { THEME_ENUM_VALUES, ThemeEnum } from './enums/ThemeEnum' -export const TODAY = formatDate(dayjs()); -export { StateEnum }; -export { ThemeEnum, THEME_ENUM_VALUES }; +export const TODAY = formatDate(dayjs()) +export { StateEnum } +export { ThemeEnum, THEME_ENUM_VALUES } diff --git a/packages/synapse-bridge/src/elements/BackBtn/BackBtn.vue b/packages/synapse-bridge/src/elements/BackBtn/BackBtn.vue index ef78bc105c..2e3b326f6b 100644 --- a/packages/synapse-bridge/src/elements/BackBtn/BackBtn.vue +++ b/packages/synapse-bridge/src/elements/BackBtn/BackBtn.vue @@ -1,57 +1,57 @@ ', - user_ps: '', - user: '', - arrow_down: '', - calendar: '', - helpon: '', - helpoff: ' path stroke-width="0" d="M23.35 12A11.31 11.31 0 0 0 12 .66 11.3 11.3 0 0 0 .66 12a11.31 11.31 0 0 0 19.36 8.02A11.3 11.3 0 0 0 23.35 12zm-2.86-8.49a11.96 11.96 0 0 1 0 16.98A11.97 11.97 0 0 1 0 12 11.97 11.97 0 0 1 12 0c3.31 0 6.31 1.34 8.49 3.51z"/>', - info: '', - warning: '', - separator: '', - delete: '', - arrow_right: '', - arrow_drop_down: '', - launch: '', - csv: '', - } as { [key: string]: string }, - } - }, - computed: { - themeIcon(): boolean { - return this.icon !== undefined - }, - }, - methods: { - getThemeIcon(): any { - if ( - this.icon !== undefined - && this.icons[this.icon] !== undefined - ) { - return this.icons[this.icon] - } - }, - }, + props: { + icon: { + type: String, + default: undefined, + }, + }, + data() { + return { + icons: { + digital: + '', + recap_check: + '', + user_ps: + '', + user: '', + arrow_down: + '', + calendar: + '', + helpon: '', + helpoff: + ' path stroke-width="0" d="M23.35 12A11.31 11.31 0 0 0 12 .66 11.3 11.3 0 0 0 .66 12a11.31 11.31 0 0 0 19.36 8.02A11.3 11.3 0 0 0 23.35 12zm-2.86-8.49a11.96 11.96 0 0 1 0 16.98A11.97 11.97 0 0 1 0 12 11.97 11.97 0 0 1 12 0c3.31 0 6.31 1.34 8.49 3.51z"/>', + info: '', + warning: + '', + separator: + '', + delete: '', + arrow_right: + '', + arrow_drop_down: + '', + launch: '', + csv: '', + } as { [key: string]: string }, + } + }, + computed: { + themeIcon(): boolean { + return this.icon !== undefined + }, + }, + methods: { + getThemeIcon(): any { + if ( + this.icon !== undefined && + this.icons[this.icon] !== undefined + ) { + return this.icons[this.icon] + } + }, + }, }) diff --git a/packages/synapse-bridge/src/elements/CustomIcon/tests/CustomIcon.spec.ts b/packages/synapse-bridge/src/elements/CustomIcon/tests/CustomIcon.spec.ts index a571bf2f9a..891b6f69a7 100644 --- a/packages/synapse-bridge/src/elements/CustomIcon/tests/CustomIcon.spec.ts +++ b/packages/synapse-bridge/src/elements/CustomIcon/tests/CustomIcon.spec.ts @@ -1,102 +1,102 @@ -import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; -import { mount } from "@vue/test-utils"; -import { vuetify } from "@tests/unit/setup"; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest' +import { mount } from '@vue/test-utils' +import { vuetify } from '@tests/unit/setup' -import CustomIcon from "../"; +import CustomIcon from '../' -describe("customIcon", () => { - let wrapper: any; +describe('customIcon', () => { + let wrapper: any - beforeEach(() => { - wrapper = mount(CustomIcon, { - global: { - plugins: [vuetify], - }, - }); - }); + beforeEach(() => { + wrapper = mount(CustomIcon, { + global: { + plugins: [vuetify], + }, + }) + }) - afterEach(() => { - vi.resetAllMocks(); - }); + afterEach(() => { + vi.resetAllMocks() + }) - it("renders correctly without icon", async () => { - await wrapper.setProps({ icon: undefined }); + it('renders correctly without icon', async () => { + await wrapper.setProps({ icon: undefined }) - expect(wrapper).toMatchSnapshot(); - }); + expect(wrapper).toMatchSnapshot() + }) - it("renders correctly with icon", async () => { - await wrapper.setProps({ icon: "digital" }); + it('renders correctly with icon', async () => { + await wrapper.setProps({ icon: 'digital' }) - expect(wrapper).toMatchSnapshot(); - }); + expect(wrapper).toMatchSnapshot() + }) - it("renders correctly with icon and size", async () => { - await wrapper.setProps({ icon: "digital", small: true }); + it('renders correctly with icon and size', async () => { + await wrapper.setProps({ icon: 'digital', small: true }) - expect(wrapper).toMatchSnapshot(); - }); + expect(wrapper).toMatchSnapshot() + }) - it("renders correctly with icon and color", async () => { - await wrapper.setProps({ icon: "digital", small: true }); + it('renders correctly with icon and color', async () => { + await wrapper.setProps({ icon: 'digital', small: true }) - expect(wrapper).toMatchSnapshot(); - }); + expect(wrapper).toMatchSnapshot() + }) - it("renders correctly with icon, size and color", async () => { - await wrapper.setProps({ icon: "digital", small: true, color: "red" }); + it('renders correctly with icon, size and color', async () => { + await wrapper.setProps({ icon: 'digital', small: true, color: 'red' }) - expect(wrapper).toMatchSnapshot(); - }); + expect(wrapper).toMatchSnapshot() + }) - it("getIcon is called", async () => { - const getIcon = vi.spyOn(wrapper.vm, "getIcon"); - await wrapper.setProps({ icon: "digital" }); + it('getIcon is called', async () => { + const getIcon = vi.spyOn(wrapper.vm, 'getIcon') + await wrapper.setProps({ icon: 'digital' }) - expect(getIcon).toHaveBeenCalled(); - }); + expect(getIcon).toHaveBeenCalled() + }) - it("getIcon is called with undefined icon", async () => { - const getIcon = vi.spyOn(wrapper.vm, "getIcon"); - await wrapper.setProps({ icon: undefined }); + it('getIcon is called with undefined icon', async () => { + const getIcon = vi.spyOn(wrapper.vm, 'getIcon') + await wrapper.setProps({ icon: undefined }) - expect(getIcon).toHaveReturnedWith(undefined); - }); + expect(getIcon).toHaveReturnedWith(undefined) + }) - it("getThemeIcon is called with digital icon", async () => { - const getThemeIcon = vi.spyOn(wrapper.vm, "getThemeIcon"); - await wrapper.setProps({ icon: "digital" }); + it('getThemeIcon is called with digital icon', async () => { + const getThemeIcon = vi.spyOn(wrapper.vm, 'getThemeIcon') + await wrapper.setProps({ icon: 'digital' }) - expect(getThemeIcon).toHaveBeenCalled(); - expect(wrapper.vm.getThemeIcon()).toBe( - "", - ); - }); + expect(getThemeIcon).toHaveBeenCalled() + expect(wrapper.vm.getThemeIcon()).toBe( + '' + ) + }) - it("getThemeIcon is not called with undefined icon", async () => { - const getThemeIcon = vi.spyOn(wrapper.vm, "getThemeIcon"); - await wrapper.setProps({ icon: undefined }); + it('getThemeIcon is not called with undefined icon', async () => { + const getThemeIcon = vi.spyOn(wrapper.vm, 'getThemeIcon') + await wrapper.setProps({ icon: undefined }) - expect(getThemeIcon).not.toHaveBeenCalled(); - }); + expect(getThemeIcon).not.toHaveBeenCalled() + }) - it("getThemeIcon is called with fake icon", async () => { - const getThemeIcon = vi.spyOn(wrapper.vm, "getThemeIcon"); - await wrapper.setProps({ icon: "test" }); + it('getThemeIcon is called with fake icon', async () => { + const getThemeIcon = vi.spyOn(wrapper.vm, 'getThemeIcon') + await wrapper.setProps({ icon: 'test' }) - expect(getThemeIcon).toHaveBeenCalled(); - expect(wrapper.vm.getThemeIcon()).toBe(undefined); - }); + expect(getThemeIcon).toHaveBeenCalled() + expect(wrapper.vm.getThemeIcon()).toBe(undefined) + }) - it("themeIcon is true with digital icon", async () => { - await wrapper.setProps({ icon: "digital" }); + it('themeIcon is true with digital icon', async () => { + await wrapper.setProps({ icon: 'digital' }) - expect(wrapper.vm.themeIcon).toBe(true); - }); + expect(wrapper.vm.themeIcon).toBe(true) + }) - it("themeIcon is false with undefined icon", async () => { - await wrapper.setProps({ icon: undefined }); + it('themeIcon is false with undefined icon', async () => { + await wrapper.setProps({ icon: undefined }) - expect(wrapper.vm.themeIcon).toBe(false); - }); -}); + expect(wrapper.vm.themeIcon).toBe(false) + }) +}) diff --git a/packages/synapse-bridge/src/elements/DataList/DataList.vue b/packages/synapse-bridge/src/elements/DataList/DataList.vue index 50dc92d146..d08177d06b 100644 --- a/packages/synapse-bridge/src/elements/DataList/DataList.vue +++ b/packages/synapse-bridge/src/elements/DataList/DataList.vue @@ -1,129 +1,129 @@ diff --git a/packages/synapse-bridge/src/templates/MaintenancePage/index.ts b/packages/synapse-bridge/src/templates/MaintenancePage/index.ts index 4040999f87..23d563fa8e 100644 --- a/packages/synapse-bridge/src/templates/MaintenancePage/index.ts +++ b/packages/synapse-bridge/src/templates/MaintenancePage/index.ts @@ -1,3 +1,3 @@ -import MaintenancePage from "./MaintenancePage.vue"; +import MaintenancePage from './MaintenancePage.vue' -export default MaintenancePage; +export default MaintenancePage diff --git a/packages/synapse-bridge/src/templates/MaintenancePage/locales.ts b/packages/synapse-bridge/src/templates/MaintenancePage/locales.ts index 2656668b2f..cb9ffb98ad 100644 --- a/packages/synapse-bridge/src/templates/MaintenancePage/locales.ts +++ b/packages/synapse-bridge/src/templates/MaintenancePage/locales.ts @@ -1,5 +1,5 @@ export const locales = { - pageTitle: "Maintenance en cours", - message: - "L’application n’est pas disponible pour le moment, veuillez nous excuser pour la gêne occasionnée.", -}; + pageTitle: 'Maintenance en cours', + message: + 'L’application n’est pas disponible pour le moment, veuillez nous excuser pour la gêne occasionnée.', +} diff --git a/packages/synapse-bridge/src/templates/MaintenancePage/tests/MaintenancePage.spec.ts b/packages/synapse-bridge/src/templates/MaintenancePage/tests/MaintenancePage.spec.ts index 4fec897c8c..9fa997cdf3 100644 --- a/packages/synapse-bridge/src/templates/MaintenancePage/tests/MaintenancePage.spec.ts +++ b/packages/synapse-bridge/src/templates/MaintenancePage/tests/MaintenancePage.spec.ts @@ -1,12 +1,12 @@ -import { describe, expect, it } from "vitest"; -import { shallowMount } from "@vue/test-utils"; +import { describe, expect, it } from 'vitest' +import { shallowMount } from '@vue/test-utils' -import MaintenancePage from "../"; +import MaintenancePage from '../' -describe("maintenancePage", () => { - it("renders correctly", () => { - const wrapper = shallowMount(MaintenancePage); +describe('maintenancePage', () => { + it('renders correctly', () => { + const wrapper = shallowMount(MaintenancePage) - expect(wrapper.html()).toMatchSnapshot(); - }); -}); + expect(wrapper.html()).toMatchSnapshot() + }) +}) diff --git a/packages/synapse-bridge/src/templates/NotFoundPage/NotFoundPage.vue b/packages/synapse-bridge/src/templates/NotFoundPage/NotFoundPage.vue index e190930630..71e6390177 100644 --- a/packages/synapse-bridge/src/templates/NotFoundPage/NotFoundPage.vue +++ b/packages/synapse-bridge/src/templates/NotFoundPage/NotFoundPage.vue @@ -1,76 +1,76 @@ diff --git a/packages/synapse-bridge/src/templates/NotFoundPage/index.ts b/packages/synapse-bridge/src/templates/NotFoundPage/index.ts index b4c6d71c66..fc290dd701 100644 --- a/packages/synapse-bridge/src/templates/NotFoundPage/index.ts +++ b/packages/synapse-bridge/src/templates/NotFoundPage/index.ts @@ -1,3 +1,3 @@ -import NotFoundPage from "./NotFoundPage.vue"; +import NotFoundPage from './NotFoundPage.vue' -export default NotFoundPage; +export default NotFoundPage diff --git a/packages/synapse-bridge/src/templates/NotFoundPage/locales.ts b/packages/synapse-bridge/src/templates/NotFoundPage/locales.ts index c0fb01bbac..476ad68f81 100644 --- a/packages/synapse-bridge/src/templates/NotFoundPage/locales.ts +++ b/packages/synapse-bridge/src/templates/NotFoundPage/locales.ts @@ -1,6 +1,6 @@ export const locales = { - code: "404", - pageTitle: "Page non trouvée", - message: "Cette page n’existe pas ou a été déplacée.", - supportIdMessage: "Votre identifiant de support est", -}; + code: '404', + pageTitle: 'Page non trouvée', + message: 'Cette page n’existe pas ou a été déplacée.', + supportIdMessage: 'Votre identifiant de support est', +} diff --git a/packages/synapse-bridge/src/templates/NotFoundPage/tests/NotFoundPage.spec.ts b/packages/synapse-bridge/src/templates/NotFoundPage/tests/NotFoundPage.spec.ts index 4e4a40ef72..93b5f1c92b 100644 --- a/packages/synapse-bridge/src/templates/NotFoundPage/tests/NotFoundPage.spec.ts +++ b/packages/synapse-bridge/src/templates/NotFoundPage/tests/NotFoundPage.spec.ts @@ -1,36 +1,36 @@ -import { describe, expect, it } from "vitest"; -import { mount } from "@vue/test-utils"; +import { describe, expect, it } from 'vitest' +import { mount } from '@vue/test-utils' -import { vuetify } from "@tests/unit/setup"; -import NotFoundPage from "../"; -import { locales } from "../locales"; +import { vuetify } from '@tests/unit/setup' +import NotFoundPage from '../' +import { locales } from '../locales' -describe("notFoundPage", () => { - it("renders correctly", () => { - const wrapper = mount(NotFoundPage, { - global: { - plugins: [vuetify], - }, - }); +describe('notFoundPage', () => { + it('renders correctly', () => { + const wrapper = mount(NotFoundPage, { + global: { + plugins: [vuetify], + }, + }) - expect(wrapper.text()).toContain(locales.code); - expect(wrapper.text()).toContain(locales.message); - expect(wrapper.html()).toMatchSnapshot(); - }); + expect(wrapper.text()).toContain(locales.code) + expect(wrapper.text()).toContain(locales.message) + expect(wrapper.html()).toMatchSnapshot() + }) - it("display the support ID if provided in the url", () => { - history.replaceState( - {}, - "", - "/not-found?support_id=1234567890123456789", - ); - const wrapper = mount(NotFoundPage, { - global: { - plugins: [vuetify], - }, - }); + it('display the support ID if provided in the url', () => { + history.replaceState( + {}, + '', + '/not-found?support_id=1234567890123456789' + ) + const wrapper = mount(NotFoundPage, { + global: { + plugins: [vuetify], + }, + }) - expect(wrapper.text()).toContain("1234 5678 9012 3456 789"); - expect(wrapper.html()).toMatchSnapshot(); - }); -}); + expect(wrapper.text()).toContain('1234 5678 9012 3456 789') + expect(wrapper.html()).toMatchSnapshot() + }) +}) diff --git a/packages/synapse-bridge/src/templates/index.ts b/packages/synapse-bridge/src/templates/index.ts index 3814c26fee..6a00c6a570 100644 --- a/packages/synapse-bridge/src/templates/index.ts +++ b/packages/synapse-bridge/src/templates/index.ts @@ -1,6 +1,6 @@ -export { default as CookiesPage } from "./CookiesPage"; -export { TypeEnum } from "./CookiesPage/CookiesInformation/TypeEnum"; -export { type CookiesPageItems } from "./CookiesPage/types"; -export { default as ErrorPage } from "./ErrorPage"; -export { default as MaintenancePage } from "./MaintenancePage"; -export { default as NotFoundPage } from "./NotFoundPage"; +export { default as CookiesPage } from './CookiesPage' +export { TypeEnum } from './CookiesPage/CookiesInformation/TypeEnum' +export { type CookiesPageItems } from './CookiesPage/types' +export { default as ErrorPage } from './ErrorPage' +export { default as MaintenancePage } from './MaintenancePage' +export { default as NotFoundPage } from './NotFoundPage' diff --git a/packages/synapse-bridge/src/types.d.ts b/packages/synapse-bridge/src/types.d.ts index 262f76ac53..54c6201df5 100644 --- a/packages/synapse-bridge/src/types.d.ts +++ b/packages/synapse-bridge/src/types.d.ts @@ -1,4 +1,4 @@ -import type { NavigationGuardNext } from "vue-router"; +import type { NavigationGuardNext } from 'vue-router' /** /** * Extend $refs, eg: @@ -6,32 +6,32 @@ import type { NavigationGuardNext } from "vue-router"; * myProp: MyType * }> */ -export type Refs> = Vue["$refs"] & T; +export type Refs> = Vue['$refs'] & T export interface IndexedObject { - [key: string]: Type + [key: string]: Type } -export type Next = NavigationGuardNext; +export type Next = NavigationGuardNext export interface Dimensions { - width: string - height: string + width: string + height: string } export interface VForm { - validate: () => Promise<{ - valid: boolean - errors?: IndexedObject - }> - reset: () => void - resetValidation: () => void + validate: () => Promise<{ + valid: boolean + errors?: IndexedObject + }> + reset: () => void + resetValidation: () => void } interface InputFacadeEventTarget extends EventTarget { - unmaskedValue: string + unmaskedValue: string } export interface InputFacadeEvent extends Event { - target: InputFacadeEventTarget + target: InputFacadeEventTarget } diff --git a/packages/synapse-bridge/src/types/languages.d.ts b/packages/synapse-bridge/src/types/languages.d.ts index 6dc12cb63e..d163aa749a 100644 --- a/packages/synapse-bridge/src/types/languages.d.ts +++ b/packages/synapse-bridge/src/types/languages.d.ts @@ -1,6 +1,6 @@ -declare module "languages" { - import type { Language } from "./types.d.ts"; +declare module 'languages' { + import type { Language } from './types.d.ts' - export function getLanguageInfo(langCode: string): Language; - export function getAllLanguageCode(): string[]; + export function getLanguageInfo(langCode: string): Language + export function getAllLanguageCode(): string[] } diff --git a/packages/synapse-bridge/tests/unit/setup.ts b/packages/synapse-bridge/tests/unit/setup.ts index 4654b55780..4054fe1928 100644 --- a/packages/synapse-bridge/tests/unit/setup.ts +++ b/packages/synapse-bridge/tests/unit/setup.ts @@ -1,32 +1,32 @@ -import vueSnapshotSerializer from "jest-serializer-vue"; -import { expect } from "vitest"; +import vueSnapshotSerializer from 'jest-serializer-vue' +import { expect } from 'vitest' -import { createVuetify } from "vuetify"; -import * as components from "vuetify/components"; -import * as directives from "vuetify/directives"; +import { createVuetify } from 'vuetify' +import * as components from 'vuetify/components' +import * as directives from 'vuetify/directives' -import Vuex from "vuex"; -import { actions, mutations, state } from "@/modules/notification"; +import Vuex from 'vuex' +import { actions, mutations, state } from '@/modules/notification' -expect.addSnapshotSerializer(vueSnapshotSerializer); +expect.addSnapshotSerializer(vueSnapshotSerializer) export const vuetify = createVuetify({ - components, - directives, -}); + components, + directives, +}) export function createNotificationStore() { - return new Vuex.Store({ - modules: { - notification: { - namespaced: true, - state, - actions, - mutations, - }, - }, - }); + return new Vuex.Store({ + modules: { + notification: { + namespaced: true, + state, + actions, + mutations, + }, + }, + }) } // eslint-disable-next-line ts/no-require-imports -globalThis.ResizeObserver = require("resize-observer-polyfill"); +globalThis.ResizeObserver = require('resize-observer-polyfill') diff --git a/packages/synapse-bridge/tsconfig.json b/packages/synapse-bridge/tsconfig.json index 28b858a734..91c1c79561 100644 --- a/packages/synapse-bridge/tsconfig.json +++ b/packages/synapse-bridge/tsconfig.json @@ -1,28 +1,28 @@ { - "extends": "../../tsconfig.json", - "compilerOptions": { - "target": "ES2020", - "lib": ["ES2020", "DOM", "DOM.Iterable"], - "useDefineForClassFields": true, - "module": "ESNext", - "moduleResolution": "node", - "paths": { - "@/*": ["./src/*"], - "@tests/*": ["./tests/*"] - }, - "resolveJsonModule": true, - "typeRoots": ["./types"], - "allowImportingTsExtensions": true, - "allowJs": true, - "noEmit": true, - "allowSyntheticDefaultImports": true, - "esModuleInterop": true, - "isolatedModules": true - }, - "references": [ - { - "path": "./tsconfig.node.json" - } - ], - "include": ["dev/**/*.ts", "dev/**/*.vue", "src/**/*.ts", "src/**/*.vue"] + "extends": "../../tsconfig.json", + "compilerOptions": { + "target": "ES2020", + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "useDefineForClassFields": true, + "module": "ESNext", + "moduleResolution": "node", + "paths": { + "@/*": ["./src/*"], + "@tests/*": ["./tests/*"] + }, + "resolveJsonModule": true, + "typeRoots": ["./types"], + "allowImportingTsExtensions": true, + "allowJs": true, + "noEmit": true, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "isolatedModules": true + }, + "references": [ + { + "path": "./tsconfig.node.json" + } + ], + "include": ["dev/**/*.ts", "dev/**/*.vue", "src/**/*.ts", "src/**/*.vue"] } diff --git a/packages/synapse-bridge/tsconfig.node.json b/packages/synapse-bridge/tsconfig.node.json index 29d024bde3..b457bec18a 100644 --- a/packages/synapse-bridge/tsconfig.node.json +++ b/packages/synapse-bridge/tsconfig.node.json @@ -1,10 +1,10 @@ { - "compilerOptions": { - "composite": true, - "module": "ESNext", - "moduleResolution": "bundler", - "types": ["node"], - "allowSyntheticDefaultImports": true - }, - "include": ["vite.config.ts"] + "compilerOptions": { + "composite": true, + "module": "ESNext", + "moduleResolution": "bundler", + "types": ["node"], + "allowSyntheticDefaultImports": true + }, + "include": ["vite.config.ts"] } diff --git a/packages/synapse-bridge/vite.config.ts b/packages/synapse-bridge/vite.config.ts index 0501602a57..90a7807087 100644 --- a/packages/synapse-bridge/vite.config.ts +++ b/packages/synapse-bridge/vite.config.ts @@ -1,123 +1,123 @@ -import { resolve } from "node:path"; -import { URL, fileURLToPath } from "node:url"; -import { type Plugin, defineConfig } from "vite"; -import vue from "@vitejs/plugin-vue"; -import vuetify, { transformAssetUrls } from "vite-plugin-vuetify"; -import dts from "vite-plugin-dts"; -import { visualizer } from "rollup-plugin-visualizer"; +import { resolve } from 'node:path' +import { URL, fileURLToPath } from 'node:url' +import { type Plugin, defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' +import vuetify, { transformAssetUrls } from 'vite-plugin-vuetify' +import dts from 'vite-plugin-dts' +import { visualizer } from 'rollup-plugin-visualizer' function generateVuetifyGlobals() { - const components = [ - "VForm", - "VBtn", - "VIcon", - "VChip", - "VMenu", - "VRadioGroup", - "VRadio", - "VTable", - "VDataTable", - "VBtnToggle", - "VCheckbox", - "VSelect", - "VRating", - "VRangeSlider", - "VSnackbar", - "VTooltip", - "VTextField", - "VInput", - "VToolbar", - "VNavigationDrawer", - "VTabs", - "VLayout", - "VFooter", - "VAlert", - "VDivider", - "VSheet", - "VList", - "VGrid", - "VDialog", - "VCard", - "VSkeletonLoader", - "VBadge", - "VExpansionPanel", - "VAutocomplete", - "VSlider", - "VTextarea", - "transitions", - ]; + const components = [ + 'VForm', + 'VBtn', + 'VIcon', + 'VChip', + 'VMenu', + 'VRadioGroup', + 'VRadio', + 'VTable', + 'VDataTable', + 'VBtnToggle', + 'VCheckbox', + 'VSelect', + 'VRating', + 'VRangeSlider', + 'VSnackbar', + 'VTooltip', + 'VTextField', + 'VInput', + 'VToolbar', + 'VNavigationDrawer', + 'VTabs', + 'VLayout', + 'VFooter', + 'VAlert', + 'VDivider', + 'VSheet', + 'VList', + 'VGrid', + 'VDialog', + 'VCard', + 'VSkeletonLoader', + 'VBadge', + 'VExpansionPanel', + 'VAutocomplete', + 'VSlider', + 'VTextarea', + 'transitions', + ] - const globals = {}; + const globals = {} - for (const component of components) { - globals[`vuetify/lib/components/${component}/index.mjs`] = component; - } - globals["vuetify/components/VSkeletonLoader"] = "VSkeletonLoader"; - globals["vuetify/lib/directives/index.mjs"] = "vuetifyDirectives"; + for (const component of components) { + globals[`vuetify/lib/components/${component}/index.mjs`] = component + } + globals['vuetify/components/VSkeletonLoader'] = 'VSkeletonLoader' + globals['vuetify/lib/directives/index.mjs'] = 'vuetifyDirectives' - return globals; + return globals } export default defineConfig(({ mode }) => { - const config = { - plugins: [ - vue({ - template: { transformAssetUrls }, - }), - vuetify({ - autoImport: true, - styles: "sass", - }), - dts({ - rollupTypes: true, - }), - ], - define: { - __VUE_PROD_HYDRATION_MISMATCH_DETAILS__: false, - }, - resolve: { - alias: { - "@": fileURLToPath(new URL("./src", import.meta.url)), - "@tests": fileURLToPath(new URL("./tests", import.meta.url)), - }, - }, - build: { - lib: { - entry: resolve(__dirname, "src/main.ts"), - name: "SynapseBridge", - fileName: "synapse-bridge", - }, - rollupOptions: { - external: ["vue", /vuetify/], - output: { - globals: { - "vue": "Vue", - "vuetify": "Vuetify", - "vuetify/directives": "vuetifyDirectives", - "vuetify/lib/directives": "vuetifyDirectives", - ...generateVuetifyGlobals(), - }, - }, - }, - }, - }; + const config = { + plugins: [ + vue({ + template: { transformAssetUrls }, + }), + vuetify({ + autoImport: true, + styles: 'sass', + }), + dts({ + rollupTypes: true, + }), + ], + define: { + __VUE_PROD_HYDRATION_MISMATCH_DETAILS__: false, + }, + resolve: { + alias: { + '@': fileURLToPath(new URL('./src', import.meta.url)), + '@tests': fileURLToPath(new URL('./tests', import.meta.url)), + }, + }, + build: { + lib: { + entry: resolve(__dirname, 'src/main.ts'), + name: 'SynapseBridge', + fileName: 'synapse-bridge', + }, + rollupOptions: { + external: ['vue', /vuetify/], + output: { + globals: { + vue: 'Vue', + vuetify: 'Vuetify', + 'vuetify/directives': 'vuetifyDirectives', + 'vuetify/lib/directives': 'vuetifyDirectives', + ...generateVuetifyGlobals(), + }, + }, + }, + }, + } - if (mode === "development") { - config.plugins.push( - vuetify({ - styles: { - configFile: "src/styles/settings.scss", - }, - }) as unknown as Plugin, - ); - } + if (mode === 'development') { + config.plugins.push( + vuetify({ + styles: { + configFile: 'src/styles/settings.scss', + }, + }) as unknown as Plugin + ) + } - if (mode === "analyze") { - config.plugins.push( - visualizer({ - filename: "dist/stats.html", - }), - ); - } + if (mode === 'analyze') { + config.plugins.push( + visualizer({ + filename: 'dist/stats.html', + }) + ) + } - return config; -}); + return config +}) diff --git a/packages/synapse-bridge/vitest.config.ts b/packages/synapse-bridge/vitest.config.ts index 1eb376143b..817261ee3e 100644 --- a/packages/synapse-bridge/vitest.config.ts +++ b/packages/synapse-bridge/vitest.config.ts @@ -1,24 +1,24 @@ -import { defineConfig, mergeConfig } from "vitest/config"; -import viteConfig from "./vite.config"; +import { defineConfig, mergeConfig } from 'vitest/config' +import viteConfig from './vite.config' -export default defineConfig(configEnv => - mergeConfig( - viteConfig(configEnv), - defineConfig({ - test: { - environment: "jsdom", - coverage: { - enabled: true, - provider: "v8", - reportsDirectory: "./tests/unit/coverage", - }, - server: { - deps: { - inline: ["vuetify"], - }, - }, - setupFiles: ["./tests/unit/setup.ts"], - }, - }), - ), -); +export default defineConfig((configEnv) => + mergeConfig( + viteConfig(configEnv), + defineConfig({ + test: { + environment: 'jsdom', + coverage: { + enabled: true, + provider: 'v8', + reportsDirectory: './tests/unit/coverage', + }, + server: { + deps: { + inline: ['vuetify'], + }, + }, + setupFiles: ['./tests/unit/setup.ts'], + }, + }) + ) +)