@myissue/vue-website-page-builder 3.3.72 → 3.3.74

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 (51) hide show
  1. package/README.md +61 -0
  2. package/dist/ar-Sg258Eh1.js +110 -0
  3. package/dist/de-DU6Hv8W2.js +112 -0
  4. package/dist/en-B__-m2Os.js +112 -0
  5. package/dist/es-DmzWA1F8.js +112 -0
  6. package/dist/fr-BARDIQ1D.js +112 -0
  7. package/dist/hi-BgQJcRDP.js +112 -0
  8. package/dist/ja-Drg74-B1.js +112 -0
  9. package/dist/pt-D19DpjTw.js +112 -0
  10. package/dist/robots.txt +1 -1
  11. package/dist/ru-D0zybCPa.js +112 -0
  12. package/dist/style.css +1 -1
  13. package/dist/vue-website-page-builder.js +9435 -9300
  14. package/dist/vue-website-page-builder.umd.cjs +40 -40
  15. package/dist/zh-Hans-notf0z2N.js +112 -0
  16. package/package.json +1 -1
  17. package/src/App.vue +17 -1
  18. package/src/Components/PageBuilder/DefaultComponents/DefaultBuilderComponents.vue +10 -4
  19. package/src/Components/PageBuilder/EditorMenu/Editables/BackgroundColorEditor.vue +6 -2
  20. package/src/Components/PageBuilder/EditorMenu/Editables/BorderRadius.vue +23 -13
  21. package/src/Components/PageBuilder/EditorMenu/Editables/Borders.vue +22 -9
  22. package/src/Components/PageBuilder/EditorMenu/Editables/ClassEditor.vue +15 -7
  23. package/src/Components/PageBuilder/EditorMenu/Editables/ComponentTopMenu.vue +10 -6
  24. package/src/Components/PageBuilder/EditorMenu/Editables/ManageBackgroundOpacity.vue +1 -1
  25. package/src/Components/PageBuilder/EditorMenu/Editables/ManageOpacity.vue +1 -1
  26. package/src/Components/PageBuilder/EditorMenu/Editables/Margin.vue +12 -5
  27. package/src/Components/PageBuilder/EditorMenu/Editables/OpacityEditor.vue +4 -1
  28. package/src/Components/PageBuilder/EditorMenu/Editables/Padding.vue +13 -5
  29. package/src/Components/PageBuilder/EditorMenu/Editables/StyleEditor.vue +14 -7
  30. package/src/Components/PageBuilder/EditorMenu/Editables/TextColorEditor.vue +7 -1
  31. package/src/Components/PageBuilder/EditorMenu/Editables/Typography.vue +36 -16
  32. package/src/Components/PageBuilder/EditorMenu/RightSidebarEditor.vue +26 -14
  33. package/src/Components/PageBuilder/ToolbarOption/ToolbarOption.vue +13 -10
  34. package/src/Components/TipTap/TipTapInput.vue +1 -1
  35. package/src/PageBuilder/PageBuilder.vue +115 -19
  36. package/src/composables/useTranslations.ts +28 -0
  37. package/src/css/style.css +2 -1
  38. package/src/locales/ar.json +85 -0
  39. package/src/locales/de.json +86 -0
  40. package/src/locales/en.json +93 -0
  41. package/src/locales/es.json +86 -0
  42. package/src/locales/fr.json +86 -0
  43. package/src/locales/hi.json +86 -0
  44. package/src/locales/ja.json +86 -0
  45. package/src/locales/pt.json +92 -0
  46. package/src/locales/ru.json +86 -0
  47. package/src/locales/zh-Hans.json +86 -0
  48. package/src/services/PageBuilderService.ts +63 -1
  49. package/src/stores/page-builder-state.ts +3 -3
  50. package/src/tests/PageBuilderTest.vue +39 -77
  51. package/src/types/index.ts +1 -1
@@ -4,6 +4,10 @@ import { sharedPageBuilderStore } from '../../../../stores/shared-store'
4
4
  import EditorAccordion from '../EditorAccordion.vue'
5
5
  import tailwindPaddingPlusMargin from '../../../../utils/builder/tailwind-padding-margin'
6
6
  import { getPageBuilder } from '../../../../composables/builderInstance'
7
+ import { useTranslations } from '../../../../composables/useTranslations'
8
+
9
+ const { translate } = useTranslations()
10
+
7
11
  const pageBuilderService = getPageBuilder()
