@designcrowd/fe-shared-lib 1.2.6 → 1.2.7-ml-291-6

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 (72) hide show
  1. package/.github/workflows/auto-merge.yml +52 -0
  2. package/CLAUDE.md +71 -0
  3. package/Dockerfile +1 -1
  4. package/dist/css/tailwind-brandCrowd.css +2485 -0
  5. package/dist/css/tailwind-brandPage.css +2169 -0
  6. package/dist/css/tailwind-crazyDomains.css +2485 -0
  7. package/dist/css/tailwind-designCom.css +2485 -0
  8. package/dist/css/tailwind-designCrowd.css +2485 -0
  9. package/package.json +2 -2
  10. package/public/css/tailwind-brandCrowd.css +26 -0
  11. package/public/css/tailwind-brandPage.css +22 -0
  12. package/public/css/tailwind-crazyDomains.css +26 -0
  13. package/public/css/tailwind-designCom.css +26 -0
  14. package/public/css/tailwind-designCrowd.css +26 -0
  15. package/src/atoms/components/Price/Price.vue +1 -1
  16. package/src/bundles/bundled-translations.de-DE.json +49 -2
  17. package/src/bundles/bundled-translations.es-ES.json +49 -2
  18. package/src/bundles/bundled-translations.fr-FR.json +49 -2
  19. package/src/bundles/bundled-translations.json +49 -2
  20. package/src/bundles/bundled-translations.pt-PT.json +49 -2
  21. package/src/experiences/components/AuthFlow/ForgotPassword.vue +21 -9
  22. package/src/experiences/components/AuthFlow/ResetPassword.vue +37 -8
  23. package/src/experiences/components/PublishBrandPageModal/PublishBrandPageCard.vue +14 -10
  24. package/src/experiences/components/PublishBrandPageModal/PublishBrandPageModal.stories.js +29 -6
  25. package/src/experiences/components/PublishBrandPageModal/PublishBrandPageModal.vue +59 -27
  26. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.de-DE.json +22 -0
  27. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.es-ES.json +22 -0
  28. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.fr-FR.json +22 -0
  29. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.json +22 -0
  30. package/src/experiences/components/PublishBrandPageModal/i18n/publish-brand-page-modal.pt-PT.json +22 -0
  31. package/src/experiences/components/SellDomainNameList/SellDomainNameList.vue +15 -7
  32. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.de-DE.json +8 -0
  33. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.es-ES.json +8 -0
  34. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.fr-FR.json +8 -0
  35. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.json +8 -0
  36. package/src/experiences/components/SellDomainNameList/i18n/sell-domain-name-list.pt-PT.json +8 -0
  37. package/src/experiences/components/SellDomainNameListModal/SellDomainNameListModal.vue +12 -8
  38. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.de-DE.json +6 -0
  39. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.es-ES.json +6 -0
  40. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.fr-FR.json +6 -0
  41. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.json +6 -0
  42. package/src/experiences/components/SellDomainNameListModal/i18n/sell-domain-name-list-modal.pt-PT.json +6 -0
  43. package/src/experiences/components/SellDomainNameModalApplication/SellDomainNameModalApplication.vue +13 -9
  44. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.de-DE.json +6 -0
  45. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.es-ES.json +6 -0
  46. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.fr-FR.json +6 -0
  47. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.json +6 -0
  48. package/src/experiences/components/SellDomainNameModalApplication/i18n/sell-domain-name-modal-application.pt-PT.json +6 -0
  49. package/src/experiences/components/SellDomainNameSearch/SellDomainNameSearch.vue +18 -13
  50. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.de-DE.json +8 -0
  51. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.es-ES.json +8 -0
  52. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.fr-FR.json +8 -0
  53. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.json +8 -0
  54. package/src/experiences/components/SellDomainNameSearch/i18n/sell-domain-name-search.pt-PT.json +8 -0
  55. package/src/experiences/components/SellDomainNameSearchResult/SellDomainNameListSearchResult.vue +15 -5
  56. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.de-DE.json +6 -0
  57. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.es-ES.json +6 -0
  58. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.fr-FR.json +6 -0
  59. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.json +6 -0
  60. package/src/experiences/components/SellDomainNameSearchResult/i18n/sell-domain-name-list-search-result.pt-PT.json +6 -0
  61. package/src/experiences/components/SellDomainNameWidget/SellDomainNameWidget.vue +15 -12
  62. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.de-DE.json +8 -0
  63. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.es-ES.json +8 -0
  64. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.fr-FR.json +8 -0
  65. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.json +8 -0
  66. package/src/experiences/components/SellDomainNameWidget/i18n/sell-domain-name-widget.pt-PT.json +8 -0
  67. package/src/useSharedLibTranslate.js +37 -1
  68. package/src/experiences/components/PublishBrandPageModal/i18n/publish-modal.de-DE.json +0 -5
  69. package/src/experiences/components/PublishBrandPageModal/i18n/publish-modal.es-ES.json +0 -5
  70. package/src/experiences/components/PublishBrandPageModal/i18n/publish-modal.fr-FR.json +0 -5
  71. package/src/experiences/components/PublishBrandPageModal/i18n/publish-modal.json +0 -5
  72. package/src/experiences/components/PublishBrandPageModal/i18n/publish-modal.pt-PT.json +0 -5
