@gem-sdk/pages 2.1.27-staging.0 → 2.1.42

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,10 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  var jsxRuntime = require('react/jsx-runtime');
4
- var core = require('@gem-sdk/core');
5
4
 
6
5
  const DropElement = ()=>{
7
- const editingPageType = core.useShopStore((s)=>s.pageType);
8
6
  const dispatchEventBuildWithSectionActiveTab = (value)=>{
9
7
  const event = new CustomEvent('editor:sidebar:build-with-section-active-tab', {
10
8
  bubbles: true,
@@ -14,15 +12,6 @@ const DropElement = ()=>{
14
12
  });
15
13
  window.dispatchEvent(event);
16
14
  };
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
- };
26
15
  const handleClickGenerate = (e)=>{
27
16
  const event = new CustomEvent('editor:sidebar:click-img-to-layout-gallery-btn', e);
28
17
  window.dispatchEvent(event);
@@ -111,30 +100,22 @@ const DropElement = ()=>{
111
100
  children: [
112
101
  /*#__PURE__*/ jsxRuntime.jsx("div", {
113
102
  className: "gp-text-16 gp-font-medium gp-mb-4 gp-text-[#212121]",
114
- children: editingPageType === 'GP_FUNNEL_PAGE' ? 'Start building with Sections/Elements or' : 'Start with Sections from sidebar'
103
+ children: "Start with Sections from sidebar"
115
104
  }),
116
105
  /*#__PURE__*/ jsxRuntime.jsxs("div", {
117
- className: "gp-flex gp-gap-3 gp-justify-between",
106
+ className: "gp-flex gp-w-[291px] gp-justify-between",
118
107
  children: [
119
108
  /*#__PURE__*/ jsxRuntime.jsx("button", {
120
109
  "data-button-add-section": true,
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'
110
+ onClick: ()=>dispatchEventBuildWithSectionActiveTab(true),
111
+ className: "gp-flex gp-h-[40px] gp-w-[136px] 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]",
112
+ children: "Add sections"
128
113
  }),
129
114
  /*#__PURE__*/ jsxRuntime.jsx("button", {
130
115
  "data-button-add-elements": true,
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'
116
+ onClick: ()=>dispatchEventBuildWithSectionActiveTab(false),
117
+ className: "gp-flex gp-h-[40px] gp-w-[136px] 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]",
118
+ children: "Add elements"
138
119
  })
139
120
  ]
140
121
  }),
@@ -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,8 +1,6 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
- import { useShopStore } from '@gem-sdk/core';
3
2
 
4
3
  const DropElement = ()=>{
5
- const editingPageType = useShopStore((s)=>s.pageType);
6
4
  const dispatchEventBuildWithSectionActiveTab = (value)=>{
7
5
  const event = new CustomEvent('editor:sidebar:build-with-section-active-tab', {
8
6
  bubbles: true,
@@ -12,15 +10,6 @@ const DropElement = ()=>{
12
10
  });
13
11
  window.dispatchEvent(event);
14
12
  };
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
- };
24
13
  const handleClickGenerate = (e)=>{
25
14
  const event = new CustomEvent('editor:sidebar:click-img-to-layout-gallery-btn', e);
26
15
  window.dispatchEvent(event);
@@ -109,30 +98,22 @@ const DropElement = ()=>{
109
98
  children: [
110
99
  /*#__PURE__*/ jsx("div", {
111
100
  className: "gp-text-16 gp-font-medium gp-mb-4 gp-text-[#212121]",
112
- children: editingPageType === 'GP_FUNNEL_PAGE' ? 'Start building with Sections/Elements or' : 'Start with Sections from sidebar'
101
+ children: "Start with Sections from sidebar"
113
102
  }),
114
103
  /*#__PURE__*/ jsxs("div", {
115
- className: "gp-flex gp-gap-3 gp-justify-between",
104
+ className: "gp-flex gp-w-[291px] gp-justify-between",
116
105
  children: [
117
106
  /*#__PURE__*/ jsx("button", {
118
107
  "data-button-add-section": true,
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'
108
+ onClick: ()=>dispatchEventBuildWithSectionActiveTab(true),
109
+ className: "gp-flex gp-h-[40px] gp-w-[136px] 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]",
110
+ children: "Add sections"
126
111
  }),
127
112
  /*#__PURE__*/ jsx("button", {
128
113
  "data-button-add-elements": true,
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'
114
+ onClick: ()=>dispatchEventBuildWithSectionActiveTab(false),
115
+ className: "gp-flex gp-h-[40px] gp-w-[136px] 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]",
116
+ children: "Add elements"
136
117
  })
137
118
  ]
138
119
  }),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gem-sdk/pages",
3
- "version": "2.1.27-staging.0",
3
+ "version": "2.1.42",
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.27-staging.0",
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"
29
+ "@gem-sdk/core": "2.1.40",
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"
33
33
  },
34
34
  "peerDependencies": {
35
35
  "next": ">=13"