Skip to content

Commit fc069ff

Browse files
authored
Merge pull request #1234 from dnum-mi/develop
Develop
2 parents 4c37428 + 1eacc5a commit fc069ff

28 files changed

+4533
-5142
lines changed

.claude/commands/guide.md

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# Guide du projet VueDsfr
2+
3+
Lis attentivement et suis les instructions contenues dans les fichiers suivants :
4+
5+
1. **Instructions générales de codage** : `.github/copilot-instructions.md`
6+
- Architecture et structure des fichiers
7+
- Workflow de développement
8+
- Patterns TypeScript et Vue.js
9+
- Conventions de test
10+
- Workflow GitHub (issues, branches, PR)
11+
- Qualité du code et commits
12+
13+
2. **Instructions spécifiques aux tâches** : `.github/copilot-tasks.instructions.md`
14+
- Tâches d'analyse de code
15+
- Création de composants et composables
16+
- Refactorisation
17+
- Génération de stories Storybook
18+
- Documentation VitePress
19+
- Tests et qualité
20+
21+
## Résumé des règles clés
22+
23+
### Vue.js & Composition API
24+
- TOUJOURS utiliser `<script setup lang="ts">`
25+
- Props & Emits avec types TypeScript
26+
- Props booléennes : ne pas utiliser `withDefaults` si valeur par défaut = `false`
27+
28+
### Workflow GitHub
29+
- **Branches** : `{numéro-issue}-{type}-{description-kebab-case}`
30+
- **Commits** : Format conventionnel (voir `.github/conventions-commits.md`)
31+
- **PR** : Toujours lier à une issue, base = `develop`
32+
33+
### TypeScript
34+
- Types explicites, éviter `any`
35+
- Interfaces pour les objets
36+
- Props avec définition par types
37+
38+
### Tests
39+
- Vitest pour tous les tests
40+
- Fichiers `.spec.ts` colocalisés
41+
- Pas de warnings dans la sortie
42+
43+
### Documentation
44+
- Français pour la documentation utilisateur
45+
- Stories Storybook au format CSF3
46+
- Typographie française : apostrophes `'` et espaces insécables
47+
48+
Applique systématiquement ces conventions dans toutes tes contributions au projet.

.github/copilot-instructions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ const props = withDefaults(defineProps<{
158158
size?: 'sm' | 'md' | 'lg'
159159
disabled?: boolean
160160
}>(), {
161-
size: 'md', // Valeur par défaut custom
161+
size: 'md', // -------- Valeur par défaut custom
162162
// disabled: false // Pas besoin, false par défaut
163163
})
164164
</script>

.github/workflows/publish-release-beta.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
- name: Install pnpm
2222
uses: pnpm/action-setup@v4
2323
with:
24-
version: 10.2.1
24+
version: 10.24.0
2525
- name: Install dependencies
2626
run: pnpm install --frozen-lockfile
2727
- name: Release

.github/workflows/publish-release-next.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
- name: Install pnpm
2222
uses: pnpm/action-setup@v4
2323
with:
24-
version: 10.2.1
24+
version: 10.24.0
2525
- name: Install dependencies
2626
run: pnpm install --frozen-lockfile
2727
- name: Release

.github/workflows/publish-release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
- name: Install pnpm
2222
uses: pnpm/action-setup@v4
2323
with:
24-
version: 10.2.1
24+
version: 10.24.0
2525
- name: Install dependencies
2626
run: pnpm install --frozen-lockfile
2727
- name: Release

.github/workflows/run-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
- name: Install pnpm
2828
uses: pnpm/action-setup@v4
2929
with:
30-
version: 10.2.1
30+
version: 10.24.0
3131
- name: Install dependencies
3232
run: pnpm install --frozen-lockfile
3333
- name: Lint (show only errors)

.npmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
@gouvminint:registry=https://registry.npmjs.com
22
//registry.npmjs.com/:_authToken=${NODE_AUTH_TOKEN}
33
always-auth=true
4-
legacy-peer-deps=true
54
access=public
5+
strict-peer-dependencies=false
66