@@ -22,7 +22,7 @@
22
22
  {{ item.domainName }}
23
23
  </div>
24
24
  <div v-if="item.costPrice" class="tw-text-xs tw-text-grayscale-600 tw-flex tw-items-center">
25
- <span class="tw-mr-2"> Cost Price: </span>
25
+ <span class="tw-mr-2"> {{ costPriceLabel }} </span>
26
26
  <Price
27
27
  class="tw-font-bold"
28
28
  :amount="getCostPrice(item)"
@@ -30,7 +30,7 @@
30
30
  :currency="currency"
31
31
  fraction="2"
32
32
  :show-abbreviation="false"
33
- suffix="/yr"
33
+ :suffix="pricePerYearLabel"
34
34
  />
35
35
  </div>
36
36
  <div v-if="!isFree(item) || item.costPrice" class="tw-px-0 tw-mt-4 sm:tw-px-4 sm:tw-mt-0">
@@ -41,7 +41,7 @@
41
41
  :currency="currency"
42
42
  fraction="2"
43
43
  :show-abbreviation="false"
44
- suffix="/yr"
44
+ :suffix="pricePerYearLabel"
45
45
  />
46
46
  </div>
47
47
  </div>
@@ -63,10 +63,10 @@
63
63
  </div>
64
64
  </template>
65
65
  <script>
66
- import Button from '../../../../src/atoms/components/Button/Button.vue';
67
- import Price from '../../../../src/atoms/components/Price/Price.vue';
68
-
66
+ import Button from '../../../atoms/components/Button/Button.vue';
67
+ import Price from '../../../atoms/components/Price/Price.vue';
69
68
  import Events from '../../constants/event-constants';
69
+ import { sellDomainNameListTr } from '../../../useSharedLibTranslate';
70
70
 
71
71
  export default {
72
72
  components: {
@@ -108,6 +108,14 @@ export default {
108
108
  },
109
109
  },
110
110
  emits: ['load-more-domains'],
111
+ setup() {
112
+ return {
113
+ freeDomainButtonLabel: sellDomainNameListTr('freeDomainButtonLabel'),
114
+ buyNowButtonLabel: sellDomainNameListTr('buyNowButtonLabel'),
115
+ pricePerYearLabel: sellDomainNameListTr('pricePerYearLabel'),
116
+ costPriceLabel: sellDomainNameListTr('costPriceLabel'),
117
+ };
118
+ },
111
119
  methods: {
112
120
  onBuyNowClick(domain) {
113
121
  const request = domain;
@@ -134,7 +142,7 @@ export default {
134
142
  return parseFloat(domain.price) === 0;
135
143
  },
136
144
  getPurchaseLabel(domain) {
137
- return this.isFree(domain) ? 'Free Domain' : 'Buy Now';
145
+ return this.isFree(domain) ? this.freeDomainButtonLabel : this.buyNowButtonLabel;
138
146
  },
139
147
  },
140
148
  };
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameList" : {
3
+ "freeDomainButtonLabel" : "Kostenlose Domain",
4
+ "buyNowButtonLabel" : "Jetzt kaufen",
5
+ "pricePerYearLabel" : "/yr",
6
+ "costPriceLabel" : "Kostenpreis:"
7
+ }
8
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameList" : {
3
+ "freeDomainButtonLabel" : "Dominio gratis",
4
+ "buyNowButtonLabel" : "Comprar ahora",
5
+ "pricePerYearLabel" : "/yr",
6
+ "costPriceLabel" : "Precio de coste:"
7
+ }
8
+ }
@@ -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": "Free Domain",
4
+ "buyNowButtonLabel": "Buy Now",
5
+ "pricePerYearLabel": "/yr",
6
+ "costPriceLabel": "Cost Price:"
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
+ }
@@ -13,8 +13,8 @@
13
13
  <SellDomainNameSearch
