@designcrowd/fe-shared-lib 1.2.28 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/css/tailwind-brandCrowd.css +6 -0
  2. package/dist/css/tailwind-brandPage.css +6 -0
  3. package/dist/css/tailwind-crazyDomains.css +6 -0
  4. package/dist/css/tailwind-designCom.css +6 -0
  5. package/dist/css/tailwind-designCrowd.css +6 -0
  6. package/package.json +1 -1
  7. package/public/css/tailwind-brandCrowd.css +2414 -0
  8. package/public/css/tailwind-brandPage.css +2098 -0
  9. package/public/css/tailwind-crazyDomains.css +2414 -0
  10. package/public/css/tailwind-designCom.css +2414 -0
  11. package/public/css/tailwind-designCrowd.css +2414 -0
  12. package/src/atoms/components/Modal/Modal.vue +6 -1
  13. package/src/atoms/components/Price/i18n/price.fr-CA.json +6 -0
  14. package/src/atoms/components/Price/i18n/price.pt-BR.json +6 -0
  15. package/src/bundles/bundled-translations.de-DE.json +1 -1
  16. package/src/bundles/bundled-translations.fr-CA.json +104 -1
  17. package/src/bundles/bundled-translations.pt-BR.json +104 -1
  18. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.fr-CA.json +10 -0
  19. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.pt-BR.json +10 -0
  20. package/src/experiences/components/PublishBrandPageModal/PublishBrandPageCard.vue +2 -2
  21. package/src/experiences/components/PublishBrandPageModal/PublishBrandPageModal.vue +36 -16
  22. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.fr-CA.json +24 -0
  23. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.pt-BR.json +24 -0
  24. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.fr-CA.json +8 -0
  25. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.pt-BR.json +8 -0
  26. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.fr-CA.json +6 -0
  27. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.pt-BR.json +6 -0
  28. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.fr-CA.json +6 -0
  29. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.pt-BR.json +6 -0
  30. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.fr-CA.json +8 -0
  31. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.pt-BR.json +8 -0
  32. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.fr-CA.json +6 -0
  33. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.pt-BR.json +6 -0
  34. package/src/experiences/components/SellDomainNameSearchWithResults/SellDomainNameSearchWithResults.vue +25 -0
  35. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.fr-CA.json +8 -0
  36. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.pt-BR.json +8 -0
  37. package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.de-DE.json +1 -1
  38. package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.fr-CA.json +34 -0
  39. package/src/experiences/components/UploadYourLogoOnBoarding/i18n/upload-your-logo.pt-BR.json +34 -0
  40. package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.fr-CA.json +8 -0
  41. package/src/experiences/components/UploadedLogoSearchResultCard/i18n/upload-logo-search-result-card.pt-BR.json +8 -0
@@ -15,7 +15,7 @@
15
15
  :class="[
