@designcrowd/fe-shared-lib 1.5.23 → 1.5.24-upgradepkg

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.
Files changed (160) hide show
  1. package/.claude/settings.local.json +20 -1
  2. package/.storybook/main.ts +5 -2
  3. package/.storybook-static/assets/Auth-DT64t5h-.css +1 -0
  4. package/.storybook-static/assets/Auth.stories-C6eXcTSu.js +490 -0
  5. package/.storybook-static/assets/AuthCrazyDomains.stories-DGvEoWCa.js +73 -0
  6. package/.storybook-static/assets/Button-5UzSGUF6.css +1 -0
  7. package/.storybook-static/assets/Button-DKdQT6Fq.js +1 -0
  8. package/.storybook-static/assets/ButtonGroup-DDPXuhxR.css +1 -0
  9. package/.storybook-static/assets/ButtonGroup.stories-DlrYMRSk.js +504 -0
  10. package/.storybook-static/assets/ButtonPrimary-Bu6bXb_c.css +1 -0
  11. package/.storybook-static/assets/ButtonPrimary-BvWW6Duz.js +1 -0
  12. package/.storybook-static/assets/Buttons.stories-CKmd6hkZ.js +761 -0
  13. package/.storybook-static/assets/ButtonsCrazyDomains.stories-DdEuOUrn.js +199 -0
  14. package/.storybook-static/assets/Checkbox.mixin-DkHpdvGa.js +1 -0
  15. package/.storybook-static/assets/Checkbox.stories-DPBUC2Mx.js +246 -0
  16. package/.storybook-static/assets/Checktile.stories-ByaFwplD.js +88 -0
  17. package/.storybook-static/assets/CollapsiblePanel.stories-Y6q3gP9j.js +56 -0
  18. package/.storybook-static/assets/ColorPicker.stories-DdxPUB_R.js +73 -0
  19. package/.storybook-static/assets/CopyToClipboardText.stories-J9qndWxd.js +32 -0
  20. package/.storybook-static/assets/Dropdown.stories-1zKPATii.js +159 -0
  21. package/.storybook-static/assets/DropdownItem-BV-BdThU.css +1 -0
  22. package/.storybook-static/assets/DropdownItem-DA6TdpDb.js +1 -0
  23. package/.storybook-static/assets/FormControl.mixin-DcEBwrV3.js +1 -0
  24. package/.storybook-static/assets/HashRouteModal.stories-BGxvqE22.js +60 -0
  25. package/.storybook-static/assets/HelloBar-CYEZR2kQ.js +1 -0
  26. package/.storybook-static/assets/HelloBar.stories-597Kxj0W.js +342 -0
  27. package/.storybook-static/assets/Icon-C17LFvsP.js +145 -0
  28. package/.storybook-static/assets/Icon.stories-B9iAmcTU.js +151 -0
  29. package/.storybook-static/assets/Icon.stories-CR5vT9H7.js +791 -0
  30. package/.storybook-static/assets/Loader-BWGoT_xC.js +1 -0
  31. package/.storybook-static/assets/LogoBusinessBrandColours-CExzox1Z.js +1 -0
  32. package/.storybook-static/assets/LogoBusinessBrandColours-CeAaMKke.css +1 -0
  33. package/.storybook-static/assets/LogoBusinessBrandColours.stories-kuxAH8B8.js +36 -0
  34. package/.storybook-static/assets/Masonry-C2MNiGg0.css +1 -0
  35. package/.storybook-static/assets/Masonry.stories-CTXJLQ_i.js +71 -0
  36. package/.storybook-static/assets/Modal-CGwEIF5R.css +1 -0
  37. package/.storybook-static/assets/Modal-CydTNprT.js +1 -0
  38. package/.storybook-static/assets/Modal.stories-DZiG5NGM.js +345 -0
  39. package/.storybook-static/assets/Notice.stories-ChOj8CWm.js +222 -0
  40. package/.storybook-static/assets/NumberStepper-Blffv09R.css +1 -0
  41. package/.storybook-static/assets/NumberStepper.stories-CVbKJ_oJ.js +64 -0
  42. package/.storybook-static/assets/PaymentConfigList-BpUMV6cp.css +1 -0
  43. package/.storybook-static/assets/PaymentConfigList.stories-DUD7OZBS.js +130 -0
  44. package/.storybook-static/assets/Picture-B8m1I9xN.js +1 -0
  45. package/.storybook-static/assets/Picture.stories-MMzybhJ6.js +119 -0
  46. package/.storybook-static/assets/Pill-DLXZ_TL8.js +1 -0
  47. package/.storybook-static/assets/Pill.stories-DCP7szJm.js +18 -0
  48. package/.storybook-static/assets/PillBar-os4mJV3M.css +1 -0
  49. package/.storybook-static/assets/PillBar.stories-Bry-zQ6f.js +41 -0
  50. package/.storybook-static/assets/Price-C4GZbDSa.js +1 -0
  51. package/.storybook-static/assets/Price.stories-CMHly9V0.js +337 -0
  52. package/.storybook-static/assets/PromoCard.stories-xsbFtADE.js +299 -0
  53. package/.storybook-static/assets/PublishBrandPageModal-Q9-mNG1q.css +1 -0
  54. package/.storybook-static/assets/PublishBrandPageModal.stories-C9XzW_1m.js +324 -0
  55. package/.storybook-static/assets/SearchBar.stories-DaIneOSz.js +12 -0
  56. package/.storybook-static/assets/Select-DnioWQmi.css +1 -0
  57. package/.storybook-static/assets/Select.stories-BmGYB4pw.js +108 -0
  58. package/.storybook-static/assets/SellDomainNameList.fixtures-LC6fjr_b.js +1 -0
  59. package/.storybook-static/assets/SellDomainNameListModal-DH6khE10.css +1 -0
  60. package/.storybook-static/assets/SellDomainNameListModal-ymtVclFP.js +1 -0
  61. package/.storybook-static/assets/SellDomainNameListModal.stories-DvGvylgx.js +71 -0
  62. package/.storybook-static/assets/SellDomainNameListSearchResult-Cpxq0jDA.css +1 -0
  63. package/.storybook-static/assets/SellDomainNameListSearchResult-D-1CrQyf.js +1 -0
  64. package/.storybook-static/assets/SellDomainNameSearchWithResults-bX--zu97.js +1 -0
  65. package/.storybook-static/assets/SellDomainNameSearchWithResults.stories-DRUJjSdH.js +37 -0
  66. package/.storybook-static/assets/SellDomainNameWidget.stories-CC3LX10s.js +36 -0
  67. package/.storybook-static/assets/SignIn-CPjf8_2O.css +1 -0
  68. package/.storybook-static/assets/SignIn-DI0DSDFe.js +1 -0
  69. package/.storybook-static/assets/Slider-Cog2FFdj.css +1 -0
  70. package/.storybook-static/assets/Slider.stories-B2KGwnJy.js +141 -0
  71. package/.storybook-static/assets/SparkleIcon.stories-Dk904hVE.js +547 -0
  72. package/.storybook-static/assets/StarRating-BtKh7pzm.css +1 -0
  73. package/.storybook-static/assets/StarRating.stories-d2mgOuo2.js +45 -0
  74. package/.storybook-static/assets/TabMenu.stories-Cg2yenqj.js +47 -0
  75. package/.storybook-static/assets/TextCopyField-B66NKTk_.js +1 -0
  76. package/.storybook-static/assets/TextCopyField.stories-B4_ZlfLU.js +47 -0
  77. package/.storybook-static/assets/TextInput-CMoUjT_5.js +1 -0
  78. package/.storybook-static/assets/TextInput.stories-oyyxxf3j.js +233 -0
  79. package/.storybook-static/assets/Textarea.stories-BvhZR6K2.js +207 -0
  80. package/.storybook-static/assets/Toggle.stories-yT5-rL2k.js +161 -0
  81. package/.storybook-static/assets/Tooltip-DyXIgFQH.css +1 -0
  82. package/.storybook-static/assets/Tooltip-ZukyujG5.js +1 -0
  83. package/.storybook-static/assets/Tooltip.stories-sJFylRS_.js +953 -0
  84. package/.storybook-static/assets/UploadYourLogoApplication-Dmw8QcH3.css +1 -0
  85. package/.storybook-static/assets/UploadYourLogoApplication.stories-C9AvzHO_.js +186 -0
  86. package/.storybook-static/assets/UploadYourLogoDropzone-B1ffcicv.js +24 -0
  87. package/.storybook-static/assets/UploadYourLogoDropzone-DQqACf-e.css +1 -0
  88. package/.storybook-static/assets/UploadYourLogoDropzone.stories-D1Dt2ord.js +55 -0
  89. package/.storybook-static/assets/UploadedLogoSearchResultCard.stories-D8oF1Yrx.js +79 -0
  90. package/.storybook-static/assets/WebsiteContextualUpgradeModal-8u1zOZrW.css +1 -0
  91. package/.storybook-static/assets/WebsiteContextualUpgradeModal.stories-mtcvWOAg.js +211 -0
  92. package/.storybook-static/assets/_commonjsHelpers-CE1G-McA.js +1 -0
  93. package/.storybook-static/assets/_plugin-vue_export-helper-DlAUqK2U.js +1 -0
  94. package/.storybook-static/assets/api-lSJGRrF2.js +1 -0
  95. package/.storybook-static/assets/axe-DrS73Vi2.js +20 -0
  96. package/.storybook-static/assets/brand-crowd-api.client-D45NKshX.js +1 -0
  97. package/.storybook-static/assets/bundled-translations-BoWhEDU_.js +1 -0
  98. package/.storybook-static/assets/bundled-translations.de-DE-C4lqla4O.js +1 -0
  99. package/.storybook-static/assets/bundled-translations.es-ES-BxMIllUH.js +1 -0
  100. package/.storybook-static/assets/bundled-translations.fr-CA-MxZpyz0w.js +1 -0
  101. package/.storybook-static/assets/bundled-translations.fr-FR-N7UPCZVr.js +1 -0
  102. package/.storybook-static/assets/bundled-translations.pt-BR-C8tscYuG.js +1 -0
  103. package/.storybook-static/assets/bundled-translations.pt-PT-Dszj5Xfa.js +1 -0
  104. package/.storybook-static/assets/carousel-BelyIYOK.css +1 -0
  105. package/.storybook-static/assets/carousel.stories-CJw3-Iy6.js +668 -0
  106. package/.storybook-static/assets/event-constants-CMO9VQVu.js +1 -0
  107. package/.storybook-static/assets/iframe-B3A6OXQU.js +1104 -0
  108. package/.storybook-static/assets/index-B-eiLVzF.js +7 -0
  109. package/.storybook-static/assets/index-QquxUozE.js +6 -0
  110. package/.storybook-static/assets/matchers-5TDFFDYO-HJu_DfWo.js +14 -0
  111. package/.storybook-static/assets/mediaQueryMixin-CISNqd93.js +1 -0
  112. package/.storybook-static/assets/preload-helper-PPVm8Dsz.js +1 -0
  113. package/.storybook-static/assets/tracking-ATsLLehC.js +1 -0
  114. package/.storybook-static/css/tailwind-brandCrowd.css +2508 -0
  115. package/.storybook-static/css/tailwind-brandPage.css +2188 -0
  116. package/.storybook-static/css/tailwind-crazyDomains.css +2508 -0
  117. package/.storybook-static/css/tailwind-designCom.css +2508 -0
  118. package/.storybook-static/css/tailwind-designCrowd.css +2508 -0
  119. package/.storybook-static/favicon-wrapper.svg +46 -0
  120. package/.storybook-static/favicon.svg +1 -0
  121. package/.storybook-static/iframe.html +713 -0
  122. package/.storybook-static/index.html +148 -0
  123. package/.storybook-static/index.json +1 -0
  124. package/.storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  125. package/.storybook-static/nunito-sans-bold.woff2 +0 -0
  126. package/.storybook-static/nunito-sans-italic.woff2 +0 -0
  127. package/.storybook-static/nunito-sans-regular.woff2 +0 -0
  128. package/.storybook-static/project.json +1 -0
  129. package/.storybook-static/sb-addons/a11y-1/manager-bundle.js +57 -0
  130. package/.storybook-static/sb-addons/links-2/manager-bundle.js +3 -0
  131. package/.storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +628 -0
  132. package/.storybook-static/sb-addons/themes-3/manager-bundle.js +3 -0
  133. package/.storybook-static/sb-common-assets/favicon-wrapper.svg +46 -0
  134. package/.storybook-static/sb-common-assets/favicon.svg +1 -0
  135. package/.storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  136. package/.storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  137. package/.storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  138. package/.storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  139. package/.storybook-static/sb-manager/globals-runtime.js +77935 -0
  140. package/.storybook-static/sb-manager/globals.js +24 -0
  141. package/.storybook-static/sb-manager/manager-stores.js +23 -0
  142. package/.storybook-static/sb-manager/runtime.js +20404 -0
  143. package/.storybook-static/vite-inject-mocker-entry.js +2 -0
  144. package/CLAUDE.md +2 -4
  145. package/Dockerfile +1 -1
  146. package/dist/css/tailwind-brandCrowd.css +2599 -0
  147. package/dist/css/tailwind-brandPage.css +2279 -0
  148. package/dist/css/tailwind-crazyDomains.css +2599 -0
  149. package/dist/css/tailwind-designCom.css +2599 -0
  150. package/dist/css/tailwind-designCrowd.css +2599 -0
  151. package/docs/plans/2026-01-30-upgrade-vite7-storybook10-design.md +177 -0
  152. package/docs/plans/2026-01-30-upgrade-vite7-storybook10.md +388 -0
  153. package/package.json +32 -36
  154. package/public/css/tailwind-brandCrowd.css +2508 -0
  155. package/public/css/tailwind-brandPage.css +2188 -0
  156. package/public/css/tailwind-crazyDomains.css +2508 -0
  157. package/public/css/tailwind-designCom.css +2508 -0
  158. package/public/css/tailwind-designCrowd.css +2508 -0
  159. package/src/experiences/components/WebsitesContextualUpgradeModal/WebsiteContextualUpgradeModal.vue +2 -2
  160. package/vite.config.ts +0 -4
