@gem-sdk/core 17.0.0-dev.50 → 17.0.0-dev.57

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.
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";var e=require("react/jsx-runtime"),t=require("react"),r=require("zustand"),s=require("../helpers/normalize-builder-data-upsell.js");const a={widgetId:"ROOT",tag:"Root",childrens:[]},i=t.createContext(null),l=(e,t)=>r.createStore((r,i)=>({state:e,loaded:!1,hasWidgetTemplate:!1,widgetName:t,getItem:e=>i().state[e],initState:e=>{let t=s.normalizeBuilderDataUpsell(e);r({loaded:!0,hasWidgetTemplate:!0,state:{ROOT:{...a,childrens:[e.widgetId]},...t}})},changeItemPropByKey:({widgetId:e,key:t,data:s,group:a})=>{if(!a||!["setting","style","advanced"].includes(a))return;let l=i().state,d=l[e];if(!d)return;let n={style:d.styles??{},advanced:d.advanced??{},setting:d.settings??{}};void 0===s?(console.warn("Data is undefined"),delete n[a][t]):n[a][t]=s,r({state:{...l,[e]:{...d,settings:{...n.setting},styles:{...n.style},advanced:{...n.advanced}}}})},forceChangeState:e=>{r({state:e,loaded:!0})}}));exports.BuilderPreviewUpsellProvider=({children:r,state:s,widgetName:a,lazy:d,...n})=>{let u=d?t.Suspense:t.Fragment,o=t.useMemo(()=>l(s,a),[s,a]);return e.jsx(u,{children:e.jsx(i.Provider,{...n,value:o,children:r})})},exports.useBuilderPreviewUpsellStore=(e,s)=>{let a=t.useContext(i);if(!a)throw Error("useBuilderPreviewUpsellStore must be used within a BuilderPreviewUpsellProvider");return r.useStore(a,e,s)};
2
+ "use strict";var e=require("react/jsx-runtime"),t=require("react"),r=require("zustand");const d=t.createContext(null),i=({widget:e,state:t,widgetName:d})=>r.createStore((r,i)=>({widget:e,state:t,loaded:!1,hasWidgetTemplate:!1,widgetName:d,getItem:e=>{let t=i().widget;return t?.widgetId===e?t:void 0},initState:e=>{r({loaded:!0,hasWidgetTemplate:!0,widget:{...e,type:"component"}})},changeItemPropByKey:({widgetId:e,key:t,data:d,group:s})=>{if(!s||!["setting","style","advanced"].includes(s))return;let n=i().widget;if(!n||n.widgetId!==e)return;let l={style:n.styles??{},advanced:n.advanced??{},setting:n.settings??{}};void 0===d?(console.warn("Data is undefined"),delete l[s][t]):l[s][t]=d,r({widget:{...n,settings:{...l.setting},styles:{...l.style},advanced:{...l.advanced}}})},forceChangeState:e=>{r({widget:e,loaded:!0})}}));exports.BuilderPreviewUpsellProvider=({children:r,widget:s,state:n,widgetName:l,lazy:a,...u})=>{let o=a?t.Suspense:t.Fragment,c=t.useMemo(()=>i({widget:s,state:n,widgetName:l}),[s,n,l]);return e.jsx(o,{children:e.jsx(d.Provider,{...u,value:c,children:r})})},exports.useBuilderPreviewUpsellStore=(e,i)=>{let s=t.useContext(d);if(!s)throw Error("useBuilderPreviewUpsellStore must be used within a BuilderPreviewUpsellProvider");return r.useStore(s,e,i)};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),s=require("../contexts/BuilderUpsellWidget.js");require("zustand");var i=require("../contexts/BuilderPreviewUpsellContext.js");require("react-transition-group"),require("swr"),require("swr/infinite"),require("../graphql/queries/collection-detail-filter.generated.js"),require("../graphql/queries/collection.generated.js"),require("../graphql/queries/collections.generated.js"),require("../graphql/queries/published-theme-pages.generated.js"),require("../graphql/queries/products.generated.js"),require("../graphql/queries/store-property.generated.js"),require("../graphql/queries/preview-page.generated.js"),require("../graphql/queries/published-shop-metas.generated.js"),require("../graphql/queries/shop-shopify.generated.js"),require("../graphql/queries/articles.generated.js"),require("../graphql/queries/blogs.generated.js"),require("../graphql/queries/products-with-selling-plans.generated.js"),require("../graphql/queries/product-variant-with-selling-plans.generated.js"),require("../graphql/queries/product-little-detail.generated.js"),require("../graphql/queries/product-medias.generated.js"),require("../graphql/queries/product-variants.generated.js"),require("classnames"),require("dayjs"),require("@gem-sdk/core"),require("../helpers/convert.js"),require("crc-32"),require("@gem-sdk/adapter-shopify"),require("swr/mutation"),require("vanilla-lazyload"),require("../hooks/useCartUI.js"),require("../graphql/queries/product-value-label.generated.js"),require("../hooks/useStickyStore.js"),require("../types/builder.js"),require("../types/builderUpsell.js"),require("../types/custom.js"),require("../types/animations.js");var t=require("react-error-boundary"),u=require("./WrapperWidgetPreview.js");const a=r.memo(({widgetId:r,...a})=>{let l=i.useBuilderPreviewUpsellStore(e=>e.getItem(r)),q=s.useBuilderUpsellWidget(l?.tag);return l?e.jsx(t.ErrorBoundary,{fallbackRender:({error:r,resetErrorBoundary:s})=>e.jsxs(u.default,{...l,children:[e.jsx("span",{"aria-label":"Error message",children:r.message}),e.jsx("button",{type:"button",onClick:s,children:"Try again"})]}),children:e.jsx(u.default,{...l,children:e.jsx(q,{builderProps:{widgetId:l.widgetId,builderData:l},styles:l.styles,setting:l.settings,...a})})},l.widgetId):null});a.displayName="RenderPreviewUpsellMemo",exports.default=a;
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),s=require("../contexts/BuilderUpsellWidget.js");require("zustand");var i=require("../contexts/BuilderPreviewUpsellContext.js");require("react-transition-group"),require("swr"),require("swr/infinite"),require("../graphql/queries/collection-detail-filter.generated.js"),require("../graphql/queries/collection.generated.js"),require("../graphql/queries/collections.generated.js"),require("../graphql/queries/published-theme-pages.generated.js"),require("../graphql/queries/products.generated.js"),require("../graphql/queries/store-property.generated.js"),require("../graphql/queries/preview-page.generated.js"),require("../graphql/queries/published-shop-metas.generated.js"),require("../graphql/queries/shop-shopify.generated.js"),require("../graphql/queries/articles.generated.js"),require("../graphql/queries/blogs.generated.js"),require("../graphql/queries/products-with-selling-plans.generated.js"),require("../graphql/queries/product-variant-with-selling-plans.generated.js"),require("../graphql/queries/product-little-detail.generated.js"),require("../graphql/queries/product-medias.generated.js"),require("../graphql/queries/product-variants.generated.js"),require("classnames"),require("dayjs"),require("@gem-sdk/core"),require("../helpers/convert.js"),require("crc-32"),require("@gem-sdk/adapter-shopify"),require("swr/mutation"),require("vanilla-lazyload"),require("../hooks/useCartUI.js"),require("../graphql/queries/product-value-label.generated.js"),require("../hooks/useStickyStore.js"),require("../types/builder.js"),require("../types/builderUpsell.js"),require("../types/custom.js"),require("../types/animations.js");var t=require("react-error-boundary"),u=require("./WrapperWidgetPreview.js");const a=r.memo(({...r})=>{let a=i.useBuilderPreviewUpsellStore(e=>e.widget),l=s.useBuilderUpsellWidget(a?.tag);return a?e.jsx(t.ErrorBoundary,{fallbackRender:({error:r,resetErrorBoundary:s})=>e.jsxs(u.default,{...a,children:[e.jsx("span",{"aria-label":"Error message",children:r.message}),e.jsx("button",{type:"button",onClick:s,children:"Try again"})]}),children:e.jsx(u.default,{...a,children:e.jsx(l,{builderProps:{widgetId:a.widgetId,layoutCid:a.layoutCid,builderData:a},styles:a.styles,setting:a.settings,...r})})},a.widgetId):null});a.displayName="RenderPreviewUpsellMemo",exports.default=a;
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import{jsx as e}from"react/jsx-runtime";import{useContext as t,createContext as r,useMemo as d,Suspense as i,Fragment as l}from"react";import{useStore as a,createStore as s}from"zustand";import{normalizeBuilderDataUpsell as n}from"../helpers/normalize-builder-data-upsell.js";let o={widgetId:"ROOT",tag:"Root",childrens:[]},u=r(null),m=(e,t)=>s((r,d)=>({state:e,loaded:!1,hasWidgetTemplate:!1,widgetName:t,getItem:e=>d().state[e],initState:e=>{let t=n(e);r({loaded:!0,hasWidgetTemplate:!0,state:{ROOT:{...o,childrens:[e.widgetId]},...t}})},changeItemPropByKey:({widgetId:e,key:t,data:i,group:l})=>{if(!l||!["setting","style","advanced"].includes(l))return;let a=d().state,s=a[e];if(!s)return;let n={style:s.styles??{},advanced:s.advanced??{},setting:s.settings??{}};void 0===i?(console.warn("Data is undefined"),delete n[l][t]):n[l][t]=i,r({state:{...a,[e]:{...s,settings:{...n.setting},styles:{...n.style},advanced:{...n.advanced}}}})},forceChangeState:e=>{r({state:e,loaded:!0})}})),c=({children:t,state:r,widgetName:a,lazy:s,...n})=>{let o=s?i:l,c=d(()=>m(r,a),[r,a]);return e(o,{children:e(u.Provider,{...n,value:c,children:t})})},g=(e,r)=>{let d=t(u);if(!d)throw Error("useBuilderPreviewUpsellStore must be used within a BuilderPreviewUpsellProvider");return a(d,e,r)};export{c as BuilderPreviewUpsellProvider,g as useBuilderPreviewUpsellStore};
2
+ import{jsx as e}from"react/jsx-runtime";import{useContext as t,createContext as r,useMemo as d,Suspense as i,Fragment as l}from"react";import{useStore as n,createStore as a}from"zustand";let s=r(null),o=({widget:e,state:t,widgetName:r})=>a((d,i)=>({widget:e,state:t,loaded:!1,hasWidgetTemplate:!1,widgetName:r,getItem:e=>{let t=i().widget;return t?.widgetId===e?t:void 0},initState:e=>{d({loaded:!0,hasWidgetTemplate:!0,widget:{...e,type:"component"}})},changeItemPropByKey:({widgetId:e,key:t,data:r,group:l})=>{if(!l||!["setting","style","advanced"].includes(l))return;let n=i().widget;if(!n||n.widgetId!==e)return;let a={style:n.styles??{},advanced:n.advanced??{},setting:n.settings??{}};void 0===r?(console.warn("Data is undefined"),delete a[l][t]):a[l][t]=r,d({widget:{...n,settings:{...a.setting},styles:{...a.style},advanced:{...a.advanced}}})},forceChangeState:e=>{d({widget:e,loaded:!0})}})),u=({children:t,widget:r,state:n,widgetName:a,lazy:u,...g})=>{let v=u?i:l,c=d(()=>o({widget:r,state:n,widgetName:a}),[r,n,a]);return e(v,{children:e(s.Provider,{...g,value:c,children:t})})},g=(e,r)=>{let d=t(s);if(!d)throw Error("useBuilderPreviewUpsellStore must be used within a BuilderPreviewUpsellProvider");return n(d,e,r)};export{u as BuilderPreviewUpsellProvider,g as useBuilderPreviewUpsellStore};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import{jsx as e,jsxs as r}from"react/jsx-runtime";import{memo as t}from"react";import{useBuilderUpsellWidget as i}from"../contexts/BuilderUpsellWidget.js";import"zustand";import{useBuilderPreviewUpsellStore as s}from"../contexts/BuilderPreviewUpsellContext.js";import"react-transition-group";import"swr";import"swr/infinite";import"../graphql/queries/collection-detail-filter.generated.js";import"../graphql/queries/collection.generated.js";import"../graphql/queries/collections.generated.js";import"../graphql/queries/published-theme-pages.generated.js";import"../graphql/queries/products.generated.js";import"../graphql/queries/store-property.generated.js";import"../graphql/queries/preview-page.generated.js";import"../graphql/queries/published-shop-metas.generated.js";import"../graphql/queries/shop-shopify.generated.js";import"../graphql/queries/articles.generated.js";import"../graphql/queries/blogs.generated.js";import"../graphql/queries/products-with-selling-plans.generated.js";import"../graphql/queries/product-variant-with-selling-plans.generated.js";import"../graphql/queries/product-little-detail.generated.js";import"../graphql/queries/product-medias.generated.js";import"../graphql/queries/product-variants.generated.js";import"classnames";import"dayjs";import"@gem-sdk/core";import"../helpers/convert.js";import"crc-32";import"@gem-sdk/adapter-shopify";import"swr/mutation";import"vanilla-lazyload";import"../hooks/useCartUI.js";import"../graphql/queries/product-value-label.generated.js";import"../hooks/useStickyStore.js";import"../types/builder.js";import"../types/builderUpsell.js";import"../types/custom.js";import"../types/animations.js";import{ErrorBoundary as p}from"react-error-boundary";import o from"./WrapperWidgetPreview.js";let a=t(({widgetId:t,...a})=>{let l=s(e=>e.getItem(t)),m=i(l?.tag);return l?e(p,{fallbackRender:({error:t,resetErrorBoundary:i})=>r(o,{...l,children:[e("span",{"aria-label":"Error message",children:t.message}),e("button",{type:"button",onClick:i,children:"Try again"})]}),children:e(o,{...l,children:e(m,{builderProps:{widgetId:l.widgetId,builderData:l},styles:l.styles,setting:l.settings,...a})})},l.widgetId):null});a.displayName="RenderPreviewUpsellMemo";export{a as default};
2
+ import{jsx as e,jsxs as r}from"react/jsx-runtime";import{memo as t}from"react";import{useBuilderUpsellWidget as i}from"../contexts/BuilderUpsellWidget.js";import"zustand";import{useBuilderPreviewUpsellStore as s}from"../contexts/BuilderPreviewUpsellContext.js";import"react-transition-group";import"swr";import"swr/infinite";import"../graphql/queries/collection-detail-filter.generated.js";import"../graphql/queries/collection.generated.js";import"../graphql/queries/collections.generated.js";import"../graphql/queries/published-theme-pages.generated.js";import"../graphql/queries/products.generated.js";import"../graphql/queries/store-property.generated.js";import"../graphql/queries/preview-page.generated.js";import"../graphql/queries/published-shop-metas.generated.js";import"../graphql/queries/shop-shopify.generated.js";import"../graphql/queries/articles.generated.js";import"../graphql/queries/blogs.generated.js";import"../graphql/queries/products-with-selling-plans.generated.js";import"../graphql/queries/product-variant-with-selling-plans.generated.js";import"../graphql/queries/product-little-detail.generated.js";import"../graphql/queries/product-medias.generated.js";import"../graphql/queries/product-variants.generated.js";import"classnames";import"dayjs";import"@gem-sdk/core";import"../helpers/convert.js";import"crc-32";import"@gem-sdk/adapter-shopify";import"swr/mutation";import"vanilla-lazyload";import"../hooks/useCartUI.js";import"../graphql/queries/product-value-label.generated.js";import"../hooks/useStickyStore.js";import"../types/builder.js";import"../types/builderUpsell.js";import"../types/custom.js";import"../types/animations.js";import{ErrorBoundary as p}from"react-error-boundary";import o from"./WrapperWidgetPreview.js";let a=t(({...t})=>{let a=s(e=>e.widget),l=i(a?.tag);return a?e(p,{fallbackRender:({error:t,resetErrorBoundary:i})=>r(o,{...a,children:[e("span",{"aria-label":"Error message",children:t.message}),e("button",{type:"button",onClick:i,children:"Try again"})]}),children:e(o,{...a,children:e(l,{builderProps:{widgetId:a.widgetId,layoutCid:a.layoutCid,builderData:a},styles:a.styles,setting:a.settings,...t})})},a.widgetId):null});a.displayName="RenderPreviewUpsellMemo";export{a as default};
@@ -28,7 +28,6 @@ type Props$2 = {
28
28
  declare const RenderPreviewMemo: React.NamedExoticComponent<Props$2>;
29
29
 
30
30
  type Props$1 = {
31
- widgetId: string;
32
31
  [key: string]: any;
33
32
  };
34
33
  declare const RenderPreviewUpsellMemo: React.NamedExoticComponent<Props$1>;
@@ -7789,6 +7788,7 @@ type RawChild = {
7789
7788
 
7790
7789
  type WidgetEntity = {
7791
7790
  widgetId: string;
7791
+ layoutCid: string;
7792
7792
  tag: string;
7793
7793
  name?: string;
7794
7794
  label?: string;
@@ -7805,8 +7805,8 @@ type WidgetEntity = {
7805
7805
  type WidgetStatus = 'DRAFT' | 'PUBLISHED' | 'NEED_PUBLISHING';
7806
7806
  type BuilderUpsellEntity = WidgetEntity;
7807
7807
  type BuilderUpsellState = {
7808
- ROOT: WidgetEntity;
7809
- } & Record<string, BuilderUpsellEntity>;
7808
+ widget: WidgetEntity;
7809
+ };
7810
7810
  declare enum RenderModeUpsellEnv {
7811
7811
  EDIT = "edit",
7812
7812
  PREVIEW = "preview"
@@ -42377,6 +42377,7 @@ type BasePropsUpsell<Setting = unknown, Style = unknown, Advanced = AdvancedType
42377
42377
  builderProps?: {
42378
42378
  /** Unique id of component */
42379
42379
  widgetId?: string;
42380
+ layoutCid?: string;
42380
42381
  builderData?: WidgetEntity;
42381
42382
  isPreview?: boolean;
42382
42383
  uidTranslate?: string;
@@ -42762,9 +42763,9 @@ type AddonProviderProps = Pick<AddonContextProps, 'components'> & {
42762
42763
 
42763
42764
  declare const AddonProvider: React.FC<AddonProviderProps>;
42764
42765
  declare const useAddons: () => Record<string, React.ComponentType<any>>;
42765
- declare const useAddon: (id?: string) => React.FC<BaseProps & {
42766
+ declare const useAddon: (id?: string) => React.ComponentType<any> | React.FC<BaseProps & {
42766
42767
  children?: React.ReactNode;
42767
- }> | React.ComponentType<any>;
42768
+ }>;
42768
42769
 
42769
42770
  type BuilderComponentProps = {
42770
42771
  components: Record<string, React.ComponentType<any>>;
@@ -42776,9 +42777,9 @@ type BuilderComponentProviderProps = Pick<BuilderComponentProps, 'components'> &
42776
42777
  };
42777
42778
 
42778
42779
  declare const BuilderComponentProvider: React.FC<BuilderComponentProviderProps>;
42779
- declare const useBuilderComponent: (id?: string) => React.ComponentType<BaseProps> | React.FC<BaseProps & {
42780
+ declare const useBuilderComponent: (id?: string) => React.FC<BaseProps & {
42780
42781
  children?: React.ReactNode;
42781
- }>;
42782
+ }> | React.ComponentType<BaseProps>;
42782
42783
 
42783
42784
  type BuilderContextProps = {
42784
42785
  state: BuilderState | SectionData;
@@ -43276,6 +43277,7 @@ declare const useI18nStore: () => I18nContextProps;
43276
43277
 
43277
43278
  type BuilderPreviewUpsellContextProps = {
43278
43279
  state: BuilderUpsellState;
43280
+ widget: WidgetEntity;
43279
43281
  loaded?: boolean;
43280
43282
  hasWidgetTemplate?: boolean;
43281
43283
  widgetName?: string;
@@ -43289,7 +43291,7 @@ type BuilderPreviewUpsellContextProps = {
43289
43291
  initState: (data: any) => void;
43290
43292
  forceChangeState: (data: any) => void;
43291
43293
  };
43292
- type BuilderPreviewUpsellProviderProps = Pick<BuilderPreviewUpsellContextProps, 'state'> & {
43294
+ type BuilderPreviewUpsellProviderProps = Pick<BuilderPreviewUpsellContextProps, 'widget' | 'state'> & {
43293
43295
  children: React.ReactNode;
43294
43296
  lazy?: boolean;
43295
43297
  widgetName?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gem-sdk/core",
3
- "version": "17.0.0-dev.50",
3
+ "version": "17.0.0-dev.57",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
6
  "main": "dist/cjs/index.js",
@@ -1 +0,0 @@
1
- "use strict";exports.normalizeBuilderDataUpsell=function(e){return{[e.widgetId]:{...e,type:"component"}}};
@@ -1 +0,0 @@
1
- function e(e){return{[e.widgetId]:{...e,type:"component"}}}export{e as normalizeBuilderDataUpsell};