16
16
  {
17
17
  'tw-w-full': !isImageMode,
18
- 'tw-p-4': !simple,
18
+ 'tw-p-4': !removeHorizontalPadding && !simple,
19
19
  'tw-max-w-md': size === 'md',
20
20
  'tw-max-w-xl': size === 'xl',
21
21
  'tw-max-w-2xl': !size && !isImageMode,
@@ -91,6 +91,11 @@ export default {
91
91
  required: false,
92
92
  default: false,
93
93
  },
94
+ removeHorizontalPadding: {
95
+ type: Boolean,
96
+ required: false,
97
+ default: false,
98
+ },
94
99
  visible: {
95
100
  type: Boolean,
96
101
  required: false,
@@ -0,0 +1,6 @@
1
+ {
2
+ "price" : {
3
+ "domainCreditUsed" : "Crédit de domaine utilisé",
4
+ "free" : "Gratuit"
5
+ }
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "price" : {
3
+ "domainCreditUsed" : "Crédito de domínio utilizado",
4
+ "free" : "Grátis"
5
+ }
6
+ }
@@ -91,7 +91,7 @@
91
91
  "maxByoFileErrorMessage": "Ihre Datei überschreitet die maximale Größe von 25 MB. Bitte wählen Sie eine kleinere Datei.",
92
92
  "genericByoErrorMessage": "Es ist ein unerwarteter Fehler aufgetreten. Bitte versuchen Sie es erneut.",
93
93
  "dropYourFileHere": "Legen Sie Ihre Datei hier ab oder",
94
- "clickToUpload": "klicken Sie hier, um eine Datei hochzuladen.",
94
+ "clickToUpload": "Klicken zum Hochladen",
95
95
  "acceptedFiles": "Wir akzeptieren PNG-, JPG-, SVG- und EPS-Dateien bis zu 25 MB.",
96
96
  "wrongUploadType": "Sie können Dateien dieses Typs nicht hochladen."
97
97
  },
@@ -1 +1,104 @@
1
- {}
1
+ {
2
+ "price": {
3
+ "domainCreditUsed": "Crédit de domaine utilisé",
4
+ "free": "Gratuit"
5
+ },
6
+ "sharedPaymentConfig": {
7
+ "onboardingIncomplete": "Inscription incomplète",
8
+ "pendingVerification": "Vérification en attente",
9
+ "connected": "Connecté",
10
+ "inactive": "Inactif",
11
+ "addPaymentProvider": "Ajouter un fournisseur de paiement",
12
+ "deletePaymentMethod": "Supprimer le mode de paiement"
13
+ },
14
+ "publishBrandPageModal": {
15
+ "firstTimePublishHeaderLabel": "Définissez l'URL pour {{brandPageDisplayName}}",
16
+ "sitePublishedLabel": "Site publié !",
17
+ "publishSuccessLabel": "Votre {{brandPageDisplayName}} est en ligne ! Commencez à utiliser votre lien :",
18
+ "freePublishCardTitleLabel": "Adresse libre",
19
+ "freePublishCardDescriptionLabel": "Choisissez une adresse gratuite pour publier maintenant. Vous pouvez toujours modifier l'URL plus tard",
20
+ "slugInputPlaceholderYourNameLabel": "your-name",
21
+ "slugInputPlaceholderYourBusinessNameLabel": "nom-de-votre-entreprise",
22
+ "freeDomainLabel": "Domaine gratuit",
23
+ "purchasedDomainLabel": "Domaine acheté",
24
+ "setUrlLabel": "Définir l'URL",
25
+ "publishLabel": "Publier",
26
+ "viewMoreDomainLabel": "VOIR PLUS DE NOMS DE DOMAINE",
27
+ "viewMyWebsiteLabel": "Voir {{brandPageDisplayName}}",
28
+ "copyLabel": "Copier",
29
+ "copySuccessLabel": "Copié !",
30
+ "publishedSuccessDescriptionLabel": "Achetez un nom de domaine correspondant à votre marque",
31
+ "hasAlreadyPurchasedDomainCloseButtonLabel": "Non merci, peut-être plus tard",
32
+ "selectDomainDropdownPlaceholder": "Sélectionner un nom de domaine",
33
+ "websiteFriendlyName": "Site Web",
34
+ "digitalBusinessCardFriendlyName": "Carte professionnelle numérique"
35
+ },
36
+ "sellDomainNameList": {
37
+ "freeDomainButtonLabel": "Domaine gratuit",
38
+ "buyNowButtonLabel": "Acheter",
39
+ "pricePerYearLabel": "/yr",
40
+ "costPriceLabel": "Prix de revient :"
41
+ },
42
+ "sellDomainNameListModal": {
43
+ "domainSearchHeaderTitle": "Rechercher un nom de domaine",
44
+ "domainSearchHeaderSubtitle": "Achetez un nom de domaine correspondant à votre marque"
45
+ },
46
+ "sellDomainNameModalApplication": {
47
+ "domainSearchHeaderTitle": "Rechercher un nom de domaine",
48
+ "domainSearchHeaderSubtitle": "Achetez un nom de domaine correspondant à votre marque"
49
+ },
50
+ "sellDomainNameSearch": {
51
+ "searchButtonLabel": "Rechercher",
52
+ "searchBarLabel": "Rechercher",
53
+ "searchBarPlaceholder": "Rechercher des noms de domaine",
54
+ "searchBarPreText": "Nom de domaine"
55
+ },
56
+ "sellDomainNameListSearchResult": {
57
+ "domainSearchEmptyMessage": "Désolé, nous n’avons pas trouvé de nom de domaine pour « {{domainNameSearchTerm}} ».",
58
+ "searchAnotherDomainMessage": "Essayez de faire une recherche avec un autre nom de domaine."
59
+ },
60
+ "sellDomainNameWidget": {
61
+ "searchButtonLabel": "Rechercher",
62
+ "searchBarLabel": "Rechercher",
63
+ "searchBarPlaceholder": "Rechercher des noms de domaine",
64
+ "domainSearchOrConnectHeaderSubtitle": "Achetez un nom de domaine correspondant à votre marque ou connectez votre domaine existant"
65
+ },
66
+ "uploadYourLogo": {
67
+ "uploadYourLogoText": "Téléchargez votre logo",
68
+ "disclaimerText": "Veuillez vous assurer que vous avez le droit d'utiliser toute image que vous téléchargez.",
69
+ "generatingDesigns": "Génération de designs...",
70
+ "uploadingAndConverting": "Téléchargement et conversion de votre logo...",
71
+ "stepOf": "Étape {{CURRENT}} sur {{TOTAL}}",
72
+ "uploadError": "Erreur de téléchargement",
73
+ "cancel": "Annuler",
74
+ "continue": "Continuer",
75
+ "back": "Retour",
76
+ "no": "Non",
77
+ "yes": "Oui",
78
+ "businessName": "Nom de l’entreprise",
79
+ "businessNameDescription": "Saisissez le texte de votre logo ou le nom de votre entreprise",
80
+ "cropYourLogo": "Recadrez votre logo",
81
+ "cropDescription": "Recadrez votre logo pour qu'il s'adapte au canevas de notre outil de création de logos",
82
+ "logoPreview": "Aperçu du logo",
83
+ "logoPreviewDescription": "Votre logo est magnifique ! Aidez-nous à configurer votre logo en suivant les étapes suivantes.",
84
+ "primaryTextColor": "Couleur principale du texte",
85
+ "primaryTextColorDescription": "Aidez-nous à configurer votre logo en confirmant la couleur principale du texte. Choisissez parmi les couleurs disponibles ou cliquez sur l'icône plus pour en ajouter une autre.",
86
+ "backgroundColor": "Couleur d’arrière-plan",
87
+ "backgroundColorDescription": "Aidez-nous à configurer votre logo en confirmant la couleur d'arrière-plan. Choisissez parmi les couleurs disponibles ou cliquez sur l'icône plus pour en ajouter une autre.",
88
+ "colorsWarning": "Les couleurs de votre texte et de votre arrière-plan sont trop semblables. Veuillez choisir une combinaison plus distincte pour garantir un design de qualité.",
89
+ "exitConfirmationTitle": "Voulez-vous vraiment quitter ?",
90
+ "exitConfirmationDescription": "La progression du téléchargement de votre logo au cours de cette session sera perdue",
91
+ "maxByoFileErrorMessage": "Votre fichier dépasse la taille maximale de 25 Mo. Veuillez choisir un fichier plus petit.",
92
+ "genericByoErrorMessage": "Une erreur inattendue s'est produite. Veuillez réessayer.",
93
+ "dropYourFileHere": "Déposez votre fichier ici ou",
94
+ "clickToUpload": "cliquez pour télécharger",
95
+ "acceptedFiles": "Nous acceptons les fichiers PNG, JPG, SVG ou EPS jusqu'à 25 Mo",
96
+ "wrongUploadType": "Vous ne pouvez pas télécharger des fichiers de ce type."
97
+ },
98
+ "uploadLogoSearchResultCard": {
99
+ "replace": "Remplacer",
100
+ "replaceLogo": "Remplacez le logo",
101
+ "delete": "Supprimer",
102
+ "deleteLogo": "Supprimez le logo"
103
+ }
104
+ }
@@ -1 +1,104 @@
1
- {}
1
+ {
2
+ "price": {
3
+ "domainCreditUsed": "Crédito de domínio utilizado",
4
+ "free": "Grátis"
5
+ },
6
+ "sharedPaymentConfig": {
7
+ "onboardingIncomplete": "Integração incompleta",
8
+ "pendingVerification": "Verificação Pendente",
9
+ "connected": "Conectado",
10
+ "inactive": "Inativo",
11
+ "addPaymentProvider": "Adicionar fornecedor de pagamentos",
12
+ "deletePaymentMethod": "Excluir método de pagamento"
13
+ },
14
+ "publishBrandPageModal": {
15
+ "firstTimePublishHeaderLabel": "Defina o URL para {{brandPageDisplayName}}",
16
+ "sitePublishedLabel": "Site publicado!",
17
+ "publishSuccessLabel": "Seu {{brandPageDisplayName}} está ativo! Comece a usar seu link:",
18
+ "freePublishCardTitleLabel": "Endereço gratuito",
19
+ "freePublishCardDescriptionLabel": "Escolha um endereço gratuito para publicar agora. Você pode editar o URL depois",
20
+ "slugInputPlaceholderYourNameLabel": "Seu nome",
21
+ "slugInputPlaceholderYourBusinessNameLabel": "nome-da-sua-empresa",
22
+ "freeDomainLabel": "Domínio gratuito",
23
+ "purchasedDomainLabel": "Domínio comprado",
24
+ "setUrlLabel": "Definir URL",
25
+ "publishLabel": "Publicar",
26
+ "viewMoreDomainLabel": "Ver mais domínios",
27
+ "viewMyWebsiteLabel": "Ver {{brandPageDisplayName}}",
28
+ "copyLabel": "Copiar",
29
+ "copySuccessLabel": "Copiado!",
30
+ "publishedSuccessDescriptionLabel": "Compre um nome de domínio que corresponda à sua marca",
31
+ "hasAlreadyPurchasedDomainCloseButtonLabel": "Não, obrigado. Talvez depois",
32
+ "selectDomainDropdownPlaceholder": "Selecionar nome de domínio",
33
+ "websiteFriendlyName": "Site",
34
+ "digitalBusinessCardFriendlyName": "Cartão de visita digital"
35
+ },
36
+ "sellDomainNameList": {
37
+ "freeDomainButtonLabel": "Domínio gratuito",
38
+ "buyNowButtonLabel": "Comprar Agora",
39
+ "pricePerYearLabel": "/yr",
40
+ "costPriceLabel": "Preço de custo:"
41
+ },
42
+ "sellDomainNameListModal": {
43
+ "domainSearchHeaderTitle": "Pesquise um nome de domínio",
44
+ "domainSearchHeaderSubtitle": "Compre um nome de domínio que corresponda à sua marca"
45
+ },
46
+ "sellDomainNameModalApplication": {
47
+ "domainSearchHeaderTitle": "Pesquisar um nome de domínio",
48
+ "domainSearchHeaderSubtitle": "Compre um nome de domínio correspondente à sua marca"
49
+ },
50
+ "sellDomainNameSearch": {
51
+ "searchButtonLabel": "Pesquisar",
52
+ "searchBarLabel": "Pesquisar",
53
+ "searchBarPlaceholder": "Pesquisar nomes de domínio",
54
+ "searchBarPreText": "Nome de domínio"
55
+ },
56
+ "sellDomainNameListSearchResult": {
57
+ "domainSearchEmptyMessage": "Não encontramos nenhum domínio com \"{{domainNameSearchTerm}}\".",
58
+ "searchAnotherDomainMessage": "Tente pesquisar outro nome de domínio."
59
+ },
60
+ "sellDomainNameWidget": {
61
+ "searchButtonLabel": "Pesquisar",
62
+ "searchBarLabel": "Pesquisar",
63
+ "searchBarPlaceholder": "Pesquisar nomes de domínio",
64
+ "domainSearchOrConnectHeaderSubtitle": "Compre um nome de domínio que corresponda à sua marca ou associe ao domínio que já tem"
65
+ },
66
+ "uploadYourLogo": {
67
+ "uploadYourLogoText": "Carregue o seu logotipo",
68
+ "disclaimerText": "Certifique-se de que você tem o direito de usar qualquer imagem que você enviar.",
69
+ "generatingDesigns": "A gerar designs…",
70
+ "uploadingAndConverting": "Carregando e convertendo o seu logotipo...",
71
+ "stepOf": "Etapa {{CURRENT}} de {{TOTAL}}",
72
+ "uploadError": "Erro no carregamento",
73
+ "cancel": "Cancelar",
74
+ "continue": "Continuar",
75
+ "back": "Voltar",
76
+ "no": "Não",
77
+ "yes": "Sim",
78
+ "businessName": "Nome da empresa",
79
+ "businessNameDescription": "Insira o texto do seu logotipo ou nome da empresa",
80
+ "cropYourLogo": "Recorte o seu logotipo",
81
+ "cropDescription": "Recorte o design do seu logotipo para caber na tela do nosso criador de logotipos",
82
+ "logoPreview": "Prévia do logotipo",
83
+ "logoPreviewDescription": "Seu logotipo está ótimo! Ajude-nos a configurar seu logotipo concluindo as próximas etapas.",
84
+ "primaryTextColor": "Cor principal do texto",
85
+ "primaryTextColorDescription": "Para criar o logotipo, confirme a cor principal do texto. Escolha uma das cores disponíveis ou clique no ícone de mais para adicionar outra.",
86
+ "backgroundColor": "Cor de fundo",
87
+ "backgroundColorDescription": "Ajude-nos a configurar seu logotipo confirmando a cor de fundo. Escolha entre as cores disponíveis ou clique no ícone de adição para adicionar outra.",
88
+ "colorsWarning": "As cores do texto e do fundo são muito parecidas. Escolha uma combinação mais distinta para garantir que eles criem designs de qualidade.",
89
+ "exitConfirmationTitle": "Tem certeza de que deseja sair?",
90
+ "exitConfirmationDescription": "O progresso do carregamento do seu logotipo nesta sessão será perdido",
91
+ "maxByoFileErrorMessage": "Seu arquivo excede o tamanho máximo de 25 MB. Escolha um arquivo menor.",
92
+ "genericByoErrorMessage": "Ocorreu um erro inesperado. Tente novamente.",
93
+ "dropYourFileHere": "Arraste o seu ficheiro aqui ou",
94
+ "clickToUpload": "clique para carregar",
95
+ "acceptedFiles": "Aceitamos arquivos PNG, JPG, SVG ou EPS de até 25 MB",
96
+ "wrongUploadType": "Você não pode baixar arquivos deste tipo."
97
+ },
98
+ "uploadLogoSearchResultCard": {
99
+ "replace": "Substituir",
100
+ "replaceLogo": "Substituir logotipo",
101
+ "delete": "Excluir",
102
+ "deleteLogo": "Excluir logotipo"
103
+ }
104
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "sharedPaymentConfig" : {
3
+ "onboardingIncomplete" : "Inscription incomplète",
4
+ "pendingVerification" : "Vérification en attente",
5
+ "connected" : "Connecté",
6
+ "inactive" : "Inactif",
7
+ "addPaymentProvider" : "Ajouter un fournisseur de paiement",
8
+ "deletePaymentMethod" : "Supprimer le mode de paiement"
9
+ }
10
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "sharedPaymentConfig" : {
3
+ "onboardingIncomplete" : "Integração incompleta",
4
+ "pendingVerification" : "Verificação Pendente",
5
+ "connected" : "Conectado",
6
+ "inactive" : "Inativo",
7
+ "addPaymentProvider" : "Adicionar fornecedor de pagamentos",
8
+ "deletePaymentMethod" : "Excluir método de pagamento"
9
+ }
10
+ }
@@ -75,8 +75,8 @@ const props = defineProps({
75
75
  default: '',
76
76
  },
77
77
  imgUrl: {
78
- type: Boolean,
79
- default: true,
78
+ type: String,
79
+ default: '',
80
80
  },
81
81
  isDesignCom: {
82
82
  type: Boolean,
@@ -1,26 +1,32 @@
1
1
  <template>
2
2
  <div class="publish-bp--container">
3
3
  <Modal
4
- classes="publish-bp--modal tw-px-2 md:tw-px-8"
4
+ classes="publish-bp--modal tw-pt-4"
5
5
  close-on-esc
6
6
  :visible="visible"
7
7
  :hide-scrollbar="false"
8
8
  :show-modal-background-image="showModalBackgroundImage"
9
9
  :content-classes="isBusy ? ['tw-overflow-y-hidden'] : []"
10
+ :remove-horizontal-padding="showUpsellRotationContainer && !isCustomDomainActive && !hasPurchasedDomains"
11
+ :class="{
12
+ 'tw-px-2 md:tw-px-8': !showUpsellRotationContainer && isCustomDomainActive && hasPurchasedDomains,
13
+ }"
10
14
  @close-modal="onCloseModal"
11
15
  >
12
16
  <template #header>
13
17
  <div v-if="isNotPublished || isSlugEditMode" class="tw-text-center tw-font-bold tw-mb-8 tw-mt-8 tw-text-4xl">
14
18
  <span>{{ firstTimePublishHeaderLabel }}</span>
15
19
  </div>
16
- <div v-if="isPublished && !isSlugEditMode" class="tw-text-center tw-font-bold tw-mb-8 tw-mt-8">
20
+ <div v-if="isPublished && !isSlugEditMode" class="tw-text-center tw-font-bold tw-mt-8 tw-mb-8">
17
21
  <p class="tw-font-bold tw-text-black tw-mb-2 tw-text-4xl">{{ sitePublishedLabel }}</p>
18
- <p v-if="hasPurchasedDomains || isCustomDomainActive" class="tw-text-grayscale-600 tw-mb-8">
19
- {{ publishSuccessLabel }}
20
- </p>
21
- <p v-else class="tw-text-grayscale-600 tw-mb-8 tw-font-normal">
22
- {{ publishedSuccessDescriptionLabel }}
23
- </p>
22
+ <div v-if="!showUpsellRotationContainer">
23
+ <p v-if="hasPurchasedDomains || isCustomDomainActive" class="tw-text-grayscale-600 tw-mb-8">
24
+ {{ publishSuccessLabel }}
25
+ </p>
26
+ <p v-else class="tw-text-grayscale-600 tw-mb-8 tw-font-normal">
27
+ {{ publishedSuccessDescriptionLabel }}
28
+ </p>
29
+ </div>
24
30
  </div>
25
31
  </template>
26
32
  <template #default>
@@ -187,7 +193,7 @@
187
193
  </div>
188
194
  </div>
189
195
  <div v-else class="tw-font-sans">
190
- <div v-if="!isCustomDomainActive && !hasPurchasedDomains" class="tw-mb-6 tw-text-left">
196
+ <div v-if="!showUpsellRotationContainer" class="tw-mb-6 tw-text-left">
191
197
  <div class="tw-mb-6">
192
198
  <SellDomainNameSearchWithResults
193
199
  :is-design-com="isDesignCom"
@@ -195,17 +201,12 @@
195
201
  :currency="userCurrency"
196
202
  :display-result-limit="4"
197
203
  :domain-search-location="sitePublishedModal"
204
+ show-view-more-button
198
205
  @on-change-search="onSearchTextChanged"
199
206
  @on-buy-now-click="onBuyNowClick"
207
+ @on-view-more="onViewMore"
200
208
  />
201
209
  </div>
202
- <Button
203
- :label="viewMoreDomainLabel"
204
- variant="no-border"
205
- size="small-medium"
206
- class="tw-text-center"
207
- @on-click="onViewMore"
208
- />
209
210
  </div>
210
211
  <div class="tw-px-4 tw-text-center" :class="{ 'lg:tw-px-20': hasPurchasedDomains }">
211
212
  <TextCopyField
@@ -230,6 +231,9 @@
230
231
  @on-click="onBrandPageUrlClick"
231
232
  />
232
233
  </div>
234
+ <div v-if="showUpsellRotationContainer" class="tw-border-t tw-border-solid tw-border-grayscale-500 tw-p-5">
235
+ <slot name="upsellContainer" />
236
+ </div>
233
237
  </div>
234
238
  </template>
235
239
  </Modal>
@@ -405,6 +409,16 @@ export default {
405
409
  required: true,
406
410
  default: '',
407
411
  },
412
+ showUpsellRotation: {
413
+ type: Boolean,
414
+ required: true,
415
+ default: false,
416
+ },
417
+ isSubsequentPublish: {
418
+ type: Boolean,
419
+ required: true,
420
+ default: false,
421
+ },
408
422
  },
409
423
  emits: [
410
424
  'close-modal',
@@ -503,6 +517,12 @@ export default {
503
517
  ? this.slugInputPlaceholderYourNameLabel
504
518
  : this.slugInputPlaceholderYourBusinessNameLabel;
505
519
  },
520
+ showUpsellRotationContainer() {
521
+ if (!this.isSubsequentPublish) {
522
+ return false;
523
+ }
524
+ return this.showUpsellRotation && !this.isCustomDomainActive && !this.hasPurchasedDomains;
525
+ },
506
526
  },
507
527
  watch: {
508
528
  brandPageSlug(slug) {
@@ -0,0 +1,24 @@
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
+ }
24
+ }
@@ -0,0 +1,24 @@
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
+ }
24
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameList" : {
3
+ "freeDomainButtonLabel" : "Domaine gratuit",
4
+ "buyNowButtonLabel" : "Acheter",
5
+ "pricePerYearLabel" : "/yr",
6
+ "costPriceLabel" : "Prix de revient :"
7
+ }
8
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameList" : {
3
+ "freeDomainButtonLabel" : "Domínio gratuito",
4
+ "buyNowButtonLabel" : "Comprar Agora",
5
+ "pricePerYearLabel" : "/yr",
6
+ "costPriceLabel" : "Preço de custo:"
7
+ }
8
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameListModal" : {
3
+ "domainSearchHeaderTitle" : "Rechercher un nom de domaine",
4
+ "domainSearchHeaderSubtitle" : "Achetez un nom de domaine correspondant à votre marque"
5
+ }
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameListModal" : {
3
+ "domainSearchHeaderTitle" : "Pesquise um nome de domínio",
4
+ "domainSearchHeaderSubtitle" : "Compre um nome de domínio que corresponda à sua marca"
5
+ }
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameModalApplication" : {
3
+ "domainSearchHeaderTitle" : "Rechercher un nom de domaine",
4
+ "domainSearchHeaderSubtitle" : "Achetez un nom de domaine correspondant à votre marque"
5
+ }
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameModalApplication" : {
3
+ "domainSearchHeaderTitle" : "Pesquisar um nome de domínio",
4
+ "domainSearchHeaderSubtitle" : "Compre um nome de domínio correspondente à sua marca"
5
+ }
6
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameSearch" : {
3
+ "searchButtonLabel" : "Rechercher",
4
+ "searchBarLabel" : "Rechercher",
5
+ "searchBarPlaceholder" : "Rechercher des noms de domaine",
6
+ "searchBarPreText" : "Nom de domaine"
7
+ }
8
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameSearch" : {
3
+ "searchButtonLabel" : "Pesquisar",
4
+ "searchBarLabel" : "Pesquisar",
5
+ "searchBarPlaceholder" : "Pesquisar nomes de domínio",
6
+ "searchBarPreText" : "Nome de domínio"
7
+ }
8
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameListSearchResult" : {
3
+ "domainSearchEmptyMessage" : "Désolé, nous n’avons pas trouvé de nom de domaine pour « {{domainNameSearchTerm}} ».",
4
+ "searchAnotherDomainMessage" : "Essayez de faire une recherche avec un autre nom de domaine."
5
+ }
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameListSearchResult" : {
3
+ "domainSearchEmptyMessage" : "Não encontramos nenhum domínio com \"{{domainNameSearchTerm}}\".",
4
+ "searchAnotherDomainMessage" : "Tente pesquisar outro nome de domínio."
5
+ }
6
+ }
@@ -22,6 +22,14 @@
22
22
  :domain-search-location="domainSearchLocation"
