@designcrowd/fe-shared-lib 1.7.0 → 1.8.0
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.
- package/.claude/settings.local.json +54 -0
- package/.claude/skills/playwright-cli/SKILL.md +278 -0
- package/.claude/skills/playwright-cli/references/request-mocking.md +87 -0
- package/.claude/skills/playwright-cli/references/running-code.md +232 -0
- package/.claude/skills/playwright-cli/references/session-management.md +169 -0
- package/.claude/skills/playwright-cli/references/storage-state.md +275 -0
- package/.claude/skills/playwright-cli/references/test-generation.md +88 -0
- package/.claude/skills/playwright-cli/references/tracing.md +139 -0
- package/.claude/skills/playwright-cli/references/video-recording.md +43 -0
- package/.eslintrc.js +36 -36
- package/.github/workflows/auto-merge.yml +52 -52
- package/.github/workflows/claude.yml +72 -72
- package/.playwright-cli/page-2026-04-15T02-26-54-483Z.yml +68 -0
- package/.playwright-cli/page-2026-04-15T02-27-08-312Z.yml +0 -0
- package/.playwright-cli/page-2026-04-15T02-27-25-596Z.yml +0 -0
- package/.playwright-cli/page-2026-04-15T02-27-40-203Z.yml +0 -0
- package/.playwright-cli/page-2026-04-15T02-38-58-180Z.yml +0 -0
- package/.playwright-cli/page-2026-04-15T02-39-01-736Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-39-10-233Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-39-43-909Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-40-44-800Z.yml +0 -0
- package/.playwright-cli/page-2026-04-15T02-40-54-188Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-40-59-031Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-51-07-111Z.yml +0 -0
- package/.playwright-cli/page-2026-04-15T02-51-10-941Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-51-17-020Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-51-42-403Z.yml +2 -0
- package/.playwright-cli/page-2026-04-15T02-51-53-552Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-51-54-631Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-52-16-170Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-52-17-246Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-52-28-472Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-53-15-507Z.yml +0 -0
- package/.playwright-cli/page-2026-04-15T02-53-16-554Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-53-22-178Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T02-53-34-973Z.yml +26 -0
- package/.playwright-cli/page-2026-04-15T06-15-29-589Z.yml +68 -0
- package/.playwright-cli/page-2026-04-15T06-15-41-114Z.yml +68 -0
- package/.prettierrc.js +7 -7
- package/.storybook/main.ts +36 -36
- package/.storybook/preview-head-master.html +4 -4
- package/.storybook/preview-head-publish-master.html +4 -4
- package/.storybook/preview-head-publish.html +9 -9
- package/.storybook/preview-head.html +9 -9
- package/.storybook/preview.js +53 -53
- package/.storybook-static/assets/Auth-DT64t5h-.css +1 -0
- package/.storybook-static/assets/Auth.stories-C6eXcTSu.js +490 -0
- package/.storybook-static/assets/AuthCrazyDomains.stories-DGvEoWCa.js +73 -0
- package/.storybook-static/assets/Button-5UzSGUF6.css +1 -0
- package/.storybook-static/assets/Button-DKdQT6Fq.js +1 -0
- package/.storybook-static/assets/ButtonGroup-DDPXuhxR.css +1 -0
- package/.storybook-static/assets/ButtonGroup.stories-DlrYMRSk.js +504 -0
- package/.storybook-static/assets/ButtonPrimary-Bu6bXb_c.css +1 -0
- package/.storybook-static/assets/ButtonPrimary-BvWW6Duz.js +1 -0
- package/.storybook-static/assets/Buttons.stories-CKmd6hkZ.js +761 -0
- package/.storybook-static/assets/ButtonsCrazyDomains.stories-DdEuOUrn.js +199 -0
- package/.storybook-static/assets/Checkbox.mixin-DkHpdvGa.js +1 -0
- package/.storybook-static/assets/Checkbox.stories-DPBUC2Mx.js +246 -0
- package/.storybook-static/assets/Checktile.stories-ByaFwplD.js +88 -0
- package/.storybook-static/assets/CollapsiblePanel.stories-Y6q3gP9j.js +56 -0
- package/.storybook-static/assets/ColorPicker.stories-DdxPUB_R.js +73 -0
- package/.storybook-static/assets/CopyToClipboardText.stories-J9qndWxd.js +32 -0
- package/.storybook-static/assets/Dropdown.stories-1zKPATii.js +159 -0
- package/.storybook-static/assets/DropdownItem-BV-BdThU.css +1 -0
- package/.storybook-static/assets/DropdownItem-DA6TdpDb.js +1 -0
- package/.storybook-static/assets/FormControl.mixin-DcEBwrV3.js +1 -0
- package/.storybook-static/assets/HashRouteModal.stories-BGxvqE22.js +60 -0
- package/.storybook-static/assets/HelloBar-CYEZR2kQ.js +1 -0
- package/.storybook-static/assets/HelloBar.stories-597Kxj0W.js +342 -0
- package/.storybook-static/assets/Icon-C17LFvsP.js +145 -0
- package/.storybook-static/assets/Icon.stories-B9iAmcTU.js +151 -0
- package/.storybook-static/assets/Icon.stories-CR5vT9H7.js +791 -0
- package/.storybook-static/assets/Loader-BWGoT_xC.js +1 -0
- package/.storybook-static/assets/LogoBusinessBrandColours-CExzox1Z.js +1 -0
- package/.storybook-static/assets/LogoBusinessBrandColours-CeAaMKke.css +1 -0
- package/.storybook-static/assets/LogoBusinessBrandColours.stories-kuxAH8B8.js +36 -0
- package/.storybook-static/assets/Masonry-C2MNiGg0.css +1 -0
- package/.storybook-static/assets/Masonry.stories-CTXJLQ_i.js +71 -0
- package/.storybook-static/assets/Modal-CGwEIF5R.css +1 -0
- package/.storybook-static/assets/Modal-CydTNprT.js +1 -0
- package/.storybook-static/assets/Modal.stories-DZiG5NGM.js +345 -0
- package/.storybook-static/assets/Notice.stories-ChOj8CWm.js +222 -0
- package/.storybook-static/assets/NumberStepper-Blffv09R.css +1 -0
- package/.storybook-static/assets/NumberStepper.stories-CVbKJ_oJ.js +64 -0
- package/.storybook-static/assets/PaymentConfigList-BpUMV6cp.css +1 -0
- package/.storybook-static/assets/PaymentConfigList.stories-DUD7OZBS.js +130 -0
- package/.storybook-static/assets/Picture-B8m1I9xN.js +1 -0
- package/.storybook-static/assets/Picture.stories-MMzybhJ6.js +119 -0
- package/.storybook-static/assets/Pill-DLXZ_TL8.js +1 -0
- package/.storybook-static/assets/Pill.stories-DCP7szJm.js +18 -0
- package/.storybook-static/assets/PillBar-os4mJV3M.css +1 -0
- package/.storybook-static/assets/PillBar.stories-Bry-zQ6f.js +41 -0
- package/.storybook-static/assets/Price-C4GZbDSa.js +1 -0
- package/.storybook-static/assets/Price.stories-CMHly9V0.js +337 -0
- package/.storybook-static/assets/PromoCard.stories-xsbFtADE.js +299 -0
- package/.storybook-static/assets/PublishBrandPageModal-Q9-mNG1q.css +1 -0
- package/.storybook-static/assets/PublishBrandPageModal.stories-C9XzW_1m.js +324 -0
- package/.storybook-static/assets/SearchBar.stories-DaIneOSz.js +12 -0
- package/.storybook-static/assets/Select-DnioWQmi.css +1 -0
- package/.storybook-static/assets/Select.stories-BmGYB4pw.js +108 -0
- package/.storybook-static/assets/SellDomainNameList.fixtures-LC6fjr_b.js +1 -0
- package/.storybook-static/assets/SellDomainNameListModal-DH6khE10.css +1 -0
- package/.storybook-static/assets/SellDomainNameListModal-ymtVclFP.js +1 -0
- package/.storybook-static/assets/SellDomainNameListModal.stories-DvGvylgx.js +71 -0
- package/.storybook-static/assets/SellDomainNameListSearchResult-Cpxq0jDA.css +1 -0
- package/.storybook-static/assets/SellDomainNameListSearchResult-D-1CrQyf.js +1 -0
- package/.storybook-static/assets/SellDomainNameSearchWithResults-bX--zu97.js +1 -0
- package/.storybook-static/assets/SellDomainNameSearchWithResults.stories-DRUJjSdH.js +37 -0
- package/.storybook-static/assets/SellDomainNameWidget.stories-CC3LX10s.js +36 -0
- package/.storybook-static/assets/SignIn-CPjf8_2O.css +1 -0
- package/.storybook-static/assets/SignIn-DI0DSDFe.js +1 -0
- package/.storybook-static/assets/Slider-Cog2FFdj.css +1 -0
- package/.storybook-static/assets/Slider.stories-B2KGwnJy.js +141 -0
- package/.storybook-static/assets/SparkleIcon.stories-Dk904hVE.js +547 -0
- package/.storybook-static/assets/StarRating-BtKh7pzm.css +1 -0
- package/.storybook-static/assets/StarRating.stories-d2mgOuo2.js +45 -0
- package/.storybook-static/assets/TabMenu.stories-Cg2yenqj.js +47 -0
- package/.storybook-static/assets/TextCopyField-B66NKTk_.js +1 -0
- package/.storybook-static/assets/TextCopyField.stories-B4_ZlfLU.js +47 -0
- package/.storybook-static/assets/TextInput-CMoUjT_5.js +1 -0
- package/.storybook-static/assets/TextInput.stories-oyyxxf3j.js +233 -0
- package/.storybook-static/assets/Textarea.stories-BvhZR6K2.js +207 -0
- package/.storybook-static/assets/Toggle.stories-yT5-rL2k.js +161 -0
- package/.storybook-static/assets/Tooltip-DyXIgFQH.css +1 -0
- package/.storybook-static/assets/Tooltip-ZukyujG5.js +1 -0
- package/.storybook-static/assets/Tooltip.stories-sJFylRS_.js +953 -0
- package/.storybook-static/assets/UploadYourLogoApplication-Dmw8QcH3.css +1 -0
- package/.storybook-static/assets/UploadYourLogoApplication.stories-C9AvzHO_.js +186 -0
- package/.storybook-static/assets/UploadYourLogoDropzone-B1ffcicv.js +24 -0
- package/.storybook-static/assets/UploadYourLogoDropzone-DQqACf-e.css +1 -0
- package/.storybook-static/assets/UploadYourLogoDropzone.stories-D1Dt2ord.js +55 -0
- package/.storybook-static/assets/UploadedLogoSearchResultCard.stories-D8oF1Yrx.js +79 -0
- package/.storybook-static/assets/WebsiteContextualUpgradeModal-8u1zOZrW.css +1 -0
- package/.storybook-static/assets/WebsiteContextualUpgradeModal.stories-mtcvWOAg.js +211 -0
- package/.storybook-static/assets/_commonjsHelpers-CE1G-McA.js +1 -0
- package/.storybook-static/assets/_plugin-vue_export-helper-DlAUqK2U.js +1 -0
- package/.storybook-static/assets/api-lSJGRrF2.js +1 -0
- package/.storybook-static/assets/axe-DrS73Vi2.js +20 -0
- package/.storybook-static/assets/brand-crowd-api.client-D45NKshX.js +1 -0
- package/.storybook-static/assets/bundled-translations-BoWhEDU_.js +1 -0
- package/.storybook-static/assets/bundled-translations.de-DE-C4lqla4O.js +1 -0
- package/.storybook-static/assets/bundled-translations.es-ES-BxMIllUH.js +1 -0
- package/.storybook-static/assets/bundled-translations.fr-CA-MxZpyz0w.js +1 -0
- package/.storybook-static/assets/bundled-translations.fr-FR-N7UPCZVr.js +1 -0
- package/.storybook-static/assets/bundled-translations.pt-BR-C8tscYuG.js +1 -0
- package/.storybook-static/assets/bundled-translations.pt-PT-Dszj5Xfa.js +1 -0
- package/.storybook-static/assets/carousel-BelyIYOK.css +1 -0
- package/.storybook-static/assets/carousel.stories-CJw3-Iy6.js +668 -0
- package/.storybook-static/assets/event-constants-CMO9VQVu.js +1 -0
- package/.storybook-static/assets/iframe-B3A6OXQU.js +1104 -0
- package/.storybook-static/assets/index-B-eiLVzF.js +7 -0
- package/.storybook-static/assets/index-QquxUozE.js +6 -0
- package/.storybook-static/assets/matchers-5TDFFDYO-HJu_DfWo.js +14 -0
- package/.storybook-static/assets/mediaQueryMixin-CISNqd93.js +1 -0
- package/.storybook-static/assets/preload-helper-PPVm8Dsz.js +1 -0
- package/.storybook-static/assets/tracking-ATsLLehC.js +1 -0
- package/.storybook-static/css/tailwind-brandCrowd.css +2508 -0
- package/.storybook-static/css/tailwind-brandPage.css +2188 -0
- package/.storybook-static/css/tailwind-crazyDomains.css +2508 -0
- package/.storybook-static/css/tailwind-designCom.css +2508 -0
- package/.storybook-static/css/tailwind-designCrowd.css +2508 -0
- package/.storybook-static/favicon-wrapper.svg +46 -0
- package/.storybook-static/favicon.svg +1 -0
- package/.storybook-static/iframe.html +713 -0
- package/.storybook-static/index.html +148 -0
- package/.storybook-static/index.json +1 -0
- package/.storybook-static/nunito-sans-bold-italic.woff2 +0 -0
- package/.storybook-static/nunito-sans-bold.woff2 +0 -0
- package/.storybook-static/nunito-sans-italic.woff2 +0 -0
- package/.storybook-static/nunito-sans-regular.woff2 +0 -0
- package/.storybook-static/project.json +1 -0
- package/.storybook-static/sb-addons/a11y-1/manager-bundle.js +57 -0
- package/.storybook-static/sb-addons/links-2/manager-bundle.js +3 -0
- package/.storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +628 -0
- package/.storybook-static/sb-addons/themes-3/manager-bundle.js +3 -0
- package/.storybook-static/sb-common-assets/favicon-wrapper.svg +46 -0
- package/.storybook-static/sb-common-assets/favicon.svg +1 -0
- package/.storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
- package/.storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
- package/.storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
- package/.storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
- package/.storybook-static/sb-manager/globals-runtime.js +77935 -0
- package/.storybook-static/sb-manager/globals.js +24 -0
- package/.storybook-static/sb-manager/manager-stores.js +23 -0
- package/.storybook-static/sb-manager/runtime.js +20404 -0
- package/.storybook-static/vite-inject-mocker-entry.js +2 -0
- package/CLAUDE.md +129 -94
- package/Dockerfile +43 -43
- package/README.md +103 -103
- package/buildspec.yml +47 -47
- package/dist/css/tailwind-brandCrowd.css +493 -523
- package/dist/css/tailwind-brandPage.css +413 -435
- package/dist/css/tailwind-crazyDomains.css +493 -523
- package/dist/css/tailwind-designCom.css +493 -523
- package/dist/css/tailwind-designCrowd.css +493 -523
- package/docs/plans/DY-957-plan-phase-2-fe-shared-lib.md +382 -382
- package/docs/voice-to-text-discussion-attachments/Screenshot 2026-04-15 at 11.44.18/342/200/257am.png +0 -0
- package/docs/voice-to-text-discussion-attachments/image.png +0 -0
- package/docs/voice-to-text-discussion-attachments/image_1.png +0 -0
- package/docs/voice-to-text-discussion-attachments/image_2.png +0 -0
- package/docs/voice-to-text-discussion-attachments/image_3.png +0 -0
- package/docs/voice-to-text-discussion-attachments/image_4.png +0 -0
- package/docs/voice-to-text-discussion.md +330 -0
- package/index.cjs +16 -16
- package/index.js +64 -62
- package/nodemon.translation.json +6 -6
- package/package.json +117 -115
- package/postcss.config.js +5 -5
- package/public/css/tailwind-brandCrowd.css +565 -499
- package/public/css/tailwind-brandPage.css +451 -417
- package/public/css/tailwind-crazyDomains.css +565 -499
- package/public/css/tailwind-designCom.css +565 -499
- package/public/css/tailwind-designCrowd.css +565 -499
- package/src/atoms/components/AiPoweredLoader/AiPoweredLoader.stories.js +90 -90
- package/src/atoms/components/AiPoweredLoader/AiPoweredLoader.vue +120 -120
- package/src/atoms/components/Button/Button.vue +341 -341
- package/src/atoms/components/Button/ButtonVariant.mixin.vue +126 -126
- package/src/atoms/components/Button/Buttons.stories.js +828 -828
- package/src/atoms/components/Button/ButtonsCrazyDomains.stories.js +117 -117
- package/src/atoms/components/Button/variants/ButtonAi.vue +63 -63
- package/src/atoms/components/Button/variants/ButtonDarkModePill.vue +52 -52
- package/src/atoms/components/Button/variants/ButtonFlat.vue +65 -65
- package/src/atoms/components/Button/variants/ButtonGray.vue +64 -64
- package/src/atoms/components/Button/variants/ButtonInfo.vue +51 -51
- package/src/atoms/components/Button/variants/ButtonInfoFilled.vue +63 -63
- package/src/atoms/components/Button/variants/ButtonNoBorder.vue +65 -65
- package/src/atoms/components/Button/variants/ButtonOutline.vue +62 -62
- package/src/atoms/components/Button/variants/ButtonOutlineNoHover.vue +62 -62
- package/src/atoms/components/Button/variants/ButtonOutlinePrimary.vue +53 -53
- package/src/atoms/components/Button/variants/ButtonOutlineSuccess.vue +54 -54
- package/src/atoms/components/Button/variants/ButtonPill.vue +52 -52
- package/src/atoms/components/Button/variants/ButtonPrimary.vue +69 -69
- package/src/atoms/components/Button/variants/ButtonPrimaryWithIcon.vue +68 -68
- package/src/atoms/components/Button/variants/ButtonSecondary.vue +51 -51
- package/src/atoms/components/Button/variants/ButtonSuccess.vue +55 -55
- package/src/atoms/components/Button/variants/ButtonWarning.vue +65 -65
- package/src/atoms/components/Button/variants/crazy-domains/ButtonCrazyDomainsOutline.vue +58 -58
- package/src/atoms/components/Button/variants/crazy-domains/ButtonCrazyDomainsPrimary.vue +38 -38
- package/src/atoms/components/ButtonGroup/ButtonGroup.stories.js +575 -575
- package/src/atoms/components/ButtonGroup/ButtonGroup.vue +200 -200
- package/src/atoms/components/Carousel/Carousel.fixtures.js +53 -53
- package/src/atoms/components/Carousel/Carousel.vue +363 -363
- package/src/atoms/components/Carousel/carousel.stories.js +530 -530
- package/src/atoms/components/Checkbox/Checkbox.mixin.js +57 -57
- package/src/atoms/components/Checkbox/Checkbox.stories.js +340 -340
- package/src/atoms/components/Checkbox/Checkbox.vue +84 -84
- package/src/atoms/components/Checktile/Checktile.stories.js +79 -79
- package/src/atoms/components/Checktile/Checktile.vue +73 -73
- package/src/atoms/components/CollapsiblePanel/CollapsiblePanel.mixin.js +38 -38
- package/src/atoms/components/CollapsiblePanel/CollapsiblePanel.stories.js +53 -53
- package/src/atoms/components/CollapsiblePanel/CollapsiblePanel.vue +33 -33
- package/src/atoms/components/ColorPicker/ColorPicker.stories.js +89 -89
- package/src/atoms/components/ColorPicker/ColorPicker.vue +95 -95
- package/src/atoms/components/CopyToClipboardText/CopyToClipboardText.stories.js +41 -41
- package/src/atoms/components/CopyToClipboardText/CopyToClipboardText.vue +71 -71
- package/src/atoms/components/Dropdown/Dropdown.stories.js +140 -140
- package/src/atoms/components/Dropdown/Dropdown.vue +129 -129
- package/src/atoms/components/Dropdown/DropdownItem.vue +33 -33
- package/src/atoms/components/FormControl/FormControl.mixin.js +136 -136
- package/src/atoms/components/HelloBar/HelloBar.stories.js +195 -195
- package/src/atoms/components/HelloBar/HelloBar.vue +156 -156
- package/src/atoms/components/Icon/Icon.stories.js +410 -410
- package/src/atoms/components/Icon/Icon.vue +936 -932
- package/src/atoms/components/Icon/icons/add-page.vue +6 -6
- package/src/atoms/components/Icon/icons/ai.vue +6 -6
- package/src/atoms/components/Icon/icons/annotate-heart.vue +7 -7
- package/src/atoms/components/Icon/icons/arrow-down.vue +6 -6
- package/src/atoms/components/Icon/icons/arrow-left.vue +7 -7
- package/src/atoms/components/Icon/icons/arrow-right.vue +7 -7
- package/src/atoms/components/Icon/icons/arrow-top-right.vue +6 -6
- package/src/atoms/components/Icon/icons/arrow-up-underline.vue +7 -7
- package/src/atoms/components/Icon/icons/arrow-up.vue +7 -7
- package/src/atoms/components/Icon/icons/attach.vue +6 -6
- package/src/atoms/components/Icon/icons/auth-facebook-white.vue +17 -17
- package/src/atoms/components/Icon/icons/auth-facebook.vue +24 -24
- package/src/atoms/components/Icon/icons/auth-google.vue +32 -32
- package/src/atoms/components/Icon/icons/award.vue +7 -7
- package/src/atoms/components/Icon/icons/background.vue +7 -7
- package/src/atoms/components/Icon/icons/badge.vue +7 -7
- package/src/atoms/components/Icon/icons/banner-centered.vue +6 -6
- package/src/atoms/components/Icon/icons/banner-left.vue +6 -6
- package/src/atoms/components/Icon/icons/banner.vue +7 -7
- package/src/atoms/components/Icon/icons/bc-mast.vue +7 -7
- package/src/atoms/components/Icon/icons/bezier-curve-outline.vue +7 -7
- package/src/atoms/components/Icon/icons/bezier-curve.vue +7 -7
- package/src/atoms/components/Icon/icons/briefcase.vue +7 -7
- package/src/atoms/components/Icon/icons/browser.vue +7 -7
- package/src/atoms/components/Icon/icons/brush.vue +6 -6
- package/src/atoms/components/Icon/icons/business-card-filled.vue +5 -5
- package/src/atoms/components/Icon/icons/business.vue +6 -6
- package/src/atoms/components/Icon/icons/calculator.vue +3 -3
- package/src/atoms/components/Icon/icons/calendar.vue +5 -5
- package/src/atoms/components/Icon/icons/callout-error.vue +6 -6
- package/src/atoms/components/Icon/icons/callout-info.vue +6 -6
- package/src/atoms/components/Icon/icons/callout-success.vue +8 -8
- package/src/atoms/components/Icon/icons/callout-warning.vue +6 -6
- package/src/atoms/components/Icon/icons/cap.vue +22 -22
- package/src/atoms/components/Icon/icons/card-vertical.vue +7 -7
- package/src/atoms/components/Icon/icons/card.vue +9 -9
- package/src/atoms/components/Icon/icons/cart-empty.vue +9 -9
- package/src/atoms/components/Icon/icons/check-thin.vue +7 -7
- package/src/atoms/components/Icon/icons/check.vue +3 -3
- package/src/atoms/components/Icon/icons/chevron-down.vue +7 -7
- package/src/atoms/components/Icon/icons/chevron-left.vue +7 -7
- package/src/atoms/components/Icon/icons/chevron-right-wide.vue +3 -3
- package/src/atoms/components/Icon/icons/chevron-right.vue +3 -3
- package/src/atoms/components/Icon/icons/chevron-up.vue +7 -7
- package/src/atoms/components/Icon/icons/clipboard-check.vue +6 -6
- package/src/atoms/components/Icon/icons/close.vue +6 -6
- package/src/atoms/components/Icon/icons/community.vue +5 -5
- package/src/atoms/components/Icon/icons/contact-message.vue +10 -10
- package/src/atoms/components/Icon/icons/content.vue +7 -7
- package/src/atoms/components/Icon/icons/copy.vue +10 -10
- package/src/atoms/components/Icon/icons/crazy-domains/filter.vue +6 -6
- package/src/atoms/components/Icon/icons/crazy-domains/globe.vue +6 -6
- package/src/atoms/components/Icon/icons/crazy-domains/home.vue +6 -6
- package/src/atoms/components/Icon/icons/crazy-domains/social-facebook.vue +6 -6
- package/src/atoms/components/Icon/icons/crazy-domains/social-google.vue +6 -6
- package/src/atoms/components/Icon/icons/crazy-domains/social-instagram.vue +6 -6
- package/src/atoms/components/Icon/icons/crazy-domains/social-twitter.vue +6 -6
- package/src/atoms/components/Icon/icons/crazy-domains/social-youtube.vue +6 -6
- package/src/atoms/components/Icon/icons/crop.vue +6 -6
- package/src/atoms/components/Icon/icons/crown-alt.vue +5 -5
- package/src/atoms/components/Icon/icons/crown.vue +6 -6
- package/src/atoms/components/Icon/icons/delete.vue +8 -8
- package/src/atoms/components/Icon/icons/designs.vue +6 -6
- package/src/atoms/components/Icon/icons/desktop.vue +7 -7
- package/src/atoms/components/Icon/icons/digital-business-card-filled.vue +8 -8
- package/src/atoms/components/Icon/icons/donate.vue +6 -6
- package/src/atoms/components/Icon/icons/download.vue +5 -5
- package/src/atoms/components/Icon/icons/duplicate.vue +6 -6
- package/src/atoms/components/Icon/icons/edit-line.vue +10 -10
- package/src/atoms/components/Icon/icons/edit.vue +6 -6
- package/src/atoms/components/Icon/icons/ellipsis.vue +6 -6
- package/src/atoms/components/Icon/icons/envelope-email.vue +9 -9
- package/src/atoms/components/Icon/icons/error.vue +8 -8
- package/src/atoms/components/Icon/icons/eye-crossed.vue +7 -7
- package/src/atoms/components/Icon/icons/eye-open.vue +11 -11
- package/src/atoms/components/Icon/icons/fees.vue +6 -6
- package/src/atoms/components/Icon/icons/file-box.vue +3 -3
- package/src/atoms/components/Icon/icons/file-empty.vue +7 -7
- package/src/atoms/components/Icon/icons/file.vue +7 -7
- package/src/atoms/components/Icon/icons/filter.vue +7 -7
- package/src/atoms/components/Icon/icons/filters.vue +6 -6
- package/src/atoms/components/Icon/icons/flag.vue +6 -6
- package/src/atoms/components/Icon/icons/flip-horizontal.vue +7 -7
- package/src/atoms/components/Icon/icons/flip-vertical.vue +7 -7
- package/src/atoms/components/Icon/icons/folder.vue +6 -6
- package/src/atoms/components/Icon/icons/font.vue +7 -7
- package/src/atoms/components/Icon/icons/footer-centered.vue +7 -7
- package/src/atoms/components/Icon/icons/footer-left.vue +7 -7
- package/src/atoms/components/Icon/icons/form-message.vue +6 -6
- package/src/atoms/components/Icon/icons/form.vue +5 -5
- package/src/atoms/components/Icon/icons/fullscreen-exit.vue +5 -5
- package/src/atoms/components/Icon/icons/fullscreen.vue +5 -5
- package/src/atoms/components/Icon/icons/globe.vue +6 -6
- package/src/atoms/components/Icon/icons/godaddy/logo.vue +5 -5
- package/src/atoms/components/Icon/icons/group.vue +6 -6
- package/src/atoms/components/Icon/icons/hamburger.vue +7 -7
- package/src/atoms/components/Icon/icons/headphones.vue +7 -7
- package/src/atoms/components/Icon/icons/history.vue +12 -12
- package/src/atoms/components/Icon/icons/home-outline.vue +6 -6
- package/src/atoms/components/Icon/icons/home.vue +7 -7
- package/src/atoms/components/Icon/icons/icon-style-circle-bg.vue +22 -22
- package/src/atoms/components/Icon/icons/icon-style-no-bg.vue +16 -16
- package/src/atoms/components/Icon/icons/icon-style-square-bg.vue +22 -22
- package/src/atoms/components/Icon/icons/image-gallery-carousel.vue +7 -7
- package/src/atoms/components/Icon/icons/image-gallery-grid.vue +7 -7
- package/src/atoms/components/Icon/icons/image-gallery-masonry.vue +6 -6
- package/src/atoms/components/Icon/icons/image.vue +7 -7
- package/src/atoms/components/Icon/icons/images-gallery.vue +5 -5
- package/src/atoms/components/Icon/icons/images.vue +7 -7
- package/src/atoms/components/Icon/icons/info.vue +9 -9
- package/src/atoms/components/Icon/icons/jobs.vue +8 -8
- package/src/atoms/components/Icon/icons/layer-bring-front.vue +6 -6
- package/src/atoms/components/Icon/icons/layer-send-back.vue +6 -6
- package/src/atoms/components/Icon/icons/layer.vue +6 -6
- package/src/atoms/components/Icon/icons/layout/display-style-about-1.vue +20 -20
- package/src/atoms/components/Icon/icons/layout/display-style-about-2.vue +20 -20
- package/src/atoms/components/Icon/icons/layout/display-style-about-3.vue +20 -20
- package/src/atoms/components/Icon/icons/layout/display-style-about-4.vue +32 -32
- package/src/atoms/components/Icon/icons/layout/display-style-about-5.vue +27 -27
- package/src/atoms/components/Icon/icons/layout/display-style-about-6.vue +27 -27
- package/src/atoms/components/Icon/icons/layout/display-style-banner-1.vue +20 -20
- package/src/atoms/components/Icon/icons/layout/display-style-banner-2.vue +20 -20
- package/src/atoms/components/Icon/icons/layout/display-style-banner-3.vue +20 -20
- package/src/atoms/components/Icon/icons/layout/display-style-banner-4.vue +20 -20
- package/src/atoms/components/Icon/icons/layout/display-style-banner-5.vue +20 -20
- package/src/atoms/components/Icon/icons/layout/display-style-banner-6.vue +27 -27
- package/src/atoms/components/Icon/icons/layout/display-style-banner-7.vue +27 -27
- package/src/atoms/components/Icon/icons/layout/display-style-banner-8.vue +20 -20
- package/src/atoms/components/Icon/icons/layout/display-style-banner-9.vue +20 -20
- package/src/atoms/components/Icon/icons/layout/display-style-contact-1.vue +24 -24
- package/src/atoms/components/Icon/icons/layout/display-style-contact-2.vue +24 -24
- package/src/atoms/components/Icon/icons/layout/display-style-contact-4.vue +24 -24
- package/src/atoms/components/Icon/icons/layout/display-style-contact-5.vue +39 -39
- package/src/atoms/components/Icon/icons/layout/display-style-contact-6.vue +39 -39
- package/src/atoms/components/Icon/icons/layout/footer/display-style-1.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/footer/display-style-2.vue +16 -16
- package/src/atoms/components/Icon/icons/layout/header/desktop-hamburger-display-style-1.vue +17 -17
- package/src/atoms/components/Icon/icons/layout/header/desktop-hamburger-display-style-2.vue +17 -17
- package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-1.vue +17 -17
- package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-2.vue +17 -17
- package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-3.vue +13 -13
- package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-4.vue +13 -13
- package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-5.vue +17 -17
- package/src/atoms/components/Icon/icons/layout/header/desktop-tab-display-style-6.vue +17 -17
- package/src/atoms/components/Icon/icons/layout/header/hamburger-display-style-no-logo-1.vue +16 -16
- package/src/atoms/components/Icon/icons/layout/header/hamburger-display-style-no-logo-2.vue +16 -16
- package/src/atoms/components/Icon/icons/layout/header/hamburger-display-style-no-logo-3.vue +16 -16
- package/src/atoms/components/Icon/icons/layout/header/mobile-hamburger-display-style-1.vue +17 -17
- package/src/atoms/components/Icon/icons/layout/header/mobile-hamburger-display-style-2.vue +17 -17
- package/src/atoms/components/Icon/icons/layout/header/mobile-hamburger-display-style-3.vue +17 -17
- package/src/atoms/components/Icon/icons/layout/header/mobile-hamburger-display-style-4.vue +21 -21
- package/src/atoms/components/Icon/icons/layout/header/mobile-tab-display-style-1.vue +17 -17
- package/src/atoms/components/Icon/icons/layout/header/mobile-tab-display-style-2.vue +17 -17
- package/src/atoms/components/Icon/icons/layout/header/tab-display-style-no-logo-1.vue +16 -16
- package/src/atoms/components/Icon/icons/layout/header/tab-display-style-no-logo-2.vue +16 -16
- package/src/atoms/components/Icon/icons/layout/header/tab-display-style-no-logo-3.vue +16 -16
- package/src/atoms/components/Icon/icons/layout/layout-icon-bottom-normal-text-center-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-bottom-normal-text-center-small.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-bottom-small-text-center-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-center-normal-curved-text-bottom.vue +11 -11
- package/src/atoms/components/Icon/icons/layout/layout-icon-center-normal-curved-text-circle.vue +10 -10
- package/src/atoms/components/Icon/icons/layout/layout-icon-center-normal-curved-text-top.vue +11 -11
- package/src/atoms/components/Icon/icons/layout/layout-icon-left-normal-text-center-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-left-normal-text-justify-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-left-normal-text-left-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-left-small-text-left-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-right-normal-text-center-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-right-normal-text-justify-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-right-normal-text-right-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-right-small-text-right-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-top-normal-text-center-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-top-normal-text-center-small.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-top-normal-text-justify-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/layout-icon-top-small-text-center-normal.vue +7 -7
- package/src/atoms/components/Icon/icons/layout/nav/hamburger/display-style-1.vue +16 -16
- package/src/atoms/components/Icon/icons/layout/nav/hamburger/display-style-2.vue +10 -10
- package/src/atoms/components/Icon/icons/layout/nav/hamburger/display-style-3.vue +10 -10
- package/src/atoms/components/Icon/icons/layout/nav/hamburger/display-style-4.vue +23 -23
- package/src/atoms/components/Icon/icons/layout/nav/tab/display-style-1.vue +16 -16
- package/src/atoms/components/Icon/icons/layout/nav/tab/display-style-2.vue +7 -7
- package/src/atoms/components/Icon/icons/letterhead-filled.vue +5 -5
- package/src/atoms/components/Icon/icons/lightning.vue +7 -7
- package/src/atoms/components/Icon/icons/link-in-bio-filled.vue +8 -8
- package/src/atoms/components/Icon/icons/link.vue +6 -6
- package/src/atoms/components/Icon/icons/location.vue +6 -6
- package/src/atoms/components/Icon/icons/lock.vue +6 -6
- package/src/atoms/components/Icon/icons/logo.vue +7 -7
- package/src/atoms/components/Icon/icons/mac-command.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/align-center.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/align-justify.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/align-left.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/align-right.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/animate.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/bold.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/custom-landscape.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/email-symbol.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/email.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/eraser.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/etsy.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/facebook.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/favicon.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/flyer.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/gift-certificate.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/globe.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/image.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/instagram.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/invitation.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/invoice.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/italic.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/link.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/linkedin.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/menu.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/pause.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/phone.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/pinterest.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/play.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/postcard.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/poster.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/profile.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/qrcode.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/snapchat.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/soundcloud.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/spacing.vue +18 -18
- package/src/atoms/components/Icon/icons/maker/strikethrough.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/t-shirt.vue +32 -32
- package/src/atoms/components/Icon/icons/maker/text-background-color.vue +12 -12
- package/src/atoms/components/Icon/icons/maker/text-color.vue +14 -14
- package/src/atoms/components/Icon/icons/maker/text.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/thankyou-card.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/tiktok.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/tumblr.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/twitch.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/twitter.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/underline.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/uppercase.vue +14 -14
- package/src/atoms/components/Icon/icons/maker/video.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/whatsapp.vue +7 -7
- package/src/atoms/components/Icon/icons/maker/youtube.vue +5 -5
- package/src/atoms/components/Icon/icons/maker/zoom.vue +5 -5
- package/src/atoms/components/Icon/icons/map.vue +6 -6
- package/src/atoms/components/Icon/icons/media.vue +3 -3
- package/src/atoms/components/Icon/icons/message.vue +6 -6
- package/src/atoms/components/Icon/icons/microphone.vue +5 -0
- package/src/atoms/components/Icon/icons/minus-circle-light.vue +7 -7
- package/src/atoms/components/Icon/icons/minus.vue +3 -3
- package/src/atoms/components/Icon/icons/mobile.vue +5 -5
- package/src/atoms/components/Icon/icons/mug.vue +29 -29
- package/src/atoms/components/Icon/icons/opacity.vue +6 -6
- package/src/atoms/components/Icon/icons/other.vue +7 -7
- package/src/atoms/components/Icon/icons/page-blank.vue +6 -6
- package/src/atoms/components/Icon/icons/page-buttons.vue +8 -8
- package/src/atoms/components/Icon/icons/page-hamburger.vue +9 -9
- package/src/atoms/components/Icon/icons/page-tabs.vue +9 -9
- package/src/atoms/components/Icon/icons/pages.vue +6 -6
- package/src/atoms/components/Icon/icons/palette-outline.vue +7 -7
- package/src/atoms/components/Icon/icons/palette.vue +6 -6
- package/src/atoms/components/Icon/icons/pause.vue +5 -5
- package/src/atoms/components/Icon/icons/payment.vue +8 -8
- package/src/atoms/components/Icon/icons/payments-featured.vue +6 -6
- package/src/atoms/components/Icon/icons/payments-textonly.vue +8 -8
- package/src/atoms/components/Icon/icons/payments-thumbnail.vue +9 -9
- package/src/atoms/components/Icon/icons/pen-outline.vue +7 -7
- package/src/atoms/components/Icon/icons/pen-sparkle.vue +17 -17
- package/src/atoms/components/Icon/icons/pen-tool.vue +7 -7
- package/src/atoms/components/Icon/icons/pen.vue +7 -7
- package/src/atoms/components/Icon/icons/phone.vue +6 -6
- package/src/atoms/components/Icon/icons/plus-circle-light.vue +8 -8
- package/src/atoms/components/Icon/icons/plus-circle.vue +7 -7
- package/src/atoms/components/Icon/icons/plus.vue +3 -3
- package/src/atoms/components/Icon/icons/poll.vue +3 -3
- package/src/atoms/components/Icon/icons/portfolio.vue +10 -10
- package/src/atoms/components/Icon/icons/premium-content.vue +8 -8
- package/src/atoms/components/Icon/icons/preview.vue +6 -6
- package/src/atoms/components/Icon/icons/printing.vue +6 -6
- package/src/atoms/components/Icon/icons/processing.vue +5 -5
- package/src/atoms/components/Icon/icons/question-alt.vue +20 -20
- package/src/atoms/components/Icon/icons/question.vue +11 -11
- package/src/atoms/components/Icon/icons/ratio-1-1.vue +3 -3
- package/src/atoms/components/Icon/icons/ratio-16-9.vue +1 -1
- package/src/atoms/components/Icon/icons/ratio-2-3.vue +3 -3
- package/src/atoms/components/Icon/icons/ratio-3-2.vue +3 -3
- package/src/atoms/components/Icon/icons/ratio-3-4.vue +3 -3
- package/src/atoms/components/Icon/icons/ratio-4-3.vue +3 -3
- package/src/atoms/components/Icon/icons/ratio-9-16.vue +3 -3
- package/src/atoms/components/Icon/icons/ratio-circle.vue +8 -8
- package/src/atoms/components/Icon/icons/ratio-original.vue +11 -11
- package/src/atoms/components/Icon/icons/redo.vue +6 -6
- package/src/atoms/components/Icon/icons/reload.vue +6 -6
- package/src/atoms/components/Icon/icons/reorderable.vue +5 -5
- package/src/atoms/components/Icon/icons/request-payment.vue +6 -6
- package/src/atoms/components/Icon/icons/reset.vue +6 -6
- package/src/atoms/components/Icon/icons/resize.vue +6 -6
- package/src/atoms/components/Icon/icons/save.vue +6 -6
- package/src/atoms/components/Icon/icons/search.vue +11 -11
- package/src/atoms/components/Icon/icons/secure.vue +7 -7
- package/src/atoms/components/Icon/icons/select-all.vue +7 -0
- package/src/atoms/components/Icon/icons/send.vue +12 -12
- package/src/atoms/components/Icon/icons/services.vue +7 -7
- package/src/atoms/components/Icon/icons/settings.vue +7 -7
- package/src/atoms/components/Icon/icons/shape.vue +5 -5
- package/src/atoms/components/Icon/icons/share.vue +9 -9
- package/src/atoms/components/Icon/icons/shield-tick.vue +6 -6
- package/src/atoms/components/Icon/icons/shop.vue +5 -5
- package/src/atoms/components/Icon/icons/sms.vue +5 -5
- package/src/atoms/components/Icon/icons/social-facebook-color.vue +9 -9
- package/src/atoms/components/Icon/icons/social-facebook.vue +5 -5
- package/src/atoms/components/Icon/icons/social-google.vue +5 -5
- package/src/atoms/components/Icon/icons/social-instagram-color.vue +24 -24
- package/src/atoms/components/Icon/icons/social-linkedin-color.vue +9 -9
- package/src/atoms/components/Icon/icons/social-share.vue +7 -7
- package/src/atoms/components/Icon/icons/social-twitter-color.vue +9 -9
- package/src/atoms/components/Icon/icons/sparkle-square.vue +22 -22
- package/src/atoms/components/Icon/icons/star-filled.vue +6 -6
- package/src/atoms/components/Icon/icons/star-hollow.vue +6 -6
- package/src/atoms/components/Icon/icons/sticker.vue +28 -28
- package/src/atoms/components/Icon/icons/stop.vue +5 -5
- package/src/atoms/components/Icon/icons/styles.vue +5 -5
- package/src/atoms/components/Icon/icons/submit.vue +5 -5
- package/src/atoms/components/Icon/icons/templates.vue +7 -7
- package/src/atoms/components/Icon/icons/text-image-center.vue +6 -6
- package/src/atoms/components/Icon/icons/text-image-justified.vue +7 -7
- package/src/atoms/components/Icon/icons/text-image-left.vue +9 -9
- package/src/atoms/components/Icon/icons/text-image-only.vue +5 -5
- package/src/atoms/components/Icon/icons/text-image-right.vue +9 -9
- package/src/atoms/components/Icon/icons/text-image.vue +13 -13
- package/src/atoms/components/Icon/icons/time.vue +8 -8
- package/src/atoms/components/Icon/icons/tooltip-bottom.vue +5 -5
- package/src/atoms/components/Icon/icons/tooltip-left.vue +5 -5
- package/src/atoms/components/Icon/icons/tooltip-right.vue +5 -5
- package/src/atoms/components/Icon/icons/tooltip-top.vue +5 -5
- package/src/atoms/components/Icon/icons/undo.vue +6 -6
- package/src/atoms/components/Icon/icons/upgrade-alt.vue +7 -7
- package/src/atoms/components/Icon/icons/upgrade.vue +9 -9
- package/src/atoms/components/Icon/icons/upload-arrow.vue +5 -5
- package/src/atoms/components/Icon/icons/upload.vue +5 -5
- package/src/atoms/components/Icon/icons/user-accounts.vue +5 -5
- package/src/atoms/components/Icon/icons/user-headset.vue +50 -50
- package/src/atoms/components/Icon/icons/users-2.vue +5 -5
- package/src/atoms/components/Icon/icons/volume-muted.vue +5 -5
- package/src/atoms/components/Icon/icons/volume.vue +5 -5
- package/src/atoms/components/Icon/icons/watchlist-filled.vue +14 -14
- package/src/atoms/components/Icon/icons/watchlist-hollow-alt.vue +14 -14
- package/src/atoms/components/Icon/icons/watchlist-hollow.vue +6 -6
- package/src/atoms/components/Icon/icons/website-filled.vue +5 -5
- package/src/atoms/components/Icon/icons/website.vue +6 -6
- package/src/atoms/components/Icon/icons/websites/upgrade-to-add-page.vue +50 -50
- package/src/atoms/components/Icon/icons/websites/upgrade-to-contact-form.vue +82 -82
- package/src/atoms/components/Icon/icons/websites/upgrade-to-google-ad.vue +92 -92
- package/src/atoms/components/Icon/icons/websites/upgrade-to-maps.vue +40 -40
- package/src/atoms/components/Icon/icons/websites/upgrade-to-publish.vue +107 -107
- package/src/atoms/components/Icon/icons/websites/upgrade-to-remove-watermark.vue +74 -74
- package/src/atoms/components/Icon/icons/websites/upgrade-to-videos.vue +16 -16
- package/src/atoms/components/Icon/icons/wholesale.vue +6 -6
- package/src/atoms/components/Icon/icons/zoom-in.vue +5 -5
- package/src/atoms/components/Icon/icons/zoom-out.vue +5 -5
- package/src/atoms/components/Icon/icons/zoom.vue +11 -11
- package/src/atoms/components/Loader/Loader.vue +15 -15
- package/src/atoms/components/Masonry/Masonry.stories.js +48 -48
- package/src/atoms/components/Masonry/Masonry.vue +48 -48
- package/src/atoms/components/Masonry/fixtures.js +589 -589
- package/src/atoms/components/Modal/HashRouteModal.stories.js +68 -68
- package/src/atoms/components/Modal/HashRouteModal.vue +120 -120
- package/src/atoms/components/Modal/Modal.stories.js +293 -293
- package/src/atoms/components/Modal/Modal.vue +272 -272
- package/src/atoms/components/Notice/Notice.stories.js +174 -174
- package/src/atoms/components/Notice/Notice.vue +71 -71
- package/src/atoms/components/NumberStepper/NumberStepper.stories.js +55 -55
- package/src/atoms/components/NumberStepper/NumberStepper.vue +340 -340
- package/src/atoms/components/Picture/Picture.stories.js +90 -90
- package/src/atoms/components/Picture/Picture.vue +84 -84
- package/src/atoms/components/Picture/picture.fixtures.js +35 -35
- package/src/atoms/components/Pill/Pill.stories.js +20 -20
- package/src/atoms/components/Pill/Pill.vue +8 -8
- package/src/atoms/components/PillBar/PillBar.fixtures.js +941 -941
- package/src/atoms/components/PillBar/PillBar.stories.js +39 -39
- package/src/atoms/components/PillBar/PillBar.vue +62 -62
- package/src/atoms/components/Price/Price.fixtures.js +85 -85
- package/src/atoms/components/Price/Price.stories.js +313 -313
- package/src/atoms/components/Price/Price.vue +135 -135
- package/src/atoms/components/Price/i18n/price.de-DE.json +5 -5
- package/src/atoms/components/Price/i18n/price.es-ES.json +5 -5
- package/src/atoms/components/Price/i18n/price.fr-CA.json +5 -5
- package/src/atoms/components/Price/i18n/price.fr-FR.json +5 -5
- package/src/atoms/components/Price/i18n/price.json +5 -5
- package/src/atoms/components/Price/i18n/price.pt-BR.json +5 -5
- package/src/atoms/components/Price/i18n/price.pt-PT.json +5 -5
- package/src/atoms/components/PromoCard/PromoCard.stories.ts +263 -263
- package/src/atoms/components/PromoCard/PromoCard.vue +83 -83
- package/src/atoms/components/SearchBar/SearchBar.stories.js +21 -21
- package/src/atoms/components/SearchBar/SearchBar.vue +51 -51
- package/src/atoms/components/Select/Select.stories.js +142 -142
- package/src/atoms/components/Select/Select.vue +619 -619
- package/src/atoms/components/Select/pointerMixin.js +99 -99
- package/src/atoms/components/Select/selectMixin.js +356 -356
- package/src/atoms/components/SparkleIcon/SparkleIcon.stories.js +386 -386
- package/src/atoms/components/SparkleIcon/SparkleIcon.vue +136 -136
- package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-01.svg +5 -5
- package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-02.svg +5 -5
- package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-03.svg +5 -5
- package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-04.svg +5 -5
- package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-05.svg +5 -5
- package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-06.svg +5 -5
- package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-07.svg +5 -5
- package/src/atoms/components/SparkleIcon/assets/animations/sparkle/state-08.svg +5 -5
- package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-01.svg +5 -5
- package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-02.svg +14 -14
- package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-03.svg +14 -14
- package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-04.svg +14 -14
- package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-05.svg +14 -14
- package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-06.svg +14 -14
- package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-07.svg +14 -14
- package/src/atoms/components/SparkleIcon/assets/animations/spinner/state-08.svg +14 -14
- package/src/atoms/components/SparkleIcon/assets/sparkle.svg +3 -3
- package/src/atoms/components/SparkleIcon/index.ts +3 -3
- package/src/atoms/components/SparkleIcon/sparkle-paths.ts +54 -54
- package/src/atoms/components/SparkleIcon/sparkle-with-spinner-paths.ts +61 -61
- package/src/atoms/components/StarRating/StarRating.stories.js +50 -50
- package/src/atoms/components/StarRating/StarRating.vue +84 -84
- package/src/atoms/components/TabMenu/TabMenu.stories.js +54 -54
- package/src/atoms/components/TabMenu/TabMenu.vue +44 -44
- package/src/atoms/components/TextCopyField/TextCopyField.stories.js +68 -68
- package/src/atoms/components/TextCopyField/TextCopyField.vue +75 -75
- package/src/atoms/components/TextInput/TextInput.stories.js +232 -232
- package/src/atoms/components/TextInput/TextInput.vue +161 -161
- package/src/atoms/components/Textarea/Textarea.stories.js +209 -209
- package/src/atoms/components/Textarea/Textarea.vue +112 -112
- package/src/atoms/components/Toggle/Toggle.stories.js +176 -176
- package/src/atoms/components/Toggle/Toggle.vue +69 -69
- package/src/atoms/components/Tooltip/Tooltip.stories.js +493 -493
- package/src/atoms/components/Tooltip/Tooltip.vue +196 -196
- package/src/atoms/components/VoiceToTextButton/VoiceToTextButton.stories.ts +242 -0
- package/src/atoms/components/VoiceToTextButton/VoiceToTextButton.vue +147 -0
- package/src/atoms/components/design-com/Icon/Icon.stories.js +94 -94
- package/src/atoms/components/design-com/Icon/Icon.vue +181 -181
- package/src/atoms/components/design-com/Icon/icons/ai.vue +5 -5
- package/src/atoms/components/design-com/Icon/icons/award.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/badge.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/briefcase.vue +6 -6
- package/src/atoms/components/design-com/Icon/icons/browser.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/bulb.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/card-vertical.vue +8 -8
- package/src/atoms/components/design-com/Icon/icons/card.vue +6 -6
- package/src/atoms/components/design-com/Icon/icons/check-circle-light.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/chevron-down.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/chevron-left.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/chevron-right.vue +3 -3
- package/src/atoms/components/design-com/Icon/icons/chevron-up.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/diamond.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/download.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/file-empty.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/file.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/filter.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/folder.vue +5 -5
- package/src/atoms/components/design-com/Icon/icons/font.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/headphones.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/heart.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/image.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/lightning.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/logo.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/minus-circle-light.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/plus-circle-light.vue +8 -8
- package/src/atoms/components/design-com/Icon/icons/printing.vue +5 -5
- package/src/atoms/components/design-com/Icon/icons/question-circle-filled.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/search.vue +7 -7
- package/src/atoms/components/design-com/Icon/icons/shield-tick.vue +5 -5
- package/src/atoms/components/design-com/Icon/icons/star-filled.vue +6 -6
- package/src/atoms/components/design-com/Icon/icons/star-hollow.vue +6 -6
- package/src/atoms/components/design-com/Icon/icons/users.vue +7 -7
- package/src/atoms/constants/constants.ts +6 -6
- package/src/atoms/mixin/hash-router-mixin.js +68 -68
- package/src/atoms/thirdparty-components/VueMasonryWall/VueMasonryWall.vue +280 -280
- package/src/atoms/thirdparty-components/VueMasonryWall/maxBy.js +50 -50
- package/src/bundleTranslation.js +86 -86
- package/src/bundles/bundled-translations.de-DE.json +53 -8
- package/src/bundles/bundled-translations.es-ES.json +53 -8
- package/src/bundles/bundled-translations.fr-CA.json +53 -8
- package/src/bundles/bundled-translations.fr-FR.json +53 -8
- package/src/bundles/bundled-translations.json +53 -8
- package/src/bundles/bundled-translations.pt-BR.json +53 -8
- package/src/bundles/bundled-translations.pt-PT.json +53 -8
- package/src/css/tailwind.css +3 -3
- package/src/experiences/clients/brand-crowd-api.client.js +142 -142
- package/src/experiences/clients/brand-page-api.client.js +62 -62
- package/src/experiences/components/AuthFlow/Auth.fixtures.js +4 -4
- package/src/experiences/components/AuthFlow/Auth.stories.js +345 -345
- package/src/experiences/components/AuthFlow/AuthCrazyDomains.stories.js +60 -60
- package/src/experiences/components/AuthFlow/AuthLegal.vue +108 -108
- package/src/experiences/components/AuthFlow/AuthModal.vue +39 -39
- package/src/experiences/components/AuthFlow/ForgotPassword.vue +222 -222
- package/src/experiences/components/AuthFlow/ForgotPasswordModal.vue +68 -68
- package/src/experiences/components/AuthFlow/ResetPassword.vue +179 -179
- package/src/experiences/components/AuthFlow/ResetPasswordModal.vue +64 -64
- package/src/experiences/components/AuthFlow/ResetPasswordSuccessModal.vue +56 -56
- package/src/experiences/components/AuthFlow/SignIn.vue +472 -472
- package/src/experiences/components/AuthFlow/SignUp.vue +278 -278
- package/src/experiences/components/AuthFlow/SignUpModal.vue +90 -90
- package/src/experiences/components/AuthFlow/SocialSignIn.vue +177 -177
- package/src/experiences/components/AuthFlow/SocialSignInButton.vue +74 -74
- package/src/experiences/components/AuthFlow/SubmissionButton.vue +56 -56
- package/src/experiences/components/PaymentConfigList/PaymentConfig.mixin.js +118 -118
- package/src/experiences/components/PaymentConfigList/PaymentConfigDeleteConfigModal.vue +108 -108
- package/src/experiences/components/PaymentConfigList/PaymentConfigDropdown.vue +175 -175
- package/src/experiences/components/PaymentConfigList/PaymentConfigList.stories.js +234 -234
- package/src/experiences/components/PaymentConfigList/PaymentConfigList.vue +136 -136
- package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.de-DE.json +11 -11
- package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.es-ES.json +11 -11
- package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.fr-CA.json +11 -11
- package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.fr-FR.json +11 -11
- package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.json +11 -11
- package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.pt-BR.json +11 -11
- package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.pt-PT.json +11 -11
- package/src/experiences/components/PublishBrandPageModal/PublishBrandPageCard.vue +119 -119
- package/src/experiences/components/PublishBrandPageModal/PublishBrandPageModal.stories.js +262 -262
- package/src/experiences/components/PublishBrandPageModal/__fixtures__/data.js +25 -25
- package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.de-DE.json +27 -27
- package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.es-ES.json +27 -27
- package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.fr-CA.json +27 -27
- package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.fr-FR.json +27 -27
- package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.json +27 -27
- package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.pt-BR.json +27 -27
- package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.pt-PT.json +27 -27
- package/src/experiences/components/SellDomainNameList/SellDomainNameList.fixtures.js +32 -32
- package/src/experiences/components/SellDomainNameList/SellDomainNameList.vue +157 -157
- package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.de-DE.json +7 -7
- package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.es-ES.json +7 -7
- package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.fr-CA.json +7 -7
- package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.fr-FR.json +7 -7
- package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.json +7 -7
- package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.pt-BR.json +7 -7
- package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.pt-PT.json +7 -7
- package/src/experiences/components/SellDomainNameListModal/SellDomainNameListModal.stories.js +74 -74
- package/src/experiences/components/SellDomainNameListModal/SellDomainNameListModal.vue +128 -128
- package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.de-DE.json +5 -5
- package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.es-ES.json +5 -5
- package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.fr-CA.json +5 -5
- package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.fr-FR.json +5 -5
- package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.json +5 -5
- package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.pt-BR.json +5 -5
- package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.pt-PT.json +5 -5
- package/src/experiences/components/SellDomainNameModalApplication/SellDomainNameModalApplication.vue +222 -222
- package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.de-DE.json +5 -5
- package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.es-ES.json +5 -5
- package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.fr-CA.json +5 -5
- package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.fr-FR.json +5 -5
- package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.json +5 -5
- package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.pt-BR.json +5 -5
- package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.pt-PT.json +5 -5
- package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.de-DE.json +7 -7
- package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.es-ES.json +7 -7
- package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.fr-CA.json +7 -7
- package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.fr-FR.json +7 -7
- package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.json +7 -7
- package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.pt-BR.json +7 -7
- package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.pt-PT.json +7 -7
- package/src/experiences/components/SellDomainNameSearchResult/SellDomainNameListSearchResult.vue +167 -167
- package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.de-DE.json +5 -5
- package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.es-ES.json +5 -5
- package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.fr-CA.json +5 -5
- package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.fr-FR.json +5 -5
- package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.json +5 -5
- package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.pt-BR.json +5 -5
- package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.pt-PT.json +5 -5
- package/src/experiences/components/SellDomainNameSearchWithResults/SellDomainNameSearchWithResults.stories.js +38 -38
- package/src/experiences/components/SellDomainNameSearchWithResults/SellDomainNameSearchWithResults.vue +223 -223
- package/src/experiences/components/SellDomainNameWidget/SellDomainNameWidget.stories.js +40 -40
- package/src/experiences/components/SellDomainNameWidget/SellDomainNameWidget.vue +155 -155
- package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.de-DE.json +7 -7
- package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.es-ES.json +7 -7
- package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.fr-CA.json +7 -7
- package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.fr-FR.json +7 -7
- package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.json +7 -7
- package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.pt-BR.json +7 -7
- package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.pt-PT.json +7 -7
- package/src/experiences/components/SideNavigationPanel/MenuCta.vue +62 -62
- package/src/experiences/components/SideNavigationPanel/MenuItem.vue +40 -40
- package/src/experiences/components/SideNavigationPanel/SideNavigationPanel.stories.js +219 -219
- package/src/experiences/components/SideNavigationPanel/SideNavigationPanel.vue +82 -82
- package/src/experiences/components/SideNavigationPanel/types.ts +7 -7
- package/src/experiences/components/UploadYourLogoApplication/UploadYourLogoApplication.stories.js +254 -254
- package/src/experiences/components/UploadYourLogoApplication/UploadYourLogoApplication.vue +163 -163
- package/src/experiences/components/UploadYourLogoDropzone/UploadYourLogoDropzone.stories.js +59 -59
- package/src/experiences/components/UploadYourLogoDropzone/UploadYourLogoDropzone.vue +285 -285
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoBusinessBrandColours.stories.js +37 -37
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoBusinessBrandColours.vue +338 -338
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoBusinessText.vue +146 -146
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoCropper.vue +473 -473
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoKeywords.stories.js +65 -65
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoKeywords.vue +156 -156
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoPreview.vue +103 -103
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploadError.vue +75 -75
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploadExitConfirmation.vue +55 -55
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploadModal.vue +38 -38
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploader.vue +109 -109
- package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploadingLoader.vue +39 -39
- package/src/experiences/components/UploadYourLogoOnBoarding/UploadYourLogoOnBoarding.vue +363 -363
- package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.de-DE.json +37 -37
- package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.es-ES.json +37 -37
- package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.fr-CA.json +37 -37
- package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.fr-FR.json +37 -37
- package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.json +37 -37
- package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.pt-BR.json +37 -37
- package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.pt-PT.json +37 -37
- package/src/experiences/components/UploadedLogoSearchResultCard/UploadedLogoSearchResultCard.stories.js +82 -82
- package/src/experiences/components/UploadedLogoSearchResultCard/UploadedLogoSearchResultCard.vue +211 -211
- package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.de-DE.json +8 -8
- package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.es-ES.json +8 -8
- package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.fr-CA.json +8 -8
- package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.fr-FR.json +8 -8
- package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.json +8 -8
- package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.pt-BR.json +8 -8
- package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.pt-PT.json +8 -8
- package/src/experiences/components/WebsitesContextualUpgradeModal/WebsiteContextualUpgradeModal.stories.js +181 -181
- package/src/experiences/components/WebsitesContextualUpgradeModal/WebsiteContextualUpgradeModal.vue +203 -203
- package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.de-DE.json +42 -42
- package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.es-ES.json +42 -42
- package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.fr-CA.json +42 -42
- package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.fr-FR.json +42 -42
- package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.json +42 -42
- package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.pt-BR.json +42 -42
- package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.pt-PT.json +42 -42
- package/src/experiences/constants/api.js +9 -9
- package/src/experiences/constants/error-constants.js +5 -5
- package/src/experiences/constants/event-constants.js +18 -18
- package/src/experiences/constants/partner-dictionary-constants.js +27 -27
- package/src/experiences/constants/rego-source-constants.js +3 -3
- package/src/experiences/constants/sell-domain-name-constants.js +4 -4
- package/src/experiences/helpers/email-validator.js +5 -5
- package/src/experiences/helpers/hex-diff.js +116 -116
- package/src/experiences/helpers/tracking.js +5 -5
- package/src/experiences/mixins/mediaQueryMixin.js +31 -31
- package/src/experiences/mixins/themeMixin.js +22 -22
- package/src/experiences/models/websiteContextualModel.ts +11 -11
- package/src/themes/base.js +20 -20
- package/src/themes/bc.js +95 -95
- package/src/themes/bp.js +21 -21
- package/src/themes/cd.js +94 -94
- package/src/themes/dc.js +84 -84
- package/src/themes/dcom.js +106 -106
- package/src/themes/themes.js +16 -16
- package/src/types/speech-recognition.d.ts +8 -0
- package/src/useSharedLibTranslate.js +131 -131
- package/src/useVoiceToText.ts +196 -0
- package/src/viewports.js +51 -51
- package/stylelint.config.js +19 -19
- package/tailwind.build.js +83 -83
- package/tailwind.config.js +36 -36
- package/tailwind.themes.js +59 -59
- package/vite.config.ts +37 -37
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{_ as ke}from"./assets/preload-helper-PPVm8Dsz.js";var O={client:!0},ae=class{registryByUrl=new Map;registryById=new Map;clear(){this.registryByUrl.clear(),this.registryById.clear()}keys(){return this.registryByUrl.keys()}add(e){this.registryByUrl.set(e.url,e),this.registryById.set(e.id,e)}register(e,r,t,n,i){let a=typeof e=="object"?e.type:e;if(typeof e=="object"){let o=e;if(o instanceof X||o instanceof q||o instanceof W||o instanceof F)throw new TypeError(`[vitest] Cannot register a mock that is already defined. Expected a JSON representation from \`MockedModule.toJSON\`, instead got "${o.type}". Use "registry.add()" to update a mock instead.`);if(o.type==="automock"){let s=X.fromJSON(o);return this.add(s),s}else if(o.type==="autospy"){let s=q.fromJSON(o);return this.add(s),s}else if(o.type==="redirect"){let s=F.fromJSON(o);return this.add(s),s}else throw o.type==="manual"?new Error("Cannot set serialized manual mock. Define a factory function manually with `ManualMockedModule.fromJSON()`."):new Error(`Unknown mock type: ${o.type}`)}if(typeof r!="string")throw new TypeError("[vitest] Mocks require a raw string.");if(typeof n!="string")throw new TypeError("[vitest] Mocks require a url string.");if(typeof t!="string")throw new TypeError("[vitest] Mocks require an id string.");if(a==="manual"){if(typeof i!="function")throw new TypeError("[vitest] Manual mocks require a factory function.");let o=new W(r,t,n,i);return this.add(o),o}else if(a==="automock"||a==="autospy"){let o=a==="automock"?new X(r,t,n):new q(r,t,n);return this.add(o),o}else if(a==="redirect"){if(typeof i!="string")throw new TypeError("[vitest] Redirect mocks require a redirect string.");let o=new F(r,t,n,i);return this.add(o),o}else throw new Error(`[vitest] Unknown mock type: ${a}`)}delete(e){this.registryByUrl.delete(e)}get(e){return this.registryByUrl.get(e)}getById(e){return this.registryById.get(e)}has(e){return this.registryByUrl.has(e)}},X=class{type="automock";constructor(e,r,t){this.raw=e,this.id=r,this.url=t}static fromJSON(e){return new q(e.raw,e.id,e.url)}toJSON(){return{type:this.type,url:this.url,raw:this.raw,id:this.id}}},q=class le{type="autospy";constructor(r,t,n){this.raw=r,this.id=t,this.url=n}static fromJSON(r){return new le(r.raw,r.id,r.url)}toJSON(){return{type:this.type,url:this.url,id:this.id,raw:this.raw}}},F=class ce{type="redirect";constructor(r,t,n,i){this.raw=r,this.id=t,this.url=n,this.redirect=i}static fromJSON(r){return new ce(r.raw,r.id,r.url,r.redirect)}toJSON(){return{type:this.type,url:this.url,raw:this.raw,id:this.id,redirect:this.redirect}}},W=class ue{cache;type="manual";constructor(r,t,n,i){this.raw=r,this.id=t,this.url=n,this.factory=i}async resolve(){if(this.cache)return this.cache;let r;try{r=await this.factory()}catch(t){let n=new Error('[vitest] There was an error when mocking a module. If you are using "vi.mock" factory, make sure there are no top level variables inside, since this call is hoisted to top of the file. Read more: https://vitest.dev/api/vi.html#vi-mock');throw n.cause=t,n}if(r===null||typeof r!="object"||Array.isArray(r))throw new TypeError(`[vitest] vi.mock("${this.raw}", factory?: () => unknown) is not returning an object. Did you mean to return an object with a "default" key?`);return this.cache=r}static fromJSON(r,t){return new ue(r.raw,r.id,r.url,t)}toJSON(){return{type:this.type,url:this.url,id:this.id,raw:this.raw}}};function we(e,r,t={}){let n=new Array,i=new Se,a=(u,d,y)=>{try{return u[d]=y,!0}catch{return!1}},o=(u,d)=>{let y=D(u),g=y==="Module"||!!u.__esModule;for(let{key:m,descriptor:I}of Y(u,g,e.globalConstructors)){if(!g&&I.get){try{Object.defineProperty(d,m,I)}catch{}continue}if(_e(m,y))continue;let v=u[m],l=i.getId(v);if(l!==void 0){n.push(()=>a(d,m,i.getMockedValue(l)));continue}let c=D(v);if(Array.isArray(v)){a(d,m,[]);continue}let x=c.includes("Function")&&typeof v=="function";if((!x||v._isMockFunction)&&c!=="Object"&&c!=="Module"){a(d,m,v);continue}if(a(d,m,x?v:{})){if(x){let R=function(){if(this instanceof d[m])for(let{key:b,descriptor:$}of Y(this,!1,e.globalConstructors)){if($.get)continue;let C=this[b];if(D(C).includes("Function")&&typeof C=="function"){let p=this[b],h=_(this,b).mockImplementation(p),B=h.mockReset;h.mockRestore=h.mockReset=()=>(B.call(h),h.mockImplementation(p),h)}}};if(!e.spyOn)throw new Error("[@vitest/mocker] `spyOn` is not defined. This is a Vitest error. Please open a new issue with reproduction.");let _=e.spyOn,M=_(d,m);if(e.type==="automock"){M.mockImplementation(R);let b=M.mockReset;M.mockRestore=M.mockReset=()=>(b.call(M),M.mockImplementation(R),M)}Object.defineProperty(d[m],"length",{value:0})}i.track(v,d[m]),o(v,d[m])}}},s=t;o(r,s);for(let u of n)u();return s}var Se=class{idMap=new Map;mockedValueMap=new Map;getId(e){return this.idMap.get(e)}getMockedValue(e){return this.mockedValueMap.get(e)}track(e,r){let t=this.idMap.size;return this.idMap.set(e,t),this.mockedValueMap.set(t,r),t}};function D(e){return Object.prototype.toString.apply(e).slice(8,-1)}function _e(e,r){return r.includes("Function")&&typeof e=="string"&&["arguments","callee","caller","length","name"].includes(e)}function Y(e,r,t){let{Map:n,Object:i,Function:a,RegExp:o,Array:s}=t,u=new n,d=e;do{if(d===i.prototype||d===a.prototype||d===o.prototype)break;Ee(d,y=>{let g=i.getOwnPropertyDescriptor(d,y);g&&u.set(y,{key:y,descriptor:g})})}while(d=i.getPrototypeOf(d));if(r&&!u.has("default")&&"default"in e){let y=i.getOwnPropertyDescriptor(e,"default");y&&u.set("default",{key:"default",descriptor:y})}return s.from(u.values())}function Ee(e,r){let t=typeof r=="function"?r:n=>r.add(n);Object.getOwnPropertyNames(e).forEach(t),Object.getOwnPropertySymbols(e).forEach(t)}var Ie=/^[A-Za-z]:\//;function fe(e=""){return e&&e.replace(/\\/g,"/").replace(Ie,r=>r.toUpperCase())}var be=/^[/\\]{2}/,xe=/^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/,Te=/^[A-Za-z]:$/,Me=/.(\.[^./]+|\.)$/,Pe=function(e){if(e.length===0)return".";e=fe(e);let r=e.match(be),t=K(e),n=e[e.length-1]==="/";return e=$e(e,!t),e.length===0?t?"/":n?"./":".":(n&&(e+="/"),Te.test(e)&&(e+="/"),r?t?`//${e}`:`//./${e}`:t&&!K(e)?`/${e}`:e)},Re=function(...e){let r="";for(let t of e)if(t)if(r.length>0){let n=r[r.length-1]==="/",i=t[0]==="/";n&&i?r+=t.slice(1):r+=n||i?t:`/${t}`}else r+=t;return Pe(r)};function $e(e,r){let t="",n=0,i=-1,a=0,o=null;for(let s=0;s<=e.length;++s){if(s<e.length)o=e[s];else{if(o==="/")break;o="/"}if(o==="/"){if(!(i===s-1||a===1))if(a===2){if(t.length<2||n!==2||t[t.length-1]!=="."||t[t.length-2]!=="."){if(t.length>2){let u=t.lastIndexOf("/");u===-1?(t="",n=0):(t=t.slice(0,u),n=t.length-1-t.lastIndexOf("/")),i=s,a=0;continue}else if(t.length>0){t="",n=0,i=s,a=0;continue}}r&&(t+=t.length>0?"/..":"..",n=2)}else t.length>0?t+=`/${e.slice(i+1,s)}`:t=e.slice(i+1,s),n=s-i-1;i=s,a=0}else o==="."&&a!==-1?++a:a=-1}return t}var K=function(e){return xe.test(e)},Ae=function(e){if(e==="..")return"";let r=Me.exec(fe(e));return r&&r[1]||""},Oe={reset:[0,0],bold:[1,22,"\x1B[22m\x1B[1m"],dim:[2,22,"\x1B[22m\x1B[2m"],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29],black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]},Ce=Object.entries(Oe);function j(e){return String(e)}j.open="";j.close="";function Ne(e=!1){let r=typeof O<"u"?O:void 0,t=r?.env||{},n=r?.argv||[];return!("NO_COLOR"in t||n.includes("--no-color"))&&("FORCE_COLOR"in t||n.includes("--color")||r?.platform==="win32"||e&&t.TERM!=="dumb"||"CI"in t)||typeof window<"u"&&!!window.chrome}function Le(e=!1){let r=Ne(e),t=(o,s,u,d)=>{let y="",g=0;do y+=o.substring(g,d)+u,g=d+s.length,d=o.indexOf(s,g);while(~d);return y+o.substring(g)},n=(o,s,u=o)=>{let d=y=>{let g=String(y),m=g.indexOf(s,o.length);return~m?o+t(g,s,u,m)+s:o+g+s};return d.open=o,d.close=s,d},i={isColorSupported:r},a=o=>`\x1B[${o}m`;for(let[o,s]of Ce)i[o]=r?n(a(s[0]),a(s[1]),s[2]):j;return i}Le();function de(e,r){return r.forEach(function(t){t&&typeof t!="string"&&!Array.isArray(t)&&Object.keys(t).forEach(function(n){if(n!=="default"&&!(n in e)){var i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,i.get?i:{enumerable:!0,get:function(){return t[n]}})}})}),Object.freeze(e)}function pe(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var H={exports:{}},w={},Z;function Je(){if(Z)return w;Z=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),t=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.consumer"),o=Symbol.for("react.context"),s=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.suspense_list"),y=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),m=Symbol.for("react.view_transition"),I=Symbol.for("react.client.reference");function v(l){if(typeof l=="object"&&l!==null){var c=l.$$typeof;switch(c){case e:switch(l=l.type,l){case t:case i:case n:case u:case d:case m:return l;default:switch(l=l&&l.$$typeof,l){case o:case s:case g:case y:return l;case a:return l;default:return c}}case r:return c}}}return w.ContextConsumer=a,w.ContextProvider=o,w.Element=e,w.ForwardRef=s,w.Fragment=t,w.Lazy=g,w.Memo=y,w.Portal=r,w.Profiler=i,w.StrictMode=n,w.Suspense=u,w.SuspenseList=d,w.isContextConsumer=function(l){return v(l)===a},w.isContextProvider=function(l){return v(l)===o},w.isElement=function(l){return typeof l=="object"&&l!==null&&l.$$typeof===e},w.isForwardRef=function(l){return v(l)===s},w.isFragment=function(l){return v(l)===t},w.isLazy=function(l){return v(l)===g},w.isMemo=function(l){return v(l)===y},w.isPortal=function(l){return v(l)===r},w.isProfiler=function(l){return v(l)===i},w.isStrictMode=function(l){return v(l)===n},w.isSuspense=function(l){return v(l)===u},w.isSuspenseList=function(l){return v(l)===d},w.isValidElementType=function(l){return typeof l=="string"||typeof l=="function"||l===t||l===i||l===n||l===u||l===d||typeof l=="object"&&l!==null&&(l.$$typeof===g||l.$$typeof===y||l.$$typeof===o||l.$$typeof===a||l.$$typeof===s||l.$$typeof===I||l.getModuleId!==void 0)},w.typeOf=v,w}var G;function Be(){return G||(G=1,H.exports=Je()),H.exports}var he=Be(),Xe=pe(he),qe=de({__proto__:null,default:Xe},[he]),Q={exports:{}},k={},ee;function Fe(){if(ee)return k;ee=1;var e=Symbol.for("react.element"),r=Symbol.for("react.portal"),t=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),a=Symbol.for("react.provider"),o=Symbol.for("react.context"),s=Symbol.for("react.server_context"),u=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),y=Symbol.for("react.suspense_list"),g=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),I=Symbol.for("react.offscreen"),v;v=Symbol.for("react.module.reference");function l(c){if(typeof c=="object"&&c!==null){var x=c.$$typeof;switch(x){case e:switch(c=c.type,c){case t:case i:case n:case d:case y:return c;default:switch(c=c&&c.$$typeof,c){case s:case o:case u:case m:case g:case a:return c;default:return x}}case r:return x}}}return k.ContextConsumer=o,k.ContextProvider=a,k.Element=e,k.ForwardRef=u,k.Fragment=t,k.Lazy=m,k.Memo=g,k.Portal=r,k.Profiler=i,k.StrictMode=n,k.Suspense=d,k.SuspenseList=y,k.isAsyncMode=function(){return!1},k.isConcurrentMode=function(){return!1},k.isContextConsumer=function(c){return l(c)===o},k.isContextProvider=function(c){return l(c)===a},k.isElement=function(c){return typeof c=="object"&&c!==null&&c.$$typeof===e},k.isForwardRef=function(c){return l(c)===u},k.isFragment=function(c){return l(c)===t},k.isLazy=function(c){return l(c)===m},k.isMemo=function(c){return l(c)===g},k.isPortal=function(c){return l(c)===r},k.isProfiler=function(c){return l(c)===i},k.isStrictMode=function(c){return l(c)===n},k.isSuspense=function(c){return l(c)===d},k.isSuspenseList=function(c){return l(c)===y},k.isValidElementType=function(c){return typeof c=="string"||typeof c=="function"||c===t||c===i||c===n||c===d||c===y||c===I||typeof c=="object"&&c!==null&&(c.$$typeof===m||c.$$typeof===g||c.$$typeof===a||c.$$typeof===o||c.$$typeof===u||c.$$typeof===v||c.getModuleId!==void 0)},k.typeOf=l,k}var te;function De(){return te||(te=1,Q.exports=Fe()),Q.exports}var ye=De(),Ue=pe(ye),ze=de({__proto__:null,default:Ue},[ye]),je=["isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isPortal","isProfiler","isStrictMode","isSuspense","isSuspenseList","isValidElementType"];Object.fromEntries(je.map(e=>[e,r=>ze[e](r)||qe[e](r)]));var Ve=()=>"Promise{…}";try{let{getPromiseDetails:e,kPending:r,kRejected:t}=O.binding("util");Array.isArray(e(Promise.resolve()))&&(Ve=(n,i)=>{let[a,o]=e(n);return a===r?"Promise{<pending>}":`Promise${a===t?"!":""}{${i.inspect(o,i)}}`})}catch{}function We(e){let{message:r="$$stack trace error",stackTraceLimit:t=1}=e||{},n=Error.stackTraceLimit,i=Error.prepareStackTrace;Error.stackTraceLimit=t,Error.prepareStackTrace=o=>o.stack;let a=new Error(r).stack||"";return Error.prepareStackTrace=i,Error.stackTraceLimit=n,a}var U,re;function Ye(){if(re)return U;re=1;var e,r,t,n,i,a,o,s,u,d,y,g,m,I,v,l,c,x,R;return m=/\/(?![*\/])(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\\]).|\\.)*(\/[$_\u200C\u200D\p{ID_Continue}]*|\\)?/uy,g=/--|\+\+|=>|\.{3}|\??\.(?!\d)|(?:&&|\|\||\?\?|[+\-%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2}|\/(?![\/*]))=?|[?~,:;[\](){}]/y,e=/(\x23?)(?=[$_\p{ID_Start}\\])(?:[$_\u200C\u200D\p{ID_Continue}]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+/uy,v=/(['"])(?:(?!\1)[^\\\n\r]|\\(?:\r\n|[^]))*(\1)?/y,y=/(?:0[xX][\da-fA-F](?:_?[\da-fA-F])*|0[oO][0-7](?:_?[0-7])*|0[bB][01](?:_?[01])*)n?|0n|[1-9](?:_?\d)*n|(?:(?:0(?!\d)|0\d*[89]\d*|[1-9](?:_?\d)*)(?:\.(?:\d(?:_?\d)*)?)?|\.\d(?:_?\d)*)(?:[eE][+-]?\d(?:_?\d)*)?|0[0-7]+/y,l=/[`}](?:[^`\\$]|\\[^]|\$(?!\{))*(`|\$\{)?/y,R=/[\t\v\f\ufeff\p{Zs}]+/uy,s=/\r?\n|[\r\u2028\u2029]/y,u=/\/\*(?:[^*]|\*(?!\/))*(\*\/)?/y,I=/\/\/.*/y,t=/[<>.:={}]|\/(?![\/*])/y,r=/[$_\p{ID_Start}][$_\u200C\u200D\p{ID_Continue}-]*/uy,n=/(['"])(?:(?!\1)[^])*(\1)?/y,i=/[^<>{}]+/y,x=/^(?:[\/+-]|\.{3}|\?(?:InterpolationIn(?:JSX|Template)|NoLineTerminatorHere|NonExpressionParenEnd|UnaryIncDec))?$|[{}([,;<>=*%&|^!~?:]$/,c=/^(?:=>|[;\]){}]|else|\?(?:NoLineTerminatorHere|NonExpressionParenEnd))?$/,a=/^(?:await|case|default|delete|do|else|instanceof|new|return|throw|typeof|void|yield)$/,o=/^(?:return|throw|yield)$/,d=RegExp(s.source),U=function*(_,{jsx:M=!1}={}){var b,$,C,p,h,B,f,P,V,T,N,S,L,E;for({length:B}=_,p=0,h="",E=[{tag:"JS"}],b=[],N=0,S=!1;p<B;){switch(P=E[E.length-1],P.tag){case"JS":case"JSNonExpressionParen":case"InterpolationInTemplate":case"InterpolationInJSX":if(_[p]==="/"&&(x.test(h)||a.test(h))&&(m.lastIndex=p,f=m.exec(_))){p=m.lastIndex,h=f[0],S=!0,yield{type:"RegularExpressionLiteral",value:f[0],closed:f[1]!==void 0&&f[1]!=="\\"};continue}if(g.lastIndex=p,f=g.exec(_)){switch(L=f[0],V=g.lastIndex,T=L,L){case"(":h==="?NonExpressionParenKeyword"&&E.push({tag:"JSNonExpressionParen",nesting:N}),N++,S=!1;break;case")":N--,S=!0,P.tag==="JSNonExpressionParen"&&N===P.nesting&&(E.pop(),T="?NonExpressionParenEnd",S=!1);break;case"{":g.lastIndex=0,C=!c.test(h)&&(x.test(h)||a.test(h)),b.push(C),S=!1;break;case"}":switch(P.tag){case"InterpolationInTemplate":if(b.length===P.nesting){l.lastIndex=p,f=l.exec(_),p=l.lastIndex,h=f[0],f[1]==="${"?(h="?InterpolationInTemplate",S=!1,yield{type:"TemplateMiddle",value:f[0]}):(E.pop(),S=!0,yield{type:"TemplateTail",value:f[0],closed:f[1]==="`"});continue}break;case"InterpolationInJSX":if(b.length===P.nesting){E.pop(),p+=1,h="}",yield{type:"JSXPunctuator",value:"}"};continue}}S=b.pop(),T=S?"?ExpressionBraceEnd":"}";break;case"]":S=!0;break;case"++":case"--":T=S?"?PostfixIncDec":"?UnaryIncDec";break;case"<":if(M&&(x.test(h)||a.test(h))){E.push({tag:"JSXTag"}),p+=1,h="<",yield{type:"JSXPunctuator",value:L};continue}S=!1;break;default:S=!1}p=V,h=T,yield{type:"Punctuator",value:L};continue}if(e.lastIndex=p,f=e.exec(_)){switch(p=e.lastIndex,T=f[0],f[0]){case"for":case"if":case"while":case"with":h!=="."&&h!=="?."&&(T="?NonExpressionParenKeyword")}h=T,S=!a.test(f[0]),yield{type:f[1]==="#"?"PrivateIdentifier":"IdentifierName",value:f[0]};continue}if(v.lastIndex=p,f=v.exec(_)){p=v.lastIndex,h=f[0],S=!0,yield{type:"StringLiteral",value:f[0],closed:f[2]!==void 0};continue}if(y.lastIndex=p,f=y.exec(_)){p=y.lastIndex,h=f[0],S=!0,yield{type:"NumericLiteral",value:f[0]};continue}if(l.lastIndex=p,f=l.exec(_)){p=l.lastIndex,h=f[0],f[1]==="${"?(h="?InterpolationInTemplate",E.push({tag:"InterpolationInTemplate",nesting:b.length}),S=!1,yield{type:"TemplateHead",value:f[0]}):(S=!0,yield{type:"NoSubstitutionTemplate",value:f[0],closed:f[1]==="`"});continue}break;case"JSXTag":case"JSXTagEnd":if(t.lastIndex=p,f=t.exec(_)){switch(p=t.lastIndex,T=f[0],f[0]){case"<":E.push({tag:"JSXTag"});break;case">":E.pop(),h==="/"||P.tag==="JSXTagEnd"?(T="?JSX",S=!0):E.push({tag:"JSXChildren"});break;case"{":E.push({tag:"InterpolationInJSX",nesting:b.length}),T="?InterpolationInJSX",S=!1;break;case"/":h==="<"&&(E.pop(),E[E.length-1].tag==="JSXChildren"&&E.pop(),E.push({tag:"JSXTagEnd"}))}h=T,yield{type:"JSXPunctuator",value:f[0]};continue}if(r.lastIndex=p,f=r.exec(_)){p=r.lastIndex,h=f[0],yield{type:"JSXIdentifier",value:f[0]};continue}if(n.lastIndex=p,f=n.exec(_)){p=n.lastIndex,h=f[0],yield{type:"JSXString",value:f[0],closed:f[2]!==void 0};continue}break;case"JSXChildren":if(i.lastIndex=p,f=i.exec(_)){p=i.lastIndex,h=f[0],yield{type:"JSXText",value:f[0]};continue}switch(_[p]){case"<":E.push({tag:"JSXTag"}),p++,h="<",yield{type:"JSXPunctuator",value:"<"};continue;case"{":E.push({tag:"InterpolationInJSX",nesting:b.length}),p++,h="?InterpolationInJSX",S=!1,yield{type:"JSXPunctuator",value:"{"};continue}}if(R.lastIndex=p,f=R.exec(_)){p=R.lastIndex,yield{type:"WhiteSpace",value:f[0]};continue}if(s.lastIndex=p,f=s.exec(_)){p=s.lastIndex,S=!1,o.test(h)&&(h="?NoLineTerminatorHere"),yield{type:"LineTerminatorSequence",value:f[0]};continue}if(u.lastIndex=p,f=u.exec(_)){p=u.lastIndex,d.test(f[0])&&(S=!1,o.test(h)&&(h="?NoLineTerminatorHere")),yield{type:"MultiLineComment",value:f[0],closed:f[1]!==void 0};continue}if(I.lastIndex=p,f=I.exec(_)){p=I.lastIndex,S=!1,yield{type:"SingleLineComment",value:f[0]};continue}$=String.fromCodePoint(_.codePointAt(p)),p+=$.length,h=$,S=!1,yield{type:P.tag.startsWith("JSX")?"JSXInvalid":"Invalid",value:$}}},U}Ye();var me={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"]};new Set(me.keyword);new Set(me.strict);var ne="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Ke=new Uint8Array(64),He=new Uint8Array(128);for(let e=0;e<ne.length;e++){let r=ne.charCodeAt(e);Ke[e]=r,He[r]=e}var ie;(function(e){e[e.Empty=1]="Empty",e[e.Hash=2]="Hash",e[e.Query=3]="Query",e[e.RelativePath=4]="RelativePath",e[e.AbsolutePath=5]="AbsolutePath",e[e.SchemeRelative=6]="SchemeRelative",e[e.Absolute=7]="Absolute"})(ie||(ie={}));var Ze=/^[A-Za-z]:\//;function Ge(e=""){return e&&e.replace(/\\/g,"/").replace(Ze,r=>r.toUpperCase())}var Qe=/^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/;function et(){return typeof O<"u"&&typeof O.cwd=="function"?O.cwd().replace(/\\/g,"/"):"/"}var tt=function(...e){e=e.map(n=>Ge(n));let r="",t=!1;for(let n=e.length-1;n>=-1&&!t;n--){let i=n>=0?e[n]:et();!i||i.length===0||(r=`${i}/${r}`,t=oe(i))}return r=rt(r,!t),t&&!oe(r)?`/${r}`:r.length>0?r:"."};function rt(e,r){let t="",n=0,i=-1,a=0,o=null;for(let s=0;s<=e.length;++s){if(s<e.length)o=e[s];else{if(o==="/")break;o="/"}if(o==="/"){if(!(i===s-1||a===1))if(a===2){if(t.length<2||n!==2||t[t.length-1]!=="."||t[t.length-2]!=="."){if(t.length>2){let u=t.lastIndexOf("/");u===-1?(t="",n=0):(t=t.slice(0,u),n=t.length-1-t.lastIndexOf("/")),i=s,a=0;continue}else if(t.length>0){t="",n=0,i=s,a=0;continue}}r&&(t+=t.length>0?"/..":"..",n=2)}else t.length>0?t+=`/${e.slice(i+1,s)}`:t=e.slice(i+1,s),n=s-i-1;i=s,a=0}else o==="."&&a!==-1?++a:a=-1}return t}var oe=function(e){return Qe.test(e)},ge=/^\s*at .*(?:\S:\d+|\(native\))/m,nt=/^(?:eval@)?(?:\[native code\])?$/;function ve(e){if(!e.includes(":"))return[e];let r=/(.+?)(?::(\d+))?(?::(\d+))?$/.exec(e.replace(/^\(|\)$/g,""));if(!r)return[e];let t=r[1];if(t.startsWith("async ")&&(t=t.slice(6)),t.startsWith("http:")||t.startsWith("https:")){let n=new URL(t);n.searchParams.delete("import"),n.searchParams.delete("browserv"),t=n.pathname+n.hash+n.search}if(t.startsWith("/@fs/")){let n=/^\/@fs\/[a-zA-Z]:\//.test(t);t=t.slice(n?5:4)}return[t,r[2]||void 0,r[3]||void 0]}function it(e){let r=e.trim();if(nt.test(r)||(r.includes(" > eval")&&(r=r.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,":$1")),!r.includes("@")&&!r.includes(":")))return null;let t=/((.*".+"[^@]*)?[^@]*)(@)/,n=r.match(t),i=n&&n[1]?n[1]:void 0,[a,o,s]=ve(r.replace(t,""));return!a||!o||!s?null:{file:a,method:i||"",line:Number.parseInt(o),column:Number.parseInt(s)}}function ot(e){let r=e.trim();return ge.test(r)?st(r):it(r)}function st(e){let r=e.trim();if(!ge.test(r))return null;r.includes("(eval ")&&(r=r.replace(/eval code/g,"eval").replace(/(\(eval at [^()]*)|(,.*$)/g,""));let t=r.replace(/^\s+/,"").replace(/\(eval code/g,"(").replace(/^.*?\s+/,""),n=t.match(/ (\(.+\)$)/);t=n?t.replace(n[0],""):t;let[i,a,o]=ve(n?n[1]:t),s=n&&t||"",u=i&&["eval","<anonymous>"].includes(i)?void 0:i;return!u||!a||!o?null:(s.startsWith("async ")&&(s=s.slice(6)),u.startsWith("file://")&&(u=u.slice(7)),u=u.startsWith("node:")||u.startsWith("internal:")?u:tt(u),s&&(s=s.replace(/__vite_ssr_import_\d+__\./g,"")),{method:s,file:u,line:Number.parseInt(a),column:Number.parseInt(o)})}function at(e){let r=e?.globalThisKey;function t(){return typeof globalThis[r]<"u"?globalThis[r]:new Proxy({},{get(n,i){throw new Error(`Vitest mocker was not initialized in this environment. vi.${String(i)}() is forbidden.`)}})}return{hoisted(n){if(typeof n!="function")throw new TypeError(`vi.hoisted() expects a function, but received a ${typeof n}`);return n()},mock(n,i){if(typeof n!="string")throw new TypeError(`vi.mock() expects a string path, but received a ${typeof n}`);let a=A("mock");t().queueMock(n,a,typeof i=="function"?()=>i(()=>t().importActual(n,a)):i)},unmock(n){if(typeof n!="string")throw new TypeError(`vi.unmock() expects a string path, but received a ${typeof n}`);t().queueUnmock(n,A("unmock"))},doMock(n,i){if(typeof n!="string")throw new TypeError(`vi.doMock() expects a string path, but received a ${typeof n}`);let a=A("doMock");t().queueMock(n,a,typeof i=="function"?()=>i(()=>t().importActual(n,a)):i)},doUnmock(n){if(typeof n!="string")throw new TypeError(`vi.doUnmock() expects a string path, but received a ${typeof n}`);t().queueUnmock(n,A("doUnmock"))},async importActual(n){return t().importActual(n,A("importActual"))},async importMock(n){return t().importMock(n,A("importMock"))}}}function A(e){let r=We({stackTraceLimit:5}).split(`
|
|
2
|
+
`),t=r.findIndex(i=>i.includes(` at Object.${e}`)||i.includes(`${e}@`));return ot(r[t+1])?.file||""}var{now:se}=Date,lt=class{registry=new ae;queue=new Set;mockedIds=new Set;constructor(e,r,t,n){this.interceptor=e,this.rpc=r,this.spyOn=t,this.config=n}async prepare(){this.queue.size&&await Promise.all([...this.queue.values()])}async resolveFactoryModule(e){let r=this.registry.get(e);if(!r||r.type!=="manual")throw new Error(`Mock ${e} wasn't registered. This is probably a Vitest error. Please, open a new issue with reproduction.`);return await r.resolve()}getFactoryModule(e){let r=this.registry.get(e);if(!r||r.type!=="manual")throw new Error(`Mock ${e} wasn't registered. This is probably a Vitest error. Please, open a new issue with reproduction.`);if(!r.cache)throw new Error(`Mock ${e} wasn't resolved. This is probably a Vitest error. Please, open a new issue with reproduction.`);return r.cache}async invalidate(){let e=Array.from(this.mockedIds);e.length&&(await this.rpc.invalidate(e),await this.interceptor.invalidate(),this.registry.clear())}async importActual(e,r){let t=await this.rpc.resolveId(e,r);if(t==null)throw new Error(`[vitest] Cannot resolve "${e}" imported from "${r}"`);let n=Ae(t.id),i=new URL(t.url,location.href),a=`_vitest_original&ext${n}`,o=`${i.pathname}${i.search?`${i.search}&${a}`:`?${a}`}${i.hash}`;return this.wrapDynamicImport(()=>import(o)).then(s=>{if(!t.optimized||typeof s.default>"u")return s;let u=s.default;return u?.__esModule?u:{...typeof u=="object"&&!Array.isArray(u)||typeof u=="function"?u:{},default:u}})}async importMock(e,r){await this.prepare();let{resolvedId:t,resolvedUrl:n,redirectUrl:i}=await this.rpc.resolveMock(e,r,{mock:"auto"}),a=this.resolveMockPath(J(n)),o=this.registry.get(a);if(!o)if(i){let s=new URL(this.resolveMockPath(J(i)),location.href).toString();o=new F(e,t,a,s)}else o=new X(e,t,a);if(o.type==="manual")return await o.resolve();if(o.type==="automock"||o.type==="autospy"){let s=new URL(`/@id/${t}`,location.href),u=s.search?`${s.search}&t=${se()}`:`?t=${se()}`,d=await ke(()=>import(`${s.pathname}${u}&mock=${o.type}${s.hash}`),[],import.meta.url);return this.mockObject(d,o.type)}return import(o.redirect)}mockObject(e,r="automock"){return we({globalConstructors:{Object,Function,Array,Map,RegExp},spyOn:this.spyOn,type:r},e)}queueMock(e,r,t){let n=this.rpc.resolveMock(e,r,{mock:typeof t=="function"?"factory":t?.spy?"spy":"auto"}).then(async({redirectUrl:i,resolvedId:a,resolvedUrl:o,needsInterop:s,mockType:u})=>{let d=this.resolveMockPath(J(o));this.mockedIds.add(a);let y=typeof t=="function"?async()=>{let I=await t();return s?{default:I}:I}:void 0,g=typeof i=="string"?new URL(this.resolveMockPath(J(i)),location.href).toString():null,m;u==="manual"?m=this.registry.register("manual",e,a,d,y):u==="autospy"?m=this.registry.register("autospy",e,a,d):u==="redirect"?m=this.registry.register("redirect",e,a,d,g):m=this.registry.register("automock",e,a,d),await this.interceptor.register(m)}).finally(()=>{this.queue.delete(n)});this.queue.add(n)}queueUnmock(e,r){let t=this.rpc.resolveId(e,r).then(async n=>{if(!n)return;let i=this.resolveMockPath(J(n.url));this.mockedIds.add(n.id),this.registry.delete(i),await this.interceptor.delete(i)}).finally(()=>{this.queue.delete(t)});this.queue.add(t)}wrapDynamicImport(e){return typeof e=="function"?new Promise((r,t)=>{this.prepare().finally(()=>{e().then(r,t)})}):e}resolveMockPath(e){let r=this.config,t=Re("/@fs/",r.root);return e.startsWith(r.root)?e.slice(r.root.length):e.startsWith(t)?e.slice(t.length):e}},ct=/(\?|&)v=\w{8}/;function J(e){return e.replace(ct,"")}var ut=class{mocks=new ae;constructor(){}async register(e){this.mocks.add(e)}async delete(e){this.mocks.delete(e)}async invalidate(){this.mocks.clear()}},z=e=>{switch(e){case"resolveId":return Promise.resolve({id:"",url:"",optimized:!1});case"resolveMock":return Promise.resolve({mockType:"dummy",resolvedId:"",resolvedUrl:"",redirectUrl:"",needsInterop:!1});case"invalidate":return Promise.resolve()}},ft=class extends lt{queueMock(){}};function dt(e){let r=new ft(e("__vitest_mocker__"),{resolveId(t,n){return z("resolveId")},resolveMock(t,n,i){return z("resolveMock")},async invalidate(t){return z("invalidate")}},(...t)=>globalThis.__STORYBOOK_MODULE_TEST__.spyOn(...t),{root:""});return globalThis.__vitest_mocker__=r,at({globalThisKey:"__vitest_mocker__"})}globalThis.__STORYBOOK_MOCKER__=dt(()=>new ut);
|
package/CLAUDE.md
CHANGED
|
@@ -1,94 +1,129 @@
|
|
|
1
|
-
# CLAUDE.md
|
|
2
|
-
|
|
3
|
-
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
-
|
|
5
|
-
## Project Overview
|
|
6
|
-
|
|
7
|
-
`@designcrowd/fe-shared-lib` is a shared Vue 3 component library and design system for DesignCrowd's frontend applications (BrandCrowd, Design.com, CrazyDomains, DesignCrowd, BrandPage). Published to NPM as a scoped package.
|
|
8
|
-
|
|
9
|
-
- **Default branch**: `master`
|
|
10
|
-
- **Node**: 20.x
|
|
11
|
-
- **Framework**: Vue 3 + Vite + Storybook 9
|
|
12
|
-
|
|
13
|
-
## Commands
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
npm start # Build Tailwind CSS + launch Storybook on port 6006
|
|
17
|
-
npm run build # Build production CSS (all themes)
|
|
18
|
-
npm run build:storybook # Build static Storybook for S3 deployment
|
|
19
|
-
npm run lint # ESLint check (src/ directory)
|
|
20
|
-
npm run lint:fix # ESLint auto-fix
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
**No test runner is configured.** Vue Test Utils (`@vue/test-utils`) is installed as a dev dependency but there is no Vitest/Jest setup and no `npm test` script. Do not attempt to run tests.
|
|
24
|
-
|
|
25
|
-
## Architecture
|
|
26
|
-
|
|
27
|
-
### Project Structure
|
|
28
|
-
- **`src/atoms/`** — Reusable UI components (Button, Modal, Icon, Dropdown, TextInput, etc.)
|
|
29
|
-
- **`src/experiences/`** — Complex business-specific components (AuthFlow, PaymentConfig, UploadLogo, etc.)
|
|
30
|
-
- **`src/themes/`** — Tailwind CSS theme configurations per brand
|
|
31
|
-
- **`src/css/`** — Global CSS and Tailwind entry point
|
|
32
|
-
- **`src/bundles/`** — Generated i18n translation bundles
|
|
33
|
-
|
|
34
|
-
### Theme System (5 brands)
|
|
35
|
-
Each brand has its own Tailwind theme extending a shared base:
|
|
36
|
-
- `bc.js` (BrandCrowd), `dcom.js` (Design.com), `dc.js` (DesignCrowd), `cd.js` (CrazyDomains), `bp.js` (BrandPage)
|
|
37
|
-
|
|
38
|
-
Themes are compiled into separate CSS files via `tailwind.build.js` → `dist/css/tailwind-[theme].css`
|
|
39
|
-
|
|
40
|
-
### Component Organization
|
|
41
|
-
- **Atoms**: Simple, reusable UI primitives with Storybook stories
|
|
42
|
-
- **Experiences**: Complex multi-atom components for specific workflows (auth, payments, uploads)
|
|
43
|
-
- **Icons**: Extensive icon library in `src/atoms/components/Icon/` with brand-specific variants
|
|
44
|
-
|
|
45
|
-
### Key Files
|
|
46
|
-
- `index.js` / `index.cjs` — Main exports (dual ESM/CJS)
|
|
47
|
-
- `tailwind.config.js` — Tailwind CSS configuration
|
|
48
|
-
- `tailwind.build.js` — CSS build script (multi-theme)
|
|
49
|
-
- `vite.config.ts` — Vite dev configuration
|
|
50
|
-
|
|
51
|
-
## Coding Standards
|
|
52
|
-
|
|
53
|
-
### Formatting (Prettier)
|
|
54
|
-
- Single quotes (`singleQuote: true`)
|
|
55
|
-
- Print width: 120 characters
|
|
56
|
-
- Trailing commas: all
|
|
57
|
-
- Arrow parens: always
|
|
58
|
-
|
|
59
|
-
### Linting (ESLint)
|
|
60
|
-
- Extends: `plugin:vue/recommended`, `@vue/airbnb`, `@vue/prettier`
|
|
61
|
-
- `no-console`: warn in production
|
|
62
|
-
- `import/prefer-default-export`: off
|
|
63
|
-
|
|
64
|
-
### Styling
|
|
65
|
-
- **Tailwind CSS** with `tw-` prefix for utility classes
|
|
66
|
-
- No SCSS — PostCSS only
|
|
67
|
-
- Theme-specific styles via the multi-brand theme system
|
|
68
|
-
|
|
69
|
-
### Vue Components
|
|
70
|
-
- Vue 3 Single File Components (`.vue`)
|
|
71
|
-
- Stories co-located with components (`.stories.js` files)
|
|
72
|
-
- Mixins in `src/atoms/mixin/` and `src/experiences/mixins/`
|
|
73
|
-
|
|
74
|
-
## Storybook
|
|
75
|
-
|
|
76
|
-
- Dev server: `npm start` → http://localhost:6006
|
|
77
|
-
- Live: https://brandcrowd-storybook.s3.amazonaws.com/fe-shared-lib/live/index.html
|
|
78
|
-
- Stories pattern: `src/**/components/**/*.stories.@(js|jsx|ts|tsx)`
|
|
79
|
-
- Supports theme switching (5 brands) and locale switching (8 languages)
|
|
80
|
-
|
|
81
|
-
##
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
1
|
+
# CLAUDE.md
|
|
2
|
+
|
|
3
|
+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
4
|
+
|
|
5
|
+
## Project Overview
|
|
6
|
+
|
|
7
|
+
`@designcrowd/fe-shared-lib` is a shared Vue 3 component library and design system for DesignCrowd's frontend applications (BrandCrowd, Design.com, CrazyDomains, DesignCrowd, BrandPage). Published to NPM as a scoped package.
|
|
8
|
+
|
|
9
|
+
- **Default branch**: `master`
|
|
10
|
+
- **Node**: 20.x
|
|
11
|
+
- **Framework**: Vue 3 + Vite + Storybook 9
|
|
12
|
+
|
|
13
|
+
## Commands
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm start # Build Tailwind CSS + launch Storybook on port 6006
|
|
17
|
+
npm run build # Build production CSS (all themes)
|
|
18
|
+
npm run build:storybook # Build static Storybook for S3 deployment
|
|
19
|
+
npm run lint # ESLint check (src/ directory)
|
|
20
|
+
npm run lint:fix # ESLint auto-fix
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
**No test runner is configured.** Vue Test Utils (`@vue/test-utils`) is installed as a dev dependency but there is no Vitest/Jest setup and no `npm test` script. Do not attempt to run tests.
|
|
24
|
+
|
|
25
|
+
## Architecture
|
|
26
|
+
|
|
27
|
+
### Project Structure
|
|
28
|
+
- **`src/atoms/`** — Reusable UI components (Button, Modal, Icon, Dropdown, TextInput, etc.)
|
|
29
|
+
- **`src/experiences/`** — Complex business-specific components (AuthFlow, PaymentConfig, UploadLogo, etc.)
|
|
30
|
+
- **`src/themes/`** — Tailwind CSS theme configurations per brand
|
|
31
|
+
- **`src/css/`** — Global CSS and Tailwind entry point
|
|
32
|
+
- **`src/bundles/`** — Generated i18n translation bundles
|
|
33
|
+
|
|
34
|
+
### Theme System (5 brands)
|
|
35
|
+
Each brand has its own Tailwind theme extending a shared base:
|
|
36
|
+
- `bc.js` (BrandCrowd), `dcom.js` (Design.com), `dc.js` (DesignCrowd), `cd.js` (CrazyDomains), `bp.js` (BrandPage)
|
|
37
|
+
|
|
38
|
+
Themes are compiled into separate CSS files via `tailwind.build.js` → `dist/css/tailwind-[theme].css`
|
|
39
|
+
|
|
40
|
+
### Component Organization
|
|
41
|
+
- **Atoms**: Simple, reusable UI primitives with Storybook stories
|
|
42
|
+
- **Experiences**: Complex multi-atom components for specific workflows (auth, payments, uploads)
|
|
43
|
+
- **Icons**: Extensive icon library in `src/atoms/components/Icon/` with brand-specific variants
|
|
44
|
+
|
|
45
|
+
### Key Files
|
|
46
|
+
- `index.js` / `index.cjs` — Main exports (dual ESM/CJS)
|
|
47
|
+
- `tailwind.config.js` — Tailwind CSS configuration
|
|
48
|
+
- `tailwind.build.js` — CSS build script (multi-theme)
|
|
49
|
+
- `vite.config.ts` — Vite dev configuration
|
|
50
|
+
|
|
51
|
+
## Coding Standards
|
|
52
|
+
|
|
53
|
+
### Formatting (Prettier)
|
|
54
|
+
- Single quotes (`singleQuote: true`)
|
|
55
|
+
- Print width: 120 characters
|
|
56
|
+
- Trailing commas: all
|
|
57
|
+
- Arrow parens: always
|
|
58
|
+
|
|
59
|
+
### Linting (ESLint)
|
|
60
|
+
- Extends: `plugin:vue/recommended`, `@vue/airbnb`, `@vue/prettier`
|
|
61
|
+
- `no-console`: warn in production
|
|
62
|
+
- `import/prefer-default-export`: off
|
|
63
|
+
|
|
64
|
+
### Styling
|
|
65
|
+
- **Tailwind CSS** with `tw-` prefix for utility classes
|
|
66
|
+
- No SCSS — PostCSS only
|
|
67
|
+
- Theme-specific styles via the multi-brand theme system
|
|
68
|
+
|
|
69
|
+
### Vue Components
|
|
70
|
+
- Vue 3 Single File Components (`.vue`)
|
|
71
|
+
- Stories co-located with components (`.stories.js` files)
|
|
72
|
+
- Mixins in `src/atoms/mixin/` and `src/experiences/mixins/`
|
|
73
|
+
|
|
74
|
+
## Storybook
|
|
75
|
+
|
|
76
|
+
- Dev server: `npm start` → http://localhost:6006
|
|
77
|
+
- Live: https://brandcrowd-storybook.s3.amazonaws.com/fe-shared-lib/live/index.html
|
|
78
|
+
- Stories pattern: `src/**/components/**/*.stories.@(js|jsx|ts|tsx)`
|
|
79
|
+
- Supports theme switching (5 brands) and locale switching (8 languages)
|
|
80
|
+
|
|
81
|
+
## Verifying UI Changes
|
|
82
|
+
|
|
83
|
+
After modifying Vue components or Storybook stories, verify changes visually using playwright-cli.
|
|
84
|
+
|
|
85
|
+
### Workflow
|
|
86
|
+
|
|
87
|
+
1. **Start Storybook** (runs in background):
|
|
88
|
+
```bash
|
|
89
|
+
npm start
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
2. **Wait for availability** - Storybook runs on http://localhost:6006. Check with:
|
|
93
|
+
```bash
|
|
94
|
+
curl -s -o /dev/null -w "%{http_code}" http://localhost:6006
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
3. **Navigate and screenshot** using playwright-cli:
|
|
98
|
+
```bash
|
|
99
|
+
playwright-cli open "http://localhost:6006/?path=/story/components-buttonname--default"
|
|
100
|
+
playwright-cli snapshot # See page structure
|
|
101
|
+
playwright-cli screenshot f1e4 --filename=component.png # Screenshot specific element
|
|
102
|
+
playwright-cli close
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Story URL Pattern
|
|
106
|
+
|
|
107
|
+
Stories are accessed via: `http://localhost:6006/?path=/story/{title-path}--{story-name}`
|
|
108
|
+
- Title path: lowercase, hyphens instead of spaces/slashes (e.g., `Components/VoiceToTextButton` becomes `components-voicetotextbutton`)
|
|
109
|
+
- Story name: lowercase export name (e.g., `Default` becomes `default`)
|
|
110
|
+
|
|
111
|
+
### Common Issues
|
|
112
|
+
|
|
113
|
+
- **package.json parse errors**: Ensure valid JSON (watch for missing commas after version changes)
|
|
114
|
+
- **React dependency errors**: Storybook 9 requires `react` and `react-dom` as devDependencies
|
|
115
|
+
|
|
116
|
+
## Local Development
|
|
117
|
+
|
|
118
|
+
Use `npm link` for local development with consumer projects:
|
|
119
|
+
```bash
|
|
120
|
+
npm link # in this directory
|
|
121
|
+
npm link @designcrowd/fe-shared-lib # in consumer project
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## Publishing (UAT)
|
|
125
|
+
|
|
126
|
+
To test experimental versions without publishing to production:
|
|
127
|
+
1. Update `package.json` version to `[current]-[description]`
|
|
128
|
+
2. Run `docker build . --build-arg NPM_TOKEN=$NPM_TOKEN`
|
|
129
|
+
3. Update consumer package reference to the new version
|
package/Dockerfile
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
FROM node:20.11.0-slim
|
|
2
|
-
|
|
3
|
-
RUN npm i -g npm@10.7.0
|
|
4
|
-
|
|
5
|
-
RUN apt-get update \
|
|
6
|
-
&& apt-get install -qq build-essential python3
|
|
7
|
-
|
|
8
|
-
WORKDIR /app
|
|
9
|
-
|
|
10
|
-
# First we copy only the things needed by gulp to preload the resources
|
|
11
|
-
COPY package.json .
|
|
12
|
-
COPY package-lock.json .
|
|
13
|
-
|
|
14
|
-
# Import the token to access private npm packages
|
|
15
|
-
COPY npmrc .
|
|
16
|
-
|
|
17
|
-
# Copy the npmrc and rename it to .npmrc -- reason being if its present in the repository with the '.' then npm tries to use it.. ¯\_(ツ)_/¯
|
|
18
|
-
RUN mv npmrc .npmrc
|
|
19
|
-
|
|
20
|
-
ARG NPM_TOKEN
|
|
21
|
-
RUN echo $NPM_TOKEN
|
|
22
|
-
|
|
23
|
-
RUN npm i
|
|
24
|
-
|
|
25
|
-
COPY . .
|
|
26
|
-
|
|
27
|
-
COPY .npmignore ./
|
|
28
|
-
|
|
29
|
-
RUN npm run bundle-translation
|
|
30
|
-
|
|
31
|
-
RUN mkdir artifacts
|
|
32
|
-
RUN npm publish || (touch artifacts/npm_publish_failed && exit 1)
|
|
33
|
-
RUN cp package.json artifacts/
|
|
34
|
-
|
|
35
|
-
ENTRYPOINT ["/bin/echo", "Nothing to do."]
|
|
36
|
-
|
|
37
|
-
# Publish to NPM:
|
|
38
|
-
#
|
|
39
|
-
# Windows
|
|
40
|
-
# docker build . --build-arg NPM_TOKEN=%NPM_TOKEN%
|
|
41
|
-
#
|
|
42
|
-
# Linux
|
|
43
|
-
# docker build . --build-arg NPM_TOKEN=$NPM_TOKEN
|
|
1
|
+
FROM node:20.11.0-slim
|
|
2
|
+
|
|
3
|
+
RUN npm i -g npm@10.7.0
|
|
4
|
+
|
|
5
|
+
RUN apt-get update \
|
|
6
|
+
&& apt-get install -qq build-essential python3
|
|
7
|
+
|
|
8
|
+
WORKDIR /app
|
|
9
|
+
|
|
10
|
+
# First we copy only the things needed by gulp to preload the resources
|
|
11
|
+
COPY package.json .
|
|
12
|
+
COPY package-lock.json .
|
|
13
|
+
|
|
14
|
+
# Import the token to access private npm packages
|
|
15
|
+
COPY npmrc .
|
|
16
|
+
|
|
17
|
+
# Copy the npmrc and rename it to .npmrc -- reason being if its present in the repository with the '.' then npm tries to use it.. ¯\_(ツ)_/¯
|
|
18
|
+
RUN mv npmrc .npmrc
|
|
19
|
+
|
|
20
|
+
ARG NPM_TOKEN
|
|
21
|
+
RUN echo $NPM_TOKEN
|
|
22
|
+
|
|
23
|
+
RUN npm i
|
|
24
|
+
|
|
25
|
+
COPY . .
|
|
26
|
+
|
|
27
|
+
COPY .npmignore ./
|
|
28
|
+
|
|
29
|
+
RUN npm run bundle-translation
|
|
30
|
+
|
|
31
|
+
RUN mkdir artifacts
|
|
32
|
+
RUN npm publish || (touch artifacts/npm_publish_failed && exit 1)
|
|
33
|
+
RUN cp package.json artifacts/
|
|
34
|
+
|
|
35
|
+
ENTRYPOINT ["/bin/echo", "Nothing to do."]
|
|
36
|
+
|
|
37
|
+
# Publish to NPM:
|
|
38
|
+
#
|
|
39
|
+
# Windows
|
|
40
|
+
# docker build . --build-arg NPM_TOKEN=%NPM_TOKEN%
|
|
41
|
+
#
|
|
42
|
+
# Linux
|
|
43
|
+
# docker build . --build-arg NPM_TOKEN=$NPM_TOKEN
|
package/README.md
CHANGED
|
@@ -1,103 +1,103 @@
|
|
|
1
|
-
# fe-shared-lib
|
|
2
|
-
|
|
3
|
-
## Contents
|
|
4
|
-
|
|
5
|
-
- [Start](#start)
|
|
6
|
-
- [Local Development](#local-development)
|
|
7
|
-
- [Testing in a UAT](#testing-uat)
|
|
8
|
-
- [Storybook](#storybook)
|
|
9
|
-
|
|
10
|
-
```
|
|
11
|
-
npm install
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
### Start
|
|
15
|
-
|
|
16
|
-
This command will build all of the necessary Tailwind files for each theme and setup the configuration for Storybook. Once complete, Storybook will open and you can preview the shared components.
|
|
17
|
-
|
|
18
|
-
```
|
|
19
|
-
npm start
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
<a id="local-development"></a>
|
|
23
|
-
|
|
24
|
-
### Local Development
|
|
25
|
-
|
|
26
|
-
To edit the design system locally whilst being using in a consumer you need to run `npm link` in this directory and then `npm link @designcrowd/fe-shared-lib` in the consumer.
|
|
27
|
-
|
|
28
|
-
<a id="testing-uat"></a>
|
|
29
|
-
|
|
30
|
-
### Testing in a UAT
|
|
31
|
-
|
|
32
|
-
If you want to have an experimental version of your change, like have it in a uat env without publishing it to prod:
|
|
33
|
-
|
|
34
|
-
1. Update package.json with `"version": "[current]-[short description of your work]"`
|
|
35
|
-
2. Run npm i
|
|
36
|
-
3. run `docker build . --build-arg NPM_TOKEN=$NPM_TOKEN` in the project directory (make sure you have $NPM_TOKEN properly set in your local env)
|
|
37
|
-
4. Update package reference in the consumer to the version you have just built
|
|
38
|
-
|
|
39
|
-
### If you are making changes to components used into the BrandPage Tab in BC.NET
|
|
40
|
-
|
|
41
|
-
1. Get latest app.maker source code.
|
|
42
|
-
2. Update its reference to `@designcrowd/fe-shared-lib` with the one you just built
|
|
43
|
-
3. Bump its version (app.maker version)
|
|
44
|
-
4. Run `npm run docker:publish:bp`
|
|
45
|
-
5. IN BC.Net Update reference of `@designcrowd/library.brand-page` to use the version you just set in the app.maker
|
|
46
|
-
|
|
47
|
-
<a id="storybook"></a>
|
|
48
|
-
|
|
49
|
-
### Storybook
|
|
50
|
-
|
|
51
|
-
Storybook is published with each new commit to `master` and can be found here:
|
|
52
|
-
|
|
53
|
-
https://brandcrowd-storybook.s3.amazonaws.com/fe-shared-lib/live/index.html
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
# atoms (formerly shared-component-library)
|
|
59
|
-
|
|
60
|
-
This flow chart describes the workflow for the shared component library.
|
|
61
|
-
https://app.diagrams.net/#G1TtCW8-zgVQz7bacsfQpqL5ZYCzeCGnXu
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
## Project setup
|
|
65
|
-
|
|
66
|
-
```
|
|
67
|
-
npm i
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
### Start
|
|
71
|
-
|
|
72
|
-
This command will build all necessary Tailwind files for each theme and set up the configuration for Storybook. Once complete, Storybook will open and you can preview the shared components.
|
|
73
|
-
|
|
74
|
-
```
|
|
75
|
-
npm start
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
### Local Development
|
|
79
|
-
|
|
80
|
-
### Storybook
|
|
81
|
-
|
|
82
|
-
Update Storybook: `npx storybook@latest upgrade`
|
|
83
|
-
|
|
84
|
-
Writing stories:
|
|
85
|
-
|
|
86
|
-
* Storybook Vue 3 docs: https://storybook.js.org/docs/get-started/vue3-vite
|
|
87
|
-
* Official examples: https://github.com/storybookjs/storybook/blob/next/test-storybooks/portable-stories-kitchen-sink/vue3/stories/Button.stories.ts
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
# DesignCrowd Tailwind Configuration
|
|
92
|
-
The purpose of the `themes` directory is to build up a library of themes for our different products in a single place. These themes are then exported and consumed into each product using a local Tailwind CSS setup specific to that product. This provides us with a consistent approach for our colours, fonts, spacing etc whilst also being able to control the Tailwind CSS styles across all of our products.
|
|
93
|
-
|
|
94
|
-
TODO This repository is published as an NPM package and it's themes and helper functions are exposed in the `index.js` file.
|
|
95
|
-
|
|
96
|
-
## Adding new configuration styles
|
|
97
|
-
New configuration styles can be added to the `themes/base.js` file which will be shared by all child themes. If you want to add a new option only in a specific theme, then edit the `themes/xx.js` file. The format for the theme files follows the structure of the `tailwind.config.js` file. https://tailwindcss.com/docs/configuration
|
|
98
|
-
|
|
99
|
-
## Adding new themes
|
|
100
|
-
New themes can be added by creating a new xx.js file in the themes folder. Once the new theme has been configured, it will need to be made exportable in the `index.js` file.
|
|
101
|
-
|
|
102
|
-
## Versioning
|
|
103
|
-
Ensure to bump the version number in `package.json` followed by running `npm i` before each commit. And then run `npm run docker:publish` to publish the version to NPM.
|
|
1
|
+
# fe-shared-lib
|
|
2
|
+
|
|
3
|
+
## Contents
|
|
4
|
+
|
|
5
|
+
- [Start](#start)
|
|
6
|
+
- [Local Development](#local-development)
|
|
7
|
+
- [Testing in a UAT](#testing-uat)
|
|
8
|
+
- [Storybook](#storybook)
|
|
9
|
+
|
|
10
|
+
```
|
|
11
|
+
npm install
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
### Start
|
|
15
|
+
|
|
16
|
+
This command will build all of the necessary Tailwind files for each theme and setup the configuration for Storybook. Once complete, Storybook will open and you can preview the shared components.
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
npm start
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
<a id="local-development"></a>
|
|
23
|
+
|
|
24
|
+
### Local Development
|
|
25
|
+
|
|
26
|
+
To edit the design system locally whilst being using in a consumer you need to run `npm link` in this directory and then `npm link @designcrowd/fe-shared-lib` in the consumer.
|
|
27
|
+
|
|
28
|
+
<a id="testing-uat"></a>
|
|
29
|
+
|
|
30
|
+
### Testing in a UAT
|
|
31
|
+
|
|
32
|
+
If you want to have an experimental version of your change, like have it in a uat env without publishing it to prod:
|
|
33
|
+
|
|
34
|
+
1. Update package.json with `"version": "[current]-[short description of your work]"`
|
|
35
|
+
2. Run npm i
|
|
36
|
+
3. run `docker build . --build-arg NPM_TOKEN=$NPM_TOKEN` in the project directory (make sure you have $NPM_TOKEN properly set in your local env)
|
|
37
|
+
4. Update package reference in the consumer to the version you have just built
|
|
38
|
+
|
|
39
|
+
### If you are making changes to components used into the BrandPage Tab in BC.NET
|
|
40
|
+
|
|
41
|
+
1. Get latest app.maker source code.
|
|
42
|
+
2. Update its reference to `@designcrowd/fe-shared-lib` with the one you just built
|
|
43
|
+
3. Bump its version (app.maker version)
|
|
44
|
+
4. Run `npm run docker:publish:bp`
|
|
45
|
+
5. IN BC.Net Update reference of `@designcrowd/library.brand-page` to use the version you just set in the app.maker
|
|
46
|
+
|
|
47
|
+
<a id="storybook"></a>
|
|
48
|
+
|
|
49
|
+
### Storybook
|
|
50
|
+
|
|
51
|
+
Storybook is published with each new commit to `master` and can be found here:
|
|
52
|
+
|
|
53
|
+
https://brandcrowd-storybook.s3.amazonaws.com/fe-shared-lib/live/index.html
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
# atoms (formerly shared-component-library)
|
|
59
|
+
|
|
60
|
+
This flow chart describes the workflow for the shared component library.
|
|
61
|
+
https://app.diagrams.net/#G1TtCW8-zgVQz7bacsfQpqL5ZYCzeCGnXu
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
## Project setup
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
npm i
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Start
|
|
71
|
+
|
|
72
|
+
This command will build all necessary Tailwind files for each theme and set up the configuration for Storybook. Once complete, Storybook will open and you can preview the shared components.
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
npm start
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Local Development
|
|
79
|
+
|
|
80
|
+
### Storybook
|
|
81
|
+
|
|
82
|
+
Update Storybook: `npx storybook@latest upgrade`
|
|
83
|
+
|
|
84
|
+
Writing stories:
|
|
85
|
+
|
|
86
|
+
* Storybook Vue 3 docs: https://storybook.js.org/docs/get-started/vue3-vite
|
|
87
|
+
* Official examples: https://github.com/storybookjs/storybook/blob/next/test-storybooks/portable-stories-kitchen-sink/vue3/stories/Button.stories.ts
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
# DesignCrowd Tailwind Configuration
|
|
92
|
+
The purpose of the `themes` directory is to build up a library of themes for our different products in a single place. These themes are then exported and consumed into each product using a local Tailwind CSS setup specific to that product. This provides us with a consistent approach for our colours, fonts, spacing etc whilst also being able to control the Tailwind CSS styles across all of our products.
|
|
93
|
+
|
|
94
|
+
TODO This repository is published as an NPM package and it's themes and helper functions are exposed in the `index.js` file.
|
|
95
|
+
|
|
96
|
+
## Adding new configuration styles
|
|
97
|
+
New configuration styles can be added to the `themes/base.js` file which will be shared by all child themes. If you want to add a new option only in a specific theme, then edit the `themes/xx.js` file. The format for the theme files follows the structure of the `tailwind.config.js` file. https://tailwindcss.com/docs/configuration
|
|
98
|
+
|
|
99
|
+
## Adding new themes
|
|
100
|
+
New themes can be added by creating a new xx.js file in the themes folder. Once the new theme has been configured, it will need to be made exportable in the `index.js` file.
|
|
101
|
+
|
|
102
|
+
## Versioning
|
|
103
|
+
Ensure to bump the version number in `package.json` followed by running `npm i` before each commit. And then run `npm run docker:publish` to publish the version to NPM.
|