@designcrowd/fe-shared-lib 1.5.9-kp-6 → 1.5.9-kp-4550-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/.storybook-static/css/tailwind-brandCrowd.css +2472 -0
  2. package/.storybook-static/css/tailwind-brandPage.css +2156 -0
  3. package/.storybook-static/css/tailwind-crazyDomains.css +2472 -0
  4. package/.storybook-static/css/tailwind-designCom.css +2472 -0
  5. package/.storybook-static/css/tailwind-designCrowd.css +2472 -0
  6. package/.storybook-static/favicon.svg +1 -0
  7. package/.storybook-static/index.html +156 -0
  8. package/.storybook-static/index.json +1 -0
  9. package/.storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  10. package/.storybook-static/nunito-sans-bold.woff2 +0 -0
  11. package/.storybook-static/nunito-sans-italic.woff2 +0 -0
  12. package/.storybook-static/nunito-sans-regular.woff2 +0 -0
  13. package/.storybook-static/project.json +1 -0
  14. package/.storybook-static/sb-addons/a11y-1/manager-bundle.js +5 -0
  15. package/.storybook-static/sb-addons/links-2/manager-bundle.js +3 -0
  16. package/.storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +188 -0
  17. package/.storybook-static/sb-addons/themes-3/manager-bundle.js +3 -0
  18. package/.storybook-static/sb-common-assets/favicon.svg +1 -0
  19. package/.storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  20. package/.storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  21. package/.storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  22. package/.storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  23. package/.storybook-static/sb-manager/globals-module-info.js +797 -0
  24. package/.storybook-static/sb-manager/globals-runtime.js +72062 -0
  25. package/.storybook-static/sb-manager/globals.js +34 -0
  26. package/.storybook-static/sb-manager/runtime.js +13002 -0
  27. package/package.json +3 -1
  28. package/public/css/tailwind-brandCrowd.css +22 -4
  29. package/public/css/tailwind-brandPage.css +22 -0
  30. package/public/css/tailwind-crazyDomains.css +22 -4
  31. package/public/css/tailwind-designCom.css +22 -4
  32. package/public/css/tailwind-designCrowd.css +22 -4
  33. package/src/atoms/components/Icon/Icon.stories.js +7 -0
  34. package/src/atoms/components/Icon/Icon.vue +13 -0
  35. package/src/atoms/components/Icon/icons/websites/upgrade-to-add-page.vue +50 -0
  36. package/src/atoms/components/Icon/icons/websites/upgrade-to-contact-form.vue +82 -0
  37. package/src/atoms/components/Icon/icons/websites/upgrade-to-maps.vue +40 -0
  38. package/src/atoms/components/Icon/icons/websites/upgrade-to-publish.vue +107 -0
  39. package/src/atoms/components/Icon/icons/websites/upgrade-to-remove-watermark.vue +74 -0
  40. package/src/atoms/components/Icon/icons/websites/upgrade-to-videos.vue +16 -0
  41. package/src/bundles/bundled-translations.de-DE.json +25 -3
  42. package/src/bundles/bundled-translations.es-ES.json +25 -3
  43. package/src/bundles/bundled-translations.fr-CA.json +25 -3
  44. package/src/bundles/bundled-translations.fr-FR.json +25 -3
  45. package/src/bundles/bundled-translations.json +25 -3
  46. package/src/bundles/bundled-translations.pt-BR.json +25 -3
  47. package/src/bundles/bundled-translations.pt-PT.json +25 -3
  48. package/src/experiences/components/PublishBrandPageModal/PublishBrandPageModal.vue +0 -5
  49. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.de-DE.json +21 -23
  50. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.es-ES.json +21 -23
  51. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.fr-CA.json +21 -23
  52. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.fr-FR.json +21 -23
  53. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.json +1 -3
  54. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.pt-BR.json +21 -23
  55. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.pt-PT.json +21 -23
  56. package/src/experiences/components/PublishBrandPageModal/views/PublishWhenNoDomainsView.vue +1 -14
  57. package/src/experiences/components/WebsitesContextualUpgradeModal/WebsiteContextualUpgradeModal.stories.js +157 -0
  58. package/src/experiences/components/WebsitesContextualUpgradeModal/WebsiteContextualUpgradeModal.vue +135 -0
  59. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.de-DE.json +26 -0
  60. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.es-ES.json +26 -0
  61. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.fr-CA.json +26 -0
  62. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.fr-FR.json +26 -0
  63. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.json +26 -0
  64. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.pt-BR.json +26 -0
  65. package/src/experiences/components/WebsitesContextualUpgradeModal/i18n/website-contextual-upgrade-modal.pt-PT.json +26 -0
  66. package/src/useSharedLibTranslate.js +4 -0