23
23
  @on-buy-now-click="onBuyNowClick"
24
24
  />
25
+ <Button
26
+ v-if="showViewMoreButton"
27
+ :label="viewMoreDomainLabel"
28
+ variant="no-border"
29
+ size="small-medium"
30
+ class="tw-text-center tw-pt-6"
31
+ @on-click="onViewMore"
32
+ />
25
33
  </div>
26
34
  </template>
27
35
  <script>
@@ -30,6 +38,8 @@ import SellDomainNameSearchResult from '../SellDomainNameSearchResult/SellDomain
30
38
 
31
39
  import brandCrowdApiClient from '../../clients/brand-crowd-api.client';
32
40
  import Events from '../../constants/event-constants';
41
+ import { publishBrandPageModalTr } from '../../../useSharedLibTranslate';
42
+ import Button from '../../../atoms/components/Button/Button.vue';
33
43
 
34
44
  const TEXT_CHANGED_PARAM = 'textChanged';
35
45
 
@@ -37,6 +47,7 @@ export default {
37
47
  components: {
38
48
  SellDomainNameSearch,
39
49
  SellDomainNameSearchResult,
50
+ Button,
40
51
  },
41
52
  props: {
42
53
  currency: {
@@ -101,6 +112,16 @@ export default {
101
112
  type: Number,
102
113
  default: undefined,
103
114
  },
115
+ showViewMoreButton: {
116
+ type: Boolean,
117
+ default: false,
118
+ },
119
+ },
120
+ setup() {
121
+ return {
122
+ publishBrandPageModalTr,
123
+ viewMoreDomainLabel: publishBrandPageModalTr('viewMoreDomainLabel'),
124
+ };
104
125
  },
105
126
  data: () => ({
106
127
  domainNameItems: undefined,
@@ -126,6 +147,7 @@ export default {
126
147
  methods: {
127
148
  async onSearchDomainName(args) {
128
149
  this.$emit('on-change-search', args.searchText);
150
+ this.$emit('on-domain-search');
129
151
  await this.searchDomainName(args.searchText, args.isUserTriggered);
130
152
  },
131
153
  async searchDomainName(searchText, isUserTriggered) {
@@ -184,6 +206,9 @@ export default {
184
206
  const urlParams = new URLSearchParams(window.location.search);
185
207
  return urlParams.get(TEXT_CHANGED_PARAM)?.toUpperCase() === 'TRUE' || false;
186
208
  },
209
+ onViewMore() {
210
+ this.$emit('on-view-more');
211
+ },
187
212
  },
188
213
  };
189
214
  </script>
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameWidget" : {
3
+ "searchButtonLabel" : "Rechercher",
4
+ "searchBarLabel" : "Rechercher",
5
+ "searchBarPlaceholder" : "Rechercher des noms de domaine",
6
+ "domainSearchOrConnectHeaderSubtitle" : "Achetez un nom de domaine correspondant à votre marque ou connectez votre domaine existant"
7
+ }
8
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameWidget" : {
3
+ "searchButtonLabel" : "Pesquisar",
4
+ "searchBarLabel" : "Pesquisar",
5
+ "searchBarPlaceholder" : "Pesquisar nomes de domínio",
6
+ "domainSearchOrConnectHeaderSubtitle" : "Compre um nome de domínio que corresponda à sua marca ou associe ao domínio que já tem"
7
+ }
8
+ }
@@ -27,7 +27,7 @@
27
27
  "maxByoFileErrorMessage" : "Ihre Datei überschreitet die maximale Größe von 25 MB. Bitte wählen Sie eine kleinere Datei.",
28
28
  "genericByoErrorMessage" : "Es ist ein unerwarteter Fehler aufgetreten. Bitte versuchen Sie es erneut.",
29
29
  "dropYourFileHere" : "Legen Sie Ihre Datei hier ab oder",
30
- "clickToUpload" : "klicken Sie hier, um eine Datei hochzuladen.",
30
+ "clickToUpload" : "Klicken zum Hochladen",
31
31
  "acceptedFiles" : "Wir akzeptieren PNG-, JPG-, SVG- und EPS-Dateien bis zu 25 MB.",
32
32
  "wrongUploadType" : "Sie können Dateien dieses Typs nicht hochladen."
33
33
  }