@gem-sdk/pages 2.1.21 → 2.1.27-staging.22
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.
|
@@ -410,6 +410,7 @@ const Toolbar = ()=>{
|
|
|
410
410
|
if (!value || !currentComponentActive.current) {
|
|
411
411
|
return;
|
|
412
412
|
}
|
|
413
|
+
let isClickProcessing = false;
|
|
413
414
|
const selector = getSelectorComponent({
|
|
414
415
|
...currentComponentActive.current
|
|
415
416
|
});
|
|
@@ -418,6 +419,7 @@ const Toolbar = ()=>{
|
|
|
418
419
|
const $parents = $component?.querySelectorAll('[data-toolbar-parent]');
|
|
419
420
|
if ($parents.length) {
|
|
420
421
|
const onHover = ($parent)=>{
|
|
422
|
+
if (isClickProcessing) return;
|
|
421
423
|
const uid = $parent.getAttribute('data-parent-uid');
|
|
422
424
|
if (!uid) return;
|
|
423
425
|
const $parentComponents = document.body.querySelector('#storefront')?.querySelectorAll(`[data-uid="${uid}"]`);
|
|
@@ -446,6 +448,7 @@ const Toolbar = ()=>{
|
|
|
446
448
|
}
|
|
447
449
|
};
|
|
448
450
|
const onClick = async ($parent)=>{
|
|
451
|
+
isClickProcessing = true;
|
|
449
452
|
const uid = $parent.getAttribute('data-parent-uid');
|
|
450
453
|
if (!uid) return;
|
|
451
454
|
const isElementInsideProduct = async ()=>{
|
|
@@ -477,6 +480,9 @@ const Toolbar = ()=>{
|
|
|
477
480
|
});
|
|
478
481
|
outHover($parent);
|
|
479
482
|
window.dispatchEvent(event);
|
|
483
|
+
setTimeout(()=>{
|
|
484
|
+
isClickProcessing = false;
|
|
485
|
+
}, 0);
|
|
480
486
|
};
|
|
481
487
|
$parents.forEach(($parent)=>{
|
|
482
488
|
$parent.addEventListener('mouseover', ()=>onHover($parent));
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
var core = require('@gem-sdk/core');
|
|
4
5
|
|
|
5
6
|
const DropElement = ()=>{
|
|
7
|
+
const editingPageType = core.useShopStore((s)=>s.pageType);
|
|
6
8
|
const dispatchEventBuildWithSectionActiveTab = (value)=>{
|
|
7
9
|
const event = new CustomEvent('editor:sidebar:build-with-section-active-tab', {
|
|
8
10
|
bubbles: true,
|
|
@@ -12,6 +14,15 @@ const DropElement = ()=>{
|
|
|
12
14
|
});
|
|
13
15
|
window.dispatchEvent(event);
|
|
14
16
|
};
|
|
17
|
+
const dispatchEventBuildWithTemplateActiveTab = (value)=>{
|
|
18
|
+
const event = new CustomEvent('editor:sidebar:build-with-template-active-tab', {
|
|
19
|
+
bubbles: true,
|
|
20
|
+
detail: {
|
|
21
|
+
value
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
window.dispatchEvent(event);
|
|
25
|
+
};
|
|
15
26
|
const handleClickGenerate = (e)=>{
|
|
16
27
|
const event = new CustomEvent('editor:sidebar:click-img-to-layout-gallery-btn', e);
|
|
17
28
|
window.dispatchEvent(event);
|
|
@@ -100,22 +111,30 @@ const DropElement = ()=>{
|
|
|
100
111
|
children: [
|
|
101
112
|
/*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
102
113
|
className: "gp-text-16 gp-font-medium gp-mb-4 gp-text-[#212121]",
|
|
103
|
-
children:
|
|
114
|
+
children: editingPageType === 'GP_FUNNEL_PAGE' ? 'Start building with Sections/Elements or' : 'Start with Sections from sidebar'
|
|
104
115
|
}),
|
|
105
116
|
/*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
106
|
-
className: "gp-flex gp-
|
|
117
|
+
className: "gp-flex gp-gap-3 gp-justify-between",
|
|
107
118
|
children: [
|
|
108
119
|
/*#__PURE__*/ jsxRuntime.jsx("button", {
|
|
109
120
|
"data-button-add-section": true,
|
|
110
|
-
onClick: ()=>
|
|
111
|
-
|
|
112
|
-
|
|
121
|
+
onClick: ()=>{
|
|
122
|
+
if (editingPageType === 'GP_FUNNEL_PAGE') {
|
|
123
|
+
dispatchEventBuildWithTemplateActiveTab('funnelExisting');
|
|
124
|
+
} else dispatchEventBuildWithSectionActiveTab(true);
|
|
125
|
+
},
|
|
126
|
+
className: "gp-flex gp-h-[40px] gp-px-6 gp-items-center gp-font-medium gp-justify-center gp-rounded-[8px] gp-bg-[#1C1C1C] gp-text-[14px] gp-text-white hover:gp-bg-[#3B3B3B]",
|
|
127
|
+
children: editingPageType === 'GP_FUNNEL_PAGE' ? 'Use existing page designs' : 'Add sections'
|
|
113
128
|
}),
|
|
114
129
|
/*#__PURE__*/ jsxRuntime.jsx("button", {
|
|
115
130
|
"data-button-add-elements": true,
|
|
116
|
-
onClick: ()=>
|
|
117
|
-
|
|
118
|
-
|
|
131
|
+
onClick: ()=>{
|
|
132
|
+
if (editingPageType === 'GP_FUNNEL_PAGE') {
|
|
133
|
+
dispatchEventBuildWithTemplateActiveTab('templates');
|
|
134
|
+
} else dispatchEventBuildWithSectionActiveTab(false);
|
|
135
|
+
},
|
|
136
|
+
className: "gp-flex gp-h-[40px] gp-px-6 gp-items-center gp-font-medium gp-justify-center gp-rounded-[8px] gp-bg-[#f4f4f4] gp-text-[14px] gp-text-[#212121] hover:gp-bg-[#E2E2E2]",
|
|
137
|
+
children: editingPageType === 'GP_FUNNEL_PAGE' ? 'Explore templates' : 'Add elements'
|
|
119
138
|
})
|
|
120
139
|
]
|
|
121
140
|
}),
|
|
@@ -406,6 +406,7 @@ const Toolbar = ()=>{
|
|
|
406
406
|
if (!value || !currentComponentActive.current) {
|
|
407
407
|
return;
|
|
408
408
|
}
|
|
409
|
+
let isClickProcessing = false;
|
|
409
410
|
const selector = getSelectorComponent({
|
|
410
411
|
...currentComponentActive.current
|
|
411
412
|
});
|
|
@@ -414,6 +415,7 @@ const Toolbar = ()=>{
|
|
|
414
415
|
const $parents = $component?.querySelectorAll('[data-toolbar-parent]');
|
|
415
416
|
if ($parents.length) {
|
|
416
417
|
const onHover = ($parent)=>{
|
|
418
|
+
if (isClickProcessing) return;
|
|
417
419
|
const uid = $parent.getAttribute('data-parent-uid');
|
|
418
420
|
if (!uid) return;
|
|
419
421
|
const $parentComponents = document.body.querySelector('#storefront')?.querySelectorAll(`[data-uid="${uid}"]`);
|
|
@@ -442,6 +444,7 @@ const Toolbar = ()=>{
|
|
|
442
444
|
}
|
|
443
445
|
};
|
|
444
446
|
const onClick = async ($parent)=>{
|
|
447
|
+
isClickProcessing = true;
|
|
445
448
|
const uid = $parent.getAttribute('data-parent-uid');
|
|
446
449
|
if (!uid) return;
|
|
447
450
|
const isElementInsideProduct = async ()=>{
|
|
@@ -473,6 +476,9 @@ const Toolbar = ()=>{
|
|
|
473
476
|
});
|
|
474
477
|
outHover($parent);
|
|
475
478
|
window.dispatchEvent(event);
|
|
479
|
+
setTimeout(()=>{
|
|
480
|
+
isClickProcessing = false;
|
|
481
|
+
}, 0);
|
|
476
482
|
};
|
|
477
483
|
$parents.forEach(($parent)=>{
|
|
478
484
|
$parent.addEventListener('mouseover', ()=>onHover($parent));
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { useShopStore } from '@gem-sdk/core';
|
|
2
3
|
|
|
3
4
|
const DropElement = ()=>{
|
|
5
|
+
const editingPageType = useShopStore((s)=>s.pageType);
|
|
4
6
|
const dispatchEventBuildWithSectionActiveTab = (value)=>{
|
|
5
7
|
const event = new CustomEvent('editor:sidebar:build-with-section-active-tab', {
|
|
6
8
|
bubbles: true,
|
|
@@ -10,6 +12,15 @@ const DropElement = ()=>{
|
|
|
10
12
|
});
|
|
11
13
|
window.dispatchEvent(event);
|
|
12
14
|
};
|
|
15
|
+
const dispatchEventBuildWithTemplateActiveTab = (value)=>{
|
|
16
|
+
const event = new CustomEvent('editor:sidebar:build-with-template-active-tab', {
|
|
17
|
+
bubbles: true,
|
|
18
|
+
detail: {
|
|
19
|
+
value
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
window.dispatchEvent(event);
|
|
23
|
+
};
|
|
13
24
|
const handleClickGenerate = (e)=>{
|
|
14
25
|
const event = new CustomEvent('editor:sidebar:click-img-to-layout-gallery-btn', e);
|
|
15
26
|
window.dispatchEvent(event);
|
|
@@ -98,22 +109,30 @@ const DropElement = ()=>{
|
|
|
98
109
|
children: [
|
|
99
110
|
/*#__PURE__*/ jsx("div", {
|
|
100
111
|
className: "gp-text-16 gp-font-medium gp-mb-4 gp-text-[#212121]",
|
|
101
|
-
children:
|
|
112
|
+
children: editingPageType === 'GP_FUNNEL_PAGE' ? 'Start building with Sections/Elements or' : 'Start with Sections from sidebar'
|
|
102
113
|
}),
|
|
103
114
|
/*#__PURE__*/ jsxs("div", {
|
|
104
|
-
className: "gp-flex gp-
|
|
115
|
+
className: "gp-flex gp-gap-3 gp-justify-between",
|
|
105
116
|
children: [
|
|
106
117
|
/*#__PURE__*/ jsx("button", {
|
|
107
118
|
"data-button-add-section": true,
|
|
108
|
-
onClick: ()=>
|
|
109
|
-
|
|
110
|
-
|
|
119
|
+
onClick: ()=>{
|
|
120
|
+
if (editingPageType === 'GP_FUNNEL_PAGE') {
|
|
121
|
+
dispatchEventBuildWithTemplateActiveTab('funnelExisting');
|
|
122
|
+
} else dispatchEventBuildWithSectionActiveTab(true);
|
|
123
|
+
},
|
|
124
|
+
className: "gp-flex gp-h-[40px] gp-px-6 gp-items-center gp-font-medium gp-justify-center gp-rounded-[8px] gp-bg-[#1C1C1C] gp-text-[14px] gp-text-white hover:gp-bg-[#3B3B3B]",
|
|
125
|
+
children: editingPageType === 'GP_FUNNEL_PAGE' ? 'Use existing page designs' : 'Add sections'
|
|
111
126
|
}),
|
|
112
127
|
/*#__PURE__*/ jsx("button", {
|
|
113
128
|
"data-button-add-elements": true,
|
|
114
|
-
onClick: ()=>
|
|
115
|
-
|
|
116
|
-
|
|
129
|
+
onClick: ()=>{
|
|
130
|
+
if (editingPageType === 'GP_FUNNEL_PAGE') {
|
|
131
|
+
dispatchEventBuildWithTemplateActiveTab('templates');
|
|
132
|
+
} else dispatchEventBuildWithSectionActiveTab(false);
|
|
133
|
+
},
|
|
134
|
+
className: "gp-flex gp-h-[40px] gp-px-6 gp-items-center gp-font-medium gp-justify-center gp-rounded-[8px] gp-bg-[#f4f4f4] gp-text-[14px] gp-text-[#212121] hover:gp-bg-[#E2E2E2]",
|
|
135
|
+
children: editingPageType === 'GP_FUNNEL_PAGE' ? 'Explore templates' : 'Add elements'
|
|
117
136
|
})
|
|
118
137
|
]
|
|
119
138
|
}),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gem-sdk/pages",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.27-staging.22",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "dist/cjs/index.js",
|
|
@@ -26,10 +26,10 @@
|
|
|
26
26
|
"next": "latest"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@gem-sdk/core": "2.1.21",
|
|
30
|
-
"@gem-sdk/plugin-cookie-bar": "2.1.0",
|
|
31
|
-
"@gem-sdk/plugin-quick-view": "2.1.0",
|
|
32
|
-
"@gem-sdk/plugin-sticky-add-to-cart": "2.1.0"
|
|
29
|
+
"@gem-sdk/core": "2.1.27-staging.21",
|
|
30
|
+
"@gem-sdk/plugin-cookie-bar": "2.1.27-staging.0",
|
|
31
|
+
"@gem-sdk/plugin-quick-view": "2.1.27-staging.0",
|
|
32
|
+
"@gem-sdk/plugin-sticky-add-to-cart": "2.1.27-staging.0"
|
|
33
33
|
},
|
|
34
34
|
"peerDependencies": {
|
|
35
35
|
"next": ">=13"
|