@gem-sdk/pages 2.0.0-dev.1212 → 2.0.0-dev.1220

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/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";var getCollectionProps=require("./libs/api/get-collection-props.js"),getHomePageProps=require("./libs/api/get-home-page-props.js"),getHomePagePropsV2=require("./libs/api/get-home-page-props-v2.js"),getPreviewProps=require("./libs/api/get-preview-props.js"),getBuilderProps=require("./libs/api/get-builder-props.js"),getProductProps=require("./libs/api/get-product-props.js"),getStaticPagePropsV2=require("./libs/api/get-static-page-props-v2.js"),getSharePageProps=require("./libs/api/get-share-page-props.js"),getPostPurchasePropsPreview=require("./libs/api/get-post-purchase-props-preview.js"),getStaticPagePropsPreview=require("./libs/api/get-static-page-props-preview.js"),getPreviewContentProps=require("./libs/api/get-preview-content-props.js"),fetcher=require("./libs/fetcher.js"),getLayout=require("./libs/get-layout.js"),genCss=require("./libs/helpers/gen-css.js"),useTrackingView=require("./libs/hooks/use-tracking-view.js"),usePagePreview=require("./libs/hooks/usePagePreview.js"),userAgent=require("./libs/helpers/user-agent.js"),normalize=require("./libs/helpers/normalize.js"),getFallback=require("./libs/helpers/get-fallback.js"),common=require("./libs/helpers/common.js"),getStaticPaths=require("./libs/getStaticPaths.js"),genFonts=require("./libs/helpers/gen-fonts.js"),googleFonts=require("./libs/google-fonts.js"),getStorefrontApi=require("./libs/get-storefront-api.js"),ErrorBoundary=require("./components/ErrorBoundary.js"),ErrorFallback=require("./components/ErrorFallback.js"),_404=require("./pages/404.js"),_500=require("./pages/500.js"),GoogleAnalytic=require("./components/GoogleAnalytic.js"),FacebookPixel=require("./components/FacebookPixel.js"),TikTokPixel=require("./components/TikTokPixel.js"),collectionDetail=require("./pages/collection-detail.js"),preview=require("./pages/preview.js"),productDetail=require("./pages/product-detail.js"),_static=require("./pages/static.js"),builder=require("./pages/builder.js"),staticV2=require("./pages/static-v2.js"),previewTemplate=require("./pages/preview-template.js");exports.getCollectionProps=getCollectionProps.getCollectionProps,exports.getHomePageProps=getHomePageProps.getHomePageProps,exports.getHomePagePropsV2=getHomePagePropsV2.getHomePagePropsV2,exports.getPreviewProps=getPreviewProps.getPreviewProps,exports.getBuilderProps=getBuilderProps.getBuilderProps,exports.getProductProps=getProductProps.getProductProps,exports.getStaticPagePropsV2=getStaticPagePropsV2.getStaticPagePropsV2,exports.getSharePageProps=getSharePageProps.getSharePageProps,exports.getPostPurchasePropsPreview=getPostPurchasePropsPreview.getPostPurchasePropsPreview,exports.getStaticPagePropsPreview=getStaticPagePropsPreview.getStaticPagePropsPreview,exports.getSharePageContentProps=getPreviewContentProps.getSharePageContentProps,exports.createAppAPIFetcher=fetcher.createAppAPIFetcher,exports.createFetcher=fetcher.createFetcher,exports.createShopifyFetcher=fetcher.createShopifyFetcher,exports.createTemplateFetcher=fetcher.createTemplateFetcher,exports.getLayout=getLayout.getLayout,exports.genCSS=genCss.genCSS,exports.useTrackingView=useTrackingView.useTrackingView,exports.usePagePreview=usePagePreview.usePagePreview,exports.isBot=userAgent.isBot,exports.normalizePageSectionResponseV2=normalize.normalizePageSectionResponseV2,exports.parseBuilderTemplateV2=normalize.parseBuilderTemplateV2,exports.getFallbackV2=getFallback.getFallbackV2,exports.retryWithDelay=common.retryWithDelay,exports.getStaticPaths=getStaticPaths.getStaticPaths,exports.getFontFromGroupSetting=genFonts.getFontFromGroupSetting,exports.getFontsFromDataBuilder=genFonts.getFontsFromDataBuilder,exports.getFontFromGlobalStyle=googleFonts.getFontFromGlobalStyle,exports.getFonts=googleFonts.getFonts,exports.getStorefrontApi=getStorefrontApi.getStorefrontApi,exports.ErrorBoundary=ErrorBoundary.ErrorBoundary,exports.ErrorFallback=ErrorFallback.ErrorFallback,exports.Page404=_404.Page404,exports.Page500=_500.Page500,exports.GoogleAnalytic=GoogleAnalytic.GoogleAnalytic,exports.FacebookPixel=FacebookPixel.FacebookPixel,exports.TikTokPixel=TikTokPixel.TikTokPixel,exports.CollectionDetailPage=collectionDetail.default,exports.PreviewPage=preview.PreviewPage,exports.ProductDetailPage=productDetail.default,exports.StaticPage=_static.default,exports.BuilderPage=builder.BuilderPage,exports.StaticPageV2=staticV2.StaticPageV2,exports.PreviewTemplate=previewTemplate.PreviewTemplate;
1
+ "use strict";var getCollectionProps=require("./libs/api/get-collection-props.js"),getCollectionSharePageProps=require("./libs/api/get-collection-share-page-props.js"),getHomePageProps=require("./libs/api/get-home-page-props.js"),getHomePagePropsV2=require("./libs/api/get-home-page-props-v2.js"),getPreviewProps=require("./libs/api/get-preview-props.js"),getBuilderProps=require("./libs/api/get-builder-props.js"),getProductProps=require("./libs/api/get-product-props.js"),getStaticPagePropsV2=require("./libs/api/get-static-page-props-v2.js"),getSharePageProps=require("./libs/api/get-share-page-props.js"),getPostPurchasePropsPreview=require("./libs/api/get-post-purchase-props-preview.js"),getStaticPagePropsPreview=require("./libs/api/get-static-page-props-preview.js"),getPreviewContentProps=require("./libs/api/get-preview-content-props.js"),fetcher=require("./libs/fetcher.js"),getLayout=require("./libs/get-layout.js"),genCss=require("./libs/helpers/gen-css.js"),useTrackingView=require("./libs/hooks/use-tracking-view.js"),usePagePreview=require("./libs/hooks/usePagePreview.js"),userAgent=require("./libs/helpers/user-agent.js"),normalize=require("./libs/helpers/normalize.js"),getFallback=require("./libs/helpers/get-fallback.js"),common=require("./libs/helpers/common.js"),getStaticPaths=require("./libs/getStaticPaths.js"),genFonts=require("./libs/helpers/gen-fonts.js"),googleFonts=require("./libs/google-fonts.js"),getStorefrontApi=require("./libs/get-storefront-api.js"),ErrorBoundary=require("./components/ErrorBoundary.js"),ErrorFallback=require("./components/ErrorFallback.js"),_404=require("./pages/404.js"),_500=require("./pages/500.js"),GoogleAnalytic=require("./components/GoogleAnalytic.js"),FacebookPixel=require("./components/FacebookPixel.js"),TikTokPixel=require("./components/TikTokPixel.js"),collectionDetail=require("./pages/collection-detail.js"),preview=require("./pages/preview.js"),productDetail=require("./pages/product-detail.js"),_static=require("./pages/static.js"),builder=require("./pages/builder.js"),staticV2=require("./pages/static-v2.js"),previewTemplate=require("./pages/preview-template.js");exports.getCollectionProps=getCollectionProps.getCollectionProps,exports.getCollectionSharePageProps=getCollectionSharePageProps.getCollectionSharePageProps,exports.getHomePageProps=getHomePageProps.getHomePageProps,exports.getHomePagePropsV2=getHomePagePropsV2.getHomePagePropsV2,exports.getPreviewProps=getPreviewProps.getPreviewProps,exports.getBuilderProps=getBuilderProps.getBuilderProps,exports.getProductProps=getProductProps.getProductProps,exports.getStaticPagePropsV2=getStaticPagePropsV2.getStaticPagePropsV2,exports.getSharePageProps=getSharePageProps.getSharePageProps,exports.getPostPurchasePropsPreview=getPostPurchasePropsPreview.getPostPurchasePropsPreview,exports.getStaticPagePropsPreview=getStaticPagePropsPreview.getStaticPagePropsPreview,exports.getSharePageContentProps=getPreviewContentProps.getSharePageContentProps,exports.createAppAPIFetcher=fetcher.createAppAPIFetcher,exports.createFetcher=fetcher.createFetcher,exports.createShopifyFetcher=fetcher.createShopifyFetcher,exports.createTemplateFetcher=fetcher.createTemplateFetcher,exports.getLayout=getLayout.getLayout,exports.genCSS=genCss.genCSS,exports.useTrackingView=useTrackingView.useTrackingView,exports.usePagePreview=usePagePreview.usePagePreview,exports.isBot=userAgent.isBot,exports.normalizePageSectionResponseV2=normalize.normalizePageSectionResponseV2,exports.parseBuilderTemplateV2=normalize.parseBuilderTemplateV2,exports.getFallbackV2=getFallback.getFallbackV2,exports.retryWithDelay=common.retryWithDelay,exports.getStaticPaths=getStaticPaths.getStaticPaths,exports.getFontFromGroupSetting=genFonts.getFontFromGroupSetting,exports.getFontsFromDataBuilder=genFonts.getFontsFromDataBuilder,exports.getFontFromGlobalStyle=googleFonts.getFontFromGlobalStyle,exports.getFonts=googleFonts.getFonts,exports.getStorefrontApi=getStorefrontApi.getStorefrontApi,exports.ErrorBoundary=ErrorBoundary.ErrorBoundary,exports.ErrorFallback=ErrorFallback.ErrorFallback,exports.Page404=_404.Page404,exports.Page500=_500.Page500,exports.GoogleAnalytic=GoogleAnalytic.GoogleAnalytic,exports.FacebookPixel=FacebookPixel.FacebookPixel,exports.TikTokPixel=TikTokPixel.TikTokPixel,exports.CollectionDetailPage=collectionDetail.default,exports.PreviewPage=preview.PreviewPage,exports.ProductDetailPage=productDetail.default,exports.StaticPage=_static.default,exports.BuilderPage=builder.BuilderPage,exports.StaticPageV2=staticV2.StaticPageV2,exports.PreviewTemplate=previewTemplate.PreviewTemplate;
@@ -0,0 +1 @@
1
+ "use strict";var core=require("@gem-sdk/core"),parseJson=require("../helpers/parse-json.js");const getCollectionSharePageProps=e=>async o=>{let r={first:1,orderBy:{direction:"DESC",field:"UPDATED_AT"},where:{isSample:!1,baseID:o||void 0}},[s]=await Promise.all([e([core.CollectionsDocument,r])]);if(!s||!s?.collections?.edges?.[0]?.node)throw Error("Collection not found");let l=s?.collections?.edges?.[0]?.node;return parseJson.serializableJson({collection:l})};exports.getCollectionSharePageProps=getCollectionSharePageProps;
@@ -1 +1 @@
1
- "use strict";var nextjs=require("@sentry/nextjs"),customFonts=require("../custom-fonts.js"),googleFonts=require("../google-fonts.js"),genCss=require("../helpers/gen-css.js"),getFallback=require("../helpers/get-fallback.js"),normalize=require("../helpers/normalize.js"),parseJson=require("../helpers/parse-json.js");const getSharePageContentProps=(e,t)=>async l=>{try{let{sharedPage:s,customFonts:a,publicToken:r}=await e([l]);if(!s||!r)return null;let{page:o,themeStyle:n,pageMeta:u,shopMeta:i}=s,{sectionPosition:g}=o??{},c=normalize.parseBuilderTemplateV2({...s,sectionPosition:g}),[p,F,m,f]=await Promise.allSettled([googleFonts.getFontStyleFromPageTemplate(c),googleFonts.getFontFromGlobalStyle(n?.data),getFallback.getFallbackV2(()=>t([r]),c,!1,!0),customFonts.getCustomFonts(a)]),d="fulfilled"===p.status?p.value:null,j="fulfilled"===F.status?F.value:null,P="fulfilled"===m.status?m.value:null,S="fulfilled"===f.status?f.value:null;return parseJson.serializableJson({builderData:c,page:o,themeStyle:genCss.genCSS(n?.data,!1),pageMeta:u,shopMeta:i,elementFontStyle:d,fontStyle:j,swr:{fallback:P||void 0},customFonts:S,publicStoreFrontData:r?{token:r,endpoint:process.env.NEXT_PUBLIC_API_URL??""}:null})}catch(e){return nextjs.captureException(e),null}};exports.getSharePageContentProps=getSharePageContentProps;
1
+ "use strict";var nextjs=require("@sentry/nextjs"),customFonts=require("../custom-fonts.js"),googleFonts=require("../google-fonts.js"),genCss=require("../helpers/gen-css.js"),getFallback=require("../helpers/get-fallback.js"),normalize=require("../helpers/normalize.js"),parseJson=require("../helpers/parse-json.js");const getSharePageContentProps=(e,t)=>async l=>{try{let{sharedPage:s,customFonts:a,publicToken:r}=await e([l]);if(!s||!r)return null;let{page:o,themeStyle:n,pageMeta:u,shopMeta:g,moneyFormat:i,moneyWithCurrencyFormat:p}=s,{sectionPosition:c}=o??{},F=normalize.parseBuilderTemplateV2({...s,sectionPosition:c}),[m,f,d,j]=await Promise.allSettled([googleFonts.getFontStyleFromPageTemplate(F),googleFonts.getFontFromGlobalStyle(n?.data),getFallback.getFallbackV2(()=>t([r]),F,!1,!0),customFonts.getCustomFonts(a)]),P="fulfilled"===m.status?m.value:null,S="fulfilled"===f.status?f.value:null,b="fulfilled"===d.status?d.value:null,h="fulfilled"===j.status?j.value:null;return parseJson.serializableJson({builderData:F,page:o,themeStyle:genCss.genCSS(n?.data,!1),pageMeta:u,shopMeta:g,elementFontStyle:P,fontStyle:S,swr:{fallback:b||void 0},customFonts:h,publicStoreFrontData:r?{token:r,endpoint:process.env.NEXT_PUBLIC_API_URL??""}:null,pageType:o?.type,moneyFormat:i,moneyWithCurrencyFormat:p})}catch(e){return nextjs.captureException(e),null}};exports.getSharePageContentProps=getSharePageContentProps;
@@ -1 +1 @@
1
- "use strict";var nextjs=require("@sentry/nextjs"),parseJson=require("../helpers/parse-json.js");const getSharePageProps=e=>async t=>{try{let{sharedPage:r,publicToken:a}=await e([t]);if(!r||!a)return null;let{share:s,shopMeta:n,page:l}=r,i=s?.thumbnails?Array.isArray(s.thumbnails)?s.thumbnails.map(e=>({url:e})):"string"==typeof s.thumbnails?[{url:s.thumbnails}]:[]:[],o={defaultTitle:n?.shop?.name??"",title:s?.title,openGraph:{site_name:n?.shop?.name??"",locale:n?.localization?.country?.isoCode??"",title:s?.title??n?.shop?.name??"",images:i},nofollow:!0,noindex:!0};return parseJson.serializableJson({seo:o,share:s,page:l})}catch(e){return nextjs.captureException(e),null}};exports.getSharePageProps=getSharePageProps;
1
+ "use strict";var nextjs=require("@sentry/nextjs"),parseJson=require("../helpers/parse-json.js");const getSharePageProps=e=>async t=>{try{let{sharedPage:r,publicToken:a}=await e([t]);if(!r||!a)return null;let{share:s,shopMeta:n,page:l,pageMeta:i}=r,o=s?.thumbnails?Array.isArray(s.thumbnails)?s.thumbnails.map(e=>({url:e})):"string"==typeof s.thumbnails?[{url:s.thumbnails}]:[]:[],u={defaultTitle:n?.shop?.name??"",title:s?.title,openGraph:{site_name:n?.shop?.name??"",locale:n?.localization?.country?.isoCode??"",title:s?.title??n?.shop?.name??"",images:o},nofollow:!0,noindex:!0};return parseJson.serializableJson({seo:u,share:s,page:l,pageMeta:i})}catch(e){return nextjs.captureException(e),null}};exports.getSharePageProps=getSharePageProps;
@@ -1,5 +1,5 @@
1
- "use strict";var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),Head=require("next/head"),router=require("next/router"),parseHtml=require("../libs/parse-html.js"),react=require("react"),CollectionGlobalProvider=require("./CollectionGlobalProvider.js");const PreviewTemplate=({components:e,builderData:t,sectionData:s,themeStyle:r,fontStyle:n,elementFontStyle:a,customCodeHeader:i,customFonts:l,pageBackground:u,publicStoreFrontData:o,page:c})=>{let d=router.useRouter(),{t:m}=core.useI18n(),x="custom-code-header",g=c?.type==="GP_COLLECTION"?CollectionGlobalProvider.default:react.Fragment;return(react.useEffect(()=>{let e=document.querySelectorAll(`[class*="${x}-"]`),t=[];e.length>1&&e.forEach(e=>{let s=e.className;if(t.includes(s)){e.remove();return}t.push(s)})},[]),d.isFallback)?jsxRuntime.jsx("div",{className:"gp-flex gp-h-[100vh] gp-items-center gp-justify-center",children:jsxRuntime.jsxs("div",{className:"gp-flex gp-gap-2",children:[jsxRuntime.jsx("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_alternate] gp-rounded-full gp-bg-slate-800"}),jsxRuntime.jsx("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_200ms_linear_alternate] gp-rounded-full gp-bg-slate-800"}),jsxRuntime.jsx("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_500ms_alternate] gp-rounded-full gp-bg-slate-800"})]})}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(Head,{children:[parseHtml.parseHtml(x,i,!0),r&&jsxRuntime.jsx("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:r}},"global-style"),n&&jsxRuntime.jsx("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:n}},"google-fonts"),a&&a.map(e=>jsxRuntime.jsx("style",{"data-id":"google-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:e}},e)),l&&jsxRuntime.jsx("style",{"data-id":"custom-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:l}},n),u?.isUsePageBackground&&u?.background&&jsxRuntime.jsx("style",{children:`
1
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),Head=require("next/head"),router=require("next/router"),parseHtml=require("../libs/parse-html.js"),react=require("react"),dynamic=require("next/dynamic");const PreviewTemplate=({components:e,builderData:t,sectionData:s,themeStyle:r,fontStyle:n,elementFontStyle:i,customCodeHeader:a,customFonts:l,pageBackground:u,publicStoreFrontData:c,page:m,collection:o})=>{let d=router.useRouter(),{t:x}=core.useI18n(),g="custom-code-header",p=dynamic(()=>import("@gem-sdk/core").then(e=>e.CollectionProvider)),j=m?.type==="GP_COLLECTION"?p:react.Fragment;return(react.useEffect(()=>{let e=document.querySelectorAll(`[class*="${g}-"]`),t=[];e.length>1&&e.forEach(e=>{let s=e.className;if(t.includes(s)){e.remove();return}t.push(s)})},[]),d.isFallback)?jsxRuntime.jsx("div",{className:"gp-flex gp-h-[100vh] gp-items-center gp-justify-center",children:jsxRuntime.jsxs("div",{className:"gp-flex gp-gap-2",children:[jsxRuntime.jsx("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_alternate] gp-rounded-full gp-bg-slate-800"}),jsxRuntime.jsx("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_200ms_linear_alternate] gp-rounded-full gp-bg-slate-800"}),jsxRuntime.jsx("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_500ms_alternate] gp-rounded-full gp-bg-slate-800"})]})}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(Head,{children:[parseHtml.parseHtml(g,a,!0),r&&jsxRuntime.jsx("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:r}},"global-style"),n&&jsxRuntime.jsx("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:n}},"google-fonts"),i&&i.map(e=>jsxRuntime.jsx("style",{"data-id":"google-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:e}},e)),l&&jsxRuntime.jsx("style",{"data-id":"custom-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:l}},n),u?.isUsePageBackground&&u?.background&&jsxRuntime.jsx("style",{children:`
2
2
  body {
3
3
  background: ${u.background};
4
4
  }
5
- `},`page_background_${u?.background}`)]}),jsxRuntime.jsx(core.PageProvider,{publicStoreFrontData:o,children:jsxRuntime.jsx(g,{children:jsxRuntime.jsx(core.BuilderComponentProvider,{components:e,children:jsxRuntime.jsx("div",{children:jsxRuntime.jsx(core.SectionProvider,{data:s,children:jsxRuntime.jsx(core.I18nProvider,{t:m,children:t?.map(e=>jsxRuntime.jsx(jsxRuntime.Fragment,{children:jsxRuntime.jsx(core.BuilderProvider,{state:e.data,lazy:e.lazy,priority:e.priority,isPreview:!0,children:jsxRuntime.jsx(core.Render,{uid:e.uid})},e.uid)}))})})})})})})]})};exports.PreviewTemplate=PreviewTemplate;
5
+ `},`page_background_${u?.background}`)]}),jsxRuntime.jsx(core.PageProvider,{publicStoreFrontData:c,children:jsxRuntime.jsx(j,{collection:o,children:jsxRuntime.jsx(core.BuilderComponentProvider,{components:e,children:jsxRuntime.jsx("div",{children:jsxRuntime.jsx(core.SectionProvider,{data:s,children:jsxRuntime.jsx(core.I18nProvider,{t:x,children:t?.map(e=>jsxRuntime.jsx(jsxRuntime.Fragment,{children:jsxRuntime.jsx(core.BuilderProvider,{state:e.data,lazy:e.lazy,priority:e.priority,isPreview:!0,children:jsxRuntime.jsx(core.Render,{uid:e.uid})},e.uid)}))})})})})})})]})};exports.PreviewTemplate=PreviewTemplate;
package/dist/esm/index.js CHANGED
@@ -1 +1 @@
1
- export{getCollectionProps}from"./libs/api/get-collection-props.js";export{getHomePageProps}from"./libs/api/get-home-page-props.js";export{getHomePagePropsV2}from"./libs/api/get-home-page-props-v2.js";export{getPreviewProps}from"./libs/api/get-preview-props.js";export{getBuilderProps}from"./libs/api/get-builder-props.js";export{getProductProps}from"./libs/api/get-product-props.js";export{getStaticPagePropsV2}from"./libs/api/get-static-page-props-v2.js";export{getSharePageProps}from"./libs/api/get-share-page-props.js";export{getPostPurchasePropsPreview}from"./libs/api/get-post-purchase-props-preview.js";export{getStaticPagePropsPreview}from"./libs/api/get-static-page-props-preview.js";export{getSharePageContentProps}from"./libs/api/get-preview-content-props.js";export{createAppAPIFetcher,createFetcher,createShopifyFetcher,createTemplateFetcher}from"./libs/fetcher.js";export{getLayout}from"./libs/get-layout.js";export{genCSS}from"./libs/helpers/gen-css.js";export{useTrackingView}from"./libs/hooks/use-tracking-view.js";export{usePagePreview}from"./libs/hooks/usePagePreview.js";export{isBot}from"./libs/helpers/user-agent.js";export{normalizePageSectionResponseV2,parseBuilderTemplateV2}from"./libs/helpers/normalize.js";export{getFallbackV2}from"./libs/helpers/get-fallback.js";export{retryWithDelay}from"./libs/helpers/common.js";export{getStaticPaths}from"./libs/getStaticPaths.js";export{getFontFromGroupSetting,getFontsFromDataBuilder}from"./libs/helpers/gen-fonts.js";export{getFontFromGlobalStyle,getFonts}from"./libs/google-fonts.js";export{getStorefrontApi}from"./libs/get-storefront-api.js";export{ErrorBoundary}from"./components/ErrorBoundary.js";export{ErrorFallback}from"./components/ErrorFallback.js";export{Page404}from"./pages/404.js";export{Page500}from"./pages/500.js";export{GoogleAnalytic}from"./components/GoogleAnalytic.js";export{FacebookPixel}from"./components/FacebookPixel.js";export{TikTokPixel}from"./components/TikTokPixel.js";export{default as CollectionDetailPage}from"./pages/collection-detail.js";export{PreviewPage}from"./pages/preview.js";export{default as ProductDetailPage}from"./pages/product-detail.js";export{default as StaticPage}from"./pages/static.js";export{BuilderPage}from"./pages/builder.js";export{StaticPageV2}from"./pages/static-v2.js";export{PreviewTemplate}from"./pages/preview-template.js";
1
+ export{getCollectionProps}from"./libs/api/get-collection-props.js";export{getCollectionSharePageProps}from"./libs/api/get-collection-share-page-props.js";export{getHomePageProps}from"./libs/api/get-home-page-props.js";export{getHomePagePropsV2}from"./libs/api/get-home-page-props-v2.js";export{getPreviewProps}from"./libs/api/get-preview-props.js";export{getBuilderProps}from"./libs/api/get-builder-props.js";export{getProductProps}from"./libs/api/get-product-props.js";export{getStaticPagePropsV2}from"./libs/api/get-static-page-props-v2.js";export{getSharePageProps}from"./libs/api/get-share-page-props.js";export{getPostPurchasePropsPreview}from"./libs/api/get-post-purchase-props-preview.js";export{getStaticPagePropsPreview}from"./libs/api/get-static-page-props-preview.js";export{getSharePageContentProps}from"./libs/api/get-preview-content-props.js";export{createAppAPIFetcher,createFetcher,createShopifyFetcher,createTemplateFetcher}from"./libs/fetcher.js";export{getLayout}from"./libs/get-layout.js";export{genCSS}from"./libs/helpers/gen-css.js";export{useTrackingView}from"./libs/hooks/use-tracking-view.js";export{usePagePreview}from"./libs/hooks/usePagePreview.js";export{isBot}from"./libs/helpers/user-agent.js";export{normalizePageSectionResponseV2,parseBuilderTemplateV2}from"./libs/helpers/normalize.js";export{getFallbackV2}from"./libs/helpers/get-fallback.js";export{retryWithDelay}from"./libs/helpers/common.js";export{getStaticPaths}from"./libs/getStaticPaths.js";export{getFontFromGroupSetting,getFontsFromDataBuilder}from"./libs/helpers/gen-fonts.js";export{getFontFromGlobalStyle,getFonts}from"./libs/google-fonts.js";export{getStorefrontApi}from"./libs/get-storefront-api.js";export{ErrorBoundary}from"./components/ErrorBoundary.js";export{ErrorFallback}from"./components/ErrorFallback.js";export{Page404}from"./pages/404.js";export{Page500}from"./pages/500.js";export{GoogleAnalytic}from"./components/GoogleAnalytic.js";export{FacebookPixel}from"./components/FacebookPixel.js";export{TikTokPixel}from"./components/TikTokPixel.js";export{default as CollectionDetailPage}from"./pages/collection-detail.js";export{PreviewPage}from"./pages/preview.js";export{default as ProductDetailPage}from"./pages/product-detail.js";export{default as StaticPage}from"./pages/static.js";export{BuilderPage}from"./pages/builder.js";export{StaticPageV2}from"./pages/static-v2.js";export{PreviewTemplate}from"./pages/preview-template.js";
@@ -0,0 +1 @@
1
+ import{CollectionsDocument as e}from"@gem-sdk/core";import{serializableJson as o}from"../helpers/parse-json.js";let getCollectionSharePageProps=r=>async t=>{let l={first:1,orderBy:{direction:"DESC",field:"UPDATED_AT"},where:{isSample:!1,baseID:t||void 0}},[i]=await Promise.all([r([e,l])]);if(!i||!i?.collections?.edges?.[0]?.node)throw Error("Collection not found");let s=i?.collections?.edges?.[0]?.node;return o({collection:s})};export{getCollectionSharePageProps};
@@ -1 +1 @@
1
- import{captureException as t}from"@sentry/nextjs";import{getCustomFonts as e}from"../custom-fonts.js";import{getFontStyleFromPageTemplate as l,getFontFromGlobalStyle as r}from"../google-fonts.js";import{genCSS as s}from"../helpers/gen-css.js";import{getFallbackV2 as o}from"../helpers/get-fallback.js";import{parseBuilderTemplateV2 as a}from"../helpers/normalize.js";import{serializableJson as n}from"../helpers/parse-json.js";let getSharePageContentProps=(u,f)=>async i=>{try{let{sharedPage:t,customFonts:m,publicToken:p}=await u([i]);if(!t||!p)return null;let{page:c,themeStyle:d,pageMeta:g,shopMeta:h}=t,{sectionPosition:j}=c??{},P=a({...t,sectionPosition:j}),[v,S,b,y]=await Promise.allSettled([l(P),r(d?.data),o(()=>f([p]),P,!1,!0),e(m)]),k="fulfilled"===v.status?v.value:null,w="fulfilled"===S.status?S.value:null,C="fulfilled"===b.status?b.value:null,_="fulfilled"===y.status?y.value:null;return n({builderData:P,page:c,themeStyle:s(d?.data,!1),pageMeta:g,shopMeta:h,elementFontStyle:k,fontStyle:w,swr:{fallback:C||void 0},customFonts:_,publicStoreFrontData:p?{token:p,endpoint:process.env.NEXT_PUBLIC_API_URL??""}:null})}catch(e){return t(e),null}};export{getSharePageContentProps};
1
+ import{captureException as e}from"@sentry/nextjs";import{getCustomFonts as t}from"../custom-fonts.js";import{getFontStyleFromPageTemplate as l,getFontFromGlobalStyle as r}from"../google-fonts.js";import{genCSS as s}from"../helpers/gen-css.js";import{getFallbackV2 as o}from"../helpers/get-fallback.js";import{parseBuilderTemplateV2 as a}from"../helpers/normalize.js";import{serializableJson as n}from"../helpers/parse-json.js";let getSharePageContentProps=(u,p)=>async f=>{try{let{sharedPage:e,customFonts:i,publicToken:m}=await u([f]);if(!e||!m)return null;let{page:c,themeStyle:d,pageMeta:g,shopMeta:h,moneyFormat:j,moneyWithCurrencyFormat:P}=e,{sectionPosition:v}=c??{},y=a({...e,sectionPosition:v}),[S,b,k,w]=await Promise.allSettled([l(y),r(d?.data),o(()=>p([m]),y,!1,!0),t(i)]),C="fulfilled"===S.status?S.value:null,_="fulfilled"===b.status?b.value:null,x="fulfilled"===k.status?k.value:null,D="fulfilled"===w.status?w.value:null;return n({builderData:y,page:c,themeStyle:s(d?.data,!1),pageMeta:g,shopMeta:h,elementFontStyle:C,fontStyle:_,swr:{fallback:x||void 0},customFonts:D,publicStoreFrontData:m?{token:m,endpoint:process.env.NEXT_PUBLIC_API_URL??""}:null,pageType:c?.type,moneyFormat:j,moneyWithCurrencyFormat:P})}catch(t){return e(t),null}};export{getSharePageContentProps};
@@ -1 +1 @@
1
- import{captureException as t}from"@sentry/nextjs";import{serializableJson as e}from"../helpers/parse-json.js";let getSharePageProps=r=>async a=>{try{let{sharedPage:t,publicToken:l}=await r([a]);if(!t||!l)return null;let{share:n,shopMeta:o,page:i}=t,s=n?.thumbnails?Array.isArray(n.thumbnails)?n.thumbnails.map(t=>({url:t})):"string"==typeof n.thumbnails?[{url:n.thumbnails}]:[]:[],m={defaultTitle:o?.shop?.name??"",title:n?.title,openGraph:{site_name:o?.shop?.name??"",locale:o?.localization?.country?.isoCode??"",title:n?.title??o?.shop?.name??"",images:s},nofollow:!0,noindex:!0};return e({seo:m,share:n,page:i})}catch(e){return t(e),null}};export{getSharePageProps};
1
+ import{captureException as t}from"@sentry/nextjs";import{serializableJson as e}from"../helpers/parse-json.js";let getSharePageProps=r=>async a=>{try{let{sharedPage:t,publicToken:l}=await r([a]);if(!t||!l)return null;let{share:n,shopMeta:o,page:i,pageMeta:s}=t,m=n?.thumbnails?Array.isArray(n.thumbnails)?n.thumbnails.map(t=>({url:t})):"string"==typeof n.thumbnails?[{url:n.thumbnails}]:[]:[],p={defaultTitle:o?.shop?.name??"",title:n?.title,openGraph:{site_name:o?.shop?.name??"",locale:o?.localization?.country?.isoCode??"",title:n?.title??o?.shop?.name??"",images:m},nofollow:!0,noindex:!0};return e({seo:p,share:n,page:i,pageMeta:s})}catch(e){return t(e),null}};export{getSharePageProps};
@@ -1,5 +1,5 @@
1
- import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import{useI18n as l,PageProvider as r,BuilderComponentProvider as s,SectionProvider as n,I18nProvider as i,BuilderProvider as o,Render as d}from"@gem-sdk/core";import p from"next/head";import{useRouter as g}from"next/router";import{parseHtml as c}from"../libs/parse-html.js";import{useEffect as m,Fragment as u}from"react";import h from"./CollectionGlobalProvider.js";let PreviewTemplate=({components:f,builderData:y,sectionData:_,themeStyle:b,fontStyle:x,elementFontStyle:v,customCodeHeader:k,customFonts:N,pageBackground:T,publicStoreFrontData:L,page:P})=>{let S=g(),{t:I}=l(),j="custom-code-header",q=P?.type==="GP_COLLECTION"?h:u;return(m(()=>{let e=document.querySelectorAll(`[class*="${j}-"]`),t=[];e.length>1&&e.forEach(e=>{let a=e.className;if(t.includes(a)){e.remove();return}t.push(a)})},[]),S.isFallback)?e("div",{className:"gp-flex gp-h-[100vh] gp-items-center gp-justify-center",children:t("div",{className:"gp-flex gp-gap-2",children:[e("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_alternate] gp-rounded-full gp-bg-slate-800"}),e("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_200ms_linear_alternate] gp-rounded-full gp-bg-slate-800"}),e("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_500ms_alternate] gp-rounded-full gp-bg-slate-800"})]})}):t(a,{children:[t(p,{children:[c(j,k,!0),b&&e("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:b}},"global-style"),x&&e("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:x}},"google-fonts"),v&&v.map(t=>e("style",{"data-id":"google-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:t}},t)),N&&e("style",{"data-id":"custom-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:N}},x),T?.isUsePageBackground&&T?.background&&e("style",{children:`
1
+ import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import{useI18n as l,PageProvider as r,BuilderComponentProvider as n,SectionProvider as s,I18nProvider as i,BuilderProvider as o,Render as d}from"@gem-sdk/core";import c from"next/head";import{useRouter as p}from"next/router";import{parseHtml as g}from"../libs/parse-html.js";import{useEffect as m,Fragment as u}from"react";import h from"next/dynamic";let PreviewTemplate=({components:f,builderData:y,sectionData:_,themeStyle:b,fontStyle:x,elementFontStyle:k,customCodeHeader:v,customFonts:N,pageBackground:T,publicStoreFrontData:L,page:P,collection:S})=>{let I=p(),{t:q}=l(),H="custom-code-header",M=h(()=>import("@gem-sdk/core").then(e=>e.CollectionProvider)),j=P?.type==="GP_COLLECTION"?M:u;return(m(()=>{let e=document.querySelectorAll(`[class*="${H}-"]`),t=[];e.length>1&&e.forEach(e=>{let a=e.className;if(t.includes(a)){e.remove();return}t.push(a)})},[]),I.isFallback)?e("div",{className:"gp-flex gp-h-[100vh] gp-items-center gp-justify-center",children:t("div",{className:"gp-flex gp-gap-2",children:[e("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_alternate] gp-rounded-full gp-bg-slate-800"}),e("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_200ms_linear_alternate] gp-rounded-full gp-bg-slate-800"}),e("span",{className:"gp-aspect-square gp-h-2 gp-animate-[flashing_500ms_infinite_500ms_alternate] gp-rounded-full gp-bg-slate-800"})]})}):t(a,{children:[t(c,{children:[g(H,v,!0),b&&e("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:b}},"global-style"),x&&e("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:x}},"google-fonts"),k&&k.map(t=>e("style",{"data-id":"google-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:t}},t)),N&&e("style",{"data-id":"custom-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:N}},x),T?.isUsePageBackground&&T?.background&&e("style",{children:`
2
2
  body {
3
3
  background: ${T.background};
4
4
  }
5
- `},`page_background_${T?.background}`)]}),e(r,{publicStoreFrontData:L,children:e(q,{children:e(s,{components:f,children:e("div",{children:e(n,{data:_,children:e(i,{t:I,children:y?.map(t=>e(a,{children:e(o,{state:t.data,lazy:t.lazy,priority:t.priority,isPreview:!0,children:e(d,{uid:t.uid})},t.uid)}))})})})})})})]})};export{PreviewTemplate};
5
+ `},`page_background_${T?.background}`)]}),e(r,{publicStoreFrontData:L,children:e(j,{collection:S,children:e(n,{components:f,children:e("div",{children:e(s,{data:_,children:e(i,{t:q,children:y?.map(t=>e(a,{children:e(o,{state:t.data,lazy:t.lazy,priority:t.priority,isPreview:!0,children:e(d,{uid:t.uid})},t.uid)}))})})})})})})]})};export{PreviewTemplate};
@@ -57,6 +57,7 @@ type PageBuilderPropsV2 = {
57
57
  } & Omit<PageBuilderProps, 'builderData'>;