@@ -0,0 +1,177 @@
1
+ # Upgrade Plan: Vite 7, Vue 3.5.26, Storybook 10
2
+
3
+ ## Overview
4
+
5
+ Upgrade the project's core tooling to current stable versions:
6
+
7
+ | Package | Current | Target |
8
+ |---------|---------|--------|
9
+ | Vue | 3.5.15 | 3.5.26 |
10
+ | Vite | 6.3.5 | 7.3.1 |
11
+ | Storybook | 9.0.4 | 10.1.11 |
12
+
13
+ **Approach:** Automated migration tools where available (Storybook), manual updates for Vite/Vue.
14
+
15
+ ---
16
+
17
+ ## Phase 1: Pre-Upgrade Preparation
18
+
19
+ ### Steps
20
+ 1. Verify current state works:
21
+ - `npm run build` - CSS builds
22
+ - `npm run storybook` - Storybook starts
23
+ - `npm run lint` - No lint errors
24
+
25
+ 2. Create upgrade branch:
26
+ ```bash
27
+ git checkout -b chore/upgrade-vite7-storybook10
28
+ ```
29
+
30
+ ---
31
+
32
+ ## Phase 2: Vite 6 → 7
33
+
34
+ ### Package Updates
35
+ ```json
36
+ {
37
+ "vite": "^7.3.1",
38
+ "@vitejs/plugin-vue": "^5.3.0"
39
+ }
40
+ ```
41
+
42
+ ### Packages to Modify
43
+
44
+ | Package | Action | Reason |
45
+ |---------|--------|--------|
46
+ | `vite-plugin-eslint` | Remove | Unmaintained, incompatible with Vite 7. ESLint runs via `npm run lint` |
47
+ | `vite-plugin-vue-devtools` | Update to ^7.7.2+ | Vite 7 compatibility |
48
+
49
+ ### Breaking Changes
50
+ - Sass legacy API removed (verify no deprecated Sass syntax)
51
+ - `splitVendorChunkPlugin` removed (check vite.config.ts)
52
+
53
+ ### Verification
54
+ ```bash
55
+ npm run build
56
+ npm run storybook
57
+ ```
58
+
59
+ ---
60
+
61
+ ## Phase 3: Vue 3.5.15 → 3.5.26
62
+
63
+ ### Package Updates
64
+ ```json
65
+ {
66
+ "vue": "^3.5.26"
67
+ }
68
+ ```
69
+
70
+ ### Related Packages
71
+ No changes needed:
72
+ - `vue-router` 4.5.0 - compatible
73
+ - `@vue/test-utils` 2.4.4 - compatible
74
+
75
+ ### Notes
76
+ Minor patch upgrade with no breaking changes. Includes bug fixes and performance improvements.
77
+
78
+ ### Verification
79
+ ```bash
80
+ npm run build
81
+ npm run storybook
82
+ ```
83
+
84
+ ---
85
+
86
+ ## Phase 4: Storybook 9 → 10
87
+
88
+ ### Automated Migration
89
+ ```bash
90
+ npx storybook@latest upgrade
91
+ ```
92
+
93
+ The CLI will:
94
+ - Detect breaking changes specific to this project
95
+ - Upgrade all @storybook/* packages
96
+ - Prompt for approval before changes
97
+ - Apply necessary codemods
98
+
99
+ ### Packages Updated
100
+ ```
101
+ storybook: ^10.1.11
102
+ @storybook/addon-a11y: ^10.1.11
103
+ @storybook/addon-links: ^10.1.11
104
+ @storybook/addon-themes: ^10.1.11
105
+ @storybook/vue3: ^10.1.11
106
+ @storybook/vue3-vite: ^10.1.11
107
+ eslint-plugin-storybook: ^0.12.0
108
+ ```
109
+
110
+ ### Breaking Changes
111
+ - ESM-only distribution (project already uses ES modules)
112
+ - Node 20.19+ required (current: 20.19.6 ✓)
113
+
114
+ ### Manual Cleanup
115
+ - Remove `overrides` block from package.json if no longer needed
116
+ - Verify `.storybook/main.js` config updated correctly
117
+
118
+ ### Verification
119
+ ```bash
120
+ npm run storybook
121
+ npm run build:storybook
122
+ ```
123
+
124
+ ---
125
+
126
+ ## Phase 5: Final Verification & Cleanup
127
+
128
+ ### Verification Checklist
129
+ - [ ] `npm run build` - CSS builds without errors
130
+ - [ ] `npm run storybook` - Dev server starts, components render
131
+ - [ ] `npm run build:storybook` - Static build succeeds
132
+ - [ ] `npm run lint` - No new lint errors
133
+
134
+ ### Cleanup
135
+ 1. Clean reinstall:
136
+ ```bash
137
+ rm -rf node_modules package-lock.json
138
+ npm install
139
+ ```
140
+
141
+ 2. Remove `overrides` block from package.json
142
+
143
+ 3. Check for deprecation warnings in console
144
+
145
+ ### Troubleshooting
146
+ - Storybook issues: `npx storybook doctor`
147
+ - Vite issues: Check vite.config.ts for deprecated options
148
+
149
+ ### Commit
150
+ ```bash
151
+ git add -A
152
+ git commit -m "chore: upgrade vite 7, vue 3.5.26, storybook 10"
153
+ ```
154
+
155
+ ---
156
+
157
+ ## Summary of All Package Changes
158
+
159
+ ### Dependencies
160
+ | Package | From | To |
161
+ |---------|------|-----|
162
+ | vite | 6.3.5 | ^7.3.1 |
163
+ | vue | 3.5.15 | ^3.5.26 |
164
+ | vite-plugin-vue-devtools | 7.7.0 | ^7.7.2 |
165
+ | vite-plugin-eslint | 1.8.1 | (remove) |
166
+
167
+ ### DevDependencies
168
+ | Package | From | To |
169
+ |---------|------|-----|
170
+ | @vitejs/plugin-vue | 5.2.4 | ^5.3.0 |
171
+ | storybook | 9.0.4 | ^10.1.11 |
172
+ | @storybook/addon-a11y | 9.0.4 | ^10.1.11 |
173
+ | @storybook/addon-links | 9.0.4 | ^10.1.11 |
174
+ | @storybook/addon-themes | 9.0.4 | ^10.1.11 |
175
+ | @storybook/vue3 | 9.0.4 | ^10.1.11 |
176
+ | @storybook/vue3-vite | 9.0.4 | ^10.1.11 |
177
+ | eslint-plugin-storybook | 0.8.0 | ^0.12.0 |
@@ -0,0 +1,388 @@
1
+ # Vite 7, Vue 3.5.26, Storybook 10 Upgrade Implementation Plan
2
+
3
+ > **For Claude:** REQUIRED SUB-SKILL: Use superpowers:executing-plans to implement this plan task-by-task.
4
+
5
+ **Goal:** Upgrade core tooling to current stable versions (Vite 7.3.1, Vue 3.5.26, Storybook 10.1.11).
6
+
7
+ **Architecture:** Sequential upgrade approach - Vite first (foundation), Vue second (minor patch), Storybook last (uses automated migration CLI). Each phase verified before proceeding.
8
+
9
+ **Tech Stack:** Vite 7, Vue 3.5, Storybook 10, TailwindCSS, TypeScript
10
+
11
+ ---
12
+
13
+ ## Task 1: Verify Current State Works
14
+
15
+ **Files:**
16
+ - None modified
17
+
18
+ **Step 1: Run CSS build**
19
+
20
+ Run: `npm run build`
21
+ Expected: Builds complete without errors
22
+
23
+ **Step 2: Run lint check**
24
+
25
+ Run: `npm run lint`
26
+ Expected: No lint errors (or only pre-existing ones)
27
+
28
+ **Step 3: Commit checkpoint (skip if nothing to commit)**
29
+
30
+ No commit needed - verification only.
31
+
32
+ ---
33
+
34
+ ## Task 2: Create Upgrade Branch
35
+
36
+ **Files:**
37
+ - None modified
38
+
39
+ **Step 1: Check current branch**
40
+
41
+ Run: `git branch --show-current`
42
+ Expected: Should show current branch (likely `upgrade` from design phase)
43
+
44
+ **Step 2: Create dedicated upgrade branch if not already on one**
45
+
46
+ Run: `git checkout -b chore/upgrade-vite7-storybook10 2>/dev/null || echo "Already on upgrade branch"`
47
+ Expected: Branch created or already exists
48
+
49
+ ---
50
+
51
+ ## Task 3: Update Vite to 7.x
52
+
53
+ **Files:**
54
+ - Modify: `package.json`
55
+
56
+ **Step 1: Update vite version in package.json**
57
+
58
+ Change in dependencies section:
59
+ ```json
60
+ "vite": "^7.3.1",
61
+ ```
62
+
63
+ **Step 2: Update @vitejs/plugin-vue in devDependencies**
64
+
65
+ Change:
66
+ ```json
67
+ "@vitejs/plugin-vue": "^5.3.0",
68
+ ```
69
+
70
+ **Step 3: Update vite-plugin-vue-devtools in dependencies**
71
+
72
+ Change:
73
+ ```json
74
+ "vite-plugin-vue-devtools": "^7.7.2",
75
+ ```
76
+
77
+ **Step 4: Do NOT run npm install yet**
78
+
79
+ We'll batch the dependency changes and install once.
80
+
81
+ ---
82
+
83
+ ## Task 4: Remove vite-plugin-eslint
84
+
85
+ **Files:**
86
+ - Modify: `package.json`
87
+ - Modify: `vite.config.ts`
88
+
89
+ **Step 1: Remove vite-plugin-eslint from package.json dependencies**
90
+
91
+ Remove this line from dependencies:
92
+ ```json
93
+ "vite-plugin-eslint": "1.8.1",
94
+ ```
95
+
96
+ **Step 2: Remove eslint import from vite.config.ts**
97
+
98
+ In `vite.config.ts`, remove line 3:
99
+ ```typescript
100
+ import eslint from 'vite-plugin-eslint';
101
+ ```
102
+
103
+ **Step 3: Remove eslint plugin usage from vite.config.ts**
104
+
105
+ In `vite.config.ts`, remove lines 26-28 from the plugins array:
106
+ ```typescript
107
+ eslint({
108
+ include: ['./src/client/**/*.[js|ts|vue]'],
109
+ }),
110
+ ```
111
+
112
+ The plugins array should become:
113
+ ```typescript
114
+ plugins: [
115
+ vue(),
116
+ process.env.NODE_ENV === 'development' ? vueDevTools() : false,
117
+ ],
118
+ ```
119
+
120
+ **Step 4: Do NOT commit yet**
121
+
122
+ Batch with other changes.
123
+
124
+ ---
125
+
126
+ ## Task 5: Update Vue to 3.5.26
127
+
128
+ **Files:**
129
+ - Modify: `package.json`
130
+
131
+ **Step 1: Update vue version in dependencies**
132
+
133
+ Change:
134
+ ```json
135
+ "vue": "^3.5.26",
136
+ ```
137
+
138
+ **Step 2: Do NOT run npm install yet**
139
+
140
+ Continue batching changes.
141
+
142
+ ---
143
+
144
+ ## Task 6: Install Updated Dependencies and Verify Vite/Vue
145
+
146
+ **Files:**
147
+ - Modify: `package-lock.json` (auto-generated)
148
+
149
+ **Step 1: Clean install dependencies**
150
+
151
+ Run: `rm -rf node_modules package-lock.json && npm install`
152
+ Expected: Installation completes without errors
153
+
154
+ **Step 2: Verify CSS build works**
155
+
156
+ Run: `npm run build`
157
+ Expected: CSS builds successfully
158
+
159
+ **Step 3: Commit Vite and Vue upgrades**
160
+
161
+ Run:
162
+ ```bash
163
+ git add package.json package-lock.json vite.config.ts
164
+ git commit -m "chore: upgrade vite 6→7, vue 3.5.15→3.5.26
165
+
166
+ - Update vite to ^7.3.1
167
+ - Update @vitejs/plugin-vue to ^5.3.0
168
+ - Update vite-plugin-vue-devtools to ^7.7.2
169
+ - Update vue to ^3.5.26
170
+ - Remove vite-plugin-eslint (unmaintained, incompatible with Vite 7)
171
+
172
+ Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>"
173
+ ```
174
+
175
+ ---
176
+
177
+ ## Task 7: Run Storybook Automated Migration
178
+
179
+ **Files:**
180
+ - Modify: `package.json` (automated)
181
+ - Modify: `.storybook/main.ts` (potentially)
182
+ - Modify: `package-lock.json` (auto-generated)
183
+
184
+ **Step 1: Run Storybook upgrade CLI**
185
+
186
+ Run: `npx storybook@latest upgrade`
187
+
188
+ This is interactive. Follow the prompts:
189
+ - Accept the upgrade when prompted
190
+ - Let it detect and apply codemods
191
+ - Review any breaking change warnings
192
+
193
+ Expected: CLI upgrades all @storybook/* packages to 10.x
194
+
195
+ **Step 2: Verify Storybook packages updated**
196
+
197
+ Run: `grep -E '"(storybook|@storybook)' package.json`
198
+ Expected: All versions should be ^10.x or compatible
199
+
200
+ **Step 3: Do NOT commit yet**
201
+
202
+ Need to verify and potentially fix issues first.
203
+
204
+ ---
205
+
206
+ ## Task 8: Update eslint-plugin-storybook
207
+
208
+ **Files:**
209
+ - Modify: `package.json`
210
+
211
+ **Step 1: Check if Storybook migration updated eslint-plugin-storybook**
212
+
213
+ Run: `grep eslint-plugin-storybook package.json`
214
+
215
+ If still 0.8.0, update manually:
216
+ ```json
217
+ "eslint-plugin-storybook": "^0.12.0",
218
+ ```
219
+
220
+ **Step 2: Run npm install if manual update was needed**
221
+
222
+ Run: `npm install`
223
+ Expected: Installation completes
224
+
225
+ ---
226
+
227
+ ## Task 9: Convert Storybook Config to ESM (if needed)
228
+
229
+ **Files:**
230
+ - Modify: `.storybook/main.ts`
231
+
232
+ **Step 1: Check if main.ts uses module.exports**
233
+
234
+ The current `.storybook/main.ts` uses `module.exports = {...}` which is CommonJS.
235
+ Storybook 10 is ESM-only, so convert to ESM syntax.
236
+
237
+ **Step 2: Update .storybook/main.ts to use ESM export**
238
+
239
+ Replace the entire file content with:
240
+ ```typescript
241
+ import { mergeConfig } from 'vite';
242
+ import type { StorybookConfig } from '@storybook/vue3-vite';
243
+
244
+ const config: StorybookConfig = {
245
+ stories: ['../src/**/components/**/*.stories.@(js|jsx|ts|tsx)'],
246
+ addons: [
247
+ '@storybook/addon-a11y',
248
+ '@storybook/addon-links',
249
+ {
250
+ name: '@storybook/addon-themes',
251
+ options: {
252
+ postCss: true,
253
+ },
254
+ },
255
+ ],
256
+ framework: {
257
+ name: '@storybook/vue3-vite',
258
+ options: {},
259
+ },
260
+ staticDirs: ['../public'],
261
+ docs: {
262
+ autodocs: true,
263
+ },
264
+ async viteFinal(config) {
265
+ const configExtension = {
266
+ optimizeDeps: {
267
+ include: ['deepmerge'],
268
+ },
269
+ build: {
270
+ commonjsOptions: {
271
+ include: [/node_modules/],
272
+ },
273
+ },
274
+ };
275
+ return mergeConfig(config, configExtension);
276
+ },
277
+ };
278
+
279
+ export default config;
280
+ ```
281
+
282
+ ---
283
+
284
+ ## Task 10: Remove package.json Overrides Block
285
+
286
+ **Files:**
287
+ - Modify: `package.json`
288
+
289
+ **Step 1: Remove the overrides block**
290
+
291
+ Remove these lines from package.json:
292
+ ```json
293
+ "overrides": {
294
+ "storybook": "$storybook"
295
+ }
296
+ ```
297
+
298
+ **Step 2: Run npm install to update lock file**
299
+
300
+ Run: `npm install`
301
+ Expected: Installation completes
302
+
303
+ ---
304
+
305
+ ## Task 11: Verify Storybook Works
306
+
307
+ **Files:**
308
+ - None modified
309
+
310
+ **Step 1: Start Storybook dev server**
311
+
312
+ Run: `npm run storybook`
313
+ Expected: Storybook starts on port 6006, no errors in console
314
+
315
+ **Step 2: Manually verify in browser**
316
+
317
+ Open http://localhost:6006 and:
318
+ - Verify sidebar shows stories
319
+ - Click on a few components to verify they render
320
+ - Check browser console for errors
321
+
322
+ **Step 3: Stop Storybook (Ctrl+C)**
323
+
324
+ **Step 4: Build static Storybook**
325
+
326
+ Run: `npm run build:storybook`
327
+ Expected: Static build completes without errors
328
+
329
+ ---
330
+
331
+ ## Task 12: Final Verification
332
+
333
+ **Files:**
334
+ - None modified
335
+
336
+ **Step 1: Run CSS build**
337
+
338
+ Run: `npm run build`
339
+ Expected: Builds complete
340
+
341
+ **Step 2: Run lint**
342
+
343
+ Run: `npm run lint`
344
+ Expected: No new lint errors (pre-existing ones are OK)
345
+
346
+ ---
347
+
348
+ ## Task 13: Commit Storybook Upgrade
349
+
350
+ **Files:**
351
+ - Commit all remaining changes
352
+
353
+ **Step 1: Stage all changes**
354
+
355
+ Run: `git add -A`
356
+
357
+ **Step 2: Review staged changes**
358
+
359
+ Run: `git diff --cached --stat`
360
+ Expected: Shows package.json, package-lock.json, .storybook/main.ts
361
+
362
+ **Step 3: Commit**
363
+
364
+ Run:
365
+ ```bash
366
+ git commit -m "chore: upgrade storybook 9→10
367
+
368
+ - Upgrade all @storybook/* packages to ^10.1.11
369
+ - Upgrade eslint-plugin-storybook to ^0.12.0
370
+ - Convert .storybook/main.ts to ESM syntax
371
+ - Remove package.json overrides block
372
+
373
+ Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>"
374
+ ```
375
+
376
+ ---
377
+
378
+ ## Summary
379
+
380
+ | Task | Description | Commit |
381
+ |------|-------------|--------|
382
+ | 1-2 | Verify current state, create branch | No |
383
+ | 3-6 | Vite 7 + Vue 3.5.26 upgrade | Yes |
384
+ | 7-10 | Storybook 10 migration | No |
385
+ | 11-12 | Verify everything works | No |
386
+ | 13 | Commit Storybook changes | Yes |
387
+
388
+ **Total commits:** 2 (plus the design doc commit already made)
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@designcrowd/fe-shared-lib",
3
- "version": "1.5.23",
3
+ "version": "1.5.24-upgradepkg",
4
4
  "scripts": {
5
5
  "start": "run-p storybook watch:translation",
6
6
  "build": "npm run build:css --production",
7
- "storybook": "export NODE_ENV=development && npm run storybook:css && npm run storybook:themes && storybook dev -p 6006 public",
7
+ "storybook": "export NODE_ENV=development && npm run storybook:css && npm run storybook:themes && storybook dev -p 6006",
8
8
  "build:css": "node ./tailwind.build.js",
9
9
  "build:storybook": "mkdir -p public && mkdir -p public/css && npm run storybook:css && storybook build -c .storybook -o .storybook-static && cp -R ./public/css .storybook-static/",
10
10
  "bundle-translation": "node ./src/bundleTranslation.js",
@@ -20,63 +20,62 @@
20
20
  },
21
21
  "dependencies": {
22
22
  "@nuxtjs/i18n": "9.5.4",
23
- "autoprefixer": "10.4.17",
24
- "axios": "1.6.7",
23
+ "autoprefixer": "10.4.24",
24
+ "axios": "1.13.4",
25
25
  "click-outside-vue3": "4.0.1",
26
- "core-js": "3.35.1",
26
+ "core-js": "3.48.0",
27
27
  "cropperjs": "1.6.1",
28
28
  "dropzone-vue3": "1.0.2",
29
- "fs-extra": "11.2.0",
30
- "i18next": "25.2.1",
29
+ "fs-extra": "11.3.3",
30
+ "i18next": "25.8.0",
31
31
  "lodash.throttle": "4.1.1",
32
- "postcss-loader": "8.1.0",
32
+ "postcss-loader": "8.2.0",
33
33
  "swiper": "11.0.6",
34
34
  "tailwindcss": "3.4.1",
35
- "vite": "6.3.5",
36
- "vite-plugin-eslint": "1.8.1",
37
- "vite-plugin-vue-devtools": "7.7.0",
38
- "vue": "3.5.15",
39
- "vue-color": "3.0.2",
35
+ "vite": "^7.3.1",
36
+ "vite-plugin-vue-devtools": "^7.7.2",
37
+ "vue": "^3.5.26",
38
+ "vue-color": "3.3.3",
40
39
  "vue-cropperjs": "5.0.0",
41
40
  "vue-observe-visibility": "1.0.0",
42
41
  "vue-router": "4.5.0",
43
42
  "yargs": "17.7.2"
44
43
  },
45
44
  "devDependencies": {
46
- "@storybook/addon-a11y": "9.0.4",
47
- "@storybook/addon-links": "9.0.4",
48
- "@storybook/addon-themes": "9.0.4",
49
- "@storybook/vue3": "9.0.4",
50
- "@storybook/vue3-vite": "9.0.4",
51
- "@vitejs/plugin-vue": "5.2.4",
52
- "@vue/cli-plugin-eslint": "5.0.8",
53
- "@vue/cli-service": "5.0.8",
45
+ "@storybook/addon-a11y": "10.2.3",
46
+ "@storybook/addon-links": "10.2.3",
47
+ "@storybook/addon-themes": "10.2.3",
48
+ "@storybook/vue3": "10.2.3",
49
+ "@storybook/vue3-vite": "10.2.3",
50
+ "@vitejs/plugin-vue": "^6.0.3",
51
+ "@vue/cli-plugin-eslint": "5.0.9",
52
+ "@vue/cli-service": "5.0.9",
54
53
  "@vue/eslint-config-airbnb": "8.0.0",
55
54
  "@vue/eslint-config-prettier": "9.0.0",
56
55
  "@vue/eslint-config-typescript": "12.0.0",
57
- "@vue/test-utils": "2.4.4",
56
+ "@vue/test-utils": "2.4.6",
58
57
  "axios-mock-adapter": "1.22.0",
59
58
  "css-loader": "6.10.0",
60
59
  "cssnano": "6.0.3",
61
60
  "eslint": "8.56.0",
62
- "eslint-plugin-prettier": "5.1.3",
63
- "eslint-plugin-storybook": "0.8.0",
61
+ "eslint-plugin-prettier": "5.5.5",
62
+ "eslint-plugin-storybook": "10.2.3",
64
63
  "eslint-plugin-vue": "9.21.1",
65
- "husky": "9.0.10",
64
+ "husky": "9.1.7",
66
65
  "lint-staged": "15.2.1",
67
- "nodemon": "3.0.3",
66
+ "nodemon": "3.1.11",
68
67
  "npm-run-all": "4.1.5",
69
- "postcss": "8.4.33",
70
- "postcss-cli": "11.0.0",
71
- "postcss-import": "16.0.0",
68
+ "postcss": "8.5.6",
69
+ "postcss-cli": "11.0.1",
70
+ "postcss-import": "16.1.1",
72
71
  "postcss-nested": "6.0.1",
73
- "prettier": "3.2.4",
74
- "storybook": "9.0.4",
72
+ "prettier": "3.8.1",
73
+ "storybook": "10.2.3",
75
74
  "stylelint": "16.2.1",
76
75
  "stylelint-config-standard": "36.0.0",
77
76
  "tailwindcss": "3.4.1",
78
- "ts-loader": "9.5.1",
79
- "typescript": "5.3.3",
77
+ "ts-loader": "9.5.4",
78
+ "typescript": "5.9.3",
80
79
  "vue-style-loader": "4.1.3",
81
80
  "yargs": "17.7.2"
82
81
  },
@@ -108,8 +107,5 @@
108
107
  "./src/*.js": {
109
108
  "import": "./src/*.js"
110
109
  }
111
- },
112
- "overrides": {
113
- "storybook": "$storybook"
114
110
  }
115
111
  }