14
14
  v-if="visible"
15
15
  :is-design-com="isDesignCom"
16
- :header-title="headerTitle"
17
- :header-subtitle="headerSubtitle"
16
+ :header-title="headerTitle || domainSearchHeaderTitle"
17
+ :header-subtitle="headerSubtitle || domainSearchHeaderSubtitle"
18
18
  :initial-search-term="modelValue"
19
19
  @onSearch="onSearch"
20
20
  @onSearchTextInputChange="onSearchTextInputChange"
@@ -34,14 +34,12 @@
34
34
  </Modal>
35
35
  </template>
36
36
  <script>
37
- import Modal from '../../../../src/atoms/components/Modal/Modal.vue';
37
+ import Modal from '../../../atoms/components/Modal/Modal.vue';
38
+ import { sellDomainNameListModalTr } from '../../../useSharedLibTranslate';
38
39
 
39
40
  import SellDomainNameSearch from '../SellDomainNameSearch/SellDomainNameSearch.vue';
40
41
  import SellDomainNameSearchResult from '../SellDomainNameSearchResult/SellDomainNameListSearchResult.vue';
41
42
 
42
- const headerSubtitle = 'Buy matching domain name for your brand';
43
- const headerTitle = 'Search a domain name';
44
-
45
43
  export default {
46
44
  components: {
47
45
  Modal,
@@ -60,11 +58,11 @@ export default {
60
58
  },
61
59
  headerSubtitle: {
62
60
  type: String,
63
- default: () => headerSubtitle,
61
+ default: null,
64
62
  },
65
63
  headerTitle: {
66
64
  type: String,
67
- default: () => headerTitle,
65
+ default: null,
68
66
  },
69
67
  isBusy: {
70
68
  type: Boolean,
@@ -94,6 +92,12 @@ export default {
94
92
  },
95
93
  },
96
94
  emits: ['close-modal', 'input', 'search'],
95
+ setup() {
96
+ return {
97
+ domainSearchHeaderTitle: sellDomainNameListModalTr('domainSearchHeaderTitle'),
98
+ domainSearchHeaderSubtitle: sellDomainNameListModalTr('domainSearchHeaderSubtitle'),
99
+ };
100
+ },
97
101
  methods: {
98
102
  onSearch() {
99
103
  this.$emit('search');
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameListModal" : {
3
+ "domainSearchHeaderTitle" : "Domainname suchen",
4
+ "domainSearchHeaderSubtitle" : "Kaufen Sie eine passende Domain für Ihre Marke"
5
+ }
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameListModal" : {
3
+ "domainSearchHeaderTitle" : "Busca un nombre de dominio",
4
+ "domainSearchHeaderSubtitle" : "Compra un nombre de dominio que coincida con tu marca"
5
+ }
6
+ }
@@ -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": "Search a domain name",
4
+ "domainSearchHeaderSubtitle": "Buy matching domain name for your brand"
5
+ }
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameListModal" : {
3
+ "domainSearchHeaderTitle" : "Pesquisar um nome de domínio",
4
+ "domainSearchHeaderSubtitle" : "Compre um nome de domínio que corresponda à sua marca"
5
+ }
6
+ }
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <template v-if="!!this.$slots['header']">
2
+ <template v-if="!!$slots.header">
3
3
  <Modal
4
4
  classes="sell-domain-name-list-modal--modal tw-text-black"
5
5
  close-on-esc
@@ -49,8 +49,8 @@
49
49
  <SellDomainNameSearch
50
50
  v-if="visible"
51
51
  :is-design-com="isDesignCom"
52
- :header-title="headerTitle"
53
- :header-subtitle="headerSubtitle"
52
+ :header-title="headerTitle || domainSearchHeaderTitle"
53
+ :header-subtitle="headerSubtitle || domainSearchHeaderSubtitle"
54
54
  :initial-search-term="initialSearchTerm"