58
58
  type AdditionalPageBuilderProps = {
59
59
  components: Record<string, React__default.ComponentType<any>>;
60
+ collection?: any;
60
61
  };
61
62
  type NextPageWithLayout<P = PageBuilderProps, IP = P> = NextPage<P, IP> & {
62
63
  getLayout?: (page: React__default.ReactElement, pageProps?: any) => React__default.ReactNode;
@@ -138,12 +139,24 @@ type SharePageProps = PageBuilderPropsV2 & {
138
139
  name: string;
139
140
  component: any;
140
141
  };
141
- pageMeta?: any;
142
+ pageMeta?: {
143
+ id: string;
144
+ themePageID: string;
145
+ key: string;
146
+ value: string;
147
+ }[];
142
148
  shopMeta?: any;
149
+ pageType?: ShopType.PublishedThemePageType;
150
+ moneyFormat?: string | null;
151
+ moneyWithCurrencyFormat?: string | null;
143
152
  };
144
153
 
145
154
  declare const getCollectionProps: (fetcher: FetchFunc) => (handle?: string) => Promise<CollectionDetailPageProps>;
146
155
 
156
+ declare const getCollectionSharePageProps: (fetcher: FetchFunc) => (baseId?: string) => Promise<{
157
+ collection: any;
158
+ }>;
159
+
147
160
  declare const getHomePageProps: (fetcher: FetchFunc, shopifyFetcher: FetchFunc) => () => Promise<PageBuilderProps>;