@@ -1,26 +1,24 @@
1
1
  {
2
- "publishBrandPageModal": {
3
- "firstTimePublishHeaderLabel": "Establece la URL para {{brandPageDisplayName}}",
4
- "sitePublishedLabel": "¡Sitio publicado!",
5
- "publishSuccessLabel": "¡Tu {{brandPageDisplayName}} está activo! Comienza a usar tu enlace:",
6
- "freePublishCardTitleLabel": "Dirección gratuita",
7
- "freePublishCardDescriptionLabel": "Elige una dirección gratuita para publicar ahora. Siempre puedes editar la URL más tarde",
8
- "slugInputPlaceholderYourNameLabel": "tu-nombre",
9
- "slugInputPlaceholderYourBusinessNameLabel": "nombre-de-tu-negocio",
10
- "freeDomainLabel": "Dominio gratis",
11
- "purchasedDomainLabel": "Dominio adquirido",
12
- "setUrlLabel": "Establece URL",
13
- "publishLabel": "Publicar",
14
- "viewMoreDomainLabel": "VER MÁS DOMINIOS",
15
- "viewMyWebsiteLabel": "Ver {{brandPageDisplayName}}",
16
- "copyLabel": "Copiar",
17
- "copySuccessLabel": "¡Copiado!",
18
- "publishedSuccessDescriptionLabel": "Compra un nombre de dominio que coincida con tu marca",
19
- "hasAlreadyPurchasedDomainCloseButtonLabel": "No gracias, quizás más tarde",
20
- "selectDomainDropdownPlaceholder": "Selecciona un nombre de dominio",
21
- "websiteFriendlyName": "Sitio web",
22
- "digitalBusinessCardFriendlyName": "Tarjeta de visita digital",
23
- "alreadyHaveADomainLabel": "¿Ya tienes un dominio?",
24
- "useExistingDomainLabel": "Usa el dominio existente"
2
+ "publishBrandPageModal" : {
3
+ "firstTimePublishHeaderLabel" : "Establece la URL para {{brandPageDisplayName}}",
4
+ "sitePublishedLabel" : "¡Sitio publicado!",
5
+ "publishSuccessLabel" : "¡Tu {{brandPageDisplayName}} está activo! Comienza a usar tu enlace:",
6
+ "freePublishCardTitleLabel" : "Dirección gratuita",
7
+ "freePublishCardDescriptionLabel" : "Elige una dirección gratuita para publicar ahora. Siempre puedes editar la URL más tarde",
8
+ "slugInputPlaceholderYourNameLabel" : "tu-nombre",
9
+ "slugInputPlaceholderYourBusinessNameLabel" : "nombre-de-tu-negocio",
10
+ "freeDomainLabel" : "Dominio gratis",
11
+ "purchasedDomainLabel" : "Dominio adquirido",
12
+ "setUrlLabel" : "Establece URL",
13
+ "publishLabel" : "Publicar",
14
+ "viewMoreDomainLabel" : "VER MÁS DOMINIOS",
15
+ "viewMyWebsiteLabel" : "Ver {{brandPageDisplayName}}",
16
+ "copyLabel" : "Copiar",
17
+ "copySuccessLabel" : "¡Copiado!",
18
+ "publishedSuccessDescriptionLabel" : "Compra un nombre de dominio que coincida con tu marca",
19
+ "hasAlreadyPurchasedDomainCloseButtonLabel" : "No gracias, quizás más tarde",
20
+ "selectDomainDropdownPlaceholder" : "Selecciona un nombre de dominio",
21
+ "websiteFriendlyName" : "Sitio web",
22
+ "digitalBusinessCardFriendlyName" : "Tarjeta de visita digital"
25
23
  }
26
24
  }
@@ -1,26 +1,24 @@
1
1
  {
2
- "publishBrandPageModal": {
3
- "firstTimePublishHeaderLabel": "Définissez l'URL pour {{brandPageDisplayName}}",
4
- "sitePublishedLabel": "Site publié !",
5
- "publishSuccessLabel": "Votre {{brandPageDisplayName}} est en ligne ! Commencez à utiliser votre lien :",
6
- "freePublishCardTitleLabel": "Adresse libre",
7
- "freePublishCardDescriptionLabel": "Choisissez une adresse gratuite pour publier maintenant. Vous pouvez toujours modifier l'URL plus tard",
8
- "slugInputPlaceholderYourNameLabel": "your-name",
9
- "slugInputPlaceholderYourBusinessNameLabel": "nom-de-votre-entreprise",
10
- "freeDomainLabel": "Domaine gratuit",
11
- "purchasedDomainLabel": "Domaine acheté",
12
- "setUrlLabel": "Définir l'URL",
13
- "publishLabel": "Publier",
14
- "viewMoreDomainLabel": "VOIR PLUS DE NOMS DE DOMAINE",
15
- "viewMyWebsiteLabel": "Voir {{brandPageDisplayName}}",
16
- "copyLabel": "Copier",
17
- "copySuccessLabel": "Copié !",
18
- "publishedSuccessDescriptionLabel": "Achetez un nom de domaine correspondant à votre marque",
19
- "hasAlreadyPurchasedDomainCloseButtonLabel": "Non merci, peut-être plus tard",
20
- "selectDomainDropdownPlaceholder": "Sélectionner un nom de domaine",
21
- "websiteFriendlyName": "Site Web",
22
- "digitalBusinessCardFriendlyName": "Carte professionnelle numérique",
23
- "alreadyHaveADomainLabel": "Vous avez déjà un domaine?",
24
- "useExistingDomainLabel": "Utiliser un domaine existant"
2
+ "publishBrandPageModal" : {
3
+ "firstTimePublishHeaderLabel" : "Définissez l'URL pour {{brandPageDisplayName}}",
4
+ "sitePublishedLabel" : "Site publié !",
5
+ "publishSuccessLabel" : "Votre {{brandPageDisplayName}} est en ligne ! Commencez à utiliser votre lien :",
6
+ "freePublishCardTitleLabel" : "Adresse libre",
7
+ "freePublishCardDescriptionLabel" : "Choisissez une adresse gratuite pour publier maintenant. Vous pouvez toujours modifier l'URL plus tard",
8
+ "slugInputPlaceholderYourNameLabel" : "your-name",
9
+ "slugInputPlaceholderYourBusinessNameLabel" : "nom-de-votre-entreprise",
10
+ "freeDomainLabel" : "Domaine gratuit",
11
+ "purchasedDomainLabel" : "Domaine acheté",
12
+ "setUrlLabel" : "Définir l'URL",
13
+ "publishLabel" : "Publier",
14
+ "viewMoreDomainLabel" : "VOIR PLUS DE NOMS DE DOMAINE",
15
+ "viewMyWebsiteLabel" : "Voir {{brandPageDisplayName}}",
16
+ "copyLabel" : "Copier",
17
+ "copySuccessLabel" : "Copié !",
18
+ "publishedSuccessDescriptionLabel" : "Achetez un nom de domaine correspondant à votre marque",
19
+ "hasAlreadyPurchasedDomainCloseButtonLabel" : "Non merci, peut-être plus tard",
20
+ "selectDomainDropdownPlaceholder" : "Sélectionner un nom de domaine",
21
+ "websiteFriendlyName" : "Site Web",
22
+ "digitalBusinessCardFriendlyName" : "Carte professionnelle numérique"
25
23
  }
26
24
  }
@@ -1,26 +1,24 @@
1
1
  {
2
- "publishBrandPageModal": {
3
- "firstTimePublishHeaderLabel": "Définissez l'URL pour {{brandPageDisplayName}}",
4
- "sitePublishedLabel": "Site publié !",
5
- "publishSuccessLabel": "Votre {{brandPageDisplayName}} est en ligne ! Commencez à utiliser votre lien :",
6
- "freePublishCardTitleLabel": "Adresse libre",
7
- "freePublishCardDescriptionLabel": "Choisissez une adresse gratuite pour publier maintenant. Vous pouvez toujours modifier l'URL plus tard",
8
- "slugInputPlaceholderYourNameLabel": "your-name",
9
- "slugInputPlaceholderYourBusinessNameLabel": "nom-de-votre-entreprise",
10
- "freeDomainLabel": "Domaine gratuit",
11
- "purchasedDomainLabel": "Domaine acheté",
12
- "setUrlLabel": "Définir l'URL",
13
- "publishLabel": "Publier",
14
- "viewMoreDomainLabel": "VOIR PLUS DE NOMS DE DOMAINE",
15
- "viewMyWebsiteLabel": "Voir {{brandPageDisplayName}}",
16
- "copyLabel": "Copier",
17
- "copySuccessLabel": "Copié !",
18
- "publishedSuccessDescriptionLabel": "Achetez un nom de domaine correspondant à votre marque",
19
- "hasAlreadyPurchasedDomainCloseButtonLabel": "Non merci, peut-être plus tard",
20
- "selectDomainDropdownPlaceholder": "Sélectionner un nom de domaine",
21
- "websiteFriendlyName": "Site Web",
22
- "digitalBusinessCardFriendlyName": "Carte de visite numérique",
23
- "alreadyHaveADomainLabel": "Vous avez déjà un domaine ?",
24
- "useExistingDomainLabel": "Utiliser un domaine existant"
2
+ "publishBrandPageModal" : {
3
+ "firstTimePublishHeaderLabel" : "Définissez l'URL pour {{brandPageDisplayName}}",
4
+ "sitePublishedLabel" : "Site publié !",
5
+ "publishSuccessLabel" : "Votre {{brandPageDisplayName}} est en ligne ! Commencez à utiliser votre lien :",
6
+ "freePublishCardTitleLabel" : "Adresse libre",
7
+ "freePublishCardDescriptionLabel" : "Choisissez une adresse gratuite pour publier maintenant. Vous pouvez toujours modifier l'URL plus tard",
8
+ "slugInputPlaceholderYourNameLabel" : "your-name",
9
+ "slugInputPlaceholderYourBusinessNameLabel" : "nom-de-votre-entreprise",
10
+ "freeDomainLabel" : "Domaine gratuit",
11
+ "purchasedDomainLabel" : "Domaine acheté",
12
+ "setUrlLabel" : "Définir l'URL",
13
+ "publishLabel" : "Publier",
14
+ "viewMoreDomainLabel" : "VOIR PLUS DE NOMS DE DOMAINE",
15
+ "viewMyWebsiteLabel" : "Voir {{brandPageDisplayName}}",
16
+ "copyLabel" : "Copier",
17
+ "copySuccessLabel" : "Copié !",
18
+ "publishedSuccessDescriptionLabel" : "Achetez un nom de domaine correspondant à votre marque",
19
+ "hasAlreadyPurchasedDomainCloseButtonLabel" : "Non merci, peut-être plus tard",
20
+ "selectDomainDropdownPlaceholder" : "Sélectionner un nom de domaine",
21
+ "websiteFriendlyName" : "Site Web",
22
+ "digitalBusinessCardFriendlyName" : "Carte de visite numérique"
25
23
  }
26
24
  }
@@ -19,8 +19,6 @@
19
19
  "hasAlreadyPurchasedDomainCloseButtonLabel": "No thanks, maybe later",
20
20
  "selectDomainDropdownPlaceholder": "Select domain name",
21
21
  "websiteFriendlyName": "Website",
22
- "digitalBusinessCardFriendlyName": "Digital Business Card",
23
- "alreadyHaveADomainLabel": "Already have a domain?",
24
- "useExistingDomainLabel": "Use my existing domain"
22
+ "digitalBusinessCardFriendlyName": "Digital Business Card"
25
23
  }
26
24
  }
@@ -1,26 +1,24 @@
1
1
  {
2
- "publishBrandPageModal": {
3
- "firstTimePublishHeaderLabel": "Defina o URL para {{brandPageDisplayName}}",
4
- "sitePublishedLabel": "Site publicado!",
5
- "publishSuccessLabel": "Seu {{brandPageDisplayName}} está ativo! Comece a usar seu link:",
6
- "freePublishCardTitleLabel": "Endereço gratuito",
7
- "freePublishCardDescriptionLabel": "Escolha um endereço gratuito para publicar agora. Você pode editar o URL depois",
8
- "slugInputPlaceholderYourNameLabel": "Seu nome",
9
- "slugInputPlaceholderYourBusinessNameLabel": "nome-da-sua-empresa",
10
- "freeDomainLabel": "Domínio gratuito",
11
- "purchasedDomainLabel": "Domínio comprado",
12
- "setUrlLabel": "Definir URL",
13
- "publishLabel": "Publicar",
14
- "viewMoreDomainLabel": "Ver mais domínios",
15
- "viewMyWebsiteLabel": "Ver {{brandPageDisplayName}}",
16
- "copyLabel": "Copiar",
17
- "copySuccessLabel": "Copiado!",
18
- "publishedSuccessDescriptionLabel": "Compre um nome de domínio que corresponda à sua marca",
19
- "hasAlreadyPurchasedDomainCloseButtonLabel": "Não, obrigado. Talvez depois",
20
- "selectDomainDropdownPlaceholder": "Selecionar nome de domínio",
21
- "websiteFriendlyName": "Site",
22
- "digitalBusinessCardFriendlyName": "Cartão de visita digital",
23
- "alreadyHaveADomainLabel": "Já tem um domínio?",
24
- "useExistingDomainLabel": "Usar domínio existente"
2
+ "publishBrandPageModal" : {
3
+ "firstTimePublishHeaderLabel" : "Defina o URL para {{brandPageDisplayName}}",
4
+ "sitePublishedLabel" : "Site publicado!",
5
+ "publishSuccessLabel" : "Seu {{brandPageDisplayName}} está ativo! Comece a usar seu link:",
6
+ "freePublishCardTitleLabel" : "Endereço gratuito",
7
+ "freePublishCardDescriptionLabel" : "Escolha um endereço gratuito para publicar agora. Você pode editar o URL depois",
8
+ "slugInputPlaceholderYourNameLabel" : "Seu nome",
9
+ "slugInputPlaceholderYourBusinessNameLabel" : "nome-da-sua-empresa",
10
+ "freeDomainLabel" : "Domínio gratuito",
11
+ "purchasedDomainLabel" : "Domínio comprado",
12
+ "setUrlLabel" : "Definir URL",
13
+ "publishLabel" : "Publicar",
14
+ "viewMoreDomainLabel" : "Ver mais domínios",
15
+ "viewMyWebsiteLabel" : "Ver {{brandPageDisplayName}}",
16
+ "copyLabel" : "Copiar",
17
+ "copySuccessLabel" : "Copiado!",
18
+ "publishedSuccessDescriptionLabel" : "Compre um nome de domínio que corresponda à sua marca",
19
+ "hasAlreadyPurchasedDomainCloseButtonLabel" : "Não, obrigado. Talvez depois",
20
+ "selectDomainDropdownPlaceholder" : "Selecionar nome de domínio",
21
+ "websiteFriendlyName" : "Site",
22
+ "digitalBusinessCardFriendlyName" : "Cartão de visita digital"
25
23
  }
26
24
  }
@@ -1,26 +1,24 @@
1
1
  {
2
- "publishBrandPageModal": {
3
- "firstTimePublishHeaderLabel": "Defina o URL para {{brandPageDisplayName}}",
4
- "sitePublishedLabel": "Site publicado!",
5
- "publishSuccessLabel": "A sua página {{brandPageDisplayName}} está ativa! Comece a utilizar o link:",
6
- "freePublishCardTitleLabel": "Endereço gratuito",
7
- "freePublishCardDescriptionLabel": "Escolha um endereço gratuito para publicar agora. Pode sempre editar o URL mais tarde",
8
- "slugInputPlaceholderYourNameLabel": "o-seu-nome",
9
- "slugInputPlaceholderYourBusinessNameLabel": "nome-da-sua-empresa",
10
- "freeDomainLabel": "Domínio gratuito",
11
- "purchasedDomainLabel": "Domínio comprado",
12
- "setUrlLabel": "Definir URL",
13
- "publishLabel": "Publicar",
14
- "viewMoreDomainLabel": "VER MAIS DOMÍNIOS",
15
- "viewMyWebsiteLabel": "Ver {{brandPageDisplayName}}",
16
- "copyLabel": "Copiar",
17
- "copySuccessLabel": "Copiado!",
18
- "publishedSuccessDescriptionLabel": "Compre um nome de domínio que corresponda à sua marca",
19
- "hasAlreadyPurchasedDomainCloseButtonLabel": "Não, obrigado, talvez mais tarde",
20
- "selectDomainDropdownPlaceholder": "Selecionar nome de domínio",
21
- "websiteFriendlyName": "Website",
22
- "digitalBusinessCardFriendlyName": "Cartão de visita digital",
23
- "alreadyHaveADomainLabel": "Já tem um domínio?",
24
- "useExistingDomainLabel": "Utilizar domínio existente"
2
+ "publishBrandPageModal" : {
3
+ "firstTimePublishHeaderLabel" : "Defina o URL para {{brandPageDisplayName}}",
4
+ "sitePublishedLabel" : "Site publicado!",
5
+ "publishSuccessLabel" : "A sua página {{brandPageDisplayName}} está ativa! Comece a utilizar o link:",
6
+ "freePublishCardTitleLabel" : "Endereço gratuito",
7
+ "freePublishCardDescriptionLabel" : "Escolha um endereço gratuito para publicar agora. Pode sempre editar o URL mais tarde",
8
+ "slugInputPlaceholderYourNameLabel" : "o-seu-nome",
9
+ "slugInputPlaceholderYourBusinessNameLabel" : "nome-da-sua-empresa",
10
+ "freeDomainLabel" : "Domínio gratuito",
11
+ "purchasedDomainLabel" : "Domínio comprado",
12
+ "setUrlLabel" : "Definir URL",
13
+ "publishLabel" : "Publicar",
14
+ "viewMoreDomainLabel" : "VER MAIS DOMÍNIOS",
15
+ "viewMyWebsiteLabel" : "Ver {{brandPageDisplayName}}",
16
+ "copyLabel" : "Copiar",
17
+ "copySuccessLabel" : "Copiado!",
18
+ "publishedSuccessDescriptionLabel" : "Compre um nome de domínio que corresponda à sua marca",
19
+ "hasAlreadyPurchasedDomainCloseButtonLabel" : "Não, obrigado, talvez mais tarde",
20
+ "selectDomainDropdownPlaceholder" : "Selecionar nome de domínio",
21
+ "websiteFriendlyName" : "Website",
22
+ "digitalBusinessCardFriendlyName" : "Cartão de visita digital"
25
23
  }
26
24
  }
@@ -46,14 +46,6 @@
46
46
  <div class="tw-mt-4">
47
47
  <slot name="recommended" />
48
48
  </div>
49
- <div class="tw-m-4 tw-text-center">
50
- <p :class="{ 'tw-text-grayscale-600': isDesignCom }">
51
- {{ alreadyHaveADomainLabel }}
52
- <a href="#" class="tw-text-primary-500 hover:tw-text-primary-600" @click.prevent="onUseExistingDomain">{{
53
- useExistingDomainLabel
54
- }}</a>
55
- </p>
56
- </div>
57
49
  </div>
58
50
  </template>
59
51
  <script>
@@ -115,7 +107,7 @@ export default {
115
107
  default: '',
116
108
  },
117
109
  },
118
- emits: ['internal-publish-brand-page', 'on-slug-changed', 'on-use-existing-domain'],
110
+ emits: ['internal-publish-brand-page', 'on-slug-changed'],
119
111
  setup() {
120
112
  return {
121
113
  publishBrandPageModalTr,
@@ -124,8 +116,6 @@ export default {
124
116
  slugInputPlaceholderYourNameLabel: publishBrandPageModalTr('slugInputPlaceholderYourNameLabel'),
125
117
  slugInputPlaceholderYourBusinessNameLabel: publishBrandPageModalTr('slugInputPlaceholderYourBusinessNameLabel'),
126
118
  publishLabel: publishBrandPageModalTr('publishLabel'),
127
- alreadyHaveADomainLabel: publishBrandPageModalTr('alreadyHaveADomainLabel'),
128
- useExistingDomainLabel: publishBrandPageModalTr('useExistingDomainLabel'),
129
119
  };
130
120
  },
131
121
  data() {
@@ -173,9 +163,6 @@ export default {
173
163
  onPublish() {
174
164
  this.$emit('internal-publish-brand-page', this.internalSlug);
175
165
  },
176
- onUseExistingDomain() {
177
- this.$emit('on-use-existing-domain');
178
- },
179
166
  },
180
167
  };
181
168
  </script>
@@ -0,0 +1,157 @@
1
+ import WebsiteContextualUpgradeModal from './WebsiteContextualUpgradeModal.vue';
2
+ import { setSharedLibLocaleAsync } from '../../../useSharedLibTranslate';
3
+
4
+ export default {
5
+ title: 'Components/WebsitesContextualUpgradeModal',
6
+ component: WebsiteContextualUpgradeModal,
7
+ };
8
+
9
+ const locale = 'en-US';
10
+
11
+ const loadTranslationAsync = async () => {
12
+ await setSharedLibLocaleAsync(locale);
13
+ };
14
+
15
+ export const UpgradeToAddPage = () => ({
16
+ components: { WebsiteContextualUpgradeModal },
17
+ data() {
18
+ return {
19
+ isUpgradeModalVisible: true,
20
+ isDesignCom: true,
21
+ upgradeUrl: 'https://brand.site/upgrade/add-page',
22
+ brandPageType: 'brandContact',
23
+ contentType: 'AddPage',
24
+ };
25
+ },
26
+ template: `
27
+ <WebsiteContextualUpgradeModal
28
+ :is-upgrade-modal-visible="isUpgradeModalVisible"
29
+ :is-design-com="isDesignCom"
30
+ :upgrade-url="upgradeUrl"
31
+ :brand-page-type="brandPageType"
32
+ :content-type="contentType"
33
+ />
34
+ `,
35
+ });
36
+
37
+ UpgradeToAddPage.loaders = [loadTranslationAsync];
38
+
39
+ export const UpgradeToContactForm = () => ({
40
+ components: { WebsiteContextualUpgradeModal },
41
+ data() {
42
+ return {
43
+ isUpgradeModalVisible: true,
44
+ isDesignCom: true,
45
+ upgradeUrl: 'https://brand.site/upgrade/contact-form',
46
+ brandPageType: 'brandContact',
47
+ contentType: 'ContactForm',
48
+ };
49
+ },
50
+ template: `
51
+ <WebsiteContextualUpgradeModal
52
+ :is-upgrade-modal-visible="isUpgradeModalVisible"
53
+ :is-design-com="isDesignCom"
54
+ :upgrade-url="upgradeUrl"
55
+ :brand-page-type="brandPageType"
56
+ :content-type="contentType"
57
+ />
58
+ `,
59
+ });
60
+
61
+ UpgradeToContactForm.loaders = [loadTranslationAsync];
62
+
63
+ export const UpgradeToMaps = () => ({
64
+ components: { WebsiteContextualUpgradeModal },
65
+ data() {
66
+ return {
67
+ isUpgradeModalVisible: true,
68
+ isDesignCom: true,
69
+ upgradeUrl: 'https://brand.site/upgrade/maps',
70
+ brandPageType: 'brandContact',
71
+ contentType: 'Maps',
72
+ };
73
+ },
74
+ template: `
75
+ <WebsiteContextualUpgradeModal
76
+ :is-upgrade-modal-visible="isUpgradeModalVisible"
77
+ :is-design-com="isDesignCom"
78
+ :upgrade-url="upgradeUrl"
79
+ :brand-page-type="brandPageType"
80
+ :content-type="contentType"
81
+ />
82
+ `,
83
+ });
84
+
85
+ UpgradeToMaps.loaders = [loadTranslationAsync];
86
+
87
+ export const UpgradeToVideos = () => ({
88
+ components: { WebsiteContextualUpgradeModal },
89
+ data() {
90
+ return {
91
+ isUpgradeModalVisible: true,
92
+ isDesignCom: true,
93
+ upgradeUrl: 'https://brand.site/upgrade/videos',
94
+ brandPageType: 'brandContact',
95
+ contentType: 'Videos',
96
+ };
97
+ },
98
+ template: `
99
+ <WebsiteContextualUpgradeModal
100
+ :is-upgrade-modal-visible="isUpgradeModalVisible"
101
+ :is-design-com="isDesignCom"
102
+ :upgrade-url="upgradeUrl"
103
+ :brand-page-type="brandPageType"
104
+ :content-type="contentType"
105
+ />
106
+ `,
107
+ });
108
+
109
+ UpgradeToVideos.loaders = [loadTranslationAsync];
110
+
111
+ export const UpgradeToRemoveWatermark = () => ({
112
+ components: { WebsiteContextualUpgradeModal },
113
+ data() {
114
+ return {
115
+ isUpgradeModalVisible: true,
116
+ isDesignCom: true,
117
+ upgradeUrl: 'https://brand.site/upgrade/remove-watermark',
118
+ brandPageType: 'brandContact',
119
+ contentType: 'RemoveWatermark',
120
+ };
121
+ },
122
+ template: `
123
+ <WebsiteContextualUpgradeModal
124
+ :is-upgrade-modal-visible="isUpgradeModalVisible"
125
+ :is-design-com="isDesignCom"
126
+ :upgrade-url="upgradeUrl"
127
+ :brand-page-type="brandPageType"
128
+ :content-type="contentType"
129
+ />
130
+ `,
131
+ });
132
+
133
+ UpgradeToRemoveWatermark.loaders = [loadTranslationAsync];
134
+
135
+ export const UpgradeToPublish = () => ({
136
+ components: { WebsiteContextualUpgradeModal },
137
+ data() {
138
+ return {
139
+ isUpgradeModalVisible: true,
140
+ isDesignCom: true,
141
+ upgradeUrl: 'https://brand.site/upgrade/publish',
142
+ brandPageType: 'brandContact',
143
+ contentType: 'Publish',
144
+ };
145
+ },
146
+ template: `
147
+ <WebsiteContextualUpgradeModal
148
+ :is-upgrade-modal-visible="isUpgradeModalVisible"
149
+ :is-design-com="isDesignCom"
150
+ :upgrade-url="upgradeUrl"
151
+ :brand-page-type="brandPageType"
152
+ :content-type="contentType"
153
+ />
154
+ `,
155
+ });
156
+
157
+ UpgradeToPublish.loaders = [loadTranslationAsync];
@@ -0,0 +1,135 @@
1
+ <template>
2
+ <Modal
3
+ :visible="props.isUpgradeModalVisible"
4
+ full-screen-breakpoint="sm"
5
+ :show-modal-background-image="!isDesignCom"
6
+ classes="tw-max-w-3xl tw-p-8"
7
+ @close-modal="closeUpgradeModal"
8
+ >
9
+ <div class="tw-flex tw-flex-col tw-text-black">
10
+ <div class="tw-flex tw-flex-col tw-pb-16 md:tw-pb-0">
11
+ <Icon
12
+ v-if="iconName"
13
+ :name="iconName"
14
+ :view-box="'0 0 100 100'"
15
+ size="5xl"
16
+ :class="{
17
+ 'tw-text-primary-500': isDesignCom,
18
+ 'tw-text-white': !isDesignCom,
19
+ }"
20
+ class="tw-mb-4"
21
+ />
22
+ <h2 v-if="titleText" class="tw-font-bold tw-text-3xl tw-mb-2">
23
+ {{ titleText }}
24
+ </h2>
25
+ <span class="tw-text-grayscale-600 tw-mb-2" v-html="descriptionText" />
26
+ <br />
27
+ <p class="tw-font-bold">{{ websiteContextualUpgradeModalTr('premiumUpgradeNote') }}</p>
28
+ <div class="tw-flex tw-flex-col md:tw-flex-row tw-mt-2">
29
+ <div
30
+ class="tw-order-last md:tw-order-first tw-w-full md:tw-w-3/4 tw-grid tw-grid-cols-1 md:tw-grid-cols-2 tw-gap-4"
31
+ >
32
+ <div v-for="(feature, i) in features" :key="i" class="tw-flex tw-items-center tw-text-sm tw-rounded-md">
33
+ <Icon class="tw-text-success-500" name="check" size="sm" />
34
+ <span class="tw-ml-2 tw-text-grayscale-600" v-html="feature" />
35
+ </div>
36
+ </div>
37
+ </div>
38
+ </div>
39
+ <div class="bottom-bar tw-mt-4 tw-bg-grayscale-200">
40
+ <div class="bottom-bar tw-mt-6 tw-flex tw-flex-col md:tw-flex-row md:tw-items-center md:tw-gap-2">
41
+ <div class="button-size md:tw-flex-1">
42
+ <Button
43
+ data-test-upgrade-button
44
+ :label="upgradeButtonText"
45
+ size="medium"
46
+ :variant="'primary'"
47
+ icon="chevron-right-wide"
48
+ :url="upgradeUrl"
49
+ classes="tw-w-full"
50
+ @on-click="onUpgradeClick"
51
+ />
52
+ </div>
53
+ <div class="md:tw-flex-1 md:tw-max-w-40 tw-mt-3 md:tw-mt-0">
54
+ <Button
55
+ data-test-upgrade-button
56
+ :label="websiteContextualUpgradeModalTr('closeButtonText')"
57
+ size="medium"
58
+ :variant="'no-border'"
59
+ :url="upgradeUrl"
60
+ classes="tw-w-full"
61
+ @on-click="closeUpgradeModal"
62
+ />
63
+ </div>
64
+ </div>
65
+ </div>
66
+ </div>
67
+ </Modal>
68
+ </template>
69
+ <script setup lang="ts">
70
+ import Modal from '../../../atoms/components/Modal/Modal.vue';
71
+ import Button from '../../../atoms/components/Button/Button.vue';
72
+ import Icon from '../../../atoms/components/Icon/Icon.vue';
73
+ import { websiteContextualUpgradeModalTr } from '../../../useSharedLibTranslate';
74
+ import { Ref, ref } from 'vue';
75
+ import unescape from 'lodash/unescape';
76
+
77
+ const titleText: Ref<string> = ref('');
78
+ const descriptionText: Ref<string> = ref('');
79
+ const iconName: Ref<string> = ref('');
80
+ const upgradeButtonText: Ref<string> = ref('');
81
+ const features: Ref<string[]> = ref([]);
82
+
83
+ const props = defineProps<{
84
+ isUpgradeModalVisible: boolean;
85
+ isDesignCom: boolean;
86
+ upgradeUrl: string;
87
+ brandPageType: string;
88
+ contentType: string | 'ContactForm' | 'Videos' | 'Maps' | 'AddPage' | 'Publish' | 'RemoveWatermark';
89
+ }>();
90
+ const toKebabCase = (value: string) =>
91
+ value
92
+ .replace(/([a-z0-9])([A-Z])/g, '$1-$2')
93
+ .replace(/([A-Z])([A-Z][a-z])/g, '$1-$2')
94
+ .toLowerCase();
95
+
96
+ const initModalContent = (websiteName: string) => {
97
+ const titleForIcon = `upgradeTo${props.contentType}`;
98
+ iconName.value = `websites-${toKebabCase(titleForIcon)}`;
99
+
100
+ titleText.value = websiteContextualUpgradeModalTr(`${titleForIcon}Title`);
101
+ descriptionText.value = websiteContextualUpgradeModalTr(`upgradeTo${props.contentType}Description`);
102
+ upgradeButtonText.value = websiteContextualUpgradeModalTr('upgradeButtonText');
103
+
104
+ features.value = [
105
+ websiteContextualUpgradeModalTr('featureCustomerCare'),
106
+ websiteContextualUpgradeModalTr('featureCustomDomain'),
107
+ websiteContextualUpgradeModalTr('featureNoWatermark', { websiteName }),
108
+ websiteContextualUpgradeModalTr('featureUnlimitedPages'),
109
+ websiteContextualUpgradeModalTr('featurePremiumContent'),
110
+ unescape(websiteContextualUpgradeModalTr('featureCancelAnytime')),
111
+ websiteContextualUpgradeModalTr('featureStore'),
112
+ ];
113
+ };
114
+
115
+ const websiteName = props.isDesignCom ? 'Design.com' : 'BrandCrowd';
116
+ initModalContent(websiteName);
117
+
118
+ const emit = defineEmits<{
119
+ 'on-close-upgrade-modal': [];
120
+ 'on-upgrade-button-clicked': [];
121
+ }>();
122
+
123
+ const closeUpgradeModal = () => {
124
+ emit('on-close-upgrade-modal');
125
+ };
126
+
127
+ const onUpgradeClick = () => {
128
+ emit('on-upgrade-button-clicked');
129
+ };
130
+ </script>
131
+ <style scoped>
132
+ .button-size {
133
+ @apply tw-w-full md:tw-max-w-40;
134
+ }
135
+ </style>
@@ -0,0 +1,26 @@
1
+ {
2
+ "websiteContextualUpgradeModal": {
3
+ "upgradeButtonText": "Upgrade Now",
4
+ "closeButtonText": "No Thanks",
5
+ "upgradeToAddPageTitle": "Upgrade to add more pages",
6
+ "upgradeToAddPageDescription": "You've reached the free page limit. Upgrade to keep building your site and access all premium features.",
7
+ "upgradeToContactFormTitle": "Upgrade to unlock contact form",
8
+ "upgradeToContactFormDescription": "Let visitors reach you directly. Upgrade to add a contact form to your site and access all premium features.",
9
+ "upgradeToMapsTitle": "Upgrade to unlock maps",
10
+ "upgradeToMapsDescription": "Help visitors find you easily. Upgrade to embed interactive maps to your site and access all premium features.",
11
+ "upgradeToVideosTitle": "Upgrade to unlock videos",
12
+ "upgradeToVideosDescription": "Bring your content to life. Upgrade to embed and play videos to your site and access all premium features.",
13
+ "upgradeToRemoveWatermarkTitle": "Upgrade to remove watermark",
14
+ "upgradeToRemoveWatermarkDescription": "Make it truly yours. Upgrade to remove our watermark from your site and access all premium features.",
15
+ "upgradeToPublishTitle": "Upgrade to publish your site",
16
+ "upgradeToPublishDescription": "Each subscription lets you publish one website. Add another subscription to publish this site and access all premium features.",
17
+ "featureCustomerCare": "24/7 customer care",
18
+ "featureCustomDomain": "Connect a custom domain",
19
+ "featureNoWatermark": "No {{websiteName}} watermark",
20
+ "featureUnlimitedPages": "Unlimited pages",
21
+ "featurePremiumContent": "Contact forms, videos and maps",
22
+ "featureStore": "Basic online store",
23
+ "featureCancelAnytime": "&lt;div class=\"tw-text-success-500\"&gt;&lt;strong&gt;Cancel anytime&lt;/strong&gt;&lt;/div&gt;",
24
+ "premiumUpgradeNote": "With Premium, you'll get:"
25
+ }
26
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "websiteContextualUpgradeModal": {
3
+ "upgradeButtonText": "Upgrade Now",
4
+ "closeButtonText": "No Thanks",
5
+ "upgradeToAddPageTitle": "Upgrade to add more pages",
6
+ "upgradeToAddPageDescription": "You've reached the free page limit. Upgrade to keep building your site and access all premium features.",
7
+ "upgradeToContactFormTitle": "Upgrade to unlock contact form",
8
+ "upgradeToContactFormDescription": "Let visitors reach you directly. Upgrade to add a contact form to your site and access all premium features.",
9
+ "upgradeToMapsTitle": "Upgrade to unlock maps",
10
+ "upgradeToMapsDescription": "Help visitors find you easily. Upgrade to embed interactive maps to your site and access all premium features.",
11
+ "upgradeToVideosTitle": "Upgrade to unlock videos",
12
+ "upgradeToVideosDescription": "Bring your content to life. Upgrade to embed and play videos to your site and access all premium features.",
13
+ "upgradeToRemoveWatermarkTitle": "Upgrade to remove watermark",
14
+ "upgradeToRemoveWatermarkDescription": "Make it truly yours. Upgrade to remove our watermark from your site and access all premium features.",
15
+ "upgradeToPublishTitle": "Upgrade to publish your site",
16
+ "upgradeToPublishDescription": "Each subscription lets you publish one website. Add another subscription to publish this site and access all premium features.",
17
+ "featureCustomerCare": "24/7 customer care",
18
+ "featureCustomDomain": "Connect a custom domain",
19
+ "featureNoWatermark": "No {{websiteName}} watermark",
20
+ "featureUnlimitedPages": "Unlimited pages",
21
+ "featurePremiumContent": "Contact forms, videos and maps",
22
+ "featureStore": "Basic online store",
23
+ "featureCancelAnytime": "&lt;div class=\"tw-text-success-500\"&gt;&lt;strong&gt;Cancel anytime&lt;/strong&gt;&lt;/div&gt;",
24
+ "premiumUpgradeNote": "With Premium, you'll get:"
25
+ }
26
+ }