@myissue/vue-website-page-builder 3.2.32 → 3.2.35
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/dist/vue-website-page-builder.css +1 -1
- package/dist/vue-website-page-builder.js +6987 -8427
- package/dist/vue-website-page-builder.umd.cjs +54 -54
- package/package.json +1 -1
- package/src/Components/Homepage/Navbar.vue +1 -1
- package/src/Components/Loaders/FullScreenSpinner.vue +7 -11
- package/src/Components/Modals/BuilderComponents.vue +5 -22
- package/src/Components/Modals/DynamicModalBuilder.vue +3 -52
- package/src/Components/Modals/MediaLibraryModal.vue +17 -91
- package/src/Components/Modals/ModalBuilder.vue +47 -46
- package/src/Components/PageBuilder/DefaultComponents/DefaultBuilderComponents.vue +1 -1
- package/src/Components/PageBuilder/EditorMenu/Editables/EditGetElement.vue +0 -14
- package/src/Components/PageBuilder/EditorMenu/Editables/ImageEditor.vue +0 -14
- package/src/Components/PageBuilder/Settings/AdvancedPageBuilderSettings.vue +50 -57
- package/src/Components/PageBuilder/Settings/PageBuilderSettings.vue +351 -389
- package/src/Components/PageBuilder/ToolbarOption/ToolbarOption.vue +185 -0
- package/src/Components/TipTap/TipTapInput.vue +2 -2
- package/src/DemoComponents/DemoUnsplash.vue +25 -25
- package/src/PageBuilder/PageBuilder.vue +44 -39
- package/src/PageBuilder/Preview.vue +25 -9
- package/src/Components/Modals/PageBuilderPreviewModal.vue +0 -120
- package/src/Components/PageBuilder/DropdownsPlusToggles/OptionsDropdown.vue +0 -229
- package/src/Components/PageBuilder/Slidebars/SlideOverRight.vue +0 -91
- package/src/Components/PageBuilder/Slidebars/SlideOverRightParent.vue +0 -91
|
@@ -1,229 +0,0 @@
|
|
|
1
|
-
<script setup>
|
|
2
|
-
import { Menu, MenuButton, MenuItem, MenuItems } from '@headlessui/vue'
|
|
3
|
-
import PageBuilderClass from '../../../composables/PageBuilderClass'
|
|
4
|
-
import { ref, computed } from 'vue'
|
|
5
|
-
import PageBuilderPreviewModal from '../../Modals/PageBuilderPreviewModal.vue'
|
|
6
|
-
import Preview from '../../../PageBuilder/Preview.vue'
|
|
7
|
-
import SlideOverRight from '../Slidebars/SlideOverRight.vue'
|
|
8
|
-
import PageBuilderSettings from '../Settings/PageBuilderSettings.vue'
|
|
9
|
-
import DynamicModalBuilder from '../../Modals/DynamicModalBuilder.vue'
|
|
10
|
-
import { sharedPageBuilderStore } from '../../../stores/shared-store'
|
|
11
|
-
|
|
12
|
-
// Use shared store instance
|
|
13
|
-
const pageBuilderStateStore = sharedPageBuilderStore
|
|
14
|
-
|
|
15
|
-
const getConfigPageBuilder = computed(() => {
|
|
16
|
-
return pageBuilderStateStore.getConfigPageBuilder
|
|
17
|
-
})
|
|
18
|
-
|
|
19
|
-
const pageBuilderClass = new PageBuilderClass(pageBuilderStateStore)
|
|
20
|
-
const emit = defineEmits(['previewCurrentDesign'])
|
|
21
|
-
|
|
22
|
-
const showModalDeleteAllComponents = ref(false)
|
|
23
|
-
//
|
|
24
|
-
// use dynamic model
|
|
25
|
-
const typeModal = ref('')
|
|
26
|
-
const gridColumnModal = ref(Number(1))
|
|
27
|
-
const titleModal = ref('')
|
|
28
|
-
const descriptionModal = ref('')
|
|
29
|
-
const firstButtonModal = ref('')
|
|
30
|
-
const secondButtonModal = ref(null)
|
|
31
|
-
const thirdButtonModal = ref(null)
|
|
32
|
-
// set dynamic modal handle functions
|
|
33
|
-
const firstModalButtonFunctionDynamicModalBuilder = ref(null)
|
|
34
|
-
const secondModalButtonFunctionDynamicModalBuilder = ref(null)
|
|
35
|
-
const thirdModalButtonFunctionDynamicModalBuilder = ref(null)
|
|
36
|
-
|
|
37
|
-
const showSettingsSlideOverRight = ref(false)
|
|
38
|
-
const titleSettingsSlideOverRight = ref(null)
|
|
39
|
-
const openPageBuilderPreviewModal = ref(false)
|
|
40
|
-
const firstPageBuilderPreviewModalButton = ref(null)
|
|
41
|
-
|
|
42
|
-
const handlePageBuilderPreview = function () {
|
|
43
|
-
emit('previewCurrentDesign')
|
|
44
|
-
|
|
45
|
-
openPageBuilderPreviewModal.value = true
|
|
46
|
-
// handle click
|
|
47
|
-
firstPageBuilderPreviewModalButton.value = function () {
|
|
48
|
-
openPageBuilderPreviewModal.value = false
|
|
49
|
-
}
|
|
50
|
-
// end modal
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
const deleteAllComponents = function () {
|
|
54
|
-
showModalDeleteAllComponents.value = true
|
|
55
|
-
typeModal.value = 'delete'
|
|
56
|
-
gridColumnModal.value = 2
|
|
57
|
-
titleModal.value = 'Remove all Components'
|
|
58
|
-
descriptionModal.value = 'Are you sure you want to remove all Components?'
|
|
59
|
-
firstButtonModal.value = 'Close'
|
|
60
|
-
secondButtonModal.value = null
|
|
61
|
-
thirdButtonModal.value = 'Delete'
|
|
62
|
-
|
|
63
|
-
// handle click
|
|
64
|
-
firstModalButtonFunctionDynamicModalBuilder.value = function () {
|
|
65
|
-
showModalDeleteAllComponents.value = false
|
|
66
|
-
}
|
|
67
|
-
//
|
|
68
|
-
// handle click
|
|
69
|
-
thirdModalButtonFunctionDynamicModalBuilder.value = function () {
|
|
70
|
-
pageBuilderClass.deleteAllComponents()
|
|
71
|
-
pageBuilderClass.clearHtmlSelection()
|
|
72
|
-
if (
|
|
73
|
-
getConfigPageBuilder.value.updateOrCreate &&
|
|
74
|
-
typeof getConfigPageBuilder.value.updateOrCreate.formType === 'string'
|
|
75
|
-
) {
|
|
76
|
-
if (getConfigPageBuilder.value.updateOrCreate.formType === 'create') {
|
|
77
|
-
pageBuilderClass.removeItemComponentsLocalStorageCreate()
|
|
78
|
-
}
|
|
79
|
-
if (getConfigPageBuilder.value.updateOrCreate.formType === 'update') {
|
|
80
|
-
pageBuilderClass.removeItemComponentsLocalStorageUpdate()
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
// if(getConfigPageBuilder.updateOrCreate && getConfigPageBuilder.updateOrCreate){}
|
|
85
|
-
|
|
86
|
-
showModalDeleteAllComponents.value = false
|
|
87
|
-
}
|
|
88
|
-
// end modal
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
// handle slideover window
|
|
92
|
-
const handleSettingsSlideOver = function () {
|
|
93
|
-
// pageBuilderStateStore.setComponent(null)
|
|
94
|
-
|
|
95
|
-
titleSettingsSlideOverRight.value = 'Settings'
|
|
96
|
-
showSettingsSlideOverRight.value = true
|
|
97
|
-
}
|
|
98
|
-
// handle slideover window
|
|
99
|
-
const settingsSlideOverButton = function () {
|
|
100
|
-
// pageBuilderStateStore.setComponent(null)
|
|
101
|
-
|
|
102
|
-
showSettingsSlideOverRight.value = false
|
|
103
|
-
}
|
|
104
|
-
</script>
|
|
105
|
-
|
|
106
|
-
<template>
|
|
107
|
-
<div>
|
|
108
|
-
<SlideOverRight
|
|
109
|
-
:open="showSettingsSlideOverRight"
|
|
110
|
-
:title="titleSettingsSlideOverRight"
|
|
111
|
-
@slideOverButton="settingsSlideOverButton"
|
|
112
|
-
>
|
|
113
|
-
<PageBuilderSettings> </PageBuilderSettings>
|
|
114
|
-
</SlideOverRight>
|
|
115
|
-
<DynamicModalBuilder
|
|
116
|
-
:showDynamicModalBuilder="showModalDeleteAllComponents"
|
|
117
|
-
:type="typeModal"
|
|
118
|
-
:gridColumnAmount="gridColumnModal"
|
|
119
|
-
:title="titleModal"
|
|
120
|
-
:description="descriptionModal"
|
|
121
|
-
:firstButtonText="firstButtonModal"
|
|
122
|
-
:secondButtonText="secondButtonModal"
|
|
123
|
-
:thirdButtonText="thirdButtonModal"
|
|
124
|
-
@firstModalButtonFunctionDynamicModalBuilder="firstModalButtonFunctionDynamicModalBuilder"
|
|
125
|
-
@secondModalButtonFunctionDynamicModalBuilder="secondModalButtonFunctionDynamicModalBuilder"
|
|
126
|
-
@thirdModalButtonFunctionDynamicModalBuilder="thirdModalButtonFunctionDynamicModalBuilder"
|
|
127
|
-
>
|
|
128
|
-
<header></header>
|
|
129
|
-
<main></main>
|
|
130
|
-
</DynamicModalBuilder>
|
|
131
|
-
<Menu as="div" class="myPrimaryParagraph relative lg:inline-block hidden text-left mr-4">
|
|
132
|
-
<div>
|
|
133
|
-
<MenuButton
|
|
134
|
-
class="inline-flex items-center gap-2 justify-center w-full rounded-md border border-gray-300 shadow-sm pl-4 pr-6 py-2 bg-white text-gray-700 hover:bg-gray-50 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-offset-gray-100 focus:ring-emerald-600"
|
|
135
|
-
>
|
|
136
|
-
<span class="material-symbols-outlined text-[16px]"> keyboard_command_key </span>
|
|
137
|
-
<span class="text-sm"> Options </span>
|
|
138
|
-
</MenuButton>
|
|
139
|
-
</div>
|
|
140
|
-
|
|
141
|
-
<transition
|
|
142
|
-
enter-active-class="transition ease-out duration-100"
|
|
143
|
-
enter-from-class="transform opacity-0 scale-95"
|
|
144
|
-
enter-to-class="transform opacity-100 scale-100"
|
|
145
|
-
leave-active-class="transition ease-in duration-75"
|
|
146
|
-
leave-from-class="transform opacity-100 scale-100"
|
|
147
|
-
leave-to-class="transform opacity-0 scale-95"
|
|
148
|
-
>
|
|
149
|
-
<MenuItems
|
|
150
|
-
class="z-50 origin-top-right absolute right-0 mt-2 w-56 rounded-md shadow-lg bg-white ring-1 ring-black ring-opacity-5 divide-y divide-gray-100 focus:outline-none"
|
|
151
|
-
>
|
|
152
|
-
<div class="py-1">
|
|
153
|
-
<template
|
|
154
|
-
v-if="
|
|
155
|
-
getConfigPageBuilder &&
|
|
156
|
-
getConfigPageBuilder.userForPageBuilder &&
|
|
157
|
-
getConfigPageBuilder.userForPageBuilder.name
|
|
158
|
-
"
|
|
159
|
-
>
|
|
160
|
-
<MenuItem v-slot="{ active }">
|
|
161
|
-
<div
|
|
162
|
-
class="cursor-defualt"
|
|
163
|
-
:class="[
|
|
164
|
-
active ? 'bg-myPrimaryLightGrayColor text-gray-900' : 'text-gray-700',
|
|
165
|
-
'block px-4 py-2 break-all',
|
|
166
|
-
]"
|
|
167
|
-
>
|
|
168
|
-
<div class="flex items-center justify-left gap-2 text-sm">
|
|
169
|
-
<div>
|
|
170
|
-
{{ getConfigPageBuilder.userForPageBuilder.name }}
|
|
171
|
-
</div>
|
|
172
|
-
</div>
|
|
173
|
-
</div>
|
|
174
|
-
</MenuItem>
|
|
175
|
-
</template>
|
|
176
|
-
|
|
177
|
-
<p>
|
|
178
|
-
<MenuItem v-slot="{ active }">
|
|
179
|
-
<div
|
|
180
|
-
@click="handlePageBuilderPreview"
|
|
181
|
-
class="cursor-pointer"
|
|
182
|
-
:class="[
|
|
183
|
-
active ? 'bg-myPrimaryLightGrayColor text-gray-900' : 'text-gray-700',
|
|
184
|
-
'block px-4 py-2',
|
|
185
|
-
]"
|
|
186
|
-
>
|
|
187
|
-
<div class="flex items-center justify-left gap-2 text-sm">Preview</div>
|
|
188
|
-
</div>
|
|
189
|
-
</MenuItem>
|
|
190
|
-
|
|
191
|
-
<MenuItem v-slot="{ active }">
|
|
192
|
-
<div
|
|
193
|
-
@click="handleSettingsSlideOver"
|
|
194
|
-
class="cursor-pointer"
|
|
195
|
-
:class="[
|
|
196
|
-
active ? 'bg-myPrimaryLightGrayColor text-gray-900' : 'text-gray-700',
|
|
197
|
-
'block px-4 py-2',
|
|
198
|
-
]"
|
|
199
|
-
>
|
|
200
|
-
<div class="flex items-center justify-left gap-2 text-sm">Settings</div>
|
|
201
|
-
</div>
|
|
202
|
-
</MenuItem>
|
|
203
|
-
<MenuItem v-slot="{ active }">
|
|
204
|
-
<div
|
|
205
|
-
@click="deleteAllComponents"
|
|
206
|
-
class="cursor-pointer"
|
|
207
|
-
:class="[
|
|
208
|
-
active ? 'bg-myPrimaryLightGrayColor text-gray-900' : 'text-gray-700',
|
|
209
|
-
'block px-4 py-2',
|
|
210
|
-
]"
|
|
211
|
-
>
|
|
212
|
-
<div class="flex items-center justify-left gap-2 text-sm">
|
|
213
|
-
<span class="group-hover:text-white"> Delete Layout </span>
|
|
214
|
-
</div>
|
|
215
|
-
</div>
|
|
216
|
-
</MenuItem>
|
|
217
|
-
</p>
|
|
218
|
-
</div>
|
|
219
|
-
</MenuItems>
|
|
220
|
-
</transition>
|
|
221
|
-
</Menu>
|
|
222
|
-
<PageBuilderPreviewModal
|
|
223
|
-
:show="openPageBuilderPreviewModal"
|
|
224
|
-
@firstPageBuilderPreviewModalButton="firstPageBuilderPreviewModalButton"
|
|
225
|
-
>
|
|
226
|
-
<Preview></Preview>
|
|
227
|
-
</PageBuilderPreviewModal>
|
|
228
|
-
</div>
|
|
229
|
-
</template>
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
<script setup>
|
|
2
|
-
import {
|
|
3
|
-
Dialog,
|
|
4
|
-
DialogPanel,
|
|
5
|
-
DialogTitle,
|
|
6
|
-
TransitionChild,
|
|
7
|
-
TransitionRoot,
|
|
8
|
-
} from '@headlessui/vue';
|
|
9
|
-
|
|
10
|
-
// props
|
|
11
|
-
const props = defineProps({
|
|
12
|
-
open: {
|
|
13
|
-
required: true,
|
|
14
|
-
},
|
|
15
|
-
title: {
|
|
16
|
-
required: true,
|
|
17
|
-
},
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
// emit
|
|
21
|
-
const emit = defineEmits(['slideOverButton']);
|
|
22
|
-
|
|
23
|
-
// button
|
|
24
|
-
const slideOverButton = function () {
|
|
25
|
-
emit('slideOverButton');
|
|
26
|
-
};
|
|
27
|
-
</script>
|
|
28
|
-
|
|
29
|
-
<template>
|
|
30
|
-
<teleport to="body">
|
|
31
|
-
<TransitionRoot
|
|
32
|
-
as="template"
|
|
33
|
-
:show="open"
|
|
34
|
-
>
|
|
35
|
-
<Dialog
|
|
36
|
-
as="div"
|
|
37
|
-
class="relative z-40"
|
|
38
|
-
@click="$emit('slideOverButton')"
|
|
39
|
-
>
|
|
40
|
-
<div class="fixed inset-0" />
|
|
41
|
-
|
|
42
|
-
<div class="fixed inset-0 overflow-hidden">
|
|
43
|
-
<div class="absolute inset-0 overflow-hidden">
|
|
44
|
-
<div
|
|
45
|
-
class="pointer-events-none fixed inset-y-0 right-0 flex max-w-full pl-10 justify-end"
|
|
46
|
-
>
|
|
47
|
-
<TransitionChild
|
|
48
|
-
as="template"
|
|
49
|
-
enter="transform transition ease-in-out duration-200 sm:duration-200"
|
|
50
|
-
enter-from="translate-x-full"
|
|
51
|
-
enter-to="translate-x-0"
|
|
52
|
-
leave="transform transition ease-in-out duration-200 sm:duration-200"
|
|
53
|
-
leave-from="translate-x-0"
|
|
54
|
-
leave-to="translate-x-full"
|
|
55
|
-
>
|
|
56
|
-
<DialogPanel class="pointer-events-auto w-96 max-w-md">
|
|
57
|
-
<div
|
|
58
|
-
class="flex h-full flex-col overflow-y-scroll bg-white pt-8 pb-6 shadow-xl"
|
|
59
|
-
>
|
|
60
|
-
<div class="pl-4 pr-2">
|
|
61
|
-
<div class="flex items-center justify-between">
|
|
62
|
-
<DialogTitle class="myTertiaryHeader my-0">
|
|
63
|
-
{{ title }}
|
|
64
|
-
</DialogTitle>
|
|
65
|
-
<div class="ml-3 flex h-7 items-center">
|
|
66
|
-
<button
|
|
67
|
-
@click="$emit('slideOverButton')"
|
|
68
|
-
class="h-10 w-10 cursor-pointer rounded-full flex items-center border-none justify-center bg-gray-50 aspect-square hover:bg-myPrimaryLinkColor hover:text-white focus-visible:ring-0"
|
|
69
|
-
>
|
|
70
|
-
<span class="material-symbols-outlined">
|
|
71
|
-
close
|
|
72
|
-
</span>
|
|
73
|
-
</button>
|
|
74
|
-
</div>
|
|
75
|
-
</div>
|
|
76
|
-
<div class="md:mt-6 mt-4">
|
|
77
|
-
<!-- Replace with your content -->
|
|
78
|
-
<slot></slot>
|
|
79
|
-
<!-- /End replace -->
|
|
80
|
-
</div>
|
|
81
|
-
</div>
|
|
82
|
-
</div>
|
|
83
|
-
</DialogPanel>
|
|
84
|
-
</TransitionChild>
|
|
85
|
-
</div>
|
|
86
|
-
</div>
|
|
87
|
-
</div>
|
|
88
|
-
</Dialog>
|
|
89
|
-
</TransitionRoot>
|
|
90
|
-
</teleport>
|
|
91
|
-
</template>
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
<script setup>
|
|
2
|
-
import {
|
|
3
|
-
Dialog,
|
|
4
|
-
DialogPanel,
|
|
5
|
-
DialogTitle,
|
|
6
|
-
TransitionChild,
|
|
7
|
-
TransitionRoot,
|
|
8
|
-
} from '@headlessui/vue';
|
|
9
|
-
|
|
10
|
-
// props
|
|
11
|
-
const props = defineProps({
|
|
12
|
-
open: {
|
|
13
|
-
required: true,
|
|
14
|
-
},
|
|
15
|
-
title: {
|
|
16
|
-
required: true,
|
|
17
|
-
},
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
// emit
|
|
21
|
-
const emit = defineEmits(['slideOverButton']);
|
|
22
|
-
|
|
23
|
-
// button
|
|
24
|
-
const slideOverButton = function () {
|
|
25
|
-
emit('slideOverButton');
|
|
26
|
-
};
|
|
27
|
-
</script>
|
|
28
|
-
|
|
29
|
-
<template>
|
|
30
|
-
<teleport to="body">
|
|
31
|
-
<TransitionRoot
|
|
32
|
-
as="template"
|
|
33
|
-
:show="open"
|
|
34
|
-
>
|
|
35
|
-
<Dialog
|
|
36
|
-
as="div"
|
|
37
|
-
class="relative z-40"
|
|
38
|
-
@click="$emit('slideOverButton')"
|
|
39
|
-
>
|
|
40
|
-
<div class="fixed inset-0" />
|
|
41
|
-
|
|
42
|
-
<div class="fixed inset-0 overflow-hidden">
|
|
43
|
-
<div class="absolute inset-0 overflow-hidden">
|
|
44
|
-
<div
|
|
45
|
-
class="pointer-events-none fixed inset-y-0 right-0 flex max-w-full pl-10 justify-end"
|
|
46
|
-
>
|
|
47
|
-
<TransitionChild
|
|
48
|
-
as="template"
|
|
49
|
-
enter="transform transition ease-in-out duration-200 sm:duration-200"
|
|
50
|
-
enter-from="translate-x-full"
|
|
51
|
-
enter-to="translate-x-0"
|
|
52
|
-
leave="transform transition ease-in-out duration-200 sm:duration-200"
|
|
53
|
-
leave-from="translate-x-0"
|
|
54
|
-
leave-to="translate-x-full"
|
|
55
|
-
>
|
|
56
|
-
<DialogPanel class="pointer-events-auto w-96 max-w-md">
|
|
57
|
-
<div
|
|
58
|
-
class="flex h-full flex-col overflow-y-scroll bg-white pt-8 pb-6 shadow-xl"
|
|
59
|
-
>
|
|
60
|
-
<div class="pl-4 pr-2">
|
|
61
|
-
<div class="flex items-center justify-between">
|
|
62
|
-
<DialogTitle class="myTertiaryHeader my-0">
|
|
63
|
-
{{ title }}
|
|
64
|
-
</DialogTitle>
|
|
65
|
-
<div class="ml-3 flex h-7 items-center">
|
|
66
|
-
<button
|
|
67
|
-
@click="$emit('slideOverButton')"
|
|
68
|
-
class="h-10 w-10 cursor-pointer rounded-full flex items-center border-none justify-center bg-gray-50 aspect-square hover:bg-myPrimaryLinkColor hover:text-white focus-visible:ring-0"
|
|
69
|
-
>
|
|
70
|
-
<span class="material-symbols-outlined">
|
|
71
|
-
close
|
|
72
|
-
</span>
|
|
73
|
-
</button>
|
|
74
|
-
</div>
|
|
75
|
-
</div>
|
|
76
|
-
<div class="md:mt-6 mt-4">
|
|
77
|
-
<!-- Replace with your content -->
|
|
78
|
-
<slot></slot>
|
|
79
|
-
<!-- /End replace -->
|
|
80
|
-
</div>
|
|
81
|
-
</div>
|
|
82
|
-
</div>
|
|
83
|
-
</DialogPanel>
|
|
84
|
-
</TransitionChild>
|
|
85
|
-
</div>
|
|
86
|
-
</div>
|
|
87
|
-
</div>
|
|
88
|
-
</Dialog>
|
|
89
|
-
</TransitionRoot>
|
|
90
|
-
</teleport>
|
|
91
|
-
</template>
|