8
12
 
9
13
  // Use shared store instance
@@ -61,17 +65,19 @@ watch(
61
65
  </script>
62
66
  <template>
63
67
  <EditorAccordion>
64
- <template #title>Padding</template>
68
+ <template #title>{{ translate('Padding') }}</template>
65
69
  <template #content>
66
70
  <div class="pbx-my-2 pbx-py-2">
67
- <label for="vertical-padding" class="pbx-myPrimaryInputLabel"> Vertical Padding </label>
71
+ <label for="vertical-padding" class="pbx-myPrimaryInputLabel">{{
72
+ translate('Vertical Padding')
73
+ }}</label>
68
74
  <select
69
75
  id="vertical-padding"
70
76
  v-model="fontVerticalPadding"
71
77
  class="pbx-myPrimarySelect"
72
78
  @change="pageBuilderService.handleVerticalPadding(fontVerticalPadding)"
73
79
  >
74
- <option disabled value="">Select</option>
80
+ <option disabled value="">{{ translate('Select') }}</option>
75
81
  <option
76
82
  v-for="verticalPadding in tailwindPaddingPlusMargin.verticalPadding"
77
83
  :key="verticalPadding"
@@ -82,14 +88,16 @@ watch(
82
88
  </div>
83
89
  <hr />
84
90
  <div class="pbx-my-2 pbx-py-2">
85
- <label for="horizontal-padding" class="pbx-myPrimaryInputLabel"> Horizontal Padding </label>
91
+ <label for="horizontal-padding" class="pbx-myPrimaryInputLabel">{{
92
+ translate('Horizontal Padding')
93
+ }}</label>
86
94
  <select
87
95
  id="horizontal-padding"
88
96
  v-model="fontHorizontalPadding"
89
97
  class="pbx-myPrimarySelect"
90
98
  @change="pageBuilderService.handleHorizontalPadding(fontHorizontalPadding)"
91
99
  >
92
- <option disabled value="">Select</option>
100
+ <option disabled value="">{{ translate('Select') }}</option>
93
101
  <option
94
102
  v-for="horizontalPadding in tailwindPaddingPlusMargin.horizontalPadding"
95
103
  :key="horizontalPadding"
@@ -3,7 +3,9 @@ import { ref, computed, watch } from 'vue'
3
3
  import { sharedPageBuilderStore } from '../../../../stores/shared-store'
4
4
  import EditorAccordion from '../EditorAccordion.vue'
5
5
  import { getPageBuilder } from '../../../../composables/builderInstance'
6
+ import { useTranslations } from '../../../../composables/useTranslations'
6
7
 
8
+ const { translate } = useTranslations()
7
9
  const pageBuilderService = getPageBuilder()
8
10
 
9
11
  const pageBuilderStateStore = sharedPageBuilderStore
@@ -56,11 +58,14 @@ const handleAddStyle = async () => {
56
58
 
57
59
  <template>
58
60
  <EditorAccordion>
59
- <template #title>Inline Styles</template>
61
+ <template #title>{{ translate('Inline Styles') }}</template>
60
62
  <template #content>
61
63
  <label class="pbx-myPrimaryInputLabel pbx-my-4">
62
- These are the inline styles applied by the builder. Add your own styles and press Enter to
63
- apply them to the selected element.
64
+ {{
65
+ translate(
66
+ 'These are the inline styles applied by the builder. Add your own styles and press Enter to apply them to the selected element.',
67
+ )
68
+ }}
64
69
  </label>
65
70
 
66
71
  <div class="pbx-flex pbx-flex-row pbx-flex-wrap pbx-gap-2 pbx-mt-2 pbx-mb-4">
@@ -83,14 +88,14 @@ const handleAddStyle = async () => {
83
88
 
84
89
  <div>
85
90
  <label for="custom-style-property" class="pbx-myPrimaryInputLabel">
86
- Add your own style.
91
+ {{ translate('Add your own style.') }}
87
92
  </label>
88
93
  <div class="pbx-flex pbx-gap-2 pbx-flex-col pbx-item-center">
89
94
  <input
90
95
  id="custom-style-property"
91
96
  v-model="inputProperty"
92
97
  type="text"
93
- placeholder="property"
98
+ :placeholder="translate('property')"
94
99
  @keydown.enter.prevent="handleEnterOnProperty"
95
100
  autocomplete="off"
96
101
  class="pbx-myPrimaryInput"
@@ -100,13 +105,15 @@ const handleAddStyle = async () => {
100
105
  ref="valueInputRef"
101
106
  v-model="inputValue"
102
107
  type="text"
103
- placeholder="value"
108
+ :placeholder="translate('value')"
104
109
  @keydown.enter="handleAddStyle"
105
110
  autocomplete="off"
106
111
  class="pbx-myPrimaryInput"
107
112
  />
108
113
 
109
- <button @click="handleAddStyle" type="button" class="pbx-myPrimaryButton">Add</button>
114
+ <button @click="handleAddStyle" type="button" class="pbx-myPrimaryButton">
115
+ {{ translate('Add') }}
116
+ </button>
110
117
  </div>
111
118
  </div>
112
119
  <p v-if="errorMessage" class="pbx-myPrimaryInputError">{{ errorMessage }}</p>
@@ -4,6 +4,10 @@ import { Listbox, ListboxButton, ListboxOption, ListboxOptions } from '@headless
4
4
  import tailwindColors from '../../../../utils/builder/tailwaind-colors'
5
5
  import { sharedPageBuilderStore } from '../../../../stores/shared-store'
6
6
  import { getPageBuilder } from '../../../../composables/builderInstance'
7
+ import { useTranslations } from '../../../../composables/useTranslations'
8
+
9
+ const { translate } = useTranslations()
10
+
7
11
  const pageBuilderService = getPageBuilder()
8
12
 
9
13
  // Use shared store instance
@@ -49,7 +53,9 @@ watch(
49
53
  class="pbx-aspect-square pbx-w-6 pbx-h-6 pbx-border pbx-border-gray-800 pbx-rounded-sm"
50
54
  :class="`pbx-bg-${textColor?.replace('pbx-text-', '')}`"
51
55
  ></div>
52
- <div>Text Color</div>
56
+ <div>
57
+ <div>{{ translate('Text Color') }}</div>
58
+ </div>
53
59
  </div>
54
60
 
55
61
  <span v-if="globalPageLayout" class="material-symbols-outlined"> chevron_right </span>
@@ -5,6 +5,10 @@ import tailwindFontSizes from '../../../../utils/builder/tailwind-font-sizes'
5
5
  import tailwindFontStyles from '../../../../utils/builder/tailwind-font-styles'
6
6
  import { sharedPageBuilderStore } from '../../../../stores/shared-store'
7
7
  import { getPageBuilder } from '../../../../composables/builderInstance'
8
+
9
+ import { useTranslations } from '../../../../composables/useTranslations'
10
+
11
+ const { translate } = useTranslations()
8
12
  const pageBuilderService = getPageBuilder()
9
13
 
10
14
  // Use shared store instance
@@ -99,20 +103,24 @@ watch(
99
103
 
100
104
  <template>
101
105
  <EditorAccordion>
102
- <template #title> Typographies </template>
106
+ <template #title>{{ translate('Typographies') }}</template>
103
107
  <template #content>
104
108
  <!-- FONT SIZES -->
105
- <p class="pbx-myPrimaryParagraph pbx-font-medium pbx-py-0 pbx-my-4">Font Appearance</p>
109
+ <p class="pbx-myPrimaryParagraph pbx-font-medium pbx-py-0 pbx-my-4">
110
+ {{ translate('Font Appearance') }}
111
+ </p>
106
112
  <template v-if="false">
107
113
  <div class="pbx-my-2 pbx-py-2">
108
- <label for="font-base" class="pbx-myPrimaryInputLabel"> Font Size </label>
114
+ <label for="font-base" class="pbx-myPrimaryInputLabel">
115
+ {{ translate('Font Size') }}
116
+ </label>
109
117
  <select
110
118
  id="font-base"
111
119
  v-model="fontBase"
112
120
  class="pbx-myPrimarySelect"
113
121
  @change="pageBuilderService.handleFontSizeBase(fontBase)"
114
122
  >
115
- <option disabled value="">Select</option>
123
+ <option disabled value="">{{ translate('Select') }}</option>
116
124
  <option v-for="fontSize in tailwindFontSizes.fontBase" :key="fontSize">
117
125
  {{ fontSize }}
118
126
  </option>
@@ -120,14 +128,16 @@ watch(
120
128
  </div>
121
129
  </template>
122
130
  <div class="pbx-my-2 pbx-py-2">
123
- <label for="font-desktop" class="pbx-myPrimaryInputLabel"> Font size </label>
131
+ <label for="font-desktop" class="pbx-myPrimaryInputLabel">
132
+ {{ translate('Font size') }}
133
+ </label>
124
134
  <select
125
135
  id="font-desktop"
126
136
  v-model="fontDesktop"
127
137
  class="pbx-myPrimarySelect"
128
138
  @change="pageBuilderService.handleFontSizeDesktop(fontDesktop)"
129
139
  >
130
- <option disabled value="">Select</option>
140
+ <option disabled value="">{{ translate('Select') }}</option>
131
141
  <option v-for="fontSize in tailwindFontSizes.fontDesktop" :key="fontSize">
132
142
  {{ fontSize }}
133
143
  </option>
@@ -135,28 +145,32 @@ watch(
135
145
  </div>
136
146
  <template v-if="false">
137
147
  <div class="pbx-my-2 pbx-py-2">
138
- <label for="font-tablet" class="pbx-myPrimaryInputLabel"> Font tablet size </label>
148
+ <label for="font-tablet" class="pbx-myPrimaryInputLabel">
149
+ {{ translate('Font tablet size') }}
150
+ </label>
139
151
  <select
140
152
  id="font-tablet"
141
153
  v-model="fontTablet"
142
154
  class="pbx-myPrimarySelect"
143
155
  @change="pageBuilderService.handleFontSizeTablet(fontTablet)"
144
156
  >
145
- <option disabled value="">Select</option>
157
+ <option disabled value="">{{ translate('Select') }}</option>
146
158
  <option v-for="fontSize in tailwindFontSizes.fontTablet" :key="fontSize">
147
159
  {{ fontSize }}
148
160
  </option>
149
161
  </select>
150
162
  </div>
151
163
  <div class="pbx-my-2 pbx-py-2">
152
- <label for="font-mobile" class="pbx-myPrimaryInputLabel"> Font small screens </label>
164
+ <label for="font-mobile" class="pbx-myPrimaryInputLabel">
165
+ {{ translate('Font small screens') }}
166
+ </label>
153
167
  <select
154
168
  id="font-mobile"
155
169
  v-model="fontMobile"
156
170
  class="pbx-myPrimarySelect"
157
171
  @change="pageBuilderService.handleFontSizeMobile(fontMobile)"
158
172
  >
159
- <option disabled value="">Select</option>
173
+ <option disabled value="">{{ translate('Select') }}</option>
160
174
  <option v-for="fontSize in tailwindFontSizes.fontMobile" :key="fontSize">
161
175
  {{ fontSize }}
162
176
  </option>
@@ -166,14 +180,16 @@ watch(
166
180
  <hr />
167
181
 
168
182
  <div class="pbx-my-2 pbx-py-2">
169
- <label for="font-weight" class="pbx-myPrimaryInputLabel"> Font weight </label>
183
+ <label for="font-weight" class="pbx-myPrimaryInputLabel">
184
+ {{ translate('Font weight') }}
185
+ </label>
170
186
  <select
171
187
  id="font-weight"
172
188
  v-model="fontWeight"
173
189
  class="pbx-myPrimarySelect"
174
190
  @change="pageBuilderService.handleFontWeight(fontWeight)"
175
191
  >
176
- <option disabled value="">Select</option>
192
+ <option disabled value="">{{ translate('Select') }}</option>
177
193
  <option v-for="fontWeight in tailwindFontStyles.fontWeight" :key="fontWeight">
178
194
  {{ fontWeight }}
179
195
  </option>
@@ -183,14 +199,16 @@ watch(
183
199
 
184
200
  <!-- FONT FAMILY -->
185
201
  <div class="pbx-my-2 pbx-py-2">
186
- <label for="font-family" class="pbx-myPrimaryInputLabel"> Font family </label>
202
+ <label for="font-family" class="pbx-myPrimaryInputLabel">
203
+ {{ translate('Font family') }}
204
+ </label>
187
205
  <select
188
206
  id="font-family"
189
207
  v-model="fontFamily"
190
208
  class="pbx-myPrimarySelect"
191
209
  @change="pageBuilderService.handleFontFamily(fontFamily)"
192
210
  >
193
- <option disabled value="">Select</option>
211
+ <option disabled value="">{{ translate('Select') }}</option>
194
212
  <option v-for="fontFamily in tailwindFontStyles.fontFamily" :key="fontFamily">
195
213
  {{ fontFamily }}
196
214
  </option>
@@ -199,14 +217,16 @@ watch(
199
217
  <hr />
200
218
 
201
219
  <div class="pbx-my-2 pbx-py-2">
202
- <label for="font-style" class="pbx-myPrimaryInputLabel"> Font Style </label>
220
+ <label for="font-style" class="pbx-myPrimaryInputLabel">
221
+ {{ translate('Font Style') }}
222
+ </label>
203
223
  <select
204
224
  id="font-style"
205
225
  v-model="fontStyle"
206
226
  class="pbx-myPrimarySelect"
207
227
  @change="pageBuilderService.handleFontStyle(fontStyle)"
208
228
  >
209
- <option disabled value="">Select</option>
229
+ <option disabled value="">{{ translate('Select') }}</option>
210
230
  <option v-for="fontStyle in tailwindFontStyles.fontStyle" :key="fontStyle">
211
231
  {{ fontStyle }}
212
232
  </option>
@@ -21,6 +21,9 @@ import EditorAccordion from '../EditorMenu/EditorAccordion.vue'
21
21
  import fullHTMLContent from '../../../utils/builder/html-doc-declaration-with-components'
22
22
  import ModalBuilder from '../../../Components/Modals/ModalBuilder.vue'
23
23
  import { extractCleanHTMLFromPageBuilder } from '../../../composables/extractCleanHTMLFromPageBuilder'
24
+ import { useTranslations } from '../../../composables/useTranslations'
25
+
26
+ const { translate } = useTranslations()
24
27
 
25
28
  const pageBuilderService = getPageBuilder()
26
29
  const pageBuilderStateStore = sharedPageBuilderStore
@@ -128,12 +131,12 @@ const handleCloseGlobalPageStyles = async function () {
128
131
  <button
129
132
  type="button"
130
133
  @click="$emit('closeEditor')"
131
- class="pbx-h-10 pbx-w-10 pbx-cursor-pointer pbx-rounded-full pbx-flex pbx-items-center pbx-border-none pbx-justify-center pbx-bg-gray-50 pbx-aspect-square hover:pbx-bg-myPrimaryLinkColor hover:pbx-text-white focus-visible:pbx-ring-0"
134
+ class="pbx-h-10 pbx-w-10 pbx-cursor-pointer pbx-rounded-full pbx-flex pbx-items-center pbx-border-none pbx-justify-center pbx-bg-gray-50 pbx-aspect-square hover:pbx-bg-myPrimaryLinkColor hover:pbx-text-white focus-visible:pbx-ring-0 pbx-text-black hover:pbx-text-white"
132
135
  >
133
136
  <span class="material-symbols-outlined"> close </span>
134
137
  </button>
135
138
  <p class="pbx-font-medium pbx-text-sm">
136
- Editing
139
+ {{ translate('Editing') }}
137
140
  <span class="pbx-lowercase">&lt;{{ elementTag }}&gt;</span>
138
141
  </p>
139
142
  </div>
@@ -181,16 +184,19 @@ const handleCloseGlobalPageStyles = async function () {
181
184
  <!-- Global Page Styles -->
182
185
  <article class="pbx-my-1 pbx-bg-white">
183
186
  <EditorAccordion>
184
- <template #title>Global Page Styles</template>
187
+ <template #title>{{ translate('Global Page Styles') }}</template>
185
188
  <template #content>
186
189
  <label class="pbx-myPrimaryInputLabel pbx-my-4">
187
- Apply styles that affect the entire page. These settings include global font family,
188
- text color, background color, and other universal styles that apply to all sections.
190
+ {{
191
+ translate(
192
+ 'Apply styles that affect the entire page. These settings include global font family, text color, background color, and other universal styles that apply to all sections.',
193
+ )
194
+ }}
189
195
  </label>
190
196
 
191
197
  <div class="pbx-mt-4">
192
198
  <button @click="handleUpdatePageStyles" type="button" class="pbx-myPrimaryButton">
193
- Update Page Styles
199
+ {{ translate('Update Page Styles') }}
194
200
  </button>
195
201
  </div>
196
202
  </template>
@@ -204,15 +210,18 @@ const handleCloseGlobalPageStyles = async function () {
204
210
  class="pbx-my-1 pbx-bg-white"
205
211
  >
206
212
  <EditorAccordion>
207
- <template #title>Download HTML</template>
213
+ <template #title>{{ translate('Download HTML') }}</template>
208
214
  <template #content>
209
215
  <label class="pbx-myPrimaryInputLabel pbx-my-4">
210
- Export the entire page as a standalone HTML file. This includes all sections, content,
211
- and applied styles, making it ready for use or integration elsewhere.
216
+ {{
217
+ translate(
218
+ 'Export the entire page as a standalone HTML file. This includes all sections, content, and applied styles, making it ready for use or integration elsewhere.',
219
+ )
220
+ }}
212
221
  </label>
213
222
  <div class="pbx-mt-4">
214
223
  <button @click="handleDownloadHTML" type="button" class="pbx-myPrimaryButton">
215
- Download HTML file
224
+ {{ translate('Download HTML file') }}
216
225
  </button>
217
226
  </div>
218
227
  </template>
@@ -225,7 +234,7 @@ const handleCloseGlobalPageStyles = async function () {
225
234
  maxWidth="md"
226
235
  minHeight="pbx-min-h-[65vh] pbx-max-h-[65vh]"
227
236
  :showModalBuilder="showModalGlobalPageStyles"
228
- title="Global Page Styles"
237
+ :title="translate('Global Page Styles')"
229
238
  @closeMainModalBuilder="handleCloseGlobalPageStyles"
230
239
  >
231
240
  <div class="pbx-flex pbx-flex-col pbx-gap-2 pbx-pt-4 pbx-pb-2">
@@ -236,7 +245,7 @@ const handleCloseGlobalPageStyles = async function () {
236
245
  >
237
246
  <span
238
247
  class="!pbx-absolute !pbx-m-px !pbx-h-px !pbx-w-px !pbx-overflow-hidden !pbx-whitespace-nowrap !pbx-border-0 !pbx-p-0 !pbx-[clip:rect(0,0,0,0)]"
239
- >Loading...</span
248
+ >{{ translate('Loading...') }}</span
240
249
  >
241
250
  </div>
242
251
  </div>
@@ -244,8 +253,11 @@ const handleCloseGlobalPageStyles = async function () {
244
253
  <div v-if="!isLoadingPageStyles && showModalGlobalPageStyles" class="pbx-pb-12">
245
254
  <div>
246
255
  <p class="pbx-myPrimaryParagraph">
247
- Apply styles that affect the entire page. These settings include global font family,
248
- text color, background color, and other universal styles that apply to all sections.
256
+ {{
257
+ translate(
258
+ 'Apply styles that affect the entire page. These settings include global font family, text color, background color, and other universal styles that apply to all sections.',
259
+ )
260
+ }}
249
261
  </p>
250
262
  <article class="pbx-my-1 pbx-bg-gray-100">
251
263
  <Typography></Typography>
@@ -4,12 +4,15 @@ import { sharedPageBuilderStore } from '../../../stores/shared-store'
4
4
  import ModalBuilder from '../../Modals/ModalBuilder.vue'
5
5
  import PageBuilderSettings from '../Settings/PageBuilderSettings.vue'
6
6
  import AdvancedPageBuilderSettings from '../Settings/AdvancedPageBuilderSettings.vue'
7
- import { preloadImage } from '../../../composables/preloadImage'
8
7
 
9
8
  import DynamicModalBuilder from '../../Modals/DynamicModalBuilder.vue'
10
9
 
11
10
  import { getPageBuilder } from '../../../composables/builderInstance'
12
11
  import { delay } from '../../../composables/delay'
12
+ import { useTranslations } from '../../../composables/useTranslations'
13
+
14
+ const { translate } = useTranslations()
15
+
13
16
  const pageBuilderService = getPageBuilder()
14
17
 
15
18
  // Use shared store instance
@@ -39,8 +42,8 @@ const handleDeleteComponentsFromDOM = function () {
39
42
  showModalDeleteAllComponents.value = true
40
43
  typeModal.value = 'delete'
41
44
  gridColumnModal.value = 2
42
- titleModal.value = 'Remove all Components'
43
- descriptionModal.value = 'Are you sure you want to remove all Components?'
45
+ titleModal.value = translate('Remove all Components')
46
+ descriptionModal.value = translate('Are you sure you want to remove all Components?')
44
47
  firstButtonModal.value = 'Close'
45
48
  secondButtonModal.value = null
46
49
  thirdButtonModal.value = 'Delete'
@@ -113,7 +116,7 @@ const openHTMLSettings = function () {
113
116
  }}
114
117
  </div>
115
118
  <div
116
- class="pbx-hidden pbx-text-xs pbx-h-8 lg:pbx-flex pbx-items-center pbx-font-normal w-max break-keep"
119
+ class="pbx-hidden pbx-text-xs pbx-h-8 lg:pbx-flex pbx-items-center pbx-font-normal pbx-w-max pbx-break-keep"
117
120
  >
118
121
  {{ getPageBuilderConfig.userForPageBuilder.name }}
119
122
  </div>
@@ -137,13 +140,13 @@ const openHTMLSettings = function () {
137
140
  class="pbx-text-white pbx-flex-shrink-0 pbx-h-8 pbx-w-8 pbx-rounded-full pbx-flex pbx-justify-center pbx-items-center pbx-text-xs pbx-rounded-l-full"
138
141
  >
139
142
  <img
140
- alt="avatar"
143
+ alt="{{ translate('avatar') }}"
141
144
  :src="`${getPageBuilderConfig.userForPageBuilder.image}`"
142
145
  class="pbx-block pbx-inset-0 pbx-object-top pbx-h-8 pbx-min-h-8 pbx-max-h-8 pbx-w-8 pbx-min-w-8 pbx-max-w-8 pbx-object-cover pbx-rounded-full"
143
146
  />
144
147
  </div>
145
148
  <div
146
- class="pbx-hidden pbx-text-xs pbx-h-8 lg:pbx-flex pbx-items-center pbx-font-normal w-max break-keep"
149
+ class="pbx-hidden pbx-text-xs pbx-h-8 lg:pbx-flex pbx-items-center pbx-font-normal pbx-w-max pbx-break-keep"
147
150
  >
148
151
  {{ getPageBuilderConfig.userForPageBuilder.name }}
149
152
  </div>
@@ -156,7 +159,7 @@ const openHTMLSettings = function () {
156
159
  <!-- Component Start -->
157
160
  <div class="pbx-relative pbx-group">
158
161
  <button type="button" class="pbx-mySecondaryButton pbx-font-normal pbx-text-xs">
159
- <span> Options </span>
162
+ <span> {{ translate('Options') }} </span>
160
163
  </button>
161
164
  <div
162
165
  class="pbx-absolute pbx-left-0 -pbx-ml-16 -pbx-mt-2 pbx-flex pbx-flex-col pbx-gap-3 pbx-shadow-lg pbx-bg-white pbx-w-max pbx-border-solid pbx-border pbx-border-gray-100 pbx-rounded-2xl pbx-transition-all pbx-duration-200 pbx-ease-out pbx-pt-4 pbx-pr-4 pbx-pb-4 pbx-pl-2 pbx-z-30 pbx-opacity-0 pbx-pointer-events-none pbx-translate-y-2 group-hover:pbx-opacity-100 group-hover:pbx-pointer-events-auto group-hover:pbx-translate-y-0"
@@ -172,7 +175,7 @@ const openHTMLSettings = function () {
172
175
  class="pbx-mySecondaryButton pbx-text-xs pbx-font-normal"
173
176
  type="button"
174
177
  >
175
- Config Overview
178
+ {{ translate('Config Overview') }}
176
179
  </button>
177
180
  <!-- Main Settings End -->
178
181
 
@@ -182,7 +185,7 @@ const openHTMLSettings = function () {
182
185
  class="pbx-mySecondaryButton pbx-text-xs pbx-font-normal"
183
186
  type="button"
184
187
  >
185
- HTML Overview
188
+ {{ translate('HTML Overview') }}
186
189
  </button>
187
190
  <!-- HTML Settings End -->
188
191
 
@@ -192,7 +195,7 @@ const openHTMLSettings = function () {
192
195
  class="pbx-myPrimaryDeleteButton pbx-text-xs pbx-font-normal"
193
196
  type="button"
194
197
  >
195
- Delete Layout
198
+ {{ translate('Delete Layout') }}
196
199
  </button>
197
200
  <!-- Delete Layout End -->
198
201
  </div>
@@ -231,7 +231,7 @@ onMounted(() => {
231
231
  type="button"
232
232
  class="pbx-myPrimaryTag"
233
233
  >
234
- <span class="material-symbols-outlined"> Save </span>
234
+ <span class="material-symbols-outlined"> save </span>
235
235
  <span>Save</span>
236
236
  </button>
237
237
  </div>