@designcrowd/fe-shared-lib 1.5.22 → 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 (171) hide show
  1. package/.claude/settings.local.json +53 -0
  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/dist/css/tailwind-brandCrowd.css +109 -6
  145. package/dist/css/tailwind-brandPage.css +105 -6
  146. package/dist/css/tailwind-crazyDomains.css +109 -6
  147. package/dist/css/tailwind-designCom.css +109 -6
  148. package/dist/css/tailwind-designCrowd.css +109 -6
  149. package/docs/plans/2026-01-30-upgrade-vite7-storybook10-design.md +177 -0
  150. package/docs/plans/2026-01-30-upgrade-vite7-storybook10.md +388 -0
  151. package/package.json +32 -36
  152. package/src/atoms/components/Icon/Icon.vue +38 -0
  153. package/src/atoms/components/Icon/icons/annotate-heart.vue +7 -0
  154. package/src/atoms/components/Icon/icons/award.vue +7 -0
  155. package/src/atoms/components/Icon/icons/bezier-curve-outline.vue +7 -0
  156. package/src/atoms/components/Icon/icons/bezier-curve.vue +7 -0
  157. package/src/atoms/components/Icon/icons/browser.vue +7 -0
  158. package/src/atoms/components/Icon/icons/card-vertical.vue +7 -0
  159. package/src/atoms/components/Icon/icons/file-empty.vue +7 -0
  160. package/src/atoms/components/Icon/icons/font.vue +7 -0
  161. package/src/atoms/components/Icon/icons/headphones.vue +7 -0
  162. package/src/atoms/components/Icon/icons/image.vue +7 -0
  163. package/src/atoms/components/Icon/icons/lightning.vue +7 -0
  164. package/src/atoms/components/Icon/icons/logo.vue +7 -0
  165. package/src/atoms/components/Icon/icons/palette-outline.vue +7 -0
  166. package/src/atoms/components/Icon/icons/pen-outline.vue +7 -0
  167. package/src/atoms/components/Icon/icons/pen-sparkle.vue +17 -0
  168. package/src/atoms/components/Icon/icons/pen.vue +7 -0
  169. package/src/atoms/components/Icon/icons/sparkle-square.vue +22 -0
  170. package/src/experiences/components/WebsitesContextualUpgradeModal/WebsiteContextualUpgradeModal.vue +2 -2
  171. package/vite.config.ts +0 -4
