@gem-sdk/core 1.53.0-dev.188 → 1.53.0-dev.190

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.
@@ -25,6 +25,16 @@ const createProductStoreProvider = (data)=>zustand.createStore((set, get)=>({
25
25
  };
26
26
  });
27
27
  },
28
+ setShouldRequireUploadMessage: (value)=>{
29
+ set({
30
+ shouldRequireUploadMessage: value
31
+ });
32
+ },
33
+ setRequireUpload: (value)=>{
34
+ set({
35
+ requireUpload: value
36
+ });
37
+ },
28
38
  addProperty: (data)=>{
29
39
  const properties = get().properties;
30
40
  if (!properties?.some((v)=>v.key === data.key)) {
@@ -26,14 +26,19 @@ const useInteraction = ()=>{
26
26
  return element?.querySelector(selector);
27
27
  }
28
28
  }
29
+ const handleOnListener = (element, event, callback)=>{
30
+ const eventListener = (e)=>{
31
+ const customEvent = e;
32
+ const params = customEvent.detail;
33
+ if (callback) callback(params);
34
+ };
35
+ element.addEventListener(event, eventListener);
36
+ return ()=>element.removeEventListener(event, eventListener);
37
+ };
29
38
  const onListener = ({ event, selector, elementRef }, callback)=>{
30
39
  const element = findElementIncludingSelf(elementRef?.current || ref.current || document, selector);
31
40
  if (!element) return;
32
- element.addEventListener(event, (e)=>{
33
- const event = e;
34
- const params = event.detail;
35
- if (callback) callback(params);
36
- });
41
+ return handleOnListener(element, event, callback);
37
42
  };
38
43
  const trigger = ({ event, data, selector, element: elementParam })=>{
39
44
  const element = elementParam || document.querySelector(selector);
@@ -23,6 +23,7 @@ exports.InteractionTargetEvent = void 0;
23
23
  InteractionTargetEvent[InteractionTargetEvent['gp:toggle-popup-open'] = 18] = 'gp:toggle-popup-open';
24
24
  InteractionTargetEvent[InteractionTargetEvent['gp:show-or-hide'] = 19] = 'gp:show-or-hide';
25
25
  InteractionTargetEvent[InteractionTargetEvent['gp:change-banner'] = 20] = 'gp:change-banner';
26
+ InteractionTargetEvent[InteractionTargetEvent['gp:change-open-tab'] = 21] = 'gp:change-open-tab';
26
27
  })(exports.InteractionTargetEvent || (exports.InteractionTargetEvent = {}));
27
28
  exports.InteractionTriggerEvent = void 0;
28
29
  (function(InteractionTriggerEvent) {
@@ -23,6 +23,16 @@ const createProductStoreProvider = (data)=>createStore((set, get)=>({
23
23
  };
24
24
  });
25
25
  },
26
+ setShouldRequireUploadMessage: (value)=>{
27
+ set({
28
+ shouldRequireUploadMessage: value
29
+ });
30
+ },
31
+ setRequireUpload: (value)=>{
32
+ set({
33
+ requireUpload: value
34
+ });
35
+ },
26
36
  addProperty: (data)=>{
27
37
  const properties = get().properties;
28
38
  if (!properties?.some((v)=>v.key === data.key)) {
@@ -24,14 +24,19 @@ const useInteraction = ()=>{
24
24
  return element?.querySelector(selector);
25
25
  }
26
26
  }
27
+ const handleOnListener = (element, event, callback)=>{
28
+ const eventListener = (e)=>{
29
+ const customEvent = e;
30
+ const params = customEvent.detail;
31
+ if (callback) callback(params);
32
+ };
33
+ element.addEventListener(event, eventListener);
34
+ return ()=>element.removeEventListener(event, eventListener);
35
+ };
27
36
  const onListener = ({ event, selector, elementRef }, callback)=>{
28
37
  const element = findElementIncludingSelf(elementRef?.current || ref.current || document, selector);
29
38
  if (!element) return;
30
- element.addEventListener(event, (e)=>{
31
- const event = e;
32
- const params = event.detail;
33
- if (callback) callback(params);
34
- });
39
+ return handleOnListener(element, event, callback);
35
40
  };
36
41
  const trigger = ({ event, data, selector, element: elementParam })=>{
37
42
  const element = elementParam || document.querySelector(selector);
@@ -21,6 +21,7 @@ var InteractionTargetEvent;
21
21
  InteractionTargetEvent[InteractionTargetEvent['gp:toggle-popup-open'] = 18] = 'gp:toggle-popup-open';
22
22
  InteractionTargetEvent[InteractionTargetEvent['gp:show-or-hide'] = 19] = 'gp:show-or-hide';
23
23
  InteractionTargetEvent[InteractionTargetEvent['gp:change-banner'] = 20] = 'gp:change-banner';
24
+ InteractionTargetEvent[InteractionTargetEvent['gp:change-open-tab'] = 21] = 'gp:change-open-tab';
24
25
  })(InteractionTargetEvent || (InteractionTargetEvent = {}));
25
26
  var InteractionTriggerEvent;
26
27
  (function(InteractionTriggerEvent) {
@@ -8780,7 +8780,8 @@ declare enum InteractionTargetEvent {
8780
8780
  'gp:change-text-value' = 17,
8781
8781
  'gp:toggle-popup-open' = 18,
8782
8782
  'gp:show-or-hide' = 19,
8783
- 'gp:change-banner' = 20
8783
+ 'gp:change-banner' = 20,
8784
+ 'gp:change-open-tab' = 21
8784
8785
  }
8785
8786
  declare enum InteractionTriggerEvent {
8786
8787
  'click' = 0,
@@ -31461,6 +31462,10 @@ type ProductContextProps = {
31461
31462
  updatePrice?: boolean;
31462
31463
  hasPreSelected?: boolean;
31463
31464
  setHasPreSelected: (value: boolean) => void;
31465
+ requireUpload?: boolean;
31466
+ setRequireUpload: (value: boolean) => void;
31467
+ shouldRequireUploadMessage?: boolean;
31468
+ setShouldRequireUploadMessage: (value: boolean) => void;
31464
31469
  };
31465
31470
  type ProductProviderProps = Pick<ProductContextProps, 'product' | 'quantity' | 'selectedOptions' | 'isSyncProduct'> & {
31466
31471
  initialVariantId?: string;
@@ -41780,11 +41785,11 @@ declare const getAppBlocks: (section: PublishedPageSection$1 & {
41780
41785
  declare const addAppBlockId: (component: Component) => Component;
41781
41786
 
41782
41787
  declare const useInteraction: () => {
41783
- onListener: ({ event, selector, elementRef }: {
41788
+ onListener: ({ event, selector, elementRef, }: {
41784
41789
  event: string;
41785
41790
  selector: string;
41786
41791
  elementRef?: React.MutableRefObject<HTMLElement> | undefined;
41787
- }, callback: (data: any) => void) => void;
41792
+ }, callback: (data: any) => void) => (() => void) | undefined;
41788
41793
  trigger: ({ event, data, selector, element: elementParam, }: {
41789
41794
  event: string;
41790
41795
  data?: any;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gem-sdk/core",
3
- "version": "1.53.0-dev.188",
3
+ "version": "1.53.0-dev.190",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
6
  "main": "dist/cjs/index.js",