@gem-sdk/pages 1.14.0-dev.346 → 1.14.0-dev.373
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.
- package/dist/cjs/components/builder/Toolbox.js +1 -1
- package/dist/cjs/libs/helpers/gen-fonts.js +1 -1
- package/dist/cjs/pages/builder.js +1 -1
- package/dist/cjs/pages/collection-detail.js +1 -1
- package/dist/cjs/pages/product-detail.js +1 -1
- package/dist/cjs/pages/static-v2.js +1 -1
- package/dist/cjs/pages/static.js +1 -1
- package/dist/esm/components/builder/Toolbox.js +1 -1
- package/dist/esm/libs/helpers/gen-fonts.js +1 -1
- package/dist/esm/pages/builder.js +1 -1
- package/dist/esm/pages/collection-detail.js +1 -1
- package/dist/esm/pages/product-detail.js +1 -1
- package/dist/esm/pages/static-v2.js +1 -1
- package/dist/esm/pages/static.js +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),react=require("react"),getStorefrontApi=require("../../libs/get-storefront-api.js"),googleFonts=require("../../libs/google-fonts.js"),genCss=require("../../libs/helpers/gen-css.js"),genFonts=require("../../libs/helpers/gen-fonts.js"),shopifyCdnWithGoogleFonts=require("../../libs/shopify-cdn-with-google-fonts.js");const globalStyleId="global-style",
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),react=require("react"),getStorefrontApi=require("../../libs/get-storefront-api.js"),googleFonts=require("../../libs/google-fonts.js"),genCss=require("../../libs/helpers/gen-css.js"),genFonts=require("../../libs/helpers/gen-fonts.js"),shopifyCdnWithGoogleFonts=require("../../libs/shopify-cdn-with-google-fonts.js");const globalStyleId="global-style",Toolbox=()=>{let e=core.useMatchMutate(),t=core.useShopStore(e=>e.provider),o=core.useShopStore(e=>e.changeStorefrontInfo),r=core.usePageStore(e=>e.setDynamicProduct),a=core.usePageStore(e=>e.setDynamicCollection),n=core.useBuilderPreviewStore(e=>e.initState),i=core.useBuilderPreviewStore(e=>e.state),d=core.useBuilderPreviewStore(e=>e.forceChangeState),l=core.useBuilderPreviewStore(e=>e.forceChangeItemProp),s=core.useBuilderPreviewStore(e=>e.changeItemPropByKey),c=core.useBuilderPreviewStore(e=>e.addItem),u=core.useBuilderPreviewStore(e=>e.moveItem),p=core.useBuilderPreviewStore(e=>e.removeItem),v=core.useSectionStore(e=>e.addSection),m=core.useShopStore(e=>e.changeSwatches),w=core.useShopStore(e=>e.changeLayoutSettings),y=core.useShopStore(e=>e.changeCreateThemeSectionCount),f=core.useShopStore(e=>e.changeShopPlan),h=core.useModalStore(e=>e.clearModal),g=react.useMemo(()=>genFonts.getFontsFromDataBuilder(i),[i]),S=(e,t)=>{if(!t?.length){let t=document.querySelectorAll(`.${e}`);t.forEach(e=>{e.remove()});return}let o=document.querySelectorAll(`.${e}`);for(let r of(o.forEach(e=>{let o=e.getAttribute("data-font"),r=e.getAttribute("data-font-variant");if(o&&r){let a=t.find(e=>e.family==o&&e.variants.includes(r));a||e.remove()}else e.remove()}),t))if("google"==r.type&&r.variants?.length)for(let t of r.variants){let o=JSON.parse(JSON.stringify(r));o.variants=[t];let a=o.family,n=googleFonts.createFontUrl([o]);if(n){let o=document.querySelector(`.${e}[data-font="${a}"][data-font-variant="${t}"]`);if(o)continue;{let o=document.createElement("link");o.className=e,o.dataset.font=a,o.dataset.fontVariant=t,o.href=n,o.rel="stylesheet",document.head.appendChild(o)}}}},b=react.useCallback(()=>{e(/query\//,{revalidate:!0})},[e]),E=react.useCallback(e=>{let r=e.detail;o({url:r.shopHandle?getStorefrontApi.getStorefrontApi(r.shopHandle,t):void 0,token:r.shopToken})},[o,t]),L=react.useCallback(e=>{let t=e.detail;try{if(t.data){let e=genCss.genCSS(t.data,t.mobileOnly),o=Object.entries(t.data?.font).map(([,e])=>e).map(e=>{if("custom"==e.type){let t=shopifyCdnWithGoogleFonts.shopifyCdnWithGoogleFonts.find(t=>t.family==e.family);if(t)return t}return e}),r=document.getElementById(globalStyleId);if(S("google-font-builder",o),r)r.innerHTML=e;else{let t=document.createElement("style");t.id=globalStyleId,t.innerHTML=e,document.head.appendChild(t)}}}catch{}},[]),C=react.useCallback(e=>{h();try{let t=e.detail;t.data&&("flat"===t.type?d(t.data):n(t.data))}catch{}},[d,n,h]),k=react.useCallback(e=>{try{let t=e.detail;t.entity&&(c({data:t.entity,id:t.id,position:t.position,type:t.type??"component"}),t?.type!=="section"||Array.isArray(t.entity)||v(t.entity.uid,t.entity))}catch{}},[c,v]),P=react.useCallback(e=>{try{let t=e.detail;t.uid&&t.propName&&s({id:t.uid,key:t.propName,data:t.propValue,group:t.group})}catch{}},[s]),q=react.useCallback(e=>{try{let t=e.detail;t.uid&&l(t.uid,t.data,t.group)}catch{}},[l]),j=react.useCallback(e=>{try{let t=e.detail;t.to&&t.uid&&u(t.uid,t.to,Number(t.position)??0)}catch{}},[u]),x=react.useCallback(e=>{try{let t=e.detail;t.uid&&p(t.uid)}catch{}},[p]),B=react.useCallback(e=>{let t=e.detail;try{t.data&&m(t.data)}catch{}},[m]),F=react.useCallback(e=>{let t=e.detail;t&&w(t)},[w]),I=react.useCallback(e=>{let t=e.detail;t&&y(t)},[y]),A=react.useCallback(e=>{let t=e.detail;t&&f(t)},[f]),M=react.useCallback(e=>{let t=e.detail;t&&r(t)},[r]),T=react.useCallback(e=>{let t=e.detail;t&&a(t)},[a]);return react.useEffect(()=>{g&&S("google-font-element",g)},[g]),react.useEffect(()=>(window.addEventListener("update-shop-info",E),window.addEventListener("revalidate-query",b),window.addEventListener("init-builder",C),window.addEventListener("add-entity",k),window.addEventListener("remove-entity",x),window.addEventListener("move-entity",j),window.addEventListener("force-update-entity-props",q),window.addEventListener("update-entity-prop",P),window.addEventListener("set-global-style",L),window.addEventListener("update-global-swatches-data",B),window.addEventListener("on-off-header-footer",F),window.addEventListener("update-create-theme-section-count",I),window.addEventListener("update-shop-plan",A),window.addEventListener("set-dynamic-product",M),window.addEventListener("set-dynamic-collection",T),()=>{window.removeEventListener("update-shop-info",E),window.removeEventListener("revalidate-query",b),window.removeEventListener("init-builder",C),window.removeEventListener("add-entity",k),window.removeEventListener("remove-entity",x),window.removeEventListener("move-entity",j),window.removeEventListener("update-entity-prop",P),window.removeEventListener("set-global-style",L),window.removeEventListener("update-global-swatches-data",B),window.removeEventListener("on-off-header-footer",F),window.removeEventListener("update-create-theme-section-count",I),window.removeEventListener("update-shop-plan",A),window.removeEventListener("set-dynamic-product",M),window.removeEventListener("set-dynamic-collection",T)}),[k,A,q,P,C,j,x,L,B,b,E,F,I,M,T]),jsxRuntime.jsx("div",{className:"toolbox"})};var Toolbox$1=react.memo(Toolbox);exports.default=Toolbox$1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const getFontsFromDataBuilder=t=>{let e=[];for(let o in t)if(Object.prototype.hasOwnProperty.call(t,o)){let
|
|
1
|
+
"use strict";const getFontsFromDataBuilder=t=>{let e=[];for(let o in t)if(Object.prototype.hasOwnProperty.call(t,o)){let i=t[o],n=i.styles,r=i.settings;getFontFromGroupSetting(e,n),getFontFromGroupSetting(e,r)}return e},getFontFromGroupSetting=(t,e)=>{for(let o in e)if(Object.prototype.hasOwnProperty.call(e,o)){let i=e[o];if(i){let e=i.custom?.fontFamily,o=i.custom?.fontVariants;if(e&&o?.length){let n=o.map(t=>"regular"===t?"400":t),r=i.custom?.fontWeight&&n.includes(i.custom?.fontWeight)?i.custom?.fontWeight:n[0];if(r){let o=t.find(t=>t.family==e&&t.variants.includes(r));if(!o){let o=t.find(t=>t.family==e);if(o)o.variants.push(r);else{let o=[r];"700"!==r&&n.includes("700")&&o.push("700"),t.push({family:e,variants:o,subsets:[],type:"google"})}}}}}}};exports.getFontFromGroupSetting=getFontFromGroupSetting,exports.getFontsFromDataBuilder=getFontsFromDataBuilder;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),nextSeo=require("next-seo"),Head=require("next/head"),react=require("react"),Toolbox=require("../components/builder/Toolbox.js"),Header=require("../components/Header.js"),Footer=require("../components/Footer.js"),CollectionGlobalProvider=require("./CollectionGlobalProvider.js"),PopupManager=require("../components/builder/PopupManager.js"),ImageToLayout=require("../components/image-to-layout/ImageToLayout.js"),AddSectionImageToLayout=require("../components/image-to-layout/AddSectionImageToLayout.js"),Toolbar=require("../components/builder/Toolbar.js");const BuilderPage=({components:e,seo:t,themeStyle:o,fontStyle:r,sectionData:s,pageType:i,editorImageToLayout:n,isThemeSectionEditor:u})=>{let[a,d]=react.useState(!1),l=react.useMemo(()=>({ROOT:{uid:"ROOT",tag:"Root",label:"Root",childrens:[]}}),[]);return react.useEffect(()=>{d(!0)},[]),jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(nextSeo.NextSeo,{...t}),jsxRuntime.jsxs(Head,{children:[o&&jsxRuntime.jsx("style",{type:"text/css",id:"global-style",dangerouslySetInnerHTML:{__html:o}}),r&&jsxRuntime.jsx("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:r}})]}),jsxRuntime.jsx(core.BuilderComponentProvider,{components:e,children:jsxRuntime.jsx(core.SectionProvider,{data:s,children:jsxRuntime.jsxs(core.BuilderPreviewProvider,{state:l,isThemeSectionEditor:u,children:[jsxRuntime.jsx(Toolbox.default,{}),jsxRuntime.jsx(Toolbar.default,{}),jsxRuntime.jsx(PopupManager.default,{}),a&&jsxRuntime.jsxs("div",{className:"builder z-1 relative",children:[u?jsxRuntime.jsx("div",{className:"h-[40px] bg-[#f4f4f4]"}):jsxRuntime.jsx(Header.default,{}),jsxRuntime.jsx("div",{id:"storefront",className:u?"theme-section-editor":"",children:"GP_COLLECTION"===i?jsxRuntime.jsx(CollectionGlobalProvider.default,{children:jsxRuntime.jsx(core.RenderPreview,{uid:"ROOT"})}):jsxRuntime.jsx(core.RenderPreview,{uid:"ROOT"})}),jsxRuntime.jsx(ImageToLayout.default,{editorImageToLayout:n||!1}),jsxRuntime.jsx(AddSectionImageToLayout.default,{editorImageToLayout:n||!1}),jsxRuntime.jsx("div",{id:"visual-content"}),!u&&jsxRuntime.jsx(Footer.default,{})]})]},"preview")})})]})};exports.BuilderPage=BuilderPage;
|
|
1
|
+
"use strict";var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),nextSeo=require("next-seo"),Head=require("next/head"),react=require("react"),Toolbox=require("../components/builder/Toolbox.js"),Header=require("../components/Header.js"),Footer=require("../components/Footer.js"),CollectionGlobalProvider=require("./CollectionGlobalProvider.js"),PopupManager=require("../components/builder/PopupManager.js"),ImageToLayout=require("../components/image-to-layout/ImageToLayout.js"),AddSectionImageToLayout=require("../components/image-to-layout/AddSectionImageToLayout.js"),Toolbar=require("../components/builder/Toolbar.js");const BuilderPage=({components:e,seo:t,themeStyle:o,fontStyle:r,sectionData:s,pageType:i,editorImageToLayout:n,isThemeSectionEditor:u})=>{let[a,d]=react.useState(!1),l=react.useMemo(()=>({ROOT:{uid:"ROOT",tag:"Root",label:"Root",childrens:[]}}),[]);return react.useEffect(()=>{d(!0)},[]),jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(nextSeo.NextSeo,{...t}),jsxRuntime.jsxs(Head,{children:[o&&jsxRuntime.jsx("style",{type:"text/css",id:"global-style",dangerouslySetInnerHTML:{__html:o}}),r&&jsxRuntime.jsx("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:r}})]}),jsxRuntime.jsx(core.PageProvider,{children:jsxRuntime.jsx(core.BuilderComponentProvider,{components:e,children:jsxRuntime.jsx(core.SectionProvider,{data:s,children:jsxRuntime.jsxs(core.BuilderPreviewProvider,{state:l,isThemeSectionEditor:u,children:[jsxRuntime.jsx(Toolbox.default,{}),jsxRuntime.jsx(Toolbar.default,{}),jsxRuntime.jsx(PopupManager.default,{}),a&&jsxRuntime.jsxs("div",{className:"builder z-1 relative",children:[u?jsxRuntime.jsx("div",{className:"h-[40px] bg-[#f4f4f4]"}):jsxRuntime.jsx(Header.default,{}),jsxRuntime.jsx("div",{id:"storefront",className:u?"theme-section-editor":"",children:"GP_COLLECTION"===i?jsxRuntime.jsx(CollectionGlobalProvider.default,{children:jsxRuntime.jsx(core.RenderPreview,{uid:"ROOT"})}):jsxRuntime.jsx(core.RenderPreview,{uid:"ROOT"})}),jsxRuntime.jsx(ImageToLayout.default,{editorImageToLayout:n||!1}),jsxRuntime.jsx(AddSectionImageToLayout.default,{editorImageToLayout:n||!1}),jsxRuntime.jsx("div",{id:"visual-content"}),!u&&jsxRuntime.jsx(Footer.default,{})]})]},"preview")})})})]})};exports.BuilderPage=BuilderPage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),nextSeo=require("next-seo"),dynamic=require("next/dynamic"),Head=require("next/head"),router=require("next/router");const CollectionProvider=dynamic(()=>import("@gem-sdk/core").then(e=>e.CollectionProvider)),CollectionDetailPage=({seo:e,components:t,builderData:r,sectionData:i,themeStyle:n,collection:o,fontStyle:s})=>{let l=router.useRouter();return l.isFallback?jsxRuntime.jsx("div",{children:"Loading..."}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(nextSeo.NextSeo,{...e}),jsxRuntime.jsxs(Head,{children:[n&&jsxRuntime.jsx("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:n}}),s&&jsxRuntime.jsx("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:s}})]}),jsxRuntime.jsx(core.BuilderComponentProvider,{components:t,children:jsxRuntime.jsx(core.SectionProvider,{data:i,children:jsxRuntime.jsx(CollectionProvider,{collection:o,children:r&&jsxRuntime.jsx(core.BuilderProvider,{state:r,children:jsxRuntime.jsx(core.Render,{uid:"ROOT"})})})})})]})};exports.default=CollectionDetailPage;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),nextSeo=require("next-seo"),dynamic=require("next/dynamic"),Head=require("next/head"),router=require("next/router");const CollectionProvider=dynamic(()=>import("@gem-sdk/core").then(e=>e.CollectionProvider)),CollectionDetailPage=({seo:e,components:t,builderData:r,sectionData:i,themeStyle:n,collection:o,fontStyle:s})=>{let l=router.useRouter();return l.isFallback?jsxRuntime.jsx("div",{children:"Loading..."}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(nextSeo.NextSeo,{...e}),jsxRuntime.jsxs(Head,{children:[n&&jsxRuntime.jsx("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:n}}),s&&jsxRuntime.jsx("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:s}})]}),jsxRuntime.jsx(core.PageProvider,{children:jsxRuntime.jsx(core.BuilderComponentProvider,{components:t,children:jsxRuntime.jsx(core.SectionProvider,{data:i,children:jsxRuntime.jsx(CollectionProvider,{collection:o,children:r&&jsxRuntime.jsx(core.BuilderProvider,{state:r,children:jsxRuntime.jsx(core.Render,{uid:"ROOT"})})})})})})]})};exports.default=CollectionDetailPage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),nextSeo=require("next-seo"),dynamic=require("next/dynamic"),Head=require("next/head"),router=require("next/router");const ProductProvider=dynamic(()=>import("@gem-sdk/core").then(e=>e.ProductProvider)),ProductDetailPage=({themeStyle:e,fontStyle:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),nextSeo=require("next-seo"),dynamic=require("next/dynamic"),Head=require("next/head"),router=require("next/router");const ProductProvider=dynamic(()=>import("@gem-sdk/core").then(e=>e.ProductProvider)),ProductDetailPage=({themeStyle:e,fontStyle:r,seo:t,product:s,components:i,builderData:n,sectionData:d})=>{let o=router.useRouter();return o.isFallback?jsxRuntime.jsx("div",{children:"Loading..."}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(nextSeo.NextSeo,{...t}),jsxRuntime.jsxs(Head,{children:[e&&jsxRuntime.jsx("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:e}}),r&&jsxRuntime.jsx("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:r}})]}),jsxRuntime.jsx(core.PageProvider,{children:jsxRuntime.jsx(core.BuilderComponentProvider,{components:i,children:jsxRuntime.jsx(core.SectionProvider,{data:d,children:jsxRuntime.jsxs(ProductProvider,{product:s,children:[n&&jsxRuntime.jsx(core.BuilderProvider,{state:n,children:jsxRuntime.jsx(core.Render,{uid:"ROOT"})}),jsxRuntime.jsx(core.AddOn,{name:"sticky-add-to-cart"})]})})})})]})};exports.default=ProductDetailPage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),nextSeo=require("next-seo"),Head=require("next/head"),router=require("next/router"),useTrackingView=require("../libs/hooks/use-tracking-view.js"),parseHtml=require("../libs/parse-html.js");const StaticPageV2=({components:e,builderData:s,sectionData:t,seo:i,themeStyle:
|
|
1
|
+
"use strict";var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),nextSeo=require("next-seo"),Head=require("next/head"),router=require("next/router"),useTrackingView=require("../libs/hooks/use-tracking-view.js"),parseHtml=require("../libs/parse-html.js");const StaticPageV2=({components:e,builderData:s,sectionData:t,seo:i,themeStyle:r,fontStyle:a,elementFontStyle:n,customCodeHeader:l,shopToken:u,pageHandle:m})=>{let x=router.useRouter();return(useTrackingView.useTrackingView(u,m,x.isFallback),x.isFallback)?jsxRuntime.jsx("div",{className:"flex h-full items-center justify-center",children:jsxRuntime.jsxs("div",{className:"flex gap-2",children:[jsxRuntime.jsx("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_alternate] rounded-full bg-slate-800"}),jsxRuntime.jsx("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_200ms_linear_alternate] rounded-full bg-slate-800"}),jsxRuntime.jsx("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_500ms_alternate] rounded-full bg-slate-800"})]})}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(nextSeo.NextSeo,{...i}),jsxRuntime.jsxs(Head,{children:[parseHtml.parseHtml(l,!0),r&&jsxRuntime.jsx("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:r}}),a&&jsxRuntime.jsx("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:a}}),n&&n.map(e=>jsxRuntime.jsx("style",{"data-id":"google-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:e}},e))]}),jsxRuntime.jsx(core.PageProvider,{children:jsxRuntime.jsx(core.BuilderComponentProvider,{components:e,children:jsxRuntime.jsx(core.SectionProvider,{data:t,children:s?.map(e=>jsxRuntime.jsx(core.BuilderProvider,{state:e.data,lazy:e.lazy,priority:e.priority,children:jsxRuntime.jsx(core.Render,{uid:e.uid})},e.uid))})})})]})};exports.StaticPageV2=StaticPageV2;
|
package/dist/cjs/pages/static.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),nextSeo=require("next-seo"),Head=require("next/head"),router=require("next/router");const StaticPage=({components:e,builderData:s,sectionData:t,seo:n,themeStyle:r,fontStyle:i})=>{let a=router.useRouter();return a.isFallback?jsxRuntime.jsx("div",{className:"flex h-full items-center justify-center",children:jsxRuntime.jsxs("div",{className:"flex gap-2",children:[jsxRuntime.jsx("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_alternate] rounded-full bg-slate-800"}),jsxRuntime.jsx("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_200ms_linear_alternate] rounded-full bg-slate-800"}),jsxRuntime.jsx("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_500ms_alternate] rounded-full bg-slate-800"})]})}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(nextSeo.NextSeo,{...n}),jsxRuntime.jsxs(Head,{children:[r&&jsxRuntime.jsx("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:r}}),i&&jsxRuntime.jsx("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:i}})]}),jsxRuntime.jsx(core.BuilderComponentProvider,{components:e,children:jsxRuntime.jsx(core.SectionProvider,{data:t,children:jsxRuntime.jsx(jsxRuntime.Fragment,{children:s&&jsxRuntime.jsx(core.BuilderProvider,{state:s,children:jsxRuntime.jsx(core.Render,{uid:"ROOT"})},"body")})})})]})};exports.default=StaticPage;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),nextSeo=require("next-seo"),Head=require("next/head"),router=require("next/router");const StaticPage=({components:e,builderData:s,sectionData:t,seo:n,themeStyle:r,fontStyle:i})=>{let a=router.useRouter();return a.isFallback?jsxRuntime.jsx("div",{className:"flex h-full items-center justify-center",children:jsxRuntime.jsxs("div",{className:"flex gap-2",children:[jsxRuntime.jsx("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_alternate] rounded-full bg-slate-800"}),jsxRuntime.jsx("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_200ms_linear_alternate] rounded-full bg-slate-800"}),jsxRuntime.jsx("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_500ms_alternate] rounded-full bg-slate-800"})]})}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(nextSeo.NextSeo,{...n}),jsxRuntime.jsxs(Head,{children:[r&&jsxRuntime.jsx("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:r}}),i&&jsxRuntime.jsx("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:i}})]}),jsxRuntime.jsx(core.PageProvider,{children:jsxRuntime.jsx(core.BuilderComponentProvider,{components:e,children:jsxRuntime.jsx(core.SectionProvider,{data:t,children:jsxRuntime.jsx(jsxRuntime.Fragment,{children:s&&jsxRuntime.jsx(core.BuilderProvider,{state:s,children:jsxRuntime.jsx(core.Render,{uid:"ROOT"})},"body")})})})})]})};exports.default=StaticPage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{useMatchMutate as t,useShopStore as n,useBuilderPreviewStore as
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{useMatchMutate as t,useShopStore as o,usePageStore as n,useBuilderPreviewStore as i,useSectionStore as a,useModalStore as d}from"@gem-sdk/core";import{memo as r,useMemo as l,useCallback as s,useEffect as m}from"react";import{getStorefrontApi as c}from"../../libs/get-storefront-api.js";import{createFontUrl as p}from"../../libs/google-fonts.js";import{genCSS as v}from"../../libs/helpers/gen-css.js";import{getFontsFromDataBuilder as w}from"../../libs/helpers/gen-fonts.js";import{shopifyCdnWithGoogleFonts as y}from"../../libs/shopify-cdn-with-google-fonts.js";let globalStyleId="global-style",Toolbox=()=>{let r=t(),u=o(e=>e.provider),f=o(e=>e.changeStorefrontInfo),h=n(e=>e.setDynamicProduct),g=n(e=>e.setDynamicCollection),E=i(e=>e.initState),L=i(e=>e.state),b=i(e=>e.forceChangeState),S=i(e=>e.forceChangeItemProp),I=i(e=>e.changeItemPropByKey),T=i(e=>e.addItem),j=i(e=>e.moveItem),x=i(e=>e.removeItem),C=a(e=>e.addSection),N=o(e=>e.changeSwatches),$=o(e=>e.changeLayoutSettings),q=o(e=>e.changeCreateThemeSectionCount),A=o(e=>e.changeShopPlan),k=d(e=>e.clearModal),H=l(()=>w(L),[L]),O=(e,t)=>{if(!t?.length){let t=document.querySelectorAll(`.${e}`);t.forEach(e=>{e.remove()});return}let o=document.querySelectorAll(`.${e}`);for(let n of(o.forEach(e=>{let o=e.getAttribute("data-font"),n=e.getAttribute("data-font-variant");if(o&&n){let i=t.find(e=>e.family==o&&e.variants.includes(n));i||e.remove()}else e.remove()}),t))if("google"==n.type&&n.variants?.length)for(let t of n.variants){let o=JSON.parse(JSON.stringify(n));o.variants=[t];let i=o.family,a=p([o]);if(a){let o=document.querySelector(`.${e}[data-font="${i}"][data-font-variant="${t}"]`);if(o)continue;{let o=document.createElement("link");o.className=e,o.dataset.font=i,o.dataset.fontVariant=t,o.href=a,o.rel="stylesheet",document.head.appendChild(o)}}}},P=s(()=>{r(/query\//,{revalidate:!0})},[r]),M=s(e=>{let t=e.detail;f({url:t.shopHandle?c(t.shopHandle,u):void 0,token:t.shopToken})},[f,u]),B=s(e=>{let t=e.detail;try{if(t.data){let e=v(t.data,t.mobileOnly),o=Object.entries(t.data?.font).map(([,e])=>e).map(e=>{if("custom"==e.type){let t=y.find(t=>t.family==e.family);if(t)return t}return e}),n=document.getElementById(globalStyleId);if(O("google-font-builder",o),n)n.innerHTML=e;else{let t=document.createElement("style");t.id=globalStyleId,t.innerHTML=e,document.head.appendChild(t)}}}catch{}},[]),D=s(e=>{k();try{let t=e.detail;t.data&&("flat"===t.type?b(t.data):E(t.data))}catch{}},[b,E,k]),J=s(e=>{try{let t=e.detail;t.entity&&(T({data:t.entity,id:t.id,position:t.position,type:t.type??"component"}),t?.type!=="section"||Array.isArray(t.entity)||C(t.entity.uid,t.entity))}catch{}},[T,C]),V=s(e=>{try{let t=e.detail;t.uid&&t.propName&&I({id:t.uid,key:t.propName,data:t.propValue,group:t.group})}catch{}},[I]),K=s(e=>{try{let t=e.detail;t.uid&&S(t.uid,t.data,t.group)}catch{}},[S]),z=s(e=>{try{let t=e.detail;t.to&&t.uid&&j(t.uid,t.to,Number(t.position)??0)}catch{}},[j]),F=s(e=>{try{let t=e.detail;t.uid&&x(t.uid)}catch{}},[x]),G=s(e=>{let t=e.detail;try{t.data&&N(t.data)}catch{}},[N]),Q=s(e=>{let t=e.detail;t&&$(t)},[$]),R=s(e=>{let t=e.detail;t&&q(t)},[q]),U=s(e=>{let t=e.detail;t&&A(t)},[A]),W=s(e=>{let t=e.detail;t&&h(t)},[h]),X=s(e=>{let t=e.detail;t&&g(t)},[g]);return m(()=>{H&&O("google-font-element",H)},[H]),m(()=>(window.addEventListener("update-shop-info",M),window.addEventListener("revalidate-query",P),window.addEventListener("init-builder",D),window.addEventListener("add-entity",J),window.addEventListener("remove-entity",F),window.addEventListener("move-entity",z),window.addEventListener("force-update-entity-props",K),window.addEventListener("update-entity-prop",V),window.addEventListener("set-global-style",B),window.addEventListener("update-global-swatches-data",G),window.addEventListener("on-off-header-footer",Q),window.addEventListener("update-create-theme-section-count",R),window.addEventListener("update-shop-plan",U),window.addEventListener("set-dynamic-product",W),window.addEventListener("set-dynamic-collection",X),()=>{window.removeEventListener("update-shop-info",M),window.removeEventListener("revalidate-query",P),window.removeEventListener("init-builder",D),window.removeEventListener("add-entity",J),window.removeEventListener("remove-entity",F),window.removeEventListener("move-entity",z),window.removeEventListener("update-entity-prop",V),window.removeEventListener("set-global-style",B),window.removeEventListener("update-global-swatches-data",G),window.removeEventListener("on-off-header-footer",Q),window.removeEventListener("update-create-theme-section-count",R),window.removeEventListener("update-shop-plan",U),window.removeEventListener("set-dynamic-product",W),window.removeEventListener("set-dynamic-collection",X)}),[J,U,K,V,D,z,F,B,G,P,M,Q,R,W,X]),e("div",{className:"toolbox"})};var Toolbox$1=r(Toolbox);export{Toolbox$1 as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
let getFontsFromDataBuilder=t=>{let e=[];for(let o in t)if(Object.prototype.hasOwnProperty.call(t,o)){let i=t[o],n=i.styles,
|
|
1
|
+
let getFontsFromDataBuilder=t=>{let e=[];for(let o in t)if(Object.prototype.hasOwnProperty.call(t,o)){let i=t[o],n=i.styles,l=i.settings;getFontFromGroupSetting(e,n),getFontFromGroupSetting(e,l)}return e},getFontFromGroupSetting=(t,e)=>{for(let o in e)if(Object.prototype.hasOwnProperty.call(e,o)){let i=e[o];if(i){let e=i.custom?.fontFamily,o=i.custom?.fontVariants;if(e&&o?.length){let n=o.map(t=>"regular"===t?"400":t),l=i.custom?.fontWeight&&n.includes(i.custom?.fontWeight)?i.custom?.fontWeight:n[0];if(l){let o=t.find(t=>t.family==e&&t.variants.includes(l));if(!o){let o=t.find(t=>t.family==e);if(o)o.variants.push(l);else{let o=[l];"700"!==l&&n.includes("700")&&o.push("700"),t.push({family:e,variants:o,subsets:[],type:"google"})}}}}}}};export{getFontFromGroupSetting,getFontsFromDataBuilder};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as o,Fragment as e,jsx as t}from"react/jsx-runtime";import{
|
|
1
|
+
import{jsxs as o,Fragment as e,jsx as t}from"react/jsx-runtime";import{PageProvider as r,BuilderComponentProvider as i,SectionProvider as m,BuilderPreviewProvider as n,RenderPreview as l}from"@gem-sdk/core";import{NextSeo as d}from"next-seo";import s from"next/head";import{useState as a,useMemo as c,useEffect as p}from"react";import u from"../components/builder/Toolbox.js";import f from"../components/Header.js";import g from"../components/Footer.js";import h from"./CollectionGlobalProvider.js";import T from"../components/builder/PopupManager.js";import y from"../components/image-to-layout/ImageToLayout.js";import b from"../components/image-to-layout/AddSectionImageToLayout.js";import O from"../components/builder/Toolbar.js";let BuilderPage=({components:j,seo:v,themeStyle:x,fontStyle:L,sectionData:I,pageType:R,editorImageToLayout:P,isThemeSectionEditor:_})=>{let[N,S]=a(!1),C=c(()=>({ROOT:{uid:"ROOT",tag:"Root",label:"Root",childrens:[]}}),[]);return p(()=>{S(!0)},[]),o(e,{children:[t(d,{...v}),o(s,{children:[x&&t("style",{type:"text/css",id:"global-style",dangerouslySetInnerHTML:{__html:x}}),L&&t("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:L}})]}),t(r,{children:t(i,{components:j,children:t(m,{data:I,children:o(n,{state:C,isThemeSectionEditor:_,children:[t(u,{}),t(O,{}),t(T,{}),N&&o("div",{className:"builder z-1 relative",children:[_?t("div",{className:"h-[40px] bg-[#f4f4f4]"}):t(f,{}),t("div",{id:"storefront",className:_?"theme-section-editor":"",children:"GP_COLLECTION"===R?t(h,{children:t(l,{uid:"ROOT"})}):t(l,{uid:"ROOT"})}),t(y,{editorImageToLayout:P||!1}),t(b,{editorImageToLayout:P||!1}),t("div",{id:"visual-content"}),!_&&t(g,{})]})]},"preview")})})})]})};export{BuilderPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{PageProvider as r,BuilderComponentProvider as l,SectionProvider as i,BuilderProvider as n,Render as d}from"@gem-sdk/core";import{NextSeo as c}from"next-seo";import a from"next/dynamic";import m from"next/head";import{useRouter as s}from"next/router";let CollectionProvider=a(()=>import("@gem-sdk/core").then(e=>e.CollectionProvider)),CollectionDetailPage=({seo:a,components:h,builderData:p,sectionData:g,themeStyle:f,collection:x,fontStyle:y})=>{let u=s();return u.isFallback?e("div",{children:"Loading..."}):t(o,{children:[e(c,{...a}),t(m,{children:[f&&e("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:f}}),y&&e("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:y}})]}),e(r,{children:e(l,{components:h,children:e(i,{data:g,children:e(CollectionProvider,{collection:x,children:p&&e(n,{state:p,children:e(d,{uid:"ROOT"})})})})})})]})};export{CollectionDetailPage as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import{PageProvider as o,BuilderComponentProvider as d,SectionProvider as i,BuilderProvider as n,Render as a,AddOn as l}from"@gem-sdk/core";import{NextSeo as c}from"next-seo";import m from"next/dynamic";import s from"next/head";import{useRouter as u}from"next/router";let ProductProvider=m(()=>import("@gem-sdk/core").then(e=>e.ProductProvider)),ProductDetailPage=({themeStyle:m,fontStyle:h,seo:p,product:g,components:P,builderData:y,sectionData:f})=>{let x=u();return x.isFallback?e("div",{children:"Loading..."}):t(r,{children:[e(c,{...p}),t(s,{children:[m&&e("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:m}}),h&&e("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:h}})]}),e(o,{children:e(d,{components:P,children:e(i,{data:f,children:t(ProductProvider,{product:g,children:[y&&e(n,{state:y,children:e(a,{uid:"ROOT"})}),e(l,{name:"sticky-add-to-cart"})]})})})})]})};export{ProductDetailPage as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import{
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import{PageProvider as s,BuilderComponentProvider as l,SectionProvider as i,BuilderProvider as r,Render as n}from"@gem-sdk/core";import{NextSeo as m}from"next-seo";import o from"next/head";import{useRouter as d}from"next/router";import{useTrackingView as c}from"../libs/hooks/use-tracking-view.js";import{parseHtml as p}from"../libs/parse-html.js";let StaticPageV2=({components:f,builderData:h,sectionData:u,seo:g,themeStyle:_,fontStyle:y,elementFontStyle:x,customCodeHeader:b,shopToken:k,pageHandle:N})=>{let S=d();return(c(k,N,S.isFallback),S.isFallback)?e("div",{className:"flex h-full items-center justify-center",children:t("div",{className:"flex gap-2",children:[e("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_alternate] rounded-full bg-slate-800"}),e("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_200ms_linear_alternate] rounded-full bg-slate-800"}),e("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_500ms_alternate] rounded-full bg-slate-800"})]})}):t(a,{children:[e(m,{...g}),t(o,{children:[p(b,!0),_&&e("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:_}}),y&&e("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:y}}),x&&x.map(t=>e("style",{"data-id":"google-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:t}},t))]}),e(s,{children:e(l,{components:f,children:e(i,{data:u,children:h?.map(t=>e(r,{state:t.data,lazy:t.lazy,priority:t.priority,children:e(n,{uid:t.uid})},t.uid))})})})]})};export{StaticPageV2};
|
package/dist/esm/pages/static.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import{BuilderComponentProvider as s,SectionProvider as
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import{PageProvider as l,BuilderComponentProvider as s,SectionProvider as n,BuilderProvider as r,Render as i}from"@gem-sdk/core";import{NextSeo as d}from"next-seo";import m from"next/head";import{useRouter as c}from"next/router";let StaticPage=({components:o,builderData:f,sectionData:h,seo:u,themeStyle:p,fontStyle:_})=>{let g=c();return g.isFallback?e("div",{className:"flex h-full items-center justify-center",children:t("div",{className:"flex gap-2",children:[e("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_alternate] rounded-full bg-slate-800"}),e("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_200ms_linear_alternate] rounded-full bg-slate-800"}),e("span",{className:"aspect-square h-2 animate-[flashing_500ms_infinite_500ms_alternate] rounded-full bg-slate-800"})]})}):t(a,{children:[e(d,{...u}),t(m,{children:[p&&e("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:p}}),_&&e("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:_}})]}),e(l,{children:e(s,{components:o,children:e(n,{data:h,children:e(a,{children:f&&e(r,{state:f,children:e(i,{uid:"ROOT"})},"body")})})})})]})};export{StaticPage as default};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gem-sdk/pages",
|
|
3
|
-
"version": "1.14.0-dev.
|
|
3
|
+
"version": "1.14.0-dev.373",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "dist/cjs/index.js",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"next-seo": "^6.0.0"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@gem-sdk/core": "1.14.0-dev.
|
|
28
|
+
"@gem-sdk/core": "1.14.0-dev.373",
|
|
29
29
|
"@gem-sdk/plugin-cookie-bar": "1.14.0-dev.284",
|
|
30
30
|
"@gem-sdk/plugin-quick-view": "1.14.0-dev.284",
|
|
31
31
|
"@gem-sdk/plugin-sticky-add-to-cart": "1.14.0-dev.284"
|