@designcrowd/fe-shared-lib 1.2.7 → 1.2.9-ali-disabled-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.
- package/CLAUDE.md +71 -0
- package/Dockerfile +1 -1
- package/package.json +2 -2
- package/public/css/tailwind-brandCrowd.css +3 -29
- package/public/css/tailwind-brandPage.css +3 -25
- package/public/css/tailwind-crazyDomains.css +3 -29
- package/public/css/tailwind-designCom.css +3 -29
- package/public/css/tailwind-designCrowd.css +3 -29
- package/src/atoms/components/ButtonGroup/ButtonGroup.stories.js +1 -0
- package/src/atoms/components/ButtonGroup/ButtonGroup.vue +24 -12
- package/src/atoms/components/CollapsiblePanel/CollapsiblePanel.mixin.js +4 -0
- package/src/atoms/components/CollapsiblePanel/CollapsiblePanel.stories.js +13 -0
- package/src/atoms/components/CollapsiblePanel/CollapsiblePanel.vue +5 -2
- package/src/bundles/bundled-translations.de-DE.json +2 -2
- package/src/bundles/bundled-translations.es-ES.json +1 -1
- package/src/bundles/bundled-translations.fr-FR.json +3 -3
- package/src/bundles/bundled-translations.pt-PT.json +1 -1
- package/src/experiences/components/AuthFlow/ForgotPassword.vue +21 -9
- package/src/experiences/components/AuthFlow/ResetPassword.vue +37 -8
- package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.de-DE.json +20 -20
- package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.es-ES.json +20 -20
- package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.fr-FR.json +20 -20
- package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.pt-PT.json +20 -20
- package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.de-DE.json +6 -6
- package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.es-ES.json +6 -6
- package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.fr-FR.json +6 -6
- package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.pt-PT.json +6 -6
- package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.de-DE.json +4 -4
- package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.es-ES.json +4 -4
- package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.fr-FR.json +4 -4
- package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.pt-PT.json +4 -4
- package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.de-DE.json +4 -4
- package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.es-ES.json +4 -4
- package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.fr-FR.json +4 -4
- package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.pt-PT.json +4 -4
- package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.de-DE.json +6 -6
- package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.es-ES.json +6 -6
- package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.fr-FR.json +6 -6
- package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.pt-PT.json +6 -6
- package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.de-DE.json +4 -4
- package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.es-ES.json +4 -4
- package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.fr-FR.json +4 -4
- package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.pt-PT.json +4 -4
- package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.de-DE.json +6 -6
- package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.es-ES.json +6 -6
- package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.fr-FR.json +6 -6
- package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.pt-PT.json +6 -6
- package/src/useSharedLibTranslate.js +6 -0
- package/.storybook-static/assets/Auth-CV5AmoX8.css +0 -1
- package/.storybook-static/assets/Auth.stories-CX3sjxh5.js +0 -490
- package/.storybook-static/assets/AuthCrazyDomains.stories-Didj_VFa.js +0 -73
- package/.storybook-static/assets/Button-5UzSGUF6.css +0 -1
- package/.storybook-static/assets/Button-DtVlr_q3.js +0 -1
- package/.storybook-static/assets/ButtonGroup-Dfr7bNL2.css +0 -1
- package/.storybook-static/assets/ButtonGroup.stories-4EQk-ktb.js +0 -503
- package/.storybook-static/assets/ButtonPrimary-Bu6bXb_c.css +0 -1
- package/.storybook-static/assets/ButtonPrimary-DG9wNod9.js +0 -1
- package/.storybook-static/assets/Buttons.stories-B_KpeCzt.js +0 -761
- package/.storybook-static/assets/ButtonsCrazyDomains.stories-oZtahAmR.js +0 -199
- package/.storybook-static/assets/Checkbox.mixin-DkHpdvGa.js +0 -1
- package/.storybook-static/assets/Checkbox.stories-C67RL0ut.js +0 -203
- package/.storybook-static/assets/Checktile.stories-DN2wfzd6.js +0 -88
- package/.storybook-static/assets/CollapsiblePanel.stories-BkzrqfVG.js +0 -39
- package/.storybook-static/assets/ColorPicker.stories-85BQwpyF.js +0 -73
- package/.storybook-static/assets/CopyToClipboardText.stories-Csh5nVRs.js +0 -32
- package/.storybook-static/assets/Dropdown.stories-NNlxNopk.js +0 -159
- package/.storybook-static/assets/DropdownItem-CDX_V6Mi.js +0 -1
- package/.storybook-static/assets/DropdownItem-CLNmWtKh.css +0 -1
- package/.storybook-static/assets/FormControl.mixin-_gXRExB7.js +0 -1
- package/.storybook-static/assets/HashRouteModal.stories-Dy1_nLTJ.js +0 -64
- package/.storybook-static/assets/HelloBar-z54fob0q.js +0 -1
- package/.storybook-static/assets/HelloBar.stories-ClJ9_KRK.js +0 -342
- package/.storybook-static/assets/Icon-8mZGP41G.js +0 -144
- package/.storybook-static/assets/Icon.stories-BcXMvpuh.js +0 -126
- package/.storybook-static/assets/Icon.stories-D6ECVMta.js +0 -751
- package/.storybook-static/assets/Loader-D61Ki9P1.js +0 -1
- package/.storybook-static/assets/LogoBusinessBrandColours-B1_8hw0H.js +0 -1
- package/.storybook-static/assets/LogoBusinessBrandColours-DEFhAyxR.css +0 -1
- package/.storybook-static/assets/LogoBusinessBrandColours.stories-CIWe9ndn.js +0 -36
- package/.storybook-static/assets/Masonry-C2MNiGg0.css +0 -1
- package/.storybook-static/assets/Masonry.stories-CDT8kZCv.js +0 -71
- package/.storybook-static/assets/Modal-BQrpXSGA.js +0 -1
- package/.storybook-static/assets/Modal-BvVMN71n.css +0 -1
- package/.storybook-static/assets/Modal.stories-BycF7YL6.js +0 -345
- package/.storybook-static/assets/Notice.stories-BufkrC1b.js +0 -222
- package/.storybook-static/assets/NumberStepper-Blffv09R.css +0 -1
- package/.storybook-static/assets/NumberStepper.stories-6_y_lEgC.js +0 -64
- package/.storybook-static/assets/PaymentConfigList-wI1eTv5x.css +0 -1
- package/.storybook-static/assets/PaymentConfigList.stories-BlzzKrzz.js +0 -126
- package/.storybook-static/assets/Picture-Cq76CaoK.js +0 -1
- package/.storybook-static/assets/Picture.stories-BDqRm9_g.js +0 -119
- package/.storybook-static/assets/Pill-BsMeJhV9.js +0 -1
- package/.storybook-static/assets/Pill.stories-DUvzbtnS.js +0 -18
- package/.storybook-static/assets/PillBar-os4mJV3M.css +0 -1
- package/.storybook-static/assets/PillBar.stories-BUMLXBij.js +0 -41
- package/.storybook-static/assets/Price-DKOwLeD0.js +0 -1
- package/.storybook-static/assets/Price.stories-DlqrNUWI.js +0 -221
- package/.storybook-static/assets/PublishBrandPageModal-CLU8-If3.css +0 -1
- package/.storybook-static/assets/PublishBrandPageModal.stories-Dqobvq-n.js +0 -273
- package/.storybook-static/assets/SearchBar.stories-_wPX3-Rl.js +0 -12
- package/.storybook-static/assets/Select-Dw-zvSUg.css +0 -1
- package/.storybook-static/assets/Select.stories-BWINGxdY.js +0 -108
- package/.storybook-static/assets/SellDomainNameList.fixtures-LC6fjr_b.js +0 -1
- package/.storybook-static/assets/SellDomainNameListModal-ByK_ak0A.js +0 -1
- package/.storybook-static/assets/SellDomainNameListModal-CdfyEX1a.css +0 -1
- package/.storybook-static/assets/SellDomainNameListModal.stories-DrL8w2AY.js +0 -71
- package/.storybook-static/assets/SellDomainNameListSearchResult-1WuAKfzI.css +0 -1
- package/.storybook-static/assets/SellDomainNameListSearchResult-By0IpIM_.js +0 -1
- package/.storybook-static/assets/SellDomainNameSearchWithResults-BttjI4PH.js +0 -1
- package/.storybook-static/assets/SellDomainNameSearchWithResults.stories-Dm1Q8Cza.js +0 -37
- package/.storybook-static/assets/SellDomainNameWidget.stories-CKoz3WnZ.js +0 -36
- package/.storybook-static/assets/SignIn-DNYeJu86.css +0 -1
- package/.storybook-static/assets/SignIn-Dt8OJr0J.js +0 -1
- package/.storybook-static/assets/Slider-Cog2FFdj.css +0 -1
- package/.storybook-static/assets/Slider.stories-08DN2SFB.js +0 -141
- package/.storybook-static/assets/StarRating-BtKh7pzm.css +0 -1
- package/.storybook-static/assets/StarRating.stories-BEIj9ufA.js +0 -45
- package/.storybook-static/assets/TabMenu.stories-D9f0pyZI.js +0 -47
- package/.storybook-static/assets/TextCopyField-B04vTGbG.js +0 -1
- package/.storybook-static/assets/TextCopyField.stories-KD0WUWzA.js +0 -47
- package/.storybook-static/assets/TextInput-JK1M0hv6.js +0 -1
- package/.storybook-static/assets/TextInput.stories-BO0eQqBY.js +0 -233
- package/.storybook-static/assets/Textarea.stories-Bcn4sCkV.js +0 -207
- package/.storybook-static/assets/Toggle.stories-CuTFLoNh.js +0 -161
- package/.storybook-static/assets/Tooltip-DcSbUh5f.js +0 -1
- package/.storybook-static/assets/Tooltip-DyXIgFQH.css +0 -1
- package/.storybook-static/assets/Tooltip.stories-B0I_PBGG.js +0 -953
- package/.storybook-static/assets/UploadYourLogoApplication-EyTEQx-x.css +0 -9
- package/.storybook-static/assets/UploadYourLogoApplication.stories-Dixp1ynI.js +0 -194
- package/.storybook-static/assets/UploadYourLogoDropzone-DQqACf-e.css +0 -1
- package/.storybook-static/assets/UploadYourLogoDropzone-DouZtNvi.js +0 -24
- package/.storybook-static/assets/UploadYourLogoDropzone.stories-BHYeu4gz.js +0 -55
- package/.storybook-static/assets/UploadedLogoSearchResultCard.stories-D1KR63O4.js +0 -79
- package/.storybook-static/assets/_commonjsHelpers-D6-XlEtG.js +0 -1
- package/.storybook-static/assets/_plugin-vue_export-helper-DlAUqK2U.js +0 -1
- package/.storybook-static/assets/api-lSJGRrF2.js +0 -1
- package/.storybook-static/assets/axe-nGVJxRof.js +0 -30
- package/.storybook-static/assets/brand-crowd-api.client-DiPM1Wo-.js +0 -1
- package/.storybook-static/assets/bundled-translations-BZ57czTo.js +0 -1
- package/.storybook-static/assets/bundled-translations.de-DE-DXggTXB2.js +0 -1
- package/.storybook-static/assets/bundled-translations.es-ES-DtMmvicd.js +0 -1
- package/.storybook-static/assets/bundled-translations.fr-FR-BrQqbieG.js +0 -1
- package/.storybook-static/assets/bundled-translations.pt-PT-CpiWEAtr.js +0 -1
- package/.storybook-static/assets/carousel-CMMZ5MZ-.css +0 -1
- package/.storybook-static/assets/carousel.stories-o3eu2Qyc.js +0 -374
- package/.storybook-static/assets/event-constants-CMO9VQVu.js +0 -1
- package/.storybook-static/assets/iframe-C86bI_2U.js +0 -1126
- package/.storybook-static/assets/index-Bw-gCGc_.js +0 -6
- package/.storybook-static/assets/index-DhkYCT1V.js +0 -29
- package/.storybook-static/assets/matchers-7Z3WT2CE-T3xScrR7.js +0 -14
- package/.storybook-static/assets/tracking-ATsLLehC.js +0 -1
- package/.storybook-static/css/tailwind-brandCrowd.css +0 -2404
- package/.storybook-static/css/tailwind-brandPage.css +0 -2088
- package/.storybook-static/css/tailwind-crazyDomains.css +0 -2404
- package/.storybook-static/css/tailwind-designCom.css +0 -2404
- package/.storybook-static/css/tailwind-designCrowd.css +0 -2404
- package/.storybook-static/favicon.svg +0 -1
- package/.storybook-static/iframe.html +0 -694
- package/.storybook-static/index.html +0 -156
- package/.storybook-static/index.json +0 -1
- 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 +0 -1
- package/.storybook-static/sb-addons/a11y-1/manager-bundle.js +0 -5
- package/.storybook-static/sb-addons/links-2/manager-bundle.js +0 -3
- package/.storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +0 -188
- package/.storybook-static/sb-addons/themes-3/manager-bundle.js +0 -3
- package/.storybook-static/sb-common-assets/favicon.svg +0 -1
- 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-module-info.js +0 -797
- package/.storybook-static/sb-manager/globals-runtime.js +0 -72062
- package/.storybook-static/sb-manager/globals.js +0 -34
- package/.storybook-static/sb-manager/runtime.js +0 -13002
- package/dist/css/tailwind-brandCrowd.css +0 -2419
- package/dist/css/tailwind-brandPage.css +0 -2107
- package/dist/css/tailwind-crazyDomains.css +0 -2419
- package/dist/css/tailwind-designCom.css +0 -2419
- package/dist/css/tailwind-designCrowd.css +0 -2419
|
@@ -36,10 +36,11 @@
|
|
|
36
36
|
{{ title }}
|
|
37
37
|
</h2>
|
|
38
38
|
<p class="tw-mb-8 tw-text-grayscale-600">{{ modalDescription }}</p>
|
|
39
|
-
<form id="forgotPassword" ref="forgotPasswordForm" method="post" @submit="validate">
|
|
39
|
+
<form id="forgotPassword" ref="forgotPasswordForm" method="post" novalidate @submit="validate">
|
|
40
40
|
<input type="hidden" name="__RequestVerificationToken" :value="antiForgeryToken" />
|
|
41
41
|
<label for="email" class="tw-sr-only"> {{ emailLabel }} </label>
|
|
42
42
|
<input
|
|
43
|
+
ref="emailInput"
|
|
43
44
|
v-model="aEmail"
|
|
44
45
|
name="email"
|
|
45
46
|
:class="{ 'tw-border-error-500': !!emailError }"
|
|
@@ -72,6 +73,7 @@
|
|
|
72
73
|
</div>
|
|
73
74
|
</template>
|
|
74
75
|
<script>
|
|
76
|
+
import { getCurrentLocale } from '../../../useSharedLibTranslate';
|
|
75
77
|
import HelloBar from '../../../../src/atoms/components/HelloBar/HelloBar.vue';
|
|
76
78
|
import SubmissionButton from './SubmissionButton.vue';
|
|
77
79
|
|
|
@@ -136,11 +138,15 @@ export default {
|
|
|
136
138
|
goBackToLoginLabel: this.forgotPasswordContent?.goBackToLoginLabel ?? 'Go back to login',
|
|
137
139
|
emailAddressPlaceholderLabel: this.forgotPasswordContent?.emailAddressPlaceholderLabel ?? 'Email address',
|
|
138
140
|
emailLabel: this.forgotPasswordContent?.emailLabel ?? 'Email',
|
|
141
|
+
emailErrorMessage: this.forgotPasswordContent?.emailErrorMessage ?? 'Please enter a valid email address',
|
|
139
142
|
modalDescription: this.forgotPasswordContent?.description ?? 'Enter your email below. We will then send a reset-password link to your email address.',
|
|
140
143
|
title: this.forgotPasswordContent?.title ?? 'Forgot your password?',
|
|
141
144
|
};
|
|
142
145
|
},
|
|
143
146
|
computed: {
|
|
147
|
+
currentLocale() {
|
|
148
|
+
return getCurrentLocale();
|
|
149
|
+
},
|
|
144
150
|
getRedirectToSignInUrl() {
|
|
145
151
|
const url = new URL(`https://${window.location.host}${this.signInUrl}`);
|
|
146
152
|
if (this.aEmail) {
|
|
@@ -170,21 +176,27 @@ export default {
|
|
|
170
176
|
},
|
|
171
177
|
validate(e) {
|
|
172
178
|
if (this.submitAction) {
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
this.isLoading = true;
|
|
177
|
-
return true;
|
|
179
|
+
const url = new URL(this.submitAction, window.location.origin);
|
|
180
|
+
url.searchParams.set('locale', this.currentLocale);
|
|
181
|
+
this.$refs.forgotPasswordForm.action = url.toString();
|
|
178
182
|
}
|
|
179
183
|
|
|
180
|
-
this.isLoading = false;
|
|
181
|
-
|
|
182
184
|
this.emailError = undefined;
|
|
183
185
|
|
|
184
186
|
if (!this.aEmail) {
|
|
185
|
-
this.
|
|
187
|
+
this.isLoading = false;
|
|
188
|
+
this.emailError = this.emailErrorMessage;
|
|
189
|
+
e.preventDefault();
|
|
190
|
+
return false;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
if (this.$refs.emailInput.checkValidity()) {
|
|
194
|
+
this.isLoading = true;
|
|
195
|
+
return true;
|
|
186
196
|
}
|
|
187
197
|
|
|
198
|
+
this.isLoading = false;
|
|
199
|
+
this.emailError = this.emailErrorMessage;
|
|
188
200
|
e.preventDefault();
|
|
189
201
|
return false;
|
|
190
202
|
},
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
{{ title }}
|
|
14
14
|
</h2>
|
|
15
15
|
<p class="tw-mb-8 tw-text-grayscale-600">{{ description }}</p>
|
|
16
|
-
<form id="resetPassword" method="post" @submit="validate">
|
|
16
|
+
<form id="resetPassword" ref="resetPasswordForm" method="post" @submit="validate">
|
|
17
17
|
<input name="__RequestVerificationToken" type="hidden" :value="antiForgeryToken" />
|
|
18
18
|
<input name="userName" type="hidden" :value="userName" />
|
|
19
19
|
<input name="resetPasswordToken" type="hidden" :value="resetPasswordToken" />
|
|
@@ -25,14 +25,14 @@
|
|
|
25
25
|
aria-required="true"
|
|
26
26
|
:aria-invalid="!!passwordError"
|
|
27
27
|
autocomplete="new-password"
|
|
28
|
-
placeholder="
|
|
28
|
+
:placeholder="newPasswordPlaceholder"
|
|
29
29
|
class="password-input tw-mb-3 tw-h-12 tw-bg-no-repeat tw-w-full tw-rounded tw-shadow-inner tw-outline-none tw-py-4 tw-pl-10-important tw-pr-2 tw-text-grayscale-600 tw-border tw-border-grayscale-500 focus:tw-border-grayscale-700"
|
|
30
30
|
:class="{ 'tw-border-error-500': !!passwordError }"
|
|
31
31
|
/>
|
|
32
32
|
<p v-if="!!passwordError" class="tw-text-error-500 tw-text-sm tw-text-left tw-mb-4">
|
|
33
33
|
{{ passwordError }}
|
|
34
34
|
</p>
|
|
35
|
-
<label for="confirmPassword" class="tw-sr-only">
|
|
35
|
+
<label for="confirmPassword" class="tw-sr-only">{{ confirmPasswordLabel }}</label>
|
|
36
36
|
<input
|
|
37
37
|
v-model="confirmPassword"
|
|
38
38
|
name="confirmPassword"
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
aria-required="true"
|
|
41
41
|
:aria-invalid="!!confirmPasswordError"
|
|
42
42
|
autocomplete="off"
|
|
43
|
-
placeholder="
|
|
43
|
+
:placeholder="confirmPasswordPlaceholder"
|
|
44
44
|
class="password-input tw-mb-3 tw-h-12 tw-bg-no-repeat tw-w-full tw-rounded tw-shadow-inner tw-outline-none tw-py-4 tw-pl-10-important tw-pr-2 tw-text-grayscale-600 tw-border tw-border-grayscale-500 focus:tw-border-grayscale-700"
|
|
45
45
|
:class="{ 'tw-border-error-500': !!confirmPasswordError }"
|
|
46
46
|
/>
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
<SubmissionButton
|
|
51
51
|
variant="primary"
|
|
52
52
|
size="medium"
|
|
53
|
-
label="
|
|
53
|
+
:label="updatePasswordLabel"
|
|
54
54
|
label-size="larger"
|
|
55
55
|
:is-loading="isLoading"
|
|
56
56
|
:disabled="isLoading"
|
|
@@ -63,6 +63,7 @@
|
|
|
63
63
|
</div>
|
|
64
64
|
</template>
|
|
65
65
|
<script>
|
|
66
|
+
import { getCurrentLocale } from '../../../useSharedLibTranslate';
|
|
66
67
|
import HelloBar from '../../../../src/atoms/components/HelloBar/HelloBar.vue';
|
|
67
68
|
import SubmissionButton from './SubmissionButton.vue';
|
|
68
69
|
|
|
@@ -80,7 +81,7 @@ export default {
|
|
|
80
81
|
description: {
|
|
81
82
|
type: String,
|
|
82
83
|
required: false,
|
|
83
|
-
default:
|
|
84
|
+
default: undefined,
|
|
84
85
|
},
|
|
85
86
|
userName: {
|
|
86
87
|
type: String,
|
|
@@ -104,6 +105,16 @@ export default {
|
|
|
104
105
|
required: false,
|
|
105
106
|
default: undefined,
|
|
106
107
|
},
|
|
108
|
+
submitAction: {
|
|
109
|
+
type: String,
|
|
110
|
+
required: false,
|
|
111
|
+
default: undefined,
|
|
112
|
+
},
|
|
113
|
+
resetPasswordContent: {
|
|
114
|
+
type: Object,
|
|
115
|
+
required: false,
|
|
116
|
+
default: () => {},
|
|
117
|
+
},
|
|
107
118
|
},
|
|
108
119
|
data() {
|
|
109
120
|
return {
|
|
@@ -112,10 +123,28 @@ export default {
|
|
|
112
123
|
confirmPassword: undefined,
|
|
113
124
|
passwordError: undefined,
|
|
114
125
|
confirmPasswordError: undefined,
|
|
126
|
+
|
|
127
|
+
newPasswordLabel: this.resetPasswordContent?.newPasswordLabel ?? 'New Password',
|
|
128
|
+
newPasswordPlaceholder: this.resetPasswordContent?.newPasswordPlaceholder ?? 'New password',
|
|
129
|
+
confirmPasswordLabel: this.resetPasswordContent?.confirmPasswordLabel ?? 'Confirm Password',
|
|
130
|
+
confirmPasswordPlaceholder: this.resetPasswordContent?.confirmPasswordPlaceholder ?? 'Confirm new password',
|
|
131
|
+
updatePasswordLabel: this.resetPasswordContent?.updatePasswordLabel ?? 'UPDATE PASSWORD',
|
|
132
|
+
passwordRequiredError: this.resetPasswordContent?.passwordRequiredError ?? 'Please enter a password',
|
|
133
|
+
passwordsDoNotMatchError: this.resetPasswordContent?.passwordsDoNotMatchError ?? 'Passwords do not match',
|
|
115
134
|
};
|
|
116
135
|
},
|
|
136
|
+
computed: {
|
|
137
|
+
currentLocale() {
|
|
138
|
+
return getCurrentLocale();
|
|
139
|
+
},
|
|
140
|
+
},
|
|
117
141
|
methods: {
|
|
118
142
|
validate(e) {
|
|
143
|
+
if (this.submitAction) {
|
|
144
|
+
const url = new URL(this.submitAction, window.location.origin);
|
|
145
|
+
url.searchParams.set('locale', this.currentLocale);
|
|
146
|
+
this.$refs.resetPasswordForm.action = url.toString();
|
|
147
|
+
}
|
|
119
148
|
if (this.password && this.password === this.confirmPassword) {
|
|
120
149
|
this.isLoading = true;
|
|
121
150
|
return true;
|
|
@@ -127,9 +156,9 @@ export default {
|
|
|
127
156
|
this.confirmPasswordError = undefined;
|
|
128
157
|
|
|
129
158
|
if (!this.password) {
|
|
130
|
-
this.passwordError =
|
|
159
|
+
this.passwordError = this.passwordRequiredError;
|
|
131
160
|
} else if (!this.confirmPassword || this.password !== this.confirmPassword) {
|
|
132
|
-
this.confirmPasswordError =
|
|
161
|
+
this.confirmPasswordError = this.passwordsDoNotMatchError;
|
|
133
162
|
}
|
|
134
163
|
|
|
135
164
|
e.preventDefault();
|
package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.de-DE.json
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
2
|
+
"publishBrandPageModal" : {
|
|
3
|
+
"firstTimePublishHeaderLabel" : "Legen Sie die URL für {{brandPageDisplayName}} fest",
|
|
4
|
+
"sitePublishedLabel" : "Seite veröffentlicht!",
|
|
5
|
+
"publishSuccessLabel" : "Ihr {{brandPageDisplayName}} ist live! Beginnen Sie mit der Nutzung Ihres Links:",
|
|
6
|
+
"freePublishCardTitleLabel" : "Freie Adresse",
|
|
7
|
+
"freePublishCardDescriptionLabel" : "Wählen Sie jetzt eine kostenlose Adresse zur Veröffentlichung aus. Sie können die URL später jederzeit bearbeiten",
|
|
8
|
+
"slugInputPlaceholderYourNameLabel" : "ihr-name",
|
|
9
|
+
"slugInputPlaceholderYourBusinessNameLabel" : "ihr-firmen-name",
|
|
10
|
+
"freeDomainLabel" : "Kostenlose Domain",
|
|
11
|
+
"purchasedDomainLabel" : "Erworbene Domain",
|
|
12
|
+
"setUrlLabel" : "URL festlegen",
|
|
13
|
+
"publishLabel" : "Veröffentlichen",
|
|
14
|
+
"viewMoreDomainLabel" : "WEITERE DOMAINS ANZEIGEN",
|
|
15
|
+
"viewMyWebsiteLabel" : "{{brandPageDisplayName}} anzeigen",
|
|
16
|
+
"copyLabel" : "Kopieren",
|
|
17
|
+
"copySuccessLabel" : "Kopiert!",
|
|
18
|
+
"publishedSuccessDescriptionLabel" : "Kaufen Sie eine passende Domain für Ihre Marke",
|
|
19
|
+
"hasAlreadyPurchasedDomainCloseButtonLabel" : "Nein, danke, vielleicht später",
|
|
20
|
+
"selectDomainDropdownPlaceholder" : "Domain auswählen"
|
|
21
|
+
}
|
|
22
22
|
}
|
package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.es-ES.json
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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
|
+
}
|
|
22
22
|
}
|
package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.fr-FR.json
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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
|
+
}
|
|
22
22
|
}
|
package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.pt-PT.json
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
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
|
+
}
|
|
22
22
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
"sellDomainNameList" : {
|
|
3
|
+
"freeDomainButtonLabel" : "Kostenlose Domain",
|
|
4
|
+
"buyNowButtonLabel" : "Jetzt kaufen",
|
|
5
|
+
"pricePerYearLabel" : "/yr",
|
|
6
|
+
"costPriceLabel" : "Kostenpreis:"
|
|
7
|
+
}
|
|
8
8
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
"sellDomainNameList" : {
|
|
3
|
+
"freeDomainButtonLabel" : "Dominio gratis",
|
|
4
|
+
"buyNowButtonLabel" : "Comprar ahora",
|
|
5
|
+
"pricePerYearLabel" : "/yr",
|
|
6
|
+
"costPriceLabel" : "Precio de coste:"
|
|
7
|
+
}
|
|
8
8
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
"sellDomainNameList" : {
|
|
3
|
+
"freeDomainButtonLabel" : "Domaine gratuit",
|
|
4
|
+
"buyNowButtonLabel" : "Acheter",
|
|
5
|
+
"pricePerYearLabel" : "/yr",
|
|
6
|
+
"costPriceLabel" : "Prix de revient :"
|
|
7
|
+
}
|
|
8
8
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
"sellDomainNameList" : {
|
|
3
|
+
"freeDomainButtonLabel" : "Domínio gratuito",
|
|
4
|
+
"buyNowButtonLabel" : "Comprar Agora",
|
|
5
|
+
"pricePerYearLabel" : "/yr",
|
|
6
|
+
"costPriceLabel" : "Preço de Custo:"
|
|
7
|
+
}
|
|
8
8
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"sellDomainNameListModal" : {
|
|
3
|
+
"domainSearchHeaderTitle" : "Domainname suchen",
|
|
4
|
+
"domainSearchHeaderSubtitle" : "Kaufen Sie eine passende Domain für Ihre Marke"
|
|
5
|
+
}
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"sellDomainNameListModal" : {
|
|
3
|
+
"domainSearchHeaderTitle" : "Busca un nombre de dominio",
|
|
4
|
+
"domainSearchHeaderSubtitle" : "Compra un nombre de dominio que coincida con tu marca"
|
|
5
|
+
}
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"sellDomainNameListModal" : {
|
|
3
|
+
"domainSearchHeaderTitle" : "Rechercher un nom de domaine",
|
|
4
|
+
"domainSearchHeaderSubtitle" : "Achetez un nom de domaine correspondant à votre marque"
|
|
5
|
+
}
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"sellDomainNameListModal" : {
|
|
3
|
+
"domainSearchHeaderTitle" : "Pesquisar um nome de domínio",
|
|
4
|
+
"domainSearchHeaderSubtitle" : "Compre um nome de domínio que corresponda à sua marca"
|
|
5
|
+
}
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"sellDomainNameModalApplication" : {
|
|
3
|
+
"domainSearchHeaderTitle" : "Domainname suchen",
|
|
4
|
+
"domainSearchHeaderSubtitle" : "Kaufen Sie eine passende Domain für Ihre Marke"
|
|
5
|
+
}
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"sellDomainNameModalApplication" : {
|
|
3
|
+
"domainSearchHeaderTitle" : "Busca un nombre de dominio",
|
|
4
|
+
"domainSearchHeaderSubtitle" : "Compra un nombre de dominio que coincida con tu marca"
|
|
5
|
+
}
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"sellDomainNameModalApplication" : {
|
|
3
|
+
"domainSearchHeaderTitle" : "Rechercher un nom de domaine",
|
|
4
|
+
"domainSearchHeaderSubtitle" : "Achetez un nom de domaine correspondant à votre marque"
|
|
5
|
+
}
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"sellDomainNameModalApplication" : {
|
|
3
|
+
"domainSearchHeaderTitle" : "Pesquisar um nome de domínio",
|
|
4
|
+
"domainSearchHeaderSubtitle" : "Compre um nome de domínio que corresponda à sua marca"
|
|
5
|
+
}
|
|
6
6
|
}
|
package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.de-DE.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
"sellDomainNameSearch" : {
|
|
3
|
+
"searchButtonLabel" : "Suche",
|
|
4
|
+
"searchBarLabel" : "Suche",
|
|
5
|
+
"searchBarPlaceholder" : "Domainnamen suchen",
|
|
6
|
+
"searchBarPreText" : "Domainname"
|
|
7
|
+
}
|
|
8
8
|
}
|
package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.es-ES.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
"sellDomainNameSearch" : {
|
|
3
|
+
"searchButtonLabel" : "Buscar",
|
|
4
|
+
"searchBarLabel" : "Buscar",
|
|
5
|
+
"searchBarPlaceholder" : "Busca nombres de dominio",
|
|
6
|
+
"searchBarPreText" : "Nombre de dominio"
|
|
7
|
+
}
|
|
8
8
|
}
|
package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.fr-FR.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
"sellDomainNameSearch" : {
|
|
3
|
+
"searchButtonLabel" : "Rechercher",
|
|
4
|
+
"searchBarLabel" : "Rechercher",
|
|
5
|
+
"searchBarPlaceholder" : "Rechercher des noms de domaine",
|
|
6
|
+
"searchBarPreText" : "Nom de domaine"
|
|
7
|
+
}
|
|
8
8
|
}
|
package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.pt-PT.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
"sellDomainNameSearch" : {
|
|
3
|
+
"searchButtonLabel" : "Pesquisar",
|
|
4
|
+
"searchBarLabel" : "Pesquisar",
|
|
5
|
+
"searchBarPlaceholder" : "Pesquisar nomes de domínio",
|
|
6
|
+
"searchBarPreText" : "Nome de domínio"
|
|
7
|
+
}
|
|
8
8
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"sellDomainNameListSearchResult" : {
|
|
3
|
+
"domainSearchEmptyMessage" : "Leider konnten wir keine Domain für „{{domainNameSearchTerm}}“ finden.",
|
|
4
|
+
"searchAnotherDomainMessage" : "Versuchen Sie, mit einer anderen Domain zu suchen."
|
|
5
|
+
}
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
"sellDomainNameListSearchResult" : {
|
|
3
|
+
"domainSearchEmptyMessage" : "Lo siento, no hemos podido encontrar ningún dominio para \"{{domainNameSearchTerm}}\".",
|
|
4
|
+
"searchAnotherDomainMessage" : "Prueba a buscar con otro nombre de dominio."
|
|
5
|
+
}
|
|
6
6
|
}
|