@gem-sdk/pages 1.14.0-dev.686 → 1.14.0-dev.690
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/libs/api/get-static-page-props-v2.js +1 -1
- package/dist/cjs/libs/custom-fonts.js +9 -0
- package/dist/cjs/pages/static-v2.js +1 -1
- package/dist/esm/libs/api/get-static-page-props-v2.js +1 -1
- package/dist/esm/libs/custom-fonts.js +9 -0
- package/dist/esm/pages/static-v2.js +1 -1
- package/dist/types/index.d.ts +1 -0
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var core=require("@gem-sdk/core"),adapterShopify=require("@gem-sdk/adapter-shopify"),googleFonts=require("../google-fonts.js"),genCss=require("../helpers/gen-css.js"),generateManifres=require("../helpers/generate-manifres.js"),getFallback=require("../helpers/get-fallback.js"),normalize=require("../helpers/normalize.js"),parseJson=require("../helpers/parse-json.js"),nextjs=require("@sentry/nextjs");const getStaticPagePropsV2=(e,
|
|
1
|
+
"use strict";var core=require("@gem-sdk/core"),adapterShopify=require("@gem-sdk/adapter-shopify"),googleFonts=require("../google-fonts.js"),genCss=require("../helpers/gen-css.js"),generateManifres=require("../helpers/generate-manifres.js"),getFallback=require("../helpers/get-fallback.js"),normalize=require("../helpers/normalize.js"),parseJson=require("../helpers/parse-json.js"),nextjs=require("@sentry/nextjs"),customFonts=require("../custom-fonts.js");const getStaticPagePropsV2=(e,t)=>async a=>{try{let o="STATIC",s={slug:a,slugType:o},[r,n,l]=await Promise.allSettled([e([core.PublishedThemePagesDocument,s]),e([core.StorePropertyDocument]),t([adapterShopify.ShopMetaDocument])]);if("rejected"===r.status)throw Error(r.reason?.[0]);let i=r.value.publishedThemePages?.[0],c=r.value?.publishedThemePages?.[0]?.themePageCustomFonts;if(!i)throw Error(`No data builder found for slug: /${a}`);let p=normalize.parseBuilderTemplateV2(i),[m,u,g,d]=await Promise.all([googleFonts.getFontStyleFromPageTemplate(p),googleFonts.getFontFromGlobalStyle(i?.pageStyle?.data),getFallback.getFallbackV2(e,p),customFonts.getCustomFonts(c)]),h=i.isMobile??!1,f=i?.themePageDataSEO?.find(e=>e?.key==="global-meta-description")?.value,y=parseJson.parseJson(i?.themePageDataSEO?.find(e=>e?.key==="global-meta-thumbnail")?.value),P="fulfilled"===l.status?l.value:void 0,b="fulfilled"===n.status?n.value:void 0,x=b?.storeProperty?.favicon??"/favicon/favicon-32x32.png",k={defaultTitle:P?.shop.name,title:i?.name,description:f??P?.shop.description,openGraph:{site_name:P?.shop.name,locale:P?.localization.country.isoCode,title:i?.name??P?.shop.name,description:f??P?.shop.description,images:y?[y]:[]},canonical:`https://${b?.storeProperty?.primaryDomain}/${a}`,additionalMetaTags:[{name:"theme-color",content:"#000000"}],additionalLinkTags:[{rel:"icon",sizes:"32x32",href:`${x}-/crop/1:1/center/-/smart_resize/32x32/`},{rel:"icon",sizes:"16x16",href:`${x}-/crop/1:1/center/-/smart_resize/16x16/`},{rel:"apple-touch-icon",sizes:"180x180",href:`${x}-/crop/1:1/center/-/smart_resize/180x180/`},{rel:"manifest",href:generateManifres.generateManifest({theme_color:"#000000",background_color:"#ffffff",display:"standalone",scope:"/",start_url:"/",name:P?.shop.name,short_name:P?.shop.name,description:P?.shop.description,icons:[{src:`${x}-/crop/1:1/center/-/smart_resize/192x192/`,sizes:"192x192",type:"image/png",purpose:"any maskable"},{src:`${x}-/crop/1:1/center/-/smart_resize/512x512/`,sizes:"512x512",type:"image/png"}]})}]},z=P?.localization.language.isoCode??null,S=P?.localization.country.isoCode??null,C=z&&S?`${z}-${S}`:null;return parseJson.serializableJson({themeStyle:genCss.genCSS(i?.pageStyle?.data,h),fontStyle:u,elementFontStyle:m,builderData:p,pageType:o,moneyFormat:P?.shop.moneyFormat??null,currency:P?.localization.country.currency.isoCode??null,languageIsoCode:z,countryIsoCode:S,locale:C,swr:{fallback:g},swatches:parseJson.parseJson(b?.storeProperty?.swatchesConfig),seo:k,mobileOnly:h,gaTrackingId:i.themePageAnalytic?.gaTrackingID??null,facebookPixelId:i.themePageAnalytic?.fbPixelID??null,tiktokPixelId:i.themePageAnalytic?.tiktokPixelID??null,customCodeHeader:i.themePageCustomCode?.header??null,customCodeBody:i.themePageCustomCode?.body??null,pageHandle:i.handle??null,customFonts:d})}catch(e){throw nextjs.captureException(e),e}};exports.getStaticPagePropsV2=getStaticPagePropsV2;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";const composeFontMimeType=t=>{let o={};return t?.forEach(t=>{if(!t)return;let e=`${t.fontFamily}_${t.fontStyle}_${t.fontWeight}`,n={font:{fontFamily:t.fontFamily,fontStyle:t.fontStyle,fontWeight:t.fontWeight},urls:[{url:t.backupFilePath,mimeType:t.mimeType}]};o[e]?o[e]?.urls.push(n?.urls?.[0]):o[e]=n}),o},formatName=t=>({"font/ttf":"truetype","application/x-font-opentype":"opentype","application/font-woff":"woff","application/font-woff2":"woff2"})[t],composeFontFaces=t=>{let o=[];for(let[,e]of Object.entries(t))o.push(`
|
|
2
|
+
@font-face {
|
|
3
|
+
font-family: '${e.font.fontFamily}';
|
|
4
|
+
src:
|
|
5
|
+
${e.urls.map(t=>`url('${t.url}') format('${formatName(t.mimeType)}')`).join(",\n")};
|
|
6
|
+
font-style: ${e?.font?.fontStyle??"normal"};
|
|
7
|
+
font-weight: ${e?.font?.fontWeight??"normal"};
|
|
8
|
+
}
|
|
9
|
+
`);return o},getCustomFonts=t=>{if(!t)return null;let o=composeFontMimeType(t);return composeFontFaces(o)};exports.composeFontFaces=composeFontFaces,exports.composeFontMimeType=composeFontMimeType,exports.formatName=formatName,exports.getCustomFonts=getCustomFonts;
|
|
@@ -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:n,fontStyle:r,elementFontStyle:a,customCodeHeader:l,shopToken:u,pageHandle:m,customFonts:x})=>{let o=router.useRouter();return(useTrackingView.useTrackingView(u,m,o.isFallback),o.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),n&&jsxRuntime.jsx("style",{"data-id":"global-style",type:"text/css",dangerouslySetInnerHTML:{__html:n}}),r&&jsxRuntime.jsx("style",{"data-id":"google-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:r}}),a&&a.map(e=>jsxRuntime.jsx("style",{"data-id":"google-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:e}},e)),x&&jsxRuntime.jsx("style",{"data-id":"custom-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:x}},r)]}),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;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{PublishedThemePagesDocument as e,StorePropertyDocument as o}from"@gem-sdk/core";import{ShopMetaDocument as t}from"@gem-sdk/adapter-shopify";import{getFontStyleFromPageTemplate as a,getFontFromGlobalStyle as r}from"../google-fonts.js";import{genCSS as s}from"../helpers/gen-css.js";import{generateManifest as i}from"../helpers/generate-manifres.js";import{getFallbackV2 as l}from"../helpers/get-fallback.js";import{parseBuilderTemplateV2 as n}from"../helpers/normalize.js";import{parseJson as m,serializableJson as c}from"../helpers/parse-json.js";import{captureException as p}from"@sentry/nextjs";let getStaticPagePropsV2=(
|
|
1
|
+
import{PublishedThemePagesDocument as e,StorePropertyDocument as o}from"@gem-sdk/core";import{ShopMetaDocument as t}from"@gem-sdk/adapter-shopify";import{getFontStyleFromPageTemplate as a,getFontFromGlobalStyle as r}from"../google-fonts.js";import{genCSS as s}from"../helpers/gen-css.js";import{generateManifest as i}from"../helpers/generate-manifres.js";import{getFallbackV2 as l}from"../helpers/get-fallback.js";import{parseBuilderTemplateV2 as n}from"../helpers/normalize.js";import{parseJson as m,serializableJson as c}from"../helpers/parse-json.js";import{captureException as p}from"@sentry/nextjs";import{getCustomFonts as d}from"../custom-fonts.js";let getStaticPagePropsV2=(u,h)=>async g=>{try{let p="STATIC",f={slug:g,slugType:p},[y,P,x]=await Promise.allSettled([u([e,f]),u([o]),h([t])]);if("rejected"===y.status)throw Error(y.reason?.[0]);let k=y.value.publishedThemePages?.[0],z=y.value?.publishedThemePages?.[0]?.themePageCustomFonts;if(!k)throw Error(`No data builder found for slug: /${g}`);let b=n(k),[C,v,j,T]=await Promise.all([a(b),r(k?.pageStyle?.data),l(u,b),d(z)]),$=k.isMobile??!1,_=k?.themePageDataSEO?.find(e=>e?.key==="global-meta-description")?.value,S=m(k?.themePageDataSEO?.find(e=>e?.key==="global-meta-thumbnail")?.value),w="fulfilled"===x.status?x.value:void 0,D="fulfilled"===P.status?P.value:void 0,I=D?.storeProperty?.favicon??"/favicon/favicon-32x32.png",A={defaultTitle:w?.shop.name,title:k?.name,description:_??w?.shop.description,openGraph:{site_name:w?.shop.name,locale:w?.localization.country.isoCode,title:k?.name??w?.shop.name,description:_??w?.shop.description,images:S?[S]:[]},canonical:`https://${D?.storeProperty?.primaryDomain}/${g}`,additionalMetaTags:[{name:"theme-color",content:"#000000"}],additionalLinkTags:[{rel:"icon",sizes:"32x32",href:`${I}-/crop/1:1/center/-/smart_resize/32x32/`},{rel:"icon",sizes:"16x16",href:`${I}-/crop/1:1/center/-/smart_resize/16x16/`},{rel:"apple-touch-icon",sizes:"180x180",href:`${I}-/crop/1:1/center/-/smart_resize/180x180/`},{rel:"manifest",href:i({theme_color:"#000000",background_color:"#ffffff",display:"standalone",scope:"/",start_url:"/",name:w?.shop.name,short_name:w?.shop.name,description:w?.shop.description,icons:[{src:`${I}-/crop/1:1/center/-/smart_resize/192x192/`,sizes:"192x192",type:"image/png",purpose:"any maskable"},{src:`${I}-/crop/1:1/center/-/smart_resize/512x512/`,sizes:"512x512",type:"image/png"}]})}]},E=w?.localization.language.isoCode??null,F=w?.localization.country.isoCode??null,H=E&&F?`${E}-${F}`:null;return c({themeStyle:s(k?.pageStyle?.data,$),fontStyle:v,elementFontStyle:C,builderData:b,pageType:p,moneyFormat:w?.shop.moneyFormat??null,currency:w?.localization.country.currency.isoCode??null,languageIsoCode:E,countryIsoCode:F,locale:H,swr:{fallback:j},swatches:m(D?.storeProperty?.swatchesConfig),seo:A,mobileOnly:$,gaTrackingId:k.themePageAnalytic?.gaTrackingID??null,facebookPixelId:k.themePageAnalytic?.fbPixelID??null,tiktokPixelId:k.themePageAnalytic?.tiktokPixelID??null,customCodeHeader:k.themePageCustomCode?.header??null,customCodeBody:k.themePageCustomCode?.body??null,pageHandle:k.handle??null,customFonts:T})}catch(e){throw p(e),e}};export{getStaticPagePropsV2};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
let composeFontMimeType=t=>{let o={};return t?.forEach(t=>{if(!t)return;let e=`${t.fontFamily}_${t.fontStyle}_${t.fontWeight}`,n={font:{fontFamily:t.fontFamily,fontStyle:t.fontStyle,fontWeight:t.fontWeight},urls:[{url:t.backupFilePath,mimeType:t.mimeType}]};o[e]?o[e]?.urls.push(n?.urls?.[0]):o[e]=n}),o},formatName=t=>({"font/ttf":"truetype","application/x-font-opentype":"opentype","application/font-woff":"woff","application/font-woff2":"woff2"})[t],composeFontFaces=t=>{let o=[];for(let[,e]of Object.entries(t))o.push(`
|
|
2
|
+
@font-face {
|
|
3
|
+
font-family: '${e.font.fontFamily}';
|
|
4
|
+
src:
|
|
5
|
+
${e.urls.map(t=>`url('${t.url}') format('${formatName(t.mimeType)}')`).join(",\n")};
|
|
6
|
+
font-style: ${e?.font?.fontStyle??"normal"};
|
|
7
|
+
font-weight: ${e?.font?.fontWeight??"normal"};
|
|
8
|
+
}
|
|
9
|
+
`);return o},getCustomFonts=t=>{if(!t)return null;let o=composeFontMimeType(t);return composeFontFaces(o)};export{composeFontFaces,composeFontMimeType,formatName,getCustomFonts};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import{PageProvider as s,BuilderComponentProvider as l,SectionProvider as
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import{PageProvider as s,BuilderComponentProvider as l,SectionProvider as n,BuilderProvider as r,Render as i}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:u,sectionData:h,seo:g,themeStyle:_,fontStyle:y,elementFontStyle:x,customCodeHeader:b,shopToken:S,pageHandle:k,customFonts:N})=>{let j=d();return(c(S,k,j.isFallback),j.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)),N&&e("style",{"data-id":"custom-element-fonts",type:"text/css",dangerouslySetInnerHTML:{__html:N}},y)]}),e(s,{children:e(l,{components:f,children:e(n,{data:h,children:u?.map(t=>e(r,{state:t.data,lazy:t.lazy,priority:t.priority,children:e(i,{uid:t.uid})},t.uid))})})})]})};export{StaticPageV2};
|
package/dist/types/index.d.ts
CHANGED
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.690",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "dist/cjs/index.js",
|
|
@@ -19,13 +19,13 @@
|
|
|
19
19
|
"test": "jest -c ./../../helpers/jest.config.ts"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@sentry/nextjs": "7.
|
|
22
|
+
"@sentry/nextjs": "7.77.0",
|
|
23
23
|
"deepmerge": "4.3.1",
|
|
24
24
|
"html-react-parser": "3.0.15",
|
|
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.690",
|
|
29
29
|
"@gem-sdk/plugin-cookie-bar": "1.14.0-dev.619",
|
|
30
30
|
"@gem-sdk/plugin-quick-view": "1.14.0-dev.619",
|
|
31
31
|
"@gem-sdk/plugin-sticky-add-to-cart": "1.14.0-dev.619"
|