@designcrowd/fe-shared-lib 1.6.0-eng-4039 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (710) hide show
  1. package/.eslintrc.js +36 -36
  2. package/.github/workflows/auto-merge.yml +52 -52
  3. package/.github/workflows/claude.yml +72 -72
  4. package/.prettierrc.js +7 -7
  5. package/.storybook/main.ts +36 -36
  6. package/.storybook/preview-head-master.html +4 -4
  7. package/.storybook/preview-head-publish-master.html +4 -4
  8. package/.storybook/preview-head-publish.html +4 -4
  9. package/.storybook/preview-head.html +4 -4
  10. package/.storybook/preview.js +53 -53
  11. package/CLAUDE.md +94 -94
  12. package/Dockerfile +43 -43
  13. package/README.md +103 -103
  14. package/buildspec.yml +47 -47
  15. package/{public → dist}/css/tailwind-brandCrowd.css +1126 -994
  16. package/{public → dist}/css/tailwind-brandPage.css +964 -860
  17. package/{public → dist}/css/tailwind-crazyDomains.css +1126 -994
  18. package/{public → dist}/css/tailwind-designCom.css +1126 -994
  19. package/{public → dist}/css/tailwind-designCrowd.css +1126 -994
  20. package/index.cjs +16 -16
  21. package/index.js +61 -60
  22. package/nodemon.translation.json +6 -6
  23. package/package.json +115 -115
  24. package/postcss.config.js +5 -5
  25. package/src/atoms/components/AiPoweredLoader/AiPoweredLoader.stories.js +364 -0
  26. package/src/atoms/components/AiPoweredLoader/AiPoweredLoader.vue +296 -0
  27. package/src/atoms/components/Button/Button.vue +341 -341
  28. package/src/atoms/components/Button/ButtonVariant.mixin.vue +126 -126
  29. package/src/atoms/components/Button/Buttons.stories.js +828 -828
  30. package/src/atoms/components/Button/ButtonsCrazyDomains.stories.js +117 -117
  31. package/src/atoms/components/Button/variants/ButtonAi.vue +63 -63
  32. package/src/atoms/components/Button/variants/ButtonDarkModePill.vue +52 -52
  33. package/src/atoms/components/Button/variants/ButtonFlat.vue +65 -65
  34. package/src/atoms/components/Button/variants/ButtonGray.vue +64 -64
  35. package/src/atoms/components/Button/variants/ButtonInfo.vue +51 -51
  36. package/src/atoms/components/Button/variants/ButtonInfoFilled.vue +63 -63
  37. package/src/atoms/components/Button/variants/ButtonNoBorder.vue +65 -65
  38. package/src/atoms/components/Button/variants/ButtonOutline.vue +62 -62
  39. package/src/atoms/components/Button/variants/ButtonOutlineNoHover.vue +62 -62
  40. package/src/atoms/components/Button/variants/ButtonOutlinePrimary.vue +53 -53
  41. package/src/atoms/components/Button/variants/ButtonOutlineSuccess.vue +54 -54
  42. package/src/atoms/components/Button/variants/ButtonPill.vue +52 -52
  43. package/src/atoms/components/Button/variants/ButtonPrimary.vue +69 -69
  44. package/src/atoms/components/Button/variants/ButtonPrimaryWithIcon.vue +68 -68
  45. package/src/atoms/components/Button/variants/ButtonSecondary.vue +51 -51
  46. package/src/atoms/components/Button/variants/ButtonSuccess.vue +55 -55
  47. package/src/atoms/components/Button/variants/ButtonWarning.vue +65 -65
  48. package/src/atoms/components/Button/variants/crazy-domains/ButtonCrazyDomainsOutline.vue +58 -58
  49. package/src/atoms/components/Button/variants/crazy-domains/ButtonCrazyDomainsPrimary.vue +38 -38
  50. package/src/atoms/components/ButtonGroup/ButtonGroup.stories.js +575 -575
  51. package/src/atoms/components/ButtonGroup/ButtonGroup.vue +200 -200
  52. package/src/atoms/components/Carousel/Carousel.fixtures.js +53 -53
  53. package/src/atoms/components/Carousel/Carousel.vue +357 -384
  54. package/src/atoms/components/Carousel/carousel.stories.js +530 -652
  55. package/src/atoms/components/Checkbox/Checkbox.mixin.js +57 -57
  56. package/src/atoms/components/Checkbox/Checkbox.stories.js +340 -340
  57. package/src/atoms/components/Checkbox/Checkbox.vue +84 -84
  58. package/src/atoms/components/Checktile/Checktile.stories.js +79 -79
  59. package/src/atoms/components/Checktile/Checktile.vue +73 -73
  60. package/src/atoms/components/CollapsiblePanel/CollapsiblePanel.mixin.js +38 -38
  61. package/src/atoms/components/CollapsiblePanel/CollapsiblePanel.stories.js +53 -53
  62. package/src/atoms/components/CollapsiblePanel/CollapsiblePanel.vue +33 -33
  63. package/src/atoms/components/ColorPicker/ColorPicker.stories.js +89 -89
  64. package/src/atoms/components/ColorPicker/ColorPicker.vue +95 -95
  65. package/src/atoms/components/CopyToClipboardText/CopyToClipboardText.stories.js +41 -41
  66. package/src/atoms/components/CopyToClipboardText/CopyToClipboardText.vue +71 -71
  67. package/src/atoms/components/Dropdown/Dropdown.stories.js +140 -140
  68. package/src/atoms/components/Dropdown/Dropdown.vue +123 -123
  69. package/src/atoms/components/Dropdown/DropdownItem.vue +33 -33
  70. package/src/atoms/components/FormControl/FormControl.mixin.js +136 -136
  71. package/src/atoms/components/HelloBar/HelloBar.stories.js +195 -195
  72. package/src/atoms/components/HelloBar/HelloBar.vue +156 -156
  73. package/src/atoms/components/Icon/Icon.stories.js +408 -408
  74. package/src/atoms/components/Icon/Icon.vue +924 -924
  75. package/src/atoms/components/Icon/icons/add-page.vue +6 -6
  76. package/src/atoms/components/Icon/icons/ai.vue +6 -6
  77. package/src/atoms/components/Icon/icons/annotate-heart.vue +7 -7
  78. package/src/atoms/components/Icon/icons/arrow-down.vue +6 -6
  79. package/src/atoms/components/Icon/icons/arrow-left.vue +7 -7
  80. package/src/atoms/components/Icon/icons/arrow-right.vue +7 -7
  81. package/src/atoms/components/Icon/icons/arrow-top-right.vue +6 -6
  82. package/src/atoms/components/Icon/icons/arrow-up-underline.vue +7 -7
  83. package/src/atoms/components/Icon/icons/arrow-up.vue +7 -7
  84. package/src/atoms/components/Icon/icons/attach.vue +6 -6
  85. package/src/atoms/components/Icon/icons/auth-facebook-white.vue +17 -17
  86. package/src/atoms/components/Icon/icons/auth-facebook.vue +24 -24
  87. package/src/atoms/components/Icon/icons/auth-google.vue +32 -32
  88. package/src/atoms/components/Icon/icons/award.vue +7 -7
  89. package/src/atoms/components/Icon/icons/background.vue +7 -7
  90. package/src/atoms/components/Icon/icons/badge.vue +7 -7
  91. package/src/atoms/components/Icon/icons/banner-centered.vue +6 -6
  92. package/src/atoms/components/Icon/icons/banner-left.vue +6 -6
  93. package/src/atoms/components/Icon/icons/banner.vue +7 -7
  94. package/src/atoms/components/Icon/icons/bc-mast.vue +7 -7
  95. package/src/atoms/components/Icon/icons/bezier-curve-outline.vue +7 -7
  96. package/src/atoms/components/Icon/icons/bezier-curve.vue +7 -7
  97. package/src/atoms/components/Icon/icons/briefcase.vue +7 -7
  98. package/src/atoms/components/Icon/icons/browser.vue +7 -7
  99. package/src/atoms/components/Icon/icons/brush.vue +6 -6
  100. package/src/atoms/components/Icon/icons/business-card-filled.vue +5 -5
  101. package/src/atoms/components/Icon/icons/business.vue +6 -6
  102. package/src/atoms/components/Icon/icons/calculator.vue +3 -3
  103. package/src/atoms/components/Icon/icons/calendar.vue +5 -5
  104. package/src/atoms/components/Icon/icons/callout-error.vue +6 -6
  105. package/src/atoms/components/Icon/icons/callout-info.vue +6 -6
  106. package/src/atoms/components/Icon/icons/callout-success.vue +8 -8
  107. package/src/atoms/components/Icon/icons/callout-warning.vue +6 -6
  108. package/src/atoms/components/Icon/icons/cap.vue +22 -22
  109. package/src/atoms/components/Icon/icons/card-vertical.vue +7 -7
  110. package/src/atoms/components/Icon/icons/card.vue +9 -9
  111. package/src/atoms/components/Icon/icons/cart-empty.vue +9 -9
  112. package/src/atoms/components/Icon/icons/check-thin.vue +7 -7
  113. package/src/atoms/components/Icon/icons/check.vue +3 -3
  114. package/src/atoms/components/Icon/icons/chevron-down.vue +7 -7
  115. package/src/atoms/components/Icon/icons/chevron-left.vue +7 -7
  116. package/src/atoms/components/Icon/icons/chevron-right-wide.vue +3 -3
  117. package/src/atoms/components/Icon/icons/chevron-right.vue +3 -3
  118. package/src/atoms/components/Icon/icons/chevron-up.vue +7 -7
  119. package/src/atoms/components/Icon/icons/clipboard-check.vue +6 -6
  120. package/src/atoms/components/Icon/icons/close.vue +6 -6
  121. package/src/atoms/components/Icon/icons/community.vue +5 -5
  122. package/src/atoms/components/Icon/icons/contact-message.vue +10 -10
  123. package/src/atoms/components/Icon/icons/content.vue +7 -7
  124. package/src/atoms/components/Icon/icons/copy.vue +10 -10
  125. package/src/atoms/components/Icon/icons/crazy-domains/filter.vue +6 -6
  126. package/src/atoms/components/Icon/icons/crazy-domains/globe.vue +6 -6
  127. package/src/atoms/components/Icon/icons/crazy-domains/home.vue +6 -6
  128. package/src/atoms/components/Icon/icons/crazy-domains/social-facebook.vue +6 -6
  129. package/src/atoms/components/Icon/icons/crazy-domains/social-google.vue +6 -6
  130. package/src/atoms/components/Icon/icons/crazy-domains/social-instagram.vue +6 -6
  131. package/src/atoms/components/Icon/icons/crazy-domains/social-twitter.vue +6 -6
  132. package/src/atoms/components/Icon/icons/crazy-domains/social-youtube.vue +6 -6
  133. package/src/atoms/components/Icon/icons/crop.vue +6 -6
  134. package/src/atoms/components/Icon/icons/crown-alt.vue +5 -5
  135. package/src/atoms/components/Icon/icons/crown.vue +6 -6
  136. package/src/atoms/components/Icon/icons/delete.vue +8 -8
  137. package/src/atoms/components/Icon/icons/designs.vue +6 -6
  138. package/src/atoms/components/Icon/icons/desktop.vue +7 -7
  139. package/src/atoms/components/Icon/icons/digital-business-card-filled.vue +8 -8
  140. package/src/atoms/components/Icon/icons/donate.vue +6 -6
  141. package/src/atoms/components/Icon/icons/download.vue +5 -5
  142. package/src/atoms/components/Icon/icons/duplicate.vue +6 -6
  143. package/src/atoms/components/Icon/icons/edit-line.vue +10 -10
  144. package/src/atoms/components/Icon/icons/edit.vue +6 -6
  145. package/src/atoms/components/Icon/icons/ellipsis.vue +6 -6
  146. package/src/atoms/components/Icon/icons/envelope-email.vue +9 -9
  147. package/src/atoms/components/Icon/icons/error.vue +8 -8
  148. package/src/atoms/components/Icon/icons/eye-crossed.vue +7 -7
  149. package/src/atoms/components/Icon/icons/eye-open.vue +11 -11
  150. package/src/atoms/components/Icon/icons/fees.vue +6 -6
  151. package/src/atoms/components/Icon/icons/file-empty.vue +7 -7
  152. package/src/atoms/components/Icon/icons/file.vue +7 -7
  153. package/src/atoms/components/Icon/icons/filter.vue +7 -7
  154. package/src/atoms/components/Icon/icons/filters.vue +6 -6
  155. package/src/atoms/components/Icon/icons/flag.vue +6 -6
  156. package/src/atoms/components/Icon/icons/flip-horizontal.vue +7 -7
  157. package/src/atoms/components/Icon/icons/flip-vertical.vue +7 -7
  158. package/src/atoms/components/Icon/icons/folder.vue +6 -6
  159. package/src/atoms/components/Icon/icons/font.vue +7 -7
  160. package/src/atoms/components/Icon/icons/footer-centered.vue +7 -7
  161. package/src/atoms/components/Icon/icons/footer-left.vue +7 -7
  162. package/src/atoms/components/Icon/icons/form-message.vue +6 -6
  163. package/src/atoms/components/Icon/icons/form.vue +5 -5
  164. package/src/atoms/components/Icon/icons/fullscreen-exit.vue +5 -5
  165. package/src/atoms/components/Icon/icons/fullscreen.vue +5 -5
  166. package/src/atoms/components/Icon/icons/globe.vue +6 -6
  167. package/src/atoms/components/Icon/icons/godaddy/logo.vue +5 -5
  168. package/src/atoms/components/Icon/icons/group.vue +6 -6
  169. package/src/atoms/components/Icon/icons/hamburger.vue +7 -7
  170. package/src/atoms/components/Icon/icons/headphones.vue +7 -7
  171. package/src/atoms/components/Icon/icons/home-outline.vue +6 -6
  172. package/src/atoms/components/Icon/icons/home.vue +7 -7
  173. package/src/atoms/components/Icon/icons/icon-style-circle-bg.vue +22 -22
  174. package/src/atoms/components/Icon/icons/icon-style-no-bg.vue +16 -16
  175. package/src/atoms/components/Icon/icons/icon-style-square-bg.vue +22 -22
  176. package/src/atoms/components/Icon/icons/image-gallery-carousel.vue +7 -7
  177. package/src/atoms/components/Icon/icons/image-gallery-grid.vue +7 -7
  178. package/src/atoms/components/Icon/icons/image-gallery-masonry.vue +6 -6
  179. package/src/atoms/components/Icon/icons/image.vue +7 -7
  180. package/src/atoms/components/Icon/icons/images-gallery.vue +5 -5
  181. package/src/atoms/components/Icon/icons/images.vue +7 -7
  182. package/src/atoms/components/Icon/icons/info.vue +9 -9
  183. package/src/atoms/components/Icon/icons/jobs.vue +8 -8
  184. package/src/atoms/components/Icon/icons/layer-bring-front.vue +6 -6
  185. package/src/atoms/components/Icon/icons/layer-send-back.vue +6 -6
  186. package/src/atoms/components/Icon/icons/layer.vue +6 -6
  187. package/src/atoms/components/Icon/icons/layout/display-style-about-1.vue +20 -20
  188. package/src/atoms/components/Icon/icons/layout/display-style-about-2.vue +20 -20
  189. package/src/atoms/components/Icon/icons/layout/display-style-about-3.vue +20 -20
  190. package/src/atoms/components/Icon/icons/layout/display-style-about-4.vue +32 -32
  191. package/src/atoms/components/Icon/icons/layout/display-style-about-5.vue +27 -27
  192. package/src/atoms/components/Icon/icons/layout/display-style-about-6.vue +27 -27
  193. package/src/atoms/components/Icon/icons/layout/display-style-banner-1.vue +20 -20
  194. package/src/atoms/components/Icon/icons/layout/display-style-banner-2.vue +20 -20
  195. package/src/atoms/components/Icon/icons/layout/display-style-banner-3.vue +20 -20
  196. package/src/atoms/components/Icon/icons/layout/display-style-banner-4.vue +20 -20
  197. package/src/atoms/components/Icon/icons/layout/display-style-banner-5.vue +20 -20
  198. package/src/atoms/components/Icon/icons/layout/display-style-banner-6.vue +27 -27
  199. package/src/atoms/components/Icon/icons/layout/display-style-banner-7.vue +27 -27
  200. package/src/atoms/components/Icon/icons/layout/display-style-banner-8.vue +20 -20
  201. package/src/atoms/components/Icon/icons/layout/display-style-banner-9.vue +20 -20
  202. package/src/atoms/components/Icon/icons/layout/display-style-contact-1.vue +24 -24
  203. package/src/atoms/components/Icon/icons/layout/display-style-contact-2.vue +24 -24
  204. package/src/atoms/components/Icon/icons/layout/display-style-contact-4.vue +24 -24
  205. package/src/atoms/components/Icon/icons/layout/display-style-contact-5.vue +39 -39
  206. package/src/atoms/components/Icon/icons/layout/display-style-contact-6.vue +39 -39
  207. package/src/atoms/components/Icon/icons/layout/footer/display-style-1.vue +7 -7
  208. package/src/atoms/components/Icon/icons/layout/footer/display-style-2.vue +16 -16
  209. package/src/atoms/components/Icon/icons/layout/header/desktop-hamburger-display-style-1.vue +17 -17
  210. package/src/atoms/components/Icon/icons/layout/header/desktop-hamburger-display-style-2.vue +17 -17
  211. package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-1.vue +17 -17
  212. package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-2.vue +17 -17
  213. package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-3.vue +13 -13
  214. package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-4.vue +13 -13
  215. package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-5.vue +17 -17
  216. package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-6.vue +17 -17
  217. package/src/atoms/components/Icon/icons/layout/header/hamburger-display-style-no-logo-1.vue +16 -16
  218. package/src/atoms/components/Icon/icons/layout/header/hamburger-display-style-no-logo-2.vue +16 -16
  219. package/src/atoms/components/Icon/icons/layout/header/hamburger-display-style-no-logo-3.vue +16 -16
  220. package/src/atoms/components/Icon/icons/layout/header/mobile-hamburger-display-style-1.vue +17 -17
  221. package/src/atoms/components/Icon/icons/layout/header/mobile-hamburger-display-style-2.vue +17 -17
  222. package/src/atoms/components/Icon/icons/layout/header/mobile-hamburger-display-style-3.vue +17 -17
  223. package/src/atoms/components/Icon/icons/layout/header/mobile-hamburger-display-style-4.vue +21 -21
  224. package/src/atoms/components/Icon/icons/layout/header/mobile-tab-display-style-1.vue +17 -17
  225. package/src/atoms/components/Icon/icons/layout/header/mobile-tab-display-style-2.vue +17 -17
  226. package/src/atoms/components/Icon/icons/layout/header/tab-display-style-no-logo-1.vue +16 -16
  227. package/src/atoms/components/Icon/icons/layout/header/tab-display-style-no-logo-2.vue +16 -16
  228. package/src/atoms/components/Icon/icons/layout/header/tab-display-style-no-logo-3.vue +16 -16
  229. package/src/atoms/components/Icon/icons/layout/layout-icon-bottom-normal-text-center-normal.vue +7 -7
  230. package/src/atoms/components/Icon/icons/layout/layout-icon-bottom-normal-text-center-small.vue +7 -7
  231. package/src/atoms/components/Icon/icons/layout/layout-icon-bottom-small-text-center-normal.vue +7 -7
  232. package/src/atoms/components/Icon/icons/layout/layout-icon-center-normal-curved-text-bottom.vue +11 -11
  233. package/src/atoms/components/Icon/icons/layout/layout-icon-center-normal-curved-text-circle.vue +10 -10
  234. package/src/atoms/components/Icon/icons/layout/layout-icon-center-normal-curved-text-top.vue +11 -11
  235. package/src/atoms/components/Icon/icons/layout/layout-icon-left-normal-text-center-normal.vue +7 -7
  236. package/src/atoms/components/Icon/icons/layout/layout-icon-left-normal-text-justify-normal.vue +7 -7
  237. package/src/atoms/components/Icon/icons/layout/layout-icon-left-normal-text-left-normal.vue +7 -7
  238. package/src/atoms/components/Icon/icons/layout/layout-icon-left-small-text-left-normal.vue +7 -7
  239. package/src/atoms/components/Icon/icons/layout/layout-icon-right-normal-text-center-normal.vue +7 -7
  240. package/src/atoms/components/Icon/icons/layout/layout-icon-right-normal-text-justify-normal.vue +7 -7
  241. package/src/atoms/components/Icon/icons/layout/layout-icon-right-normal-text-right-normal.vue +7 -7
  242. package/src/atoms/components/Icon/icons/layout/layout-icon-right-small-text-right-normal.vue +7 -7
  243. package/src/atoms/components/Icon/icons/layout/layout-icon-top-normal-text-center-normal.vue +7 -7
  244. package/src/atoms/components/Icon/icons/layout/layout-icon-top-normal-text-center-small.vue +7 -7
  245. package/src/atoms/components/Icon/icons/layout/layout-icon-top-normal-text-justify-normal.vue +7 -7
  246. package/src/atoms/components/Icon/icons/layout/layout-icon-top-small-text-center-normal.vue +7 -7
  247. package/src/atoms/components/Icon/icons/layout/nav/hamburger/display-style-1.vue +16 -16
  248. package/src/atoms/components/Icon/icons/layout/nav/hamburger/display-style-2.vue +10 -10
  249. package/src/atoms/components/Icon/icons/layout/nav/hamburger/display-style-3.vue +10 -10
  250. package/src/atoms/components/Icon/icons/layout/nav/hamburger/display-style-4.vue +23 -23
  251. package/src/atoms/components/Icon/icons/layout/nav/tab/display-style-1.vue +16 -16
  252. package/src/atoms/components/Icon/icons/layout/nav/tab/display-style-2.vue +7 -7
  253. package/src/atoms/components/Icon/icons/letterhead-filled.vue +5 -5
  254. package/src/atoms/components/Icon/icons/lightning.vue +7 -7
  255. package/src/atoms/components/Icon/icons/link-in-bio-filled.vue +8 -8
  256. package/src/atoms/components/Icon/icons/link.vue +6 -6
  257. package/src/atoms/components/Icon/icons/location.vue +6 -6
  258. package/src/atoms/components/Icon/icons/lock.vue +6 -6
  259. package/src/atoms/components/Icon/icons/logo.vue +7 -7
  260. package/src/atoms/components/Icon/icons/mac-command.vue +7 -7
  261. package/src/atoms/components/Icon/icons/maker/align-center.vue +7 -7
  262. package/src/atoms/components/Icon/icons/maker/align-justify.vue +7 -7
  263. package/src/atoms/components/Icon/icons/maker/align-left.vue +7 -7
  264. package/src/atoms/components/Icon/icons/maker/align-right.vue +7 -7
  265. package/src/atoms/components/Icon/icons/maker/animate.vue +7 -7
  266. package/src/atoms/components/Icon/icons/maker/bold.vue +7 -7
  267. package/src/atoms/components/Icon/icons/maker/custom-landscape.vue +5 -5
  268. package/src/atoms/components/Icon/icons/maker/email-symbol.vue +5 -5
  269. package/src/atoms/components/Icon/icons/maker/email.vue +5 -5
  270. package/src/atoms/components/Icon/icons/maker/eraser.vue +5 -5
  271. package/src/atoms/components/Icon/icons/maker/etsy.vue +5 -5
  272. package/src/atoms/components/Icon/icons/maker/facebook.vue +5 -5
  273. package/src/atoms/components/Icon/icons/maker/favicon.vue +7 -7
  274. package/src/atoms/components/Icon/icons/maker/flyer.vue +7 -7
  275. package/src/atoms/components/Icon/icons/maker/gift-certificate.vue +5 -5
  276. package/src/atoms/components/Icon/icons/maker/globe.vue +5 -5
  277. package/src/atoms/components/Icon/icons/maker/image.vue +7 -7
  278. package/src/atoms/components/Icon/icons/maker/instagram.vue +7 -7
  279. package/src/atoms/components/Icon/icons/maker/invitation.vue +5 -5
  280. package/src/atoms/components/Icon/icons/maker/invoice.vue +5 -5
  281. package/src/atoms/components/Icon/icons/maker/italic.vue +7 -7
  282. package/src/atoms/components/Icon/icons/maker/link.vue +7 -7
  283. package/src/atoms/components/Icon/icons/maker/linkedin.vue +7 -7
  284. package/src/atoms/components/Icon/icons/maker/menu.vue +5 -5
  285. package/src/atoms/components/Icon/icons/maker/pause.vue +5 -5
  286. package/src/atoms/components/Icon/icons/maker/phone.vue +5 -5
  287. package/src/atoms/components/Icon/icons/maker/pinterest.vue +5 -5
  288. package/src/atoms/components/Icon/icons/maker/play.vue +5 -5
  289. package/src/atoms/components/Icon/icons/maker/postcard.vue +5 -5
  290. package/src/atoms/components/Icon/icons/maker/poster.vue +7 -7
  291. package/src/atoms/components/Icon/icons/maker/profile.vue +5 -5
  292. package/src/atoms/components/Icon/icons/maker/qrcode.vue +5 -5
  293. package/src/atoms/components/Icon/icons/maker/snapchat.vue +5 -5
  294. package/src/atoms/components/Icon/icons/maker/soundcloud.vue +7 -7
  295. package/src/atoms/components/Icon/icons/maker/spacing.vue +18 -18
  296. package/src/atoms/components/Icon/icons/maker/strikethrough.vue +7 -7
  297. package/src/atoms/components/Icon/icons/maker/t-shirt.vue +32 -32
  298. package/src/atoms/components/Icon/icons/maker/text-background-color.vue +12 -12
  299. package/src/atoms/components/Icon/icons/maker/text-color.vue +14 -14
  300. package/src/atoms/components/Icon/icons/maker/text.vue +7 -7
  301. package/src/atoms/components/Icon/icons/maker/thankyou-card.vue +5 -5
  302. package/src/atoms/components/Icon/icons/maker/tiktok.vue +5 -5
  303. package/src/atoms/components/Icon/icons/maker/tumblr.vue +5 -5
  304. package/src/atoms/components/Icon/icons/maker/twitch.vue +7 -7
  305. package/src/atoms/components/Icon/icons/maker/twitter.vue +5 -5
  306. package/src/atoms/components/Icon/icons/maker/underline.vue +7 -7
  307. package/src/atoms/components/Icon/icons/maker/uppercase.vue +14 -14
  308. package/src/atoms/components/Icon/icons/maker/video.vue +5 -5
  309. package/src/atoms/components/Icon/icons/maker/whatsapp.vue +7 -7
  310. package/src/atoms/components/Icon/icons/maker/youtube.vue +5 -5
  311. package/src/atoms/components/Icon/icons/maker/zoom.vue +5 -5
  312. package/src/atoms/components/Icon/icons/map.vue +6 -6
  313. package/src/atoms/components/Icon/icons/media.vue +3 -3
  314. package/src/atoms/components/Icon/icons/message.vue +6 -6
  315. package/src/atoms/components/Icon/icons/minus-circle-light.vue +7 -7
  316. package/src/atoms/components/Icon/icons/minus.vue +3 -3
  317. package/src/atoms/components/Icon/icons/mobile.vue +5 -5
  318. package/src/atoms/components/Icon/icons/mug.vue +29 -29
  319. package/src/atoms/components/Icon/icons/opacity.vue +6 -6
  320. package/src/atoms/components/Icon/icons/other.vue +7 -7
  321. package/src/atoms/components/Icon/icons/page-blank.vue +6 -6
  322. package/src/atoms/components/Icon/icons/page-buttons.vue +8 -8
  323. package/src/atoms/components/Icon/icons/page-hamburger.vue +9 -9
  324. package/src/atoms/components/Icon/icons/page-tabs.vue +9 -9
  325. package/src/atoms/components/Icon/icons/pages.vue +6 -6
  326. package/src/atoms/components/Icon/icons/palette-outline.vue +7 -7
  327. package/src/atoms/components/Icon/icons/palette.vue +6 -6
  328. package/src/atoms/components/Icon/icons/pause.vue +5 -5
  329. package/src/atoms/components/Icon/icons/payment.vue +8 -8
  330. package/src/atoms/components/Icon/icons/payments-featured.vue +6 -6
  331. package/src/atoms/components/Icon/icons/payments-textonly.vue +8 -8
  332. package/src/atoms/components/Icon/icons/payments-thumbnail.vue +9 -9
  333. package/src/atoms/components/Icon/icons/pen-outline.vue +7 -7
  334. package/src/atoms/components/Icon/icons/pen-sparkle.vue +17 -17
  335. package/src/atoms/components/Icon/icons/pen-tool.vue +7 -7
  336. package/src/atoms/components/Icon/icons/pen.vue +7 -7
  337. package/src/atoms/components/Icon/icons/phone.vue +6 -6
  338. package/src/atoms/components/Icon/icons/plus-circle-light.vue +8 -8
  339. package/src/atoms/components/Icon/icons/plus-circle.vue +7 -7
  340. package/src/atoms/components/Icon/icons/plus.vue +3 -3
  341. package/src/atoms/components/Icon/icons/poll.vue +3 -3
  342. package/src/atoms/components/Icon/icons/portfolio.vue +10 -10
  343. package/src/atoms/components/Icon/icons/premium-content.vue +8 -8
  344. package/src/atoms/components/Icon/icons/preview.vue +6 -6
  345. package/src/atoms/components/Icon/icons/printing.vue +6 -6
  346. package/src/atoms/components/Icon/icons/processing.vue +5 -5
  347. package/src/atoms/components/Icon/icons/question-alt.vue +20 -20
  348. package/src/atoms/components/Icon/icons/question.vue +11 -11
  349. package/src/atoms/components/Icon/icons/ratio-1-1.vue +3 -3
  350. package/src/atoms/components/Icon/icons/ratio-16-9.vue +1 -1
  351. package/src/atoms/components/Icon/icons/ratio-2-3.vue +3 -3
  352. package/src/atoms/components/Icon/icons/ratio-3-2.vue +3 -3
  353. package/src/atoms/components/Icon/icons/ratio-3-4.vue +3 -3
  354. package/src/atoms/components/Icon/icons/ratio-4-3.vue +3 -3
  355. package/src/atoms/components/Icon/icons/ratio-9-16.vue +3 -3
  356. package/src/atoms/components/Icon/icons/ratio-circle.vue +8 -8
  357. package/src/atoms/components/Icon/icons/ratio-original.vue +11 -11
  358. package/src/atoms/components/Icon/icons/redo.vue +6 -6
  359. package/src/atoms/components/Icon/icons/reload.vue +6 -6
  360. package/src/atoms/components/Icon/icons/reorderable.vue +5 -5
  361. package/src/atoms/components/Icon/icons/request-payment.vue +6 -6
  362. package/src/atoms/components/Icon/icons/reset.vue +6 -6
  363. package/src/atoms/components/Icon/icons/resize.vue +6 -6
  364. package/src/atoms/components/Icon/icons/search.vue +11 -11
  365. package/src/atoms/components/Icon/icons/secure.vue +7 -7
  366. package/src/atoms/components/Icon/icons/send.vue +12 -12
  367. package/src/atoms/components/Icon/icons/services.vue +7 -7
  368. package/src/atoms/components/Icon/icons/settings.vue +7 -7
  369. package/src/atoms/components/Icon/icons/shape.vue +5 -5
  370. package/src/atoms/components/Icon/icons/share.vue +9 -9
  371. package/src/atoms/components/Icon/icons/shield-tick.vue +6 -6
  372. package/src/atoms/components/Icon/icons/shop.vue +5 -5
  373. package/src/atoms/components/Icon/icons/sms.vue +5 -5
  374. package/src/atoms/components/Icon/icons/social-facebook-color.vue +9 -9
  375. package/src/atoms/components/Icon/icons/social-facebook.vue +5 -5
  376. package/src/atoms/components/Icon/icons/social-google.vue +5 -5
  377. package/src/atoms/components/Icon/icons/social-instagram-color.vue +24 -24
  378. package/src/atoms/components/Icon/icons/social-linkedin-color.vue +9 -9
  379. package/src/atoms/components/Icon/icons/social-share.vue +7 -7
  380. package/src/atoms/components/Icon/icons/social-twitter-color.vue +9 -9
  381. package/src/atoms/components/Icon/icons/sparkle-square.vue +22 -22
  382. package/src/atoms/components/Icon/icons/star-filled.vue +6 -6
  383. package/src/atoms/components/Icon/icons/star-hollow.vue +6 -6
  384. package/src/atoms/components/Icon/icons/sticker.vue +28 -28
  385. package/src/atoms/components/Icon/icons/stop.vue +5 -5
  386. package/src/atoms/components/Icon/icons/styles.vue +5 -5
  387. package/src/atoms/components/Icon/icons/submit.vue +5 -5
  388. package/src/atoms/components/Icon/icons/templates.vue +7 -7
  389. package/src/atoms/components/Icon/icons/text-image-center.vue +6 -6
  390. package/src/atoms/components/Icon/icons/text-image-justified.vue +7 -7
  391. package/src/atoms/components/Icon/icons/text-image-left.vue +9 -9
  392. package/src/atoms/components/Icon/icons/text-image-only.vue +5 -5
  393. package/src/atoms/components/Icon/icons/text-image-right.vue +9 -9
  394. package/src/atoms/components/Icon/icons/text-image.vue +13 -13
  395. package/src/atoms/components/Icon/icons/time.vue +8 -8
  396. package/src/atoms/components/Icon/icons/tooltip-bottom.vue +5 -5
  397. package/src/atoms/components/Icon/icons/tooltip-left.vue +5 -5
  398. package/src/atoms/components/Icon/icons/tooltip-right.vue +5 -5
  399. package/src/atoms/components/Icon/icons/tooltip-top.vue +5 -5
  400. package/src/atoms/components/Icon/icons/undo.vue +6 -6
  401. package/src/atoms/components/Icon/icons/upgrade-alt.vue +7 -7
  402. package/src/atoms/components/Icon/icons/upgrade.vue +9 -9
  403. package/src/atoms/components/Icon/icons/upload-arrow.vue +5 -5
  404. package/src/atoms/components/Icon/icons/upload.vue +5 -5
  405. package/src/atoms/components/Icon/icons/user-accounts.vue +5 -5
  406. package/src/atoms/components/Icon/icons/user-headset.vue +50 -50
  407. package/src/atoms/components/Icon/icons/volume-muted.vue +5 -5
  408. package/src/atoms/components/Icon/icons/volume.vue +5 -5
  409. package/src/atoms/components/Icon/icons/watchlist-filled.vue +14 -14
  410. package/src/atoms/components/Icon/icons/watchlist-hollow-alt.vue +14 -14
  411. package/src/atoms/components/Icon/icons/watchlist-hollow.vue +6 -6
  412. package/src/atoms/components/Icon/icons/website-filled.vue +5 -5
  413. package/src/atoms/components/Icon/icons/website.vue +6 -6
  414. package/src/atoms/components/Icon/icons/websites/upgrade-to-add-page.vue +50 -50
  415. package/src/atoms/components/Icon/icons/websites/upgrade-to-contact-form.vue +82 -82
  416. package/src/atoms/components/Icon/icons/websites/upgrade-to-google-ad.vue +92 -92
  417. package/src/atoms/components/Icon/icons/websites/upgrade-to-maps.vue +40 -40
  418. package/src/atoms/components/Icon/icons/websites/upgrade-to-publish.vue +107 -107
  419. package/src/atoms/components/Icon/icons/websites/upgrade-to-remove-watermark.vue +74 -74
  420. package/src/atoms/components/Icon/icons/websites/upgrade-to-videos.vue +16 -16
  421. package/src/atoms/components/Icon/icons/wholesale.vue +6 -6
  422. package/src/atoms/components/Icon/icons/zoom-in.vue +5 -5
  423. package/src/atoms/components/Icon/icons/zoom-out.vue +5 -5
  424. package/src/atoms/components/Icon/icons/zoom.vue +11 -11
  425. package/src/atoms/components/Loader/Loader.vue +15 -15
  426. package/src/atoms/components/Masonry/Masonry.stories.js +48 -48
  427. package/src/atoms/components/Masonry/Masonry.vue +48 -48
  428. package/src/atoms/components/Masonry/fixtures.js +589 -589
  429. package/src/atoms/components/Modal/HashRouteModal.stories.js +68 -68
  430. package/src/atoms/components/Modal/HashRouteModal.vue +120 -120
  431. package/src/atoms/components/Modal/Modal.stories.js +293 -293
  432. package/src/atoms/components/Modal/Modal.vue +263 -263
  433. package/src/atoms/components/Notice/Notice.stories.js +174 -174
  434. package/src/atoms/components/Notice/Notice.vue +71 -71
  435. package/src/atoms/components/NumberStepper/NumberStepper.stories.js +55 -55
  436. package/src/atoms/components/NumberStepper/NumberStepper.vue +340 -340
  437. package/src/atoms/components/Picture/Picture.stories.js +90 -90
  438. package/src/atoms/components/Picture/Picture.vue +84 -84
  439. package/src/atoms/components/Picture/picture.fixtures.js +35 -35
  440. package/src/atoms/components/Pill/Pill.stories.js +20 -20
  441. package/src/atoms/components/Pill/Pill.vue +8 -8
  442. package/src/atoms/components/PillBar/PillBar.fixtures.js +941 -941
  443. package/src/atoms/components/PillBar/PillBar.stories.js +39 -39
  444. package/src/atoms/components/PillBar/PillBar.vue +62 -62
  445. package/src/atoms/components/Price/Price.fixtures.js +85 -85
  446. package/src/atoms/components/Price/Price.stories.js +313 -313
  447. package/src/atoms/components/Price/Price.vue +135 -135
  448. package/src/atoms/components/Price/i18n/price.de-DE.json +5 -5
  449. package/src/atoms/components/Price/i18n/price.es-ES.json +5 -5
  450. package/src/atoms/components/Price/i18n/price.fr-CA.json +5 -5
  451. package/src/atoms/components/Price/i18n/price.fr-FR.json +5 -5
  452. package/src/atoms/components/Price/i18n/price.json +5 -5
  453. package/src/atoms/components/Price/i18n/price.pt-BR.json +5 -5
  454. package/src/atoms/components/Price/i18n/price.pt-PT.json +5 -5
  455. package/src/atoms/components/PromoCard/PromoCard.stories.ts +263 -263
  456. package/src/atoms/components/PromoCard/PromoCard.vue +83 -83
  457. package/src/atoms/components/SearchBar/SearchBar.stories.js +21 -21
  458. package/src/atoms/components/SearchBar/SearchBar.vue +51 -51
  459. package/src/atoms/components/Select/Select.stories.js +142 -142
  460. package/src/atoms/components/Select/Select.vue +619 -619
  461. package/src/atoms/components/Select/pointerMixin.js +99 -99
  462. package/src/atoms/components/Select/selectMixin.js +356 -356
  463. package/src/atoms/components/SparkleIcon/SparkleIcon.stories.js +386 -386
  464. package/src/atoms/components/SparkleIcon/SparkleIcon.vue +136 -136
  465. package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-01.svg +5 -5
  466. package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-02.svg +5 -5
  467. package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-03.svg +5 -5
  468. package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-04.svg +5 -5
  469. package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-05.svg +5 -5
  470. package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-06.svg +5 -5
  471. package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-07.svg +5 -5
  472. package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-08.svg +5 -5
  473. package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-01.svg +5 -5
  474. package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-02.svg +14 -14
  475. package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-03.svg +14 -14
  476. package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-04.svg +14 -14
  477. package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-05.svg +14 -14
  478. package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-06.svg +14 -14
  479. package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-07.svg +14 -14
  480. package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-08.svg +14 -14
  481. package/src/atoms/components/SparkleIcon/assets/sparkle.svg +3 -3
  482. package/src/atoms/components/SparkleIcon/index.ts +3 -3
  483. package/src/atoms/components/SparkleIcon/sparkle-paths.ts +54 -54
  484. package/src/atoms/components/SparkleIcon/sparkle-with-spinner-paths.ts +61 -61
  485. package/src/atoms/components/StarRating/StarRating.stories.js +50 -50
  486. package/src/atoms/components/StarRating/StarRating.vue +84 -84
  487. package/src/atoms/components/TabMenu/TabMenu.stories.js +54 -54
  488. package/src/atoms/components/TabMenu/TabMenu.vue +44 -44
  489. package/src/atoms/components/TextCopyField/TextCopyField.stories.js +68 -68
  490. package/src/atoms/components/TextCopyField/TextCopyField.vue +75 -75
  491. package/src/atoms/components/TextInput/TextInput.stories.js +232 -232
  492. package/src/atoms/components/TextInput/TextInput.vue +161 -161
  493. package/src/atoms/components/Textarea/Textarea.stories.js +209 -209
  494. package/src/atoms/components/Textarea/Textarea.vue +112 -112
  495. package/src/atoms/components/Toggle/Toggle.stories.js +176 -176
  496. package/src/atoms/components/Toggle/Toggle.vue +69 -69
  497. package/src/atoms/components/Tooltip/Tooltip.stories.js +493 -493
  498. package/src/atoms/components/Tooltip/Tooltip.vue +196 -196
  499. package/src/atoms/components/design-com/Icon/Icon.stories.js +94 -94
  500. package/src/atoms/components/design-com/Icon/Icon.vue +181 -181
  501. package/src/atoms/components/design-com/Icon/icons/ai.vue +5 -5
  502. package/src/atoms/components/design-com/Icon/icons/award.vue +7 -7
  503. package/src/atoms/components/design-com/Icon/icons/badge.vue +7 -7
  504. package/src/atoms/components/design-com/Icon/icons/briefcase.vue +6 -6
  505. package/src/atoms/components/design-com/Icon/icons/browser.vue +7 -7
  506. package/src/atoms/components/design-com/Icon/icons/bulb.vue +7 -7
  507. package/src/atoms/components/design-com/Icon/icons/card-vertical.vue +8 -8
  508. package/src/atoms/components/design-com/Icon/icons/card.vue +6 -6
  509. package/src/atoms/components/design-com/Icon/icons/check-circle-light.vue +7 -7
  510. package/src/atoms/components/design-com/Icon/icons/chevron-down.vue +7 -7
  511. package/src/atoms/components/design-com/Icon/icons/chevron-left.vue +7 -7
  512. package/src/atoms/components/design-com/Icon/icons/chevron-right.vue +3 -3
  513. package/src/atoms/components/design-com/Icon/icons/chevron-up.vue +7 -7
  514. package/src/atoms/components/design-com/Icon/icons/diamond.vue +7 -7
  515. package/src/atoms/components/design-com/Icon/icons/download.vue +7 -7
  516. package/src/atoms/components/design-com/Icon/icons/file-empty.vue +7 -7
  517. package/src/atoms/components/design-com/Icon/icons/file.vue +7 -7
  518. package/src/atoms/components/design-com/Icon/icons/filter.vue +7 -7
  519. package/src/atoms/components/design-com/Icon/icons/folder.vue +5 -5
  520. package/src/atoms/components/design-com/Icon/icons/font.vue +7 -7
  521. package/src/atoms/components/design-com/Icon/icons/headphones.vue +7 -7
  522. package/src/atoms/components/design-com/Icon/icons/heart.vue +7 -7
  523. package/src/atoms/components/design-com/Icon/icons/image.vue +7 -7
  524. package/src/atoms/components/design-com/Icon/icons/lightning.vue +7 -7
  525. package/src/atoms/components/design-com/Icon/icons/logo.vue +7 -7
  526. package/src/atoms/components/design-com/Icon/icons/minus-circle-light.vue +7 -7
  527. package/src/atoms/components/design-com/Icon/icons/plus-circle-light.vue +8 -8
  528. package/src/atoms/components/design-com/Icon/icons/printing.vue +5 -5
  529. package/src/atoms/components/design-com/Icon/icons/question-circle-filled.vue +7 -7
  530. package/src/atoms/components/design-com/Icon/icons/search.vue +7 -7
  531. package/src/atoms/components/design-com/Icon/icons/shield-tick.vue +5 -5
  532. package/src/atoms/components/design-com/Icon/icons/star-filled.vue +6 -6
  533. package/src/atoms/components/design-com/Icon/icons/star-hollow.vue +6 -6
  534. package/src/atoms/components/design-com/Icon/icons/users.vue +7 -7
  535. package/src/atoms/constants/constants.ts +6 -6
  536. package/src/atoms/mixin/hash-router-mixin.js +68 -68
  537. package/src/atoms/thirdparty-components/VueMasonryWall/VueMasonryWall.vue +280 -280
  538. package/src/atoms/thirdparty-components/VueMasonryWall/maxBy.js +50 -50
  539. package/src/bundleTranslation.js +86 -86
  540. package/src/bundles/bundled-translations.de-DE.json +49 -7
  541. package/src/bundles/bundled-translations.es-ES.json +49 -7
  542. package/src/bundles/bundled-translations.fr-CA.json +49 -7
  543. package/src/bundles/bundled-translations.fr-FR.json +49 -7
  544. package/src/bundles/bundled-translations.json +49 -7
  545. package/src/bundles/bundled-translations.pt-BR.json +49 -7
  546. package/src/bundles/bundled-translations.pt-PT.json +49 -7
  547. package/src/css/tailwind.css +3 -3
  548. package/src/experiences/clients/brand-crowd-api.client.js +124 -124
  549. package/src/experiences/clients/brand-page-api.client.js +62 -62
  550. package/src/experiences/components/AuthFlow/Auth.fixtures.js +4 -4
  551. package/src/experiences/components/AuthFlow/Auth.stories.js +345 -345
  552. package/src/experiences/components/AuthFlow/AuthCrazyDomains.stories.js +60 -60
  553. package/src/experiences/components/AuthFlow/AuthLegal.vue +108 -108
  554. package/src/experiences/components/AuthFlow/AuthModal.vue +39 -39
  555. package/src/experiences/components/AuthFlow/ForgotPassword.vue +222 -222
  556. package/src/experiences/components/AuthFlow/ForgotPasswordModal.vue +68 -68
  557. package/src/experiences/components/AuthFlow/ResetPassword.vue +179 -179
  558. package/src/experiences/components/AuthFlow/ResetPasswordModal.vue +64 -64
  559. package/src/experiences/components/AuthFlow/ResetPasswordSuccessModal.vue +56 -56
  560. package/src/experiences/components/AuthFlow/SignIn.vue +472 -472
  561. package/src/experiences/components/AuthFlow/SignUp.vue +278 -278
  562. package/src/experiences/components/AuthFlow/SignUpModal.vue +90 -90
  563. package/src/experiences/components/AuthFlow/SocialSignIn.vue +177 -177
  564. package/src/experiences/components/AuthFlow/SocialSignInButton.vue +74 -74
  565. package/src/experiences/components/AuthFlow/SubmissionButton.vue +56 -56
  566. package/src/experiences/components/PaymentConfigList/PaymentConfig.mixin.js +118 -118
  567. package/src/experiences/components/PaymentConfigList/PaymentConfigDeleteConfigModal.vue +108 -108
  568. package/src/experiences/components/PaymentConfigList/PaymentConfigDropdown.vue +175 -175
  569. package/src/experiences/components/PaymentConfigList/PaymentConfigList.stories.js +234 -234
  570. package/src/experiences/components/PaymentConfigList/PaymentConfigList.vue +136 -136
  571. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.de-DE.json +11 -11
  572. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.es-ES.json +11 -11
  573. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.fr-CA.json +11 -11
  574. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.fr-FR.json +11 -11
  575. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.json +11 -11
  576. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.pt-BR.json +11 -11
  577. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.pt-PT.json +11 -11
  578. package/src/experiences/components/PublishBrandPageModal/PublishBrandPageCard.vue +119 -119
  579. package/src/experiences/components/PublishBrandPageModal/PublishBrandPageModal.stories.js +262 -262
  580. package/src/experiences/components/PublishBrandPageModal/__fixtures__/data.js +25 -25
  581. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.de-DE.json +26 -26
  582. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.es-ES.json +26 -26
  583. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.fr-CA.json +26 -26
  584. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.fr-FR.json +26 -26
  585. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.json +26 -26
  586. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.pt-BR.json +26 -26
  587. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.pt-PT.json +26 -26
  588. package/src/experiences/components/SellDomainNameList/SellDomainNameList.fixtures.js +32 -32
  589. package/src/experiences/components/SellDomainNameList/SellDomainNameList.vue +157 -157
  590. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.de-DE.json +7 -7
  591. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.es-ES.json +7 -7
  592. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.fr-CA.json +7 -7
  593. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.fr-FR.json +7 -7
  594. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.json +7 -7
  595. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.pt-BR.json +7 -7
  596. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.pt-PT.json +7 -7
  597. package/src/experiences/components/SellDomainNameListModal/SellDomainNameListModal.stories.js +74 -74
  598. package/src/experiences/components/SellDomainNameListModal/SellDomainNameListModal.vue +128 -128
  599. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.de-DE.json +5 -5
  600. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.es-ES.json +5 -5
  601. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.fr-CA.json +5 -5
  602. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.fr-FR.json +5 -5
  603. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.json +5 -5
  604. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.pt-BR.json +5 -5
  605. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.pt-PT.json +5 -5
  606. package/src/experiences/components/SellDomainNameModalApplication/SellDomainNameModalApplication.vue +222 -222
  607. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.de-DE.json +5 -5
  608. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.es-ES.json +5 -5
  609. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.fr-CA.json +5 -5
  610. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.fr-FR.json +5 -5
  611. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.json +5 -5
  612. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.pt-BR.json +5 -5
  613. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.pt-PT.json +5 -5
  614. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.de-DE.json +7 -7
  615. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.es-ES.json +7 -7
  616. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.fr-CA.json +7 -7
  617. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.fr-FR.json +7 -7
  618. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.json +7 -7
  619. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.pt-BR.json +7 -7
  620. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.pt-PT.json +7 -7
  621. package/src/experiences/components/SellDomainNameSearchResult/SellDomainNameListSearchResult.vue +167 -167
  622. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.de-DE.json +5 -5
  623. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.es-ES.json +5 -5
  624. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.fr-CA.json +5 -5
  625. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.fr-FR.json +5 -5
  626. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.json +5 -5
  627. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.pt-BR.json +5 -5
  628. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.pt-PT.json +5 -5
  629. package/src/experiences/components/SellDomainNameSearchWithResults/SellDomainNameSearchWithResults.stories.js +38 -38
  630. package/src/experiences/components/SellDomainNameSearchWithResults/SellDomainNameSearchWithResults.vue +223 -223
  631. package/src/experiences/components/SellDomainNameWidget/SellDomainNameWidget.stories.js +40 -40
  632. package/src/experiences/components/SellDomainNameWidget/SellDomainNameWidget.vue +155 -155
  633. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.de-DE.json +7 -7
  634. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.es-ES.json +7 -7
  635. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.fr-CA.json +7 -7
  636. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.fr-FR.json +7 -7
  637. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.json +7 -7
  638. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.pt-BR.json +7 -7
  639. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.pt-PT.json +7 -7
  640. package/src/experiences/components/SideNavigationPanel/MenuCta.vue +62 -62
  641. package/src/experiences/components/SideNavigationPanel/MenuItem.vue +40 -40
  642. package/src/experiences/components/SideNavigationPanel/SideNavigationPanel.stories.js +219 -219
  643. package/src/experiences/components/SideNavigationPanel/SideNavigationPanel.vue +48 -48
  644. package/src/experiences/components/SideNavigationPanel/types.ts +7 -7
  645. package/src/experiences/components/UploadYourLogoApplication/UploadYourLogoApplication.stories.js +205 -205
  646. package/src/experiences/components/UploadYourLogoApplication/UploadYourLogoApplication.vue +135 -133
  647. package/src/experiences/components/UploadYourLogoDropzone/UploadYourLogoDropzone.stories.js +59 -59
  648. package/src/experiences/components/UploadYourLogoDropzone/UploadYourLogoDropzone.vue +285 -285
  649. package/src/experiences/components/UploadYourLogoOnBoarding/LogoBusinessBrandColours.stories.js +37 -37
  650. package/src/experiences/components/UploadYourLogoOnBoarding/LogoBusinessBrandColours.vue +338 -338
  651. package/src/experiences/components/UploadYourLogoOnBoarding/LogoBusinessText.vue +146 -146
  652. package/src/experiences/components/UploadYourLogoOnBoarding/LogoCropper.vue +473 -473
  653. package/src/experiences/components/UploadYourLogoOnBoarding/LogoPreview.vue +103 -103
  654. package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploadError.vue +75 -75
  655. package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploadExitConfirmation.vue +55 -55
  656. package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploadModal.vue +38 -38
  657. package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploader.vue +109 -102
  658. package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploadingLoader.vue +39 -22
  659. package/src/experiences/components/UploadYourLogoOnBoarding/UploadYourLogoOnBoarding.vue +311 -302
  660. package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.de-DE.json +34 -34
  661. package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.es-ES.json +34 -34
  662. package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.fr-CA.json +34 -34
  663. package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.fr-FR.json +34 -34
  664. package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.json +35 -35
  665. package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.pt-BR.json +34 -34
  666. package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.pt-PT.json +34 -34
  667. package/src/experiences/components/UploadedLogoSearchResultCard/UploadedLogoSearchResultCard.stories.js +82 -82
  668. package/src/experiences/components/UploadedLogoSearchResultCard/UploadedLogoSearchResultCard.vue +211 -211
  669. package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.de-DE.json +8 -8
  670. package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.es-ES.json +8 -8
  671. package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.fr-CA.json +8 -8
  672. package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.fr-FR.json +8 -8
  673. package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.json +8 -8
  674. package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.pt-BR.json +8 -8
  675. package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.pt-PT.json +8 -8
  676. package/src/experiences/components/WebsitesContextualUpgradeModal/WebsiteContextualUpgradeModal.stories.js +181 -181
  677. package/src/experiences/components/WebsitesContextualUpgradeModal/WebsiteContextualUpgradeModal.vue +203 -203
  678. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.de-DE.json +42 -42
  679. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.es-ES.json +42 -42
  680. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.fr-CA.json +42 -42
  681. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.fr-FR.json +42 -42
  682. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.json +42 -42
  683. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.pt-BR.json +42 -42
  684. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.pt-PT.json +42 -42
  685. package/src/experiences/constants/api.js +8 -8
  686. package/src/experiences/constants/error-constants.js +5 -5
  687. package/src/experiences/constants/event-constants.js +18 -18
  688. package/src/experiences/constants/partner-dictionary-constants.js +27 -27
  689. package/src/experiences/constants/rego-source-constants.js +3 -3
  690. package/src/experiences/constants/sell-domain-name-constants.js +4 -4
  691. package/src/experiences/helpers/email-validator.js +5 -5
  692. package/src/experiences/helpers/hex-diff.js +116 -116
  693. package/src/experiences/helpers/tracking.js +5 -5
  694. package/src/experiences/mixins/mediaQueryMixin.js +31 -31
  695. package/src/experiences/mixins/themeMixin.js +22 -22
  696. package/src/experiences/models/websiteContextualModel.ts +11 -11
  697. package/src/themes/base.js +20 -20
  698. package/src/themes/bc.js +95 -95
  699. package/src/themes/bp.js +21 -21
  700. package/src/themes/cd.js +94 -94
  701. package/src/themes/dc.js +84 -84
  702. package/src/themes/dcom.js +106 -106
  703. package/src/themes/themes.js +16 -16
  704. package/src/useSharedLibTranslate.js +131 -131
  705. package/src/viewports.js +51 -51
  706. package/stylelint.config.js +19 -19
  707. package/tailwind.build.js +83 -83
  708. package/tailwind.config.js +36 -36
  709. package/tailwind.themes.js +59 -59
  710. package/vite.config.ts +37 -37
