@lightspeed/crane 3.0.0 → 3.1.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/CHANGELOG.md +16 -0
- package/UPGRADE.md +1 -1
- package/dist/cli.mjs +22 -22
- package/package.json +2 -2
- package/template/preview/shared/api-routes.ts +4 -4
- package/template/preview/shared/preview.ts +9 -4
- package/template/preview/shared/utils.ts +5 -0
- package/template/sections/example-section/settings/design.ts +8 -0
- package/template/sections/example-section/settings/layout.ts +3 -0
- package/template/sections/example-section/settings/translations.ts +13 -0
- package/template/sections/example-section/showcases/1.ts +3 -0
- package/template/sections/example-section/showcases/2.ts +3 -0
- package/template/sections/example-section/showcases/3.ts +3 -0
- package/template/sections/example-section/showcases/translations.ts +9 -0
package/dist/cli.mjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import*as
|
|
2
|
-
`)}function
|
|
1
|
+
import*as tn from"fs";import re,{existsSync as Ce,writeFileSync as ao,readFileSync as ta,createReadStream as na,statSync as Ft,promises as Un,mkdtempSync as ra,mkdirSync as oa,rmSync as co}from"fs";import*as nt from"path";import ue,{resolve as M,dirname as uo,relative as lo,basename as ia,sep as Fn,parse as po,join as dt}from"path";import sa from"cac";import{red as aa,yellow as ca,green as Ze,gray as ua}from"kolorist";import zt from"prompts";import fo from"adm-zip";import{glob as F,globSync as ho}from"glob";import Ve from"typescript";import{normalizePath as la,build as rt,defineConfig as nn,createServer as pa}from"vite";import{SectionTypeEnum as ve,BackgroundStyleEnum as zn,ButtonAppearanceEnum as da,ButtonSizeEnum as fa,ButtonShapeEnum as ha,OverlayTypeEnum as rn,DesignEditorType as Xe,PluginTypeEnum as Ue,ConfigTypeEnum as le}from"@lightspeed/crane-api";import{readFile as mo}from"fs/promises";import{pathToFileURL as ma,URL as Ea}from"url";import Gn,{AxiosError as Eo}from"axios";import*as ae from"process";import{ConcurrencyManager as ga}from"axios-concurrency";import{inc as _a}from"semver";import{JSONPath as ya}from"jsonpath-plus";import Sa from"tinycolor2";import Ta from"cli-progress";import{builtinModules as go}from"module";import{viteExternalsPlugin as _o}from"vite-plugin-externals";import Ra from"vite-plugin-compression";import wa from"@vitejs/plugin-vue";import Ca from"vite-tsconfig-paths";import va from"vite-plugin-checker";import{encode as Aa}from"@jridgewell/sourcemap-codec";import{promisify as yo}from"node:util";import So from"node:zlib";import fe from"node:fs";import Ne from"node:path";import Te from"node:process";import To from"util";import{fileURLToPath as Ia}from"node:url";import{WebSocketServer as Oa,WebSocket as ba}from"ws";import*as $a from"os";const La="3.0.0",se={[ve.SECTION]:{source:"sections",dist:"dist/sections"},[ve.HEADER]:{source:"headers",dist:"dist/headers"},[ve.FOOTER]:{source:"footers",dist:"dist/footers"}};var J=(e=>(e[e.Server=0]="Server",e[e.Client=1]="Client",e[e.ClientChunks=2]="ClientChunks",e[e.ClientAsset=3]="ClientAsset",e[e.Asset=4]="Asset",e[e.TemplateAsset=5]="TemplateAsset",e[e.Dependency=6]="Dependency",e[e.SourceCode=7]="SourceCode",e[e.LayoutClient=8]="LayoutClient",e[e.LayoutAsset=9]="LayoutAsset",e[e.SlotServer=10]="SlotServer",e[e.SlotClient=11]="SlotClient",e[e.SlotClientChunks=12]="SlotClientChunks",e[e.SlotClientAsset=13]="SlotClientAsset",e[e.CollectionAsset=14]="CollectionAsset",e))(J||{});const St={Server:0,Client:1,SectionSetting:2,SectionShowcase:3,SectionAsset:4,TemplateDescriptor:5,PageTemplateDescriptor:6,TemplateAsset:7,Layout:8,LayoutSettings:9,LayoutAsset:10,SlotServer:11,SlotClient:12,SharedTranslation:13},Hn="https://blockbuster.ecwid.com",Na="/api/v1/custom-apps/resources/sections/upload",Da="/api/v1/custom-apps/resources/templates/upload",ka="/api/v1/custom-apps/manifests/sections",xa="/api/v1/custom-apps/manifests/templates",Pa=5,Ma=3,Ua=[J.Server,J.Client,J.ClientChunks,J.ClientAsset,J.Asset],Fa=[J.LayoutClient,J.LayoutAsset],za=[J.SlotServer,J.SlotClient,J.SlotClientChunks,J.SlotClientAsset],Ga=[J.Dependency,J.TemplateAsset,J.SourceCode,J.CollectionAsset],Tt={DEFAULT:"Error while deploying:",ASSET_FILES_UPLOAD:"Error while uploading asset files:",MANIFEST_DEPLOYMENT:"Error while deploying manifest file:",DEPRECATED_VERSION_DEPLOYMENT:"You are using a non-supported version of crane. Please update to the latest crane version to continue.",INCORRECT_DISTRIBUTION_FOLDER:e=>`Distribution folder [${e}] is not found or has incorrect structure, please execute the build command first.`},Ro={catalog:"products",category:"category",product:"product"},Ha=e=>Ro[e],wo=e=>e in Ro,L={error:e=>console.log(aa(e)),warn:e=>console.log(ca(e)),info:e=>console.log(Ze(e))},ja="dist",Ba="dist/shared",Oe="dist/sections",Gt="dist/headers",Ht="dist/footers",Fe="dist/templates",Rt="layouts",Co="preview",Ae=`dist/${Rt}`,on="dist/collections",Za=[Oe,Gt,Ht,Fe,Ae];function sn(e){return!!e}function ft(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}const Va="Resource name can only contain alphanumeric characters, dashes, and underscores";function Wa(e){if(typeof e=="string"||typeof e=="number"){const t=/^[a-zA-Z0-9_-]+$/.test(e.toString());if(t)return{isValid:t,errorMessage:null}}return{isValid:!1,errorMessage:Va}}function Ka(e){return e===!0?!0:typeof e=="string"&&e.trim().length===0}function vo(e){return ue.parse(e).name}function Ya(e){return e.split("-").filter(Boolean).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ")}async function an(){const e=await mo(M(process.cwd(),"crane.config.json")),t=JSON.parse(e.toString());return{appClientId:t.app_client_id,appSecretKey:btoa(t.app_secret_key)}}function Xa(e){return e.includes(`
|
|
2
|
+
`)}function Qa(e,t,n){return e.split(`
|
|
3
3
|
`).map((r,o)=>o>=n?t+r:r).join(`
|
|
4
|
-
`)}function
|
|
4
|
+
`)}function ht(e,t){const n=[];if(e instanceof Eo){e.response?.status!==void 0&&n.push(` HTTP Status Code: ${e.response.status}`);const s=e.response?.data;if(s?.errorCode&&n.push(` Error Code: ${s.errorCode}`),s?.errorMessage){const i=Xa(s.errorMessage)?Qa(s.errorMessage," ",1):s.errorMessage;n.push(` Error Message: ${i}`)}}const r=n.length>0?n.join(`
|
|
5
5
|
`):e?.message??"Unknown error";if(!t||t.length===0)return r;const o=n.length>0?`
|
|
6
|
-
`:" ";return`${t}${o}${r}`}function Ha(e){return e.replace(/\\/g,"/")}function ja(e){return e.replace(/^dist\/layouts\//,"").replace(/^layouts\//,"")}function Rt(e){return ja(Ha(e))}function Ba(e){const t=Rt(e).split("/");if(t.length<2)throw new Error(`Invalid layout path: ${e}. Expected format: [dist/]layouts/{sectionId}/{layoutId}/[...path]`);const[n,r]=t;if(!_o(n))throw new Error(`Layout cannot be placed in a non-storefront section: ${n}`);const o=Na(n);return{id:r,sectionId:n,pageId:o}}const Za={catalog:"products",category:"category",product:"product"};async function Va(e){const t=Rt(e).split("/");if(t.length<2)throw new Error(`Invalid layout path: ${e}. Expected format: [dist/]layouts/{sectionId}/{layoutId}/[...path]`);const[n,r]=t;return{id:r,sectionId:n}}async function Ka(e){return Promise.all(e.map(async t=>{const n=t.sectionId,r=Za[n];return{id:t.id,sectionId:n,pageId:r}}))}async function Wa(){const e=`${Ae}/{product,catalog,category}/*`,t=await G(e,{ignore:["node_modules/**"]});return Promise.all(t.map(Va))}async function Ya(){const e=await Wa();return await Ka(e)}function Ct(e,t,...n){if(!e||!t)throw new Error(`Cannot build layout path. Invalid parameters - sectionId: "${e}", layoutId: "${t}"`);return`${Ae}/${e}/${t}/${n.join("/")}`}const Ht=(e=ve.SECTION)=>ae[e].dist,jt={[J.Server]:{type:"server_js_compressed",fileName:"server.js.gz",isSingleton:!0,toPath:({sectionId:e,sectionType:t})=>`${Ht(t)}/${e}/js/main/server/`},[J.Client]:{type:"client_js",fileName:"client.js",isSingleton:!1,toPath:({sectionId:e,sectionType:t})=>`${Ht(t)}/${e}/js/main/client/`},[J.ClientChunks]:{type:"client_js_chunks",isSingleton:!1,toPath:({sectionId:e,sectionType:t})=>`${Ht(t)}/${e}/js/main/client/chunks/`,fileName:"*"},[J.ClientAsset]:{type:"assets",fileName:"*",isSingleton:!1,toPath:({sectionId:e,sectionType:t})=>`${Ht(t)}/${e}/js/main/client/assets/`},[J.Asset]:{type:"assets",fileName:"*",isSingleton:!1,toPath:({sectionId:e,sectionType:t})=>`${Ht(t)}/${e}/assets/`},[J.TemplateAsset]:{type:"template_assets",fileName:"*",isSingleton:!1,toPath:()=>`${ze}/assets/`},[J.Dependency]:{type:"dependencies",fileName:"package.json",isSingleton:!0,toPath:()=>{}},[J.SourceCode]:{type:"source_code",fileName:"source-code.zip",isSingleton:!0,toPath:()=>{}},[J.LayoutClient]:{type:"layout_client_js",fileName:"index.mjs",isSingleton:!0,toPath:({sectionId:e,layoutId:t})=>Ct(e,t,"")},[J.LayoutAsset]:{type:"layout_assets",fileName:"*",isSingleton:!1,toPath:({sectionId:e,layoutId:t})=>Ct(e,t,"assets/")},[J.SlotServer]:{type:"slot_server_js",fileName:"server.js.gz",isSingleton:!0,toPath:({sectionId:e,layoutId:t,slotId:n})=>Ct(e,t,"slots",n,"js/main/server/")},[J.SlotClient]:{type:"slot_client_js",fileName:"client.js",isSingleton:!1,toPath:({sectionId:e,layoutId:t,slotId:n})=>Ct(e,t,"slots",n,"js/main/client/")},[J.SlotClientChunks]:{type:"slot_client_js_chunks",fileName:"*",isSingleton:!1,toPath:({sectionId:e,layoutId:t,slotId:n})=>Ct(e,t,"slots",n,"js/main/client/chunks/")},[J.SlotClientAsset]:{type:"slot_client_assets",fileName:"*",isSingleton:!1,toPath:({sectionId:e,layoutId:t,slotId:n})=>Ct(e,t,"slots",n,"js/main/client/assets/")},[J.CollectionAsset]:{type:"template_assets",fileName:"*",isSingleton:!1,toPath:()=>`${tn}/assets/`}};function Bt(e){const t={};for(const[n,r]of Object.entries(e)){let o={...r};if(r.type==="DECK"&&r.cards&&typeof r.cards=="object"&&"defaultCardContent"in r.cards){const s=r.cards;s.defaultCardContent?.settings&&(o={...o,cards:{...s,defaultCardContent:{...s.defaultCardContent,settings:Bt(s.defaultCardContent.settings)}}})}if(o.defaults&&typeof o.defaults=="object"&&!("type"in o.defaults)){const s=Object.assign({type:o.type},o.defaults);o={...o,defaults:s}}t[n]=o}return t}function f(e,t,n){function r(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:i,traits:new Set},enumerable:!1}),a._zod.traits.has(e))return;a._zod.traits.add(e),t(a,c);const u=i.prototype,l=Object.keys(u);for(let h=0;h<l.length;h++){const d=l[h];d in a||(a[d]=u[d].bind(a))}}const o=n?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:e});function i(a){var c;const u=n?.Parent?new s:this;r(u,a),(c=u._zod).deferred??(c.deferred=[]);for(const l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:r}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>n?.Parent&&a instanceof n.Parent?!0:a?._zod?.traits?.has(e)}),Object.defineProperty(i,"name",{value:e}),i}class wt extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class To extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const Gn={};function tt(e){return e&&Object.assign(Gn,e),Gn}function Xa(e){const t=Object.values(e).filter(r=>typeof r=="number");return Object.entries(e).filter(([r,o])=>t.indexOf(+r)===-1).map(([r,o])=>o)}function zn(e,t){return typeof t=="bigint"?t.toString():t}function on(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Fn(e){return e==null}function Hn(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function Qa(e,t){const n=(e.toString().split(".")[1]||"").length,r=t.toString();let o=(r.split(".")[1]||"").length;if(o===0&&/\d?e-\d?/.test(r)){const c=r.match(/\d?e-(\d?)/);c?.[1]&&(o=Number.parseInt(c[1]))}const s=n>o?n:o,i=Number.parseInt(e.toFixed(s).replace(".","")),a=Number.parseInt(t.toFixed(s).replace(".",""));return i%a/10**s}const Ro=Symbol("evaluating");function ie(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Ro)return r===void 0&&(r=Ro,r=n()),r},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function ht(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function mt(...e){const t={};for(const n of e){const r=Object.getOwnPropertyDescriptors(n);Object.assign(t,r)}return Object.defineProperties({},t)}function Co(e){return JSON.stringify(e)}function qa(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const wo="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Zt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Ja=on(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function vt(e){if(Zt(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const n=t.prototype;return!(Zt(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function vo(e){return vt(e)?{...e}:Array.isArray(e)?[...e]:e}const ec=new Set(["string","number","symbol"]);function At(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function at(e,t,n){const r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function P(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function tc(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const nc={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function rc(e,t){const n=e._zod.def,r=mt(e._zod.def,{get shape(){const o={};for(const s in t){if(!(s in n.shape))throw new Error(`Unrecognized key: "${s}"`);t[s]&&(o[s]=n.shape[s])}return ht(this,"shape",o),o},checks:[]});return at(e,r)}function oc(e,t){const n=e._zod.def,r=mt(e._zod.def,{get shape(){const o={...e._zod.def.shape};for(const s in t){if(!(s in n.shape))throw new Error(`Unrecognized key: "${s}"`);t[s]&&delete o[s]}return ht(this,"shape",o),o},checks:[]});return at(e,r)}function ic(e,t){if(!vt(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");const o=mt(e._zod.def,{get shape(){const s={...e._zod.def.shape,...t};return ht(this,"shape",s),s},checks:[]});return at(e,o)}function sc(e,t){if(!vt(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n={...e._zod.def,get shape(){const r={...e._zod.def.shape,...t};return ht(this,"shape",r),r},checks:e._zod.def.checks};return at(e,n)}function ac(e,t){const n=mt(e._zod.def,{get shape(){const r={...e._zod.def.shape,...t._zod.def.shape};return ht(this,"shape",r),r},get catchall(){return t._zod.def.catchall},checks:[]});return at(e,n)}function cc(e,t,n){const r=mt(t._zod.def,{get shape(){const o=t._zod.def.shape,s={...o};if(n)for(const i in n){if(!(i in o))throw new Error(`Unrecognized key: "${i}"`);n[i]&&(s[i]=e?new e({type:"optional",innerType:o[i]}):o[i])}else for(const i in o)s[i]=e?new e({type:"optional",innerType:o[i]}):o[i];return ht(this,"shape",s),s},checks:[]});return at(t,r)}function uc(e,t,n){const r=mt(t._zod.def,{get shape(){const o=t._zod.def.shape,s={...o};if(n)for(const i in n){if(!(i in s))throw new Error(`Unrecognized key: "${i}"`);n[i]&&(s[i]=new e({type:"nonoptional",innerType:o[i]}))}else for(const i in o)s[i]=new e({type:"nonoptional",innerType:o[i]});return ht(this,"shape",s),s},checks:[]});return at(t,r)}function Ot(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function It(e,t){return t.map(n=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(e),n})}function sn(e){return typeof e=="string"?e:e?.message}function ct(e,t,n){const r={...e,path:e.path??[]};if(!e.message){const o=sn(e.inst?._zod.def?.error?.(e))??sn(t?.error?.(e))??sn(n.customError?.(e))??sn(n.localeError?.(e))??"Invalid input";r.message=o}return delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function jn(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function Vt(...e){const[t,n,r]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:r}:{...t}}const Ao=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,zn,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Oo=f("$ZodError",Ao),Io=f("$ZodError",Ao,{Parent:Error});function lc(e,t=n=>n.message){const n={},r=[];for(const o of e.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):r.push(t(o));return{formErrors:r,fieldErrors:n}}function pc(e,t=n=>n.message){const n={_errors:[]},r=o=>{for(const s of o.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map(i=>r({issues:i}));else if(s.code==="invalid_key")r({issues:s.issues});else if(s.code==="invalid_element")r({issues:s.issues});else if(s.path.length===0)n._errors.push(t(s));else{let i=n,a=0;for(;a<s.path.length;){const c=s.path[a];a===s.path.length-1?(i[c]=i[c]||{_errors:[]},i[c]._errors.push(t(s))):i[c]=i[c]||{_errors:[]},i=i[c],a++}}};return r(e),n}const Bn=e=>(t,n,r,o)=>{const s=r?Object.assign(r,{async:!1}):{async:!1},i=t._zod.run({value:n,issues:[]},s);if(i instanceof Promise)throw new wt;if(i.issues.length){const a=new(o?.Err??e)(i.issues.map(c=>ct(c,s,tt())));throw wo(a,o?.callee),a}return i.value},Zn=e=>async(t,n,r,o)=>{const s=r?Object.assign(r,{async:!0}):{async:!0};let i=t._zod.run({value:n,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){const a=new(o?.Err??e)(i.issues.map(c=>ct(c,s,tt())));throw wo(a,o?.callee),a}return i.value},an=e=>(t,n,r)=>{const o=r?{...r,async:!1}:{async:!1},s=t._zod.run({value:n,issues:[]},o);if(s instanceof Promise)throw new wt;return s.issues.length?{success:!1,error:new(e??Oo)(s.issues.map(i=>ct(i,o,tt())))}:{success:!0,data:s.value}},dc=an(Io),cn=e=>async(t,n,r)=>{const o=r?Object.assign(r,{async:!0}):{async:!0};let s=t._zod.run({value:n,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new e(s.issues.map(i=>ct(i,o,tt())))}:{success:!0,data:s.value}},fc=cn(Io),hc=e=>(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Bn(e)(t,n,o)},mc=e=>(t,n,r)=>Bn(e)(t,n,r),Ec=e=>async(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Zn(e)(t,n,o)},gc=e=>async(t,n,r)=>Zn(e)(t,n,r),_c=e=>(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return an(e)(t,n,o)},yc=e=>(t,n,r)=>an(e)(t,n,r),Sc=e=>async(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return cn(e)(t,n,o)},Tc=e=>async(t,n,r)=>cn(e)(t,n,r),Rc=/^[cC][^\s-]{8,}$/,Cc=/^[0-9a-z]+$/,wc=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,vc=/^[0-9a-vA-V]{20}$/,Ac=/^[A-Za-z0-9]{27}$/,Oc=/^[a-zA-Z0-9_-]{21}$/,Ic=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,bc=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,bo=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,$c=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Lc="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Nc(){return new RegExp(Lc,"u")}const Dc=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,kc=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,xc=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Pc=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Uc=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,$o=/^[A-Za-z0-9_-]*$/,Mc=/^\+(?:[0-9]){6,14}[0-9]$/,Lo="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Gc=new RegExp(`^${Lo}$`);function No(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function zc(e){return new RegExp(`^${No(e)}$`)}function Fc(e){const t=No({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${t}(?:${n.join("|")})`;return new RegExp(`^${Lo}T(?:${r})$`)}const Hc=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},jc=/^-?\d+$/,Bc=/^-?\d+(?:\.\d+)?/,Zc=/^(?:true|false)$/i,Vc=/^[^A-Z]*$/,Kc=/^[^a-z]*$/,De=f("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Do={number:"number",bigint:"bigint",object:"date"},ko=f("$ZodCheckLessThan",(e,t)=>{De.init(e,t);const n=Do[typeof t.value];e._zod.onattach.push(r=>{const o=r._zod.bag,s=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<s&&(t.inclusive?o.maximum=t.value:o.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:"too_big",maximum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),xo=f("$ZodCheckGreaterThan",(e,t)=>{De.init(e,t);const n=Do[typeof t.value];e._zod.onattach.push(r=>{const o=r._zod.bag,s=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>s&&(t.inclusive?o.minimum=t.value:o.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:"too_small",minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Wc=f("$ZodCheckMultipleOf",(e,t)=>{De.init(e,t),e._zod.onattach.push(n=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof n.value=="bigint"?n.value%t.value===BigInt(0):Qa(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Yc=f("$ZodCheckNumberFormat",(e,t)=>{De.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),r=n?"int":"number",[o,s]=nc[t.format];e._zod.onattach.push(i=>{const a=i._zod.bag;a.format=t.format,a.minimum=o,a.maximum=s,n&&(a.pattern=jc)}),e._zod.check=i=>{const a=i.value;if(n){if(!Number.isInteger(a)){i.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});return}if(!Number.isSafeInteger(a)){a>0?i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,continue:!t.abort}):i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,continue:!t.abort});return}}a<o&&i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),a>s&&i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:e})}}),Xc=f("$ZodCheckMaxLength",(e,t)=>{var n;De.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Fn(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(r._zod.bag.maximum=t.maximum)}),e._zod.check=r=>{const o=r.value;if(o.length<=t.maximum)return;const i=jn(o);r.issues.push({origin:i,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Qc=f("$ZodCheckMinLength",(e,t)=>{var n;De.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Fn(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(r._zod.bag.minimum=t.minimum)}),e._zod.check=r=>{const o=r.value;if(o.length>=t.minimum)return;const i=jn(o);r.issues.push({origin:i,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),qc=f("$ZodCheckLengthEquals",(e,t)=>{var n;De.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Fn(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=r=>{const o=r.value,s=o.length;if(s===t.length)return;const i=jn(o),a=s>t.length;r.issues.push({origin:i,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),un=f("$ZodCheckStringFormat",(e,t)=>{var n,r;De.init(e,t),e._zod.onattach.push(o=>{const s=o._zod.bag;s.format=t.format,t.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),Jc=f("$ZodCheckRegex",(e,t)=>{un.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),eu=f("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Vc),un.init(e,t)}),tu=f("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Kc),un.init(e,t)}),nu=f("$ZodCheckIncludes",(e,t)=>{De.init(e,t);const n=At(t.includes),r=new RegExp(typeof t.position=="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(o=>{const s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(r)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),ru=f("$ZodCheckStartsWith",(e,t)=>{De.init(e,t);const n=new RegExp(`^${At(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.startsWith(t.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),ou=f("$ZodCheckEndsWith",(e,t)=>{De.init(e,t);const n=new RegExp(`.*${At(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.endsWith(t.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}}),iu=f("$ZodCheckOverwrite",(e,t)=>{De.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}});class su{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const r=t.split(`
|
|
6
|
+
`:" ";return`${t}${o}${r}`}function qa(e){return e.replace(/\\/g,"/")}function Ja(e){return e.replace(/^dist\/layouts\//,"").replace(/^layouts\//,"")}function wt(e){return Ja(qa(e))}function ec(e){const t=wt(e).split("/");if(t.length<2)throw new Error(`Invalid layout path: ${e}. Expected format: [dist/]layouts/{sectionId}/{layoutId}/[...path]`);const[n,r]=t;if(!wo(n))throw new Error(`Layout cannot be placed in a non-storefront section: ${n}`);const o=Ha(n);return{id:r,sectionId:n,pageId:o}}const tc={catalog:"products",category:"category",product:"product"};async function nc(e){const t=wt(e).split("/");if(t.length<2)throw new Error(`Invalid layout path: ${e}. Expected format: [dist/]layouts/{sectionId}/{layoutId}/[...path]`);const[n,r]=t;return{id:r,sectionId:n}}async function rc(e){return Promise.all(e.map(async t=>{const n=t.sectionId,r=tc[n];return{id:t.id,sectionId:n,pageId:r}}))}async function oc(){const e=`${Ae}/{product,catalog,category}/*`,t=await F(e,{ignore:["node_modules/**"]});return Promise.all(t.map(nc))}async function ic(){const e=await oc();return await rc(e)}function Ct(e,t,...n){if(!e||!t)throw new Error(`Cannot build layout path. Invalid parameters - sectionId: "${e}", layoutId: "${t}"`);return`${Ae}/${e}/${t}/${n.join("/")}`}const jt=(e=ve.SECTION)=>se[e].dist,Bt={[J.Server]:{type:"server_js_compressed",fileName:"server.js.gz",isSingleton:!0,toPath:({sectionId:e,sectionType:t})=>`${jt(t)}/${e}/js/main/server/`},[J.Client]:{type:"client_js",fileName:"client.js",isSingleton:!1,toPath:({sectionId:e,sectionType:t})=>`${jt(t)}/${e}/js/main/client/`},[J.ClientChunks]:{type:"client_js_chunks",isSingleton:!1,toPath:({sectionId:e,sectionType:t})=>`${jt(t)}/${e}/js/main/client/chunks/`,fileName:"*"},[J.ClientAsset]:{type:"assets",fileName:"*",isSingleton:!1,toPath:({sectionId:e,sectionType:t})=>`${jt(t)}/${e}/js/main/client/assets/`},[J.Asset]:{type:"assets",fileName:"*",isSingleton:!1,toPath:({sectionId:e,sectionType:t})=>`${jt(t)}/${e}/assets/`},[J.TemplateAsset]:{type:"template_assets",fileName:"*",isSingleton:!1,toPath:()=>`${Fe}/assets/`},[J.Dependency]:{type:"dependencies",fileName:"package.json",isSingleton:!0,toPath:()=>{}},[J.SourceCode]:{type:"source_code",fileName:"source-code.zip",isSingleton:!0,toPath:()=>{}},[J.LayoutClient]:{type:"layout_client_js",fileName:"index.mjs",isSingleton:!0,toPath:({sectionId:e,layoutId:t})=>Ct(e,t,"")},[J.LayoutAsset]:{type:"layout_assets",fileName:"*",isSingleton:!1,toPath:({sectionId:e,layoutId:t})=>Ct(e,t,"assets/")},[J.SlotServer]:{type:"slot_server_js",fileName:"server.js.gz",isSingleton:!0,toPath:({sectionId:e,layoutId:t,slotId:n})=>Ct(e,t,"slots",n,"js/main/server/")},[J.SlotClient]:{type:"slot_client_js",fileName:"client.js",isSingleton:!1,toPath:({sectionId:e,layoutId:t,slotId:n})=>Ct(e,t,"slots",n,"js/main/client/")},[J.SlotClientChunks]:{type:"slot_client_js_chunks",fileName:"*",isSingleton:!1,toPath:({sectionId:e,layoutId:t,slotId:n})=>Ct(e,t,"slots",n,"js/main/client/chunks/")},[J.SlotClientAsset]:{type:"slot_client_assets",fileName:"*",isSingleton:!1,toPath:({sectionId:e,layoutId:t,slotId:n})=>Ct(e,t,"slots",n,"js/main/client/assets/")},[J.CollectionAsset]:{type:"template_assets",fileName:"*",isSingleton:!1,toPath:()=>`${on}/assets/`}};function Zt(e){const t={};for(const[n,r]of Object.entries(e)){let o={...r};if(r.type==="DECK"&&r.cards&&typeof r.cards=="object"&&"defaultCardContent"in r.cards){const s=r.cards;s.defaultCardContent?.settings&&(o={...o,cards:{...s,defaultCardContent:{...s.defaultCardContent,settings:Zt(s.defaultCardContent.settings)}}})}if(o.defaults&&typeof o.defaults=="object"&&!("type"in o.defaults)){const s=Object.assign({type:o.type},o.defaults);o={...o,defaults:s}}t[n]=o}return t}function f(e,t,n){function r(a,c){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:c,constr:i,traits:new Set},enumerable:!1}),a._zod.traits.has(e))return;a._zod.traits.add(e),t(a,c);const u=i.prototype,l=Object.keys(u);for(let h=0;h<l.length;h++){const d=l[h];d in a||(a[d]=u[d].bind(a))}}const o=n?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:e});function i(a){var c;const u=n?.Parent?new s:this;r(u,a),(c=u._zod).deferred??(c.deferred=[]);for(const l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:r}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>n?.Parent&&a instanceof n.Parent?!0:a?._zod?.traits?.has(e)}),Object.defineProperty(i,"name",{value:e}),i}class vt extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Ao extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const jn={};function ot(e){return e&&Object.assign(jn,e),jn}function sc(e){const t=Object.values(e).filter(r=>typeof r=="number");return Object.entries(e).filter(([r,o])=>t.indexOf(+r)===-1).map(([r,o])=>o)}function Bn(e,t){return typeof t=="bigint"?t.toString():t}function cn(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Zn(e){return e==null}function Vn(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function ac(e,t){const n=(e.toString().split(".")[1]||"").length,r=t.toString();let o=(r.split(".")[1]||"").length;if(o===0&&/\d?e-\d?/.test(r)){const c=r.match(/\d?e-(\d?)/);c?.[1]&&(o=Number.parseInt(c[1]))}const s=n>o?n:o,i=Number.parseInt(e.toFixed(s).replace(".","")),a=Number.parseInt(t.toFixed(s).replace(".",""));return i%a/10**s}const Io=Symbol("evaluating");function ie(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Io)return r===void 0&&(r=Io,r=n()),r},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function mt(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Et(...e){const t={};for(const n of e){const r=Object.getOwnPropertyDescriptors(n);Object.assign(t,r)}return Object.defineProperties({},t)}function Oo(e){return JSON.stringify(e)}function cc(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const bo="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Vt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const uc=cn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function At(e){if(Vt(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const n=t.prototype;return!(Vt(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function $o(e){return At(e)?{...e}:Array.isArray(e)?[...e]:e}const lc=new Set(["string","number","symbol"]);function It(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ct(e,t,n){const r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function P(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function pc(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const dc={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function fc(e,t){const n=e._zod.def,r=Et(e._zod.def,{get shape(){const o={};for(const s in t){if(!(s in n.shape))throw new Error(`Unrecognized key: "${s}"`);t[s]&&(o[s]=n.shape[s])}return mt(this,"shape",o),o},checks:[]});return ct(e,r)}function hc(e,t){const n=e._zod.def,r=Et(e._zod.def,{get shape(){const o={...e._zod.def.shape};for(const s in t){if(!(s in n.shape))throw new Error(`Unrecognized key: "${s}"`);t[s]&&delete o[s]}return mt(this,"shape",o),o},checks:[]});return ct(e,r)}function mc(e,t){if(!At(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");const o=Et(e._zod.def,{get shape(){const s={...e._zod.def.shape,...t};return mt(this,"shape",s),s},checks:[]});return ct(e,o)}function Ec(e,t){if(!At(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n={...e._zod.def,get shape(){const r={...e._zod.def.shape,...t};return mt(this,"shape",r),r},checks:e._zod.def.checks};return ct(e,n)}function gc(e,t){const n=Et(e._zod.def,{get shape(){const r={...e._zod.def.shape,...t._zod.def.shape};return mt(this,"shape",r),r},get catchall(){return t._zod.def.catchall},checks:[]});return ct(e,n)}function _c(e,t,n){const r=Et(t._zod.def,{get shape(){const o=t._zod.def.shape,s={...o};if(n)for(const i in n){if(!(i in o))throw new Error(`Unrecognized key: "${i}"`);n[i]&&(s[i]=e?new e({type:"optional",innerType:o[i]}):o[i])}else for(const i in o)s[i]=e?new e({type:"optional",innerType:o[i]}):o[i];return mt(this,"shape",s),s},checks:[]});return ct(t,r)}function yc(e,t,n){const r=Et(t._zod.def,{get shape(){const o=t._zod.def.shape,s={...o};if(n)for(const i in n){if(!(i in s))throw new Error(`Unrecognized key: "${i}"`);n[i]&&(s[i]=new e({type:"nonoptional",innerType:o[i]}))}else for(const i in o)s[i]=new e({type:"nonoptional",innerType:o[i]});return mt(this,"shape",s),s},checks:[]});return ct(t,r)}function Ot(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function bt(e,t){return t.map(n=>{var r;return(r=n).path??(r.path=[]),n.path.unshift(e),n})}function un(e){return typeof e=="string"?e:e?.message}function ut(e,t,n){const r={...e,path:e.path??[]};if(!e.message){const o=un(e.inst?._zod.def?.error?.(e))??un(t?.error?.(e))??un(n.customError?.(e))??un(n.localeError?.(e))??"Invalid input";r.message=o}return delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function Wn(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function Wt(...e){const[t,n,r]=e;return typeof t=="string"?{message:t,code:"custom",input:n,inst:r}:{...t}}const Lo=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Bn,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},No=f("$ZodError",Lo),Do=f("$ZodError",Lo,{Parent:Error});function Sc(e,t=n=>n.message){const n={},r=[];for(const o of e.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):r.push(t(o));return{formErrors:r,fieldErrors:n}}function Tc(e,t=n=>n.message){const n={_errors:[]},r=o=>{for(const s of o.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map(i=>r({issues:i}));else if(s.code==="invalid_key")r({issues:s.issues});else if(s.code==="invalid_element")r({issues:s.issues});else if(s.path.length===0)n._errors.push(t(s));else{let i=n,a=0;for(;a<s.path.length;){const c=s.path[a];a===s.path.length-1?(i[c]=i[c]||{_errors:[]},i[c]._errors.push(t(s))):i[c]=i[c]||{_errors:[]},i=i[c],a++}}};return r(e),n}const Kn=e=>(t,n,r,o)=>{const s=r?Object.assign(r,{async:!1}):{async:!1},i=t._zod.run({value:n,issues:[]},s);if(i instanceof Promise)throw new vt;if(i.issues.length){const a=new(o?.Err??e)(i.issues.map(c=>ut(c,s,ot())));throw bo(a,o?.callee),a}return i.value},Yn=e=>async(t,n,r,o)=>{const s=r?Object.assign(r,{async:!0}):{async:!0};let i=t._zod.run({value:n,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){const a=new(o?.Err??e)(i.issues.map(c=>ut(c,s,ot())));throw bo(a,o?.callee),a}return i.value},ln=e=>(t,n,r)=>{const o=r?{...r,async:!1}:{async:!1},s=t._zod.run({value:n,issues:[]},o);if(s instanceof Promise)throw new vt;return s.issues.length?{success:!1,error:new(e??No)(s.issues.map(i=>ut(i,o,ot())))}:{success:!0,data:s.value}},Rc=ln(Do),pn=e=>async(t,n,r)=>{const o=r?Object.assign(r,{async:!0}):{async:!0};let s=t._zod.run({value:n,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new e(s.issues.map(i=>ut(i,o,ot())))}:{success:!0,data:s.value}},wc=pn(Do),Cc=e=>(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Kn(e)(t,n,o)},vc=e=>(t,n,r)=>Kn(e)(t,n,r),Ac=e=>async(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Yn(e)(t,n,o)},Ic=e=>async(t,n,r)=>Yn(e)(t,n,r),Oc=e=>(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return ln(e)(t,n,o)},bc=e=>(t,n,r)=>ln(e)(t,n,r),$c=e=>async(t,n,r)=>{const o=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return pn(e)(t,n,o)},Lc=e=>async(t,n,r)=>pn(e)(t,n,r),Nc=/^[cC][^\s-]{8,}$/,Dc=/^[0-9a-z]+$/,kc=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,xc=/^[0-9a-vA-V]{20}$/,Pc=/^[A-Za-z0-9]{27}$/,Mc=/^[a-zA-Z0-9_-]{21}$/,Uc=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Fc=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,ko=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,zc=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Gc="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Hc(){return new RegExp(Gc,"u")}const jc=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Bc=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Zc=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Vc=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Wc=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,xo=/^[A-Za-z0-9_-]*$/,Kc=/^\+(?:[0-9]){6,14}[0-9]$/,Po="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Yc=new RegExp(`^${Po}$`);function Mo(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Xc(e){return new RegExp(`^${Mo(e)}$`)}function Qc(e){const t=Mo({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${t}(?:${n.join("|")})`;return new RegExp(`^${Po}T(?:${r})$`)}const qc=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},Jc=/^-?\d+$/,eu=/^-?\d+(?:\.\d+)?/,tu=/^(?:true|false)$/i,nu=/^[^A-Z]*$/,ru=/^[^a-z]*$/,De=f("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Uo={number:"number",bigint:"bigint",object:"date"},Fo=f("$ZodCheckLessThan",(e,t)=>{De.init(e,t);const n=Uo[typeof t.value];e._zod.onattach.push(r=>{const o=r._zod.bag,s=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<s&&(t.inclusive?o.maximum=t.value:o.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:"too_big",maximum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),zo=f("$ZodCheckGreaterThan",(e,t)=>{De.init(e,t);const n=Uo[typeof t.value];e._zod.onattach.push(r=>{const o=r._zod.bag,s=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>s&&(t.inclusive?o.minimum=t.value:o.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:"too_small",minimum:t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),ou=f("$ZodCheckMultipleOf",(e,t)=>{De.init(e,t),e._zod.onattach.push(n=>{var r;(r=n._zod.bag).multipleOf??(r.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof n.value=="bigint"?n.value%t.value===BigInt(0):ac(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),iu=f("$ZodCheckNumberFormat",(e,t)=>{De.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),r=n?"int":"number",[o,s]=dc[t.format];e._zod.onattach.push(i=>{const a=i._zod.bag;a.format=t.format,a.minimum=o,a.maximum=s,n&&(a.pattern=Jc)}),e._zod.check=i=>{const a=i.value;if(n){if(!Number.isInteger(a)){i.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:a,inst:e});return}if(!Number.isSafeInteger(a)){a>0?i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,continue:!t.abort}):i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,continue:!t.abort});return}}a<o&&i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),a>s&&i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:e})}}),su=f("$ZodCheckMaxLength",(e,t)=>{var n;De.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Zn(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(r._zod.bag.maximum=t.maximum)}),e._zod.check=r=>{const o=r.value;if(o.length<=t.maximum)return;const i=Wn(o);r.issues.push({origin:i,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),au=f("$ZodCheckMinLength",(e,t)=>{var n;De.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Zn(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(r._zod.bag.minimum=t.minimum)}),e._zod.check=r=>{const o=r.value;if(o.length>=t.minimum)return;const i=Wn(o);r.issues.push({origin:i,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),cu=f("$ZodCheckLengthEquals",(e,t)=>{var n;De.init(e,t),(n=e._zod.def).when??(n.when=r=>{const o=r.value;return!Zn(o)&&o.length!==void 0}),e._zod.onattach.push(r=>{const o=r._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=r=>{const o=r.value,s=o.length;if(s===t.length)return;const i=Wn(o),a=s>t.length;r.issues.push({origin:i,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!t.abort})}}),dn=f("$ZodCheckStringFormat",(e,t)=>{var n,r;De.init(e,t),e._zod.onattach.push(o=>{const s=o._zod.bag;s.format=t.format,t.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),uu=f("$ZodCheckRegex",(e,t)=>{dn.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),lu=f("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=nu),dn.init(e,t)}),pu=f("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=ru),dn.init(e,t)}),du=f("$ZodCheckIncludes",(e,t)=>{De.init(e,t);const n=It(t.includes),r=new RegExp(typeof t.position=="number"?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(o=>{const s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(r)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),fu=f("$ZodCheckStartsWith",(e,t)=>{De.init(e,t);const n=new RegExp(`^${It(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.startsWith(t.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:r.value,inst:e,continue:!t.abort})}}),hu=f("$ZodCheckEndsWith",(e,t)=>{De.init(e,t);const n=new RegExp(`.*${It(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(r=>{const o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(n)}),e._zod.check=r=>{r.value.endsWith(t.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:r.value,inst:e,continue:!t.abort})}}),mu=f("$ZodCheckOverwrite",(e,t)=>{De.init(e,t),e._zod.check=n=>{n.value=t.tx(n.value)}});class Eu{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const r=t.split(`
|
|
7
7
|
`).filter(i=>i),o=Math.min(...r.map(i=>i.length-i.trimStart().length)),s=r.map(i=>i.slice(o)).map(i=>" ".repeat(this.indent*2)+i);for(const i of s)this.content.push(i)}compile(){const t=Function,n=this?.args,o=[...(this?.content??[""]).map(s=>` ${s}`)];return new t(...n,o.join(`
|
|
8
|
-
`))}}const
|
|
8
|
+
`))}}const gu={major:4,minor:1,patch:13},he=f("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=gu;const r=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&r.unshift(e);for(const o of r)for(const s of o._zod.onattach)s(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const o=(i,a,c)=>{let u=Ot(i),l;for(const h of a){if(h._zod.def.when){if(!h._zod.def.when(i))continue}else if(u)continue;const d=i.issues.length,b=h._zod.check(i);if(b instanceof Promise&&c?.async===!1)throw new vt;if(l||b instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await b,i.issues.length!==d&&(u||(u=Ot(i,d)))});else{if(i.issues.length===d)continue;u||(u=Ot(i,d))}}return l?l.then(()=>i):i},s=(i,a,c)=>{if(Ot(i))return i.aborted=!0,i;const u=o(a,r,c);if(u instanceof Promise){if(c.async===!1)throw new vt;return u.then(l=>e._zod.parse(l,c))}return e._zod.parse(u,c)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction==="backward"){const u=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return u instanceof Promise?u.then(l=>s(l,i,a)):s(u,i,a)}const c=e._zod.parse(i,a);if(c instanceof Promise){if(a.async===!1)throw new vt;return c.then(u=>o(u,r,a))}return o(c,r,a)}}e["~standard"]={validate:o=>{try{const s=Rc(e,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return wc(e,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),Xn=f("$ZodString",(e,t)=>{he.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??qc(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),pe=f("$ZodStringFormat",(e,t)=>{dn.init(e,t),Xn.init(e,t)}),_u=f("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Fc),pe.init(e,t)}),yu=f("$ZodUUID",(e,t)=>{if(t.version){const r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(r===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=ko(r))}else t.pattern??(t.pattern=ko());pe.init(e,t)}),Su=f("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=zc),pe.init(e,t)}),Tu=f("$ZodURL",(e,t)=>{pe.init(e,t),e._zod.check=n=>{try{const r=n.value.trim(),o=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=o.href:n.value=r;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Ru=f("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Hc()),pe.init(e,t)}),wu=f("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Mc),pe.init(e,t)}),Cu=f("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Nc),pe.init(e,t)}),vu=f("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Dc),pe.init(e,t)}),Au=f("$ZodULID",(e,t)=>{t.pattern??(t.pattern=kc),pe.init(e,t)}),Iu=f("$ZodXID",(e,t)=>{t.pattern??(t.pattern=xc),pe.init(e,t)}),Ou=f("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Pc),pe.init(e,t)}),bu=f("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Qc(t)),pe.init(e,t)}),$u=f("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Yc),pe.init(e,t)}),Lu=f("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Xc(t)),pe.init(e,t)}),Nu=f("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Uc),pe.init(e,t)}),Du=f("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=jc),pe.init(e,t),e._zod.bag.format="ipv4"}),ku=f("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Bc),pe.init(e,t),e._zod.bag.format="ipv6",e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),xu=f("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Zc),pe.init(e,t)}),Pu=f("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Vc),pe.init(e,t),e._zod.check=n=>{const r=n.value.split("/");try{if(r.length!==2)throw new Error;const[o,s]=r;if(!s)throw new Error;const i=Number(s);if(`${i}`!==s)throw new Error;if(i<0||i>128)throw new Error;new URL(`http://[${o}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function Go(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const Mu=f("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Wc),pe.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=n=>{Go(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});function Uu(e){if(!xo.test(e))return!1;const t=e.replace(/[-_]/g,r=>r==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return Go(n)}const Fu=f("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=xo),pe.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=n=>{Uu(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),zu=f("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Kc),pe.init(e,t)});function Gu(e,t=null){try{const n=e.split(".");if(n.length!==3)return!1;const[r]=n;if(!r)return!1;const o=JSON.parse(atob(r));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}const Hu=f("$ZodJWT",(e,t)=>{pe.init(e,t),e._zod.check=n=>{Gu(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),Ho=f("$ZodNumber",(e,t)=>{he.init(e,t),e._zod.pattern=e._zod.bag.pattern??eu,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}const o=n.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return n;const s=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...s?{received:s}:{}}),n}}),ju=f("$ZodNumberFormat",(e,t)=>{iu.init(e,t),Ho.init(e,t)}),Bu=f("$ZodBoolean",(e,t)=>{he.init(e,t),e._zod.pattern=tu,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}const o=n.value;return typeof o=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}}),Zu=f("$ZodUnknown",(e,t)=>{he.init(e,t),e._zod.parse=n=>n}),Vu=f("$ZodNever",(e,t)=>{he.init(e,t),e._zod.parse=(n,r)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n)});function jo(e,t,n){e.issues.length&&t.issues.push(...bt(n,e.issues)),t.value[n]=e.value}const Wu=f("$ZodArray",(e,t)=>{he.init(e,t),e._zod.parse=(n,r)=>{const o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);const s=[];for(let i=0;i<o.length;i++){const a=o[i],c=t.element._zod.run({value:a,issues:[]},r);c instanceof Promise?s.push(c.then(u=>jo(u,n,i))):jo(c,n,i)}return s.length?Promise.all(s).then(()=>n):n}});function fn(e,t,n,r){e.issues.length&&t.issues.push(...bt(n,e.issues)),e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function Bo(e){const t=Object.keys(e.shape);for(const r of t)if(!e.shape?.[r]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${r}": expected a Zod schema`);const n=pc(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Zo(e,t,n,r,o,s){const i=[],a=o.keySet,c=o.catchall._zod,u=c.def.type;for(const l in t){if(a.has(l))continue;if(u==="never"){i.push(l);continue}const h=c.run({value:t[l],issues:[]},r);h instanceof Promise?e.push(h.then(d=>fn(d,n,l,t))):fn(h,n,l,t)}return i.length&&n.issues.push({code:"unrecognized_keys",keys:i,input:t,inst:s}),e.length?Promise.all(e).then(()=>n):n}const Ku=f("$ZodObject",(e,t)=>{if(he.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){const a=t.shape;Object.defineProperty(t,"shape",{get:()=>{const c={...a};return Object.defineProperty(t,"shape",{value:c}),c}})}const r=cn(()=>Bo(t));ie(e._zod,"propValues",()=>{const a=t.shape,c={};for(const u in a){const l=a[u]._zod;if(l.values){c[u]??(c[u]=new Set);for(const h of l.values)c[u].add(h)}}return c});const o=Vt,s=t.catchall;let i;e._zod.parse=(a,c)=>{i??(i=r.value);const u=a.value;if(!o(u))return a.issues.push({expected:"object",code:"invalid_type",input:u,inst:e}),a;a.value={};const l=[],h=i.shape;for(const d of i.keys){const O=h[d]._zod.run({value:u[d],issues:[]},c);O instanceof Promise?l.push(O.then(Z=>fn(Z,a,d,u))):fn(O,a,d,u)}return s?Zo(l,u,a,c,r.value,e):l.length?Promise.all(l).then(()=>a):a}}),Yu=f("$ZodObjectJIT",(e,t)=>{Ku.init(e,t);const n=e._zod.parse,r=cn(()=>Bo(t)),o=d=>{const b=new Eu(["shape","payload","ctx"]),O=r.value,Z=p=>{const S=Oo(p);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};b.write("const input = payload.value;");const w=Object.create(null);let T=0;for(const p of O.keys)w[p]=`key_${T++}`;b.write("const newResult = {};");for(const p of O.keys){const S=w[p],m=Oo(p);b.write(`const ${S} = ${Z(p)};`),b.write(`
|
|
9
9
|
if (${S}.issues.length) {
|
|
10
10
|
payload.issues = payload.issues.concat(${S}.issues.map(iss => ({
|
|
11
11
|
...iss,
|
|
@@ -22,37 +22,37 @@ import*as Jt from"fs";import re,{existsSync as we,writeFileSync as no,readFileSy
|
|
|
22
22
|
newResult[${m}] = ${S}.value;
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
`)}$.write("payload.value = newResult;"),$.write("return payload;");const D=$.compile();return(p,S)=>D(d,p,S)};let s;const i=Zt,a=!Gn.jitless,u=a&&Ja.value,l=t.catchall;let h;e._zod.parse=(d,$)=>{h??(h=r.value);const O=d.value;return i(O)?a&&u&&$?.async===!1&&$.jitless!==!0?(s||(s=o(t.shape)),d=s(d,$),l?zo([],O,d,$,h,e):d):n(d,$):(d.issues.push({expected:"object",code:"invalid_type",input:O,inst:e}),d)}});function Fo(e,t,n,r){for(const s of e)if(s.issues.length===0)return t.value=s.value,t;const o=e.filter(s=>!Ot(s));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(s=>s.issues.map(i=>ct(i,r,tt())))}),t)}const Ho=f("$ZodUnion",(e,t)=>{he.init(e,t),ie(e._zod,"optin",()=>t.options.some(o=>o._zod.optin==="optional")?"optional":void 0),ie(e._zod,"optout",()=>t.options.some(o=>o._zod.optout==="optional")?"optional":void 0),ie(e._zod,"values",()=>{if(t.options.every(o=>o._zod.values))return new Set(t.options.flatMap(o=>Array.from(o._zod.values)))}),ie(e._zod,"pattern",()=>{if(t.options.every(o=>o._zod.pattern)){const o=t.options.map(s=>s._zod.pattern);return new RegExp(`^(${o.map(s=>Hn(s.source)).join("|")})$`)}});const n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(o,s)=>{if(n)return r(o,s);let i=!1;const a=[];for(const c of t.options){const u=c._zod.run({value:o.value,issues:[]},s);if(u instanceof Promise)a.push(u),i=!0;else{if(u.issues.length===0)return u;a.push(u)}}return i?Promise.all(a).then(c=>Fo(c,o,e,s)):Fo(a,o,e,s)}}),zu=f("$ZodDiscriminatedUnion",(e,t)=>{Ho.init(e,t);const n=e._zod.parse;ie(e._zod,"propValues",()=>{const o={};for(const s of t.options){const i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(s)}"`);for(const[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(const u of c)o[a].add(u)}}return o});const r=on(()=>{const o=t.options,s=new Map;for(const i of o){const a=i._zod.propValues?.[t.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(const c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});e._zod.parse=(o,s)=>{const i=o.value;if(!Zt(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:e}),o;const a=r.value.get(i?.[t.discriminator]);return a?a._zod.run(o,s):t.unionFallback?n(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:i,path:[t.discriminator],inst:e}),o)}}),Fu=f("$ZodIntersection",(e,t)=>{he.init(e,t),e._zod.parse=(n,r)=>{const o=n.value,s=t.left._zod.run({value:o,issues:[]},r),i=t.right._zod.run({value:o,issues:[]},r);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>jo(n,c,u)):jo(n,s,i)}});function Kn(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(vt(e)&&vt(t)){const n=Object.keys(t),r=Object.keys(e).filter(s=>n.indexOf(s)!==-1),o={...e,...t};for(const s of r){const i=Kn(e[s],t[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let r=0;r<e.length;r++){const o=e[r],s=t[r],i=Kn(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[r,...i.mergeErrorPath]};n.push(i.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function jo(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),Ot(e))return e;const r=Kn(t.value,n.value);if(!r.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(r.mergeErrorPath)}`);return e.value=r.data,e}const Hu=f("$ZodRecord",(e,t)=>{he.init(e,t),e._zod.parse=(n,r)=>{const o=n.value;if(!vt(o))return n.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),n;const s=[],i=t.keyType._zod.values;if(i){n.value={};const a=new Set;for(const u of i)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){a.add(typeof u=="number"?u.toString():u);const l=t.valueType._zod.run({value:o[u],issues:[]},r);l instanceof Promise?s.push(l.then(h=>{h.issues.length&&n.issues.push(...It(u,h.issues)),n.value[u]=h.value})):(l.issues.length&&n.issues.push(...It(u,l.issues)),n.value[u]=l.value)}let c;for(const u in o)a.has(u)||(c=c??[],c.push(u));c&&c.length>0&&n.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:c})}else{n.value={};for(const a of Reflect.ownKeys(o)){if(a==="__proto__")continue;const c=t.keyType._zod.run({value:a,issues:[]},r);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(c.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(l=>ct(l,r,tt())),input:a,path:[a],inst:e}),n.value[c.value]=c.value;continue}const u=t.valueType._zod.run({value:o[a],issues:[]},r);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&n.issues.push(...It(a,l.issues)),n.value[c.value]=l.value})):(u.issues.length&&n.issues.push(...It(a,u.issues)),n.value[c.value]=u.value)}}return s.length?Promise.all(s).then(()=>n):n}}),ju=f("$ZodEnum",(e,t)=>{he.init(e,t);const n=Xa(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter(o=>ec.has(typeof o)).map(o=>typeof o=="string"?At(o):o.toString()).join("|")})$`),e._zod.parse=(o,s)=>{const i=o.value;return r.has(i)||o.issues.push({code:"invalid_value",values:n,input:i,inst:e}),o}}),Bu=f("$ZodLiteral",(e,t)=>{if(he.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");const n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map(r=>typeof r=="string"?At(r):r?At(r.toString()):String(r)).join("|")})$`),e._zod.parse=(r,o)=>{const s=r.value;return n.has(s)||r.issues.push({code:"invalid_value",values:t.values,input:s,inst:e}),r}}),Zu=f("$ZodTransform",(e,t)=>{he.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new To(e.constructor.name);const o=t.transform(n.value,n);if(r.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(n.value=i,n));if(o instanceof Promise)throw new wt;return n.value=o,n}});function Bo(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const Vu=f("$ZodOptional",(e,t)=>{he.init(e,t),e._zod.optin="optional",e._zod.optout="optional",ie(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),ie(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${Hn(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(s=>Bo(s,n.value)):Bo(o,n.value)}return n.value===void 0?n:t.innerType._zod.run(n,r)}}),Ku=f("$ZodNullable",(e,t)=>{he.init(e,t),ie(e._zod,"optin",()=>t.innerType._zod.optin),ie(e._zod,"optout",()=>t.innerType._zod.optout),ie(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${Hn(n.source)}|null)$`):void 0}),ie(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,r)=>n.value===null?n:t.innerType._zod.run(n,r)}),Wu=f("$ZodDefault",(e,t)=>{he.init(e,t),e._zod.optin="optional",ie(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(s=>Zo(s,t)):Zo(o,t)}});function Zo(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Yu=f("$ZodPrefault",(e,t)=>{he.init(e,t),e._zod.optin="optional",ie(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>(r.direction==="backward"||n.value===void 0&&(n.value=t.defaultValue),t.innerType._zod.run(n,r))}),Xu=f("$ZodNonOptional",(e,t)=>{he.init(e,t),ie(e._zod,"values",()=>{const n=t.innerType._zod.values;return n?new Set([...n].filter(r=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(s=>Vo(s,e)):Vo(o,e)}});function Vo(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const Qu=f("$ZodCatch",(e,t)=>{he.init(e,t),ie(e._zod,"optin",()=>t.innerType._zod.optin),ie(e._zod,"optout",()=>t.innerType._zod.optout),ie(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(s=>(n.value=s.value,s.issues.length&&(n.value=t.catchValue({...n,error:{issues:s.issues.map(i=>ct(i,r,tt()))},input:n.value}),n.issues=[]),n)):(n.value=o.value,o.issues.length&&(n.value=t.catchValue({...n,error:{issues:o.issues.map(s=>ct(s,r,tt()))},input:n.value}),n.issues=[]),n)}}),qu=f("$ZodPipe",(e,t)=>{he.init(e,t),ie(e._zod,"values",()=>t.in._zod.values),ie(e._zod,"optin",()=>t.in._zod.optin),ie(e._zod,"optout",()=>t.out._zod.optout),ie(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){const s=t.out._zod.run(n,r);return s instanceof Promise?s.then(i=>pn(i,t.in,r)):pn(s,t.in,r)}const o=t.in._zod.run(n,r);return o instanceof Promise?o.then(s=>pn(s,t.out,r)):pn(o,t.out,r)}});function pn(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const Ju=f("$ZodReadonly",(e,t)=>{he.init(e,t),ie(e._zod,"propValues",()=>t.innerType._zod.propValues),ie(e._zod,"values",()=>t.innerType._zod.values),ie(e._zod,"optin",()=>t.innerType?._zod?.optin),ie(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(Ko):Ko(o)}});function Ko(e){return e.value=Object.freeze(e.value),e}const el=f("$ZodCustom",(e,t)=>{De.init(e,t),he.init(e,t),e._zod.parse=(n,r)=>n,e._zod.check=n=>{const r=n.value,o=t.fn(r);if(o instanceof Promise)return o.then(s=>Wo(s,n,r,e));Wo(o,n,r,e)}});function Wo(e,t,n,r){if(!e){const o={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(o.params=r._zod.def.params),t.issues.push(Vt(o))}}var Yo;class tl{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...n){const r=n[0];if(this._map.set(t,r),r&&typeof r=="object"&&"id"in r){if(this._idmap.has(r.id))throw new Error(`ID ${r.id} already exists in the registry`);this._idmap.set(r.id,t)}return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const n=this._map.get(t);return n&&typeof n=="object"&&"id"in n&&this._idmap.delete(n.id),this._map.delete(t),this}get(t){const n=t._zod.parent;if(n){const r={...this.get(n)??{}};delete r.id;const o={...r,...this._map.get(t)};return Object.keys(o).length?o:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function nl(){return new tl}(Yo=globalThis).__zod_globalRegistry??(Yo.__zod_globalRegistry=nl());const dn=globalThis.__zod_globalRegistry;function rl(e,t){return new e({type:"string",...P(t)})}function ol(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...P(t)})}function Xo(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...P(t)})}function il(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...P(t)})}function sl(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...P(t)})}function al(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...P(t)})}function cl(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...P(t)})}function Qo(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...P(t)})}function ul(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...P(t)})}function ll(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...P(t)})}function pl(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...P(t)})}function dl(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...P(t)})}function fl(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...P(t)})}function hl(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...P(t)})}function ml(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...P(t)})}function El(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...P(t)})}function gl(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...P(t)})}function _l(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...P(t)})}function yl(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...P(t)})}function Sl(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...P(t)})}function Tl(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...P(t)})}function Rl(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...P(t)})}function Cl(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...P(t)})}function wl(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...P(t)})}function vl(e,t){return new e({type:"string",format:"date",check:"string_format",...P(t)})}function Al(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...P(t)})}function Ol(e,t){return new e({type:"string",format:"duration",check:"string_format",...P(t)})}function Il(e,t){return new e({type:"number",checks:[],...P(t)})}function bl(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...P(t)})}function $l(e,t){return new e({type:"boolean",...P(t)})}function Ll(e){return new e({type:"unknown"})}function Nl(e,t){return new e({type:"never",...P(t)})}function qo(e,t){return new ko({check:"less_than",...P(t),value:e,inclusive:!1})}function Wn(e,t){return new ko({check:"less_than",...P(t),value:e,inclusive:!0})}function Jo(e,t){return new xo({check:"greater_than",...P(t),value:e,inclusive:!1})}function Yn(e,t){return new xo({check:"greater_than",...P(t),value:e,inclusive:!0})}function ei(e,t){return new Wc({check:"multiple_of",...P(t),value:e})}function ti(e,t){return new Xc({check:"max_length",...P(t),maximum:e})}function fn(e,t){return new Qc({check:"min_length",...P(t),minimum:e})}function ni(e,t){return new qc({check:"length_equals",...P(t),length:e})}function Dl(e,t){return new Jc({check:"string_format",format:"regex",...P(t),pattern:e})}function kl(e){return new eu({check:"string_format",format:"lowercase",...P(e)})}function xl(e){return new tu({check:"string_format",format:"uppercase",...P(e)})}function Pl(e,t){return new nu({check:"string_format",format:"includes",...P(t),includes:e})}function Ul(e,t){return new ru({check:"string_format",format:"starts_with",...P(t),prefix:e})}function Ml(e,t){return new ou({check:"string_format",format:"ends_with",...P(t),suffix:e})}function bt(e){return new iu({check:"overwrite",tx:e})}function Gl(e){return bt(t=>t.normalize(e))}function zl(){return bt(e=>e.trim())}function Fl(){return bt(e=>e.toLowerCase())}function Hl(){return bt(e=>e.toUpperCase())}function jl(){return bt(e=>qa(e))}function Bl(e,t,n){return new e({type:"array",element:t,...P(n)})}function Zl(e,t,n){return new e({type:"custom",check:"custom",fn:t,...P(n)})}function Vl(e){const t=Kl(n=>(n.addIssue=r=>{if(typeof r=="string")n.issues.push(Vt(r,n.value,t._zod.def));else{const o=r;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),n.issues.push(Vt(o))}},e(n.value,n)));return t}function Kl(e,t){const n=new De({check:"custom",...P(t)});return n._zod.check=e,n}const Wl=f("ZodISODateTime",(e,t)=>{yu.init(e,t),me.init(e,t)});function Yl(e){return wl(Wl,e)}const Xl=f("ZodISODate",(e,t)=>{Su.init(e,t),me.init(e,t)});function Ql(e){return vl(Xl,e)}const ql=f("ZodISOTime",(e,t)=>{Tu.init(e,t),me.init(e,t)});function Jl(e){return Al(ql,e)}const ep=f("ZodISODuration",(e,t)=>{Ru.init(e,t),me.init(e,t)});function tp(e){return Ol(ep,e)}const np=(e,t)=>{Oo.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:n=>pc(e,n)},flatten:{value:n=>lc(e,n)},addIssue:{value:n=>{e.issues.push(n),e.message=JSON.stringify(e.issues,zn,2)}},addIssues:{value:n=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,zn,2)}},isEmpty:{get(){return e.issues.length===0}}})},Fe=f("ZodError",np,{Parent:Error}),rp=Bn(Fe),op=Zn(Fe),ip=an(Fe),sp=cn(Fe),ap=hc(Fe),cp=mc(Fe),up=Ec(Fe),lp=gc(Fe),pp=_c(Fe),dp=yc(Fe),fp=Sc(Fe),hp=Tc(Fe),ge=f("ZodType",(e,t)=>(he.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone(mt(t,{checks:[...t.checks??[],...n.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]})),e.clone=(n,r)=>at(e,n,r),e.brand=()=>e,e.register=((n,r)=>(n.add(e,r),e)),e.parse=(n,r)=>rp(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>ip(e,n,r),e.parseAsync=async(n,r)=>op(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>sp(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>ap(e,n,r),e.decode=(n,r)=>cp(e,n,r),e.encodeAsync=async(n,r)=>up(e,n,r),e.decodeAsync=async(n,r)=>lp(e,n,r),e.safeEncode=(n,r)=>pp(e,n,r),e.safeDecode=(n,r)=>dp(e,n,r),e.safeEncodeAsync=async(n,r)=>fp(e,n,r),e.safeDecodeAsync=async(n,r)=>hp(e,n,r),e.refine=(n,r)=>e.check(od(n,r)),e.superRefine=n=>e.check(id(n)),e.overwrite=n=>e.check(bt(n)),e.optional=()=>li(e),e.nullable=()=>pi(e),e.nullish=()=>li(pi(e)),e.nonoptional=n=>Qp(e,n),e.array=()=>oe(e),e.or=n=>$t([e,n]),e.and=n=>Fp(e,n),e.transform=n=>fi(e,Zp(n)),e.default=n=>Wp(e,n),e.prefault=n=>Xp(e,n),e.catch=n=>Jp(e,n),e.pipe=n=>fi(e,n),e.readonly=()=>nd(e),e.describe=n=>{const r=e.clone();return dn.add(r,{description:n}),r},Object.defineProperty(e,"description",{get(){return dn.get(e)?.description},configurable:!0}),e.meta=(...n)=>{if(n.length===0)return dn.get(e);const r=e.clone();return dn.add(r,n[0]),r},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),ri=f("_ZodString",(e,t)=>{Vn.init(e,t),ge.init(e,t);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...r)=>e.check(Dl(...r)),e.includes=(...r)=>e.check(Pl(...r)),e.startsWith=(...r)=>e.check(Ul(...r)),e.endsWith=(...r)=>e.check(Ml(...r)),e.min=(...r)=>e.check(fn(...r)),e.max=(...r)=>e.check(ti(...r)),e.length=(...r)=>e.check(ni(...r)),e.nonempty=(...r)=>e.check(fn(1,...r)),e.lowercase=r=>e.check(kl(r)),e.uppercase=r=>e.check(xl(r)),e.trim=()=>e.check(zl()),e.normalize=(...r)=>e.check(Gl(...r)),e.toLowerCase=()=>e.check(Fl()),e.toUpperCase=()=>e.check(Hl()),e.slugify=()=>e.check(jl())}),mp=f("ZodString",(e,t)=>{Vn.init(e,t),ri.init(e,t),e.email=n=>e.check(ol(Ep,n)),e.url=n=>e.check(Qo(ii,n)),e.jwt=n=>e.check(Cl(Lp,n)),e.emoji=n=>e.check(ul(gp,n)),e.guid=n=>e.check(Xo(oi,n)),e.uuid=n=>e.check(il(hn,n)),e.uuidv4=n=>e.check(sl(hn,n)),e.uuidv6=n=>e.check(al(hn,n)),e.uuidv7=n=>e.check(cl(hn,n)),e.nanoid=n=>e.check(ll(_p,n)),e.guid=n=>e.check(Xo(oi,n)),e.cuid=n=>e.check(pl(yp,n)),e.cuid2=n=>e.check(dl(Sp,n)),e.ulid=n=>e.check(fl(Tp,n)),e.base64=n=>e.check(Sl(Ip,n)),e.base64url=n=>e.check(Tl(bp,n)),e.xid=n=>e.check(hl(Rp,n)),e.ksuid=n=>e.check(ml(Cp,n)),e.ipv4=n=>e.check(El(wp,n)),e.ipv6=n=>e.check(gl(vp,n)),e.cidrv4=n=>e.check(_l(Ap,n)),e.cidrv6=n=>e.check(yl(Op,n)),e.e164=n=>e.check(Rl($p,n)),e.datetime=n=>e.check(Yl(n)),e.date=n=>e.check(Ql(n)),e.time=n=>e.check(Jl(n)),e.duration=n=>e.check(tp(n))});function I(e){return rl(mp,e)}const me=f("ZodStringFormat",(e,t)=>{le.init(e,t),ri.init(e,t)}),Ep=f("ZodEmail",(e,t)=>{lu.init(e,t),me.init(e,t)}),oi=f("ZodGUID",(e,t)=>{cu.init(e,t),me.init(e,t)}),hn=f("ZodUUID",(e,t)=>{uu.init(e,t),me.init(e,t)}),ii=f("ZodURL",(e,t)=>{pu.init(e,t),me.init(e,t)});function Xn(e){return Qo(ii,e)}const gp=f("ZodEmoji",(e,t)=>{du.init(e,t),me.init(e,t)}),_p=f("ZodNanoID",(e,t)=>{fu.init(e,t),me.init(e,t)}),yp=f("ZodCUID",(e,t)=>{hu.init(e,t),me.init(e,t)}),Sp=f("ZodCUID2",(e,t)=>{mu.init(e,t),me.init(e,t)}),Tp=f("ZodULID",(e,t)=>{Eu.init(e,t),me.init(e,t)}),Rp=f("ZodXID",(e,t)=>{gu.init(e,t),me.init(e,t)}),Cp=f("ZodKSUID",(e,t)=>{_u.init(e,t),me.init(e,t)}),wp=f("ZodIPv4",(e,t)=>{Cu.init(e,t),me.init(e,t)}),vp=f("ZodIPv6",(e,t)=>{wu.init(e,t),me.init(e,t)}),Ap=f("ZodCIDRv4",(e,t)=>{vu.init(e,t),me.init(e,t)}),Op=f("ZodCIDRv6",(e,t)=>{Au.init(e,t),me.init(e,t)}),Ip=f("ZodBase64",(e,t)=>{Ou.init(e,t),me.init(e,t)}),bp=f("ZodBase64URL",(e,t)=>{bu.init(e,t),me.init(e,t)}),$p=f("ZodE164",(e,t)=>{$u.init(e,t),me.init(e,t)}),Lp=f("ZodJWT",(e,t)=>{Nu.init(e,t),me.init(e,t)}),si=f("ZodNumber",(e,t)=>{Uo.init(e,t),ge.init(e,t),e.gt=(r,o)=>e.check(Jo(r,o)),e.gte=(r,o)=>e.check(Yn(r,o)),e.min=(r,o)=>e.check(Yn(r,o)),e.lt=(r,o)=>e.check(qo(r,o)),e.lte=(r,o)=>e.check(Wn(r,o)),e.max=(r,o)=>e.check(Wn(r,o)),e.int=r=>e.check(Ze(r)),e.safe=r=>e.check(Ze(r)),e.positive=r=>e.check(Jo(0,r)),e.nonnegative=r=>e.check(Yn(0,r)),e.negative=r=>e.check(qo(0,r)),e.nonpositive=r=>e.check(Wn(0,r)),e.multipleOf=(r,o)=>e.check(ei(r,o)),e.step=(r,o)=>e.check(ei(r,o)),e.finite=()=>e;const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function mn(e){return Il(si,e)}const Np=f("ZodNumberFormat",(e,t)=>{Du.init(e,t),si.init(e,t)});function Ze(e){return bl(Np,e)}const Dp=f("ZodBoolean",(e,t)=>{ku.init(e,t),ge.init(e,t)});function ee(e){return $l(Dp,e)}const kp=f("ZodUnknown",(e,t)=>{xu.init(e,t),ge.init(e,t)});function ai(){return Ll(kp)}const xp=f("ZodNever",(e,t)=>{Pu.init(e,t),ge.init(e,t)});function Pp(e){return Nl(xp,e)}const Up=f("ZodArray",(e,t)=>{Uu.init(e,t),ge.init(e,t),e.element=t.element,e.min=(n,r)=>e.check(fn(n,r)),e.nonempty=n=>e.check(fn(1,n)),e.max=(n,r)=>e.check(ti(n,r)),e.length=(n,r)=>e.check(ni(n,r)),e.unwrap=()=>e.element});function oe(e,t){return Bl(Up,e,t)}const Mp=f("ZodObject",(e,t)=>{Gu.init(e,t),ge.init(e,t),ie(e,"shape",()=>t.shape),e.keyof=()=>Ee(Object.keys(e._zod.def.shape)),e.catchall=n=>e.clone({...e._zod.def,catchall:n}),e.passthrough=()=>e.clone({...e._zod.def,catchall:ai()}),e.loose=()=>e.clone({...e._zod.def,catchall:ai()}),e.strict=()=>e.clone({...e._zod.def,catchall:Pp()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=n=>ic(e,n),e.safeExtend=n=>sc(e,n),e.merge=n=>ac(e,n),e.pick=n=>rc(e,n),e.omit=n=>oc(e,n),e.partial=(...n)=>cc(ui,e,n[0]),e.required=(...n)=>uc(di,e,n[0])});function R(e,t){const n={type:"object",shape:e??{},...P(t)};return new Mp(n)}const ci=f("ZodUnion",(e,t)=>{Ho.init(e,t),ge.init(e,t),e.options=t.options});function $t(e,t){return new ci({type:"union",options:e,...P(t)})}const Gp=f("ZodDiscriminatedUnion",(e,t)=>{ci.init(e,t),zu.init(e,t)});function nt(e,t,n){return new Gp({type:"union",options:t,discriminator:e,...P(n)})}const zp=f("ZodIntersection",(e,t)=>{Fu.init(e,t),ge.init(e,t)});function Fp(e,t){return new zp({type:"intersection",left:e,right:t})}const Hp=f("ZodRecord",(e,t)=>{Hu.init(e,t),ge.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function Ye(e,t,n){return new Hp({type:"record",keyType:e,valueType:t,...P(n)})}const Qn=f("ZodEnum",(e,t)=>{ju.init(e,t),ge.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(r,o)=>{const s={};for(const i of r)if(n.has(i))s[i]=t.entries[i];else throw new Error(`Key ${i} not found in enum`);return new Qn({...t,checks:[],...P(o),entries:s})},e.exclude=(r,o)=>{const s={...t.entries};for(const i of r)if(n.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new Qn({...t,checks:[],...P(o),entries:s})}});function Ee(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map(r=>[r,r])):e;return new Qn({type:"enum",entries:n,...P(t)})}const jp=f("ZodLiteral",(e,t)=>{Bu.init(e,t),ge.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function x(e,t){return new jp({type:"literal",values:Array.isArray(e)?e:[e],...P(t)})}const Bp=f("ZodTransform",(e,t)=>{Zu.init(e,t),ge.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new To(e.constructor.name);n.addIssue=s=>{if(typeof s=="string")n.issues.push(Vt(s,n.value,t));else{const i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=n.value),i.inst??(i.inst=e),n.issues.push(Vt(i))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then(s=>(n.value=s,n)):(n.value=o,n)}});function Zp(e){return new Bp({type:"transform",transform:e})}const ui=f("ZodOptional",(e,t)=>{Vu.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType});function li(e){return new ui({type:"optional",innerType:e})}const Vp=f("ZodNullable",(e,t)=>{Ku.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType});function pi(e){return new Vp({type:"nullable",innerType:e})}const Kp=f("ZodDefault",(e,t)=>{Wu.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Wp(e,t){return new Kp({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():vo(t)}})}const Yp=f("ZodPrefault",(e,t)=>{Yu.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Xp(e,t){return new Yp({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():vo(t)}})}const di=f("ZodNonOptional",(e,t)=>{Xu.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Qp(e,t){return new di({type:"nonoptional",innerType:e,...P(t)})}const qp=f("ZodCatch",(e,t)=>{Qu.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Jp(e,t){return new qp({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const ed=f("ZodPipe",(e,t)=>{qu.init(e,t),ge.init(e,t),e.in=t.in,e.out=t.out});function fi(e,t){return new ed({type:"pipe",in:e,out:t})}const td=f("ZodReadonly",(e,t)=>{Ju.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType});function nd(e){return new td({type:"readonly",innerType:e})}const rd=f("ZodCustom",(e,t)=>{el.init(e,t),ge.init(e,t)});function od(e,t={}){return Zl(rd,e,t)}function id(e){return Vl(e)}const sd={url:"must be a valid URL",email:"must be a valid email address"},ad=e=>{const t=e?.at(-1);return typeof t=="string"?`'${t}'`:"Field"},cd=e=>e===null?"null":typeof e,ud=e=>{switch(e.code){case"invalid_type":{const{input:t}=e;return t===void 0?{message:`${ad(e.path)} is required`}:{message:`Expected ${String(e.expected)}, received ${cd(t)}`}}case"invalid_format":{const t=sd[e.format];return t?{message:t}:void 0}case"unrecognized_keys":return{message:`Unrecognized property: ${e.keys.map(t=>`'${t}'`).join(", ")}`};case"invalid_union":{const t=e.path?.at(-1);return typeof t=="string"?{message:`'${t}' is required or has invalid value`}:void 0}case"invalid_value":{const{values:t}=e;return t?{message:`Expected one of: ${t.map(n=>`'${String(n)}'`).join(", ")}`}:void 0}case"invalid_key":{const t=e.issues?.[0];return t?{message:t.message}:void 0}default:return}},W={TEXTAREA:"TEXTAREA",INPUTBOX:"INPUTBOX",SELECTBOX:"SELECTBOX",IMAGE:"IMAGE",TOGGLE:"TOGGLE",BUTTON:"BUTTON",DECK:"DECK",MENU:"MENU",NAVIGATION_MENU:"NAVIGATION_MENU",LOGO:"LOGO",INFO:"INFO",DIVIDER:"DIVIDER",PRODUCT_SELECTOR:"PRODUCT_SELECTOR",CATEGORY_SELECTOR:"CATEGORY_SELECTOR"};Ee(Object.values(W));const ne={TEXT:"TEXT",BUTTON:"BUTTON",IMAGE:"IMAGE",TOGGLE:"TOGGLE",SELECTBOX:"SELECTBOX",BACKGROUND:"BACKGROUND",COLOR_PICKER:"COLOR_PICKER",LOGO:"LOGO",DIVIDER:"DIVIDER"};Ee(Object.values(ne));const Lt={SECTION:"SECTION",HEADER:"HEADER",FOOTER:"FOOTER"},ld=Ee(Object.values(Lt)),Kt={CONTENT:"Content",DESIGN:"Design"};Ee(Object.values(Kt));const pd={TEXT:"TEXT",IMAGE:"IMAGE"},dd=Ee(Object.values(pd)),ut={SCROLL_TO_TILE:"SCROLL_TO_TILE",HYPER_LINK:"HYPER_LINK",MAIL_LINK:"MAIL_LINK",TEL_LINK:"TEL_LINK",GO_TO_STORE:"GO_TO_STORE",GO_TO_STORE_LINK:"GO_TO_STORE_LINK",GO_TO_PAGE:"GO_TO_PAGE",GO_TO_CATEGORY:"GO_TO_CATEGORY",GO_TO_CATEGORY_LINK:"GO_TO_CATEGORY_LINK"},fd=Ee(Object.values(ut)),En={COLOR:"COLOR",GRADIENT:"GRADIENT",NONE:"NONE"},hd=Ee(Object.values(En)),md={SOLID:"SOLID",OUTLINE:"OUTLINE",TEXT:"TEXT"},Ed=Ee(Object.values(md)),gd={SMALL:"SMALL",MEDIUM:"MEDIUM",LARGE:"LARGE"},_d=Ee(Object.values(gd)),yd={ROUND_CORNER:"ROUND_CORNER",RECTANGLE:"RECTANGLE",PILL:"PILL"},Sd=Ee(Object.values(yd)),qn={COLOR:"COLOR",GRADIENT:"GRADIENT"},Td=Ee(Object.values(qn));Ee(["none","all","small"]);const Xe={PRODUCT:"PRODUCT",CATALOG:"CATALOG",CATEGORY:"CATEGORY",HOME:"HOME",CUSTOM:"CUSTOM"},hi={HOME:"home",CATALOG:"catalog",CATEGORY:"category",PRODUCT:"product"},Rd=Ee(Object.values(Xe));Ee(Object.values(hi));const Cd={apparel_footwear:"apparel_footwear",vape_smoke:"vape_smoke",home_garden:"home_garden",sport_outdoor:"sport_outdoor",jewelry_accessories:"jewelry_accessories",pet_animals:"pet_animals",bikes:"bikes",health_beauty:"health_beauty",gift_shop:"gift_shop",electronics:"electronics",other:"other"},wd=Ee(Object.values(Cd)),vd={HEADER_LEFT:"HEADER_LEFT",HEADER_CENTER_LOGO_BURGER:"HEADER_CENTER_LOGO_BURGER",HEADER_CENTER_LOGO_COMPACT:"HEADER_CENTER_LOGO_COMPACT",HEADER_CENTER_LOGO_DETAILED:"HEADER_CENTER_LOGO_DETAILED",HEADER_LEFT_LOGO_BURGER:"HEADER_LEFT_LOGO_BURGER",HEADER_LEFT_LOGO_COMPACT:"HEADER_LEFT_LOGO_COMPACT",HEADER_LEFT_LOGO_DETAILED:"HEADER_LEFT_LOGO_DETAILED",HEADER_LEFT_LOGO_SEARCH:"HEADER_LEFT_LOGO_SEARCH",HEADER_LEFT_LOGO_TEXT:"HEADER_LEFT_LOGO_TEXT",TEXT_ONE_COLUMN:"TEXT_ONE_COLUMN",TEXT_TITLE_LEFT:"TEXT_TITLE_LEFT",TEXT_SUBTITLE_RIGHT:"TEXT_SUBTITLE_RIGHT",TEXT_TWO_COLUMNS:"TEXT_TWO_COLUMNS",TEXT_CENTER:"TEXT_CENTER",TEXT_DESCRIPTION_RIGHT:"TEXT_DESCRIPTION_RIGHT",CTA_BANNER_LEFT:"CTA_BANNER_LEFT",CTA_BANNER_RIGHT:"CTA_BANNER_RIGHT",CTA_BANNER_CENTER:"CTA_BANNER_CENTER",CTA_BANNER_BOTTOM:"CTA_BANNER_BOTTOM",CTA_PROMO_BAR_LEFT:"CTA_PROMO_BAR_LEFT",CTA_PROMO_BAR_RIGHT:"CTA_PROMO_BAR_RIGHT",CTA_STORY_LEFT:"CTA_STORY_LEFT",CTA_STORY_RIGHT:"CTA_STORY_RIGHT",CTA_FULLWIDTH_CENTER:"CTA_FULLWIDTH_CENTER",CTA_FULLWIDTH_LEFT:"CTA_FULLWIDTH_LEFT",COVER_FULLSCREEN_CENTER:"COVER_FULLSCREEN_CENTER",COVER_FULLSCREEN_LEFT:"COVER_FULLSCREEN_LEFT",COVER_FULLSCREEN_CENTER_LEFT:"COVER_FULLSCREEN_CENTER_LEFT",COVER_FULLSCREEN_RIGHT:"COVER_FULLSCREEN_RIGHT",COVER_FULLSCREEN_BOTTOM:"COVER_FULLSCREEN_BOTTOM",COVER_FULLSCREEN_BOTTOM_RIGHT:"COVER_FULLSCREEN_BOTTOM_RIGHT",COVER_FULLSCREEN_BOTTOM_LEFT:"COVER_FULLSCREEN_BOTTOM_LEFT",COVER_FULLSCREEN_TOP:"COVER_FULLSCREEN_TOP",COVER_SIDEBAR_RIGHT:"COVER_SIDEBAR_RIGHT",COVER_SIDEBAR_LEFT:"COVER_SIDEBAR_LEFT",COVER_HALFSCREEN_LEFT:"COVER_HALFSCREEN_LEFT",COVER_HALFSCREEN_CENTER:"COVER_HALFSCREEN_CENTER",COVER_COLLAGE_BOTTOM:"COVER_COLLAGE_BOTTOM",COVER_COLLAGE_LEFT:"COVER_COLLAGE_LEFT",IMAGE_SUBTITLE_RIGHT:"IMAGE_SUBTITLE_RIGHT",IMAGE_TITLE_LEFT:"IMAGE_TITLE_LEFT",IMAGE_LEFT:"IMAGE_LEFT",IMAGE_RIGHT:"IMAGE_RIGHT",IMAGE_CENTER:"IMAGE_CENTER",IMAGE_SIDE_TITLE:"IMAGE_SIDE_TITLE",LOCATION_MAP_RIGHT:"LOCATION_MAP_RIGHT",LOCATION_MAP_LEFT:"LOCATION_MAP_LEFT",LOCATION_IMAGE_RIGHT:"LOCATION_IMAGE_RIGHT",LOCATION_IMAGE_LEFT:"LOCATION_IMAGE_LEFT",LOCATION_BACKGROUND_RIGHT:"LOCATION_BACKGROUND_RIGHT",LOCATION_BACKGROUND_LEFT:"LOCATION_BACKGROUND_LEFT",LOCATION_FULL:"LOCATION_FULL",LOCATION_SHORT:"LOCATION_SHORT",REVIEWS_MINIMAL:"REVIEWS_MINIMAL",REVIEWS_CARDS:"REVIEWS_CARDS",REVIEWS:"REVIEWS",REVIEWS_CLASSIC:"REVIEWS_CLASSIC",REVIEWS_FULLSCREEN_BG:"REVIEWS_FULLSCREEN_BG",REVIEWS_FULLSCREEN_SIDEBAR_LEFT:"REVIEWS_FULLSCREEN_SIDEBAR_LEFT",REVIEWS_FULLSCREEN_SIDEBAR_RIGHT:"REVIEWS_FULLSCREEN_SIDEBAR_RIGHT",REVIEWS_CARDS_PHOTO:"REVIEWS_CARDS_PHOTO",REVIEWS_PHOTO_SPEECH_RIGHT:"REVIEWS_PHOTO_SPEECH_RIGHT",REVIEWS_PHOTO_SPEECH_LEFT:"REVIEWS_PHOTO_SPEECH_LEFT",REVIEWS_SOCIAL_FEED:"REVIEWS_SOCIAL_FEED",REVIEWS_ADAPTIVE:"REVIEWS_ADAPTIVE",FEATURES_CLASSIC_CENTER:"FEATURES_CLASSIC_CENTER",FEATURES_CLASSIC_LEFT:"FEATURES_CLASSIC_LEFT",FEATURES_ACCORDION:"FEATURES_ACCORDION",FEATURES_MINIMAL:"FEATURES_MINIMAL",FEATURES_SMALL_ICONS:"FEATURES_SMALL_ICONS",FEATURES_CAROUSEL:"FEATURES_CAROUSEL",FEATURES_IMAGE_LEFT:"FEATURES_IMAGE_LEFT",FEATURES_IMAGE_RIGHT:"FEATURES_IMAGE_RIGHT",ANNOUNCEMENT_CENTER:"ANNOUNCEMENT_CENTER",SLIDER_FULLSCREEN_CENTER:"SLIDER_FULLSCREEN_CENTER",SLIDER_FULLSCREEN_LEFT:"SLIDER_FULLSCREEN_LEFT",SLIDER_BASIC:"SLIDER_BASIC",SLIDER_CAROUSEL:"SLIDER_CAROUSEL",SLIDER_CAROUSEL_PORTRAIT:"SLIDER_CAROUSEL_PORTRAIT",SLIDER_SPLIT:"SLIDER_SPLIT",SLIDER_SPLIT_REVERSE:"SLIDER_SPLIT_REVERSE"},Ad=Ee(Object.values(vd)),Od={HEADER:"header",COVER:"cover",ANNOUNCEMENT_BAR:"announcement_bar",SLIDER:"slider",SPECIAL_OFFER:"special_offer",CUSTOMER_REVIEW:"customer_review",COMPANY_INFO:"company_info",SHIPPING_PAYMENT:"shipping_payment",LOCATION:"location",STORE:"store",FOOTER:"footer",VIDEO:"video",IMAGE_GALLERY:"image_gallery",CONTACT_INFO:"contact_info",CONTACTS_WIDGET_WHATSAPP:"contacts_widget_whatsapp",CONTACTS_WIDGET_INSTAGRAM:"contacts_widget_instagram",CONTACTS_WIDGET_FACEBOOK:"contacts_widget_facebook",CONTACTS_WIDGET_PHONE:"contacts_widget_phone"},Id={COVER:"COVER",ANNOUNCEMENT:"ANNOUNCEMENT",STORE:"STORE",SLIDER:"SLIDER",VIDEO:"VIDEO",SPECIAL_OFFER:"SPECIAL_OFFER",CUSTOMER_REVIEW:"CUSTOMER_REVIEW",COMPANY_INFO:"COMPANY_INFO",SHIPPING_PAYMENT:"SHIPPING_PAYMENT",LOCATION:"LOCATION",COLLECTIONS:"COLLECTIONS",BRANDS:"BRANDS",CONTACT_INFO:"CONTACT_INFO"},bd=Ee(Object.values(Id)),Et={REQUIRED_HEADER_ID:()=>'Header section must have id "header" when type is "default"',REQUIRED_CUSTOM_HEADER:(...e)=>`Custom header section with id "${e[0]}" must exist in headers directory`,REQUIRED_CUSTOM_HEADER_TYPE:(...e)=>`Custom header section with id "${e[0]}" must be of type "HEADER"`,REQUIRED_FOOTER_ID:()=>'Footer section must have id "footer" when type is "default"',REQUIRED_CUSTOM_FOOTER:(...e)=>`Custom footer section with id "${e[0]}" must exist in footers directory`,REQUIRED_CUSTOM_FOOTER_TYPE:(...e)=>`Custom footer section with id "${e[0]}" must be of type "FOOTER"`,REQUIRED_PAGE_SECTION:(...e)=>`Custom section with id "${e[0]}" must exist in sections directory`,REQUIRED_PAGE_SECTION_TYPE:()=>'Section "header" or "footer" is not allowed among page sections',SHOWCASE_ID_NOT_FOUND:(...e)=>`Showcase with id "${e[0]}" must exist in section's showcase directory`,SHOWCASE_OVERRIDE_CONTENT:(...e)=>`Content editor "${e[0]}" in showcase_overrides must exist in section's content configuration file`,SHOWCASE_OVERRIDE_DESIGN:(...e)=>`Design editor "${e[0]}" in showcase_overrides must exist in section's design configuration file`,SHOWCASE_OVERRIDE_LAYOUT:(...e)=>`LayoutId "${e[0]}" in showcase_overrides must exist in section's layout configuration file`,INVALID_SHOWCASE_CONTENT_ELEMENT:(...e)=>`Element "${e[0]}" is not defined in content.ts`,SHOWCASE_CONTENT_ELEMENT_TYPE_MISMATCH:(...e)=>`Element "${e[0]}" type mismatch: showcase has type "${e[1]}" but content.ts has type "${e[2]}"`,INVALID_SHOWCASE_DESIGN_ELEMENT:(...e)=>`Element "${e[0]}" is not defined in design.ts`,SHOWCASE_DESIGN_ELEMENT_TYPE_MISMATCH:(...e)=>`Element "${e[0]}" type mismatch: showcase has type "${e[1]}" but design.ts has type "${e[2]}"`,INVALID_DECK_CARD_SETTING:(...e)=>`Setting "${e[0]}" is not defined in content.ts defaultCardContent.settings`,INVALID_SELECTBOX_OPTION:(...e)=>`Option value "${e[0]}" for element "${e[1]}" is not defined in content.ts options`,REQUIRED_STORE_LAYOUT:(...e)=>`Store section with id "${e[0]}" and page type "${e[1]}" must have a corresponding layout defined`,INVALID_STORE_SECTION_ID:(...e)=>`Store layout sectionId "${e[0]}" must be one of: ${e[1]}`,REQUIRED_SECTION_ASSET:(...e)=>`Asset size ${e[0]} exceeds threshold of ${e[1]}.`,REQUIRED_SERVER_SIZE:(...e)=>`Size of individual server file [${e[0]}] must not exceed threshold [${e[1]}].`,MISSING_IMAGE_ASSET:(...e)=>`Image ${e[0]} is missing from assets folder`,MANDATORY_SETTING_TYPE_MISMATCH:(...e)=>`Editor type "${e[0]}" for reserved key "${e[1]}" does not match the required type "${e[2]}".`,MANDATORY_SETTING_NAME_MISMATCH:(...e)=>`Editor key "${e[0]}" for overridden content type "${e[1]}" does not match the required key name "${e[2]}".`,DUPLICATED_MANDATORY_SETTING:(...e)=>`Editor type "${e[0]}" can only be used once.`,IMAGE_EDITOR_STATIC_MISMATCH:(...e)=>`Both "${e[0]}" content and design editor need to have same value for attribute static`,COLOR_REQUIRED_GRADIENT:()=>"color is required when overlay is GRADIENT",COLOR_MUST_BE_ARRAY_GRADIENT:()=>"color must be an array when overlay is GRADIENT",COLOR_ARRAY_LENGTH_GRADIENT:()=>"color array must have exactly 2 items when overlay is GRADIENT",COLOR_REQUIRED_COLOR:()=>"color is required when overlay is COLOR",COLOR_MUST_BE_SINGLE_COLOR:()=>"color must be a single value when overlay is COLOR",COLOR_MUST_BE_UNDEFINED_NONE:()=>"color must be undefined when overlay is NONE or not set",COLOR_REQUIRED_STYLE_GRADIENT:()=>"color is required when style is GRADIENT",COLOR_MUST_BE_ARRAY_STYLE_GRADIENT:()=>"color must be an array when style is GRADIENT",COLOR_ARRAY_LENGTH_STYLE_GRADIENT:()=>"color array must have exactly 2 items when style is GRADIENT",COLOR_REQUIRED_STYLE_COLOR:()=>"color is required when style is COLOR",COLOR_MUST_BE_SINGLE_STYLE_COLOR:()=>"color must be a single value when style is COLOR",BUTTON_LINK_REQUIRED:()=>"link is required when buttonType is HYPER_LINK",BUTTON_CATEGORY_ID_REQUIRED:()=>"categoryId is required when buttonType is GO_TO_CATEGORY or GO_TO_CATEGORY_LINK",BUTTON_EMAIL_REQUIRED:()=>"email is required when buttonType is MAIL_LINK",BUTTON_PHONE_REQUIRED:()=>"phone is required when buttonType is TEL_LINK",BUTTON_TILE_ID_REQUIRED:(...e)=>`${e[0]} is required when buttonType is SCROLL_TO_TILE`,BUTTON_PAGE_ID_REQUIRED:()=>"pageIdForNavigate is required when type is GO_TO_PAGE",TEMPLATE_PAGE_SECTIONS_REQUIRED:()=>"sections must contain at least one section",TEMPLATE_PAGE_SINGLE_SECTION_REQUIRED:(...e)=>`Page type "${e[0]}" must have exactly one section`,TEMPLATE_PAGE_STORE_SECTION_REQUIRED:(...e)=>`Page type "${e[0]}" must have a section of type "store"`,TEMPLATE_PAGE_NO_STORE_SECTIONS:(...e)=>`Page type "${e[0]}" cannot contain store sections`,TEMPLATE_PAGE_CUSTOM_METADATA_REQUIRED:()=>'Page type "CUSTOM" must have a metadata property',TEMPLATE_PAGE_METADATA_NOT_ALLOWED:(...e)=>`Page type "${e[0]}" must not have a metadata property`,NON_NEGATIVE_INTEGER:()=>"must be a non-negative integer",INTEGER_RANGE:(...e)=>`must be between ${e[0]} and ${e[1]}`,VALID_HEX_COLOR:()=>"must be a valid hex color (#RGB, #RRGGBB, or #RRGGBBAA)",VALID_LANGUAGE_CODE:()=>"must be a valid language code (e.g., en, nl, fr, en_US, en_GB, zh_Hans)",VALID_URL:()=>"must be a valid URL",VALID_EMAIL:()=>"must be a valid email address"},$d=/^#([a-fA-F0-9]{8}|[a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/,Ld=/^[a-z]{2}(_([a-z]{2}|[A-Z]{2}|[0-9]{3}))?$/,lt=(e,t)=>{const n=Et.INTEGER_RANGE(e.toString(),t.toString());return Ze().min(e,{message:n}).max(t,{message:n})},Jn=R({path:I(),size:mn().nonnegative()}).strict(),mi=R({size:mn().nonnegative()}).strict(),B=I().regex(/^\$.+/,{message:"must start with '$' followed by at least one character"}),Nd=R({r:lt(0,255),g:lt(0,255),b:lt(0,255),a:lt(0,1)}).strict(),er=I().regex($d,{message:Et.VALID_HEX_COLOR()}),Ue=$t([er,Ee(["global.color.title","global.color.body","global.color.button","global.color.link","global.color.background"])]),Ei=Ee(["global.textSize.title","global.textSize.subtitle","global.textSize.body"]),Wt=Ee(["catalog","category","product"]),Dd=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;function tr(e){return e===Xe.PRODUCT||e===Xe.CATALOG||e===Xe.CATEGORY}function gi(e,t,n){if(!e)return;const r=ua({path:"$..set..url",json:e,resultType:"all"}),o=/^https?:\/\//;r.forEach(s=>{const i=s.value;if(!o.test(i)&&!t.includes(i)){const a=s.pointer.split("/").filter(c=>c.length>0);n.at(a).addIssue("MISSING_IMAGE_ASSET",i)}})}function _i(e,t,n){e===ut.HYPER_LINK&&!t&&n.at("link").addIssue("BUTTON_LINK_REQUIRED")}function yi(e,t,n){(e===ut.GO_TO_CATEGORY||e===ut.GO_TO_CATEGORY_LINK)&&!t&&n.at("categoryId").addIssue("BUTTON_CATEGORY_ID_REQUIRED")}function Si(e,t,n){e===ut.MAIL_LINK&&!t&&n.at("email").addIssue("BUTTON_EMAIL_REQUIRED")}function Ti(e,t,n){e===ut.TEL_LINK&&!t&&n.at("phone").addIssue("BUTTON_PHONE_REQUIRED")}function Ri(e,t,n,r){if(e===ut.SCROLL_TO_TILE&&!(t??n)){const o=t?"tileId":"tileIdForScroll";r.at(o).addIssue("BUTTON_TILE_ID_REQUIRED",o)}}function kd(e,t,n){e===ut.GO_TO_PAGE&&!t&&n.at("pageIdForNavigate").addIssue("BUTTON_PAGE_ID_REQUIRED")}const xd="custom";function Qe(e,t=[]){const n=o=>Array.isArray(o)?o:[o],r=n(t);return{raw:e,addIssue(o,...s){e.addIssue({code:xd,message:Et[o](...s),path:r,params:{errorMessageKey:o}})},at(o){const s=r.concat(n(o));return Qe(e,s)}}}const nr=R({type:x(W.BUTTON),title:B,buttonType:fd,link:I().optional(),linkTarget:I().optional(),email:I().regex(Dd,{message:Et.VALID_EMAIL()}).optional(),phone:I().optional(),tileId:I().optional(),categoryId:mn().optional()}).strict().superRefine((e,t)=>{const n=Qe(t);_i(e.buttonType,e.link,n),yi(e.buttonType,e.categoryId,n),Si(e.buttonType,e.email,n),Ti(e.buttonType,e.phone,n),Ri(e.buttonType,e.tileId,void 0,n)}),Ci=R({type:x(W.BUTTON),label:B,defaults:nr.optional()}).strict(),rr=R({type:x(W.CATEGORY_SELECTOR)}).strict(),wi=R({type:x(W.CATEGORY_SELECTOR),label:B,maxCategories:lt(1,32),defaults:rr.optional()}).strict(),or=R({type:x(W.DIVIDER)}).strict(),vi=R({type:x(W.DIVIDER),label:B,defaults:or.optional()}).strict(),Yt=R({url:I(),width:Ze().min(0,{message:Et.NON_NEGATIVE_INTEGER()}).optional(),height:Ze().min(0,{message:Et.NON_NEGATIVE_INTEGER()}).optional()}).strict(),Pd=R({homogeneity:ee().optional(),color:Nd.optional()}).strict(),Ud=R({ORIGINAL:Yt.optional(),WEBP_LOW_RES:Yt.optional(),WEBP_HI_2X_RES:Yt.optional(),MOBILE_WEBP_LOW_RES:Yt.optional(),MOBILE_WEBP_HI_RES:Yt.optional()}).strict().refine(e=>Object.keys(e).length>=1,{message:"set must have at least one property"}),gn=R({set:Ud,borderInfo:Pd.optional()}).strict(),ir=R({type:x(W.IMAGE),imageData:gn}).strict(),Ai=R({type:x(W.IMAGE),label:B,static:ee().optional(),defaults:ir.optional()}).strict(),Md=R({label:B,link:Xn()}).strict(),Gd=R({title:B.optional(),link:Xn().optional()}).strict(),sr=R({type:x(W.INFO),text:B.optional(),button:Gd.optional()}).strict(),Oi=R({type:x(W.INFO),label:B,description:B,button:Md.optional(),defaults:sr.optional()}).strict(),ar=R({type:x(W.INPUTBOX),text:B}).strict(),Ii=R({type:x(W.INPUTBOX),label:B,placeholder:B,defaults:ar.optional()}).strict(),cr=R({type:x(W.PRODUCT_SELECTOR)}).strict(),bi=R({type:x(W.PRODUCT_SELECTOR),label:B,maxProducts:lt(1,32),defaults:cr.optional()}).strict(),ur=R({type:x(W.SELECTBOX),value:I()}).strict(),zd=R({value:I().min(1,{message:"value must not be empty"}),label:B}).strict(),$i=R({type:x(W.SELECTBOX),label:B,placeholder:B,description:B,options:oe(zd).min(1,{message:"must have at least one option"}),defaults:ur.optional()}).strict(),lr=R({type:x(W.TEXTAREA),text:B}).strict(),Li=R({type:x(W.TEXTAREA),label:B,placeholder:B,defaults:lr.optional()}).strict(),pr=R({type:x(W.TOGGLE),enabled:ee()}).strict(),Ni=R({type:x(W.TOGGLE),label:B,description:B,defaults:pr.optional()}).strict(),Fd=R({type:x(W.DECK)}).strict(),Hd=nt("type",[ar,lr,nr,ir,pr,ur,or,sr,cr,rr]),jd=R({type:x(W.DECK),cards:oe(R({settings:Ye(I(),Hd).refine(e=>Object.keys(e).length>=1,{message:"settings must have at least one property"})}).strict()).min(1,{message:"cards must have at least one card"})}).strict(),Bd=R({type:x(W.DECK),label:B,addButtonLabel:B,maxCards:Ze().min(1,{message:"must be a positive integer"}),cards:R({defaultCardContent:R({label:B,settings:Ye(I(),nt("type",[Ii,Li,Ci,Ai,Ni,$i,vi,Oi,wi,bi])).refine(e=>Object.keys(e).length>=1,{message:"settings must have at least one property"})}).strict()}).strict(),defaults:Fd.optional()}).strict(),Di=R({type:x(W.LOGO),logoType:dd.optional(),text:B.optional(),imageData:gn.optional()}).strict(),Zd=R({type:x(W.LOGO),label:B.optional(),defaults:Di.optional()}).strict(),ki=R({id:I(),title:I().optional(),type:I().optional(),link:I().optional(),email:I().optional(),phone:I().optional(),tileIdForScroll:I().optional(),pageIdForNavigate:I().optional(),showStoreCategories:ee().optional(),isSubmenuOpened:ee().optional(),categoryId:mn().optional()}).strict().superRefine((e,t)=>{const n=Qe(t);_i(e.type,e.link,n),yi(e.type,e.categoryId,n),Si(e.type,e.email,n),Ti(e.type,e.phone,n),Ri(e.type,void 0,e.tileIdForScroll,n),kd(e.type,e.pageIdForNavigate,n)}),xi=R({type:x(W.MENU),items:oe(ki).optional()}).strict(),Vd=R({type:x(W.MENU),label:B.optional(),defaults:xi.optional()}).strict(),Pi=R({type:x(W.NAVIGATION_MENU),items:oe(ki).optional()}).strict(),Kd=R({type:x(W.NAVIGATION_MENU),defaults:Pi.optional()}).strict(),Wd=nt("type",[Ii,Li,Ci,Ai,Ni,$i,Bd,Vd,Kd,Zd,vi,Oi,bi,wi]),Ui=Ye(I(),Wd),dr=R({type:x(ne.BACKGROUND),style:Td.optional(),color:$t([Ue,oe(Ue)]).optional()}).strict().superRefine((e,t)=>{const n=Qe(t).at("color");e.style===qn.GRADIENT?e.color===void 0?n.addIssue("COLOR_REQUIRED_STYLE_GRADIENT"):Array.isArray(e.color)?e.color.length!==2&&n.addIssue("COLOR_ARRAY_LENGTH_STYLE_GRADIENT"):n.addIssue("COLOR_MUST_BE_ARRAY_STYLE_GRADIENT"):e.style===qn.COLOR&&(e.color===void 0?n.addIssue("COLOR_REQUIRED_STYLE_COLOR"):Array.isArray(e.color)&&n.addIssue("COLOR_MUST_BE_SINGLE_STYLE_COLOR"))}),Yd=R({type:x(ne.BACKGROUND),fieldName:I(),defaults:dr.optional()}).strict(),Xd=R({type:x(ne.BACKGROUND),label:B,colors:oe(Ue).optional(),enableAlphaColor:ee().optional(),enableAutoColor:ee().optional(),defaults:dr.optional()}).strict(),fr=R({type:x(ne.BUTTON),appearance:Ed.optional(),size:_d.optional(),shape:Sd.optional(),font:I().optional(),color:Ue.optional(),visible:ee().optional()}).strict(),Qd=R({type:x(ne.BUTTON),fieldName:I(),defaults:fr.optional()}).strict(),qd=R({type:x(ne.BUTTON),label:B,colors:oe(Ue).optional(),enableAutoColor:ee().optional(),enableAlphaColor:ee().optional(),hideVisibleToggle:ee().optional(),hideSize:ee().optional(),defaults:fr.optional()}).strict(),hr=R({type:x(ne.COLOR_PICKER),color:Ue.optional()}).strict(),Jd=R({type:x(ne.COLOR_PICKER),fieldName:I(),defaults:hr.optional()}).strict(),ef=R({type:x(ne.COLOR_PICKER),label:B,colors:oe(Ue).optional(),enableAlphaColor:ee().optional(),enableAutoColor:ee().optional(),defaults:hr.optional()}).strict(),mr=R({type:x(ne.DIVIDER)}).strict(),tf=R({type:x(ne.DIVIDER),fieldName:I(),defaults:mr.optional()}).strict(),nf=R({type:x(ne.DIVIDER),label:B,defaults:mr.optional()}).strict(),Er=R({type:x(ne.IMAGE),overlay:hd.optional(),color:$t([Ue,oe(Ue)]).optional(),visible:ee().optional()}).strict().superRefine((e,t)=>{const n=Qe(t).at("color");e.overlay===En.GRADIENT?e.color===void 0?n.addIssue("COLOR_REQUIRED_GRADIENT"):Array.isArray(e.color)?e.color.length!==2&&n.addIssue("COLOR_ARRAY_LENGTH_GRADIENT"):n.addIssue("COLOR_MUST_BE_ARRAY_GRADIENT"):e.overlay===En.COLOR?e.color===void 0?n.addIssue("COLOR_REQUIRED_COLOR"):Array.isArray(e.color)&&n.addIssue("COLOR_MUST_BE_SINGLE_COLOR"):(e.overlay===En.NONE||e.overlay===void 0)&&e.color!==void 0&&n.addIssue("COLOR_MUST_BE_UNDEFINED_NONE")}),rf=R({type:x(ne.IMAGE),fieldName:I(),defaults:Er.optional()}).strict(),of=R({type:x(ne.IMAGE),label:B,static:ee().optional(),colors:oe(er).optional(),enableAlphaColor:ee().optional(),hideVisibleToggle:ee().optional(),defaults:Er.optional()}).strict(),sf=R({visible:ee(),width:lt(1,49).optional(),color:Ue.optional()}).strict(),gr=R({type:x(ne.LOGO),font:I().optional(),size:$t([Ze().min(1,{message:"must be at least 1"}),Ei]).optional(),bold:ee().optional(),italic:ee().optional(),color:Ue.optional(),visible:ee().optional(),spacing:lt(1,9).optional(),frame:sf.optional(),capitalization:Ee(["none","all","small"]).optional()}).strict(),af=R({type:x(ne.LOGO),fieldName:I(),defaults:gr.optional()}).strict(),cf=R({type:x(ne.LOGO),label:B,colors:oe(Ue).optional(),sizes:oe(Ze().min(1,{message:"must be at least 1"})).optional(),defaults:gr.optional()}).strict(),uf=R({value:I().optional(),label:B.optional()}).strict(),_r=R({type:x(ne.SELECTBOX),value:I().optional()}).strict(),lf=R({type:x(ne.SELECTBOX),fieldName:I(),defaults:_r.optional()}).strict(),pf=R({type:x(ne.SELECTBOX),label:B,description:B.optional(),options:oe(uf).optional(),defaults:_r.optional()}).strict(),yr=R({type:x(ne.TEXT),font:I().optional(),size:$t([Ze().min(1,{message:"must be at least 1"}),Ei]).optional(),bold:ee().optional(),italic:ee().optional(),color:Ue.optional(),visible:ee().optional()}).strict(),df=R({type:x(ne.TEXT),fieldName:I(),defaults:yr.optional()}).strict(),ff=R({type:x(ne.TEXT),label:B,colors:oe(er).optional(),sizes:oe(Ze().min(1,{message:"must be at least 1"})).optional(),enableAlphaColor:ee().optional(),enableAutoColor:ee().optional(),hideVisibleToggle:ee().optional(),hideSize:ee().optional(),defaults:yr.optional()}).strict(),Sr=R({type:x(ne.TOGGLE),enabled:ee().optional()}).strict(),hf=R({type:x(ne.TOGGLE),fieldName:I(),defaults:Sr.optional()}).strict(),mf=R({type:x(ne.TOGGLE),label:B,defaults:Sr.optional()}).strict(),Ef=nt("type",[ff,qd,of,mf,pf,Xd,ef,cf,nf]),Mi=Ye(I(),Ef),gf=nt("type",[df,Qd,rf,hf,lf,Yd,Jd,af,tf]),_f=R({layoutId:I(),layoutIcon:Ad.optional(),selectedContentSettings:oe(I()),selectedDesignSettings:oe(gf)}).strict(),Gi=nt("type",[ar,lr,nr,ir,pr,ur,xi,Pi,Di,or,sr,jd,cr,rr]),zi=nt("type",[yr,fr,Er,Sr,_r,dr,hr,gr,mr]),yf=R({showcaseId:I(),blockName:I(),previewImage:gn,content:Ye(I(),Gi),design:Ye(I(),zi),layoutId:I().optional()}).strict(),Sf=R({blockName:I(),content:Ye(I(),Gi).optional(),design:Ye(I(),zi).optional(),layoutId:I().optional()}).strict(),Tf=I().regex(Ld,Et.VALID_LANGUAGE_CODE()),_n=Ye(Tf,Ye(B,I())),Rf={menu:{type:W.NAVIGATION_MENU},logo:{type:W.LOGO}},Cf={logo:{type:"LOGO",label:"$label.logo.label",colors:["#FFFFFF66","#0000004D","#00000099","#64C7FF66","#F9947266","#C794CD66","#FFD17466"],sizes:[18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60],defaults:{type:"LOGO",font:"global.fontFamily.body",size:40,bold:!0,italic:!1,color:"#313131",visible:!0,spacing:2,capitalization:"all",frame:{visible:!0,width:3,color:"#313131"}}}};function Fi(e){switch(e){case Lt.HEADER:return Rf;default:return{}}}function Hi(e){switch(e){case Lt.HEADER:return Cf;default:return{}}}function ji({validationType:e,sectionType:t}){switch(e){case Kt.CONTENT:return Fi(t);case Kt.DESIGN:return Hi(t);default:return{}}}const yn=2097152,Sn=512e3;function rt(e,t=2){if(!+e)return"0 Bytes";const n=1024,r=t<0?0:t,o=["Bytes","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],s=Math.floor(Math.log(e)/Math.log(n));return`${parseFloat((e/n**s).toFixed(r))} ${o[s]}`}function Bi(e,t,n){if(!e||Object.keys(t).length===0)return;const r=Object.entries(t),o=r.map(([,{type:i}])=>i),s=Object.values(e).map(({type:i})=>i);Object.entries(e).forEach(([i,a])=>{const c=t[i];c&&"type"in c&&a.type!==c.type&&n.at(i).addIssue("MANDATORY_SETTING_TYPE_MISMATCH",a.type,i,c.type)}),Object.entries(e).forEach(([i,a])=>{const c=r.find(([,{type:u}])=>u===a.type)?.[0];c&&i!==c&&n.at(i).addIssue("MANDATORY_SETTING_NAME_MISMATCH",i,a.type,c)}),new Set(s.filter(i=>o.includes(i))).forEach(i=>{if(s.filter(a=>a===i).length>1){const a=r.findLast(([,{type:c}])=>c===i)?.[0];n.at(a).addIssue("DUPLICATED_MANDATORY_SETTING",i)}})}function Zi(e,t,n){gi(e,t,n)}function wf(e,t,n){if(e.type!==W.DECK||t.type!==W.DECK)return;const r=t.cards?.defaultCardContent?.settings,o=e.cards;if(!r||!Array.isArray(o))return;const s=new Set(Object.keys(r));o.forEach((i,a)=>{i.settings&&Object.keys(i.settings).forEach(c=>{s.has(c)||n.at(["cards",a,"settings",c]).addIssue("INVALID_DECK_CARD_SETTING",c)})})}function vf(e,t,n){e.content&&Object.entries(e.content).forEach(([r,o])=>{const s=n.at(["content",r]),i=t[r];if(!i){s.addIssue("INVALID_SHOWCASE_CONTENT_ELEMENT",r);return}if(o.type!==i.type){s.addIssue("SHOWCASE_CONTENT_ELEMENT_TYPE_MISMATCH",r,o.type,i.type);return}if(o.type===W.SELECTBOX&&i.type===W.SELECTBOX){const a=i,c=o;a.options&&c.value!==void 0&&(new Set(a.options.map(u=>u.value)).has(c.value)||s.addIssue("INVALID_SELECTBOX_OPTION",c.value,r))}o.type===W.DECK&&wf(o,i,s)})}function Af(e,t,n){e.design&&Object.entries(e.design).forEach(([r,o])=>{const s=n.at(["design",r]),i=t[r];if(!i){s.addIssue("INVALID_SHOWCASE_DESIGN_ELEMENT",r);return}o.type!==i.type&&s.addIssue("SHOWCASE_DESIGN_ELEMENT_TYPE_MISMATCH",r,o.type,i.type)})}function Vi(e,t,n){for(const[r,o]of Object.entries(e)){const s=o;if(s.type===W.IMAGE){const i=t[r];if(i?.type===ne.IMAGE){const a=s.static??!1,c=i.static??!1;a!==c&&n.at(r).addIssue("IMAGE_EDITOR_STATIC_MISMATCH",r)}}else if(s.type===W.DECK){const i=s;i.cards?.defaultCardContent?.settings&&Vi(i.cards.defaultCardContent.settings,t,n.at([r,"cards","defaultCardContent","settings"]))}}}function Of(e,t,n){t>yn&&n.at(ue.basename(e)).addIssue("REQUIRED_SECTION_ASSET",rt(t),rt(yn))}function If(e,t){e>Sn&&t.addIssue("REQUIRED_SERVER_SIZE",rt(e),rt(Sn))}const bf=R({id:I(),type:ld,name:I(),content:Ui,design:Mi,layout:oe(_f).optional(),showcase:oe(yf),translationsSettings:_n.optional(),translationsShowcases:_n.optional(),assets:Jn.array().optional(),server:mi,previewCount:Ze().optional()}).strict().superRefine((e,t)=>{const n=Qe(t),r=ji({validationType:Kt.CONTENT,sectionType:e.type}),o=ji({validationType:Kt.DESIGN,sectionType:e.type});Bi(e.content,r,n.at("content")),Bi(e.design,o,n.at("design")),Vi(e.content,e.design,n.at("content")),e.assets&&e.assets.forEach(i=>{Of(i.path,i.size,n.at("assets"))}),If(e.server.size,n.at("server"));const s=e.assets?.map(i=>i.path)??[];Zi(e.content,s,n.at("content")),e.showcase.forEach((i,a)=>{const c=n.at(["showcase",a]);Zi(i,s,c),vf(i,e.content,c),Af(i,e.design,c)})}),$f=R({translations:_n.optional()}).strict(),Lf=Ee(["products","category","product"]),Nf=R({id:I(),sectionId:I(),content:Ui,design:Mi,translationsSettings:_n.optional(),assets:Jn.array().optional()}).strict().superRefine((e,t)=>{const n=Qe(t);Wt.safeParse(e.sectionId).success||n.at(["sectionId"]).addIssue("INVALID_STORE_SECTION_ID",e.sectionId,Wt.options.join(", ")),e.assets&&e.assets.forEach(r=>{r.size>yn&&n.at(["assets",ue.basename(r.path)]).addIssue("REQUIRED_SECTION_ASSET",rt(r.size),rt(yn))})});R({id:I(),sectionId:Wt,pageId:Lf}).strict();const Df=R({id:I(),sectionId:I(),layoutId:I(),server:mi}).strict().superRefine((e,t)=>{const n=Qe(t);Wt.safeParse(e.sectionId).success||n.at(["sectionId"]).addIssue("INVALID_STORE_SECTION_ID",e.sectionId,Wt.options.join(", ")),e.server.size>Sn&&n.at("server").addIssue("REQUIRED_SERVER_SIZE",rt(e.server.size),rt(Sn))});function kf(e,t){tr(e.type)&&(e.sections.length!==1?t.at("sections").addIssue("TEMPLATE_PAGE_SINGLE_SECTION_REQUIRED",e.type):e.sections[0]?.type!=="store"&&t.at(["sections",0,"type"]).addIssue("TEMPLATE_PAGE_STORE_SECTION_REQUIRED",e.type))}function xf(e,t){tr(e.type)&&e.sections.length===0&&t.at("sections").addIssue("TEMPLATE_PAGE_SECTIONS_REQUIRED"),e.sections.forEach((n,r)=>{tr(e.type)||n.type==="store"&&t.at(["sections",r,"type"]).addIssue("TEMPLATE_PAGE_NO_STORE_SECTIONS",e.type),n.type==="default"&&n.id&&(n.id==="header"||n.id==="footer")&&t.at(["sections",r,"id"]).addIssue("REQUIRED_PAGE_SECTION_TYPE")})}function Pf(e,t){e.type==="CUSTOM"?e.metadata||t.at("metadata").addIssue("TEMPLATE_PAGE_CUSTOM_METADATA_REQUIRED"):e.metadata!==void 0&&t.at("metadata").addIssue("TEMPLATE_PAGE_METADATA_NOT_ALLOWED",e.type)}const Uf=new RegExp(`^(${Object.values(Od).join("|")})(_\\d{3})?$`),Mf=I().regex(Uf,"id must match pattern: [default_section_name] or [default_section_name]_XXX where XXX is three digits"),Gf=I().regex(new RegExp("\\d{3}"),"showcase_id must be a three digit string"),Ki=R({type:x("default"),id:Mf,showcase_id:Gf.optional()}).strict(),Tr=R({type:x("custom"),id:I(),showcase_id:I().optional(),showcase_overrides:Sf.optional(),category:bd.optional()}).strict(),zf=R({type:x("store"),id:I().optional()}).strict(),Ff=nt("type",[Ki,Tr,zf]),Hf=R({title:I()}).strict(),jf=R({metadata:Hf.optional(),sections:oe(Ff)}).strict(),Bf=jf.safeExtend({type:Rd,id:I().min(1,{message:"id is required"})}).strict().superRefine((e,t)=>{const n=Qe(t);xf(e,n),kf(e,n),Pf(e,n)}),Wi=R({name:I().min(2,{message:"name must be at least 2 characters"}).max(60,{message:"name must be at most 60 characters"}),description:I().min(2,{message:"description must be at least 2 characters"}).max(150,{message:"description must be at most 150 characters"}),preview_url:Xn({message:"preview_url must be a valid URL"}).regex(/^(https?):\/\/([^.]+?\.)?(company\.site|ecwid\.qa)($|\/[A-Za-z0-9\-._~:/?#\[\]@!$&'()*+,;=]*)?$/,"preview_url must match pattern: (https?)://([^.]+?\\.)?(company\\.site|ecwid\\.qa)(...)?").optional(),cover_image:gn,categories:oe(wd).refine(e=>new Set(e).size===e.length,{message:"categories must contain unique items"}).optional()}).strict(),Zf=Ki.extend({id:I()}),Yi=nt("type",[Zf,Tr]),Vf=R({metadata:Wi,header:Yi,footer:Yi}).strict(),Kf=R({id:I().min(1,{message:"id is required"}),assets:Jn.array().optional(),configuration:Vf,pages:oe(Bf)}).strict();function Wf(e,t,n){if(e){if(e.type==="default")e.id!=="header"&&n.at("id").addIssue("REQUIRED_HEADER_ID");else if(e.type==="custom"&&e.id){const r=t.find(o=>o.id===e.id);r?(r.type!=="HEADER"&&n.at("id").addIssue("REQUIRED_CUSTOM_HEADER_TYPE",e.id),e.showcase_id&&((r.showcase||[]).some(o=>o.showcaseId===e.showcase_id)||n.at("showcase_id").addIssue("SHOWCASE_ID_NOT_FOUND",e.showcase_id))):n.at("id").addIssue("REQUIRED_CUSTOM_HEADER",e.id)}}}function Yf(e,t,n){if(e){if(e.type==="default")e.id!=="footer"&&n.at("id").addIssue("REQUIRED_FOOTER_ID");else if(e.type==="custom"&&e.id){const r=t.find(o=>o.id===e.id);r?(r.type!=="FOOTER"&&n.at("id").addIssue("REQUIRED_CUSTOM_FOOTER_TYPE",e.id),e.showcase_id&&((r.showcase||[]).some(o=>o.showcaseId===e.showcase_id)||n.at("showcase_id").addIssue("SHOWCASE_ID_NOT_FOUND",e.showcase_id))):n.at("id").addIssue("REQUIRED_CUSTOM_FOOTER",e.id)}}}function Xf(e,t,n){if(!e)return;const r=n.at(["showcase_overrides"]);["content","design"].forEach(s=>{const i=e[s];if(i){const a=t[s]||{};Object.keys(i).forEach(c=>{if(!(c in a)){const u=s==="content"?"SHOWCASE_OVERRIDE_CONTENT":"SHOWCASE_OVERRIDE_DESIGN";r.at([s,c]).addIssue(u,c)}})}}),e.layoutId&&((t.layout||[]).some(s=>s.layoutId===e.layoutId)||r.at(["layoutId"]).addIssue("SHOWCASE_OVERRIDE_LAYOUT",e.layoutId));const o=t.assets?.map(s=>s.path)??[];e.content&&gi(e.content,o,r.at(["content"]))}function Qf(e,t,n){if(!e.id)return;const r=t.find(o=>o.id===e.id);if(!r){n.at("id").addIssue("REQUIRED_PAGE_SECTION",e.id);return}(r.type==="HEADER"||r.type==="FOOTER")&&n.at("id").addIssue("REQUIRED_PAGE_SECTION_TYPE"),Xf(e.showcase_overrides,r,n),e.showcase_id&&((r.showcase||[]).some(o=>o.showcaseId===e.showcase_id)||n.at("showcase_id").addIssue("SHOWCASE_ID_NOT_FOUND",e.showcase_id))}function qf(e,t,n,r){e.id&&(n.some(o=>o.sectionId===t.type.toLowerCase()&&o.id===e.id)||r.at("id").addIssue("REQUIRED_STORE_LAYOUT",e.id,t.type.toLowerCase()))}const Jf=R({version:I(),name:I(),shared:$f.optional(),sections:oe(bf),templates:oe(Kf),layouts:oe(Nf),slots:oe(Df),compressionEnabled:ee(),externalizationEnabled:ee(),vueVersion:I()}).strict().superRefine((e,t)=>{e.templates.forEach((n,r)=>{const o=Qe(t).at(["templates",r]);Wf(n.configuration.header,e.sections,o.at(["configuration","header"])),Yf(n.configuration.footer,e.sections,o.at(["configuration","footer"])),n.pages.forEach((s,i)=>{const a=o.at(["pages",i]);s.sections.forEach((c,u)=>{const l=a.at(["sections",u]);c.type==="custom"?Qf(c,e.sections,l):c.type==="store"&&qf(c,s,e.layouts,l)})})})}),eh=R({metadata:Wi,sections:oe(Tr)});R({id:I().min(1,{message:"id is required"}),descriptor:eh}),tt({customError:ud});function Rr(e,t){return Object.keys(e).reduce((n,r)=>{const o=e[r],s=t[r];return dt(o)&&dt(s)?n[r]=Rr(o,s):n[r]=o,n},{...t})}function th({contentSettings:e,sectionType:t}){const n=Fi(t);return Rr(e,n)}function nh({designSettings:e,sectionType:t}){const n=Hi(t);return Rr(e,n)}function Nt(e){return we(`${zt}/${e}`)?ve.HEADER:we(`${Ft}/${e}`)?ve.FOOTER:ve.SECTION}async function ke(e){return(await import(ia(e).href+`?t=${Date.now()}`)).default}function Cr(e){if(e!==void 0)return e.startsWith("global.")?{type:"GLOBAL_FONT",font:e}:{type:"PRESET_FONT",font:e}}function Ve(e){if(e===void 0)return;if(e.startsWith("global."))return{type:"GLOBAL_COLOR",raw:e};const t=la(e);return{type:"STRUCTURED_COLOR",raw:e,hex:t.toHex8String(),hsl:t.toHsl(),rgba:t.toRgb(),auto:!1}}function Xi(e){if(e!==void 0)return typeof e=="string"&&e.startsWith("global.")?{type:"GLOBAL_TEXT_SIZE",size:e}:{type:"NUMERIC_TEXT_SIZE",size:Number(e)}}function rh(e){if(e!==void 0)return{...e,color:Ve(e.color)}}function wr(e){return Object.fromEntries(Object.entries(e).filter(([t,n])=>n!==void 0))}function oh(e){if(e!==void 0)switch(e){case Pn.COLOR:return"solid";case Pn.GRADIENT:return"gradient";default:throw new Error(`Unknown background type: ${e}. Right options: ${Object.keys(Pn)}`)}}function ih({style:e,color:t}){const n=Array.isArray(t)?t:[t,t];return{background:{type:oh(e),solid:{color:Ve(n.at(0))},gradient:{fromColor:Ve(n.at(0)),toColor:Ve(n.at(1))}}}}function sh(e){if(e!==void 0)switch(e){case"SOLID":return"solid-button";case"OUTLINE":return"outline-button";case"TEXT":return"text-link";default:throw new Error(`Unknown button appearance: ${e}. Right options: ${Object.keys(na)}`)}}function ah(e){if(e!==void 0)switch(e){case"SMALL":return"small";case"MEDIUM":return"medium";case"LARGE":return"large";default:throw new Error(`Unknown button size: ${e}. Right options: ${Object.keys(ra)}`)}}function ch(e){if(e!==void 0)switch(e){case"ROUND_CORNER":return"round-corner";case"RECTANGLE":return"rectangle";case"PILL":return"pill";default:throw new Error(`Unknown button shape: ${e}. Right options: ${Object.keys(oa)}`)}}function uh(e){const t=sh(e.appearance),n=ah(e.size),r=ch(e.shape),o=Cr(e.font),s=Ve(e.color),i=e.visible;return wr({appearance:t,size:n,style:r,font:o,color:s,visible:i})}function lh(e){const t=Ve(e.color);return wr({color:t})}function ph(e){if(e!==void 0)switch(e){case en.COLOR:return"solid";case en.GRADIENT:return"gradient";case en.NONE:return"none";default:throw new Error(`Unknown image overlay type: ${e}. Right options: ${Object.keys(en)}`)}}function dh(e){const t=e.color,n=Array.isArray(t)?t:[t,t];return{overlay:{type:ph(e.overlay),solid:{color:Ve(n.at(0))},gradient:{fromColor:Ve(n.at(0)),toColor:Ve(n.at(1))}}}}function fh(e){const t=Cr(e.font),n=Ve(e.color),r=Xi(e.size),o=e.bold,s=e.italic,i=e.spacing,a=e.capitalization;return{font:t,color:n,size:r,frame:rh(e.frame),bold:o,italic:s,spacing:i,capitalization:a}}function hh(e){const t=Cr(e.font),n=Ve(e.color),r=Xi(e.size),o=e.bold,s=e.italic;return wr({font:t,color:n,size:r,bold:o,italic:s})}function vr(e,t){if(t.defaults===void 0)return;let n={};switch(e){case it.TEXT:{n=hh(t.defaults);break}case it.BUTTON:{n=uh(t.defaults);break}case it.IMAGE:{n=dh(t.defaults);break}case it.BACKGROUND:{n=ih(t.defaults);break}case it.COLOR_PICKER:{n=lh(t.defaults);break}case it.LOGO:{n=fh(t.defaults);break}case it.TOGGLE:case it.SELECTBOX:break;default:throw new Error(`Unknown design editor type: ${e}`)}return n}function mh(e){const t={};return Object.keys(e).forEach(n=>{const r=e[n],o=r.type,s=vr(o,r);s&&r.defaults?t[n]={...r,defaults:s}:t[n]=r}),t}function Eh(e){return e===void 0?e:e.map(t=>{if(t.type!==void 0&&t.defaults!==void 0&&t.fieldName!==void 0){const n={...vr(t.type,t)??t.defaults,type:t.defaults.type??t.type};return{type:t.type,fieldName:t.fieldName,defaults:n}}return t})}function Ar(e){if(e===void 0)return;const t={};return Object.keys(e).forEach(n=>{const r=e[n],o=r.type,s=vr(o,{defaults:r});s!==void 0?t[n]={...r,...s,type:r.type}:t[n]=r}),t}function gh(e,t){if(!t)return;const n=e[t];return n===void 0?{en:t}:n}function _h(e){const t={};for(const n in e){const r=e[n];for(const o in r){const s=t[o],i=r[o];if(s===void 0){const a={};a[n]=i,t[o]=a}else s[n]=i}}return t}function yh(e){return e.every(t=>t==null||typeof t=="string"||typeof t=="number"||typeof t=="boolean")}function gt(e,t){if(e==null||typeof e!="object")return e;if(Array.isArray(e))return yh(e)?e:e.map(o=>gt(o,t));const n=e,r={};for(const o in n){const s=n[o];typeof s=="string"&&s.startsWith("$")?r[o]=gh(t,s):typeof s=="object"&&s!==null?r[o]=gt(s,t):r[o]=s}return r}async function Tn(e){return e?_h(e):{}}async function Qi(e,t=Ie){const n=U(process.cwd(),`${t}/${e}/js/settings/translations.mjs`);return await ke(n)}async function Dt(e,t=Ie){const n=U(process.cwd(),`${t}/${e}/js/showcases/translations.mjs`);return await ke(n)}async function qi(e,t){const n=U(process.cwd(),`${Ae}/${t}/${e}/js/settings/translations.mjs`);if(we(n))return await ke(n)}async function Ji(e,t,n){const r=n?th({contentSettings:e,sectionType:n}):e;return gt(r,t)}async function es(e,t=Ie){try{const n=U(se.cwd(),`${t}/${e}/js/settings/content.mjs`),r=await ke(n);return Bt(r)}catch{throw new Error(`Content descriptor for section [${e}] is either invalid or undefined`)}}async function Sh(e,t,n=Ie){const r=await es(e,n);return await Ji(r,t,Nt(e))}async function ts(e,t,n){const r=n?nh({designSettings:e,sectionType:n}):e,o=mh(r);return gt(o,t)}async function ns(e,t=Ie){try{const n=U(se.cwd(),`${t}/${e}/js/settings/design.mjs`),r=await ke(n);return Bt(r)}catch(n){const r=n;throw new Error(`Design settings is invalid or undefined. Error ${r.stack}`)}}async function Th(e,t,n=Ie){const r=await ns(e,n);return ts(r,t,Nt(e))}async function Rh(e,t){return Promise.all(e.map(async n=>{const r=n.design?Ar(n.design):void 0,o={...n,design:r??n.design};return gt(o,t)}))}async function rs(e,t=Ie){try{const n=await G("*.mjs",{cwd:U(se.cwd(),`${t}/${e}/js/showcases/`),ignore:"**/translations.mjs"});return Promise.all(n.map(async r=>{const o=U(se.cwd(),`${t}/${e}/js/showcases/${r}`);return await ke(o)}))}catch(n){throw new Error(`Showcases is invalid or undefined. Error ${n}`)}}async function Ch(e,t,n=Ie){const r=await rs(e,n);return Rh(r,t)}async function wh(e){return e?.map(t=>({...t,selectedDesignSettings:Eh(t.selectedDesignSettings)??t.selectedDesignSettings}))??[]}async function os(e,t=Ie){try{const n=U(se.cwd(),`${t}/${e}/js/settings/layout.mjs`);return we(n)?await ke(n):[]}catch{throw new Error(`Layout descriptor for section [${e}] is either invalid or undefined`)}}async function vh(e,t=Ie){const n=await os(e,t);return await wh(n)}function is(e){let t={};const n=U(se.cwd(),`${yo}/shared/analytics.json`);if(!we(n))return 0;try{const r=Bs(n,"utf-8");t=JSON.parse(r)}catch(r){console.warn("Error processing analytics.json file",r)}return t[e]||0}function Ah(){try{const e=U(se.cwd(),`${yo}/shared/analytics.json`);we(e)&&no(e,JSON.stringify({},null,2),"utf-8")}catch(e){console.warn("Can not clean up preview analytics.json file",e)}}async function Rn(e,t){const n=await Qi(e,ae[t].dist),r=await Tn(n),o=await Dt(e,ae[t].dist),s=await Tn(o),i=await Sh(e,r,ae[t].dist),a=await Th(e,r,ae[t].dist),c=await Ch(e,s,ae[t].dist),u=await vh(e,ae[t].dist),l=is(e);return{id:e,type:t,name:{en:e},contentEditors:i,designEditors:a,layouts:u,showcases:c,previewCount:l}}async function Oh(){const e=await G("*/",{cwd:U(se.cwd(),`${Ie}/`)}),t=await G("*/",{cwd:U(se.cwd(),`${zt}/`)}),n=await G("*/",{cwd:U(se.cwd(),`${Ft}/`)});return Promise.all([...e.map(async r=>Rn(r,ve.SECTION)),...t.map(async r=>Rn(r,ve.HEADER)),...n.map(async r=>Rn(r,ve.FOOTER))])}async function Ih(e){if(!e||e.type!=="custom")return;const t=Nt(e.id),n=await Dt(e.id,ae[t].dist);e.showcase_overrides!==void 0&&(gt(e.showcase_overrides,n),e.showcase_overrides.design&&Ar(e.showcase_overrides.design))}async function bh(e){const t=e.filter(n=>n.type==="custom");await Promise.all(t.map(n=>Ih(n)))}async function Or(e){try{return await ke(et.resolve(process.cwd(),e))}catch{throw new Error(`Template file [${e}] is either invalid or undefined`)}}function $h(e){return e in Xe?Xe[e]:Xe.CUSTOM}async function Ir(e,t){const n=e.design?Ar(e.design):void 0,r={...e,design:n??e.design},o=await Tn(t);return gt(r,o)}function br(e){return e.type==="custom"&&e.id!==void 0&&e.showcase_overrides!==void 0}async function Lh(e){if(br(e)){const t=await Dt(e.id,ae[Nt(e.id)].dist);return{...e,showcase_overrides:await Ir(e.showcase_overrides,t)}}return e}async function Nh(e){const t=br(e.header)?{...e.header,showcase_overrides:await Ir(e.header.showcase_overrides,await Dt(e.header.id,ae[Nt(e.header.id)].dist))}:e.header,n=br(e.footer)?{...e.footer,showcase_overrides:await Ir(e.footer.showcase_overrides,await Dt(e.footer.id,ae[Nt(e.footer.id)].dist))}:e.footer;return{...e,header:t,footer:n}}async function Dh(e){const t=await Promise.all(e.pages.map(async r=>({...r,sections:await Promise.all(r.sections.map(o=>Lh(o)))}))),n=await Nh(e.configuration);return{id:e.id,descriptor:{...n,pages:t}}}async function kh(e){return Promise.all(e.map(t=>Dh(t)))}async function xh(e){const t=await G(`${ze}/${e}/*.mjs`,{ignore:[`${ze}/${e}/configuration*.mjs`]});return Promise.all(t.map(async n=>{const{sections:r,metadata:o}=await Or(n),s=So(n);return{type:$h(s.toUpperCase()),id:s,sections:r,metadata:o}}))}async function Ph(e){const t=await G(`${ze}/**/configuration*.mjs`,{});return Promise.all(t.map(async n=>{const r=et.basename(et.dirname(n));return{id:`${e}_${r}`,configuration:await Or(n),pages:await xh(r)}}))}async function Uh(e){const t=await Ph(e);return kh(t)}async function Mh(e){const t=await G(`${tn}/**/configuration*.mjs`,{});return Promise.all(t.map(async n=>{const r=await Or(n),o=ue.basename(ue.dirname(n));return await bh(r.sections),{id:`${e}_${o}`,descriptor:r}}))}function Cn({deploymentContext:e,sectionType:t=ve.SECTION}){const n=e.pathContext,r=n.toPath({sectionId:e.currentSection,sectionType:t,layoutId:e.layoutId,slotId:e.slotId}),o=r===void 0?ao(n.fileName):ao(n.fileName,{cwd:U(process.cwd(),r),ignore:n.ignore});return(n.isSingleton?o.splice(0):o).map(s=>({url:s,sectionType:t,context:e}))}const Gh=e=>e.app.sections.flatMap(t=>Ia.flatMap(n=>{const r={config:e,currentSection:t.id,pathContext:jt[n]};return Cn({deploymentContext:r,sectionType:t.type})})),zh=e=>La.flatMap(t=>{const n={config:e,pathContext:jt[t]};return Cn({deploymentContext:n})}),Fh=e=>e.app.layouts.flatMap(t=>ba.flatMap(n=>{const r={config:e,pathContext:jt[n],currentSection:t.sectionId,layoutId:t.id};return Cn({deploymentContext:r})})),Hh=e=>e.app.slots.flatMap(t=>$a.flatMap(n=>{const r={config:e,pathContext:jt[n],currentSection:t.sectionId,layoutId:t.layoutId,slotId:t.id};return Cn({deploymentContext:r})}));async function ss(e){await new Promise(t=>setTimeout(t,e))}const jh=e=>`\x1B[32m${e}\x1B[0m`,Bh=(e,t,n,r,o)=>{if(!e.total)return;const{loaded:s}=e,i=(Date.now()-o)/1e3;n.value+=s-r.value,r.value=s,t.update({speed:`${rt(n.value/i,2)}/s`})},Zh=()=>new pa.SingleBar({format:`|${jh("{bar}")}| {status} || {percentage}% || {value}/{total} Files || Speed: {speed}`,barCompleteChar:"\u2588",barIncompleteChar:"\u2591"});function Vh(e){const t=Rt(e).split("/");if(t.length<4||t[2]!=="slots")throw new Error(`Invalid slot path: ${e}. Expected format: [dist/]layouts/{sectionId}/{layoutId}/slots/{slotId}/[...path]`);const[n,r,,o]=t;if(!_o(n))throw new Error(`Slot cannot be placed in a non-storefront section: ${n}`);return{id:o,sectionId:n,layoutId:r}}async function Kh(e){return Promise.all(e.map(async t=>{const n=await Tn(t.translationsSettings),r=await Ji(t.content,n),o=await ts(t.design,n);return{id:t.id,sectionId:t.sectionId,layoutId:t.layoutId,contentEditors:r,designEditors:o}}))}async function Wh(e,t){try{const n=et.resolve(process.cwd(),`${Ae}/${t}/${e}/js/settings/content.mjs`);return await ke(n)}catch(n){throw new Error(`Content descriptor for layout [${e}] is either invalid or undefined: ${n}`)}}async function Yh(e,t){try{const n=et.resolve(process.cwd(),`${Ae}/${t}/${e}/js/settings/design.mjs`);return await ke(n)}catch(n){throw new Error(`Design descriptor for layout [${e}] is either invalid or undefined: ${n}`)}}async function Xh(e){const t=Rt(e).split("/"),[n,r,,o]=t,s=await qi(r,n),i=await Wh(r,n),a=await Yh(r,n);return{id:o,sectionId:n,layoutId:r,content:i,design:a,translationsSettings:s}}async function Qh(){const e=`${Ae}/{product,catalog,category}/*/slots/*`,t=await G(e,{ignore:["node_modules/**"]});return await Promise.all(t.map(Xh))}async function qh(){const e=await Qh();return await Kh(e)}const Jh={value:0},He=Zh();let as=Date.now();const cs=e=>2**e*500;function em(e){return typeof e=="object"&&e!==null&&"version"in e&&typeof e.version=="string"}async function $r(){const e=U(se.cwd(),"package.json"),t=await uo(e),n=JSON.parse(t.toString());if(em(n))return n;throw new Error(`Package file located at path: ${e} does not contain a version field`)}async function tm(e){const t=ca(e.version,"patch");if(t===null)throw Error("Error while incrementing app version");e.version=t,no(U(se.cwd(),"package.json"),`${JSON.stringify(e,null,2)}
|
|
26
|
-
`)}function nm(e){return e instanceof lo&&(e.code==="ECONNRESET"||e.response?.status!==void 0&&e.response?.status>=500&&e.response?.status<600)}function us(e,t){return e<Oa&&nm(t)}async function ls(e,t,n,r){const o={value:0},s=e.config.app.templates.length>0||e.config.app.collections.length>0?Ca:Ra;return e.config.axios.post(s,{file:Zs(U(se.cwd(),n!==void 0?n+t:t))},{params:{appClientId:e.config.app.crane.appClientId,type:e.pathContext.type,version:e.config.app.packageJson.version,...e.currentSection!==void 0&&{block:e.currentSection},...e.layoutId!==void 0&&{layoutId:e.layoutId},...e.slotId!==void 0&&{slotId:e.slotId},...!["dependencies","source_code"].includes(e.pathContext.type)&&{fileName:t}},headers:{"Content-Type":"multipart/form-data",Authorization:`Bearer ${e.config.app.crane.appSecretKey}`},onUploadProgress:i=>Bh(i,He,Jh,o,as)}).then(i=>(He.increment(),i)).catch(async i=>{if(us(r,i))return await ss(cs(r)),ls(e,t,n,r+1);throw He.increment(),i})}function rm(e){return He.start(e.length+1,0,{speed:"N/A",status:"Deployment in progress"}),e.map(t=>{const n=t.context,r=n.pathContext.toPath({sectionId:n.currentSection,sectionType:t.sectionType,layoutId:n.layoutId,slotId:n.slotId});return ls(n,t.url,r,0)})}function om(e){const t=[...Gh(e),...zh(e),...Fh(e),...Hh(e)];return rm(t)}async function ps(e,t=0){const n=e.app.templates.length>0||e.app.collections.length>0?va:wa;return e.axios.post(n,{version:e.app.packageJson.version,name:"Custom Block App",blocks:e.app.sections,templates:e.app.templates,layouts:e.app.layouts,slots:e.app.slots,compressionEnabled:!0,externalizationEnabled:!0,vueVersion:e.app.packageJson.dependencies.vue,collections:e.app.collections,openSource:e.app.packageJson.openSource},{params:{appClientId:e.app.crane.appClientId},headers:{Authorization:`Bearer ${e.app.crane.appSecretKey}`}}).catch(async r=>{if(us(t,r))return await ss(cs(t)),ps(e,t+1);throw r})}async function im(e){try{if(!xa.some(i=>we(U(se.cwd(),i))))throw new Error(St.INCORRECT_DISTRIBUTION_FOLDER(Da));const t=e??Mn;L.info("Custom application deployment :: Started");const n=Un.create({baseURL:t});aa(n,Aa),L.info("Loading configuration files ...");const r=await Promise.all([rn(),$r(),Oh(),Ya(),qh()]).then(async([i,a,c,u,l])=>({axios:n,app:{crane:i,packageJson:a,sections:c,layouts:u,slots:l,templates:await Uh(i.appClientId),collections:await Mh(i.appClientId)}}));L.info("Uploading files ..."),as=Date.now(),await Promise.all(om(r)).catch(i=>{He.stop(),i.response?.status===404?L.error(ft(i,St.DEPRECATED_VERSION_DEPLOYMENT)):L.error(ft(i,St.ASSET_FILES_UPLOAD)),se.exit(1)}).finally(()=>{He.increment(),He.stop()}),He.update({speed:"N/A",status:"Finalising deployment"}),await ps(r).catch(i=>{He.stop(),i.response?.status===404?L.error(ft(i,St.DEPRECATED_VERSION_DEPLOYMENT)):L.error(ft(i,St.MANIFEST_DEPLOYMENT)),se.exit(1)}).finally(()=>{He.increment(),He.stop()});const o=r.app.sections.map(i=>i.id),s=r.app.packageJson.version;L.info("Custom application deployment :: Successful"),L.info(`Current app version: ${s}`),L.info(`Deployed sections: ${o.sort().join(", ")}`),await tm(r.app.packageJson),r.app.templates.length>0&&L.info(`Deployed templates: ${r.app.templates.map(i=>i.id).sort().join(", ")}`),r.app.slots.length>0&&L.info(`Deployed slots: ${r.app.slots.map(i=>i.id).sort().join(", ")}`),r.app.collections.length>0&&L.info(`Deployed collections: ${r.app.collections.map(i=>i.id).sort().join(", ")}`)}catch(t){He.stop(),L.error(ft(t,St.DEFAULT)),se.exit(1)}finally{Ah()}}const sm={layout:e=>e.layoutId,showcase:e=>e.showcaseId,templates:e=>{const t=e.id;return t?.includes("_")?t.substring(t.indexOf("_")+1):t}};function am(e,t){const n=sm[e];return n?n(t):t.id}const cm=new Set(["content","design"]);function wn(e,t,n=0,r=[]){if(n>=t.length)return r;const o=t[n],s=t[n+1];if(typeof o=="string"&&typeof s=="number"&&dt(e)){const i=e[o],a=Array.isArray(i)?i[s]:void 0;if(dt(a)){const c=am(o,a);return r.push(`${o}[${c||s}]`),wn(a,t,n+2,r)}}if(typeof o=="string"&&typeof s=="string"&&cm.has(o)){r.push(`${o}[${s}]`);const i=dt(e)&&!Array.isArray(e)?e[o]:void 0,a=dt(i)&&!Array.isArray(i)?i[s]:void 0;return wn(a,t,n+2,r)}return r.push(o),wn(dt(e)?e[o]:void 0,t,n+1,r)}function um(e){const t=e.errors.map(r=>wn(e.manifest,r.path).join(".")),n={path:Math.max(...t.map(r=>r.length),0),message:Math.max(...e.errors.map(r=>r.message.length),0)};e.errors.map((r,o)=>{const s=r.params?.errorMessageKey||"GENERAL_ISSUE";return`${t[o].padEnd(n.path," ")} | ${r.message.padEnd(n.message," ")} | ${s}`}).forEach(r=>L.error(r))}async function lm(e){const t=Jf.safeParse(e);return{manifest:e,errors:t.success?[]:t.error.issues}}const ds={"process.env":{NODE_ENV:"production"}},pm=[...po,...po.map(e=>`node:${e}`)],dm=[/@vue\/compiler-dom/,/@vue\/runtime-dom/,/@vue\/server-renderer/,/@vue\/compiler-ssr/,/@vue\/shared/],fs=e=>({pluginType:Ge.Server,define:ds,ssr:!0,ssrOptions:{noExternal:!0},entryFileNames:"server.js",externalOption:[...pm,...dm],inlineDynamicImports:!0,...e,outDir:e.outDir}),hs=e=>({pluginType:Ge.Client,define:ds,ssr:!1,entryFileNames:"client.js",assetFileNames:"assets/[name].[ext]",chunkFileNames:"chunks/[name].js",inlineDynamicImports:!1,...e,outDir:e.outDir}),kt=e=>({pluginType:Ge.Misc,ssr:!1,...e,entryFileNames:e.entryFileNames,outDir:e.outDir}),fm=e=>({pluginType:Ge.Layout,ssr:!1,entryFileNames:"index.mjs",...e,outDir:e.outDir}),vn=e=>({pluginType:Ge.Asset,ssr:!1,assetFileNames:"[name].[ext]",...e,outDir:e.outDir}),hm=()=>da({ext:".gz",algorithm:"gzip"}),mm="/* EXTERNAL_IMPORTS_START */",Em="/* EXTERNAL_IMPORTS_END */",gm=()=>({name:"external-imports-wrapper-plugin",enforce:"post",apply:"build",generateBundle(e,t){for(const n of Object.keys(t)){const r=t[n];if(r.type==="chunk"){const o=/import.*\?commonjs-external["'];/g,s=r.code.match(o);if(s!==null){const i=s.join(""),a=mm+i+Em,c=r.code.replace(o,"");r.code=a+c}}}}}),_m=()=>({name:"disable-json-plugin",enforce:"pre",apply:"build",configResolved(e){const t=e.plugins?.findIndex(n=>n?.name==="vite:json");t!==-1&&(e.plugins[t]={name:"vite:json",load:()=>null,transform:()=>null})}}),ym=()=>{const e=process.env.npm_lifecycle_event;return ma({typescript:!0,vueTsc:!1,eslint:e==="test"?!1:{lintCommand:`eslint --max-warnings=0 "./sections/**/*.{js,ts,vue}" --cache --cache-location "./build/eslintcache/${e}.json"`}})},Ke={VUE:fa(),TS_CONFIG_PATHS:ha(),CHECKER:ym()};class Ln{constructor(t){this.bits=t instanceof Ln?t.bits.slice():[]}add(t){this.bits[t>>5]|=1<<(t&31)}has(t){return!!(this.bits[t>>5]&1<<(t&31))}}class Qt{constructor(t,n,r){this.start=t,this.end=n,this.original=r,this.intro="",this.outro="",this.content=r,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(t){this.outro+=t}appendRight(t){this.intro=this.intro+t}clone(){const t=new Qt(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(t){return this.start<t&&t<this.end}eachNext(t){let n=this;for(;n;)t(n),n=n.next}eachPrevious(t){let n=this;for(;n;)t(n),n=n.previous}edit(t,n,r){return this.content=t,r||(this.intro="",this.outro=""),this.storeName=n,this.edited=!0,this}prependLeft(t){this.outro=t+this.outro}prependRight(t){this.intro=t+this.intro}reset(){this.intro="",this.outro="",this.edited&&(this.content=this.original,this.storeName=!1,this.edited=!1)}split(t){const n=t-this.start,r=this.original.slice(0,n),o=this.original.slice(n);this.original=r;const s=new Qt(t,this.end,o);return s.outro=this.outro,this.outro="",this.end=t,this.edited?(s.edit("",!1),this.content=""):this.content=r,s.next=this.next,s.next&&(s.next.previous=s),s.previous=this,this.next=s,s}toString(){return this.intro+this.content+this.outro}trimEnd(t){if(this.outro=this.outro.replace(t,""),this.outro.length)return!0;const n=this.content.replace(t,"");if(n.length)return n!==this.content&&(this.split(this.start+n.length).edit("",void 0,!0),this.edited&&this.edit(n,this.storeName,!0)),!0;if(this.edit("",void 0,!0),this.intro=this.intro.replace(t,""),this.intro.length)return!0}trimStart(t){if(this.intro=this.intro.replace(t,""),this.intro.length)return!0;const n=this.content.replace(t,"");if(n.length){if(n!==this.content){const r=this.split(this.end-n.length);this.edited&&r.edit(n,this.storeName,!0),this.edit("",void 0,!0)}return!0}else if(this.edit("",void 0,!0),this.outro=this.outro.replace(t,""),this.outro.length)return!0}}function Sm(){return typeof globalThis<"u"&&typeof globalThis.btoa=="function"?e=>globalThis.btoa(unescape(encodeURIComponent(e))):typeof Buffer=="function"?e=>Buffer.from(e,"utf-8").toString("base64"):()=>{throw new Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}const Tm=Sm();class Rm{constructor(t){this.version=3,this.file=t.file,this.sources=t.sources,this.sourcesContent=t.sourcesContent,this.names=t.names,this.mappings=Ea(t.mappings),typeof t.x_google_ignoreList<"u"&&(this.x_google_ignoreList=t.x_google_ignoreList)}toString(){return JSON.stringify(this)}toUrl(){return"data:application/json;charset=utf-8;base64,"+Tm(this.toString())}}function Cm(e){const t=e.split(`
|
|
27
|
-
`),n=t.filter(s=>/^\t+/.test(s)),r=t.filter(s=>/^ {2,}/.test(s));if(n.length===0&&r.length===0)return null;if(n.length>=r.length)return" ";const o=r.reduce((s,i)=>{const a=/^ +/.exec(i)[0].length;return Math.min(a,s)},1/0);return new Array(o+1).join(" ")}function
|
|
28
|
-
`),n=[];for(let r=0,o=0;r<t.length;r++)n.push(o),o+=t[r].length+1;return function(o){let s=0,i=n.length;for(;s<i;){const u=s+i>>1;o<n[u]?i=u:s=u+1}const a=s-1,c=o-n[a];return{line:a,column:c}}}const
|
|
25
|
+
`)}b.write("payload.value = newResult;"),b.write("return payload;");const D=b.compile();return(p,S)=>D(d,p,S)};let s;const i=Vt,a=!jn.jitless,u=a&&uc.value,l=t.catchall;let h;e._zod.parse=(d,b)=>{h??(h=r.value);const O=d.value;return i(O)?a&&u&&b?.async===!1&&b.jitless!==!0?(s||(s=o(t.shape)),d=s(d,b),l?Zo([],O,d,b,h,e):d):n(d,b):(d.issues.push({expected:"object",code:"invalid_type",input:O,inst:e}),d)}});function Vo(e,t,n,r){for(const s of e)if(s.issues.length===0)return t.value=s.value,t;const o=e.filter(s=>!Ot(s));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(s=>s.issues.map(i=>ut(i,r,ot())))}),t)}const Wo=f("$ZodUnion",(e,t)=>{he.init(e,t),ie(e._zod,"optin",()=>t.options.some(o=>o._zod.optin==="optional")?"optional":void 0),ie(e._zod,"optout",()=>t.options.some(o=>o._zod.optout==="optional")?"optional":void 0),ie(e._zod,"values",()=>{if(t.options.every(o=>o._zod.values))return new Set(t.options.flatMap(o=>Array.from(o._zod.values)))}),ie(e._zod,"pattern",()=>{if(t.options.every(o=>o._zod.pattern)){const o=t.options.map(s=>s._zod.pattern);return new RegExp(`^(${o.map(s=>Vn(s.source)).join("|")})$`)}});const n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(o,s)=>{if(n)return r(o,s);let i=!1;const a=[];for(const c of t.options){const u=c._zod.run({value:o.value,issues:[]},s);if(u instanceof Promise)a.push(u),i=!0;else{if(u.issues.length===0)return u;a.push(u)}}return i?Promise.all(a).then(c=>Vo(c,o,e,s)):Vo(a,o,e,s)}}),Xu=f("$ZodDiscriminatedUnion",(e,t)=>{Wo.init(e,t);const n=e._zod.parse;ie(e._zod,"propValues",()=>{const o={};for(const s of t.options){const i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(s)}"`);for(const[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(const u of c)o[a].add(u)}}return o});const r=cn(()=>{const o=t.options,s=new Map;for(const i of o){const a=i._zod.propValues?.[t.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(i)}"`);for(const c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});e._zod.parse=(o,s)=>{const i=o.value;if(!Vt(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:e}),o;const a=r.value.get(i?.[t.discriminator]);return a?a._zod.run(o,s):t.unionFallback?n(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:i,path:[t.discriminator],inst:e}),o)}}),Qu=f("$ZodIntersection",(e,t)=>{he.init(e,t),e._zod.parse=(n,r)=>{const o=n.value,s=t.left._zod.run({value:o,issues:[]},r),i=t.right._zod.run({value:o,issues:[]},r);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>Ko(n,c,u)):Ko(n,s,i)}});function Qn(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(At(e)&&At(t)){const n=Object.keys(t),r=Object.keys(e).filter(s=>n.indexOf(s)!==-1),o={...e,...t};for(const s of r){const i=Qn(e[s],t[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let r=0;r<e.length;r++){const o=e[r],s=t[r],i=Qn(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[r,...i.mergeErrorPath]};n.push(i.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Ko(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),Ot(e))return e;const r=Qn(t.value,n.value);if(!r.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(r.mergeErrorPath)}`);return e.value=r.data,e}const qu=f("$ZodRecord",(e,t)=>{he.init(e,t),e._zod.parse=(n,r)=>{const o=n.value;if(!At(o))return n.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),n;const s=[],i=t.keyType._zod.values;if(i){n.value={};const a=new Set;for(const u of i)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){a.add(typeof u=="number"?u.toString():u);const l=t.valueType._zod.run({value:o[u],issues:[]},r);l instanceof Promise?s.push(l.then(h=>{h.issues.length&&n.issues.push(...bt(u,h.issues)),n.value[u]=h.value})):(l.issues.length&&n.issues.push(...bt(u,l.issues)),n.value[u]=l.value)}let c;for(const u in o)a.has(u)||(c=c??[],c.push(u));c&&c.length>0&&n.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:c})}else{n.value={};for(const a of Reflect.ownKeys(o)){if(a==="__proto__")continue;const c=t.keyType._zod.run({value:a,issues:[]},r);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(c.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(l=>ut(l,r,ot())),input:a,path:[a],inst:e}),n.value[c.value]=c.value;continue}const u=t.valueType._zod.run({value:o[a],issues:[]},r);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&n.issues.push(...bt(a,l.issues)),n.value[c.value]=l.value})):(u.issues.length&&n.issues.push(...bt(a,u.issues)),n.value[c.value]=u.value)}}return s.length?Promise.all(s).then(()=>n):n}}),Ju=f("$ZodEnum",(e,t)=>{he.init(e,t);const n=sc(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=new RegExp(`^(${n.filter(o=>lc.has(typeof o)).map(o=>typeof o=="string"?It(o):o.toString()).join("|")})$`),e._zod.parse=(o,s)=>{const i=o.value;return r.has(i)||o.issues.push({code:"invalid_value",values:n,input:i,inst:e}),o}}),el=f("$ZodLiteral",(e,t)=>{if(he.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");const n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map(r=>typeof r=="string"?It(r):r?It(r.toString()):String(r)).join("|")})$`),e._zod.parse=(r,o)=>{const s=r.value;return n.has(s)||r.issues.push({code:"invalid_value",values:t.values,input:s,inst:e}),r}}),tl=f("$ZodTransform",(e,t)=>{he.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Ao(e.constructor.name);const o=t.transform(n.value,n);if(r.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(n.value=i,n));if(o instanceof Promise)throw new vt;return n.value=o,n}});function Yo(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const nl=f("$ZodOptional",(e,t)=>{he.init(e,t),e._zod.optin="optional",e._zod.optout="optional",ie(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),ie(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${Vn(n.source)})?$`):void 0}),e._zod.parse=(n,r)=>{if(t.innerType._zod.optin==="optional"){const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(s=>Yo(s,n.value)):Yo(o,n.value)}return n.value===void 0?n:t.innerType._zod.run(n,r)}}),rl=f("$ZodNullable",(e,t)=>{he.init(e,t),ie(e._zod,"optin",()=>t.innerType._zod.optin),ie(e._zod,"optout",()=>t.innerType._zod.optout),ie(e._zod,"pattern",()=>{const n=t.innerType._zod.pattern;return n?new RegExp(`^(${Vn(n.source)}|null)$`):void 0}),ie(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(n,r)=>n.value===null?n:t.innerType._zod.run(n,r)}),ol=f("$ZodDefault",(e,t)=>{he.init(e,t),e._zod.optin="optional",ie(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);if(n.value===void 0)return n.value=t.defaultValue,n;const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(s=>Xo(s,t)):Xo(o,t)}});function Xo(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const il=f("$ZodPrefault",(e,t)=>{he.init(e,t),e._zod.optin="optional",ie(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>(r.direction==="backward"||n.value===void 0&&(n.value=t.defaultValue),t.innerType._zod.run(n,r))}),sl=f("$ZodNonOptional",(e,t)=>{he.init(e,t),ie(e._zod,"values",()=>{const n=t.innerType._zod.values;return n?new Set([...n].filter(r=>r!==void 0)):void 0}),e._zod.parse=(n,r)=>{const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(s=>Qo(s,e)):Qo(o,e)}});function Qo(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const al=f("$ZodCatch",(e,t)=>{he.init(e,t),ie(e._zod,"optin",()=>t.innerType._zod.optin),ie(e._zod,"optout",()=>t.innerType._zod.optout),ie(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(s=>(n.value=s.value,s.issues.length&&(n.value=t.catchValue({...n,error:{issues:s.issues.map(i=>ut(i,r,ot()))},input:n.value}),n.issues=[]),n)):(n.value=o.value,o.issues.length&&(n.value=t.catchValue({...n,error:{issues:o.issues.map(s=>ut(s,r,ot()))},input:n.value}),n.issues=[]),n)}}),cl=f("$ZodPipe",(e,t)=>{he.init(e,t),ie(e._zod,"values",()=>t.in._zod.values),ie(e._zod,"optin",()=>t.in._zod.optin),ie(e._zod,"optout",()=>t.out._zod.optout),ie(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,r)=>{if(r.direction==="backward"){const s=t.out._zod.run(n,r);return s instanceof Promise?s.then(i=>hn(i,t.in,r)):hn(s,t.in,r)}const o=t.in._zod.run(n,r);return o instanceof Promise?o.then(s=>hn(s,t.out,r)):hn(o,t.out,r)}});function hn(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const ul=f("$ZodReadonly",(e,t)=>{he.init(e,t),ie(e._zod,"propValues",()=>t.innerType._zod.propValues),ie(e._zod,"values",()=>t.innerType._zod.values),ie(e._zod,"optin",()=>t.innerType?._zod?.optin),ie(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,r)=>{if(r.direction==="backward")return t.innerType._zod.run(n,r);const o=t.innerType._zod.run(n,r);return o instanceof Promise?o.then(qo):qo(o)}});function qo(e){return e.value=Object.freeze(e.value),e}const ll=f("$ZodCustom",(e,t)=>{De.init(e,t),he.init(e,t),e._zod.parse=(n,r)=>n,e._zod.check=n=>{const r=n.value,o=t.fn(r);if(o instanceof Promise)return o.then(s=>Jo(s,n,r,e));Jo(o,n,r,e)}});function Jo(e,t,n,r){if(!e){const o={code:"custom",input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(o.params=r._zod.def.params),t.issues.push(Wt(o))}}var ei;class pl{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...n){const r=n[0];if(this._map.set(t,r),r&&typeof r=="object"&&"id"in r){if(this._idmap.has(r.id))throw new Error(`ID ${r.id} already exists in the registry`);this._idmap.set(r.id,t)}return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const n=this._map.get(t);return n&&typeof n=="object"&&"id"in n&&this._idmap.delete(n.id),this._map.delete(t),this}get(t){const n=t._zod.parent;if(n){const r={...this.get(n)??{}};delete r.id;const o={...r,...this._map.get(t)};return Object.keys(o).length?o:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function dl(){return new pl}(ei=globalThis).__zod_globalRegistry??(ei.__zod_globalRegistry=dl());const mn=globalThis.__zod_globalRegistry;function fl(e,t){return new e({type:"string",...P(t)})}function hl(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...P(t)})}function ti(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...P(t)})}function ml(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...P(t)})}function El(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...P(t)})}function gl(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...P(t)})}function _l(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...P(t)})}function ni(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...P(t)})}function yl(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...P(t)})}function Sl(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...P(t)})}function Tl(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...P(t)})}function Rl(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...P(t)})}function wl(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...P(t)})}function Cl(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...P(t)})}function vl(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...P(t)})}function Al(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...P(t)})}function Il(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...P(t)})}function Ol(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...P(t)})}function bl(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...P(t)})}function $l(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...P(t)})}function Ll(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...P(t)})}function Nl(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...P(t)})}function Dl(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...P(t)})}function kl(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...P(t)})}function xl(e,t){return new e({type:"string",format:"date",check:"string_format",...P(t)})}function Pl(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...P(t)})}function Ml(e,t){return new e({type:"string",format:"duration",check:"string_format",...P(t)})}function Ul(e,t){return new e({type:"number",checks:[],...P(t)})}function Fl(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...P(t)})}function zl(e,t){return new e({type:"boolean",...P(t)})}function Gl(e){return new e({type:"unknown"})}function Hl(e,t){return new e({type:"never",...P(t)})}function ri(e,t){return new Fo({check:"less_than",...P(t),value:e,inclusive:!1})}function qn(e,t){return new Fo({check:"less_than",...P(t),value:e,inclusive:!0})}function oi(e,t){return new zo({check:"greater_than",...P(t),value:e,inclusive:!1})}function Jn(e,t){return new zo({check:"greater_than",...P(t),value:e,inclusive:!0})}function ii(e,t){return new ou({check:"multiple_of",...P(t),value:e})}function si(e,t){return new su({check:"max_length",...P(t),maximum:e})}function En(e,t){return new au({check:"min_length",...P(t),minimum:e})}function ai(e,t){return new cu({check:"length_equals",...P(t),length:e})}function jl(e,t){return new uu({check:"string_format",format:"regex",...P(t),pattern:e})}function Bl(e){return new lu({check:"string_format",format:"lowercase",...P(e)})}function Zl(e){return new pu({check:"string_format",format:"uppercase",...P(e)})}function Vl(e,t){return new du({check:"string_format",format:"includes",...P(t),includes:e})}function Wl(e,t){return new fu({check:"string_format",format:"starts_with",...P(t),prefix:e})}function Kl(e,t){return new hu({check:"string_format",format:"ends_with",...P(t),suffix:e})}function $t(e){return new mu({check:"overwrite",tx:e})}function Yl(e){return $t(t=>t.normalize(e))}function Xl(){return $t(e=>e.trim())}function Ql(){return $t(e=>e.toLowerCase())}function ql(){return $t(e=>e.toUpperCase())}function Jl(){return $t(e=>cc(e))}function ep(e,t,n){return new e({type:"array",element:t,...P(n)})}function tp(e,t,n){return new e({type:"custom",check:"custom",fn:t,...P(n)})}function np(e){const t=rp(n=>(n.addIssue=r=>{if(typeof r=="string")n.issues.push(Wt(r,n.value,t._zod.def));else{const o=r;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),n.issues.push(Wt(o))}},e(n.value,n)));return t}function rp(e,t){const n=new De({check:"custom",...P(t)});return n._zod.check=e,n}const op=f("ZodISODateTime",(e,t)=>{bu.init(e,t),me.init(e,t)});function ip(e){return kl(op,e)}const sp=f("ZodISODate",(e,t)=>{$u.init(e,t),me.init(e,t)});function ap(e){return xl(sp,e)}const cp=f("ZodISOTime",(e,t)=>{Lu.init(e,t),me.init(e,t)});function up(e){return Pl(cp,e)}const lp=f("ZodISODuration",(e,t)=>{Nu.init(e,t),me.init(e,t)});function pp(e){return Ml(lp,e)}const dp=(e,t)=>{No.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:n=>Tc(e,n)},flatten:{value:n=>Sc(e,n)},addIssue:{value:n=>{e.issues.push(n),e.message=JSON.stringify(e.issues,Bn,2)}},addIssues:{value:n=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,Bn,2)}},isEmpty:{get(){return e.issues.length===0}}})},ze=f("ZodError",dp,{Parent:Error}),fp=Kn(ze),hp=Yn(ze),mp=ln(ze),Ep=pn(ze),gp=Cc(ze),_p=vc(ze),yp=Ac(ze),Sp=Ic(ze),Tp=Oc(ze),Rp=bc(ze),wp=$c(ze),Cp=Lc(ze),ge=f("ZodType",(e,t)=>(he.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone(Et(t,{checks:[...t.checks??[],...n.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]})),e.clone=(n,r)=>ct(e,n,r),e.brand=()=>e,e.register=((n,r)=>(n.add(e,r),e)),e.parse=(n,r)=>fp(e,n,r,{callee:e.parse}),e.safeParse=(n,r)=>mp(e,n,r),e.parseAsync=async(n,r)=>hp(e,n,r,{callee:e.parseAsync}),e.safeParseAsync=async(n,r)=>Ep(e,n,r),e.spa=e.safeParseAsync,e.encode=(n,r)=>gp(e,n,r),e.decode=(n,r)=>_p(e,n,r),e.encodeAsync=async(n,r)=>yp(e,n,r),e.decodeAsync=async(n,r)=>Sp(e,n,r),e.safeEncode=(n,r)=>Tp(e,n,r),e.safeDecode=(n,r)=>Rp(e,n,r),e.safeEncodeAsync=async(n,r)=>wp(e,n,r),e.safeDecodeAsync=async(n,r)=>Cp(e,n,r),e.refine=(n,r)=>e.check(hd(n,r)),e.superRefine=n=>e.check(md(n)),e.overwrite=n=>e.check($t(n)),e.optional=()=>mi(e),e.nullable=()=>Ei(e),e.nullish=()=>mi(Ei(e)),e.nonoptional=n=>ad(e,n),e.array=()=>oe(e),e.or=n=>Lt([e,n]),e.and=n=>Qp(e,n),e.transform=n=>_i(e,td(n)),e.default=n=>od(e,n),e.prefault=n=>sd(e,n),e.catch=n=>ud(e,n),e.pipe=n=>_i(e,n),e.readonly=()=>dd(e),e.describe=n=>{const r=e.clone();return mn.add(r,{description:n}),r},Object.defineProperty(e,"description",{get(){return mn.get(e)?.description},configurable:!0}),e.meta=(...n)=>{if(n.length===0)return mn.get(e);const r=e.clone();return mn.add(r,n[0]),r},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),ci=f("_ZodString",(e,t)=>{Xn.init(e,t),ge.init(e,t);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...r)=>e.check(jl(...r)),e.includes=(...r)=>e.check(Vl(...r)),e.startsWith=(...r)=>e.check(Wl(...r)),e.endsWith=(...r)=>e.check(Kl(...r)),e.min=(...r)=>e.check(En(...r)),e.max=(...r)=>e.check(si(...r)),e.length=(...r)=>e.check(ai(...r)),e.nonempty=(...r)=>e.check(En(1,...r)),e.lowercase=r=>e.check(Bl(r)),e.uppercase=r=>e.check(Zl(r)),e.trim=()=>e.check(Xl()),e.normalize=(...r)=>e.check(Yl(...r)),e.toLowerCase=()=>e.check(Ql()),e.toUpperCase=()=>e.check(ql()),e.slugify=()=>e.check(Jl())}),vp=f("ZodString",(e,t)=>{Xn.init(e,t),ci.init(e,t),e.email=n=>e.check(hl(Ap,n)),e.url=n=>e.check(ni(li,n)),e.jwt=n=>e.check(Dl(Gp,n)),e.emoji=n=>e.check(yl(Ip,n)),e.guid=n=>e.check(ti(ui,n)),e.uuid=n=>e.check(ml(gn,n)),e.uuidv4=n=>e.check(El(gn,n)),e.uuidv6=n=>e.check(gl(gn,n)),e.uuidv7=n=>e.check(_l(gn,n)),e.nanoid=n=>e.check(Sl(Op,n)),e.guid=n=>e.check(ti(ui,n)),e.cuid=n=>e.check(Tl(bp,n)),e.cuid2=n=>e.check(Rl($p,n)),e.ulid=n=>e.check(wl(Lp,n)),e.base64=n=>e.check($l(Up,n)),e.base64url=n=>e.check(Ll(Fp,n)),e.xid=n=>e.check(Cl(Np,n)),e.ksuid=n=>e.check(vl(Dp,n)),e.ipv4=n=>e.check(Al(kp,n)),e.ipv6=n=>e.check(Il(xp,n)),e.cidrv4=n=>e.check(Ol(Pp,n)),e.cidrv6=n=>e.check(bl(Mp,n)),e.e164=n=>e.check(Nl(zp,n)),e.datetime=n=>e.check(ip(n)),e.date=n=>e.check(ap(n)),e.time=n=>e.check(up(n)),e.duration=n=>e.check(pp(n))});function I(e){return fl(vp,e)}const me=f("ZodStringFormat",(e,t)=>{pe.init(e,t),ci.init(e,t)}),Ap=f("ZodEmail",(e,t)=>{Su.init(e,t),me.init(e,t)}),ui=f("ZodGUID",(e,t)=>{_u.init(e,t),me.init(e,t)}),gn=f("ZodUUID",(e,t)=>{yu.init(e,t),me.init(e,t)}),li=f("ZodURL",(e,t)=>{Tu.init(e,t),me.init(e,t)});function Kt(e){return ni(li,e)}const Ip=f("ZodEmoji",(e,t)=>{Ru.init(e,t),me.init(e,t)}),Op=f("ZodNanoID",(e,t)=>{wu.init(e,t),me.init(e,t)}),bp=f("ZodCUID",(e,t)=>{Cu.init(e,t),me.init(e,t)}),$p=f("ZodCUID2",(e,t)=>{vu.init(e,t),me.init(e,t)}),Lp=f("ZodULID",(e,t)=>{Au.init(e,t),me.init(e,t)}),Np=f("ZodXID",(e,t)=>{Iu.init(e,t),me.init(e,t)}),Dp=f("ZodKSUID",(e,t)=>{Ou.init(e,t),me.init(e,t)}),kp=f("ZodIPv4",(e,t)=>{Du.init(e,t),me.init(e,t)}),xp=f("ZodIPv6",(e,t)=>{ku.init(e,t),me.init(e,t)}),Pp=f("ZodCIDRv4",(e,t)=>{xu.init(e,t),me.init(e,t)}),Mp=f("ZodCIDRv6",(e,t)=>{Pu.init(e,t),me.init(e,t)}),Up=f("ZodBase64",(e,t)=>{Mu.init(e,t),me.init(e,t)}),Fp=f("ZodBase64URL",(e,t)=>{Fu.init(e,t),me.init(e,t)}),zp=f("ZodE164",(e,t)=>{zu.init(e,t),me.init(e,t)}),Gp=f("ZodJWT",(e,t)=>{Hu.init(e,t),me.init(e,t)}),pi=f("ZodNumber",(e,t)=>{Ho.init(e,t),ge.init(e,t),e.gt=(r,o)=>e.check(oi(r,o)),e.gte=(r,o)=>e.check(Jn(r,o)),e.min=(r,o)=>e.check(Jn(r,o)),e.lt=(r,o)=>e.check(ri(r,o)),e.lte=(r,o)=>e.check(qn(r,o)),e.max=(r,o)=>e.check(qn(r,o)),e.int=r=>e.check(We(r)),e.safe=r=>e.check(We(r)),e.positive=r=>e.check(oi(0,r)),e.nonnegative=r=>e.check(Jn(0,r)),e.negative=r=>e.check(ri(0,r)),e.nonpositive=r=>e.check(qn(0,r)),e.multipleOf=(r,o)=>e.check(ii(r,o)),e.step=(r,o)=>e.check(ii(r,o)),e.finite=()=>e;const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function _n(e){return Ul(pi,e)}const Hp=f("ZodNumberFormat",(e,t)=>{ju.init(e,t),pi.init(e,t)});function We(e){return Fl(Hp,e)}const jp=f("ZodBoolean",(e,t)=>{Bu.init(e,t),ge.init(e,t)});function ee(e){return zl(jp,e)}const Bp=f("ZodUnknown",(e,t)=>{Zu.init(e,t),ge.init(e,t)});function di(){return Gl(Bp)}const Zp=f("ZodNever",(e,t)=>{Vu.init(e,t),ge.init(e,t)});function Vp(e){return Hl(Zp,e)}const Wp=f("ZodArray",(e,t)=>{Wu.init(e,t),ge.init(e,t),e.element=t.element,e.min=(n,r)=>e.check(En(n,r)),e.nonempty=n=>e.check(En(1,n)),e.max=(n,r)=>e.check(si(n,r)),e.length=(n,r)=>e.check(ai(n,r)),e.unwrap=()=>e.element});function oe(e,t){return ep(Wp,e,t)}const Kp=f("ZodObject",(e,t)=>{Yu.init(e,t),ge.init(e,t),ie(e,"shape",()=>t.shape),e.keyof=()=>Ee(Object.keys(e._zod.def.shape)),e.catchall=n=>e.clone({...e._zod.def,catchall:n}),e.passthrough=()=>e.clone({...e._zod.def,catchall:di()}),e.loose=()=>e.clone({...e._zod.def,catchall:di()}),e.strict=()=>e.clone({...e._zod.def,catchall:Vp()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=n=>mc(e,n),e.safeExtend=n=>Ec(e,n),e.merge=n=>gc(e,n),e.pick=n=>fc(e,n),e.omit=n=>hc(e,n),e.partial=(...n)=>_c(hi,e,n[0]),e.required=(...n)=>yc(gi,e,n[0])});function R(e,t){const n={type:"object",shape:e??{},...P(t)};return new Kp(n)}const fi=f("ZodUnion",(e,t)=>{Wo.init(e,t),ge.init(e,t),e.options=t.options});function Lt(e,t){return new fi({type:"union",options:e,...P(t)})}const Yp=f("ZodDiscriminatedUnion",(e,t)=>{fi.init(e,t),Xu.init(e,t)});function it(e,t,n){return new Yp({type:"union",options:t,discriminator:e,...P(n)})}const Xp=f("ZodIntersection",(e,t)=>{Qu.init(e,t),ge.init(e,t)});function Qp(e,t){return new Xp({type:"intersection",left:e,right:t})}const qp=f("ZodRecord",(e,t)=>{qu.init(e,t),ge.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function Qe(e,t,n){return new qp({type:"record",keyType:e,valueType:t,...P(n)})}const er=f("ZodEnum",(e,t)=>{Ju.init(e,t),ge.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(r,o)=>{const s={};for(const i of r)if(n.has(i))s[i]=t.entries[i];else throw new Error(`Key ${i} not found in enum`);return new er({...t,checks:[],...P(o),entries:s})},e.exclude=(r,o)=>{const s={...t.entries};for(const i of r)if(n.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new er({...t,checks:[],...P(o),entries:s})}});function Ee(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map(r=>[r,r])):e;return new er({type:"enum",entries:n,...P(t)})}const Jp=f("ZodLiteral",(e,t)=>{el.init(e,t),ge.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function k(e,t){return new Jp({type:"literal",values:Array.isArray(e)?e:[e],...P(t)})}const ed=f("ZodTransform",(e,t)=>{tl.init(e,t),ge.init(e,t),e._zod.parse=(n,r)=>{if(r.direction==="backward")throw new Ao(e.constructor.name);n.addIssue=s=>{if(typeof s=="string")n.issues.push(Wt(s,n.value,t));else{const i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=n.value),i.inst??(i.inst=e),n.issues.push(Wt(i))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then(s=>(n.value=s,n)):(n.value=o,n)}});function td(e){return new ed({type:"transform",transform:e})}const hi=f("ZodOptional",(e,t)=>{nl.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType});function mi(e){return new hi({type:"optional",innerType:e})}const nd=f("ZodNullable",(e,t)=>{rl.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Ei(e){return new nd({type:"nullable",innerType:e})}const rd=f("ZodDefault",(e,t)=>{ol.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function od(e,t){return new rd({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():$o(t)}})}const id=f("ZodPrefault",(e,t)=>{il.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType});function sd(e,t){return new id({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():$o(t)}})}const gi=f("ZodNonOptional",(e,t)=>{sl.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ad(e,t){return new gi({type:"nonoptional",innerType:e,...P(t)})}const cd=f("ZodCatch",(e,t)=>{al.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ud(e,t){return new cd({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const ld=f("ZodPipe",(e,t)=>{cl.init(e,t),ge.init(e,t),e.in=t.in,e.out=t.out});function _i(e,t){return new ld({type:"pipe",in:e,out:t})}const pd=f("ZodReadonly",(e,t)=>{ul.init(e,t),ge.init(e,t),e.unwrap=()=>e._zod.def.innerType});function dd(e){return new pd({type:"readonly",innerType:e})}const fd=f("ZodCustom",(e,t)=>{ll.init(e,t),ge.init(e,t)});function hd(e,t={}){return tp(fd,e,t)}function md(e){return np(e)}const Ed={url:"must be a valid URL",email:"must be a valid email address"},gd=e=>{const t=e?.at(-1);return typeof t=="string"?`'${t}'`:"Field"},_d=e=>e===null?"null":typeof e,yd=e=>{switch(e.code){case"invalid_type":{const{input:t}=e;return t===void 0?{message:`${gd(e.path)} is required`}:{message:`Expected ${String(e.expected)}, received ${_d(t)}`}}case"invalid_format":{const t=Ed[e.format];return t?{message:t}:void 0}case"unrecognized_keys":return{message:`Unrecognized property: ${e.keys.map(t=>`'${t}'`).join(", ")}`};case"invalid_union":{const t=e.path?.at(-1);return typeof t=="string"?{message:`'${t}' is required or has invalid value`}:void 0}case"invalid_value":{const{values:t}=e;return t?{message:`Expected one of: ${t.map(n=>`'${String(n)}'`).join(", ")}`}:void 0}case"invalid_key":{const t=e.issues?.[0];return t?{message:t.message}:void 0}default:return}},K={TEXTAREA:"TEXTAREA",INPUTBOX:"INPUTBOX",SELECTBOX:"SELECTBOX",IMAGE:"IMAGE",TOGGLE:"TOGGLE",BUTTON:"BUTTON",DECK:"DECK",MENU:"MENU",NAVIGATION_MENU:"NAVIGATION_MENU",LOGO:"LOGO",INFO:"INFO",DIVIDER:"DIVIDER",PRODUCT_SELECTOR:"PRODUCT_SELECTOR",CATEGORY_SELECTOR:"CATEGORY_SELECTOR"};Ee(Object.values(K));const te={TEXT:"TEXT",BUTTON:"BUTTON",IMAGE:"IMAGE",TOGGLE:"TOGGLE",SELECTBOX:"SELECTBOX",BACKGROUND:"BACKGROUND",COLOR_PICKER:"COLOR_PICKER",LOGO:"LOGO",DIVIDER:"DIVIDER",INFO:"INFO"};Ee(Object.values(te));const Nt={SECTION:"SECTION",HEADER:"HEADER",FOOTER:"FOOTER"},Sd=Ee(Object.values(Nt)),Yt={CONTENT:"Content",DESIGN:"Design"};Ee(Object.values(Yt));const Td={TEXT:"TEXT",IMAGE:"IMAGE"},Rd=Ee(Object.values(Td)),lt={SCROLL_TO_TILE:"SCROLL_TO_TILE",HYPER_LINK:"HYPER_LINK",MAIL_LINK:"MAIL_LINK",TEL_LINK:"TEL_LINK",GO_TO_STORE:"GO_TO_STORE",GO_TO_STORE_LINK:"GO_TO_STORE_LINK",GO_TO_PAGE:"GO_TO_PAGE",GO_TO_CATEGORY:"GO_TO_CATEGORY",GO_TO_CATEGORY_LINK:"GO_TO_CATEGORY_LINK"},wd=Ee(Object.values(lt)),yn={COLOR:"COLOR",GRADIENT:"GRADIENT",NONE:"NONE"},Cd=Ee(Object.values(yn)),vd={SOLID:"SOLID",OUTLINE:"OUTLINE",TEXT:"TEXT"},Ad=Ee(Object.values(vd)),Id={SMALL:"SMALL",MEDIUM:"MEDIUM",LARGE:"LARGE"},Od=Ee(Object.values(Id)),bd={ROUND_CORNER:"ROUND_CORNER",RECTANGLE:"RECTANGLE",PILL:"PILL"},$d=Ee(Object.values(bd)),tr={COLOR:"COLOR",GRADIENT:"GRADIENT"},Ld=Ee(Object.values(tr));Ee(["none","all","small"]);const qe={PRODUCT:"PRODUCT",CATALOG:"CATALOG",CATEGORY:"CATEGORY",HOME:"HOME",CUSTOM:"CUSTOM"},yi={HOME:"home",CATALOG:"catalog",CATEGORY:"category",PRODUCT:"product"},Nd=Ee(Object.values(qe));Ee(Object.values(yi));const Dd={apparel_footwear:"apparel_footwear",vape_smoke:"vape_smoke",home_garden:"home_garden",sport_outdoor:"sport_outdoor",jewelry_accessories:"jewelry_accessories",pet_animals:"pet_animals",bikes:"bikes",health_beauty:"health_beauty",gift_shop:"gift_shop",electronics:"electronics",other:"other"},kd=Ee(Object.values(Dd)),xd={HEADER_LEFT:"HEADER_LEFT",HEADER_CENTER_LOGO_BURGER:"HEADER_CENTER_LOGO_BURGER",HEADER_CENTER_LOGO_COMPACT:"HEADER_CENTER_LOGO_COMPACT",HEADER_CENTER_LOGO_DETAILED:"HEADER_CENTER_LOGO_DETAILED",HEADER_LEFT_LOGO_BURGER:"HEADER_LEFT_LOGO_BURGER",HEADER_LEFT_LOGO_COMPACT:"HEADER_LEFT_LOGO_COMPACT",HEADER_LEFT_LOGO_DETAILED:"HEADER_LEFT_LOGO_DETAILED",HEADER_LEFT_LOGO_SEARCH:"HEADER_LEFT_LOGO_SEARCH",HEADER_LEFT_LOGO_TEXT:"HEADER_LEFT_LOGO_TEXT",TEXT_ONE_COLUMN:"TEXT_ONE_COLUMN",TEXT_TITLE_LEFT:"TEXT_TITLE_LEFT",TEXT_SUBTITLE_RIGHT:"TEXT_SUBTITLE_RIGHT",TEXT_TWO_COLUMNS:"TEXT_TWO_COLUMNS",TEXT_CENTER:"TEXT_CENTER",TEXT_DESCRIPTION_RIGHT:"TEXT_DESCRIPTION_RIGHT",CTA_BANNER_LEFT:"CTA_BANNER_LEFT",CTA_BANNER_RIGHT:"CTA_BANNER_RIGHT",CTA_BANNER_CENTER:"CTA_BANNER_CENTER",CTA_BANNER_BOTTOM:"CTA_BANNER_BOTTOM",CTA_PROMO_BAR_LEFT:"CTA_PROMO_BAR_LEFT",CTA_PROMO_BAR_RIGHT:"CTA_PROMO_BAR_RIGHT",CTA_STORY_LEFT:"CTA_STORY_LEFT",CTA_STORY_RIGHT:"CTA_STORY_RIGHT",CTA_FULLWIDTH_CENTER:"CTA_FULLWIDTH_CENTER",CTA_FULLWIDTH_LEFT:"CTA_FULLWIDTH_LEFT",COVER_FULLSCREEN_CENTER:"COVER_FULLSCREEN_CENTER",COVER_FULLSCREEN_LEFT:"COVER_FULLSCREEN_LEFT",COVER_FULLSCREEN_CENTER_LEFT:"COVER_FULLSCREEN_CENTER_LEFT",COVER_FULLSCREEN_RIGHT:"COVER_FULLSCREEN_RIGHT",COVER_FULLSCREEN_BOTTOM:"COVER_FULLSCREEN_BOTTOM",COVER_FULLSCREEN_BOTTOM_RIGHT:"COVER_FULLSCREEN_BOTTOM_RIGHT",COVER_FULLSCREEN_BOTTOM_LEFT:"COVER_FULLSCREEN_BOTTOM_LEFT",COVER_FULLSCREEN_TOP:"COVER_FULLSCREEN_TOP",COVER_SIDEBAR_RIGHT:"COVER_SIDEBAR_RIGHT",COVER_SIDEBAR_LEFT:"COVER_SIDEBAR_LEFT",COVER_HALFSCREEN_LEFT:"COVER_HALFSCREEN_LEFT",COVER_HALFSCREEN_CENTER:"COVER_HALFSCREEN_CENTER",COVER_COLLAGE_BOTTOM:"COVER_COLLAGE_BOTTOM",COVER_COLLAGE_LEFT:"COVER_COLLAGE_LEFT",IMAGE_SUBTITLE_RIGHT:"IMAGE_SUBTITLE_RIGHT",IMAGE_TITLE_LEFT:"IMAGE_TITLE_LEFT",IMAGE_LEFT:"IMAGE_LEFT",IMAGE_RIGHT:"IMAGE_RIGHT",IMAGE_CENTER:"IMAGE_CENTER",IMAGE_SIDE_TITLE:"IMAGE_SIDE_TITLE",LOCATION_MAP_RIGHT:"LOCATION_MAP_RIGHT",LOCATION_MAP_LEFT:"LOCATION_MAP_LEFT",LOCATION_IMAGE_RIGHT:"LOCATION_IMAGE_RIGHT",LOCATION_IMAGE_LEFT:"LOCATION_IMAGE_LEFT",LOCATION_BACKGROUND_RIGHT:"LOCATION_BACKGROUND_RIGHT",LOCATION_BACKGROUND_LEFT:"LOCATION_BACKGROUND_LEFT",LOCATION_FULL:"LOCATION_FULL",LOCATION_SHORT:"LOCATION_SHORT",REVIEWS_MINIMAL:"REVIEWS_MINIMAL",REVIEWS_CARDS:"REVIEWS_CARDS",REVIEWS:"REVIEWS",REVIEWS_CLASSIC:"REVIEWS_CLASSIC",REVIEWS_FULLSCREEN_BG:"REVIEWS_FULLSCREEN_BG",REVIEWS_FULLSCREEN_SIDEBAR_LEFT:"REVIEWS_FULLSCREEN_SIDEBAR_LEFT",REVIEWS_FULLSCREEN_SIDEBAR_RIGHT:"REVIEWS_FULLSCREEN_SIDEBAR_RIGHT",REVIEWS_CARDS_PHOTO:"REVIEWS_CARDS_PHOTO",REVIEWS_PHOTO_SPEECH_RIGHT:"REVIEWS_PHOTO_SPEECH_RIGHT",REVIEWS_PHOTO_SPEECH_LEFT:"REVIEWS_PHOTO_SPEECH_LEFT",REVIEWS_SOCIAL_FEED:"REVIEWS_SOCIAL_FEED",REVIEWS_ADAPTIVE:"REVIEWS_ADAPTIVE",FEATURES_CLASSIC_CENTER:"FEATURES_CLASSIC_CENTER",FEATURES_CLASSIC_LEFT:"FEATURES_CLASSIC_LEFT",FEATURES_ACCORDION:"FEATURES_ACCORDION",FEATURES_MINIMAL:"FEATURES_MINIMAL",FEATURES_SMALL_ICONS:"FEATURES_SMALL_ICONS",FEATURES_CAROUSEL:"FEATURES_CAROUSEL",FEATURES_IMAGE_LEFT:"FEATURES_IMAGE_LEFT",FEATURES_IMAGE_RIGHT:"FEATURES_IMAGE_RIGHT",ANNOUNCEMENT_CENTER:"ANNOUNCEMENT_CENTER",SLIDER_FULLSCREEN_CENTER:"SLIDER_FULLSCREEN_CENTER",SLIDER_FULLSCREEN_LEFT:"SLIDER_FULLSCREEN_LEFT",SLIDER_BASIC:"SLIDER_BASIC",SLIDER_CAROUSEL:"SLIDER_CAROUSEL",SLIDER_CAROUSEL_PORTRAIT:"SLIDER_CAROUSEL_PORTRAIT",SLIDER_SPLIT:"SLIDER_SPLIT",SLIDER_SPLIT_REVERSE:"SLIDER_SPLIT_REVERSE"},Pd=Ee(Object.values(xd)),Md={HEADER:"header",COVER:"cover",ANNOUNCEMENT_BAR:"announcement_bar",SLIDER:"slider",SPECIAL_OFFER:"special_offer",CUSTOMER_REVIEW:"customer_review",COMPANY_INFO:"company_info",SHIPPING_PAYMENT:"shipping_payment",LOCATION:"location",STORE:"store",FOOTER:"footer",VIDEO:"video",IMAGE_GALLERY:"image_gallery",CONTACT_INFO:"contact_info",CONTACTS_WIDGET_WHATSAPP:"contacts_widget_whatsapp",CONTACTS_WIDGET_INSTAGRAM:"contacts_widget_instagram",CONTACTS_WIDGET_FACEBOOK:"contacts_widget_facebook",CONTACTS_WIDGET_PHONE:"contacts_widget_phone"},Ud={COVER:"COVER",ANNOUNCEMENT:"ANNOUNCEMENT",STORE:"STORE",SLIDER:"SLIDER",VIDEO:"VIDEO",SPECIAL_OFFER:"SPECIAL_OFFER",CUSTOMER_REVIEW:"CUSTOMER_REVIEW",COMPANY_INFO:"COMPANY_INFO",SHIPPING_PAYMENT:"SHIPPING_PAYMENT",LOCATION:"LOCATION",COLLECTIONS:"COLLECTIONS",BRANDS:"BRANDS",CONTACT_INFO:"CONTACT_INFO"},Fd=Ee(Object.values(Ud)),gt={REQUIRED_HEADER_ID:()=>'Header section must have id "header" when type is "default"',REQUIRED_CUSTOM_HEADER:(...e)=>`Custom header section with id "${e[0]}" must exist in headers directory`,REQUIRED_CUSTOM_HEADER_TYPE:(...e)=>`Custom header section with id "${e[0]}" must be of type "HEADER"`,REQUIRED_FOOTER_ID:()=>'Footer section must have id "footer" when type is "default"',REQUIRED_CUSTOM_FOOTER:(...e)=>`Custom footer section with id "${e[0]}" must exist in footers directory`,REQUIRED_CUSTOM_FOOTER_TYPE:(...e)=>`Custom footer section with id "${e[0]}" must be of type "FOOTER"`,REQUIRED_PAGE_SECTION:(...e)=>`Custom section with id "${e[0]}" must exist in sections directory`,REQUIRED_PAGE_SECTION_TYPE:()=>'Section "header" or "footer" is not allowed among page sections',SHOWCASE_ID_NOT_FOUND:(...e)=>`Showcase with id "${e[0]}" must exist in section's showcase directory`,SHOWCASE_OVERRIDE_CONTENT:(...e)=>`Content editor "${e[0]}" in showcase_overrides must exist in section's content configuration file`,SHOWCASE_OVERRIDE_DESIGN:(...e)=>`Design editor "${e[0]}" in showcase_overrides must exist in section's design configuration file`,SHOWCASE_OVERRIDE_LAYOUT:(...e)=>`LayoutId "${e[0]}" in showcase_overrides must exist in section's layout configuration file`,INVALID_SHOWCASE_CONTENT_ELEMENT:(...e)=>`Element "${e[0]}" is not defined in content.ts`,SHOWCASE_CONTENT_ELEMENT_TYPE_MISMATCH:(...e)=>`Element "${e[0]}" type mismatch: showcase has type "${e[1]}" but content.ts has type "${e[2]}"`,INVALID_SHOWCASE_DESIGN_ELEMENT:(...e)=>`Element "${e[0]}" is not defined in design.ts`,SHOWCASE_DESIGN_ELEMENT_TYPE_MISMATCH:(...e)=>`Element "${e[0]}" type mismatch: showcase has type "${e[1]}" but design.ts has type "${e[2]}"`,INVALID_DECK_CARD_SETTING:(...e)=>`Setting "${e[0]}" is not defined in content.ts defaultCardContent.settings`,INVALID_SELECTBOX_OPTION:(...e)=>`Option value "${e[0]}" for element "${e[1]}" is not defined in content.ts options`,REQUIRED_STORE_LAYOUT:(...e)=>`Store section with id "${e[0]}" and page type "${e[1]}" must have a corresponding layout defined`,INVALID_STORE_SECTION_ID:(...e)=>`Store layout sectionId "${e[0]}" must be one of: ${e[1]}`,REQUIRED_SECTION_ASSET:(...e)=>`Asset size ${e[0]} exceeds threshold of ${e[1]}.`,REQUIRED_SERVER_SIZE:(...e)=>`Size of individual server file [${e[0]}] must not exceed threshold [${e[1]}].`,MISSING_IMAGE_ASSET:(...e)=>`Image ${e[0]} is missing from assets folder`,MANDATORY_SETTING_TYPE_MISMATCH:(...e)=>`Editor type "${e[0]}" for reserved key "${e[1]}" does not match the required type "${e[2]}".`,MANDATORY_SETTING_NAME_MISMATCH:(...e)=>`Editor key "${e[0]}" for overridden content type "${e[1]}" does not match the required key name "${e[2]}".`,DUPLICATED_MANDATORY_SETTING:(...e)=>`Editor type "${e[0]}" can only be used once.`,IMAGE_EDITOR_STATIC_MISMATCH:(...e)=>`Both "${e[0]}" content and design editor need to have same value for attribute static`,COLOR_REQUIRED_GRADIENT:()=>"color is required when overlay is GRADIENT",COLOR_MUST_BE_ARRAY_GRADIENT:()=>"color must be an array when overlay is GRADIENT",COLOR_ARRAY_LENGTH_GRADIENT:()=>"color array must have exactly 2 items when overlay is GRADIENT",COLOR_REQUIRED_COLOR:()=>"color is required when overlay is COLOR",COLOR_MUST_BE_SINGLE_COLOR:()=>"color must be a single value when overlay is COLOR",COLOR_MUST_BE_UNDEFINED_NONE:()=>"color must be undefined when overlay is NONE or not set",COLOR_REQUIRED_STYLE_GRADIENT:()=>"color is required when style is GRADIENT",COLOR_MUST_BE_ARRAY_STYLE_GRADIENT:()=>"color must be an array when style is GRADIENT",COLOR_ARRAY_LENGTH_STYLE_GRADIENT:()=>"color array must have exactly 2 items when style is GRADIENT",COLOR_REQUIRED_STYLE_COLOR:()=>"color is required when style is COLOR",COLOR_MUST_BE_SINGLE_STYLE_COLOR:()=>"color must be a single value when style is COLOR",BUTTON_LINK_REQUIRED:()=>"link is required when buttonType is HYPER_LINK",BUTTON_CATEGORY_ID_REQUIRED:()=>"categoryId is required when buttonType is GO_TO_CATEGORY or GO_TO_CATEGORY_LINK",BUTTON_EMAIL_REQUIRED:()=>"email is required when buttonType is MAIL_LINK",BUTTON_PHONE_REQUIRED:()=>"phone is required when buttonType is TEL_LINK",BUTTON_TILE_ID_REQUIRED:(...e)=>`${e[0]} is required when buttonType is SCROLL_TO_TILE`,BUTTON_PAGE_ID_REQUIRED:()=>"pageIdForNavigate is required when type is GO_TO_PAGE",TEMPLATE_PAGE_SECTIONS_REQUIRED:()=>"sections must contain at least one section",TEMPLATE_PAGE_SINGLE_SECTION_REQUIRED:(...e)=>`Page type "${e[0]}" must have exactly one section`,TEMPLATE_PAGE_STORE_SECTION_REQUIRED:(...e)=>`Page type "${e[0]}" must have a section of type "store"`,TEMPLATE_PAGE_NO_STORE_SECTIONS:(...e)=>`Page type "${e[0]}" cannot contain store sections`,TEMPLATE_PAGE_CUSTOM_METADATA_REQUIRED:()=>'Page type "CUSTOM" must have a metadata property',TEMPLATE_PAGE_METADATA_NOT_ALLOWED:(...e)=>`Page type "${e[0]}" must not have a metadata property`,NON_NEGATIVE_INTEGER:()=>"must be a non-negative integer",INTEGER_RANGE:(...e)=>`must be between ${e[0]} and ${e[1]}`,VALID_HEX_COLOR:()=>"must be a valid hex color (#RGB, #RRGGBB, or #RRGGBBAA)",VALID_LANGUAGE_CODE:()=>"must be a valid language code (e.g., en, nl, fr, en_US, en_GB, zh_Hans)",VALID_URL:()=>"must be a valid URL",VALID_EMAIL:()=>"must be a valid email address"},zd=/^#([a-fA-F0-9]{8}|[a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/,Gd=/^[a-z]{2}(_([a-z]{2}|[A-Z]{2}|[0-9]{3}))?$/,pt=(e,t)=>{const n=gt.INTEGER_RANGE(e.toString(),t.toString());return We().min(e,{message:n}).max(t,{message:n})},nr=R({path:I(),size:_n().nonnegative()}).strict(),Si=R({size:_n().nonnegative()}).strict(),z=I().regex(/^\$.+/,{message:"must start with '$' followed by at least one character"}),Hd=R({r:pt(0,255),g:pt(0,255),b:pt(0,255),a:pt(0,1)}).strict(),rr=I().regex(zd,{message:gt.VALID_HEX_COLOR()}),Pe=Lt([rr,Ee(["global.color.title","global.color.body","global.color.button","global.color.link","global.color.background"])]),Ti=Ee(["global.textSize.title","global.textSize.subtitle","global.textSize.body"]),Xt=Ee(["catalog","category","product"]),jd=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;function or(e){return e===qe.PRODUCT||e===qe.CATALOG||e===qe.CATEGORY}function Ri(e,t,n){if(!e)return;const r=ya({path:"$..set..url",json:e,resultType:"all"}),o=/^https?:\/\//;r.forEach(s=>{const i=s.value;if(!o.test(i)&&!t.includes(i)){const a=s.pointer.split("/").filter(c=>c.length>0);n.at(a).addIssue("MISSING_IMAGE_ASSET",i)}})}function wi(e,t,n){e===lt.HYPER_LINK&&!t&&n.at("link").addIssue("BUTTON_LINK_REQUIRED")}function Ci(e,t,n){(e===lt.GO_TO_CATEGORY||e===lt.GO_TO_CATEGORY_LINK)&&!t&&n.at("categoryId").addIssue("BUTTON_CATEGORY_ID_REQUIRED")}function vi(e,t,n){e===lt.MAIL_LINK&&!t&&n.at("email").addIssue("BUTTON_EMAIL_REQUIRED")}function Ai(e,t,n){e===lt.TEL_LINK&&!t&&n.at("phone").addIssue("BUTTON_PHONE_REQUIRED")}function Ii(e,t,n,r){if(e===lt.SCROLL_TO_TILE&&!(t??n)){const o=t?"tileId":"tileIdForScroll";r.at(o).addIssue("BUTTON_TILE_ID_REQUIRED",o)}}function Bd(e,t,n){e===lt.GO_TO_PAGE&&!t&&n.at("pageIdForNavigate").addIssue("BUTTON_PAGE_ID_REQUIRED")}const Zd="custom";function Je(e,t=[]){const n=o=>Array.isArray(o)?o:[o],r=n(t);return{raw:e,addIssue(o,...s){e.addIssue({code:Zd,message:gt[o](...s),path:r,params:{errorMessageKey:o}})},at(o){const s=r.concat(n(o));return Je(e,s)}}}const ir=R({type:k(K.BUTTON),title:z,buttonType:wd,link:I().optional(),linkTarget:I().optional(),email:I().regex(jd,{message:gt.VALID_EMAIL()}).optional(),phone:I().optional(),tileId:I().optional(),categoryId:_n().optional()}).strict().superRefine((e,t)=>{const n=Je(t);wi(e.buttonType,e.link,n),Ci(e.buttonType,e.categoryId,n),vi(e.buttonType,e.email,n),Ai(e.buttonType,e.phone,n),Ii(e.buttonType,e.tileId,void 0,n)}),Oi=R({type:k(K.BUTTON),label:z,defaults:ir.optional()}).strict(),sr=R({type:k(K.CATEGORY_SELECTOR)}).strict(),bi=R({type:k(K.CATEGORY_SELECTOR),label:z,maxCategories:pt(1,32),defaults:sr.optional()}).strict(),ar=R({type:k(K.DIVIDER)}).strict(),$i=R({type:k(K.DIVIDER),label:z,defaults:ar.optional()}).strict(),Qt=R({url:I(),width:We().min(0,{message:gt.NON_NEGATIVE_INTEGER()}).optional(),height:We().min(0,{message:gt.NON_NEGATIVE_INTEGER()}).optional()}).strict(),Vd=R({homogeneity:ee().optional(),color:Hd.optional()}).strict(),Wd=R({ORIGINAL:Qt.optional(),WEBP_LOW_RES:Qt.optional(),WEBP_HI_2X_RES:Qt.optional(),MOBILE_WEBP_LOW_RES:Qt.optional(),MOBILE_WEBP_HI_RES:Qt.optional()}).strict().refine(e=>Object.keys(e).length>=1,{message:"set must have at least one property"}),Sn=R({set:Wd,borderInfo:Vd.optional()}).strict(),cr=R({type:k(K.IMAGE),imageData:Sn}).strict(),Li=R({type:k(K.IMAGE),label:z,static:ee().optional(),defaults:cr.optional()}).strict(),Kd=R({label:z,link:Kt()}).strict(),Yd=R({title:z.optional(),link:Kt().optional()}).strict(),ur=R({type:k(K.INFO),text:z.optional(),button:Yd.optional()}).strict(),Ni=R({type:k(K.INFO),label:z,description:z,button:Kd.optional(),defaults:ur.optional()}).strict(),lr=R({type:k(K.INPUTBOX),text:z}).strict(),Di=R({type:k(K.INPUTBOX),label:z,placeholder:z,defaults:lr.optional()}).strict(),pr=R({type:k(K.PRODUCT_SELECTOR)}).strict(),ki=R({type:k(K.PRODUCT_SELECTOR),label:z,maxProducts:pt(1,32),defaults:pr.optional()}).strict(),dr=R({type:k(K.SELECTBOX),value:I()}).strict(),Xd=R({value:I().min(1,{message:"value must not be empty"}),label:z}).strict(),xi=R({type:k(K.SELECTBOX),label:z,placeholder:z,description:z,options:oe(Xd).min(1,{message:"must have at least one option"}),defaults:dr.optional()}).strict(),fr=R({type:k(K.TEXTAREA),text:z}).strict(),Pi=R({type:k(K.TEXTAREA),label:z,placeholder:z,defaults:fr.optional()}).strict(),hr=R({type:k(K.TOGGLE),enabled:ee()}).strict(),Mi=R({type:k(K.TOGGLE),label:z,description:z,defaults:hr.optional()}).strict(),Qd=R({type:k(K.DECK)}).strict(),qd=it("type",[lr,fr,ir,cr,hr,dr,ar,ur,pr,sr]),Jd=R({type:k(K.DECK),cards:oe(R({settings:Qe(I(),qd).refine(e=>Object.keys(e).length>=1,{message:"settings must have at least one property"})}).strict()).min(1,{message:"cards must have at least one card"})}).strict(),ef=R({type:k(K.DECK),label:z,addButtonLabel:z,maxCards:We().min(1,{message:"must be a positive integer"}),cards:R({defaultCardContent:R({label:z,settings:Qe(I(),it("type",[Di,Pi,Oi,Li,Mi,xi,$i,Ni,bi,ki])).refine(e=>Object.keys(e).length>=1,{message:"settings must have at least one property"})}).strict()}).strict(),defaults:Qd.optional()}).strict(),Ui=R({type:k(K.LOGO),logoType:Rd.optional(),text:z.optional(),imageData:Sn.optional()}).strict(),tf=R({type:k(K.LOGO),label:z.optional(),defaults:Ui.optional()}).strict(),Fi=R({id:I(),title:I().optional(),type:I().optional(),link:I().optional(),email:I().optional(),phone:I().optional(),tileIdForScroll:I().optional(),pageIdForNavigate:I().optional(),showStoreCategories:ee().optional(),isSubmenuOpened:ee().optional(),categoryId:_n().optional()}).strict().superRefine((e,t)=>{const n=Je(t);wi(e.type,e.link,n),Ci(e.type,e.categoryId,n),vi(e.type,e.email,n),Ai(e.type,e.phone,n),Ii(e.type,void 0,e.tileIdForScroll,n),Bd(e.type,e.pageIdForNavigate,n)}),zi=R({type:k(K.MENU),items:oe(Fi).optional()}).strict(),nf=R({type:k(K.MENU),label:z.optional(),defaults:zi.optional()}).strict(),Gi=R({type:k(K.NAVIGATION_MENU),items:oe(Fi).optional()}).strict(),rf=R({type:k(K.NAVIGATION_MENU),defaults:Gi.optional()}).strict(),of=it("type",[Di,Pi,Oi,Li,Mi,xi,ef,nf,rf,tf,$i,Ni,ki,bi]),Hi=Qe(I(),of),mr=R({type:k(te.BACKGROUND),style:Ld.optional(),color:Lt([Pe,oe(Pe)]).optional()}).strict().superRefine((e,t)=>{const n=Je(t).at("color");e.style===tr.GRADIENT?e.color===void 0?n.addIssue("COLOR_REQUIRED_STYLE_GRADIENT"):Array.isArray(e.color)?e.color.length!==2&&n.addIssue("COLOR_ARRAY_LENGTH_STYLE_GRADIENT"):n.addIssue("COLOR_MUST_BE_ARRAY_STYLE_GRADIENT"):e.style===tr.COLOR&&(e.color===void 0?n.addIssue("COLOR_REQUIRED_STYLE_COLOR"):Array.isArray(e.color)&&n.addIssue("COLOR_MUST_BE_SINGLE_STYLE_COLOR"))}),sf=R({type:k(te.BACKGROUND),fieldName:I(),defaults:mr.optional()}).strict(),af=R({type:k(te.BACKGROUND),label:z,colors:oe(Pe).optional(),enableAlphaColor:ee().optional(),enableAutoColor:ee().optional(),defaults:mr.optional()}).strict(),Er=R({type:k(te.BUTTON),appearance:Ad.optional(),size:Od.optional(),shape:$d.optional(),font:I().optional(),color:Pe.optional(),visible:ee().optional()}).strict(),cf=R({type:k(te.BUTTON),fieldName:I(),defaults:Er.optional()}).strict(),uf=R({type:k(te.BUTTON),label:z,colors:oe(Pe).optional(),enableAutoColor:ee().optional(),enableAlphaColor:ee().optional(),hideVisibleToggle:ee().optional(),hideSize:ee().optional(),defaults:Er.optional()}).strict(),gr=R({type:k(te.COLOR_PICKER),color:Pe.optional()}).strict(),lf=R({type:k(te.COLOR_PICKER),fieldName:I(),defaults:gr.optional()}).strict(),pf=R({type:k(te.COLOR_PICKER),label:z,colors:oe(Pe).optional(),enableAlphaColor:ee().optional(),enableAutoColor:ee().optional(),defaults:gr.optional()}).strict(),_r=R({type:k(te.DIVIDER)}).strict(),df=R({type:k(te.DIVIDER),fieldName:I(),defaults:_r.optional()}).strict(),ff=R({type:k(te.DIVIDER),label:z,defaults:_r.optional()}).strict(),yr=R({type:k(te.IMAGE),overlay:Cd.optional(),color:Lt([Pe,oe(Pe)]).optional(),visible:ee().optional()}).strict().superRefine((e,t)=>{const n=Je(t).at("color");e.overlay===yn.GRADIENT?e.color===void 0?n.addIssue("COLOR_REQUIRED_GRADIENT"):Array.isArray(e.color)?e.color.length!==2&&n.addIssue("COLOR_ARRAY_LENGTH_GRADIENT"):n.addIssue("COLOR_MUST_BE_ARRAY_GRADIENT"):e.overlay===yn.COLOR?e.color===void 0?n.addIssue("COLOR_REQUIRED_COLOR"):Array.isArray(e.color)&&n.addIssue("COLOR_MUST_BE_SINGLE_COLOR"):(e.overlay===yn.NONE||e.overlay===void 0)&&e.color!==void 0&&n.addIssue("COLOR_MUST_BE_UNDEFINED_NONE")}),hf=R({type:k(te.IMAGE),fieldName:I(),defaults:yr.optional()}).strict(),mf=R({type:k(te.IMAGE),label:z,static:ee().optional(),colors:oe(rr).optional(),enableAlphaColor:ee().optional(),hideVisibleToggle:ee().optional(),defaults:yr.optional()}).strict(),Ef=R({label:z,link:Kt()}).strict(),gf=R({label:z.optional(),link:Kt().optional()}).strict(),Sr=R({type:k(te.INFO),description:z.optional(),button:gf.optional()}).strict(),_f=R({type:k(te.INFO),fieldName:I(),defaults:Sr.optional()}).strict(),yf=R({type:k(te.INFO),label:z,description:z,button:Ef.optional(),defaults:Sr.optional()}).strict(),Sf=R({visible:ee(),width:pt(1,49).optional(),color:Pe.optional()}).strict(),Tr=R({type:k(te.LOGO),font:I().optional(),size:Lt([We().min(1,{message:"must be at least 1"}),Ti]).optional(),bold:ee().optional(),italic:ee().optional(),color:Pe.optional(),visible:ee().optional(),spacing:pt(1,9).optional(),frame:Sf.optional(),capitalization:Ee(["none","all","small"]).optional()}).strict(),Tf=R({type:k(te.LOGO),fieldName:I(),defaults:Tr.optional()}).strict(),Rf=R({type:k(te.LOGO),label:z,colors:oe(Pe).optional(),sizes:oe(We().min(1,{message:"must be at least 1"})).optional(),defaults:Tr.optional()}).strict(),wf=R({value:I().optional(),label:z.optional()}).strict(),Rr=R({type:k(te.SELECTBOX),value:I().optional()}).strict(),Cf=R({type:k(te.SELECTBOX),fieldName:I(),defaults:Rr.optional()}).strict(),vf=R({type:k(te.SELECTBOX),label:z,description:z.optional(),options:oe(wf).optional(),defaults:Rr.optional()}).strict(),wr=R({type:k(te.TEXT),font:I().optional(),size:Lt([We().min(1,{message:"must be at least 1"}),Ti]).optional(),bold:ee().optional(),italic:ee().optional(),color:Pe.optional(),visible:ee().optional()}).strict(),Af=R({type:k(te.TEXT),fieldName:I(),defaults:wr.optional()}).strict(),If=R({type:k(te.TEXT),label:z,colors:oe(rr).optional(),sizes:oe(We().min(1,{message:"must be at least 1"})).optional(),enableAlphaColor:ee().optional(),enableAutoColor:ee().optional(),hideVisibleToggle:ee().optional(),hideSize:ee().optional(),defaults:wr.optional()}).strict(),Cr=R({type:k(te.TOGGLE),enabled:ee().optional()}).strict(),Of=R({type:k(te.TOGGLE),fieldName:I(),defaults:Cr.optional()}).strict(),bf=R({type:k(te.TOGGLE),label:z,defaults:Cr.optional()}).strict(),$f=it("type",[If,uf,mf,bf,vf,af,pf,Rf,ff,yf]),ji=Qe(I(),$f),Lf=it("type",[Af,cf,hf,Of,Cf,sf,lf,Tf,df,_f]),Nf=R({layoutId:I(),layoutIcon:Pd.optional(),selectedContentSettings:oe(I()),selectedDesignSettings:oe(Lf)}).strict(),Bi=it("type",[lr,fr,ir,cr,hr,dr,zi,Gi,Ui,ar,ur,Jd,pr,sr]),Zi=it("type",[wr,Er,yr,Cr,Rr,mr,gr,Tr,_r,Sr]),Df=R({showcaseId:I(),blockName:I(),previewImage:Sn,content:Qe(I(),Bi),design:Qe(I(),Zi),layoutId:I().optional()}).strict(),kf=R({blockName:I(),content:Qe(I(),Bi).optional(),design:Qe(I(),Zi).optional(),layoutId:I().optional()}).strict(),xf=I().regex(Gd,gt.VALID_LANGUAGE_CODE()),Tn=Qe(xf,Qe(z,I())),Pf={menu:{type:K.NAVIGATION_MENU},logo:{type:K.LOGO}},Mf={logo:{type:"LOGO",label:"$label.logo.label",colors:["#FFFFFF66","#0000004D","#00000099","#64C7FF66","#F9947266","#C794CD66","#FFD17466"],sizes:[18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60],defaults:{type:"LOGO",font:"global.fontFamily.body",size:40,bold:!0,italic:!1,color:"#313131",visible:!0,spacing:2,capitalization:"all",frame:{visible:!0,width:3,color:"#313131"}}}};function Vi(e){switch(e){case Nt.HEADER:return Pf;default:return{}}}function Wi(e){switch(e){case Nt.HEADER:return Mf;default:return{}}}function Ki({validationType:e,sectionType:t}){switch(e){case Yt.CONTENT:return Vi(t);case Yt.DESIGN:return Wi(t);default:return{}}}const Rn=2097152,wn=512e3;function st(e,t=2){if(!+e)return"0 Bytes";const n=1024,r=t<0?0:t,o=["Bytes","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],s=Math.floor(Math.log(e)/Math.log(n));return`${parseFloat((e/n**s).toFixed(r))} ${o[s]}`}function Yi(e,t,n){if(!e||Object.keys(t).length===0)return;const r=Object.entries(t),o=r.map(([,{type:i}])=>i),s=Object.values(e).map(({type:i})=>i);Object.entries(e).forEach(([i,a])=>{const c=t[i];c&&"type"in c&&a.type!==c.type&&n.at(i).addIssue("MANDATORY_SETTING_TYPE_MISMATCH",a.type,i,c.type)}),Object.entries(e).forEach(([i,a])=>{const c=r.find(([,{type:u}])=>u===a.type)?.[0];c&&i!==c&&n.at(i).addIssue("MANDATORY_SETTING_NAME_MISMATCH",i,a.type,c)}),new Set(s.filter(i=>o.includes(i))).forEach(i=>{if(s.filter(a=>a===i).length>1){const a=r.findLast(([,{type:c}])=>c===i)?.[0];n.at(a).addIssue("DUPLICATED_MANDATORY_SETTING",i)}})}function Xi(e,t,n){Ri(e,t,n)}function Uf(e,t,n){if(e.type!==K.DECK||t.type!==K.DECK)return;const r=t.cards?.defaultCardContent?.settings,o=e.cards;if(!r||!Array.isArray(o))return;const s=new Set(Object.keys(r));o.forEach((i,a)=>{i.settings&&Object.keys(i.settings).forEach(c=>{s.has(c)||n.at(["cards",a,"settings",c]).addIssue("INVALID_DECK_CARD_SETTING",c)})})}function Ff(e,t,n){e.content&&Object.entries(e.content).forEach(([r,o])=>{const s=n.at(["content",r]),i=t[r];if(!i){s.addIssue("INVALID_SHOWCASE_CONTENT_ELEMENT",r);return}if(o.type!==i.type){s.addIssue("SHOWCASE_CONTENT_ELEMENT_TYPE_MISMATCH",r,o.type,i.type);return}if(o.type===K.SELECTBOX&&i.type===K.SELECTBOX){const a=i,c=o;a.options&&c.value!==void 0&&(new Set(a.options.map(u=>u.value)).has(c.value)||s.addIssue("INVALID_SELECTBOX_OPTION",c.value,r))}o.type===K.DECK&&Uf(o,i,s)})}function zf(e,t,n){e.design&&Object.entries(e.design).forEach(([r,o])=>{const s=n.at(["design",r]),i=t[r];if(!i){s.addIssue("INVALID_SHOWCASE_DESIGN_ELEMENT",r);return}o.type!==i.type&&s.addIssue("SHOWCASE_DESIGN_ELEMENT_TYPE_MISMATCH",r,o.type,i.type)})}function Qi(e,t,n){for(const[r,o]of Object.entries(e)){const s=o;if(s.type===K.IMAGE){const i=t[r];if(i?.type===te.IMAGE){const a=s.static??!1,c=i.static??!1;a!==c&&n.at(r).addIssue("IMAGE_EDITOR_STATIC_MISMATCH",r)}}else if(s.type===K.DECK){const i=s;i.cards?.defaultCardContent?.settings&&Qi(i.cards.defaultCardContent.settings,t,n.at([r,"cards","defaultCardContent","settings"]))}}}function Gf(e,t,n){t>Rn&&n.at(ue.basename(e)).addIssue("REQUIRED_SECTION_ASSET",st(t),st(Rn))}function Hf(e,t){e>wn&&t.addIssue("REQUIRED_SERVER_SIZE",st(e),st(wn))}const jf=R({id:I(),type:Sd,name:I(),content:Hi,design:ji,layout:oe(Nf).optional(),showcase:oe(Df),translationsSettings:Tn.optional(),translationsShowcases:Tn.optional(),assets:nr.array().optional(),server:Si,previewCount:We().optional()}).strict().superRefine((e,t)=>{const n=Je(t),r=Ki({validationType:Yt.CONTENT,sectionType:e.type}),o=Ki({validationType:Yt.DESIGN,sectionType:e.type});Yi(e.content,r,n.at("content")),Yi(e.design,o,n.at("design")),Qi(e.content,e.design,n.at("content")),e.assets&&e.assets.forEach(i=>{Gf(i.path,i.size,n.at("assets"))}),Hf(e.server.size,n.at("server"));const s=e.assets?.map(i=>i.path)??[];Xi(e.content,s,n.at("content")),e.showcase.forEach((i,a)=>{const c=n.at(["showcase",a]);Xi(i,s,c),Ff(i,e.content,c),zf(i,e.design,c)})}),Bf=R({translations:Tn.optional()}).strict(),Zf=Ee(["products","category","product"]),Vf=R({id:I(),sectionId:I(),content:Hi,design:ji,translationsSettings:Tn.optional(),assets:nr.array().optional()}).strict().superRefine((e,t)=>{const n=Je(t);Xt.safeParse(e.sectionId).success||n.at(["sectionId"]).addIssue("INVALID_STORE_SECTION_ID",e.sectionId,Xt.options.join(", ")),e.assets&&e.assets.forEach(r=>{r.size>Rn&&n.at(["assets",ue.basename(r.path)]).addIssue("REQUIRED_SECTION_ASSET",st(r.size),st(Rn))})});R({id:I(),sectionId:Xt,pageId:Zf}).strict();const Wf=R({id:I(),sectionId:I(),layoutId:I(),server:Si}).strict().superRefine((e,t)=>{const n=Je(t);Xt.safeParse(e.sectionId).success||n.at(["sectionId"]).addIssue("INVALID_STORE_SECTION_ID",e.sectionId,Xt.options.join(", ")),e.server.size>wn&&n.at("server").addIssue("REQUIRED_SERVER_SIZE",st(e.server.size),st(wn))});function Kf(e,t){or(e.type)&&(e.sections.length!==1?t.at("sections").addIssue("TEMPLATE_PAGE_SINGLE_SECTION_REQUIRED",e.type):e.sections[0]?.type!=="store"&&t.at(["sections",0,"type"]).addIssue("TEMPLATE_PAGE_STORE_SECTION_REQUIRED",e.type))}function Yf(e,t){or(e.type)&&e.sections.length===0&&t.at("sections").addIssue("TEMPLATE_PAGE_SECTIONS_REQUIRED"),e.sections.forEach((n,r)=>{or(e.type)||n.type==="store"&&t.at(["sections",r,"type"]).addIssue("TEMPLATE_PAGE_NO_STORE_SECTIONS",e.type),n.type==="default"&&n.id&&(n.id==="header"||n.id==="footer")&&t.at(["sections",r,"id"]).addIssue("REQUIRED_PAGE_SECTION_TYPE")})}function Xf(e,t){e.type==="CUSTOM"?e.metadata||t.at("metadata").addIssue("TEMPLATE_PAGE_CUSTOM_METADATA_REQUIRED"):e.metadata!==void 0&&t.at("metadata").addIssue("TEMPLATE_PAGE_METADATA_NOT_ALLOWED",e.type)}const Qf=new RegExp(`^(${Object.values(Md).join("|")})(_\\d{3})?$`),qf=I().regex(Qf,"id must match pattern: [default_section_name] or [default_section_name]_XXX where XXX is three digits"),Jf=I().regex(new RegExp("\\d{3}"),"showcase_id must be a three digit string"),qi=R({type:k("default"),id:qf,showcase_id:Jf.optional()}).strict(),vr=R({type:k("custom"),id:I(),showcase_id:I().optional(),showcase_overrides:kf.optional(),category:Fd.optional()}).strict(),eh=R({type:k("store"),id:I().optional()}).strict(),th=it("type",[qi,vr,eh]),nh=R({title:I()}).strict(),rh=R({metadata:nh.optional(),sections:oe(th)}).strict(),oh=rh.safeExtend({type:Nd,id:I().min(1,{message:"id is required"})}).strict().superRefine((e,t)=>{const n=Je(t);Yf(e,n),Kf(e,n),Xf(e,n)}),Ji=R({name:I().min(2,{message:"name must be at least 2 characters"}).max(60,{message:"name must be at most 60 characters"}),description:I().min(2,{message:"description must be at least 2 characters"}).max(150,{message:"description must be at most 150 characters"}),preview_url:Kt({message:"preview_url must be a valid URL"}).regex(/^(https?):\/\/([^.]+?\.)?(company\.site|ecwid\.qa)($|\/[A-Za-z0-9\-._~:/?#\[\]@!$&'()*+,;=]*)?$/,"preview_url must match pattern: (https?)://([^.]+?\\.)?(company\\.site|ecwid\\.qa)(...)?").optional(),cover_image:Sn,categories:oe(kd).refine(e=>new Set(e).size===e.length,{message:"categories must contain unique items"}).optional()}).strict(),ih=qi.extend({id:I()}),es=it("type",[ih,vr]),sh=R({metadata:Ji,header:es,footer:es}).strict(),ah=R({id:I().min(1,{message:"id is required"}),assets:nr.array().optional(),configuration:sh,pages:oe(oh)}).strict();function ch(e,t,n){if(e){if(e.type==="default")e.id!=="header"&&n.at("id").addIssue("REQUIRED_HEADER_ID");else if(e.type==="custom"&&e.id){const r=t.find(o=>o.id===e.id);r?(r.type!=="HEADER"&&n.at("id").addIssue("REQUIRED_CUSTOM_HEADER_TYPE",e.id),e.showcase_id&&((r.showcase||[]).some(o=>o.showcaseId===e.showcase_id)||n.at("showcase_id").addIssue("SHOWCASE_ID_NOT_FOUND",e.showcase_id))):n.at("id").addIssue("REQUIRED_CUSTOM_HEADER",e.id)}}}function uh(e,t,n){if(e){if(e.type==="default")e.id!=="footer"&&n.at("id").addIssue("REQUIRED_FOOTER_ID");else if(e.type==="custom"&&e.id){const r=t.find(o=>o.id===e.id);r?(r.type!=="FOOTER"&&n.at("id").addIssue("REQUIRED_CUSTOM_FOOTER_TYPE",e.id),e.showcase_id&&((r.showcase||[]).some(o=>o.showcaseId===e.showcase_id)||n.at("showcase_id").addIssue("SHOWCASE_ID_NOT_FOUND",e.showcase_id))):n.at("id").addIssue("REQUIRED_CUSTOM_FOOTER",e.id)}}}function lh(e,t,n){if(!e)return;const r=n.at(["showcase_overrides"]);["content","design"].forEach(s=>{const i=e[s];if(i){const a=t[s]||{};Object.keys(i).forEach(c=>{if(!(c in a)){const u=s==="content"?"SHOWCASE_OVERRIDE_CONTENT":"SHOWCASE_OVERRIDE_DESIGN";r.at([s,c]).addIssue(u,c)}})}}),e.layoutId&&((t.layout||[]).some(s=>s.layoutId===e.layoutId)||r.at(["layoutId"]).addIssue("SHOWCASE_OVERRIDE_LAYOUT",e.layoutId));const o=t.assets?.map(s=>s.path)??[];e.content&&Ri(e.content,o,r.at(["content"]))}function ph(e,t,n){if(!e.id)return;const r=t.find(o=>o.id===e.id);if(!r){n.at("id").addIssue("REQUIRED_PAGE_SECTION",e.id);return}(r.type==="HEADER"||r.type==="FOOTER")&&n.at("id").addIssue("REQUIRED_PAGE_SECTION_TYPE"),lh(e.showcase_overrides,r,n),e.showcase_id&&((r.showcase||[]).some(o=>o.showcaseId===e.showcase_id)||n.at("showcase_id").addIssue("SHOWCASE_ID_NOT_FOUND",e.showcase_id))}function dh(e,t,n,r){e.id&&(n.some(o=>o.sectionId===t.type.toLowerCase()&&o.id===e.id)||r.at("id").addIssue("REQUIRED_STORE_LAYOUT",e.id,t.type.toLowerCase()))}const fh=R({version:I(),name:I(),shared:Bf.optional(),sections:oe(jf),templates:oe(ah),layouts:oe(Vf),slots:oe(Wf),compressionEnabled:ee(),externalizationEnabled:ee(),vueVersion:I()}).strict().superRefine((e,t)=>{e.templates.forEach((n,r)=>{const o=Je(t).at(["templates",r]);ch(n.configuration.header,e.sections,o.at(["configuration","header"])),uh(n.configuration.footer,e.sections,o.at(["configuration","footer"])),n.pages.forEach((s,i)=>{const a=o.at(["pages",i]);s.sections.forEach((c,u)=>{const l=a.at(["sections",u]);c.type==="custom"?ph(c,e.sections,l):c.type==="store"&&dh(c,s,e.layouts,l)})})})}),hh=R({metadata:Ji,sections:oe(vr)});R({id:I().min(1,{message:"id is required"}),descriptor:hh}),ot({customError:yd});function Ar(e,t){return Object.keys(e).reduce((n,r)=>{const o=e[r],s=t[r];return ft(o)&&ft(s)?n[r]=Ar(o,s):n[r]=o,n},{...t})}function mh({contentSettings:e,sectionType:t}){const n=Vi(t);return Ar(e,n)}function Eh({designSettings:e,sectionType:t}){const n=Wi(t);return Ar(e,n)}function Dt(e){return Ce(`${Gt}/${e}`)?ve.HEADER:Ce(`${Ht}/${e}`)?ve.FOOTER:ve.SECTION}async function ke(e){return(await import(ma(e).href+`?t=${Date.now()}`)).default}function Ir(e){if(e!==void 0)return e.startsWith("global.")?{type:"GLOBAL_FONT",font:e}:{type:"PRESET_FONT",font:e}}function Ke(e){if(e===void 0)return;if(e.startsWith("global."))return{type:"GLOBAL_COLOR",raw:e};const t=Sa(e);return{type:"STRUCTURED_COLOR",raw:e,hex:t.toHex8String(),hsl:t.toHsl(),rgba:t.toRgb(),auto:!1}}function ts(e){if(e!==void 0)return typeof e=="string"&&e.startsWith("global.")?{type:"GLOBAL_TEXT_SIZE",size:e}:{type:"NUMERIC_TEXT_SIZE",size:Number(e)}}function gh(e){if(e!==void 0)return{...e,color:Ke(e.color)}}function Or(e){return Object.fromEntries(Object.entries(e).filter(([t,n])=>n!==void 0))}function _h(e){if(e!==void 0)switch(e){case zn.COLOR:return"solid";case zn.GRADIENT:return"gradient";default:throw new Error(`Unknown background type: ${e}. Right options: ${Object.keys(zn)}`)}}function yh({style:e,color:t}){const n=Array.isArray(t)?t:[t,t];return{background:{type:_h(e),solid:{color:Ke(n.at(0))},gradient:{fromColor:Ke(n.at(0)),toColor:Ke(n.at(1))}}}}function Sh(e){if(e!==void 0)switch(e){case"SOLID":return"solid-button";case"OUTLINE":return"outline-button";case"TEXT":return"text-link";default:throw new Error(`Unknown button appearance: ${e}. Right options: ${Object.keys(da)}`)}}function Th(e){if(e!==void 0)switch(e){case"SMALL":return"small";case"MEDIUM":return"medium";case"LARGE":return"large";default:throw new Error(`Unknown button size: ${e}. Right options: ${Object.keys(fa)}`)}}function Rh(e){if(e!==void 0)switch(e){case"ROUND_CORNER":return"round-corner";case"RECTANGLE":return"rectangle";case"PILL":return"pill";default:throw new Error(`Unknown button shape: ${e}. Right options: ${Object.keys(ha)}`)}}function wh(e){const t=Sh(e.appearance),n=Th(e.size),r=Rh(e.shape),o=Ir(e.font),s=Ke(e.color),i=e.visible;return Or({appearance:t,size:n,style:r,font:o,color:s,visible:i})}function Ch(e){const t=Ke(e.color);return Or({color:t})}function vh(e){if(e!==void 0)switch(e){case rn.COLOR:return"solid";case rn.GRADIENT:return"gradient";case rn.NONE:return"none";default:throw new Error(`Unknown image overlay type: ${e}. Right options: ${Object.keys(rn)}`)}}function Ah(e){const t=e.color,n=Array.isArray(t)?t:[t,t];return{overlay:{type:vh(e.overlay),solid:{color:Ke(n.at(0))},gradient:{fromColor:Ke(n.at(0)),toColor:Ke(n.at(1))}}}}function Ih(e){const t=Ir(e.font),n=Ke(e.color),r=ts(e.size),o=e.bold,s=e.italic,i=e.spacing,a=e.capitalization;return{font:t,color:n,size:r,frame:gh(e.frame),bold:o,italic:s,spacing:i,capitalization:a}}function Oh(e){const t=Ir(e.font),n=Ke(e.color),r=ts(e.size),o=e.bold,s=e.italic;return Or({font:t,color:n,size:r,bold:o,italic:s})}function br(e,t){if(t.defaults===void 0)return;let n={};switch(e){case Xe.TEXT:{n=Oh(t.defaults);break}case Xe.BUTTON:{n=wh(t.defaults);break}case Xe.IMAGE:{n=Ah(t.defaults);break}case Xe.BACKGROUND:{n=yh(t.defaults);break}case Xe.COLOR_PICKER:{n=Ch(t.defaults);break}case Xe.LOGO:{n=Ih(t.defaults);break}case Xe.TOGGLE:case Xe.SELECTBOX:case Xe.DIVIDER:case Xe.INFO:break;default:throw new Error(`Unknown design editor type: ${e}`)}return n}function bh(e){const t={};return Object.keys(e).forEach(n=>{const r=e[n],o=r.type,s=br(o,r);s&&r.defaults?t[n]={...r,defaults:s}:t[n]=r}),t}function $h(e){return e===void 0?e:e.map(t=>{if(t.type!==void 0&&t.defaults!==void 0&&t.fieldName!==void 0){const n={...br(t.type,t)??t.defaults,type:t.defaults.type??t.type};return{type:t.type,fieldName:t.fieldName,defaults:n}}return t})}function $r(e){if(e===void 0)return;const t={};return Object.keys(e).forEach(n=>{const r=e[n],o=r.type,s=br(o,{defaults:r});s!==void 0?t[n]={...r,...s,type:r.type}:t[n]=r}),t}function Lh(e,t){if(!t)return;const n=e[t];return n===void 0?{en:t}:n}function Nh(e){const t={};for(const n in e){const r=e[n];for(const o in r){const s=t[o],i=r[o];if(s===void 0){const a={};a[n]=i,t[o]=a}else s[n]=i}}return t}function Dh(e){return e.every(t=>t==null||typeof t=="string"||typeof t=="number"||typeof t=="boolean")}function _t(e,t){if(e==null||typeof e!="object")return e;if(Array.isArray(e))return Dh(e)?e:e.map(o=>_t(o,t));const n=e,r={};for(const o in n){const s=n[o];typeof s=="string"&&s.startsWith("$")?r[o]=Lh(t,s):typeof s=="object"&&s!==null?r[o]=_t(s,t):r[o]=s}return r}async function Cn(e){return e?Nh(e):{}}async function ns(e,t=Oe){const n=M(process.cwd(),`${t}/${e}/js/settings/translations.mjs`);return await ke(n)}async function kt(e,t=Oe){const n=M(process.cwd(),`${t}/${e}/js/showcases/translations.mjs`);return await ke(n)}async function rs(e,t){const n=M(process.cwd(),`${Ae}/${t}/${e}/js/settings/translations.mjs`);if(Ce(n))return await ke(n)}async function os(e,t,n){const r=n?mh({contentSettings:e,sectionType:n}):e;return _t(r,t)}async function is(e,t=Oe){try{const n=M(ae.cwd(),`${t}/${e}/js/settings/content.mjs`),r=await ke(n);return Zt(r)}catch{throw new Error(`Content descriptor for section [${e}] is either invalid or undefined`)}}async function kh(e,t,n=Oe){const r=await is(e,n);return await os(r,t,Dt(e))}async function ss(e,t,n){const r=n?Eh({designSettings:e,sectionType:n}):e,o=bh(r);return _t(o,t)}async function as(e,t=Oe){try{const n=M(ae.cwd(),`${t}/${e}/js/settings/design.mjs`),r=await ke(n);return Zt(r)}catch(n){const r=n;throw new Error(`Design settings is invalid or undefined. Error ${r.stack}`)}}async function xh(e,t,n=Oe){const r=await as(e,n);return ss(r,t,Dt(e))}async function Ph(e,t){return Promise.all(e.map(async n=>{const r=n.design?$r(n.design):void 0,o={...n,design:r??n.design};return _t(o,t)}))}async function cs(e,t=Oe){try{const n=await F("*.mjs",{cwd:M(ae.cwd(),`${t}/${e}/js/showcases/`),ignore:"**/translations.mjs"});return Promise.all(n.map(async r=>{const o=M(ae.cwd(),`${t}/${e}/js/showcases/${r}`);return await ke(o)}))}catch(n){throw new Error(`Showcases is invalid or undefined. Error ${n}`)}}async function Mh(e,t,n=Oe){const r=await cs(e,n);return Ph(r,t)}async function Uh(e){return e?.map(t=>({...t,selectedDesignSettings:$h(t.selectedDesignSettings)??t.selectedDesignSettings}))??[]}async function us(e,t=Oe){try{const n=M(ae.cwd(),`${t}/${e}/js/settings/layout.mjs`);return Ce(n)?await ke(n):[]}catch{throw new Error(`Layout descriptor for section [${e}] is either invalid or undefined`)}}async function Fh(e,t=Oe){const n=await us(e,t);return await Uh(n)}function ls(e){let t={};const n=M(ae.cwd(),`${Co}/shared/analytics.json`);if(!Ce(n))return 0;try{const r=ta(n,"utf-8");t=JSON.parse(r)}catch(r){console.warn("Error processing analytics.json file",r)}return t[e]||0}function zh(){try{const e=M(ae.cwd(),`${Co}/shared/analytics.json`);Ce(e)&&ao(e,JSON.stringify({},null,2),"utf-8")}catch(e){console.warn("Can not clean up preview analytics.json file",e)}}async function vn(e,t){const n=await ns(e,se[t].dist),r=await Cn(n),o=await kt(e,se[t].dist),s=await Cn(o),i=await kh(e,r,se[t].dist),a=await xh(e,r,se[t].dist),c=await Mh(e,s,se[t].dist),u=await Fh(e,se[t].dist),l=ls(e);return{id:e,type:t,name:{en:e},contentEditors:i,designEditors:a,layouts:u,showcases:c,previewCount:l}}async function Gh(){const e=await F("*/",{cwd:M(ae.cwd(),`${Oe}/`)}),t=await F("*/",{cwd:M(ae.cwd(),`${Gt}/`)}),n=await F("*/",{cwd:M(ae.cwd(),`${Ht}/`)});return Promise.all([...e.map(async r=>vn(r,ve.SECTION)),...t.map(async r=>vn(r,ve.HEADER)),...n.map(async r=>vn(r,ve.FOOTER))])}async function Hh(e){if(!e||e.type!=="custom")return;const t=Dt(e.id),n=await kt(e.id,se[t].dist);e.showcase_overrides!==void 0&&(_t(e.showcase_overrides,n),e.showcase_overrides.design&&$r(e.showcase_overrides.design))}async function jh(e){const t=e.filter(n=>n.type==="custom");await Promise.all(t.map(n=>Hh(n)))}async function Lr(e){try{return await ke(nt.resolve(process.cwd(),e))}catch{throw new Error(`Template file [${e}] is either invalid or undefined`)}}function Bh(e){return e in qe?qe[e]:qe.CUSTOM}async function Nr(e,t){const n=e.design?$r(e.design):void 0,r={...e,design:n??e.design},o=await Cn(t);return _t(r,o)}function Dr(e){return e.type==="custom"&&e.id!==void 0&&e.showcase_overrides!==void 0}async function Zh(e){if(Dr(e)){const t=await kt(e.id,se[Dt(e.id)].dist);return{...e,showcase_overrides:await Nr(e.showcase_overrides,t)}}return e}async function Vh(e){const t=Dr(e.header)?{...e.header,showcase_overrides:await Nr(e.header.showcase_overrides,await kt(e.header.id,se[Dt(e.header.id)].dist))}:e.header,n=Dr(e.footer)?{...e.footer,showcase_overrides:await Nr(e.footer.showcase_overrides,await kt(e.footer.id,se[Dt(e.footer.id)].dist))}:e.footer;return{...e,header:t,footer:n}}async function Wh(e){const t=await Promise.all(e.pages.map(async r=>({...r,sections:await Promise.all(r.sections.map(o=>Zh(o)))}))),n=await Vh(e.configuration);return{id:e.id,descriptor:{...n,pages:t}}}async function Kh(e){return Promise.all(e.map(t=>Wh(t)))}async function Yh(e){const t=await F(`${Fe}/${e}/*.mjs`,{ignore:[`${Fe}/${e}/configuration*.mjs`]});return Promise.all(t.map(async n=>{const{sections:r,metadata:o}=await Lr(n),s=vo(n);return{type:Bh(s.toUpperCase()),id:s,sections:r,metadata:o}}))}async function Xh(e){const t=await F(`${Fe}/**/configuration*.mjs`,{});return Promise.all(t.map(async n=>{const r=nt.basename(nt.dirname(n));return{id:`${e}_${r}`,configuration:await Lr(n),pages:await Yh(r)}}))}async function Qh(e){const t=await Xh(e);return Kh(t)}async function qh(e){const t=await F(`${on}/**/configuration*.mjs`,{});return Promise.all(t.map(async n=>{const r=await Lr(n),o=ue.basename(ue.dirname(n));return await jh(r.sections),{id:`${e}_${o}`,descriptor:r}}))}function An({deploymentContext:e,sectionType:t=ve.SECTION}){const n=e.pathContext,r=n.toPath({sectionId:e.currentSection,sectionType:t,layoutId:e.layoutId,slotId:e.slotId}),o=r===void 0?ho(n.fileName):ho(n.fileName,{cwd:M(process.cwd(),r),ignore:n.ignore});return(n.isSingleton?o.splice(0):o).map(s=>({url:s,sectionType:t,context:e}))}const Jh=e=>e.app.sections.flatMap(t=>Ua.flatMap(n=>{const r={config:e,currentSection:t.id,pathContext:Bt[n]};return An({deploymentContext:r,sectionType:t.type})})),em=e=>Ga.flatMap(t=>{const n={config:e,pathContext:Bt[t]};return An({deploymentContext:n})}),tm=e=>e.app.layouts.flatMap(t=>Fa.flatMap(n=>{const r={config:e,pathContext:Bt[n],currentSection:t.sectionId,layoutId:t.id};return An({deploymentContext:r})})),nm=e=>e.app.slots.flatMap(t=>za.flatMap(n=>{const r={config:e,pathContext:Bt[n],currentSection:t.sectionId,layoutId:t.layoutId,slotId:t.id};return An({deploymentContext:r})}));async function ps(e){await new Promise(t=>setTimeout(t,e))}const rm=e=>`\x1B[32m${e}\x1B[0m`,om=(e,t,n,r,o)=>{if(!e.total)return;const{loaded:s}=e,i=(Date.now()-o)/1e3;n.value+=s-r.value,r.value=s,t.update({speed:`${st(n.value/i,2)}/s`})},im=()=>new Ta.SingleBar({format:`|${rm("{bar}")}| {status} || {percentage}% || {value}/{total} Files || Speed: {speed}`,barCompleteChar:"\u2588",barIncompleteChar:"\u2591"});function sm(e){const t=wt(e).split("/");if(t.length<4||t[2]!=="slots")throw new Error(`Invalid slot path: ${e}. Expected format: [dist/]layouts/{sectionId}/{layoutId}/slots/{slotId}/[...path]`);const[n,r,,o]=t;if(!wo(n))throw new Error(`Slot cannot be placed in a non-storefront section: ${n}`);return{id:o,sectionId:n,layoutId:r}}async function am(e){return Promise.all(e.map(async t=>{const n=await Cn(t.translationsSettings),r=await os(t.content,n),o=await ss(t.design,n);return{id:t.id,sectionId:t.sectionId,layoutId:t.layoutId,contentEditors:r,designEditors:o}}))}async function cm(e,t){try{const n=nt.resolve(process.cwd(),`${Ae}/${t}/${e}/js/settings/content.mjs`);return await ke(n)}catch(n){throw new Error(`Content descriptor for layout [${e}] is either invalid or undefined: ${n}`)}}async function um(e,t){try{const n=nt.resolve(process.cwd(),`${Ae}/${t}/${e}/js/settings/design.mjs`);return await ke(n)}catch(n){throw new Error(`Design descriptor for layout [${e}] is either invalid or undefined: ${n}`)}}async function lm(e){const t=wt(e).split("/"),[n,r,,o]=t,s=await rs(r,n),i=await cm(r,n),a=await um(r,n);return{id:o,sectionId:n,layoutId:r,content:i,design:a,translationsSettings:s}}async function pm(){const e=`${Ae}/{product,catalog,category}/*/slots/*`,t=await F(e,{ignore:["node_modules/**"]});return await Promise.all(t.map(lm))}async function dm(){const e=await pm();return await am(e)}const fm={value:0},Ge=im();let ds=Date.now();const fs=e=>2**e*500;function hm(e){return typeof e=="object"&&e!==null&&"version"in e&&typeof e.version=="string"}async function kr(){const e=M(ae.cwd(),"package.json"),t=await mo(e),n=JSON.parse(t.toString());if(hm(n))return n;throw new Error(`Package file located at path: ${e} does not contain a version field`)}async function mm(e){const t=_a(e.version,"patch");if(t===null)throw Error("Error while incrementing app version");e.version=t,ao(M(ae.cwd(),"package.json"),`${JSON.stringify(e,null,2)}
|
|
26
|
+
`)}function Em(e){return e instanceof Eo&&(e.code==="ECONNRESET"||e.response?.status!==void 0&&e.response?.status>=500&&e.response?.status<600)}function hs(e,t){return e<Ma&&Em(t)}async function ms(e,t,n,r){const o={value:0},s=e.config.app.templates.length>0||e.config.app.collections.length>0?Da:Na;return e.config.axios.post(s,{file:na(M(ae.cwd(),n!==void 0?n+t:t))},{params:{appClientId:e.config.app.crane.appClientId,type:e.pathContext.type,version:e.config.app.packageJson.version,...e.currentSection!==void 0&&{block:e.currentSection},...e.layoutId!==void 0&&{layoutId:e.layoutId},...e.slotId!==void 0&&{slotId:e.slotId},...!["dependencies","source_code"].includes(e.pathContext.type)&&{fileName:t}},headers:{"Content-Type":"multipart/form-data",Authorization:`Bearer ${e.config.app.crane.appSecretKey}`},onUploadProgress:i=>om(i,Ge,fm,o,ds)}).then(i=>(Ge.increment(),i)).catch(async i=>{if(hs(r,i))return await ps(fs(r)),ms(e,t,n,r+1);throw Ge.increment(),i})}function gm(e){return Ge.start(e.length+1,0,{speed:"N/A",status:"Deployment in progress"}),e.map(t=>{const n=t.context,r=n.pathContext.toPath({sectionId:n.currentSection,sectionType:t.sectionType,layoutId:n.layoutId,slotId:n.slotId});return ms(n,t.url,r,0)})}function _m(e){const t=[...Jh(e),...em(e),...tm(e),...nm(e)];return gm(t)}async function Es(e,t=0){const n=e.app.templates.length>0||e.app.collections.length>0?xa:ka;return e.axios.post(n,{version:e.app.packageJson.version,name:"Custom Block App",blocks:e.app.sections,templates:e.app.templates,layouts:e.app.layouts,slots:e.app.slots,compressionEnabled:!0,externalizationEnabled:!0,vueVersion:e.app.packageJson.dependencies.vue,collections:e.app.collections,openSource:e.app.packageJson.openSource},{params:{appClientId:e.app.crane.appClientId},headers:{Authorization:`Bearer ${e.app.crane.appSecretKey}`}}).catch(async r=>{if(hs(t,r))return await ps(fs(t)),Es(e,t+1);throw r})}async function ym(e){try{if(!Za.some(i=>Ce(M(ae.cwd(),i))))throw new Error(Tt.INCORRECT_DISTRIBUTION_FOLDER(ja));const t=e??Hn;L.info("Custom application deployment :: Started");const n=Gn.create({baseURL:t});ga(n,Pa),L.info("Loading configuration files ...");const r=await Promise.all([an(),kr(),Gh(),ic(),dm()]).then(async([i,a,c,u,l])=>({axios:n,app:{crane:i,packageJson:a,sections:c,layouts:u,slots:l,templates:await Qh(i.appClientId),collections:await qh(i.appClientId)}}));L.info("Uploading files ..."),ds=Date.now(),await Promise.all(_m(r)).catch(i=>{Ge.stop(),i.response?.status===404?L.error(ht(i,Tt.DEPRECATED_VERSION_DEPLOYMENT)):L.error(ht(i,Tt.ASSET_FILES_UPLOAD)),ae.exit(1)}).finally(()=>{Ge.increment(),Ge.stop()}),Ge.update({speed:"N/A",status:"Finalising deployment"}),await Es(r).catch(i=>{Ge.stop(),i.response?.status===404?L.error(ht(i,Tt.DEPRECATED_VERSION_DEPLOYMENT)):L.error(ht(i,Tt.MANIFEST_DEPLOYMENT)),ae.exit(1)}).finally(()=>{Ge.increment(),Ge.stop()});const o=r.app.sections.map(i=>i.id),s=r.app.packageJson.version;L.info("Custom application deployment :: Successful"),L.info(`Current app version: ${s}`),L.info(`Deployed sections: ${o.sort().join(", ")}`),await mm(r.app.packageJson),r.app.templates.length>0&&L.info(`Deployed templates: ${r.app.templates.map(i=>i.id).sort().join(", ")}`),r.app.slots.length>0&&L.info(`Deployed slots: ${r.app.slots.map(i=>i.id).sort().join(", ")}`),r.app.collections.length>0&&L.info(`Deployed collections: ${r.app.collections.map(i=>i.id).sort().join(", ")}`)}catch(t){Ge.stop(),L.error(ht(t,Tt.DEFAULT)),ae.exit(1)}finally{zh()}}const Sm={layout:e=>e.layoutId,showcase:e=>e.showcaseId,templates:e=>{const t=e.id;return t?.includes("_")?t.substring(t.indexOf("_")+1):t}};function Tm(e,t){const n=Sm[e];return n?n(t):t.id}const Rm=new Set(["content","design"]);function In(e,t,n=0,r=[]){if(n>=t.length)return r;const o=t[n],s=t[n+1];if(typeof o=="string"&&typeof s=="number"&&ft(e)){const i=e[o],a=Array.isArray(i)?i[s]:void 0;if(ft(a)){const c=Tm(o,a);return r.push(`${o}[${c||s}]`),In(a,t,n+2,r)}}if(typeof o=="string"&&typeof s=="string"&&Rm.has(o)){r.push(`${o}[${s}]`);const i=ft(e)&&!Array.isArray(e)?e[o]:void 0,a=ft(i)&&!Array.isArray(i)?i[s]:void 0;return In(a,t,n+2,r)}return r.push(o),In(ft(e)?e[o]:void 0,t,n+1,r)}function wm(e){const t=e.errors.map(r=>In(e.manifest,r.path).join(".")),n={path:Math.max(...t.map(r=>r.length),0),message:Math.max(...e.errors.map(r=>r.message.length),0)};e.errors.map((r,o)=>{const s=r.params?.errorMessageKey||"GENERAL_ISSUE";return`${t[o].padEnd(n.path," ")} | ${r.message.padEnd(n.message," ")} | ${s}`}).forEach(r=>L.error(r))}async function Cm(e){const t=fh.safeParse(e);return{manifest:e,errors:t.success?[]:t.error.issues}}const gs={"process.env":{NODE_ENV:"production"}},vm=[...go,...go.map(e=>`node:${e}`)],Am=[/@vue\/compiler-dom/,/@vue\/runtime-dom/,/@vue\/server-renderer/,/@vue\/compiler-ssr/,/@vue\/shared/],_s=e=>({pluginType:Ue.Server,define:gs,ssr:!0,ssrOptions:{noExternal:!0},entryFileNames:"server.js",externalOption:[...vm,...Am],inlineDynamicImports:!0,...e,outDir:e.outDir}),ys=e=>({pluginType:Ue.Client,define:gs,ssr:!1,entryFileNames:"client.js",assetFileNames:"assets/[name].[ext]",chunkFileNames:"chunks/[name].js",inlineDynamicImports:!1,...e,outDir:e.outDir}),xt=e=>({pluginType:Ue.Misc,ssr:!1,...e,entryFileNames:e.entryFileNames,outDir:e.outDir}),Im=e=>({pluginType:Ue.Layout,ssr:!1,entryFileNames:"index.mjs",...e,outDir:e.outDir}),On=e=>({pluginType:Ue.Asset,ssr:!1,assetFileNames:"[name].[ext]",...e,outDir:e.outDir});let bn=!1;function Om(e){bn=e}function xr(){return bn}const Ss=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],bm=80,$m="\x1B[?25l",Lm="\x1B[?25h",Nm="\x1B[2K\r",Dm=44;let km=class{frameIndex=0;timer=null;realWrite=null;buffer=[];start(){bn||(this.frameIndex=0,this.buffer=[],this.realWrite=process.stdout.write.bind(process.stdout),process.stdout.write=((t,n,r)=>(this.buffer.push(typeof t=="string"?t:String(t)),typeof n=="function"&&(r=n),r&&r(),!0)),this.realWrite($m),this.render(),this.timer=setInterval(()=>this.render(),bm))}render(){if(!this.realWrite)return;const t=" Build is in progress...".padEnd(Dm-1," "),n=Ze(Ss[this.frameIndex]+t);this.realWrite(`\r${n}`),this.frameIndex=(this.frameIndex+1)%Ss.length}stop(){if(!bn&&(this.timer&&(clearInterval(this.timer),this.timer=null),this.realWrite)){process.stdout.write=this.realWrite,this.realWrite(`${Nm}${Lm}`);for(const t of this.buffer)this.realWrite(t);this.buffer=[],this.realWrite=null}}};const Ts=new km,xm=()=>Ra({ext:".gz",algorithm:"gzip",verbose:xr()}),Pm="/* EXTERNAL_IMPORTS_START */",Mm="/* EXTERNAL_IMPORTS_END */",Um=()=>({name:"external-imports-wrapper-plugin",enforce:"post",apply:"build",generateBundle(e,t){for(const n of Object.keys(t)){const r=t[n];if(r.type==="chunk"){const o=/import.*\?commonjs-external["'];/g,s=r.code.match(o);if(s!==null){const i=s.join(""),a=Pm+i+Mm,c=r.code.replace(o,"");r.code=a+c}}}}}),Fm=()=>({name:"disable-json-plugin",enforce:"pre",apply:"build",configResolved(e){const t=e.plugins?.findIndex(n=>n?.name==="vite:json");t!==-1&&(e.plugins[t]={name:"vite:json",load:()=>null,transform:()=>null})}}),zm=()=>{const e=process.env.npm_lifecycle_event;return va({typescript:!1,vueTsc:!1,eslint:e?.startsWith("test")?!1:{lintCommand:`eslint --max-warnings=0 "./sections/**/*.{js,ts,vue}" --cache --cache-location "./build/eslintcache/${e}.json"`}})},Ye={vue:()=>wa(),tsconfigPaths:()=>Ca(),checker:()=>zm()};class xn{constructor(t){this.bits=t instanceof xn?t.bits.slice():[]}add(t){this.bits[t>>5]|=1<<(t&31)}has(t){return!!(this.bits[t>>5]&1<<(t&31))}}class Jt{constructor(t,n,r){this.start=t,this.end=n,this.original=r,this.intro="",this.outro="",this.content=r,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(t){this.outro+=t}appendRight(t){this.intro=this.intro+t}clone(){const t=new Jt(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(t){return this.start<t&&t<this.end}eachNext(t){let n=this;for(;n;)t(n),n=n.next}eachPrevious(t){let n=this;for(;n;)t(n),n=n.previous}edit(t,n,r){return this.content=t,r||(this.intro="",this.outro=""),this.storeName=n,this.edited=!0,this}prependLeft(t){this.outro=t+this.outro}prependRight(t){this.intro=t+this.intro}reset(){this.intro="",this.outro="",this.edited&&(this.content=this.original,this.storeName=!1,this.edited=!1)}split(t){const n=t-this.start,r=this.original.slice(0,n),o=this.original.slice(n);this.original=r;const s=new Jt(t,this.end,o);return s.outro=this.outro,this.outro="",this.end=t,this.edited?(s.edit("",!1),this.content=""):this.content=r,s.next=this.next,s.next&&(s.next.previous=s),s.previous=this,this.next=s,s}toString(){return this.intro+this.content+this.outro}trimEnd(t){if(this.outro=this.outro.replace(t,""),this.outro.length)return!0;const n=this.content.replace(t,"");if(n.length)return n!==this.content&&(this.split(this.start+n.length).edit("",void 0,!0),this.edited&&this.edit(n,this.storeName,!0)),!0;if(this.edit("",void 0,!0),this.intro=this.intro.replace(t,""),this.intro.length)return!0}trimStart(t){if(this.intro=this.intro.replace(t,""),this.intro.length)return!0;const n=this.content.replace(t,"");if(n.length){if(n!==this.content){const r=this.split(this.end-n.length);this.edited&&r.edit(n,this.storeName,!0),this.edit("",void 0,!0)}return!0}else if(this.edit("",void 0,!0),this.outro=this.outro.replace(t,""),this.outro.length)return!0}}function Gm(){return typeof globalThis<"u"&&typeof globalThis.btoa=="function"?e=>globalThis.btoa(unescape(encodeURIComponent(e))):typeof Buffer=="function"?e=>Buffer.from(e,"utf-8").toString("base64"):()=>{throw new Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}const Hm=Gm();class jm{constructor(t){this.version=3,this.file=t.file,this.sources=t.sources,this.sourcesContent=t.sourcesContent,this.names=t.names,this.mappings=Aa(t.mappings),typeof t.x_google_ignoreList<"u"&&(this.x_google_ignoreList=t.x_google_ignoreList)}toString(){return JSON.stringify(this)}toUrl(){return"data:application/json;charset=utf-8;base64,"+Hm(this.toString())}}function Bm(e){const t=e.split(`
|
|
27
|
+
`),n=t.filter(s=>/^\t+/.test(s)),r=t.filter(s=>/^ {2,}/.test(s));if(n.length===0&&r.length===0)return null;if(n.length>=r.length)return" ";const o=r.reduce((s,i)=>{const a=/^ +/.exec(i)[0].length;return Math.min(a,s)},1/0);return new Array(o+1).join(" ")}function Zm(e,t){const n=e.split(/[/\\]/),r=t.split(/[/\\]/);for(n.pop();n[0]===r[0];)n.shift(),r.shift();if(n.length){let o=n.length;for(;o--;)n[o]=".."}return n.concat(r).join("/")}const Vm=Object.prototype.toString;function Wm(e){return Vm.call(e)==="[object Object]"}function Rs(e){const t=e.split(`
|
|
28
|
+
`),n=[];for(let r=0,o=0;r<t.length;r++)n.push(o),o+=t[r].length+1;return function(o){let s=0,i=n.length;for(;s<i;){const u=s+i>>1;o<n[u]?i=u:s=u+1}const a=s-1,c=o-n[a];return{line:a,column:c}}}const Km=/\w/;class Ym{constructor(t){this.hires=t,this.generatedCodeLine=0,this.generatedCodeColumn=0,this.raw=[],this.rawSegments=this.raw[this.generatedCodeLine]=[],this.pending=null}addEdit(t,n,r,o){if(n.length){const s=n.length-1;let i=n.indexOf(`
|
|
29
29
|
`,0),a=-1;for(;i>=0&&s>i;){const u=[this.generatedCodeColumn,t,r.line,r.column];o>=0&&u.push(o),this.rawSegments.push(u),this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,a=i,i=n.indexOf(`
|
|
30
|
-
`,i+1)}const c=[this.generatedCodeColumn,t,r.line,r.column];o>=0&&c.push(o),this.rawSegments.push(c),this.advance(n.slice(a+1))}else this.pending&&(this.rawSegments.push(this.pending),this.advance(n));this.pending=null}addUneditedChunk(t,n,r,o,s){let i=n.start,a=!0,c=!1;for(;i<n.end;){if(this.hires||a||s.has(i)){const u=[this.generatedCodeColumn,t,o.line,o.column];this.hires==="boundary"?
|
|
30
|
+
`,i+1)}const c=[this.generatedCodeColumn,t,r.line,r.column];o>=0&&c.push(o),this.rawSegments.push(c),this.advance(n.slice(a+1))}else this.pending&&(this.rawSegments.push(this.pending),this.advance(n));this.pending=null}addUneditedChunk(t,n,r,o,s){let i=n.start,a=!0,c=!1;for(;i<n.end;){if(this.hires||a||s.has(i)){const u=[this.generatedCodeColumn,t,o.line,o.column];this.hires==="boundary"?Km.test(r[i])?c||(this.rawSegments.push(u),c=!0):(this.rawSegments.push(u),c=!1):this.rawSegments.push(u)}r[i]===`
|
|
31
31
|
`?(o.line+=1,o.column=0,this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,a=!0):(o.column+=1,this.generatedCodeColumn+=1,a=!1),i+=1}this.pending=null}advance(t){if(!t)return;const n=t.split(`
|
|
32
|
-
`);if(n.length>1){for(let r=0;r<n.length-1;r++)this.generatedCodeLine++,this.raw[this.generatedCodeLine]=this.rawSegments=[];this.generatedCodeColumn=0}this.generatedCodeColumn+=n[n.length-1].length}}const
|
|
33
|
-
`,
|
|
32
|
+
`);if(n.length>1){for(let r=0;r<n.length-1;r++)this.generatedCodeLine++,this.raw[this.generatedCodeLine]=this.rawSegments=[];this.generatedCodeColumn=0}this.generatedCodeColumn+=n[n.length-1].length}}const qt=`
|
|
33
|
+
`,Pt={insertLeft:!1,insertRight:!1,storeName:!1};class so{constructor(t,n={}){const r=new Jt(0,t.length,t);Object.defineProperties(this,{original:{writable:!0,value:t},outro:{writable:!0,value:""},intro:{writable:!0,value:""},firstChunk:{writable:!0,value:r},lastChunk:{writable:!0,value:r},lastSearchedChunk:{writable:!0,value:r},byStart:{writable:!0,value:{}},byEnd:{writable:!0,value:{}},filename:{writable:!0,value:n.filename},indentExclusionRanges:{writable:!0,value:n.indentExclusionRanges},sourcemapLocations:{writable:!0,value:new xn},storedNames:{writable:!0,value:{}},indentStr:{writable:!0,value:void 0},ignoreList:{writable:!0,value:n.ignoreList}}),this.byStart[0]=r,this.byEnd[t.length]=r}addSourcemapLocation(t){this.sourcemapLocations.add(t)}append(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.outro+=t,this}appendLeft(t,n){if(typeof n!="string")throw new TypeError("inserted content must be a string");this._split(t);const r=this.byEnd[t];return r?r.appendLeft(n):this.intro+=n,this}appendRight(t,n){if(typeof n!="string")throw new TypeError("inserted content must be a string");this._split(t);const r=this.byStart[t];return r?r.appendRight(n):this.outro+=n,this}clone(){const t=new so(this.original,{filename:this.filename});let n=this.firstChunk,r=t.firstChunk=t.lastSearchedChunk=n.clone();for(;n;){t.byStart[r.start]=r,t.byEnd[r.end]=r;const o=n.next,s=o&&o.clone();s&&(r.next=s,s.previous=r,r=s),n=o}return t.lastChunk=r,this.indentExclusionRanges&&(t.indentExclusionRanges=this.indentExclusionRanges.slice()),t.sourcemapLocations=new xn(this.sourcemapLocations),t.intro=this.intro,t.outro=this.outro,t}generateDecodedMap(t){t=t||{};const n=0,r=Object.keys(this.storedNames),o=new Ym(t.hires),s=Rs(this.original);return this.intro&&o.advance(this.intro),this.firstChunk.eachNext(i=>{const a=s(i.start);i.intro.length&&o.advance(i.intro),i.edited?o.addEdit(n,i.content,a,i.storeName?r.indexOf(i.original):-1):o.addUneditedChunk(n,i,this.original,a,this.sourcemapLocations),i.outro.length&&o.advance(i.outro)}),{file:t.file?t.file.split(/[/\\]/).pop():void 0,sources:[t.source?Zm(t.file||"",t.source):t.file||""],sourcesContent:t.includeContent?[this.original]:void 0,names:r,mappings:o.raw,x_google_ignoreList:this.ignoreList?[n]:void 0}}generateMap(t){return new jm(this.generateDecodedMap(t))}_ensureindentStr(){this.indentStr===void 0&&(this.indentStr=Bm(this.original))}_getRawIndentString(){return this._ensureindentStr(),this.indentStr}getIndentString(){return this._ensureindentStr(),this.indentStr===null?" ":this.indentStr}indent(t,n){const r=/^[^\r\n]/gm;if(Wm(t)&&(n=t,t=void 0),t===void 0&&(this._ensureindentStr(),t=this.indentStr||" "),t==="")return this;n=n||{};const o={};n.exclude&&(typeof n.exclude[0]=="number"?[n.exclude]:n.exclude).forEach(l=>{for(let h=l[0];h<l[1];h+=1)o[h]=!0});let s=n.indentStart!==!1;const i=u=>s?`${t}${u}`:(s=!0,u);this.intro=this.intro.replace(r,i);let a=0,c=this.firstChunk;for(;c;){const u=c.end;if(c.edited)o[a]||(c.content=c.content.replace(r,i),c.content.length&&(s=c.content[c.content.length-1]===`
|
|
34
34
|
`));else for(a=c.start;a<u;){if(!o[a]){const l=this.original[a];l===`
|
|
35
|
-
`?s=!0:l!=="\r"&&s&&(s=!1,a===c.start||(this._splitChunk(c,a),c=c.next),c.prependRight(t))}a+=1}a=c.end,c=c.next}return this.outro=this.outro.replace(r,i),this}insert(){throw new Error("magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)")}insertLeft(t,n){return
|
|
36
|
-
${
|
|
37
|
-
`,$m=(e,t)=>{const n=e.split("?")[0],r=Ys(n);return(r==="server.ts"||r==="client.ts")&&!t.includes(gs)},_s=()=>{let e=!1;return{name:"static-translation-plugin",enforce:"pre",apply:"build",buildStart(){e=we(Es)},transform(t,n){if(!e||!$m(n,t))return null;const r=n.split("?")[0],o=oo(r),s=ea(Ws(o,Es)),i=bm(s),a=new to(t);return a.prepend(i),{code:a.toString()}}}},Lm={[Ge.Server]:[Ke.VUE,Ke.TS_CONFIG_PATHS,gm(),hm(),_s()],[Ge.Client]:[Ke.VUE,Ke.TS_CONFIG_PATHS,Ke.CHECKER,fo({vue:"EcVue"}),_s()],[Ge.Misc]:[Ke.TS_CONFIG_PATHS,Ke.CHECKER],[Ge.Layout]:[Ke.VUE,Ke.TS_CONFIG_PATHS,Ke.CHECKER,fo({vue:["EcExternals","Vue"]})],[Ge.Asset]:[_m()],[Ge.SharedFiles]:[Ke.TS_CONFIG_PATHS]},Nm={[de.Server]:fs({outDir:({name:e,sectionType:t})=>`./${ae[t].dist}/${e}/js/main/server`}),[de.Client]:hs({outDir:({name:e,sectionType:t})=>`./${ae[t].dist}/${e}/js/main/client`}),[de.SectionSetting]:kt({entryFileNames:"[name].mjs",outDir:({name:e,sectionType:t})=>`./${ae[t].dist}/${e}/js/settings`}),[de.SectionShowcase]:kt({entryFileNames:"[name].mjs",outDir:({name:e,sectionType:t})=>`./${ae[t].dist}/${e}/js/showcases`}),[de.SectionAsset]:vn({outDir:({name:e,sectionType:t})=>`./${ae[t].dist}/${e}/assets`}),[de.TemplateDescriptor]:kt({entryFileNames:"[name].mjs",outDir:()=>`./${ze}/js`}),[de.PageTemplateDescriptor]:kt({entryFileNames:"[name].mjs",outDir:({name:e})=>`./${ze}/${e}`}),[de.TemplateAsset]:vn({outDir:()=>`./${ze}/assets`}),[de.Layout]:fm({outDir:({name:e,sectionId:t})=>`./${Ae}/${t}/${e}`}),[de.LayoutSettings]:kt({entryFileNames:"[name].mjs",outDir:({name:e,sectionId:t})=>`./${Ae}/${t}/${e}/js/settings`}),[de.LayoutAsset]:vn({outDir:({name:e,sectionId:t})=>`./${Ae}/${t}/${e}/assets`}),[de.SlotServer]:fs({outDir:({name:e,layoutId:t,sectionId:n})=>`./${Ae}/${n}/${t}/slots/${e}/js/main/server`}),[de.SlotClient]:hs({outDir:({name:e,layoutId:t,sectionId:n})=>`./${Ae}/${n}/${t}/slots/${e}/js/main/client`}),[de.CollectionDescriptor]:kt({entryFileNames:"[name].mjs",outDir:({name:e})=>`./${tn}/${e}`}),[de.CollectionAsset]:vn({outDir:()=>`./${tn}/assets`}),[de.SharedTranslation]:{pluginType:Ge.SharedFiles,ssr:!1,inlineDynamicImports:!0,entryFileNames:"translation.mjs",outDir:()=>"./dist/shared"}};function Dm(e){switch(typeof e){case"string":return[U(process.cwd(),e)];case"object":return e.map(t=>U(process.cwd(),t));default:return[]}}function ys({name:e,entryPoints:t,configType:n,layoutId:r,sectionId:o,sectionType:s=ve.SECTION}){const i=Nm[n],a=i.define,c=i.ssrOptions,u=i.entryFileNames,l=i.chunkFileNames,h=i.assetFileNames,d=i.inlineDynamicImports,$=i.externalOption;return{plugins:Lm[i.pluginType],ssr:c,define:a,resolve:{alias:{"@":"/src"}},build:{ssr:i.ssr,outDir:i.outDir({name:e,sectionType:s,layoutId:r,sectionId:o}),emptyOutDir:!0,minify:"terser",terserOptions:{compress:{drop_console:!1,pure_getters:!0}},rollupOptions:{external:$,preserveEntrySignatures:"strict",input:Dm(t),treeshake:{moduleSideEffects:!1},output:{validate:!0,inlineDynamicImports:d,entryFileNames:u,chunkFileNames:l,assetFileNames:h}}},assetsInclude:["**/*.json"]}}async function km(){const e={ignore:["node_modules/**","dist/**"]},t=await G(`./${Tt}/{product,category,catalog}/*/Main.vue`,e);return await Promise.all(t.map(async n=>{const{id:r,sectionId:o,pageId:s}=Ba(n),[i,a]=await Promise.all([G(`./${Tt}/${o}/${r}/settings/{content,design,translations}.{js,ts}`,e),G(`./${Tt}/${o}/${r}/assets/*`,e)]);return{name:r,sectionId:o,pageId:s,clientEntrypoint:n,settingsEntryPoints:i,assetsEntrypoints:a}}))}async function xm(e){await xe({entryPoints:[e.clientEntrypoint],configType:de.Layout,name:e.name,sectionId:e.sectionId}),await Promise.all([xe({entryPoints:e.settingsEntryPoints,configType:de.LayoutSettings,name:e.name,sectionId:e.sectionId}),xe({entryPoints:e.assetsEntrypoints,configType:de.LayoutAsset,name:e.name,sectionId:e.sectionId})])}async function Pm(e){e===void 0||e.length===0||await Promise.all(e.map(t=>xm(t)))}async function Um(e){const t=co(ys({name:e.name,entryPoints:e.serverEntrypoint,configType:st.Server,sectionType:e.type}));await yt({configFile:!1,...t}),await Promise.all([xe({entryPoints:e.clientEntrypoint,configType:st.Client,name:e.name,sectionType:e.type}),xe({entryPoints:e.settingsEntryPoints,configType:st.SectionSetting,name:e.name,sectionType:e.type}),xe({entryPoints:e.showcaseEntryPoints,configType:st.SectionShowcase,name:e.name,sectionType:e.type}),xe({entryPoints:e.assetEntryPoints,configType:st.SectionAsset,name:e.name,sectionType:e.type})])}async function Mm(){const e=U(process.cwd(),"shared/translation.ts");we(e)&&await xe({entryPoints:["shared/translation.ts"],configType:st.SharedTranslation})}async function Ss(e){return e.reduce(async(t,n)=>{await t,await Um(n)},Promise.resolve())}async function Gm(){const e={ignore:["node_modules/**","dist/**"]},t=await G(`${Tt}/{product,category,catalog}/*/slots/*/server.ts`,e);return Promise.all(t.map(async n=>{const{id:r,sectionId:o,layoutId:s}=Vh(n),i=(await G(`${Tt}/${o}/${s}/slots/${r}/client.{js,ts}`,e))[0];if(i===void 0)throw new Error(`Cannot find client entrypoint file for slot ${r} of section ${o}`);return{id:r,sectionId:o,layoutId:s,serverEntrypoint:n,clientEntrypoint:i}}))}async function zm(e){const t={name:e.id,layoutId:e.layoutId,sectionId:e.sectionId};await xe({entryPoints:[e.serverEntrypoint],configType:de.SlotServer,...t}),await xe({entryPoints:[e.clientEntrypoint],configType:de.SlotClient,...t})}async function Fm(e){e===void 0||e.length===0||await e.reduce(async(t,n)=>{await t,await zm(n)},Promise.resolve())}async function Hm(e){return(await G(`**/${e}/pages/*.{js,ts}`,{ignore:["node_modules/**","dist/**"]})).filter(t=>{const n=io(t).name.toLowerCase();return!Object.values(hi).includes(n)})}async function jm(){const e=await G("./templates/*",{ignore:["templates/assets/**","templates/**.{js,ts}","node_modules/**","dist/**"]}).catch(t=>(L.error(`Error while getting page template entry points: ${t}`),[]));return Promise.all(e.map(async t=>{const n=t.split(xn),r=n.pop()??"default";if(n.pop()===void 0)throw new Error("Cannot determine template with custom pages, outer directory is undefined");const o=await G(`**/templates/${r}/configuration.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),s=await G(`**/templates/${r}/pages/home.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),i=await G(`**/templates/${r}/pages/category.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),a=await G(`**/templates/${r}/pages/catalog.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),c=await G(`**/templates/${r}/pages/product.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),u=await Hm(r);return{name:r,configurationEntrypoint:o.at(0),homeEntrypoint:s.at(0),categoryEntrypoint:i.at(0),catalogEntrypoint:a.at(0),productEntrypoint:c.at(0),customEntrypoint:u.length>0?u:void 0}}))}async function Bm(){const e=await G("./templates/**.{js,ts}",{ignore:["node_modules/**","dist/**"]}),t=await G("./templates/assets/*",{ignore:["node_modules/**","dist/**"]});return{pageTemplates:await jm(),templates:e,assets:t}}async function Zm({templateBuildConfig:e}){await Promise.all([xe({entryPoints:e.assets,configType:st.TemplateAsset}),...e.pageTemplates?.map(async t=>{const n=[t.configurationEntrypoint,t.homeEntrypoint,t.categoryEntrypoint,t.catalogEntrypoint,t.productEntrypoint,...t.customEntrypoint??[]].filter(nn);if(n.length===0)throw new Error("No entry points provided for page template");await xe({entryPoints:n,configType:st.PageTemplateDescriptor,name:t.name})})||[]])}async function Vm(){const e=await Bm();await Zm({templateBuildConfig:e})}async function Km(){const e=await G("./collections/*",{ignore:["collections/assets/**","collections/**.{js,ts}","node_modules/**","dist/**"]}).catch(n=>(L.error(`Error while getting collection entry points: ${n}`),[])),t=await G("./collections/assets/*",{ignore:["node_modules/**","dist/**"]});return Promise.all(e.map(async n=>{const r=n.split(xn),o=r.pop()??"default";if(r.pop()===void 0)throw new Error("Cannot determine collection, outer directory is undefined");const s=await G(`**/collections/${o}/configuration.{js,ts}`,{ignore:["node_modules/**","dist/**"]});return{name:o,configurationEntrypoint:s.at(0),assetsEntrypoints:t}}))}async function Wm(){const e=await Km();e.length!==0&&await Promise.all(e.flatMap(t=>[xe({entryPoints:t.assetsEntrypoints,configType:de.CollectionAsset,name:t.name}),xe({entryPoints:t.configurationEntrypoint?[t.configurationEntrypoint]:[],configType:de.CollectionDescriptor,name:t.name})]))}function Ts(e){return{name:e.name,type:e.type,serverEntrypoint:e.serverEntrypoint,clientEntrypoint:[e.clientEntrypoint].filter(nn).flat(),settingsEntryPoints:[e.contentSettingsEntrypoint,e.designSettingsEntrypoint,e.layoutSettingsEntrypoint,e.settingsTranslationsEntrypoint].filter(nn),showcaseEntryPoints:[...e.showcasesEntrypoints??[],e.showcasesTranslationsEntrypoint].filter(nn),assetEntryPoints:e.assetsEntrypoints??[]}}function Ym(e){return e.map(t=>({...t,selectedDesignSettings:t.selectedDesignSettings.map(n=>{const r=n.defaults;return r&&typeof r=="object"&&!("type"in r)?{...n,defaults:{type:n.type,...r}}:n})}))}async function Xm(e,t=Ie){const n=U(process.cwd(),`${t}/${e}/js/main/server/server.js.gz`),r=ho(mo.gunzip),o=await re.promises.readFile(n);return{size:(await r(o)).length}}async function Qm(e,t=Ie){try{const n=U(process.cwd(),`${t}/${e}/assets/`);return(await G("*",{cwd:n})).map(r=>{const o=U(n,r);return{path:r,size:Mt(o).size}})}catch{throw new Error(`Asset files for section [${e}] is either invalid or undefined`)}}async function Lr(e,t){const n=await Qi(e,ae[t].dist),r=await Dt(e,ae[t].dist),o=await es(e,ae[t].dist),s=await ns(e,ae[t].dist),i=await rs(e,ae[t].dist),a=await os(e,ae[t].dist),c=Ym(a),u=await Qm(e,ae[t].dist),l=await Xm(e,ae[t].dist),h=is(e);return{id:e,type:t,name:e,content:o,design:s,layout:c,showcase:i,translationsSettings:n,translationsShowcases:r,assets:u,server:l,previewCount:h}}async function qm(){const e=await G("*/",{cwd:U(process.cwd(),`${Ie}/`)}),t=await G("*/",{cwd:U(process.cwd(),`${zt}/`)}),n=await G("*/",{cwd:U(process.cwd(),`${Ft}/`)});return Promise.all([...e.map(async r=>Lr(r,Lt.SECTION)),...t.map(async r=>Lr(r,Lt.HEADER)),...n.map(async r=>Lr(r,Lt.FOOTER))])}async function Jm(e){try{const t=U(process.cwd(),`${e}/assets/`);return(await G("*",{cwd:t})).map(n=>{const r=U(t,n);return{path:n,size:Mt(r).size}})}catch{throw new Error("Asset files for layouts are either invalid or undefined")}}async function eE(e){const t=Rt(e).split("/");if(t.length<2)throw new Error(`Invalid layout path: ${e}. Expected format: [dist/]layouts/{sectionId}/{layoutId}/[...path]`);const[n,r]=t,[o,s,i,a]=await Promise.all([nE(r,n),rE(r,n),qi(r,n),Jm(e)]);return{id:r,sectionId:n,content:o,design:s,translationsSettings:i,assets:a}}async function tE(){const e=`${Ae}/{product,catalog,category}/*`,t=await G(e,{ignore:["node_modules/**"]});return Promise.all(t.map(eE))}async function nE(e,t){try{const n=U(process.cwd(),`${Ae}/${t}/${e}/js/settings/content.mjs`),r=await ke(n);return Bt(r)}catch(n){throw new Error(`Content descriptor for layout [${e}] is either invalid or undefined: ${n}`)}}async function rE(e,t){try{const n=U(process.cwd(),`${Ae}/${t}/${e}/js/settings/design.mjs`),r=await ke(n);return Bt(r)}catch(n){throw new Error(`Design descriptor for layout [${e}] is either invalid or undefined: ${n}`)}}async function oE(e,t,n){const r=U(process.cwd(),`${Ae}/${n}/${t}/slots/${e}/js/main/server/server.js.gz`),o=ho(mo.gunzip),s=await re.promises.readFile(r);return{size:(await o(s)).length}}async function iE(e){const t=Rt(e).split("/");if(t.length<4||t[2]!=="slots")throw new Error(`Invalid slot path: ${e}. Expected format: [dist/]layouts/{sectionId}/{layoutId}/slots/{slotId}/[...path]`);const[n,r,,o]=t,s=await oE(o,r,n);return{id:o,sectionId:n,layoutId:r,server:s}}async function sE(){const e=`${Ae}/{product,catalog,category}/*/slots/*`,t=await G(e,{ignore:["node_modules/**"]});return await Promise.all(t.map(iE))}async function aE(){try{const e=U(process.cwd(),`${ze}/assets/`);return(await G("*",{cwd:e})).map(t=>{const n=U(e,t);return{path:t,size:Mt(n).size}})}catch{throw new Error("Asset files for templates are either invalid or undefined")}}function cE(e){return e in Xe?Xe[e]:Xe.CUSTOM}async function uE(e){const t=await G(`${ze}/${e}/*.mjs`,{ignore:[`${ze}/${e}/configuration*.mjs`]});return Promise.all(t.map(async n=>{const{sections:r,metadata:o}=await Rs(n),s=So(n);return{type:cE(s.toUpperCase()),id:s,metadata:o,sections:r}}))}async function Rs(e){try{return await ke(U(process.cwd(),e))}catch{throw new Error(`Template file [${e}] is either invalid or undefined`)}}async function lE(e){const t=await G(`${ze}/**/configuration*.mjs`,{});return Promise.all(t.map(async n=>{const r=ue.basename(ue.dirname(n));return{id:`${e}_${r}`,assets:await aE(),configuration:await Rs(n),pages:await uE(r)}}))}async function pE(e){return await lE(e)}async function dE(){const e=U(process.cwd(),`${ka}/translation.mjs`);return await ke(e)}async function fE(){return{translations:await dE()}}async function hE(){const e=await rn(),[t,n,r,o,s,i]=await Promise.all([$r(),fE(),qm(),tE(),sE(),pE(e.appClientId)]);return{version:t.version,name:"Custom Block App",shared:n,sections:r,templates:i,layouts:o,slots:s,compressionEnabled:!0,externalizationEnabled:!0,vueVersion:t.dependencies.vue}}function mE(e){return Object.entries(ae).find(t=>t[1].source===e)?.[0]}async function Cs(){const e=await G("**/server.{js,ts}",{ignore:["node_modules/**","dist/**","templates/**","layouts/**","collections/**"]});return Promise.all(e.map(async t=>{const n=oo(t).split(xn),r=n.pop()??"default",o=n.pop();if(o===void 0)throw new Error("Cannot determine type of section, outer directory is undefined");const s=await G(`**/${r}/client.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),i=await G(`**/${r}/settings/content.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),a=await G(`**/${r}/settings/design.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),c=await G(`**/${r}/settings/layout.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),u=await G(`**/${r}/settings/translations.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),l=await G(`**/${r}/showcases/*.{js,ts}`,{ignore:["node_modules/**","dist/**",`**/${r}/showcases/translations.{js,ts}`]}),h=await G(`**/${r}/showcases/translations.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),d=await G(`**/${r}/assets/*`,{ignore:["node_modules/**","dist/**"]});return{name:r,type:mE(o),serverEntrypoint:t,clientEntrypoint:s.at(0),contentSettingsEntrypoint:i.at(0),designSettingsEntrypoint:a.at(0),layoutSettingsEntrypoint:c.at(0),settingsTranslationsEntrypoint:u.at(0),showcasesEntrypoints:l,showcasesTranslationsEntrypoint:h.at(0),assetsEntrypoints:d}}))}function EE(){return Promise.all([kn.rm("dist",{recursive:!0,force:!0}),kn.rm("source-code",{recursive:!0,force:!0}),kn.rm("source-code.zip",{force:!0})])}async function gE(){const e=new so,t=["node_modules/**/*","dist/**/*","build/**/*",".git/**/*","**/assets/**/*","crane.config.json"];(await $r()).openSource===!0&&t.splice(t.indexOf("**/assets/**/*"),1);const n=await G("**/*",{cwd:U(process.cwd()),ignore:t,dot:!0,nodir:!0});try{n.forEach(s=>{const i=U(process.cwd(),s);e.addLocalFile(i,io(s).dir)});const r=jt[J.SourceCode].fileName,o=U(process.cwd(),r);await e.writeZipPromise(o)}catch(r){throw L.error("Error while zipping source files"),r}}async function An(e=!1){await EE();try{const[t,n,r]=await Promise.all([km(),Cs(),Gm()]),o=n.map(Ts);await Mm(),await Ss(o),await Vm(),await Wm(),await Promise.all([Fm(r),Pm(t),gE()]);const s=await hE(),i=await lm(s);i.errors.length===0?L.info(`Build successful:
|
|
35
|
+
`?s=!0:l!=="\r"&&s&&(s=!1,a===c.start||(this._splitChunk(c,a),c=c.next),c.prependRight(t))}a+=1}a=c.end,c=c.next}return this.outro=this.outro.replace(r,i),this}insert(){throw new Error("magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)")}insertLeft(t,n){return Pt.insertLeft||(console.warn("magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead"),Pt.insertLeft=!0),this.appendLeft(t,n)}insertRight(t,n){return Pt.insertRight||(console.warn("magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead"),Pt.insertRight=!0),this.prependRight(t,n)}move(t,n,r){if(r>=t&&r<=n)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(n),this._split(r);const o=this.byStart[t],s=this.byEnd[n],i=o.previous,a=s.next,c=this.byStart[r];if(!c&&s===this.lastChunk)return this;const u=c?c.previous:this.lastChunk;return i&&(i.next=a),a&&(a.previous=i),u&&(u.next=o),c&&(c.previous=s),o.previous||(this.firstChunk=s.next),s.next||(this.lastChunk=o.previous,this.lastChunk.next=null),o.previous=u,s.next=c||null,u||(this.firstChunk=o),c||(this.lastChunk=s),this}overwrite(t,n,r,o){return o=o||{},this.update(t,n,r,{...o,overwrite:!o.contentOnly})}update(t,n,r,o){if(typeof r!="string")throw new TypeError("replacement content must be a string");for(;t<0;)t+=this.original.length;for(;n<0;)n+=this.original.length;if(n>this.original.length)throw new Error("end is out of bounds");if(t===n)throw new Error("Cannot overwrite a zero-length range \u2013 use appendLeft or prependRight instead");this._split(t),this._split(n),o===!0&&(Pt.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),Pt.storeName=!0),o={storeName:!0});const s=o!==void 0?o.storeName:!1,i=o!==void 0?o.overwrite:!1;if(s){const u=this.original.slice(t,n);Object.defineProperty(this.storedNames,u,{writable:!0,value:!0,enumerable:!0})}const a=this.byStart[t],c=this.byEnd[n];if(a){let u=a;for(;u!==c;){if(u.next!==this.byStart[u.end])throw new Error("Cannot overwrite across a split point");u=u.next,u.edit("",!1)}a.edit(r,s,!i)}else{const u=new Jt(t,n,"").edit(r,s);c.next=u,u.previous=c}return this}prepend(t){if(typeof t!="string")throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this}prependLeft(t,n){if(typeof n!="string")throw new TypeError("inserted content must be a string");this._split(t);const r=this.byEnd[t];return r?r.prependLeft(n):this.intro=n+this.intro,this}prependRight(t,n){if(typeof n!="string")throw new TypeError("inserted content must be a string");this._split(t);const r=this.byStart[t];return r?r.prependRight(n):this.outro=n+this.outro,this}remove(t,n){for(;t<0;)t+=this.original.length;for(;n<0;)n+=this.original.length;if(t===n)return this;if(t<0||n>this.original.length)throw new Error("Character is out of bounds");if(t>n)throw new Error("end must be greater than start");this._split(t),this._split(n);let r=this.byStart[t];for(;r;)r.intro="",r.outro="",r.edit(""),r=n>r.end?this.byStart[r.end]:null;return this}reset(t,n){for(;t<0;)t+=this.original.length;for(;n<0;)n+=this.original.length;if(t===n)return this;if(t<0||n>this.original.length)throw new Error("Character is out of bounds");if(t>n)throw new Error("end must be greater than start");this._split(t),this._split(n);let r=this.byStart[t];for(;r;)r.reset(),r=n>r.end?this.byStart[r.end]:null;return this}lastChar(){if(this.outro.length)return this.outro[this.outro.length-1];let t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""}lastLine(){let t=this.outro.lastIndexOf(qt);if(t!==-1)return this.outro.substr(t+1);let n=this.outro,r=this.lastChunk;do{if(r.outro.length>0){if(t=r.outro.lastIndexOf(qt),t!==-1)return r.outro.substr(t+1)+n;n=r.outro+n}if(r.content.length>0){if(t=r.content.lastIndexOf(qt),t!==-1)return r.content.substr(t+1)+n;n=r.content+n}if(r.intro.length>0){if(t=r.intro.lastIndexOf(qt),t!==-1)return r.intro.substr(t+1)+n;n=r.intro+n}}while(r=r.previous);return t=this.intro.lastIndexOf(qt),t!==-1?this.intro.substr(t+1)+n:this.intro+n}slice(t=0,n=this.original.length){for(;t<0;)t+=this.original.length;for(;n<0;)n+=this.original.length;let r="",o=this.firstChunk;for(;o&&(o.start>t||o.end<=t);){if(o.start<n&&o.end>=n)return r;o=o.next}if(o&&o.edited&&o.start!==t)throw new Error(`Cannot use replaced character ${t} as slice start anchor.`);const s=o;for(;o;){o.intro&&(s!==o||o.start===t)&&(r+=o.intro);const i=o.start<n&&o.end>=n;if(i&&o.edited&&o.end!==n)throw new Error(`Cannot use replaced character ${n} as slice end anchor.`);const a=s===o?t-o.start:0,c=i?o.content.length+n-o.end:o.content.length;if(r+=o.content.slice(a,c),o.outro&&(!i||o.end===n)&&(r+=o.outro),i)break;o=o.next}return r}snip(t,n){const r=this.clone();return r.remove(0,t),r.remove(n,r.original.length),r}_split(t){if(this.byStart[t]||this.byEnd[t])return;let n=this.lastSearchedChunk;const r=t>n.end;for(;n;){if(n.contains(t))return this._splitChunk(n,t);n=r?this.byStart[n.end]:this.byEnd[n.start]}}_splitChunk(t,n){if(t.edited&&t.content.length){const o=Rs(this.original)(n);throw new Error(`Cannot split a chunk that has already been edited (${o.line}:${o.column} \u2013 "${t.original}")`)}const r=t.split(n);return this.byEnd[n]=t,this.byStart[n]=r,this.byEnd[r.end]=r,t===this.lastChunk&&(this.lastChunk=r),this.lastSearchedChunk=t,!0}toString(){let t=this.intro,n=this.firstChunk;for(;n;)t+=n.toString(),n=n.next;return t+this.outro}isEmpty(){let t=this.firstChunk;do if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1;while(t=t.next);return!0}length(){let t=this.firstChunk,n=0;do n+=t.intro.length+t.content.length+t.outro.length;while(t=t.next);return n}trimLines(){return this.trim("[\\r\\n]")}trim(t){return this.trimStart(t).trimEnd(t)}trimEndAborted(t){const n=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(n,""),this.outro.length)return!0;let r=this.lastChunk;do{const o=r.end,s=r.trimEnd(n);if(r.end!==o&&(this.lastChunk===r&&(this.lastChunk=r.next),this.byEnd[r.end]=r,this.byStart[r.next.start]=r.next,this.byEnd[r.next.end]=r.next),s)return!0;r=r.previous}while(r);return!1}trimEnd(t){return this.trimEndAborted(t),this}trimStartAborted(t){const n=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(n,""),this.intro.length)return!0;let r=this.firstChunk;do{const o=r.end,s=r.trimStart(n);if(r.end!==o&&(r===this.lastChunk&&(this.lastChunk=r.next),this.byEnd[r.end]=r,this.byStart[r.next.start]=r.next,this.byEnd[r.next.end]=r.next),s)return!0;r=r.next}while(r);return!1}trimStart(t){return this.trimStartAborted(t),this}hasChanged(){return this.original!==this.toString()}_replaceRegexp(t,n){function r(s,i){return typeof n=="string"?n.replace(/\$(\$|&|\d+)/g,(a,c)=>c==="$"?"$":c==="&"?s[0]:+c<s.length?s[+c]:`$${c}`):n(...s,s.index,i,s.groups)}function o(s,i){let a;const c=[];for(;a=s.exec(i);)c.push(a);return c}if(t.global)o(t,this.original).forEach(i=>{if(i.index!=null){const a=r(i,this.original);a!==i[0]&&this.overwrite(i.index,i.index+i[0].length,a)}});else{const s=this.original.match(t);if(s&&s.index!=null){const i=r(s,this.original);i!==s[0]&&this.overwrite(s.index,s.index+s[0].length,i)}}return this}_replaceString(t,n){const{original:r}=this,o=r.indexOf(t);return o!==-1&&this.overwrite(o,o+t.length,n),this}replace(t,n){return typeof t=="string"?this._replaceString(t,n):this._replaceRegexp(t,n)}_replaceAllString(t,n){const{original:r}=this,o=t.length;for(let s=r.indexOf(t);s!==-1;s=r.indexOf(t,s+o))r.slice(s,s+o)!==n&&this.overwrite(s,s+o,n);return this}replaceAll(t,n){if(typeof t=="string")return this._replaceAllString(t,n);if(!t.global)throw new TypeError("MagicString.prototype.replaceAll called with a non-global RegExp argument");return this._replaceRegexp(t,n)}}const ws=M(process.cwd(),"shared/translation.ts"),Cs="globalThis.craneSharedTranslation = translation",Xm=e=>`import translation from '${e}';
|
|
36
|
+
${Cs};
|
|
37
|
+
`,Qm=(e,t)=>{const n=e.split("?")[0],r=ia(n);return(r==="server.ts"||r==="client.ts")&&!t.includes(Cs)},vs=()=>{let e=!1;return{name:"static-translation-plugin",enforce:"pre",apply:"build",buildStart(){e=Ce(ws)},transform(t,n){if(!e||!Qm(n,t))return null;const r=n.split("?")[0],o=uo(r),s=la(lo(o,ws)),i=Xm(s),a=new so(t);return a.prepend(i),{code:a.toString()}}}},As={[Ue.Server]:()=>[Ye.vue(),Ye.tsconfigPaths(),Um(),xm(),vs()],[Ue.Client]:()=>[Ye.vue(),Ye.tsconfigPaths(),_o({vue:"EcVue"}),vs()],[Ue.Misc]:()=>[Ye.tsconfigPaths()],[Ue.Layout]:()=>[Ye.vue(),Ye.tsconfigPaths(),_o({vue:["EcExternals","Vue"]})],[Ue.Asset]:()=>[Fm()],[Ue.SharedFiles]:()=>[Ye.tsconfigPaths()]},Is={[le.Server]:_s({outDir:({name:e,sectionType:t})=>`./${se[t].dist}/${e}/js/main/server`}),[le.Client]:ys({outDir:({name:e,sectionType:t})=>`./${se[t].dist}/${e}/js/main/client`}),[le.SectionSetting]:xt({entryFileNames:"[name].mjs",outDir:({name:e,sectionType:t})=>`./${se[t].dist}/${e}/js/settings`}),[le.SectionShowcase]:xt({entryFileNames:"[name].mjs",outDir:({name:e,sectionType:t})=>`./${se[t].dist}/${e}/js/showcases`}),[le.SectionAsset]:On({outDir:({name:e,sectionType:t})=>`./${se[t].dist}/${e}/assets`}),[le.TemplateDescriptor]:xt({entryFileNames:"[name].mjs",outDir:()=>`./${Fe}/js`}),[le.PageTemplateDescriptor]:xt({entryFileNames:"[name].mjs",outDir:({name:e})=>`./${Fe}/${e}`}),[le.TemplateAsset]:On({outDir:()=>`./${Fe}/assets`}),[le.Layout]:Im({outDir:({name:e,sectionId:t})=>`./${Ae}/${t}/${e}`}),[le.LayoutSettings]:xt({entryFileNames:"[name].mjs",outDir:({name:e,sectionId:t})=>`./${Ae}/${t}/${e}/js/settings`}),[le.LayoutAsset]:On({outDir:({name:e,sectionId:t})=>`./${Ae}/${t}/${e}/assets`}),[le.SlotServer]:_s({outDir:({name:e,layoutId:t,sectionId:n})=>`./${Ae}/${n}/${t}/slots/${e}/js/main/server`}),[le.SlotClient]:ys({outDir:({name:e,layoutId:t,sectionId:n})=>`./${Ae}/${n}/${t}/slots/${e}/js/main/client`}),[le.CollectionDescriptor]:xt({entryFileNames:"[name].mjs",outDir:({name:e})=>`./${on}/${e}`}),[le.CollectionAsset]:On({outDir:()=>`./${on}/assets`}),[le.SharedTranslation]:{pluginType:Ue.SharedFiles,ssr:!1,inlineDynamicImports:!0,entryFileNames:"translation.mjs",outDir:()=>"./dist/shared"}};function qm(e){switch(typeof e){case"string":return[M(process.cwd(),e)];case"object":return e.map(t=>M(process.cwd(),t));default:return[]}}function Os({name:e,entryPoints:t,configType:n,layoutId:r,sectionId:o,sectionType:s=ve.SECTION}){const i=Is[n],a=i.define,c=i.ssrOptions,u=i.entryFileNames,l=i.chunkFileNames,h=i.assetFileNames,d=i.inlineDynamicImports,b=i.externalOption;return{logLevel:xr()?void 0:"silent",plugins:As[i.pluginType](),ssr:c,define:a,resolve:{alias:{"@":"/src"}},build:{ssr:i.ssr,outDir:i.outDir({name:e,sectionType:s,layoutId:r,sectionId:o}),emptyOutDir:!0,minify:"esbuild",rollupOptions:{external:b,preserveEntrySignatures:"strict",input:qm(t),treeshake:{moduleSideEffects:!1},output:{validate:!0,inlineDynamicImports:d,entryFileNames:u,chunkFileNames:l,assetFileNames:h}}},assetsInclude:["**/*.json"]}}const Jm=Object.values(se).map(e=>e.source).join("|");function bs(e,t,n){if(!e)return`${t}.mjs`;const r=lo(process.cwd(),e).replace(/\\/g,"/").match(`^(${Jm})/([^/]+)/${n}/([^/.]+)`);return r?`${r[1]}/${r[2]}/js/${n}/${r[3]}.mjs`:`${t}.mjs`}function $s(e,t){const n=Is[le.SectionSetting];return{logLevel:xr()?void 0:"silent",plugins:As[n.pluginType](),define:n.define,resolve:{alias:{"@":"/src"}},css:{preprocessorOptions:{scss:{api:"modern-compiler"}}},build:{ssr:n.ssr,outDir:"./dist",emptyOutDir:!1,minify:"esbuild",rollupOptions:{external:n.externalOption,preserveEntrySignatures:"strict",input:e.map(r=>M(process.cwd(),r)),treeshake:{moduleSideEffects:!1},output:{validate:!0,inlineDynamicImports:n.inlineDynamicImports,entryFileNames:t,chunkFileNames:"chunks/[name]-[hash].js",assetFileNames:n.assetFileNames}}},assetsInclude:["**/*.json"]}}function eE(e){return $s(e,t=>bs(t.facadeModuleId??void 0,t.name,"settings"))}function tE(e){return $s(e,t=>bs(t.facadeModuleId??void 0,t.name,"showcases"))}async function nE(){const e={ignore:["node_modules/**","dist/**"]},t=await F(`./${Rt}/{product,category,catalog}/*/Main.vue`,e);return await Promise.all(t.map(async n=>{const{id:r,sectionId:o,pageId:s}=ec(n),[i,a]=await Promise.all([F(`./${Rt}/${o}/${r}/settings/{content,design,translations}.{js,ts}`,e),F(`./${Rt}/${o}/${r}/assets/*`,e)]);return{name:r,sectionId:o,pageId:s,clientEntrypoint:n,settingsEntryPoints:i,assetsEntrypoints:a}}))}async function rE(e){await He({entryPoints:[e.clientEntrypoint],configType:le.Layout,name:e.name,sectionId:e.sectionId}),await Promise.all([He({entryPoints:e.settingsEntryPoints,configType:le.LayoutSettings,name:e.name,sectionId:e.sectionId}),He({entryPoints:e.assetsEntrypoints,configType:le.LayoutAsset,name:e.name,sectionId:e.sectionId})])}async function oE(e){e===void 0||e.length===0||await Promise.all(e.map(t=>rE(t)))}async function iE(e){const t=e.flatMap(r=>r.settingsEntryPoints),n=e.flatMap(r=>r.showcaseEntryPoints);t.length>0&&await rt({configFile:!1,...nn(eE(t))}),n.length>0&&await rt({configFile:!1,...nn(tE(n))})}async function sE(e){await Promise.all([rt({configFile:!1,...nn(Os({name:e.name,entryPoints:e.serverEntrypoint,configType:St.Server,sectionType:e.type}))}),He({entryPoints:e.clientEntrypoint,configType:St.Client,name:e.name,sectionType:e.type}),He({entryPoints:e.assetEntryPoints,configType:St.SectionAsset,name:e.name,sectionType:e.type})])}async function aE(){const e=M(process.cwd(),"shared/translation.ts");Ce(e)&&await He({entryPoints:["shared/translation.ts"],configType:St.SharedTranslation})}async function Ls(e){await Promise.all([iE(e),...e.map(sE)])}async function cE(){const e={ignore:["node_modules/**","dist/**"]},t=await F(`${Rt}/{product,category,catalog}/*/slots/*/server.ts`,e);return Promise.all(t.map(async n=>{const{id:r,sectionId:o,layoutId:s}=sm(n),i=(await F(`${Rt}/${o}/${s}/slots/${r}/client.{js,ts}`,e))[0];if(i===void 0)throw new Error(`Cannot find client entrypoint file for slot ${r} of section ${o}`);return{id:r,sectionId:o,layoutId:s,serverEntrypoint:n,clientEntrypoint:i}}))}async function uE(e){const t={name:e.id,layoutId:e.layoutId,sectionId:e.sectionId};await Promise.all([He({entryPoints:[e.serverEntrypoint],configType:le.SlotServer,...t}),He({entryPoints:[e.clientEntrypoint],configType:le.SlotClient,...t})])}async function lE(e){e?.length&&await Promise.all(e.map(uE))}async function pE(e){return(await F(`**/${e}/pages/*.{js,ts}`,{ignore:["node_modules/**","dist/**"]})).filter(t=>{const n=po(t).name.toLowerCase();return!Object.values(yi).includes(n)})}async function dE(){const e=await F("./templates/*",{ignore:["templates/assets/**","templates/**.{js,ts}","node_modules/**","dist/**"]}).catch(t=>(L.error(`Error while getting page template entry points: ${t}`),[]));return Promise.all(e.map(async t=>{const n=t.split(Fn),r=n.pop()??"default";if(n.pop()===void 0)throw new Error("Cannot determine template with custom pages, outer directory is undefined");const o=await F(`**/templates/${r}/configuration.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),s=await F(`**/templates/${r}/pages/home.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),i=await F(`**/templates/${r}/pages/category.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),a=await F(`**/templates/${r}/pages/catalog.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),c=await F(`**/templates/${r}/pages/product.{js,ts}`,{ignore:["node_modules/**","dist/**"]}),u=await pE(r);return{name:r,configurationEntrypoint:o.at(0),homeEntrypoint:s.at(0),categoryEntrypoint:i.at(0),catalogEntrypoint:a.at(0),productEntrypoint:c.at(0),customEntrypoint:u.length>0?u:void 0}}))}async function fE(){const e=await F("./templates/**.{js,ts}",{ignore:["node_modules/**","dist/**"]}),t=await F("./templates/assets/*",{ignore:["node_modules/**","dist/**"]});return{pageTemplates:await dE(),templates:e,assets:t}}async function hE({templateBuildConfig:e}){await Promise.all([He({entryPoints:e.assets,configType:St.TemplateAsset}),...e.pageTemplates?.map(async t=>{const n=[t.configurationEntrypoint,t.homeEntrypoint,t.categoryEntrypoint,t.catalogEntrypoint,t.productEntrypoint,...t.customEntrypoint??[]].filter(sn);if(n.length===0)throw new Error("No entry points provided for page template");await He({entryPoints:n,configType:St.PageTemplateDescriptor,name:t.name})})||[]])}async function mE(){const e=await fE();await hE({templateBuildConfig:e})}async function EE(){const e=await F("./collections/*",{ignore:["collections/assets/**","collections/**.{js,ts}","node_modules/**","dist/**"]}).catch(n=>(L.error(`Error while getting collection entry points: ${n}`),[])),t=await F("./collections/assets/*",{ignore:["node_modules/**","dist/**"]});return Promise.all(e.map(async n=>{const r=n.split(Fn),o=r.pop()??"default";if(r.pop()===void 0)throw new Error("Cannot determine collection, outer directory is undefined");const s=await F(`**/collections/${o}/configuration.{js,ts}`,{ignore:["node_modules/**","dist/**"]});return{name:o,configurationEntrypoint:s.at(0),assetsEntrypoints:t}}))}async function gE(){const e=await EE();e.length!==0&&await Promise.all(e.flatMap(t=>[He({entryPoints:t.assetsEntrypoints,configType:le.CollectionAsset,name:t.name}),He({entryPoints:t.configurationEntrypoint?[t.configurationEntrypoint]:[],configType:le.CollectionDescriptor,name:t.name})]))}function Ns(e){return{name:e.name,type:e.type,serverEntrypoint:e.serverEntrypoint,clientEntrypoint:[e.clientEntrypoint].filter(sn).flat(),settingsEntryPoints:[e.contentSettingsEntrypoint,e.designSettingsEntrypoint,e.layoutSettingsEntrypoint,e.settingsTranslationsEntrypoint].filter(sn),showcaseEntryPoints:[...e.showcasesEntrypoints??[],e.showcasesTranslationsEntrypoint].filter(sn),assetEntryPoints:e.assetsEntrypoints??[]}}function _E(e){return e.map(t=>({...t,selectedDesignSettings:t.selectedDesignSettings.map(n=>{const r=n.defaults;return r&&typeof r=="object"&&!("type"in r)?{...n,defaults:{type:n.type,...r}}:n})}))}async function yE(e,t=Oe){const n=M(process.cwd(),`${t}/${e}/js/main/server/server.js.gz`),r=yo(So.gunzip),o=await re.promises.readFile(n);return{size:(await r(o)).length}}async function SE(e,t=Oe){try{const n=M(process.cwd(),`${t}/${e}/assets/`);return(await F("*",{cwd:n})).map(r=>{const o=M(n,r);return{path:r,size:Ft(o).size}})}catch{throw new Error(`Asset files for section [${e}] is either invalid or undefined`)}}async function Pr(e,t){const n=await ns(e,se[t].dist),r=await kt(e,se[t].dist),o=await is(e,se[t].dist),s=await as(e,se[t].dist),i=await cs(e,se[t].dist),a=await us(e,se[t].dist),c=_E(a),u=await SE(e,se[t].dist),l=await yE(e,se[t].dist),h=ls(e);return{id:e,type:t,name:e,content:o,design:s,layout:c,showcase:i,translationsSettings:n,translationsShowcases:r,assets:u,server:l,previewCount:h}}async function TE(){const e=await F("*/",{cwd:M(process.cwd(),`${Oe}/`)}),t=await F("*/",{cwd:M(process.cwd(),`${Gt}/`)}),n=await F("*/",{cwd:M(process.cwd(),`${Ht}/`)});return Promise.all([...e.map(async r=>Pr(r,Nt.SECTION)),...t.map(async r=>Pr(r,Nt.HEADER)),...n.map(async r=>Pr(r,Nt.FOOTER))])}async function RE(e){try{const t=M(process.cwd(),`${e}/assets/`);return(await F("*",{cwd:t})).map(n=>{const r=M(t,n);return{path:n,size:Ft(r).size}})}catch{throw new Error("Asset files for layouts are either invalid or undefined")}}async function wE(e){const t=wt(e).split("/");if(t.length<2)throw new Error(`Invalid layout path: ${e}. Expected format: [dist/]layouts/{sectionId}/{layoutId}/[...path]`);const[n,r]=t,[o,s,i,a]=await Promise.all([vE(r,n),AE(r,n),rs(r,n),RE(e)]);return{id:r,sectionId:n,content:o,design:s,translationsSettings:i,assets:a}}async function CE(){const e=`${Ae}/{product,catalog,category}/*`,t=await F(e,{ignore:["node_modules/**"]});return Promise.all(t.map(wE))}async function vE(e,t){try{const n=M(process.cwd(),`${Ae}/${t}/${e}/js/settings/content.mjs`),r=await ke(n);return Zt(r)}catch(n){throw new Error(`Content descriptor for layout [${e}] is either invalid or undefined: ${n}`)}}async function AE(e,t){try{const n=M(process.cwd(),`${Ae}/${t}/${e}/js/settings/design.mjs`),r=await ke(n);return Zt(r)}catch(n){throw new Error(`Design descriptor for layout [${e}] is either invalid or undefined: ${n}`)}}async function IE(e,t,n){const r=M(process.cwd(),`${Ae}/${n}/${t}/slots/${e}/js/main/server/server.js.gz`),o=yo(So.gunzip),s=await re.promises.readFile(r);return{size:(await o(s)).length}}async function OE(e){const t=wt(e).split("/");if(t.length<4||t[2]!=="slots")throw new Error(`Invalid slot path: ${e}. Expected format: [dist/]layouts/{sectionId}/{layoutId}/slots/{slotId}/[...path]`);const[n,r,,o]=t,s=await IE(o,r,n);return{id:o,sectionId:n,layoutId:r,server:s}}async function bE(){const e=`${Ae}/{product,catalog,category}/*/slots/*`,t=await F(e,{ignore:["node_modules/**"]});return await Promise.all(t.map(OE))}async function $E(){try{const e=M(process.cwd(),`${Fe}/assets/`);return(await F("*",{cwd:e})).map(t=>{const n=M(e,t);return{path:t,size:Ft(n).size}})}catch{throw new Error("Asset files for templates are either invalid or undefined")}}function LE(e){return e in qe?qe[e]:qe.CUSTOM}async function NE(e){const t=await F(`${Fe}/${e}/*.mjs`,{ignore:[`${Fe}/${e}/configuration*.mjs`]});return Promise.all(t.map(async n=>{const{sections:r,metadata:o}=await Ds(n),s=vo(n);return{type:LE(s.toUpperCase()),id:s,metadata:o,sections:r}}))}async function Ds(e){try{return await ke(M(process.cwd(),e))}catch{throw new Error(`Template file [${e}] is either invalid or undefined`)}}async function DE(e){const t=await F(`${Fe}/**/configuration*.mjs`,{});return Promise.all(t.map(async n=>{const r=ue.basename(ue.dirname(n));return{id:`${e}_${r}`,assets:await $E(),configuration:await Ds(n),pages:await NE(r)}}))}async function kE(e){return await DE(e)}async function xE(){const e=M(process.cwd(),`${Ba}/translation.mjs`);return await ke(e)}async function PE(){return{translations:await xE()}}async function ME(){const e=await an(),[t,n,r,o,s,i]=await Promise.all([kr(),PE(),TE(),CE(),bE(),kE(e.appClientId)]);return{version:t.version,name:"Custom Block App",shared:n,sections:r,templates:i,layouts:o,slots:s,compressionEnabled:!0,externalizationEnabled:!0,vueVersion:t.dependencies.vue}}function UE(e){return Object.entries(se).find(t=>t[1].source===e)?.[0]}async function ks(){const e=await F("**/server.{js,ts}",{ignore:["node_modules/**","dist/**","templates/**","layouts/**","collections/**"]});return Promise.all(e.map(async t=>{const n=uo(t).split(Fn),r=n.pop()??"default",o=n.pop();if(o===void 0)throw new Error("Cannot determine type of section, outer directory is undefined");const s=["node_modules/**","dist/**"],[i,a,c,u,l,h,d,b]=await Promise.all([F(`**/${r}/client.{js,ts}`,{ignore:s}),F(`**/${r}/settings/content.{js,ts}`,{ignore:s}),F(`**/${r}/settings/design.{js,ts}`,{ignore:s}),F(`**/${r}/settings/layout.{js,ts}`,{ignore:s}),F(`**/${r}/settings/translations.{js,ts}`,{ignore:s}),F(`**/${r}/showcases/*.{js,ts}`,{ignore:[...s,`**/${r}/showcases/translations.{js,ts}`]}),F(`**/${r}/showcases/translations.{js,ts}`,{ignore:s}),F(`**/${r}/assets/*`,{ignore:s})]);return{name:r,type:UE(o),serverEntrypoint:t,clientEntrypoint:i.at(0),contentSettingsEntrypoint:a.at(0),designSettingsEntrypoint:c.at(0),layoutSettingsEntrypoint:u.at(0),settingsTranslationsEntrypoint:l.at(0),showcasesEntrypoints:h,showcasesTranslationsEntrypoint:d.at(0),assetsEntrypoints:b}}))}const FE=["/settings/","/showcases/"];function zE(e){return FE.some(t=>e.includes(t))}function GE(){const e=Ve.findConfigFile(process.cwd(),Ve.sys.fileExists,"tsconfig.json");if(!e)return;const t=Ve.readConfigFile(e,Ve.sys.readFile),n=Ve.parseJsonConfigFileContent(t.config,Ve.sys,process.cwd()),r=Ve.createProgram(n.fileNames,n.options),o=Ve.getPreEmitDiagnostics(r).filter(s=>!s.file||!zE(s.file.fileName));if(o.length>0){const s={getCanonicalFileName:i=>i,getCurrentDirectory:Ve.sys.getCurrentDirectory,getNewLine:()=>Ve.sys.newLine};throw console.error(Ve.formatDiagnosticsWithColorAndContext(o,s)),new Error(`TypeScript found ${o.length} error(s)`)}}async function HE(e){GE(),await rt({configFile:!1,logLevel:"error",plugins:[Ye.vue(),Ye.tsconfigPaths(),Ye.checker()],build:{write:!1,rollupOptions:{input:M(process.cwd(),e)}}})}function jE(){return Promise.all([Un.rm("dist",{recursive:!0,force:!0}),Un.rm("source-code",{recursive:!0,force:!0}),Un.rm("source-code.zip",{force:!0})])}async function BE(){const e=new fo,t=["node_modules/**/*","dist/**/*","build/**/*",".git/**/*","**/assets/**/*","crane.config.json"];(await kr()).openSource===!0&&t.splice(t.indexOf("**/assets/**/*"),1);const n=await F("**/*",{cwd:M(process.cwd()),ignore:t,dot:!0,nodir:!0});try{n.forEach(s=>{const i=M(process.cwd(),s);e.addLocalFile(i,po(s).dir)});const r=Bt[J.SourceCode].fileName,o=M(process.cwd(),r);await e.writeZipPromise(o)}catch(r){throw L.error("Error while zipping source files"),r}}async function $n(e=!1,t=!1){Om(t),Ts.start(),await jE();try{const[n,r,o]=await Promise.all([nE(),ks(),cE()]),s=r.map(Ns);r.length>0&&await HE(r[0].serverEntrypoint);try{await Promise.all([aE(),Ls(s),mE(),gE(),oE(n),lE(o),BE()])}finally{Ts.stop()}const i=await ME(),a=await Cm(i);a.errors.length===0?L.info(`Build successful:
|
|
38
38
|
For preview run: npx @lightspeed/crane@latest preview
|
|
39
|
-
For deploy run: npx @lightspeed/crane@latest deploy`):(L.error("Invalid configuration detected:"),
|
|
39
|
+
For deploy run: npx @lightspeed/crane@latest deploy`):(L.error("Invalid configuration detected:"),wm(a))}catch(n){L.error(`Error while building: ${n.message}`),e||process.exit(1)}}async function He({entryPoints:e,configType:t,name:n,sectionType:r,sectionId:o,layoutId:s}){if(e.length!==0){const i=nn(Os({name:n,entryPoints:e,configType:t,sectionType:r,sectionId:o,layoutId:s}));await rt({configFile:!1,...i})}}function ZE(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Mr={},xs;function Ur(){return xs||(xs=1,(function(e){e.isInteger=t=>typeof t=="number"?Number.isInteger(t):typeof t=="string"&&t.trim()!==""?Number.isInteger(Number(t)):!1,e.find=(t,n)=>t.nodes.find(r=>r.type===n),e.exceedsLimit=(t,n,r=1,o)=>o===!1||!e.isInteger(t)||!e.isInteger(n)?!1:(Number(n)-Number(t))/Number(r)>=o,e.escapeNode=(t,n=0,r)=>{const o=t.nodes[n];o&&(r&&o.type===r||o.type==="open"||o.type==="close")&&o.escaped!==!0&&(o.value="\\"+o.value,o.escaped=!0)},e.encloseBrace=t=>t.type!=="brace"?!1:t.commas>>0+t.ranges>>0===0?(t.invalid=!0,!0):!1,e.isInvalidBrace=t=>t.type!=="brace"?!1:t.invalid===!0||t.dollar?!0:t.commas>>0+t.ranges>>0===0||t.open!==!0||t.close!==!0?(t.invalid=!0,!0):!1,e.isOpenOrClose=t=>t.type==="open"||t.type==="close"?!0:t.open===!0||t.close===!0,e.reduce=t=>t.reduce((n,r)=>(r.type==="text"&&n.push(r.value),r.type==="range"&&(r.type="text"),n),[]),e.flatten=(...t)=>{const n=[],r=o=>{for(let s=0;s<o.length;s++){const i=o[s];if(Array.isArray(i)){r(i);continue}i!==void 0&&n.push(i)}return n};return r(t),n}})(Mr)),Mr}var Fr,Ps;function zr(){if(Ps)return Fr;Ps=1;const e=Ur();return Fr=(t,n={})=>{const r=(o,s={})=>{const i=n.escapeInvalid&&e.isInvalidBrace(s),a=o.invalid===!0&&n.escapeInvalid===!0;let c="";if(o.value)return(i||a)&&e.isOpenOrClose(o)?"\\"+o.value:o.value;if(o.value)return o.value;if(o.nodes)for(const u of o.nodes)c+=r(u);return c};return r(t)},Fr}/*!
|
|
40
40
|
* is-number <https://github.com/jonschlinkert/is-number>
|
|
41
41
|
*
|
|
42
42
|
* Copyright (c) 2014-present, Jon Schlinkert.
|
|
43
43
|
* Released under the MIT License.
|
|
44
|
-
*/var
|
|
44
|
+
*/var Gr,Ms;function VE(){return Ms||(Ms=1,Gr=function(e){return typeof e=="number"?e-e===0:typeof e=="string"&&e.trim()!==""?Number.isFinite?Number.isFinite(+e):isFinite(+e):!1}),Gr}/*!
|
|
45
45
|
* to-regex-range <https://github.com/micromatch/to-regex-range>
|
|
46
46
|
*
|
|
47
47
|
* Copyright (c) 2015-present, Jon Schlinkert.
|
|
48
48
|
* Released under the MIT License.
|
|
49
|
-
*/var
|
|
49
|
+
*/var Hr,Us;function WE(){if(Us)return Hr;Us=1;const e=VE(),t=(w,T,D)=>{if(e(w)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(T===void 0||w===T)return String(w);if(e(T)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let p={relaxZeros:!0,...D};typeof p.strictZeros=="boolean"&&(p.relaxZeros=p.strictZeros===!1);let S=String(p.relaxZeros),m=String(p.shorthand),A=String(p.capture),y=String(p.wrap),N=w+":"+T+"="+S+m+A+y;if(t.cache.hasOwnProperty(N))return t.cache[N].result;let x=Math.min(w,T),G=Math.max(w,T);if(Math.abs(x-G)===1){let V=w+"|"+T;return p.capture?`(${V})`:p.wrap===!1?V:`(?:${V})`}let Y=O(w)||O(T),H={min:w,max:T,a:x,b:G},C=[],q=[];if(Y&&(H.isPadded=Y,H.maxLen=String(H.max).length),x<0){let V=G<0?Math.abs(G):1;q=s(V,Math.abs(x),H,p),x=H.a=0}return G>=0&&(C=s(x,G,H,p)),H.negatives=q,H.positives=C,H.result=n(q,C),p.capture===!0?H.result=`(${H.result})`:p.wrap!==!1&&C.length+q.length>1&&(H.result=`(?:${H.result})`),t.cache[N]=H,H.result};function n(w,T,D){let p=i(w,T,"-",!1)||[],S=i(T,w,"",!1)||[],m=i(w,T,"-?",!0)||[];return p.concat(m).concat(S).join("|")}function r(w,T){let D=1,p=1,S=l(w,D),m=new Set([T]);for(;w<=S&&S<=T;)m.add(S),D+=1,S=l(w,D);for(S=h(T+1,p)-1;w<S&&S<=T;)m.add(S),p+=1,S=h(T+1,p)-1;return m=[...m],m.sort(c),m}function o(w,T,D){if(w===T)return{pattern:w,count:[],digits:0};let p=a(w,T),S=p.length,m="",A=0;for(let y=0;y<S;y++){let[N,x]=p[y];N===x?m+=N:N!=="0"||x!=="9"?m+=b(N,x):A++}return A&&(m+=D.shorthand===!0?"\\d":"[0-9]"),{pattern:m,count:[A],digits:S}}function s(w,T,D,p){let S=r(w,T),m=[],A=w,y;for(let N=0;N<S.length;N++){let x=S[N],G=o(String(A),String(x),p),Y="";if(!D.isPadded&&y&&y.pattern===G.pattern){y.count.length>1&&y.count.pop(),y.count.push(G.count[0]),y.string=y.pattern+d(y.count),A=x+1;continue}D.isPadded&&(Y=Z(x,D,p)),G.string=Y+G.pattern+d(G.count),m.push(G),A=x+1,y=G}return m}function i(w,T,D,p,S){let m=[];for(let A of w){let{string:y}=A;!p&&!u(T,"string",y)&&m.push(D+y),p&&u(T,"string",y)&&m.push(D+y)}return m}function a(w,T){let D=[];for(let p=0;p<w.length;p++)D.push([w[p],T[p]]);return D}function c(w,T){return w>T?1:T>w?-1:0}function u(w,T,D){return w.some(p=>p[T]===D)}function l(w,T){return Number(String(w).slice(0,-T)+"9".repeat(T))}function h(w,T){return w-w%Math.pow(10,T)}function d(w){let[T=0,D=""]=w;return D||T>1?`{${T+(D?","+D:"")}}`:""}function b(w,T,D){return`[${w}${T-w===1?"":"-"}${T}]`}function O(w){return/^-?(0+)\d/.test(w)}function Z(w,T,D){if(!T.isPadded)return w;let p=Math.abs(T.maxLen-String(w).length),S=D.relaxZeros!==!1;switch(p){case 0:return"";case 1:return S?"0?":"0";case 2:return S?"0{0,2}":"00";default:return S?`0{0,${p}}`:`0{${p}}`}}return t.cache={},t.clearCache=()=>t.cache={},Hr=t,Hr}/*!
|
|
50
50
|
* fill-range <https://github.com/jonschlinkert/fill-range>
|
|
51
51
|
*
|
|
52
52
|
* Copyright (c) 2014-present, Jon Schlinkert.
|
|
53
53
|
* Licensed under the MIT License.
|
|
54
|
-
*/var
|
|
55
|
-
`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}),Fr}var Hr,Ds;function wE(){if(Ds)return Hr;Ds=1;const e=xr(),{MAX_LENGTH:t,CHAR_BACKSLASH:n,CHAR_BACKTICK:r,CHAR_COMMA:o,CHAR_DOT:s,CHAR_LEFT_PARENTHESES:i,CHAR_RIGHT_PARENTHESES:a,CHAR_LEFT_CURLY_BRACE:c,CHAR_RIGHT_CURLY_BRACE:u,CHAR_LEFT_SQUARE_BRACKET:l,CHAR_RIGHT_SQUARE_BRACKET:h,CHAR_DOUBLE_QUOTE:d,CHAR_SINGLE_QUOTE:$,CHAR_NO_BREAK_SPACE:O,CHAR_ZERO_WIDTH_NOBREAK_SPACE:Z}=CE();return Hr=(T,D={})=>{if(typeof T!="string")throw new TypeError("Expected a string");const p=D||{},S=typeof p.maxLength=="number"?Math.min(t,p.maxLength):t;if(T.length>S)throw new SyntaxError(`Input length (${T.length}), exceeds max characters (${S})`);const m={type:"root",input:T,nodes:[]},A=[m];let y=m,N=m,k=0;const z=T.length;let Y=0,F=0,w;const q=()=>T[Y++],V=X=>{if(X.type==="text"&&N.type==="dot"&&(N.type="text"),N&&N.type==="text"&&X.type==="text"){N.value+=X.value;return}return y.nodes.push(X),X.parent=y,X.prev=N,N=X,X};for(V({type:"bos"});Y<z;)if(y=A[A.length-1],w=q(),!(w===Z||w===O)){if(w===n){V({type:"text",value:(D.keepEscaping?w:"")+q()});continue}if(w===h){V({type:"text",value:"\\"+w});continue}if(w===l){k++;let X;for(;Y<z&&(X=q());){if(w+=X,X===l){k++;continue}if(X===n){w+=q();continue}if(X===h&&(k--,k===0))break}V({type:"text",value:w});continue}if(w===i){y=V({type:"paren",nodes:[]}),A.push(y),V({type:"text",value:w});continue}if(w===a){if(y.type!=="paren"){V({type:"text",value:w});continue}y=A.pop(),V({type:"text",value:w}),y=A[A.length-1];continue}if(w===d||w===$||w===r){const X=w;let H;for(D.keepQuotes!==!0&&(w="");Y<z&&(H=q());){if(H===n){w+=H+q();continue}if(H===X){D.keepQuotes===!0&&(w+=H);break}w+=H}V({type:"text",value:w});continue}if(w===c){F++;const H={type:"brace",open:!0,close:!1,dollar:N.value&&N.value.slice(-1)==="$"||y.dollar===!0,depth:F,commas:0,ranges:0,nodes:[]};y=V(H),A.push(y),V({type:"open",value:w});continue}if(w===u){if(y.type!=="brace"){V({type:"text",value:w});continue}const X="close";y=A.pop(),y.close=!0,V({type:X,value:w}),F--,y=A[A.length-1];continue}if(w===o&&F>0){if(y.ranges>0){y.ranges=0;const X=y.nodes.shift();y.nodes=[X,{type:"text",value:e(y)}]}V({type:"comma",value:w}),y.commas++;continue}if(w===s&&F>0&&y.commas===0){const X=y.nodes;if(F===0||X.length===0){V({type:"text",value:w});continue}if(N.type==="dot"){if(y.range=[],N.value+=w,N.type="range",y.nodes.length!==3&&y.nodes.length!==5){y.invalid=!0,y.ranges=0,N.type="text";continue}y.ranges++,y.args=[];continue}if(N.type==="range"){X.pop();const H=X[X.length-1];H.value+=N.value+w,N=H,y.ranges--;continue}V({type:"dot",value:w});continue}V({type:"text",value:w})}do if(y=A.pop(),y.type!=="root"){y.nodes.forEach(ce=>{ce.nodes||(ce.type==="open"&&(ce.isOpen=!0),ce.type==="close"&&(ce.isClose=!0),ce.nodes||(ce.type="text"),ce.invalid=!0)});const X=A[A.length-1],H=X.nodes.indexOf(y);X.nodes.splice(H,1,...y.nodes)}while(A.length>0);return V({type:"eos"}),m},Hr}var jr,ks;function vE(){if(ks)return jr;ks=1;const e=xr(),t=TE(),n=RE(),r=wE(),o=(s,i={})=>{let a=[];if(Array.isArray(s))for(const c of s){const u=o.create(c,i);Array.isArray(u)?a.push(...u):a.push(u)}else a=[].concat(o.create(s,i));return i&&i.expand===!0&&i.nodupes===!0&&(a=[...new Set(a)]),a};return o.parse=(s,i={})=>r(s,i),o.stringify=(s,i={})=>e(typeof s=="string"?o.parse(s,i):s,i),o.compile=(s,i={})=>(typeof s=="string"&&(s=o.parse(s,i)),t(s,i)),o.expand=(s,i={})=>{typeof s=="string"&&(s=o.parse(s,i));let a=n(s,i);return i.noempty===!0&&(a=a.filter(Boolean)),i.nodupes===!0&&(a=[...new Set(a)]),a},o.create=(s,i={})=>s===""||s.length<3?[s]:i.expand!==!0?o.compile(s,i):o.expand(s,i),jr=o,jr}var Br={},Zr,xs;function On(){if(xs)return Zr;xs=1;const e=ue,t="\\\\/",n=`[^${t}]`,r="\\.",o="\\+",s="\\?",i="\\/",a="(?=.)",c="[^/]",u=`(?:${i}|$)`,l=`(?:^|${i})`,h=`${r}{1,2}${u}`,d=`(?!${r})`,$=`(?!${l}${h})`,O=`(?!${r}{0,1}${u})`,Z=`(?!${h})`,C=`[^.${i}]`,T=`${c}*?`,D={DOT_LITERAL:r,PLUS_LITERAL:o,QMARK_LITERAL:s,SLASH_LITERAL:i,ONE_CHAR:a,QMARK:c,END_ANCHOR:u,DOTS_SLASH:h,NO_DOT:d,NO_DOTS:$,NO_DOT_SLASH:O,NO_DOTS_SLASH:Z,QMARK_NO_DOT:C,STAR:T,START_ANCHOR:l},p={...D,SLASH_LITERAL:`[${t}]`,QMARK:n,STAR:`${n}*?`,DOTS_SLASH:`${r}{1,2}(?:[${t}]|$)`,NO_DOT:`(?!${r})`,NO_DOTS:`(?!(?:^|[${t}])${r}{1,2}(?:[${t}]|$))`,NO_DOT_SLASH:`(?!${r}{0,1}(?:[${t}]|$))`,NO_DOTS_SLASH:`(?!${r}{1,2}(?:[${t}]|$))`,QMARK_NO_DOT:`[^.${t}]`,START_ANCHOR:`(?:^|[${t}])`,END_ANCHOR:`(?:[${t}]|$)`},S={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};return Zr={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:S,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:e.sep,extglobChars(m){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${m.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(m){return m===!0?p:D}},Zr}var Ps;function In(){return Ps||(Ps=1,(function(e){const t=ue,n=process.platform==="win32",{REGEX_BACKSLASH:r,REGEX_REMOVE_BACKSLASH:o,REGEX_SPECIAL_CHARS:s,REGEX_SPECIAL_CHARS_GLOBAL:i}=On();e.isObject=a=>a!==null&&typeof a=="object"&&!Array.isArray(a),e.hasRegexChars=a=>s.test(a),e.isRegexChar=a=>a.length===1&&e.hasRegexChars(a),e.escapeRegex=a=>a.replace(i,"\\$1"),e.toPosixSlashes=a=>a.replace(r,"/"),e.removeBackslashes=a=>a.replace(o,c=>c==="\\"?"":c),e.supportsLookbehinds=()=>{const a=process.version.slice(1).split(".").map(Number);return a.length===3&&a[0]>=9||a[0]===8&&a[1]>=10},e.isWindows=a=>a&&typeof a.windows=="boolean"?a.windows:n===!0||t.sep==="\\",e.escapeLast=(a,c,u)=>{const l=a.lastIndexOf(c,u);return l===-1?a:a[l-1]==="\\"?e.escapeLast(a,c,l-1):`${a.slice(0,l)}\\${a.slice(l)}`},e.removePrefix=(a,c={})=>{let u=a;return u.startsWith("./")&&(u=u.slice(2),c.prefix="./"),u},e.wrapOutput=(a,c={},u={})=>{const l=u.contains?"":"^",h=u.contains?"":"$";let d=`${l}(?:${a})${h}`;return c.negated===!0&&(d=`(?:^(?!${d}).*$)`),d}})(Br)),Br}var Vr,Us;function AE(){if(Us)return Vr;Us=1;const e=In(),{CHAR_ASTERISK:t,CHAR_AT:n,CHAR_BACKWARD_SLASH:r,CHAR_COMMA:o,CHAR_DOT:s,CHAR_EXCLAMATION_MARK:i,CHAR_FORWARD_SLASH:a,CHAR_LEFT_CURLY_BRACE:c,CHAR_LEFT_PARENTHESES:u,CHAR_LEFT_SQUARE_BRACKET:l,CHAR_PLUS:h,CHAR_QUESTION_MARK:d,CHAR_RIGHT_CURLY_BRACE:$,CHAR_RIGHT_PARENTHESES:O,CHAR_RIGHT_SQUARE_BRACKET:Z}=On(),C=p=>p===a||p===r,T=p=>{p.isPrefix!==!0&&(p.depth=p.isGlobstar?1/0:1)};return Vr=(p,S)=>{const m=S||{},A=p.length-1,y=m.parts===!0||m.scanToEnd===!0,N=[],k=[],z=[];let Y=p,F=-1,w=0,q=0,V=!1,X=!1,H=!1,ce=!1,Me=!1,_e=!1,g=!1,be=!1,je=!1,Oe=!1,E=0,_,K,j={value:"",depth:0,isGlob:!1};const Pe=()=>F>=A,Je=()=>Y.charCodeAt(F+1),ye=()=>(_=K,Y.charCodeAt(++F));for(;F<A;){K=ye();let M;if(K===r){g=j.backslashes=!0,K=ye(),K===c&&(_e=!0);continue}if(_e===!0||K===c){for(E++;Pe()!==!0&&(K=ye());){if(K===r){g=j.backslashes=!0,ye();continue}if(K===c){E++;continue}if(_e!==!0&&K===s&&(K=ye())===s){if(V=j.isBrace=!0,H=j.isGlob=!0,Oe=!0,y===!0)continue;break}if(_e!==!0&&K===o){if(V=j.isBrace=!0,H=j.isGlob=!0,Oe=!0,y===!0)continue;break}if(K===$&&(E--,E===0)){_e=!1,V=j.isBrace=!0,Oe=!0;break}}if(y===!0)continue;break}if(K===a){if(N.push(F),k.push(j),j={value:"",depth:0,isGlob:!1},Oe===!0)continue;if(_===s&&F===w+1){w+=2;continue}q=F+1;continue}if(m.noext!==!0&&(K===h||K===n||K===t||K===d||K===i)===!0&&Je()===u){if(H=j.isGlob=!0,ce=j.isExtglob=!0,Oe=!0,K===i&&F===w&&(je=!0),y===!0){for(;Pe()!==!0&&(K=ye());){if(K===r){g=j.backslashes=!0,K=ye();continue}if(K===O){H=j.isGlob=!0,Oe=!0;break}}continue}break}if(K===t){if(_===t&&(Me=j.isGlobstar=!0),H=j.isGlob=!0,Oe=!0,y===!0)continue;break}if(K===d){if(H=j.isGlob=!0,Oe=!0,y===!0)continue;break}if(K===l){for(;Pe()!==!0&&(M=ye());){if(M===r){g=j.backslashes=!0,ye();continue}if(M===Z){X=j.isBracket=!0,H=j.isGlob=!0,Oe=!0;break}}if(y===!0)continue;break}if(m.nonegate!==!0&&K===i&&F===w){be=j.negated=!0,w++;continue}if(m.noparen!==!0&&K===u){if(H=j.isGlob=!0,y===!0){for(;Pe()!==!0&&(K=ye());){if(K===u){g=j.backslashes=!0,K=ye();continue}if(K===O){Oe=!0;break}}continue}break}if(H===!0){if(Oe=!0,y===!0)continue;break}}m.noext===!0&&(ce=!1,H=!1);let Se=Y,Ut="",Be="";w>0&&(Ut=Y.slice(0,w),Y=Y.slice(w),q-=w),Se&&H===!0&&q>0?(Se=Y.slice(0,q),Be=Y.slice(q)):H===!0?(Se="",Be=Y):Se=Y,Se&&Se!==""&&Se!=="/"&&Se!==Y&&C(Se.charCodeAt(Se.length-1))&&(Se=Se.slice(0,-1)),m.unescape===!0&&(Be&&(Be=e.removeBackslashes(Be)),Se&&g===!0&&(Se=e.removeBackslashes(Se)));const $e={prefix:Ut,input:p,start:w,base:Se,glob:Be,isBrace:V,isBracket:X,isGlob:H,isExtglob:ce,isGlobstar:Me,negated:be,negatedExtglob:je};if(m.tokens===!0&&($e.maxDepth=0,C(K)||k.push(j),$e.tokens=k),m.parts===!0||m.tokens===!0){let M;for(let Re=0;Re<N.length;Re++){const Nn=M?M+1:w,b=N[Re],te=p.slice(Nn,b);m.tokens&&(Re===0&&w!==0?(k[Re].isPrefix=!0,k[Re].value=Ut):k[Re].value=te,T(k[Re]),$e.maxDepth+=k[Re].depth),(Re!==0||te!=="")&&z.push(te),M=b}if(M&&M+1<p.length){const Re=p.slice(M+1);z.push(Re),m.tokens&&(k[k.length-1].value=Re,T(k[k.length-1]),$e.maxDepth+=k[k.length-1].depth)}$e.slashes=N,$e.parts=z}return $e},Vr}var Kr,Ms;function OE(){if(Ms)return Kr;Ms=1;const e=On(),t=In(),{MAX_LENGTH:n,POSIX_REGEX_SOURCE:r,REGEX_NON_SPECIAL_CHARS:o,REGEX_SPECIAL_CHARS_BACKREF:s,REPLACEMENTS:i}=e,a=(l,h)=>{if(typeof h.expandRange=="function")return h.expandRange(...l,h);l.sort();const d=`[${l.join("-")}]`;try{new RegExp(d)}catch{return l.map(O=>t.escapeRegex(O)).join("..")}return d},c=(l,h)=>`Missing ${l}: "${h}" - use "\\\\${h}" to match literal characters`,u=(l,h)=>{if(typeof l!="string")throw new TypeError("Expected a string");l=i[l]||l;const d={...h},$=typeof d.maxLength=="number"?Math.min(n,d.maxLength):n;let O=l.length;if(O>$)throw new SyntaxError(`Input length: ${O}, exceeds maximum allowed length: ${$}`);const Z={type:"bos",value:"",output:d.prepend||""},C=[Z],T=d.capture?"":"?:",D=t.isWindows(h),p=e.globChars(D),S=e.extglobChars(p),{DOT_LITERAL:m,PLUS_LITERAL:A,SLASH_LITERAL:y,ONE_CHAR:N,DOTS_SLASH:k,NO_DOT:z,NO_DOT_SLASH:Y,NO_DOTS_SLASH:F,QMARK:w,QMARK_NO_DOT:q,STAR:V,START_ANCHOR:X}=p,H=b=>`(${T}(?:(?!${X}${b.dot?k:m}).)*?)`,ce=d.dot?"":z,Me=d.dot?w:q;let _e=d.bash===!0?H(d):V;d.capture&&(_e=`(${_e})`),typeof d.noext=="boolean"&&(d.noextglob=d.noext);const g={input:l,index:-1,start:0,dot:d.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:C};l=t.removePrefix(l,g),O=l.length;const be=[],je=[],Oe=[];let E=Z,_;const K=()=>g.index===O-1,j=g.peek=(b=1)=>l[g.index+b],Pe=g.advance=()=>l[++g.index]||"",Je=()=>l.slice(g.index+1),ye=(b="",te=0)=>{g.consumed+=b,g.index+=te},Se=b=>{g.output+=b.output!=null?b.output:b.value,ye(b.value)},Ut=()=>{let b=1;for(;j()==="!"&&(j(2)!=="("||j(3)==="?");)Pe(),g.start++,b++;return b%2===0?!1:(g.negated=!0,g.start++,!0)},Be=b=>{g[b]++,Oe.push(b)},$e=b=>{g[b]--,Oe.pop()},M=b=>{if(E.type==="globstar"){const te=g.braces>0&&(b.type==="comma"||b.type==="brace"),v=b.extglob===!0||be.length&&(b.type==="pipe"||b.type==="paren");b.type!=="slash"&&b.type!=="paren"&&!te&&!v&&(g.output=g.output.slice(0,-E.output.length),E.type="star",E.value="*",E.output=_e,g.output+=E.output)}if(be.length&&b.type!=="paren"&&(be[be.length-1].inner+=b.value),(b.value||b.output)&&Se(b),E&&E.type==="text"&&b.type==="text"){E.value+=b.value,E.output=(E.output||"")+b.value;return}b.prev=E,C.push(b),E=b},Re=(b,te)=>{const v={...S[te],conditions:1,inner:""};v.prev=E,v.parens=g.parens,v.output=g.output;const Q=(d.capture?"(":"")+v.open;Be("parens"),M({type:b,value:te,output:g.output?"":N}),M({type:"paren",extglob:!0,value:Pe(),output:Q}),be.push(v)},Nn=b=>{let te=b.close+(d.capture?")":""),v;if(b.type==="negate"){let Q=_e;if(b.inner&&b.inner.length>1&&b.inner.includes("/")&&(Q=H(d)),(Q!==_e||K()||/^\)+$/.test(Je()))&&(te=b.close=`)$))${Q}`),b.inner.includes("*")&&(v=Je())&&/^\.[^\\/.]+$/.test(v)){const pe=u(v,{...h,fastpaths:!1}).output;te=b.close=`)${pe})${Q})`}b.prev.type==="bos"&&(g.negatedExtglob=!0)}M({type:"paren",extglob:!0,value:_,output:te}),$e("parens")};if(d.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(l)){let b=!1,te=l.replace(s,(v,Q,pe,Le,Ce,Dn)=>Le==="\\"?(b=!0,v):Le==="?"?Q?Q+Le+(Ce?w.repeat(Ce.length):""):Dn===0?Me+(Ce?w.repeat(Ce.length):""):w.repeat(pe.length):Le==="."?m.repeat(pe.length):Le==="*"?Q?Q+Le+(Ce?_e:""):_e:Q?v:`\\${v}`);return b===!0&&(d.unescape===!0?te=te.replace(/\\/g,""):te=te.replace(/\\+/g,v=>v.length%2===0?"\\\\":v?"\\":"")),te===l&&d.contains===!0?(g.output=l,g):(g.output=t.wrapOutput(te,g,h),g)}for(;!K();){if(_=Pe(),_==="\0")continue;if(_==="\\"){const v=j();if(v==="/"&&d.bash!==!0||v==="."||v===";")continue;if(!v){_+="\\",M({type:"text",value:_});continue}const Q=/^\\+/.exec(Je());let pe=0;if(Q&&Q[0].length>2&&(pe=Q[0].length,g.index+=pe,pe%2!==0&&(_+="\\")),d.unescape===!0?_=Pe():_+=Pe(),g.brackets===0){M({type:"text",value:_});continue}}if(g.brackets>0&&(_!=="]"||E.value==="["||E.value==="[^")){if(d.posix!==!1&&_===":"){const v=E.value.slice(1);if(v.includes("[")&&(E.posix=!0,v.includes(":"))){const Q=E.value.lastIndexOf("["),pe=E.value.slice(0,Q),Le=E.value.slice(Q+2),Ce=r[Le];if(Ce){E.value=pe+Ce,g.backtrack=!0,Pe(),!Z.output&&C.indexOf(E)===1&&(Z.output=N);continue}}}(_==="["&&j()!==":"||_==="-"&&j()==="]")&&(_=`\\${_}`),_==="]"&&(E.value==="["||E.value==="[^")&&(_=`\\${_}`),d.posix===!0&&_==="!"&&E.value==="["&&(_="^"),E.value+=_,Se({value:_});continue}if(g.quotes===1&&_!=='"'){_=t.escapeRegex(_),E.value+=_,Se({value:_});continue}if(_==='"'){g.quotes=g.quotes===1?0:1,d.keepQuotes===!0&&M({type:"text",value:_});continue}if(_==="("){Be("parens"),M({type:"paren",value:_});continue}if(_===")"){if(g.parens===0&&d.strictBrackets===!0)throw new SyntaxError(c("opening","("));const v=be[be.length-1];if(v&&g.parens===v.parens+1){Nn(be.pop());continue}M({type:"paren",value:_,output:g.parens?")":"\\)"}),$e("parens");continue}if(_==="["){if(d.nobracket===!0||!Je().includes("]")){if(d.nobracket!==!0&&d.strictBrackets===!0)throw new SyntaxError(c("closing","]"));_=`\\${_}`}else Be("brackets");M({type:"bracket",value:_});continue}if(_==="]"){if(d.nobracket===!0||E&&E.type==="bracket"&&E.value.length===1){M({type:"text",value:_,output:`\\${_}`});continue}if(g.brackets===0){if(d.strictBrackets===!0)throw new SyntaxError(c("opening","["));M({type:"text",value:_,output:`\\${_}`});continue}$e("brackets");const v=E.value.slice(1);if(E.posix!==!0&&v[0]==="^"&&!v.includes("/")&&(_=`/${_}`),E.value+=_,Se({value:_}),d.literalBrackets===!1||t.hasRegexChars(v))continue;const Q=t.escapeRegex(E.value);if(g.output=g.output.slice(0,-E.value.length),d.literalBrackets===!0){g.output+=Q,E.value=Q;continue}E.value=`(${T}${Q}|${E.value})`,g.output+=E.value;continue}if(_==="{"&&d.nobrace!==!0){Be("braces");const v={type:"brace",value:_,output:"(",outputIndex:g.output.length,tokensIndex:g.tokens.length};je.push(v),M(v);continue}if(_==="}"){const v=je[je.length-1];if(d.nobrace===!0||!v){M({type:"text",value:_,output:_});continue}let Q=")";if(v.dots===!0){const pe=C.slice(),Le=[];for(let Ce=pe.length-1;Ce>=0&&(C.pop(),pe[Ce].type!=="brace");Ce--)pe[Ce].type!=="dots"&&Le.unshift(pe[Ce].value);Q=a(Le,d),g.backtrack=!0}if(v.comma!==!0&&v.dots!==!0){const pe=g.output.slice(0,v.outputIndex),Le=g.tokens.slice(v.tokensIndex);v.value=v.output="\\{",_=Q="\\}",g.output=pe;for(const Ce of Le)g.output+=Ce.output||Ce.value}M({type:"brace",value:_,output:Q}),$e("braces"),je.pop();continue}if(_==="|"){be.length>0&&be[be.length-1].conditions++,M({type:"text",value:_});continue}if(_===","){let v=_;const Q=je[je.length-1];Q&&Oe[Oe.length-1]==="braces"&&(Q.comma=!0,v="|"),M({type:"comma",value:_,output:v});continue}if(_==="/"){if(E.type==="dot"&&g.index===g.start+1){g.start=g.index+1,g.consumed="",g.output="",C.pop(),E=Z;continue}M({type:"slash",value:_,output:y});continue}if(_==="."){if(g.braces>0&&E.type==="dot"){E.value==="."&&(E.output=m);const v=je[je.length-1];E.type="dots",E.output+=_,E.value+=_,v.dots=!0;continue}if(g.braces+g.parens===0&&E.type!=="bos"&&E.type!=="slash"){M({type:"text",value:_,output:m});continue}M({type:"dot",value:_,output:m});continue}if(_==="?"){if(!(E&&E.value==="(")&&d.noextglob!==!0&&j()==="("&&j(2)!=="?"){Re("qmark",_);continue}if(E&&E.type==="paren"){const Q=j();let pe=_;if(Q==="<"&&!t.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(E.value==="("&&!/[!=<:]/.test(Q)||Q==="<"&&!/<([!=]|\w+>)/.test(Je()))&&(pe=`\\${_}`),M({type:"text",value:_,output:pe});continue}if(d.dot!==!0&&(E.type==="slash"||E.type==="bos")){M({type:"qmark",value:_,output:q});continue}M({type:"qmark",value:_,output:w});continue}if(_==="!"){if(d.noextglob!==!0&&j()==="("&&(j(2)!=="?"||!/[!=<:]/.test(j(3)))){Re("negate",_);continue}if(d.nonegate!==!0&&g.index===0){Ut();continue}}if(_==="+"){if(d.noextglob!==!0&&j()==="("&&j(2)!=="?"){Re("plus",_);continue}if(E&&E.value==="("||d.regex===!1){M({type:"plus",value:_,output:A});continue}if(E&&(E.type==="bracket"||E.type==="paren"||E.type==="brace")||g.parens>0){M({type:"plus",value:_});continue}M({type:"plus",value:A});continue}if(_==="@"){if(d.noextglob!==!0&&j()==="("&&j(2)!=="?"){M({type:"at",extglob:!0,value:_,output:""});continue}M({type:"text",value:_});continue}if(_!=="*"){(_==="$"||_==="^")&&(_=`\\${_}`);const v=o.exec(Je());v&&(_+=v[0],g.index+=v[0].length),M({type:"text",value:_});continue}if(E&&(E.type==="globstar"||E.star===!0)){E.type="star",E.star=!0,E.value+=_,E.output=_e,g.backtrack=!0,g.globstar=!0,ye(_);continue}let b=Je();if(d.noextglob!==!0&&/^\([^?]/.test(b)){Re("star",_);continue}if(E.type==="star"){if(d.noglobstar===!0){ye(_);continue}const v=E.prev,Q=v.prev,pe=v.type==="slash"||v.type==="bos",Le=Q&&(Q.type==="star"||Q.type==="globstar");if(d.bash===!0&&(!pe||b[0]&&b[0]!=="/")){M({type:"star",value:_,output:""});continue}const Ce=g.braces>0&&(v.type==="comma"||v.type==="brace"),Dn=be.length&&(v.type==="pipe"||v.type==="paren");if(!pe&&v.type!=="paren"&&!Ce&&!Dn){M({type:"star",value:_,output:""});continue}for(;b.slice(0,3)==="/**";){const qt=l[g.index+4];if(qt&&qt!=="/")break;b=b.slice(3),ye("/**",3)}if(v.type==="bos"&&K()){E.type="globstar",E.value+=_,E.output=H(d),g.output=E.output,g.globstar=!0,ye(_);continue}if(v.type==="slash"&&v.prev.type!=="bos"&&!Le&&K()){g.output=g.output.slice(0,-(v.output+E.output).length),v.output=`(?:${v.output}`,E.type="globstar",E.output=H(d)+(d.strictSlashes?")":"|$)"),E.value+=_,g.globstar=!0,g.output+=v.output+E.output,ye(_);continue}if(v.type==="slash"&&v.prev.type!=="bos"&&b[0]==="/"){const qt=b[1]!==void 0?"|$":"";g.output=g.output.slice(0,-(v.output+E.output).length),v.output=`(?:${v.output}`,E.type="globstar",E.output=`${H(d)}${y}|${y}${qt})`,E.value+=_,g.output+=v.output+E.output,g.globstar=!0,ye(_+Pe()),M({type:"slash",value:"/",output:""});continue}if(v.type==="bos"&&b[0]==="/"){E.type="globstar",E.value+=_,E.output=`(?:^|${y}|${H(d)}${y})`,g.output=E.output,g.globstar=!0,ye(_+Pe()),M({type:"slash",value:"/",output:""});continue}g.output=g.output.slice(0,-E.output.length),E.type="globstar",E.output=H(d),E.value+=_,g.output+=E.output,g.globstar=!0,ye(_);continue}const te={type:"star",value:_,output:_e};if(d.bash===!0){te.output=".*?",(E.type==="bos"||E.type==="slash")&&(te.output=ce+te.output),M(te);continue}if(E&&(E.type==="bracket"||E.type==="paren")&&d.regex===!0){te.output=_,M(te);continue}(g.index===g.start||E.type==="slash"||E.type==="dot")&&(E.type==="dot"?(g.output+=Y,E.output+=Y):d.dot===!0?(g.output+=F,E.output+=F):(g.output+=ce,E.output+=ce),j()!=="*"&&(g.output+=N,E.output+=N)),M(te)}for(;g.brackets>0;){if(d.strictBrackets===!0)throw new SyntaxError(c("closing","]"));g.output=t.escapeLast(g.output,"["),$e("brackets")}for(;g.parens>0;){if(d.strictBrackets===!0)throw new SyntaxError(c("closing",")"));g.output=t.escapeLast(g.output,"("),$e("parens")}for(;g.braces>0;){if(d.strictBrackets===!0)throw new SyntaxError(c("closing","}"));g.output=t.escapeLast(g.output,"{"),$e("braces")}if(d.strictSlashes!==!0&&(E.type==="star"||E.type==="bracket")&&M({type:"maybe_slash",value:"",output:`${y}?`}),g.backtrack===!0){g.output="";for(const b of g.tokens)g.output+=b.output!=null?b.output:b.value,b.suffix&&(g.output+=b.suffix)}return g};return u.fastpaths=(l,h)=>{const d={...h},$=typeof d.maxLength=="number"?Math.min(n,d.maxLength):n,O=l.length;if(O>$)throw new SyntaxError(`Input length: ${O}, exceeds maximum allowed length: ${$}`);l=i[l]||l;const Z=t.isWindows(h),{DOT_LITERAL:C,SLASH_LITERAL:T,ONE_CHAR:D,DOTS_SLASH:p,NO_DOT:S,NO_DOTS:m,NO_DOTS_SLASH:A,STAR:y,START_ANCHOR:N}=e.globChars(Z),k=d.dot?m:S,z=d.dot?A:S,Y=d.capture?"":"?:",F={negated:!1,prefix:""};let w=d.bash===!0?".*?":y;d.capture&&(w=`(${w})`);const q=ce=>ce.noglobstar===!0?w:`(${Y}(?:(?!${N}${ce.dot?p:C}).)*?)`,V=ce=>{switch(ce){case"*":return`${k}${D}${w}`;case".*":return`${C}${D}${w}`;case"*.*":return`${k}${w}${C}${D}${w}`;case"*/*":return`${k}${w}${T}${D}${z}${w}`;case"**":return k+q(d);case"**/*":return`(?:${k}${q(d)}${T})?${z}${D}${w}`;case"**/*.*":return`(?:${k}${q(d)}${T})?${z}${w}${C}${D}${w}`;case"**/.*":return`(?:${k}${q(d)}${T})?${C}${D}${w}`;default:{const Me=/^(.*?)\.(\w+)$/.exec(ce);if(!Me)return;const _e=V(Me[1]);return _e?_e+C+Me[2]:void 0}}},X=t.removePrefix(l,F);let H=V(X);return H&&d.strictSlashes!==!0&&(H+=`${T}?`),H},Kr=u,Kr}var Wr,Gs;function IE(){if(Gs)return Wr;Gs=1;const e=ue,t=AE(),n=OE(),r=In(),o=On(),s=a=>a&&typeof a=="object"&&!Array.isArray(a),i=(a,c,u=!1)=>{if(Array.isArray(a)){const T=a.map(p=>i(p,c,u));return p=>{for(const S of T){const m=S(p);if(m)return m}return!1}}const l=s(a)&&a.tokens&&a.input;if(a===""||typeof a!="string"&&!l)throw new TypeError("Expected pattern to be a non-empty string");const h=c||{},d=r.isWindows(c),$=l?i.compileRe(a,c):i.makeRe(a,c,!1,!0),O=$.state;delete $.state;let Z=()=>!1;if(h.ignore){const T={...c,ignore:null,onMatch:null,onResult:null};Z=i(h.ignore,T,u)}const C=(T,D=!1)=>{const{isMatch:p,match:S,output:m}=i.test(T,$,c,{glob:a,posix:d}),A={glob:a,state:O,regex:$,posix:d,input:T,output:m,match:S,isMatch:p};return typeof h.onResult=="function"&&h.onResult(A),p===!1?(A.isMatch=!1,D?A:!1):Z(T)?(typeof h.onIgnore=="function"&&h.onIgnore(A),A.isMatch=!1,D?A:!1):(typeof h.onMatch=="function"&&h.onMatch(A),D?A:!0)};return u&&(C.state=O),C};return i.test=(a,c,u,{glob:l,posix:h}={})=>{if(typeof a!="string")throw new TypeError("Expected input to be a string");if(a==="")return{isMatch:!1,output:""};const d=u||{},$=d.format||(h?r.toPosixSlashes:null);let O=a===l,Z=O&&$?$(a):a;return O===!1&&(Z=$?$(a):a,O=Z===l),(O===!1||d.capture===!0)&&(d.matchBase===!0||d.basename===!0?O=i.matchBase(a,c,u,h):O=c.exec(Z)),{isMatch:!!O,match:O,output:Z}},i.matchBase=(a,c,u,l=r.isWindows(u))=>(c instanceof RegExp?c:i.makeRe(c,u)).test(e.basename(a)),i.isMatch=(a,c,u)=>i(c,u)(a),i.parse=(a,c)=>Array.isArray(a)?a.map(u=>i.parse(u,c)):n(a,{...c,fastpaths:!1}),i.scan=(a,c)=>t(a,c),i.compileRe=(a,c,u=!1,l=!1)=>{if(u===!0)return a.output;const h=c||{},d=h.contains?"":"^",$=h.contains?"":"$";let O=`${d}(?:${a.output})${$}`;a&&a.negated===!0&&(O=`^(?!${O}).*$`);const Z=i.toRegex(O,c);return l===!0&&(Z.state=a),Z},i.makeRe=(a,c={},u=!1,l=!1)=>{if(!a||typeof a!="string")throw new TypeError("Expected a non-empty string");let h={negated:!1,fastpaths:!0};return c.fastpaths!==!1&&(a[0]==="."||a[0]==="*")&&(h.output=n.fastpaths(a,c)),h.output||(h=n(a,c)),i.compileRe(h,c,u,l)},i.toRegex=(a,c)=>{try{const u=c||{};return new RegExp(a,u.flags||(u.nocase?"i":""))}catch(u){if(c&&c.debug===!0)throw u;return/$^/}},i.constants=o,Wr=i,Wr}var Yr,zs;function bE(){return zs||(zs=1,Yr=IE()),Yr}var Xr,Fs;function $E(){if(Fs)return Xr;Fs=1;const e=Eo,t=vE(),n=bE(),r=In(),o=a=>a===""||a==="./",s=a=>{const c=a.indexOf("{");return c>-1&&a.indexOf("}",c)>-1},i=(a,c,u)=>{c=[].concat(c),a=[].concat(a);let l=new Set,h=new Set,d=new Set,$=0,O=T=>{d.add(T.output),u&&u.onResult&&u.onResult(T)};for(let T=0;T<c.length;T++){let D=n(String(c[T]),{...u,onResult:O},!0),p=D.state.negated||D.state.negatedExtglob;p&&$++;for(let S of a){let m=D(S,!0);(p?!m.isMatch:m.isMatch)&&(p?l.add(m.output):(l.delete(m.output),h.add(m.output)))}}let C=($===c.length?[...d]:[...h]).filter(T=>!l.has(T));if(u&&C.length===0){if(u.failglob===!0)throw new Error(`No matches found for "${c.join(", ")}"`);if(u.nonull===!0||u.nullglob===!0)return u.unescape?c.map(T=>T.replace(/\\/g,"")):c}return C};return i.match=i,i.matcher=(a,c)=>n(a,c),i.isMatch=(a,c,u)=>n(c,u)(a),i.any=i.isMatch,i.not=(a,c,u={})=>{c=[].concat(c).map(String);let l=new Set,h=[],d=O=>{u.onResult&&u.onResult(O),h.push(O.output)},$=new Set(i(a,c,{...u,onResult:d}));for(let O of h)$.has(O)||l.add(O);return[...l]},i.contains=(a,c,u)=>{if(typeof a!="string")throw new TypeError(`Expected a string: "${e.inspect(a)}"`);if(Array.isArray(c))return c.some(l=>i.contains(a,l,u));if(typeof c=="string"){if(o(a)||o(c))return!1;if(a.includes(c)||a.startsWith("./")&&a.slice(2).includes(c))return!0}return i.isMatch(a,c,{...u,contains:!0})},i.matchKeys=(a,c,u)=>{if(!r.isObject(a))throw new TypeError("Expected the first argument to be an object");let l=i(Object.keys(a),c,u),h={};for(let d of l)h[d]=a[d];return h},i.some=(a,c,u)=>{let l=[].concat(a);for(let h of[].concat(c)){let d=n(String(h),u);if(l.some($=>d($)))return!0}return!1},i.every=(a,c,u)=>{let l=[].concat(a);for(let h of[].concat(c)){let d=n(String(h),u);if(!l.every($=>d($)))return!1}return!0},i.all=(a,c,u)=>{if(typeof a!="string")throw new TypeError(`Expected a string: "${e.inspect(a)}"`);return[].concat(c).every(l=>n(l,u)(a))},i.capture=(a,c,u)=>{let l=r.isWindows(u),d=n.makeRe(String(a),{...u,capture:!0}).exec(l?r.toPosixSlashes(c):c);if(d)return d.slice(1).map($=>$===void 0?"":$)},i.makeRe=(...a)=>n.makeRe(...a),i.scan=(...a)=>n.scan(...a),i.parse=(a,c)=>{let u=[];for(let l of[].concat(a||[]))for(let h of t(String(l),c))u.push(n.parse(h,c));return u},i.braces=(a,c)=>{if(typeof a!="string")throw new TypeError("Expected a string");return c&&c.nobrace===!0||!s(a)?[a]:t(a,c)},i.braceExpand=(a,c)=>{if(typeof a!="string")throw new TypeError("Expected a string");return i.braces(a,{...c,expand:!0})},i.hasBraces=s,Xr=i,Xr}var LE=$E();const NE=_E(LE);function Hs(e,t,n){Jt.statSync(e).isDirectory()?(Jt.mkdirSync(t,{recursive:!0}),Jt.readdirSync(e).forEach(r=>{const o=et.resolve(e,r),s=et.resolve(t,r);Hs(o,s,n)})):NE.isMatch(e,n)||Jt.copyFileSync(e,t)}function ot(e,t,n,r,o=[]){const s=et.join(e,r?.[n]??n);Hs(et.join(t,n),s,o)}function DE(e){return{renameFiles:{"example-template":`${e}`},targetPath:e,sourcePath:"template/page-templates",onTemplateCreated:()=>L.info(`Template [${e}] with pages structure named has been created`)}}function qe(e){return Ne.resolve(ga(import.meta.url),"../..",e)}function kE(){const e=qe("package.json");return e!==""?JSON.parse(fe.readFileSync(e,"utf8")):{}}async function xE(e){try{const t=e,n=Te.cwd(),r=Ne.join(n,t),o=["templates","headers","preview","footers","reference","page-templates","layouts","collections","blank"],s={_gitignore:".gitignore"};fe.existsSync(r)?(L.error(`App with the name: ${e} already exists. If you'd like to override it, delete previous version first`),Te.exit(1)):fe.mkdirSync(r);const i=qe("template");fe.readdirSync(i).filter(l=>l!=="package.json").filter(l=>!o.includes(l)).forEach(async l=>ot(r,i,l,s));const a=JSON.parse(fe.readFileSync(Ne.join(i,"package.json"),"utf-8"));a.name=e;const c=kE();c.version&&(a.dependencies["@lightspeed/crane-api"]=c.dependencies["@lightspeed/crane-api"]),c.dependencies["@lightspeed/eslint-config-crane"]&&(a.dependencies["@lightspeed/eslint-config-crane"]=c.dependencies["@lightspeed/eslint-config-crane"]);const u=Ne.join(r,"package.json");fe.writeFileSync(u,`${JSON.stringify(a,null,2)}
|
|
56
|
-
`),L.info(`App ${e} created`)}catch(t){L.error(`Error while creating app: ${t.message}`),Te.exit(1)}}function Qr(e,t,n,r){try{const o=Te.cwd(),s=ue.join(o,t);re.existsSync(s)||re.mkdirSync(s);const i=ue.join(o,t,n);re.existsSync(i)?(L.error(`${r} with the name: ${n} already exists. If you'd like to override it, delete previous version first`),Te.exit(1)):re.mkdirSync(i);const a=qe(e);re.readdirSync(a).forEach(async c=>ot(i,a,c)),L.info(`${r} ${n} created`)}catch(o){L.error(`Error while creating ${r}: ${o.message}`),Te.exit(1)}}function qr(e){const t=Te.cwd(),n=qe(`template/${e}`),r=ue.join(t,e);re.existsSync(r)||(re.mkdirSync(r),re.readdirSync(n).forEach(async o=>ot(r,n,o)))}async function PE(e,t,n,r){if(!re.existsSync(n)){re.copyFileSync(t,n);return}const o=re.readFileSync(t),s=re.readFileSync(n);o.equals(s)||(r?(await Gt({type:"select",name:"value",message:`File "${e.name}" exists but differs from template. What would you like to do?`,choices:[{title:"Keep existing file",value:"keep"},{title:"Replace with template version",value:"replace"}],initial:0})).value==="replace"?(re.copyFileSync(t,n),L.info(`Replaced "${e.name}" with template version.`)):L.info(`Kept existing "${e.name}".`):L.warn(`File "${e.name}" exists but differs from template. File will be skipped, this may lead to issues.`))}async function bn(e,t,n=!1){async function r(s,i,a){const c=ue.join(i,s.name),u=ue.join(a,s.name);s.isDirectory()?await bn(c,u,n):await PE(s,c,u,n)}const o=re.readdirSync(e,{withFileTypes:!0});re.existsSync(t)||re.mkdirSync(t,{recursive:!0}),await o.reduce(async(s,i)=>(await s,r(i,e,t)),Promise.resolve())}async function Jr(e=!1){try{const t=Te.cwd(),n=ue.join(t,"shared"),r=qe("template/shared");if(!re.existsSync(r))return;await bn(r,n,e)}catch(t){L.error(`Error while processing shared folder: ${t.message}`),Te.exit(1)}}async function UE(e,t){await Jr(),Qr(`${`template${t?"/blank":""}`}/sections/${`${t?"blank-section":"example-section"}`}`,"sections",e,"Section")}function ME(e){return{renameFiles:{"example-collection":`${e}`},targetPath:e,sourcePath:"template/collections",onCollectionCreated:()=>L.info(`Collection [${e}] has been created`)}}async function GE(e){const{targetPath:t,renameFiles:n,sourcePath:r,onCollectionCreated:o}=ME(e);try{const s=Te.cwd(),i=Ne.join(s,"collections"),a=qe(r),c=fe.readdirSync(a);fe.existsSync(i)?fe.existsSync(Ne.join(i,t))&&(L.error(`Collection with the name: ${e} already exists. If you'd like to override it, delete previous version first`),Te.exit(1)):fe.mkdirSync(i),c.forEach(u=>ot(i,a,u,n)),o()}catch(s){L.error(`Error while creating collection: ${s.message}`),Te.exit(1)}}async function zE(e){await Jr(),Qr("template/footers/example-footer","footers",e,"Footer")}async function FE(e){await Jr(),Qr("template/headers/example-header","headers",e,"Header")}async function HE(e,t){try{const n=Te.cwd(),r=Ne.join(n,"templates"),o=qe("template/page-templates/example-template/pages");fe.existsSync(Ne.join(r,e))||(L.error(`Template with the name: [${e}] doesn't exists. Please create a template first.`),Te.exit(1)),fe.existsSync(Ne.join(r,e,"pages",`${t}.ts`))&&(L.error(`Page with the name: [${t}.ts] already exists. If you'd like to override it, delete previous version first`),Te.exit(1));const s=fe.readFileSync(Ne.join(o,"custom.ts"),"utf-8").replace(/title\s*:\s*'Custom Page'/,`title: '${Ga(t)}'`),i=Ne.join(r,e,"pages",`${t}.ts`);fe.writeFileSync(i,s),L.info(`Page [${t}.ts] created for template ${e}`)}catch(n){L.error(`Error while creating page: ${n.message}`),Te.exit(1)}}async function jE(){try{const e=Te.cwd(),t=qe("template/reference"),n=fe.readdirSync(t);let r=!1;for(const o of n){const s=Ne.join(t,o),i=Ne.join(e,o);fe.existsSync(i)||fe.mkdirSync(i,{recursive:!0});const a=fe.readdirSync(s),c=fe.readdirSync(i);if(o==="shared"){a.forEach(u=>{ot(i,s,u)});continue}for(const u of a){if(u==="assets"){ot(i,s,u);continue}if(c.includes(u)){const{name:l}=await Gt({type:"text",name:"name",message:`The "${u}" already exists in ${o} directory: provide a new name to keep both or press Esc to skip this one.`});l?(ot(i,s,u,{[u]:l}),r=!0):L.info(`Skipped: ${u}`)}else ot(i,s,u)}}L.info("Reference templates have been added to the app"),r&&L.warn("Some files or folders were renamed to avoid conflicts. Template files may need to be updated to reflect these changes.")}catch(e){L.error(`Error while creating template descriptors: ${e.message}`),Te.exit(1)}}const BE=["**/example-template/pages/custom.ts"];async function ZE(e){const{targetPath:t,renameFiles:n,sourcePath:r,onTemplateCreated:o}=DE(e);try{const s=Te.cwd(),i=Ne.join(s,"templates"),a=qe(r),c=fe.readdirSync(a);fe.existsSync(i)?fe.existsSync(Ne.join(i,t))&&(L.error(`Template with the name: ${e} already exists. If you'd like to override it, delete previous version first`),Te.exit(1)):fe.mkdirSync(i),c.forEach(u=>ot(i,a,u,n,BE)),qr("headers"),qr("footers"),qr("layouts"),o()}catch(s){L.error(`Error while creating template descriptors: ${s.message}`),Te.exit(1)}}function VE(){process.env.CRANE_DEBUG_ENABLED="true"}function KE(){return process.env.CRANE_DEBUG_ENABLED==="true"}function WE(e,...t){KE()&&console.debug(Js(`[DEBUG] ${e}`),...t)}function YE(e){const t=U(process.cwd(),`${Ie}/${e}`);if(we(t))return ve.SECTION;const n=U(process.cwd(),`${zt}/${e}`);if(we(n))return ve.HEADER;const r=U(process.cwd(),`${Ft}/${e}`);return we(r)?ve.FOOTER:ve.SECTION}function XE(){return{name:"app-block-api",configureServer(e){e.middlewares.use(async(t,n,r)=>{e.moduleGraph.invalidateAll();const o=new sa(t.url||"",`http://${t.headers.host}`);if(o.pathname==="/api/v1/block-config"&&t.method==="GET"){const s=o.searchParams.get("section"),i=o.searchParams.get("type");if(!s){n.statusCode=400,n.setHeader("Content-Type","application/json"),n.end(JSON.stringify({error:"Missing blockId parameter"}));return}const a=i&&ve[i]||YE(s);try{const c=await Rn(s,a);n.statusCode=200,n.setHeader("Content-Type","application/json"),n.end(JSON.stringify(c))}catch(c){n.statusCode=500,n.setHeader("Content-Type","application/json"),n.end(JSON.stringify({error:c.message}))}return}r()})}}}let _t=null;function QE(){_t&&_t.clients.forEach(e=>{e.readyState===ya.OPEN&&e.send(JSON.stringify({type:"full-reload"}))})}async function qE(e,t){const n=U(`${e}/ssr-server.ts`),r=U(t);await yt({build:{lib:{entry:n,formats:["es"],fileName:()=>"ssr-server.mjs"},outDir:r,emptyOutDir:!1,minify:!1,rollupOptions:{external:["http","fs","@swc/core","module-from-string","linkedom"],output:{entryFileNames:"ssr-server.mjs"}},target:"esnext"}})}async function JE(e,t){const n=U(`${e}/shared/preview.ts`),r=U(`${e}/shared/utils.ts`),o=U(`${e}/shared/api-routes.ts`),s=U(t);await yt({build:{lib:{entry:n,formats:["es"],fileName:()=>"preview.js"},outDir:s,emptyOutDir:!1,minify:!1,rollupOptions:{output:{entryFileNames:"preview.js"}},target:"esnext"}}),await yt({build:{lib:{entry:r,formats:["es"],fileName:()=>"utils.js"},outDir:s,emptyOutDir:!1,minify:!1,rollupOptions:{output:{entryFileNames:"utils.js"}},target:"esnext"}}),await yt({build:{lib:{entry:o,formats:["es"],fileName:()=>"api-routes.js"},outDir:s,emptyOutDir:!1,minify:!1,rollupOptions:{external:["path","fs","http","https","url","stream","util","events","buffer"],output:{entryFileNames:"api-routes.js"}},target:"esnext"}})}async function eg(){const e="preview",t=`${e}/shared`,n="vite.config.js",r=`${e}/sections`,o=`${r}/preview.html`;[e,r].forEach(i=>{re.existsSync(i)||re.mkdirSync(i,{recursive:!0})});const s=qe("template/preview");re.copyFileSync(`${s}/${n}`,`${e}/${n}`),await qE(s,e),re.copyFileSync(`${s}/sections/preview.html`,o),re.existsSync(t)||re.mkdirSync(t),await JE(s,t)}function tg(e){const t=e.replace(/\\/g,"/").match(/(?:sections|headers|footers)\/([^/]+)/);return t?t[1]:null}function ng(e){const t=e.replace(/\\/g,"/");return t.includes("shared")&&!t.includes("sections")&&!t.includes("headers")&&!t.includes("footers")}async function rg(e){const t=(await Cs()).find(r=>r.name===e);if(!t){console.warn(`Block ${e} not found, falling back to full build`),await An(!0);return}const n=Ts(t);await Ss([n]),console.log(`Block ${e} rebuilt successfully`)}var og=(e=>(e.FULL="full",e.INCREMENTAL="incremental",e))(og||{});function ig(){return{timeout:null,inProgress:!1,pendingBuild:null}}function sg(e,t){const n=async r=>{e.inProgress=!0;try{r.type==="incremental"&&r.blockName?await rg(r.blockName):await An(!0),t.ws.send({type:"full-reload",path:"*"}),QE()}catch(o){console.error("Build error:",o)}finally{if(e.inProgress=!1,e.pendingBuild){const o=e.pendingBuild;e.pendingBuild=null,setTimeout(()=>n(o),0)}}};return async r=>{if(e.inProgress){r.type==="full"||e.pendingBuild?.type==="full"?e.pendingBuild={type:"full"}:e.pendingBuild=r;return}await n(r)}}function ag(e){const t=e.replace(/\\/g,"/"),n=t.match(/sections\/([^/]+)/),r=t.match(/headers\/([^/]+)/),o=t.match(/footers\/([^/]+)/),s=t.match(/shared\//);return!!(n||r||o||s)}function cg(e,t){return async n=>{if(!ag(n))return;e.timeout&&clearTimeout(e.timeout);const r=tg(n),o=ng(n);e.timeout=setTimeout(async()=>{o?await t({type:"full"}):r&&await t({type:"incremental",blockName:r})},1e3)}}function ug(e,t){const n=ig(),r=sg(n,e),o=cg(n,r);e.watcher.add(t),e.watcher.on("add",o),e.watcher.on("change",o),e.watcher.on("unlink",o)}async function lg(){const e=ue.resolve(process.cwd(),"preview/ssr-server.mjs");if(!re.existsSync(e))throw console.warn(`\u26A0\uFE0F SSR server not found at ${e}`),new Error(`SSR server not found at ${e}`);process.env.PREVIEW_SSR_PORT="0";const t=await import(e),{server:n,port:r}=await t.startServer();return{server:n,port:r}}function pg(){_t=new _a({port:0}),_t.on("listening",()=>{const e=_t?.address();if(e&&typeof e=="object"){const t=e.port;process.env.CRANE_WEBSOCKET_PORT=String(t)}})}async function dg(){const e=ue.resolve(process.cwd(),"preview/vite.config.js"),t=ue.resolve(process.cwd(),"sections/**/*"),n=ue.resolve(process.cwd(),"headers/**/*"),r=ue.resolve(process.cwd(),"footers/**/*"),o=ue.resolve(process.cwd(),"shared/**/*"),s=await ta({configFile:e,root:process.cwd(),plugins:[XE()]});return await s.listen(),ug(s,[t,n,r,o]),s}async function fg(){await An(),await eg(),console.log(`
|
|
54
|
+
*/var jr,Fs;function zs(){if(Fs)return jr;Fs=1;const e=To,t=WE(),n=p=>p!==null&&typeof p=="object"&&!Array.isArray(p),r=p=>S=>p===!0?Number(S):String(S),o=p=>typeof p=="number"||typeof p=="string"&&p!=="",s=p=>Number.isInteger(+p),i=p=>{let S=`${p}`,m=-1;if(S[0]==="-"&&(S=S.slice(1)),S==="0")return!1;for(;S[++m]==="0";);return m>0},a=(p,S,m)=>typeof p=="string"||typeof S=="string"?!0:m.stringify===!0,c=(p,S,m)=>{if(S>0){let A=p[0]==="-"?"-":"";A&&(p=p.slice(1)),p=A+p.padStart(A?S-1:S,"0")}return m===!1?String(p):p},u=(p,S)=>{let m=p[0]==="-"?"-":"";for(m&&(p=p.slice(1),S--);p.length<S;)p="0"+p;return m?"-"+p:p},l=(p,S,m)=>{p.negatives.sort((G,Y)=>G<Y?-1:G>Y?1:0),p.positives.sort((G,Y)=>G<Y?-1:G>Y?1:0);let A=S.capture?"":"?:",y="",N="",x;return p.positives.length&&(y=p.positives.map(G=>u(String(G),m)).join("|")),p.negatives.length&&(N=`-(${A}${p.negatives.map(G=>u(String(G),m)).join("|")})`),y&&N?x=`${y}|${N}`:x=y||N,S.wrap?`(${A}${x})`:x},h=(p,S,m,A)=>{if(m)return t(p,S,{wrap:!1,...A});let y=String.fromCharCode(p);if(p===S)return y;let N=String.fromCharCode(S);return`[${y}-${N}]`},d=(p,S,m)=>{if(Array.isArray(p)){let A=m.wrap===!0,y=m.capture?"":"?:";return A?`(${y}${p.join("|")})`:p.join("|")}return t(p,S,m)},b=(...p)=>new RangeError("Invalid range arguments: "+e.inspect(...p)),O=(p,S,m)=>{if(m.strictRanges===!0)throw b([p,S]);return[]},Z=(p,S)=>{if(S.strictRanges===!0)throw new TypeError(`Expected step "${p}" to be a number`);return[]},w=(p,S,m=1,A={})=>{let y=Number(p),N=Number(S);if(!Number.isInteger(y)||!Number.isInteger(N)){if(A.strictRanges===!0)throw b([p,S]);return[]}y===0&&(y=0),N===0&&(N=0);let x=y>N,G=String(p),Y=String(S),H=String(m);m=Math.max(Math.abs(m),1);let C=i(G)||i(Y)||i(H),q=C?Math.max(G.length,Y.length,H.length):0,V=C===!1&&a(p,S,A)===!1,X=A.transform||r(V);if(A.toRegex&&m===1)return h(u(p,q),u(S,q),!0,A);let j={negatives:[],positives:[]},ce=g=>j[g<0?"negatives":"positives"].push(Math.abs(g)),Me=[],_e=0;for(;x?y>=N:y<=N;)A.toRegex===!0&&m>1?ce(y):Me.push(c(X(y,_e),q,V)),y=x?y-m:y+m,_e++;return A.toRegex===!0?m>1?l(j,A,q):d(Me,null,{wrap:!1,...A}):Me},T=(p,S,m=1,A={})=>{if(!s(p)&&p.length>1||!s(S)&&S.length>1)return O(p,S,A);let y=A.transform||(V=>String.fromCharCode(V)),N=`${p}`.charCodeAt(0),x=`${S}`.charCodeAt(0),G=N>x,Y=Math.min(N,x),H=Math.max(N,x);if(A.toRegex&&m===1)return h(Y,H,!1,A);let C=[],q=0;for(;G?N>=x:N<=x;)C.push(y(N,q)),N=G?N-m:N+m,q++;return A.toRegex===!0?d(C,null,{wrap:!1,options:A}):C},D=(p,S,m,A={})=>{if(S==null&&o(p))return[p];if(!o(p)||!o(S))return O(p,S,A);if(typeof m=="function")return D(p,S,1,{transform:m});if(n(m))return D(p,S,0,m);let y={...A};return y.capture===!0&&(y.wrap=!0),m=m||y.step||1,s(m)?s(p)&&s(S)?w(p,S,m,y):T(p,S,Math.max(Math.abs(m),1),y):m!=null&&!n(m)?Z(m,y):D(p,S,1,m)};return jr=D,jr}var Br,Gs;function KE(){if(Gs)return Br;Gs=1;const e=zs(),t=Ur();return Br=(r,o={})=>{const s=(i,a={})=>{const c=t.isInvalidBrace(a),u=i.invalid===!0&&o.escapeInvalid===!0,l=c===!0||u===!0,h=o.escapeInvalid===!0?"\\":"";let d="";if(i.isOpen===!0)return h+i.value;if(i.isClose===!0)return console.log("node.isClose",h,i.value),h+i.value;if(i.type==="open")return l?h+i.value:"(";if(i.type==="close")return l?h+i.value:")";if(i.type==="comma")return i.prev.type==="comma"?"":l?i.value:"|";if(i.value)return i.value;if(i.nodes&&i.ranges>0){const b=t.reduce(i.nodes),O=e(...b,{...o,wrap:!1,toRegex:!0,strictZeros:!0});if(O.length!==0)return b.length>1&&O.length>1?`(${O})`:O}if(i.nodes)for(const b of i.nodes)d+=s(b,i);return d};return s(r)},Br}var Zr,Hs;function YE(){if(Hs)return Zr;Hs=1;const e=zs(),t=zr(),n=Ur(),r=(s="",i="",a=!1)=>{const c=[];if(s=[].concat(s),i=[].concat(i),!i.length)return s;if(!s.length)return a?n.flatten(i).map(u=>`{${u}}`):i;for(const u of s)if(Array.isArray(u))for(const l of u)c.push(r(l,i,a));else for(let l of i)a===!0&&typeof l=="string"&&(l=`{${l}}`),c.push(Array.isArray(l)?r(u,l,a):u+l);return n.flatten(c)};return Zr=(s,i={})=>{const a=i.rangeLimit===void 0?1e3:i.rangeLimit,c=(u,l={})=>{u.queue=[];let h=l,d=l.queue;for(;h.type!=="brace"&&h.type!=="root"&&h.parent;)h=h.parent,d=h.queue;if(u.invalid||u.dollar){d.push(r(d.pop(),t(u,i)));return}if(u.type==="brace"&&u.invalid!==!0&&u.nodes.length===2){d.push(r(d.pop(),["{}"]));return}if(u.nodes&&u.ranges>0){const w=n.reduce(u.nodes);if(n.exceedsLimit(...w,i.step,a))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let T=e(...w,i);T.length===0&&(T=t(u,i)),d.push(r(d.pop(),T)),u.nodes=[];return}const b=n.encloseBrace(u);let O=u.queue,Z=u;for(;Z.type!=="brace"&&Z.type!=="root"&&Z.parent;)Z=Z.parent,O=Z.queue;for(let w=0;w<u.nodes.length;w++){const T=u.nodes[w];if(T.type==="comma"&&u.type==="brace"){w===1&&O.push(""),O.push("");continue}if(T.type==="close"){d.push(r(d.pop(),O,b));continue}if(T.value&&T.type!=="open"){O.push(r(O.pop(),T.value));continue}T.nodes&&c(T,u)}return O};return n.flatten(c(s))},Zr}var Vr,js;function XE(){return js||(js=1,Vr={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:`
|
|
55
|
+
`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}),Vr}var Wr,Bs;function QE(){if(Bs)return Wr;Bs=1;const e=zr(),{MAX_LENGTH:t,CHAR_BACKSLASH:n,CHAR_BACKTICK:r,CHAR_COMMA:o,CHAR_DOT:s,CHAR_LEFT_PARENTHESES:i,CHAR_RIGHT_PARENTHESES:a,CHAR_LEFT_CURLY_BRACE:c,CHAR_RIGHT_CURLY_BRACE:u,CHAR_LEFT_SQUARE_BRACKET:l,CHAR_RIGHT_SQUARE_BRACKET:h,CHAR_DOUBLE_QUOTE:d,CHAR_SINGLE_QUOTE:b,CHAR_NO_BREAK_SPACE:O,CHAR_ZERO_WIDTH_NOBREAK_SPACE:Z}=XE();return Wr=(T,D={})=>{if(typeof T!="string")throw new TypeError("Expected a string");const p=D||{},S=typeof p.maxLength=="number"?Math.min(t,p.maxLength):t;if(T.length>S)throw new SyntaxError(`Input length (${T.length}), exceeds max characters (${S})`);const m={type:"root",input:T,nodes:[]},A=[m];let y=m,N=m,x=0;const G=T.length;let Y=0,H=0,C;const q=()=>T[Y++],V=X=>{if(X.type==="text"&&N.type==="dot"&&(N.type="text"),N&&N.type==="text"&&X.type==="text"){N.value+=X.value;return}return y.nodes.push(X),X.parent=y,X.prev=N,N=X,X};for(V({type:"bos"});Y<G;)if(y=A[A.length-1],C=q(),!(C===Z||C===O)){if(C===n){V({type:"text",value:(D.keepEscaping?C:"")+q()});continue}if(C===h){V({type:"text",value:"\\"+C});continue}if(C===l){x++;let X;for(;Y<G&&(X=q());){if(C+=X,X===l){x++;continue}if(X===n){C+=q();continue}if(X===h&&(x--,x===0))break}V({type:"text",value:C});continue}if(C===i){y=V({type:"paren",nodes:[]}),A.push(y),V({type:"text",value:C});continue}if(C===a){if(y.type!=="paren"){V({type:"text",value:C});continue}y=A.pop(),V({type:"text",value:C}),y=A[A.length-1];continue}if(C===d||C===b||C===r){const X=C;let j;for(D.keepQuotes!==!0&&(C="");Y<G&&(j=q());){if(j===n){C+=j+q();continue}if(j===X){D.keepQuotes===!0&&(C+=j);break}C+=j}V({type:"text",value:C});continue}if(C===c){H++;const j={type:"brace",open:!0,close:!1,dollar:N.value&&N.value.slice(-1)==="$"||y.dollar===!0,depth:H,commas:0,ranges:0,nodes:[]};y=V(j),A.push(y),V({type:"open",value:C});continue}if(C===u){if(y.type!=="brace"){V({type:"text",value:C});continue}const X="close";y=A.pop(),y.close=!0,V({type:X,value:C}),H--,y=A[A.length-1];continue}if(C===o&&H>0){if(y.ranges>0){y.ranges=0;const X=y.nodes.shift();y.nodes=[X,{type:"text",value:e(y)}]}V({type:"comma",value:C}),y.commas++;continue}if(C===s&&H>0&&y.commas===0){const X=y.nodes;if(H===0||X.length===0){V({type:"text",value:C});continue}if(N.type==="dot"){if(y.range=[],N.value+=C,N.type="range",y.nodes.length!==3&&y.nodes.length!==5){y.invalid=!0,y.ranges=0,N.type="text";continue}y.ranges++,y.args=[];continue}if(N.type==="range"){X.pop();const j=X[X.length-1];j.value+=N.value+C,N=j,y.ranges--;continue}V({type:"dot",value:C});continue}V({type:"text",value:C})}do if(y=A.pop(),y.type!=="root"){y.nodes.forEach(ce=>{ce.nodes||(ce.type==="open"&&(ce.isOpen=!0),ce.type==="close"&&(ce.isClose=!0),ce.nodes||(ce.type="text"),ce.invalid=!0)});const X=A[A.length-1],j=X.nodes.indexOf(y);X.nodes.splice(j,1,...y.nodes)}while(A.length>0);return V({type:"eos"}),m},Wr}var Kr,Zs;function qE(){if(Zs)return Kr;Zs=1;const e=zr(),t=KE(),n=YE(),r=QE(),o=(s,i={})=>{let a=[];if(Array.isArray(s))for(const c of s){const u=o.create(c,i);Array.isArray(u)?a.push(...u):a.push(u)}else a=[].concat(o.create(s,i));return i&&i.expand===!0&&i.nodupes===!0&&(a=[...new Set(a)]),a};return o.parse=(s,i={})=>r(s,i),o.stringify=(s,i={})=>e(typeof s=="string"?o.parse(s,i):s,i),o.compile=(s,i={})=>(typeof s=="string"&&(s=o.parse(s,i)),t(s,i)),o.expand=(s,i={})=>{typeof s=="string"&&(s=o.parse(s,i));let a=n(s,i);return i.noempty===!0&&(a=a.filter(Boolean)),i.nodupes===!0&&(a=[...new Set(a)]),a},o.create=(s,i={})=>s===""||s.length<3?[s]:i.expand!==!0?o.compile(s,i):o.expand(s,i),Kr=o,Kr}var Yr={},Xr,Vs;function Ln(){if(Vs)return Xr;Vs=1;const e=ue,t="\\\\/",n=`[^${t}]`,r="\\.",o="\\+",s="\\?",i="\\/",a="(?=.)",c="[^/]",u=`(?:${i}|$)`,l=`(?:^|${i})`,h=`${r}{1,2}${u}`,d=`(?!${r})`,b=`(?!${l}${h})`,O=`(?!${r}{0,1}${u})`,Z=`(?!${h})`,w=`[^.${i}]`,T=`${c}*?`,D={DOT_LITERAL:r,PLUS_LITERAL:o,QMARK_LITERAL:s,SLASH_LITERAL:i,ONE_CHAR:a,QMARK:c,END_ANCHOR:u,DOTS_SLASH:h,NO_DOT:d,NO_DOTS:b,NO_DOT_SLASH:O,NO_DOTS_SLASH:Z,QMARK_NO_DOT:w,STAR:T,START_ANCHOR:l},p={...D,SLASH_LITERAL:`[${t}]`,QMARK:n,STAR:`${n}*?`,DOTS_SLASH:`${r}{1,2}(?:[${t}]|$)`,NO_DOT:`(?!${r})`,NO_DOTS:`(?!(?:^|[${t}])${r}{1,2}(?:[${t}]|$))`,NO_DOT_SLASH:`(?!${r}{0,1}(?:[${t}]|$))`,NO_DOTS_SLASH:`(?!${r}{1,2}(?:[${t}]|$))`,QMARK_NO_DOT:`[^.${t}]`,START_ANCHOR:`(?:^|[${t}])`,END_ANCHOR:`(?:[${t}]|$)`},S={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};return Xr={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:S,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:e.sep,extglobChars(m){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${m.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(m){return m===!0?p:D}},Xr}var Ws;function Nn(){return Ws||(Ws=1,(function(e){const t=ue,n=process.platform==="win32",{REGEX_BACKSLASH:r,REGEX_REMOVE_BACKSLASH:o,REGEX_SPECIAL_CHARS:s,REGEX_SPECIAL_CHARS_GLOBAL:i}=Ln();e.isObject=a=>a!==null&&typeof a=="object"&&!Array.isArray(a),e.hasRegexChars=a=>s.test(a),e.isRegexChar=a=>a.length===1&&e.hasRegexChars(a),e.escapeRegex=a=>a.replace(i,"\\$1"),e.toPosixSlashes=a=>a.replace(r,"/"),e.removeBackslashes=a=>a.replace(o,c=>c==="\\"?"":c),e.supportsLookbehinds=()=>{const a=process.version.slice(1).split(".").map(Number);return a.length===3&&a[0]>=9||a[0]===8&&a[1]>=10},e.isWindows=a=>a&&typeof a.windows=="boolean"?a.windows:n===!0||t.sep==="\\",e.escapeLast=(a,c,u)=>{const l=a.lastIndexOf(c,u);return l===-1?a:a[l-1]==="\\"?e.escapeLast(a,c,l-1):`${a.slice(0,l)}\\${a.slice(l)}`},e.removePrefix=(a,c={})=>{let u=a;return u.startsWith("./")&&(u=u.slice(2),c.prefix="./"),u},e.wrapOutput=(a,c={},u={})=>{const l=u.contains?"":"^",h=u.contains?"":"$";let d=`${l}(?:${a})${h}`;return c.negated===!0&&(d=`(?:^(?!${d}).*$)`),d}})(Yr)),Yr}var Qr,Ks;function JE(){if(Ks)return Qr;Ks=1;const e=Nn(),{CHAR_ASTERISK:t,CHAR_AT:n,CHAR_BACKWARD_SLASH:r,CHAR_COMMA:o,CHAR_DOT:s,CHAR_EXCLAMATION_MARK:i,CHAR_FORWARD_SLASH:a,CHAR_LEFT_CURLY_BRACE:c,CHAR_LEFT_PARENTHESES:u,CHAR_LEFT_SQUARE_BRACKET:l,CHAR_PLUS:h,CHAR_QUESTION_MARK:d,CHAR_RIGHT_CURLY_BRACE:b,CHAR_RIGHT_PARENTHESES:O,CHAR_RIGHT_SQUARE_BRACKET:Z}=Ln(),w=p=>p===a||p===r,T=p=>{p.isPrefix!==!0&&(p.depth=p.isGlobstar?1/0:1)};return Qr=(p,S)=>{const m=S||{},A=p.length-1,y=m.parts===!0||m.scanToEnd===!0,N=[],x=[],G=[];let Y=p,H=-1,C=0,q=0,V=!1,X=!1,j=!1,ce=!1,Me=!1,_e=!1,g=!1,be=!1,je=!1,Ie=!1,E=0,_,W,B={value:"",depth:0,isGlob:!1};const xe=()=>H>=A,tt=()=>Y.charCodeAt(H+1),ye=()=>(_=W,Y.charCodeAt(++H));for(;H<A;){W=ye();let U;if(W===r){g=B.backslashes=!0,W=ye(),W===c&&(_e=!0);continue}if(_e===!0||W===c){for(E++;xe()!==!0&&(W=ye());){if(W===r){g=B.backslashes=!0,ye();continue}if(W===c){E++;continue}if(_e!==!0&&W===s&&(W=ye())===s){if(V=B.isBrace=!0,j=B.isGlob=!0,Ie=!0,y===!0)continue;break}if(_e!==!0&&W===o){if(V=B.isBrace=!0,j=B.isGlob=!0,Ie=!0,y===!0)continue;break}if(W===b&&(E--,E===0)){_e=!1,V=B.isBrace=!0,Ie=!0;break}}if(y===!0)continue;break}if(W===a){if(N.push(H),x.push(B),B={value:"",depth:0,isGlob:!1},Ie===!0)continue;if(_===s&&H===C+1){C+=2;continue}q=H+1;continue}if(m.noext!==!0&&(W===h||W===n||W===t||W===d||W===i)===!0&&tt()===u){if(j=B.isGlob=!0,ce=B.isExtglob=!0,Ie=!0,W===i&&H===C&&(je=!0),y===!0){for(;xe()!==!0&&(W=ye());){if(W===r){g=B.backslashes=!0,W=ye();continue}if(W===O){j=B.isGlob=!0,Ie=!0;break}}continue}break}if(W===t){if(_===t&&(Me=B.isGlobstar=!0),j=B.isGlob=!0,Ie=!0,y===!0)continue;break}if(W===d){if(j=B.isGlob=!0,Ie=!0,y===!0)continue;break}if(W===l){for(;xe()!==!0&&(U=ye());){if(U===r){g=B.backslashes=!0,ye();continue}if(U===Z){X=B.isBracket=!0,j=B.isGlob=!0,Ie=!0;break}}if(y===!0)continue;break}if(m.nonegate!==!0&&W===i&&H===C){be=B.negated=!0,C++;continue}if(m.noparen!==!0&&W===u){if(j=B.isGlob=!0,y===!0){for(;xe()!==!0&&(W=ye());){if(W===u){g=B.backslashes=!0,W=ye();continue}if(W===O){Ie=!0;break}}continue}break}if(j===!0){if(Ie=!0,y===!0)continue;break}}m.noext===!0&&(ce=!1,j=!1);let Se=Y,Ut="",Be="";C>0&&(Ut=Y.slice(0,C),Y=Y.slice(C),q-=C),Se&&j===!0&&q>0?(Se=Y.slice(0,q),Be=Y.slice(q)):j===!0?(Se="",Be=Y):Se=Y,Se&&Se!==""&&Se!=="/"&&Se!==Y&&w(Se.charCodeAt(Se.length-1))&&(Se=Se.slice(0,-1)),m.unescape===!0&&(Be&&(Be=e.removeBackslashes(Be)),Se&&g===!0&&(Se=e.removeBackslashes(Se)));const $e={prefix:Ut,input:p,start:C,base:Se,glob:Be,isBrace:V,isBracket:X,isGlob:j,isExtglob:ce,isGlobstar:Me,negated:be,negatedExtglob:je};if(m.tokens===!0&&($e.maxDepth=0,w(W)||x.push(B),$e.tokens=x),m.parts===!0||m.tokens===!0){let U;for(let Re=0;Re<N.length;Re++){const Pn=U?U+1:C,$=N[Re],ne=p.slice(Pn,$);m.tokens&&(Re===0&&C!==0?(x[Re].isPrefix=!0,x[Re].value=Ut):x[Re].value=ne,T(x[Re]),$e.maxDepth+=x[Re].depth),(Re!==0||ne!=="")&&G.push(ne),U=$}if(U&&U+1<p.length){const Re=p.slice(U+1);G.push(Re),m.tokens&&(x[x.length-1].value=Re,T(x[x.length-1]),$e.maxDepth+=x[x.length-1].depth)}$e.slashes=N,$e.parts=G}return $e},Qr}var qr,Ys;function eg(){if(Ys)return qr;Ys=1;const e=Ln(),t=Nn(),{MAX_LENGTH:n,POSIX_REGEX_SOURCE:r,REGEX_NON_SPECIAL_CHARS:o,REGEX_SPECIAL_CHARS_BACKREF:s,REPLACEMENTS:i}=e,a=(l,h)=>{if(typeof h.expandRange=="function")return h.expandRange(...l,h);l.sort();const d=`[${l.join("-")}]`;try{new RegExp(d)}catch{return l.map(O=>t.escapeRegex(O)).join("..")}return d},c=(l,h)=>`Missing ${l}: "${h}" - use "\\\\${h}" to match literal characters`,u=(l,h)=>{if(typeof l!="string")throw new TypeError("Expected a string");l=i[l]||l;const d={...h},b=typeof d.maxLength=="number"?Math.min(n,d.maxLength):n;let O=l.length;if(O>b)throw new SyntaxError(`Input length: ${O}, exceeds maximum allowed length: ${b}`);const Z={type:"bos",value:"",output:d.prepend||""},w=[Z],T=d.capture?"":"?:",D=t.isWindows(h),p=e.globChars(D),S=e.extglobChars(p),{DOT_LITERAL:m,PLUS_LITERAL:A,SLASH_LITERAL:y,ONE_CHAR:N,DOTS_SLASH:x,NO_DOT:G,NO_DOT_SLASH:Y,NO_DOTS_SLASH:H,QMARK:C,QMARK_NO_DOT:q,STAR:V,START_ANCHOR:X}=p,j=$=>`(${T}(?:(?!${X}${$.dot?x:m}).)*?)`,ce=d.dot?"":G,Me=d.dot?C:q;let _e=d.bash===!0?j(d):V;d.capture&&(_e=`(${_e})`),typeof d.noext=="boolean"&&(d.noextglob=d.noext);const g={input:l,index:-1,start:0,dot:d.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:w};l=t.removePrefix(l,g),O=l.length;const be=[],je=[],Ie=[];let E=Z,_;const W=()=>g.index===O-1,B=g.peek=($=1)=>l[g.index+$],xe=g.advance=()=>l[++g.index]||"",tt=()=>l.slice(g.index+1),ye=($="",ne=0)=>{g.consumed+=$,g.index+=ne},Se=$=>{g.output+=$.output!=null?$.output:$.value,ye($.value)},Ut=()=>{let $=1;for(;B()==="!"&&(B(2)!=="("||B(3)==="?");)xe(),g.start++,$++;return $%2===0?!1:(g.negated=!0,g.start++,!0)},Be=$=>{g[$]++,Ie.push($)},$e=$=>{g[$]--,Ie.pop()},U=$=>{if(E.type==="globstar"){const ne=g.braces>0&&($.type==="comma"||$.type==="brace"),v=$.extglob===!0||be.length&&($.type==="pipe"||$.type==="paren");$.type!=="slash"&&$.type!=="paren"&&!ne&&!v&&(g.output=g.output.slice(0,-E.output.length),E.type="star",E.value="*",E.output=_e,g.output+=E.output)}if(be.length&&$.type!=="paren"&&(be[be.length-1].inner+=$.value),($.value||$.output)&&Se($),E&&E.type==="text"&&$.type==="text"){E.value+=$.value,E.output=(E.output||"")+$.value;return}$.prev=E,w.push($),E=$},Re=($,ne)=>{const v={...S[ne],conditions:1,inner:""};v.prev=E,v.parens=g.parens,v.output=g.output;const Q=(d.capture?"(":"")+v.open;Be("parens"),U({type:$,value:ne,output:g.output?"":N}),U({type:"paren",extglob:!0,value:xe(),output:Q}),be.push(v)},Pn=$=>{let ne=$.close+(d.capture?")":""),v;if($.type==="negate"){let Q=_e;if($.inner&&$.inner.length>1&&$.inner.includes("/")&&(Q=j(d)),(Q!==_e||W()||/^\)+$/.test(tt()))&&(ne=$.close=`)$))${Q}`),$.inner.includes("*")&&(v=tt())&&/^\.[^\\/.]+$/.test(v)){const de=u(v,{...h,fastpaths:!1}).output;ne=$.close=`)${de})${Q})`}$.prev.type==="bos"&&(g.negatedExtglob=!0)}U({type:"paren",extglob:!0,value:_,output:ne}),$e("parens")};if(d.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(l)){let $=!1,ne=l.replace(s,(v,Q,de,Le,we,Mn)=>Le==="\\"?($=!0,v):Le==="?"?Q?Q+Le+(we?C.repeat(we.length):""):Mn===0?Me+(we?C.repeat(we.length):""):C.repeat(de.length):Le==="."?m.repeat(de.length):Le==="*"?Q?Q+Le+(we?_e:""):_e:Q?v:`\\${v}`);return $===!0&&(d.unescape===!0?ne=ne.replace(/\\/g,""):ne=ne.replace(/\\+/g,v=>v.length%2===0?"\\\\":v?"\\":"")),ne===l&&d.contains===!0?(g.output=l,g):(g.output=t.wrapOutput(ne,g,h),g)}for(;!W();){if(_=xe(),_==="\0")continue;if(_==="\\"){const v=B();if(v==="/"&&d.bash!==!0||v==="."||v===";")continue;if(!v){_+="\\",U({type:"text",value:_});continue}const Q=/^\\+/.exec(tt());let de=0;if(Q&&Q[0].length>2&&(de=Q[0].length,g.index+=de,de%2!==0&&(_+="\\")),d.unescape===!0?_=xe():_+=xe(),g.brackets===0){U({type:"text",value:_});continue}}if(g.brackets>0&&(_!=="]"||E.value==="["||E.value==="[^")){if(d.posix!==!1&&_===":"){const v=E.value.slice(1);if(v.includes("[")&&(E.posix=!0,v.includes(":"))){const Q=E.value.lastIndexOf("["),de=E.value.slice(0,Q),Le=E.value.slice(Q+2),we=r[Le];if(we){E.value=de+we,g.backtrack=!0,xe(),!Z.output&&w.indexOf(E)===1&&(Z.output=N);continue}}}(_==="["&&B()!==":"||_==="-"&&B()==="]")&&(_=`\\${_}`),_==="]"&&(E.value==="["||E.value==="[^")&&(_=`\\${_}`),d.posix===!0&&_==="!"&&E.value==="["&&(_="^"),E.value+=_,Se({value:_});continue}if(g.quotes===1&&_!=='"'){_=t.escapeRegex(_),E.value+=_,Se({value:_});continue}if(_==='"'){g.quotes=g.quotes===1?0:1,d.keepQuotes===!0&&U({type:"text",value:_});continue}if(_==="("){Be("parens"),U({type:"paren",value:_});continue}if(_===")"){if(g.parens===0&&d.strictBrackets===!0)throw new SyntaxError(c("opening","("));const v=be[be.length-1];if(v&&g.parens===v.parens+1){Pn(be.pop());continue}U({type:"paren",value:_,output:g.parens?")":"\\)"}),$e("parens");continue}if(_==="["){if(d.nobracket===!0||!tt().includes("]")){if(d.nobracket!==!0&&d.strictBrackets===!0)throw new SyntaxError(c("closing","]"));_=`\\${_}`}else Be("brackets");U({type:"bracket",value:_});continue}if(_==="]"){if(d.nobracket===!0||E&&E.type==="bracket"&&E.value.length===1){U({type:"text",value:_,output:`\\${_}`});continue}if(g.brackets===0){if(d.strictBrackets===!0)throw new SyntaxError(c("opening","["));U({type:"text",value:_,output:`\\${_}`});continue}$e("brackets");const v=E.value.slice(1);if(E.posix!==!0&&v[0]==="^"&&!v.includes("/")&&(_=`/${_}`),E.value+=_,Se({value:_}),d.literalBrackets===!1||t.hasRegexChars(v))continue;const Q=t.escapeRegex(E.value);if(g.output=g.output.slice(0,-E.value.length),d.literalBrackets===!0){g.output+=Q,E.value=Q;continue}E.value=`(${T}${Q}|${E.value})`,g.output+=E.value;continue}if(_==="{"&&d.nobrace!==!0){Be("braces");const v={type:"brace",value:_,output:"(",outputIndex:g.output.length,tokensIndex:g.tokens.length};je.push(v),U(v);continue}if(_==="}"){const v=je[je.length-1];if(d.nobrace===!0||!v){U({type:"text",value:_,output:_});continue}let Q=")";if(v.dots===!0){const de=w.slice(),Le=[];for(let we=de.length-1;we>=0&&(w.pop(),de[we].type!=="brace");we--)de[we].type!=="dots"&&Le.unshift(de[we].value);Q=a(Le,d),g.backtrack=!0}if(v.comma!==!0&&v.dots!==!0){const de=g.output.slice(0,v.outputIndex),Le=g.tokens.slice(v.tokensIndex);v.value=v.output="\\{",_=Q="\\}",g.output=de;for(const we of Le)g.output+=we.output||we.value}U({type:"brace",value:_,output:Q}),$e("braces"),je.pop();continue}if(_==="|"){be.length>0&&be[be.length-1].conditions++,U({type:"text",value:_});continue}if(_===","){let v=_;const Q=je[je.length-1];Q&&Ie[Ie.length-1]==="braces"&&(Q.comma=!0,v="|"),U({type:"comma",value:_,output:v});continue}if(_==="/"){if(E.type==="dot"&&g.index===g.start+1){g.start=g.index+1,g.consumed="",g.output="",w.pop(),E=Z;continue}U({type:"slash",value:_,output:y});continue}if(_==="."){if(g.braces>0&&E.type==="dot"){E.value==="."&&(E.output=m);const v=je[je.length-1];E.type="dots",E.output+=_,E.value+=_,v.dots=!0;continue}if(g.braces+g.parens===0&&E.type!=="bos"&&E.type!=="slash"){U({type:"text",value:_,output:m});continue}U({type:"dot",value:_,output:m});continue}if(_==="?"){if(!(E&&E.value==="(")&&d.noextglob!==!0&&B()==="("&&B(2)!=="?"){Re("qmark",_);continue}if(E&&E.type==="paren"){const Q=B();let de=_;if(Q==="<"&&!t.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(E.value==="("&&!/[!=<:]/.test(Q)||Q==="<"&&!/<([!=]|\w+>)/.test(tt()))&&(de=`\\${_}`),U({type:"text",value:_,output:de});continue}if(d.dot!==!0&&(E.type==="slash"||E.type==="bos")){U({type:"qmark",value:_,output:q});continue}U({type:"qmark",value:_,output:C});continue}if(_==="!"){if(d.noextglob!==!0&&B()==="("&&(B(2)!=="?"||!/[!=<:]/.test(B(3)))){Re("negate",_);continue}if(d.nonegate!==!0&&g.index===0){Ut();continue}}if(_==="+"){if(d.noextglob!==!0&&B()==="("&&B(2)!=="?"){Re("plus",_);continue}if(E&&E.value==="("||d.regex===!1){U({type:"plus",value:_,output:A});continue}if(E&&(E.type==="bracket"||E.type==="paren"||E.type==="brace")||g.parens>0){U({type:"plus",value:_});continue}U({type:"plus",value:A});continue}if(_==="@"){if(d.noextglob!==!0&&B()==="("&&B(2)!=="?"){U({type:"at",extglob:!0,value:_,output:""});continue}U({type:"text",value:_});continue}if(_!=="*"){(_==="$"||_==="^")&&(_=`\\${_}`);const v=o.exec(tt());v&&(_+=v[0],g.index+=v[0].length),U({type:"text",value:_});continue}if(E&&(E.type==="globstar"||E.star===!0)){E.type="star",E.star=!0,E.value+=_,E.output=_e,g.backtrack=!0,g.globstar=!0,ye(_);continue}let $=tt();if(d.noextglob!==!0&&/^\([^?]/.test($)){Re("star",_);continue}if(E.type==="star"){if(d.noglobstar===!0){ye(_);continue}const v=E.prev,Q=v.prev,de=v.type==="slash"||v.type==="bos",Le=Q&&(Q.type==="star"||Q.type==="globstar");if(d.bash===!0&&(!de||$[0]&&$[0]!=="/")){U({type:"star",value:_,output:""});continue}const we=g.braces>0&&(v.type==="comma"||v.type==="brace"),Mn=be.length&&(v.type==="pipe"||v.type==="paren");if(!de&&v.type!=="paren"&&!we&&!Mn){U({type:"star",value:_,output:""});continue}for(;$.slice(0,3)==="/**";){const en=l[g.index+4];if(en&&en!=="/")break;$=$.slice(3),ye("/**",3)}if(v.type==="bos"&&W()){E.type="globstar",E.value+=_,E.output=j(d),g.output=E.output,g.globstar=!0,ye(_);continue}if(v.type==="slash"&&v.prev.type!=="bos"&&!Le&&W()){g.output=g.output.slice(0,-(v.output+E.output).length),v.output=`(?:${v.output}`,E.type="globstar",E.output=j(d)+(d.strictSlashes?")":"|$)"),E.value+=_,g.globstar=!0,g.output+=v.output+E.output,ye(_);continue}if(v.type==="slash"&&v.prev.type!=="bos"&&$[0]==="/"){const en=$[1]!==void 0?"|$":"";g.output=g.output.slice(0,-(v.output+E.output).length),v.output=`(?:${v.output}`,E.type="globstar",E.output=`${j(d)}${y}|${y}${en})`,E.value+=_,g.output+=v.output+E.output,g.globstar=!0,ye(_+xe()),U({type:"slash",value:"/",output:""});continue}if(v.type==="bos"&&$[0]==="/"){E.type="globstar",E.value+=_,E.output=`(?:^|${y}|${j(d)}${y})`,g.output=E.output,g.globstar=!0,ye(_+xe()),U({type:"slash",value:"/",output:""});continue}g.output=g.output.slice(0,-E.output.length),E.type="globstar",E.output=j(d),E.value+=_,g.output+=E.output,g.globstar=!0,ye(_);continue}const ne={type:"star",value:_,output:_e};if(d.bash===!0){ne.output=".*?",(E.type==="bos"||E.type==="slash")&&(ne.output=ce+ne.output),U(ne);continue}if(E&&(E.type==="bracket"||E.type==="paren")&&d.regex===!0){ne.output=_,U(ne);continue}(g.index===g.start||E.type==="slash"||E.type==="dot")&&(E.type==="dot"?(g.output+=Y,E.output+=Y):d.dot===!0?(g.output+=H,E.output+=H):(g.output+=ce,E.output+=ce),B()!=="*"&&(g.output+=N,E.output+=N)),U(ne)}for(;g.brackets>0;){if(d.strictBrackets===!0)throw new SyntaxError(c("closing","]"));g.output=t.escapeLast(g.output,"["),$e("brackets")}for(;g.parens>0;){if(d.strictBrackets===!0)throw new SyntaxError(c("closing",")"));g.output=t.escapeLast(g.output,"("),$e("parens")}for(;g.braces>0;){if(d.strictBrackets===!0)throw new SyntaxError(c("closing","}"));g.output=t.escapeLast(g.output,"{"),$e("braces")}if(d.strictSlashes!==!0&&(E.type==="star"||E.type==="bracket")&&U({type:"maybe_slash",value:"",output:`${y}?`}),g.backtrack===!0){g.output="";for(const $ of g.tokens)g.output+=$.output!=null?$.output:$.value,$.suffix&&(g.output+=$.suffix)}return g};return u.fastpaths=(l,h)=>{const d={...h},b=typeof d.maxLength=="number"?Math.min(n,d.maxLength):n,O=l.length;if(O>b)throw new SyntaxError(`Input length: ${O}, exceeds maximum allowed length: ${b}`);l=i[l]||l;const Z=t.isWindows(h),{DOT_LITERAL:w,SLASH_LITERAL:T,ONE_CHAR:D,DOTS_SLASH:p,NO_DOT:S,NO_DOTS:m,NO_DOTS_SLASH:A,STAR:y,START_ANCHOR:N}=e.globChars(Z),x=d.dot?m:S,G=d.dot?A:S,Y=d.capture?"":"?:",H={negated:!1,prefix:""};let C=d.bash===!0?".*?":y;d.capture&&(C=`(${C})`);const q=ce=>ce.noglobstar===!0?C:`(${Y}(?:(?!${N}${ce.dot?p:w}).)*?)`,V=ce=>{switch(ce){case"*":return`${x}${D}${C}`;case".*":return`${w}${D}${C}`;case"*.*":return`${x}${C}${w}${D}${C}`;case"*/*":return`${x}${C}${T}${D}${G}${C}`;case"**":return x+q(d);case"**/*":return`(?:${x}${q(d)}${T})?${G}${D}${C}`;case"**/*.*":return`(?:${x}${q(d)}${T})?${G}${C}${w}${D}${C}`;case"**/.*":return`(?:${x}${q(d)}${T})?${w}${D}${C}`;default:{const Me=/^(.*?)\.(\w+)$/.exec(ce);if(!Me)return;const _e=V(Me[1]);return _e?_e+w+Me[2]:void 0}}},X=t.removePrefix(l,H);let j=V(X);return j&&d.strictSlashes!==!0&&(j+=`${T}?`),j},qr=u,qr}var Jr,Xs;function tg(){if(Xs)return Jr;Xs=1;const e=ue,t=JE(),n=eg(),r=Nn(),o=Ln(),s=a=>a&&typeof a=="object"&&!Array.isArray(a),i=(a,c,u=!1)=>{if(Array.isArray(a)){const T=a.map(p=>i(p,c,u));return p=>{for(const S of T){const m=S(p);if(m)return m}return!1}}const l=s(a)&&a.tokens&&a.input;if(a===""||typeof a!="string"&&!l)throw new TypeError("Expected pattern to be a non-empty string");const h=c||{},d=r.isWindows(c),b=l?i.compileRe(a,c):i.makeRe(a,c,!1,!0),O=b.state;delete b.state;let Z=()=>!1;if(h.ignore){const T={...c,ignore:null,onMatch:null,onResult:null};Z=i(h.ignore,T,u)}const w=(T,D=!1)=>{const{isMatch:p,match:S,output:m}=i.test(T,b,c,{glob:a,posix:d}),A={glob:a,state:O,regex:b,posix:d,input:T,output:m,match:S,isMatch:p};return typeof h.onResult=="function"&&h.onResult(A),p===!1?(A.isMatch=!1,D?A:!1):Z(T)?(typeof h.onIgnore=="function"&&h.onIgnore(A),A.isMatch=!1,D?A:!1):(typeof h.onMatch=="function"&&h.onMatch(A),D?A:!0)};return u&&(w.state=O),w};return i.test=(a,c,u,{glob:l,posix:h}={})=>{if(typeof a!="string")throw new TypeError("Expected input to be a string");if(a==="")return{isMatch:!1,output:""};const d=u||{},b=d.format||(h?r.toPosixSlashes:null);let O=a===l,Z=O&&b?b(a):a;return O===!1&&(Z=b?b(a):a,O=Z===l),(O===!1||d.capture===!0)&&(d.matchBase===!0||d.basename===!0?O=i.matchBase(a,c,u,h):O=c.exec(Z)),{isMatch:!!O,match:O,output:Z}},i.matchBase=(a,c,u,l=r.isWindows(u))=>(c instanceof RegExp?c:i.makeRe(c,u)).test(e.basename(a)),i.isMatch=(a,c,u)=>i(c,u)(a),i.parse=(a,c)=>Array.isArray(a)?a.map(u=>i.parse(u,c)):n(a,{...c,fastpaths:!1}),i.scan=(a,c)=>t(a,c),i.compileRe=(a,c,u=!1,l=!1)=>{if(u===!0)return a.output;const h=c||{},d=h.contains?"":"^",b=h.contains?"":"$";let O=`${d}(?:${a.output})${b}`;a&&a.negated===!0&&(O=`^(?!${O}).*$`);const Z=i.toRegex(O,c);return l===!0&&(Z.state=a),Z},i.makeRe=(a,c={},u=!1,l=!1)=>{if(!a||typeof a!="string")throw new TypeError("Expected a non-empty string");let h={negated:!1,fastpaths:!0};return c.fastpaths!==!1&&(a[0]==="."||a[0]==="*")&&(h.output=n.fastpaths(a,c)),h.output||(h=n(a,c)),i.compileRe(h,c,u,l)},i.toRegex=(a,c)=>{try{const u=c||{};return new RegExp(a,u.flags||(u.nocase?"i":""))}catch(u){if(c&&c.debug===!0)throw u;return/$^/}},i.constants=o,Jr=i,Jr}var eo,Qs;function ng(){return Qs||(Qs=1,eo=tg()),eo}var to,qs;function rg(){if(qs)return to;qs=1;const e=To,t=qE(),n=ng(),r=Nn(),o=a=>a===""||a==="./",s=a=>{const c=a.indexOf("{");return c>-1&&a.indexOf("}",c)>-1},i=(a,c,u)=>{c=[].concat(c),a=[].concat(a);let l=new Set,h=new Set,d=new Set,b=0,O=T=>{d.add(T.output),u&&u.onResult&&u.onResult(T)};for(let T=0;T<c.length;T++){let D=n(String(c[T]),{...u,onResult:O},!0),p=D.state.negated||D.state.negatedExtglob;p&&b++;for(let S of a){let m=D(S,!0);(p?!m.isMatch:m.isMatch)&&(p?l.add(m.output):(l.delete(m.output),h.add(m.output)))}}let w=(b===c.length?[...d]:[...h]).filter(T=>!l.has(T));if(u&&w.length===0){if(u.failglob===!0)throw new Error(`No matches found for "${c.join(", ")}"`);if(u.nonull===!0||u.nullglob===!0)return u.unescape?c.map(T=>T.replace(/\\/g,"")):c}return w};return i.match=i,i.matcher=(a,c)=>n(a,c),i.isMatch=(a,c,u)=>n(c,u)(a),i.any=i.isMatch,i.not=(a,c,u={})=>{c=[].concat(c).map(String);let l=new Set,h=[],d=O=>{u.onResult&&u.onResult(O),h.push(O.output)},b=new Set(i(a,c,{...u,onResult:d}));for(let O of h)b.has(O)||l.add(O);return[...l]},i.contains=(a,c,u)=>{if(typeof a!="string")throw new TypeError(`Expected a string: "${e.inspect(a)}"`);if(Array.isArray(c))return c.some(l=>i.contains(a,l,u));if(typeof c=="string"){if(o(a)||o(c))return!1;if(a.includes(c)||a.startsWith("./")&&a.slice(2).includes(c))return!0}return i.isMatch(a,c,{...u,contains:!0})},i.matchKeys=(a,c,u)=>{if(!r.isObject(a))throw new TypeError("Expected the first argument to be an object");let l=i(Object.keys(a),c,u),h={};for(let d of l)h[d]=a[d];return h},i.some=(a,c,u)=>{let l=[].concat(a);for(let h of[].concat(c)){let d=n(String(h),u);if(l.some(b=>d(b)))return!0}return!1},i.every=(a,c,u)=>{let l=[].concat(a);for(let h of[].concat(c)){let d=n(String(h),u);if(!l.every(b=>d(b)))return!1}return!0},i.all=(a,c,u)=>{if(typeof a!="string")throw new TypeError(`Expected a string: "${e.inspect(a)}"`);return[].concat(c).every(l=>n(l,u)(a))},i.capture=(a,c,u)=>{let l=r.isWindows(u),d=n.makeRe(String(a),{...u,capture:!0}).exec(l?r.toPosixSlashes(c):c);if(d)return d.slice(1).map(b=>b===void 0?"":b)},i.makeRe=(...a)=>n.makeRe(...a),i.scan=(...a)=>n.scan(...a),i.parse=(a,c)=>{let u=[];for(let l of[].concat(a||[]))for(let h of t(String(l),c))u.push(n.parse(h,c));return u},i.braces=(a,c)=>{if(typeof a!="string")throw new TypeError("Expected a string");return c&&c.nobrace===!0||!s(a)?[a]:t(a,c)},i.braceExpand=(a,c)=>{if(typeof a!="string")throw new TypeError("Expected a string");return i.braces(a,{...c,expand:!0})},i.hasBraces=s,to=i,to}var og=rg();const ig=ZE(og);function Js(e,t,n){tn.statSync(e).isDirectory()?(tn.mkdirSync(t,{recursive:!0}),tn.readdirSync(e).forEach(r=>{const o=nt.resolve(e,r),s=nt.resolve(t,r);Js(o,s,n)})):ig.isMatch(e,n)||tn.copyFileSync(e,t)}function at(e,t,n,r,o=[]){const s=nt.join(e,r?.[n]??n);Js(nt.join(t,n),s,o)}function sg(e){return{renameFiles:{"example-template":`${e}`},targetPath:e,sourcePath:"template/page-templates",onTemplateCreated:()=>L.info(`Template [${e}] with pages structure named has been created`)}}function et(e){return Ne.resolve(Ia(import.meta.url),"../..",e)}function ag(){const e=et("package.json");return e!==""?JSON.parse(fe.readFileSync(e,"utf8")):{}}async function cg(e){try{const t=e,n=Te.cwd(),r=Ne.join(n,t),o=["templates","headers","preview","footers","reference","page-templates","layouts","collections","blank"],s={_gitignore:".gitignore"};fe.existsSync(r)?(L.error(`App with the name: ${e} already exists. If you'd like to override it, delete previous version first`),Te.exit(1)):fe.mkdirSync(r);const i=et("template");fe.readdirSync(i).filter(l=>l!=="package.json").filter(l=>!o.includes(l)).forEach(async l=>at(r,i,l,s));const a=JSON.parse(fe.readFileSync(Ne.join(i,"package.json"),"utf-8"));a.name=e;const c=ag();c.version&&(a.dependencies["@lightspeed/crane-api"]=c.dependencies["@lightspeed/crane-api"]),c.dependencies["@lightspeed/eslint-config-crane"]&&(a.dependencies["@lightspeed/eslint-config-crane"]=c.dependencies["@lightspeed/eslint-config-crane"]);const u=Ne.join(r,"package.json");fe.writeFileSync(u,`${JSON.stringify(a,null,2)}
|
|
56
|
+
`),L.info(`App ${e} created`)}catch(t){L.error(`Error while creating app: ${t.message}`),Te.exit(1)}}function no(e,t,n,r){try{const o=Te.cwd(),s=ue.join(o,t);re.existsSync(s)||re.mkdirSync(s);const i=ue.join(o,t,n);re.existsSync(i)?(L.error(`${r} with the name: ${n} already exists. If you'd like to override it, delete previous version first`),Te.exit(1)):re.mkdirSync(i);const a=et(e);re.readdirSync(a).forEach(async c=>at(i,a,c)),L.info(`${r} ${n} created`)}catch(o){L.error(`Error while creating ${r}: ${o.message}`),Te.exit(1)}}function ro(e){const t=Te.cwd(),n=et(`template/${e}`),r=ue.join(t,e);re.existsSync(r)||(re.mkdirSync(r),re.readdirSync(n).forEach(async o=>at(r,n,o)))}async function ug(e,t,n,r){if(!re.existsSync(n)){re.copyFileSync(t,n);return}const o=re.readFileSync(t),s=re.readFileSync(n);o.equals(s)||(r?(await zt({type:"select",name:"value",message:`File "${e.name}" exists but differs from template. What would you like to do?`,choices:[{title:"Keep existing file",value:"keep"},{title:"Replace with template version",value:"replace"}],initial:0})).value==="replace"?(re.copyFileSync(t,n),L.info(`Replaced "${e.name}" with template version.`)):L.info(`Kept existing "${e.name}".`):L.warn(`File "${e.name}" exists but differs from template. File will be skipped, this may lead to issues.`))}async function Dn(e,t,n=!1){async function r(s,i,a){const c=ue.join(i,s.name),u=ue.join(a,s.name);s.isDirectory()?await Dn(c,u,n):await ug(s,c,u,n)}const o=re.readdirSync(e,{withFileTypes:!0});re.existsSync(t)||re.mkdirSync(t,{recursive:!0}),await o.reduce(async(s,i)=>(await s,r(i,e,t)),Promise.resolve())}async function oo(e=!1){try{const t=Te.cwd(),n=ue.join(t,"shared"),r=et("template/shared");if(!re.existsSync(r))return;await Dn(r,n,e)}catch(t){L.error(`Error while processing shared folder: ${t.message}`),Te.exit(1)}}async function lg(e,t){await oo(),no(`${`template${t?"/blank":""}`}/sections/${`${t?"blank-section":"example-section"}`}`,"sections",e,"Section")}function pg(e){return{renameFiles:{"example-collection":`${e}`},targetPath:e,sourcePath:"template/collections",onCollectionCreated:()=>L.info(`Collection [${e}] has been created`)}}async function dg(e){const{targetPath:t,renameFiles:n,sourcePath:r,onCollectionCreated:o}=pg(e);try{const s=Te.cwd(),i=Ne.join(s,"collections"),a=et(r),c=fe.readdirSync(a);fe.existsSync(i)?fe.existsSync(Ne.join(i,t))&&(L.error(`Collection with the name: ${e} already exists. If you'd like to override it, delete previous version first`),Te.exit(1)):fe.mkdirSync(i),c.forEach(u=>at(i,a,u,n)),o()}catch(s){L.error(`Error while creating collection: ${s.message}`),Te.exit(1)}}async function fg(e){await oo(),no("template/footers/example-footer","footers",e,"Footer")}async function hg(e){await oo(),no("template/headers/example-header","headers",e,"Header")}async function mg(e,t){try{const n=Te.cwd(),r=Ne.join(n,"templates"),o=et("template/page-templates/example-template/pages");fe.existsSync(Ne.join(r,e))||(L.error(`Template with the name: [${e}] doesn't exists. Please create a template first.`),Te.exit(1)),fe.existsSync(Ne.join(r,e,"pages",`${t}.ts`))&&(L.error(`Page with the name: [${t}.ts] already exists. If you'd like to override it, delete previous version first`),Te.exit(1));const s=fe.readFileSync(Ne.join(o,"custom.ts"),"utf-8").replace(/title\s*:\s*'Custom Page'/,`title: '${Ya(t)}'`),i=Ne.join(r,e,"pages",`${t}.ts`);fe.writeFileSync(i,s),L.info(`Page [${t}.ts] created for template ${e}`)}catch(n){L.error(`Error while creating page: ${n.message}`),Te.exit(1)}}async function Eg(){try{const e=Te.cwd(),t=et("template/reference"),n=fe.readdirSync(t);let r=!1;for(const o of n){const s=Ne.join(t,o),i=Ne.join(e,o);fe.existsSync(i)||fe.mkdirSync(i,{recursive:!0});const a=fe.readdirSync(s),c=fe.readdirSync(i);if(o==="shared"){a.forEach(u=>{at(i,s,u)});continue}for(const u of a){if(u==="assets"){at(i,s,u);continue}if(c.includes(u)){const{name:l}=await zt({type:"text",name:"name",message:`The "${u}" already exists in ${o} directory: provide a new name to keep both or press Esc to skip this one.`});l?(at(i,s,u,{[u]:l}),r=!0):L.info(`Skipped: ${u}`)}else at(i,s,u)}}L.info("Reference templates have been added to the app"),r&&L.warn("Some files or folders were renamed to avoid conflicts. Template files may need to be updated to reflect these changes.")}catch(e){L.error(`Error while creating template descriptors: ${e.message}`),Te.exit(1)}}const gg=["**/example-template/pages/custom.ts"];async function _g(e){const{targetPath:t,renameFiles:n,sourcePath:r,onTemplateCreated:o}=sg(e);try{const s=Te.cwd(),i=Ne.join(s,"templates"),a=et(r),c=fe.readdirSync(a);fe.existsSync(i)?fe.existsSync(Ne.join(i,t))&&(L.error(`Template with the name: ${e} already exists. If you'd like to override it, delete previous version first`),Te.exit(1)):fe.mkdirSync(i),c.forEach(u=>at(i,a,u,n,gg)),ro("headers"),ro("footers"),ro("layouts"),o()}catch(s){L.error(`Error while creating template descriptors: ${s.message}`),Te.exit(1)}}function yg(){process.env.CRANE_DEBUG_ENABLED="true"}function Sg(){return process.env.CRANE_DEBUG_ENABLED==="true"}function Tg(e,...t){Sg()&&console.debug(ua(`[DEBUG] ${e}`),...t)}function Rg(e){const t=M(process.cwd(),`${Oe}/${e}`);if(Ce(t))return ve.SECTION;const n=M(process.cwd(),`${Gt}/${e}`);if(Ce(n))return ve.HEADER;const r=M(process.cwd(),`${Ht}/${e}`);return Ce(r)?ve.FOOTER:ve.SECTION}function wg(){return{name:"app-block-api",configureServer(e){e.middlewares.use(async(t,n,r)=>{e.moduleGraph.invalidateAll();const o=new Ea(t.url||"",`http://${t.headers.host}`);if(o.pathname==="/api/v1/block-config"&&t.method==="GET"){const s=o.searchParams.get("section"),i=o.searchParams.get("type");if(!s){n.statusCode=400,n.setHeader("Content-Type","application/json"),n.end(JSON.stringify({error:"Missing blockId parameter"}));return}const a=i&&ve[i]||Rg(s);try{const c=await vn(s,a);n.statusCode=200,n.setHeader("Content-Type","application/json"),n.end(JSON.stringify(c))}catch(c){n.statusCode=500,n.setHeader("Content-Type","application/json"),n.end(JSON.stringify({error:c.message}))}return}r()})}}}let yt=null;function Cg(){yt&&yt.clients.forEach(e=>{e.readyState===ba.OPEN&&e.send(JSON.stringify({type:"full-reload"}))})}async function vg(e,t){const n=M(`${e}/ssr-server.ts`),r=M(t);await rt({build:{lib:{entry:n,formats:["es"],fileName:()=>"ssr-server.mjs"},outDir:r,emptyOutDir:!1,minify:!1,rollupOptions:{external:["http","fs","@swc/core","module-from-string","linkedom"],output:{entryFileNames:"ssr-server.mjs"}},target:"esnext"}})}async function Ag(e,t){const n=M(`${e}/shared/preview.ts`),r=M(`${e}/shared/utils.ts`),o=M(`${e}/shared/api-routes.ts`),s=M(t);await rt({build:{lib:{entry:n,formats:["es"],fileName:()=>"preview.js"},outDir:s,emptyOutDir:!1,minify:!1,rollupOptions:{output:{entryFileNames:"preview.js"}},target:"esnext"}}),await rt({build:{lib:{entry:r,formats:["es"],fileName:()=>"utils.js"},outDir:s,emptyOutDir:!1,minify:!1,rollupOptions:{output:{entryFileNames:"utils.js"}},target:"esnext"}}),await rt({build:{lib:{entry:o,formats:["es"],fileName:()=>"api-routes.js"},outDir:s,emptyOutDir:!1,minify:!1,rollupOptions:{external:["path","fs","http","https","url","stream","util","events","buffer"],output:{entryFileNames:"api-routes.js"}},target:"esnext"}})}async function Ig(){const e="preview",t=`${e}/shared`,n="vite.config.js",r=`${e}/sections`,o=`${r}/preview.html`;[e,r].forEach(i=>{re.existsSync(i)||re.mkdirSync(i,{recursive:!0})});const s=et("template/preview");re.copyFileSync(`${s}/${n}`,`${e}/${n}`),await vg(s,e),re.copyFileSync(`${s}/sections/preview.html`,o),re.existsSync(t)||re.mkdirSync(t),await Ag(s,t)}function Og(e){const t=e.replace(/\\/g,"/").match(/(?:sections|headers|footers)\/([^/]+)/);return t?t[1]:null}function bg(e){const t=e.replace(/\\/g,"/");return t.includes("shared")&&!t.includes("sections")&&!t.includes("headers")&&!t.includes("footers")}async function $g(e){const t=(await ks()).find(r=>r.name===e);if(!t){console.warn(`Block ${e} not found, falling back to full build`),await $n(!0);return}const n=Ns(t);await Ls([n]),console.log(`Block ${e} rebuilt successfully`)}var Lg=(e=>(e.FULL="full",e.INCREMENTAL="incremental",e))(Lg||{});function Ng(){return{timeout:null,inProgress:!1,pendingBuild:null}}function Dg(e,t){const n=async r=>{e.inProgress=!0;try{r.type==="incremental"&&r.blockName?await $g(r.blockName):await $n(!0),t.ws.send({type:"full-reload",path:"*"}),Cg()}catch(o){console.error("Build error:",o)}finally{if(e.inProgress=!1,e.pendingBuild){const o=e.pendingBuild;e.pendingBuild=null,setTimeout(()=>n(o),0)}}};return async r=>{if(e.inProgress){r.type==="full"||e.pendingBuild?.type==="full"?e.pendingBuild={type:"full"}:e.pendingBuild=r;return}await n(r)}}function kg(e){const t=e.replace(/\\/g,"/"),n=t.match(/sections\/([^/]+)/),r=t.match(/headers\/([^/]+)/),o=t.match(/footers\/([^/]+)/),s=t.match(/shared\//);return!!(n||r||o||s)}function xg(e,t){return async n=>{if(!kg(n))return;e.timeout&&clearTimeout(e.timeout);const r=Og(n),o=bg(n);e.timeout=setTimeout(async()=>{o?await t({type:"full"}):r&&await t({type:"incremental",blockName:r})},1e3)}}function Pg(e,t){const n=Ng(),r=Dg(n,e),o=xg(n,r);e.watcher.add(t),e.watcher.on("add",o),e.watcher.on("change",o),e.watcher.on("unlink",o)}async function Mg(){const e=ue.resolve(process.cwd(),"preview/ssr-server.mjs");if(!re.existsSync(e))throw console.warn(`\u26A0\uFE0F SSR server not found at ${e}`),new Error(`SSR server not found at ${e}`);process.env.PREVIEW_SSR_PORT="0";const t=await import(e),{server:n,port:r}=await t.startServer();return{server:n,port:r}}function Ug(){yt=new Oa({port:0}),yt.on("listening",()=>{const e=yt?.address();if(e&&typeof e=="object"){const t=e.port;process.env.CRANE_WEBSOCKET_PORT=String(t)}})}async function Fg(){const e=ue.resolve(process.cwd(),"preview/vite.config.js"),t=ue.resolve(process.cwd(),"sections/**/*"),n=ue.resolve(process.cwd(),"headers/**/*"),r=ue.resolve(process.cwd(),"footers/**/*"),o=ue.resolve(process.cwd(),"shared/**/*"),s=await pa({configFile:e,root:process.cwd(),plugins:[wg()]});return await s.listen(),Pg(s,[t,n,r,o]),s}async function zg(){await $n(),await Ig(),console.log(`
|
|
57
57
|
\u{1F4E6} Starting preview servers...
|
|
58
|
-
`);let e=null,t=null;if(process.platform!=="win32"){
|
|
58
|
+
`);let e=null,t=null;if(process.platform!=="win32"){Tg("Starting SSR server");const o=await Mg();e=o.server,t=o.port,process.env.PREVIEW_SSR_PORT=String(t),Ug()}const n=await Fg(),r=()=>{e&&e.close(),yt&&yt.close(),n.close(),process.exit(0)};return process.on("SIGINT",r),process.on("SIGTERM",r),n}async function Gg(e,t,n){const r=t.split("_").pop()??t,o=dt(e,"sections",r),s=dt(e,r);let i=null;if(Ce(o)&&Ft(o).isDirectory()?i=o:Ce(s)&&Ft(s).isDirectory()&&(i=s),i){const a=dt(n,r);Ce(a)&&((await zt({type:"confirm",name:"value",message:`Section directory [sections/${r}/] already exists. Do you want to overwrite it?`,initial:!1})).value||(L.error("Operation cancelled. Section directory already exists."),ae.exit(1)),L.info(`Deleting existing section directory [sections/${r}/]...`),co(a,{recursive:!0,force:!0})),L.info(`Copying section [sections/${r}/]...`),await Dn(i,a,!1)}else L.error(`Section directory [sections/${r}/] not found in source code.`),ae.exit(1)}async function Hg(e,t,n){const r=ra(dt($a.tmpdir(),"crane-source-"));new fo(Buffer.from(e)).extractAllTo(r,!0);try{const o=ae.cwd(),s=dt(o,"sections");Ce(s)||oa(s,{recursive:!0}),await Gg(r,t,s);const i=dt(r,"shared");if(Ce(i)){const a=dt(o,"shared");L.info("Copying shared folder..."),await Dn(i,a,!0)}L.info(`Source code for section [${n}] has been copied.`)}finally{co(r,{recursive:!0,force:!0})}}async function ea(e){const t=e??Hn,n=Gn.create({baseURL:t}),r=await an();return[...(await n.get("/api/v1/custom-apps/manifests/collections/sections",{params:{appClientId:r.appClientId},headers:{Authorization:`Bearer ${r.appSecretKey}`}})).data.sections]}async function jg(e,t){const n=(await ea(t)).find(r=>r.sectionId===e);return n||(L.error(`Section [${e}] not found in collection sections list.`),ae.exit(1)),n}async function Bg(e,t,n){const r=n??Hn,o=Gn.create({baseURL:r}),s=await an();L.info(`Downloading source code for section [${e}]...`);const i=await o.get(`/api/v1/custom-apps/manifests/collections/sections/${e}/source-code`,{params:{appClientId:s.appClientId},headers:{Authorization:`Bearer ${s.appSecretKey}`},responseType:"arraybuffer"});await Hg(i.data,t,e)}async function Zg(e){try{L.info("Fetching sections list...");const t=await ea(e);L.info("Sections list retrieved successfully:");const n=t.map(r=>({sectionId:r.sectionId,openSource:r.openSource,type:r.type}));console.log(JSON.stringify({sections:n},null,2))}catch(t){L.error(ht(t,"Error while fetching sections list")),ae.exit(1)}}async function Vg(e,t){try{const n=await jg(e,t);n.openSource||(L.error(`Section [${e}] is not open source. Only open source sections can be pulled.`),ae.exit(1)),await Bg(e,n.sectionId,t)}catch(n){L.error(ht(n,"Error while pulling section")),ae.exit(1)}}async function Wg(e,t){const{list:n,section:r}=e;if(n){await Zg(t);return}if(r){await Vg(r,t);return}L.error("Please specify an action. Use --list to fetch sections list or --section to pull a section."),ae.exit(1)}const Kg={deploy:["url"],pull:["url"],init:[""],build:["generatePreview"]},Yg=["preview","build","deploy","pull"];function Xg(e,t){return Yg.includes(e.rawName)?!1:e.options.length!==0&&Object.keys(t).length===1}function Qg(e){return e.includes("-h")||e.includes("--help")}function qg(e,t){return Object.keys(t).some(n=>n!=="--"&&!e.hasOption(n)&&!Kg[e.rawName]?.includes(n))}function Jg(e){return e.length!==0}function e_(e,t,n){return e.matchedCommand!==void 0&&(Xg(e.matchedCommand,n)||Qg(e.rawArgs)||qg(e.matchedCommand,e.options)||Jg(t))}function t_(e,t,n){e.matchedCommand&&!e_(e,t,n)?e.runMatchedCommand():e.outputHelp()}function kn(e){if(Ka(e))return console.log("Please specify a name for your resource."),!1;const{isValid:t,errorMessage:n}=Wa(e);return n&&console.log(n),t}async function io(e){const t=await zt({type:"text",name:"name",message:`Please specify a name for your ${e}:`});if(t.name!==void 0){const n=ue.basename(t.name);return kn(n)?n:io(e)}}async function n_(e,t,n,r){const o=await io(t);return o===void 0?(console.log(`You can use ${n} to directly specify the name of the ${t}.`),e.outputHelp()):r(o)}async function Mt(e,t,n,r,o){if(o!==void 0)if(!kn(o))await n_(e,t,n,r);else{const s=ue.basename(o.toString());await r(s)}}function r_(){re.existsSync("./templates")||(L.error(`No template found. Please create a template first using ${Ze("init --template <name>")}`),process.exit(1));const e=re.readdirSync("./templates",{withFileTypes:!0}).filter(t=>t.isDirectory()).map(t=>t.name).filter(t=>t!=="assets");return e.length===0&&(L.error(`No template found. Please create a template first using ${Ze("init --template <name>")}`),process.exit(1)),e}async function o_(e){const t=r_();if(typeof e=="string"||typeof e=="number"){if(t.includes(e.toString()))return e.toString();kn(e)?L.warn(`Template [${e}] doesn't exist`):L.error(`[${e}] is an invalid template name.`)}const n=await zt({type:"select",name:"choice",message:"Please choose a template:",choices:t.map(r=>({title:r,value:r}))});return n.choice||(L.error("No template selected"),process.exit(1)),n.choice}async function i_(e,t){if(typeof t=="string"||typeof t=="number"){if(kn(t))return t.toString();L.error(`${t} is invalid name.`)}return io(e)}async function s_(e,t,n){const r=await o_(t),o=await i_("page",n);if(o===void 0)return console.log(`You can use ${Ze("init --page <name>")} to directly specify the name of the page.`),e.outputHelp();await mg(r,o)}async function a_(e,t){try{const{app:n,section:r,header:o,footer:s,template:i,referenceTemplate:a,page:c,blank:u,collection:l}=e;await Mt(t,"app",Ze("init --app <name>"),cg,n),await Mt(t,"section",Ze(`init --section <name>${u?" --blank":""}`),h=>lg(h,u===!0),r),await Mt(t,"header",Ze("init --header <name>"),hg,o),await Mt(t,"footer",Ze("init --footer <name>"),fg,s),c===void 0?await Mt(t,"template",Ze("init --template <name>"),_g,i):await s_(t,i,c),await Mt(t,"collection",Ze("init --collection <name>"),dg,l),a&&await Eg()}catch(n){L.error(`Error while executing init operation: ${n.message}`),process.exit(1)}}function c_(){try{const e=sa("crane");e.option("-h, --help","Display this message"),e.command("init","Initialize a new resource in the form of a directory.").option("--app [name]","Creates an app folder inside your current directory.").option("--section [name]","Creates the files necessary for one custom section with the given name, this can be repeated for each section.").option("--header [name]","Creates the files necessary for one custom header with the given name, this can be repeated for each header.").option("--footer [name]","Creates the files necessary for one custom footer with the given name, this can be repeated for each footer.").option("--template [name]","Creates the directory and files necessary to build a custom template inside your app folder.").option("--collection [name]","Creates a collection folder containing custom sections, headers, and footers.").option("--reference-template","Adds files necessary for the reference templates inside your app folder. ").option("--page [name]","Create the file necessary for one custom page with the given name, this can be repeated for each custom page.").option("--blank","Creates an empty resource with minimal files (use with section).").allowUnknownOptions().action(async n=>a_(n,e)),e.command("build","Builds your resource code").option("-v, --verbose","Show detailed build output").allowUnknownOptions().action(n=>$n(!1,n.verbose===!0)),e.command("preview","Runs a local server to preview resources").option("--verbose","Show debug logs").allowUnknownOptions().action(async n=>{n.verbose&&yg(),await zg()}),e.command("deploy","Deploys your resource code").allowUnknownOptions().action(()=>ym(e.options.url)),e.command("pull","Pulls resources from the API").option("--list","Fetches the list of sections from the API").option("--section [name]","Downloads source code for an open source section").allowUnknownOptions().action(async n=>Wg(n,e.options.url)),e.version(La),e.usage("<action> <resource>");const t=e.parse(process.argv,{run:!1});t_(e,t.args,t.options)}catch(e){L.error(`Error while parsing input: ${e.message}`),process.exit(1)}}export{c_ as run};
|