demo-app/App.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -256,8 +256,8 @@ const ecosystemLinks = [
256256
title: 'Informations gouvernementales, nouvelle fenêtre',
257257
},
258258
{
259-
label: 'service-public.fr',
260-
href: 'https://service-public.fr',
259+
label: 'service-public.gouv.fr',
260+
href: 'https://service-public.gouv.fr',
261261
title: 'Informations et démarches administratives, nouvelle fenêtre',
262262
},
263263
{

eslint.config.js

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,19 @@
11
// For more info, see https://github.com/storybookjs/eslint-plugin-storybook#configuration-flat-config-format
22

33
import antfu from '@antfu/eslint-config'
4+
import importX from 'eslint-plugin-import-x'
45

56
export default antfu({
67
vue: true,
78
}, [
89
{
10+
plugins: {
11+
'import-x': importX,
12+
},
913
rules: {
1014
'test/prefer-lowercase-title': 'off',
1115
'sort-imports': 'off', // Should be 'error'
12-
'import/order': [
16+
'import-x/order': [
1317
'error',
1418
{
1519
'newlines-between': 'always',
@@ -33,7 +37,7 @@ export default antfu({
3337
'vue/quote-props': ['error', 'as-needed'], // Should be ['error', 'consistent-as-needed']
3438
'ts/consistent-type-definitions': 'off', // Should be 'on'
3539
'style/arrow-parens': 'off', // Should be ['error', 'as-needed']
36-
'style/operator-linebreak': ['error', 'after', { overrides: { '?': 'before', ':': 'before' } }],
40+
'style/operator-linebreak': ['error', 'after', { overrides: { '?': 'before', ':': 'before', '|': 'before', '&': 'before' } }],
3741
'style/max-statements-per-line': 'off', // Should be 'error'
3842
'vue/no-irregular-whitespace': 'warn',
3943
'no-irregular-whitespace': 'warn',

package.json

Lines changed: 57 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "@gouvminint/vue-dsfr",
33
"type": "module",
44
"version": "3.7.5",
5-
"packageManager": "pnpm@10.2.1",
5+
"packageManager": "pnpm@10.24.0",
66
"license": "MIT",
77
"repository": {
88
"type": "git",
@@ -86,77 +86,78 @@
8686
"vue-router": "^4.5.0"
8787
},
8888
"dependencies": {
89-
"@gouvfr/dsfr": "~1.13.0",
90-
"focus-trap": "^7.6.4",
91-
"focus-trap-vue": "^4.0.3",
92-
"vue": "^3.5.13",
93-
"vue-router": "^4.5.0"
89+
"@gouvfr/dsfr": "~1.14.2",
90+
"focus-trap": "^7.6.6",
91+
"focus-trap-vue": "^4.1.0",
92+
"vue": "^3.5.25",
93+
"vue-router": "^4.6.3"
9494
},
9595
"devDependencies": {
96-
"@antfu/eslint-config": "^4.1.1",
97-
"@chromatic-com/storybook": "^4.1.2",
98-
"@commitlint/cli": "^19.7.1",
99-
"@commitlint/config-conventional": "^19.7.1",
96+
"@antfu/eslint-config": "^4.19.0",
97+
"@chromatic-com/storybook": "^4.1.3",
98+
"@commitlint/cli": "^19.8.1",
99+
"@commitlint/config-conventional": "^19.8.1",
100100
"@iconify/vue": "^4.3.0",
101101
"@playwright/test": "1.49.1",
102102
"@semantic-release/changelog": "^6.0.3",
103-
"@semantic-release/commit-analyzer": "^13.0.0",
104-
"@semantic-release/github": "^11.0.0",
105-
"@semantic-release/npm": "^12.0.0",
106-
"@semantic-release/release-notes-generator": "^14.0.0",
107-
"@storybook/addon-a11y": "^10.0.2",
108-
"@storybook/addon-docs": "^10.0.2",
109-
"@storybook/addon-links": "^10.0.2",
110-
"@storybook/addon-themes": "^10.0.2",
111-
"@storybook/test-runner": "^0.24.1",
112-
"@storybook/vue3-vite": "^10.0.2",
113-
"@testing-library/dom": "^10.4.0",
114-
"@testing-library/jest-dom": "^6.6.3",
103+
"@semantic-release/commit-analyzer": "^13.0.1",
104+
"@semantic-release/github": "^11.0.6",
105+
"@semantic-release/npm": "^12.0.2",
106+
"@semantic-release/release-notes-generator": "^14.1.0",
107+
"@storybook/addon-a11y": "^10.1.0",
108+
"@storybook/addon-docs": "^10.1.0",
109+
"@storybook/addon-links": "^10.1.0",
110+
"@storybook/addon-themes": "^10.1.0",
111+
"@storybook/test-runner": "^0.24.2",
112+
"@storybook/vue3-vite": "^10.1.0",
113+
"@testing-library/dom": "^10.4.1",
114+
"@testing-library/jest-dom": "^6.9.1",
115115
"@testing-library/user-event": "^14.6.1",
116116
"@testing-library/vue": "^8.1.0",
117-
"@types/jsdom": "^21.1.7",
118-
"@types/node": "^22.13.1",
119-
"@vitejs/plugin-vue": "^5.2.1",
120-
"@vitejs/plugin-vue-jsx": "^4.1.1",
117+
"@types/jsdom": "^27.0.0",
118+
"@types/node": "^22.19.1",
119+
"@vitejs/plugin-vue": "^5.2.4",
120+
"@vitejs/plugin-vue-jsx": "^4.2.0",
121121
"@vue/test-utils": "^2.4.6",
122-
"@vue/tsconfig": "^0.7.0",
123-
"@vueuse/core": "^12.5.0",
124-
"@vueuse/shared": "^12.5.0",
125-
"@whyframe/core": "^0.1.12",
126-
"@whyframe/vue": "^0.1.7",
127-
"browserslist": "^4.24.4",
128-
"chalk": "^5.4.1",
122+
"@vue/tsconfig": "^0.8.1",
123+
"@vueuse/core": "^12.8.2",
124+
"@vueuse/shared": "^12.8.2",
125+
"@whyframe/core": "^0.1.14",
126+
"@whyframe/vue": "^0.1.9",
127+
"browserslist": "^4.28.0",
128+
"chalk": "^5.6.2",
129129
"commander": "^13.1.0",
130-
"commitlint": "^19.7.1",
131-
"cross-env": "^7.0.3",
132-
"eslint": "^9.20.0",
130+
"commitlint": "^19.8.1",
131+
"cross-env": "^10.1.0",
132+
"eslint": "^9.39.1",
133+
"eslint-plugin-import-x": "^4.16.1",
133134
"eslint-plugin-storybook": "10.0.2",
134-
"eslint-plugin-vue": "^9.32.0",
135-
"globby": "^14.1.0",
135+
"eslint-plugin-vue": "^9.33.0",
136+
"globby": "^16.0.0",
136137
"http-server": "^14.1.1",
137138
"husky": "^9.1.7",
138-
"inquirer": "^12.4.1",
139-
"jsdom": "^26.0.0",
140-
"lightningcss": "^1.29.1",
141-
"lint-staged": "^15.4.3",
139+
"inquirer": "^12.11.1",
140+
"jsdom": "^26.1.0",
141+
"lightningcss": "^1.30.2",
142+
"lint-staged": "^15.5.2",
142143
"npm-run-all": "^4.1.5",
143-
"p-debounce": "^4.0.0",
144-
"pnpm": "^10.2.1",
145-
"publint": "^0.3.4",
144+
"p-debounce": "^5.1.0",
145+
"pnpm": "^10.24.0",
146+
"publint": "^0.3.15",
146147
"regenerator-runtime": "^0.14.1",
147-
"rimraf": "^6.0.1",
148-
"semantic-release": "^24.0.0",
149-
"start-server-and-test": "^2.0.10",
150-
"storybook": "^10.0.2",
151-
"typescript": "~5.7.3",
152-
"unplugin-lightningcss": "^0.3.0",
153-
"vite": "^6.1.0",
154-
"vite-node": "^3.0.5",
148+
"rimraf": "^6.1.2",
149+
"semantic-release": "^24.2.9",
150+
"start-server-and-test": "^2.1.3",
151+
"storybook": "^10.1.0",
152+
"typescript": "~5.9.3",
153+
"unplugin-lightningcss": "^0.3.3",
154+
"vite": "^6.4.1",
155+
"vite-node": "^3.2.4",
155156
"vite-plugin-full-reload": "^1.2.0",
156-
"vitepress": "^1.6.3",
157-
"vitest": "^3.0.5",
157+
"vitepress": "^1.6.4",
158+
"vitest": "^4.0.14",
158159
"vue-demi": "^0.14.10",
159-
"vue-tsc": "^2.2.0"
160+
"vue-tsc": "^2.2.12"
160161
},
161162
"lint-staged": {
162163
"*.{vue,js,jsx,ts,tsx}": "run-s check-exports-ci lint --"

0 commit comments

Comments
 (0)