@griddo/cx 11.10.3 → 11.10.4-rc.0
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/commands/prepare-domains-render.js +4 -4
- package/build/commands/prepare-domains-render.js.map +2 -2
- package/build/commands/start-render.js +11 -11
- package/build/commands/start-render.js.map +3 -3
- package/exporter/ssg-adapters/gatsby/shared/sync-render.ts +2 -1
- package/package.json +2 -2
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
"use strict";var Jo=Object.create;var ht=Object.defineProperty;var qo=Object.getOwnPropertyDescriptor;var Vo=Object.getOwnPropertyNames;var Ko=Object.getPrototypeOf,zo=Object.prototype.hasOwnProperty;var Yo=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Vo(t))!zo.call(e,i)&&i!==r&&ht(e,i,{get:()=>t[i],enumerable:!(o=qo(t,i))||o.enumerable});return e};var h=(e,t,r)=>(r=e!=null?Jo(Ko(e)):{},Yo(t||!e||!e.__esModule?ht(r,"default",{value:e,enumerable:!0}):r,e));var Wt=h(require("node:path"));var Xo="\x1B[0m",yt={black:"\x1B[30m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",gray:"\x1B[90m",bold:"\x1B[1m",dim:"\x1B[2m"},w={};for(let e in yt){let t=e;w[t]=r=>`${yt[t]}${r}${Xo}`}var E={FROM_SCRATCH:"FROM_SCRATCH",INCREMENTAL:"INCREMENTAL",IDLE:"IDLE",ERROR:"ERROR",COMPLETED:"COMPLETED"};var
|
|
1
|
+
"use strict";var Jo=Object.create;var ht=Object.defineProperty;var qo=Object.getOwnPropertyDescriptor;var Vo=Object.getOwnPropertyNames;var Ko=Object.getPrototypeOf,zo=Object.prototype.hasOwnProperty;var Yo=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Vo(t))!zo.call(e,i)&&i!==r&&ht(e,i,{get:()=>t[i],enumerable:!(o=qo(t,i))||o.enumerable});return e};var h=(e,t,r)=>(r=e!=null?Jo(Ko(e)):{},Yo(t||!e||!e.__esModule?ht(r,"default",{value:e,enumerable:!0}):r,e));var Wt=h(require("node:path"));var Xo="\x1B[0m",yt={black:"\x1B[30m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",gray:"\x1B[90m",bold:"\x1B[1m",dim:"\x1B[2m"},w={};for(let e in yt){let t=e;w[t]=r=>`${yt[t]}${r}${Xo}`}var E={FROM_SCRATCH:"FROM_SCRATCH",INCREMENTAL:"INCREMENTAL",IDLE:"IDLE",ERROR:"ERROR",COMPLETED:"COMPLETED"};var Je=h(require("node:fs/promises")),Ee=h(require("node:path"));var Pt=h(require("node:path"));var Dt=h(require("node:fs"));var Z=h(require("node:path")),Rt=h(require("node:process")),St=require("node:url"),wt=e=>e instanceof URL?(0,St.fileURLToPath)(e):e;function bt(e,t={}){let{cwd:r=Rt.default.cwd(),type:o="file",stopAt:i}=t,n=Z.default.resolve(wt(r)??""),{root:s}=Z.default.parse(n),a=i?Z.default.resolve(n,wt(i)):s,d=Z.default.isAbsolute(e);for(;;){let p=d?e:Z.default.join(n,e);try{let f=Dt.default.statSync(p,{throwIfNoEntry:!1});if(o==="file"&&f?.isFile()||o==="directory"&&f?.isDirectory())return p}catch{}if(n===a||n===s)break;n=Z.default.dirname(n)}}function Et(e){let{cwd:t}=e||{},r=bt("package.json",{cwd:t});return r&&Pt.default.dirname(r)}var{env:S}=process;function K(e){if(!e)return!1;switch(e.trim().toLowerCase()){case"1":case"true":case"yes":case"y":case"on":return!0;default:return!1}}var He=S.GRIDDO_API_URL||S.API_URL,_t=S.GRIDDO_PUBLIC_API_URL||S.PUBLIC_API_URL,It=S.botEmail||S.GRIDDO_BOT_USER,At=S.botPassword||S.GRIDDO_BOT_PASSWORD,Ue=Number.parseInt(S.GRIDDO_API_CONCURRENCY_COUNT||"10"),Gi=K(S.GRIDDO_SKIP_BUILD_CHECKS),ne=K(S.GRIDDO_BUILD_LOGS),xt=Number.parseInt(S.GRIDDO_BUILD_LOGS_BUFFER_SIZE||"500"),Tt=K(S.GRIDDO_SSG_VERBOSE_LOGS),Ni=K(S.GRIDDO_SEARCH_FEATURE),We=S.GRIDDO_ASSET_PREFIX||S.ASSET_PREFIX,$t=S.GRIDDO_REACT_APP_INSTANCE||S.REACT_APP_INSTANCE,Bi=K(S.GRIDDO_AI_EMBEDDINGS),vt=K(S.GRIDDO_VERBOSE_LOGS),Mi=K(S.GRIDDO_USE_DIST_BACKUP),Ft=K(S.GRIDDO_SSG_BUNDLE_ANALYZER);var c=class e{constructor(){}static verbose(...t){vt&&console.log(w.yellow("verbose"),w.dim(t.join(" ")))}static build(...t){ne&&e.log(...t)}static info(...t){console.log(`${w.blue("info")} ${t.join(" ")}`)}static success(...t){console.log(`${w.green("success")} ${t.join(" ")}`)}static error(...t){console.error(`${w.red("error")} ${t.join(" ")}`)}static warn(...t){console.warn(`${w.yellow("warn")} ${t.join(" ")}`)}static log(...t){console.log(...t)}};var Qo=Et({cwd:Ee.default.resolve(__dirname,"../../..")})||"",Zo=Ee.default.join(Qo,".griddo/cache"),Ot=Ee.default.join(Zo,"db.json");async function R(e=""){let t=e||Ot;try{return JSON.parse(await Je.default.readFile(t,"utf-8"))}catch(r){throw c.error(`Failed to read DB file at ${t}:`,r),r}}async function C(e,t=""){let r=t||Ot;try{await Je.default.writeFile(r,JSON.stringify(e,null," "))}catch(o){throw c.error(`Failed to write DB file at ${r}:`,o),o}}var Ke=h(require("node:fs/promises")),z=h(require("node:path"));var b=h(require("node:fs/promises")),W=h(require("node:path"));var se={error:"ArtifactError",message:"There was a problem with an artifact",expected:"An external process may have has modified or deleted one of the artifacts (files and directories).",hint:"Have there been any recent deployments? These can delete directories from the current render."};var Ct=(e,t)=>({error:"LifecycleExecutionError",message:`Exceeded maximum retry attempts (${e}) for ${t} LifeCycle`}),Lt={error:"LoginError",message:"There was a problem logging in to the API",expected:"This happens if the API is currently not working or the credentials are incorrect."};var jt={error:"RenderUUIDError",message:`Render sentinel file does not exist.
|
|
2
2
|
The rendering UUID cannot be read safely.
|
|
3
3
|
There was probably an instance deployment during the render, and files were deleted.
|
|
4
4
|
|
|
5
|
-
The files generated in this render will not be published.`},Gt={error:"WriteToStoreError",message:"There was an error writing a file to the Store directory",hint:"There may be an issue such as lack of space or permissions preventing the file from being written."};async function
|
|
5
|
+
The files generated in this render will not be published.`},Gt={error:"WriteToStoreError",message:"There was an error writing a file to the Store directory",hint:"There may be an issue such as lack of space or permissions preventing the file from being written."};async function qe(e){if(!await y(e))return;let t=(await b.default.readdir(e,{withFileTypes:!0})).filter(r=>r.isDirectory());for(let r of t){let o=W.default.join(e,r.name);await ei(o)&&await b.default.rm(o,{recursive:!0})}}async function Nt(e,t){for(let r of e)try{await y(r)||(await b.default.mkdir(r,{recursive:!0,...t}),c.verbose(`create directory: ${r}`))}catch(o){x(se,o)}}async function Bt(e,t,r,o={withBackup:!1}){let{withBackup:i}=o;for(let n of r){let s=W.default.join(e,n),a=W.default.join(t,n);if(!await y(s)){c.info(`(Maybe first render) Source directory does not exist: ${s}`);continue}i&&(await Ht(a),c.verbose(`create backup: ${a}`));try{await y(a)&&(await b.default.rm(a,{recursive:!0,force:!0}),c.verbose(`clean destination: ${a}`)),await b.default.cp(s,a,{recursive:!0,preserveTimestamps:!0}),c.verbose(`copy: ${s} to ${a}`),i&&(await kt(a),c.verbose(`delete backup: ${a}`))}catch(d){i&&(await Mt(a),c.verbose("Backup has been restored.")),x(se,d)}}}async function ee(e,t,r,o){let{override:i,withBackup:n}=o||{};for(let s of r){let a=W.default.join(e,s),d=W.default.join(t,s);if(await y(a)){n&&await Ht(d);try{i&&await y(d)&&await b.default.rm(d,{recursive:!0,force:!0}),await b.default.rename(a,d),c.verbose(`moved: ${a} to ${d}`),n&&await kt(d)}catch(p){n&&(await Mt(d),c.info("Backup has been restored.")),x(se,p)}}}}async function ae(e){for(let t of e)try{await b.default.rm(t,{recursive:!0,force:!0}),c.verbose(`artifact removed: ${t}`)}catch(r){x(se,r)}}async function Mt(e,t="-BACKUP"){let r=e+t;try{await b.default.rename(r,e),c.info(`Backup ${r} has been restored`)}catch{throw new Error(`Error while delete ${r} backup`)}}async function kt(e,t="-BACKUP"){let r=e+t;if(await y(r))try{await b.default.rm(r,{recursive:!0,force:!0}),c.verbose(`Backup ${r} has been deleted`)}catch{throw new Error(`Error while delete ${r} backup`)}}async function Ht(e,t="-BACKUP"){let r=e+t;if(await y(e)){if(await y(r)){c.warn(`Destination ${r} already exists`);return}try{await b.default.rename(e,r),c.verbose(`Backup of ${e} has been created in ${r}`)}catch(o){c.error(`Error while coping ${e} to ${r} backup`),x(se,o)}}}async function ei(e){let t=(await b.default.readdir(e,{withFileTypes:!0,recursive:!0})).filter(o=>o.isFile()&&!W.default.basename(o.name).startsWith(".")),r=t.filter(o=>o.name.endsWith(".xml"));if(t.length===r.length)return!0}async function Ve(e){try{if(!(await b.default.stat(e)).isDirectory())return;let r;try{r=await b.default.readdir(e)}catch(i){if(i.code==="ENOENT"){c.warn(`The directory "${e}" does not exist, skipping it.`);return}throw c.error(`Error al leer el directorio "${e}":`,i),i}for(let i of r){let n=W.default.join(e,i);await Ve(n)}if((await b.default.readdir(e)).length===0)try{await b.default.rmdir(e),c.verbose(`Remove empty directory: ${e}`)}catch(i){i.code==="ENOENT"?c.warn(`El directorio "${e}" ya no existe. Posiblemente fue borrado por otra operaci\xF3n.`):c.error(`Error al borrar el directorio "${e}":`,i)}}catch(t){if(t.code==="ENOENT")c.warn(`The directory "${e}" does not exist or has already been processed.`);else throw c.error(`General error general while processing "${e}":`,t),t}}async function y(e){try{return await b.default.access(e),!0}catch{return!1}}async function*pe(e,t){let r=await b.default.opendir(e);for await(let o of r){let i=W.default.join(e,o.name);o.isDirectory()?yield*pe(i,t):o.isFile()&&o.name.endsWith(t)&&(yield i)}}async function Ut(e){let t=await R(),{exportsDir:r,exportsDirBackup:o}=t.paths;c.info(`Cleaning exports dir for the domain ${e}`),c.verbose(`Deleting ${z.default.join(r,e)}...`),await Ke.default.rm(z.default.join(r,e),{recursive:!0,force:!0}),await y(z.default.join(o,e))?(await Ke.default.cp(z.default.join(o,e),z.default.join(r,e),{recursive:!0}),c.info(`export-backup dir for the domain ${e} found. Restoring before exit...`),c.verbose(`Copying ${z.default.join(o,e)} -> ${z.default.join(r,e)}...`)):c.info("No export-backup found, skipping rollback. Next render will create a new exports dir from scratch...")}var ce=class extends Error{constructor(t){super(t instanceof Error?t.message:String(t)),this.name="InternalCXError",this.stack=t instanceof Error?t.stack:""}};function x(e,t){let{error:r,message:o,expected:i,hint:n}=e,s=c.log(w.red(`[ ${r} ]`)),a=[i,n].filter(Boolean).join(`
|
|
6
6
|
`);throw c.log(`
|
|
7
7
|
${s}
|
|
8
8
|
${o}
|
|
@@ -12,13 +12,13 @@ ${w.red("stack")}
|
|
|
12
12
|
${JSON.stringify(t,null,2)}`),new ce(t)}async function Jt(e){try{await e()}catch(t){t instanceof ce?c.error("Internal Griddo RenderError"):t instanceof Error?c.error(t.message):c.error(`An unexpected error occurred ${t}`);try{let o=await R(),{root:i}=o.paths;o.needsRollbackOnError?(c.info("Cleaning exports dir..."),c.verbose(`Deleting ${Wt.default.join(i,"exports")}...`),await Ut(o.currentRenderingDomain)):c.info("No rollback needed, skipping...")}catch{c.info("Early render stage, no db.json created yet...")}let r=await R();throw r.domains[r.currentRenderingDomain].isRendering=!1,r.domains[r.currentRenderingDomain].renderMode=E.ERROR,await C(r),t}}var qt=h(require("node:fs/promises")),Vt=h(require("node:path"));async function Kt(){let{version:e}=JSON.parse(await qt.default.readFile(Vt.default.resolve(__dirname,"../..","package.json"),"utf-8")),t=`
|
|
13
13
|
${w.yellow(`Griddo Exporter ${e}`)}
|
|
14
14
|
${w.dim(`Node ${process.version.slice(1)}`)}
|
|
15
|
-
`;c.log(t)}var k=process.env.GRIDDO_API_URL,ti=process.env.GRIDDO_PUBLIC_API_URL,fn=`${k}/ai/embeddings`,un=`${ti}/alert`,gn=`${k}/domains`,zt=`${k}/sites/all`,Yt=`${k}/page`,Xt=`${k}/login_check`,hn=`${k}/debug/reset-render`,Qt=`${k}/domains/robots`,yn=`${k}/search`,Zt=`${k}/settings`,te=`${k}/site/`,er=[te,"/build/end"],tr=[te,"/build/start"];var rr=[te,"/distributor"],or=[te,"/sitemap"],ir=[te,"/all"],nr=[te,"/languages"],sr=[te,"/socials"];var
|
|
15
|
+
`;c.log(t)}var k=process.env.GRIDDO_API_URL,ti=process.env.GRIDDO_PUBLIC_API_URL,fn=`${k}/ai/embeddings`,un=`${ti}/alert`,gn=`${k}/domains`,zt=`${k}/sites/all`,Yt=`${k}/page`,Xt=`${k}/login_check`,hn=`${k}/debug/reset-render`,Qt=`${k}/domains/robots`,yn=`${k}/search`,Zt=`${k}/settings`,te=`${k}/site/`,er=[te,"/build/end"],tr=[te,"/build/start"];var rr=[te,"/distributor"],or=[te,"/sitemap"],ir=[te,"/all"],nr=[te,"/languages"],sr=[te,"/socials"];var ze=class{headers;async login(){try{let t=await fetch(Xt,{method:"POST",headers:{"Content-Type":"application/json",Connection:"close"},body:JSON.stringify({username:It,password:At})});if(!t.ok)throw new Error("Error while login in the API");let{token:r}=await t.json();return this.headers={Authorization:`bearer ${r}`,"Cache-Control":"no-store"},this.headers}catch(t){x(Lt,t)}}},J=new ze;var $o=h(require("node:path"));async function ri(e){let t=process.hrtime.bigint();await Promise.resolve(e());let r=process.hrtime.bigint();return Number((Number(r-t)/1e9).toFixed(3))}async function v(e,t,r){let{maxRetrys:o=3,skip:i}=r||{};if(i){c.info(`Skiping life-cycle ${e}. Reason: ${i}
|
|
16
16
|
`);return}let n=0;for(;n<o;)try{c.info(`start ${e} life-cycle`);let s=await ri(t);c.success(`${e} - ${s}s
|
|
17
17
|
`);break}catch(s){let a=w.red(` Error in ${e} LifeCycle `),d=w.yellow(`Attempt (${n+1})`);c.log(`
|
|
18
18
|
${a} ${d}
|
|
19
|
-
`),c.log(s),c.log(),n++}n===o&&x(Ct(o,e))}var ue=h(require("node:fs/promises")),fe=h(require("node:path"));var de=[],
|
|
19
|
+
`),c.log(s),c.log(),n++}n===o&&x(Ct(o,e))}var ue=h(require("node:fs/promises")),fe=h(require("node:path"));var de=[],_e=null,me=null,oi=xt,Xe="render-detail-log.txt",ar=!ne,Ye=null;async function cr(){return Ye||(Ye=await R()),Ye}async function dr(){if(ar)return;let e=await cr();_e=fe.default.join(e.paths.root,Xe),await ue.default.rm(_e,{force:!0})}function ge(e){ar||(de.push(e.toString()),de.length>=oi&&lr().catch(t=>{c.error("Background log flush failed:",t)}))}async function lr(){if(me&&await me,de.length===0||!_e)return;me=(async()=>{let t=[...de];de.length=0;try{await ue.default.appendFile(_e,`${t.join(`
|
|
20
20
|
`)}
|
|
21
|
-
`)}catch(r){de.unshift(...t),c.error("Error flushing logs:",r)}})();try{await me}finally{me=null}}async function pr(e){await lr();let t=await cr(),r=ii(),o=fe.default.join(t.paths.exportsDir,e,"logs");await ue.default.mkdir(o,{recursive:!0});let i=fe.default.join(t.paths.root,
|
|
21
|
+
`)}catch(r){de.unshift(...t),c.error("Error flushing logs:",r)}})();try{await me}finally{me=null}}async function pr(e){await lr();let t=await cr(),r=ii(),o=fe.default.join(t.paths.exportsDir,e,"logs");await ue.default.mkdir(o,{recursive:!0});let i=fe.default.join(t.paths.root,Xe),n=fe.default.join(o,`${r}-${Xe}`);try{await ue.default.cp(i,n)}catch(s){if(s instanceof Error&&"code"in s&&s.code!=="ENOENT")throw s}}function ii(){let e=new Date,t=e.getFullYear(),r=String(e.getMonth()+1).padStart(2,"0"),o=String(e.getDate()).padStart(2,"0"),i=String(e.getHours()).padStart(2,"0"),n=String(e.getMinutes()).padStart(2,"0"),s=String(e.getSeconds()).padStart(2,"0");return`${t}-${r}-${o}_${i}-${n}-${s}`}var gr=require("node:child_process"),he=h(require("node:fs/promises")),H=h(require("node:path"));var Ie=h(require("node:fs/promises")),Y=h(require("node:path"));async function Ae(e){let t=await R(),{sitesToPublish:r,createdPages:o,buildProcessData:i}=t.domains[e].renderInfo||{};if(!r||!o||!i)throw new Error("Build metadata not found");return{buildProcessData:i,createdPages:o,sitesToPublish:r}}async function mr(e,t){let r=await R();r.domains[t]=r.domains[t]||{},r.domains[t].renderInfo=e,await C(r)}async function fr(e,t){let{__root:r}=await D();try{let o=new Set(["editorID","parentEditorID"]);for(let i of t){si(i,o);let n=`${i.context.page.id}.json`,s=Y.default.join(r,"store",e,n);await ni(s,JSON.stringify(i))}}catch(o){x(Gt,o)}}async function ur(e,t){let{__root:r}=await D({domain:t}),o=Y.default.join(r,"store");if(!await y(o))return;let i=await Ie.default.readdir(o),n=e.map(({id:a})=>`${a}`),s=i.filter(a=>!n.includes(a));for(let a of s)await Ie.default.rm(Y.default.join(o,a),{recursive:!0,force:!0}),c.verbose(`Removed orphan site id: ${a}`)}async function ni(e,t){let r=Y.default.dirname(e),o=Y.default.extname(e),i=Y.default.basename(e,o),n=e,s=1;for(;await y(n);){let a=`${i}-${s}${o}`;n=Y.default.join(r,a),s++}await Ie.default.writeFile(n,t)}function si(e,t){function r(o){if(!(!o||typeof o!="object"||Array.isArray(o))){for(let i in o)if(Object.hasOwn(o,i))if(t.has(i))delete o[i];else{let n=o[i];typeof n=="object"&&n!==null&&!Array.isArray(n)&&r(n)}}}r(e)}async function hr(e){let{domain:t}=e,r=await R();r.domains[t].isRendering=!0,await C(r);let{__ssg:o}=await D(),i=H.default.join(o,`.render-sentinel-${t}`);await he.default.writeFile(i,new Date().toISOString())}async function yr(e){let t=await R();t.domains[e].isRendering=!1,t.currentRenderingDomain=null,t.domains[e].renderMode=E.COMPLETED,await C(t);let{__ssg:r}=await D(),o=H.default.join(r,`.render-sentinel-${e}`);await he.default.unlink(o)}async function wr(e){let{__ssg:t}=await D(),r=H.default.join(t,`.render-sentinel-${e}`);await y(r)||x(jt)}async function Dr(e){let{basePath:t}=e,r=(0,gr.execSync)("git rev-parse HEAD").toString().trim();await he.default.writeFile(H.default.join(t,"commit"),r)}async function Rr(e){let t=await R();if(!t.domains[e])throw new Error(w.red(`[!] Error: Domain ${e} not found in DB`));if(!t.domains[e].renderMode)throw new Error(w.red(`[!] Error: Render mode not found for domain ${e}`));return{renderMode:t.domains[e].renderMode,reason:t.domains[e].renderModeReason}}async function D(e){let{domain:t,dbFilePath:r}=e||{},i=(await R(r)).paths;return{__root:i.root,__cache:H.default.join(i.cxCache,t||""),__components:i.components,__cx:i.cx,__sites:i.exportsDir,__exports:H.default.join(i.exportsDir,t||""),__exports_backup:H.default.join(i.exportsDirBackup,t||""),__ssg:i.ssg,__exports_dist:H.default.join(i.exportsDir,t||"","dist")}}async function Qe(){let e=await R();return{griddoVersion:e.griddoVersion,buildReportFileName:e.buildReportFileName}}async function Sr(e){let t=await J.login(),{__root:r}=await D(),{buildReportFileName:o}=await Qe(),{buildProcessData:i}=await Ae(e),n=Object.keys(i).map(d=>({...i[d],siteId:Number.parseInt(d)})),s={authControl:t,sites:n},a=H.default.join(r,"current-dist",o);await he.default.writeFile(a,JSON.stringify(s)),c.verbose(`build report saved in ${a}`)}var F=h(require("node:path"));async function br(e){let{__exports:t,__cache:r,__root:o,__ssg:i}=await D({domain:e});return{initials:[t,r,F.default.join(t,"logs"),F.default.join(o,"store"),F.default.join(o,"apiCache")],disposables:[F.default.join(o,"store"),F.default.join(o,"apiCache"),F.default.join(o,"dist"),F.default.join(o,"dist-restored"),F.default.join(o,"assets"),F.default.join(o,"render-detail-log.txt"),F.default.join(o,"current-dist"),F.default.join(i,"domains.json"),F.default.join(i,"render-metadata.json")],cacheables:[],archivables:["assets"],restaurable:["dist"]}}var xe=class{domain;renderMode;pathsHydratedWithDomain;pagesToCreate=[];pagesToDelete=[];ssg;renderMetadata;renderArtifacts;constructor({domain:t,renderMode:r,ssg:o,pathsHydratedWithDomain:i,renderMetadata:n,renderArtifacts:s}){this.domain=t,this.renderMode=r,this.pathsHydratedWithDomain=i,this.renderMetadata=n,this.renderArtifacts=s,this.ssg=o}};var Te=h(require("node:fs/promises")),$e=h(require("node:path"));async function Pr(e){let{renderArtifacts:t,ssg:{ssgArtifacts:r},pathsHydratedWithDomain:{__cache:o,__exports:i},renderMode:n}=e;n===E.FROM_SCRATCH&&(await Te.default.rm($e.default.join(o,".cache"),{recursive:!0,force:!0}),await Te.default.rm($e.default.join(i,"dist"),{recursive:!0,force:!0}),await Te.default.rm($e.default.join(i,"assets"),{recursive:!0,force:!0})),await ae(t.disposables),await ae(r.disposables)}async function Er(e){let{renderArtifacts:t,ssg:{ssgArtifacts:r},pathsHydratedWithDomain:{__cache:o}}=e;await ae(t.disposables),await ae(r.disposables),await Dr({basePath:o})}var Oe=h(require("node:fs/promises")),De=h(require("node:path"));var Ze=class{value;next;constructor(t){this.value=t}},ye=class{#e;#t;#r;constructor(){this.clear()}enqueue(t){let r=new Ze(t);this.#e?(this.#t.next=r,this.#t=r):(this.#e=r,this.#t=r),this.#r++}dequeue(){let t=this.#e;if(t)return this.#e=this.#e.next,this.#r--,this.#e||(this.#t=void 0),t.value}peek(){if(this.#e)return this.#e.value}clear(){this.#e=void 0,this.#t=void 0,this.#r=0}get size(){return this.#r}*[Symbol.iterator](){let t=this.#e;for(;t;)yield t.value,t=t.next}*drain(){for(;this.#e;)yield this.dequeue()}};function we(e){_r(e);let t=new ye,r=0,o=()=>{r<e&&t.size>0&&(r++,t.dequeue()())},i=()=>{r--,o()},n=async(d,p,f)=>{let l=(async()=>d(...f))();p(l);try{await l}catch{}i()},s=(d,p,f)=>{new Promise(l=>{t.enqueue(l)}).then(n.bind(void 0,d,p,f)),r<e&&o()},a=(d,...p)=>new Promise(f=>{s(d,f,p)});return Object.defineProperties(a,{activeCount:{get:()=>r},pendingCount:{get:()=>t.size},clearQueue:{value(){t.clear()}},concurrency:{get:()=>e,set(d){_r(d),e=d,queueMicrotask(()=>{for(;r<e&&t.size>0;)o()})}},map:{async value(d,p){let f=Array.from(d,(l,m)=>this(p,l,m));return Promise.all(f)}}}),a}function _r(e){if(!((Number.isInteger(e)||e===Number.POSITIVE_INFINITY)&&e>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up")}var Tr=h(require("node:crypto")),ve=h(require("node:fs/promises")),et=h(require("node:path"));var{env:ai}=process,{RETRY_WAIT_SECONDS:ci="4",RETRY_ATTEMPTS:Ir="4"}=ai;async function tt(e,t,r=""){let{endpoint:o,body:i,cacheKey:n="",attempt:s=1,headers:a,useApiCacheDir:d=!0,logToFile:p=!0}=e,f={endpoint:o,body:i,headers:a,cacheKey:n};if(n&&d){let l=new Date,m=await mi(f);if(m){if(p){let u=Ar(m),g=u?`site: ${u}`:"",_=xr(Date.now()-l.getTime());ge(`${t} (cache) ${g} ${o} - ${_}s ${r}`)}return m}}try{let l=new Date,m={method:t.toUpperCase(),headers:Object.assign({},a,J.headers)};t.toLowerCase()!=="get"&&i&&(m.body=JSON.stringify(i),m.headers||(m.headers={}),m.headers["Content-Type"]="application/json");let u=await fetch(o,m);if(!u.ok){if(u.status===404)return null;throw new Error(`HTTP ${u.status}: ${u.statusText}`)}let g=await u.json();if(p){let _=Ar(g),j=_?`site: ${_}`:"",I=xr(Date.now()-l.getTime());ge(`${t} (fetch) ${j} ${o} - ${I}s ${r}`)}return d&&await pi(f,g),g}catch(l){let m=l;if(s>parseInt(Ir))throw c.log(`
|
|
22
22
|
Max attempts ${Ir} reached
|
|
23
23
|
--------------------------------------
|
|
24
24
|
- ${t.toUpperCase()} ${o}
|
|
@@ -38,14 +38,14 @@ ${s}
|
|
|
38
38
|
${a}
|
|
39
39
|
|
|
40
40
|
=============
|
|
41
|
-
`))}function Ar(e){if(!(typeof e!="object"||e===null||Array.isArray(e)))return"site"in e&&e.site?e.site:void 0}function li(e){return new Promise(t=>setTimeout(t,e))}function xr(e,t=3){return Number.parseFloat((e/1e3).toFixed(t))}async function $r(e){let{__root:t}=await D(),r=et.default.join(t,"apiCache"),o=Tr.default.createHash("sha256");return o.update(JSON.stringify(e)),`${r}/${o.digest("hex")}`}async function pi(e,t){let r=typeof t=="string"?t:JSON.stringify(t),o=await $r(e),i=et.default.dirname(o);await y(i)||await
|
|
41
|
+
`))}function Ar(e){if(!(typeof e!="object"||e===null||Array.isArray(e)))return"site"in e&&e.site?e.site:void 0}function li(e){return new Promise(t=>setTimeout(t,e))}function xr(e,t=3){return Number.parseFloat((e/1e3).toFixed(t))}async function $r(e){let{__root:t}=await D(),r=et.default.join(t,"apiCache"),o=Tr.default.createHash("sha256");return o.update(JSON.stringify(e)),`${r}/${o.digest("hex")}`}async function pi(e,t){let r=typeof t=="string"?t:JSON.stringify(t),o=await $r(e),i=et.default.dirname(o);await y(i)||await ve.default.mkdir(i,{recursive:!0}),await ve.default.writeFile(o,r,"utf8")}async function mi(e){try{let t=await $r(e),r=await ve.default.readFile(t,"utf8");return JSON.parse(r)}catch{return null}}var Nr=h(require("node:fs/promises")),Br=h(require("node:path"));async function vr(e){return L({endpoint:`${zt}?domainSlug=${e}`})}async function Fr(e,t){return L({endpoint:`${Yt}/${e}`,cacheKey:t})}async function Or(e,t=""){let[r,o]=ir;return L({endpoint:`${r}${e}${o}`,cacheKey:t})}async function ot(e,t=""){let[r,o]=nr;return L({endpoint:`${r}${e}${o}`,cacheKey:t})}async function it(e){let[t,r]=tr;return L({endpoint:`${t}${e}${r}`})}async function Cr(e,t){let[r,o]=er;await rt({endpoint:`${r}${e}${o}`,body:t,useApiCacheDir:!1,logToFile:!1})}async function Lr(e,t,r,o,i){let[n,s]=rr,a=o||e.site,d=i||e.language;return rt({endpoint:`${n}${a}${s}`,body:t,headers:{lang:d},cacheKey:r})}async function jr(e){let{siteId:t,headers:r}=e,[o,i]=or;return L({endpoint:`${o}${t}${i}`,headers:r})}async function Gr(e,t=""){let[r,o]=sr;return L({endpoint:`${r}${e}${o}`,cacheKey:t})}async function Mr(e){let t=await vr(e);if(t.length)for(let i of t){let{items:n}=await ot(i.id);i.domains=n.filter(s=>s.domain&&(s.domain.slug===e||s.domain.slug===`/${e}`)).map(s=>({[s.id]:`${s.domain.slug}${s.path}`}))}let r=t.filter(i=>!!i.isPublished),o=t.filter(i=>!i.isPublished&&i.shouldBeUpdated);return{sitesToPublish:r,sitesToUnpublish:o}}async function kr(e){let{__root:t}=await D();for(let r of e){let o=await it(r.id),{siteHash:i}=o,n={siteHash:i,publishHashes:[],unpublishHashes:[],publishPagesIds:[]};await Cr(r.id,n),await Nr.default.rm(Br.default.join(t,"store",r.id.toString()),{force:!0,recursive:!0})}}async function Hr(e){let t=await it(e),r=await Or(e),o=await ot(e),i=await Gr(e),n=o.items,s=n.find(g=>g.isDefault),{siteHash:a,unpublishHashes:d,publishIds:p}=t,{headers:f,footers:l}=r;return{siteInfo:r,validPagesIds:p,siteHash:a,unpublishHashes:d,siteLangs:n,defaultLang:s,headers:f,footers:l,socials:i}}var Fe=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(){let r=[...this.navigations.footers].filter(i=>i.setAsDefault),o={};for(let i of r)o[i.language]=i;return o}getDefaultHeaders(){let r=[...this.navigations.headers].filter(i=>i.setAsDefault),o={};for(let i of r)o[i.language]=i;return o}getRightLanguage(t,r,o){if(!t||!r)return null;let n=t.find(s=>s.language===o&&s.navigationLanguages?.find(a=>a.navigationId===r))||t.find(s=>s.id===r);return n?{...n}: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:o,language:i,template:n,templateConfig:s}=t,{templateType:a}=n,{defaultHeader:d,defaultFooter:p,templates:f}=s,l=j=>{let I=j.find(O=>typeof O=="number");return typeof I=="number"?I:null},m=l([r,f?.[a]?.defaultHeader,d]),u=l([o,f?.[a]?.defaultFooter,p]),g=m?this.getPageHeader(m,i):m===0?null:this._defaultHeaders[i],_=u?this.getPageFooter(u,i):u===0?null:this._defaultFooters[i];return{header:g,footer:_}}};function nt(e,t,r,o="jpg"){let i=typeof e=="string"?e:e?.url;return i?i.split("/")[2].includes("cloudinary.com")?ui(i,`c_fill,w_${t},h_${r}`):fi(i,`f/${o}/w/${t}/h/${r}`):null}function fi(e,t){let r=e.split("/"),o=r.slice(0,-1).join("/"),i=r.slice(-1)[0];return`${o}/${t}/${i}`}function ui(e,t){let r=e.replace("https://",""),o=r.split("/").slice(0,4).join("/"),i=r.replace(o,"");return`https://${o}/${t}${i}`}var gi=25;function hi({socialTitle:e,socialDescription:t,socialImage:r}){return{type:"website",title:e,description:t,image:r?nt(r,1280,768):"",twitterImage:r?nt(r,1280,768):""}}function yi(e){let{title:t,metaTitle:r,metaDescription:o,canonicalURL:i,locale:n,url:s,isIndexed:a,follow:d,metasAdvanced:p,pageLanguages:f,fullUrl:l,metaKeywords:m}=e,u=p?.split(",").filter(Boolean).map(g=>g.trim().toLowerCase())||[];return{title:(r||t||"").trim(),description:o,canonical:i?.trim()&&i!==l?i.trim():a?l:void 0,locale:n,url:s,index:a?"index":"noindex",follow:d?"follow":"nofollow",translate:u.includes("notranslate")?"notranslate":"",metasAdvanced:u.filter(g=>g!=="notranslate").join(),pageLanguages:f,metaKeywords:m?.filter(Boolean).map(g=>g.replace(/"/g,"'")).join(", ")}}async function at(e,t){let{id:r,title:o,fullPath:i,language:n,breadcrumb:s,socialDescription:a,socialImage:d,socialTitle:p}=e,{baseUrl:f,cloudinaryName:l,griddoVersion:m,siteLangs:u,siteMetadata:g,siteOptions:_,siteScript:j,siteSlug:I,socials:O,theme:B,navigations:G}=t,{header:le,footer:Q}=G;e.breadcrumb=s,e.siteSlug=I,e.apiUrl=f,e.publicApiUrl=t.publicBaseUrl,e.instance=t.instance;let U=u.find(({id:Be})=>Be===e?.language)?.locale.replace(/_/g,"-"),q=yi(e),V=hi({socialDescription:a,socialImage:d,socialTitle:p}),oe=i.compose,Ne=new Date().toString();return{path:oe,size:void 0,context:{id:r,title:o,fullPath:i,locale:U,languageId:n,theme:B,siteMetadata:g,pageMetadata:q,openGraph:V,socials:O,siteLangs:u,cloudinaryName:l,siteOptions:_,griddoVersion:m,renderDate:Ne,siteScript:j,header:le,footer:Q,page:e}}}async function Jr(e,t){return at(e,t)}async function qr({page:e,pages:t,isRoot:r=!1,defaultLang:o,template:i,totalQueriedItems:n},s){let a=t.map(async(d,p)=>{let f=p===0,l=p+1,{domainUrl:m,compose:u}=e.fullPath,g={...e,fullPath:{...e.fullPath,compose:st(u,l,{addEndingSlash:!0})},fullUrl:st(e.fullUrl,l,{addEndingSlash:!0}),slug:st(e.slug,l),title:Wr(e.title,l),metaTitle:Wr(e.metaTitle||"",l),disableHrefLangs:l>1,template:{...i,isFirstPage:f,pageNumber:l,totalPages:t.length,baseLink:`${m}${u}`,queriedItems:d,totalQueriedItems:n?.length},isRoot:r,defaultLang:o};return at(g,s)});return Promise.all(a)}function Vr(e,t){let{multiPageElements:r,...o}=e,i=JSON.parse(JSON.stringify(r));i.find(({sectionSlug:s})=>s==="/")||i.push({});let n=i.map(async s=>{let a=JSON.parse(JSON.stringify(o)),{sectionSlug:d="/",title:p="",metaTitle:f="",metaDescription:l=""}=s,m=typeof p=="string"?p:p.content,u=a.fullPath.compose||"",g=a.fullUrl.endsWith("/")?a.fullUrl.slice(0,-1):a.fullUrl,_=d?.replace(/\//g,""),I=d==="/"?_:`${_}/`,O=u.endsWith("/")?"":"/",B=`${u}${O}${I}`;return m.trim()&&(a.title=m),l.trim()&&(a.metaDescription=l),a.fullUrl=`${g}/${I}`,a.fullPath.compose=B,a.slug=B,a.template.activeSectionSlug=d,a.template.activeSectionBase=g,a.metaTitle=f.trim()||m.trim()||a.metaTitle,at(a,t)});return Promise.all(n)}function Kr(e){return new Promise(r=>{let o=(i,n=0)=>{if(!(!i||typeof i!="object")){for(let s in i){let a=i[s],d=a||typeof a=="object",p=JSON.stringify(a).includes('"hasGriddoMultiPage":true');if(!d||!p)continue;let{component:f,hasGriddoMultiPage:l,elements:m}=a;f&&l&&r(m||[]),o(a,n+1)}n||r(null)}};o([e])})}function wi(e,t,r){return t?.slice(e*(r-1),e*r)}function Di(e,t){let r=Math.ceil(t.length/e)||1;return Array.from({length:r},(i,n)=>n+1)?.map(i=>wi(e,t,i))}function zr(e){let t=e.queriedItems||[],r=e?.itemsPerPage||gi;return Di(r,t)}function Ur(e){return e.replace(/\/+$/,"/")}function st(e,t,r){let o=e.endsWith("/")?"":"/",i=r?.addEndingSlash?"/":"";return t<=1?Ur(`${e}${i}`):Ur(`${e}${o}${t}${i}`)}function Wr(e,t){return!e||t<=1?e:`${e} - ${t}`}function Ri(e,t){let{order:r,sources:o,quantity:i,mode:n,fixed:s,fullRelations:a=!1,allLanguages:d=!1,preferenceLanguage:p=!1,referenceId:f,fields:l}=e;return n==="auto"?{mode:n,order:r,sources:o,quantity:i,fullRelations:a,allLanguages:d,preferenceLanguage:p,fields:l}:n==="manual"?{mode:n,fixed:s,fullRelations:a,fields:l}:n==="navigation"?{mode:n,order:r,quantity:i,fullRelations:a,referenceId:f||t?.structuredDataContent?.id,fields:l}:(c.error(`ReferenceField mode: ${n} is not recognized on page ${t?.id}.`),e)}async function Si(e){let{page:t,component:r,cacheKey:o}=e,{data:i}=r;if(!i)return c.info(`Error: Page ${t.id} has \`hasDistributorData: true\` or \`getStaticData: true\` but it doesn't have a \`data\` property.`),[];if(Array.isArray(i.sources)&&i.sources.length<1)return c.info(`Warning: Page with id: ${t.id} has a ReferenceField with empty \`data.sources\``),[];let{site:n,lang:s}=i;!i.sources&&i.mode==="auto"&&c.info(`Warning: Page with id: ${t.id} has a ReferenceField with \`undefined\` \`data.sources\``);let a=Ri(i,t);return await Lr(t,a,o,n,s)}async function Yr({page:e,cacheKey:t=""}){try{let{template:r}=e,o=async(s,a=1)=>{if(!(!s||typeof s!="object"||!(JSON.stringify(s).includes('"hasDistributorData":true')||JSON.stringify(s).includes('"getStaticData":true'))))for(let p in s){if(p==="queriedItems")continue;let l=s[p];if(!l||typeof l!="object")continue;(l.hasDistributorData||l.getStaticData)&&(l.queriedItems=await Si({page:e,cacheKey:t,component:l})),await o(l,a+1)}};return await(async s=>(await o([s]),s))(r)}catch(r){throw c.error("Error in getReferenceFieldData:",r),r}}var bi=Date.now().toString();function Pi(){return!1}function Xr(e,t){let r=Math.max(...t.map(n=>n.name.length+(n.shouldBeUpdated?1:0)+n.id.toString().length)),o=t.map(n=>{let s=n.shouldBeUpdated?"*":"",a=n.name.length+s.length+n.id.toString().length,d=" ".repeat(r-a);return`${w.bold(n.name)} ${w.dim(`(${n.id})`)} ${s} ${d}${w.dim("-")} ${w.dim(n.slug)}`}),i=o.length>0?`
|
|
42
42
|
|
|
43
43
|
${o.join(`
|
|
44
44
|
`)}`:w.dim(`--none--
|
|
45
45
|
`);c.log(`
|
|
46
|
-
${e} ${i}`)}async function Qr(e){console.info(`API calls with ${
|
|
46
|
+
${e} ${i}`)}async function Qr(e){console.info(`API calls with ${Ue} threads`),console.info(`API URL ${He}`);let{renderMode:t,domain:r,griddoVersion:o,basePath:i}=e,n=t===E.FROM_SCRATCH,s=De.default.join(i,"store"),a=[],d={},{sitesToPublish:p,sitesToUnpublish:f}=await Mr(r);Xr("Sites to publish:",p),Xr("Sites to unpublish:",f),await kr(f),await ur(p,r);let l=[];for(let m of f){let{pagesStatus:u}=m;l.push(...u.active,...u.offlinePending,...u.uploadPending,...u.deleted,...u.offline)}for(let m of p){let{id:u,slug:g,theme:_,favicon:j,pagesStatus:I}=m,O=u.toString();l.push(...I.offlinePending,...I.deleted);let{siteInfo:B,siteHash:G,unpublishHashes:le,siteLangs:Q,defaultLang:T,headers:U,footers:q,socials:V}=await Hr(u),{cloudinaryName:oe,useMetaTitle:Ne,useMetaKeywords:lt,showBasicMetaRobots:Be,avoidHrefLangsOnCanonicals:Fo,avoidSelfReferenceCanonicals:Oo,avoidHrefLangXDefault:Co,avoidDebugMetas:Lo}=await L({endpoint:Zt});d[u]={siteHash:G,unpublishHashes:le,publishHashes:[],publishPagesIds:[]};let pt=new Fe;pt.navigations={headers:U,footers:q},m.languages=Q;let jo=await _i(u,G),Go=B.siteScript,No={siteUrl:B.slug,title:B.name,favicon:j},Bo={baseUrl:He,publicBaseUrl:_t,instance:$t,siteSlug:g,theme:_,siteMetadata:No,socials:V,siteLangs:Q,cloudinaryName:oe,griddoVersion:o,siteOptions:{useMetaTitle:Ne,useMetaKeywords:lt,showBasicMetaRobots:Be,avoidHrefLangsOnCanonicals:Fo,avoidSelfReferenceCanonicals:Oo,avoidHrefLangXDefault:Co,avoidDebugMetas:Lo},siteScript:Go};c.info(`Getting pages from ${m.name} site`),await Oe.default.mkdir(De.default.join(s,O),{recursive:!0});let Mo=async(Me,ft)=>{let be=[],$=await Fr(ft,jo);if(!$)return;a.push(ft);let Pe=JSON.parse(JSON.stringify(Bo));Pe.navigations=pt.getPageNavigations($);let ie=await Yr({page:$,cacheKey:bi}),ut=await Kr(ie),ke=$?.mode==="list"||$?.mode==="paginated-data",gt=!ke&&ut,Wo=!gt&&!ke;if(ke){let M={page:$,pages:zr(ie),isRoot:!1,defaultLang:T,template:ie,totalQueriedItems:ie.queriedItems};be=await qr(M,Pe),l.push($.id)}if(gt){let M=$;M.template=ie,M.multiPageElements=ut,M.defaultLang=T,be=await Vr(M,Pe),l.push($.id)}if(Wo){let M=$;M.template=ie,M.defaultLang=T,be=[await Jr(M,Pe)]}$.hash!==null&&(d[u].publishHashes.push($.hash),d[u].publishPagesIds.push($.id)),await fr(Me,be)},mt=I.uploadPending,ko=Pi();(n||ko)&&mt.push(...I.active);let Ho=we(Ue),Uo=mt.map(Me=>Ho(()=>Mo(O,Me)));await Promise.all(Uo)}return await mr({buildProcessData:d,createdPages:a,sitesToPublish:p},r),{pagesToCreate:a,pagesToDelete:l}}async function Ei(){let{__root:e}=await D(),r=`${De.default.join(e,"apiCache")}/siteHash.json`;try{let o=await Oe.default.readFile(r,"utf8");return JSON.parse(o)||{}}catch{return{}}}async function _i(e,t){let r=await Ei(),o=r[e],i=t||o||Date.now(),{__root:n}=await D(),a=`${De.default.join(n,"apiCache")}/siteHash.json`;return i!==o&&(r[e]=i,await Oe.default.writeFile(a,JSON.stringify(r),{encoding:"utf-8"})),i.toString()}async function Zr(e){let{domain:t,renderMode:r,renderMetadata:{griddoVersion:o},pathsHydratedWithDomain:{__root:i}}=e,{pagesToCreate:n,pagesToDelete:s}=await Qr({domain:t,renderMode:r,griddoVersion:o,basePath:i});e.pagesToCreate=n,e.pagesToDelete=s}async function eo(e){let{domain:t}=e;await wr(t),await yr(t)}async function to(e){let{domain:t,pathsHydratedWithDomain:{__root:r}}=e;await hr({basePath:r,domain:t})}async function ro(e){let{domain:t}=e;await pr(t)}var oo=h(require("node:fs/promises")),ct=h(require("node:path"));async function Ii(){return(await L({endpoint:Qt}))?.filter(t=>!!t.path).map(({path:t,content:r})=>({path:t,content:r||`User-agent: *
|
|
47
47
|
\r
|
|
48
|
-
\rAllow: /`}))||[]}async function io(e){let{__root:t}=await D({domain:e}),r=ct.default.join(t,"current-dist"),o=(await Ii()).find(({path:i})=>i===`/${e}`);if(!o){c.info(`Robots not found for ${e}`);return}if(await y(r)){let i=ct.default.join(r,"robots.txt");await oo.default.writeFile(i,o?.content),c.verbose(`wrote robots.txt to ${i}`)}else c.info(`${r} not found`)}var
|
|
48
|
+
\rAllow: /`}))||[]}async function io(e){let{__root:t}=await D({domain:e}),r=ct.default.join(t,"current-dist"),o=(await Ii()).find(({path:i})=>i===`/${e}`);if(!o){c.info(`Robots not found for ${e}`);return}if(await y(r)){let i=ct.default.join(r,"robots.txt");await oo.default.writeFile(i,o?.content),c.verbose(`wrote robots.txt to ${i}`)}else c.info(`${r} not found`)}var Re=h(require("node:fs/promises")),re=h(require("node:path"));function no(e){return e.replace(/[<>&'"”]/g,t=>{switch(t){case"<":return"<";case">":return">";case"&":return"&";case"'":return"'";case'"':return""";case"\u201D":return""";default:return t}})}function so(e){return`<?xml version="1.0" encoding="UTF-8"?>
|
|
49
49
|
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
|
|
50
50
|
${e.map(r=>` <url>
|
|
51
51
|
<loc>${no(r.loc)}</loc>
|
|
@@ -59,8 +59,8 @@ ${e.map(r=>` <sitemap>
|
|
|
59
59
|
<loc>${no(r)}</loc>
|
|
60
60
|
</sitemap>`).join(`
|
|
61
61
|
`)}
|
|
62
|
-
</sitemapindex>`}async function lo(e){let{__root:t}=await D(),{sitesToPublish:r}=await Ie(e),o=re.default.join(t,"current-dist"),i="sitemap-",n=s=>s==="sitemap.xml"||s.startsWith(i)&&s.endsWith(".xml");for(let s of r){let{id:a,languages:d}=s;for(let p of d){let f=J.headers?{...J.headers}:{};f.lang=p.id.toString();let l=await jr({siteId:a,headers:f});if(!l)continue;let{items:m,url:u}=l,{home:g,domain:_}=u;if(!g)continue;let j=s.domains.find(T=>Object.keys(T)[0]===p.id.toString());if(!j)continue;let I=Object.values(j)[0],O=[],B=Object.keys(m),G=re.default.join(o,I.replace(_,""));if(await y(G))try{let T=await De.default.readdir(G);for(let U of T)if(n(U)){let q=re.default.join(G,U);try{await De.default.rm(q)}catch(V){c.error(`Error deleting file ${q}:`,V)}}}catch(T){c.error(`Error reading ${G}:`,T)}for(let T of B){let U=m[T];if(!U.length)continue;let q=so(U),V=`/${i}${T.toLowerCase()}.xml`,oe=re.default.join(G,V);await co(oe,q),c.verbose(`sitemap generated in ${oe}`),O.push(`${g.endsWith("/")?g.slice(0,-1):g}${V}`)}if(!O.length)continue;let le=ao(O),Q=re.default.join(G,"sitemap.xml");await co(Q,le),c.verbose(`sitemap generated in ${Q}`)}}}async function co(e,t){try{let r=re.default.dirname(e);await y(r)||await De.default.mkdir(r,{recursive:!0}),await De.default.writeFile(e,t)}catch{throw new Error("Error saving a file")}}async function po(e){let{domain:t}=e;await Sr(t),await lo(t),await io(t)}async function mo(e){let{renderArtifacts:t}=e;await Nt(t.initials)}var fo=h(require("node:fs/promises")),dt=h(require("node:path"));async function uo(e){let{pathsHydratedWithDomain:{__root:t,__ssg:r}}=e,o=dt.default.join(r,"public"),i=dt.default.join(t,"current-dist");await fo.default.rename(o,i)}async function go(e){let{renderMode:t,ssg:{ssgArtifacts:r},renderArtifacts:o,pathsHydratedWithDomain:{__components:i,__root:n,__cache:s,__ssg:a}}=e;await Bt(i,a,["static"]),t===E.INCREMENTAL&&(await ee(s,a,r.cacheables),await ee(s,n,o.cacheables))}var ho=require("node:child_process"),yo=h(require("node:path"));async function wo(e){c.verbose(`read assetPrefixWithDomain, ${e}`),c.verbose(`using this NODE_OPTIONS in gatsby command: ${process.env.NODE_OPTIONS}`);let{__ssg:t}=await D(),r=process.env.NODE_OPTIONS?process.env.NODE_OPTIONS.replace(/--openssl-legacy-provider\s*/g,"").trim():"",o=yo.default.join(t,"node_modules",".bin","gatsby"),i=["build","--prefix-paths"];return Tt&&i.push("--verbose"),new Promise((n,s)=>{let a=(0,ho.spawn)(o,i,{cwd:t,stdio:["ignore","inherit","inherit"],env:{...process.env,SPAWN_ASSET_PREFIX_WITH_DOMAIN:e,NODE_OPTIONS:r}});a.on("close",d=>{d===0?n():s(new Error(`Gatsby build failed with exit code ${d}`))}),a.on("error",d=>{s(new Error(`Failed to start Gatsby build process: ${d.message}`))})})}async function Do(e){let{ssg:{assetPrefix:t}}=e;await wo(t)}var Ce=h(require("node:fs/promises")),Le=h(require("node:path"));var X=h(require("node:fs/promises")),P=h(require("node:path"));async function Ro(e){let{__root:t,__exports:r}=await D({domain:e}),o=(await X.default.readdir(P.default.join(r,"dist"))).filter(n=>P.default.extname(n)===".js"||P.default.extname(n)===".json"||P.default.extname(n)===".css");await X.default.mkdir(P.default.join(t,"assets"),{recursive:!0}),await X.default.cp(P.default.join(r,"dist","page-data"),P.default.join(t,"assets","page-data"),{preserveTimestamps:!0,recursive:!0}),await y(P.default.join(t,"static"))&&await X.default.cp(P.default.join(t,"static"),P.default.join(t,"assets"),{force:!1,preserveTimestamps:!0,recursive:!0}),await y(P.default.join(r,"dist","static"))&&await X.default.cp(P.default.join(r,"dist","static"),P.default.join(t,"assets","static"),{force:!1,preserveTimestamps:!0,recursive:!0}),await y(P.default.join(t,"static"))&&await X.default.cp(P.default.join(t,"static"),P.default.join(r,"dist",e),{preserveTimestamps:!0,recursive:!0,force:!1});let i=o.map(n=>{let s=P.default.join(r,"dist",n),a=P.default.join(t,"assets",n);return X.default.cp(s,a,{preserveTimestamps:!0,recursive:!0})});await Promise.all(i)}var N=h(require("node:fs/promises")),A=h(require("node:path"));var bo=require("node:crypto"),Re=h(require("node:fs/promises")),Po=require("node:path");var Ai=[/\.js$/];async function So(e){let t=new Map;try{let o=(await Re.default.readdir(e)).filter(i=>Ai.some(n=>n.test(i)));for(let i of o){let n=(0,Po.join)(e,i),s=await Re.default.readFile(n),a=(0,bo.createHash)("sha256").update(s).digest("hex");t.set(i,a)}return t}catch(r){return c.build(`ERROR: Error processing directory ${e}: ${r}`),t}}async function Eo(e,t){let[r,o]=await Promise.all([So(e),So(t)]);if(r.size!==o.size)return!0;for(let[i,n]of r.entries()){let s=o.get(i);if(!s||n!==s)return!0}return!1}async function _o(e,t){try{let r=await Re.default.readFile(e,"utf-8"),o=/(window\.___webpackCompilationHash=")([^"]*)(";<\/script>)/,i=r.replace(o,`$1${t}$3`);if(r===i)return;await Re.default.writeFile(e,i,"utf-8")}catch(r){c.error(`Failed to process file ${e}: ${r}`)}}var Oe=class{bundleDir;currentRenderDir;pagesToCreate;pagesToDelete;assetArtifacts;state={htmlToAdd:[],jsonToAdd:[],htmlToDelete:[],jsonToDelete:[]};constructor(t){this.bundleDir=t.dst,this.currentRenderDir=t.src,this.pagesToCreate=t.pagesToCreate,this.pagesToDelete=t.pagesToDelete,this.assetArtifacts=t.artifactsToCopyToExports}async execute(){await this.setPagesToDelete(),await this.setPagesToAdd(),await this.sync(),Ft&&await this.assertAssetsAreValid()}async assertAssetsAreValid(){await Eo(this.currentRenderDir,this.bundleDir)?c.info("Warning: JavaScript and CSS bundles must have the same files and content. You can ignore this warning if the rendering process only has pages to unpublish."):c.info("Previous and current JavaScript and CSS packages successfully matched")}async setPagesToDelete(){let t=new Set([...this.pagesToDelete,...this.pagesToCreate]),r=await this.scanPages(this.bundleDir);for(let o of r)t.has(o.id)&&(this.state.htmlToDelete.push(o.htmlPath),this.state.jsonToDelete.push(o.jsonPath));c.verbose(`${this.state.htmlToDelete.length} pages HTML to delete`),c.verbose(`${this.state.jsonToDelete.length} pages JSON to delete`)}async setPagesToAdd(){let t=new Set(this.pagesToCreate),r=await this.scanPages(this.currentRenderDir);for(let o of r)if(t.has(o.id)){let i=A.default.join(this.bundleDir,o.composePath,"index.html"),n=o.composePath==="/"?"index":o.composePath,s=A.default.join(this.bundleDir,"page-data",n,"page-data.json");this.state.htmlToAdd.push({from:o.htmlPath,to:i}),this.state.jsonToAdd.push({from:o.jsonPath,to:s})}c.verbose(`${this.state.htmlToAdd.length} pages HTML to create`),c.verbose(`${this.state.jsonToAdd.length} pages JSON to create`)}async sync(){let t=[...this.state.htmlToDelete,...this.state.jsonToDelete];for(let o of t)try{await N.default.rm(o,{force:!0}),c.verbose(`Sync (remove) : ${o}`)}catch(i){c.error(`Failed to remove ${o}:`,i)}await this.restoreWebpackCompilationHash();let r=[...this.state.htmlToAdd,...this.state.jsonToAdd];for(let o of r)try{await N.default.mkdir(A.default.dirname(o.to),{recursive:!0}),await N.default.copyFile(o.from,o.to),c.verbose(`Sync (copy) : ${o.from} -> ${o.to}`)}catch(i){c.error(`Failed to copy ${o.from} to ${o.to}:`,i)}await this.copyAssetArtifacts(),await this.copySitemaps()}async restoreWebpackCompilationHash(){let t=A.default.join(this.bundleDir,"page-data","app-data.json"),r=JSON.parse(await N.default.readFile(t,"utf8")).webpackCompilationHash;c.build(`Reading webpackCompilationHash from ${t} = ${r}`);let o=this.state.htmlToAdd.map(({from:i})=>i);for(let i of o)c.build(`Patching HTML file ${i} with the new webpackCompilationHash`),await _o(i,r)}async copyAssetArtifacts(){for(let t of this.assetArtifacts){let r=A.default.join(this.currentRenderDir,t),o=A.default.join(this.bundleDir,t);try{await N.default.mkdir(A.default.dirname(o),{recursive:!0}),await N.default.copyFile(r,o),c.verbose(`Copied artifact: ${t}`)}catch(i){c.error(`Failed to copy artifact ${r} to ${o}:`,i)}}}async copySitemaps(){let t=A.default.resolve(this.currentRenderDir),r=A.default.resolve(this.bundleDir),o=pe(r,".xml");for await(let n of o){let s=A.default.basename(n);(s.startsWith("sitemap-")||s==="sitemap.xml")&&await N.default.rm(n,{force:!0})}let i=pe(t,".xml");for await(let n of i){let s=A.default.relative(t,n),a=A.default.join(r,s);try{await N.default.mkdir(A.default.dirname(a),{recursive:!0}),await N.default.copyFile(n,a)}catch(d){c.error(`Failed to copy sitemap ${n} to ${a}:`,d)}}c.verbose("Copied sitemap files.")}async scanPages(t){let r=ye(32),o=pe(A.default.join(t,"page-data"),"page-data.json"),i=[];for await(let s of o)i.push(r(async()=>{try{let a=await N.default.readFile(s,"utf-8"),d=JSON.parse(a),p=d.result.pageContext.id,f=d.result.pageContext.fullPath.compose;return{id:p,composePath:f,htmlPath:A.default.join(t,f,"index.html"),jsonPath:s}}catch(a){return c.error(`Error reading or parsing page data from ${s}:`,a),null}}));return(await Promise.all(i)).filter(s=>s!==null)}};async function Io(e){let{renderMode:t,renderArtifacts:r,domain:o,pagesToCreate:i,pagesToDelete:n,pathsHydratedWithDomain:{__root:s,__ssg:a,__cache:d,__exports:p},ssg:{ssgArtifacts:f,assetPrefix:l}}=e,m=!!l&&l!=="",u=Le.default.join(s,"current-dist"),g=Le.default.join(p,"dist");await ee(s,d,r.cacheables,{override:!0}),await ee(a,d,f.cacheables,{override:!0}),t===E.FROM_SCRATCH&&(await Je(u),await Ce.default.rm(g,{force:!0,recursive:!0}),await Ce.default.rename(u,g)),t===E.INCREMENTAL&&(await Je(g),await new Oe({src:u,dst:g,pagesToCreate:i,pagesToDelete:n,artifactsToCopyToExports:["build-report.json"]}).execute(),await Ce.default.rm(u,{force:!0,recursive:!0}),await qe(Le.default.join(p,"dist"))),m&&await Ro(o),await ee(s,p,r.archivables,{override:!0})}var je=h(require("node:path"));async function Ao(){let{ssg:e}=(await R()).paths;return{disposables:[je.default.join(e,"public"),je.default.join(e,"static"),je.default.join(e,".cache")],cacheables:[".cache"]}}async function xo(){let e=await R();e.needsRollbackOnError=!0,await C(e),c.info(`Render lifecycles that follow will restore the exports dir on error if needed
|
|
62
|
+
</sitemapindex>`}async function lo(e){let{__root:t}=await D(),{sitesToPublish:r}=await Ae(e),o=re.default.join(t,"current-dist"),i="sitemap-",n=s=>s==="sitemap.xml"||s.startsWith(i)&&s.endsWith(".xml");for(let s of r){let{id:a,languages:d}=s;for(let p of d){let f=J.headers?{...J.headers}:{};f.lang=p.id.toString();let l=await jr({siteId:a,headers:f});if(!l)continue;let{items:m,url:u}=l,{home:g,domain:_}=u;if(!g)continue;let j=s.domains.find(T=>Object.keys(T)[0]===p.id.toString());if(!j)continue;let I=Object.values(j)[0],O=[],B=Object.keys(m),G=re.default.join(o,I.replace(_,""));if(await y(G))try{let T=await Re.default.readdir(G);for(let U of T)if(n(U)){let q=re.default.join(G,U);try{await Re.default.rm(q)}catch(V){c.error(`Error deleting file ${q}:`,V)}}}catch(T){c.error(`Error reading ${G}:`,T)}for(let T of B){let U=m[T];if(!U.length)continue;let q=so(U),V=`/${i}${T.toLowerCase()}.xml`,oe=re.default.join(G,V);await co(oe,q),c.verbose(`sitemap generated in ${oe}`),O.push(`${g.endsWith("/")?g.slice(0,-1):g}${V}`)}if(!O.length)continue;let le=ao(O),Q=re.default.join(G,"sitemap.xml");await co(Q,le),c.verbose(`sitemap generated in ${Q}`)}}}async function co(e,t){try{let r=re.default.dirname(e);await y(r)||await Re.default.mkdir(r,{recursive:!0}),await Re.default.writeFile(e,t)}catch{throw new Error("Error saving a file")}}async function po(e){let{domain:t}=e;await Sr(t),await lo(t),await io(t)}async function mo(e){let{renderArtifacts:t}=e;await Nt(t.initials)}var fo=h(require("node:fs/promises")),dt=h(require("node:path"));async function uo(e){let{pathsHydratedWithDomain:{__root:t,__ssg:r}}=e,o=dt.default.join(r,"public"),i=dt.default.join(t,"current-dist");await fo.default.rename(o,i)}async function go(e){let{renderMode:t,ssg:{ssgArtifacts:r},renderArtifacts:o,pathsHydratedWithDomain:{__components:i,__root:n,__cache:s,__ssg:a}}=e;await Bt(i,a,["static"]),t===E.INCREMENTAL&&(await ee(s,a,r.cacheables),await ee(s,n,o.cacheables))}var ho=require("node:child_process"),yo=h(require("node:path"));async function wo(e){c.verbose(`read assetPrefixWithDomain, ${e}`),c.verbose(`using this NODE_OPTIONS in gatsby command: ${process.env.NODE_OPTIONS}`);let{__ssg:t}=await D(),r=process.env.NODE_OPTIONS?process.env.NODE_OPTIONS.replace(/--openssl-legacy-provider\s*/g,"").trim():"",o=yo.default.join(t,"node_modules",".bin","gatsby"),i=["build","--prefix-paths"];return Tt&&i.push("--verbose"),new Promise((n,s)=>{let a=(0,ho.spawn)(o,i,{cwd:t,stdio:["ignore","inherit","inherit"],env:{...process.env,SPAWN_ASSET_PREFIX_WITH_DOMAIN:e,NODE_OPTIONS:r}});a.on("close",d=>{d===0?n():s(new Error(`Gatsby build failed with exit code ${d}`))}),a.on("error",d=>{s(new Error(`Failed to start Gatsby build process: ${d.message}`))})})}async function Do(e){let{ssg:{assetPrefix:t}}=e;await wo(t)}var Le=h(require("node:fs/promises")),je=h(require("node:path"));var X=h(require("node:fs/promises")),P=h(require("node:path"));async function Ro(e){let{__root:t,__exports:r}=await D({domain:e}),o=(await X.default.readdir(P.default.join(r,"dist"))).filter(n=>P.default.extname(n)===".js"||P.default.extname(n)===".json"||P.default.extname(n)===".css");await X.default.mkdir(P.default.join(t,"assets"),{recursive:!0}),await X.default.cp(P.default.join(r,"dist","page-data"),P.default.join(t,"assets","page-data"),{preserveTimestamps:!0,recursive:!0}),await y(P.default.join(t,"static"))&&await X.default.cp(P.default.join(t,"static"),P.default.join(t,"assets"),{force:!1,preserveTimestamps:!0,recursive:!0}),await y(P.default.join(r,"dist","static"))&&await X.default.cp(P.default.join(r,"dist","static"),P.default.join(t,"assets","static"),{force:!1,preserveTimestamps:!0,recursive:!0}),await y(P.default.join(t,"static"))&&await X.default.cp(P.default.join(t,"static"),P.default.join(r,"dist",e),{preserveTimestamps:!0,recursive:!0,force:!1});let i=o.map(n=>{let s=P.default.join(r,"dist",n),a=P.default.join(t,"assets",n);return X.default.cp(s,a,{preserveTimestamps:!0,recursive:!0})});await Promise.all(i)}var N=h(require("node:fs/promises")),A=h(require("node:path"));var bo=require("node:crypto"),Se=h(require("node:fs/promises")),Po=require("node:path");var Ai=[/\.js$/];async function So(e){let t=new Map;try{let o=(await Se.default.readdir(e)).filter(i=>Ai.some(n=>n.test(i)));for(let i of o){let n=(0,Po.join)(e,i),s=await Se.default.readFile(n),a=(0,bo.createHash)("sha256").update(s).digest("hex");t.set(i,a)}return t}catch(r){return c.build(`ERROR: Error processing directory ${e}: ${r}`),t}}async function Eo(e,t){let[r,o]=await Promise.all([So(e),So(t)]);if(r.size!==o.size)return!0;for(let[i,n]of r.entries()){let s=o.get(i);if(!s||n!==s)return!0}return!1}async function _o(e,t){try{let r=await Se.default.readFile(e,"utf-8"),o=/(window\.___webpackCompilationHash=")([^"]*)(";<\/script>)/,i=r.replace(o,`$1${t}$3`);if(r===i)return;await Se.default.writeFile(e,i,"utf-8")}catch(r){c.error(`Failed to process file ${e}: ${r}`)}}var Ce=class{bundleDir;currentRenderDir;pagesToCreate;pagesToDelete;assetArtifacts;state={htmlToAdd:[],jsonToAdd:[],htmlToDelete:[],jsonToDelete:[]};constructor(t){this.bundleDir=t.dst,this.currentRenderDir=t.src,this.pagesToCreate=t.pagesToCreate,this.pagesToDelete=t.pagesToDelete,this.assetArtifacts=t.artifactsToCopyToExports}async execute(){await this.setPagesToDelete(),await this.setPagesToAdd(),await this.sync(),Ft&&await this.assertAssetsAreValid()}async assertAssetsAreValid(){await Eo(this.currentRenderDir,this.bundleDir)?c.info("Warning: JavaScript and CSS bundles must have the same files and content. You can ignore this warning if the rendering process only has pages to unpublish."):c.info("Previous and current JavaScript and CSS packages successfully matched")}async setPagesToDelete(){let t=new Set([...this.pagesToDelete,...this.pagesToCreate]),r=await this.scanPages(this.bundleDir);for(let o of r)t.has(o.id)&&(this.state.htmlToDelete.push(o.htmlPath),this.state.jsonToDelete.push(o.jsonPath));c.verbose(`${this.state.htmlToDelete.length} pages HTML to delete`),c.verbose(`${this.state.jsonToDelete.length} pages JSON to delete`)}async setPagesToAdd(){let t=new Set(this.pagesToCreate),r=await this.scanPages(this.currentRenderDir);for(let o of r)if(t.has(o.id)){let i=A.default.join(this.bundleDir,o.composePath,"index.html"),n=o.composePath==="/"?"index":o.composePath,s=A.default.join(this.bundleDir,"page-data",n,"page-data.json");this.state.htmlToAdd.push({from:o.htmlPath,to:i}),this.state.jsonToAdd.push({from:o.jsonPath,to:s})}c.verbose(`${this.state.htmlToAdd.length} pages HTML to create`),c.verbose(`${this.state.jsonToAdd.length} pages JSON to create`)}async sync(){let t=[...this.state.htmlToDelete,...this.state.jsonToDelete];for(let o of t)try{await N.default.rm(o,{force:!0}),c.verbose(`Sync (remove) : ${o}`)}catch(i){c.error(`Failed to remove ${o}:`,i)}await this.restoreWebpackCompilationHash();let r=[...this.state.htmlToAdd,...this.state.jsonToAdd];for(let o of r)try{await N.default.mkdir(A.default.dirname(o.to),{recursive:!0}),await N.default.copyFile(o.from,o.to),c.verbose(`Sync (copy) : ${o.from} -> ${o.to}`)}catch(i){c.error(`Failed to copy ${o.from} to ${o.to}:`,i)}await this.copyAssetArtifacts(),await this.copySitemaps()}async restoreWebpackCompilationHash(){let t=A.default.join(this.bundleDir,"page-data","app-data.json"),r=JSON.parse(await N.default.readFile(t,"utf8")).webpackCompilationHash;c.build(`Reading webpackCompilationHash from ${t} = ${r}`);let o=this.state.htmlToAdd.map(({from:i})=>i);for(let i of o)ge(`Patching HTML file ${i} with the new webpackCompilationHash`),await _o(i,r)}async copyAssetArtifacts(){for(let t of this.assetArtifacts){let r=A.default.join(this.currentRenderDir,t),o=A.default.join(this.bundleDir,t);try{await N.default.mkdir(A.default.dirname(o),{recursive:!0}),await N.default.copyFile(r,o),c.verbose(`Copied artifact: ${t}`)}catch(i){c.error(`Failed to copy artifact ${r} to ${o}:`,i)}}}async copySitemaps(){let t=A.default.resolve(this.currentRenderDir),r=A.default.resolve(this.bundleDir),o=pe(r,".xml");for await(let n of o){let s=A.default.basename(n);(s.startsWith("sitemap-")||s==="sitemap.xml")&&await N.default.rm(n,{force:!0})}let i=pe(t,".xml");for await(let n of i){let s=A.default.relative(t,n),a=A.default.join(r,s);try{await N.default.mkdir(A.default.dirname(a),{recursive:!0}),await N.default.copyFile(n,a)}catch(d){c.error(`Failed to copy sitemap ${n} to ${a}:`,d)}}c.verbose("Copied sitemap files.")}async scanPages(t){let r=we(32),o=pe(A.default.join(t,"page-data"),"page-data.json"),i=[];for await(let s of o)i.push(r(async()=>{try{let a=await N.default.readFile(s,"utf-8"),d=JSON.parse(a),p=d.result.pageContext.id,f=d.result.pageContext.fullPath.compose;return{id:p,composePath:f,htmlPath:A.default.join(t,f,"index.html"),jsonPath:s}}catch(a){return c.error(`Error reading or parsing page data from ${s}:`,a),null}}));return(await Promise.all(i)).filter(s=>s!==null)}};async function Io(e){let{renderMode:t,renderArtifacts:r,domain:o,pagesToCreate:i,pagesToDelete:n,pathsHydratedWithDomain:{__root:s,__ssg:a,__cache:d,__exports:p},ssg:{ssgArtifacts:f,assetPrefix:l}}=e,m=!!l&&l!=="",u=je.default.join(s,"current-dist"),g=je.default.join(p,"dist");await ee(s,d,r.cacheables,{override:!0}),await ee(a,d,f.cacheables,{override:!0}),t===E.FROM_SCRATCH&&(await qe(u),await Le.default.rm(g,{force:!0,recursive:!0}),await Le.default.rename(u,g)),t===E.INCREMENTAL&&(await qe(g),await new Ce({src:u,dst:g,pagesToCreate:i,pagesToDelete:n,artifactsToCopyToExports:["build-report.json"]}).execute(),await Le.default.rm(u,{force:!0,recursive:!0}),await Ve(je.default.join(p,"dist"))),m&&await Ro(o),await ee(s,p,r.archivables,{override:!0})}var Ge=h(require("node:path"));async function Ao(){let{ssg:e}=(await R()).paths;return{disposables:[Ge.default.join(e,"public"),Ge.default.join(e,"static"),Ge.default.join(e,".cache")],cacheables:[".cache"]}}async function xo(){let e=await R();e.needsRollbackOnError=!0,await C(e),c.info(`Render lifecycles that follow will restore the exports dir on error if needed
|
|
63
63
|
`)}async function To(){let e=await R();e.needsRollbackOnError=!1,await C(e),c.info(`Render lifecycles that follow will not restore the exports dir on error
|
|
64
|
-
`)}async function vo(e){await dr();let{renderMode:t,reason:r}=await Rr(e),o=await Qe(),i=await D({domain:e}),{__ssg:n}=i,s=await br(e),a=await Ao(),d=
|
|
65
|
-
`);let g=new
|
|
64
|
+
`)}async function vo(e){await dr();let{renderMode:t,reason:r}=await Rr(e),o=await Qe(),i=await D({domain:e}),{__ssg:n}=i,s=await br(e),a=await Ao(),d=We?`${We}/${e}`:"",p=await y($o.default.join(n,`.render-sentinel-${e}`)),f=p?E.FROM_SCRATCH:t,l=p?"previous render error":r,m=await R();if(m.domains[e].renderMode=f,m.domains[e].renderModeReason=l,m.domains[e].isRendering=!1,t===E.IDLE&&f===E.IDLE){c.info(`(From Current Render) [${e}]: Skipping start-render as it is marked as IDLE with the reason ${r}.`);return}m.domains[e].isRendering=!0,m.currentRenderingDomain=e,await C(m);let u=l?` <${l}>`:"";c.info(`Init render (${f})${u} for domain ${e}
|
|
65
|
+
`);let g=new xe({domain:e,pathsHydratedWithDomain:i,renderArtifacts:s,renderMetadata:o,renderMode:f,ssg:{assetPrefix:d,ssgArtifacts:a}});await v("Init",async()=>to(g)),await v("Clean",async()=>Pr(g)),await v("Prepare",async()=>mo(g)),await v("Restore",async()=>go(g)),await xo(),await v("Data",async()=>Zr(g)),await v("SSG",async()=>Do(g)),await v("Relocation",async()=>uo(g)),await v("Meta",async()=>po(g)),await v("Sync",async()=>Io(g)),await v("HealthCheck",async()=>eo(g)),await v("Logs",async()=>ro(g),{skip:ne?!1:"Build logs to file are disabled"}),await v("Close",async()=>Er(g)),await To()}async function xi(){await J.login();let[e]=process.argv.slice(2);await vo(e)}async function Ti(){await Kt(),await xi()}Jt(Ti);
|
|
66
66
|
//# sourceMappingURL=start-render.js.map
|