@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.
Files changed (24) hide show
  1. package/dist/vue-website-page-builder.css +1 -1
  2. package/dist/vue-website-page-builder.js +6987 -8427
  3. package/dist/vue-website-page-builder.umd.cjs +54 -54
  4. package/package.json +1 -1
  5. package/src/Components/Homepage/Navbar.vue +1 -1
  6. package/src/Components/Loaders/FullScreenSpinner.vue +7 -11
  7. package/src/Components/Modals/BuilderComponents.vue +5 -22
  8. package/src/Components/Modals/DynamicModalBuilder.vue +3 -52
  9. package/src/Components/Modals/MediaLibraryModal.vue +17 -91
  10. package/src/Components/Modals/ModalBuilder.vue +47 -46
  11. package/src/Components/PageBuilder/DefaultComponents/DefaultBuilderComponents.vue +1 -1
  12. package/src/Components/PageBuilder/EditorMenu/Editables/EditGetElement.vue +0 -14
  13. package/src/Components/PageBuilder/EditorMenu/Editables/ImageEditor.vue +0 -14
  14. package/src/Components/PageBuilder/Settings/AdvancedPageBuilderSettings.vue +50 -57
  15. package/src/Components/PageBuilder/Settings/PageBuilderSettings.vue +351 -389
  16. package/src/Components/PageBuilder/ToolbarOption/ToolbarOption.vue +185 -0
  17. package/src/Components/TipTap/TipTapInput.vue +2 -2
  18. package/src/DemoComponents/DemoUnsplash.vue +25 -25
  19. package/src/PageBuilder/PageBuilder.vue +44 -39
  20. package/src/PageBuilder/Preview.vue +25 -9
  21. package/src/Components/Modals/PageBuilderPreviewModal.vue +0 -120
  22. package/src/Components/PageBuilder/DropdownsPlusToggles/OptionsDropdown.vue +0 -229
  23. package/src/Components/PageBuilder/Slidebars/SlideOverRight.vue +0 -91
  24. 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>