@griddo/cx 10.7.7 → 10.7.9

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/build/index.js CHANGED
@@ -81,7 +81,7 @@ ${h}
81
81
  `),st(`\u231B\uFE0F ${e}`,"",1,0),process.stdin.once("data",()=>{r()})})}async function nt(e,t){let{steps:r,bypass:n,delay:i}=t;if(n)return;let o={Archive:j.GRIDDO_ARCHIVE_LIFECYCLE_MAX_ATTEMPTS,Data:j.GRIDDO_DATA_LIFECYCLE_MAX_ATTEMPTS,Meta:j.GRIDDO_META_LIFECYCLE_MAX_ATTEMPTS,Relocation:j.GRIDDO_RELOCATION_LIFECYCLE_MAX_ATTEMPTS,Clean:j.GRIDDO_CLEAN_LIFECYCLE_MAX_ATTEMPTS,Restore:j.GRIDDO_RESTORE_LIFECYCLE_MAX_ATTEMPTS,Prepare:j.GRIDDO_PREPARE_LIFECYCLE_MAX_ATTEMPTS,Close:j.GRIDDO_CLOSE_LIFECYCLE_MAX_ATTEMPTS,SSG:j.GRIDDO_SSG_LIFECYCLE_MAX_ATTEMPTS,HealthCheck:1,__DEBUG__:1},s=0,a=o[e]||1;for(;s<a;)try{console.info(`
82
82
  ${sn.default.blue("info")} start ${e} life-cycle`);let c=await Aa(r,i);console.info(`${sn.default.green("success")} ${e} - ${c}s`),await _w(`${e} LifeCycle`);break}catch(c){let d=sn.default.bgRed.black(` Error in ${e} LifeCycle `),l=sn.default.yellow(`Attempt (${s+1})`);console.log(`
83
83
  ${d} ${l}