@@ -1,203 +1,203 @@
1
- <template>
2
- <Modal
3
- :visible="props.isUpgradeModalVisible"
4
- full-screen-breakpoint="sm"
5
- :show-modal-background-image="!isDesignCom"
6
- classes="tw-max-w-3xl tw-p-8"
7
- @close-modal="closeUpgradeModal"
8
- >
9
- <div class="tw-flex tw-flex-col tw-text-black">
10
- <div class="tw-flex tw-flex-col tw-pb-16 md:tw-pb-0">
11
- <Icon
12
- v-if="iconName"
13
- :name="iconName"
14
- :view-box="'0 0 100 100'"
15
- size="5xl"
16
- :class="{
17
- 'tw-text-primary-500': isDesignCom,
18
- 'tw-text-white': !isDesignCom,
19
- }"
20
- class="tw-mb-4"
21
- />
22
- <h2 v-if="titleText" class="tw-font-bold tw-text-3xl tw-mb-2">
23
- {{ titleText }}
24
- </h2>
25
- <span class="tw-text-grayscale-600 tw-mb-2" v-html="descriptionText" />
26
- <br />
27
- <p class="tw-font-bold">{{ websiteContextualUpgradeModalTr('premiumUpgradeNote') }}</p>
28
- <div class="tw-flex tw-flex-col md:tw-flex-row tw-mt-2">
29
- <div
30
- class="tw-order-last md:tw-order-first tw-w-full md:tw-w-3/4 tw-grid tw-grid-cols-1 md:tw-grid-cols-2 tw-gap-4"
31
- >
32
- <div v-for="(feature, i) in features" :key="i" class="tw-flex tw-items-center tw-text-sm tw-rounded-md">
33
- <Icon class="tw-text-success-500" name="check" size="sm" />
34
- <span class="tw-ml-2 tw-text-grayscale-600" v-html="feature" />
35
- </div>
36
- </div>
37
- </div>
38
- </div>
39
- <div class="bottom-bar tw-mt-2">
40
- <div
41
- class="bottom-bar tw-mt-6 tw-bg-grayscale-200 tw-flex tw-flex-col md:tw-flex-row md:tw-items-center md:tw-gap-2"
42
- >
43
- <div class="button-size md:tw-flex-1">
44
- <Button
45
- data-test-upgrade-button
46
- :label="upgradeButtonText"
47
- size="medium"
48
- :variant="'primary'"
49
- icon="chevron-right-wide"
50
- :url="upgradeUrl"
51
- classes="tw-w-full"
52
- @on-click="onUpgradeClick"
53
- />
54
- </div>
55
- <div class="button-size nothanks-button-mobile md:tw-flex-1">
56
- <Button
57
- data-test-upgrade-button
58
- :label="websiteContextualUpgradeModalTr('closeButtonText')"
59
- size="medium"
60
- :variant="'no-border'"
61
- classes="tw-w-full"
62
- @on-click="closeUpgradeModal"
63
- />
64
- </div>
65
- </div>
66
- </div>
67
- </div>
68
- </Modal>
69
- </template>
70
- <script setup lang="ts">
71
- import { Ref, ref } from 'vue';
72
- import Modal from '../../../atoms/components/Modal/Modal.vue';
73
- import Button from '../../../atoms/components/Button/Button.vue';
74
- import Icon from '../../../atoms/components/Icon/Icon.vue';
75
- import { websiteContextualUpgradeModalTr } from '../../../useSharedLibTranslate';
76
- import { WEBSITE_UPGRADE_CONTEXT_TYPES, type WebsiteContextUpgradeType } from '../../models/websiteContextualModel';
77
-
78
- const titleText: Ref<string> = ref('');
79
- const descriptionText: Ref<string> = ref('');
80
- const iconName: Ref<string> = ref('');
81
- const upgradeButtonText: Ref<string> = ref('');
82
- const features: Ref<string[]> = ref([]);
83
-
84
- const props = defineProps<{
85
- isUpgradeModalVisible: boolean;
86
- isDesignCom: boolean;
87
- upgradeUrl: string;
88
- brandPageType: string;
89
- contextType: WebsiteContextUpgradeType;
90
- }>();
91
-
92
- const FEATURE_KEYS = {
93
- PREMIUM_CONTENT: 'PREMIUM_CONTENT',
94
- STORE: 'STORE',
95
- UNLIMITED_PAGES: 'UNLIMITED_PAGES',
96
- CUSTOMER_CARE: 'CUSTOMER_CARE',
97
- CUSTOM_DOMAIN: 'CUSTOM_DOMAIN',
98
- CANCEL_ANYTIME: 'CANCEL_ANYTIME',
99
- NO_WATERMARK: 'NO_WATERMARK',
100
- } as const;
101
-
102
- type FeatureKey = keyof typeof FEATURE_KEYS;
103
-
104
- const FEATURE_CONFIG: Record<FeatureKey, (websiteName: string) => string> = {
105
- PREMIUM_CONTENT: () => websiteContextualUpgradeModalTr('featurePremiumContent'),
106
- STORE: () => websiteContextualUpgradeModalTr('featureStore'),
107
- UNLIMITED_PAGES: () => websiteContextualUpgradeModalTr('featureUnlimitedPages'),
108
- CUSTOMER_CARE: () => websiteContextualUpgradeModalTr('featureCustomerCare'),
109
- CUSTOM_DOMAIN: () => websiteContextualUpgradeModalTr('featureCustomDomain'),
110
- CANCEL_ANYTIME: () =>
111
- `<div class="tw-text-success-500"><strong>${websiteContextualUpgradeModalTr('featureCancelAnytime')}</strong></div>`,
112
- NO_WATERMARK: (websiteName: string) => websiteContextualUpgradeModalTr('featureNoWatermark', { websiteName }),
113
- };
114
-
115
- const FEATURE_ORDERS: Record<string, FeatureKey[]> = {
116
- PremiumContent: [
117
- 'PREMIUM_CONTENT',
118
- 'STORE',
119
- 'UNLIMITED_PAGES',
120
- 'CUSTOMER_CARE',
121
- 'CUSTOM_DOMAIN',
122
- 'CANCEL_ANYTIME',
123
- 'NO_WATERMARK',
124
- ],
125
- RemoveWatermark: [
126
- 'NO_WATERMARK',
127
- 'STORE',
128
- 'UNLIMITED_PAGES',
129
- 'CUSTOMER_CARE',
130
- 'PREMIUM_CONTENT',
131
- 'CANCEL_ANYTIME',
132
- 'CUSTOM_DOMAIN',
133
- ],
134
- Default: [
135
- 'UNLIMITED_PAGES',
136
- 'STORE',
137
- 'PREMIUM_CONTENT',
138
- 'CUSTOMER_CARE',
139
- 'CUSTOM_DOMAIN',
140
- 'CANCEL_ANYTIME',
141
- 'NO_WATERMARK',
142
- ],
143
- };
144
-
145
- const toKebabCase = (value: string) =>
146
- value
147
- .replace(/([a-z0-9])([A-Z])/g, '$1-$2')
148
- .replace(/([A-Z])([A-Z][a-z])/g, '$1-$2')
149
- .toLowerCase();
150
-
151
- const getFeatureOrder = (websiteName: string) => {
152
- const contextTypeKey =
153
- props.contextType === WEBSITE_UPGRADE_CONTEXT_TYPES.Maps ||
154
- props.contextType === WEBSITE_UPGRADE_CONTEXT_TYPES.Videos ||
155
- props.contextType === WEBSITE_UPGRADE_CONTEXT_TYPES.ContactForm
156
- ? 'PremiumContent'
157
- : props.contextType;
158
-
159
- const order = FEATURE_ORDERS[contextTypeKey] || FEATURE_ORDERS.Default;
160
-
161
- features.value = order.map((key) => FEATURE_CONFIG[key](websiteName));
162
- };
163
-
164
- const initModalContent = (websiteName: string) => {
165
- const titleForIcon = `upgradeTo${props.contextType}`;
166
- iconName.value = `websites-${toKebabCase(titleForIcon)}`;
167
-
168
- titleText.value = websiteContextualUpgradeModalTr(`${titleForIcon}.title`);
169
- descriptionText.value = websiteContextualUpgradeModalTr(`${titleForIcon}.description`);
170
- upgradeButtonText.value = websiteContextualUpgradeModalTr('upgradeButtonText');
171
-
172
- getFeatureOrder(websiteName);
173
- };
174
-
175
- const websiteName = props.isDesignCom ? 'Design.com' : 'BrandCrowd';
176
- initModalContent(websiteName);
177
-
178
- const emit = defineEmits<{
179
- 'on-close-upgrade-modal': [];
180
- 'on-upgrade-button-clicked': [];
181
- }>();
182
-
183
- const closeUpgradeModal = () => {
184
- emit('on-close-upgrade-modal');
185
- };
186
-
187
- const onUpgradeClick = () => {
188
- emit('on-upgrade-button-clicked');
189
- };
190
- </script>
191
- <style scoped>
192
- .bottom-bar {
193
- @apply tw-absolute tw-p-4 tw-bottom-0 tw-left-0 tw-w-full tw-border-t tw-border-grayscale-300 md:tw-p-0 md:tw-relative md:tw-border-none;
194
- }
195
- .button-size {
196
- @apply tw-w-full md:tw-max-w-40;
197
- }
198
- @media (max-width: 768px) {
199
- .nothanks-button-mobile {
200
- @apply tw-hidden;
201
- }
202
- }
203
- </style>
1
+ <template>
2
+ <Modal
3
+ :visible="props.isUpgradeModalVisible"
4
+ full-screen-breakpoint="sm"
5
+ :show-modal-background-image="!isDesignCom"
6
+ classes="tw-max-w-3xl tw-p-8"
7
+ @close-modal="closeUpgradeModal"
8
+ >
9
+ <div class="tw-flex tw-flex-col tw-text-black">
10
+ <div class="tw-flex tw-flex-col tw-pb-16 md:tw-pb-0">
11
+ <Icon
12
+ v-if="iconName"
13
+ :name="iconName"
14
+ :view-box="'0 0 100 100'"
15
+ size="5xl"
16
+ :class="{
17
+ 'tw-text-primary-500': isDesignCom,
18
+ 'tw-text-white': !isDesignCom,
19
+ }"
20
+ class="tw-mb-4"
21
+ />
22
+ <h2 v-if="titleText" class="tw-font-bold tw-text-3xl tw-mb-2">
23
+ {{ titleText }}
24
+ </h2>
25
+ <span class="tw-text-grayscale-600 tw-mb-2" v-html="descriptionText" />
26
+ <br />
27
+ <p class="tw-font-bold">{{ websiteContextualUpgradeModalTr('premiumUpgradeNote') }}</p>
28
+ <div class="tw-flex tw-flex-col md:tw-flex-row tw-mt-2">
29
+ <div
30
+ class="tw-order-last md:tw-order-first tw-w-full md:tw-w-3/4 tw-grid tw-grid-cols-1 md:tw-grid-cols-2 tw-gap-4"
31
+ >
32
+ <div v-for="(feature, i) in features" :key="i" class="tw-flex tw-items-center tw-text-sm tw-rounded-md">
33
+ <Icon class="tw-text-success-500" name="check" size="sm" />
34
+ <span class="tw-ml-2 tw-text-grayscale-600" v-html="feature" />
35
+ </div>
36
+ </div>
37
+ </div>
38
+ </div>
39
+ <div class="bottom-bar tw-mt-2">
40
+ <div
41
+ class="bottom-bar tw-mt-6 tw-bg-grayscale-200 tw-flex tw-flex-col md:tw-flex-row md:tw-items-center md:tw-gap-2"
42
+ >
43
+ <div class="button-size md:tw-flex-1">
44
+ <Button
45
+ data-test-upgrade-button
46
+ :label="upgradeButtonText"
47
+ size="medium"
48
+ :variant="'primary'"
49
+ icon="chevron-right-wide"
50
+ :url="upgradeUrl"
51
+ classes="tw-w-full"
52
+ @on-click="onUpgradeClick"
53
+ />
54
+ </div>
55
+ <div class="button-size nothanks-button-mobile md:tw-flex-1">
56
+ <Button
57
+ data-test-upgrade-button
58
+ :label="websiteContextualUpgradeModalTr('closeButtonText')"
59
+ size="medium"
60
+ :variant="'no-border'"
61
+ classes="tw-w-full"
62
+ @on-click="closeUpgradeModal"
63
+ />
64
+ </div>
65
+ </div>
66
+ </div>
67
+ </div>
68
+ </Modal>
69
+ </template>
70
+ <script setup lang="ts">
71
+ import { Ref, ref } from 'vue';
72
+ import Modal from '../../../atoms/components/Modal/Modal.vue';
73
+ import Button from '../../../atoms/components/Button/Button.vue';
74
+ import Icon from '../../../atoms/components/Icon/Icon.vue';
75
+ import { websiteContextualUpgradeModalTr } from '../../../useSharedLibTranslate';
76
+ import { WEBSITE_UPGRADE_CONTEXT_TYPES, type WebsiteContextUpgradeType } from '../../models/websiteContextualModel';
77
+
78
+ const titleText: Ref<string> = ref('');
79
+ const descriptionText: Ref<string> = ref('');
80
+ const iconName: Ref<string> = ref('');
81
+ const upgradeButtonText: Ref<string> = ref('');
82
+ const features: Ref<string[]> = ref([]);
83
+
84
+ const props = defineProps<{
85
+ isUpgradeModalVisible: boolean;
86
+ isDesignCom: boolean;
87
+ upgradeUrl: string;
88
+ brandPageType: string;
89
+ contextType: WebsiteContextUpgradeType;
90
+ }>();
91
+
92
+ const FEATURE_KEYS = {
93
+ PREMIUM_CONTENT: 'PREMIUM_CONTENT',
94
+ STORE: 'STORE',
95
+ UNLIMITED_PAGES: 'UNLIMITED_PAGES',
96
+ CUSTOMER_CARE: 'CUSTOMER_CARE',
97
+ CUSTOM_DOMAIN: 'CUSTOM_DOMAIN',
98
+ CANCEL_ANYTIME: 'CANCEL_ANYTIME',
99
+ NO_WATERMARK: 'NO_WATERMARK',
100
+ } as const;
101
+
102
+ type FeatureKey = keyof typeof FEATURE_KEYS;
103
+
104
+ const FEATURE_CONFIG: Record<FeatureKey, (websiteName: string) => string> = {
105
+ PREMIUM_CONTENT: () => websiteContextualUpgradeModalTr('featurePremiumContent'),
106
+ STORE: () => websiteContextualUpgradeModalTr('featureStore'),
107
+ UNLIMITED_PAGES: () => websiteContextualUpgradeModalTr('featureUnlimitedPages'),
108
+ CUSTOMER_CARE: () => websiteContextualUpgradeModalTr('featureCustomerCare'),
109
+ CUSTOM_DOMAIN: () => websiteContextualUpgradeModalTr('featureCustomDomain'),
110
+ CANCEL_ANYTIME: () =>
111
+ `<div class="tw-text-success-500"><strong>${websiteContextualUpgradeModalTr('featureCancelAnytime')}</strong></div>`,
112
+ NO_WATERMARK: (websiteName: string) => websiteContextualUpgradeModalTr('featureNoWatermark', { websiteName }),
113
+ };
114
+
115
+ const FEATURE_ORDERS: Record<string, FeatureKey[]> = {
116
+ PremiumContent: [
117
+ 'PREMIUM_CONTENT',
118
+ 'STORE',
119
+ 'UNLIMITED_PAGES',
120
+ 'CUSTOMER_CARE',
121
+ 'CUSTOM_DOMAIN',
122
+ 'CANCEL_ANYTIME',
123
+ 'NO_WATERMARK',
124
+ ],
125
+ RemoveWatermark: [
126
+ 'NO_WATERMARK',
127
+ 'STORE',
128
+ 'UNLIMITED_PAGES',
129
+ 'CUSTOMER_CARE',
130
+ 'PREMIUM_CONTENT',
131
+ 'CANCEL_ANYTIME',
132
+ 'CUSTOM_DOMAIN',
133
+ ],
134
+ Default: [
135
+ 'UNLIMITED_PAGES',
136
+ 'STORE',
137
+ 'PREMIUM_CONTENT',
138
+ 'CUSTOMER_CARE',
139
+ 'CUSTOM_DOMAIN',
140
+ 'CANCEL_ANYTIME',
141
+ 'NO_WATERMARK',
142
+ ],
143
+ };
144
+
145
+ const toKebabCase = (value: string) =>
146
+ value
147
+ .replace(/([a-z0-9])([A-Z])/g, '$1-$2')
148
+ .replace(/([A-Z])([A-Z][a-z])/g, '$1-$2')
149
+ .toLowerCase();
150
+
151
+ const getFeatureOrder = (websiteName: string) => {
152
+ const contextTypeKey =
153
+ props.contextType === WEBSITE_UPGRADE_CONTEXT_TYPES.Maps ||
154
+ props.contextType === WEBSITE_UPGRADE_CONTEXT_TYPES.Videos ||
155
+ props.contextType === WEBSITE_UPGRADE_CONTEXT_TYPES.ContactForm
156
+ ? 'PremiumContent'
157
+ : props.contextType;
158
+
159
+ const order = FEATURE_ORDERS[contextTypeKey] || FEATURE_ORDERS.Default;
160
+
161
+ features.value = order.map((key) => FEATURE_CONFIG[key](websiteName));
162
+ };
163
+
164
+ const initModalContent = (websiteName: string) => {
165
+ const titleForIcon = `upgradeTo${props.contextType}`;
166
+ iconName.value = `websites-${toKebabCase(titleForIcon)}`;
167
+
168
+ titleText.value = websiteContextualUpgradeModalTr(`${titleForIcon}.title`);
169
+ descriptionText.value = websiteContextualUpgradeModalTr(`${titleForIcon}.description`);
170
+ upgradeButtonText.value = websiteContextualUpgradeModalTr('upgradeButtonText');
171
+
172
+ getFeatureOrder(websiteName);
173
+ };
174
+
175
+ const websiteName = props.isDesignCom ? 'Design.com' : 'BrandCrowd';
176
+ initModalContent(websiteName);
177
+
178
+ const emit = defineEmits<{
179
+ 'on-close-upgrade-modal': [];
180
+ 'on-upgrade-button-clicked': [];
181
+ }>();
182
+
183
+ const closeUpgradeModal = () => {
184
+ emit('on-close-upgrade-modal');
185
+ };
186
+
187
+ const onUpgradeClick = () => {
188
+ emit('on-upgrade-button-clicked');
189
+ };
190
+ </script>
191
+ <style scoped>
192
+ .bottom-bar {
193
+ @apply tw-absolute tw-p-4 tw-bottom-0 tw-left-0 tw-w-full tw-border-t tw-border-grayscale-300 md:tw-p-0 md:tw-relative md:tw-border-none;
194
+ }
195
+ .button-size {
196
+ @apply tw-w-full md:tw-max-w-40;
197
+ }
198
+ @media (max-width: 768px) {
199
+ .nothanks-button-mobile {
200
+ @apply tw-hidden;
201
+ }
202
+ }
203
+ </style>
@@ -1,42 +1,42 @@
1
- {
2
- "websiteContextualUpgradeModal": {
3
- "upgradeButtonText": "Jetzt upgraden",
4
- "closeButtonText": "Nein, danke",
5
- "featureCustomerCare": "Kundenbetreuung rund um die Uhr",
6
- "featureCustomDomain": "Eine benutzerdefinierte Domain verbinden",
7
- "featureNoWatermark": "Kein {{websiteName}}-Wasserzeichen",
8
- "featureUnlimitedPages": "Unbegrenzte Seiten",
9
- "featurePremiumContent": "Kontaktformulare, Videos und Karten",
10
- "featureStore": "Einfacher Online-Shop",
11
- "featureCancelAnytime": "Jederzeit kündigen",
12
- "premiumUpgradeNote": "Mit Premium erhalten Sie:",
13
- "upgradeToAddPage": {
14
- "title": "Mit einem Upgrade können Sie weitere Seiten hinzufügen.",
15
- "description": "Sie haben das kostenlose Seitenlimit erreicht. Mit einem Upgrade können Sie Ihre Website weiter ausbauen und alle Premium-Funktionen nutzen."
16
- },
17
- "upgradeToContactForm": {
18
- "title": "Upgraden, um das Kontaktformular freizuschalten",
19
- "description": "Lassen Sie Besucher Sie direkt erreichen. Führen Sie ein Upgrade durch, um ein Kontaktformular zu Ihrer Website hinzuzufügen und auf alle Premium-Funktionen zuzugreifen."
20
- },
21
- "upgradeToMaps": {
22
- "title": "Upgraden, um Karten freizuschalten",
23
- "description": "Helfen Sie den Besuchern, Sie leicht zu finden. Führen Sie ein Upgrade durch, um interaktive Karten in Ihre Website einzubetten und auf alle Premium-Funktionen zuzugreifen."
24
- },
25
- "upgradeToVideos": {
26
- "title": "Upgraden, um Videos freizuschalten",
27
- "description": "Erwecken Sie Ihren Inhalt zum Leben. Führen Sie ein Upgrade durch, um Videos in Ihre Website einzubetten, sie abzuspielen und auf alle Premium-Funktionen zuzugreifen."
28
- },
29
- "upgradeToRemoveWatermark": {
30
- "title": "Upgrade zum Entfernen des Wasserzeichens",
31
- "description": "Machen Sie sie wirklich zu Ihrer eigenen. Führen Sie ein Upgrade durch, um unser Wasserzeichen von Ihrer Website zu entfernen und auf alle Premium-Funktionen zuzugreifen."
32
- },
33
- "upgradeToPublish": {
34
- "title": "Zum Veröffentlichen upgraden",
35
- "description": "Sie können mit jedem Abonnement eine Website veröffentlichen. Fügen Sie ein weiteres Abonnement hinzu, um diese Website zu veröffentlichen und auf alle Premium-Funktionen zuzugreifen."
36
- },
37
- "upgradeToGoogleAd": {
38
- "title": "Upgraden, um Google AdSense freizuschalten",
39
- "description": "Verbinden Sie Google AdSense und verdienen Sie Geld mit Ihrem Traffic. Führen Sie ein Upgrade durch, um alle Premium-Funktionen freizuschalten."
40
- }
41
- }
42
- }
1
+ {
2
+ "websiteContextualUpgradeModal": {
3
+ "upgradeButtonText": "Jetzt upgraden",
4
+ "closeButtonText": "Nein, danke",
5
+ "featureCustomerCare": "Kundenbetreuung rund um die Uhr",
6
+ "featureCustomDomain": "Eine benutzerdefinierte Domain verbinden",
7
+ "featureNoWatermark": "Kein {{websiteName}}-Wasserzeichen",
8
+ "featureUnlimitedPages": "Unbegrenzte Seiten",
9
+ "featurePremiumContent": "Kontaktformulare, Videos und Karten",
10
+ "featureStore": "Einfacher Online-Shop",
11
+ "featureCancelAnytime": "Jederzeit kündigen",
12
+ "premiumUpgradeNote": "Mit Premium erhalten Sie:",
13
+ "upgradeToAddPage": {
14
+ "title": "Mit einem Upgrade können Sie weitere Seiten hinzufügen.",
15
+ "description": "Sie haben das kostenlose Seitenlimit erreicht. Mit einem Upgrade können Sie Ihre Website weiter ausbauen und alle Premium-Funktionen nutzen."
16
+ },
17
+ "upgradeToContactForm": {
18
+ "title": "Upgraden, um das Kontaktformular freizuschalten",
19
+ "description": "Lassen Sie Besucher Sie direkt erreichen. Führen Sie ein Upgrade durch, um ein Kontaktformular zu Ihrer Website hinzuzufügen und auf alle Premium-Funktionen zuzugreifen."
20
+ },
21
+ "upgradeToMaps": {
22
+ "title": "Upgraden, um Karten freizuschalten",
23
+ "description": "Helfen Sie den Besuchern, Sie leicht zu finden. Führen Sie ein Upgrade durch, um interaktive Karten in Ihre Website einzubetten und auf alle Premium-Funktionen zuzugreifen."
24
+ },
25
+ "upgradeToVideos": {
26
+ "title": "Upgraden, um Videos freizuschalten",
27
+ "description": "Erwecken Sie Ihren Inhalt zum Leben. Führen Sie ein Upgrade durch, um Videos in Ihre Website einzubetten, sie abzuspielen und auf alle Premium-Funktionen zuzugreifen."
28
+ },
29
+ "upgradeToRemoveWatermark": {
30
+ "title": "Upgrade zum Entfernen des Wasserzeichens",
31
+ "description": "Machen Sie sie wirklich zu Ihrer eigenen. Führen Sie ein Upgrade durch, um unser Wasserzeichen von Ihrer Website zu entfernen und auf alle Premium-Funktionen zuzugreifen."
32
+ },
33
+ "upgradeToPublish": {
34
+ "title": "Zum Veröffentlichen upgraden",
35
+ "description": "Sie können mit jedem Abonnement eine Website veröffentlichen. Fügen Sie ein weiteres Abonnement hinzu, um diese Website zu veröffentlichen und auf alle Premium-Funktionen zuzugreifen."
36
+ },
37
+ "upgradeToGoogleAd": {
38
+ "title": "Upgraden, um Google AdSense freizuschalten",
39
+ "description": "Verbinden Sie Google AdSense und verdienen Sie Geld mit Ihrem Traffic. Führen Sie ein Upgrade durch, um alle Premium-Funktionen freizuschalten."
40
+ }
41
+ }
42
+ }
@@ -1,42 +1,42 @@
1
- {
2
- "websiteContextualUpgradeModal": {
3
- "upgradeButtonText": "Hazte prémium ya",
4
- "closeButtonText": "No, gracias",
5
- "featureCustomerCare": "Atención al cliente 24/7",
6
- "featureCustomDomain": "Conecta un dominio personalizado",
7
- "featureNoWatermark": "Sin marca de agua {{websiteName}}",
8
- "featureUnlimitedPages": "Páginas ilimitadas",
9
- "featurePremiumContent": "Formularios de contacto, vídeos y mapas",
10
- "featureStore": "Tienda online básica",
11
- "featureCancelAnytime": "Cancela en cualquier momento",
12
- "premiumUpgradeNote": "Con prémium, obtendrás:",
13
- "upgradeToAddPage": {
14
- "title": "Mejora para añadir más páginas",
15
- "description": "Has alcanzado el límite de páginas gratis. Actualiza para seguir construyendo tu sitio y acceder a todas las características prémium."
16
- },
17
- "upgradeToContactForm": {
18
- "title": "Actualiza para desbloquear el formulario de contacto.",
19
- "description": "Deja que los visitantes lleguen hasta ti directamente. Actualiza para añadir un formulario de contacto a tu sitio y acceder a todas las características prémium."
20
- },
21
- "upgradeToMaps": {
22
- "title": "Actualiza para desbloquear los mapas.",
23
- "description": "Ayuda a los visitantes a encontrarte fácilmente. Actualiza para incrustar mapas interactivos en tu sitio y accede a todas las características prémium."
24
- },
25
- "upgradeToVideos": {
26
- "title": "Actualiza para desbloquear vídeos",
27
- "description": "Da vida a tu contenido. Actualiza para incrustar y reproducir vídeos en tu sitio y accede a todas las características prémium."
28
- },
29
- "upgradeToRemoveWatermark": {
30
- "title": "Actualiza para eliminar marca de agua",
31
- "description": "Hazlo tuyo de verdad. Actualiza para eliminar nuestra marca de agua de tu sitio web y accede a todas las características prémium."
32
- },
33
- "upgradeToPublish": {
34
- "title": "Actualiza para publicar",
35
- "description": "Cada suscripción te permite publicar un sitio web. Añade otra suscripción para publicar este sitio y acceder a todas las características prémium."
36
- },
37
- "upgradeToGoogleAd": {
38
- "title": "Actualiza para desbloquear Google AdSense",
39
- "description": "Conecta Google AdSense y empieza a ganar dinero con tu tráfico. Actualiza para desbloquear todas las características prémium."
40
- }
41
- }
42
- }
1
+ {
2
+ "websiteContextualUpgradeModal": {
3
+ "upgradeButtonText": "Hazte prémium ya",
4
+ "closeButtonText": "No, gracias",
5
+ "featureCustomerCare": "Atención al cliente 24/7",
6
+ "featureCustomDomain": "Conecta un dominio personalizado",
7
+ "featureNoWatermark": "Sin marca de agua {{websiteName}}",
8
+ "featureUnlimitedPages": "Páginas ilimitadas",
9
+ "featurePremiumContent": "Formularios de contacto, vídeos y mapas",
10
+ "featureStore": "Tienda online básica",
11
+ "featureCancelAnytime": "Cancela en cualquier momento",
12
+ "premiumUpgradeNote": "Con prémium, obtendrás:",
13
+ "upgradeToAddPage": {
14
+ "title": "Mejora para añadir más páginas",
15
+ "description": "Has alcanzado el límite de páginas gratis. Actualiza para seguir construyendo tu sitio y acceder a todas las características prémium."
16
+ },
17
+ "upgradeToContactForm": {
18
+ "title": "Actualiza para desbloquear el formulario de contacto.",
19
+ "description": "Deja que los visitantes lleguen hasta ti directamente. Actualiza para añadir un formulario de contacto a tu sitio y acceder a todas las características prémium."
20
+ },
21
+ "upgradeToMaps": {
22
+ "title": "Actualiza para desbloquear los mapas.",
23
+ "description": "Ayuda a los visitantes a encontrarte fácilmente. Actualiza para incrustar mapas interactivos en tu sitio y accede a todas las características prémium."
24
+ },
25
+ "upgradeToVideos": {
26
+ "title": "Actualiza para desbloquear vídeos",
27
+ "description": "Da vida a tu contenido. Actualiza para incrustar y reproducir vídeos en tu sitio y accede a todas las características prémium."
28
+ },
29
+ "upgradeToRemoveWatermark": {
30
+ "title": "Actualiza para eliminar marca de agua",
31
+ "description": "Hazlo tuyo de verdad. Actualiza para eliminar nuestra marca de agua de tu sitio web y accede a todas las características prémium."
32
+ },
33
+ "upgradeToPublish": {
34
+ "title": "Actualiza para publicar",
35
+ "description": "Cada suscripción te permite publicar un sitio web. Añade otra suscripción para publicar este sitio y acceder a todas las características prémium."
36
+ },
37
+ "upgradeToGoogleAd": {
38
+ "title": "Actualiza para desbloquear Google AdSense",
39
+ "description": "Conecta Google AdSense y empieza a ganar dinero con tu tráfico. Actualiza para desbloquear todas las características prémium."
40
+ }
41
+ }
42
+ }