@myissue/vue-website-page-builder 3.3.67 → 3.3.70
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/README.md +1 -66
- package/dist/vue-website-page-builder.js +11674 -14514
- package/dist/vue-website-page-builder.umd.cjs +57 -78
- package/package.json +1 -1
- package/src/Components/PageBuilder/EditorMenu/Editables/BackgroundColorEditor.vue +2 -2
- package/src/Components/PageBuilder/EditorMenu/Editables/BorderRadius.vue +13 -19
- package/src/Components/PageBuilder/EditorMenu/Editables/Borders.vue +7 -9
- package/src/Components/PageBuilder/EditorMenu/Editables/ClassEditor.vue +7 -8
- package/src/Components/PageBuilder/EditorMenu/Editables/ManageBackgroundOpacity.vue +3 -7
- package/src/Components/PageBuilder/EditorMenu/Editables/ManageOpacity.vue +3 -5
- package/src/Components/PageBuilder/EditorMenu/Editables/Margin.vue +5 -9
- package/src/Components/PageBuilder/EditorMenu/Editables/OpacityEditor.vue +1 -1
- package/src/Components/PageBuilder/EditorMenu/Editables/Padding.vue +5 -9
- package/src/Components/PageBuilder/EditorMenu/Editables/StyleEditor.vue +7 -8
- package/src/Components/PageBuilder/EditorMenu/Editables/Typography.vue +9 -25
- package/src/Components/PageBuilder/EditorMenu/RightSidebarEditor.vue +12 -9
- package/src/Components/PageBuilder/Settings/PageBuilderSettings.vue +3 -3
- package/src/Components/PageBuilder/ToolbarOption/ToolbarOption.vue +4 -4
- package/src/PageBuilder/PageBuilder.vue +28 -75
- package/src/composables/builderInstance.ts +2 -3
- package/src/main.ts +5 -10
- package/src/services/PageBuilderService.ts +28 -120
- package/src/stores/page-builder-state.ts +6 -0
- package/src/tests/PageBuilderTest.vue +53 -21
- package/src/tests/pageBuilderService.test.ts +1 -7
- package/src/types/index.ts +1 -1
- package/src/i18n.ts +0 -28
- package/src/locales/ar.json +0 -136
- package/src/locales/de.json +0 -136
- package/src/locales/en.json +0 -136
- package/src/locales/es.json +0 -136
- package/src/locales/fr.json +0 -136
- package/src/locales/hi.json +0 -136
- package/src/locales/ja.json +0 -136
- package/src/locales/pt.json +0 -136
- package/src/locales/ru.json +0 -136
- package/src/locales/zh-Hans.json +0 -136
package/package.json
CHANGED
|
@@ -49,7 +49,7 @@ watch(
|
|
|
49
49
|
class="pbx-aspect-square pbx-w-6 pbx-h-6 pbx-border pbx-border-gray-800 pbx-rounded-sm"
|
|
50
50
|
:class="`pbx-bg-${backgroundColor?.replace('pbx-bg-', '')}`"
|
|
51
51
|
></div>
|
|
52
|
-
<div>
|
|
52
|
+
<div>Background Color</div>
|
|
53
53
|
</div>
|
|
54
54
|
|
|
55
55
|
<span v-if="globalPageLayout" class="material-symbols-outlined"> chevron_right </span>
|
|
@@ -99,7 +99,7 @@ watch(
|
|
|
99
99
|
>
|
|
100
100
|
<div v-if="color === 'none'" class="pbx-flex pbx-items-center">
|
|
101
101
|
<span class="material-symbols-outlined"> ev_shadow </span>
|
|
102
|
-
<span class="pbx-ml-3">
|
|
102
|
+
<span class="pbx-ml-3">Transparent</span>
|
|
103
103
|
</div>
|
|
104
104
|
<div v-if="color !== 'none'" class="pbx-flex pbx-items-center">
|
|
105
105
|
<div
|
|
@@ -73,22 +73,18 @@ watch(
|
|
|
73
73
|
|
|
74
74
|
<template>
|
|
75
75
|
<EditorAccordion>
|
|
76
|
-
<template #title>
|
|
76
|
+
<template #title>Border Radius</template>
|
|
77
77
|
<template #content>
|
|
78
|
-
<p class="pbx-myPrimaryParagraph pbx-font-medium pbx-py-0 pbx-my-4">
|
|
79
|
-
{{ $t('borderRadius.global') }}
|
|
80
|
-
</p>
|
|
78
|
+
<p class="pbx-myPrimaryParagraph pbx-font-medium pbx-py-0 pbx-my-4">Global</p>
|
|
81
79
|
<div class="pbx-my-2 pbx-py-2">
|
|
82
|
-
<label for="global-border-radius" class="pbx-myPrimaryInputLabel">
|
|
83
|
-
$t('borderRadius.label')
|
|
84
|
-
}}</label>
|
|
80
|
+
<label for="global-border-radius" class="pbx-myPrimaryInputLabel"> Border Radius </label>
|
|
85
81
|
<select
|
|
86
82
|
id="global-border-radius"
|
|
87
83
|
v-model="borderRadiusGlobal"
|
|
88
84
|
class="pbx-myPrimarySelect"
|
|
89
85
|
@change="pageBuilderService.handleBorderRadiusGlobal(borderRadiusGlobal)"
|
|
90
86
|
>
|
|
91
|
-
<option disabled value="">
|
|
87
|
+
<option disabled value="">Select</option>
|
|
92
88
|
<option
|
|
93
89
|
v-for="borderRadiusGlobal in tailwindBorderRadius.roundedGlobal"
|
|
94
90
|
:key="borderRadiusGlobal"
|
|
@@ -97,12 +93,10 @@ watch(
|
|
|
97
93
|
</option>
|
|
98
94
|
</select>
|
|
99
95
|
</div>
|
|
100
|
-
<p class="pbx-myPrimaryParagraph pbx-font-medium pbx-py-0 pbx-my-4">
|
|
101
|
-
{{ $t('borderRadius.specific') }}
|
|
102
|
-
</p>
|
|
96
|
+
<p class="pbx-myPrimaryParagraph pbx-font-medium pbx-py-0 pbx-my-4">Specific</p>
|
|
103
97
|
<div class="pbx-my-2 pbx-py-2">
|
|
104
98
|
<label for="border-radius-top-left" class="pbx-myPrimaryInputLabel">
|
|
105
|
-
|
|
99
|
+
Border Radius top left
|
|
106
100
|
</label>
|
|
107
101
|
<select
|
|
108
102
|
id="border-radius-top-left"
|
|
@@ -110,7 +104,7 @@ watch(
|
|
|
110
104
|
class="pbx-myPrimarySelect"
|
|
111
105
|
@change="pageBuilderService.handleBorderRadiusTopLeft(borderRadiusTopLeft)"
|
|
112
106
|
>
|
|
113
|
-
<option disabled value="">
|
|
107
|
+
<option disabled value="">Select</option>
|
|
114
108
|
<option
|
|
115
109
|
v-for="borderRadiusTopLeft in tailwindBorderRadius.roundedTopLeft"
|
|
116
110
|
:key="borderRadiusTopLeft"
|
|
@@ -121,7 +115,7 @@ watch(
|
|
|
121
115
|
</div>
|
|
122
116
|
<div class="pbx-my-2 pbx-py-2">
|
|
123
117
|
<label for="border-radius-top-right" class="pbx-myPrimaryInputLabel">
|
|
124
|
-
|
|
118
|
+
Border Radius top right
|
|
125
119
|
</label>
|
|
126
120
|
<select
|
|
127
121
|
id="border-radius-top-right"
|
|
@@ -129,7 +123,7 @@ watch(
|
|
|
129
123
|
class="pbx-myPrimarySelect"
|
|
130
124
|
@change="pageBuilderService.handleBorderRadiusTopRight(borderRadiusTopRight)"
|
|
131
125
|
>
|
|
132
|
-
<option disabled value="">
|
|
126
|
+
<option disabled value="">Select</option>
|
|
133
127
|
<option
|
|
134
128
|
v-for="borderRadiusTopRight in tailwindBorderRadius.roundedTopRight"
|
|
135
129
|
:key="borderRadiusTopRight"
|
|
@@ -140,7 +134,7 @@ watch(
|
|
|
140
134
|
</div>
|
|
141
135
|
<div class="pbx-my-2 pbx-py-2">
|
|
142
136
|
<label for="border-radius-bottom-left" class="pbx-myPrimaryInputLabel">
|
|
143
|
-
|
|
137
|
+
Border Radius bottom left
|
|
144
138
|
</label>
|
|
145
139
|
<select
|
|
146
140
|
id="border-radius-bottom-left"
|
|
@@ -148,7 +142,7 @@ watch(
|
|
|
148
142
|
class="pbx-myPrimarySelect"
|
|
149
143
|
@change="pageBuilderService.handleBorderRadiusBottomleft(borderRadiusBottomleft)"
|
|
150
144
|
>
|
|
151
|
-
<option disabled value="">
|
|
145
|
+
<option disabled value="">Select</option>
|
|
152
146
|
<option
|
|
153
147
|
v-for="borderRadiusBottomleft in tailwindBorderRadius.roundedBottomLeft"
|
|
154
148
|
:key="borderRadiusBottomleft"
|
|
@@ -159,7 +153,7 @@ watch(
|
|
|
159
153
|
</div>
|
|
160
154
|
<div class="pbx-my-2 pbx-py-2">
|
|
161
155
|
<label for="border-radius-bottom-right" class="pbx-myPrimaryInputLabel">
|
|
162
|
-
|
|
156
|
+
Border Radius bottom right
|
|
163
157
|
</label>
|
|
164
158
|
<select
|
|
165
159
|
id="border-radius-bottom-right"
|
|
@@ -167,7 +161,7 @@ watch(
|
|
|
167
161
|
class="pbx-myPrimarySelect"
|
|
168
162
|
@change="pageBuilderService.handleBorderRadiusBottomRight(borderRadiusBottomRight)"
|
|
169
163
|
>
|
|
170
|
-
<option disabled value="">
|
|
164
|
+
<option disabled value="">Select</option>
|
|
171
165
|
<option
|
|
172
166
|
v-for="borderRadiusBottomRight in tailwindBorderRadius.roundedBottomRight"
|
|
173
167
|
:key="borderRadiusBottomRight"
|
|
@@ -52,21 +52,19 @@ watch(
|
|
|
52
52
|
|
|
53
53
|
<template>
|
|
54
54
|
<EditorAccordion>
|
|
55
|
-
<template #title>
|
|
55
|
+
<template #title>Border Style, Width & Color</template>
|
|
56
56
|
<template #content>
|
|
57
|
-
<p class="pbx-myPrimaryParagraph pbx-font-medium pbx-py-0 pbx-my-4">
|
|
58
|
-
{{ $t('borders.border') }}
|
|
59
|
-
</p>
|
|
57
|
+
<p class="pbx-myPrimaryParagraph pbx-font-medium pbx-py-0 pbx-my-4">Border</p>
|
|
60
58
|
|
|
61
59
|
<div class="pbx-my-2 pbx-py-2">
|
|
62
|
-
<label for="border-style" class="pbx-myPrimaryInputLabel">
|
|
60
|
+
<label for="border-style" class="pbx-myPrimaryInputLabel"> Border Style </label>
|
|
63
61
|
<select
|
|
64
62
|
id="border-style"
|
|
65
63
|
v-model="borderStyle"
|
|
66
64
|
class="pbx-myPrimarySelect"
|
|
67
65
|
@change="pageBuilderService.handleBorderStyle(borderStyle)"
|
|
68
66
|
>
|
|
69
|
-
<option disabled value="">
|
|
67
|
+
<option disabled value="">Select</option>
|
|
70
68
|
<option
|
|
71
69
|
v-for="borderStyle in tailwindBorderStyleWidthPlusColor.borderStyle"
|
|
72
70
|
:key="borderStyle"
|
|
@@ -76,14 +74,14 @@ watch(
|
|
|
76
74
|
</select>
|
|
77
75
|
</div>
|
|
78
76
|
<div class="pbx-my-2 pbx-py-2">
|
|
79
|
-
<label for="border-width" class="pbx-myPrimaryInputLabel">
|
|
77
|
+
<label for="border-width" class="pbx-myPrimaryInputLabel"> Border Width </label>
|
|
80
78
|
<select
|
|
81
79
|
id="border-width"
|
|
82
80
|
v-model="borderWidth"
|
|
83
81
|
class="pbx-myPrimarySelect"
|
|
84
82
|
@change="pageBuilderService.handleBorderWidth(borderWidth)"
|
|
85
83
|
>
|
|
86
|
-
<option disabled value="">
|
|
84
|
+
<option disabled value="">Select</option>
|
|
87
85
|
<option
|
|
88
86
|
v-for="borderWidth in tailwindBorderStyleWidthPlusColor.borderWidth"
|
|
89
87
|
:key="borderWidth"
|
|
@@ -93,7 +91,7 @@ watch(
|
|
|
93
91
|
</select>
|
|
94
92
|
</div>
|
|
95
93
|
|
|
96
|
-
<label for="border-color" class="pbx-myPrimaryInputLabel">
|
|
94
|
+
<label for="border-color" class="pbx-myPrimaryInputLabel"> Border Color </label>
|
|
97
95
|
<Listbox as="div" v-model="borderColor">
|
|
98
96
|
<div class="pbx-relative pbx-mt-2">
|
|
99
97
|
<ListboxButton class="pbx-myPrimarySelect" id="border-color">
|
|
@@ -50,10 +50,11 @@ const handleAddClasses = async () => {
|
|
|
50
50
|
|
|
51
51
|
<template>
|
|
52
52
|
<EditorAccordion>
|
|
53
|
-
<template #title>
|
|
53
|
+
<template #title>Generated CSS</template>
|
|
54
54
|
<template #content>
|
|
55
55
|
<label class="pbx-myPrimaryInputLabel pbx-my-4">
|
|
56
|
-
|
|
56
|
+
This is the CSS applied by the builder. Add your own CSS and press Enter to apply it to the
|
|
57
|
+
selected element.
|
|
57
58
|
</label>
|
|
58
59
|
|
|
59
60
|
<div class="pbx-flex pbx-flex-row pbx-flex-wrap pbx-gap-2 pbx-mt-2 pbx-mb-4">
|
|
@@ -78,24 +79,22 @@ const handleAddClasses = async () => {
|
|
|
78
79
|
|
|
79
80
|
<div>
|
|
80
81
|
<label for="custom-css" class="pbx-myPrimaryInputLabel">
|
|
81
|
-
|
|
82
|
+
Add your CSS.
|
|
82
83
|
<br />
|
|
83
|
-
|
|
84
|
+
The pbx- prefix is added automatically.
|
|
84
85
|
</label>
|
|
85
86
|
<div class="pbx-flex pbx-gap-2 pbx-item-center">
|
|
86
87
|
<input
|
|
87
88
|
id="custom-css"
|
|
88
89
|
v-model="inputClass"
|
|
89
90
|
type="text"
|
|
90
|
-
|
|
91
|
+
placeholder="Type class"
|
|
91
92
|
@keydown.enter="handleAddClasses()"
|
|
92
93
|
autocomplete="off"
|
|
93
94
|
class="pbx-myPrimaryInput"
|
|
94
95
|
/>
|
|
95
96
|
|
|
96
|
-
<button @click="handleAddClasses" type="button" class="pbx-myPrimaryButton">
|
|
97
|
-
{{ $t('classEditor.addButton') }}
|
|
98
|
-
</button>
|
|
97
|
+
<button @click="handleAddClasses" type="button" class="pbx-myPrimaryButton">Add</button>
|
|
99
98
|
</div>
|
|
100
99
|
</div>
|
|
101
100
|
<p v-if="errorMessage" class="pbx-myPrimaryInputError">{{ errorMessage }}</p>
|
|
@@ -32,9 +32,7 @@ watch(
|
|
|
32
32
|
|
|
33
33
|
<template>
|
|
34
34
|
<div class="pbx-my-2 pbx-py-2">
|
|
35
|
-
<label for="bg-opacity" class="pbx-myPrimaryInputLabel">
|
|
36
|
-
$t('backgroundOpacity.label')
|
|
37
|
-
}}</label>
|
|
35
|
+
<label for="bg-opacity" class="pbx-myPrimaryInputLabel"> Background Opacity</label>
|
|
38
36
|
|
|
39
37
|
<Listbox as="div" v-model="opacityVueModel">
|
|
40
38
|
<div class="pbx-relative">
|
|
@@ -53,7 +51,7 @@ watch(
|
|
|
53
51
|
></div>
|
|
54
52
|
|
|
55
53
|
<span class="pbx-block pbx-truncate" :class="[opacityVueModel !== 'none' ? '' : '']">{{
|
|
56
|
-
opacityVueModel === 'none' ?
|
|
54
|
+
opacityVueModel === 'none' ? 'Transparent' : opacityVueModel
|
|
57
55
|
}}</span>
|
|
58
56
|
</span>
|
|
59
57
|
<span
|
|
@@ -99,9 +97,7 @@ watch(
|
|
|
99
97
|
class="pbx-aspect-square pbx-w-6 pbx-h-6 pbx-bg-gray-950"
|
|
100
98
|
:class="`${backgroundOpacity}`"
|
|
101
99
|
></div>
|
|
102
|
-
<span v-if="backgroundOpacity === 'none'" class="pbx-ml-3">
|
|
103
|
-
$t('backgroundOpacity.transparent')
|
|
104
|
-
}}</span>
|
|
100
|
+
<span v-if="backgroundOpacity === 'none'" class="pbx-ml-3">Transparent</span>
|
|
105
101
|
<span v-if="backgroundOpacity !== 'none'" class="pbx-ml-3">{{
|
|
106
102
|
backgroundOpacity
|
|
107
103
|
}}</span>
|
|
@@ -31,7 +31,7 @@ watch(
|
|
|
31
31
|
|
|
32
32
|
<template>
|
|
33
33
|
<div class="pbx-my-2 pbx-py-2">
|
|
34
|
-
<label for="default-opacity" class="pbx-myPrimaryInputLabel">
|
|
34
|
+
<label for="default-opacity" class="pbx-myPrimaryInputLabel"> Opacity</label>
|
|
35
35
|
|
|
36
36
|
<Listbox as="div" v-model="opacityVueModel">
|
|
37
37
|
<div class="pbx-relative">
|
|
@@ -50,7 +50,7 @@ watch(
|
|
|
50
50
|
></div>
|
|
51
51
|
|
|
52
52
|
<span class="pbx-block pbx-truncate" :class="[opacityVueModel !== 'none' ? '' : '']">{{
|
|
53
|
-
opacityVueModel === 'none' ?
|
|
53
|
+
opacityVueModel === 'none' ? 'Transparent' : opacityVueModel
|
|
54
54
|
}}</span>
|
|
55
55
|
</span>
|
|
56
56
|
<span
|
|
@@ -96,9 +96,7 @@ watch(
|
|
|
96
96
|
class="pbx-aspect-square pbx-w-6 pbx-h-6 pbx-bg-gray-950"
|
|
97
97
|
:class="`${elementOpacity}`"
|
|
98
98
|
></div>
|
|
99
|
-
<span v-if="elementOpacity === 'none'" class="pbx-ml-3">
|
|
100
|
-
$t('opacity.transparent')
|
|
101
|
-
}}</span>
|
|
99
|
+
<span v-if="elementOpacity === 'none'" class="pbx-ml-3">Transparent</span>
|
|
102
100
|
<span v-if="elementOpacity !== 'none'" class="pbx-ml-3">{{
|
|
103
101
|
elementOpacity
|
|
104
102
|
}}</span>
|
|
@@ -61,19 +61,17 @@ watch(
|
|
|
61
61
|
</script>
|
|
62
62
|
<template>
|
|
63
63
|
<EditorAccordion>
|
|
64
|
-
<template #title>
|
|
64
|
+
<template #title>Margin</template>
|
|
65
65
|
<template #content>
|
|
66
66
|
<div class="pbx-my-2 pbx-py-2">
|
|
67
|
-
<label for="vertical-margin" class="pbx-myPrimaryInputLabel">
|
|
68
|
-
$t('margin.vertical')
|
|
69
|
-
}}</label>
|
|
67
|
+
<label for="vertical-margin" class="pbx-myPrimaryInputLabel"> Vertical Margin </label>
|
|
70
68
|
<select
|
|
71
69
|
id="vertical-margin"
|
|
72
70
|
v-model="fontVerticalMargin"
|
|
73
71
|
class="pbx-myPrimarySelect"
|
|
74
72
|
@change="pageBuilderService.handleVerticalMargin(fontVerticalMargin)"
|
|
75
73
|
>
|
|
76
|
-
<option disabled value="">
|
|
74
|
+
<option disabled value="">Select</option>
|
|
77
75
|
<option
|
|
78
76
|
v-for="verticalMargin in tailwindPaddingPlusMargin.verticalMargin"
|
|
79
77
|
:key="verticalMargin"
|
|
@@ -84,16 +82,14 @@ watch(
|
|
|
84
82
|
</div>
|
|
85
83
|
<hr />
|
|
86
84
|
<div class="pbx-my-2 pbx-py-2">
|
|
87
|
-
<label for="horizontal-margin" class="pbx-myPrimaryInputLabel">
|
|
88
|
-
$t('margin.horizontal')
|
|
89
|
-
}}</label>
|
|
85
|
+
<label for="horizontal-margin" class="pbx-myPrimaryInputLabel"> Horizontal Margin </label>
|
|
90
86
|
<select
|
|
91
87
|
id="horizontal-margin"
|
|
92
88
|
v-model="fontHorizontalMargin"
|
|
93
89
|
class="pbx-myPrimarySelect"
|
|
94
90
|
@change="pageBuilderService.handleHorizontalMargin(fontHorizontalMargin)"
|
|
95
91
|
>
|
|
96
|
-
<option disabled value="">
|
|
92
|
+
<option disabled value="">Select</option>
|
|
97
93
|
<option
|
|
98
94
|
v-for="horizontalMargin in tailwindPaddingPlusMargin.horizontalMargin"
|
|
99
95
|
:key="horizontalMargin"
|
|
@@ -6,7 +6,7 @@ import ManageOpacity from './ManageOpacity.vue'
|
|
|
6
6
|
|
|
7
7
|
<template>
|
|
8
8
|
<EditorAccordion>
|
|
9
|
-
<template #title>
|
|
9
|
+
<template #title>Opacity & Transparency </template>
|
|
10
10
|
<template #content>
|
|
11
11
|
<ManageOpacity></ManageOpacity>
|
|
12
12
|
<hr />
|
|
@@ -61,19 +61,17 @@ watch(
|
|
|
61
61
|
</script>
|
|
62
62
|
<template>
|
|
63
63
|
<EditorAccordion>
|
|
64
|
-
<template #title>
|
|
64
|
+
<template #title>Padding</template>
|
|
65
65
|
<template #content>
|
|
66
66
|
<div class="pbx-my-2 pbx-py-2">
|
|
67
|
-
<label for="vertical-padding" class="pbx-myPrimaryInputLabel">
|
|
68
|
-
$t('padding.vertical')
|
|
69
|
-
}}</label>
|
|
67
|
+
<label for="vertical-padding" class="pbx-myPrimaryInputLabel"> Vertical Padding </label>
|
|
70
68
|
<select
|
|
71
69
|
id="vertical-padding"
|
|
72
70
|
v-model="fontVerticalPadding"
|
|
73
71
|
class="pbx-myPrimarySelect"
|
|
74
72
|
@change="pageBuilderService.handleVerticalPadding(fontVerticalPadding)"
|
|
75
73
|
>
|
|
76
|
-
<option disabled value="">
|
|
74
|
+
<option disabled value="">Select</option>
|
|
77
75
|
<option
|
|
78
76
|
v-for="verticalPadding in tailwindPaddingPlusMargin.verticalPadding"
|
|
79
77
|
:key="verticalPadding"
|
|
@@ -84,16 +82,14 @@ watch(
|
|
|
84
82
|
</div>
|
|
85
83
|
<hr />
|
|
86
84
|
<div class="pbx-my-2 pbx-py-2">
|
|
87
|
-
<label for="horizontal-padding" class="pbx-myPrimaryInputLabel">
|
|
88
|
-
$t('padding.horizontal')
|
|
89
|
-
}}</label>
|
|
85
|
+
<label for="horizontal-padding" class="pbx-myPrimaryInputLabel"> Horizontal Padding </label>
|
|
90
86
|
<select
|
|
91
87
|
id="horizontal-padding"
|
|
92
88
|
v-model="fontHorizontalPadding"
|
|
93
89
|
class="pbx-myPrimarySelect"
|
|
94
90
|
@change="pageBuilderService.handleHorizontalPadding(fontHorizontalPadding)"
|
|
95
91
|
>
|
|
96
|
-
<option disabled value="">
|
|
92
|
+
<option disabled value="">Select</option>
|
|
97
93
|
<option
|
|
98
94
|
v-for="horizontalPadding in tailwindPaddingPlusMargin.horizontalPadding"
|
|
99
95
|
:key="horizontalPadding"
|
|
@@ -56,10 +56,11 @@ const handleAddStyle = async () => {
|
|
|
56
56
|
|
|
57
57
|
<template>
|
|
58
58
|
<EditorAccordion>
|
|
59
|
-
<template #title>
|
|
59
|
+
<template #title>Inline Styles</template>
|
|
60
60
|
<template #content>
|
|
61
61
|
<label class="pbx-myPrimaryInputLabel pbx-my-4">
|
|
62
|
-
|
|
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.
|
|
63
64
|
</label>
|
|
64
65
|
|
|
65
66
|
<div class="pbx-flex pbx-flex-row pbx-flex-wrap pbx-gap-2 pbx-mt-2 pbx-mb-4">
|
|
@@ -82,14 +83,14 @@ const handleAddStyle = async () => {
|
|
|
82
83
|
|
|
83
84
|
<div>
|
|
84
85
|
<label for="custom-style-property" class="pbx-myPrimaryInputLabel">
|
|
85
|
-
|
|
86
|
+
Add your own style.
|
|
86
87
|
</label>
|
|
87
88
|
<div class="pbx-flex pbx-gap-2 pbx-flex-col pbx-item-center">
|
|
88
89
|
<input
|
|
89
90
|
id="custom-style-property"
|
|
90
91
|
v-model="inputProperty"
|
|
91
92
|
type="text"
|
|
92
|
-
|
|
93
|
+
placeholder="property"
|
|
93
94
|
@keydown.enter.prevent="handleEnterOnProperty"
|
|
94
95
|
autocomplete="off"
|
|
95
96
|
class="pbx-myPrimaryInput"
|
|
@@ -99,15 +100,13 @@ const handleAddStyle = async () => {
|
|
|
99
100
|
ref="valueInputRef"
|
|
100
101
|
v-model="inputValue"
|
|
101
102
|
type="text"
|
|
102
|
-
|
|
103
|
+
placeholder="value"
|
|
103
104
|
@keydown.enter="handleAddStyle"
|
|
104
105
|
autocomplete="off"
|
|
105
106
|
class="pbx-myPrimaryInput"
|
|
106
107
|
/>
|
|
107
108
|
|
|
108
|
-
<button @click="handleAddStyle" type="button" class="pbx-myPrimaryButton">
|
|
109
|
-
{{ $t('styleEditor.addButton') }}
|
|
110
|
-
</button>
|
|
109
|
+
<button @click="handleAddStyle" type="button" class="pbx-myPrimaryButton">Add</button>
|
|
111
110
|
</div>
|
|
112
111
|
</div>
|
|
113
112
|
<p v-if="errorMessage" class="pbx-myPrimaryInputError">{{ errorMessage }}</p>
|
|
@@ -99,17 +99,13 @@ watch(
|
|
|
99
99
|
|
|
100
100
|
<template>
|
|
101
101
|
<EditorAccordion>
|
|
102
|
-
<template #title>
|
|
102
|
+
<template #title> Typographies </template>
|
|
103
103
|
<template #content>
|
|
104
104
|
<!-- FONT SIZES -->
|
|
105
|
-
<p class="pbx-myPrimaryParagraph pbx-font-medium pbx-py-0 pbx-my-4">
|
|
106
|
-
{{ $t('typography.appearance') }}
|
|
107
|
-
</p>
|
|
105
|
+
<p class="pbx-myPrimaryParagraph pbx-font-medium pbx-py-0 pbx-my-4">Font Appearance</p>
|
|
108
106
|
<template v-if="false">
|
|
109
107
|
<div class="pbx-my-2 pbx-py-2">
|
|
110
|
-
<label for="font-base" class="pbx-myPrimaryInputLabel">
|
|
111
|
-
$t('typography.fontSize')
|
|
112
|
-
}}</label>
|
|
108
|
+
<label for="font-base" class="pbx-myPrimaryInputLabel"> Font Size </label>
|
|
113
109
|
<select
|
|
114
110
|
id="font-base"
|
|
115
111
|
v-model="fontBase"
|
|
@@ -124,9 +120,7 @@ watch(
|
|
|
124
120
|
</div>
|
|
125
121
|
</template>
|
|
126
122
|
<div class="pbx-my-2 pbx-py-2">
|
|
127
|
-
<label for="font-desktop" class="pbx-myPrimaryInputLabel">
|
|
128
|
-
$t('typography.fontSize')
|
|
129
|
-
}}</label>
|
|
123
|
+
<label for="font-desktop" class="pbx-myPrimaryInputLabel"> Font size </label>
|
|
130
124
|
<select
|
|
131
125
|
id="font-desktop"
|
|
132
126
|
v-model="fontDesktop"
|
|
@@ -141,9 +135,7 @@ watch(
|
|
|
141
135
|
</div>
|
|
142
136
|
<template v-if="false">
|
|
143
137
|
<div class="pbx-my-2 pbx-py-2">
|
|
144
|
-
<label for="font-tablet" class="pbx-myPrimaryInputLabel">
|
|
145
|
-
$t('typography.fontTabletSize')
|
|
146
|
-
}}</label>
|
|
138
|
+
<label for="font-tablet" class="pbx-myPrimaryInputLabel"> Font tablet size </label>
|
|
147
139
|
<select
|
|
148
140
|
id="font-tablet"
|
|
149
141
|
v-model="fontTablet"
|
|
@@ -157,9 +149,7 @@ watch(
|
|
|
157
149
|
</select>
|
|
158
150
|
</div>
|
|
159
151
|
<div class="pbx-my-2 pbx-py-2">
|
|
160
|
-
<label for="font-mobile" class="pbx-myPrimaryInputLabel">
|
|
161
|
-
$t('typography.fontMobileSize')
|
|
162
|
-
}}</label>
|
|
152
|
+
<label for="font-mobile" class="pbx-myPrimaryInputLabel"> Font small screens </label>
|
|
163
153
|
<select
|
|
164
154
|
id="font-mobile"
|
|
165
155
|
v-model="fontMobile"
|
|
@@ -176,9 +166,7 @@ watch(
|
|
|
176
166
|
<hr />
|
|
177
167
|
|
|
178
168
|
<div class="pbx-my-2 pbx-py-2">
|
|
179
|
-
<label for="font-weight" class="pbx-myPrimaryInputLabel">
|
|
180
|
-
$t('typography.fontWeight')
|
|
181
|
-
}}</label>
|
|
169
|
+
<label for="font-weight" class="pbx-myPrimaryInputLabel"> Font weight </label>
|
|
182
170
|
<select
|
|
183
171
|
id="font-weight"
|
|
184
172
|
v-model="fontWeight"
|
|
@@ -195,9 +183,7 @@ watch(
|
|
|
195
183
|
|
|
196
184
|
<!-- FONT FAMILY -->
|
|
197
185
|
<div class="pbx-my-2 pbx-py-2">
|
|
198
|
-
<label for="font-family" class="pbx-myPrimaryInputLabel">
|
|
199
|
-
$t('typography.fontFamily')
|
|
200
|
-
}}</label>
|
|
186
|
+
<label for="font-family" class="pbx-myPrimaryInputLabel"> Font family </label>
|
|
201
187
|
<select
|
|
202
188
|
id="font-family"
|
|
203
189
|
v-model="fontFamily"
|
|
@@ -213,9 +199,7 @@ watch(
|
|
|
213
199
|
<hr />
|
|
214
200
|
|
|
215
201
|
<div class="pbx-my-2 pbx-py-2">
|
|
216
|
-
<label for="font-style" class="pbx-myPrimaryInputLabel">
|
|
217
|
-
$t('typography.fontStyle')
|
|
218
|
-
}}</label>
|
|
202
|
+
<label for="font-style" class="pbx-myPrimaryInputLabel"> Font Style </label>
|
|
219
203
|
<select
|
|
220
204
|
id="font-style"
|
|
221
205
|
v-model="fontStyle"
|
|
@@ -133,7 +133,7 @@ const handleCloseGlobalPageStyles = async function () {
|
|
|
133
133
|
<span class="material-symbols-outlined"> close </span>
|
|
134
134
|
</button>
|
|
135
135
|
<p class="pbx-font-medium pbx-text-sm">
|
|
136
|
-
|
|
136
|
+
Editing
|
|
137
137
|
<span class="pbx-lowercase"><{{ elementTag }}></span>
|
|
138
138
|
</p>
|
|
139
139
|
</div>
|
|
@@ -181,15 +181,16 @@ const handleCloseGlobalPageStyles = async function () {
|
|
|
181
181
|
<!-- Global Page Styles -->
|
|
182
182
|
<article class="pbx-my-1 pbx-bg-white">
|
|
183
183
|
<EditorAccordion>
|
|
184
|
-
<template #title>
|
|
184
|
+
<template #title>Global Page Styles</template>
|
|
185
185
|
<template #content>
|
|
186
186
|
<label class="pbx-myPrimaryInputLabel pbx-my-4">
|
|
187
|
-
|
|
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.
|
|
188
189
|
</label>
|
|
189
190
|
|
|
190
191
|
<div class="pbx-mt-4">
|
|
191
192
|
<button @click="handleUpdatePageStyles" type="button" class="pbx-myPrimaryButton">
|
|
192
|
-
|
|
193
|
+
Update Page Styles
|
|
193
194
|
</button>
|
|
194
195
|
</div>
|
|
195
196
|
</template>
|
|
@@ -203,14 +204,15 @@ const handleCloseGlobalPageStyles = async function () {
|
|
|
203
204
|
class="pbx-my-1 pbx-bg-white"
|
|
204
205
|
>
|
|
205
206
|
<EditorAccordion>
|
|
206
|
-
<template #title>
|
|
207
|
+
<template #title>Download HTML</template>
|
|
207
208
|
<template #content>
|
|
208
209
|
<label class="pbx-myPrimaryInputLabel pbx-my-4">
|
|
209
|
-
|
|
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.
|
|
210
212
|
</label>
|
|
211
213
|
<div class="pbx-mt-4">
|
|
212
214
|
<button @click="handleDownloadHTML" type="button" class="pbx-myPrimaryButton">
|
|
213
|
-
|
|
215
|
+
Download HTML file
|
|
214
216
|
</button>
|
|
215
217
|
</div>
|
|
216
218
|
</template>
|
|
@@ -223,7 +225,7 @@ const handleCloseGlobalPageStyles = async function () {
|
|
|
223
225
|
maxWidth="md"
|
|
224
226
|
minHeight="pbx-min-h-[65vh] pbx-max-h-[65vh]"
|
|
225
227
|
:showModalBuilder="showModalGlobalPageStyles"
|
|
226
|
-
|
|
228
|
+
title="Global Page Styles"
|
|
227
229
|
@closeMainModalBuilder="handleCloseGlobalPageStyles"
|
|
228
230
|
>
|
|
229
231
|
<div class="pbx-flex pbx-flex-col pbx-gap-2 pbx-pt-4 pbx-pb-2">
|
|
@@ -242,7 +244,8 @@ const handleCloseGlobalPageStyles = async function () {
|
|
|
242
244
|
<div v-if="!isLoadingPageStyles && showModalGlobalPageStyles" class="pbx-pb-12">
|
|
243
245
|
<div>
|
|
244
246
|
<p class="pbx-myPrimaryParagraph">
|
|
245
|
-
|
|
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.
|
|
246
249
|
</p>
|
|
247
250
|
<article class="pbx-my-1 pbx-bg-gray-100">
|
|
248
251
|
<Typography></Typography>
|
|
@@ -299,7 +299,7 @@ const getPageBuilderConfig = computed(() => {
|
|
|
299
299
|
class="pbx-px-6 pbx-py-4 pbx-whitespace-nowrap pbx-text-sm pbx-text-gray-500"
|
|
300
300
|
>
|
|
301
301
|
<div class="pbx-min-w-[30rem] pbx-w-max">
|
|
302
|
-
{{ getPageBuilderConfig.userSettings.language
|
|
302
|
+
{{ getPageBuilderConfig.userSettings.language }}
|
|
303
303
|
</div>
|
|
304
304
|
</td>
|
|
305
305
|
</tr>
|
|
@@ -317,8 +317,8 @@ const getPageBuilderConfig = computed(() => {
|
|
|
317
317
|
class="pbx-inline-flex pbx-items-center pbx-px-2.5 pbx-py-0.5 pbx-rounded-full pbx-text-xs pbx-font-medium"
|
|
318
318
|
:class="
|
|
319
319
|
getPageBuilderConfig.userSettings.autoSave
|
|
320
|
-
? '
|
|
321
|
-
: '
|
|
320
|
+
? 'bg-green-100 text-green-800'
|
|
321
|
+
: 'bg-red-100 text-red-800'
|
|
322
322
|
"
|
|
323
323
|
>
|
|
324
324
|
{{
|
|
@@ -156,7 +156,7 @@ const openHTMLSettings = function () {
|
|
|
156
156
|
<!-- Component Start -->
|
|
157
157
|
<div class="pbx-relative pbx-group">
|
|
158
158
|
<button type="button" class="pbx-mySecondaryButton pbx-font-normal pbx-text-xs">
|
|
159
|
-
<span>
|
|
159
|
+
<span> Options </span>
|
|
160
160
|
</button>
|
|
161
161
|
<div
|
|
162
162
|
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 +172,7 @@ const openHTMLSettings = function () {
|
|
|
172
172
|
class="pbx-mySecondaryButton pbx-text-xs pbx-font-normal"
|
|
173
173
|
type="button"
|
|
174
174
|
>
|
|
175
|
-
|
|
175
|
+
Config Overview
|
|
176
176
|
</button>
|
|
177
177
|
<!-- Main Settings End -->
|
|
178
178
|
|
|
@@ -182,7 +182,7 @@ const openHTMLSettings = function () {
|
|
|
182
182
|
class="pbx-mySecondaryButton pbx-text-xs pbx-font-normal"
|
|
183
183
|
type="button"
|
|
184
184
|
>
|
|
185
|
-
|
|
185
|
+
HTML Overview
|
|
186
186
|
</button>
|
|
187
187
|
<!-- HTML Settings End -->
|
|
188
188
|
|
|
@@ -192,7 +192,7 @@ const openHTMLSettings = function () {
|
|
|
192
192
|
class="pbx-myPrimaryDeleteButton pbx-text-xs pbx-font-normal"
|
|
193
193
|
type="button"
|
|
194
194
|
>
|
|
195
|
-
|
|
195
|
+
Delete Layout
|
|
196
196
|
</button>
|
|
197
197
|
<!-- Delete Layout End -->
|
|
198
198
|
</div>
|