84
- `),console.log(c),console.log(),s++}if(s===a)throw new Error(`Exceeded maximum retry attempts (${a}) for ${e} LifeCycle`)}async function Fm(e){await bm(),await Sm(),await wm(e)}function Lm(){let{__cx:e}=Am.paths(),t=Jt.default.join(e,"store"),i=rt.default.readdirSync(t).filter(o=>o!=="metadata").map(o=>Jt.default.join(t,o));for(let o of i)rt.default.rmSync(o,{recursive:!0,force:!0})}Nm.default.config();var Mm=ee();function jm(e){let{proDomain:t}=ee(),r=process.env.GRIDDO_ASSET_PREFIX||process.env.ASSET_PREFIX;if(!r||!e||!e.startsWith(t))return"";let n=`${r}/${e}`;return Z(`Reading env.GRIDDO_ASSET_PREFIX, ${process.env.GRIDDO_ASSET_PREFIX}`),Z(`Setting the asset prefix with the domain concatenated, ${n}`),n}function qm(e){Z(`read assetPrefixWithDomain, ${e}`);let{__ssg:t}=Mm.paths(),r=(0,km.spawnSync)("yarn",["gatsby-build",process.env.GRIDDO_SSG_VERBOSE?"--verbose":""],{cwd:t,stdio:["ignore","inherit","ignore"],encoding:"utf8",shell:!0,env:Object.assign(process.env,{GRIDDO_EXPORTER:"true",SPAWN_ASSET_PREFIX_WITH_DOMAIN:e})});if(r.status!==0)throw new Error(`Error in gatsby build ${JSON.stringify(r)}`)}async function $m(e,t){let{__cx:r,__ssg:n}=Mm.paths(e),i=mt.default.join(r,"dist"),o=mt.default.join(r,"assets"),s=mt.default.join(r,"dist",e),a=mt.default.join(n,"public"),c=it.default.readdirSync(a).filter(b=>mt.default.extname(b)===".js"||mt.default.extname(b)===".json"||mt.default.extname(b)===".css"),d=`${a}/page-data`,l=`${o}/page-data`,p=mt.default.join(n,"static"),h=o,m=`${i}/static`,_=`${o}/static`;try{it.default.mkdirSync(o,{recursive:!0}),it.default.copySync(a,i,{preserveTimestamps:!0}),t&&(it.default.copySync(d,l,{preserveTimestamps:!0}),it.default.existsSync(p)&&it.default.copySync(p,h,{overwrite:!1,preserveTimestamps:!0}),it.default.copySync(m,_,{overwrite:!1,preserveTimestamps:!0}),it.default.existsSync(p)&&it.default.copySync(p,s,{overwrite:!1,preserveTimestamps:!0}),c.map(async b=>{let w=`${a}/${b}`,I=`${o}/${b}`;it.default.copySync(w,I,{preserveTimestamps:!0})}))}catch(b){console.error(b)}}var Bi=P(require("node:path"));function Ew(e){let{__cx:t,__exports:r,__caches:n}=e;return{initials:[r,n],disposables:[Bi.default.join(t,"store"),Bi.default.join(t,"apiCache"),Bi.default.join(t,"dist")],cacheables:["apiCache","store"],archivables:["dist","assets"]}}var Gm=Ew;var Ui=P(require("node:path"));function bw(e){let{__ssg:t}=e;return{disposables:[Ui.default.join(t,"public"),Ui.default.join(t,"static"),Ui.default.join(t,".cache")],cacheables:[".cache"],initials:[],archivables:[]}}var Bm=bw;function Um(e,t){let{cxPaths:r}=t,n={gatsby:Bm(r)};return{cx:Gm(r),ssg:n[e]}}var Xm=P(Ni());async function Xi({area:e,description:t,fullData:r,instantNotification:n=!1,level:i}){let o=ue.ALERT,s={level:i,area:e,description:t,fullData:r,instantNotification:n};try{await Xm.default.post(o,s,{headers:{"Content-Type":"application/json"}})}catch(a){console.error("Error creating Griddo alert:",a)}}var ty=P(require("node:fs")),ka=P(require("node:path")),ry=P($t()),ny=P(jo());var Hi=class{static getBody(t,r){let{order:n,sources:i,quantity:o,mode:s,fixed:a,fullRelations:c=!1,allLanguages:d=!1,preferenceLanguage:l=!1,referenceId:p}=t;return s==="auto"?{mode:s,order:n,sources:i,quantity:o,fullRelations:c,allLanguages:d,preferenceLanguage:l}:s==="manual"?{mode:s,fixed:a,fullRelations:c}:s==="navigation"?{mode:s,order:n,quantity:o,fullRelations:c,referenceId:p||r?.structuredDataContent?.id}:(console.log(`Error: Distribuidor mode: ${s} is not recognized on page ${r?.id}.`),t)}static async fetchContentTypeData(t){let{page:r,component:{data:n},cacheKey:i}=t;if(!n)return st(`Error: Page ${r.id} has \`hasDistributorData: true\` but it doesn't have a \`data\` prop`,"No data in ReferenceField"),[];if(Array.isArray(n.sources)&&n.sources.length<1)return st(`Warning: Page with id: ${r.id} has a ReferenceField with empty \`data.sources\``,"Empty data.sources in ReferenceField"),[];let{site:o,lang:s}=n;!n.sources&&n.mode==="auto"&&st(`Warning: Page with id: ${r.id} has a ReferenceField with \`undefined\` \`data.sources\``,"undefined data.sources in ReferenceField");let a=this.getBody(n,r);return await hm(r,a,i,o,s)}static async getDistributorData({page:t,cacheKey:r=""}){try{let{template:n}=t,i=async(a,c=1)=>{if(!(!a||typeof a!="object")&&JSON.stringify(a).includes('"hasDistributorData":true'))for(let d in a){if(d==="queriedItems")continue;let p=a[d];!p||typeof p!="object"||(p.hasDistributorData&&(p.queriedItems=await this.fetchContentTypeData({page:t,cacheKey:r,component:p})),await i(p,c+1))}};return await(async a=>(await i([a]),a))(n)}catch(n){console.error(`Error en get distributor ${n}`),process.exit(1)}}};var Wi=class{_defaultHeaders;_defaultFooters;_navigations;constructor(){this._navigations={footers:[],headers:[]},this._defaultHeaders={},this._defaultFooters={}}set navigations(t){this._navigations=t,this._defaultFooters=this.getDefaultFooters(),this._defaultHeaders=this.getDefaultHeaders()}get navigations(){return this._navigations}getDefaultFooters(){return[...this.navigations.footers].filter(i=>!!i.setAsDefault).reduce((i,o)=>{let{language:s}=o;return{...i,[s]:o}},{})}getDefaultHeaders(){return[...this.navigations.headers].filter(i=>!!i.setAsDefault).reduce((i,o)=>{let{language:s}=o;return{...i,[s]:o}},{})}getRightLanguage(t,r,n){if(!t||!r)return null;let o=t.find(s=>s.language===n&&s.navigationLanguages?.find(a=>a.navigationId===r))||t.find(s=>s.id===r);return o?{...o}:null}getPageHeader(t,r){return this.getRightLanguage(this.navigations.headers,t,r)}getPageFooter(t,r){return this.getRightLanguage(this.navigations.footers,t,r)}getPageNavigations(t){let{header:r,footer:n,language:i,template:{templateType:o},templateConfig:{defaultHeader:s,defaultFooter:a,templates:c}}=t,d=_=>{let b=_.find(w=>typeof w=="number");return typeof b=="number"?b:null},l=d([r,c?.[o]?.defaultHeader,s]),p=d([n,c?.[o]?.defaultFooter,a]),h=l?this.getPageHeader(l,i):l===0?null:this._defaultHeaders[i],m=p?this.getPageFooter(p,i):p===0?null:this._defaultFooters[i];return{header:h,footer:m}}};async function Hm(){return await $e({endpoint:ue.SETTINGS})}var Vm=P($t());function Ta(e,t,r,n="jpg"){let i=typeof e=="string"?e:e?.url;return i?i.split("/")[2].includes("cloudinary.com")?ww(i,`c_fill,w_${t},h_${r}`):Sw(i,`f/${n}/w/${t}/h/${r}`):null}function Sw(e,t){let r=e.split("/"),n=r.slice(0,-1).join("/"),i=r.slice(-1)[0];return`${n}/${t}/${i}`}function ww(e,t){let r=e.replace("https://",""),n=r.split("/").slice(0,4).join("/"),i=r.replace(n,"");return`https://${n}/${t}${i}`}Vm.default.config();var Dw=25;function Cw({socialTitle:e,socialDescription:t,socialImage:r}){return{type:"website",title:e,description:t,image:r?Ta(r,1280,768):"",twitterImage:r?Ta(r,1280,768):""}}function Rw(e){let{title:t,metaTitle:r,metaDescription:n,canonicalURL:i,locale:o,url:s,isIndexed:a,follow:c,metasAdvanced:d,pageLanguages:l,fullUrl:p,metaKeywords:h}=e,m=d?.split(",").filter(Boolean).map(_=>_.trim().toLowerCase())||[];return{title:(r||t||"").trim(),description:n,canonical:i&&i.trim()&&i!==p?i.trim():a?p:void 0,locale:o,url:s,index:a?"index":"noindex",follow:c?"follow":"nofollow",translate:m.includes("notranslate")?"notranslate":"",metasAdvanced:m.filter(_=>_!=="notranslate").join(),pageLanguages:l,metaKeywords:h?.filter(Boolean).map(_=>_.replace(/"/g,"'")).join(", ")}}async function La(e,t){let{id:r,title:n,fullPath:i,language:o,breadcrumb:s,socialDescription:a,socialImage:c,socialTitle:d}=e,{baseUrl:l,cloudinaryName:p,griddoVersion:h,siteLangs:m,siteMetadata:_,siteOptions:b,siteScript:w,siteSlug:I,socials:F,theme:A,navigations:{header:L,footer:K}}=t;e.breadcrumb=s,e.siteSlug=I,e.apiUrl=l,e.publicApiUrl=t.publicBaseUrl,e.instance=t.instance;let Ge=m.find(({id:X})=>X===e?.language)?.locale.replace(/_/g,"-"),de=Rw(e),R=Cw({socialDescription:a,socialImage:c,socialTitle:d}),q=i.compose,M=new Date().toString();return{path:q,size:void 0,context:{id:r,title:n,fullPath:i,locale:Ge,languageId:o,theme:A,siteMetadata:_,pageMetadata:de,openGraph:R,socials:F,siteLangs:m,cloudinaryName:p,siteOptions:b,griddoVersion:h,renderDate:M,siteScript:w,header:L,footer:K,page:e}}}async function zm(e,t){return await La(e,t)}async function Jm({page:e,pages:t,isRoot:r=!1,defaultLang:n,template:i,totalQueriedItems:o},s){let a=t.map(async(c,d)=>{let l=d===0,p=d+1,{domainUrl:h,compose:m}=e.fullPath,_={...e,id:parseInt("-"+e.id+d),fullPath:{...e.fullPath,compose:Fa(m,p,{addEndingSlash:!0})},fullUrl:Fa(e.fullUrl,p,{addEndingSlash:!0}),slug:Fa(e.slug,p),title:Ym(e.title,p),metaTitle:Ym(e.metaTitle||"",p),disableHrefLangs:p>1,template:{...i,isFirstPage:l,pageNumber:p,totalPages:t.length,baseLink:`${h}${m}`,queriedItems:c,totalQueriedItems:o?.length},isRoot:r,defaultLang:n};return await La(_,s)});return Promise.all(a)}function Km(e,t){let{multiPageElements:r,...n}=e,i=JSON.parse(JSON.stringify(r));i.find(({sectionSlug:s})=>s==="/")||i.push({});let o=i.map(async(s,a)=>{let c=JSON.parse(JSON.stringify(n)),{sectionSlug:d="/",title:l="",metaTitle:p="",metaDescription:h=""}=s,m=typeof l=="string"?l:l.content,_=c.fullPath.compose||"",b=c.fullUrl.endsWith("/")?c.fullUrl.slice(0,-1):c.fullUrl,w=d?.replace(/\//g,""),F=d==="/"?w:w+"/",A=_.endsWith("/")?"":"/",L=`${_}${A}${F}`;return m.trim()&&(c.title=m),h.trim()&&(c.metaDescription=h),c.id=parseInt("-"+c.id+a),c.fullUrl=`${b}/${F}`,c.fullPath.compose=L,c.slug=L,c.template.activeSectionSlug=d,c.template.activeSectionBase=b,c.metaTitle=p.trim()||m.trim()||c.metaTitle,await La(c,t)});return Promise.all(o)}function Qm(e){return new Promise(r=>{let n=(i,o=0)=>{if(!(!i||typeof i!="object")){for(let s in i){let a=i[s],c=a||typeof a=="object",d=JSON.stringify(a).includes('"hasGriddoMultiPage":true');if(!c||!d)continue;let{component:l,hasGriddoMultiPage:p,elements:h}=a;l&&p&&r(h||[]),n(a,o+1)}o||r(null)}};n([e])})}function xw(e,t,r){return t?.slice(e*(r-1),e*r)}function Ow(e,t){let r=Math.ceil(t.length/e)||1;return Array.from({length:r},(i,o)=>o+1)?.map(i=>xw(e,t,i))}function Zm(e){let t=e.queriedItems||[],r=e?.itemsPerPage||Dw;return Ow(r,t)}function Wm(e){return e.replace(/\/+$/,"/")}function Fa(e,t,r){let n=e.endsWith("/")?"":"/",i=r?.addEndingSlash?"/":"";return t<=1?Wm(`${e}${i}`):Wm(`${e}${n}${t}${i}`)}function Ym(e,t){return!e||t<=1?e:`${e} - ${t}`}var ey=ee();ry.default.config();var Pw=new Date().valueOf().toString();async function iy(e){yp(),console.info(`API calls with ${j.GRIDDO_API_CONCURRENCY_COUNT} threads`);let{__cx:t}=ey.paths(),{griddoVersion:r}=ey,n=ka.default.join(t,"store");try{let i=[],o={},{sitesToPublish:s,sitesToUnpublish:a}=await vm(e),c=s.length>0||a.length>0;c||console.warn(`There are no sites to update in the domain ${e}`),console.info(`Sites to publish: ${Ia(s)}`),console.info(`Sites to unpublish: ${Ia(a)}`),await _m(a);for(let d of s){let{id:l,slug:p,theme:h,favicon:m,changedPages:_=[]}=d,{siteInfo:b,validPagesIds:w,siteHash:I,unpublishHashes:F,siteLangs:A,defaultLang:L,headers:K,footers:ce,socials:Ge}=await Em(l),{cloudinaryName:de,useMetaTitle:R,useMetaKeywords:q,showBasicMetaRobots:M,avoidHrefLangsOnCanonicals:Q,avoidSelfReferenceCanonicals:X,avoidHrefLangXDefault:W,avoidDebugMetas:S}=await Hm();o[l]={siteHash:I,unpublishHashes:F,publishHashes:[]};let H=new Wi;H.navigations={headers:K,footers:ce},d.languages=A;let k=om(l,I),x=b.siteScript,$={siteUrl:b.slug,title:b.name,favicon:m},ye={baseUrl:j.GRIDDO_API_URL,publicBaseUrl:j.GRIDDO_PUBLIC_API_URL,instance:j.GRIDDO_REACT_APP_INSTANCE,siteSlug:p,theme:h,siteMetadata:$,socials:Ge,siteLangs:A,cloudinaryName:de,griddoVersion:r,siteOptions:{useMetaTitle:R,useMetaKeywords:q,showBasicMetaRobots:M,avoidHrefLangsOnCanonicals:Q,avoidSelfReferenceCanonicals:X,avoidHrefLangXDefault:W,avoidDebugMetas:S},siteScript:x};Ze(`${d.name} site`),ty.default.mkdirSync(ka.default.join(n,l.toString()),{recursive:!0});let ot=async(Nt,Kt)=>{let Qt=[],ze=await fm(Kt,k);if(!ze)return;i.push(Kt);let ft=JSON.parse(JSON.stringify(ye));ft.navigations=H.getPageNavigations(ze);let yt=await Hi.getDistributorData({page:ze,cacheKey:Pw}),un=await Qm(yt),Zt=ze?.mode==="list",Mt=!Zt&&un,Qi=!Mt&&!Zt;if(Zt){let Be={page:ze,pages:Zm(yt),isRoot:!1,defaultLang:L,template:yt,totalQueriedItems:yt.queriedItems};Qt=await Jm(Be,ft)}if(Mt){let Be=ze;Be.template=yt,Be.multiPageElements=un,Be.defaultLang=L,Qt=await Km(Be,ft)}if(Qi){let Be=ze;Be.template=yt,Be.defaultLang=L,Qt=[await zm(Be,ft)]}ze.hash!==null&&o[l].publishHashes.push(ze.hash),gp(Nt,Qt)},{pagesMissingInStore:We,pagesToDeleteFromStore:lt,pagesToWriteToStore:kt}=await _p({sitesToPublish:s,validPagesIds:w,changedPages:_,siteDirName:l.toString()});vp(l.toString(),lt);let Se=(0,ny.default)(j.GRIDDO_API_CONCURRENCY_COUNT),an=kt.map(Nt=>Se(()=>ot(l.toString(),Nt)));Z(`Store site: ${d.name}`),Z(`${w} valid pages from API`),Z(`changed ${_} pages from API`),Z(`deleted ${lt} pages from store`),Z(`missing ${We} pages in store`),Z(`write ${kt} pages to store`),await Promise.all(an)}c?Ns(n,{buildProcessData:o,createdPages:i,sitesToPublish:s}):(Lm(),Ns(n,{buildProcessData:o,createdPages:[],sitesToPublish:[]}))}catch(i){console.error(i.message),process.exit(1)}}async function oy(e){tm(),await iy(e),Tm()}var Vi=P(require("node:fs")),zi=P(require("node:path"));var Na=class extends Error{constructor(){super(),this.name="InternalCXError",this.stack=""}};function Yi({error:e,message:t,expected:r="",hint:n=""}){let i=[t,r,n].filter(Boolean).join(`
84
+ `),console.log(c),console.log(),s++}if(s===a)throw new Error(`Exceeded maximum retry attempts (${a}) for ${e} LifeCycle`)}async function Fm(e){await bm(),await Sm(),await wm(e)}function Lm(){let{__cx:e}=Am.paths(),t=Jt.default.join(e,"store"),i=rt.default.readdirSync(t).filter(o=>o!=="metadata").map(o=>Jt.default.join(t,o));for(let o of i)rt.default.rmSync(o,{recursive:!0,force:!0})}Nm.default.config();var Mm=ee();function jm(e){let{proDomain:t}=ee(),r=process.env.GRIDDO_ASSET_PREFIX||process.env.ASSET_PREFIX;if(!r||!e||!e.startsWith(t))return"";let n=`${r}/${e}`;return Z(`Reading env.GRIDDO_ASSET_PREFIX, ${process.env.GRIDDO_ASSET_PREFIX}`),Z(`Setting the asset prefix with the domain concatenated, ${n}`),n}function qm(e){Z(`read assetPrefixWithDomain, ${e}`);let{__ssg:t}=Mm.paths(),r=(0,km.spawnSync)("yarn",["gatsby-build",process.env.GRIDDO_SSG_VERBOSE?"--verbose":""],{cwd:t,stdio:["ignore","inherit","ignore"],encoding:"utf8",shell:!0,env:Object.assign(process.env,{GRIDDO_EXPORTER:"true",SPAWN_ASSET_PREFIX_WITH_DOMAIN:e})});if(r.status!==0)throw new Error(`Error in gatsby build ${JSON.stringify(r)}`)}async function $m(e,t){let{__cx:r,__ssg:n}=Mm.paths(e),i=mt.default.join(r,"dist"),o=mt.default.join(r,"assets"),s=mt.default.join(r,"dist",e),a=mt.default.join(n,"public"),c=it.default.readdirSync(a).filter(b=>mt.default.extname(b)===".js"||mt.default.extname(b)===".json"||mt.default.extname(b)===".css"),d=`${a}/page-data`,l=`${o}/page-data`,p=mt.default.join(n,"static"),h=o,m=`${i}/static`,_=`${o}/static`;try{it.default.mkdirSync(o,{recursive:!0}),it.default.copySync(a,i,{preserveTimestamps:!0}),t&&(it.default.copySync(d,l,{preserveTimestamps:!0}),it.default.existsSync(p)&&it.default.copySync(p,h,{overwrite:!1,preserveTimestamps:!0}),it.default.copySync(m,_,{overwrite:!1,preserveTimestamps:!0}),it.default.existsSync(p)&&it.default.copySync(p,s,{overwrite:!1,preserveTimestamps:!0}),c.map(async b=>{let w=`${a}/${b}`,I=`${o}/${b}`;it.default.copySync(w,I,{preserveTimestamps:!0})}))}catch(b){console.error(b)}}var Bi=P(require("node:path"));function Ew(e){let{__cx:t,__exports:r,__caches:n}=e;return{initials:[r,n],disposables:[Bi.default.join(t,"store"),Bi.default.join(t,"apiCache"),Bi.default.join(t,"dist")],cacheables:["apiCache","store"],archivables:["dist","assets"]}}var Gm=Ew;var Ui=P(require("node:path"));function bw(e){let{__ssg:t}=e;return{disposables:[Ui.default.join(t,"public"),Ui.default.join(t,"static"),Ui.default.join(t,".cache")],cacheables:[".cache"],initials:[],archivables:[]}}var Bm=bw;function Um(e,t){let{cxPaths:r}=t,n={gatsby:Bm(r)};return{cx:Gm(r),ssg:n[e]}}var Xm=P(Ni());async function Xi({area:e,description:t,fullData:r,instantNotification:n=!1,level:i}){let o=ue.ALERT,s={level:i,area:e,description:t,fullData:r,instantNotification:n};try{await Xm.default.post(o,s,{headers:{"Content-Type":"application/json"}})}catch(a){console.error("Error creating Griddo alert:",a)}}var ty=P(require("node:fs")),ka=P(require("node:path")),ry=P($t()),ny=P(jo());var Hi=class{static getBody(t,r){let{order:n,sources:i,quantity:o,mode:s,fixed:a,fullRelations:c=!1,allLanguages:d=!1,preferenceLanguage:l=!1,referenceId:p,fields:h}=t;return s==="auto"?{mode:s,order:n,sources:i,quantity:o,fullRelations:c,allLanguages:d,preferenceLanguage:l,fields:h}:s==="manual"?{mode:s,fixed:a,fullRelations:c,fields:h}:s==="navigation"?{mode:s,order:n,quantity:o,fullRelations:c,referenceId:p||r?.structuredDataContent?.id,fields:h}:(console.log(`Error: Distribuidor mode: ${s} is not recognized on page ${r?.id}.`),t)}static async fetchContentTypeData(t){let{page:r,component:{data:n},cacheKey:i}=t;if(!n)return st(`Error: Page ${r.id} has \`hasDistributorData: true\` but it doesn't have a \`data\` prop`,"No data in ReferenceField"),[];if(Array.isArray(n.sources)&&n.sources.length<1)return st(`Warning: Page with id: ${r.id} has a ReferenceField with empty \`data.sources\``,"Empty data.sources in ReferenceField"),[];let{site:o,lang:s}=n;!n.sources&&n.mode==="auto"&&st(`Warning: Page with id: ${r.id} has a ReferenceField with \`undefined\` \`data.sources\``,"undefined data.sources in ReferenceField");let a=this.getBody(n,r);return await hm(r,a,i,o,s)}static async getDistributorData({page:t,cacheKey:r=""}){try{let{template:n}=t,i=async(a,c=1)=>{if(!(!a||typeof a!="object")&&JSON.stringify(a).includes('"hasDistributorData":true'))for(let d in a){if(d==="queriedItems")continue;let p=a[d];!p||typeof p!="object"||(p.hasDistributorData&&(p.queriedItems=await this.fetchContentTypeData({page:t,cacheKey:r,component:p})),await i(p,c+1))}};return await(async a=>(await i([a]),a))(n)}catch(n){console.error(`Error en get distributor ${n}`),process.exit(1)}}};var Wi=class{_defaultHeaders;_defaultFooters;_navigations;constructor(){this._navigations={footers:[],headers:[]},this._defaultHeaders={},this._defaultFooters={}}set navigations(t){this._navigations=t,this._defaultFooters=this.getDefaultFooters(),this._defaultHeaders=this.getDefaultHeaders()}get navigations(){return this._navigations}getDefaultFooters(){return[...this.navigations.footers].filter(i=>!!i.setAsDefault).reduce((i,o)=>{let{language:s}=o;return{...i,[s]:o}},{})}getDefaultHeaders(){return[...this.navigations.headers].filter(i=>!!i.setAsDefault).reduce((i,o)=>{let{language:s}=o;return{...i,[s]:o}},{})}getRightLanguage(t,r,n){if(!t||!r)return null;let o=t.find(s=>s.language===n&&s.navigationLanguages?.find(a=>a.navigationId===r))||t.find(s=>s.id===r);return o?{...o}:null}getPageHeader(t,r){return this.getRightLanguage(this.navigations.headers,t,r)}getPageFooter(t,r){return this.getRightLanguage(this.navigations.footers,t,r)}getPageNavigations(t){let{header:r,footer:n,language:i,template:{templateType:o},templateConfig:{defaultHeader:s,defaultFooter:a,templates:c}}=t,d=_=>{let b=_.find(w=>typeof w=="number");return typeof b=="number"?b:null},l=d([r,c?.[o]?.defaultHeader,s]),p=d([n,c?.[o]?.defaultFooter,a]),h=l?this.getPageHeader(l,i):l===0?null:this._defaultHeaders[i],m=p?this.getPageFooter(p,i):p===0?null:this._defaultFooters[i];return{header:h,footer:m}}};async function Hm(){return await $e({endpoint:ue.SETTINGS})}var Vm=P($t());function Ta(e,t,r,n="jpg"){let i=typeof e=="string"?e:e?.url;return i?i.split("/")[2].includes("cloudinary.com")?ww(i,`c_fill,w_${t},h_${r}`):Sw(i,`f/${n}/w/${t}/h/${r}`):null}function Sw(e,t){let r=e.split("/"),n=r.slice(0,-1).join("/"),i=r.slice(-1)[0];return`${n}/${t}/${i}`}function ww(e,t){let r=e.replace("https://",""),n=r.split("/").slice(0,4).join("/"),i=r.replace(n,"");return`https://${n}/${t}${i}`}Vm.default.config();var Dw=25;function Cw({socialTitle:e,socialDescription:t,socialImage:r}){return{type:"website",title:e,description:t,image:r?Ta(r,1280,768):"",twitterImage:r?Ta(r,1280,768):""}}function Rw(e){let{title:t,metaTitle:r,metaDescription:n,canonicalURL:i,locale:o,url:s,isIndexed:a,follow:c,metasAdvanced:d,pageLanguages:l,fullUrl:p,metaKeywords:h}=e,m=d?.split(",").filter(Boolean).map(_=>_.trim().toLowerCase())||[];return{title:(r||t||"").trim(),description:n,canonical:i&&i.trim()&&i!==p?i.trim():a?p:void 0,locale:o,url:s,index:a?"index":"noindex",follow:c?"follow":"nofollow",translate:m.includes("notranslate")?"notranslate":"",metasAdvanced:m.filter(_=>_!=="notranslate").join(),pageLanguages:l,metaKeywords:h?.filter(Boolean).map(_=>_.replace(/"/g,"'")).join(", ")}}async function La(e,t){let{id:r,title:n,fullPath:i,language:o,breadcrumb:s,socialDescription:a,socialImage:c,socialTitle:d}=e,{baseUrl:l,cloudinaryName:p,griddoVersion:h,siteLangs:m,siteMetadata:_,siteOptions:b,siteScript:w,siteSlug:I,socials:F,theme:A,navigations:{header:L,footer:K}}=t;e.breadcrumb=s,e.siteSlug=I,e.apiUrl=l,e.publicApiUrl=t.publicBaseUrl,e.instance=t.instance;let Ge=m.find(({id:X})=>X===e?.language)?.locale.replace(/_/g,"-"),de=Rw(e),R=Cw({socialDescription:a,socialImage:c,socialTitle:d}),q=i.compose,M=new Date().toString();return{path:q,size:void 0,context:{id:r,title:n,fullPath:i,locale:Ge,languageId:o,theme:A,siteMetadata:_,pageMetadata:de,openGraph:R,socials:F,siteLangs:m,cloudinaryName:p,siteOptions:b,griddoVersion:h,renderDate:M,siteScript:w,header:L,footer:K,page:e}}}async function zm(e,t){return await La(e,t)}async function Jm({page:e,pages:t,isRoot:r=!1,defaultLang:n,template:i,totalQueriedItems:o},s){let a=t.map(async(c,d)=>{let l=d===0,p=d+1,{domainUrl:h,compose:m}=e.fullPath,_={...e,id:parseInt("-"+e.id+d),fullPath:{...e.fullPath,compose:Fa(m,p,{addEndingSlash:!0})},fullUrl:Fa(e.fullUrl,p,{addEndingSlash:!0}),slug:Fa(e.slug,p),title:Ym(e.title,p),metaTitle:Ym(e.metaTitle||"",p),disableHrefLangs:p>1,template:{...i,isFirstPage:l,pageNumber:p,totalPages:t.length,baseLink:`${h}${m}`,queriedItems:c,totalQueriedItems:o?.length},isRoot:r,defaultLang:n};return await La(_,s)});return Promise.all(a)}function Km(e,t){let{multiPageElements:r,...n}=e,i=JSON.parse(JSON.stringify(r));i.find(({sectionSlug:s})=>s==="/")||i.push({});let o=i.map(async(s,a)=>{let c=JSON.parse(JSON.stringify(n)),{sectionSlug:d="/",title:l="",metaTitle:p="",metaDescription:h=""}=s,m=typeof l=="string"?l:l.content,_=c.fullPath.compose||"",b=c.fullUrl.endsWith("/")?c.fullUrl.slice(0,-1):c.fullUrl,w=d?.replace(/\//g,""),F=d==="/"?w:w+"/",A=_.endsWith("/")?"":"/",L=`${_}${A}${F}`;return m.trim()&&(c.title=m),h.trim()&&(c.metaDescription=h),c.id=parseInt("-"+c.id+a),c.fullUrl=`${b}/${F}`,c.fullPath.compose=L,c.slug=L,c.template.activeSectionSlug=d,c.template.activeSectionBase=b,c.metaTitle=p.trim()||m.trim()||c.metaTitle,await La(c,t)});return Promise.all(o)}function Qm(e){return new Promise(r=>{let n=(i,o=0)=>{if(!(!i||typeof i!="object")){for(let s in i){let a=i[s],c=a||typeof a=="object",d=JSON.stringify(a).includes('"hasGriddoMultiPage":true');if(!c||!d)continue;let{component:l,hasGriddoMultiPage:p,elements:h}=a;l&&p&&r(h||[]),n(a,o+1)}o||r(null)}};n([e])})}function xw(e,t,r){return t?.slice(e*(r-1),e*r)}function Ow(e,t){let r=Math.ceil(t.length/e)||1;return Array.from({length:r},(i,o)=>o+1)?.map(i=>xw(e,t,i))}function Zm(e){let t=e.queriedItems||[],r=e?.itemsPerPage||Dw;return Ow(r,t)}function Wm(e){return e.replace(/\/+$/,"/")}function Fa(e,t,r){let n=e.endsWith("/")?"":"/",i=r?.addEndingSlash?"/":"";return t<=1?Wm(`${e}${i}`):Wm(`${e}${n}${t}${i}`)}function Ym(e,t){return!e||t<=1?e:`${e} - ${t}`}var ey=ee();ry.default.config();var Pw=new Date().valueOf().toString();async function iy(e){yp(),console.info(`API calls with ${j.GRIDDO_API_CONCURRENCY_COUNT} threads`);let{__cx:t}=ey.paths(),{griddoVersion:r}=ey,n=ka.default.join(t,"store");try{let i=[],o={},{sitesToPublish:s,sitesToUnpublish:a}=await vm(e),c=s.length>0||a.length>0;c||console.warn(`There are no sites to update in the domain ${e}`),console.info(`Sites to publish: ${Ia(s)}`),console.info(`Sites to unpublish: ${Ia(a)}`),await _m(a);for(let d of s){let{id:l,slug:p,theme:h,favicon:m,changedPages:_=[]}=d,{siteInfo:b,validPagesIds:w,siteHash:I,unpublishHashes:F,siteLangs:A,defaultLang:L,headers:K,footers:ce,socials:Ge}=await Em(l),{cloudinaryName:de,useMetaTitle:R,useMetaKeywords:q,showBasicMetaRobots:M,avoidHrefLangsOnCanonicals:Q,avoidSelfReferenceCanonicals:X,avoidHrefLangXDefault:W,avoidDebugMetas:S}=await Hm();o[l]={siteHash:I,unpublishHashes:F,publishHashes:[]};let H=new Wi;H.navigations={headers:K,footers:ce},d.languages=A;let k=om(l,I),x=b.siteScript,$={siteUrl:b.slug,title:b.name,favicon:m},ye={baseUrl:j.GRIDDO_API_URL,publicBaseUrl:j.GRIDDO_PUBLIC_API_URL,instance:j.GRIDDO_REACT_APP_INSTANCE,siteSlug:p,theme:h,siteMetadata:$,socials:Ge,siteLangs:A,cloudinaryName:de,griddoVersion:r,siteOptions:{useMetaTitle:R,useMetaKeywords:q,showBasicMetaRobots:M,avoidHrefLangsOnCanonicals:Q,avoidSelfReferenceCanonicals:X,avoidHrefLangXDefault:W,avoidDebugMetas:S},siteScript:x};Ze(`${d.name} site`),ty.default.mkdirSync(ka.default.join(n,l.toString()),{recursive:!0});let ot=async(Nt,Kt)=>{let Qt=[],ze=await fm(Kt,k);if(!ze)return;i.push(Kt);let ft=JSON.parse(JSON.stringify(ye));ft.navigations=H.getPageNavigations(ze);let yt=await Hi.getDistributorData({page:ze,cacheKey:Pw}),un=await Qm(yt),Zt=ze?.mode==="list",Mt=!Zt&&un,Qi=!Mt&&!Zt;if(Zt){let Be={page:ze,pages:Zm(yt),isRoot:!1,defaultLang:L,template:yt,totalQueriedItems:yt.queriedItems};Qt=await Jm(Be,ft)}if(Mt){let Be=ze;Be.template=yt,Be.multiPageElements=un,Be.defaultLang=L,Qt=await Km(Be,ft)}if(Qi){let Be=ze;Be.template=yt,Be.defaultLang=L,Qt=[await zm(Be,ft)]}ze.hash!==null&&o[l].publishHashes.push(ze.hash),gp(Nt,Qt)},{pagesMissingInStore:We,pagesToDeleteFromStore:lt,pagesToWriteToStore:kt}=await _p({sitesToPublish:s,validPagesIds:w,changedPages:_,siteDirName:l.toString()});vp(l.toString(),lt);let Se=(0,ny.default)(j.GRIDDO_API_CONCURRENCY_COUNT),an=kt.map(Nt=>Se(()=>ot(l.toString(),Nt)));Z(`Store site: ${d.name}`),Z(`${w} valid pages from API`),Z(`changed ${_} pages from API`),Z(`deleted ${lt} pages from store`),Z(`missing ${We} pages in store`),Z(`write ${kt} pages to store`),await Promise.all(an)}c?Ns(n,{buildProcessData:o,createdPages:i,sitesToPublish:s}):(Lm(),Ns(n,{buildProcessData:o,createdPages:[],sitesToPublish:[]}))}catch(i){console.error(i.message),process.exit(1)}}async function oy(e){tm(),await iy(e),Tm()}var Vi=P(require("node:fs")),zi=P(require("node:path"));var Na=class extends Error{constructor(){super(),this.name="InternalCXError",this.stack=""}};function Yi({error:e,message:t,expected:r="",hint:n=""}){let i=[t,r,n].filter(Boolean).join(`
85
85
  `);throw st(i,e,1,0),new Na}var sy={id:100,error:"NoDomainsFoundError",message:"No domains found in this instance. The process cannot continue.",expected:"This can happen if the API is not functioning or the site is not properly configured, or the domains are not registered.",hint:"You can contact the instance administrator."},ay={id:101,error:"RenderUUIDError",message:`Render sentinel file does not exist.
86
86
  The rendering uuid cannot be read safely.
87
87
  There was probably a instance deployment during the render and files were deleted.