builder.io 1.1.41 → 1.1.42

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/core/index.mjs CHANGED
@@ -1,14 +1,14 @@
1
- var ni=Object.create;var Kn=Object.defineProperty;var ri=Object.getOwnPropertyDescriptor;var oi=Object.getOwnPropertyNames;var ii=Object.getPrototypeOf,ai=Object.prototype.hasOwnProperty;var ve=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var si=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of oi(t))!ai.call(e,o)&&o!==r&&Kn(e,o,{get:()=>t[o],enumerable:!(n=ri(t,o))||n.enumerable});return e};var Mn=(e,t,r)=>(r=e!=null?ni(ii(e)):{},si(t||!e||!e.__esModule?Kn(r,"default",{value:e,enumerable:!0}):r,e));var qn=ve((vu,zn)=>{"use strict";zn.exports=function(){if(process.env.npm_config_user_agent)return pi(process.env.npm_config_user_agent)};function pi(e){let t=e.split(" ")[0],r=t.lastIndexOf("/"),n=t.substring(0,r);return{name:n==="npminstall"?"cnpm":n,version:t.substring(r+1)}}});var yn=ve(zt=>{"use strict";Object.defineProperty(zt,"__esModule",{value:!0});function Po(e){return Object.prototype.toString.call(e)}zt.getType=Po;function Ms(e){throw new TypeError("unsupported data type: "+Po(e))}zt.throwUnknownDataType=Ms});var In=ve(Oe=>{"use strict";Object.defineProperty(Oe,"__esModule",{value:!0});var Be="";for(let e=0;e<10;e++){let t=String.fromCharCode(48+e);Be+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(65+e);Be+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(97+e);Be+=t}var st=Be.length,Tn={};for(let e=0;e<st;e++){let t=Be[e];Tn[t]=e}function bn(e){let t=0,r=1;for(let n=e.length-1;n>=0;n--){let o=e[n],i=Tn[o];i*=r,t+=i,r*=st}return t}Oe.s_to_int=bn;function yo(e){let t=BigInt(0),r=BigInt(1),n=BigInt(st);for(let o=e.length-1;o>=0;o--){let i=e[o],a=BigInt(Tn[i]);a*=r,t+=a,r*=n}return t}Oe.s_to_big_int=yo;function vn(e){if(e===0)return Be[0];let t=[];for(;e!==0;){let r=e%st,n=Be[r];t.push(n),e-=r,e/=st}return t.reverse().join("")}Oe.int_to_s=vn;function wo(e){let t=BigInt(0),r=BigInt(st);if(e===t)return Be[0];let n=[];for(;e!==t;){let o=e%r,i=Be[Number(o)];n.push(i),e-=o,e/=r}return n.reverse().join("")}Oe.big_int_to_s=wo;function Jt(e){return e.split("").reverse().join("")}function To(e){if(e<0)return"-"+To(-e);let[t,r]=e.toString().split(".");if(!r)return vn(e);let n;r&&([r,n]=r.split("e")),t=qt(t),r=Jt(r),r=qt(r);let o=t+"."+r;if(n){switch(o+=".",n[0]){case"+":n=n.slice(1);break;case"-":o+="-",n=n.slice(1);break}n=Jt(n),n=qt(n),o+=n}return o}Oe.num_to_s=To;function qt(e){let t=+e;return t.toString()===e?vn(t):":"+wo(BigInt(e))}Oe.int_str_to_s=qt;function wn(e){return e[0]===":"?yo(e.substring(1)).toString():bn(e).toString()}function bo(e){if(e[0]==="-")return-bo(e.substr(1));let[t,r,n]=e.split(".");if(!r)return bn(t);t=wn(t),r=wn(r),r=Jt(r);let o=t+"."+r;if(n){o+="e";let i=!1;n[0]==="-"&&(i=!0,n=n.slice(1)),n=wn(n),n=Jt(n),o+=i?-n:+n}return+o}Oe.s_to_num=bo});var Nn=ve(ke=>{"use strict";Object.defineProperty(ke,"__esModule",{value:!0});var Rn=In();function Us(e){return"n|"+Rn.num_to_s(e)}ke.encodeNum=Us;function zs(e){return e=e.replace("n|",""),Rn.s_to_num(e)}ke.decodeNum=zs;function qs(e){return typeof e=="number"?e:Rn.s_to_int(e)}ke.decodeKey=qs;function Js(e){return e?"b|T":"b|F"}ke.encodeBool=Js;function Qs(e){switch(e){case"b|T":return!0;case"b|F":return!1}return!!e}ke.decodeBool=Qs;function Ws(e){switch(e[0]+e[1]){case"b|":case"o|":case"n|":case"a|":case"s|":e="s|"+e}return e}ke.encodeStr=Ws;function Ys(e){return e[0]+e[1]==="s|"?e.substr(2):e}ke.decodeStr=Ys});var vo=ve(Bn=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.config={sort_key:!1}});var kn=ve(He=>{"use strict";Object.defineProperty(He,"__esModule",{value:!0});var Gs=vo(),Hs=yn(),On=Nn(),Xs=In();function Zs(e){return e.store.toArray()}He.memToValues=Zs;function Io(){let e=[];return{forEach(t){for(let r=0;r<e.length;r++)if(t(e[r])==="break")return},add(t){e.push(t)},toArray(){return e}}}He.makeInMemoryStore=Io;function Ro(){let e=Object.create(null),t=Object.create(null);return{getValue(r){return e[r]},getSchema(r){return t[r]},forEachValue(r){for(let[n,o]of Object.entries(e))if(r(n,o)==="break")return},forEachSchema(r){for(let[n,o]of Object.entries(t))if(r(n,o)==="break")return},setValue(r,n){e[r]=n},setSchema(r,n){t[r]=n},hasValue(r){return r in e},hasSchema(r){return r in t}}}He.makeInMemoryCache=Ro;function eu(){return{store:Io(),cache:Ro(),keyCount:0}}He.makeInMemoryMemory=eu;function Ge(e,t){if(e.cache.hasValue(t))return e.cache.getValue(t);let r=e.keyCount++,n=Xs.num_to_s(r);return e.store.add(t),e.cache.setValue(t,n),n}function tu(e,t){Gs.config.sort_key&&t.sort();let r=t.join(",");if(e.cache.hasSchema(r))return e.cache.getSchema(r);let n=yt(e,t,void 0);return e.cache.setSchema(r,n),n}function yt(e,t,r){if(t===null)return"";switch(typeof t){case"undefined":if(Array.isArray(r))return yt(e,null,r);break;case"object":if(t===null)return Ge(e,null);if(Array.isArray(t)){let n="a";for(let o=0;o<t.length;o++){let i=t[o],a=i===null?"_":yt(e,i,t);n+="|"+a}return n==="a"&&(n="a|"),Ge(e,n)}else{let n=Object.keys(t);if(n.length===0)return Ge(e,"o|");let o="o",i=tu(e,n);o+="|"+i;for(let a of n){let s=t[a],u=yt(e,s,t);o+="|"+u}return Ge(e,o)}case"boolean":return Ge(e,On.encodeBool(t));case"number":return Ge(e,On.encodeNum(t));case"string":return Ge(e,On.encodeStr(t))}return Hs.throwUnknownDataType(t)}He.addValue=yt});var _n=ve(Tt=>{"use strict";Object.defineProperty(Tt,"__esModule",{value:!0});var nu=yn(),Qt=Nn(),Ln=kn();function ru(e){let t=Ln.makeInMemoryMemory(),r=Ln.addValue(t,e,void 0);return[Ln.memToValues(t),r]}Tt.compress=ru;function ou(e,t){if(t==="o|")return{};let r={},n=t.split("|"),o=n[1],i=wt(e,o),a=n.length;a-2===1&&!Array.isArray(i)&&(i=[i]);for(let s=2;s<a;s++){let u=i[s-2],p=n[s];p=wt(e,p),r[u]=p}return r}function iu(e,t){if(t==="a|")return[];let r=t.split("|"),n=r.length-1,o=new Array(n);for(let i=0;i<n;i++){let a=r[i+1];a=wt(e,a),o[i]=a}return o}function wt(e,t){if(t===""||t==="_")return null;let r=Qt.decodeKey(t),n=e[r];if(n===null)return n;switch(typeof n){case"undefined":return n;case"number":return n;case"string":switch(n[0]+n[1]){case"b|":return Qt.decodeBool(n);case"o|":return ou(e,n);case"n|":return Qt.decodeNum(n);case"a|":return iu(e,n);default:return Qt.decodeStr(n)}}return nu.throwUnknownDataType(n)}Tt.decode=wt;function au(e){let[t,r]=e;return wt(t,r)}Tt.decompress=au});var Bo=ve(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});function su(e){for(let t in e)e[t]===void 0&&delete e[t]}Wt.trimUndefined=su;function uu(e){No(e,new Set)}Wt.trimUndefinedRecursively=uu;function No(e,t){t.add(e);for(let r in e)if(e[r]===void 0)delete e[r];else{let n=e[r];n&&typeof n=="object"&&!t.has(n)&&No(n,t)}}});var Lo=ve(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});var Oo=_n();Me.compress=Oo.compress;Me.decompress=Oo.decompress;var pu=_n();Me.decode=pu.decode;var lu=kn();Me.addValue=lu.addValue;var ko=Bo();Me.trimUndefined=ko.trimUndefined;Me.trimUndefinedRecursively=ko.trimUndefinedRecursively});function re(e){let t=e.join(e.getAppRootDir(),"tsconfig.json");return e.exists(t)}var ui=["node_modules","dist","build","public"];async function ae(e,t){async function r(o,i){if(i>10)return;let a=await e.readdir(o);for(let s of a){if(ui.includes(s))continue;let u=e.join(o,s),p=await e.stat(u);if(p){if(p.isFile()&&s.startsWith("builder-registry."))return u;if(p.isDirectory()){let m=await r(u,i+1);if(m)return m}}}}let n=await r(e.getAppRootDir(),0);if(!n){let i=`builder-registry.${await re(e)?"ts":"js"}`;return e.join(t,i)}return n}async function bt(e,t){let r=e.resolve("/");for(let n=0;n<20;n++){let o=e.join(t,"package.json"),i=await e.readFile(o);if(i)return JSON.parse(i);if(t===r)break;t=e.dirname(t)}return null}async function Un(e,t){for(let r=0;r<20;r++){let n=e.dirname(t),o=e.join(n,"node_modules");if(await e.exists(o))return o;if(t===e.getAppRootDir())break;t=e.dirname(t)}return e.join(e.getAppRootDir(),"node_modules")}async function ut(e,t,r){let n=await e.readdir(t);return n.includes(r)?e.join(t,r):(await Promise.all(n.map(async i=>{if(i.startsWith(".")||i==="node_modules")return;let a=e.join(t,i);if((await e.stat(a)).isDirectory()){let u=await ut(e,a,r);if(u)return u}}))).find(i=>typeof i=="string")}var Qn=Mn(qn(),1);function B(e,t,r){t=ce(t),r=ce(r),t=e.dirname(t);let n=e.basename(r,e.extname(r));r=e.dirname(r);let o;return n==="index"?o=e.relative(t,r):o=e.relative(t,e.join(r,n)),o=ce(e.normalize(o)),o.startsWith(".")||(o="./"+o),o}function ce(e){return e.startsWith("\\\\?\\")?e:e.replace(/\\/g,"/")}function ze(e,t){let r=e.extname(t),n=e.basename(t,r).split(/[\/\\]/),o=n[n.length-1];return Jn(o==="index"?e.basename(e.dirname(t)):o)}function Jn(e){return K(e).replace(/ /g,"")}function se(e,t){let r=e.extname(t),n=ce(e.basename(t,r)).split("/").pop();return K(n==="index"?e.basename(e.dirname(t)):n)}function V(e,t){let r=ce(e.relative(e.getAppRootDir(),t));r=r.split("/").filter(o=>o!=="."&&o!==".."&&o!=="").join("/"),r.endsWith(".tsx")||r.endsWith(".jsx")?r=r.slice(0,-4):(r.endsWith(".ts")||r.endsWith(".js"))&&(r=r.slice(0,-3));let n=e.getFrameworks();return r.startsWith("src/")&&(r=r.slice(4)),n.some(o=>o.name.includes("next"))?"@/"+r:"~/"+r}function k(e,t){let r=t,n=[];for(let o=0;o<2;o++){let i=e.basename(r);if(!i||i==="components")break;n.unshift(i),r=e.dirname(r)}return n.join("/")}function K(e){for(e=e.replace(/([A-Z])/g," $1").replace(/\./g," ").replace(/_/g," ").replace(/-/g," ").replace(/\s/g," ").trim();e.includes(" ");)e=e.replace(/ /g," ");return e.split(" ").map(t=>t.length>2?t[0].toUpperCase()+t.slice(1):t).join("").trim()}function te(e){return e.sort((t,r)=>t.name.toLocaleLowerCase().localeCompare(r.name.toLocaleLowerCase()))}async function $(e,t,r,n){if(typeof r!="string"||r==="")throw new Error(`getComponentId(), exportName must be a non-empty string, received: ${r}, ${t}`);return n&&(t=n),t=e.normalize(t),(await e.hash(t+"#"+r)).substring(0,8)}function pt(e){return typeof e=="number"}function Xe(e){return typeof e=="boolean"}function Z(e){return typeof e=="string"}function Ze(e){return typeof e=="string"?/^[A-Z][A-Za-z0-9]*$/.test(e):!1}function oe(e){return JSON.parse(JSON.stringify(e))}function vt(e,t,r){for(let n of t)if(e.dirname(r).includes(n))return!0;return!1}function Wn(){try{let e=(0,Qn.default)();if(e?.name)return e.name}catch{}return"npm"}async function qe(e){let t=[],r=await bt(e,e.getRepoRootDir());if(r){let n=await Gn(r,e);t.push(...n)}return t}async function Gn(e,t){let r=[];if(e&&typeof e=="object"){let n=new Set(Object.keys({...e.dependencies,...e.devDependencies}));for(let o of li)if(n.has(o)&&!r.some(i=>i.name===o)){let i={name:o};Yn.has(o)&&(i.version=await Yn.get(o)(t)),r.push(i)}}return r}function Ht(e){let t=parseInt(e);return Number.isNaN(t)?void 0:t}var Yn=new Map([["next",async e=>{if(!e.spawnSync)return;let t=Wn(),r=t==="npm"?"npx":t,{stdout:n}=e.spawnSync(r,["next","-v"],{encoding:"utf8"});if(!n)return;let o=n.match(/(Next.js v)([\d.]+)/g);if(!o)return;let i=o[0].split("Next.js v")[1],[a,s,u]=i.split(".");return{major:Ht(a),minor:Ht(s),patch:Ht(u)}}]]),li=["@shopify/remix-oxygen","@shopify/hydrogen","@builder.io/qwik-city","@remix-run/react","@sveltejs/kit","astro","gatsby","next","nuxt","@builder.io/qwik","@angular/core","react","solid-js","svelte","vue"];async function ge(e){let t=Hn(e),r=await e.readFile(t);return typeof r=="string"?JSON.parse(r):{}}async function De(e,t){t=typeof t=="object"&&t!=null?t:{};let r=Hn(e);await e.writeFile(r,JSON.stringify(t??{},null,2))}function Hn(e){let t=e.getAppRootDir();return e.join(t,"node_modules",".builder","builder-cache.json")}async function Le(e,t,r){let n={envKey:r,envValue:null,file:""};for(let o of t){let i=e.join(e.getAppRootDir(),o),a=await ci(e,i);if(a){let s=a[r];if(typeof s=="string"&&s.length>0&&s!=="YOUR_API_KEY")return n.envValue=s,n.file=i,n}}return n.file=e.join(e.getAppRootDir(),t[t.length-1]),n}async function ci(e,t){let r=await e.readFile(t);return typeof r=="string"?Xn(r):null}function Xn(e){let t={},r=e.replace(/\r\n?/gm,`
2
- `),n;for(;(n=mi.exec(r))!=null;){let o=n[1],i=n[2]||"";i=i.trim();let a=i[0];i=i.replace(/^(['"`])([\s\S]*)\1$/gm,"$2"),a==='"'&&(i=i.replace(/\\n/g,`
3
- `),i=i.replace(/\\r/g,"\r")),t[o]=i}return t}var mi=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/gm;async function _e(e,t,r,n){let o="# https://www.builder.io/c/docs/using-your-api-key",i=await e.readFile(t);if(i)if(i.includes(r))if(i.includes(n))e.debug(`"${r}" with "${n}" already set in ${t}`);else return e.debug(`Replace "${r}" in ${t}`),i=i.replace(new RegExp(`${r}=.*`),`${r}=${n}`),await e.writeFile(t,i),"update";else return e.debug(`Append "${r}" to ${t}`),i+=`
1
+ var oi=Object.create;var Mn=Object.defineProperty;var ii=Object.getOwnPropertyDescriptor;var ai=Object.getOwnPropertyNames;var si=Object.getPrototypeOf,ui=Object.prototype.hasOwnProperty;var Ie=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var pi=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ai(t))!ui.call(e,o)&&o!==r&&Mn(e,o,{get:()=>t[o],enumerable:!(n=ii(t,o))||n.enumerable});return e};var Un=(e,t,r)=>(r=e!=null?oi(si(e)):{},pi(t||!e||!e.__esModule?Mn(r,"default",{value:e,enumerable:!0}):r,e));var Jn=Ie((Lu,qn)=>{"use strict";qn.exports=function(){if(process.env.npm_config_user_agent)return ci(process.env.npm_config_user_agent)};function ci(e){let t=e.split(" ")[0],r=t.lastIndexOf("/"),n=t.substring(0,r);return{name:n==="npminstall"?"cnpm":n,version:t.substring(r+1)}}});var wn=Ie(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});function wo(e){return Object.prototype.toString.call(e)}qt.getType=wo;function Ys(e){throw new TypeError("unsupported data type: "+wo(e))}qt.throwUnknownDataType=Ys});var Rn=Ie(Le=>{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});var ke="";for(let e=0;e<10;e++){let t=String.fromCharCode(48+e);ke+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(65+e);ke+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(97+e);ke+=t}var pt=ke.length,bn={};for(let e=0;e<pt;e++){let t=ke[e];bn[t]=e}function vn(e){let t=0,r=1;for(let n=e.length-1;n>=0;n--){let o=e[n],i=bn[o];i*=r,t+=i,r*=pt}return t}Le.s_to_int=vn;function To(e){let t=BigInt(0),r=BigInt(1),n=BigInt(pt);for(let o=e.length-1;o>=0;o--){let i=e[o],a=BigInt(bn[i]);a*=r,t+=a,r*=n}return t}Le.s_to_big_int=To;function In(e){if(e===0)return ke[0];let t=[];for(;e!==0;){let r=e%pt,n=ke[r];t.push(n),e-=r,e/=pt}return t.reverse().join("")}Le.int_to_s=In;function bo(e){let t=BigInt(0),r=BigInt(pt);if(e===t)return ke[0];let n=[];for(;e!==t;){let o=e%r,i=ke[Number(o)];n.push(i),e-=o,e/=r}return n.reverse().join("")}Le.big_int_to_s=bo;function Qt(e){return e.split("").reverse().join("")}function vo(e){if(e<0)return"-"+vo(-e);let[t,r]=e.toString().split(".");if(!r)return In(e);let n;r&&([r,n]=r.split("e")),t=Jt(t),r=Qt(r),r=Jt(r);let o=t+"."+r;if(n){switch(o+=".",n[0]){case"+":n=n.slice(1);break;case"-":o+="-",n=n.slice(1);break}n=Qt(n),n=Jt(n),o+=n}return o}Le.num_to_s=vo;function Jt(e){let t=+e;return t.toString()===e?In(t):":"+bo(BigInt(e))}Le.int_str_to_s=Jt;function Tn(e){return e[0]===":"?To(e.substring(1)).toString():vn(e).toString()}function Io(e){if(e[0]==="-")return-Io(e.substr(1));let[t,r,n]=e.split(".");if(!r)return vn(t);t=Tn(t),r=Tn(r),r=Qt(r);let o=t+"."+r;if(n){o+="e";let i=!1;n[0]==="-"&&(i=!0,n=n.slice(1)),n=Tn(n),n=Qt(n),o+=i?-n:+n}return+o}Le.s_to_num=Io});var Bn=Ie(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});var Nn=Rn();function Gs(e){return"n|"+Nn.num_to_s(e)}_e.encodeNum=Gs;function Hs(e){return e=e.replace("n|",""),Nn.s_to_num(e)}_e.decodeNum=Hs;function Xs(e){return typeof e=="number"?e:Nn.s_to_int(e)}_e.decodeKey=Xs;function Zs(e){return e?"b|T":"b|F"}_e.encodeBool=Zs;function eu(e){switch(e){case"b|T":return!0;case"b|F":return!1}return!!e}_e.decodeBool=eu;function tu(e){switch(e[0]+e[1]){case"b|":case"o|":case"n|":case"a|":case"s|":e="s|"+e}return e}_e.encodeStr=tu;function nu(e){return e[0]+e[1]==="s|"?e.substr(2):e}_e.decodeStr=nu});var Ro=Ie(On=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});On.config={sort_key:!1}});var Ln=Ie(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});var ru=Ro(),ou=wn(),kn=Bn(),iu=Rn();function au(e){return e.store.toArray()}Xe.memToValues=au;function No(){let e=[];return{forEach(t){for(let r=0;r<e.length;r++)if(t(e[r])==="break")return},add(t){e.push(t)},toArray(){return e}}}Xe.makeInMemoryStore=No;function Bo(){let e=Object.create(null),t=Object.create(null);return{getValue(r){return e[r]},getSchema(r){return t[r]},forEachValue(r){for(let[n,o]of Object.entries(e))if(r(n,o)==="break")return},forEachSchema(r){for(let[n,o]of Object.entries(t))if(r(n,o)==="break")return},setValue(r,n){e[r]=n},setSchema(r,n){t[r]=n},hasValue(r){return r in e},hasSchema(r){return r in t}}}Xe.makeInMemoryCache=Bo;function su(){return{store:No(),cache:Bo(),keyCount:0}}Xe.makeInMemoryMemory=su;function He(e,t){if(e.cache.hasValue(t))return e.cache.getValue(t);let r=e.keyCount++,n=iu.num_to_s(r);return e.store.add(t),e.cache.setValue(t,n),n}function uu(e,t){ru.config.sort_key&&t.sort();let r=t.join(",");if(e.cache.hasSchema(r))return e.cache.getSchema(r);let n=wt(e,t,void 0);return e.cache.setSchema(r,n),n}function wt(e,t,r){if(t===null)return"";switch(typeof t){case"undefined":if(Array.isArray(r))return wt(e,null,r);break;case"object":if(t===null)return He(e,null);if(Array.isArray(t)){let n="a";for(let o=0;o<t.length;o++){let i=t[o],a=i===null?"_":wt(e,i,t);n+="|"+a}return n==="a"&&(n="a|"),He(e,n)}else{let n=Object.keys(t);if(n.length===0)return He(e,"o|");let o="o",i=uu(e,n);o+="|"+i;for(let a of n){let s=t[a],u=wt(e,s,t);o+="|"+u}return He(e,o)}case"boolean":return He(e,kn.encodeBool(t));case"number":return He(e,kn.encodeNum(t));case"string":return He(e,kn.encodeStr(t))}return ou.throwUnknownDataType(t)}Xe.addValue=wt});var jn=Ie(bt=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});var pu=wn(),Wt=Bn(),_n=Ln();function lu(e){let t=_n.makeInMemoryMemory(),r=_n.addValue(t,e,void 0);return[_n.memToValues(t),r]}bt.compress=lu;function cu(e,t){if(t==="o|")return{};let r={},n=t.split("|"),o=n[1],i=Tt(e,o),a=n.length;a-2===1&&!Array.isArray(i)&&(i=[i]);for(let s=2;s<a;s++){let u=i[s-2],p=n[s];p=Tt(e,p),r[u]=p}return r}function mu(e,t){if(t==="a|")return[];let r=t.split("|"),n=r.length-1,o=new Array(n);for(let i=0;i<n;i++){let a=r[i+1];a=Tt(e,a),o[i]=a}return o}function Tt(e,t){if(t===""||t==="_")return null;let r=Wt.decodeKey(t),n=e[r];if(n===null)return n;switch(typeof n){case"undefined":return n;case"number":return n;case"string":switch(n[0]+n[1]){case"b|":return Wt.decodeBool(n);case"o|":return cu(e,n);case"n|":return Wt.decodeNum(n);case"a|":return mu(e,n);default:return Wt.decodeStr(n)}}return pu.throwUnknownDataType(n)}bt.decode=Tt;function fu(e){let[t,r]=e;return Tt(t,r)}bt.decompress=fu});var ko=Ie(Yt=>{"use strict";Object.defineProperty(Yt,"__esModule",{value:!0});function du(e){for(let t in e)e[t]===void 0&&delete e[t]}Yt.trimUndefined=du;function gu(e){Oo(e,new Set)}Yt.trimUndefinedRecursively=gu;function Oo(e,t){t.add(e);for(let r in e)if(e[r]===void 0)delete e[r];else{let n=e[r];n&&typeof n=="object"&&!t.has(n)&&Oo(n,t)}}});var jo=Ie(Ue=>{"use strict";Object.defineProperty(Ue,"__esModule",{value:!0});var Lo=jn();Ue.compress=Lo.compress;Ue.decompress=Lo.decompress;var Du=jn();Ue.decode=Du.decode;var Cu=Ln();Ue.addValue=Cu.addValue;var _o=ko();Ue.trimUndefined=_o.trimUndefined;Ue.trimUndefinedRecursively=_o.trimUndefinedRecursively});function re(e){let t=e.join(e.getAppRootDir(),"tsconfig.json");return e.exists(t)}var li=["node_modules","dist","build","public"];async function ae(e,t){async function r(o,i){if(i>10)return;let a=await e.readdir(o);for(let s of a){if(li.includes(s))continue;let u=e.join(o,s),p=await e.stat(u);if(p){if(p.isFile()&&s.startsWith("builder-registry."))return u;if(p.isDirectory()){let m=await r(u,i+1);if(m)return m}}}}let n=await r(e.getAppRootDir(),0);if(!n){let i=`builder-registry.${await re(e)?"ts":"js"}`;return e.join(t,i)}return n}async function vt(e,t){let r=e.resolve("/");for(let n=0;n<20;n++){let o=e.join(t,"package.json"),i=await e.readFile(o);if(i)return JSON.parse(i);if(t===r)break;t=e.dirname(t)}return null}async function zn(e,t){for(let r=0;r<20;r++){let n=e.dirname(t),o=e.join(n,"node_modules");if(await e.exists(o))return o;if(t===e.getAppRootDir())break;t=e.dirname(t)}return e.join(e.getAppRootDir(),"node_modules")}async function lt(e,t,r){let n=await e.readdir(t);return n.includes(r)?e.join(t,r):(await Promise.all(n.map(async i=>{if(i.startsWith(".")||i==="node_modules")return;let a=e.join(t,i);if((await e.stat(a)).isDirectory()){let u=await lt(e,a,r);if(u)return u}}))).find(i=>typeof i=="string")}var Wn=Un(Jn(),1);function ge(e){return e.endsWith(".mapper.tsx")||e.endsWith(".mapper.jsx")}function B(e,t,r){t=ce(t),r=ce(r),t=e.dirname(t);let n=e.basename(r,e.extname(r));r=e.dirname(r);let o;return n==="index"?o=e.relative(t,r):o=e.relative(t,e.join(r,n)),o=ce(e.normalize(o)),o.startsWith(".")||(o="./"+o),o}function ce(e){return e.startsWith("\\\\?\\")?e:e.replace(/\\/g,"/")}function qe(e,t){let r=e.extname(t),n=e.basename(t,r).split(/[\/\\]/),o=n[n.length-1];return Qn(o==="index"?e.basename(e.dirname(t)):o)}function Qn(e){return K(e).replace(/ /g,"")}function se(e,t){let r=e.extname(t),n=ce(e.basename(t,r)).split("/").pop();return K(n==="index"?e.basename(e.dirname(t)):n)}function V(e,t){let r=ce(e.relative(e.getAppRootDir(),t));r=r.split("/").filter(o=>o!=="."&&o!==".."&&o!=="").join("/"),r.endsWith(".tsx")||r.endsWith(".jsx")?r=r.slice(0,-4):(r.endsWith(".ts")||r.endsWith(".js"))&&(r=r.slice(0,-3));let n=e.getFrameworks();return r.startsWith("src/")&&(r=r.slice(4)),n.some(o=>o.name.includes("next"))?"@/"+r:"~/"+r}function k(e,t){let r=t,n=[];for(let o=0;o<2;o++){let i=e.basename(r);if(!i||i==="components")break;n.unshift(i),r=e.dirname(r)}return n.join("/")}function K(e){for(e=e.replace(/([A-Z])/g," $1").replace(/\./g," ").replace(/_/g," ").replace(/-/g," ").replace(/\s/g," ").trim();e.includes(" ");)e=e.replace(/ /g," ");return e.split(" ").map(t=>t.length>2?t[0].toUpperCase()+t.slice(1):t).join("").trim()}function te(e){return e.sort((t,r)=>t.name.toLocaleLowerCase().localeCompare(r.name.toLocaleLowerCase()))}async function $(e,t,r,n){if(typeof r!="string"||r==="")throw new Error(`getComponentId(), exportName must be a non-empty string, received: ${r}, ${t}`);return n&&(t=n),t=e.normalize(t),(await e.hash(t+"#"+r)).substring(0,8)}function ct(e){return typeof e=="number"}function Ze(e){return typeof e=="boolean"}function Z(e){return typeof e=="string"}function et(e){return typeof e=="string"?/^[A-Z][A-Za-z0-9]*$/.test(e):!1}function oe(e){return JSON.parse(JSON.stringify(e))}function It(e,t,r){for(let n of t)if(e.dirname(r).includes(n))return!0;return!1}function Yn(){try{let e=(0,Wn.default)();if(e?.name)return e.name}catch{}return"npm"}async function Je(e){let t=[],r=await vt(e,e.getRepoRootDir());if(r){let n=await Hn(r,e);t.push(...n)}return t}async function Hn(e,t){let r=[];if(e&&typeof e=="object"){let n=new Set(Object.keys({...e.dependencies,...e.devDependencies}));for(let o of mi)if(n.has(o)&&!r.some(i=>i.name===o)){let i={name:o};Gn.has(o)&&(i.version=await Gn.get(o)(t)),r.push(i)}}return r}function Xt(e){let t=parseInt(e);return Number.isNaN(t)?void 0:t}var Gn=new Map([["next",async e=>{if(!e.spawnSync)return;let t=Yn(),r=t==="npm"?"npx":t,{stdout:n}=e.spawnSync(r,["next","-v"],{encoding:"utf8"});if(!n)return;let o=n.match(/(Next.js v)([\d.]+)/g);if(!o)return;let i=o[0].split("Next.js v")[1],[a,s,u]=i.split(".");return{major:Xt(a),minor:Xt(s),patch:Xt(u)}}]]),mi=["@shopify/remix-oxygen","@shopify/hydrogen","@builder.io/qwik-city","@remix-run/react","@sveltejs/kit","astro","gatsby","next","nuxt","@builder.io/qwik","@angular/core","react","solid-js","svelte","vue"];async function De(e){let t=Xn(e),r=await e.readFile(t);return typeof r=="string"?JSON.parse(r):{}}async function Ce(e,t){t=typeof t=="object"&&t!=null?t:{};let r=Xn(e);await e.writeFile(r,JSON.stringify(t??{},null,2))}function Xn(e){let t=e.getAppRootDir();return e.join(t,"node_modules",".builder","builder-cache.json")}async function je(e,t,r){let n={envKey:r,envValue:null,file:""};for(let o of t){let i=e.join(e.getAppRootDir(),o),a=await fi(e,i);if(a){let s=a[r];if(typeof s=="string"&&s.length>0&&s!=="YOUR_API_KEY")return n.envValue=s,n.file=i,n}}return n.file=e.join(e.getAppRootDir(),t[t.length-1]),n}async function fi(e,t){let r=await e.readFile(t);return typeof r=="string"?Zn(r):null}function Zn(e){let t={},r=e.replace(/\r\n?/gm,`
2
+ `),n;for(;(n=di.exec(r))!=null;){let o=n[1],i=n[2]||"";i=i.trim();let a=i[0];i=i.replace(/^(['"`])([\s\S]*)\1$/gm,"$2"),a==='"'&&(i=i.replace(/\\n/g,`
3
+ `),i=i.replace(/\\r/g,"\r")),t[o]=i}return t}var di=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/gm;async function Ve(e,t,r,n){let o="# https://www.builder.io/c/docs/using-your-api-key",i=await e.readFile(t);if(i)if(i.includes(r))if(i.includes(n))e.debug(`"${r}" with "${n}" already set in ${t}`);else return e.debug(`Replace "${r}" in ${t}`),i=i.replace(new RegExp(`${r}=.*`),`${r}=${n}`),await e.writeFile(t,i),"update";else return e.debug(`Append "${r}" to ${t}`),i+=`
4
4
 
5
5
  ${o}
6
6
  ${r}=${n}
7
7
 
8
8
  `,await e.writeFile(t,i),"update";else return e.debug(`Creating new .env file with "${r}" at ${t}`),i=[o,`${r}=${n}`,""].join(`
9
- `),await e.writeFile(t,i),"create";return null}async function lt(e){return await Le(e,[".env.local",".env.development.local",".env.production.local",".env.development",".env.production",".env"],Ce)}async function Zn(e,t){let r=await lt(e),n=await _e(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var Ce="NEXT_PUBLIC_BUILDER_API_KEY";var w={gen1:"Gen 1",gen2:"Gen 2"};function I(e,t=""){return e.ts.createSourceFile("module.tsx",typeof t=="string"?t:"",e.ts.ScriptTarget.Latest,void 0)}function It(e,t=""){let r=I(e,t?.trim());if(r.statements.length===0)throw new Error(`No statements found in code: ${t}`);return r.statements[0]}function _(e,t,r){if(t){let n=e.ts.createPrinter({newLine:e.ts.NewLineKind.LineFeed,removeComments:r});return e.ts.isSourceFile(t)?n.printFile(t).trim()+`
9
+ `),await e.writeFile(t,i),"create";return null}async function mt(e){return await je(e,[".env.local",".env.development.local",".env.production.local",".env.development",".env.production",".env"],xe)}async function er(e,t){let r=await mt(e),n=await Ve(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var xe="NEXT_PUBLIC_BUILDER_API_KEY";var w={gen1:"Gen 1",gen2:"Gen 2"};function I(e,t=""){return e.ts.createSourceFile("module.tsx",typeof t=="string"?t:"",e.ts.ScriptTarget.Latest,void 0)}function Rt(e,t=""){let r=I(e,t?.trim());if(r.statements.length===0)throw new Error(`No statements found in code: ${t}`);return r.statements[0]}function _(e,t,r){if(t){let n=e.ts.createPrinter({newLine:e.ts.NewLineKind.LineFeed,removeComments:r});return e.ts.isSourceFile(t)?n.printFile(t).trim()+`
10
10
  `:n.printNode(e.ts.EmitHint.Unspecified,t,e.ts.createSourceFile("module.tsx","",e.ts.ScriptTarget.Latest)).trim()+`
11
- `}return""}function mt(e,t,r,n,o=!0){let i=t.properties.filter(s=>e.ts.isPropertyAssignment(s)),a=fi(e,t,r);return a>-1?n==null&&o?e.ts.factory.updateObjectLiteralExpression(t,i.filter((s,u)=>u!==a)):(i[a]=e.ts.factory.updatePropertyAssignment(i[a],i[a].name,ct(e,n)),e.ts.factory.updateObjectLiteralExpression(t,i)):(n!=null&&i.push(e.ts.factory.createPropertyAssignment(r,ct(e,n))),e.ts.factory.updateObjectLiteralExpression(t,i))}function fi(e,t,r){return t.properties.findIndex(n=>N(e,n)===r)}function ft(e,t){switch(t.kind){case e.ts.SyntaxKind.ArrayLiteralExpression:return gi(e,t);case e.ts.SyntaxKind.ObjectLiteralExpression:return di(e,t);case e.ts.SyntaxKind.StringLiteral:return t.text;case e.ts.SyntaxKind.NumericLiteral:return Number(t.text);case e.ts.SyntaxKind.NoSubstitutionTemplateLiteral:return t.text;case e.ts.SyntaxKind.TrueKeyword:return!0;case e.ts.SyntaxKind.FalseKeyword:return!1;case e.ts.SyntaxKind.Identifier:switch(t.escapedText){case"undefined":return;case"null":return null;case"String":return String;case"Number":return Number;case"Boolean":return Boolean;case"NaN":return NaN}}}function di(e,t){let r={};if(t&&e.ts.isObjectLiteralExpression(t)){for(let n of t.properties)if(e.ts.isPropertyAssignment(n)){let o=N(e,n);o&&(r[o]=ft(e,n.initializer))}}return r}function gi(e,t){return t&&e.ts.isArrayLiteralExpression(t)?t.elements.map(r=>ft(e,r)):[]}function N(e,t){if(t&&e.ts.isPropertyAssignment(t)){let r=t.name;switch(r.kind){case e.ts.SyntaxKind.Identifier:return r.text;case e.ts.SyntaxKind.StringLiteral:case e.ts.SyntaxKind.NumericLiteral:return r.text;case e.ts.SyntaxKind.ComputedPropertyName:let n=r.expression;if(e.ts.isStringLiteral(n)||e.ts.isNumericLiteral(n))return r.expression.text}}}function ct(e,t){return Xt(e,t,new WeakSet)}function Xt(e,t,r){return t===void 0?e.ts.factory.createIdentifier("undefined"):t===null?e.ts.factory.createIdentifier("null"):typeof t=="string"?e.ts.factory.createStringLiteral(t):typeof t=="number"?isNaN(t)?e.ts.factory.createIdentifier("NaN"):e.ts.factory.createNumericLiteral(t):t===!0?e.ts.factory.createTrue():t===!1?e.ts.factory.createFalse():t===String?e.ts.factory.createIdentifier("String"):t===Number?e.ts.factory.createIdentifier("Number"):t===Boolean?e.ts.factory.createIdentifier("Boolean"):Array.isArray(t)?Di(e,t,r):typeof t=="object"?Ci(e,t,r):e.ts.factory.createIdentifier(t)}function Di(e,t,r){let n=t.map(o=>Xt(e,o,r));return e.ts.factory.createArrayLiteralExpression(n,!0)}function Ci(e,t,r){if(r.has(t))return e.ts.factory.createIdentifier("undefined");r.add(t);let n=Object.keys(t).map(o=>e.ts.factory.createPropertyAssignment(o,Xt(e,t[o],r)));return e.ts.factory.createObjectLiteralExpression(n,!0)}function Je(e,t,r){let n=[];if(!r)return n;let o=null;if(e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r)||e.ts.isFunctionDeclaration(r)){let i=r.parameters;if(i.length>0){let a=i[0],s=t.getTypeAtLocation(a);s.aliasTypeArguments&&s.aliasTypeArguments.length>0?o=s.aliasTypeArguments[0].getProperties():o=s.getProperties()}}else if(e.ts.isIdentifier(r)){let i=t.getTypeAtLocation(r),a=i.symbol?.valueDeclaration;if(a&&e.ts.isClassDeclaration(a)){let u=a.heritageClauses?.find(p=>p.token===e.ts.SyntaxKind.ExtendsKeyword)?.types;if(u){for(let p of u)if(t.getSymbolAtLocation(p.expression)?.name==="Component"){if(e.ts.isExpressionWithTypeArguments(p)){let f=p.typeArguments;if(f){let c=f[0];o=t.getTypeFromTypeNode(c).getProperties()}}break}}}if(!o){let s=i.getCallSignatures();if(s.length>0){let u=s[0].getParameters();u.length>0&&(o=t.getTypeOfSymbolAtLocation(u[0],r).getProperties())}}}else if(e.ts.isExportSpecifier(r)){let i=t.getSymbolAtLocation(r.name);if(i){let s=t.getTypeOfSymbolAtLocation(i,r).getCallSignatures();if(s.length>0){let u=s[0].getParameters();u.length>0&&(o=t.getTypeOfSymbolAtLocation(u[0],r).getProperties())}}}if(o)for(let i of o){let a=xi(e,t,i);a&&n.push(a)}return n=n.filter(tr),n.length>0?n:hi(e,r)}function xi(e,t,r){let n=r.valueDeclaration,o=r.getName();if(n||(n=r.getDeclarations()?.[0]),n&&e.ts.isPropertySignature(n)){if(o!=="children"&&n.getSourceFile().fileName.includes("node_modules/@types/"))return null;let i="string",a;if(n?.type){let u=t.getTypeFromTypeNode(n.type),p=t.typeToString(u),m=Zt(p);m.knownType?i=m.builderType:Si(p)||u.flags&e.ts.TypeFlags.StringLike?i="string":u.flags&e.ts.TypeFlags.NumberLike?i="number":u.flags&e.ts.TypeFlags.IndexedAccess?i="list":u.flags&e.ts.TypeFlags.Object||u.isUnion()&&u.types.every(f=>f.flags&e.ts.TypeFlags.Object)||u.isIntersection()&&u.types.some(f=>f.flags&e.ts.TypeFlags.Object)?i="object":i="string",p!==i&&(a=p)}let s={name:o,type:i,isRegistered:!1};if(a&&n.type){let u=yi(e,t,t.getTypeFromTypeNode(n.type));s.meta=s.meta||{},u&&u.length>0&&s.type==="string"&&u.every(Fi)?s.enum=u.map(Pi):s.meta.ts=a}return n.questionToken||(s.required=!0),s}return null}function hi(e,t){let r=[],n=e.ts.getJSDocCommentsAndTags(t);for(let o of n)if(!(!e.ts.isJSDoc(o)||!o.tags))for(let i of o.tags){if(!e.ts.isJSDocParameterTag(i)||i.tagName.text!=="param")continue;let s=i.typeExpression?.type;if(!s||!e.ts.isJSDocTypeLiteral(s))continue;let u=s.jsDocPropertyTags;if(u)for(let p of u){if(!e.ts.isJSDocPropertyLikeTag(p))continue;let m=p.name;if(!e.ts.isQualifiedName(m))continue;let f=p.typeExpression;if(!f)continue;let c="";switch(f.type.kind){case e.ts.SyntaxKind.StringKeyword:{c="string";break}case e.ts.SyntaxKind.NumberKeyword:{c="number";break}case e.ts.SyntaxKind.BooleanKeyword:{c="boolean";break}default:continue}let C={name:m.right.text,type:c,isRegistered:!1};r.push(C)}}return r.filter(tr)}var Ei=["ClassicComponent","FunctionComponent","IntrinsicElements","JSX","ReactNode","ReactElement","ReactPortal"];function Si(e){return typeof e!="string"?!1:!!Ei.some(t=>e.includes(t))}function Zt(e){return typeof e=="string"&&(e=e.trim(),Ai.some(t=>t.value===e))?{builderType:e,knownType:!0}:{builderType:"string",knownType:!1}}var Ai=[{value:"boolean",text:"boolean"},{value:"color",text:"color (provides a color in hex or rgb)"},{value:"date",text:"date (same format as the Date constructor)"},{value:"email",text:"email"},{value:"file",text:"file (uploads a file and provides a url)"},{value:"list",text:"list (collection of items)"},{value:"longText",text:"longText (multiline text editor)"},{value:"number",text:"number"},{value:"object",text:"object (set of specific names and values)"},{value:"richText",text:"richText (provides value as html)"},{value:"string",text:"string"}];function Fi(e){return/^['"].*['"]$/.test(e)}function Pi(e){return(e.startsWith('"')||e.startsWith("'"))&&(e.endsWith('"')||e.endsWith("'"))?e.slice(1,-1):e}var yi=(e,t,r)=>{let n=new Set;er(e,t,r,n);let o=n.delete("true"),i=n.delete("false");(o||i)&&n.add("boolean");let a=Array.from(n.keys()).sort();if(a.length>1&&(a=a.map(s=>s.indexOf("=>")>=0?`(${s})`:s)),!(a.length>20))return a},wi=(e,t,r)=>{let n=e.ts.TypeFormatFlags.InElementType|e.ts.TypeFormatFlags.NoTruncation;return t.typeToString(r,void 0,n)},er=(e,t,r,n)=>{if(r.isUnion())r.types.forEach(o=>{er(e,t,o,n)});else if(r.isLiteral()){let o=wi(e,t,r);n.add(o)}};function tr(e){let t=e?.name;if(typeof t!="string"||t===""||t.startsWith("aria")||t.startsWith("data-"))return!1;if(t.startsWith("on")&&t.length>2){let r=t.charAt(2);if(r.toUpperCase()===r)return!1}return!Ti.has(t.toLowerCase())}var Ti=new Set(["about","accessKey","accessKeyLabel","asChild","autoCapitalize","autoCorrect","autoFocus","autoSave","blur","contentEditable","contextMenu","dangerouslySetInnerHTML","datatype","defaultChecked","defaultValue","dir","draggable","enterKeyHint","focus","form","formAction","formEncType","formMethod","formNoValidate","formTarget","inlist","innerText","inputMode","is","isContentEditable","itemID","itemProp","itemRef","itemScope","itemType","lang","nonce","offsetHeight","offsetLeft","offsetTop","offsetWidth","outerText","prefix","property","radioGroup","rel","resource","results","rev","role","security","slot","spellCheck","suppressContentEditableWarning","suppressHydrationWarning","tabIndex","translate","typeof","unselectable","vocab"].map(e=>e.toLowerCase()));function ne(e,t,r){for(let n of r.properties){if(!e.ts.isPropertyAssignment(n))continue;let o=N(e,n);if(o==="name"&&e.ts.isStringLiteral(n.initializer)){t.name=n.initializer.text;continue}if(o==="description"&&e.ts.isStringLiteral(n.initializer)){t.description=n.initializer.text;continue}if(o==="image"&&e.ts.isStringLiteral(n.initializer)){t.image=n.initializer.text;continue}if(o==="inputs"&&e.ts.isArrayLiteralExpression(n.initializer)){let i=bi(e,n.initializer);ie(t,i);continue}if(o==="meta"&&e.ts.isObjectLiteralExpression(n.initializer)){let i=ft(e,n.initializer);i&&typeof i=="object"&&(t.meta=i);continue}}return t}function bi(e,t){let r=[];for(let n of t.elements)e.ts.isObjectLiteralExpression(n)&&r.push(vi(e,n));return r}function vi(e,t){let r=ft(e,t),n=Li(r);return n.isRegistered=!0,n}function Q(e,t,r){let n=Ri(r);return t=mt(e,t,"name",n.name,!1),t=mt(e,t,"description",n.description),t=mt(e,t,"image",n.image),t=Ii(e,t,n),_i(e,t)}function Ii(e,t,r){let n=null,o=t.properties.filter(s=>e.ts.isPropertyAssignment(s)&&e.ts.isIdentifier(s.name)),i=o.findIndex(s=>e.ts.isIdentifier(s.name)&&s.name.text==="inputs"),a=[...r.inputs??[]];if(i>-1){if(a.length===0)return mt(e,t,"inputs",null);let s=o[i];e.ts.isPropertyAssignment(s)&&e.ts.isArrayLiteralExpression(s.initializer)&&(n=s.initializer)}return a.length===0?t:(n=Bi(e,n||e.ts.factory.createArrayLiteralExpression(),a),i>-1?o[i]=e.ts.factory.updatePropertyAssignment(o[i],o[i].name,n):o.push(e.ts.factory.createPropertyAssignment("inputs",n)),e.ts.factory.updateObjectLiteralExpression(t,o))}function Ri(e){return{name:e.name,description:e.description,image:e.image,inputs:(e.inputs||[]).filter(r=>r.isRegistered).map(Ni)}}function Ni(e){let t={name:e.name,type:e.type};return(Z(e.defaultValue)||pt(e.defaultValue)||Xe(e.defaultValue))&&(t.defaultValue=e.defaultValue),Z(e.friendlyName)&&(t.friendlyName=e.friendlyName),Z(e.helperText)&&(t.helperText=e.helperText),e.required===!0&&(t.required=!0),Array.isArray(e.enum)&&(t.enum=e.enum),e.hideFromUI===!0&&(t.hideFromUI=!0),typeof e.meta=="object"&&e.meta!=null&&Object.keys(e.meta).length>0&&(t.meta=e.meta),t}function Bi(e,t,r){let n=t.elements.filter(o=>{if(!e.ts.isObjectLiteralExpression(o))return!1;let i=o.properties.find(s=>N(e,s)==="name");if(!i)return!1;let a=i.initializer;return e.ts.isStringLiteral(a)?r.some(s=>s.name===a.text):!1});for(let o of r)n=Oi(e,n,o);return n.sort((o,i)=>{let a=o.properties.find(c=>N(e,c)==="name"),s=i.properties.find(c=>N(e,c)==="name"),u=a?.initializer,p=s?.initializer,m=u&&e.ts.isStringLiteral(u)?u.text:"zz",f=p&&e.ts.isStringLiteral(p)?p.text:"zz";return m.toLowerCase().localeCompare(f.toLowerCase())}),e.ts.factory.updateArrayLiteralExpression(t,n)}function Oi(e,t,r){let n=t.findIndex(o=>o.properties.some(i=>{let a=N(e,i);return e.ts.isPropertyAssignment(i)&&a==="name"&&e.ts.isStringLiteral(i.initializer)&&i.initializer.text===r.name}));if(n>-1)t[n]=nr(e,t[n],r);else{let o=nr(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("name",e.ts.factory.createStringLiteral(r.name))],!0),r);t.push(o)}return t}function nr(e,t,r){let n=t.properties.filter(i=>e.ts.isPropertyAssignment(i)),o=Object.keys(r).filter(i=>i!=="isRegistered");for(let i of o)n=ki(e,n,r,i);return n=ji(e,n.filter(i=>{let a=N(e,i);return o.includes(a)})),e.ts.factory.updateObjectLiteralExpression(t,n)}function ki(e,t,r,n){let o=t.findIndex(i=>e.ts.isIdentifier(i.name)&&i.name.text===n);return o>-1?t[o]=e.ts.factory.updatePropertyAssignment(t[o],t[o].name,ct(e,r[n])):t.push(e.ts.factory.createPropertyAssignment(n,ct(e,r[n]))),t}function ie(e,t){for(let r of t){let n=e.inputs.findIndex(o=>o.name===r.name);n>-1?(r.isRegistered||!e.inputs[n].isRegistered)&&(e.inputs[n]=r):e.inputs.push(r)}e.acceptsChildren=en(e)}function Li(e){let t=Zt(e.type),r={name:e.name.trim(),type:t.builderType};return Z(e.friendlyName)&&e.friendlyName.trim()!==e.name.trim()&&(r.friendlyName=e.friendlyName),(Z(e.defaultValue)||pt(e.defaultValue)||Xe(e.defaultValue))&&(r.defaultValue=e.defaultValue),Z(e.helperText)&&(r.helperText=e.helperText),Xe(e.required)&&(r.required=e.required),typeof e.meta=="object"&&e.meta!=null&&Object.keys(e.meta).length>0&&(r.meta=e.meta),Array.isArray(e.enum)&&e.enum.length>0&&(r.enum=e.enum),e.hideFromUI===!0&&(r.hideFromUI=!0),tn(r)}function en(e){let t=e.inputs.some(n=>n.name==="children"),r=e.inputs.some(n=>n.meta?.ts==="ReactNode");return!!(t||r||e.acceptsChildren===!0)}function tn(e){if(e.name==="children"&&(e.hideFromUI=!0,delete e.required),e.type==="object"&&e.defaultValue==null&&(e.hideFromUI=!0),e.type==="list"&&e.defaultValue==null&&(e.hideFromUI=!0),e.meta){let t=e.meta.ts;typeof t=="string"&&(t=t.trim(),t.endsWith("ReactNode")&&(t="ReactNode"),e.meta.ts=t,t==="ReactNode"&&(e.hideFromUI=!0))}return e}function _i(e,t){let r=[...t.properties].sort((n,o)=>{let i=N(e,n)||"zz",a=N(e,o)||"zz";if(i==="inputs")return 1;let s=rr.indexOf(i),u=rr.indexOf(a);return s>-1?u>-1&&s>u?1:-1:u>-1?s>-1&&u<s?-1:1:i.localeCompare(a)});return e.ts.factory.updateObjectLiteralExpression(t,r)}var rr=["component","name","description"];function ji(e,t){return[...t].sort((n,o)=>{let i=N(e,n)||"zz",a=N(e,o)||"zz",s=or.indexOf(i),u=or.indexOf(a);return s>-1?u>-1&&s>u?1:-1:u>-1?s>-1&&u<s?-1:1:i.localeCompare(a)})}var or=["name","type"];function et(e,t){for(let r of t.properties){if(!e.ts.isPropertyAssignment(r)||!e.ts.isIdentifier(r.name))continue;if(N(e,r)==="canHaveChildren"){let{initializer:o}=r;return o.kind===e.ts.SyntaxKind.TrueKeyword}}return!1}function ir(e,t){let r=`Builder.registerComponent(
11
+ `}return""}function dt(e,t,r,n,o=!0){let i=t.properties.filter(s=>e.ts.isPropertyAssignment(s)),a=gi(e,t,r);return a>-1?n==null&&o?e.ts.factory.updateObjectLiteralExpression(t,i.filter((s,u)=>u!==a)):(i[a]=e.ts.factory.updatePropertyAssignment(i[a],i[a].name,ft(e,n)),e.ts.factory.updateObjectLiteralExpression(t,i)):(n!=null&&i.push(e.ts.factory.createPropertyAssignment(r,ft(e,n))),e.ts.factory.updateObjectLiteralExpression(t,i))}function gi(e,t,r){return t.properties.findIndex(n=>N(e,n)===r)}function gt(e,t){switch(t.kind){case e.ts.SyntaxKind.ArrayLiteralExpression:return Ci(e,t);case e.ts.SyntaxKind.ObjectLiteralExpression:return Di(e,t);case e.ts.SyntaxKind.StringLiteral:return t.text;case e.ts.SyntaxKind.NumericLiteral:return Number(t.text);case e.ts.SyntaxKind.NoSubstitutionTemplateLiteral:return t.text;case e.ts.SyntaxKind.TrueKeyword:return!0;case e.ts.SyntaxKind.FalseKeyword:return!1;case e.ts.SyntaxKind.Identifier:switch(t.escapedText){case"undefined":return;case"null":return null;case"String":return String;case"Number":return Number;case"Boolean":return Boolean;case"NaN":return NaN}}}function Di(e,t){let r={};if(t&&e.ts.isObjectLiteralExpression(t)){for(let n of t.properties)if(e.ts.isPropertyAssignment(n)){let o=N(e,n);o&&(r[o]=gt(e,n.initializer))}}return r}function Ci(e,t){return t&&e.ts.isArrayLiteralExpression(t)?t.elements.map(r=>gt(e,r)):[]}function N(e,t){if(t&&e.ts.isPropertyAssignment(t)){let r=t.name;switch(r.kind){case e.ts.SyntaxKind.Identifier:return r.text;case e.ts.SyntaxKind.StringLiteral:case e.ts.SyntaxKind.NumericLiteral:return r.text;case e.ts.SyntaxKind.ComputedPropertyName:let n=r.expression;if(e.ts.isStringLiteral(n)||e.ts.isNumericLiteral(n))return r.expression.text}}}function ft(e,t){return Zt(e,t,new WeakSet)}function Zt(e,t,r){return t===void 0?e.ts.factory.createIdentifier("undefined"):t===null?e.ts.factory.createIdentifier("null"):typeof t=="string"?e.ts.factory.createStringLiteral(t):typeof t=="number"?isNaN(t)?e.ts.factory.createIdentifier("NaN"):e.ts.factory.createNumericLiteral(t):t===!0?e.ts.factory.createTrue():t===!1?e.ts.factory.createFalse():t===String?e.ts.factory.createIdentifier("String"):t===Number?e.ts.factory.createIdentifier("Number"):t===Boolean?e.ts.factory.createIdentifier("Boolean"):Array.isArray(t)?xi(e,t,r):typeof t=="object"?hi(e,t,r):e.ts.factory.createIdentifier(t)}function xi(e,t,r){let n=t.map(o=>Zt(e,o,r));return e.ts.factory.createArrayLiteralExpression(n,!0)}function hi(e,t,r){if(r.has(t))return e.ts.factory.createIdentifier("undefined");r.add(t);let n=Object.keys(t).map(o=>e.ts.factory.createPropertyAssignment(o,Zt(e,t[o],r)));return e.ts.factory.createObjectLiteralExpression(n,!0)}function Qe(e,t,r){let n=[];if(!r)return n;let o=null;if(e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r)||e.ts.isFunctionDeclaration(r)){let i=r.parameters;if(i.length>0){let a=i[0],s=t.getTypeAtLocation(a);s.aliasTypeArguments&&s.aliasTypeArguments.length>0?o=s.aliasTypeArguments[0].getProperties():o=s.getProperties()}}else if(e.ts.isIdentifier(r)){let i=t.getTypeAtLocation(r),a=i.symbol?.valueDeclaration;if(a&&e.ts.isClassDeclaration(a)){let u=a.heritageClauses?.find(p=>p.token===e.ts.SyntaxKind.ExtendsKeyword)?.types;if(u){for(let p of u)if(t.getSymbolAtLocation(p.expression)?.name==="Component"){if(e.ts.isExpressionWithTypeArguments(p)){let f=p.typeArguments;if(f){let l=f[0];o=t.getTypeFromTypeNode(l).getProperties()}}break}}}if(!o){let s=i.getCallSignatures();if(s.length>0){let u=s[0].getParameters();u.length>0&&(o=t.getTypeOfSymbolAtLocation(u[0],r).getProperties())}}}else if(e.ts.isExportSpecifier(r)){let i=t.getSymbolAtLocation(r.name);if(i){let s=t.getTypeOfSymbolAtLocation(i,r).getCallSignatures();if(s.length>0){let u=s[0].getParameters();u.length>0&&(o=t.getTypeOfSymbolAtLocation(u[0],r).getProperties())}}}if(o)for(let i of o){let a=Ei(e,t,i);a&&n.push(a)}return n=n.filter(nr),n.length>0?n:Si(e,r)}function Ei(e,t,r){let n=r.valueDeclaration,o=r.getName();if(n||(n=r.getDeclarations()?.[0]),n&&e.ts.isPropertySignature(n)){if(o!=="children"&&n.getSourceFile().fileName.includes("node_modules/@types/"))return null;let i="string",a;if(n?.type){let u=t.getTypeFromTypeNode(n.type),p=t.typeToString(u),m=en(p);m.knownType?i=m.builderType:Fi(p)||u.flags&e.ts.TypeFlags.StringLike?i="string":u.flags&e.ts.TypeFlags.NumberLike?i="number":u.flags&e.ts.TypeFlags.IndexedAccess?i="list":u.flags&e.ts.TypeFlags.Object||u.isUnion()&&u.types.every(f=>f.flags&e.ts.TypeFlags.Object)||u.isIntersection()&&u.types.some(f=>f.flags&e.ts.TypeFlags.Object)?i="object":i="string",p!==i&&(a=p)}let s={name:o,type:i,isRegistered:!1};if(a&&n.type){let u=Ti(e,t,t.getTypeFromTypeNode(n.type));s.meta=s.meta||{},u&&u.length>0&&s.type==="string"&&u.every(yi)?s.enum=u.map(wi):s.meta.ts=a}return n.questionToken||(s.required=!0),s}return null}function Si(e,t){let r=[],n=e.ts.getJSDocCommentsAndTags(t);for(let o of n)if(!(!e.ts.isJSDoc(o)||!o.tags))for(let i of o.tags){if(!e.ts.isJSDocParameterTag(i)||i.tagName.text!=="param")continue;let s=i.typeExpression?.type;if(!s||!e.ts.isJSDocTypeLiteral(s))continue;let u=s.jsDocPropertyTags;if(u)for(let p of u){if(!e.ts.isJSDocPropertyLikeTag(p))continue;let m=p.name;if(!e.ts.isQualifiedName(m))continue;let f=p.typeExpression;if(!f)continue;let l="";switch(f.type.kind){case e.ts.SyntaxKind.StringKeyword:{l="string";break}case e.ts.SyntaxKind.NumberKeyword:{l="number";break}case e.ts.SyntaxKind.BooleanKeyword:{l="boolean";break}default:continue}let C={name:m.right.text,type:l,isRegistered:!1};r.push(C)}}return r.filter(nr)}var Ai=["ClassicComponent","FunctionComponent","IntrinsicElements","JSX","ReactNode","ReactElement","ReactPortal"];function Fi(e){return typeof e!="string"?!1:!!Ai.some(t=>e.includes(t))}function en(e){return typeof e=="string"&&(e=e.trim(),Pi.some(t=>t.value===e))?{builderType:e,knownType:!0}:{builderType:"string",knownType:!1}}var Pi=[{value:"boolean",text:"boolean"},{value:"color",text:"color (provides a color in hex or rgb)"},{value:"date",text:"date (same format as the Date constructor)"},{value:"email",text:"email"},{value:"file",text:"file (uploads a file and provides a url)"},{value:"list",text:"list (collection of items)"},{value:"longText",text:"longText (multiline text editor)"},{value:"number",text:"number"},{value:"object",text:"object (set of specific names and values)"},{value:"richText",text:"richText (provides value as html)"},{value:"string",text:"string"}];function yi(e){return/^['"].*['"]$/.test(e)}function wi(e){return(e.startsWith('"')||e.startsWith("'"))&&(e.endsWith('"')||e.endsWith("'"))?e.slice(1,-1):e}var Ti=(e,t,r)=>{let n=new Set;tr(e,t,r,n);let o=n.delete("true"),i=n.delete("false");(o||i)&&n.add("boolean");let a=Array.from(n.keys()).sort();if(a.length>1&&(a=a.map(s=>s.indexOf("=>")>=0?`(${s})`:s)),!(a.length>20))return a},bi=(e,t,r)=>{let n=e.ts.TypeFormatFlags.InElementType|e.ts.TypeFormatFlags.NoTruncation;return t.typeToString(r,void 0,n)},tr=(e,t,r,n)=>{if(r.isUnion())r.types.forEach(o=>{tr(e,t,o,n)});else if(r.isLiteral()){let o=bi(e,t,r);n.add(o)}};function nr(e){let t=e?.name;if(typeof t!="string"||t===""||t.startsWith("aria")||t.startsWith("data-"))return!1;if(t.startsWith("on")&&t.length>2){let r=t.charAt(2);if(r.toUpperCase()===r)return!1}return!vi.has(t.toLowerCase())}var vi=new Set(["about","accessKey","accessKeyLabel","asChild","autoCapitalize","autoCorrect","autoFocus","autoSave","blur","contentEditable","contextMenu","dangerouslySetInnerHTML","datatype","defaultChecked","defaultValue","dir","draggable","enterKeyHint","focus","form","formAction","formEncType","formMethod","formNoValidate","formTarget","inlist","innerText","inputMode","is","isContentEditable","itemID","itemProp","itemRef","itemScope","itemType","lang","nonce","offsetHeight","offsetLeft","offsetTop","offsetWidth","outerText","prefix","property","radioGroup","rel","resource","results","rev","role","security","slot","spellCheck","suppressContentEditableWarning","suppressHydrationWarning","tabIndex","translate","typeof","unselectable","vocab"].map(e=>e.toLowerCase()));function ne(e,t,r){for(let n of r.properties){if(!e.ts.isPropertyAssignment(n))continue;let o=N(e,n);if(o==="name"&&e.ts.isStringLiteral(n.initializer)){t.name=n.initializer.text;continue}if(o==="description"&&e.ts.isStringLiteral(n.initializer)){t.description=n.initializer.text;continue}if(o==="image"&&e.ts.isStringLiteral(n.initializer)){t.image=n.initializer.text;continue}if(o==="inputs"&&e.ts.isArrayLiteralExpression(n.initializer)){let i=Ii(e,n.initializer);ie(t,i);continue}if(o==="meta"&&e.ts.isObjectLiteralExpression(n.initializer)){let i=gt(e,n.initializer);i&&typeof i=="object"&&(t.meta=i);continue}}return t}function Ii(e,t){let r=[];for(let n of t.elements)e.ts.isObjectLiteralExpression(n)&&r.push(Ri(e,n));return r}function Ri(e,t){let r=gt(e,t),n=ji(r);return n.isRegistered=!0,n}function Q(e,t,r){let n=Bi(r);return t=dt(e,t,"name",n.name,!1),t=dt(e,t,"description",n.description),t=dt(e,t,"image",n.image),t=Ni(e,t,n),Vi(e,t)}function Ni(e,t,r){let n=null,o=t.properties.filter(s=>e.ts.isPropertyAssignment(s)&&e.ts.isIdentifier(s.name)),i=o.findIndex(s=>e.ts.isIdentifier(s.name)&&s.name.text==="inputs"),a=[...r.inputs??[]];if(i>-1){if(a.length===0)return dt(e,t,"inputs",null);let s=o[i];e.ts.isPropertyAssignment(s)&&e.ts.isArrayLiteralExpression(s.initializer)&&(n=s.initializer)}return a.length===0?t:(n=ki(e,n||e.ts.factory.createArrayLiteralExpression(),a),i>-1?o[i]=e.ts.factory.updatePropertyAssignment(o[i],o[i].name,n):o.push(e.ts.factory.createPropertyAssignment("inputs",n)),e.ts.factory.updateObjectLiteralExpression(t,o))}function Bi(e){return{name:e.name,description:e.description,image:e.image,inputs:(e.inputs||[]).filter(r=>r.isRegistered).map(Oi)}}function Oi(e){let t={name:e.name,type:e.type};return(Z(e.defaultValue)||ct(e.defaultValue)||Ze(e.defaultValue))&&(t.defaultValue=e.defaultValue),Z(e.friendlyName)&&(t.friendlyName=e.friendlyName),Z(e.helperText)&&(t.helperText=e.helperText),e.required===!0&&(t.required=!0),Array.isArray(e.enum)&&(t.enum=e.enum),e.hideFromUI===!0&&(t.hideFromUI=!0),typeof e.meta=="object"&&e.meta!=null&&Object.keys(e.meta).length>0&&(t.meta=e.meta),t}function ki(e,t,r){let n=t.elements.filter(o=>{if(!e.ts.isObjectLiteralExpression(o))return!1;let i=o.properties.find(s=>N(e,s)==="name");if(!i)return!1;let a=i.initializer;return e.ts.isStringLiteral(a)?r.some(s=>s.name===a.text):!1});for(let o of r)n=Li(e,n,o);return n.sort((o,i)=>{let a=o.properties.find(l=>N(e,l)==="name"),s=i.properties.find(l=>N(e,l)==="name"),u=a?.initializer,p=s?.initializer,m=u&&e.ts.isStringLiteral(u)?u.text:"zz",f=p&&e.ts.isStringLiteral(p)?p.text:"zz";return m.toLowerCase().localeCompare(f.toLowerCase())}),e.ts.factory.updateArrayLiteralExpression(t,n)}function Li(e,t,r){let n=t.findIndex(o=>o.properties.some(i=>{let a=N(e,i);return e.ts.isPropertyAssignment(i)&&a==="name"&&e.ts.isStringLiteral(i.initializer)&&i.initializer.text===r.name}));if(n>-1)t[n]=rr(e,t[n],r);else{let o=rr(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("name",e.ts.factory.createStringLiteral(r.name))],!0),r);t.push(o)}return t}function rr(e,t,r){let n=t.properties.filter(i=>e.ts.isPropertyAssignment(i)),o=Object.keys(r).filter(i=>i!=="isRegistered");for(let i of o)n=_i(e,n,r,i);return n=$i(e,n.filter(i=>{let a=N(e,i);return o.includes(a)})),e.ts.factory.updateObjectLiteralExpression(t,n)}function _i(e,t,r,n){let o=t.findIndex(i=>e.ts.isIdentifier(i.name)&&i.name.text===n);return o>-1?t[o]=e.ts.factory.updatePropertyAssignment(t[o],t[o].name,ft(e,r[n])):t.push(e.ts.factory.createPropertyAssignment(n,ft(e,r[n]))),t}function ie(e,t){for(let r of t){let n=e.inputs.findIndex(o=>o.name===r.name);n>-1?(r.isRegistered||!e.inputs[n].isRegistered)&&(e.inputs[n]=r):e.inputs.push(r)}e.acceptsChildren=tn(e)}function ji(e){let t=en(e.type),r={name:e.name.trim(),type:t.builderType};return Z(e.friendlyName)&&e.friendlyName.trim()!==e.name.trim()&&(r.friendlyName=e.friendlyName),(Z(e.defaultValue)||ct(e.defaultValue)||Ze(e.defaultValue))&&(r.defaultValue=e.defaultValue),Z(e.helperText)&&(r.helperText=e.helperText),Ze(e.required)&&(r.required=e.required),typeof e.meta=="object"&&e.meta!=null&&Object.keys(e.meta).length>0&&(r.meta=e.meta),Array.isArray(e.enum)&&e.enum.length>0&&(r.enum=e.enum),e.hideFromUI===!0&&(r.hideFromUI=!0),nn(r)}function tn(e){let t=e.inputs.some(n=>n.name==="children"),r=e.inputs.some(n=>n.meta?.ts==="ReactNode");return!!(t||r||e.acceptsChildren===!0)}function nn(e){if(e.name==="children"&&(e.hideFromUI=!0,delete e.required),e.type==="object"&&e.defaultValue==null&&(e.hideFromUI=!0),e.type==="list"&&e.defaultValue==null&&(e.hideFromUI=!0),e.meta){let t=e.meta.ts;typeof t=="string"&&(t=t.trim(),t.endsWith("ReactNode")&&(t="ReactNode"),e.meta.ts=t,t==="ReactNode"&&(e.hideFromUI=!0))}return e}function Vi(e,t){let r=[...t.properties].sort((n,o)=>{let i=N(e,n)||"zz",a=N(e,o)||"zz";if(i==="inputs")return 1;let s=or.indexOf(i),u=or.indexOf(a);return s>-1?u>-1&&s>u?1:-1:u>-1?s>-1&&u<s?-1:1:i.localeCompare(a)});return e.ts.factory.updateObjectLiteralExpression(t,r)}var or=["component","name","description"];function $i(e,t){return[...t].sort((n,o)=>{let i=N(e,n)||"zz",a=N(e,o)||"zz",s=ir.indexOf(i),u=ir.indexOf(a);return s>-1?u>-1&&s>u?1:-1:u>-1?s>-1&&u<s?-1:1:i.localeCompare(a)})}var ir=["name","type"];function tt(e,t){for(let r of t.properties){if(!e.ts.isPropertyAssignment(r)||!e.ts.isIdentifier(r.name))continue;if(N(e,r)==="canHaveChildren"){let{initializer:o}=r;return o.kind===e.ts.SyntaxKind.TrueKeyword}}return!1}function ar(e,t){let r=`Builder.registerComponent(
12
12
  `;if(e.appDir)t.acceptsChildren?r+=` withChildren(${t.importName}),
13
13
  `:r+=` ${t.importName},
14
14
  `;else{let o=t.externalImportPath?t.externalImportPath:B(e,e.registryPath,t.filePath);t.exportName==="default"?t.acceptsChildren?r+=` withChildren(dynamic(() => import(${JSON.stringify(o)}))),
@@ -18,8 +18,8 @@ ${r}=${n}
18
18
  `}r+=` {
19
19
  name: "${t.name}",
20
20
  }
21
- `,r+=");";let n=It(e,r);return nn(e,n,t)}function nn(e,t,r){if(!e.ts.isExpressionStatement(t))return t;let n=t.expression;if(!e.ts.isCallExpression(n))return t;let o=[...n.arguments];if(o.length<2)return t;r.acceptsChildren?e.ts.isCallExpression(o[0])&&e.ts.isIdentifier(o[0].expression)&&o[0].expression.text==="withChildren"||(o[0]=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("withChildren"),void 0,[o[0]])):e.ts.isCallExpression(o[0])&&e.ts.isIdentifier(o[0].expression)&&o[0].expression.text==="withChildren"&&(o[0]=o[0].arguments[0]);let i=o[1];return e.ts.isObjectLiteralExpression(i)?(o[1]=Q(e,i,r),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(n,n.expression,n.typeArguments,o))):t}async function G(e,t){if(!Array.isArray(t)||t.length===0)throw new Error(`createTsProgram() Invalid filePaths: ${t}`);let r=await Un(e,t[0]),n=e.join(r,"typescript","lib"),o=new Map,i={fileExists:a=>{if(a=e.normalize(a),a.includes("node_modules")){let s=dt.get(a);if(!s){try{e.statSync(a).isFile()?s={exists:!0,content:e.readFileSync(a)}:s={exists:!1}}catch{s={exists:!1}}dt.set(a,s)}return s.exists}return o.has(a)||o.set(a,e.existsSync(a)),o.get(a)},getCanonicalFileName:a=>e.normalize(a),getCurrentDirectory:()=>e.cwd(),getDefaultLibFileName:()=>e.join(n,"lib.d.ts"),getDefaultLibLocation:()=>n,getNewLine:()=>`
22
- `,getSourceFile:a=>{if(a=e.normalize(a),a.includes("node_modules")){let u=dt.get(a);if(u)return I(e,u.content)}let s=e.readFileSync(a);if(s==null){let u=e.basename(a),p=e.extname(u).toLowerCase();if(a.startsWith(n)&&p===".ts"&&(s=sr.get(u),s==null&&typeof self<"u"&&typeof fetch=="function"))throw new Nt(u)}return a.includes("node_modules")&&(s?dt.set(a,{exists:!0,content:s}):dt.set(a,{exists:!1})),I(e,s)},readFile:a=>{let s=e.readFileSync(a);return typeof s=="string"?s:void 0},useCaseSensitiveFileNames:()=>!1,writeFile:()=>{}};for(;;)try{return Vi(e,i,t)}catch(a){if(a instanceof Nt){await $i(e,a.libName);continue}throw console.error("createTsProgram",a),new Error(`createTsProgram() Could not create program for: ${t[0]}`)}}function Vi(e,t,r){let n={rootNames:[...r],options:{},host:t},o=e.ts.findConfigFile(e.dirname(r[0]),i=>e.existsSync(i));if(o){let i=ar.get(o);if(!i){let a=e.ts.readConfigFile(o,s=>{let u=e.readFileSync(s);return typeof u=="string"?u:void 0});a.error?console.error("error reading tsconfig for createTsProgram"):(i=e.ts.parseJsonConfigFileContent(a.config,e.ts.sys||{useCaseSensitiveFileNames:!1,readDirectory:(u,p)=>e.readdirSync(u),fileExists:u=>e.existsSync(u),readFile:u=>e.readFileSync(u)||void 0},e.dirname(o),void 0,o).options,ar.set(o,i))}i&&(n.options=oe(i))}return n.options.noEmit=!0,n.options.isolatedModules=!1,n.options.strict=!1,n.options.jsx=e.ts.JsxEmit.Preserve,n.options.allowJs=!0,e.ts.createProgram(n)}async function tt(e,t,r){r||(r=await G(e,[t]));let n=r.getSourceFile(t);if(!n)throw new Error(`getTypeChecker() Could not find source file: ${t}`);return{typeChecker:r.getTypeChecker(),sourceFile:n}}var Nt=class{constructor(t){this.libName=t}};async function $i(e,t){let r=`https://cdn.jsdelivr.net/npm/typescript@${e.ts.version}/lib/${t}`;Rt.has(t)||Rt.set(t,fetch(r).then(n=>n.text()).then(n=>{sr.set(t,n)})),await Rt.get(t),Rt.delete(t)}var sr=new Map,Rt=new Map,dt=new Map,ar=new Map;function v(e,t,r,n="esm"){return Array.isArray(r.namedImports)&&r.namedImports.forEach(o=>{t=Ki(e,t,o,r.importPath,!!r.isTypeOnly,n)}),typeof r.defaultImport=="string"&&(t=Mi(e,t,r.defaultImport,r.importPath,n)),t}function Ki(e,t,r,n,o,i){return i==="cjs"?pr(e,t,null,r,n):ur(e,t,null,r,n,o)}function Mi(e,t,r,n,o){return o==="cjs"?pr(e,t,r,null,n):ur(e,t,r,null,n,!1)}function ur(e,t,r,n,o,i){let a=[...t.statements],s=0,u=!1,p=!1;for(let d=0;d<a.length;d++){let C=a[d];if(!e.ts.isImportDeclaration(C)||(s=d,!C.moduleSpecifier||!e.ts.isStringLiteral(C.moduleSpecifier))||C.moduleSpecifier.text!==o||!!C.importClause?.isTypeOnly!==i)continue;let l=[],D=C.importClause?.namedBindings;if(D&&e.ts.isNamedImports(D)&&D.elements&&l.push(...D.elements),typeof n=="string"){if(l.some(x=>x.name.text===n))return t;l.push(e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(n))),l.sort((x,S)=>x.name.text.localeCompare(S.name.text)),u=!0}let g=C.importClause?C.importClause.name:void 0;if(typeof r=="string"){if(g&&g.text===r)return t;g=e.ts.factory.createIdentifier(r),p=!0}if(u||p)return a[d]=e.ts.factory.updateImportDeclaration(C,void 0,e.ts.factory.createImportClause(i,g,e.ts.factory.createNamedImports(l)),C.moduleSpecifier,void 0),e.ts.factory.updateSourceFile(t,a)}let m,f;typeof r=="string"&&(m=e.ts.factory.createIdentifier(r)),typeof n=="string"&&(f=e.ts.factory.createNamedImports([e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(n))]));let c=e.ts.factory.createImportDeclaration(void 0,e.ts.factory.createImportClause(i,m,f),e.ts.factory.createStringLiteral(o));return a.splice(s,0,c),e.ts.factory.updateSourceFile(t,a)}function pr(e,t,r,n,o){let i=[...t.statements],a=0;for(let s=0;s<i.length;s++){let u=i[s];if(e.ts.isVariableStatement(u))for(let p=0;p<u.declarationList.declarations.length;p++){let m=[...u.declarationList.declarations],f=m[p],c=f.initializer;if(!c||!e.ts.isCallExpression(c))continue;let d=c.expression;if(!e.ts.isIdentifier(d)||d.text!=="require"||c.arguments.length!==1)continue;let C=c.arguments[0];if(e.ts.isStringLiteral(C)&&(a=s,C.text===o)){if(e.ts.isIdentifier(f.name)&&typeof r=="string")return f.name.text===r?t:(m[p]=e.ts.factory.updateVariableDeclaration(f,e.ts.factory.createIdentifier(r),f.exclamationToken,f.type,f.initializer),i[s]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,m)),e.ts.factory.updateSourceFile(t,i));if(e.ts.isObjectBindingPattern(f.name)&&typeof n=="string"){let l=[...f.name.elements];return l.some(g=>!e.ts.isBindingElement(g)||!e.ts.isIdentifier(g.name)?!1:g.name.text===n)?t:(l.push(e.ts.factory.createBindingElement(void 0,void 0,n)),l.sort((g,x)=>!e.ts.isBindingElement(g)||!e.ts.isIdentifier(g.name)||!e.ts.isBindingElement(x)||!e.ts.isIdentifier(x.name)?0:g.name.text.localeCompare(x.name.text)),m[p]=e.ts.factory.updateVariableDeclaration(f,e.ts.factory.createObjectBindingPattern(l),f.exclamationToken,f.type,f.initializer),i[s]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,m)),e.ts.factory.updateSourceFile(t,i))}}}}if(typeof r=="string"){let s=e.ts.factory.createVariableStatement(void 0,e.ts.factory.createVariableDeclarationList([e.ts.factory.createVariableDeclaration(r,void 0,void 0,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("require"),void 0,[e.ts.factory.createStringLiteral(o)]))],e.ts.NodeFlags.Const));return i.splice(a,0,s),e.ts.factory.updateSourceFile(t,i)}if(typeof n=="string"){let s=e.ts.factory.createVariableStatement(void 0,e.ts.factory.createVariableDeclarationList([e.ts.factory.createVariableDeclaration(e.ts.factory.createObjectBindingPattern([e.ts.factory.createBindingElement(void 0,void 0,n)]),void 0,void 0,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("require"),void 0,[e.ts.factory.createStringLiteral(o)]))],e.ts.NodeFlags.Const));return i.splice(a,0,s),e.ts.factory.updateSourceFile(t,i)}return t}function ue(e,t,r="esm"){return r==="cjs"?zi(e,t):Ui(e,t)}function Ui(e,t){let r=[];for(let n of t.statements){if(e.ts.isExportDeclaration(n)){if(n.exportClause&&e.ts.isNamedExports(n.exportClause)){for(let o of n.exportClause.elements)if(n.moduleSpecifier&&r.push({isDefaultExport:!1,statement:n,node:o}),e.ts.isIdentifier(o.name)){let i=o.name.text;for(let a of t.statements)if(e.ts.isVariableStatement(a))for(let s of a.declarationList.declarations)e.ts.isIdentifier(s.name)&&s.name.text===i&&r.push({isDefaultExport:!1,statement:a,node:a});else e.ts.isFunctionDeclaration(a)&&a.name&&a.name.text===i&&r.push({isDefaultExport:!1,statement:a,node:a})}}else!n.exportClause&&n.moduleSpecifier&&r.push({isDefaultExport:!1,statement:n,node:n});continue}if(e.ts.isExportAssignment(n)){let o=n.flags===e.ts.NodeFlags.None,i=n.expression;if(e.ts.isIdentifier(i)){let a=i.text;for(let s of t.statements){if(e.ts.isVariableStatement(s))for(let u of s.declarationList.declarations)e.ts.isIdentifier(u.name)&&u.name.text===a&&r.push({isDefaultExport:o,statement:s,node:s});e.ts.isFunctionDeclaration(s)&&s.name?.text===a&&r.push({isDefaultExport:o,statement:s,node:s})}}else(e.ts.isArrowFunction(i)||e.ts.isCallExpression(i)||e.ts.isFunctionDeclaration(i)||e.ts.isObjectLiteralExpression(i))&&r.push({isDefaultExport:o,statement:n,node:i});continue}if((e.ts.isVariableStatement(n)||e.ts.isFunctionDeclaration(n))&&n.modifiers&&n.modifiers.some(o=>o.kind===e.ts.SyntaxKind.ExportKeyword)){r.push({isDefaultExport:n.modifiers.some(o=>o.kind===e.ts.SyntaxKind.DefaultKeyword),statement:n,node:n});continue}}return r}function zi(e,t){let r=[];for(let n of t.statements)if(e.ts.isExpressionStatement(n)&&e.ts.isBinaryExpression(n.expression)&&e.ts.isPropertyAccessExpression(n.expression.left)){let o=n.expression.left,i=n.expression.right;if(!e.ts.isIdentifier(o.expression))continue;if(o.expression.text==="module"&&o.name.text==="exports"){if(e.ts.isIdentifier(i)){let a=i.text;for(let s of t.statements)if(e.ts.isVariableStatement(s))for(let u of s.declarationList.declarations)e.ts.isIdentifier(u.name)&&u.name.text===a&&r.push({isDefaultExport:!0,statement:s,node:s});else e.ts.isFunctionDeclaration(s)&&s.name&&s.name.text===a&&r.push({isDefaultExport:!0,statement:s,node:s})}else r.push({isDefaultExport:!0,statement:n,node:i});continue}}return r}function qi(e,t,r){for(let n of t.statements)if(e.ts.isImportDeclaration(n)&&n.importClause){if(n.importClause.namedBindings&&e.ts.isNamedImports(n.importClause.namedBindings)){for(let o of n.importClause.namedBindings.elements)if(e.ts.isIdentifier(o.name)&&o.name.text===r&&e.ts.isStringLiteral(n.moduleSpecifier))return{importPath:n.moduleSpecifier.text,exportType:"named"}}if(n.importClause.name&&n.importClause.name.text===r&&e.ts.isStringLiteral(n.moduleSpecifier))return{importPath:n.moduleSpecifier.text,exportType:"default"}}return null}async function xe(e,t,r,n){let o=qi(e,r,n);if(o){let i=await gt(e,e.normalize(e.resolve(e.dirname(t),o.importPath))),a=e.relative(e.getAppRootDir(),i);return{displayFilePath:k(e,i),filePath:i,relFilePath:a,importPath:o.importPath,exportType:o.exportType}}return null}function nt(e,t,r){for(let n=0;n<t.statements.length;n++){let o=t.statements[n];if(e.ts.isVariableStatement(o)){for(let i of o.declarationList.declarations)if(e.ts.isIdentifier(i.name)&&i.name.text===r)return{statement:o,statementIndex:n}}}return null}function J(e,t,r){let n=nt(e,t,r);if(n&&n.statement.declarationList.declarations.length>0){let o=n.statement.declarationList.declarations[0];if(o.initializer&&e.ts.isArrayLiteralExpression(o.initializer))return{statement:n.statement,statementIndex:n.statementIndex,variableDeclaration:o,arrayLiteralExp:o.initializer}}return null}function Bt(e,t){if(t){if(Ji(e,t))return!0;let r=!1;if(t.forEachChild(n=>{Bt(e,n)&&(r=!0)}),r)return!0}return!1}function Ji(e,t){return e.ts.isJsxElement(t)||e.ts.isJsxOpeningElement(t)||e.ts.isJsxOpeningFragment(t)||e.ts.isJsxSelfClosingElement(t)||e.ts.isJsxFragment(t)||e.ts.isJsxChild(t)}async function gt(e,t){let r=e.extname(t).toLowerCase();if(r===""||!rn.includes(r)){for(let n of rn){let o=t+n;if(await e.exists(o))return o}for(let n of rn){let o=e.join(t,"index"+n);if(await e.exists(o))return o}}return t}var rn=[".tsx",".jsx",".ts",".js"];function Dt(e,t,r){if(!r||!t)return;let n=t.getSymbolAtLocation(r);if(!n)return;let o=n.valueDeclaration;if(!o)return;let i=o.getSourceFile().fileName,a=Qi(e,i);return a?[{name:a}]:void 0}function Qi(e,t){if(typeof t=="string"){t=e.normalize(ce(t));let r=t.split("/"),n=r.lastIndexOf("node_modules");if(n>-1){let o=r.slice(n+1),i=o[0];if(i)return i.startsWith("@")&&o[1]&&(i+="/"+o[1]),i}}}function he(e){let t=[];for(let r of e)if(r.dependencies)for(let n of r.dependencies)t.some(o=>o.name===n.name)||t.push({...n});return t.sort((r,n)=>r.name.localeCompare(n.name))}async function rt(e,t){if(!t.some(a=>!a.isRegistered))return t;let n=await G(e,t.map(a=>a.filePath)),o=n.getTypeChecker();return await Promise.all(t.map(async a=>{let s=n.getSourceFile(a.filePath);if(s){let p=(await Ve(e,o,a.filePath,s)).find(m=>m.cmpInfo.id===a.id);p&&(a.inputs=Je(e,o,p.node.fnNode))}return a}))}async function ot(e,t,r){if(t.node.fnNode){let{sourceFile:n,typeChecker:o}=await tt(e,t.cmpInfo.filePath,r),a=(await Ve(e,o,t.cmpInfo.filePath,n)).find(s=>s.cmpInfo.id===t.cmpInfo.id);if(!a)throw new Error(`createComponentInputs() Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return Je(e,o,a.node.fnNode)}return[]}async function cr(e,t){let r=e.extname(t).toLowerCase();if(r===".tsx"||r===".jsx"||r===".ts"||r===".js"){let n=await e.readFile(t);if(n)return Wi(e,t,n)}return null}function Wi(e,t,r){let n=I(e,r);return Ve(e,null,t,n)}async function Ve(e,t,r,n){let o=[];for(let a of n.statements)if(e.ts.isExpressionStatement(a)&&e.ts.isStringLiteral(a.expression)&&a.expression.text==="use server")return o;let i=ue(e,n);return r=e.normalize(r),await Promise.all(i.map(async a=>{let s=await Yi(e,t,r,a);o.push(...s)})),o}async function Yi(e,t,r,n){let o=[],i=e.relative(e.getAppRootDir(),r),a=V(e,r);if(e.ts.isVariableStatement(n.node)){for(let s of n.node.declarationList.declarations){if(!e.ts.isIdentifier(s.name)||!Ze(s.name.text))continue;let u=je(e,t,s.initializer);if(u){let p=u.name||s.name.text,m=n.isDefaultExport?"default":p,f=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await $(e,r,m),displayFilePath:k(e,r),name:K(p),inputs:[],exportName:m,exportType:f,importName:p,filePath:r,relFilePath:i,importPath:a,dependencies:u.deps},node:u})}}return o}if(e.ts.isArrowFunction(n.node)){let s=je(e,t,n.node);if(s){let u=se(e,r),p=n.isDefaultExport?"default":u,m=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await $(e,r,p),displayFilePath:k(e,r),name:u,inputs:[],exportName:p,exportType:m,importName:ze(e,r),filePath:r,relFilePath:i,importPath:a,dependencies:s.deps},node:s})}return o}if(e.ts.isFunctionExpression(n.node)||e.ts.isFunctionDeclaration(n.node)){let s=n.node.name?.text;if(s&&!Ze(s))return o;let u=je(e,t,n.node);if(u){let p=u.name||se(e,r),m=n.isDefaultExport||!u.name?"default":u.name,f=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await $(e,r,m),displayFilePath:k(e,r),name:p,inputs:[],exportName:m,exportType:f,importName:u.name||ze(e,r),filePath:r,relFilePath:i,importPath:a,dependencies:u.deps},node:u})}return o}if(e.ts.isExportSpecifier(n.node)&&Ze(n.node.getText())){let s,u=je(e,t,n.node);if(u){let p=u.name||se(e,r),m=n.isDefaultExport||!u.name?"default":u.name,f=n.isDefaultExport?"default":"named",d=n.node.parent.parent.moduleSpecifier;if(d&&e.ts.isStringLiteral(d)){let C=t?.getSymbolAtLocation(d);if(C&&C.declarations&&C.declarations.length>0){let l=C.declarations[0];(!e.ts.isSourceFile(l)||e.ts.isSourceFile(l)&&l.fileName.includes("node_modules"))&&(s=d.text)}}o.push({cmpInfo:{id:await $(e,r,m,s),displayFilePath:k(e,r),name:p,inputs:[],exportName:m,exportType:f,importName:u.name||ze(e,r),filePath:r,relFilePath:i,importPath:s||a,externalImportPath:s,dependencies:u.deps},node:u})}return o}if(e.ts.isExportDeclaration(n.node)&&n.node.exportClause===void 0){let s=n.node.moduleSpecifier;if(s&&e.ts.isStringLiteral(s)){let u=await Hi(e,t,r,s);o.push(...u)}return o}return o}function je(e,t,r){if(!r)return null;if(e.ts.isArrowFunction(r))return Bt(e,r.body)?{name:"",fnNode:r,deps:Dt(e,t,r)}:null;if(e.ts.isFunctionExpression(r)||e.ts.isFunctionDeclaration(r))return Bt(e,r.body)?{name:r.name?.text||"",fnNode:r,deps:Dt(e,t,r)}:null;if(e.ts.isCallExpression(r)){let n=r.expression;if(!e.ts.isPropertyAccessExpression(n))return null;let o=r.arguments;if(o.length===0)return null;let i=n.expression;if(!e.ts.isIdentifier(i)||i.text!=="React")return null;let a=n.name;return!e.ts.isIdentifier(a)||a.text!=="forwardRef"?null:je(e,t,o[0])}if(!t)return null;if(e.ts.isPropertyAccessExpression(r)){let n=r.expression,o=r.name;if(!e.ts.isIdentifier(n)||!e.ts.isIdentifier(o)||!Ze(o.text))return null;let a=t.getTypeAtLocation(o).getCallSignatures();if(a.length>0&&a[0].getParameters().length>0)return{name:"",fnNode:o,deps:Dt(e,t,o)}}if(e.ts.isExportSpecifier(r)){let n=r.name;return{name:n.text||"",fnNode:n,deps:Dt(e,t,n)}}if(e.ts.isExpressionStatement(r)){let n=r.expression;if(e.ts.isAsExpression(n)&&e.ts.isIdentifier(n.type)&&n.type.text==="default")return je(e,t,n.expression)}if(e.ts.isVariableStatement(r)){for(let n of r.declarationList.declarations)if(n.initializer&&e.ts.isAsExpression(n.initializer)){let o=n.initializer;if(e.ts.isIdentifier(o.type)&&o.type.text==="default"){let i=je(e,t,o.expression);if(i&&e.ts.isIdentifier(n.name))return{name:n.name.text,fnNode:i.fnNode,deps:i.deps}}}}return null}async function mr(e,t){let r=[],n=t.getSourceFiles(),o=t.getTypeChecker();return await Promise.all(n.map(async i=>{let a=e.normalize(i.fileName);if(vt(e,Gi,i.fileName)||a===e.reactConfigPath||a===e.registryPath||a===e.builderComponentPath)return;let s=await Ve(e,o,a,i);r.push(...s)})),r.sort((i,a)=>i.cmpInfo.name.localeCompare(a.cmpInfo.name))}var Gi=new Set(["node_modules","dist"]);async function Hi(e,t,r,n){let o=[],i=n.text;if(!t)return o;try{let a=t.getSymbolAtLocation(n);if(!a)return o;let s=t.getExportsOfModule(a);for(let u of s){let p=u.valueDeclaration||u.declarations?.[0];if(!p)continue;let m=u.name;if(!Ze(m)&&m!=="default"||!fr(e,t,p))continue;let f=je(e,t,p);if(f){let c=u.name,d=c==="default"?"default":"named",C=K(c),l=c==="default"?ze(e,r):c;o.push({cmpInfo:{id:await $(e,r,c,i),displayFilePath:k(e,r),name:C,inputs:[],exportName:c,exportType:d,importName:l,filePath:r,relFilePath:e.relative(e.getAppRootDir(),r),importPath:i,externalImportPath:i,dependencies:f.deps},node:f})}}}catch(a){console.error(`Error processing module ${i}:`,a)}return o}function fr(e,t,r){if(e.ts.isInterfaceDeclaration(r)||e.ts.isTypeAliasDeclaration(r))return!1;if(e.ts.isExportSpecifier(r)){let n=t.getSymbolAtLocation(r.name);if(n){let i=t.getAliasedSymbol(n).declarations?.[0];if(i)return fr(e,t,i)}return!1}if(e.ts.isFunctionDeclaration(r)||e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r)){let n=t.getSignatureFromDeclaration(r);if(n){let o=t.getReturnTypeOfSignature(n);return lr(o,t)}}return e.ts.isClassDeclaration(r)?r.heritageClauses?.some(o=>o.types.some(i=>i.expression.getText()==="React.Component"||i.expression.getText()==="Component"))??!1:e.ts.isVariableDeclaration(r)?t.getTypeAtLocation(r).getCallSignatures().some(i=>lr(t.getReturnTypeOfSignature(i),t)):!1}function lr(e,t){let r=t.typeToString(e);return r==="JSX.Element"||r==="Element"||r.includes("ReactElement")||r.includes("React.ReactElement")||r.includes("ReactNode")}async function dr(e,t){let r=[],n=t.getSourceFiles(),o=t.getTypeChecker();return await Promise.all(n.map(async i=>{let a=e.basename(i.fileName);if(e.appDir&&Xi.has(a)||e.dirname(i.fileName).includes("node_modules"))return;let s=e.normalize(i.fileName);if(s===e.nextConfigPath||s===e.registryPath||s===e.builderComponentPath)return;let u=await Ve(e,o,s,i);r.push(...u)})),r.sort((i,a)=>i.cmpInfo.name.localeCompare(a.cmpInfo.name))}var Xi=new Set(["default.tsx","default.ts","default.jsx","default.js","error.tsx","error.ts","error.jsx","error.js","layout.tsx","layout.ts","layout.jsx","layout.js","loading.tsx","loading.ts","loading.jsx","loading.js","not-found.tsx","not-found.ts","not-found.jsx","not-found.js","page.tsx","page.ts","page.jsx","page.js","route.tsx","route.ts","route.jsx","route.js","template.tsx","template.ts","template.jsx","template.js"]);function Ee(e,t){let r=[],n=[],o=[],i=[];for(let a of t.statements){if(e.ts.isImportDeclaration(a)){if(e.ts.isStringLiteral(a.moduleSpecifier)){let u=a.moduleSpecifier.text;if(!u.startsWith(".")&&!u.startsWith("/")){r.push(a);continue}}let s=a.importClause;if(s){if(s.namedBindings){n.push(a);continue}if(s.name){n.push(a);continue}}o.push(a);continue}i.push(a)}return e.ts.factory.updateSourceFile(t,[...on(e,r),...on(e,n),...on(e,o),...i])}function pe(e){let t=e.split(`
21
+ `,r+=");";let n=Rt(e,r);return rn(e,n,t)}function rn(e,t,r){if(!e.ts.isExpressionStatement(t))return t;let n=t.expression;if(!e.ts.isCallExpression(n))return t;let o=[...n.arguments];if(o.length<2)return t;r.acceptsChildren?e.ts.isCallExpression(o[0])&&e.ts.isIdentifier(o[0].expression)&&o[0].expression.text==="withChildren"||(o[0]=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("withChildren"),void 0,[o[0]])):e.ts.isCallExpression(o[0])&&e.ts.isIdentifier(o[0].expression)&&o[0].expression.text==="withChildren"&&(o[0]=o[0].arguments[0]);let i=o[1];return e.ts.isObjectLiteralExpression(i)?(o[1]=Q(e,i,r),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(n,n.expression,n.typeArguments,o))):t}async function G(e,t,r){if(!Array.isArray(t)||t.length===0)throw new Error(`createTsProgram() Invalid filePaths: ${t}`);let n=await zn(e,t[0]),o=e.join(n,"typescript","lib"),i=new Map,a={fileExists:s=>{if(s=e.normalize(s),s.includes("node_modules")){let u=Dt.get(s);if(!u){try{e.statSync(s).isFile()?u={exists:!0,content:e.readFileSync(s)}:u={exists:!1}}catch{u={exists:!1}}Dt.set(s,u)}return u.exists}return i.has(s)||i.set(s,e.existsSync(s)),i.get(s)},getCanonicalFileName:s=>e.normalize(s),getCurrentDirectory:()=>e.cwd(),getDefaultLibFileName:()=>e.join(o,"lib.d.ts"),getDefaultLibLocation:()=>o,getNewLine:()=>`
22
+ `,getSourceFile:s=>{if(s=e.normalize(s),s.includes("node_modules")){let p=Dt.get(s);if(p)return I(e,p.content)}let u=e.readFileSync(s);if(u==null){let p=e.basename(s),m=e.extname(p).toLowerCase();if(s.startsWith(o)&&m===".ts"&&(u=ur.get(p),u==null&&typeof self<"u"&&typeof fetch=="function"))throw new Bt(p)}return s.includes("node_modules")&&(u?Dt.set(s,{exists:!0,content:u}):Dt.set(s,{exists:!1})),I(e,u)},readFile:s=>{let u=e.readFileSync(s);return typeof u=="string"?u:void 0},useCaseSensitiveFileNames:()=>!1,writeFile:()=>{}};for(;;)try{return Ki(e,a,t,r)}catch(s){if(s instanceof Bt){await Mi(e,s.libName);continue}throw console.error("createTsProgram",s),new Error(`createTsProgram() Could not create program for: ${t[0]}`)}}function Ki(e,t,r,n){let o={rootNames:[...r],options:{},host:t},i=e.ts.findConfigFile(e.dirname(r[0]),a=>e.existsSync(a));if(i){let a=sr.get(i);if(!a){let s=e.ts.readConfigFile(i,u=>{let p=e.readFileSync(u);return typeof p=="string"?p:void 0});s.error?console.error("error reading tsconfig for createTsProgram"):(a=e.ts.parseJsonConfigFileContent(s.config,e.ts.sys||{useCaseSensitiveFileNames:!1,readDirectory:(p,m)=>e.readdirSync(p),fileExists:p=>e.existsSync(p),readFile:p=>e.readFileSync(p)||void 0},e.dirname(i),void 0,i).options,sr.set(i,a))}a&&(o.options=oe(a))}return o.options.noEmit=!0,o.options.isolatedModules=!1,o.options.strict=!1,o.options.jsx=e.ts.JsxEmit.Preserve,o.options.allowJs=!0,Object.assign(o.options,n),e.ts.createProgram(o)}async function nt(e,t,r){r||(r=await G(e,[t]));let n=r.getSourceFile(t);if(!n)throw new Error(`getTypeChecker() Could not find source file: ${t}`);return{typeChecker:r.getTypeChecker(),sourceFile:n}}var Bt=class{constructor(t){this.libName=t}};async function Mi(e,t){let r=`https://cdn.jsdelivr.net/npm/typescript@${e.ts.version}/lib/${t}`;Nt.has(t)||Nt.set(t,fetch(r).then(n=>n.text()).then(n=>{ur.set(t,n)})),await Nt.get(t),Nt.delete(t)}var ur=new Map,Nt=new Map,Dt=new Map,sr=new Map;function v(e,t,r,n="esm"){return Array.isArray(r.namedImports)&&r.namedImports.forEach(o=>{t=Ui(e,t,o,r.importPath,!!r.isTypeOnly,n)}),typeof r.defaultImport=="string"&&(t=zi(e,t,r.defaultImport,r.importPath,n)),t}function Ui(e,t,r,n,o,i){return i==="cjs"?lr(e,t,null,r,n):pr(e,t,null,r,n,o)}function zi(e,t,r,n,o){return o==="cjs"?lr(e,t,r,null,n):pr(e,t,r,null,n,!1)}function pr(e,t,r,n,o,i){let a=[...t.statements],s=0,u=!1,p=!1;for(let d=0;d<a.length;d++){let C=a[d];if(!e.ts.isImportDeclaration(C)||(s=d,!C.moduleSpecifier||!e.ts.isStringLiteral(C.moduleSpecifier))||C.moduleSpecifier.text!==o||!!C.importClause?.isTypeOnly!==i)continue;let c=[],D=C.importClause?.namedBindings;if(D&&e.ts.isNamedImports(D)&&D.elements&&c.push(...D.elements),typeof n=="string"){if(c.some(x=>x.name.text===n))return t;c.push(e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(n))),c.sort((x,S)=>x.name.text.localeCompare(S.name.text)),u=!0}let g=C.importClause?C.importClause.name:void 0;if(typeof r=="string"){if(g&&g.text===r)return t;g=e.ts.factory.createIdentifier(r),p=!0}if(u||p)return a[d]=e.ts.factory.updateImportDeclaration(C,void 0,e.ts.factory.createImportClause(i,g,e.ts.factory.createNamedImports(c)),C.moduleSpecifier,void 0),e.ts.factory.updateSourceFile(t,a)}let m,f;typeof r=="string"&&(m=e.ts.factory.createIdentifier(r)),typeof n=="string"&&(f=e.ts.factory.createNamedImports([e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(n))]));let l=e.ts.factory.createImportDeclaration(void 0,e.ts.factory.createImportClause(i,m,f),e.ts.factory.createStringLiteral(o));return a.splice(s,0,l),e.ts.factory.updateSourceFile(t,a)}function lr(e,t,r,n,o){let i=[...t.statements],a=0;for(let s=0;s<i.length;s++){let u=i[s];if(e.ts.isVariableStatement(u))for(let p=0;p<u.declarationList.declarations.length;p++){let m=[...u.declarationList.declarations],f=m[p],l=f.initializer;if(!l||!e.ts.isCallExpression(l))continue;let d=l.expression;if(!e.ts.isIdentifier(d)||d.text!=="require"||l.arguments.length!==1)continue;let C=l.arguments[0];if(e.ts.isStringLiteral(C)&&(a=s,C.text===o)){if(e.ts.isIdentifier(f.name)&&typeof r=="string")return f.name.text===r?t:(m[p]=e.ts.factory.updateVariableDeclaration(f,e.ts.factory.createIdentifier(r),f.exclamationToken,f.type,f.initializer),i[s]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,m)),e.ts.factory.updateSourceFile(t,i));if(e.ts.isObjectBindingPattern(f.name)&&typeof n=="string"){let c=[...f.name.elements];return c.some(g=>!e.ts.isBindingElement(g)||!e.ts.isIdentifier(g.name)?!1:g.name.text===n)?t:(c.push(e.ts.factory.createBindingElement(void 0,void 0,n)),c.sort((g,x)=>!e.ts.isBindingElement(g)||!e.ts.isIdentifier(g.name)||!e.ts.isBindingElement(x)||!e.ts.isIdentifier(x.name)?0:g.name.text.localeCompare(x.name.text)),m[p]=e.ts.factory.updateVariableDeclaration(f,e.ts.factory.createObjectBindingPattern(c),f.exclamationToken,f.type,f.initializer),i[s]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,m)),e.ts.factory.updateSourceFile(t,i))}}}}if(typeof r=="string"){let s=e.ts.factory.createVariableStatement(void 0,e.ts.factory.createVariableDeclarationList([e.ts.factory.createVariableDeclaration(r,void 0,void 0,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("require"),void 0,[e.ts.factory.createStringLiteral(o)]))],e.ts.NodeFlags.Const));return i.splice(a,0,s),e.ts.factory.updateSourceFile(t,i)}if(typeof n=="string"){let s=e.ts.factory.createVariableStatement(void 0,e.ts.factory.createVariableDeclarationList([e.ts.factory.createVariableDeclaration(e.ts.factory.createObjectBindingPattern([e.ts.factory.createBindingElement(void 0,void 0,n)]),void 0,void 0,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("require"),void 0,[e.ts.factory.createStringLiteral(o)]))],e.ts.NodeFlags.Const));return i.splice(a,0,s),e.ts.factory.updateSourceFile(t,i)}return t}function ue(e,t,r="esm"){return r==="cjs"?Ji(e,t):qi(e,t)}function qi(e,t){let r=[];for(let n of t.statements){if(e.ts.isExportDeclaration(n)){if(n.exportClause&&e.ts.isNamedExports(n.exportClause)){for(let o of n.exportClause.elements)if(n.moduleSpecifier&&r.push({isDefaultExport:!1,statement:n,node:o}),e.ts.isIdentifier(o.name)){let i=o.name.text;for(let a of t.statements)if(e.ts.isVariableStatement(a))for(let s of a.declarationList.declarations)e.ts.isIdentifier(s.name)&&s.name.text===i&&r.push({isDefaultExport:!1,statement:a,node:a});else e.ts.isFunctionDeclaration(a)&&a.name&&a.name.text===i&&r.push({isDefaultExport:!1,statement:a,node:a})}}else!n.exportClause&&n.moduleSpecifier&&r.push({isDefaultExport:!1,statement:n,node:n});continue}if(e.ts.isExportAssignment(n)){let o=n.flags===e.ts.NodeFlags.None,i=n.expression;if(e.ts.isIdentifier(i)){let a=i.text;for(let s of t.statements){if(e.ts.isVariableStatement(s))for(let u of s.declarationList.declarations)e.ts.isIdentifier(u.name)&&u.name.text===a&&r.push({isDefaultExport:o,statement:s,node:s});e.ts.isFunctionDeclaration(s)&&s.name?.text===a&&r.push({isDefaultExport:o,statement:s,node:s})}}else(e.ts.isArrowFunction(i)||e.ts.isCallExpression(i)||e.ts.isFunctionDeclaration(i)||e.ts.isObjectLiteralExpression(i))&&r.push({isDefaultExport:o,statement:n,node:i});continue}if((e.ts.isVariableStatement(n)||e.ts.isFunctionDeclaration(n))&&n.modifiers&&n.modifiers.some(o=>o.kind===e.ts.SyntaxKind.ExportKeyword)){r.push({isDefaultExport:n.modifiers.some(o=>o.kind===e.ts.SyntaxKind.DefaultKeyword),statement:n,node:n});continue}}return r}function Ji(e,t){let r=[];for(let n of t.statements)if(e.ts.isExpressionStatement(n)&&e.ts.isBinaryExpression(n.expression)&&e.ts.isPropertyAccessExpression(n.expression.left)){let o=n.expression.left,i=n.expression.right;if(!e.ts.isIdentifier(o.expression))continue;if(o.expression.text==="module"&&o.name.text==="exports"){if(e.ts.isIdentifier(i)){let a=i.text;for(let s of t.statements)if(e.ts.isVariableStatement(s))for(let u of s.declarationList.declarations)e.ts.isIdentifier(u.name)&&u.name.text===a&&r.push({isDefaultExport:!0,statement:s,node:s});else e.ts.isFunctionDeclaration(s)&&s.name&&s.name.text===a&&r.push({isDefaultExport:!0,statement:s,node:s})}else r.push({isDefaultExport:!0,statement:n,node:i});continue}}return r}function Qi(e,t,r){for(let n of t.statements)if(e.ts.isImportDeclaration(n)&&n.importClause){if(n.importClause.namedBindings&&e.ts.isNamedImports(n.importClause.namedBindings)){for(let o of n.importClause.namedBindings.elements)if(e.ts.isIdentifier(o.name)&&o.name.text===r&&e.ts.isStringLiteral(n.moduleSpecifier))return{importPath:n.moduleSpecifier.text,exportType:"named"}}if(n.importClause.name&&n.importClause.name.text===r&&e.ts.isStringLiteral(n.moduleSpecifier))return{importPath:n.moduleSpecifier.text,exportType:"default"}}return null}async function he(e,t,r,n){let o=Qi(e,r,n);if(o){let i=await Ct(e,e.normalize(e.resolve(e.dirname(t),o.importPath))),a=e.relative(e.getAppRootDir(),i);return{displayFilePath:k(e,i),filePath:i,relFilePath:a,importPath:o.importPath,exportType:o.exportType}}return null}function rt(e,t,r){for(let n=0;n<t.statements.length;n++){let o=t.statements[n];if(e.ts.isVariableStatement(o)){for(let i of o.declarationList.declarations)if(e.ts.isIdentifier(i.name)&&i.name.text===r)return{statement:o,statementIndex:n}}}return null}function J(e,t,r){let n=rt(e,t,r);if(n&&n.statement.declarationList.declarations.length>0){let o=n.statement.declarationList.declarations[0];if(o.initializer&&e.ts.isArrayLiteralExpression(o.initializer))return{statement:n.statement,statementIndex:n.statementIndex,variableDeclaration:o,arrayLiteralExp:o.initializer}}return null}function Ot(e,t){if(t){if(Wi(e,t))return!0;let r=!1;if(t.forEachChild(n=>{Ot(e,n)&&(r=!0)}),r)return!0}return!1}function Wi(e,t){return e.ts.isJsxElement(t)||e.ts.isJsxOpeningElement(t)||e.ts.isJsxOpeningFragment(t)||e.ts.isJsxSelfClosingElement(t)||e.ts.isJsxFragment(t)||e.ts.isJsxChild(t)}async function Ct(e,t){let r=e.extname(t).toLowerCase();if(r===""||!on.includes(r)){for(let n of on){let o=t+n;if(await e.exists(o))return o}for(let n of on){let o=e.join(t,"index"+n);if(await e.exists(o))return o}}return t}var on=[".tsx",".jsx",".ts",".js"];function ot(e,t,r){if(!r||!t)return;let n=t.getSymbolAtLocation(r);if(!n)return;let o=n.valueDeclaration;if(!o)return;let i=o.getSourceFile().fileName,a=Yi(e,i);return a?[{name:a}]:void 0}function Yi(e,t){if(typeof t=="string"){t=e.normalize(ce(t));let r=t.split("/"),n=r.lastIndexOf("node_modules");if(n>-1){let o=r.slice(n+1),i=o[0];if(i)return i.startsWith("@")&&o[1]&&(i+="/"+o[1]),i}}}function Ee(e){let t=[];for(let r of e)if(r.dependencies)for(let n of r.dependencies)t.some(o=>o.name===n.name)||t.push({...n});return t.sort((r,n)=>r.name.localeCompare(n.name))}function cr(e,t,r="esm"){return r==="cjs"?Xi(e,t):Hi(e,t)}var Gi=/^(@\w|\w)/;function Hi(e,t){let r=[];for(let n of t.statements)if(e.ts.isImportDeclaration(n)&&e.ts.isLiteralExpression(n.moduleSpecifier)){if(!Gi.test(n.moduleSpecifier.text)||n.importClause?.isTypeOnly)continue;if(n.importClause&&n.importClause.namedBindings&&e.ts.isNamedImports(n.importClause.namedBindings))for(let o of n.importClause.namedBindings.elements)o.isTypeOnly||r.push({isDefaultExport:!1,statement:n,node:o.name});n.importClause&&n.importClause.name&&r.push({isDefaultExport:!0,statement:n,node:n.importClause.name})}return r}function Xi(e,t){return[]}async function it(e,t){if(!t.some(a=>!a.isRegistered))return t;let n=await G(e,t.map(a=>a.filePath)),o=n.getTypeChecker();return await Promise.all(t.map(async a=>{let s=n.getSourceFile(a.filePath);if(s){let p=(await $e(e,o,a.filePath,s,!1)).find(m=>m.cmpInfo.id===a.id);p&&(a.inputs=Qe(e,o,p.node.fnNode))}return a}))}async function at(e,t,r,n){if(t.node.fnNode){let{sourceFile:o,typeChecker:i}=await nt(e,t.cmpInfo.filePath,r),s=(await $e(e,i,t.cmpInfo.filePath,o,n)).find(u=>u.cmpInfo.id===t.cmpInfo.id);if(!s)throw new Error(`createComponentInputs() Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return Qe(e,i,s.node.fnNode)}return[]}async function fr(e,t,r){let n=e.extname(t).toLowerCase();if(n===".tsx"||n===".jsx"||n===".ts"||n===".js"){let o=await e.readFile(t);if(o)return Zi(e,t,o,r)}return null}function Zi(e,t,r,n=!1){let o=I(e,r);return $e(e,null,t,o,n)}async function $e(e,t,r,n,o){let i=[];for(let s of n.statements)if(e.ts.isExpressionStatement(s)&&e.ts.isStringLiteral(s.expression)&&s.expression.text==="use server")return i;let a=ue(e,n);return o&&a.push(...cr(e,n)),r=e.normalize(r),await Promise.all(a.map(async s=>{let u=await ea(e,t,r,s);i.push(...u)})),i}async function ea(e,t,r,n){let o=[],i=e.relative(e.getAppRootDir(),r),a=V(e,r);if(e.ts.isVariableStatement(n.node)){for(let s of n.node.declarationList.declarations){if(!e.ts.isIdentifier(s.name)||!et(s.name.text))continue;let u=Re(e,t,s.initializer);if(u){let p=u.name||s.name.text,m=n.isDefaultExport?"default":p,f=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await $(e,r,m),displayFilePath:k(e,r),name:K(p),inputs:[],exportName:m,exportType:f,importName:p,filePath:r,relFilePath:i,importPath:a,dependencies:u.deps},node:u})}}return o}if(e.ts.isArrowFunction(n.node)){let s=Re(e,t,n.node);if(s){let u=se(e,r),p=n.isDefaultExport?"default":u,m=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await $(e,r,p),displayFilePath:k(e,r),name:u,inputs:[],exportName:p,exportType:m,importName:qe(e,r),filePath:r,relFilePath:i,importPath:a,dependencies:s.deps},node:s})}return o}if(e.ts.isFunctionExpression(n.node)||e.ts.isFunctionDeclaration(n.node)){let s=n.node.name?.text;if(s&&!et(s))return o;let u=Re(e,t,n.node);if(u){let p=u.name||se(e,r),m=n.isDefaultExport||!u.name?"default":u.name,f=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await $(e,r,m),displayFilePath:k(e,r),name:p,inputs:[],exportName:m,exportType:f,importName:u.name||qe(e,r),filePath:r,relFilePath:i,importPath:a,dependencies:u.deps},node:u})}return o}if((e.ts.isExportSpecifier(n.node)||e.ts.isIdentifier(n.node))&&et(n.node.getText())){let s,u=Re(e,t,n.node);if(u){let p=u.name||se(e,r),m=n.isDefaultExport||!u.name?"default":u.name,f=n.isDefaultExport?"default":"named",l=ta(e,n.node)?.moduleSpecifier??na(e,n.node)?.moduleSpecifier;if(l&&e.ts.isStringLiteral(l)){let d=t?.getSymbolAtLocation(l);if(d&&d.declarations&&d.declarations.length>0){let C=d.declarations[0];(!e.ts.isSourceFile(C)||e.ts.isSourceFile(C)&&C.fileName.includes("node_modules"))&&(s=l.text)}}o.push({cmpInfo:{id:await $(e,r,m,s),displayFilePath:k(e,r),name:p,inputs:[],exportName:m,exportType:f,importName:u.name||qe(e,r),filePath:r,relFilePath:i,importPath:s||a,externalImportPath:s,dependencies:u.deps},node:u})}return o}if(e.ts.isExportDeclaration(n.node)&&n.node.exportClause===void 0){let s=n.node.moduleSpecifier;if(s&&e.ts.isStringLiteral(s)){let u=await oa(e,t,r,s);o.push(...u)}return o}return o}function ta(e,t){for(;t;){if(e.ts.isExportDeclaration(t))return t;t=t.parent}return null}function na(e,t){for(;t;){if(e.ts.isImportDeclaration(t))return t;t=t.parent}return null}function Re(e,t,r){if(!r)return null;if(e.ts.isArrowFunction(r))return Ot(e,r.body)?{name:"",fnNode:r,deps:ot(e,t,r)}:null;if(e.ts.isFunctionExpression(r)||e.ts.isFunctionDeclaration(r))return Ot(e,r.body)?{name:r.name?.text||"",fnNode:r,deps:ot(e,t,r)}:null;if(e.ts.isCallExpression(r)){let n=r.expression;if(e.ts.isPropertyAccessExpression(n)){let o=r.arguments;if(o.length===0)return null;let i=n.expression;if(!e.ts.isIdentifier(i)||i.text!=="React")return null;let a=n.name;return!e.ts.isIdentifier(a)||a.text!=="forwardRef"?null:Re(e,t,o[0])}else if(e.ts.isIdentifier(n)&&n.text==="observer"){let o=r.arguments;return o.length===0?null:Re(e,t,o[0])}return null}if(!t)return null;if(e.ts.isPropertyAccessExpression(r)){let n=r.expression,o=r.name;if(!e.ts.isIdentifier(n)||!e.ts.isIdentifier(o)||!et(o.text))return null;let a=t.getTypeAtLocation(o).getCallSignatures();if(a.length>0&&a[0].getParameters().length>0)return{name:"",fnNode:o,deps:ot(e,t,o)}}if(e.ts.isExportSpecifier(r)){let n=r.name;return{name:n.text||"",fnNode:n,deps:ot(e,t,n)}}if(e.ts.isIdentifier(r))return{name:r.text||"",fnNode:r,deps:ot(e,t,r)};if(e.ts.isExpressionStatement(r)){let n=r.expression;if(e.ts.isAsExpression(n)&&e.ts.isIdentifier(n.type)&&n.type.text==="default")return Re(e,t,n.expression)}if(e.ts.isVariableStatement(r)){for(let n of r.declarationList.declarations)if(n.initializer&&e.ts.isAsExpression(n.initializer)){let o=n.initializer;if(e.ts.isIdentifier(o.type)&&o.type.text==="default"){let i=Re(e,t,o.expression);if(i&&e.ts.isIdentifier(n.name))return{name:n.name.text,fnNode:i.fnNode,deps:i.deps}}}}return null}async function dr(e,t){let r=[],n=t.getSourceFiles(),o=t.getTypeChecker();return await Promise.all(n.map(async i=>{let a=e.normalize(i.fileName);if(It(e,ra,i.fileName)||a===e.reactConfigPath||a===e.builderComponentPath)return;let s=await $e(e,o,a,i,a===e.registryPath);r.push(...s)})),r.sort((i,a)=>i.cmpInfo.name.localeCompare(a.cmpInfo.name))}var ra=new Set(["node_modules","dist"]);async function oa(e,t,r,n){let o=[],i=n.text;if(!t)return o;try{let a=t.getSymbolAtLocation(n);if(!a)return o;let s=t.getExportsOfModule(a);for(let u of s){let p=u.valueDeclaration||u.declarations?.[0];if(!p)continue;let m=u.name;if(!et(m)&&m!=="default"||!gr(e,t,p))continue;let f=Re(e,t,p);if(f){let l=u.name,d=l==="default"?"default":"named",C=K(l),c=l==="default"?qe(e,r):l;o.push({cmpInfo:{id:await $(e,r,l,i),displayFilePath:k(e,r),name:C,inputs:[],exportName:l,exportType:d,importName:c,filePath:r,relFilePath:e.relative(e.getAppRootDir(),r),importPath:i,externalImportPath:i,dependencies:f.deps},node:f})}}}catch(a){console.error(`Error processing module ${i}:`,a)}return o}function gr(e,t,r){if(e.ts.isInterfaceDeclaration(r)||e.ts.isTypeAliasDeclaration(r))return!1;if(e.ts.isExportSpecifier(r)){let n=t.getSymbolAtLocation(r.name);if(n){let i=t.getAliasedSymbol(n).declarations?.[0];if(i)return gr(e,t,i)}return!1}if(e.ts.isFunctionDeclaration(r)||e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r)){let n=t.getSignatureFromDeclaration(r);if(n){let o=t.getReturnTypeOfSignature(n);return mr(o,t)}}return e.ts.isClassDeclaration(r)?r.heritageClauses?.some(o=>o.types.some(i=>i.expression.getText()==="React.Component"||i.expression.getText()==="Component"))??!1:e.ts.isVariableDeclaration(r)?t.getTypeAtLocation(r).getCallSignatures().some(i=>mr(t.getReturnTypeOfSignature(i),t)):!1}function mr(e,t){let r=t.typeToString(e);return r==="JSX.Element"||r==="Element"||r.includes("ReactElement")||r.includes("React.ReactElement")||r.includes("ReactNode")}async function Dr(e,t){let r=[],n=t.getSourceFiles(),o=t.getTypeChecker();return await Promise.all(n.map(async i=>{let a=e.basename(i.fileName);if(e.appDir&&ia.has(a)||e.dirname(i.fileName).includes("node_modules"))return;let s=e.normalize(i.fileName);if(s===e.nextConfigPath||s===e.builderComponentPath)return;let u=await $e(e,o,s,i,s===e.registryPath||ge(s));r.push(...u)})),r.sort((i,a)=>i.cmpInfo.name.localeCompare(a.cmpInfo.name))}var ia=new Set(["default.tsx","default.ts","default.jsx","default.js","error.tsx","error.ts","error.jsx","error.js","layout.tsx","layout.ts","layout.jsx","layout.js","loading.tsx","loading.ts","loading.jsx","loading.js","not-found.tsx","not-found.ts","not-found.jsx","not-found.js","page.tsx","page.ts","page.jsx","page.js","route.tsx","route.ts","route.jsx","route.js","template.tsx","template.ts","template.jsx","template.js"]);function Se(e,t){let r=[],n=[],o=[],i=[];for(let a of t.statements){if(e.ts.isImportDeclaration(a)){if(e.ts.isStringLiteral(a.moduleSpecifier)){let u=a.moduleSpecifier.text;if(!u.startsWith(".")&&!u.startsWith("/")){r.push(a);continue}}let s=a.importClause;if(s){if(s.namedBindings){n.push(a);continue}if(s.name){n.push(a);continue}}o.push(a);continue}i.push(a)}return e.ts.factory.updateSourceFile(t,[...an(e,r),...an(e,n),...an(e,o),...i])}function pe(e){let t=e.split(`
23
23
  `).map(n=>n.trimEnd());e="";let r=!1;for(let n=t.length-1;n>=0;n--){let o=t[n];!r&&o.startsWith("import ")&&(r=!0,o=o+`
24
24
  `),/^builder.init(.*)$/.test(o)&&(o=o+`
25
25
  `),t[n-1]&&!t[n-1].includes("*/")&&(o.trim().startsWith("Builder.registerComponent")&&(o=`
@@ -28,8 +28,8 @@ ${r}=${n}
28
28
  `+o),o.trim().startsWith("export ")&&(o=`
29
29
  `+o)),e=o+`
30
30
  `+e}return e.trim()+`
31
- `}function on(e,t){return t.sort((r,n)=>{let o=gr(e,r),i=gr(e,n);return o.toLocaleLowerCase().localeCompare(i.toLocaleLowerCase())})}function gr(e,t){let r=t.importClause;if(r){let n=r.namedBindings;if(n&&e.ts.isNamedImports(n)&&n.elements.length>0)return n.elements[0].name.text;if(r.name)return r.name.text}return t.moduleSpecifier&&e.ts.isStringLiteral(t.moduleSpecifier)?t.moduleSpecifier.text:""}function Cr(e){return typeof e=="string"&&!e.includes("'use client'")&&!e.includes(`"use client"'`)&&(e=`"use client"
32
- ${e}`),e}function xr(e,t){let r=t.statements.filter(n=>!(e.ts.isExpressionStatement(n)&&e.ts.isStringLiteral(n.expression)&&e.ts.isStringLiteral(n.expression)&&n.expression.text==="use client"));return e.ts.factory.updateSourceFile(t,r)}function Se(e,t){return t.sort((r,n)=>{if(e.ts.isObjectLiteralExpression(r)&&e.ts.isObjectLiteralExpression(n)){let o=Dr(e,r),i=Dr(e,n);return o.toLocaleLowerCase().localeCompare(i.toLocaleLowerCase())}return 1})}function Dr(e,t){let r=t.properties.find(n=>N(e,n)==="name");return r&&e.ts.isPropertyAssignment(r)&&e.ts.isStringLiteral(r.initializer)?r.initializer.text:"zzzz"}async function hr(e){let t=await e.readFile(e.registryPath);return t?Zi(e,t):{components:[],sourceFile:I(e,"")}}async function Zi(e,t){let r=I(e,t);return e.sdkVersion===w.gen2?ta(e,r):ea(e,r)}async function ea(e,t){let r=[];for(let n=0;n<t.statements.length;n++){let o=t.statements[n];if(!e.ts.isExpressionStatement(o))continue;let i=o.expression;if(!e.ts.isCallExpression(i))continue;let a=i.expression;if(!e.ts.isPropertyAccessExpression(a))continue;let s=a.expression;if(!e.ts.isIdentifier(s)||s.text!=="Builder"||a.name.text!=="registerComponent")continue;let p=i.arguments;if(p.length<2)continue;let m=p[1];if(!e.ts.isObjectLiteralExpression(m))continue;let f=p[0];if(e.ts.isCallExpression(f)){let c=e.ts.isIdentifier(f.expression)&&f.expression.text;if(c==="withChildren"){let C=un(e,f.arguments[0]);if(e.ts.isCallExpression(C)){let l=await an(e,n,C,m,!0);l&&r.push(l)}else{let l=C;if(e.ts.isIdentifier(l)){let D=await sn(e,t,n,l,m,!0);D&&r.push(D)}}continue}if(c==="dynamic"){let C=await an(e,n,f,m,!1);C&&r.push(C);continue}let d=un(e,f.arguments[0]);if(e.ts.isCallExpression(d)&&e.ts.isIdentifier(d.expression)&&d.expression.text==="dynamic"){let C=await an(e,n,d,m,!1);C&&r.push(C);continue}if(e.ts.isIdentifier(d)){let C=await sn(e,t,n,d,m,!1);C&&r.push(C);continue}continue}if(e.ts.isIdentifier(f)){let c=await sn(e,t,n,f,m,!1);c&&r.push(c);continue}}return{sourceFile:t,components:te(r)}}function un(e,t){return e.ts.isCallExpression(t)?(e.ts.isIdentifier(t.expression)&&t.expression.text)==="dynamic"?t:un(e,t.arguments[0]):t}async function an(e,t,r,n,o){let i={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:t,acceptsChildren:o},a=r.arguments;if(a.length===0)return null;let s=a[0];if(!e.ts.isArrowFunction(s))return null;let u=s.body;if(e.ts.isCallExpression(u)){if(u.expression.kind!==e.ts.SyntaxKind.ImportKeyword||u.arguments.length!==1)return null;let m=u.arguments[0];if(!e.ts.isStringLiteral(m))return null;let f=m.text,c=await it(e,f);i.filePath=c,i.relFilePath=e.relative(e.getAppRootDir(),i.filePath),await e.exists(c)?i.importPath=V(e,i.filePath):(i.externalImportPath=f,i.importPath=i.externalImportPath),i.name=se(e,i.filePath),i.importName="default",i.exportName="default",i.exportType="default"}else if(e.ts.isPropertyAccessExpression(u)){let p=u.expression;if(!e.ts.isParenthesizedExpression(p))return null;let m=p.expression;if(!e.ts.isAwaitExpression(m))return null;let f=m.expression;if(!e.ts.isCallExpression(f)||f.expression.kind!==e.ts.SyntaxKind.ImportKeyword||f.arguments.length!==1)return null;let d=f.arguments[0];if(!e.ts.isStringLiteral(d)||!e.ts.isIdentifier(u.name))return null;let C=d.text,l=await it(e,C);i.filePath=l,i.relFilePath=e.relative(e.getAppRootDir(),i.filePath),await e.exists(l)?i.importPath=V(e,i.filePath):(i.externalImportPath=C,i.importPath=i.externalImportPath),i.name=K(u.name.text),i.importName=u.name.text,i.exportName=u.name.text,i.exportType="named"}else return null;return i=ne(e,i,n),i.displayFilePath=k(e,i.filePath),i.filePath&&i.exportName&&(i.id=await $(e,i.filePath,i.exportName,i.externalImportPath)),i}async function sn(e,t,r,n,o,i){let a={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:r,acceptsChildren:i},s=t.statements.filter(p=>e.ts.isImportDeclaration(p)),u=s.find(p=>p.importClause&&p.importClause.name?.text===n.text);if(u){let p=u.moduleSpecifier;if(!e.ts.isStringLiteral(p))return null;let m=await it(e,p.text);a.filePath=m,a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),await e.exists(m)?a.importPath=V(e,a.filePath):(a.externalImportPath=p.text,a.importPath=a.externalImportPath),a.name=se(e,a.filePath),a.importName=n.text,a.exportName="default",a.exportType="default"}else{let p=s.find(c=>!c.importClause||!c.importClause.namedBindings||!e.ts.isNamedImports(c.importClause.namedBindings)?!1:c.importClause.namedBindings.elements.some(d=>d.name.text===n.text));if(!p)return null;let m=p.moduleSpecifier;if(!e.ts.isStringLiteral(m))return null;let f=await it(e,m.text);a.filePath=f,a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),await e.exists(f)?a.importPath=V(e,a.filePath):(a.externalImportPath=m.text,a.importPath=a.externalImportPath),a.name=K(n.text),a.importName=n.text,a.exportName=n.text,a.exportType="named"}return a=ne(e,a,o),a.displayFilePath=k(e,a.filePath),a.filePath&&a.exportName&&(a.id=await $(e,a.filePath,a.exportName,a.externalImportPath)),a}function it(e,t){return gt(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}function Er(e,t,r){let n=!1,o=0,i=[...t.statements];for(let p=0;p<i.length;p++){let m=i[p];if(e.ts.isImportDeclaration(m)){o=p;continue}if(!e.ts.isExpressionStatement(m))continue;let f=m.expression;if(!e.ts.isCallExpression(f))continue;let c=f.expression;if(!e.ts.isPropertyAccessExpression(c))continue;let d=c.expression;if(!e.ts.isIdentifier(d)||d.text!=="builder")continue;if(c.name.text=="init"){n=!0;break}else continue}if(n)return t;let a=e.ts.factory.createPropertyAccessExpression(e.ts.factory.createPropertyAccessExpression(e.ts.factory.createIdentifier("process"),e.ts.factory.createIdentifier("env")),e.ts.factory.createIdentifier(Ce)),s=r?e.ts.factory.createNonNullExpression(a):a,u=e.ts.factory.createExpressionStatement(e.ts.factory.createCallExpression(e.ts.factory.createPropertyAccessExpression(e.ts.factory.createIdentifier("builder"),e.ts.factory.createIdentifier("init")),void 0,[s]));return i.splice(o+1,0,u),e.ts.factory.updateSourceFile(t,i)}async function ta(e,t){let r=[],n=J(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await pn(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:te(r)}}async function pn(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1};et(e,r)&&(n.acceptsChildren=!0);for(let i of r.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(N(e,i)==="component"){let s,{initializer:u}=i;if(e.ts.isCallExpression(u)&&(e.ts.isIdentifier(u.expression)&&u.expression.text)==="dynamic"){let d=u.arguments;if(d.length===0)return null;let C=d[0];if(!e.ts.isArrowFunction(C))return null;let l=C.body;if(e.ts.isCallExpression(l)){if(l.expression.kind!==e.ts.SyntaxKind.ImportKeyword||l.arguments.length!==1)return null;let g=l.arguments[0];if(!e.ts.isStringLiteral(g))return null;let x=g.text,S=await it(e,x);n.filePath=S,n.relFilePath=e.relative(e.getAppRootDir(),n.filePath),await e.exists(S)?n.importPath=V(e,n.filePath):(n.externalImportPath=x,n.importPath=n.externalImportPath),n.name=se(e,n.filePath),n.importName="default",n.exportName="default",n.exportType="default"}else if(e.ts.isPropertyAccessExpression(l)){let D=l.expression;if(!e.ts.isParenthesizedExpression(D))return null;let g=D.expression;if(!e.ts.isAwaitExpression(g))return null;let x=g.expression;if(!e.ts.isCallExpression(x)||x.expression.kind!==e.ts.SyntaxKind.ImportKeyword||x.arguments.length!==1)return null;let P=x.arguments[0];if(!e.ts.isStringLiteral(P)||!e.ts.isIdentifier(l.name))return null;let A=P.text,E=await it(e,A);n.filePath=E,n.relFilePath=e.relative(e.getAppRootDir(),n.filePath),await e.exists(E)?n.importPath=V(e,n.filePath):(n.externalImportPath=A,n.importPath=n.externalImportPath),n.name=K(l.name.text),n.importName=l.name.text,n.exportName=l.name.text,n.exportType="named"}else return null;return n=ne(e,n,r),n.displayFilePath=k(e,n.filePath),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName,n.externalImportPath)),n}if(e.ts.isIdentifier(u)&&(s=u.text),!s)continue;n.name===""&&(n.name=K(s)),n.importName=s;let p=await xe(e,e.registryPath,t,s);if(!p)continue;n.filePath=p.filePath,n.relFilePath=p.relFilePath,await e.exists(p.filePath)?n.importPath=V(e,p.filePath):(n.externalImportPath=p.importPath,n.importPath=n.externalImportPath),n.importPath=V(e,p.filePath),n.displayFilePath=p.displayFilePath,n.exportType=p.exportType;let m=t.statements.filter(c=>e.ts.isImportDeclaration(c)),f=m.find(c=>c.importClause&&c.importClause.name?.text===s);if(f){let c=f.moduleSpecifier;if(!e.ts.isStringLiteral(c))return null;n.exportName="default"}else{let c=m.find(C=>!C.importClause||!C.importClause.namedBindings||!e.ts.isNamedImports(C.importClause.namedBindings)?!1:C.importClause.namedBindings.elements.some(l=>l.name.text===s));if(!c)return null;let d=c.moduleSpecifier;if(!e.ts.isStringLiteral(d))return null;n.exportName=s}continue}}return n=ne(e,n,r),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName,n.externalImportPath)),n}function Ae(e,t){let r=[...t.statements],n=!1;for(let o=t.statements.length-1;o>=0;o--){let i=t.statements[o];if(e.ts.isImportDeclaration(i)&&i.importClause){let a=!1,s=i.importClause.namedBindings;if(s&&e.ts.isNamedImports(s)&&s.elements){let u=[...s.elements];for(let p=u.length-1;p>=0;p--){let m=u[p];if(e.ts.isImportSpecifier(m)){let f=m.name;if(f&&e.ts.isIdentifier(f)){let c=f.text;Sr(e,t,c)||u.splice(p,1)}}}if(u.length===0)a=!0;else if(s.elements.length!==u.length){let p=e.ts.factory.updateImportClause(i.importClause,!1,i.importClause.name,e.ts.factory.createNamedImports(u)),m=e.ts.factory.updateImportDeclaration(i,void 0,p,i.moduleSpecifier,void 0);r[o]=m,n=!0}}else if(i.importClause.name&&e.ts.isIdentifier(i.importClause.name)){let u=i.importClause.name.text;Sr(e,t,u)||(a=!0)}a&&(r.splice(o,1),n=!0)}}return n?e.ts.factory.updateSourceFile(t,r):t}function Sr(e,t,r){let n=!1;function o(i){if(!e.ts.isImportDeclaration(i)){if(e.ts.isIdentifier(i)&&i.text===r){n=!0;return}e.ts.forEachChild(i,o)}}return e.ts.forEachChild(t,o),n}function Fe(e,t,r,n,o,i,a){let s=null,u=null,p=null,m=-1;t=oe(t),r=oe(r);let f=t.find(d=>d.id===e),c=r.find(d=>d.id===e);if(n)c||(s={...oe(f),inputs:oe(f.inputs).map(d=>(d.isRegistered=!0,d))},m=r.length,r.push(s));else if(typeof c?.nodeIndex=="number"&&c.nodeIndex>-1){if(o)m=c.nodeIndex,u=oe(c),r=r.filter(d=>d.id!==e);else if(i!=null)na(c,i),m=c.nodeIndex,p=c;else if(a!=null){let d=c.inputs.find(C=>C.name===a.name);d&&(a.registerInput===!1?d.isRegistered=!1:(ra(d,a),d.isRegistered=!0),p=c,m=c.nodeIndex)}}return{addCmpToRegistry:s,removeCmpFromRegistry:u,updateRegisteredCmp:p,nodeIndex:m,components:me(t,r)}}function me(e,t){let r=te([...t.map(n=>(n.isRegistered=!0,n)),...e.filter(n=>!t.some(o=>o.id===n.id)).map(n=>(n.isRegistered=!1,n))]);return r.forEach(n=>{n.inputs=n.inputs.map(tn),n.inputs.sort((a,s)=>a.name.toLowerCase().localeCompare(s.name.toLowerCase()));let o=t.find(a=>a.id===n.id);o&&(o.acceptsChildren=en(n));let i=e.find(a=>a.id===n.id&&a.externalImportPath);i&&(n.filePath=i.filePath,n.relFilePath=i.relFilePath)}),r}function na(e,t){Z(t.name)?e.name=t.name:t.name===null&&(e.name=e.importName),Z(t.description)?e.description=t.description:t.description===null&&delete e.description,Z(t.image)?e.image=t.image:t.image===null&&delete e.image}function ra(e,t){Z(t.type)&&(e.type=t.type),Z(t.friendlyName)?e.friendlyName=t.friendlyName:t.friendlyName===null&&delete e.friendlyName,Z(t.defaultValue)||pt(t.defaultValue)||Xe(t.defaultValue)?e.defaultValue=t.defaultValue:t.defaultValue===null&&delete e.defaultValue,Z(t.helperText)?e.helperText=t.helperText:t.helperText===null&&delete e.helperText,t.required===!0?e.required=t.required:(t.required===null||t.required===!1)&&delete e.required}async function $e(e){let t=new Set,r=async o=>{let i=await e.readdir(o);await Promise.all(i.map(async a=>{if(a.startsWith(".")||a==="node_modules")return;let s=e.join(o,a),u=e.extname(a).toLowerCase();if(u===".tsx"||u===".jsx"||u===".ts"||u===".js"){t.add(s);return}(await e.stat(s)).isDirectory()&&await r(s)}))};return await r(e.getAppRootDir()),await G(e,[...t])}function Pe(e,t,r){return nt(e,t,r.variableName)?t:oa(e,t,r)}function oa(e,t,r){let n=typeof r.arrayType=="string"?e.ts.factory.createArrayTypeNode(e.ts.factory.createTypeReferenceNode(r.arrayType,void 0)):void 0,o=e.ts.factory.createArrayLiteralExpression([]),i=e.ts.factory.createVariableDeclaration(r.variableName,void 0,n,o),a=e.ts.factory.createVariableDeclarationList([i],e.ts.NodeFlags.Const),s=e.ts.factory.createModifier(e.ts.SyntaxKind.ExportKeyword),u=e.ts.factory.createVariableStatement([s],a),p=[...t.statements,u];return e.ts.factory.updateSourceFile(t,p)}async function ye(e,t,r,n,o,i,a,s){let u=await $e(e),[p,m,f,c]=await Promise.all([dr(e,u),hr(e),re(e),lt(e)]),d=p.map(S=>S.cmpInfo),C=m.components,l={components:me(d,C),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:he(d),publicApiKey:c.envValue??void 0,devToolsVersion:e.version};if(s)return l.components=await rt(e,l.components),l;let D=!1,g=m.sourceFile,x=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(x.length>0){let S=x.map(E=>{let O=p.find(z=>z.cmpInfo.id===E);if(!O)throw new Error(`Component ${E} not found`);return O}),P=Array.from(new Set(S.map(E=>E.cmpInfo.filePath))),A=await G(e,P);for(let E of S){let O=l.components.find(y=>y.id===E.cmpInfo.id),z=await ot(e,E,A);ie(O,z);let j=d.findIndex(y=>y.id===E.cmpInfo.id);d[j].inputs=z;let F=Fe(E.cmpInfo.id,d,C,r,n,o,i);if(e.sdkVersion===w.gen2){let{elements:y,elmIndex:H,statementIndex:le,statement:Y,variableDeclaration:L}=await sa(e,g,E);if(F.addCmpToRegistry)y.push(aa(e,F.addCmpToRegistry)),D=!0;else if(F.removeCmpFromRegistry)y.splice(H,1),D=!0;else if(F.updateRegisteredCmp){let X=Q(e,y[H],F.updateRegisteredCmp);y[H]=e.ts.factory.updateObjectLiteralExpression(X,[Fr(e,F.updateRegisteredCmp),...X.properties.slice(1)]),D=!0}if(D&&a){let X=[...g.statements];X[le]=e.ts.factory.updateVariableStatement(Y,Y.modifiers,e.ts.factory.updateVariableDeclarationList(Y.declarationList,[e.ts.factory.updateVariableDeclaration(L,L.name,L.exclamationToken,L.type,e.ts.factory.createArrayLiteralExpression(Se(e,y)))])),g=e.ts.factory.updateSourceFile(g,X),g=Ar(e,F,g),g=v(e,g,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-react",isTypeOnly:!0}),g=Pe(e,g,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),l.components=F.components,C=F.components.filter(Ue=>Ue.isRegistered)}}else{let y=[...g.statements];F.addCmpToRegistry?(y.push(ir(e,F.addCmpToRegistry)),D=!0):F.removeCmpFromRegistry?(y.splice(F.nodeIndex,1),D=!0):F.updateRegisteredCmp&&(y[F.nodeIndex]=nn(e,y[F.nodeIndex],F.updateRegisteredCmp),D=!0),D&&a&&(g=e.ts.factory.updateSourceFile(g,y),g=v(e,g,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),g=Er(e,g,f),g=Ar(e,F,g),O?.acceptsChildren&&(g=v(e,g,{namedImports:["withChildren"],importPath:"@builder.io/react"})),l.components=F.components,C=F.components.filter(H=>H.isRegistered))}}}if(D&&a){g=Ae(e,g),g=Ee(e,g),e.appDir&&(g=xr(e,g));let S=_(e,g);S=pe(S),e.appDir&&(S=Cr(S)),S=await e.formatCode(e.registryPath,S),await e.writeFile(e.registryPath,S)}return l}function Fr(e,t){let r=e.ts.factory.createIdentifier(t.importName);return e.appDir?e.ts.factory.createPropertyAssignment("component",r):e.ts.factory.createPropertyAssignment("component",ua(e,t))}function ia(e){return e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())}function aa(e,t){return Q(e,e.ts.factory.createObjectLiteralExpression([Fr(e,t),...t.acceptsChildren?[ia(e)]:[]],!0),t)}async function sa(e,t,r){let n=J(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let o=n.arrayLiteralExp.elements.filter(a=>e.ts.isObjectLiteralExpression(a)),i=-1;for(let a=0;a<o.length;a++)if((await pn(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}function Ar(e,t,r){if(e.appDir){let n=t.addCmpToRegistry||t.updateRegisteredCmp;if(n){let o=n.externalImportPath?n.externalImportPath:B(e,e.registryPath,n.filePath);n.exportType==="default"?r=v(e,r,{defaultImport:n.importName,importPath:o}):n.exportType==="named"&&(r=v(e,r,{namedImports:[n.importName],importPath:o}))}}else r=v(e,r,{defaultImport:"dynamic",importPath:"next/dynamic"});return r}function ua(e,t){let r=t.externalImportPath?t.externalImportPath:B(e,e.registryPath,t.filePath),n=t.exportName!=="default",o;n?o=e.ts.factory.createPropertyAccessExpression(e.ts.factory.createAwaitExpression(e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("import"),void 0,[e.ts.factory.createStringLiteral(r)])),e.ts.factory.createIdentifier(t.exportName)):o=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("import"),void 0,[e.ts.factory.createStringLiteral(r)]);let i=e.ts.factory.createArrowFunction(n?[e.ts.factory.createModifier(e.ts.SyntaxKind.AsyncKeyword)]:void 0,void 0,[],void 0,e.ts.factory.createToken(e.ts.SyntaxKind.EqualsGreaterThanToken),o);return e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("dynamic"),void 0,[i])}async function yr(e){let t=[],r=await fa(e,t);return await Ir(e,t,r),e.appDir?(e.debug(`ensure builder setup for next.js app ${e.appDir}`),await la(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure builder setup for next.js pages ${e.pagesDir}`),await ca(e,e.pagesDir,t)),t}async function wr(e){let t=[];return await Ir(e,t),e.appDir?(e.debug(`ensure figma-imports setup for next.js app ${e.appDir}`),await pa(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure figma-imports setup for next.js pages ${e.pagesDir}`),await ma(e,e.pagesDir,t)),t}async function pa(e,t,r){let n=`page.${e.typescriptEnabled?"tsx":"jsx"}`,o=e.join(t,"figma-imports",n);if(!await e.exists(o)){let i=await e.formatCode(o,br({sys:e,routePath:o,modelName:"figma-imports"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let i=await e.formatCode(e.builderComponentPath,Tr(e));await e.writeFile(e.builderComponentPath,i),r.push({filePath:e.builderComponentPath,modifiedType:"create"})}}async function la(e,t,r){let n=`page.${e.typescriptEnabled?"tsx":"jsx"}`,o=e.join(t,"[...page]",n);if(!await e.exists(o)){let i=await e.formatCode(o,br({sys:e,routePath:o,modelName:"page"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let i=await e.formatCode(e.builderComponentPath,Tr(e));await e.writeFile(e.builderComponentPath,i),r.push({filePath:e.builderComponentPath,modifiedType:"create"})}}function Tr(e){let t=e.typescriptEnabled;return e.sdkVersion===w.gen2?`
31
+ `}function an(e,t){return t.sort((r,n)=>{let o=Cr(e,r),i=Cr(e,n);return o.toLocaleLowerCase().localeCompare(i.toLocaleLowerCase())})}function Cr(e,t){let r=t.importClause;if(r){let n=r.namedBindings;if(n&&e.ts.isNamedImports(n)&&n.elements.length>0)return n.elements[0].name.text;if(r.name)return r.name.text}return t.moduleSpecifier&&e.ts.isStringLiteral(t.moduleSpecifier)?t.moduleSpecifier.text:""}function hr(e){return typeof e=="string"&&!e.includes("'use client'")&&!e.includes(`"use client"'`)&&(e=`"use client"
32
+ ${e}`),e}function Er(e,t){let r=t.statements.filter(n=>!(e.ts.isExpressionStatement(n)&&e.ts.isStringLiteral(n.expression)&&e.ts.isStringLiteral(n.expression)&&n.expression.text==="use client"));return e.ts.factory.updateSourceFile(t,r)}function Ae(e,t){return t.sort((r,n)=>{if(e.ts.isObjectLiteralExpression(r)&&e.ts.isObjectLiteralExpression(n)){let o=xr(e,r),i=xr(e,n);return o.toLocaleLowerCase().localeCompare(i.toLocaleLowerCase())}return 1})}function xr(e,t){let r=t.properties.find(n=>N(e,n)==="name");return r&&e.ts.isPropertyAssignment(r)&&e.ts.isStringLiteral(r.initializer)?r.initializer.text:"zzzz"}async function Sr(e){let t=await e.readFile(e.registryPath);return t?aa(e,t):{components:[],sourceFile:I(e,"")}}async function aa(e,t){let r=I(e,t);return e.sdkVersion===w.gen2?ua(e,r):sa(e,r)}async function sa(e,t){let r=[];for(let n=0;n<t.statements.length;n++){let o=t.statements[n];if(!e.ts.isExpressionStatement(o))continue;let i=o.expression;if(!e.ts.isCallExpression(i))continue;let a=i.expression;if(!e.ts.isPropertyAccessExpression(a))continue;let s=a.expression;if(!e.ts.isIdentifier(s)||s.text!=="Builder"||a.name.text!=="registerComponent")continue;let p=i.arguments;if(p.length<2)continue;let m=p[1];if(!e.ts.isObjectLiteralExpression(m))continue;let f=p[0];if(e.ts.isCallExpression(f)){let l=e.ts.isIdentifier(f.expression)&&f.expression.text;if(l==="withChildren"){let C=pn(e,f.arguments[0]);if(e.ts.isCallExpression(C)){let c=await sn(e,n,C,m,!0);c&&r.push(c)}else{let c=C;if(e.ts.isIdentifier(c)){let D=await un(e,t,n,c,m,!0);D&&r.push(D)}}continue}if(l==="dynamic"){let C=await sn(e,n,f,m,!1);C&&r.push(C);continue}let d=pn(e,f.arguments[0]);if(e.ts.isCallExpression(d)&&e.ts.isIdentifier(d.expression)&&d.expression.text==="dynamic"){let C=await sn(e,n,d,m,!1);C&&r.push(C);continue}if(e.ts.isIdentifier(d)){let C=await un(e,t,n,d,m,!1);C&&r.push(C);continue}continue}if(e.ts.isIdentifier(f)){let l=await un(e,t,n,f,m,!1);l&&r.push(l);continue}}return{sourceFile:t,components:te(r)}}function pn(e,t){return e.ts.isCallExpression(t)?(e.ts.isIdentifier(t.expression)&&t.expression.text)==="dynamic"?t:pn(e,t.arguments[0]):t}async function sn(e,t,r,n,o){let i={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:t,acceptsChildren:o},a=r.arguments;if(a.length===0)return null;let s=a[0];if(!e.ts.isArrowFunction(s))return null;let u=s.body;if(e.ts.isCallExpression(u)){if(u.expression.kind!==e.ts.SyntaxKind.ImportKeyword||u.arguments.length!==1)return null;let m=u.arguments[0];if(!e.ts.isStringLiteral(m))return null;let f=m.text,l=await st(e,f);i.filePath=l,i.relFilePath=e.relative(e.getAppRootDir(),i.filePath),await e.exists(l)?i.importPath=V(e,i.filePath):(i.externalImportPath=f,i.importPath=i.externalImportPath),i.name=se(e,i.filePath),i.importName="default",i.exportName="default",i.exportType="default"}else if(e.ts.isPropertyAccessExpression(u)){let p=u.expression;if(!e.ts.isParenthesizedExpression(p))return null;let m=p.expression;if(!e.ts.isAwaitExpression(m))return null;let f=m.expression;if(!e.ts.isCallExpression(f)||f.expression.kind!==e.ts.SyntaxKind.ImportKeyword||f.arguments.length!==1)return null;let d=f.arguments[0];if(!e.ts.isStringLiteral(d)||!e.ts.isIdentifier(u.name))return null;let C=d.text,c=await st(e,C);i.filePath=c,i.relFilePath=e.relative(e.getAppRootDir(),i.filePath),await e.exists(c)?i.importPath=V(e,i.filePath):(i.externalImportPath=C,i.importPath=i.externalImportPath),i.name=K(u.name.text),i.importName=u.name.text,i.exportName=u.name.text,i.exportType="named"}else return null;return i=ne(e,i,n),i.displayFilePath=k(e,i.filePath),i.filePath&&i.exportName&&(i.id=await $(e,i.filePath,i.exportName,i.externalImportPath)),i}async function un(e,t,r,n,o,i){let a={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:r,acceptsChildren:i},s=t.statements.filter(p=>e.ts.isImportDeclaration(p)),u=s.find(p=>p.importClause&&p.importClause.name?.text===n.text);if(u){let p=u.moduleSpecifier;if(!e.ts.isStringLiteral(p))return null;let m=await st(e,p.text);a.filePath=m,a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),await e.exists(m)?a.importPath=V(e,a.filePath):(a.externalImportPath=p.text,a.importPath=a.externalImportPath),a.name=se(e,a.filePath),a.importName=n.text,a.exportName="default",a.exportType="default"}else{let p=s.find(l=>!l.importClause||!l.importClause.namedBindings||!e.ts.isNamedImports(l.importClause.namedBindings)?!1:l.importClause.namedBindings.elements.some(d=>d.name.text===n.text));if(!p)return null;let m=p.moduleSpecifier;if(!e.ts.isStringLiteral(m))return null;let f=await st(e,m.text);a.filePath=f,a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),await e.exists(f)?a.importPath=V(e,a.filePath):(a.externalImportPath=m.text,a.importPath=a.externalImportPath),a.name=K(n.text),a.importName=n.text,a.exportName=n.text,a.exportType="named"}return a=ne(e,a,o),a.displayFilePath=k(e,a.filePath),a.filePath&&a.exportName&&(a.id=await $(e,a.filePath,a.exportName,a.externalImportPath)),a}function st(e,t){return Ct(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}function Ar(e,t,r){let n=!1,o=0,i=[...t.statements];for(let p=0;p<i.length;p++){let m=i[p];if(e.ts.isImportDeclaration(m)){o=p;continue}if(!e.ts.isExpressionStatement(m))continue;let f=m.expression;if(!e.ts.isCallExpression(f))continue;let l=f.expression;if(!e.ts.isPropertyAccessExpression(l))continue;let d=l.expression;if(!e.ts.isIdentifier(d)||d.text!=="builder")continue;if(l.name.text=="init"){n=!0;break}else continue}if(n)return t;let a=e.ts.factory.createPropertyAccessExpression(e.ts.factory.createPropertyAccessExpression(e.ts.factory.createIdentifier("process"),e.ts.factory.createIdentifier("env")),e.ts.factory.createIdentifier(xe)),s=r?e.ts.factory.createNonNullExpression(a):a,u=e.ts.factory.createExpressionStatement(e.ts.factory.createCallExpression(e.ts.factory.createPropertyAccessExpression(e.ts.factory.createIdentifier("builder"),e.ts.factory.createIdentifier("init")),void 0,[s]));return i.splice(o+1,0,u),e.ts.factory.updateSourceFile(t,i)}async function ua(e,t){let r=[],n=J(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await ln(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:te(r)}}async function ln(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1};tt(e,r)&&(n.acceptsChildren=!0);for(let i of r.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(N(e,i)==="component"){let s,{initializer:u}=i;if(e.ts.isCallExpression(u)&&(e.ts.isIdentifier(u.expression)&&u.expression.text)==="dynamic"){let d=u.arguments;if(d.length===0)return null;let C=d[0];if(!e.ts.isArrowFunction(C))return null;let c=C.body;if(e.ts.isCallExpression(c)){if(c.expression.kind!==e.ts.SyntaxKind.ImportKeyword||c.arguments.length!==1)return null;let g=c.arguments[0];if(!e.ts.isStringLiteral(g))return null;let x=g.text,S=await st(e,x);n.filePath=S,n.relFilePath=e.relative(e.getAppRootDir(),n.filePath),await e.exists(S)?n.importPath=V(e,n.filePath):(n.externalImportPath=x,n.importPath=n.externalImportPath),n.name=se(e,n.filePath),n.importName="default",n.exportName="default",n.exportType="default"}else if(e.ts.isPropertyAccessExpression(c)){let D=c.expression;if(!e.ts.isParenthesizedExpression(D))return null;let g=D.expression;if(!e.ts.isAwaitExpression(g))return null;let x=g.expression;if(!e.ts.isCallExpression(x)||x.expression.kind!==e.ts.SyntaxKind.ImportKeyword||x.arguments.length!==1)return null;let P=x.arguments[0];if(!e.ts.isStringLiteral(P)||!e.ts.isIdentifier(c.name))return null;let A=P.text,E=await st(e,A);n.filePath=E,n.relFilePath=e.relative(e.getAppRootDir(),n.filePath),await e.exists(E)?n.importPath=V(e,n.filePath):(n.externalImportPath=A,n.importPath=n.externalImportPath),n.name=K(c.name.text),n.importName=c.name.text,n.exportName=c.name.text,n.exportType="named"}else return null;return n=ne(e,n,r),n.displayFilePath=k(e,n.filePath),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName,n.externalImportPath)),n}if(e.ts.isIdentifier(u)&&(s=u.text),!s)continue;n.name===""&&(n.name=K(s)),n.importName=s;let p=await he(e,e.registryPath,t,s);if(!p)continue;n.filePath=p.filePath,n.relFilePath=p.relFilePath,await e.exists(p.filePath)?n.importPath=V(e,p.filePath):(n.externalImportPath=p.importPath,n.importPath=n.externalImportPath),n.importPath=V(e,p.filePath),n.displayFilePath=p.displayFilePath,n.exportType=p.exportType;let m=t.statements.filter(l=>e.ts.isImportDeclaration(l)),f=m.find(l=>l.importClause&&l.importClause.name?.text===s);if(f){let l=f.moduleSpecifier;if(!e.ts.isStringLiteral(l))return null;n.exportName="default"}else{let l=m.find(C=>!C.importClause||!C.importClause.namedBindings||!e.ts.isNamedImports(C.importClause.namedBindings)?!1:C.importClause.namedBindings.elements.some(c=>c.name.text===s));if(!l)return null;let d=l.moduleSpecifier;if(!e.ts.isStringLiteral(d))return null;n.exportName=s}continue}}return n=ne(e,n,r),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName,n.externalImportPath)),n}function Fe(e,t){let r=[...t.statements],n=!1;for(let o=t.statements.length-1;o>=0;o--){let i=t.statements[o];if(e.ts.isImportDeclaration(i)&&i.importClause){let a=!1,s=i.importClause.namedBindings;if(s&&e.ts.isNamedImports(s)&&s.elements){let u=[...s.elements];for(let p=u.length-1;p>=0;p--){let m=u[p];if(e.ts.isImportSpecifier(m)){let f=m.name;if(f&&e.ts.isIdentifier(f)){let l=f.text;Fr(e,t,l)||u.splice(p,1)}}}if(u.length===0)a=!0;else if(s.elements.length!==u.length){let p=e.ts.factory.updateImportClause(i.importClause,!1,i.importClause.name,e.ts.factory.createNamedImports(u)),m=e.ts.factory.updateImportDeclaration(i,void 0,p,i.moduleSpecifier,void 0);r[o]=m,n=!0}}else if(i.importClause.name&&e.ts.isIdentifier(i.importClause.name)){let u=i.importClause.name.text;Fr(e,t,u)||(a=!0)}a&&(r.splice(o,1),n=!0)}}return n?e.ts.factory.updateSourceFile(t,r):t}function Fr(e,t,r){let n=!1;function o(i){if(!e.ts.isImportDeclaration(i)){if(e.ts.isIdentifier(i)&&i.text===r){n=!0;return}e.ts.forEachChild(i,o)}}return e.ts.forEachChild(t,o),n}function Pe(e,t,r,n,o,i,a){let s=null,u=null,p=null,m=-1;t=oe(t),r=oe(r);let f=t.find(d=>d.id===e),l=r.find(d=>d.id===e);if(n)l||(s={...oe(f),inputs:oe(f.inputs).map(d=>(d.isRegistered=!0,d))},m=r.length,r.push(s));else if(typeof l?.nodeIndex=="number"&&l.nodeIndex>-1){if(o)m=l.nodeIndex,u=oe(l),r=r.filter(d=>d.id!==e);else if(i!=null)pa(l,i),m=l.nodeIndex,p=l;else if(a!=null){let d=l.inputs.find(C=>C.name===a.name);d&&(a.registerInput===!1?d.isRegistered=!1:(la(d,a),d.isRegistered=!0),p=l,m=l.nodeIndex)}}return{addCmpToRegistry:s,removeCmpFromRegistry:u,updateRegisteredCmp:p,nodeIndex:m,components:me(t,r)}}function me(e,t){let r=te([...t.map(n=>(n.isRegistered=!0,n)),...e.filter(n=>!t.some(o=>o.id===n.id)).map(n=>(n.isRegistered=!1,n))]);return r.forEach(n=>{n.inputs=n.inputs.map(nn),n.inputs.sort((a,s)=>a.name.toLowerCase().localeCompare(s.name.toLowerCase()));let o=t.find(a=>a.id===n.id);o&&(o.acceptsChildren=tn(n));let i=e.find(a=>a.id===n.id&&a.externalImportPath);i&&(n.filePath=i.filePath,n.relFilePath=i.relFilePath)}),r}function pa(e,t){Z(t.name)?e.name=t.name:t.name===null&&(e.name=e.importName),Z(t.description)?e.description=t.description:t.description===null&&delete e.description,Z(t.image)?e.image=t.image:t.image===null&&delete e.image}function la(e,t){Z(t.type)&&(e.type=t.type),Z(t.friendlyName)?e.friendlyName=t.friendlyName:t.friendlyName===null&&delete e.friendlyName,Z(t.defaultValue)||ct(t.defaultValue)||Ze(t.defaultValue)?e.defaultValue=t.defaultValue:t.defaultValue===null&&delete e.defaultValue,Z(t.helperText)?e.helperText=t.helperText:t.helperText===null&&delete e.helperText,t.required===!0?e.required=t.required:(t.required===null||t.required===!1)&&delete e.required}async function Ke(e){let t=new Set,r=async o=>{let i=await e.readdir(o);await Promise.all(i.map(async a=>{if(a.startsWith(".")||a==="node_modules")return;let s=e.join(o,a),u=e.extname(a).toLowerCase();if(u===".tsx"||u===".jsx"||u===".ts"||u===".js"){t.add(s);return}(await e.stat(s)).isDirectory()&&await r(s)}))};return await r(e.getAppRootDir()),await G(e,[...t])}function ye(e,t,r){return rt(e,t,r.variableName)?t:ca(e,t,r)}function ca(e,t,r){let n=typeof r.arrayType=="string"?e.ts.factory.createArrayTypeNode(e.ts.factory.createTypeReferenceNode(r.arrayType,void 0)):void 0,o=e.ts.factory.createArrayLiteralExpression([]),i=e.ts.factory.createVariableDeclaration(r.variableName,void 0,n,o),a=e.ts.factory.createVariableDeclarationList([i],e.ts.NodeFlags.Const),s=e.ts.factory.createModifier(e.ts.SyntaxKind.ExportKeyword),u=e.ts.factory.createVariableStatement([s],a),p=[...t.statements,u];return e.ts.factory.updateSourceFile(t,p)}async function we(e,t,r,n,o,i,a,s){let u=await Ke(e),[p,m,f,l]=await Promise.all([Dr(e,u),Sr(e),re(e),mt(e)]),d=p.map(S=>S.cmpInfo),C=m.components,c={components:me(d,C),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ee(d),publicApiKey:l.envValue??void 0,devToolsVersion:e.version};if(s)return c.components=await it(e,c.components),c;let D=!1,g=m.sourceFile,x=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(x.length>0){let S=x.map(E=>{let O=p.find(z=>z.cmpInfo.id===E);if(!O)throw new Error(`Component ${E} not found`);return O}),P=Array.from(new Set(S.map(E=>E.cmpInfo.filePath))),A=await G(e,P);for(let E of S){let O=c.components.find(y=>y.id===E.cmpInfo.id),z=await at(e,E,A,e.registryPath===E.cmpInfo.filePath||ge(E.cmpInfo.filePath));ie(O,z);let j=d.findIndex(y=>y.id===E.cmpInfo.id);d[j].inputs=z;let F=Pe(E.cmpInfo.id,d,C,r,n,o,i);if(e.sdkVersion===w.gen2){let{elements:y,elmIndex:H,statementIndex:le,statement:Y,variableDeclaration:L}=await da(e,g,E);if(F.addCmpToRegistry)y.push(fa(e,F.addCmpToRegistry)),D=!0;else if(F.removeCmpFromRegistry)y.splice(H,1),D=!0;else if(F.updateRegisteredCmp){let X=Q(e,y[H],F.updateRegisteredCmp);y[H]=e.ts.factory.updateObjectLiteralExpression(X,[yr(e,F.updateRegisteredCmp),...X.properties.slice(1)]),D=!0}if(D&&a){let X=[...g.statements];X[le]=e.ts.factory.updateVariableStatement(Y,Y.modifiers,e.ts.factory.updateVariableDeclarationList(Y.declarationList,[e.ts.factory.updateVariableDeclaration(L,L.name,L.exclamationToken,L.type,e.ts.factory.createArrayLiteralExpression(Ae(e,y)))])),g=e.ts.factory.updateSourceFile(g,X),g=Pr(e,F,g),g=v(e,g,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-react",isTypeOnly:!0}),g=ye(e,g,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),c.components=F.components,C=F.components.filter(ze=>ze.isRegistered)}}else{let y=[...g.statements];F.addCmpToRegistry?(y.push(ar(e,F.addCmpToRegistry)),D=!0):F.removeCmpFromRegistry?(y.splice(F.nodeIndex,1),D=!0):F.updateRegisteredCmp&&(y[F.nodeIndex]=rn(e,y[F.nodeIndex],F.updateRegisteredCmp),D=!0),D&&a&&(g=e.ts.factory.updateSourceFile(g,y),g=v(e,g,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),g=Ar(e,g,f),g=Pr(e,F,g),O?.acceptsChildren&&(g=v(e,g,{namedImports:["withChildren"],importPath:"@builder.io/react"})),c.components=F.components,C=F.components.filter(H=>H.isRegistered))}}}if(D&&a){g=Fe(e,g),g=Se(e,g),e.appDir&&(g=Er(e,g));let S=_(e,g);S=pe(S),e.appDir&&(S=hr(S)),S=await e.formatCode(e.registryPath,S),await e.writeFile(e.registryPath,S)}return c}function yr(e,t){let r=e.ts.factory.createIdentifier(t.importName);return e.appDir?e.ts.factory.createPropertyAssignment("component",r):e.ts.factory.createPropertyAssignment("component",ga(e,t))}function ma(e){return e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())}function fa(e,t){return Q(e,e.ts.factory.createObjectLiteralExpression([yr(e,t),...t.acceptsChildren?[ma(e)]:[]],!0),t)}async function da(e,t,r){let n=J(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let o=n.arrayLiteralExp.elements.filter(a=>e.ts.isObjectLiteralExpression(a)),i=-1;for(let a=0;a<o.length;a++)if((await ln(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}function Pr(e,t,r){if(e.appDir){let n=t.addCmpToRegistry||t.updateRegisteredCmp;if(n){let o=n.externalImportPath?n.externalImportPath:B(e,e.registryPath,n.filePath);n.exportType==="default"?r=v(e,r,{defaultImport:n.importName,importPath:o}):n.exportType==="named"&&(r=v(e,r,{namedImports:[n.importName],importPath:o}))}}else r=v(e,r,{defaultImport:"dynamic",importPath:"next/dynamic"});return r}function ga(e,t){let r=t.externalImportPath?t.externalImportPath:B(e,e.registryPath,t.filePath),n=t.exportName!=="default",o;n?o=e.ts.factory.createPropertyAccessExpression(e.ts.factory.createAwaitExpression(e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("import"),void 0,[e.ts.factory.createStringLiteral(r)])),e.ts.factory.createIdentifier(t.exportName)):o=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("import"),void 0,[e.ts.factory.createStringLiteral(r)]);let i=e.ts.factory.createArrowFunction(n?[e.ts.factory.createModifier(e.ts.SyntaxKind.AsyncKeyword)]:void 0,void 0,[],void 0,e.ts.factory.createToken(e.ts.SyntaxKind.EqualsGreaterThanToken),o);return e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("dynamic"),void 0,[i])}async function Tr(e){let t=[],r=await Ea(e,t);return await Nr(e,t,r),e.appDir?(e.debug(`ensure builder setup for next.js app ${e.appDir}`),await Ca(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure builder setup for next.js pages ${e.pagesDir}`),await xa(e,e.pagesDir,t)),t}async function br(e){let t=[];return await Nr(e,t),e.appDir?(e.debug(`ensure figma-imports setup for next.js app ${e.appDir}`),await Da(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure figma-imports setup for next.js pages ${e.pagesDir}`),await ha(e,e.pagesDir,t)),t}async function Da(e,t,r){let n=`page.${e.typescriptEnabled?"tsx":"jsx"}`,o=e.join(t,"figma-imports",n);if(!await e.exists(o)){let i=await e.formatCode(o,Ir({sys:e,routePath:o,modelName:"figma-imports"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let i=await e.formatCode(e.builderComponentPath,vr(e));await e.writeFile(e.builderComponentPath,i),r.push({filePath:e.builderComponentPath,modifiedType:"create"})}}async function Ca(e,t,r){let n=`page.${e.typescriptEnabled?"tsx":"jsx"}`,o=e.join(t,"[...page]",n);if(!await e.exists(o)){let i=await e.formatCode(o,Ir({sys:e,routePath:o,modelName:"page"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let i=await e.formatCode(e.builderComponentPath,vr(e));await e.writeFile(e.builderComponentPath,i),r.push({filePath:e.builderComponentPath,modifiedType:"create"})}}function vr(e){let t=e.typescriptEnabled;return e.sdkVersion===w.gen2?`
33
33
  "use client";
34
34
  import { ${t?"BuilderContent, ":""} isPreviewing, Content } from "@builder.io/sdk-react";
35
35
  import DefaultErrorPage from "next/error";
@@ -41,7 +41,7 @@ interface BuilderPageProps {
41
41
  }`:""}
42
42
 
43
43
  // Builder Public API Key set in .env file
44
- const builderApiKey = process.env.${Ce}${t?"!":""};
44
+ const builderApiKey = process.env.${xe}${t?"!":""};
45
45
 
46
46
  export function RenderBuilderContent({ content, model }${t?": BuilderPageProps":""}) {
47
47
  // Call the isPreviewing hook to determine if
@@ -72,7 +72,7 @@ ${t?`
72
72
  type BuilderPageProps = ComponentProps<typeof BuilderComponent>;`:""}
73
73
 
74
74
  // Builder Public API Key set in .env file
75
- builder.init(process.env.${Ce}${t?"!":""});
75
+ builder.init(process.env.${xe}${t?"!":""});
76
76
 
77
77
  export function RenderBuilderContent({ content, model }${t?": BuilderPageProps":""}) {
78
78
  // Call the useIsPreviewing hook to determine if
@@ -88,7 +88,7 @@ export function RenderBuilderContent({ content, model }${t?": BuilderPageProps":
88
88
  // DefaultErrorPage with a 404.
89
89
  return <DefaultErrorPage statusCode={404} />;
90
90
  }
91
- `.trimStart()}function Pr(e){return e.features.asyncParams?`
91
+ `.trimStart()}function wr(e){return e.features.asyncParams?`
92
92
  interface PageProps {
93
93
  params: Promise<{
94
94
  page: string[];
@@ -98,14 +98,14 @@ interface PageProps {
98
98
  params: {
99
99
  page: string[];
100
100
  };
101
- }`}function br({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,o=B(e,t,e.builderComponentPath);return e.sdkVersion===w.gen2?`
101
+ }`}function Ir({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,o=B(e,t,e.builderComponentPath);return e.sdkVersion===w.gen2?`
102
102
  import { fetchOneEntry } from "@builder.io/sdk-react";
103
103
  import { RenderBuilderContent } from ${JSON.stringify(o)};
104
104
 
105
105
  // Builder Public API Key set in .env file
106
- const PUBLIC_API_KEY = process.env.${Ce}${n?"!":""};
106
+ const PUBLIC_API_KEY = process.env.${xe}${n?"!":""};
107
107
 
108
- ${n?Pr(e):""}
108
+ ${n?wr(e):""}
109
109
 
110
110
  export default async function Page(props${n?": PageProps":""}) {
111
111
  const builderModelName = "${r}";
@@ -132,8 +132,8 @@ import { builder } from "@builder.io/sdk";
132
132
  import { RenderBuilderContent } from ${JSON.stringify(o)};
133
133
 
134
134
  // Builder Public API Key set in .env file
135
- builder.init(process.env.${Ce}${n?"!":""});
136
- ${n?Pr(e):""}
135
+ builder.init(process.env.${xe}${n?"!":""});
136
+ ${n?wr(e):""}
137
137
 
138
138
  export default async function Page(props${n?": PageProps":""}) {
139
139
  const builderModelName = "${r}";
@@ -156,7 +156,7 @@ export default async function Page(props${n?": PageProps":""}) {
156
156
  </>
157
157
  );
158
158
  }
159
- `.trimStart()}async function ca(e,t,r){let n=`[...page].${e.typescriptEnabled?"tsx":"jsx"}`,o=e.join(t,n);if(!await e.exists(o)){let i=await e.formatCode(o,vr({sys:e,routePath:o,modelName:"page"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}}async function ma(e,t,r){let n=`figma-imports.${e.typescriptEnabled?"tsx":"jsx"}`,o=e.join(t,n);if(!await e.exists(o)){let i=await e.formatCode(o,vr({sys:e,routePath:o,modelName:"figma-imports"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}}function vr({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled;return e.sdkVersion===w.gen2?`
159
+ `.trimStart()}async function xa(e,t,r){let n=`[...page].${e.typescriptEnabled?"tsx":"jsx"}`,o=e.join(t,n);if(!await e.exists(o)){let i=await e.formatCode(o,Rr({sys:e,routePath:o,modelName:"page"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}}async function ha(e,t,r){let n=`figma-imports.${e.typescriptEnabled?"tsx":"jsx"}`,o=e.join(t,n);if(!await e.exists(o)){let i=await e.formatCode(o,Rr({sys:e,routePath:o,modelName:"figma-imports"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}}function Rr({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled;return e.sdkVersion===w.gen2?`
160
160
  import React from "react";
161
161
  import { useRouter } from "next/router";
162
162
  ${n?'import type { BuilderContent } from "@builder.io/sdk-react";':""}
@@ -171,7 +171,7 @@ import Head from "next/head";
171
171
  ${n?'import { GetStaticProps } from "next";':""}
172
172
  import { CUSTOM_COMPONENTS } from ${JSON.stringify(B(e,e.builderComponentPath,e.registryPath))};
173
173
 
174
- const BUILDER_API_KEY = process.env.${Ce}${n?"!":""};
174
+ const BUILDER_API_KEY = process.env.${xe}${n?"!":""};
175
175
 
176
176
  // Define a function that fetches the Builder
177
177
  // content for a given page
@@ -255,7 +255,7 @@ import { BuilderContent } from "@builder.io/sdk";`:""}${n?`
255
255
  import { GetStaticProps } from "next";`:""}
256
256
  import ${JSON.stringify(B(e,t,e.registryPath))};
257
257
 
258
- builder.init(process.env.${Ce}${n?"!":""});
258
+ builder.init(process.env.${xe}${n?"!":""});
259
259
 
260
260
  // Define a function that fetches the Builder
261
261
  // content for a given page
@@ -320,7 +320,7 @@ export default function Page({ page }${n?": { page: BuilderContent | null }":""}
320
320
  </>
321
321
  );
322
322
  }
323
- `.trimStart()}async function fa(e,t){let n=e.typescriptEnabled?"tsx":"jsx",o=e.join(e.componentsDir,"Counter"),i=e.join(o,`Counter.${n}`),a=e.join(o,"styles.module.css"),{component:s,styles:u}=da(e);if(!await e.exists(i)){let p=await e.formatCode(i,s);await e.writeFile(i,p),t.push({filePath:i,modifiedType:"create"})}return await e.exists(a)||(await e.writeFile(a,u),t.push({filePath:a,modifiedType:"create"})),i}function da(e){let t=e.typescriptEnabled,r=`
323
+ `.trimStart()}async function Ea(e,t){let n=e.typescriptEnabled?"tsx":"jsx",o=e.join(e.componentsDir,"Counter"),i=e.join(o,`Counter.${n}`),a=e.join(o,"styles.module.css"),{component:s,styles:u}=Sa(e);if(!await e.exists(i)){let p=await e.formatCode(i,s);await e.writeFile(i,p),t.push({filePath:i,modifiedType:"create"})}return await e.exists(a)||(await e.writeFile(a,u),t.push({filePath:a,modifiedType:"create"})),i}function Sa(e){let t=e.typescriptEnabled,r=`
324
324
  "use client"
325
325
  import React, { useState } from "react";
326
326
  import styles from "./styles.module.css";
@@ -383,18 +383,18 @@ export default Counter;
383
383
  font-size: 42px;
384
384
  text-align: center;
385
385
  }
386
- `.trimStart();return{component:r,styles:n}}async function Ir(e,t,r){if(!await e.exists(e.registryPath)){if(e.sdkVersion===w.gen2){let i=ga(e);await e.writeFile(e.registryPath,i)}else await e.writeFile(e.registryPath,"");t.push({filePath:e.registryPath,modifiedType:"create"})}if(!r)return;let o=(await ye(e,null,!1,!1,null,null,!1,!1)).components.find(i=>i.filePath===r);o&&await ye(e,o.id,!0,!1,null,null,!0,!1)}function ga(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-react";
386
+ `.trimStart();return{component:r,styles:n}}async function Nr(e,t,r){if(!await e.exists(e.registryPath)){if(e.sdkVersion===w.gen2){let i=Aa(e);await e.writeFile(e.registryPath,i)}else await e.writeFile(e.registryPath,"");t.push({filePath:e.registryPath,modifiedType:"create"})}if(!r)return;let o=(await we(e,null,!1,!1,null,null,!1,!1)).components.find(i=>i.filePath===r);o&&await we(e,o.id,!0,!1,null,null,!0,!1)}function Aa(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-react";
387
387
 
388
388
  export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
389
389
  ];`:`export const CUSTOM_COMPONENTS = [
390
390
  ];
391
- `}async function at(e){let t=await bt(e,e.getRepoRootDir());if(t&&typeof t=="object"){let r=new Set(Object.keys({...t.dependencies,...t.devDependencies}));if(r.has("@builder.io/sdk-react"))return w.gen2;if(r.has("@builder.io/react"))return w.gen1}return null}async function Rr(e){let t=await Da(e);return{builderPageOptions:async()=>({templateContentId:"3de2f13211234071a4b19a17b4fbc5a7",pathname:"/builder-demo",title:"Builder + Next.js Demo Page"}),ensureBuilderSetup:()=>yr(t),ensureFigmaImportPage:()=>wr(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>ye(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:n=>{t.addExternalPackage(n)},loadComponent:async n=>{let o=await ye(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>ye(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>ye(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>ye(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>ye(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>lt(t),setPublicApiKey:n=>Zn(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===w.gen2?[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-react"}]:[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>ge(t),setCache:n=>De(t,n)}}async function Da(e){let t=e.getAppRootDir(),r=e.join(t,"src"),n=await Ca(e),o=await re(e),i=e.getFrameworks().find(p=>p.name==="next"),a={asyncParams:i?.version?.major!==void 0&&i.version.major>=15},s={},u={...e,addExternalPackage:p=>{s[e.join(t,p,"index.ts")]=`export * from "${p}";`},readFileSync:p=>s[p]??e.readFileSync(p),existsSync:p=>!!s[p]||e.existsSync(p),readdirSync:p=>{let m=e.readdirSync(p);return p===t?[...m,...Object.keys(s).map(f=>f.slice(t.length+1))]:m},readdir:async p=>{let m=await e.readdir(p);return p===t?[...m,...Object.keys(s).map(f=>f.slice(t.length+1))]:m},appDir:null,pagesDir:null,srcDir:null,builderComponentPath:"",componentsDir:"",registryPath:"",nextConfigPath:n,typescriptEnabled:o,features:a};if(e.sdkVersion?u.sdkVersion=e.sdkVersion:u.sdkVersion=await at(u),await e.exists(r)){u.srcDir=r,u.componentsDir=e.join(r,"components");let p=e.join(r,"app");await e.exists(p)&&(u.appDir=p);let m=e.join(r,"pages");await e.exists(m)&&(u.pagesDir=m),u.registryPath=await ae(e,r)}else u.componentsDir=e.join(t,"components"),u.registryPath=await ae(e,t);if(u.builderComponentPath=e.join(u.componentsDir,`builder.${o?"tsx":"jsx"}`),!u.appDir){let p=e.join(t,"app");await e.exists(p)&&(u.appDir=p)}if(!u.pagesDir){let p=e.join(t,"pages");await e.exists(p)&&(u.pagesDir=p)}if(!u.appDir&&!u.pagesDir)throw new Error(`Could not find Next.js "app" or "pages" directory. Searched in "${t}".`);return u}async function Ca(e){let t=e.join(e.getAppRootDir(),"next.config.ts");if(await e.exists(t))return t;let r=e.join(e.getAppRootDir(),"next.config.mjs");if(await e.exists(r))return r;let n=e.join(e.getAppRootDir(),"next.config.js");if(await e.exists(n))return n;throw new Error(`Could not find Next.js config file. Searched for "next.config.ts", "next.config.mjs" and "next.config.js" in "${e.getAppRootDir()}".`)}async function Ct(e){return await Le(e,[".env"],Br)}async function Nr(e,t){xa(t);let r=await Ct(e),n=await _e(e,r.file,r.envKey,t);return{...r,modifiedType:n}}function xa(e){typeof process<"u"&&(process.env[Br]=e)}var Br="PUBLIC_BUILDER_API_KEY";function Or(e,t,r){if(r.length===0)return e;let n=e.split(`
391
+ `}async function ut(e){let t=await vt(e,e.getRepoRootDir());if(t&&typeof t=="object"){let r=new Set(Object.keys({...t.dependencies,...t.devDependencies}));if(r.has("@builder.io/sdk-react"))return w.gen2;if(r.has("@builder.io/react"))return w.gen1}return null}async function Br(e){let t=await Fa(e);return{builderPageOptions:async()=>({templateContentId:"3de2f13211234071a4b19a17b4fbc5a7",pathname:"/builder-demo",title:"Builder + Next.js Demo Page"}),ensureBuilderSetup:()=>Tr(t),ensureFigmaImportPage:()=>br(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>we(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:n=>{t.addExternalPackage(n)},loadComponent:async n=>{let o=await we(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>we(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>we(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>we(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>we(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>mt(t),setPublicApiKey:n=>er(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===w.gen2?[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-react"}]:[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>De(t),setCache:n=>Ce(t,n)}}async function Fa(e){let t=e.getAppRootDir(),r=e.join(t,"src"),n=await Pa(e),o=await re(e),i=e.getFrameworks().find(p=>p.name==="next"),a={asyncParams:i?.version?.major!==void 0&&i.version.major>=15},s={},u={...e,addExternalPackage:p=>{s[e.join(t,p,"index.ts")]=`export * from "${p}";`},readFileSync:p=>s[p]??e.readFileSync(p),existsSync:p=>!!s[p]||e.existsSync(p),readdirSync:p=>{let m=e.readdirSync(p);return p===t?[...m,...Object.keys(s).map(f=>f.slice(t.length+1))]:m},readdir:async p=>{let m=await e.readdir(p);return p===t?[...m,...Object.keys(s).map(f=>f.slice(t.length+1))]:m},appDir:null,pagesDir:null,srcDir:null,builderComponentPath:"",componentsDir:"",registryPath:"",nextConfigPath:n,typescriptEnabled:o,features:a};if(e.sdkVersion?u.sdkVersion=e.sdkVersion:u.sdkVersion=await ut(u),await e.exists(r)){u.srcDir=r,u.componentsDir=e.join(r,"components");let p=e.join(r,"app");await e.exists(p)&&(u.appDir=p);let m=e.join(r,"pages");await e.exists(m)&&(u.pagesDir=m),u.registryPath=await ae(e,r)}else u.componentsDir=e.join(t,"components"),u.registryPath=await ae(e,t);if(u.builderComponentPath=e.join(u.componentsDir,`builder.${o?"tsx":"jsx"}`),!u.appDir){let p=e.join(t,"app");await e.exists(p)&&(u.appDir=p)}if(!u.pagesDir){let p=e.join(t,"pages");await e.exists(p)&&(u.pagesDir=p)}if(!u.appDir&&!u.pagesDir)throw new Error(`Could not find Next.js "app" or "pages" directory. Searched in "${t}".`);return u}async function Pa(e){let t=e.join(e.getAppRootDir(),"next.config.ts");if(await e.exists(t))return t;let r=e.join(e.getAppRootDir(),"next.config.mjs");if(await e.exists(r))return r;let n=e.join(e.getAppRootDir(),"next.config.js");if(await e.exists(n))return n;throw new Error(`Could not find Next.js config file. Searched for "next.config.ts", "next.config.mjs" and "next.config.js" in "${e.getAppRootDir()}".`)}async function xt(e){return await je(e,[".env"],kr)}async function Or(e,t){ya(t);let r=await xt(e),n=await Ve(e,r.file,r.envKey,t);return{...r,modifiedType:n}}function ya(e){typeof process<"u"&&(process.env[kr]=e)}var kr="PUBLIC_BUILDER_API_KEY";function Lr(e,t,r){if(r.length===0)return e;let n=e.split(`
392
392
  `),o=n.findIndex(s=>s.includes(r));if(o===-1||n.some(s=>s.includes(t[0])))return e;let a=["/**",...t.map(s=>` * ${s.trim()}`)," */"];return n.splice(o,0,...a),n.join(`
393
- `)}async function Lr(e,t){let r=[],n=t.getSourceFiles(),o=t.getTypeChecker();return await Promise.all(n.map(async i=>{let a=e.basename(i.fileName);if(a.startsWith(".")||Sa.has(a))return;let s=e.normalize(i.fileName);if(s===e.registryPath)return;let u=await Ot(e,o,s,i);r.push(...u)})),r}async function _r(e,t){if(e.extname(t).toLowerCase()===".tsx"){let n=await e.readFile(t);if(n)return ha(e,t,n)}return null}function ha(e,t,r){let n=I(e,r);return Ot(e,null,t,n)}async function Ot(e,t,r,n){r=e.normalize(r);let o=[],i=ue(e,n);return await Promise.all(i.map(async a=>{let s=await Ea(e,t,r,a);s&&o.push(s)})),o}async function Ea(e,t,r,n){let o=e.relative(e.getAppRootDir(),r),i=V(e,r);if(e.ts.isVariableStatement(n.node))for(let a of n.node.declarationList.declarations){let s=kr(e,a.initializer);if(s&&e.ts.isIdentifier(a.name)){let u=a.name.text;return{cmpInfo:{id:await $(e,r,u),displayFilePath:k(e,r),name:K(u),inputs:[],exportName:n.isDefaultExport?"default":u,exportType:n.isDefaultExport?"default":"named",importName:u,filePath:r,relFilePath:o,importPath:i},node:s}}}else if(e.ts.isCallExpression(n.node)){let a=kr(e,n.node);if(a)return{cmpInfo:{id:await $(e,r,"default"),displayFilePath:k(e,r),name:se(e,r),inputs:[],exportName:"default",exportType:"default",importName:ze(e,r),filePath:r,relFilePath:o,importPath:i},node:a}}return null}function kr(e,t){if(t&&e.ts.isCallExpression(t)&&e.ts.isIdentifier(t.expression)&&t.expression.text==="component$"&&t.arguments.length>0){let r=t.arguments[0];if(e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r))return{callExpression:t,fnNode:r}}return null}var Sa=new Set(["node_modules","layout.tsx","404.tsx","router-head.tsx"]);async function jr(e,t){let r=t.node.fnNode;if((e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r))&&r.parameters.length>0){let{sourceFile:o,typeChecker:i}=await tt(e,t.cmpInfo.filePath,null);if(!(await Ot(e,i,t.cmpInfo.filePath,o)).find(u=>u.cmpInfo.id===t.cmpInfo.id))throw new Error(`createComponentInputs() Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return Je(e,i,r)}return[]}async function Vr(e){return ln(e)}async function ln(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,Aa),t.push({filePath:e.registryPath,modifiedType:"create"})),t}var Aa=`import type { RegisteredComponent } from "@builder.io/sdk-qwik";
393
+ `)}async function jr(e,t){let r=[],n=t.getSourceFiles(),o=t.getTypeChecker();return await Promise.all(n.map(async i=>{let a=e.basename(i.fileName);if(a.startsWith(".")||ba.has(a))return;let s=e.normalize(i.fileName);if(s===e.registryPath)return;let u=await kt(e,o,s,i);r.push(...u)})),r}async function Vr(e,t){if(e.extname(t).toLowerCase()===".tsx"){let n=await e.readFile(t);if(n)return wa(e,t,n)}return null}function wa(e,t,r){let n=I(e,r);return kt(e,null,t,n)}async function kt(e,t,r,n){r=e.normalize(r);let o=[],i=ue(e,n);return await Promise.all(i.map(async a=>{let s=await Ta(e,t,r,a);s&&o.push(s)})),o}async function Ta(e,t,r,n){let o=e.relative(e.getAppRootDir(),r),i=V(e,r);if(e.ts.isVariableStatement(n.node))for(let a of n.node.declarationList.declarations){let s=_r(e,a.initializer);if(s&&e.ts.isIdentifier(a.name)){let u=a.name.text;return{cmpInfo:{id:await $(e,r,u),displayFilePath:k(e,r),name:K(u),inputs:[],exportName:n.isDefaultExport?"default":u,exportType:n.isDefaultExport?"default":"named",importName:u,filePath:r,relFilePath:o,importPath:i},node:s}}}else if(e.ts.isCallExpression(n.node)){let a=_r(e,n.node);if(a)return{cmpInfo:{id:await $(e,r,"default"),displayFilePath:k(e,r),name:se(e,r),inputs:[],exportName:"default",exportType:"default",importName:qe(e,r),filePath:r,relFilePath:o,importPath:i},node:a}}return null}function _r(e,t){if(t&&e.ts.isCallExpression(t)&&e.ts.isIdentifier(t.expression)&&t.expression.text==="component$"&&t.arguments.length>0){let r=t.arguments[0];if(e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r))return{callExpression:t,fnNode:r}}return null}var ba=new Set(["node_modules","layout.tsx","404.tsx","router-head.tsx"]);async function $r(e,t){let r=t.node.fnNode;if((e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r))&&r.parameters.length>0){let{sourceFile:o,typeChecker:i}=await nt(e,t.cmpInfo.filePath,null);if(!(await kt(e,i,t.cmpInfo.filePath,o)).find(u=>u.cmpInfo.id===t.cmpInfo.id))throw new Error(`createComponentInputs() Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return Qe(e,i,r)}return[]}async function Kr(e){return cn(e)}async function cn(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,va),t.push({filePath:e.registryPath,modifiedType:"create"})),t}var va=`import type { RegisteredComponent } from "@builder.io/sdk-qwik";
394
394
 
395
395
  export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
396
396
  ];
397
- `;async function $r(e){await ln(e);let t=await e.readFile(e.registryPath);return t?Fa(e,t):{components:[],sourceFile:I(e,"")}}async function Fa(e,t){let r=I(e,t);return Pa(e,r)}async function Pa(e,t){let r=[],n=J(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await cn(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:te(r)}}async function cn(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[]};for(let o of r.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(N(e,o)==="component"&&e.ts.isIdentifier(o.initializer)){let a=o.initializer.text;n.name===""&&(n.name=K(a)),n.importName=a;let s=await xe(e,e.registryPath,t,a);if(!s)continue;n.filePath=s.filePath,n.relFilePath=s.relFilePath,n.importPath=V(e,s.filePath),n.displayFilePath=s.displayFilePath,n.exportType=s.exportType;let u=await _r(e,s.filePath);if(u&&u.length>0)if(u.length===1)n.exportName=u[0].cmpInfo.exportName;else{let p=u.find(m=>m.cmpInfo.exportName===a);p&&(n.exportName=p.cmpInfo.exportName)}continue}}return n=ne(e,n,r),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName)),n}async function Kr(e){let t=new Set,r=async o=>{let i=await e.readdir(o);await Promise.all(i.map(async a=>{if(a.startsWith(".")||a==="node_modules")return;let s=e.join(o,a),u=e.extname(a).toLowerCase();if(u===".tsx"||u===".ts"){t.add(s);return}(await e.stat(s)).isDirectory()&&await r(s)}))};return await r(e.getAppRootDir()),await G(e,[...t])}async function Qe(e,t,r,n,o,i,a,s){let u=await Kr(e),[p,m,f]=await Promise.all([Lr(e,u),$r(e),Ct(e)]),c=p.map(l=>l.cmpInfo),d=m.components,C={components:me(c,d),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:he(c),publicApiKey:f.envValue??void 0,devToolsVersion:e.version};if(s)return C;if(t!=null){let l=p.find(F=>F.cmpInfo.id===t);if(!l)throw new Error(`Component ${t} not found`);let D=m.sourceFile,g=C.components.find(F=>F.id===t),x=await jr(e,l);ie(g,x),t=Array.isArray(t)?t[0]:t;let S=Fe(t,c,d,r,n,o,i),{elements:P,elmIndex:A,statementIndex:E,statement:O,variableDeclaration:z}=await wa(e,D,l),j=!1;if(S.addCmpToRegistry?(P.push(ya(e,S.addCmpToRegistry)),j=!0):S.removeCmpFromRegistry?(P.splice(A,1),j=!0):S.updateRegisteredCmp&&(P[A]=Q(e,P[A],S.updateRegisteredCmp),j=!0),j&&a){let F=[...D.statements];F[E]=e.ts.factory.updateVariableStatement(O,O.modifiers,e.ts.factory.updateVariableDeclarationList(O.declarationList,[e.ts.factory.updateVariableDeclaration(z,z.name,z.exclamationToken,z.type,e.ts.factory.createArrayLiteralExpression(Se(e,P)))])),D=e.ts.factory.updateSourceFile(D,F),g.exportType==="named"?D=v(e,D,{namedImports:[g.importName],importPath:B(e,e.registryPath,g.filePath)}):D=v(e,D,{defaultImport:g.importName,importPath:B(e,e.registryPath,g.filePath)}),D=v(e,D,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-qwik",isTypeOnly:!0}),D=Pe(e,D,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),D=Ae(e,D),D=Ee(e,D);let y=_(e,D);y=pe(y),y=Or(y,Ta,"CUSTOM_COMPONENTS"),y=await e.formatCode(e.registryPath,y),await e.writeFile(e.registryPath,y)}C.components=S.components}return C}function ya(e,t){return Q(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName))],!0),t)}async function wa(e,t,r){let n=J(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let o=n.arrayLiteralExp.elements.filter(a=>e.ts.isObjectLiteralExpression(a)),i=-1;for(let a=0;a<o.length;a++)if((await cn(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}var Ta=["This array is used to integrate custom components within Builder.","https://www.builder.io/c/docs/custom-components-intro","",'These components will be found the "Custom Components"',"section of Builder's visual editor.",'You can also turn on "components only mode" to limit',"editing to only these components.","https://www.builder.io/c/docs/guides/components-only-mode"];async function Mr(e){let t=await ba(e);return{builderPageOptions:async()=>({templateContentId:"dc70f1d979ad416d8fd357137eb9ddfb",pathname:"/",title:"Builder + Qwik Demo Page"}),ensureBuilderSetup:()=>Vr(t),ensureFigmaImportPage:async()=>[],getRegistryPath:()=>t.registryPath,getRegistry:n=>Qe(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:async n=>{},loadComponent:async n=>{let o=await Qe(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>Qe(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>Qe(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>Qe(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>Qe(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>Ct(t),setPublicApiKey:n=>Nr(t,n.publicApiKey),getDependencies:n=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-qwik"}],getDevRunCommand:()=>"dev",getCache:()=>ge(t),setCache:n=>De(t,n)}}async function ba(e){let t=await ut(e,e.getAppRootDir(),"components");if(!t)throw new Error(`Could not find components directory within project: ${e.getAppRootDir()}`);let r=await ae(e,t),n=e.join(e.getAppRootDir(),".env");return{...e,componentsDir:t,registryPath:r,envPath:n}}async function xt(e){return await Le(e,[".env"],ht)}async function Ur(e,t){let r=await xt(e),n=await _e(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var ht="PUBLIC_BUILDER_KEY";var va=new Set(["dist","node_modules"]);async function zr(e,t){let r=[],n=t.getSourceFiles(),o=t.getTypeChecker(),i=e.join(e.getAppRootDir(),"build");return await Promise.all(n.map(async a=>{let s=e.basename(a.fileName);if(s.startsWith(".")||s==="node_modules"||vt(e,va,a.fileName)||Ia.has(s)||s.includes("$."))return;let u=e.normalize(a.fileName);if(u===e.remixConfigPath||u===e.registryPath||u===i)return;let p=await Ve(e,o,u,a);r.push(...p)})),r}var Ia=new Set(["root.tsx","root.ts","root.jsx","root.js","_index.tsx","_index.jsx","_index.ts","_index.js"]);async function qr(e){await kt(e);let t=await e.readFile(e.registryPath);return t?Ra(e,t):{components:[],sourceFile:I(e,"")}}async function Ra(e,t){let r=I(e,t);return Na(e,r)}async function Na(e,t){let r=[],n=J(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await mn(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:te(r)}}async function mn(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1};e.sdkVersion===w.gen2&&et(e,r)&&(n.acceptsChildren=!0);for(let o of r.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(N(e,o)==="component"){let a,{initializer:s}=o;if(e.ts.isIdentifier(s))a=s.text;else if(e.ts.isCallExpression(s)){(e.ts.isIdentifier(s.expression)&&s.expression.text)==="withChildren"&&(n.acceptsChildren=!0);let m=s.arguments[0];e.ts.isIdentifier(m)&&(a=m.text)}if(!a)continue;n.name===""&&(n.name=K(a)),n.importName=a;let u=await xe(e,e.registryPath,t,a);if(!u)continue;if(n.filePath=u.filePath,n.relFilePath=u.relFilePath,await e.exists(u.filePath)?n.importPath=V(e,u.filePath):(n.externalImportPath=u.importPath,n.importPath=n.externalImportPath),n.displayFilePath=u.displayFilePath,n.exportType=u.exportType,n.externalImportPath)n.exportName=a;else{let p=await cr(e,u.filePath);if(p&&p.length>0)if(p.length===1)n.exportName=p[0].cmpInfo.exportName;else{let m=p.find(f=>f.cmpInfo.exportName===a);m&&(n.exportName=m.cmpInfo.exportName)}}continue}}return n=ne(e,n,r),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName,n.externalImportPath)),n}async function we(e,t,r,n,o,i,a,s){let u=await $e(e),[p,m,f]=await Promise.all([zr(e,u),qr(e),xt(e)]),c=p.map(x=>x.cmpInfo),d=m.components,C={components:me(c,d),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:he(c),publicApiKey:f.envValue??void 0,devToolsVersion:e.version};if(s)return C.components=await rt(e,C.components),C;let l=!1,D=m.sourceFile,g=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(g.length>0){let x=g.map(A=>{let E=p.find(O=>O.cmpInfo.id===A);if(!E)throw new Error(`Component ${A} not found`);return E}),S=Array.from(new Set(x.map(A=>A.cmpInfo.filePath))),P=await G(e,S);for(let A of x){let E=C.components.find(L=>L.id===A.cmpInfo.id),O=await ot(e,A,P);ie(E,O);let z=c.findIndex(L=>L.id===A.cmpInfo.id);c[z].inputs=O;let j=Fe(A.cmpInfo.id,c,d,r,n,o,i),{elements:F,elmIndex:y,statementIndex:H,statement:le,variableDeclaration:Y}=await Oa(e,D,A);if(j.addCmpToRegistry)F.push(Ba(e,j.addCmpToRegistry)),l=!0;else if(j.removeCmpFromRegistry)F.splice(y,1),l=!0;else if(j.updateRegisteredCmp){let L=Q(e,F[y],j.updateRegisteredCmp);F[y]=e.ts.factory.updateObjectLiteralExpression(L,[Jr(e,j.updateRegisteredCmp),...L.properties.slice(1)]),l=!0}if(l&&a){let L=[...D.statements];L[H]=e.ts.factory.updateVariableStatement(le,le.modifiers,e.ts.factory.updateVariableDeclarationList(le.declarationList,[e.ts.factory.updateVariableDeclaration(Y,Y.name,Y.exclamationToken,Y.type,e.ts.factory.createArrayLiteralExpression(Se(e,F)))])),D=e.ts.factory.updateSourceFile(D,L),E.exportType==="named"?D=v(e,D,{namedImports:[E.importName],importPath:E.externalImportPath?E.externalImportPath:B(e,e.registryPath,E.filePath)}):D=v(e,D,{defaultImport:E.importName,importPath:E.externalImportPath?E.externalImportPath:B(e,e.registryPath,E.filePath)});let X=e.sdkVersion===w.gen2?"@builder.io/sdk-react":"@builder.io/react";D=v(e,D,{namedImports:["RegisteredComponent"],importPath:X,isTypeOnly:!0}),E.acceptsChildren&&e.sdkVersion!==w.gen2&&(D=v(e,D,{namedImports:["withChildren"],importPath:"@builder.io/react"})),D=Pe(e,D,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),C.components=j.components,d=j.components.filter(Ue=>Ue.isRegistered)}}}if(l&&a){D=Ae(e,D),D=Ee(e,D);let x=_(e,D);x=pe(x),x=await e.formatCode(e.registryPath,x),await e.writeFile(e.registryPath,x)}return C}function Jr(e,t){if(e.sdkVersion===w.gen2)return e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName));let r=e.ts.factory.createIdentifier(t.importName),n=t.acceptsChildren?e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("withChildren"),void 0,[r]):r;return e.ts.factory.createPropertyAssignment("component",n)}function Ba(e,t){return Q(e,e.ts.factory.createObjectLiteralExpression([Jr(e,t),...t.acceptsChildren&&e.sdkVersion===w.gen2?[e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())]:[]],!0),t)}async function Oa(e,t,r){let n=J(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let o=n.arrayLiteralExp.elements.filter(a=>e.ts.isObjectLiteralExpression(a)),i=-1;for(let a=0;a<o.length;a++)if((await mn(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}async function Qr(e){let t=[],r=await _a(e,t);return t.push(...await kt(e)),await Va(e,r),await La(e,t),t}async function Wr(e){let t=[];return t.push(...await kt(e)),await ka(e,t),t}async function ka(e,t){let r=`figma-imports.${e.typescriptEnabled?"tsx":"jsx"}`;e.hasLocaleParam&&(e.debug("remixEnsureFigmaImportRoute, hasLocaleParam"),r=`($locale).${r}`);let n=e.join(e.routesDir,r),o=await e.exists(n);e.debug(`remixEnsureFigmaImportRoute, hasRoute: ${o}`);let i=await e.formatCode(n,Yr({sys:e,routePath:n,modelName:"figma-imports"}));await e.writeFile(n,i),t.push({filePath:n,modifiedType:o?"update":"create"})}async function La(e,t){let r=`$.${e.typescriptEnabled?"tsx":"jsx"}`;e.hasLocaleParam&&(e.debug("remixEnsureAppRoute, hasLocaleParam"),r=`($locale).${r}`),e.sdkVersion===w.gen2&&(r=`($slug)._index.${e.typescriptEnabled?"tsx":"jsx"}`);let n=e.join(e.routesDir,r),o=await e.exists(n);e.debug(`remixEnsureAppRoute, hasRoute: ${o}`);let i=await e.formatCode(n,Yr({sys:e,routePath:n,modelName:"page"}));await e.writeFile(n,i),t.push({filePath:n,modifiedType:o?"update":"create"})}function Yr({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,o=B(e,t,e.registryPath),i="",a="";n&&(i="import type { LoaderArgs } from '@remix-run/server-runtime';",a=": LoaderArgs");let s=`process.env.${ht}`;return e.getFrameworks().some(u=>u.name==="@shopify/remix-oxygen")&&(s=`context.env.${ht}`),n&&(s+="!"),e.sdkVersion===w.gen2?`
397
+ `;async function Mr(e){await cn(e);let t=await e.readFile(e.registryPath);return t?Ia(e,t):{components:[],sourceFile:I(e,"")}}async function Ia(e,t){let r=I(e,t);return Ra(e,r)}async function Ra(e,t){let r=[],n=J(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await mn(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:te(r)}}async function mn(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[]};for(let o of r.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(N(e,o)==="component"&&e.ts.isIdentifier(o.initializer)){let a=o.initializer.text;n.name===""&&(n.name=K(a)),n.importName=a;let s=await he(e,e.registryPath,t,a);if(!s)continue;n.filePath=s.filePath,n.relFilePath=s.relFilePath,n.importPath=V(e,s.filePath),n.displayFilePath=s.displayFilePath,n.exportType=s.exportType;let u=await Vr(e,s.filePath);if(u&&u.length>0)if(u.length===1)n.exportName=u[0].cmpInfo.exportName;else{let p=u.find(m=>m.cmpInfo.exportName===a);p&&(n.exportName=p.cmpInfo.exportName)}continue}}return n=ne(e,n,r),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName)),n}async function Ur(e){let t=new Set,r=async o=>{let i=await e.readdir(o);await Promise.all(i.map(async a=>{if(a.startsWith(".")||a==="node_modules")return;let s=e.join(o,a),u=e.extname(a).toLowerCase();if(u===".tsx"||u===".ts"){t.add(s);return}(await e.stat(s)).isDirectory()&&await r(s)}))};return await r(e.getAppRootDir()),await G(e,[...t])}async function We(e,t,r,n,o,i,a,s){let u=await Ur(e),[p,m,f]=await Promise.all([jr(e,u),Mr(e),xt(e)]),l=p.map(c=>c.cmpInfo),d=m.components,C={components:me(l,d),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ee(l),publicApiKey:f.envValue??void 0,devToolsVersion:e.version};if(s)return C;if(t!=null){let c=p.find(F=>F.cmpInfo.id===t);if(!c)throw new Error(`Component ${t} not found`);let D=m.sourceFile,g=C.components.find(F=>F.id===t),x=await $r(e,c);ie(g,x),t=Array.isArray(t)?t[0]:t;let S=Pe(t,l,d,r,n,o,i),{elements:P,elmIndex:A,statementIndex:E,statement:O,variableDeclaration:z}=await Ba(e,D,c),j=!1;if(S.addCmpToRegistry?(P.push(Na(e,S.addCmpToRegistry)),j=!0):S.removeCmpFromRegistry?(P.splice(A,1),j=!0):S.updateRegisteredCmp&&(P[A]=Q(e,P[A],S.updateRegisteredCmp),j=!0),j&&a){let F=[...D.statements];F[E]=e.ts.factory.updateVariableStatement(O,O.modifiers,e.ts.factory.updateVariableDeclarationList(O.declarationList,[e.ts.factory.updateVariableDeclaration(z,z.name,z.exclamationToken,z.type,e.ts.factory.createArrayLiteralExpression(Ae(e,P)))])),D=e.ts.factory.updateSourceFile(D,F),g.exportType==="named"?D=v(e,D,{namedImports:[g.importName],importPath:B(e,e.registryPath,g.filePath)}):D=v(e,D,{defaultImport:g.importName,importPath:B(e,e.registryPath,g.filePath)}),D=v(e,D,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-qwik",isTypeOnly:!0}),D=ye(e,D,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),D=Fe(e,D),D=Se(e,D);let y=_(e,D);y=pe(y),y=Lr(y,Oa,"CUSTOM_COMPONENTS"),y=await e.formatCode(e.registryPath,y),await e.writeFile(e.registryPath,y)}C.components=S.components}return C}function Na(e,t){return Q(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName))],!0),t)}async function Ba(e,t,r){let n=J(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let o=n.arrayLiteralExp.elements.filter(a=>e.ts.isObjectLiteralExpression(a)),i=-1;for(let a=0;a<o.length;a++)if((await mn(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}var Oa=["This array is used to integrate custom components within Builder.","https://www.builder.io/c/docs/custom-components-intro","",'These components will be found the "Custom Components"',"section of Builder's visual editor.",'You can also turn on "components only mode" to limit',"editing to only these components.","https://www.builder.io/c/docs/guides/components-only-mode"];async function zr(e){let t=await ka(e);return{builderPageOptions:async()=>({templateContentId:"dc70f1d979ad416d8fd357137eb9ddfb",pathname:"/",title:"Builder + Qwik Demo Page"}),ensureBuilderSetup:()=>Kr(t),ensureFigmaImportPage:async()=>[],getRegistryPath:()=>t.registryPath,getRegistry:n=>We(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:async n=>{},loadComponent:async n=>{let o=await We(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>We(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>We(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>We(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>We(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>xt(t),setPublicApiKey:n=>Or(t,n.publicApiKey),getDependencies:n=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-qwik"}],getDevRunCommand:()=>"dev",getCache:()=>De(t),setCache:n=>Ce(t,n)}}async function ka(e){let t=await lt(e,e.getAppRootDir(),"components");if(!t)throw new Error(`Could not find components directory within project: ${e.getAppRootDir()}`);let r=await ae(e,t),n=e.join(e.getAppRootDir(),".env");return{...e,componentsDir:t,registryPath:r,envPath:n}}async function ht(e){return await je(e,[".env"],Et)}async function qr(e,t){let r=await ht(e),n=await Ve(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var Et="PUBLIC_BUILDER_KEY";var La=new Set(["dist","node_modules"]);async function Jr(e,t){let r=[],n=t.getSourceFiles(),o=t.getTypeChecker(),i=e.join(e.getAppRootDir(),"build");return await Promise.all(n.map(async a=>{let s=e.basename(a.fileName);if(s.startsWith(".")||s==="node_modules"||It(e,La,a.fileName)||_a.has(s)||s.includes("$."))return;let u=e.normalize(a.fileName);if(u===e.remixConfigPath||u===i)return;let p=await $e(e,o,u,a,u===e.registryPath);r.push(...p)})),r}var _a=new Set(["root.tsx","root.ts","root.jsx","root.js","_index.tsx","_index.jsx","_index.ts","_index.js"]);async function Qr(e){await Lt(e);let t=await e.readFile(e.registryPath);return t?ja(e,t):{components:[],sourceFile:I(e,"")}}async function ja(e,t){let r=I(e,t);return Va(e,r)}async function Va(e,t){let r=[],n=J(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await fn(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:te(r)}}async function fn(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1};e.sdkVersion===w.gen2&&tt(e,r)&&(n.acceptsChildren=!0);for(let o of r.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(N(e,o)==="component"){let a,{initializer:s}=o;if(e.ts.isIdentifier(s))a=s.text;else if(e.ts.isCallExpression(s)){(e.ts.isIdentifier(s.expression)&&s.expression.text)==="withChildren"&&(n.acceptsChildren=!0);let m=s.arguments[0];e.ts.isIdentifier(m)&&(a=m.text)}if(!a)continue;n.name===""&&(n.name=K(a)),n.importName=a;let u=await he(e,e.registryPath,t,a);if(!u)continue;if(n.filePath=u.filePath,n.relFilePath=u.relFilePath,await e.exists(u.filePath)?n.importPath=V(e,u.filePath):(n.externalImportPath=u.importPath,n.importPath=n.externalImportPath),n.displayFilePath=u.displayFilePath,n.exportType=u.exportType,n.externalImportPath)n.exportName=a;else{let p=await fr(e,u.filePath,e.registryPath===u.filePath||ge(u.filePath));if(p&&p.length>0)if(p.length===1)n.exportName=p[0].cmpInfo.exportName;else{let m=p.find(f=>f.cmpInfo.exportName===a);m&&(n.exportName=m.cmpInfo.exportName)}}continue}}return n=ne(e,n,r),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName,n.externalImportPath)),n}async function Te(e,t,r,n,o,i,a,s){let u=await Ke(e),[p,m,f]=await Promise.all([Jr(e,u),Qr(e),ht(e)]),l=p.map(x=>x.cmpInfo),d=m.components,C={components:me(l,d),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ee(l),publicApiKey:f.envValue??void 0,devToolsVersion:e.version};if(s)return C.components=await it(e,C.components),C;let c=!1,D=m.sourceFile,g=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(g.length>0){let x=g.map(A=>{let E=p.find(O=>O.cmpInfo.id===A);if(!E)throw new Error(`Component ${A} not found`);return E}),S=Array.from(new Set(x.map(A=>A.cmpInfo.filePath))),P=await G(e,S);for(let A of x){let E=C.components.find(L=>L.id===A.cmpInfo.id),O=await at(e,A,P,e.registryPath===A.cmpInfo.filePath||ge(A.cmpInfo.filePath));ie(E,O);let z=l.findIndex(L=>L.id===A.cmpInfo.id);l[z].inputs=O;let j=Pe(A.cmpInfo.id,l,d,r,n,o,i),{elements:F,elmIndex:y,statementIndex:H,statement:le,variableDeclaration:Y}=await Ka(e,D,A);if(j.addCmpToRegistry)F.push($a(e,j.addCmpToRegistry)),c=!0;else if(j.removeCmpFromRegistry)F.splice(y,1),c=!0;else if(j.updateRegisteredCmp){let L=Q(e,F[y],j.updateRegisteredCmp);F[y]=e.ts.factory.updateObjectLiteralExpression(L,[Wr(e,j.updateRegisteredCmp),...L.properties.slice(1)]),c=!0}if(c&&a){let L=[...D.statements];L[H]=e.ts.factory.updateVariableStatement(le,le.modifiers,e.ts.factory.updateVariableDeclarationList(le.declarationList,[e.ts.factory.updateVariableDeclaration(Y,Y.name,Y.exclamationToken,Y.type,e.ts.factory.createArrayLiteralExpression(Ae(e,F)))])),D=e.ts.factory.updateSourceFile(D,L),E.exportType==="named"?D=v(e,D,{namedImports:[E.importName],importPath:E.externalImportPath?E.externalImportPath:B(e,e.registryPath,E.filePath)}):D=v(e,D,{defaultImport:E.importName,importPath:E.externalImportPath?E.externalImportPath:B(e,e.registryPath,E.filePath)});let X=e.sdkVersion===w.gen2?"@builder.io/sdk-react":"@builder.io/react";D=v(e,D,{namedImports:["RegisteredComponent"],importPath:X,isTypeOnly:!0}),E.acceptsChildren&&e.sdkVersion!==w.gen2&&(D=v(e,D,{namedImports:["withChildren"],importPath:"@builder.io/react"})),D=ye(e,D,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),C.components=j.components,d=j.components.filter(ze=>ze.isRegistered)}}}if(c&&a){D=Fe(e,D),D=Se(e,D);let x=_(e,D);x=pe(x),x=await e.formatCode(e.registryPath,x),await e.writeFile(e.registryPath,x)}return C}function Wr(e,t){if(e.sdkVersion===w.gen2)return e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName));let r=e.ts.factory.createIdentifier(t.importName),n=t.acceptsChildren?e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("withChildren"),void 0,[r]):r;return e.ts.factory.createPropertyAssignment("component",n)}function $a(e,t){return Q(e,e.ts.factory.createObjectLiteralExpression([Wr(e,t),...t.acceptsChildren&&e.sdkVersion===w.gen2?[e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())]:[]],!0),t)}async function Ka(e,t,r){let n=J(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let o=n.arrayLiteralExp.elements.filter(a=>e.ts.isObjectLiteralExpression(a)),i=-1;for(let a=0;a<o.length;a++)if((await fn(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}async function Yr(e){let t=[],r=await za(e,t);return t.push(...await Lt(e)),await Ja(e,r),await Ua(e,t),t}async function Gr(e){let t=[];return t.push(...await Lt(e)),await Ma(e,t),t}async function Ma(e,t){let r=`figma-imports.${e.typescriptEnabled?"tsx":"jsx"}`;e.hasLocaleParam&&(e.debug("remixEnsureFigmaImportRoute, hasLocaleParam"),r=`($locale).${r}`);let n=e.join(e.routesDir,r),o=await e.exists(n);e.debug(`remixEnsureFigmaImportRoute, hasRoute: ${o}`);let i=await e.formatCode(n,Hr({sys:e,routePath:n,modelName:"figma-imports"}));await e.writeFile(n,i),t.push({filePath:n,modifiedType:o?"update":"create"})}async function Ua(e,t){let r=`$.${e.typescriptEnabled?"tsx":"jsx"}`;e.hasLocaleParam&&(e.debug("remixEnsureAppRoute, hasLocaleParam"),r=`($locale).${r}`),e.sdkVersion===w.gen2&&(r=`($slug)._index.${e.typescriptEnabled?"tsx":"jsx"}`);let n=e.join(e.routesDir,r),o=await e.exists(n);e.debug(`remixEnsureAppRoute, hasRoute: ${o}`);let i=await e.formatCode(n,Hr({sys:e,routePath:n,modelName:"page"}));await e.writeFile(n,i),t.push({filePath:n,modifiedType:o?"update":"create"})}function Hr({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,o=B(e,t,e.registryPath),i="",a="";n&&(i="import type { LoaderArgs } from '@remix-run/server-runtime';",a=": LoaderArgs");let s=`process.env.${Et}`;return e.getFrameworks().some(u=>u.name==="@shopify/remix-oxygen")&&(s=`context.env.${Et}`),n&&(s+="!"),e.sdkVersion===w.gen2?`
398
398
 
399
399
  import {
400
400
  Content,
@@ -500,11 +500,11 @@ export default function Page() {
500
500
  ${n?`
501
501
  declare global {
502
502
  interface Env {
503
- ${ht}: string;
503
+ ${Et}: string;
504
504
  }
505
505
  }
506
506
  `:""}
507
- `}async function _a(e,t){let n=e.typescriptEnabled?"tsx":"jsx",o=e.join(e.componentsDir,"Counter"),i=e.join(o,`Counter.${n}`),a=e.join(o,"styles.module.css"),{component:s,styles:u}=ja(e),p=await e.exists(i);if(e.debug(`remixEnsureCounterComponent, hasCounterCmp: ${p}`),!p){let f=await e.formatCode(i,s);await e.writeFile(i,f),t.push({filePath:i,modifiedType:"create"})}let m=await e.exists(a);return e.debug(`remixEnsureCounterComponent, hasCounterStyles: ${m}`),m||(await e.writeFile(a,u),t.push({filePath:a,modifiedType:"create"})),i}function ja(e){let t=e.typescriptEnabled,r=`
507
+ `}async function za(e,t){let n=e.typescriptEnabled?"tsx":"jsx",o=e.join(e.componentsDir,"Counter"),i=e.join(o,`Counter.${n}`),a=e.join(o,"styles.module.css"),{component:s,styles:u}=qa(e),p=await e.exists(i);if(e.debug(`remixEnsureCounterComponent, hasCounterCmp: ${p}`),!p){let f=await e.formatCode(i,s);await e.writeFile(i,f),t.push({filePath:i,modifiedType:"create"})}let m=await e.exists(a);return e.debug(`remixEnsureCounterComponent, hasCounterStyles: ${m}`),m||(await e.writeFile(a,u),t.push({filePath:a,modifiedType:"create"})),i}function qa(e){let t=e.typescriptEnabled,r=`
508
508
  import { useState } from "react";
509
509
  import styles from "./styles.module.css";
510
510
  ${t?`
@@ -567,17 +567,17 @@ export default Counter;
567
567
  font-size: 42px;
568
568
  text-align: center;
569
569
  }
570
- `.trimStart();return{component:r,styles:n}}async function Va(e,t){let n=(await we(e,null,!1,!1,null,null,!1,!1)).components.find(o=>o.filePath===t);n&&await we(e,n.id,!0,!1,null,null,!0,!1)}async function kt(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,$a(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}function $a(e){let t=e.sdkVersion===w.gen2;return e.typescriptEnabled?`import type { RegisteredComponent } from ${t?'"@builder.io/sdk-react"':'"@builder.io/react"'};
570
+ `.trimStart();return{component:r,styles:n}}async function Ja(e,t){let n=(await Te(e,null,!1,!1,null,null,!1,!1)).components.find(o=>o.filePath===t);n&&await Te(e,n.id,!0,!1,null,null,!0,!1)}async function Lt(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,Qa(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}function Qa(e){let t=e.sdkVersion===w.gen2;return e.typescriptEnabled?`import type { RegisteredComponent } from ${t?'"@builder.io/sdk-react"':'"@builder.io/react"'};
571
571
 
572
572
  export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
573
573
  ];`:`export const CUSTOM_COMPONENTS = [
574
574
  ];
575
- `}async function Gr(e){let t=await Ka(e);return{builderPageOptions:async()=>{let n="/builder-demo",o=t.hasLocaleParam?`/en-us${n}`:void 0;return{templateContentId:"a5c9eef7909d4fc99554264a17de22c9",pathname:n,localePathname:o,title:"Builder + Remix Demo Page"}},ensureBuilderSetup:()=>Qr(t),ensureFigmaImportPage:()=>Wr(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>we(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:n=>{t.addExternalPackage(n)},loadComponent:async n=>{let o=await we(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>we(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>we(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>we(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>we(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>xt(t),setPublicApiKey:n=>Ur(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===w.gen2?[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-react"}]:[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>ge(t),setCache:n=>De(t,n)}}async function Ka(e){let t=await Ua(e),r=e.getAppRootDir(),n=await za(e),o=e.dirname(n),i=e.join(o,"components"),a=await re(e),s=await ae(e,o),u={},p={...e,registryPath:s,remixConfigPath:t,typescriptEnabled:a,appDir:o,componentsDir:i,routesDir:n,hasLocaleParam:await Ma(e,n),addExternalPackage:m=>{u[e.join(r,m,"index.ts")]=`export * from "${m}";`},readFileSync:m=>u[m]??e.readFileSync(m),existsSync:m=>!!u[m]||e.existsSync(m),readdirSync:m=>{let f=e.readdirSync(m);return m===r?[...f,...Object.keys(u).map(c=>c.slice(r.length+1))]:f},readdir:async m=>{let f=await e.readdir(m);return m===r?[...f,...Object.keys(u).map(c=>c.slice(r.length+1))]:f}};return e.sdkVersion?p.sdkVersion=e.sdkVersion:p.sdkVersion=await at(p),p}async function Ma(e,t){return(await e.readdir(t)).some(n=>n.startsWith("($locale)."))}async function Ua(e){let t=["remix.config.ts","remix.config.js","vite.config.ts","vite.config.js"];for(let r of t){let n=e.join(e.getAppRootDir(),r);if(await e.exists(n))return n}throw new Error(`Could not find Remix config file. Searched for ${t.join(", ")} in "${e.getAppRootDir()}".`)}async function za(e){let t=await ut(e,e.getAppRootDir(),"routes");if(t)return t;throw new Error(`Could not find Remix "routes" directory in "${e.getAppRootDir()}". Please ensure this command is ran from within your Remix project's directory.`)}async function Et(e){let t=[".env"],r=e.configType==="vite"?St:Lt;return await Le(e,t,r)}async function Hr(e,t){let r=await Et(e),n=await _e(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var St="VITE_PUBLIC_BUILDER_KEY",Lt="YOUR_PUBLIC_BUILDER_KEY";function Xr(e,t){let r=`Builder.registerComponent(
575
+ `}async function Xr(e){let t=await Wa(e);return{builderPageOptions:async()=>{let n="/builder-demo",o=t.hasLocaleParam?`/en-us${n}`:void 0;return{templateContentId:"a5c9eef7909d4fc99554264a17de22c9",pathname:n,localePathname:o,title:"Builder + Remix Demo Page"}},ensureBuilderSetup:()=>Yr(t),ensureFigmaImportPage:()=>Gr(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>Te(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:n=>{t.addExternalPackage(n)},loadComponent:async n=>{let o=await Te(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>Te(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>Te(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>Te(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>Te(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>ht(t),setPublicApiKey:n=>qr(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===w.gen2?[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-react"}]:[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>De(t),setCache:n=>Ce(t,n)}}async function Wa(e){let t=await Ga(e),r=e.getAppRootDir(),n=await Ha(e),o=e.dirname(n),i=e.join(o,"components"),a=await re(e),s=await ae(e,o),u={},p={...e,registryPath:s,remixConfigPath:t,typescriptEnabled:a,appDir:o,componentsDir:i,routesDir:n,hasLocaleParam:await Ya(e,n),addExternalPackage:m=>{u[e.join(r,m,"index.ts")]=`export * from "${m}";`},readFileSync:m=>u[m]??e.readFileSync(m),existsSync:m=>!!u[m]||e.existsSync(m),readdirSync:m=>{let f=e.readdirSync(m);return m===r?[...f,...Object.keys(u).map(l=>l.slice(r.length+1))]:f},readdir:async m=>{let f=await e.readdir(m);return m===r?[...f,...Object.keys(u).map(l=>l.slice(r.length+1))]:f}};return e.sdkVersion?p.sdkVersion=e.sdkVersion:p.sdkVersion=await ut(p),p}async function Ya(e,t){return(await e.readdir(t)).some(n=>n.startsWith("($locale)."))}async function Ga(e){let t=["remix.config.ts","remix.config.js","vite.config.ts","vite.config.js"];for(let r of t){let n=e.join(e.getAppRootDir(),r);if(await e.exists(n))return n}throw new Error(`Could not find Remix config file. Searched for ${t.join(", ")} in "${e.getAppRootDir()}".`)}async function Ha(e){let t=await lt(e,e.getAppRootDir(),"routes");if(t)return t;throw new Error(`Could not find Remix "routes" directory in "${e.getAppRootDir()}". Please ensure this command is ran from within your Remix project's directory.`)}async function St(e){let t=[".env"],r=e.configType==="vite"?At:_t;return await je(e,t,r)}async function Zr(e,t){let r=await St(e),n=await Ve(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var At="VITE_PUBLIC_BUILDER_KEY",_t="YOUR_PUBLIC_BUILDER_KEY";function eo(e,t){let r=`Builder.registerComponent(
576
576
  `;r+=` ${t.importName},
577
577
  `,r+=` {
578
578
  name: "${t.name}",
579
579
  }
580
- `,r+=");";let n=It(e,r);return fn(e,n,t)}function fn(e,t,r){if(!e.ts.isExpressionStatement(t))return t;let n=t.expression;if(!e.ts.isCallExpression(n))return t;let o=[...n.arguments];if(o.length<2)return t;let i=o[1];return e.ts.isObjectLiteralExpression(i)?(o[1]=Q(e,i,r),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(n,n.expression,n.typeArguments,o))):t}async function Zr(e){let t=await e.readFile(e.registryPath);return t?qa(e,t):{components:[],sourceFile:I(e,"")}}async function qa(e,t){let r=I(e,t);return e.sdkVersion===w.gen2?Wa(e,r):Ja(e,r)}async function Ja(e,t){let r=[];for(let n=0;n<t.statements.length;n++){let o=t.statements[n];if(!e.ts.isExpressionStatement(o))continue;let i=o.expression;if(!e.ts.isCallExpression(i))continue;let a=i.expression;if(!e.ts.isPropertyAccessExpression(a))continue;let s=a.expression;if(!e.ts.isIdentifier(s)||s.text!=="Builder"||a.name.text!=="registerComponent")continue;let p=i.arguments;if(p.length<2)continue;let m=p[1];if(!e.ts.isObjectLiteralExpression(m))continue;let f=p[0];if(e.ts.isIdentifier(f)){let c=await Qa(e,t,n,f,m,!1);c&&r.push(c);continue}}return{sourceFile:t,components:te(r)}}async function Qa(e,t,r,n,o,i){let a={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:r,acceptsChildren:i},s=t.statements.filter(p=>e.ts.isImportDeclaration(p)),u=s.find(p=>p.importClause&&p.importClause.name?.text===n.text);if(u){let p=u.moduleSpecifier;if(!e.ts.isStringLiteral(p))return null;a.filePath=await dn(e,p.text),a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),a.importPath=V(e,a.filePath),a.name=se(e,a.filePath),a.importName=n.text,a.exportName="default",a.exportType="default"}else{let p=s.find(c=>!c.importClause||!c.importClause.namedBindings||!e.ts.isNamedImports(c.importClause.namedBindings)?!1:c.importClause.namedBindings.elements.some(d=>d.name.text===n.text));if(!p)return null;let m=p.moduleSpecifier;if(!e.ts.isStringLiteral(m))return null;let f=await dn(e,m.text);a.filePath=await dn(e,m.text),a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),await e.exists(f)?a.importPath=V(e,a.filePath):(a.externalImportPath=m.text,a.importPath=a.externalImportPath),a.name=K(n.text),a.importName=n.text,a.exportName=n.text,a.exportType="named"}return a=ne(e,a,o),a.displayFilePath=k(e,a.filePath),a.filePath&&a.exportName&&(a.id=await $(e,a.filePath,a.exportName,a.externalImportPath)),a}function dn(e,t){return gt(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}async function Wa(e,t){let r=[],n=J(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await gn(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:te(r)}}async function gn(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1};et(e,r)&&(n.acceptsChildren=!0);for(let i of r.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(N(e,i)==="component"){let s,{initializer:u}=i;if(e.ts.isIdentifier(u)&&(s=u.text),!s)continue;n.name===""&&(n.name=K(s)),n.importName=s;let p=await xe(e,e.registryPath,t,s);if(!p)continue;n.filePath=p.filePath,n.relFilePath=p.relFilePath,await e.exists(p.filePath)?n.importPath=V(e,p.filePath):(n.externalImportPath=p.importPath,n.importPath=n.externalImportPath),n.displayFilePath=p.displayFilePath,n.exportType=p.exportType;let m=t.statements.filter(c=>e.ts.isImportDeclaration(c)),f=m.find(c=>c.importClause&&c.importClause.name?.text===s);if(f){let c=f.moduleSpecifier;if(!e.ts.isStringLiteral(c))return null;n.exportName="default"}else{let c=m.find(C=>!C.importClause||!C.importClause.namedBindings||!e.ts.isNamedImports(C.importClause.namedBindings)?!1:C.importClause.namedBindings.elements.some(l=>l.name.text===s));if(!c)return null;let d=c.moduleSpecifier;if(!e.ts.isStringLiteral(d))return null;n.exportName=s}continue}}return n=ne(e,n,r),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName,n.externalImportPath)),n}async function Te(e,t,r,n,o,i,a,s){let u=await $e(e),[p,m,f,c]=await Promise.all([mr(e,u),Zr(e),re(e),Et(e)]),d=p.map(S=>S.cmpInfo),C=m.components,l={components:me(d,C),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:he(d),publicApiKey:c.envValue??void 0,devToolsVersion:e.version};if(s)return l.components=await rt(e,l.components),l;let D=!1,g=m.sourceFile,x=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(x.length>0){let S=x.map(E=>{let O=p.find(z=>z.cmpInfo.id===E);if(!O)throw new Error(`Component ${E} not found`);return O}),P=Array.from(new Set(S.map(E=>E.cmpInfo.filePath))),A=await G(e,P);for(let E of S){let O=l.components.find(y=>y.id===E.cmpInfo.id),z=await ot(e,E,A);ie(O,z);let j=d.findIndex(y=>y.id===E.cmpInfo.id);d[j].inputs=z;let F=Fe(E.cmpInfo.id,d,C,r,n,o,i);if(e.sdkVersion===w.gen2){let{elements:y,elmIndex:H,statementIndex:le,statement:Y,variableDeclaration:L}=await Ya(e,g,E);if(F.addCmpToRegistry)y.push(Ga(e,F.addCmpToRegistry)),D=!0;else if(F.removeCmpFromRegistry)y.splice(H,1),D=!0;else if(F.updateRegisteredCmp){let X=Q(e,y[H],F.updateRegisteredCmp),Ue=e.ts.factory.createIdentifier(F.updateRegisteredCmp.importName);y[H]=e.ts.factory.updateObjectLiteralExpression(X,[e.ts.factory.createPropertyAssignment("component",Ue),...X.properties.slice(1)]),D=!0}if(D&&a){let X=[...g.statements];X[le]=e.ts.factory.updateVariableStatement(Y,Y.modifiers,e.ts.factory.updateVariableDeclarationList(Y.declarationList,[e.ts.factory.updateVariableDeclaration(L,L.name,L.exclamationToken,L.type,e.ts.factory.createArrayLiteralExpression(Se(e,y)))])),g=e.ts.factory.updateSourceFile(g,X),g=eo(e,F,g),g=v(e,g,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-react",isTypeOnly:!0}),g=Pe(e,g,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),l.components=F.components,C=F.components.filter(Ue=>Ue.isRegistered)}}else{let y=[...g.statements];F.addCmpToRegistry?(y.push(Xr(e,F.addCmpToRegistry)),D=!0):F.removeCmpFromRegistry?(y.splice(F.nodeIndex,1),D=!0):F.updateRegisteredCmp&&(y[F.nodeIndex]=fn(e,y[F.nodeIndex],F.updateRegisteredCmp),D=!0),D&&a&&(g=e.ts.factory.updateSourceFile(g,y),g=v(e,g,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),g=eo(e,F,g),O?.acceptsChildren&&(g=v(e,g,{namedImports:["withChildren"],importPath:"@builder.io/react"})),l.components=F.components,C=F.components.filter(H=>H.isRegistered))}}}if(D&&a){g=Ae(e,g),g=Ee(e,g);let S=_(e,g);S=pe(S),S=await e.formatCode(e.registryPath,S),await e.writeFile(e.registryPath,S)}return l}async function Ya(e,t,r){let n=J(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let o=n.arrayLiteralExp.elements.filter(a=>e.ts.isObjectLiteralExpression(a)),i=-1;for(let a=0;a<o.length;a++)if((await gn(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}function Ga(e,t){let r=e.ts.factory.createIdentifier(t.importName);return Q(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("component",r),...t.acceptsChildren?[e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())]:[]],!0),t)}function eo(e,t,r){let n=t.addCmpToRegistry||t.updateRegisteredCmp;if(n){let o=n.externalImportPath?n.externalImportPath:B(e,e.registryPath,n.filePath);n.exportType==="default"?r=v(e,r,{defaultImport:n.importName,importPath:o}):n.exportType==="named"&&(r=v(e,r,{namedImports:[n.importName],importPath:o}))}return r}async function to(e){let t=[],r=await Ha(e,t);if(await oo(e,t,r),!await e.exists(e.builderComponentPath)){let n=await e.formatCode(e.builderComponentPath,ro(e,e.builderComponentPath));await e.writeFile(e.builderComponentPath,n),t.push({filePath:e.builderComponentPath,modifiedType:"create"})}return t}async function no(e){let t=[];await oo(e,t);let r=`figma-imports.${e.typescriptEnabled?"tsx":"jsx"}`,n=e.join(e.componentsDir,r);if(!await e.exists(n)){let o=await e.formatCode(n,ro(e,n,"figma-imports"));await e.writeFile(n,o),t.push({filePath:n,modifiedType:"create"})}return t}function ro(e,t,r="page"){let n=e.typescriptEnabled;return e.sdkVersion===w.gen2?`
580
+ `,r+=");";let n=Rt(e,r);return dn(e,n,t)}function dn(e,t,r){if(!e.ts.isExpressionStatement(t))return t;let n=t.expression;if(!e.ts.isCallExpression(n))return t;let o=[...n.arguments];if(o.length<2)return t;let i=o[1];return e.ts.isObjectLiteralExpression(i)?(o[1]=Q(e,i,r),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(n,n.expression,n.typeArguments,o))):t}async function to(e){let t=await e.readFile(e.registryPath);return t?Xa(e,t):{components:[],sourceFile:I(e,"")}}async function Xa(e,t){let r=I(e,t);return e.sdkVersion===w.gen2?ts(e,r):Za(e,r)}async function Za(e,t){let r=[];for(let n=0;n<t.statements.length;n++){let o=t.statements[n];if(!e.ts.isExpressionStatement(o))continue;let i=o.expression;if(!e.ts.isCallExpression(i))continue;let a=i.expression;if(!e.ts.isPropertyAccessExpression(a))continue;let s=a.expression;if(!e.ts.isIdentifier(s)||s.text!=="Builder"||a.name.text!=="registerComponent")continue;let p=i.arguments;if(p.length<2)continue;let m=p[1];if(!e.ts.isObjectLiteralExpression(m))continue;let f=p[0];if(e.ts.isIdentifier(f)){let l=await es(e,t,n,f,m,!1);l&&r.push(l);continue}}return{sourceFile:t,components:te(r)}}async function es(e,t,r,n,o,i){let a={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:r,acceptsChildren:i},s=t.statements.filter(p=>e.ts.isImportDeclaration(p)),u=s.find(p=>p.importClause&&p.importClause.name?.text===n.text);if(u){let p=u.moduleSpecifier;if(!e.ts.isStringLiteral(p))return null;a.filePath=await gn(e,p.text),a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),a.importPath=V(e,a.filePath),a.name=se(e,a.filePath),a.importName=n.text,a.exportName="default",a.exportType="default"}else{let p=s.find(l=>!l.importClause||!l.importClause.namedBindings||!e.ts.isNamedImports(l.importClause.namedBindings)?!1:l.importClause.namedBindings.elements.some(d=>d.name.text===n.text));if(!p)return null;let m=p.moduleSpecifier;if(!e.ts.isStringLiteral(m))return null;let f=await gn(e,m.text);a.filePath=await gn(e,m.text),a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),await e.exists(f)?a.importPath=V(e,a.filePath):(a.externalImportPath=m.text,a.importPath=a.externalImportPath),a.name=K(n.text),a.importName=n.text,a.exportName=n.text,a.exportType="named"}return a=ne(e,a,o),a.displayFilePath=k(e,a.filePath),a.filePath&&a.exportName&&(a.id=await $(e,a.filePath,a.exportName,a.externalImportPath)),a}function gn(e,t){return Ct(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}async function ts(e,t){let r=[],n=J(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await Dn(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:te(r)}}async function Dn(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1};tt(e,r)&&(n.acceptsChildren=!0);for(let i of r.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(N(e,i)==="component"){let s,{initializer:u}=i;if(e.ts.isIdentifier(u)&&(s=u.text),!s)continue;n.name===""&&(n.name=K(s)),n.importName=s;let p=await he(e,e.registryPath,t,s);if(!p)continue;n.filePath=p.filePath,n.relFilePath=p.relFilePath,await e.exists(p.filePath)?n.importPath=V(e,p.filePath):(n.externalImportPath=p.importPath,n.importPath=n.externalImportPath),n.displayFilePath=p.displayFilePath,n.exportType=p.exportType;let m=t.statements.filter(l=>e.ts.isImportDeclaration(l)),f=m.find(l=>l.importClause&&l.importClause.name?.text===s);if(f){let l=f.moduleSpecifier;if(!e.ts.isStringLiteral(l))return null;n.exportName="default"}else{let l=m.find(C=>!C.importClause||!C.importClause.namedBindings||!e.ts.isNamedImports(C.importClause.namedBindings)?!1:C.importClause.namedBindings.elements.some(c=>c.name.text===s));if(!l)return null;let d=l.moduleSpecifier;if(!e.ts.isStringLiteral(d))return null;n.exportName=s}continue}}return n=ne(e,n,r),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName,n.externalImportPath)),n}async function be(e,t,r,n,o,i,a,s){let u=await Ke(e),[p,m,f,l]=await Promise.all([dr(e,u),to(e),re(e),St(e)]),d=p.map(S=>S.cmpInfo),C=m.components,c={components:me(d,C),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ee(d),publicApiKey:l.envValue??void 0,devToolsVersion:e.version};if(s)return c.components=await it(e,c.components),c;let D=!1,g=m.sourceFile,x=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(x.length>0){let S=x.map(E=>{let O=p.find(z=>z.cmpInfo.id===E);if(!O)throw new Error(`Component ${E} not found`);return O}),P=Array.from(new Set(S.map(E=>E.cmpInfo.filePath))),A=await G(e,P);for(let E of S){let O=c.components.find(y=>y.id===E.cmpInfo.id),z=await at(e,E,A,e.registryPath===E.cmpInfo.filePath||ge(E.cmpInfo.filePath));ie(O,z);let j=d.findIndex(y=>y.id===E.cmpInfo.id);d[j].inputs=z;let F=Pe(E.cmpInfo.id,d,C,r,n,o,i);if(e.sdkVersion===w.gen2){let{elements:y,elmIndex:H,statementIndex:le,statement:Y,variableDeclaration:L}=await ns(e,g,E);if(F.addCmpToRegistry)y.push(rs(e,F.addCmpToRegistry)),D=!0;else if(F.removeCmpFromRegistry)y.splice(H,1),D=!0;else if(F.updateRegisteredCmp){let X=Q(e,y[H],F.updateRegisteredCmp),ze=e.ts.factory.createIdentifier(F.updateRegisteredCmp.importName);y[H]=e.ts.factory.updateObjectLiteralExpression(X,[e.ts.factory.createPropertyAssignment("component",ze),...X.properties.slice(1)]),D=!0}if(D&&a){let X=[...g.statements];X[le]=e.ts.factory.updateVariableStatement(Y,Y.modifiers,e.ts.factory.updateVariableDeclarationList(Y.declarationList,[e.ts.factory.updateVariableDeclaration(L,L.name,L.exclamationToken,L.type,e.ts.factory.createArrayLiteralExpression(Ae(e,y)))])),g=e.ts.factory.updateSourceFile(g,X),g=no(e,F,g),g=v(e,g,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-react",isTypeOnly:!0}),g=ye(e,g,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),c.components=F.components,C=F.components.filter(ze=>ze.isRegistered)}}else{let y=[...g.statements];F.addCmpToRegistry?(y.push(eo(e,F.addCmpToRegistry)),D=!0):F.removeCmpFromRegistry?(y.splice(F.nodeIndex,1),D=!0):F.updateRegisteredCmp&&(y[F.nodeIndex]=dn(e,y[F.nodeIndex],F.updateRegisteredCmp),D=!0),D&&a&&(g=e.ts.factory.updateSourceFile(g,y),g=v(e,g,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),g=no(e,F,g),O?.acceptsChildren&&(g=v(e,g,{namedImports:["withChildren"],importPath:"@builder.io/react"})),c.components=F.components,C=F.components.filter(H=>H.isRegistered))}}}if(D&&a){g=Fe(e,g),g=Se(e,g);let S=_(e,g);S=pe(S),S=await e.formatCode(e.registryPath,S),await e.writeFile(e.registryPath,S)}return c}async function ns(e,t,r){let n=J(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let o=n.arrayLiteralExp.elements.filter(a=>e.ts.isObjectLiteralExpression(a)),i=-1;for(let a=0;a<o.length;a++)if((await Dn(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}function rs(e,t){let r=e.ts.factory.createIdentifier(t.importName);return Q(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("component",r),...t.acceptsChildren?[e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())]:[]],!0),t)}function no(e,t,r){let n=t.addCmpToRegistry||t.updateRegisteredCmp;if(n){let o=n.externalImportPath?n.externalImportPath:B(e,e.registryPath,n.filePath);n.exportType==="default"?r=v(e,r,{defaultImport:n.importName,importPath:o}):n.exportType==="named"&&(r=v(e,r,{namedImports:[n.importName],importPath:o}))}return r}async function ro(e){let t=[],r=await os(e,t);if(await ao(e,t,r),!await e.exists(e.builderComponentPath)){let n=await e.formatCode(e.builderComponentPath,io(e,e.builderComponentPath));await e.writeFile(e.builderComponentPath,n),t.push({filePath:e.builderComponentPath,modifiedType:"create"})}return t}async function oo(e){let t=[];await ao(e,t);let r=`figma-imports.${e.typescriptEnabled?"tsx":"jsx"}`,n=e.join(e.componentsDir,r);if(!await e.exists(n)){let o=await e.formatCode(n,io(e,n,"figma-imports"));await e.writeFile(n,o),t.push({filePath:n,modifiedType:"create"})}return t}function io(e,t,r="page"){let n=e.typescriptEnabled;return e.sdkVersion===w.gen2?`
581
581
  import React from "react";
582
582
  import {
583
583
  Content,
@@ -589,7 +589,7 @@ export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
589
589
  import { CUSTOM_COMPONENTS } from ${JSON.stringify(B(e,t,e.registryPath))};
590
590
 
591
591
  // Builder Public API Key set in .env file
592
- const BUILDER_API_KEY = ${e.configType==="vite"?`import.meta.env.${St};`:`${Lt};`}
592
+ const BUILDER_API_KEY = ${e.configType==="vite"?`import.meta.env.${At};`:`${_t};`}
593
593
  const MODEL_NAME = "${r}";
594
594
 
595
595
  export default function BuilderPage() {
@@ -642,7 +642,7 @@ import { BuilderComponent, builder, useIsPreviewing } from "@builder.io/react";
642
642
  import ${JSON.stringify(B(e,t,e.registryPath))};
643
643
 
644
644
  // Builder Public API Key set in .env file
645
- ${e.configType==="vite"?`builder.init(import.meta.env.${St}${n?"!":""})`:`builder.init("${Lt}")`}
645
+ ${e.configType==="vite"?`builder.init(import.meta.env.${At}${n?"!":""})`:`builder.init("${_t}")`}
646
646
 
647
647
  export default function BuilderPage() {
648
648
  const isPreviewingInBuilder = useIsPreviewing();
@@ -687,7 +687,7 @@ export default function BuilderPage() {
687
687
  </>
688
688
  );
689
689
  }
690
- `.trimStart()}async function oo(e,t,r){if(!await e.exists(e.registryPath)){if(e.sdkVersion===w.gen2){let i=Za(e);await e.writeFile(e.registryPath,i)}else await e.writeFile(e.registryPath,"");t.push({filePath:e.registryPath,modifiedType:"create"})}if(!r)return;let o=(await Te(e,null,!1,!1,null,null,!1,!1)).components.find(i=>i.filePath===r);o&&await Te(e,o.id,!0,!1,null,null,!0,!1)}async function Ha(e,t){let n=e.typescriptEnabled?"tsx":"jsx",o=e.join(e.componentsDir,"Counter"),i=e.join(o,`Counter.${n}`),a=e.join(o,"styles.module.css"),{component:s,styles:u}=Xa(e);if(!await e.exists(i)){let p=await e.formatCode(i,s);await e.writeFile(i,p),t.push({filePath:i,modifiedType:"create"})}return await e.exists(a)||(await e.writeFile(a,u),t.push({filePath:a,modifiedType:"create"})),i}function Xa(e){let t=e.typescriptEnabled,r=`
690
+ `.trimStart()}async function ao(e,t,r){if(!await e.exists(e.registryPath)){if(e.sdkVersion===w.gen2){let i=as(e);await e.writeFile(e.registryPath,i)}else await e.writeFile(e.registryPath,"");t.push({filePath:e.registryPath,modifiedType:"create"})}if(!r)return;let o=(await be(e,null,!1,!1,null,null,!1,!1)).components.find(i=>i.filePath===r);o&&await be(e,o.id,!0,!1,null,null,!0,!1)}async function os(e,t){let n=e.typescriptEnabled?"tsx":"jsx",o=e.join(e.componentsDir,"Counter"),i=e.join(o,`Counter.${n}`),a=e.join(o,"styles.module.css"),{component:s,styles:u}=is(e);if(!await e.exists(i)){let p=await e.formatCode(i,s);await e.writeFile(i,p),t.push({filePath:i,modifiedType:"create"})}return await e.exists(a)||(await e.writeFile(a,u),t.push({filePath:a,modifiedType:"create"})),i}function is(e){let t=e.typescriptEnabled,r=`
691
691
  "use client"
692
692
  import React, { useState } from "react";
693
693
  import styles from "./styles.module.css";
@@ -750,31 +750,31 @@ export default Counter;
750
750
  font-size: 42px;
751
751
  text-align: center;
752
752
  }
753
- `.trimStart();return{component:r,styles:n}}function Za(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-react";
753
+ `.trimStart();return{component:r,styles:n}}function as(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-react";
754
754
 
755
755
  export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
756
756
  ];`:`export const CUSTOM_COMPONENTS = [
757
757
  ];
758
- `}async function io(e){let t=await es(e);return{builderPageOptions:async()=>({templateContentId:"2e36438034894a8abf279ea9e6d3596f",pathname:"/builder-demo",title:"Builder + React Demo Page"}),ensureBuilderSetup:()=>to(t),ensureFigmaImportPage:()=>no(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>Te(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:n=>{t.addExternalPackage(n)},loadComponent:async n=>{let o=await Te(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>Te(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>Te(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>Te(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>Te(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>Et(t),setPublicApiKey:n=>Hr(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===w.gen2?[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-react"}]:[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>ge(t),setCache:n=>De(t,n)}}async function es(e){let t=await ts(e),r=e.getAppRootDir(),n=e.join(r,"src"),o=await re(e),i={},a={...e,srcDir:null,builderComponentPath:"",componentsDir:"",registryPath:"",reactConfigPath:t,typescriptEnabled:o,configType:"",addExternalPackage:s=>{i[e.join(r,s,"index.ts")]=`export * from "${s}";`},readFileSync:s=>i[s]??e.readFileSync(s),existsSync:s=>!!i[s]||e.existsSync(s),readdirSync:s=>{let u=e.readdirSync(s);return s===r?[...u,...Object.keys(i).map(p=>p.slice(r.length+1))]:u},readdir:async s=>{let u=await e.readdir(s);return s===r?[...u,...Object.keys(i).map(p=>p.slice(r.length+1))]:u}};return e.sdkVersion?a.sdkVersion=e.sdkVersion:a.sdkVersion=await at(a),t.includes("webpack.config")&&(a.configType="webpack"),t.includes("vite.config")&&(a.configType="vite"),await e.exists(n)?(a.srcDir=n,a.componentsDir=e.join(n,"components"),a.registryPath=await ae(e,n),a.builderComponentPath=e.join(a.srcDir,`builder-page.${o?"tsx":"jsx"}`)):(a.componentsDir=e.join(r,"components"),a.registryPath=await ae(e,r),a.builderComponentPath=e.join(r,`builder-page.${o?"tsx":"jsx"}`)),a}async function ts(e){let t=["vite.config.ts","vite.config.js","webpack.config.js","webpack.config.ts"];for(let r of t){let n=e.join(e.getAppRootDir(),r);if(await e.exists(n))return n}if(e.ignoreMissingConfig)return"";throw new Error(`Could not find React config file. Searched for ${t.join(", ")} in "${e.getAppRootDir()}".`)}async function At(e){return await ns(e,["environment.ts"],_t)}async function ao(e,t){let r=await At(e),n=await as(e,r.file,r.envKey,t);return{...r,modifiedType:n}}async function ns(e,t,r){let n={envKey:r,envValue:null,file:""};for(let o of t){let i=e.join(e.getAppRootDir(),"src","environments",o),a=await rs(e,i);if(typeof a=="string"&&a.length>0&&a!=="YOUR_API_KEY")return n.envValue=a,n.file=i,n}return n.file=e.join(e.getAppRootDir(),"src","environments",t[t.length-1]),n}async function rs(e,t){let r=await e.readFile(t);return r?os(e,r):""}function os(e,t){let r=I(e,t),n="",i=nt(e,r,"environment");if(i&&i.statement.declarationList.declarations.length>0){let s=i.statement.declarationList.declarations[0].initializer;s&&e.ts.isObjectLiteralExpression(s)&&s.properties.forEach(u=>{e.ts.isPropertyAssignment(u)&&e.ts.isIdentifier(u.name)&&u.name.text===_t&&e.ts.isStringLiteral(u.initializer)&&(n=u.initializer.text)})}return n}async function is(e,t,r,n){let o=I(e,t),a=nt(e,o,"environment");if(a&&a.statement.declarationList.declarations.length>0){let s=a.statement.declarationList,u=s.declarations[0],p=u.initializer;if(p&&e.ts.isObjectLiteralExpression(p)){let m=e.ts.factory.createPropertyAssignment(e.ts.factory.createIdentifier(r),e.ts.factory.createStringLiteral(n)),f=e.ts.factory.createNodeArray([...p.properties,m]),c=e.ts.factory.updateObjectLiteralExpression(p,f),d=e.ts.factory.updateVariableDeclaration(u,u.name,u.exclamationToken,u.type,c),C=e.ts.factory.updateVariableDeclarationList(s,[d]);return e.ts.factory.updateVariableStatement(a.statement,a.statement.modifiers,C)}return null}return null}async function as(e,t,r,n){let o=await e.readFile(t);if(o)if(o.includes(r))e.debug(`"${r}" already set in ${t}`);else{e.debug(`Add "${r}" to ${t}`);let i=await is(e,o,r,n);if(i){let a=_(e,i),s=await e.formatCode(t,a);await e.writeFile(t,s)}return"update"}else{e.debug(`Creating new env file with "${r}" at ${t}`);let i=`
758
+ `}async function so(e){let t=await ss(e);return{builderPageOptions:async()=>({templateContentId:"2e36438034894a8abf279ea9e6d3596f",pathname:"/builder-demo",title:"Builder + React Demo Page"}),ensureBuilderSetup:()=>ro(t),ensureFigmaImportPage:()=>oo(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>be(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:n=>{t.addExternalPackage(n)},loadComponent:async n=>{let o=await be(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>be(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>be(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>be(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>be(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>St(t),setPublicApiKey:n=>Zr(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===w.gen2?[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-react"}]:[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>De(t),setCache:n=>Ce(t,n)}}async function ss(e){let t=await us(e),r=e.getAppRootDir(),n=e.join(r,"src"),o=await re(e),i={},a={...e,srcDir:null,builderComponentPath:"",componentsDir:"",registryPath:"",reactConfigPath:t,typescriptEnabled:o,configType:"",addExternalPackage:s=>{i[e.join(r,s,"index.ts")]=`export * from "${s}";`},readFileSync:s=>i[s]??e.readFileSync(s),existsSync:s=>!!i[s]||e.existsSync(s),readdirSync:s=>{let u=e.readdirSync(s);return s===r?[...u,...Object.keys(i).map(p=>p.slice(r.length+1))]:u},readdir:async s=>{let u=await e.readdir(s);return s===r?[...u,...Object.keys(i).map(p=>p.slice(r.length+1))]:u}};return e.sdkVersion?a.sdkVersion=e.sdkVersion:a.sdkVersion=await ut(a),t.includes("webpack.config")&&(a.configType="webpack"),t.includes("vite.config")&&(a.configType="vite"),await e.exists(n)?(a.srcDir=n,a.componentsDir=e.join(n,"components"),a.registryPath=await ae(e,n),a.builderComponentPath=e.join(a.srcDir,`builder-page.${o?"tsx":"jsx"}`)):(a.componentsDir=e.join(r,"components"),a.registryPath=await ae(e,r),a.builderComponentPath=e.join(r,`builder-page.${o?"tsx":"jsx"}`)),a}async function us(e){let t=["vite.config.ts","vite.config.js","webpack.config.js","webpack.config.ts"];for(let r of t){let n=e.join(e.getAppRootDir(),r);if(await e.exists(n))return n}if(e.ignoreMissingConfig)return"";throw new Error(`Could not find React config file. Searched for ${t.join(", ")} in "${e.getAppRootDir()}".`)}async function Ft(e){return await ps(e,["environment.ts"],jt)}async function uo(e,t){let r=await Ft(e),n=await fs(e,r.file,r.envKey,t);return{...r,modifiedType:n}}async function ps(e,t,r){let n={envKey:r,envValue:null,file:""};for(let o of t){let i=e.join(e.getAppRootDir(),"src","environments",o),a=await ls(e,i);if(typeof a=="string"&&a.length>0&&a!=="YOUR_API_KEY")return n.envValue=a,n.file=i,n}return n.file=e.join(e.getAppRootDir(),"src","environments",t[t.length-1]),n}async function ls(e,t){let r=await e.readFile(t);return r?cs(e,r):""}function cs(e,t){let r=I(e,t),n="",i=rt(e,r,"environment");if(i&&i.statement.declarationList.declarations.length>0){let s=i.statement.declarationList.declarations[0].initializer;s&&e.ts.isObjectLiteralExpression(s)&&s.properties.forEach(u=>{e.ts.isPropertyAssignment(u)&&e.ts.isIdentifier(u.name)&&u.name.text===jt&&e.ts.isStringLiteral(u.initializer)&&(n=u.initializer.text)})}return n}async function ms(e,t,r,n){let o=I(e,t),a=rt(e,o,"environment");if(a&&a.statement.declarationList.declarations.length>0){let s=a.statement.declarationList,u=s.declarations[0],p=u.initializer;if(p&&e.ts.isObjectLiteralExpression(p)){let m=e.ts.factory.createPropertyAssignment(e.ts.factory.createIdentifier(r),e.ts.factory.createStringLiteral(n)),f=e.ts.factory.createNodeArray([...p.properties,m]),l=e.ts.factory.updateObjectLiteralExpression(p,f),d=e.ts.factory.updateVariableDeclaration(u,u.name,u.exclamationToken,u.type,l),C=e.ts.factory.updateVariableDeclarationList(s,[d]);return e.ts.factory.updateVariableStatement(a.statement,a.statement.modifiers,C)}return null}return null}async function fs(e,t,r,n){let o=await e.readFile(t);if(o)if(o.includes(r))e.debug(`"${r}" already set in ${t}`);else{e.debug(`Add "${r}" to ${t}`);let i=await ms(e,o,r,n);if(i){let a=_(e,i),s=await e.formatCode(t,a);await e.writeFile(t,s)}return"update"}else{e.debug(`Creating new env file with "${r}" at ${t}`);let i=`
759
759
  // https://www.builder.io/c/docs/using-your-api-key
760
760
  export const environment = {
761
761
  production: false,
762
762
  builderApiKey: "${n}",
763
763
  };
764
- `.trimStart(),a=await e.formatCode(t,i);return await e.writeFile(t,a),"create"}return null}var _t="builderApiKey";async function so(e,t){let r=[],n=t.getSourceFiles(),o=t.getTypeChecker();return await Promise.all(n.map(async i=>{let a=e.basename(i.fileName);if(ps(e,i.fileName)||a.startsWith(".")||a==="node_modules"||ss.has(a))return;let s=e.normalize(i.fileName);if(s===e.registryPath)return;let u=await jt(e,o,s,i);r.push(...u)})),r.sort((i,a)=>i.cmpInfo.name.localeCompare(a.cmpInfo.name))}var ss=new Set([]),us=new Set(["node_modules"]);function ps(e,t){for(let r of us)if(e.dirname(t).includes(r))return!0;return!1}async function uo(e,t){let r=e.extname(t).toLowerCase();if(r===".tsx"||r===".jsx"||r===".ts"||r===".js"){let n=await e.readFile(t);if(n)return ls(e,t,n)}return null}function ls(e,t,r){let n=I(e,r);return jt(e,null,t,n)}async function jt(e,t,r,n){let o=[];r=e.normalize(r);let i=n.statements.filter(u=>e.ts.isClassDeclaration(u)&&ds(e,u)),a=await ms(e,t,r,n),s=Ds(e,n);return await Promise.all(i.map(async u=>{let p=await cs(e,t,r,u,s);o.push(...p)})),o.push(...a),o}async function Dn(e,t,r){if(t.node.fnNode){let{sourceFile:n,typeChecker:o}=await tt(e,t.cmpInfo.filePath,r),a=(await jt(e,o,t.cmpInfo.filePath,n)).find(s=>s.cmpInfo.id===t.cmpInfo.id);if(!a)throw new Error(`Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return a.cmpInfo.inputs}return[]}async function po(e,t,r){if(!r.some(s=>!s.isRegistered))return r;let o=await G(e,r.map(s=>s.filePath)),i=o.getTypeChecker();return await Promise.all(r.filter(s=>!(s.name.endsWith("Page")||s.name.endsWith("Module")||s.name==="AppComponent")).map(async s=>{if(!s.isRegistered){let u=o.getSourceFile(s.filePath);if(u){let m=(await jt(e,i,s.filePath,u)).find(f=>f.cmpInfo.id===s.id);if(m){s.inputs=Je(e,i,m.node.fnNode);let f=t.find(c=>c.cmpInfo.id===s.id);if(f){let c=await Dn(e,f,o);ie(s,c)}}}}return s}))}async function cs(e,t,r,n,o){let i=[],a=e.relative(e.getAppRootDir(),r),s=V(e,r),u=n.name?.text;if(!u)return i;let p=!1;n.modifiers&&(p=n.modifiers.some(d=>d.kind===e.ts.SyntaxKind.DefaultKeyword));let m=p?"default":u,f=p?"default":"named",c=[];return n.members.forEach(d=>{if(e.ts.isPropertyDeclaration(d)){let C=e.ts.getDecorators(d);C&&C.forEach(l=>{if(fs(e,l)&&e.ts.isIdentifier(d.name)){let D="any";if(d.type&&t){let x=t.getTypeAtLocation(d.type);D=t.typeToString(x)}else D=gs(e,d.type);let g={name:d.name.text,type:o[D]?"string":D};o[D]&&(g.enum=o[D]),c.push(g)}})}}),i.push({cmpInfo:{id:await $(e,r,u),displayFilePath:k(e,r),name:K(u),inputs:c,exportName:m,exportType:f,importName:u,filePath:r,relFilePath:a,importPath:s},node:{name:u,fnNode:n,deps:void 0}}),i}async function ms(e,t,r,n){let o=[],i=e.relative(e.getAppRootDir(),r),a=V(e,r);for(let s of n.statements)if(e.ts.isExportDeclaration(s)&&s.exportClause&&e.ts.isNamedExports(s.exportClause))for(let u of s.exportClause.elements){let p=u.name?.text;if(!p)continue;let m=p,f="named",c=[];if(t){let l=t.getSymbolAtLocation(u.name);if(l){let D=t.getDeclaredTypeOfSymbol(l);t.getPropertiesOfType(D).forEach(x=>{let S=x.getDeclarations();S&&S.forEach(P=>{if(e.ts.isPropertyDeclaration(P)){let A=t.getTypeAtLocation(P),E={name:x.getName(),type:Cs(e,t,A)};c.push(E)}})})}}let d=e.ts.isExportSpecifier(u)&&u.parent?u.parent.parent:void 0,C;if(d){let l=d.moduleSpecifier;if(l&&e.ts.isStringLiteral(l)){let D=t?.getSymbolAtLocation(l);if(D&&D.declarations&&D.declarations.length>0){let g=D.declarations[0];(!e.ts.isSourceFile(g)||e.ts.isSourceFile(g)&&g.fileName.includes("node_modules"))&&(C=l.text)}}}o.push({cmpInfo:{id:await $(e,r,p,C),displayFilePath:k(e,r),name:K(p),inputs:c,exportName:m,exportType:f,importName:p,filePath:r,relFilePath:i,importPath:C||a,externalImportPath:C},node:{name:p,fnNode:u,deps:void 0}})}return o}function fs(e,t){if(e.ts.isCallExpression(t.expression)){let r=t.expression;if(e.ts.isIdentifier(r.expression))return r.expression?.text==="Input"}return!1}function ds(e,t){return!!e.ts.getDecorators(t)?.some(o=>e.ts.isCallExpression(o.expression)&&e.ts.isIdentifier(o.expression.expression)&&o.expression.expression.text==="Component")}function gs(e,t){if(!t)return"any";let r="any";switch(t.kind){case e.ts.SyntaxKind.StringKeyword:r="string";break;case e.ts.SyntaxKind.NumberKeyword:r="number";break;case e.ts.SyntaxKind.BooleanKeyword:r="boolean";break;case e.ts.SyntaxKind.TypeReference:e.ts.isTypeReferenceNode(t);break}return r.includes("|")?"string":r}function Ds(e,t){let r={};return e.ts.forEachChild(t,n=>{e.ts.isTypeAliasDeclaration(n)&&e.ts.isUnionTypeNode(n.type)&&n.type.types.every(o=>e.ts.isLiteralTypeNode(o)&&e.ts.isStringLiteral(o.literal))&&(r[n.name.text]=n.type.types.map(o=>o.literal.text))}),r}function Cs(e,t,r){let n=t.typeToString(r);if(n==="any"){let o=r.getSymbol();if(o){let i=o.getDeclarations();if(i&&i.length>0){let a=i[0];if(e.ts.isVariableDeclaration(a)){let s=a.type;s&&(n=t.typeToString(t.getTypeAtLocation(s)))}}}}return n}async function Vt(e,t,r){let n=e.typescriptEnabled?".ts":".js",o=`app.module${n}`,i=e.join(e.appDir,o),a=await e.readFile(i);if(!a){console.error(`Unable to read app.module.${n} at ${i}`);return}let s=await xs(e,i,t,r,a);if(!s){console.error(`Unable to update app.module.${n} at ${i}`);return}return await e.writeFile(i,s),i}async function xs(e,t,r,n,o){let i=o,a=I(e,o),s=B(e,t,n);a=v(e,a,{namedImports:[r],importPath:s}),a=v(e,a,{namedImports:["Content"],importPath:"@builder.io/sdk-angular"});let u=[];for(let p of a.statements)if(e.ts.isClassDeclaration(p)&&p.name?.text==="AppModule"){let m=hs(e,r,p);u.push(m)}else u.push(p);return a=e.ts.factory.updateSourceFile(a,u),i=_(e,a),i}function hs(e,t,r){let n=e.ts.getDecorators(r);if(n){for(let o of n)if(e.ts.isCallExpression(o.expression)&&e.ts.isIdentifier(o.expression.expression)&&o.expression.expression.text==="NgModule"){let i=o.expression.arguments;if(i.length===1&&e.ts.isObjectLiteralExpression(i[0])){let a=lo(e,i[0],"declarations",t);if(a){let s=lo(e,a,"imports","Content");if(s&&(a=s),a){let u=e.ts.factory.updateDecorator(o,e.ts.factory.updateCallExpression(o.expression,o.expression.expression,o.expression.typeArguments,[a])),m=[...n.map(f=>f===o?u:f),...e.ts.getModifiers(r)||[]];return e.ts.factory.updateClassDeclaration(r,m,r.name,r.typeParameters,r.heritageClauses,r.members)}}}}}return r}function lo(e,t,r,n){let o=[...t.properties],i=o.findIndex(s=>N(e,s)===r);if(i>-1){let s=o[i];if(e.ts.isPropertyAssignment(s)&&s.initializer&&e.ts.isArrayLiteralExpression(s.initializer)){let u=co(e,s.initializer,n);return u?(o[i]=e.ts.factory.updatePropertyAssignment(s,s.name,u),e.ts.factory.updateObjectLiteralExpression(t,o)):null}return null}let a=co(e,e.ts.factory.createArrayLiteralExpression([],!0),n);return a?e.ts.factory.updateObjectLiteralExpression(t,[...o,e.ts.factory.createPropertyAssignment(r,a)]):null}function co(e,t,r){return t.elements.some(o=>e.ts.isIdentifier(o)?o.text===r:!1)?null:e.ts.factory.updateArrayLiteralExpression(t,[...t.elements,e.ts.factory.createIdentifier(r)])}async function Cn(e,t,r,n){var o;try{if(e.magicast){let a=`app.routes${e.typescriptEnabled?".ts":".js"}`,s=e.join(e.appDir,a),u=await e.magicast.loadFile(s);(o=u.exports).routes||(o.routes=[]);let p=u.exports.routes;if(p.find(f=>f.path===t))return;let m=e.magicast.builders.raw("{}");if(m.path=t,m.component=e.magicast.builders.raw(r),p.push(m),u.imports.$items.find(f=>f.imported===r))return;u.imports.$append({imported:r,from:n}),await e.magicast.writeFile(u,s)}}catch(i){console.error(i)}}var Es=/[\u1680\u2000-\u200A\u202F\u205F\u3000]/,Ss=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/,As=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/,xn={Space_Separator:Es,ID_Start:Ss,ID_Continue:As},q={isSpaceSeparator(e){return typeof e=="string"&&xn.Space_Separator.test(e)},isIdStartChar(e){return typeof e=="string"&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="$"||e==="_"||xn.ID_Start.test(e))},isIdContinueChar(e){return typeof e=="string"&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e>="0"&&e<="9"||e==="$"||e==="_"||e==="\u200C"||e==="\u200D"||xn.ID_Continue.test(e))},isDigit(e){return typeof e=="string"&&/[0-9]/.test(e)},isHexDigit(e){return typeof e=="string"&&/[0-9A-Fa-f]/.test(e)}},En,ee,Re,Kt,Ke,fe,W,Fn,Pt,Fs=function(t,r){En=String(t),ee="start",Re=[],Kt=0,Ke=1,fe=0,W=void 0,Fn=void 0,Pt=void 0;do W=Ps(),Ts[ee]();while(W.type!=="eof");return typeof r=="function"?Sn({"":Pt},"",r):Pt};function Sn(e,t,r){let n=e[t];if(n!=null&&typeof n=="object")if(Array.isArray(n))for(let o=0;o<n.length;o++){let i=String(o),a=Sn(n,i,r);a===void 0?delete n[i]:Object.defineProperty(n,i,{value:a,writable:!0,enumerable:!0,configurable:!0})}else for(let o in n){let i=Sn(n,o,r);i===void 0?delete n[o]:Object.defineProperty(n,o,{value:i,writable:!0,enumerable:!0,configurable:!0})}return r.call(e,t,n)}var b,T,Ft,Ie,R;function Ps(){for(b="default",T="",Ft=!1,Ie=1;;){R=Ne();let e=fo[b]();if(e)return e}}function Ne(){if(En[Kt])return String.fromCodePoint(En.codePointAt(Kt))}function h(){let e=Ne();return e===`
765
- `?(Ke++,fe=0):e?fe+=e.length:fe++,e&&(Kt+=e.length),e}var fo={default(){switch(R){case" ":case"\v":case"\f":case" ":case"\xA0":case"\uFEFF":case`
766
- `:case"\r":case"\u2028":case"\u2029":h();return;case"/":h(),b="comment";return;case void 0:return h(),M("eof")}if(q.isSpaceSeparator(R)){h();return}return fo[ee]()},comment(){switch(R){case"*":h(),b="multiLineComment";return;case"/":h(),b="singleLineComment";return}throw U(h())},multiLineComment(){switch(R){case"*":h(),b="multiLineCommentAsterisk";return;case void 0:throw U(h())}h()},multiLineCommentAsterisk(){switch(R){case"*":h();return;case"/":h(),b="default";return;case void 0:throw U(h())}h(),b="multiLineComment"},singleLineComment(){switch(R){case`
767
- `:case"\r":case"\u2028":case"\u2029":h(),b="default";return;case void 0:return h(),M("eof")}h()},value(){switch(R){case"{":case"[":return M("punctuator",h());case"n":return h(),We("ull"),M("null",null);case"t":return h(),We("rue"),M("boolean",!0);case"f":return h(),We("alse"),M("boolean",!1);case"-":case"+":h()==="-"&&(Ie=-1),b="sign";return;case".":T=h(),b="decimalPointLeading";return;case"0":T=h(),b="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":T=h(),b="decimalInteger";return;case"I":return h(),We("nfinity"),M("numeric",1/0);case"N":return h(),We("aN"),M("numeric",NaN);case'"':case"'":Ft=h()==='"',T="",b="string";return}throw U(h())},identifierNameStartEscape(){if(R!=="u")throw U(h());h();let e=An();switch(e){case"$":case"_":break;default:if(!q.isIdStartChar(e))throw mo();break}T+=e,b="identifierName"},identifierName(){switch(R){case"$":case"_":case"\u200C":case"\u200D":T+=h();return;case"\\":h(),b="identifierNameEscape";return}if(q.isIdContinueChar(R)){T+=h();return}return M("identifier",T)},identifierNameEscape(){if(R!=="u")throw U(h());h();let e=An();switch(e){case"$":case"_":case"\u200C":case"\u200D":break;default:if(!q.isIdContinueChar(e))throw mo();break}T+=e,b="identifierName"},sign(){switch(R){case".":T=h(),b="decimalPointLeading";return;case"0":T=h(),b="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":T=h(),b="decimalInteger";return;case"I":return h(),We("nfinity"),M("numeric",Ie*(1/0));case"N":return h(),We("aN"),M("numeric",NaN)}throw U(h())},zero(){switch(R){case".":T+=h(),b="decimalPoint";return;case"e":case"E":T+=h(),b="decimalExponent";return;case"x":case"X":T+=h(),b="hexadecimal";return}return M("numeric",Ie*0)},decimalInteger(){switch(R){case".":T+=h(),b="decimalPoint";return;case"e":case"E":T+=h(),b="decimalExponent";return}if(q.isDigit(R)){T+=h();return}return M("numeric",Ie*Number(T))},decimalPointLeading(){if(q.isDigit(R)){T+=h(),b="decimalFraction";return}throw U(h())},decimalPoint(){switch(R){case"e":case"E":T+=h(),b="decimalExponent";return}if(q.isDigit(R)){T+=h(),b="decimalFraction";return}return M("numeric",Ie*Number(T))},decimalFraction(){switch(R){case"e":case"E":T+=h(),b="decimalExponent";return}if(q.isDigit(R)){T+=h();return}return M("numeric",Ie*Number(T))},decimalExponent(){switch(R){case"+":case"-":T+=h(),b="decimalExponentSign";return}if(q.isDigit(R)){T+=h(),b="decimalExponentInteger";return}throw U(h())},decimalExponentSign(){if(q.isDigit(R)){T+=h(),b="decimalExponentInteger";return}throw U(h())},decimalExponentInteger(){if(q.isDigit(R)){T+=h();return}return M("numeric",Ie*Number(T))},hexadecimal(){if(q.isHexDigit(R)){T+=h(),b="hexadecimalInteger";return}throw U(h())},hexadecimalInteger(){if(q.isHexDigit(R)){T+=h();return}return M("numeric",Ie*Number(T))},string(){switch(R){case"\\":h(),T+=ys();return;case'"':if(Ft)return h(),M("string",T);T+=h();return;case"'":if(!Ft)return h(),M("string",T);T+=h();return;case`
768
- `:case"\r":throw U(h());case"\u2028":case"\u2029":bs(R);break;case void 0:throw U(h())}T+=h()},start(){switch(R){case"{":case"[":return M("punctuator",h())}b="value"},beforePropertyName(){switch(R){case"$":case"_":T=h(),b="identifierName";return;case"\\":h(),b="identifierNameStartEscape";return;case"}":return M("punctuator",h());case'"':case"'":Ft=h()==='"',b="string";return}if(q.isIdStartChar(R)){T+=h(),b="identifierName";return}throw U(h())},afterPropertyName(){if(R===":")return M("punctuator",h());throw U(h())},beforePropertyValue(){b="value"},afterPropertyValue(){switch(R){case",":case"}":return M("punctuator",h())}throw U(h())},beforeArrayValue(){if(R==="]")return M("punctuator",h());b="value"},afterArrayValue(){switch(R){case",":case"]":return M("punctuator",h())}throw U(h())},end(){throw U(h())}};function M(e,t){return{type:e,value:t,line:Ke,column:fe}}function We(e){for(let t of e){if(Ne()!==t)throw U(h());h()}}function ys(){switch(Ne()){case"b":return h(),"\b";case"f":return h(),"\f";case"n":return h(),`
769
- `;case"r":return h(),"\r";case"t":return h()," ";case"v":return h(),"\v";case"0":if(h(),q.isDigit(Ne()))throw U(h());return"\0";case"x":return h(),ws();case"u":return h(),An();case`
770
- `:case"\u2028":case"\u2029":return h(),"";case"\r":return h(),Ne()===`
771
- `&&h(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":throw U(h());case void 0:throw U(h())}return h()}function ws(){let e="",t=Ne();if(!q.isHexDigit(t)||(e+=h(),t=Ne(),!q.isHexDigit(t)))throw U(h());return e+=h(),String.fromCodePoint(parseInt(e,16))}function An(){let e="",t=4;for(;t-- >0;){let r=Ne();if(!q.isHexDigit(r))throw U(h());e+=h()}return String.fromCodePoint(parseInt(e,16))}var Ts={start(){if(W.type==="eof")throw Ye();hn()},beforePropertyName(){switch(W.type){case"identifier":case"string":Fn=W.value,ee="afterPropertyName";return;case"punctuator":$t();return;case"eof":throw Ye()}},afterPropertyName(){if(W.type==="eof")throw Ye();ee="beforePropertyValue"},beforePropertyValue(){if(W.type==="eof")throw Ye();hn()},beforeArrayValue(){if(W.type==="eof")throw Ye();if(W.type==="punctuator"&&W.value==="]"){$t();return}hn()},afterPropertyValue(){if(W.type==="eof")throw Ye();switch(W.value){case",":ee="beforePropertyName";return;case"}":$t()}},afterArrayValue(){if(W.type==="eof")throw Ye();switch(W.value){case",":ee="beforeArrayValue";return;case"]":$t()}},end(){}};function hn(){let e;switch(W.type){case"punctuator":switch(W.value){case"{":e={};break;case"[":e=[];break}break;case"null":case"boolean":case"numeric":case"string":e=W.value;break}if(Pt===void 0)Pt=e;else{let t=Re[Re.length-1];Array.isArray(t)?t.push(e):Object.defineProperty(t,Fn,{value:e,writable:!0,enumerable:!0,configurable:!0})}if(e!==null&&typeof e=="object")Re.push(e),Array.isArray(e)?ee="beforeArrayValue":ee="beforePropertyName";else{let t=Re[Re.length-1];t==null?ee="end":Array.isArray(t)?ee="afterArrayValue":ee="afterPropertyValue"}}function $t(){Re.pop();let e=Re[Re.length-1];e==null?ee="end":Array.isArray(e)?ee="afterArrayValue":ee="afterPropertyValue"}function U(e){return Mt(e===void 0?`JSON5: invalid end of input at ${Ke}:${fe}`:`JSON5: invalid character '${go(e)}' at ${Ke}:${fe}`)}function Ye(){return Mt(`JSON5: invalid end of input at ${Ke}:${fe}`)}function mo(){return fe-=5,Mt(`JSON5: invalid identifier character at ${Ke}:${fe}`)}function bs(e){console.warn(`JSON5: '${go(e)}' in strings is not valid ECMAScript; consider escaping`)}function go(e){let t={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};if(t[e])return t[e];if(e<" "){let r=e.charCodeAt(0).toString(16);return"\\x"+("00"+r).substring(r.length)}return e}function Mt(e){let t=new SyntaxError(e);return t.lineNumber=Ke,t.columnNumber=fe,t}var vs=function(t,r,n){let o=[],i="",a,s,u="",p;if(r!=null&&typeof r=="object"&&!Array.isArray(r)&&(n=r.space,p=r.quote,r=r.replacer),typeof r=="function")s=r;else if(Array.isArray(r)){a=[];for(let l of r){let D;typeof l=="string"?D=l:(typeof l=="number"||l instanceof String||l instanceof Number)&&(D=String(l)),D!==void 0&&a.indexOf(D)<0&&a.push(D)}}return n instanceof Number?n=Number(n):n instanceof String&&(n=String(n)),typeof n=="number"?n>0&&(n=Math.min(10,Math.floor(n)),u=" ".substr(0,n)):typeof n=="string"&&(u=n.substr(0,10)),m("",{"":t});function m(l,D){let g=D[l];switch(g!=null&&(typeof g.toJSON5=="function"?g=g.toJSON5(l):typeof g.toJSON=="function"&&(g=g.toJSON(l))),s&&(g=s.call(D,l,g)),g instanceof Number?g=Number(g):g instanceof String?g=String(g):g instanceof Boolean&&(g=g.valueOf()),g){case null:return"null";case!0:return"true";case!1:return"false"}if(typeof g=="string")return f(g,!1);if(typeof g=="number")return String(g);if(typeof g=="object")return Array.isArray(g)?C(g):c(g)}function f(l){let D={"'":.1,'"':.2},g={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"},x="";for(let P=0;P<l.length;P++){let A=l[P];switch(A){case"'":case'"':D[A]++,x+=A;continue;case"\0":if(q.isDigit(l[P+1])){x+="\\x00";continue}}if(g[A]){x+=g[A];continue}if(A<" "){let E=A.charCodeAt(0).toString(16);x+="\\x"+("00"+E).substring(E.length);continue}x+=A}let S=p||Object.keys(D).reduce((P,A)=>D[P]<D[A]?P:A);return x=x.replace(new RegExp(S,"g"),g[S]),S+x+S}function c(l){if(o.indexOf(l)>=0)throw TypeError("Converting circular structure to JSON5");o.push(l);let D=i;i=i+u;let g=a||Object.keys(l),x=[];for(let P of g){let A=m(P,l);if(A!==void 0){let E=d(P)+":";u!==""&&(E+=" "),E+=A,x.push(E)}}let S;if(x.length===0)S="{}";else{let P;if(u==="")P=x.join(","),S="{"+P+"}";else{let A=`,
764
+ `.trimStart(),a=await e.formatCode(t,i);return await e.writeFile(t,a),"create"}return null}var jt="builderApiKey";async function po(e,t){let r=[],n=t.getSourceFiles(),o=t.getTypeChecker();return await Promise.all(n.map(async i=>{let a=e.basename(i.fileName);if(Ds(e,i.fileName)||a.startsWith(".")||a==="node_modules"||ds.has(a))return;let s=e.normalize(i.fileName);if(s===e.registryPath)return;let u=await Vt(e,o,s,i);r.push(...u)})),r.sort((i,a)=>i.cmpInfo.name.localeCompare(a.cmpInfo.name))}var ds=new Set([]),gs=new Set(["node_modules"]);function Ds(e,t){for(let r of gs)if(e.dirname(t).includes(r))return!0;return!1}async function lo(e,t){let r=e.extname(t).toLowerCase();if(r===".tsx"||r===".jsx"||r===".ts"||r===".js"){let n=await e.readFile(t);if(n)return Cs(e,t,n)}return null}function Cs(e,t,r){let n=I(e,r);return Vt(e,null,t,n)}async function Vt(e,t,r,n){let o=[];r=e.normalize(r);let i=n.statements.filter(u=>e.ts.isClassDeclaration(u)&&Ss(e,u)),a=await hs(e,t,r,n),s=Fs(e,n);return await Promise.all(i.map(async u=>{let p=await xs(e,t,r,u,s);o.push(...p)})),o.push(...a),o}async function Cn(e,t,r){if(t.node.fnNode){let{sourceFile:n,typeChecker:o}=await nt(e,t.cmpInfo.filePath,r),a=(await Vt(e,o,t.cmpInfo.filePath,n)).find(s=>s.cmpInfo.id===t.cmpInfo.id);if(!a)throw new Error(`Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return a.cmpInfo.inputs}return[]}async function co(e,t,r){if(!r.some(s=>!s.isRegistered))return r;let o=await G(e,r.map(s=>s.filePath)),i=o.getTypeChecker();return await Promise.all(r.filter(s=>!(s.name.endsWith("Page")||s.name.endsWith("Module")||s.name==="AppComponent")).map(async s=>{if(!s.isRegistered){let u=o.getSourceFile(s.filePath);if(u){let m=(await Vt(e,i,s.filePath,u)).find(f=>f.cmpInfo.id===s.id);if(m){s.inputs=Qe(e,i,m.node.fnNode);let f=t.find(l=>l.cmpInfo.id===s.id);if(f){let l=await Cn(e,f,o);ie(s,l)}}}}return s}))}async function xs(e,t,r,n,o){let i=[],a=e.relative(e.getAppRootDir(),r),s=V(e,r),u=n.name?.text;if(!u)return i;let p=!1;n.modifiers&&(p=n.modifiers.some(d=>d.kind===e.ts.SyntaxKind.DefaultKeyword));let m=p?"default":u,f=p?"default":"named",l=[];return n.members.forEach(d=>{if(e.ts.isPropertyDeclaration(d)){let C=e.ts.getDecorators(d);C&&C.forEach(c=>{if(Es(e,c)&&e.ts.isIdentifier(d.name)){let D="any";if(d.type&&t){let x=t.getTypeAtLocation(d.type);D=t.typeToString(x)}else D=As(e,d.type);let g={name:d.name.text,type:o[D]?"string":D};o[D]&&(g.enum=o[D]),l.push(g)}})}}),i.push({cmpInfo:{id:await $(e,r,u),displayFilePath:k(e,r),name:K(u),inputs:l,exportName:m,exportType:f,importName:u,filePath:r,relFilePath:a,importPath:s},node:{name:u,fnNode:n,deps:void 0}}),i}async function hs(e,t,r,n){let o=[],i=e.relative(e.getAppRootDir(),r),a=V(e,r);for(let s of n.statements)if(e.ts.isExportDeclaration(s)&&s.exportClause&&e.ts.isNamedExports(s.exportClause))for(let u of s.exportClause.elements){let p=u.name?.text;if(!p)continue;let m=p,f="named",l=[];if(t){let c=t.getSymbolAtLocation(u.name);if(c){let D=t.getDeclaredTypeOfSymbol(c);t.getPropertiesOfType(D).forEach(x=>{let S=x.getDeclarations();S&&S.forEach(P=>{if(e.ts.isPropertyDeclaration(P)){let A=t.getTypeAtLocation(P),E={name:x.getName(),type:Ps(e,t,A)};l.push(E)}})})}}let d=e.ts.isExportSpecifier(u)&&u.parent?u.parent.parent:void 0,C;if(d){let c=d.moduleSpecifier;if(c&&e.ts.isStringLiteral(c)){let D=t?.getSymbolAtLocation(c);if(D&&D.declarations&&D.declarations.length>0){let g=D.declarations[0];(!e.ts.isSourceFile(g)||e.ts.isSourceFile(g)&&g.fileName.includes("node_modules"))&&(C=c.text)}}}o.push({cmpInfo:{id:await $(e,r,p,C),displayFilePath:k(e,r),name:K(p),inputs:l,exportName:m,exportType:f,importName:p,filePath:r,relFilePath:i,importPath:C||a,externalImportPath:C},node:{name:p,fnNode:u,deps:void 0}})}return o}function Es(e,t){if(e.ts.isCallExpression(t.expression)){let r=t.expression;if(e.ts.isIdentifier(r.expression))return r.expression?.text==="Input"}return!1}function Ss(e,t){return!!e.ts.getDecorators(t)?.some(o=>e.ts.isCallExpression(o.expression)&&e.ts.isIdentifier(o.expression.expression)&&o.expression.expression.text==="Component")}function As(e,t){if(!t)return"any";let r="any";switch(t.kind){case e.ts.SyntaxKind.StringKeyword:r="string";break;case e.ts.SyntaxKind.NumberKeyword:r="number";break;case e.ts.SyntaxKind.BooleanKeyword:r="boolean";break;case e.ts.SyntaxKind.TypeReference:e.ts.isTypeReferenceNode(t);break}return r.includes("|")?"string":r}function Fs(e,t){let r={};return e.ts.forEachChild(t,n=>{e.ts.isTypeAliasDeclaration(n)&&e.ts.isUnionTypeNode(n.type)&&n.type.types.every(o=>e.ts.isLiteralTypeNode(o)&&e.ts.isStringLiteral(o.literal))&&(r[n.name.text]=n.type.types.map(o=>o.literal.text))}),r}function Ps(e,t,r){let n=t.typeToString(r);if(n==="any"){let o=r.getSymbol();if(o){let i=o.getDeclarations();if(i&&i.length>0){let a=i[0];if(e.ts.isVariableDeclaration(a)){let s=a.type;s&&(n=t.typeToString(t.getTypeAtLocation(s)))}}}}return n}async function $t(e,t,r){let n=e.typescriptEnabled?".ts":".js",o=`app.module${n}`,i=e.join(e.appDir,o),a=await e.readFile(i);if(!a){console.error(`Unable to read app.module.${n} at ${i}`);return}let s=await ys(e,i,t,r,a);if(!s){console.error(`Unable to update app.module.${n} at ${i}`);return}return await e.writeFile(i,s),i}async function ys(e,t,r,n,o){let i=o,a=I(e,o),s=B(e,t,n);a=v(e,a,{namedImports:[r],importPath:s}),a=v(e,a,{namedImports:["Content"],importPath:"@builder.io/sdk-angular"});let u=[];for(let p of a.statements)if(e.ts.isClassDeclaration(p)&&p.name?.text==="AppModule"){let m=ws(e,r,p);u.push(m)}else u.push(p);return a=e.ts.factory.updateSourceFile(a,u),i=_(e,a),i}function ws(e,t,r){let n=e.ts.getDecorators(r);if(n){for(let o of n)if(e.ts.isCallExpression(o.expression)&&e.ts.isIdentifier(o.expression.expression)&&o.expression.expression.text==="NgModule"){let i=o.expression.arguments;if(i.length===1&&e.ts.isObjectLiteralExpression(i[0])){let a=mo(e,i[0],"declarations",t);if(a){let s=mo(e,a,"imports","Content");if(s&&(a=s),a){let u=e.ts.factory.updateDecorator(o,e.ts.factory.updateCallExpression(o.expression,o.expression.expression,o.expression.typeArguments,[a])),m=[...n.map(f=>f===o?u:f),...e.ts.getModifiers(r)||[]];return e.ts.factory.updateClassDeclaration(r,m,r.name,r.typeParameters,r.heritageClauses,r.members)}}}}}return r}function mo(e,t,r,n){let o=[...t.properties],i=o.findIndex(s=>N(e,s)===r);if(i>-1){let s=o[i];if(e.ts.isPropertyAssignment(s)&&s.initializer&&e.ts.isArrayLiteralExpression(s.initializer)){let u=fo(e,s.initializer,n);return u?(o[i]=e.ts.factory.updatePropertyAssignment(s,s.name,u),e.ts.factory.updateObjectLiteralExpression(t,o)):null}return null}let a=fo(e,e.ts.factory.createArrayLiteralExpression([],!0),n);return a?e.ts.factory.updateObjectLiteralExpression(t,[...o,e.ts.factory.createPropertyAssignment(r,a)]):null}function fo(e,t,r){return t.elements.some(o=>e.ts.isIdentifier(o)?o.text===r:!1)?null:e.ts.factory.updateArrayLiteralExpression(t,[...t.elements,e.ts.factory.createIdentifier(r)])}async function xn(e,t,r,n){var o;try{if(e.magicast){let a=`app.routes${e.typescriptEnabled?".ts":".js"}`,s=e.join(e.appDir,a),u=await e.magicast.loadFile(s);(o=u.exports).routes||(o.routes=[]);let p=u.exports.routes;if(p.find(f=>f.path===t))return;let m=e.magicast.builders.raw("{}");if(m.path=t,m.component=e.magicast.builders.raw(r),p.push(m),u.imports.$items.find(f=>f.imported===r))return;u.imports.$append({imported:r,from:n}),await e.magicast.writeFile(u,s)}}catch(i){console.error(i)}}var Ts=/[\u1680\u2000-\u200A\u202F\u205F\u3000]/,bs=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/,vs=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/,hn={Space_Separator:Ts,ID_Start:bs,ID_Continue:vs},q={isSpaceSeparator(e){return typeof e=="string"&&hn.Space_Separator.test(e)},isIdStartChar(e){return typeof e=="string"&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="$"||e==="_"||hn.ID_Start.test(e))},isIdContinueChar(e){return typeof e=="string"&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e>="0"&&e<="9"||e==="$"||e==="_"||e==="\u200C"||e==="\u200D"||hn.ID_Continue.test(e))},isDigit(e){return typeof e=="string"&&/[0-9]/.test(e)},isHexDigit(e){return typeof e=="string"&&/[0-9A-Fa-f]/.test(e)}},Sn,ee,Be,Mt,Me,fe,W,Pn,yt,Is=function(t,r){Sn=String(t),ee="start",Be=[],Mt=0,Me=1,fe=0,W=void 0,Pn=void 0,yt=void 0;do W=Rs(),Os[ee]();while(W.type!=="eof");return typeof r=="function"?An({"":yt},"",r):yt};function An(e,t,r){let n=e[t];if(n!=null&&typeof n=="object")if(Array.isArray(n))for(let o=0;o<n.length;o++){let i=String(o),a=An(n,i,r);a===void 0?delete n[i]:Object.defineProperty(n,i,{value:a,writable:!0,enumerable:!0,configurable:!0})}else for(let o in n){let i=An(n,o,r);i===void 0?delete n[o]:Object.defineProperty(n,o,{value:i,writable:!0,enumerable:!0,configurable:!0})}return r.call(e,t,n)}var b,T,Pt,Ne,R;function Rs(){for(b="default",T="",Pt=!1,Ne=1;;){R=Oe();let e=Do[b]();if(e)return e}}function Oe(){if(Sn[Mt])return String.fromCodePoint(Sn.codePointAt(Mt))}function h(){let e=Oe();return e===`
765
+ `?(Me++,fe=0):e?fe+=e.length:fe++,e&&(Mt+=e.length),e}var Do={default(){switch(R){case" ":case"\v":case"\f":case" ":case"\xA0":case"\uFEFF":case`
766
+ `:case"\r":case"\u2028":case"\u2029":h();return;case"/":h(),b="comment";return;case void 0:return h(),M("eof")}if(q.isSpaceSeparator(R)){h();return}return Do[ee]()},comment(){switch(R){case"*":h(),b="multiLineComment";return;case"/":h(),b="singleLineComment";return}throw U(h())},multiLineComment(){switch(R){case"*":h(),b="multiLineCommentAsterisk";return;case void 0:throw U(h())}h()},multiLineCommentAsterisk(){switch(R){case"*":h();return;case"/":h(),b="default";return;case void 0:throw U(h())}h(),b="multiLineComment"},singleLineComment(){switch(R){case`
767
+ `:case"\r":case"\u2028":case"\u2029":h(),b="default";return;case void 0:return h(),M("eof")}h()},value(){switch(R){case"{":case"[":return M("punctuator",h());case"n":return h(),Ye("ull"),M("null",null);case"t":return h(),Ye("rue"),M("boolean",!0);case"f":return h(),Ye("alse"),M("boolean",!1);case"-":case"+":h()==="-"&&(Ne=-1),b="sign";return;case".":T=h(),b="decimalPointLeading";return;case"0":T=h(),b="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":T=h(),b="decimalInteger";return;case"I":return h(),Ye("nfinity"),M("numeric",1/0);case"N":return h(),Ye("aN"),M("numeric",NaN);case'"':case"'":Pt=h()==='"',T="",b="string";return}throw U(h())},identifierNameStartEscape(){if(R!=="u")throw U(h());h();let e=Fn();switch(e){case"$":case"_":break;default:if(!q.isIdStartChar(e))throw go();break}T+=e,b="identifierName"},identifierName(){switch(R){case"$":case"_":case"\u200C":case"\u200D":T+=h();return;case"\\":h(),b="identifierNameEscape";return}if(q.isIdContinueChar(R)){T+=h();return}return M("identifier",T)},identifierNameEscape(){if(R!=="u")throw U(h());h();let e=Fn();switch(e){case"$":case"_":case"\u200C":case"\u200D":break;default:if(!q.isIdContinueChar(e))throw go();break}T+=e,b="identifierName"},sign(){switch(R){case".":T=h(),b="decimalPointLeading";return;case"0":T=h(),b="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":T=h(),b="decimalInteger";return;case"I":return h(),Ye("nfinity"),M("numeric",Ne*(1/0));case"N":return h(),Ye("aN"),M("numeric",NaN)}throw U(h())},zero(){switch(R){case".":T+=h(),b="decimalPoint";return;case"e":case"E":T+=h(),b="decimalExponent";return;case"x":case"X":T+=h(),b="hexadecimal";return}return M("numeric",Ne*0)},decimalInteger(){switch(R){case".":T+=h(),b="decimalPoint";return;case"e":case"E":T+=h(),b="decimalExponent";return}if(q.isDigit(R)){T+=h();return}return M("numeric",Ne*Number(T))},decimalPointLeading(){if(q.isDigit(R)){T+=h(),b="decimalFraction";return}throw U(h())},decimalPoint(){switch(R){case"e":case"E":T+=h(),b="decimalExponent";return}if(q.isDigit(R)){T+=h(),b="decimalFraction";return}return M("numeric",Ne*Number(T))},decimalFraction(){switch(R){case"e":case"E":T+=h(),b="decimalExponent";return}if(q.isDigit(R)){T+=h();return}return M("numeric",Ne*Number(T))},decimalExponent(){switch(R){case"+":case"-":T+=h(),b="decimalExponentSign";return}if(q.isDigit(R)){T+=h(),b="decimalExponentInteger";return}throw U(h())},decimalExponentSign(){if(q.isDigit(R)){T+=h(),b="decimalExponentInteger";return}throw U(h())},decimalExponentInteger(){if(q.isDigit(R)){T+=h();return}return M("numeric",Ne*Number(T))},hexadecimal(){if(q.isHexDigit(R)){T+=h(),b="hexadecimalInteger";return}throw U(h())},hexadecimalInteger(){if(q.isHexDigit(R)){T+=h();return}return M("numeric",Ne*Number(T))},string(){switch(R){case"\\":h(),T+=Ns();return;case'"':if(Pt)return h(),M("string",T);T+=h();return;case"'":if(!Pt)return h(),M("string",T);T+=h();return;case`
768
+ `:case"\r":throw U(h());case"\u2028":case"\u2029":ks(R);break;case void 0:throw U(h())}T+=h()},start(){switch(R){case"{":case"[":return M("punctuator",h())}b="value"},beforePropertyName(){switch(R){case"$":case"_":T=h(),b="identifierName";return;case"\\":h(),b="identifierNameStartEscape";return;case"}":return M("punctuator",h());case'"':case"'":Pt=h()==='"',b="string";return}if(q.isIdStartChar(R)){T+=h(),b="identifierName";return}throw U(h())},afterPropertyName(){if(R===":")return M("punctuator",h());throw U(h())},beforePropertyValue(){b="value"},afterPropertyValue(){switch(R){case",":case"}":return M("punctuator",h())}throw U(h())},beforeArrayValue(){if(R==="]")return M("punctuator",h());b="value"},afterArrayValue(){switch(R){case",":case"]":return M("punctuator",h())}throw U(h())},end(){throw U(h())}};function M(e,t){return{type:e,value:t,line:Me,column:fe}}function Ye(e){for(let t of e){if(Oe()!==t)throw U(h());h()}}function Ns(){switch(Oe()){case"b":return h(),"\b";case"f":return h(),"\f";case"n":return h(),`
769
+ `;case"r":return h(),"\r";case"t":return h()," ";case"v":return h(),"\v";case"0":if(h(),q.isDigit(Oe()))throw U(h());return"\0";case"x":return h(),Bs();case"u":return h(),Fn();case`
770
+ `:case"\u2028":case"\u2029":return h(),"";case"\r":return h(),Oe()===`
771
+ `&&h(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":throw U(h());case void 0:throw U(h())}return h()}function Bs(){let e="",t=Oe();if(!q.isHexDigit(t)||(e+=h(),t=Oe(),!q.isHexDigit(t)))throw U(h());return e+=h(),String.fromCodePoint(parseInt(e,16))}function Fn(){let e="",t=4;for(;t-- >0;){let r=Oe();if(!q.isHexDigit(r))throw U(h());e+=h()}return String.fromCodePoint(parseInt(e,16))}var Os={start(){if(W.type==="eof")throw Ge();En()},beforePropertyName(){switch(W.type){case"identifier":case"string":Pn=W.value,ee="afterPropertyName";return;case"punctuator":Kt();return;case"eof":throw Ge()}},afterPropertyName(){if(W.type==="eof")throw Ge();ee="beforePropertyValue"},beforePropertyValue(){if(W.type==="eof")throw Ge();En()},beforeArrayValue(){if(W.type==="eof")throw Ge();if(W.type==="punctuator"&&W.value==="]"){Kt();return}En()},afterPropertyValue(){if(W.type==="eof")throw Ge();switch(W.value){case",":ee="beforePropertyName";return;case"}":Kt()}},afterArrayValue(){if(W.type==="eof")throw Ge();switch(W.value){case",":ee="beforeArrayValue";return;case"]":Kt()}},end(){}};function En(){let e;switch(W.type){case"punctuator":switch(W.value){case"{":e={};break;case"[":e=[];break}break;case"null":case"boolean":case"numeric":case"string":e=W.value;break}if(yt===void 0)yt=e;else{let t=Be[Be.length-1];Array.isArray(t)?t.push(e):Object.defineProperty(t,Pn,{value:e,writable:!0,enumerable:!0,configurable:!0})}if(e!==null&&typeof e=="object")Be.push(e),Array.isArray(e)?ee="beforeArrayValue":ee="beforePropertyName";else{let t=Be[Be.length-1];t==null?ee="end":Array.isArray(t)?ee="afterArrayValue":ee="afterPropertyValue"}}function Kt(){Be.pop();let e=Be[Be.length-1];e==null?ee="end":Array.isArray(e)?ee="afterArrayValue":ee="afterPropertyValue"}function U(e){return Ut(e===void 0?`JSON5: invalid end of input at ${Me}:${fe}`:`JSON5: invalid character '${Co(e)}' at ${Me}:${fe}`)}function Ge(){return Ut(`JSON5: invalid end of input at ${Me}:${fe}`)}function go(){return fe-=5,Ut(`JSON5: invalid identifier character at ${Me}:${fe}`)}function ks(e){console.warn(`JSON5: '${Co(e)}' in strings is not valid ECMAScript; consider escaping`)}function Co(e){let t={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};if(t[e])return t[e];if(e<" "){let r=e.charCodeAt(0).toString(16);return"\\x"+("00"+r).substring(r.length)}return e}function Ut(e){let t=new SyntaxError(e);return t.lineNumber=Me,t.columnNumber=fe,t}var Ls=function(t,r,n){let o=[],i="",a,s,u="",p;if(r!=null&&typeof r=="object"&&!Array.isArray(r)&&(n=r.space,p=r.quote,r=r.replacer),typeof r=="function")s=r;else if(Array.isArray(r)){a=[];for(let c of r){let D;typeof c=="string"?D=c:(typeof c=="number"||c instanceof String||c instanceof Number)&&(D=String(c)),D!==void 0&&a.indexOf(D)<0&&a.push(D)}}return n instanceof Number?n=Number(n):n instanceof String&&(n=String(n)),typeof n=="number"?n>0&&(n=Math.min(10,Math.floor(n)),u=" ".substr(0,n)):typeof n=="string"&&(u=n.substr(0,10)),m("",{"":t});function m(c,D){let g=D[c];switch(g!=null&&(typeof g.toJSON5=="function"?g=g.toJSON5(c):typeof g.toJSON=="function"&&(g=g.toJSON(c))),s&&(g=s.call(D,c,g)),g instanceof Number?g=Number(g):g instanceof String?g=String(g):g instanceof Boolean&&(g=g.valueOf()),g){case null:return"null";case!0:return"true";case!1:return"false"}if(typeof g=="string")return f(g,!1);if(typeof g=="number")return String(g);if(typeof g=="object")return Array.isArray(g)?C(g):l(g)}function f(c){let D={"'":.1,'"':.2},g={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"},x="";for(let P=0;P<c.length;P++){let A=c[P];switch(A){case"'":case'"':D[A]++,x+=A;continue;case"\0":if(q.isDigit(c[P+1])){x+="\\x00";continue}}if(g[A]){x+=g[A];continue}if(A<" "){let E=A.charCodeAt(0).toString(16);x+="\\x"+("00"+E).substring(E.length);continue}x+=A}let S=p||Object.keys(D).reduce((P,A)=>D[P]<D[A]?P:A);return x=x.replace(new RegExp(S,"g"),g[S]),S+x+S}function l(c){if(o.indexOf(c)>=0)throw TypeError("Converting circular structure to JSON5");o.push(c);let D=i;i=i+u;let g=a||Object.keys(c),x=[];for(let P of g){let A=m(P,c);if(A!==void 0){let E=d(P)+":";u!==""&&(E+=" "),E+=A,x.push(E)}}let S;if(x.length===0)S="{}";else{let P;if(u==="")P=x.join(","),S="{"+P+"}";else{let A=`,
772
772
  `+i;P=x.join(A),S=`{
773
773
  `+i+P+`,
774
- `+D+"}"}}return o.pop(),i=D,S}function d(l){if(l.length===0)return f(l,!0);let D=String.fromCodePoint(l.codePointAt(0));if(!q.isIdStartChar(D))return f(l,!0);for(let g=D.length;g<l.length;g++)if(!q.isIdContinueChar(String.fromCodePoint(l.codePointAt(g))))return f(l,!0);return l}function C(l){if(o.indexOf(l)>=0)throw TypeError("Converting circular structure to JSON5");o.push(l);let D=i;i=i+u;let g=[];for(let S=0;S<l.length;S++){let P=m(String(S),l);g.push(P!==void 0?P:"null")}let x;if(g.length===0)x="[]";else if(u==="")x="["+g.join(",")+"]";else{let S=`,
774
+ `+D+"}"}}return o.pop(),i=D,S}function d(c){if(c.length===0)return f(c,!0);let D=String.fromCodePoint(c.codePointAt(0));if(!q.isIdStartChar(D))return f(c,!0);for(let g=D.length;g<c.length;g++)if(!q.isIdContinueChar(String.fromCodePoint(c.codePointAt(g))))return f(c,!0);return c}function C(c){if(o.indexOf(c)>=0)throw TypeError("Converting circular structure to JSON5");o.push(c);let D=i;i=i+u;let g=[];for(let S=0;S<c.length;S++){let P=m(String(S),c);g.push(P!==void 0?P:"null")}let x;if(g.length===0)x="[]";else if(u==="")x="["+g.join(",")+"]";else{let S=`,
775
775
  `+i,P=g.join(S);x=`[
776
776
  `+i+P+`,
777
- `+D+"]"}return o.pop(),i=D,x}},Is={parse:Fs,stringify:vs},Rs=Is,Do=Rs;async function Co(e){let t=e.ts.findConfigFile(e.getAppRootDir(),e.existsSync);if(t){let r=await e.readFile(t);if(!r)return;let n=Do.parse(r);if(!n||typeof n!="object"||Array.isArray(n))return;let o=n.compilerOptions;if(!o||typeof o!="object"||Array.isArray(o))return;let i=o.paths;(!i||typeof i!="object"||Array.isArray(i))&&(o.paths={},i=o.paths),Object.assign(o.paths,{"~/*":["./src/*"]}),await e.writeFile(t,JSON.stringify(n,null,2))}}async function xo(e){let t=[],r=await Os(e,t);t.push(...await Ut(e)),await Ns(e,r);let n="BuilderPage";if(!await e.exists(e.builderPageComponentPath)){let o=await e.formatCode(e.builderPageComponentPath,Eo(e,n,e.builderPageComponentPath,"builder-page","page",!0));await e.writeFile(e.builderPageComponentPath,o),t.push({filePath:e.builderPageComponentPath,modifiedType:"create"})}if(e.hasAppModule){await Vt(e,"Counter",r);let o=await Vt(e,n,e.builderPageComponentPath);o&&t.push({filePath:o,modifiedType:"update"})}return await Cn(e,"**",n,"./components/builder-page.component"),t}async function ho(e){let t=[];t.push(...await Ut(e));let r="FigmaImportsPage",n="figma-imports.component",o=e.join(e.componentsDir,`${n}.${e.typescriptEnabled?"ts":"js"}`);if(!await e.exists(o)){let i=await e.formatCode(o,Eo(e,r,o,"figma-imports","figma-imports",!1));await e.writeFile(o,i),t.push({filePath:o,modifiedType:"create"})}if(e.hasAppModule){let i=await Vt(e,r,o);i&&t.push({filePath:i,modifiedType:"update"})}return await Cn(e,"figma-imports",r,`./components/${n}`),await Co(e),t}async function Ut(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,Bs(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}async function Ns(e,t){let n=(await be(e,null,!1,!1,null,null,!1,!1)).components.find(o=>o.filePath===t);n&&await be(e,n.id,!0,!1,null,null,!0,!1)}function Eo(e,t,r,n,o,i){let a=!e.hasAppModule,s=B(e,r,e.registryPath),u=e.join(e.getAppRootDir(),"src","environments","environment.ts"),p=B(e,r,u),m=i?` <ng-container *ngIf="content || isPreviewing; else notFound">
777
+ `+D+"]"}return o.pop(),i=D,x}},_s={parse:Is,stringify:Ls},js=_s,xo=js;async function ho(e){let t=e.ts.findConfigFile(e.getAppRootDir(),e.existsSync);if(t){let r=await e.readFile(t);if(!r)return;let n=xo.parse(r);if(!n||typeof n!="object"||Array.isArray(n))return;let o=n.compilerOptions;if(!o||typeof o!="object"||Array.isArray(o))return;let i=o.paths;(!i||typeof i!="object"||Array.isArray(i))&&(o.paths={},i=o.paths),Object.assign(o.paths,{"~/*":["./src/*"]}),await e.writeFile(t,JSON.stringify(n,null,2))}}async function Eo(e){let t=[],r=await Ks(e,t);t.push(...await zt(e)),await Vs(e,r);let n="BuilderPage";if(!await e.exists(e.builderPageComponentPath)){let o=await e.formatCode(e.builderPageComponentPath,Ao(e,n,e.builderPageComponentPath,"builder-page","page",!0));await e.writeFile(e.builderPageComponentPath,o),t.push({filePath:e.builderPageComponentPath,modifiedType:"create"})}if(e.hasAppModule){await $t(e,"Counter",r);let o=await $t(e,n,e.builderPageComponentPath);o&&t.push({filePath:o,modifiedType:"update"})}return await xn(e,"**",n,"./components/builder-page.component"),t}async function So(e){let t=[];t.push(...await zt(e));let r="FigmaImportsPage",n="figma-imports.component",o=e.join(e.componentsDir,`${n}.${e.typescriptEnabled?"ts":"js"}`);if(!await e.exists(o)){let i=await e.formatCode(o,Ao(e,r,o,"figma-imports","figma-imports",!1));await e.writeFile(o,i),t.push({filePath:o,modifiedType:"create"})}if(e.hasAppModule){let i=await $t(e,r,o);i&&t.push({filePath:i,modifiedType:"update"})}return await xn(e,"figma-imports",r,`./components/${n}`),await ho(e),t}async function zt(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,$s(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}async function Vs(e,t){let n=(await ve(e,null,!1,!1,null,null,!1,!1)).components.find(o=>o.filePath===t);n&&await ve(e,n.id,!0,!1,null,null,!0,!1)}function Ao(e,t,r,n,o,i){let a=!e.hasAppModule,s=B(e,r,e.registryPath),u=e.join(e.getAppRootDir(),"src","environments","environment.ts"),p=B(e,r,u),m=i?` <ng-container *ngIf="content || isPreviewing; else notFound">
778
778
  <builder-content
779
779
  [model]="model"
780
780
  [content]="content"
@@ -812,7 +812,7 @@ export class ${t} {
812
812
  `:""}
813
813
  @Input() model = '${o}';
814
814
 
815
- apiKey = environment.${_t};
815
+ apiKey = environment.${jt};
816
816
  ${e.typescriptEnabled?`
817
817
  content: BuilderContent | null = null;
818
818
  `:`
@@ -840,12 +840,12 @@ export class ${t} {
840
840
  }
841
841
  }
842
842
 
843
- `.trimStart()}function Bs(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-angular";
843
+ `.trimStart()}function $s(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-angular";
844
844
 
845
845
  export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
846
846
  ];`:`export const CUSTOM_COMPONENTS = [
847
847
  ];
848
- `}async function Os(e,t){let n=e.typescriptEnabled?"ts":"js",o=e.join(e.componentsDir,`counter.component.${n}`),i=await e.exists(o);e.debug(`angularEnsureCounterComponent, hasCounterCmp: ${i}`);let a=ks(e);if(!i){let s=await e.formatCode(o,a);await e.writeFile(o,s),t.push({filePath:o,modifiedType:"create"})}return o}function ks(e){return`
848
+ `}async function Ks(e,t){let n=e.typescriptEnabled?"ts":"js",o=e.join(e.componentsDir,`counter.component.${n}`),i=await e.exists(o);e.debug(`angularEnsureCounterComponent, hasCounterCmp: ${i}`);let a=Ms(e);if(!i){let s=await e.formatCode(o,a);await e.writeFile(o,s),t.push({filePath:o,modifiedType:"create"})}return o}function Ms(e){return`
849
849
  import { Component, Input } from '@angular/core';
850
850
 
851
851
  @Component({
@@ -913,7 +913,7 @@ export class Counter {
913
913
  }
914
914
  }
915
915
 
916
- `.trimStart()}async function So(e){await Ut(e);let t=await e.readFile(e.registryPath);return t?Ls(e,t):{components:[],sourceFile:I(e,"")}}async function Ls(e,t){let r=I(e,t);return _s(e,r)}async function _s(e,t){let r=[],n=J(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await Pn(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:te(r)}}async function Pn(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[]};for(let o of r.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(N(e,o)==="component"){let a,{initializer:s}=o;if(e.ts.isIdentifier(s))a=s.text;else if(e.ts.isCallExpression(s)){let p=s.arguments[0];e.ts.isIdentifier(p)&&(a=p.text)}if(!a)continue;n.name===""&&(n.name=K(a)),n.importName=a;let u=await xe(e,e.registryPath,t,a);if(!u)continue;if(n.filePath=u.filePath,n.relFilePath=u.relFilePath,await e.exists(u.filePath)?n.importPath=V(e,u.filePath):(n.externalImportPath=u.importPath,n.importPath=n.externalImportPath),n.displayFilePath=u.displayFilePath,n.exportType=u.exportType,n.externalImportPath)n.exportName=a;else{let p=await uo(e,u.filePath);if(p&&p.length>0)if(p.length===1)n.exportName=p[0].cmpInfo.exportName;else{let m=p.find(f=>f.cmpInfo.exportName===a);m&&(n.exportName=m.cmpInfo.exportName)}}continue}}return n=ne(e,n,r),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName,n.externalImportPath)),n}async function be(e,t,r,n,o,i,a,s){let u=await $e(e),[p,m,f]=await Promise.all([so(e,u),So(e),At(e)]),c=p.map(x=>x.cmpInfo),d=m.components,C={components:me(c,d),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:he(c),publicApiKey:f.envValue??void 0,devToolsVersion:e.version};if(s)return C.components=await po(e,p,C.components),C;let l=!1,D=m.sourceFile,g=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(g.length>0){let x=g.map(A=>{let E=p.find(O=>O.cmpInfo.id===A);if(!E)throw new Error(`Component ${A} not found`);return E}),S=Array.from(new Set(x.map(A=>A.cmpInfo.filePath))),P=await G(e,S);for(let A of x){let E=C.components.find(L=>L.id===A.cmpInfo.id),O=await Dn(e,A,P);ie(E,O);let z=c.findIndex(L=>L.id===A.cmpInfo.id);c[z].inputs=O;let j=Fe(A.cmpInfo.id,c,d,r,n,o,i),{elements:F,elmIndex:y,statementIndex:H,statement:le,variableDeclaration:Y}=await Vs(e,D,A);if(j.addCmpToRegistry)F.push(js(e,j.addCmpToRegistry)),l=!0;else if(j.removeCmpFromRegistry)F.splice(y,1),l=!0;else if(j.updateRegisteredCmp){let L=Q(e,F[y],j.updateRegisteredCmp);F[y]=e.ts.factory.updateObjectLiteralExpression(L,[Ao(e,j.updateRegisteredCmp),...L.properties.slice(1)]),l=!0}if(l&&a){let L=[...D.statements];L[H]=e.ts.factory.updateVariableStatement(le,le.modifiers,e.ts.factory.updateVariableDeclarationList(le.declarationList,[e.ts.factory.updateVariableDeclaration(Y,Y.name,Y.exclamationToken,Y.type,e.ts.factory.createArrayLiteralExpression(Se(e,F)))])),D=e.ts.factory.updateSourceFile(D,L),E.exportType==="named"?D=v(e,D,{namedImports:[E.importName],importPath:E.externalImportPath?E.externalImportPath:B(e,e.registryPath,E.filePath)}):D=v(e,D,{defaultImport:E.importName,importPath:E.externalImportPath?E.externalImportPath:B(e,e.registryPath,E.filePath)}),D=v(e,D,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-angular",isTypeOnly:!0}),D=Pe(e,D,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),C.components=j.components,d=j.components.filter(X=>X.isRegistered)}}}if(l&&a){D=Ae(e,D),D=Ee(e,D);let x=_(e,D);x=pe(x),x=await e.formatCode(e.registryPath,x),await e.writeFile(e.registryPath,x)}return C}function Ao(e,t){let r=e.ts.factory.createIdentifier(t.importName);return e.ts.factory.createPropertyAssignment("component",r)}function js(e,t){return Q(e,e.ts.factory.createObjectLiteralExpression([Ao(e,t)],!0),t)}async function Vs(e,t,r){let n=J(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let o=n.arrayLiteralExp.elements.filter(a=>e.ts.isObjectLiteralExpression(a)),i=-1;for(let a=0;a<o.length;a++)if((await Pn(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}async function Fo(e){let t=await $s(e),r={};return{builderPageOptions:async()=>({templateContentId:"f0b8016ac92e474699293211a268ebaa",pathname:"/builder-demo",title:"Builder + Angular Demo Page"}),ensureBuilderSetup:()=>xo(t),ensureFigmaImportPage:()=>ho(t),getRegistryPath:()=>t.registryPath,getRegistry:o=>be(t,null,!1,!1,null,null,!1,!!o?.readAllInputTypes),addExternalPackage:async o=>{r[o]||(r[o]=`export * from "${o}";`)},loadComponent:async o=>{let i=await be(t,o.cmpId,!1,!1,null,null,!1,!1);return{...i,component:i.components.find(a=>a.id===o.cmpId)}},registerComponent:o=>be(t,o.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:o=>be(t,o.cmpId,!1,!1,o,null,!0,!1),setRegisteredComponentInput:o=>be(t,o.cmpId,!1,!1,null,o,!0,!1),unregisterComponent:o=>be(t,o.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>At(t),setPublicApiKey:o=>ao(t,o.publicApiKey),getDependencies:o=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-angular"},{name:"concurrently"}],getDevRunCommand:()=>"builder-dev",getCache:()=>ge(t),setCache:o=>De(t,o)}}async function $s(e){let t=await Ks(e),r=e.getAppRootDir(),n=e.join(r,"src"),o=await re(e),i=e.join(n,"app"),a=await ae(e,i),s={...e,srcDir:"",appDir:"",componentsDir:"",registryPath:a,angularConfigPath:t,typescriptEnabled:o,builderPageComponentPath:"",hasAppModule:!1};if(!await e.exists(n))throw new Error(`Could not find src directory. Searched for src in "${e.getAppRootDir()}".`);s.srcDir=n,s.appDir=i,s.componentsDir=e.join(s.appDir,"components"),s.builderPageComponentPath=e.join(s.componentsDir,`builder-page.component.${o?"ts":"js"}`);let u=`app.module.${o?"ts":"js"}`,p=e.join(s.appDir,u);return await e.exists(p)&&(s.hasAppModule=!0),s}async function Ks(e){let t=e.join(e.getAppRootDir(),"angular.json");if(await e.exists(t))return t;let r=e.join(e.getAppRootDir(),"project.json");if(await e.exists(r))return r;throw new Error(`Could not find Angular config file. Searched for angular.json & project.json in "${e.getAppRootDir()}".`)}var Yt=Mn(Lo(),1);async function _o(e,t){let n={components:(await t.getRegistry()).components.filter(i=>i.isRegistered).map(i=>{let a={filePath:ce(e.relative(e.getAppRootDir(),i.filePath)),name:i.name,image:i.image,description:i.description,exportName:i.exportName,inputs:oe(i.inputs)};return oe(a)}),version:1};e.debug("exporting registry components:",n.components.length);let o=(0,Yt.compress)(n);return btoa(JSON.stringify(o))}async function jo(e,t,r){if(typeof r!="string")throw new Error("Invalid registry to import");let n=await t.getRegistry(),o=JSON.parse(atob(r)),i=(0,Yt.decompress)(o),a=oe(n);e.debug("importing registry components:",i.components.length);for(let s of i.components){let u=ce(e.normalize(s.filePath)),p=n.components.find(f=>ce(f.filePath).endsWith(u)&&f.exportName===s.exportName);if(!p){console.error(`Could not find component to register: ${s.filePath}, ${s.exportName}`);continue}e.debug(`register (${p.id})`,p.filePath),await t.registerComponent({cmpId:p.id});for(let f of s.inputs)e.debug(`set input (${p.id})`),await t.setRegisteredComponentInput({cmpId:p.id,name:f.name,type:f.type,required:f.required,defaultValue:f.defaultValue,friendlyName:f.friendlyName,helperText:f.helperText});e.debug(`set input (${p.id}) info`);let m=await t.setRegisteredComponentInfo({cmpId:p.id,name:s.name,image:s.image,description:s.description});a=oe(m)}return a}var de={react:"react",remix:"remix",angular:"angular",next:"next",qwik:"qwik"},id={[de.react]:[{version:w.gen1,recommended:!0},{version:w.gen2,recommended:!1}],[de.remix]:[{version:w.gen1,recommended:!1},{version:w.gen2,recommended:!0}],[de.angular]:[{version:w.gen2,recommended:!0}],[de.next]:[{version:w.gen1,recommended:!0},{version:w.gen2,recommended:!1}],[de.qwik]:[{version:w.gen2,recommended:!0}]};async function Vo(e,t){let r=[],n=new Set;async function o(s){let u=e.join(s,"package.json");try{let p=await e.readFile(u);if(p===null)throw new Error(`Failed to read package.json at ${u}`);let m=JSON.parse(p);if(n.has(m.name))return null;n.add(m.name);let f={name:m.name,subPackages:[]},c=await e.readdir(s);for(let d of c)d!=="node_modules"&&(await e.stat(e.join(s,d))).isDirectory()&&f.subPackages.push(d);return r.push(f),f}catch(p){return console.error(`Error reading package.json at ${s}:`,p),null}}let i=e.join(t,"package.json"),a=await e.readFile(i);if(a!==null){let s=JSON.parse(a),u={...s.dependencies,...s.devDependencies};for(let p of Object.keys(u)){let m=e.join(t,"node_modules",p);await o(m)}if(s.workspaces)for(let p of s.workspaces){let m=await e.readdir(e.join(t,p));for(let f of m){let c=e.join(t,p,f);await o(c)}}}return r}var cu={"@builder.io/qwik-city":Mr,next:Rr,"@remix-run/react":Gr,react:io,"@angular/core":Fo},mu={"@builder.io/qwik-city":de.qwik,next:de.next,"@remix-run/react":de.remix,react:de.react,"@angular/core":de.angular};async function fu(e){if(!e.ts)throw new Error("createDevTools() requires a TypeScript instance passed to the 'ts' option");if((!e.frameworks||e.frameworks.length===0)&&(e.frameworks=await qe(e)),e.frameworks.length===0)throw new Error(`Supported Devtools framework for not found within ${e.getAppRootDir()}`);for(let t of e.frameworks){let r=cu[t.name];if(r){let n=await r(e);return{...n,exportRegistry:()=>_o(e,n),importRegistry:i=>jo(e,n,i),framework:mu[t.name],findAllDependencies:async()=>await Vo(e,e.getRepoRootDir())}}}throw new Error(`Devtools framework not found for ${e.getAppRootDir()}, ${JSON.stringify(e.frameworks,null,2)}`)}function $o(e){function t(f){if(typeof f!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(f))}function r(f,c){let d="",C=0,l=-1,D=0,g;for(let x=0;x<=f.length;++x){if(x<f.length)g=f.charCodeAt(x);else{if(g===47)break;g=47}if(g===47){if(!(l===x-1||D===1))if(l!==x-1&&D===2){if(d.length<2||C!==2||d.charCodeAt(d.length-1)!==46||d.charCodeAt(d.length-2)!==46){if(d.length>2){let S=d.lastIndexOf("/");if(S!==d.length-1){S===-1?(d="",C=0):(d=d.slice(0,S),C=d.length-1-d.lastIndexOf("/")),l=x,D=0;continue}}else if(d.length===2||d.length===1){d="",C=0,l=x,D=0;continue}}c&&(d.length>0?d+="/..":d="..",C=2)}else d.length>0?d+="/"+f.slice(l+1,x):d=f.slice(l+1,x),C=x-l-1;l=x,D=0}else g===46&&D!==-1?++D:D=-1}return d}let n=function(...c){let d="",C=!1;for(let l=c.length-1;l>=-1&&!C;l--){let D;l>=0?D=c[l]:e.cwd?D=e.cwd():D="/",t(D),D.length!==0&&(d=D+"/"+d,C=D.charCodeAt(0)===47)}return d=r(d,!C),C?d.length>0?"/"+d:"/":d.length>0?d:"."},o=function(c){if(t(c),c.length===0)return".";let d=c.charCodeAt(0)===47,C=c.charCodeAt(c.length-1)===47;return c=r(c,!d),c.length===0&&!d&&(c="."),c.length>0&&C&&(c+="/"),d?"/"+c:c};return{relative:function(c,d){if(t(c),t(d),c===d||(c=n(c),d=n(d),c===d))return"";let C=1;for(;C<c.length&&c.charCodeAt(C)===47;++C);let l=c.length,D=l-C,g=1;for(;g<d.length&&d.charCodeAt(g)===47;++g);let S=d.length-g,P=D<S?D:S,A=-1,E=0;for(;E<=P;++E){if(E===P){if(S>P){if(d.charCodeAt(g+E)===47)return d.slice(g+E+1);if(E===0)return d.slice(g+E)}else D>P&&(c.charCodeAt(C+E)===47?A=E:E===0&&(A=0));break}let z=c.charCodeAt(C+E),j=d.charCodeAt(g+E);if(z!==j)break;z===47&&(A=E)}let O="";for(E=C+A+1;E<=l;++E)(E===l||c.charCodeAt(E)===47)&&(O.length===0?O+="..":O+="/..");return O.length>0?O+d.slice(g+A):(g+=A,d.charCodeAt(g)===47&&++g,d.slice(g))},resolve:n,join:function(...c){if(c.length===0)return".";let d;for(let C=0;C<c.length;++C){let l=c[C];t(l),l.length>0&&(d===void 0?d=l:d+="/"+l)}return d===void 0?".":o(d)},isAbsolute:function(c){return t(c),c.length>0&&c.charCodeAt(0)===47},basename:function(c,d){if(d!==void 0&&typeof d!="string")throw new TypeError('"ext" argument must be a string');t(c);let C=0,l=-1,D=!0,g;if(d!==void 0&&d.length>0&&d.length<=c.length){if(d.length===c.length&&d===c)return"";let x=d.length-1,S=-1;for(g=c.length-1;g>=0;--g){let P=c.charCodeAt(g);if(P===47){if(!D){C=g+1;break}}else S===-1&&(D=!1,S=g+1),x>=0&&(P===d.charCodeAt(x)?--x===-1&&(l=g):(x=-1,l=S))}return C===l?l=S:l===-1&&(l=c.length),c.slice(C,l)}else{for(g=c.length-1;g>=0;--g)if(c.charCodeAt(g)===47){if(!D){C=g+1;break}}else l===-1&&(D=!1,l=g+1);return l===-1?"":c.slice(C,l)}},normalize:o,dirname:function(c){if(t(c),c.length===0)return".";let d=c.charCodeAt(0),C=d===47,l=-1,D=!0;for(let g=c.length-1;g>=1;--g)if(d=c.charCodeAt(g),d===47){if(!D){l=g;break}}else D=!1;return l===-1?C?"/":".":C&&l===1?"//":c.slice(0,l)},extname:function(c){t(c);let d=-1,C=0,l=-1,D=!0,g=0;for(let x=c.length-1;x>=0;--x){let S=c.charCodeAt(x);if(S===47){if(!D){C=x+1;break}continue}l===-1&&(D=!1,l=x+1),S===46?d===-1?d=x:g!==1&&(g=1):d!==-1&&(g=-1)}return d===-1||l===-1||g===0||g===1&&d===l-1&&d===C+1?"":c.slice(d,l)}}}async function du(e){let t=e.getRepoRootDir?e.getRepoRootDir:()=>"/",r=e.cwd?e.cwd:()=>"/",n=$o({cwd:r,...e}),o=new Map,i=l=>n.normalize(n.resolve(r(),l)),a=l=>{for(let[D]of o)if((D+"/").startsWith(l))return!0;return l===t()},s=l=>(l=i(l),o.has(l)?!0:a(l)),u=l=>{l=i(l);let D=l===t()?l:l+"/",g=D.split("/").length-1,x=[];for(let[S]of o)if(S.split("/").slice(0,g).join("/")+"/"===D){let E=S.split("/")[g];E&&!x.includes(E)&&x.push(E)}return x.sort()},p=l=>{l=i(l);let D=o.get(l);return typeof D=="string"?D:null},m=l=>(l=i(l),{isFile:()=>o.has(l),isDirectory:()=>!o.has(l)&&a(l)}),f=async l=>{if(typeof crypto<"u"){let x=new TextEncoder().encode(l),S=await crypto.subtle.digest("SHA-256",x);return Array.from(new Uint8Array(S)).map(P=>P.toString(16).padStart(2,"0")).join("")}let D=0;for(let g=0;g<l.length;g++){let x=l.charCodeAt(g);D=(D<<5)-D+x,D|=0}return Number(Math.abs(D)).toString(36)},c=new Set,d={getRepoRootDir:t,getAppRootDir:t,getCwdDir:r,cwd:r,exists:async l=>s(l),existsSync:s,readdir:async l=>u(l),readdirSync:u,readFile:async l=>p(l),readFileSync:p,stat:async l=>m(l),statSync:m,writeFile:async(l,D)=>{l=i(l),o.set(l,D);let g={path:l,basename:n.basename(l),dirname:n.dirname(l),extname:n.extname(l)};for(let x of c)await x(g)},hash:f,getDeviceId:async()=>typeof navigator<"u"?f(navigator.userAgent):"",getRepoInfo:async()=>({remoteUrl:"",defaultBranch:"",currentBranch:"",commit:""}),formatCode:async(l,D)=>D,on:(l,D)=>{l==="change"&&c.add(D)},off:(l,D)=>{l==="change"&&c.delete(D)},debug:(...l)=>{console.debug("[builder-dev-tools]",...l)},launchEditor:async()=>{},platform:()=>({runtime:"",os:""}),getFrameworks:()=>[],...n,...e,version:"0.0.0",sdkVersion:null,kind:null,magicast:void 0,spawnSync:void 0},C=await qe(d);return d.getFrameworks=e.getFrameworks?e.getFrameworks:()=>C,d}async function Ko(e,t,r){let n=I(e,r),o={content:r,filePath:t,fileName:e.basename(t),hasContentUpdates:!1};if(Mo(e,n))return o;let a=ue(e,n,"cjs"),s=ue(e,n);if(a.length!==1&&s.length!==1)throw new Error(`Expected an export from ${t}`);if(s.length===1){let m=s[0];if(!m.isDefaultExport)throw new Error(`Expected a default export from ${t}`);let f=m.statement;if(!e.ts.isVariableStatement(f))throw new Error(`Unexpected export type in ${t}
916
+ `.trimStart()}async function Fo(e){await zt(e);let t=await e.readFile(e.registryPath);return t?Us(e,t):{components:[],sourceFile:I(e,"")}}async function Us(e,t){let r=I(e,t);return zs(e,r)}async function zs(e,t){let r=[],n=J(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await yn(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:te(r)}}async function yn(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[]};for(let o of r.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(N(e,o)==="component"){let a,{initializer:s}=o;if(e.ts.isIdentifier(s))a=s.text;else if(e.ts.isCallExpression(s)){let p=s.arguments[0];e.ts.isIdentifier(p)&&(a=p.text)}if(!a)continue;n.name===""&&(n.name=K(a)),n.importName=a;let u=await he(e,e.registryPath,t,a);if(!u)continue;if(n.filePath=u.filePath,n.relFilePath=u.relFilePath,await e.exists(u.filePath)?n.importPath=V(e,u.filePath):(n.externalImportPath=u.importPath,n.importPath=n.externalImportPath),n.displayFilePath=u.displayFilePath,n.exportType=u.exportType,n.externalImportPath)n.exportName=a;else{let p=await lo(e,u.filePath);if(p&&p.length>0)if(p.length===1)n.exportName=p[0].cmpInfo.exportName;else{let m=p.find(f=>f.cmpInfo.exportName===a);m&&(n.exportName=m.cmpInfo.exportName)}}continue}}return n=ne(e,n,r),n.filePath&&n.exportName&&(n.id=await $(e,n.filePath,n.exportName,n.externalImportPath)),n}async function ve(e,t,r,n,o,i,a,s){let u=await Ke(e),[p,m,f]=await Promise.all([po(e,u),Fo(e),Ft(e)]),l=p.map(x=>x.cmpInfo),d=m.components,C={components:me(l,d),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ee(l),publicApiKey:f.envValue??void 0,devToolsVersion:e.version};if(s)return C.components=await co(e,p,C.components),C;let c=!1,D=m.sourceFile,g=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(g.length>0){let x=g.map(A=>{let E=p.find(O=>O.cmpInfo.id===A);if(!E)throw new Error(`Component ${A} not found`);return E}),S=Array.from(new Set(x.map(A=>A.cmpInfo.filePath))),P=await G(e,S);for(let A of x){let E=C.components.find(L=>L.id===A.cmpInfo.id),O=await Cn(e,A,P);ie(E,O);let z=l.findIndex(L=>L.id===A.cmpInfo.id);l[z].inputs=O;let j=Pe(A.cmpInfo.id,l,d,r,n,o,i),{elements:F,elmIndex:y,statementIndex:H,statement:le,variableDeclaration:Y}=await Js(e,D,A);if(j.addCmpToRegistry)F.push(qs(e,j.addCmpToRegistry)),c=!0;else if(j.removeCmpFromRegistry)F.splice(y,1),c=!0;else if(j.updateRegisteredCmp){let L=Q(e,F[y],j.updateRegisteredCmp);F[y]=e.ts.factory.updateObjectLiteralExpression(L,[Po(e,j.updateRegisteredCmp),...L.properties.slice(1)]),c=!0}if(c&&a){let L=[...D.statements];L[H]=e.ts.factory.updateVariableStatement(le,le.modifiers,e.ts.factory.updateVariableDeclarationList(le.declarationList,[e.ts.factory.updateVariableDeclaration(Y,Y.name,Y.exclamationToken,Y.type,e.ts.factory.createArrayLiteralExpression(Ae(e,F)))])),D=e.ts.factory.updateSourceFile(D,L),E.exportType==="named"?D=v(e,D,{namedImports:[E.importName],importPath:E.externalImportPath?E.externalImportPath:B(e,e.registryPath,E.filePath)}):D=v(e,D,{defaultImport:E.importName,importPath:E.externalImportPath?E.externalImportPath:B(e,e.registryPath,E.filePath)}),D=v(e,D,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-angular",isTypeOnly:!0}),D=ye(e,D,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),C.components=j.components,d=j.components.filter(X=>X.isRegistered)}}}if(c&&a){D=Fe(e,D),D=Se(e,D);let x=_(e,D);x=pe(x),x=await e.formatCode(e.registryPath,x),await e.writeFile(e.registryPath,x)}return C}function Po(e,t){let r=e.ts.factory.createIdentifier(t.importName);return e.ts.factory.createPropertyAssignment("component",r)}function qs(e,t){return Q(e,e.ts.factory.createObjectLiteralExpression([Po(e,t)],!0),t)}async function Js(e,t,r){let n=J(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let o=n.arrayLiteralExp.elements.filter(a=>e.ts.isObjectLiteralExpression(a)),i=-1;for(let a=0;a<o.length;a++)if((await yn(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}async function yo(e){let t=await Qs(e),r={};return{builderPageOptions:async()=>({templateContentId:"f0b8016ac92e474699293211a268ebaa",pathname:"/builder-demo",title:"Builder + Angular Demo Page"}),ensureBuilderSetup:()=>Eo(t),ensureFigmaImportPage:()=>So(t),getRegistryPath:()=>t.registryPath,getRegistry:o=>ve(t,null,!1,!1,null,null,!1,!!o?.readAllInputTypes),addExternalPackage:async o=>{r[o]||(r[o]=`export * from "${o}";`)},loadComponent:async o=>{let i=await ve(t,o.cmpId,!1,!1,null,null,!1,!1);return{...i,component:i.components.find(a=>a.id===o.cmpId)}},registerComponent:o=>ve(t,o.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:o=>ve(t,o.cmpId,!1,!1,o,null,!0,!1),setRegisteredComponentInput:o=>ve(t,o.cmpId,!1,!1,null,o,!0,!1),unregisterComponent:o=>ve(t,o.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>Ft(t),setPublicApiKey:o=>uo(t,o.publicApiKey),getDependencies:o=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-angular"},{name:"concurrently"}],getDevRunCommand:()=>"builder-dev",getCache:()=>De(t),setCache:o=>Ce(t,o)}}async function Qs(e){let t=await Ws(e),r=e.getAppRootDir(),n=e.join(r,"src"),o=await re(e),i=e.join(n,"app"),a=await ae(e,i),s={...e,srcDir:"",appDir:"",componentsDir:"",registryPath:a,angularConfigPath:t,typescriptEnabled:o,builderPageComponentPath:"",hasAppModule:!1};if(!await e.exists(n))throw new Error(`Could not find src directory. Searched for src in "${e.getAppRootDir()}".`);s.srcDir=n,s.appDir=i,s.componentsDir=e.join(s.appDir,"components"),s.builderPageComponentPath=e.join(s.componentsDir,`builder-page.component.${o?"ts":"js"}`);let u=`app.module.${o?"ts":"js"}`,p=e.join(s.appDir,u);return await e.exists(p)&&(s.hasAppModule=!0),s}async function Ws(e){let t=e.join(e.getAppRootDir(),"angular.json");if(await e.exists(t))return t;let r=e.join(e.getAppRootDir(),"project.json");if(await e.exists(r))return r;throw new Error(`Could not find Angular config file. Searched for angular.json & project.json in "${e.getAppRootDir()}".`)}var Gt=Un(jo(),1);async function Vo(e,t){let n={components:(await t.getRegistry()).components.filter(i=>i.isRegistered).map(i=>{let a={filePath:ce(e.relative(e.getAppRootDir(),i.filePath)),name:i.name,image:i.image,description:i.description,exportName:i.exportName,inputs:oe(i.inputs)};return oe(a)}),version:1};e.debug("exporting registry components:",n.components.length);let o=(0,Gt.compress)(n);return btoa(JSON.stringify(o))}async function $o(e,t,r){if(typeof r!="string")throw new Error("Invalid registry to import");let n=await t.getRegistry(),o=JSON.parse(atob(r)),i=(0,Gt.decompress)(o),a=oe(n);e.debug("importing registry components:",i.components.length);for(let s of i.components){let u=ce(e.normalize(s.filePath)),p=n.components.find(f=>ce(f.filePath).endsWith(u)&&f.exportName===s.exportName);if(!p){console.error(`Could not find component to register: ${s.filePath}, ${s.exportName}`);continue}e.debug(`register (${p.id})`,p.filePath),await t.registerComponent({cmpId:p.id});for(let f of s.inputs)e.debug(`set input (${p.id})`),await t.setRegisteredComponentInput({cmpId:p.id,name:f.name,type:f.type,required:f.required,defaultValue:f.defaultValue,friendlyName:f.friendlyName,helperText:f.helperText});e.debug(`set input (${p.id}) info`);let m=await t.setRegisteredComponentInfo({cmpId:p.id,name:s.name,image:s.image,description:s.description});a=oe(m)}return a}var de={react:"react",remix:"remix",angular:"angular",next:"next",qwik:"qwik"},gd={[de.react]:[{version:w.gen1,recommended:!0},{version:w.gen2,recommended:!1}],[de.remix]:[{version:w.gen1,recommended:!1},{version:w.gen2,recommended:!0}],[de.angular]:[{version:w.gen2,recommended:!0}],[de.next]:[{version:w.gen1,recommended:!0},{version:w.gen2,recommended:!1}],[de.qwik]:[{version:w.gen2,recommended:!0}]};async function Ko(e,t){let r=[],n=new Set;async function o(s){let u=e.join(s,"package.json");try{let p=await e.readFile(u);if(p===null)throw new Error(`Failed to read package.json at ${u}`);let m=JSON.parse(p);if(n.has(m.name))return null;n.add(m.name);let f={name:m.name,subPackages:[]},l=await e.readdir(s);for(let d of l)d!=="node_modules"&&(await e.stat(e.join(s,d))).isDirectory()&&f.subPackages.push(d);return r.push(f),f}catch(p){return console.error(`Error reading package.json at ${s}:`,p),null}}let i=e.join(t,"package.json"),a=await e.readFile(i);if(a!==null){let s=JSON.parse(a),u={...s.dependencies,...s.devDependencies};for(let p of Object.keys(u)){let m=e.join(t,"node_modules",p);await o(m)}if(s.workspaces)for(let p of s.workspaces){let m=await e.readdir(e.join(t,p));for(let f of m){let l=e.join(t,p,f);await o(l)}}}return r}var xu={"@builder.io/qwik-city":zr,next:Br,"@remix-run/react":Xr,react:so,"@angular/core":yo},hu={"@builder.io/qwik-city":de.qwik,next:de.next,"@remix-run/react":de.remix,react:de.react,"@angular/core":de.angular};async function Eu(e){if(!e.ts)throw new Error("createDevTools() requires a TypeScript instance passed to the 'ts' option");if((!e.frameworks||e.frameworks.length===0)&&(e.frameworks=await Je(e)),e.frameworks.length===0)throw new Error(`Supported Devtools framework for not found within ${e.getAppRootDir()}`);for(let t of e.frameworks){let r=xu[t.name];if(r){let n=await r(e);return{...n,exportRegistry:()=>Vo(e,n),importRegistry:i=>$o(e,n,i),framework:hu[t.name],findAllDependencies:async()=>await Ko(e,e.getRepoRootDir())}}}throw new Error(`Devtools framework not found for ${e.getAppRootDir()}, ${JSON.stringify(e.frameworks,null,2)}`)}function Mo(e){function t(f){if(typeof f!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(f))}function r(f,l){let d="",C=0,c=-1,D=0,g;for(let x=0;x<=f.length;++x){if(x<f.length)g=f.charCodeAt(x);else{if(g===47)break;g=47}if(g===47){if(!(c===x-1||D===1))if(c!==x-1&&D===2){if(d.length<2||C!==2||d.charCodeAt(d.length-1)!==46||d.charCodeAt(d.length-2)!==46){if(d.length>2){let S=d.lastIndexOf("/");if(S!==d.length-1){S===-1?(d="",C=0):(d=d.slice(0,S),C=d.length-1-d.lastIndexOf("/")),c=x,D=0;continue}}else if(d.length===2||d.length===1){d="",C=0,c=x,D=0;continue}}l&&(d.length>0?d+="/..":d="..",C=2)}else d.length>0?d+="/"+f.slice(c+1,x):d=f.slice(c+1,x),C=x-c-1;c=x,D=0}else g===46&&D!==-1?++D:D=-1}return d}let n=function(...l){let d="",C=!1;for(let c=l.length-1;c>=-1&&!C;c--){let D;c>=0?D=l[c]:e.cwd?D=e.cwd():D="/",t(D),D.length!==0&&(d=D+"/"+d,C=D.charCodeAt(0)===47)}return d=r(d,!C),C?d.length>0?"/"+d:"/":d.length>0?d:"."},o=function(l){if(t(l),l.length===0)return".";let d=l.charCodeAt(0)===47,C=l.charCodeAt(l.length-1)===47;return l=r(l,!d),l.length===0&&!d&&(l="."),l.length>0&&C&&(l+="/"),d?"/"+l:l};return{relative:function(l,d){if(t(l),t(d),l===d||(l=n(l),d=n(d),l===d))return"";let C=1;for(;C<l.length&&l.charCodeAt(C)===47;++C);let c=l.length,D=c-C,g=1;for(;g<d.length&&d.charCodeAt(g)===47;++g);let S=d.length-g,P=D<S?D:S,A=-1,E=0;for(;E<=P;++E){if(E===P){if(S>P){if(d.charCodeAt(g+E)===47)return d.slice(g+E+1);if(E===0)return d.slice(g+E)}else D>P&&(l.charCodeAt(C+E)===47?A=E:E===0&&(A=0));break}let z=l.charCodeAt(C+E),j=d.charCodeAt(g+E);if(z!==j)break;z===47&&(A=E)}let O="";for(E=C+A+1;E<=c;++E)(E===c||l.charCodeAt(E)===47)&&(O.length===0?O+="..":O+="/..");return O.length>0?O+d.slice(g+A):(g+=A,d.charCodeAt(g)===47&&++g,d.slice(g))},resolve:n,join:function(...l){if(l.length===0)return".";let d;for(let C=0;C<l.length;++C){let c=l[C];t(c),c.length>0&&(d===void 0?d=c:d+="/"+c)}return d===void 0?".":o(d)},isAbsolute:function(l){return t(l),l.length>0&&l.charCodeAt(0)===47},basename:function(l,d){if(d!==void 0&&typeof d!="string")throw new TypeError('"ext" argument must be a string');t(l);let C=0,c=-1,D=!0,g;if(d!==void 0&&d.length>0&&d.length<=l.length){if(d.length===l.length&&d===l)return"";let x=d.length-1,S=-1;for(g=l.length-1;g>=0;--g){let P=l.charCodeAt(g);if(P===47){if(!D){C=g+1;break}}else S===-1&&(D=!1,S=g+1),x>=0&&(P===d.charCodeAt(x)?--x===-1&&(c=g):(x=-1,c=S))}return C===c?c=S:c===-1&&(c=l.length),l.slice(C,c)}else{for(g=l.length-1;g>=0;--g)if(l.charCodeAt(g)===47){if(!D){C=g+1;break}}else c===-1&&(D=!1,c=g+1);return c===-1?"":l.slice(C,c)}},normalize:o,dirname:function(l){if(t(l),l.length===0)return".";let d=l.charCodeAt(0),C=d===47,c=-1,D=!0;for(let g=l.length-1;g>=1;--g)if(d=l.charCodeAt(g),d===47){if(!D){c=g;break}}else D=!1;return c===-1?C?"/":".":C&&c===1?"//":l.slice(0,c)},extname:function(l){t(l);let d=-1,C=0,c=-1,D=!0,g=0;for(let x=l.length-1;x>=0;--x){let S=l.charCodeAt(x);if(S===47){if(!D){C=x+1;break}continue}c===-1&&(D=!1,c=x+1),S===46?d===-1?d=x:g!==1&&(g=1):d!==-1&&(g=-1)}return d===-1||c===-1||g===0||g===1&&d===c-1&&d===C+1?"":l.slice(d,c)}}}async function Su(e){let t=e.getRepoRootDir?e.getRepoRootDir:()=>"/",r=e.cwd?e.cwd:()=>"/",n=Mo({cwd:r,...e}),o=new Map,i=c=>n.normalize(n.resolve(r(),c)),a=c=>{for(let[D]of o)if((D+"/").startsWith(c))return!0;return c===t()},s=c=>(c=i(c),o.has(c)?!0:a(c)),u=c=>{c=i(c);let D=c===t()?c:c+"/",g=D.split("/").length-1,x=[];for(let[S]of o)if(S.split("/").slice(0,g).join("/")+"/"===D){let E=S.split("/")[g];E&&!x.includes(E)&&x.push(E)}return x.sort()},p=c=>{c=i(c);let D=o.get(c);return typeof D=="string"?D:null},m=c=>(c=i(c),{isFile:()=>o.has(c),isDirectory:()=>!o.has(c)&&a(c)}),f=async c=>{if(typeof crypto<"u"){let x=new TextEncoder().encode(c),S=await crypto.subtle.digest("SHA-256",x);return Array.from(new Uint8Array(S)).map(P=>P.toString(16).padStart(2,"0")).join("")}let D=0;for(let g=0;g<c.length;g++){let x=c.charCodeAt(g);D=(D<<5)-D+x,D|=0}return Number(Math.abs(D)).toString(36)},l=new Set,d={getRepoRootDir:t,getAppRootDir:t,getCwdDir:r,cwd:r,exists:async c=>s(c),existsSync:s,readdir:async c=>u(c),readdirSync:u,readFile:async c=>p(c),readFileSync:p,stat:async c=>m(c),statSync:m,writeFile:async(c,D)=>{c=i(c),o.set(c,D);let g={path:c,basename:n.basename(c),dirname:n.dirname(c),extname:n.extname(c)};for(let x of l)await x(g)},hash:f,getDeviceId:async()=>typeof navigator<"u"?f(navigator.userAgent):"",getRepoInfo:async()=>({remoteUrl:"",defaultBranch:"",currentBranch:"",commit:""}),formatCode:async(c,D)=>D,on:(c,D)=>{c==="change"&&l.add(D)},off:(c,D)=>{c==="change"&&l.delete(D)},debug:(...c)=>{console.debug("[builder-dev-tools]",...c)},launchEditor:async()=>{},platform:()=>({runtime:"",os:""}),getFrameworks:()=>[],...n,...e,version:"0.0.0",sdkVersion:null,kind:null,magicast:void 0,spawnSync:void 0},C=await Je(d);return d.getFrameworks=e.getFrameworks?e.getFrameworks:()=>C,d}async function Uo(e,t,r){let n=I(e,r),o={content:r,filePath:t,fileName:e.basename(t),hasContentUpdates:!1};if(zo(e,n))return o;let a=ue(e,n,"cjs"),s=ue(e,n);if(a.length!==1&&s.length!==1)throw new Error(`Expected an export from ${t}`);if(s.length===1){let m=s[0];if(!m.isDefaultExport)throw new Error(`Expected a default export from ${t}`);let f=m.statement;if(!e.ts.isVariableStatement(f))throw new Error(`Unexpected export type in ${t}
917
917
  Found config content:
918
918
  ${r}
919
919
 
@@ -926,7 +926,7 @@ The config file must follow one of these formats:
926
926
 
927
927
  3. export default { /* config */ }
928
928
 
929
- Current export type: ${f.kind?e.ts.SyntaxKind[f.kind]:"none"}`);let c=m.statement;if(e.ts.isVariableStatement(c)){let d=[...c.declarationList.declarations];if(d.length!==1)throw new Error("Expected a single variable declaration");let C=d[0];if(!C.initializer)throw new Error("Expected an initializer on the declaration");let l=C.initializer;if(e.ts.isObjectLiteralExpression(l)||e.ts.isCallExpression(l)){let D="BuilderDevTools()",g=[...n.statements],x=g.indexOf(c);return g[x]=e.ts.factory.updateVariableStatement(c,c.modifiers,e.ts.factory.updateVariableDeclarationList(c.declarationList,[e.ts.factory.updateVariableDeclaration(C,C.name,C.exclamationToken,C.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(D),void 0,[l]))])),n=e.ts.factory.updateSourceFile(n,g),n=v(e,n,{defaultImport:"BuilderDevTools",importPath:"@builder.io/dev-tools/next"}),o.content=_(e,n),o.hasContentUpdates=!0,o}throw new Error(`Unexpected initializer on the variable statement in ${t}
929
+ Current export type: ${f.kind?e.ts.SyntaxKind[f.kind]:"none"}`);let l=m.statement;if(e.ts.isVariableStatement(l)){let d=[...l.declarationList.declarations];if(d.length!==1)throw new Error("Expected a single variable declaration");let C=d[0];if(!C.initializer)throw new Error("Expected an initializer on the declaration");let c=C.initializer;if(e.ts.isObjectLiteralExpression(c)||e.ts.isCallExpression(c)){let D="BuilderDevTools()",g=[...n.statements],x=g.indexOf(l);return g[x]=e.ts.factory.updateVariableStatement(l,l.modifiers,e.ts.factory.updateVariableDeclarationList(l.declarationList,[e.ts.factory.updateVariableDeclaration(C,C.name,C.exclamationToken,C.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(D),void 0,[c]))])),n=e.ts.factory.updateSourceFile(n,g),n=v(e,n,{defaultImport:"BuilderDevTools",importPath:"@builder.io/dev-tools/next"}),o.content=_(e,n),o.hasContentUpdates=!0,o}throw new Error(`Unexpected initializer on the variable statement in ${t}
930
930
  Found config content:
931
931
  ${r}
932
932
 
@@ -934,7 +934,7 @@ The config variable must be initialized with either:
934
934
  1. An object literal: const nextConfig = { /* config */ }
935
935
  2. A function call: const nextConfig = withSomePlugin({ /* config */ })
936
936
 
937
- Current initializer type: ${l?.kind?e.ts.SyntaxKind[l.kind]:"none"}
937
+ Current initializer type: ${c?.kind?e.ts.SyntaxKind[c.kind]:"none"}
938
938
  Expected types: ObjectLiteralExpression or CallExpression`)}}let u=a[0];if(!u.isDefaultExport)throw new Error(`Expected a default export from ${t}
939
939
  Found config content:
940
940
  ${r}
@@ -942,7 +942,7 @@ Detected export type: ${u?.statement.kind??"none"}
942
942
  Valid formats:
943
943
  1. module.exports = { ... }
944
944
  2. module.exports = (phase, config) => { return { ... } }
945
- 3. export default { ... }`);if(e.ts.isObjectLiteralExpression(u.node)||e.ts.isCallExpression(u.node)){let m=u.statement;if(!e.ts.isExpressionStatement(m))throw new Error("Expected an expression statement for the default export");let f=m.expression;if(!e.ts.isBinaryExpression(f))throw new Error("Expected a binary expression for the default export");let c=jn(e,n);n=c.sourceFile;let d=[...n.statements],C=d.indexOf(m);return d[C]=e.ts.factory.updateExpressionStatement(m,e.ts.factory.updateBinaryExpression(f,f.left,f.operatorToken,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(c.withFnVariableName),void 0,[f.right]))),n=e.ts.factory.updateSourceFile(n,d),o.content=_(e,n),o.hasContentUpdates=!0,o}let p=u.statement;if(e.ts.isVariableStatement(p)){let m=[...p.declarationList.declarations];if(m.length!==1)throw new Error("Expected a single variable declaration");let f=m[0];if(!f.initializer)throw new Error("Expected an initializer on the declaration");let c=f.initializer;if(e.ts.isObjectLiteralExpression(c)||e.ts.isCallExpression(c)){let d=jn(e,n);n=d.sourceFile;let C=[...n.statements],l=C.indexOf(p);return C[l]=e.ts.factory.updateVariableStatement(p,p.modifiers,e.ts.factory.updateVariableDeclarationList(p.declarationList,[e.ts.factory.updateVariableDeclaration(f,f.name,f.exclamationToken,f.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(d.withFnVariableName),void 0,[c]))])),n=e.ts.factory.updateSourceFile(n,C),o.content=_(e,n),o.hasContentUpdates=!0,o}throw new Error(`Unexpected initializer on the variable statement in ${t}
945
+ 3. export default { ... }`);if(e.ts.isObjectLiteralExpression(u.node)||e.ts.isCallExpression(u.node)){let m=u.statement;if(!e.ts.isExpressionStatement(m))throw new Error("Expected an expression statement for the default export");let f=m.expression;if(!e.ts.isBinaryExpression(f))throw new Error("Expected a binary expression for the default export");let l=Vn(e,n);n=l.sourceFile;let d=[...n.statements],C=d.indexOf(m);return d[C]=e.ts.factory.updateExpressionStatement(m,e.ts.factory.updateBinaryExpression(f,f.left,f.operatorToken,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(l.withFnVariableName),void 0,[f.right]))),n=e.ts.factory.updateSourceFile(n,d),o.content=_(e,n),o.hasContentUpdates=!0,o}let p=u.statement;if(e.ts.isVariableStatement(p)){let m=[...p.declarationList.declarations];if(m.length!==1)throw new Error("Expected a single variable declaration");let f=m[0];if(!f.initializer)throw new Error("Expected an initializer on the declaration");let l=f.initializer;if(e.ts.isObjectLiteralExpression(l)||e.ts.isCallExpression(l)){let d=Vn(e,n);n=d.sourceFile;let C=[...n.statements],c=C.indexOf(p);return C[c]=e.ts.factory.updateVariableStatement(p,p.modifiers,e.ts.factory.updateVariableDeclarationList(p.declarationList,[e.ts.factory.updateVariableDeclaration(f,f.name,f.exclamationToken,f.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(d.withFnVariableName),void 0,[l]))])),n=e.ts.factory.updateSourceFile(n,C),o.content=_(e,n),o.hasContentUpdates=!0,o}throw new Error(`Unexpected initializer on the variable statement in ${t}
946
946
  Found config content:
947
947
  ${r}
948
948
 
@@ -950,18 +950,18 @@ The config variable must be initialized with either:
950
950
  1. An object literal: const nextConfig = { /* config */ }
951
951
  2. A function call: const nextConfig = withSomePlugin({ /* config */ })
952
952
 
953
- Current initializer type: ${c.kind}
954
- Expected types: ${e.ts.SyntaxKind.ObjectLiteralExpression} or ${e.ts.SyntaxKind.CallExpression}`)}if(e.ts.isArrowFunction(u.node)){let m=u.node,f=u.statement;if(!e.ts.isExpressionStatement(f))throw new Error("Expected an expression statement for the default export");let c=f.expression;if(!e.ts.isBinaryExpression(c))throw new Error("Expected a binary expression for the default export");let C=u.node.body;if(!e.ts.isBlock(C))throw new Error("Expected a block body on the next config function");let l=[...C.statements],D=l.findIndex(A=>e.ts.isReturnStatement(A));if(D===-1)throw new Error("Expected a return statement on the next config function");let g=l[D],x=jn(e,n);n=x.sourceFile,l[D]=e.ts.factory.updateReturnStatement(g,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(x.withFnVariableName),void 0,[g.expression]));let S=[...n.statements],P=S.indexOf(f);return S[P]=e.ts.factory.updateExpressionStatement(f,e.ts.factory.updateBinaryExpression(c,c.left,c.operatorToken,e.ts.factory.updateArrowFunction(m,m.modifiers,m.typeParameters,m.parameters,m.type,m.equalsGreaterThanToken,e.ts.factory.updateBlock(C,l)))),n=e.ts.factory.updateSourceFile(n,S),o.content=_(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected export type")}function Mo(e,t){for(let r of t.statements)if(e.ts.isVariableStatement(r))for(let n of r.declarationList.declarations){if(!n.initializer||!e.ts.isCallExpression(n.initializer))continue;let o=n.initializer.expression;if(!e.ts.isCallExpression(o)||!e.ts.isIdentifier(o.expression)||o.expression.text!=="require")continue;let i=o.arguments[0];if(!(!i||!e.ts.isStringLiteral(i))&&i.text==="@builder.io/dev-tools/next"&&e.ts.isIdentifier(n.name))return n.name.text}return null}function jn(e,t){let r=Mo(e,t);return r||(r="withBuilderDevTools",t=e.ts.factory.updateSourceFile(t,[e.ts.factory.createVariableStatement(void 0,e.ts.factory.createVariableDeclarationList([e.ts.factory.createVariableDeclaration(r,void 0,void 0,e.ts.factory.createCallExpression(e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("require"),void 0,[e.ts.factory.createStringLiteral("@builder.io/dev-tools/next")]),void 0,[]))],e.ts.NodeFlags.Const)),...t.statements])),{withFnVariableName:r,sourceFile:t}}async function qo(e,t,r){let n=I(e,r),o={content:r,filePath:t,fileName:e.basename(t),hasContentUpdates:!1};if(Jo(e,n))return o;let a=ue(e,n,"cjs"),s=ue(e,n);if(a.length!==1&&s.length!==1)throw new Error(`Expected an export from ${t}`);let u=a[0];if(s.length===1){let m=s[0];if(!m.isDefaultExport)throw new Error(`Expected a default export from ${t}`);let f=m.statement;if(!e.ts.isExportAssignment(f))throw new Error(`Expected an export assignment from ${t}`);if(e.ts.isObjectLiteralExpression(f.expression)){let c="builderDevTools()",d=gu(e,f.expression);if(!d)return o;let C=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(c),void 0,[d]),l=[...n.statements],D=l.indexOf(f);return l[D]=e.ts.factory.updateExportAssignment(f,f.modifiers,C),n=e.ts.factory.updateSourceFile(n,l),n=v(e,n,{defaultImport:"builderDevTools",importPath:"@builder.io/dev-tools/remix"}),o.content=_(e,n),o.hasContentUpdates=!0,o}}if(!u.isDefaultExport)throw new Error(`Expected a default export from ${t}`);if(e.ts.isObjectLiteralExpression(u.node)||e.ts.isCallExpression(u.node)){let m=u.statement;if(!e.ts.isExpressionStatement(m))throw new Error("Expected an expression statement for the default export");let f=m.expression;if(!e.ts.isBinaryExpression(f))throw new Error("Expected a binary expression for the default export");let c=Uo(e,n);n=c.sourceFile;let d=[...n.statements],C=d.indexOf(m);return d[C]=e.ts.factory.updateExpressionStatement(m,e.ts.factory.updateBinaryExpression(f,f.left,f.operatorToken,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(c.withFnVariableName),void 0,[f.right]))),n=e.ts.factory.updateSourceFile(n,d),o.content=_(e,n),o.hasContentUpdates=!0,o}let p=u.statement;if(e.ts.isVariableStatement(p)){let m=[...p.declarationList.declarations];if(m.length!==1)throw new Error("Expected a single variable declaration");let f=m[0];if(!f.initializer)throw new Error("Expected an initializer on the declaration");let c=f.initializer;if(e.ts.isObjectLiteralExpression(c)||e.ts.isCallExpression(c)){let d=Uo(e,n);n=d.sourceFile;let C=[...n.statements],l=C.indexOf(p);return C[l]=e.ts.factory.updateVariableStatement(p,p.modifiers,e.ts.factory.updateVariableDeclarationList(p.declarationList,[e.ts.factory.updateVariableDeclaration(f,f.name,f.exclamationToken,f.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(d.withFnVariableName),void 0,[c]))])),n=e.ts.factory.updateSourceFile(n,C),o.content=_(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected initializer on the variable statement")}throw new Error("Unexpected export type")}function Jo(e,t){for(let r of t.statements)if(e.ts.isVariableStatement(r))for(let n of r.declarationList.declarations){if(!n.initializer||!e.ts.isCallExpression(n.initializer))continue;let o=n.initializer.expression;if(!e.ts.isCallExpression(o)||!e.ts.isIdentifier(o.expression)||o.expression.text!=="require")continue;let i=o.arguments[0];if(!(!i||!e.ts.isStringLiteral(i))&&i.text==="@builder.io/dev-tools/remix"&&e.ts.isIdentifier(n.name))return n.name.text}return null}function Uo(e,t){let r=Jo(e,t);return r||(r="withBuilderDevTools",t=e.ts.factory.updateSourceFile(t,[e.ts.factory.createVariableStatement(void 0,e.ts.factory.createVariableDeclarationList([e.ts.factory.createVariableDeclaration(r,void 0,void 0,e.ts.factory.createCallExpression(e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("require"),void 0,[e.ts.factory.createStringLiteral("@builder.io/dev-tools/remix")]),void 0,[]))],e.ts.NodeFlags.Const)),...t.statements])),{withFnVariableName:r,sourceFile:t}}function gu(e,t){let r=[...t.properties],n=r.findIndex(i=>N(e,i)==="serverDependenciesToBundle");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isArrayLiteralExpression(i.initializer)){let a=zo(e,i.initializer);if(a)return r[n]=e.ts.factory.updatePropertyAssignment(i,i.name,a),e.ts.factory.updateObjectLiteralExpression(t,r)}return null}let o=zo(e,e.ts.factory.createArrayLiteralExpression([],!0));return o?e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("serverDependenciesToBundle",o)]):null}function zo(e,t){return t.elements.some(n=>e.ts.isCallExpression(n)&&e.ts.isIdentifier(n.expression)?n.expression.text==="@builder.io/react":!1)?null:e.ts.factory.updateArrayLiteralExpression(t,[...t.elements,e.ts.factory.createIdentifier('"@builder.io/react"')])}async function Wo(e,t,r){let n=I(e,r),o=ue(e,n);if(o.length!==1)throw new Error(`Expected an export from ${t}`);let i=o[0];if(!i.isDefaultExport)throw new Error(`Expected a default export from ${t}`);let a=i.statement;if(!e.ts.isExportAssignment(a))throw new Error(`Expected an export assignment from ${t}`);let s={content:r,filePath:t,fileName:e.basename(t),hasContentUpdates:!1};if(e.ts.isCallExpression(i.node)&&e.ts.isIdentifier(i.node.expression)&&i.node.expression.text==="defineConfig"){let u=[...i.node.arguments];if(u.length===0)throw new Error("Expected an argument in defineConfig()");let p=u[0];if(e.ts.isArrowFunction(p)){let m=Du(e,p);if(!m)return s;u[0]=e.ts.factory.updateArrowFunction(p,p.modifiers,p.typeParameters,p.parameters,p.type,p.equalsGreaterThanToken,m);let f=[...n.statements],c=f.indexOf(a);return f[c]=e.ts.factory.updateExportAssignment(a,void 0,e.ts.factory.updateCallExpression(i.node,i.node.expression,i.node.typeArguments,u)),n=e.ts.factory.updateSourceFile(n,f),n=v(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=_(e,n),s.hasContentUpdates=!0,s}if(e.ts.isObjectLiteralExpression(p)){let m=Vn(e,p);if(!m)return s;let f=[...n.statements],c=f.indexOf(a);return f[c]=e.ts.factory.updateExportAssignment(a,void 0,e.ts.factory.updateCallExpression(i.node,i.node.expression,i.node.typeArguments,[m])),n=e.ts.factory.updateSourceFile(n,f),n=v(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=_(e,n),s.hasContentUpdates=!0,s}throw new Error("Unsupported argument in defineConfig()")}if(e.ts.isObjectLiteralExpression(a.expression)){let u=Vn(e,a.expression);if(!u)return s;let p=[...n.statements],m=p.indexOf(a);return p[m]=e.ts.factory.updateExportAssignment(a,a.modifiers,u),n=e.ts.factory.updateSourceFile(n,p),n=v(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=_(e,n),s.hasContentUpdates=!0,s}throw new Error(`Unable to parse ${t}`)}function Du(e,t){let r=t.body;if(!e.ts.isBlock(r))return null;let n=[...r.statements],o=n.findIndex(s=>e.ts.isReturnStatement(s));if(o===-1){let s=e.ts.factory.createReturnStatement(e.ts.factory.createObjectLiteralExpression());n.push(s),o=n.length-1}let i=n[o];if(!i.expression||!e.ts.isObjectLiteralExpression(i.expression))return null;let a=Vn(e,i.expression);return a?(n[o]=e.ts.factory.updateReturnStatement(i,a),e.ts.factory.updateBlock(r,n)):null}function Vn(e,t){if(hu(e)){let i=Cu(e,t);i&&(t=i)}let r=[...t.properties],n=r.findIndex(i=>N(e,i)==="plugins");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isArrayLiteralExpression(i.initializer)){let a=Qo(e,i.initializer);if(a)return r[n]=e.ts.factory.updatePropertyAssignment(i,i.name,a),e.ts.factory.updateObjectLiteralExpression(t,r)}return null}let o=Qo(e,e.ts.factory.createArrayLiteralExpression([],!0));return o?e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("plugins",o)]):null}function Qo(e,t){return t.elements.some(n=>e.ts.isCallExpression(n)&&e.ts.isIdentifier(n.expression)?n.expression.text==="builderDevTools":!1)?null:e.ts.factory.updateArrayLiteralExpression(t,[...t.elements,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("builderDevTools"),void 0,[])])}function Cu(e,t){let r=[...t.properties],n=r.findIndex(i=>N(e,i)==="ssr");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isObjectLiteralExpression(i.initializer)){let a=xu(e,i.initializer);if(a)return r[n]=e.ts.factory.updatePropertyAssignment(i,i.name,a),e.ts.factory.updateObjectLiteralExpression(t,r)}return null}let o=$n(e,e.ts.factory.createArrayLiteralExpression([],!0));if(o){let i=e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("noExternal",o)]);return e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("ssr",i)])}return null}function xu(e,t){let r=[...t.properties],n=r.findIndex(i=>N(e,i)==="noExternal");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isArrayLiteralExpression(i.initializer)){let a=$n(e,i.initializer);if(a)return r[n]=e.ts.factory.updatePropertyAssignment(i,i.name,a),e.ts.factory.updateObjectLiteralExpression(t,r)}return null}let o=$n(e,e.ts.factory.createArrayLiteralExpression([],!0));if(o)return e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("noExternal",o)])}function $n(e,t){return t.elements.some(n=>e.ts.isStringLiteral(n)?n.text==="@builder.io/react":!1)?null:e.ts.factory.updateArrayLiteralExpression(t,[...t.elements,e.ts.factory.createStringLiteral("@builder.io/react")])}function hu(e){return e.getFrameworks().some(t=>t.name==="@remix-run/react")}async function Yo(e,t,r){return e.debug("Webpack config updates are currently in progress..."),{content:r,fileName:e.basename(t),filePath:t,hasContentUpdates:!0}}async function Ho(e,t,r){e.debug("Angular config updates are currently in progress...");try{await Au(e)}catch{console.error("Unable to update package.json.")}return await Eu(e),{content:r,fileName:e.basename(t),filePath:t,hasContentUpdates:!0}}async function Eu(e){let t=e.getAppRootDir(),r=e.join(t,"src");if(!await e.exists(r))throw new Error(`Could not find src directory. Searched for src in "${e.getAppRootDir()}".`);let n=e.join(r,"main.ts"),o=await e.readFile(n);if(!o)throw new Error(`Unable to read main.ts at ${n}`);let i=await Su(e,o);await e.writeFile(n,i)}async function Su(e,t){let r=t,n=I(e,t),o=!1;for(let a of n.statements)if(e.ts.isExpressionStatement(a)&&e.ts.isCallExpression(a.expression)&&e.ts.isPropertyAccessExpression(a.expression.expression)&&e.ts.isCallExpression(a.expression.expression.expression)&&e.ts.isIdentifier(a.expression.expression.expression.expression)&&a.expression.expression.expression.expression.text==="builderDevTools"){o=!0;break}n=v(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/angular"});let i=`
953
+ Current initializer type: ${l.kind}
954
+ Expected types: ${e.ts.SyntaxKind.ObjectLiteralExpression} or ${e.ts.SyntaxKind.CallExpression}`)}if(e.ts.isArrowFunction(u.node)){let m=u.node,f=u.statement;if(!e.ts.isExpressionStatement(f))throw new Error("Expected an expression statement for the default export");let l=f.expression;if(!e.ts.isBinaryExpression(l))throw new Error("Expected a binary expression for the default export");let C=u.node.body;if(!e.ts.isBlock(C))throw new Error("Expected a block body on the next config function");let c=[...C.statements],D=c.findIndex(A=>e.ts.isReturnStatement(A));if(D===-1)throw new Error("Expected a return statement on the next config function");let g=c[D],x=Vn(e,n);n=x.sourceFile,c[D]=e.ts.factory.updateReturnStatement(g,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(x.withFnVariableName),void 0,[g.expression]));let S=[...n.statements],P=S.indexOf(f);return S[P]=e.ts.factory.updateExpressionStatement(f,e.ts.factory.updateBinaryExpression(l,l.left,l.operatorToken,e.ts.factory.updateArrowFunction(m,m.modifiers,m.typeParameters,m.parameters,m.type,m.equalsGreaterThanToken,e.ts.factory.updateBlock(C,c)))),n=e.ts.factory.updateSourceFile(n,S),o.content=_(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected export type")}function zo(e,t){for(let r of t.statements)if(e.ts.isVariableStatement(r))for(let n of r.declarationList.declarations){if(!n.initializer||!e.ts.isCallExpression(n.initializer))continue;let o=n.initializer.expression;if(!e.ts.isCallExpression(o)||!e.ts.isIdentifier(o.expression)||o.expression.text!=="require")continue;let i=o.arguments[0];if(!(!i||!e.ts.isStringLiteral(i))&&i.text==="@builder.io/dev-tools/next"&&e.ts.isIdentifier(n.name))return n.name.text}return null}function Vn(e,t){let r=zo(e,t);return r||(r="withBuilderDevTools",t=e.ts.factory.updateSourceFile(t,[e.ts.factory.createVariableStatement(void 0,e.ts.factory.createVariableDeclarationList([e.ts.factory.createVariableDeclaration(r,void 0,void 0,e.ts.factory.createCallExpression(e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("require"),void 0,[e.ts.factory.createStringLiteral("@builder.io/dev-tools/next")]),void 0,[]))],e.ts.NodeFlags.Const)),...t.statements])),{withFnVariableName:r,sourceFile:t}}async function Qo(e,t,r){let n=I(e,r),o={content:r,filePath:t,fileName:e.basename(t),hasContentUpdates:!1};if(Wo(e,n))return o;let a=ue(e,n,"cjs"),s=ue(e,n);if(a.length!==1&&s.length!==1)throw new Error(`Expected an export from ${t}`);let u=a[0];if(s.length===1){let m=s[0];if(!m.isDefaultExport)throw new Error(`Expected a default export from ${t}`);let f=m.statement;if(!e.ts.isExportAssignment(f))throw new Error(`Expected an export assignment from ${t}`);if(e.ts.isObjectLiteralExpression(f.expression)){let l="builderDevTools()",d=Au(e,f.expression);if(!d)return o;let C=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(l),void 0,[d]),c=[...n.statements],D=c.indexOf(f);return c[D]=e.ts.factory.updateExportAssignment(f,f.modifiers,C),n=e.ts.factory.updateSourceFile(n,c),n=v(e,n,{defaultImport:"builderDevTools",importPath:"@builder.io/dev-tools/remix"}),o.content=_(e,n),o.hasContentUpdates=!0,o}}if(!u.isDefaultExport)throw new Error(`Expected a default export from ${t}`);if(e.ts.isObjectLiteralExpression(u.node)||e.ts.isCallExpression(u.node)){let m=u.statement;if(!e.ts.isExpressionStatement(m))throw new Error("Expected an expression statement for the default export");let f=m.expression;if(!e.ts.isBinaryExpression(f))throw new Error("Expected a binary expression for the default export");let l=qo(e,n);n=l.sourceFile;let d=[...n.statements],C=d.indexOf(m);return d[C]=e.ts.factory.updateExpressionStatement(m,e.ts.factory.updateBinaryExpression(f,f.left,f.operatorToken,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(l.withFnVariableName),void 0,[f.right]))),n=e.ts.factory.updateSourceFile(n,d),o.content=_(e,n),o.hasContentUpdates=!0,o}let p=u.statement;if(e.ts.isVariableStatement(p)){let m=[...p.declarationList.declarations];if(m.length!==1)throw new Error("Expected a single variable declaration");let f=m[0];if(!f.initializer)throw new Error("Expected an initializer on the declaration");let l=f.initializer;if(e.ts.isObjectLiteralExpression(l)||e.ts.isCallExpression(l)){let d=qo(e,n);n=d.sourceFile;let C=[...n.statements],c=C.indexOf(p);return C[c]=e.ts.factory.updateVariableStatement(p,p.modifiers,e.ts.factory.updateVariableDeclarationList(p.declarationList,[e.ts.factory.updateVariableDeclaration(f,f.name,f.exclamationToken,f.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(d.withFnVariableName),void 0,[l]))])),n=e.ts.factory.updateSourceFile(n,C),o.content=_(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected initializer on the variable statement")}throw new Error("Unexpected export type")}function Wo(e,t){for(let r of t.statements)if(e.ts.isVariableStatement(r))for(let n of r.declarationList.declarations){if(!n.initializer||!e.ts.isCallExpression(n.initializer))continue;let o=n.initializer.expression;if(!e.ts.isCallExpression(o)||!e.ts.isIdentifier(o.expression)||o.expression.text!=="require")continue;let i=o.arguments[0];if(!(!i||!e.ts.isStringLiteral(i))&&i.text==="@builder.io/dev-tools/remix"&&e.ts.isIdentifier(n.name))return n.name.text}return null}function qo(e,t){let r=Wo(e,t);return r||(r="withBuilderDevTools",t=e.ts.factory.updateSourceFile(t,[e.ts.factory.createVariableStatement(void 0,e.ts.factory.createVariableDeclarationList([e.ts.factory.createVariableDeclaration(r,void 0,void 0,e.ts.factory.createCallExpression(e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("require"),void 0,[e.ts.factory.createStringLiteral("@builder.io/dev-tools/remix")]),void 0,[]))],e.ts.NodeFlags.Const)),...t.statements])),{withFnVariableName:r,sourceFile:t}}function Au(e,t){let r=[...t.properties],n=r.findIndex(i=>N(e,i)==="serverDependenciesToBundle");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isArrayLiteralExpression(i.initializer)){let a=Jo(e,i.initializer);if(a)return r[n]=e.ts.factory.updatePropertyAssignment(i,i.name,a),e.ts.factory.updateObjectLiteralExpression(t,r)}return null}let o=Jo(e,e.ts.factory.createArrayLiteralExpression([],!0));return o?e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("serverDependenciesToBundle",o)]):null}function Jo(e,t){return t.elements.some(n=>e.ts.isCallExpression(n)&&e.ts.isIdentifier(n.expression)?n.expression.text==="@builder.io/react":!1)?null:e.ts.factory.updateArrayLiteralExpression(t,[...t.elements,e.ts.factory.createIdentifier('"@builder.io/react"')])}async function Go(e,t,r){let n=I(e,r),o=ue(e,n);if(o.length!==1)throw new Error(`Expected an export from ${t}`);let i=o[0];if(!i.isDefaultExport)throw new Error(`Expected a default export from ${t}`);let a=i.statement;if(!e.ts.isExportAssignment(a))throw new Error(`Expected an export assignment from ${t}`);let s={content:r,filePath:t,fileName:e.basename(t),hasContentUpdates:!1};if(e.ts.isCallExpression(i.node)&&e.ts.isIdentifier(i.node.expression)&&i.node.expression.text==="defineConfig"){let u=[...i.node.arguments];if(u.length===0)throw new Error("Expected an argument in defineConfig()");let p=u[0];if(e.ts.isArrowFunction(p)){let m=Fu(e,p);if(!m)return s;u[0]=e.ts.factory.updateArrowFunction(p,p.modifiers,p.typeParameters,p.parameters,p.type,p.equalsGreaterThanToken,m);let f=[...n.statements],l=f.indexOf(a);return f[l]=e.ts.factory.updateExportAssignment(a,void 0,e.ts.factory.updateCallExpression(i.node,i.node.expression,i.node.typeArguments,u)),n=e.ts.factory.updateSourceFile(n,f),n=v(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=_(e,n),s.hasContentUpdates=!0,s}if(e.ts.isObjectLiteralExpression(p)){let m=$n(e,p);if(!m)return s;let f=[...n.statements],l=f.indexOf(a);return f[l]=e.ts.factory.updateExportAssignment(a,void 0,e.ts.factory.updateCallExpression(i.node,i.node.expression,i.node.typeArguments,[m])),n=e.ts.factory.updateSourceFile(n,f),n=v(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=_(e,n),s.hasContentUpdates=!0,s}throw new Error("Unsupported argument in defineConfig()")}if(e.ts.isObjectLiteralExpression(a.expression)){let u=$n(e,a.expression);if(!u)return s;let p=[...n.statements],m=p.indexOf(a);return p[m]=e.ts.factory.updateExportAssignment(a,a.modifiers,u),n=e.ts.factory.updateSourceFile(n,p),n=v(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=_(e,n),s.hasContentUpdates=!0,s}throw new Error(`Unable to parse ${t}`)}function Fu(e,t){let r=t.body;if(!e.ts.isBlock(r))return null;let n=[...r.statements],o=n.findIndex(s=>e.ts.isReturnStatement(s));if(o===-1){let s=e.ts.factory.createReturnStatement(e.ts.factory.createObjectLiteralExpression());n.push(s),o=n.length-1}let i=n[o];if(!i.expression||!e.ts.isObjectLiteralExpression(i.expression))return null;let a=$n(e,i.expression);return a?(n[o]=e.ts.factory.updateReturnStatement(i,a),e.ts.factory.updateBlock(r,n)):null}function $n(e,t){if(wu(e)){let i=Pu(e,t);i&&(t=i)}let r=[...t.properties],n=r.findIndex(i=>N(e,i)==="plugins");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isArrayLiteralExpression(i.initializer)){let a=Yo(e,i.initializer);if(a)return r[n]=e.ts.factory.updatePropertyAssignment(i,i.name,a),e.ts.factory.updateObjectLiteralExpression(t,r)}return null}let o=Yo(e,e.ts.factory.createArrayLiteralExpression([],!0));return o?e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("plugins",o)]):null}function Yo(e,t){return t.elements.some(n=>e.ts.isCallExpression(n)&&e.ts.isIdentifier(n.expression)?n.expression.text==="builderDevTools":!1)?null:e.ts.factory.updateArrayLiteralExpression(t,[...t.elements,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("builderDevTools"),void 0,[])])}function Pu(e,t){let r=[...t.properties],n=r.findIndex(i=>N(e,i)==="ssr");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isObjectLiteralExpression(i.initializer)){let a=yu(e,i.initializer);if(a)return r[n]=e.ts.factory.updatePropertyAssignment(i,i.name,a),e.ts.factory.updateObjectLiteralExpression(t,r)}return null}let o=Kn(e,e.ts.factory.createArrayLiteralExpression([],!0));if(o){let i=e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("noExternal",o)]);return e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("ssr",i)])}return null}function yu(e,t){let r=[...t.properties],n=r.findIndex(i=>N(e,i)==="noExternal");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isArrayLiteralExpression(i.initializer)){let a=Kn(e,i.initializer);if(a)return r[n]=e.ts.factory.updatePropertyAssignment(i,i.name,a),e.ts.factory.updateObjectLiteralExpression(t,r)}return null}let o=Kn(e,e.ts.factory.createArrayLiteralExpression([],!0));if(o)return e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("noExternal",o)])}function Kn(e,t){return t.elements.some(n=>e.ts.isStringLiteral(n)?n.text==="@builder.io/react":!1)?null:e.ts.factory.updateArrayLiteralExpression(t,[...t.elements,e.ts.factory.createStringLiteral("@builder.io/react")])}function wu(e){return e.getFrameworks().some(t=>t.name==="@remix-run/react")}async function Ho(e,t,r){return e.debug("Webpack config updates are currently in progress..."),{content:r,fileName:e.basename(t),filePath:t,hasContentUpdates:!0}}async function Zo(e,t,r){e.debug("Angular config updates are currently in progress...");try{await vu(e)}catch{console.error("Unable to update package.json.")}return await Tu(e),{content:r,fileName:e.basename(t),filePath:t,hasContentUpdates:!0}}async function Tu(e){let t=e.getAppRootDir(),r=e.join(t,"src");if(!await e.exists(r))throw new Error(`Could not find src directory. Searched for src in "${e.getAppRootDir()}".`);let n=e.join(r,"main.ts"),o=await e.readFile(n);if(!o)throw new Error(`Unable to read main.ts at ${n}`);let i=await bu(e,o);await e.writeFile(n,i)}async function bu(e,t){let r=t,n=I(e,t),o=!1;for(let a of n.statements)if(e.ts.isExpressionStatement(a)&&e.ts.isCallExpression(a.expression)&&e.ts.isPropertyAccessExpression(a.expression.expression)&&e.ts.isCallExpression(a.expression.expression.expression)&&e.ts.isIdentifier(a.expression.expression.expression.expression)&&a.expression.expression.expression.expression.text==="builderDevTools"){o=!0;break}n=v(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/angular"});let i=`
955
955
  builderDevTools().catch((err: Error) =>
956
956
  console.error("Error starting dev tools:", err)
957
- );`;return r=_(e,n),o||(r+=i),r}async function Au(e){let t=e.getRepoRootDir(),r=e.join(t,"package.json"),n=await e.readFile(r);if(!n)throw new Error(`Unable to read package.json at ${r}`);let o=Fu(e,n);o&&await e.writeFile(r,o)}function Fu(e,t){let r=JSON.parse(t);if(r.scripts=r.scripts||{},r.scripts[Go])return;let n=r.scripts.start||r.scripts.dev||"ng serve";if(!n.includes("concurrently")){let o=e.getRepoRootDir(),i=e.getAppRootDir(),a=o===i?"":` --cwd ${e.relative(o,i)}`,s=`concurrently "${n}" "${Pu}${a}"`;r.scripts.start=s,r.scripts[Go]=s}return JSON.stringify(r,null,2)+`
958
- `}var Go="builder-dev",Pu="npx builder-dev-tools";var Zo=[{id:"next",configFileNames:["next.config.ts","next.config.js","next.config.mjs"],ensureConfigPlugin:Ko},{id:"vite",configFileNames:["vite.config.ts","vite.config.js"],ensureConfigPlugin:Wo},{id:"remix",configFileNames:["remix.config.ts","remix.config.js"],ensureConfigPlugin:qo},{id:"webpack",configFileNames:["webpack.config.ts","webpack.config.js"],ensureConfigPlugin:Yo},{id:"angular",configFileNames:["angular.json","project.json"],ensureConfigPlugin:Ho}];async function ei(e){let t=e.resolve("/");for(let n of Zo)for(let o of n.configFileNames){let i=e.getAppRootDir();for(let a=0;a<10;a++)try{let s=e.join(i,o),u=e.readFileSync(s);if(typeof u=="string")return{id:n.id,filePath:s,content:u};if(i===t)break;i=e.dirname(i)}catch(s){if((s?.message??"").includes("Invalid path"))break;throw s}}if((await qe(e)).some(n=>n.name==="next")){let n=e.join(e.getAppRootDir(),"next.config.js");return await e.writeFile(n,Xo),{id:"next",filePath:n,content:Xo}}return null}async function yu(e){let t=await ei(e);if(!t)throw new Error("Unable to find config file, such as next.config.js or vite.config.js.");let n=await Zo.find(o=>o.id===t.id).ensureConfigPlugin(e,t.filePath,t.content);return n.hasContentUpdates&&(n.content=pe(n.content),n.content=await e.formatCode(n.filePath,n.content),await e.writeFile(t.filePath,n.content)),n}var Xo=`
957
+ );`;return r=_(e,n),o||(r+=i),r}async function vu(e){let t=e.getRepoRootDir(),r=e.join(t,"package.json"),n=await e.readFile(r);if(!n)throw new Error(`Unable to read package.json at ${r}`);let o=Iu(e,n);o&&await e.writeFile(r,o)}function Iu(e,t){let r=JSON.parse(t);if(r.scripts=r.scripts||{},r.scripts[Xo])return;let n=r.scripts.start||r.scripts.dev||"ng serve";if(!n.includes("concurrently")){let o=e.getRepoRootDir(),i=e.getAppRootDir(),a=o===i?"":` --cwd ${e.relative(o,i)}`,s=`concurrently "${n}" "${Ru}${a}"`;r.scripts.start=s,r.scripts[Xo]=s}return JSON.stringify(r,null,2)+`
958
+ `}var Xo="builder-dev",Ru="npx builder-dev-tools";var ti=[{id:"next",configFileNames:["next.config.ts","next.config.js","next.config.mjs"],ensureConfigPlugin:Uo},{id:"vite",configFileNames:["vite.config.ts","vite.config.js"],ensureConfigPlugin:Go},{id:"remix",configFileNames:["remix.config.ts","remix.config.js"],ensureConfigPlugin:Qo},{id:"webpack",configFileNames:["webpack.config.ts","webpack.config.js"],ensureConfigPlugin:Ho},{id:"angular",configFileNames:["angular.json","project.json"],ensureConfigPlugin:Zo}];async function ni(e){let t=e.resolve("/");for(let n of ti)for(let o of n.configFileNames){let i=e.getAppRootDir();for(let a=0;a<10;a++)try{let s=e.join(i,o),u=e.readFileSync(s);if(typeof u=="string")return{id:n.id,filePath:s,content:u};if(i===t)break;i=e.dirname(i)}catch(s){if((s?.message??"").includes("Invalid path"))break;throw s}}if((await Je(e)).some(n=>n.name==="next")){let n=e.join(e.getAppRootDir(),"next.config.js");return await e.writeFile(n,ei),{id:"next",filePath:n,content:ei}}return null}async function Nu(e){let t=await ni(e);if(!t)throw new Error("Unable to find config file, such as next.config.js or vite.config.js.");let n=await ti.find(o=>o.id===t.id).ensureConfigPlugin(e,t.filePath,t.content);return n.hasContentUpdates&&(n.content=pe(n.content),n.content=await e.formatCode(n.filePath,n.content),await e.writeFile(t.filePath,n.content)),n}var ei=`
959
959
  /** @type {import('next').NextConfig} */
960
960
  const nextConfig = {
961
961
  }
962
962
 
963
963
  module.exports = nextConfig
964
- `.trimStart();var ti="/~builder-dev-tools.js";function wu(e){try{if(typeof e!="string"||e.trim().length===0)return console.error("Missing devtool server url"),"";let t=new URL(ti,e);t.searchParams.set("v",Gt);let r=JSON.stringify(Gt),n=`/* Builder Devtools v${Gt} */
964
+ `.trimStart();var ri="/~builder-dev-tools.js";function Bu(e){try{if(typeof e!="string"||e.trim().length===0)return console.error("Missing devtool server url"),"";let t=new URL(ri,e);t.searchParams.set("v",Ht);let r=JSON.stringify(Ht),n=`/* Builder Devtools v${Ht} */
965
965
  `;return n+=`(() => {
966
966
  `,n+=` if (typeof document !== "undefined") {
967
967
  `,n+=` let devToolsScript = document.head.querySelector("script[data-builder-dev-tools]");
@@ -974,4 +974,4 @@ module.exports = nextConfig
974
974
  `,n+=` }
975
975
  `,n+=` }
976
976
  `,n+=`})();
977
- `,n}catch(t){return console.error(`Failed to create devtools client script: ${t.message||t}`),""}}var Gt="1.1.41";export{fu as createDevTools,du as createDevToolsSys,qe as detectFrameworks,Gn as detectFrameworksFromPackageJson,yu as ensureConfigPlugin,ei as findBuildToolConfig,wu as getClientScript,Xn as parseDotEnvContent,Gt as version};
977
+ `,n}catch(t){return console.error(`Failed to create devtools client script: ${t.message||t}`),""}}var Ht="1.1.42";export{Eu as createDevTools,Su as createDevToolsSys,Je as detectFrameworks,Hn as detectFrameworksFromPackageJson,Nu as ensureConfigPlugin,ni as findBuildToolConfig,Bu as getClientScript,Zn as parseDotEnvContent,Ht as version};