55
55
  @onSearch="onSearchDomainName"
56
56
  @onSearchTextInputChange="onSearchTextInputChange"
@@ -71,14 +71,12 @@
71
71
  </template>
72
72
  </template>
73
73
  <script>
74
- import Modal from '../../../../src/atoms/components/Modal/Modal.vue';
74
+ import Modal from '../../../atoms/components/Modal/Modal.vue';
75
75
  import brandCrowdApiClient from '../../clients/brand-crowd-api.client';
76
76
  import SellDomainNameSearch from '../SellDomainNameSearch/SellDomainNameSearch.vue';
77
77
  import SellDomainNameSearchResult from '../SellDomainNameSearchResult/SellDomainNameListSearchResult.vue';
78
78
  import Events from '../../constants/event-constants';
79
-
80
- const headerSubtitle = 'Buy matching domain name for your brand';
81
- const headerTitle = 'Search a domain name';
79
+ import { sellDomainNameModalApplicationTr } from '../../../useSharedLibTranslate';
82
80
 
83
81
  export default {
84
82
  components: {
@@ -89,11 +87,11 @@ export default {
89
87
  props: {
90
88
  headerSubtitle: {
91
89
  type: String,
92
- default: () => headerSubtitle,
90
+ default: null,
93
91
  },
94
92
  headerTitle: {
95
93
  type: String,
96
- default: () => headerTitle,
94
+ default: null,
97
95
  },
98
96
  modelValue: {
99
97
  type: String,
@@ -122,6 +120,12 @@ export default {
122
120
  default: undefined,
123
121
  },
124
122
  },
123
+ setup() {
124
+ return {
125
+ domainSearchHeaderTitle: sellDomainNameModalApplicationTr('domainSearchHeaderTitle'),
126
+ domainSearchHeaderSubtitle: sellDomainNameModalApplicationTr('domainSearchHeaderTitle'),
127
+ };
128
+ },
125
129
  data: () => ({
126
130
  domainNameItems: [],
127
131
  userCurrency: {},
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameModalApplication" : {
3
+ "domainSearchHeaderTitle" : "Domainname suchen",
4
+ "domainSearchHeaderSubtitle" : "Kaufen Sie eine passende Domain für Ihre Marke"
5
+ }
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameModalApplication" : {
3
+ "domainSearchHeaderTitle" : "Busca un nombre de dominio",
4
+ "domainSearchHeaderSubtitle" : "Compra un nombre de dominio que coincida con tu 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": "Search a domain name",
4
+ "domainSearchHeaderSubtitle": "Buy matching domain name for your brand"
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 que corresponda à sua marca"
5
+ }
6
+ }
@@ -32,7 +32,7 @@
32
32
  <Button
33
33
  :classes="searchButtonClasses"
34
34
  variant="primary"
35
- label="Search"
35
+ :label="searchButtonLabel"
36
36
  :disabled="false"
37
37
  @on-click="onSearchBarClick"
38
38
  />
@@ -41,15 +41,10 @@
41
41
  </div>
42
42
  </template>
43
43
  <script>
44
- import Button from '../../../../src/atoms/components/Button/Button.vue';
45
- import TextInput from '../../../../src/atoms/components/TextInput/TextInput.vue';
46
-
47
- import {
48
- sellDomainNameMinSearchTextLength,
49
- sellDomainNameSearchBarLabel,
50
- sellDomainNameSearchBarPlaceholder,
51
- sellDomainNameSearchBarPreText,
52
- } from '../../constants/sell-domain-name-constants';
44
+ import Button from '../../../atoms/components/Button/Button.vue';
45
+ import TextInput from '../../../atoms/components/TextInput/TextInput.vue';
46
+ import { sellDomainNameMinSearchTextLength } from '../../constants/sell-domain-name-constants';
47
+ import { sellDomainNameSearchTr } from '../../../useSharedLibTranslate';
53
48
 
54
49
  export default {
55
50
  components: {
@@ -79,14 +74,24 @@ export default {
79
74
  type: Boolean,
80
75
  required: false,
81
76
  },
77
+ contentOverride: {
78
+ type: Object,
79
+ required: false,
80
+ default: null,
81
+ },
82
82
  },
83
83
  emits: ['onSearch', 'onSearchTextInputChange'],
84
+ setup() {
85
+ return {
86
+ searchButtonLabel: sellDomainNameSearchTr('searchButtonLabel'),
87
+ searchBarLabel: sellDomainNameSearchTr('searchBarLabel'),
88
+ searchBarPlaceholder: sellDomainNameSearchTr('searchBarPlaceholder'),
89
+ searchBarPreText: sellDomainNameSearchTr('searchBarPreText'),
90
+ };
91
+ },
84
92
  data() {
85
93
  return {
86
- searchBarLabel: sellDomainNameSearchBarLabel,
87
- searchBarPlaceholder: sellDomainNameSearchBarPlaceholder,
88
94
  searchText: this.initialSearchTerm ?? '',
89
- searchBarPreText: sellDomainNameSearchBarPreText,
90
95
  };
91
96
  },
92
97
  computed: {
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameSearch" : {
3
+ "searchButtonLabel" : "Suche",
4
+ "searchBarLabel" : "Suche",
5
+ "searchBarPlaceholder" : "Domainnamen suchen",
6
+ "searchBarPreText" : "Domainname"
7
+ }
8
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameSearch" : {
3
+ "searchButtonLabel" : "Buscar",
4
+ "searchBarLabel" : "Buscar",
5
+ "searchBarPlaceholder" : "Busca nombres de dominio",
6
+ "searchBarPreText" : "Nombre de dominio"
7
+ }
8
+ }
@@ -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": "Search",
4
+ "searchBarLabel": "Search",
5
+ "searchBarPlaceholder": "Search domain names",
6
+ "searchBarPreText": "Domain name"
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
+ }
@@ -28,20 +28,20 @@
28
28
  @on-buy-now-click="onBuyNowClick"
29
29
  />
30
30
  <div v-else-if="shouldShowDomainNameNotFound" class="tw-flex tw-justify-center tw-text-center">
31
- Sorry, we couldn't find any domain for "{{ previousSearchText }}".
31
+ {{ domainSearchEmptyMessageWithUserDomainName }}
32
32
  <br />
33
- Try searching with another domain name.
33
+ {{ searchAnotherDomainMessage }}
34
34
  </div>
35
35
  <div v-else></div>
36
36
  </div>
37
37
  </template>
38
38
 
39
39
  <script>
40
- import Loader from '../../../../src/atoms/components/Loader/Loader.vue';
41
- import Picture from '../../../../src/atoms/components/Picture/Picture.vue';
42
-
40
+ import Loader from '../../../atoms/components/Loader/Loader.vue';
41
+ import Picture from '../../../atoms/components/Picture/Picture.vue';
43
42
  import SellDomainNameList from '../SellDomainNameList/SellDomainNameList.vue';
44
43
  import Events from '../../constants/event-constants';
44
+ import { sellDomainNameListSearchResultTr } from '../../../useSharedLibTranslate';
45
45
 
46
46
  export default {
47
47
  components: {
@@ -101,12 +101,22 @@ export default {
101
101
  default: undefined,
102
102
  },
103
103
  },
104
+ setup() {
105
+ return {
106
+ searchAnotherDomainMessage: sellDomainNameListSearchResultTr('searchAnotherDomainMessage'),
107
+ };
108
+ },
104
109
  data() {
105
110
  return {
106
111
  domainNameItemsInView: undefined,
107
112
  };
108
113
  },
109
114
  computed: {
115
+ domainSearchEmptyMessageWithUserDomainName() {
116
+ return sellDomainNameListSearchResultTr('domainSearchEmptyMessage', {
117
+ domainNameSearchTerm: this.previousSearchText,
118
+ });
119
+ },
110
120
  shouldShowDomainNameNotFound() {
111
121
  return (
112
122
  !this.isBusy &&
@@ -0,0 +1,6 @@
1
+ {
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
+ }
@@ -0,0 +1,6 @@
1
+ {
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
+ }
@@ -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": "Sorry, we couldn't find any domain for \"{{domainNameSearchTerm}}\".",
4
+ "searchAnotherDomainMessage": "Try searching with another domain name."
5
+ }
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "sellDomainNameListSearchResult" : {
3
+ "domainSearchEmptyMessage" : "Não conseguimos encontrar nenhum domínio para \"{{domainNameSearchTerm}}\".",
4
+ "searchAnotherDomainMessage" : "Experimente pesquisar outro nome de domínio."
5
+ }
6
+ }
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div>
3
- Buy matching domain name for your brand or connect your existing domain
3
+ {{ domainSearchOrConnectHeaderSubtitle }}
4
4
  <div class="tw-flex tw-flex-col md:tw-flex-row tw-mt-4 tw-mb-4">
5
5
  <TextInput
6
6
  v-model="searchText"
@@ -18,7 +18,7 @@
18
18
  <Button
19
19
  classes="tw-w-full tw-mt-2 md:tw-rounded-l-none md:tw-mt-0"
20
20
  variant="primary"
21
- label="Search"
21
+ :label="searchButtonLabel"
22
22
  :disabled="false"
23
23
  @on-click="onSearchBarClick"
24
24
  />
@@ -31,21 +31,18 @@
31
31
  :domain-name-items="domainNameItems"
32
32
  :previous-search-text="previousSearchText"
33
33
  :visible="isSearchDomainListModalVisible"
34
+ :search-button-label="searchButtonLabel"
34
35
  @close-modal="onSellDomainNameListCloseModal"
35
36
  @search="onSearchDomainName(true)"
36
37
  />
37
38
  </div>
38
39
  </template>
39
40
  <script>
40
- import Button from '../../../../src/atoms/components/Button/Button.vue';
41
- import TextInput from '../../../../src/atoms/components/TextInput/TextInput.vue';
42
-
41
+ import { sellDomainNameWidgetTr } from '../../../useSharedLibTranslate';
42
+ import Button from '../../../atoms/components/Button/Button.vue';
43
+ import TextInput from '../../../atoms/components/TextInput/TextInput.vue';
43
44
  import SellDomainNameListModal from '../SellDomainNameListModal/SellDomainNameListModal.vue';
44
- import {
45
- sellDomainNameMinSearchTextLength,
46
- sellDomainNameSearchBarLabel,
47
- sellDomainNameSearchBarPlaceholder,
48
- } from '../../constants/sell-domain-name-constants';
45
+ import { sellDomainNameMinSearchTextLength } from '../../constants/sell-domain-name-constants';
49
46
  import Events from '../../constants/event-constants';
50
47
  import brandCrowdApiClient from '../../clients/brand-crowd-api.client';
51
48
 
@@ -76,13 +73,19 @@ export default {
76
73
  default: false,
77
74
  },
78
75
  },
76
+ setup() {
77
+ return {
78
+ searchButtonLabel: sellDomainNameWidgetTr('searchButtonLabel'),
79
+ searchBarLabel: sellDomainNameWidgetTr('searchBarLabel'),
80
+ searchBarPlaceholder: sellDomainNameWidgetTr('searchBarPlaceholder'),
81
+ domainSearchOrConnectHeaderSubtitle: sellDomainNameWidgetTr('domainSearchOrConnectHeaderSubtitle'),
82
+ };
83
+ },
79
84
  data: () => ({
80
85
  domainNameItems: undefined,
81
86
  userCurrency: undefined,
82
87
  isBusy: false,
83
88
  isSearchDomainListModalVisible: false,
84
- searchBarLabel: sellDomainNameSearchBarLabel,
85
- searchBarPlaceholder: sellDomainNameSearchBarPlaceholder,
86
89
  searchText: '',
87
90
  previousSearchText: '',
88
91
  }),
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameWidget" : {
3
+ "searchButtonLabel" : "Suche",
4
+ "searchBarLabel" : "Suche",
5
+ "searchBarPlaceholder" : "Domainnamen suchen",
6
+ "domainSearchOrConnectHeaderSubtitle" : "Kaufen Sie passende Domains für Ihre Marke oder verknüpfen Sie Ihre bestehende Domain"
7
+ }
8
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "sellDomainNameWidget" : {
3
+ "searchButtonLabel" : "Buscar",
4
+ "searchBarLabel" : "Buscar",
5
+ "searchBarPlaceholder" : "Busca nombres de dominio",
6
+ "domainSearchOrConnectHeaderSubtitle" : "Compra un nombre de dominio que coincida con tu marca o conecta tu dominio existente"
7
+ }
8
+ }
@@ -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": "Search",
4
+ "searchBarLabel": "Search",
5
+ "searchBarPlaceholder": "Search domain names",
6
+ "domainSearchOrConnectHeaderSubtitle": "Buy matching domain name for your brand or connect your existing domain"
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
+ }