@@ -617,6 +617,9 @@ video {
617
617
  .tw-m-3 {
618
618
  margin: 0.75rem;
619
619
  }
620
+ .tw-m-4 {
621
+ margin: 1rem;
622
+ }
620
623
  .tw-m-5 {
621
624
  margin: 1.25rem;
622
625
  }
@@ -684,6 +687,9 @@ video {
684
687
  .tw-mb-0 {
685
688
  margin-bottom: 0px;
686
689
  }
690
+ .tw-mb-0\.5 {
691
+ margin-bottom: 0.125rem;
692
+ }
687
693
  .tw-mb-1 {
688
694
  margin-bottom: 0.25rem;
689
695
  }
@@ -738,9 +744,6 @@ video {
738
744
  .tw-mt-0 {
739
745
  margin-top: 0px;
740
746
  }
741
- .tw-mt-0\.5 {
742
- margin-top: 0.125rem;
743
- }
744
747
  .tw-mt-1 {
745
748
  margin-top: 0.25rem;
746
749
  }
@@ -753,6 +756,9 @@ video {
753
756
  .tw-mt-4 {
754
757
  margin-top: 1rem;
755
758
  }
759
+ .tw-mt-6 {
760
+ margin-top: 1.5rem;
761
+ }
756
762
  .tw-mt-8 {
757
763
  margin-top: 2rem;
758
764
  }
@@ -762,6 +768,48 @@ video {
762
768
  .tw-box-content {
763
769
  box-sizing: content-box;
764
770
  }
771
+ .tw-line-clamp-1 {
772
+ overflow: hidden;
773
+ display: -webkit-box;
774
+ -webkit-box-orient: vertical;
775
+ -webkit-line-clamp: 1;
776
+ }
777
+ .tw-line-clamp-2 {
778
+ overflow: hidden;
779
+ display: -webkit-box;
780
+ -webkit-box-orient: vertical;
781
+ -webkit-line-clamp: 2;
782
+ }
783
+ .tw-line-clamp-3 {
784
+ overflow: hidden;
785
+ display: -webkit-box;
786
+ -webkit-box-orient: vertical;
787
+ -webkit-line-clamp: 3;
788
+ }
789
+ .tw-line-clamp-4 {
790
+ overflow: hidden;
791
+ display: -webkit-box;
792
+ -webkit-box-orient: vertical;
793
+ -webkit-line-clamp: 4;
794
+ }
795
+ .tw-line-clamp-5 {
796
+ overflow: hidden;
797
+ display: -webkit-box;
798
+ -webkit-box-orient: vertical;
799
+ -webkit-line-clamp: 5;
800
+ }
801
+ .tw-line-clamp-6 {
802
+ overflow: hidden;
803
+ display: -webkit-box;
804
+ -webkit-box-orient: vertical;
805
+ -webkit-line-clamp: 6;
806
+ }
807
+ .tw-line-clamp-none {
808
+ overflow: visible;
809
+ display: block;
810
+ -webkit-box-orient: horizontal;
811
+ -webkit-line-clamp: none;
812
+ }
765
813
  .tw-block {
766
814
  display: block;
767
815
  }
@@ -911,6 +959,9 @@ video {
911
959
  .tw-max-w-2xl {
912
960
  max-width: 42rem;
913
961
  }
962
+ .tw-max-w-3xl {
963
+ max-width: 48rem;
964
+ }
914
965
  .tw-max-w-full {
915
966
  max-width: 100%;
916
967
  }
@@ -926,6 +977,9 @@ video {
926
977
  .tw-flex-none {
927
978
  flex: none;
928
979
  }
980
+ .tw-flex-shrink-0 {
981
+ flex-shrink: 0;
982
+ }
929
983
  .tw-grow {
930
984
  flex-grow: 1;
931
985
  }
@@ -1141,6 +1195,9 @@ video {
1141
1195
  text-overflow: ellipsis;
1142
1196
  white-space: nowrap;
1143
1197
  }
1198
+ .tw-text-ellipsis {
1199
+ text-overflow: ellipsis;
1200
+ }
1144
1201
  .tw-whitespace-nowrap {
1145
1202
  white-space: nowrap;
1146
1203
  }
@@ -1269,6 +1326,10 @@ video {
1269
1326
  --tw-border-opacity: 1;
1270
1327
  border-color: rgb(125 130 132 / var(--tw-border-opacity));
1271
1328
  }
1329
+ .tw-border-grayscale-700 {
1330
+ --tw-border-opacity: 1;
1331
+ border-color: rgb(82 93 96 / var(--tw-border-opacity));
1332
+ }
1272
1333
  .tw-border-info-300 {
1273
1334
  --tw-border-opacity: 1;
1274
1335
  border-color: rgb(112 193 243 / var(--tw-border-opacity));
@@ -1741,9 +1802,6 @@ video {
1741
1802
  .tw-pt-2 {
1742
1803
  padding-top: 0.5rem;
1743
1804
  }
1744
- .tw-pt-4 {
1745
- padding-top: 1rem;
1746
- }
1747
1805
  .tw-pt-6 {
1748
1806
  padding-top: 1.5rem;
1749
1807
  }
@@ -1766,6 +1824,10 @@ video {
1766
1824
  font-size: 1.5rem;
1767
1825
  line-height: 2rem;
1768
1826
  }
1827
+ .tw-text-3xl {
1828
+ font-size: 1.875rem;
1829
+ line-height: 2.25rem;
1830
+ }
1769
1831
  .tw-text-4xl {
1770
1832
  font-size: 2.25rem;
1771
1833
  line-height: 2.5rem;
@@ -2092,6 +2154,10 @@ video {
2092
2154
  --tw-text-opacity: 1;
2093
2155
  color: rgb(39 52 56 / var(--tw-text-opacity));
2094
2156
  }
2157
+ .hover\:tw-text-primary-600:hover {
2158
+ --tw-text-opacity: 1;
2159
+ color: rgb(14 121 188 / var(--tw-text-opacity));
2160
+ }
2095
2161
  .hover\:tw-text-secondary-500:hover {
2096
2162
  --tw-text-opacity: 1;
2097
2163
  color: rgb(93 109 129 / var(--tw-text-opacity));
@@ -2179,6 +2245,10 @@ video {
2179
2245
  margin-bottom: 1rem;
2180
2246
  }
2181
2247
 
2248
+ .sm\:tw-ml-2 {
2249
+ margin-left: 0.5rem;
2250
+ }
2251
+
2182
2252
  .sm\:tw-ml-4 {
2183
2253
  margin-left: 1rem;
2184
2254
  }
@@ -2227,6 +2297,10 @@ video {
2227
2297
  flex-direction: row;
2228
2298
  }
2229
2299
 
2300
+ .sm\:tw-items-center {
2301
+ align-items: center;
2302
+ }
2303
+
2230
2304
  .sm\:tw-rounded-md {
2231
2305
  border-radius: 0.375rem;
2232
2306
  }
@@ -2238,10 +2312,18 @@ video {
2238
2312
  }
2239
2313
  @media (min-width: 768px) {
2240
2314
 
2315
+ .md\:tw-relative {
2316
+ position: relative;
2317
+ }
2318
+
2241
2319
  .md\:tw-right-6 {
2242
2320
  right: 1.5rem;
2243
2321
  }
2244
2322
 
2323
+ .md\:tw-order-first {
2324
+ order: -9999;
2325
+ }
2326
+
2245
2327
  .md\:tw-mb-0 {
2246
2328
  margin-bottom: 0px;
2247
2329
  }
@@ -2306,6 +2388,10 @@ video {
2306
2388
  width: 6rem;
2307
2389
  }
2308
2390
 
2391
+ .md\:tw-w-3\/4 {
2392
+ width: 75%;
2393
+ }
2394
+
2309
2395
  .md\:tw-w-auto {
2310
2396
  width: auto;
2311
2397
  }
@@ -2318,6 +2404,10 @@ video {
2318
2404
  max-width: 100%;
2319
2405
  }
2320
2406
 
2407
+ .md\:tw-flex-1 {
2408
+ flex: 1 1 0%;
2409
+ }
2410
+
2321
2411
  .md\:tw-grow {
2322
2412
  flex-grow: 1;
2323
2413
  }
@@ -2377,6 +2467,10 @@ video {
2377
2467
  object-fit: contain;
2378
2468
  }
2379
2469
 
2470
+ .md\:tw-p-0 {
2471
+ padding: 0px;
2472
+ }
2473
+
2380
2474
  .md\:tw-p-2 {
2381
2475
  padding: 0.5rem;
2382
2476
  }
@@ -2393,6 +2487,11 @@ video {
2393
2487
  padding: 2rem;
2394
2488
  }
2395
2489
 
2490
+ .md\:tw-px-12 {
2491
+ padding-left: 3rem;
2492
+ padding-right: 3rem;
2493
+ }
2494
+
2396
2495
  .md\:tw-px-4 {
2397
2496
  padding-left: 1rem;
2398
2497
  padding-right: 1rem;
@@ -2408,6 +2507,10 @@ video {
2408
2507
  padding-bottom: 0.5rem;
2409
2508
  }
2410
2509
 
2510
+ .md\:tw-pb-0 {
2511
+ padding-bottom: 0px;
2512
+ }
2513
+
2411
2514
  .md\:tw-pl-4 {
2412
2515
  padding-left: 1rem;
2413
2516
  }
@@ -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 |