@griddo/cx 11.10.4-rc.3 → 11.10.4
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/end-render.js +12 -12
- package/build/commands/end-render.js.map +4 -4
- package/build/commands/prepare-assets-directory.js +3 -3
- package/build/commands/prepare-assets-directory.js.map +4 -4
- package/build/commands/prepare-domains-render.js +9 -9
- package/build/commands/prepare-domains-render.js.map +4 -4
- package/build/commands/reset-render.js +10 -10
- package/build/commands/reset-render.js.map +4 -4
- package/build/commands/start-render.js +19 -19
- package/build/commands/start-render.js.map +4 -4
- package/build/commands/upload-search-content.js +7 -7
- package/build/commands/upload-search-content.js.map +4 -4
- package/build/index.js +1 -110
- package/build/react/GriddoIntegrations/utils.d.ts +1 -2
- package/build/react/index.js +3 -1
- package/build/shared/endpoints.d.ts +2 -1
- package/exporter/react/GriddoIntegrations/index.tsx +9 -11
- package/exporter/react/GriddoIntegrations/utils.ts +0 -17
- package/exporter/services/api.ts +1 -5
- package/exporter/services/auth.ts +1 -5
- package/exporter/shared/endpoints.ts +2 -0
- package/package.json +4 -3
- package/build/shared/headers.d.ts +0 -5
- package/exporter/shared/headers.ts +0 -7
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
"use strict";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 We=h(require("node:fs/promises")),Pe=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 ke=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,He=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),Ue=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:Pe.default.resolve(__dirname,"../../..")})||"",Zo=Pe.default.join(Qo,".griddo/cache"),Ot=Pe.default.join(Zo,"db.json");async function R(e=""){let t=e||Ot;try{return JSON.parse(await We.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 We.default.writeFile(r,JSON.stringify(e,null," "))}catch(o){throw c.error(`Failed to write DB file at ${r}:`,o),o}}var Ve=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.`},
|
|
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 Je(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 qe(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 qe(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 Ve.default.rm(z.default.join(r,e),{recursive:!0,force:!0}),await y(z.default.join(o,e))?(await Ve.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}
|
|
9
9
|
${a}
|
|
10
10
|
|
|
11
11
|
${w.red("stack")}
|
|
12
|
-
${JSON.stringify(t,null,2)}`),new ce(t)}async function
|
|
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,
|
|
16
|
-
`);return}let n=0;for(;n<o;)try{c.info(`start ${e} life-cycle`);let s=await
|
|
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 Ke=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 Ke;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
|
+
`);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&&
|
|
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=[],Ee=null,me=null,oi=xt,Ye="render-detail-log.txt",ar=!ne,ze=null;async function cr(){return ze||(ze=await R()),ze}async function dr(){if(ar)return;let e=await cr();Ee=fe.default.join(e.paths.root,Ye),await ue.default.rm(Ee,{force:!0})}function Xe(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||!Ee)return;me=(async()=>{let t=[...de];de.length=0;try{await ue.default.appendFile(Ee,`${t.join(`
|
|
20
20
|
`)}
|
|
21
|
-
`)}catch(r){de.unshift(...t),c.error("Error flushing logs:",r)}})();try{await me}finally{me=null}}async function
|
|
22
|
-
Max attempts ${
|
|
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,Ye),n=fe.default.join(o,`${r}-${Ye}`);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"),ge=h(require("node:fs/promises")),H=h(require("node:path"));var _e=h(require("node:fs/promises")),Y=h(require("node:path"));async function Ie(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 _e.default.readdir(o),n=e.map(({id:a})=>`${a}`),s=i.filter(a=>!n.includes(a));for(let a of s)await _e.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 _e.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 ge.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 ge.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 ge.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 Ie(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 ge.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 Ae=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 xe=h(require("node:fs/promises")),Te=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 xe.default.rm(Te.default.join(o,".cache"),{recursive:!0,force:!0}),await xe.default.rm(Te.default.join(i,"dist"),{recursive:!0,force:!0}),await xe.default.rm(Te.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 Fe=h(require("node:fs/promises")),we=h(require("node:path"));var Ze=class{value;next;constructor(t){this.value=t}},he=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 ye(e){_r(e);let t=new he,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")),$e=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());Xe(`${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());Xe(`${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
|
+
Max attempts ${Ir} reached
|
|
23
23
|
--------------------------------------
|
|
24
24
|
- ${t.toUpperCase()} ${o}
|
|
25
25
|
- BODY: ${JSON.stringify(i)}
|
|
26
26
|
- HEADERS: ${JSON.stringify(a)}
|
|
27
27
|
- ERROR: ${m.message}
|
|
28
28
|
--------------------------------------
|
|
29
|
-
`),new ce(m);return
|
|
29
|
+
`),new ce(m);return di(m,{callInfo:{endpoint:o,body:i}}),c.warn(`Waiting for retry: ${t}`,o),await li(parseInt(ci)*1e3),tt({endpoint:o,body:i,headers:a,cacheKey:n,attempt:s+1},t,r)}}async function L(e){return tt(e,"get")}async function rt(e){let{endpoint:t,body:r,headers:o}=e,i=t.endsWith("/distributor")&&`# ReferenceField body: ${JSON.stringify(r)} lang: ${JSON.stringify(o?.lang)}`;return tt(e,"post",i||"")}function di(e,t){let{message:r,stack:o}=e,{callInfo:i}=t,n=[];for(let d of Object.keys(i))n.push(`${d}: ${typeof i[d]=="object"?JSON.stringify(i[d]):i[d]}`);let s=n.join(`
|
|
30
30
|
`),a=`${r}
|
|
31
31
|
${o}`;c.warn(w.red(`
|
|
32
32
|
=============
|
|
@@ -38,29 +38,29 @@ ${s}
|
|
|
38
38
|
${a}
|
|
39
39
|
|
|
40
40
|
=============
|
|
41
|
-
`))}function
|
|
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 $e.default.mkdir(i,{recursive:!0}),await $e.default.writeFile(o,r,"utf8")}async function mi(e){try{let t=await $r(e),r=await $e.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 ve=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:Ne})=>Ne===e?.language)?.locale.replace(/_/g,"-"),q=yi(e),V=hi({socialDescription:a,socialImage:d,socialTitle:p}),oe=i.compose,Ge=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:Ge,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
|
|
46
|
+
${e} ${i}`)}async function Qr(e){console.info(`API calls with ${He} threads`),console.info(`API URL ${ke}`);let{renderMode:t,domain:r,griddoVersion:o,basePath:i}=e,n=t===E.FROM_SCRATCH,s=we.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:Ge,useMetaKeywords:lt,showBasicMetaRobots:Ne,avoidHrefLangsOnCanonicals:Fo,avoidSelfReferenceCanonicals:Oo,avoidHrefLangXDefault:Co,avoidDebugMetas:Lo}=await L({endpoint:Zt});d[u]={siteHash:G,unpublishHashes:le,publishHashes:[],publishPagesIds:[]};let pt=new ve;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:ke,publicBaseUrl:_t,instance:$t,siteSlug:g,theme:_,siteMetadata:No,socials:V,siteLangs:Q,cloudinaryName:oe,griddoVersion:o,siteOptions:{useMetaTitle:Ge,useMetaKeywords:lt,showBasicMetaRobots:Ne,avoidHrefLangsOnCanonicals:Fo,avoidSelfReferenceCanonicals:Oo,avoidHrefLangXDefault:Co,avoidDebugMetas:Lo},siteScript:Go};c.info(`Getting pages from ${m.name} site`),await Fe.default.mkdir(we.default.join(s,O),{recursive:!0});let Mo=async(Be,ft)=>{let Se=[],$=await Fr(ft,jo);if(!$)return;a.push(ft);let be=JSON.parse(JSON.stringify(Bo));be.navigations=pt.getPageNavigations($);let ie=await Yr({page:$,cacheKey:bi}),ut=await Kr(ie),Me=$?.mode==="list"||$?.mode==="paginated-data",gt=!Me&&ut,Wo=!gt&&!Me;if(Me){let M={page:$,pages:zr(ie),isRoot:!1,defaultLang:T,template:ie,totalQueriedItems:ie.queriedItems};Se=await qr(M,be),l.push($.id)}if(gt){let M=$;M.template=ie,M.multiPageElements=ut,M.defaultLang=T,Se=await Vr(M,be),l.push($.id)}if(Wo){let M=$;M.template=ie,M.defaultLang=T,Se=[await Jr(M,be)]}$.hash!==null&&(d[u].publishHashes.push($.hash),d[u].publishPagesIds.push($.id)),await fr(Be,Se)},mt=I.uploadPending,ko=Pi();(n||ko)&&mt.push(...I.active);let Ho=ye(He),Uo=mt.map(Be=>Ho(()=>Mo(O,Be)));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=`${we.default.join(e,"apiCache")}/siteHash.json`;try{let o=await Fe.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=`${we.default.join(n,"apiCache")}/siteHash.json`;return i!==o&&(r[e]=i,await Fe.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
|
|
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 De=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
|
-
<loc>${
|
|
51
|
+
<loc>${no(r.loc)}</loc>
|
|
52
52
|
<lastmod>${r.lastmod}</lastmod>
|
|
53
53
|
<priority>${r.priority}</priority>
|
|
54
54
|
</url>`).join(`
|
|
55
55
|
`)}
|
|
56
|
-
</urlset>`}function
|
|
56
|
+
</urlset>`}function ao(e){return`<?xml version="1.0" encoding="UTF-8"?>
|
|
57
57
|
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
|
58
58
|
${e.map(r=>` <sitemap>
|
|
59
|
-
<loc>${
|
|
59
|
+
<loc>${no(r)}</loc>
|
|
60
60
|
</sitemap>`).join(`
|
|
61
61
|
`)}
|
|
62
|
-
</sitemapindex>`}async function mo(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 Nr({siteId:a,headers:f});if(!l)continue;let{items:m,url:u}=l,{home:g,domain:_}=u;if(!g)continue;let L=s.domains.find(T=>Object.keys(T)[0]===p.id.toString());if(!L)continue;let x=Object.values(L)[0],O=[],B=Object.keys(m),G=re.default.join(o,x.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=co(U),V=`/${i}${T.toLowerCase()}.xml`,oe=re.default.join(G,V);await po(oe,q),c.verbose(`sitemap generated in ${oe}`),O.push(`${g.endsWith("/")?g.slice(0,-1):g}${V}`)}if(!O.length)continue;let le=lo(O),Q=re.default.join(G,"sitemap.xml");await po(Q,le),c.verbose(`sitemap generated in ${Q}`)}}}async function po(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 fo(e){let{domain:t}=e;await Pr(t),await mo(t),await so(t)}async function uo(e){let{renderArtifacts:t}=e;await Bt(t.initials)}var go=h(require("node:fs/promises")),lt=h(require("node:path"));async function ho(e){let{pathsHydratedWithDomain:{__root:t,__ssg:r}}=e,o=lt.default.join(r,"public"),i=lt.default.join(t,"current-dist");await go.default.rename(o,i)}async function yo(e){let{renderMode:t,ssg:{ssgArtifacts:r},renderArtifacts:o,pathsHydratedWithDomain:{__components:i,__root:n,__cache:s,__ssg:a}}=e;await Mt(i,a,["static"]),t===E.INCREMENTAL&&(await ee(s,a,r.cacheables),await ee(s,n,o.cacheables))}var wo=require("node:child_process"),Do=h(require("node:path"));async function bo(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=Do.default.join(t,"node_modules",".bin","gatsby"),i=["build","--prefix-paths"];return $t&&i.push("--verbose"),new Promise((n,s)=>{let a=(0,wo.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 Ro(e){let{ssg:{assetPrefix:t}}=e;await bo(t)}var je=h(require("node:fs/promises")),Le=h(require("node:path"));var X=h(require("node:fs/promises")),P=h(require("node:path"));async function So(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")),I=h(require("node:path"));var Eo=require("node:crypto"),be=h(require("node:fs/promises")),_o=require("node:path");var $i=[/\.js$/];async function Po(e){let t=new Map;try{let o=(await be.default.readdir(e)).filter(i=>$i.some(n=>n.test(i)));for(let i of o){let n=(0,_o.join)(e,i),s=await be.default.readFile(n),a=(0,Eo.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 xo(e,t){let[r,o]=await Promise.all([Po(e),Po(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 Io(e,t){try{let r=await be.default.readFile(e,"utf-8"),o=/(window\.___webpackCompilationHash=")([^"]*)(";<\/script>)/,i=r.replace(o,`$1${t}$3`);if(r===i)return;await be.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(),Ot&&await this.assertAssetsAreValid()}async assertAssetsAreValid(){await xo(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=I.default.join(this.bundleDir,o.composePath,"index.html"),n=o.composePath==="/"?"index":o.composePath,s=I.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(I.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=I.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 Io(i,r)}async copyAssetArtifacts(){for(let t of this.assetArtifacts){let r=I.default.join(this.currentRenderDir,t),o=I.default.join(this.bundleDir,t);try{await N.default.mkdir(I.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=I.default.resolve(this.currentRenderDir),r=I.default.resolve(this.bundleDir),o=pe(r,".xml");for await(let n of o){let s=I.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=I.default.relative(t,n),a=I.default.join(r,s);try{await N.default.mkdir(I.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(I.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:I.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 Ao(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 qe(u),await je.default.rm(g,{force:!0,recursive:!0}),await je.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 je.default.rm(u,{force:!0,recursive:!0}),await Ve(Le.default.join(p,"dist"))),m&&await So(o),await ee(s,p,r.archivables,{override:!0})}var Ge=h(require("node:path"));async function To(){let{ssg:e}=(await b()).paths;return{disposables:[Ge.default.join(e,"public"),Ge.default.join(e,"static"),Ge.default.join(e,".cache")],cacheables:[".cache"]}}async function $o(){let e=await b();e.needsRollbackOnError=!0,await C(e),c.info(`Render lifecycles that follow will restore the exports dir on error if needed
|
|
63
|
-
`)}async function
|
|
64
|
-
`)}async function
|
|
65
|
-
`);let g=new Ae({domain:e,pathsHydratedWithDomain:i,renderArtifacts:s,renderMetadata:o,renderMode:f,ssg:{assetPrefix:d,ssgArtifacts:a}});await v("Init",async()=>
|
|
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
|
|
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=Ue?`${Ue}/${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 Ae({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
|