148
161
 
149
162
  declare const getHomePagePropsV2: (fetcher: FetchFunc, shopifyFetcher: FetchFunc) => () => Promise<PageBuilderPropsV2>;
@@ -314,4 +327,4 @@ declare const StaticPageV2: React.FC<StaticPagePropsV2 & AdditionalPageBuilderPr
314
327
 
315
328
  declare const PreviewTemplate: React.FC<SharePageProps & AdditionalPageBuilderProps>;
316
329
 
317
- export { AppPropsWithLayout, BuilderPage, CollectionDetailPage, ErrorBoundary, ErrorFallback, FacebookPixel, GoogleAnalytic, NextPageWithLayout, Page404, Page500, PageBuilderProps, PageBuilderPropsV2, PreviewPage, PreviewTemplate, ProductDetailPage, SharePageAPIResponse, SharePageProps, StaticPage, StaticPagePropsV2, StaticPageV2, TikTokPixel, createAppAPIFetcher, createFetcher, createShopifyFetcher, createTemplateFetcher, genCSS, getBuilderProps, getCollectionProps, getFallbackV2, getFontFromGlobalStyle, getFontFromGroupSetting, getFonts, getFontsFromDataBuilder, getHomePageProps, getHomePagePropsV2, getLayout, getPostPurchasePropsPreview, getPreviewProps, getProductProps, getSharePageContentProps, getSharePageProps, getStaticPagePropsPreview, getStaticPagePropsV2, getStaticPaths, getStorefrontApi, isBot, normalizePageSectionResponseV2, parseBuilderTemplateV2, retryWithDelay, usePagePreview, useTrackingView };
330
+ export { AppPropsWithLayout, BuilderPage, CollectionDetailPage, ErrorBoundary, ErrorFallback, FacebookPixel, GoogleAnalytic, NextPageWithLayout, Page404, Page500, PageBuilderProps, PageBuilderPropsV2, PreviewPage, PreviewTemplate, ProductDetailPage, SharePageAPIResponse, SharePageProps, StaticPage, StaticPagePropsV2, StaticPageV2, TikTokPixel, createAppAPIFetcher, createFetcher, createShopifyFetcher, createTemplateFetcher, genCSS, getBuilderProps, getCollectionProps, getCollectionSharePageProps, getFallbackV2, getFontFromGlobalStyle, getFontFromGroupSetting, getFonts, getFontsFromDataBuilder, getHomePageProps, getHomePagePropsV2, getLayout, getPostPurchasePropsPreview, getPreviewProps, getProductProps, getSharePageContentProps, getSharePageProps, getStaticPagePropsPreview, getStaticPagePropsV2, getStaticPaths, getStorefrontApi, isBot, normalizePageSectionResponseV2, parseBuilderTemplateV2, retryWithDelay, usePagePreview, useTrackingView };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gem-sdk/pages",
3
- "version": "2.0.0-dev.1212",
3
+ "version": "2.0.0-dev.1220",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
6
  "main": "dist/cjs/index.js",
@@ -26,7 +26,7 @@
26
26
  "next": "14.2.20"
27
27
  },
28
28
  "devDependencies": {
29
- "@gem-sdk/core": "2.0.0-dev.1210",
29
+ "@gem-sdk/core": "2.0.0-dev.1218",
30
30
  "@gem-sdk/plugin-cookie-bar": "2.0.0-dev.1206",
31
31
  "@gem-sdk/plugin-quick-view": "2.0.0-dev.1206",
32
32
  "@gem-sdk/plugin-sticky-add-to-cart": "2.0.0-dev.1206"