@builder.io/dev-tools 0.2.23 → 0.2.24

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.cjs CHANGED
@@ -1,25 +1,25 @@
1
- "use strict";var pr=Object.create;var Ae=Object.defineProperty;var ur=Object.getOwnPropertyDescriptor;var fr=Object.getOwnPropertyNames;var mr=Object.getPrototypeOf,dr=Object.prototype.hasOwnProperty;var q=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),gr=(e,t)=>{for(var r in t)Ae(e,r,{get:t[r],enumerable:!0})},Lt=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of fr(t))!dr.call(e,o)&&o!==r&&Ae(e,o,{get:()=>t[o],enumerable:!(n=ur(t,o))||n.enumerable});return e};var xr=(e,t,r)=>(r=e!=null?pr(mr(e)):{},Lt(t||!e||!e.__esModule?Ae(r,"default",{value:e,enumerable:!0}):r,e)),hr=e=>Lt(Ae({},"__esModule",{value:!0}),e);var ht=q(Je=>{"use strict";Object.defineProperty(Je,"__esModule",{value:!0});function Fn(e){return Object.prototype.toString.call(e)}Je.getType=Fn;function Jo(e){throw new TypeError("unsupported data type: "+Fn(e))}Je.throwUnknownDataType=Jo});var Tt=q(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});var M="";for(let e=0;e<10;e++){let t=String.fromCharCode(48+e);M+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(65+e);M+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(97+e);M+=t}var he=M.length,St={};for(let e=0;e<he;e++){let t=M[e];St[t]=e}function wt(e){let t=0,r=1;for(let n=e.length-1;n>=0;n--){let o=e[n],i=St[o];i*=r,t+=i,r*=he}return t}K.s_to_int=wt;function An(e){let t=BigInt(0),r=BigInt(1),n=BigInt(he);for(let o=e.length-1;o>=0;o--){let i=e[o],a=BigInt(St[i]);a*=r,t+=a,r*=n}return t}K.s_to_big_int=An;function yt(e){if(e===0)return M[0];let t=[];for(;e!==0;){let r=e%he,n=M[r];t.push(n),e-=r,e/=he}return t.reverse().join("")}K.int_to_s=yt;function Ln(e){let t=BigInt(0),r=BigInt(he);if(e===t)return M[0];let n=[];for(;e!==t;){let o=e%r,i=M[Number(o)];n.push(i),e-=o,e/=r}return n.reverse().join("")}K.big_int_to_s=Ln;function He(e){return e.split("").reverse().join("")}function kn(e){if(e<0)return"-"+kn(-e);let[t,r]=e.toString().split(".");if(!r)return yt(e);let n;r&&([r,n]=r.split("e")),t=We(t),r=He(r),r=We(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=He(n),n=We(n),o+=n}return o}K.num_to_s=kn;function We(e){let t=+e;return t.toString()===e?yt(t):":"+Ln(BigInt(e))}K.int_str_to_s=We;function Ct(e){return e[0]===":"?An(e.substring(1)).toString():wt(e).toString()}function On(e){if(e[0]==="-")return-On(e.substr(1));let[t,r,n]=e.split(".");if(!r)return wt(t);t=Ct(t),r=Ct(r),r=He(r);let o=t+"."+r;if(n){o+="e";let i=!1;n[0]==="-"&&(i=!0,n=n.slice(1)),n=Ct(n),n=He(n),o+=i?-n:+n}return+o}K.s_to_num=On});var Dt=q(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});var Et=Tt();function Wo(e){return"n|"+Et.num_to_s(e)}Q.encodeNum=Wo;function Ho(e){return e=e.replace("n|",""),Et.s_to_num(e)}Q.decodeNum=Ho;function Yo(e){return typeof e=="number"?e:Et.s_to_int(e)}Q.decodeKey=Yo;function Go(e){return e?"b|T":"b|F"}Q.encodeBool=Go;function Xo(e){switch(e){case"b|T":return!0;case"b|F":return!1}return!!e}Q.decodeBool=Xo;function Zo(e){switch(e[0]+e[1]){case"b|":case"o|":case"n|":case"a|":case"s|":e="s|"+e}return e}Q.encodeStr=Zo;function ei(e){return e[0]+e[1]==="s|"?e.substr(2):e}Q.decodeStr=ei});var jn=q(vt=>{"use strict";Object.defineProperty(vt,"__esModule",{value:!0});vt.config={sort_key:!1}});var Pt=q(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});var ti=jn(),ni=ht(),bt=Dt(),ri=Tt();function oi(e){return e.store.toArray()}le.memToValues=oi;function _n(){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}}}le.makeInMemoryStore=_n;function Bn(){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}}}le.makeInMemoryCache=Bn;function ii(){return{store:_n(),cache:Bn(),keyCount:0}}le.makeInMemoryMemory=ii;function se(e,t){if(e.cache.hasValue(t))return e.cache.getValue(t);let r=e.keyCount++,n=ri.num_to_s(r);return e.store.add(t),e.cache.setValue(t,n),n}function ai(e,t){ti.config.sort_key&&t.sort();let r=t.join(",");if(e.cache.hasSchema(r))return e.cache.getSchema(r);let n=Ie(e,t,void 0);return e.cache.setSchema(r,n),n}function Ie(e,t,r){if(t===null)return"";switch(typeof t){case"undefined":if(Array.isArray(r))return Ie(e,null,r);break;case"object":if(t===null)return se(e,null);if(Array.isArray(t)){let n="a";for(let o=0;o<t.length;o++){let i=t[o],a=i===null?"_":Ie(e,i,t);n+="|"+a}return n==="a"&&(n="a|"),se(e,n)}else{let n=Object.keys(t);if(n.length===0)return se(e,"o|");let o="o",i=ai(e,n);o+="|"+i;for(let a of n){let s=t[a],l=Ie(e,s,t);o+="|"+l}return se(e,o)}case"boolean":return se(e,bt.encodeBool(t));case"number":return se(e,bt.encodeNum(t));case"string":return se(e,bt.encodeStr(t))}return ni.throwUnknownDataType(t)}le.addValue=Ie});var Nt=q(Re=>{"use strict";Object.defineProperty(Re,"__esModule",{value:!0});var si=ht(),Ye=Dt(),It=Pt();function li(e){let t=It.makeInMemoryMemory(),r=It.addValue(t,e,void 0);return[It.memToValues(t),r]}Re.compress=li;function ci(e,t){if(t==="o|")return{};let r={},n=t.split("|"),o=n[1],i=Ne(e,o),a=n.length;a-2===1&&!Array.isArray(i)&&(i=[i]);for(let s=2;s<a;s++){let l=i[s-2],m=n[s];m=Ne(e,m),r[l]=m}return r}function pi(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=Ne(e,a),o[i]=a}return o}function Ne(e,t){if(t===""||t==="_")return null;let r=Ye.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 Ye.decodeBool(n);case"o|":return ci(e,n);case"n|":return Ye.decodeNum(n);case"a|":return pi(e,n);default:return Ye.decodeStr(n)}}return si.throwUnknownDataType(n)}Re.decode=Ne;function ui(e){let[t,r]=e;return Ne(t,r)}Re.decompress=ui});var Vn=q(Ge=>{"use strict";Object.defineProperty(Ge,"__esModule",{value:!0});function fi(e){for(let t in e)e[t]===void 0&&delete e[t]}Ge.trimUndefined=fi;function mi(e){$n(e,new Set)}Ge.trimUndefinedRecursively=mi;function $n(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)&&$n(n,t)}}});var Mn=q(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});var zn=Nt();ee.compress=zn.compress;ee.decompress=zn.decompress;var di=Nt();ee.decode=di.decode;var gi=Pt();ee.addValue=gi.addValue;var Un=Vn();ee.trimUndefined=Un.trimUndefined;ee.trimUndefinedRecursively=Un.trimUndefinedRecursively});var Si={};gr(Si,{createDevTools:()=>qn,createDevToolsSys:()=>Wn,detectFrameworks:()=>J,detectFrameworksFromPackageJson:()=>Ze,ensureConfigPlugin:()=>ar,findBuildToolConfig:()=>At,getClientScript:()=>lr,parseDotEnvContent:()=>et,version:()=>Fe});module.exports=hr(Si);async function kt(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 Ot(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.getRootDir())break;t=e.dirname(t)}return e.join(e.getRootDir(),"node_modules")}async function Ce(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 l=await Ce(e,a,r);if(l)return l}}))).find(i=>typeof i=="string")}async function J(e){let t=[],r=await kt(e,e.getRootDir());if(r){let n=Ze(r);t.push(...n)}return t}function Ze(e){let t=[];if(e&&typeof e=="object"){let r=new Set(Object.keys({...e.dependencies,...e.devDependencies}));for(let n of Cr)r.has(n)&&(t.some(o=>o.name===n)||t.push({name:n}))}return t}var Cr=["@shopify/remix-oxygen","@shopify/hydrogen","@builder.io/qwik-city","@remix-run/react","@sveltejs/kit","astro","gatsby","next","nuxt","@builder.io/qwik","angular","react","solid-js","svelte","vue"];async function ce(e){let t=jt(e),r=await e.readFile(t);return typeof r=="string"?JSON.parse(r):{}}async function pe(e,t){t=typeof t=="object"&&t!=null?t:{};let r=jt(e);await e.writeFile(r,JSON.stringify(t??{},null,2))}function jt(e){let t=e.getRootDir();return e.join(t,"node_modules",".builder","builder-cache.json")}async function ue(e,t,r){let n={envKey:r,envValue:null,file:""};for(let o of t){let i=e.join(e.getRootDir(),o),a=await Sr(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.getRootDir(),t[t.length-1]),n}async function Sr(e,t){let r=await e.readFile(t);return typeof r=="string"?et(r):null}function et(e){let t={},r=e.replace(/\r\n?/gm,`
2
- `),n;for(;(n=wr.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 wr=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/gm;async function fe(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
+ "use strict";var dr=Object.create;var Be=Object.defineProperty;var gr=Object.getOwnPropertyDescriptor;var xr=Object.getOwnPropertyNames;var hr=Object.getPrototypeOf,Cr=Object.prototype.hasOwnProperty;var J=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Sr=(e,t)=>{for(var r in t)Be(e,r,{get:t[r],enumerable:!0})},_t=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of xr(t))!Cr.call(e,o)&&o!==r&&Be(e,o,{get:()=>t[o],enumerable:!(n=gr(t,o))||n.enumerable});return e};var wr=(e,t,r)=>(r=e!=null?dr(hr(e)):{},_t(t||!e||!e.__esModule?Be(r,"default",{value:e,enumerable:!0}):r,e)),yr=e=>_t(Be({},"__esModule",{value:!0}),e);var yt=J(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});function On(e){return Object.prototype.toString.call(e)}et.getType=On;function Xo(e){throw new TypeError("unsupported data type: "+On(e))}et.throwUnknownDataType=Xo});var bt=J(q=>{"use strict";Object.defineProperty(q,"__esModule",{value:!0});var Q="";for(let e=0;e<10;e++){let t=String.fromCharCode(48+e);Q+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(65+e);Q+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(97+e);Q+=t}var we=Q.length,Et={};for(let e=0;e<we;e++){let t=Q[e];Et[t]=e}function Dt(e){let t=0,r=1;for(let n=e.length-1;n>=0;n--){let o=e[n],i=Et[o];i*=r,t+=i,r*=we}return t}q.s_to_int=Dt;function jn(e){let t=BigInt(0),r=BigInt(1),n=BigInt(we);for(let o=e.length-1;o>=0;o--){let i=e[o],a=BigInt(Et[i]);a*=r,t+=a,r*=n}return t}q.s_to_big_int=jn;function vt(e){if(e===0)return Q[0];let t=[];for(;e!==0;){let r=e%we,n=Q[r];t.push(n),e-=r,e/=we}return t.reverse().join("")}q.int_to_s=vt;function _n(e){let t=BigInt(0),r=BigInt(we);if(e===t)return Q[0];let n=[];for(;e!==t;){let o=e%r,i=Q[Number(o)];n.push(i),e-=o,e/=r}return n.reverse().join("")}q.big_int_to_s=_n;function nt(e){return e.split("").reverse().join("")}function Bn(e){if(e<0)return"-"+Bn(-e);let[t,r]=e.toString().split(".");if(!r)return vt(e);let n;r&&([r,n]=r.split("e")),t=tt(t),r=nt(r),r=tt(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=nt(n),n=tt(n),o+=n}return o}q.num_to_s=Bn;function tt(e){let t=+e;return t.toString()===e?vt(t):":"+_n(BigInt(e))}q.int_str_to_s=tt;function Tt(e){return e[0]===":"?jn(e.substring(1)).toString():Dt(e).toString()}function Vn(e){if(e[0]==="-")return-Vn(e.substr(1));let[t,r,n]=e.split(".");if(!r)return Dt(t);t=Tt(t),r=Tt(r),r=nt(r);let o=t+"."+r;if(n){o+="e";let i=!1;n[0]==="-"&&(i=!0,n=n.slice(1)),n=Tt(n),n=nt(n),o+=i?-n:+n}return+o}q.s_to_num=Vn});var It=J(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});var Pt=bt();function Zo(e){return"n|"+Pt.num_to_s(e)}W.encodeNum=Zo;function ei(e){return e=e.replace("n|",""),Pt.s_to_num(e)}W.decodeNum=ei;function ti(e){return typeof e=="number"?e:Pt.s_to_int(e)}W.decodeKey=ti;function ni(e){return e?"b|T":"b|F"}W.encodeBool=ni;function ri(e){switch(e){case"b|T":return!0;case"b|F":return!1}return!!e}W.decodeBool=ri;function oi(e){switch(e[0]+e[1]){case"b|":case"o|":case"n|":case"a|":case"s|":e="s|"+e}return e}W.encodeStr=oi;function ii(e){return e[0]+e[1]==="s|"?e.substr(2):e}W.decodeStr=ii});var $n=J(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.config={sort_key:!1}});var Ft=J(ce=>{"use strict";Object.defineProperty(ce,"__esModule",{value:!0});var ai=$n(),si=yt(),Rt=It(),li=bt();function ci(e){return e.store.toArray()}ce.memToValues=ci;function zn(){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}}}ce.makeInMemoryStore=zn;function Un(){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}}}ce.makeInMemoryCache=Un;function pi(){return{store:zn(),cache:Un(),keyCount:0}}ce.makeInMemoryMemory=pi;function le(e,t){if(e.cache.hasValue(t))return e.cache.getValue(t);let r=e.keyCount++,n=li.num_to_s(r);return e.store.add(t),e.cache.setValue(t,n),n}function ui(e,t){ai.config.sort_key&&t.sort();let r=t.join(",");if(e.cache.hasSchema(r))return e.cache.getSchema(r);let n=Le(e,t,void 0);return e.cache.setSchema(r,n),n}function Le(e,t,r){if(t===null)return"";switch(typeof t){case"undefined":if(Array.isArray(r))return Le(e,null,r);break;case"object":if(t===null)return le(e,null);if(Array.isArray(t)){let n="a";for(let o=0;o<t.length;o++){let i=t[o],a=i===null?"_":Le(e,i,t);n+="|"+a}return n==="a"&&(n="a|"),le(e,n)}else{let n=Object.keys(t);if(n.length===0)return le(e,"o|");let o="o",i=ui(e,n);o+="|"+i;for(let a of n){let s=t[a],l=Le(e,s,t);o+="|"+l}return le(e,o)}case"boolean":return le(e,Rt.encodeBool(t));case"number":return le(e,Rt.encodeNum(t));case"string":return le(e,Rt.encodeStr(t))}return si.throwUnknownDataType(t)}ce.addValue=Le});var Lt=J(Oe=>{"use strict";Object.defineProperty(Oe,"__esModule",{value:!0});var fi=yt(),rt=It(),At=Ft();function mi(e){let t=At.makeInMemoryMemory(),r=At.addValue(t,e,void 0);return[At.memToValues(t),r]}Oe.compress=mi;function di(e,t){if(t==="o|")return{};let r={},n=t.split("|"),o=n[1],i=ke(e,o),a=n.length;a-2===1&&!Array.isArray(i)&&(i=[i]);for(let s=2;s<a;s++){let l=i[s-2],m=n[s];m=ke(e,m),r[l]=m}return r}function gi(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=ke(e,a),o[i]=a}return o}function ke(e,t){if(t===""||t==="_")return null;let r=rt.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 rt.decodeBool(n);case"o|":return di(e,n);case"n|":return rt.decodeNum(n);case"a|":return gi(e,n);default:return rt.decodeStr(n)}}return fi.throwUnknownDataType(n)}Oe.decode=ke;function xi(e){let[t,r]=e;return ke(t,r)}Oe.decompress=xi});var Kn=J(ot=>{"use strict";Object.defineProperty(ot,"__esModule",{value:!0});function hi(e){for(let t in e)e[t]===void 0&&delete e[t]}ot.trimUndefined=hi;function Ci(e){Mn(e,new Set)}ot.trimUndefinedRecursively=Ci;function Mn(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)&&Mn(n,t)}}});var Wn=J(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});var Qn=Lt();te.compress=Qn.compress;te.decompress=Qn.decompress;var Si=Lt();te.decode=Si.decode;var wi=Ft();te.addValue=wi.addValue;var qn=Kn();te.trimUndefined=qn.trimUndefined;te.trimUndefinedRecursively=qn.trimUndefinedRecursively});var Di={};Sr(Di,{createDevTools:()=>Yn,createDevToolsSys:()=>Xn,detectFrameworks:()=>H,detectFrameworksFromPackageJson:()=>at,ensureConfigPlugin:()=>pr,findBuildToolConfig:()=>jt,getClientScript:()=>fr,parseDotEnvContent:()=>st,version:()=>je});module.exports=yr(Di);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 Vt(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.getRootDir())break;t=e.dirname(t)}return e.join(e.getRootDir(),"node_modules")}async function ye(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 l=await ye(e,a,r);if(l)return l}}))).find(i=>typeof i=="string")}async function H(e){let t=[],r=await Bt(e,e.getRootDir());if(r){let n=at(r);t.push(...n)}return t}function at(e){let t=[];if(e&&typeof e=="object"){let r=new Set(Object.keys({...e.dependencies,...e.devDependencies}));for(let n of Tr)r.has(n)&&(t.some(o=>o.name===n)||t.push({name:n}))}return t}var Tr=["@shopify/remix-oxygen","@shopify/hydrogen","@builder.io/qwik-city","@remix-run/react","@sveltejs/kit","astro","gatsby","next","nuxt","@builder.io/qwik","angular","react","solid-js","svelte","vue"];async function ue(e){let t=$t(e),r=await e.readFile(t);return typeof r=="string"?JSON.parse(r):{}}async function fe(e,t){t=typeof t=="object"&&t!=null?t:{};let r=$t(e);await e.writeFile(r,JSON.stringify(t??{},null,2))}function $t(e){let t=e.getRootDir();return e.join(t,"node_modules",".builder","builder-cache.json")}async function me(e,t,r){let n={envKey:r,envValue:null,file:""};for(let o of t){let i=e.join(e.getRootDir(),o),a=await Er(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.getRootDir(),t[t.length-1]),n}async function Er(e,t){let r=await e.readFile(t);return typeof r=="string"?st(r):null}function st(e){let t={},r=e.replace(/\r\n?/gm,`
2
+ `),n;for(;(n=Dr.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 Dr=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/gm;async function de(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 tt(e){return await ue(e,[".env.local",".env.development.local",".env.production.local",".env.development",".env.production",".env"],ne)}async function _t(e,t){let r=await tt(e),n=await fe(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var ne="NEXT_PUBLIC_BUILDER_API_KEY";function v(e,t=""){return e.ts.createSourceFile("module.tsx",typeof t=="string"?t:"",e.ts.ScriptTarget.Latest)}function Bt(e,t=""){let r=v(e,t?.trim());if(r.statements.length===0)throw new Error(`No statements found in code: ${t}`);return r.statements[0]}function I(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 Te(e){return await me(e,[".env.local",".env.development.local",".env.production.local",".env.development",".env.production",".env"],ne)}async function zt(e,t){let r=await Te(e),n=await de(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var ne="NEXT_PUBLIC_BUILDER_API_KEY";function E(e,t=""){return e.ts.createSourceFile("module.tsx",typeof t=="string"?t:"",e.ts.ScriptTarget.Latest)}function Ut(e,t=""){let r=E(e,t?.trim());if(r.statements.length===0)throw new Error(`No statements found in code: ${t}`);return r.statements[0]}function I(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 F(e,t,r){t=W(t),r=W(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=W(e.normalize(o)),o.startsWith(".")||(o="./"+o),o}function W(e){return e.startsWith("\\\\?\\")?e:e.replace(/\\/g,"/")}function Se(e,t){let r=e.extname(t),n=e.basename(t,r).split(/[\/\\]/),o=n[n.length-1];return $t(o==="index"?e.basename(e.dirname(t)):o)}function $t(e){return O(e).replace(/ /g,"")}function H(e,t){let r=e.extname(t),n=W(e.basename(t,r)).split("/").pop();return O(n==="index"?e.basename(e.dirname(t)):n)}function N(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 O(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 Y(e){return e.sort((t,r)=>t.name.toLocaleLowerCase().localeCompare(r.name.toLocaleLowerCase()))}async function j(e,t,r){if(typeof r!="string"||r==="")throw new Error(`getComponentId(), exportName must be a non-empty string, received: ${r}, ${t}`);return t=e.normalize(t),(await e.hash(t+"#"+r)).substring(0,8)}function we(e){return typeof e=="number"}function me(e){return typeof e=="boolean"}function k(e){return typeof e=="string"}function Le(e){return typeof e=="string"?/^[A-Z][A-Za-z0-9]*$/.test(e):!1}function _(e){return JSON.parse(JSON.stringify(e))}function Te(e,t,r,n,o=!0){let i=t.properties.filter(s=>e.ts.isPropertyAssignment(s)),a=yr(e,t,r);return a>-1?n==null&&o?e.ts.factory.updateObjectLiteralExpression(t,i.filter((s,l)=>l!==a)):(i[a]=e.ts.factory.updatePropertyAssignment(i[a],i[a].name,ye(e,n)),e.ts.factory.updateObjectLiteralExpression(t,i)):(n!=null&&i.push(e.ts.factory.createPropertyAssignment(r,ye(e,n))),e.ts.factory.updateObjectLiteralExpression(t,i))}function yr(e,t,r){return t.properties.findIndex(n=>b(e,n)===r)}function Ee(e,t){switch(t.kind){case e.ts.SyntaxKind.ArrayLiteralExpression:return Er(e,t);case e.ts.SyntaxKind.ObjectLiteralExpression:return Tr(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 Tr(e,t){let r={};if(t&&e.ts.isObjectLiteralExpression(t)){for(let n of t.properties)if(e.ts.isPropertyAssignment(n)){let o=b(e,n);o&&(r[o]=Ee(e,n.initializer))}}return r}function Er(e,t){return t&&e.ts.isArrayLiteralExpression(t)?t.elements.map(r=>Ee(e,r)):[]}function b(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 ye(e,t){return nt(e,t,new WeakSet)}function nt(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)?Dr(e,t,r):typeof t=="object"?vr(e,t,r):e.ts.factory.createIdentifier(t)}function Dr(e,t,r){let n=t.map(o=>nt(e,o,r));return e.ts.factory.createArrayLiteralExpression(n,!0)}function vr(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,nt(e,t[o],r)));return e.ts.factory.createObjectLiteralExpression(n,!0)}function De(e,t,r){let n=[];if(!r)return n;let o=[];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 a=t.getTypeAtLocation(r).getCallSignatures();if(a.length>0){let s=a[0].getParameters();s.length>0&&(o=t.getTypeOfSymbolAtLocation(s[0],r).getProperties())}}for(let i of o){let a=br(e,t,i);a&&n.push(a)}return n.filter(kr)}function br(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 l=t.getTypeFromTypeNode(n.type),m=t.typeToString(l),g=rt(m);g.knownType?i=g.builderType:Ir(m)||l.flags&e.ts.TypeFlags.StringLike?i="string":l.flags&e.ts.TypeFlags.NumberLike?i="number":l.flags&e.ts.TypeFlags.IndexedAccess?i="list":l.flags&e.ts.TypeFlags.Object||l.isUnion()&&l.types.every(f=>f.flags&e.ts.TypeFlags.Object)||l.isIntersection()&&l.types.some(f=>f.flags&e.ts.TypeFlags.Object)?i="object":i="string",m!==i&&(a=m)}let s={name:o,type:i,isRegistered:!1};if(a&&n.type){let l=Ar(e,t,t.getTypeFromTypeNode(n.type));s.meta=s.meta||{},l&&l.length>0&&s.type==="string"&&l.every(Rr)?s.enum=l.map(Fr):s.meta.ts=a}return n.questionToken||(s.required=!0),s}return null}var Pr=["ClassicComponent","FunctionComponent","IntrinsicElements","JSX","ReactNode","ReactElement","ReactPortal"];function Ir(e){return typeof e!="string"?!1:!!Pr.some(t=>e.includes(t))}function rt(e){return typeof e=="string"&&(e=e.trim(),Nr.some(t=>t.value===e))?{builderType:e,knownType:!0}:{builderType:"string",knownType:!1}}var Nr=[{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 Rr(e){return/^['"].*['"]$/.test(e)}function Fr(e){return(e.startsWith('"')||e.startsWith("'"))&&(e.endsWith('"')||e.endsWith("'"))?e.slice(1,-1):e}var Ar=(e,t,r)=>{let n=new Set;Vt(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},Lr=(e,t,r)=>{let n=e.ts.TypeFormatFlags.InElementType|e.ts.TypeFormatFlags.NoTruncation;return t.typeToString(r,void 0,n)},Vt=(e,t,r,n)=>{if(r.isUnion())r.types.forEach(o=>{Vt(e,t,o,n)});else if(r.isLiteral()){let o=Lr(e,t,r);n.add(o)}};function kr(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!Or.has(t.toLowerCase())}var Or=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 re(e,t,r){for(let n of r.properties){if(!e.ts.isPropertyAssignment(n))continue;let o=b(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=jr(e,n.initializer);oe(t,i);continue}if(o==="meta"&&e.ts.isObjectLiteralExpression(n.initializer)){let i=Ee(e,n.initializer);i&&typeof i=="object"&&(t.meta=i);continue}}return t}function jr(e,t){let r=[];for(let n of t.elements)e.ts.isObjectLiteralExpression(n)&&r.push(_r(e,n));return r}function _r(e,t){let r=Ee(e,t),n=Kr(r);return n.isRegistered=!0,n}function G(e,t,r){let n=$r(r);return t=Te(e,t,"name",n.name,!1),t=Te(e,t,"description",n.description),t=Te(e,t,"image",n.image),t=Br(e,t,n),Qr(e,t)}function Br(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 Te(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=zr(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 $r(e){return{name:e.name,description:e.description,image:e.image,inputs:(e.inputs||[]).filter(r=>r.isRegistered).map(Vr)}}function Vr(e){let t={name:e.name,type:e.type};return(k(e.defaultValue)||we(e.defaultValue)||me(e.defaultValue))&&(t.defaultValue=e.defaultValue),k(e.friendlyName)&&(t.friendlyName=e.friendlyName),k(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 zr(e,t,r){let n=t.elements.filter(o=>{if(!e.ts.isObjectLiteralExpression(o))return!1;let i=o.properties.find(s=>b(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=Ur(e,n,o);return n.sort((o,i)=>{let a=o.properties.find(u=>b(e,u)==="name"),s=i.properties.find(u=>b(e,u)==="name"),l=a?.initializer,m=s?.initializer,g=l&&e.ts.isStringLiteral(l)?l.text:"zz",f=m&&e.ts.isStringLiteral(m)?m.text:"zz";return g.toLowerCase().localeCompare(f.toLowerCase())}),e.ts.factory.updateArrayLiteralExpression(t,n)}function Ur(e,t,r){let n=t.findIndex(o=>o.properties.some(i=>{let a=b(e,i);return e.ts.isPropertyAssignment(i)&&a==="name"&&e.ts.isStringLiteral(i.initializer)&&i.initializer.text===r.name}));if(n>-1)t[n]=zt(e,t[n],r);else{let o=zt(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("name",e.ts.factory.createStringLiteral(r.name))],!0),r);t.push(o)}return t}function zt(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=Mr(e,n,r,i);return n=qr(e,n.filter(i=>{let a=b(e,i);return o.includes(a)})),e.ts.factory.updateObjectLiteralExpression(t,n)}function Mr(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,ye(e,r[n])):t.push(e.ts.factory.createPropertyAssignment(n,ye(e,r[n]))),t}function oe(e,t){for(let o of t){let i=e.inputs.findIndex(a=>a.name===o.name);i>-1?(o.isRegistered||!e.inputs[i].isRegistered)&&(e.inputs[i]=o):e.inputs.push(o)}let r=e.inputs.some(o=>o.name==="children"),n=e.inputs.some(o=>o.meta?.ts==="ReactNode");r||n?e.acceptsChildren=!0:e.acceptsChildren||(e.acceptsChildren=!1)}function Kr(e){let t=rt(e.type),r={name:e.name.trim(),type:t.builderType};return k(e.friendlyName)&&e.friendlyName.trim()!==e.name.trim()&&(r.friendlyName=e.friendlyName),(k(e.defaultValue)||we(e.defaultValue)||me(e.defaultValue))&&(r.defaultValue=e.defaultValue),k(e.helperText)&&(r.helperText=e.helperText),me(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),ot(r)}function ot(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 Qr(e,t){let r=[...t.properties].sort((n,o)=>{let i=b(e,n)||"zz",a=b(e,o)||"zz";if(i==="inputs")return 1;let s=Ut.indexOf(i),l=Ut.indexOf(a);return s>-1?l>-1&&s>l?1:-1:l>-1?s>-1&&l<s?-1:1:i.localeCompare(a)});return e.ts.factory.updateObjectLiteralExpression(t,r)}var Ut=["component","name","description"];function qr(e,t){return[...t].sort((n,o)=>{let i=b(e,n)||"zz",a=b(e,o)||"zz",s=Mt.indexOf(i),l=Mt.indexOf(a);return s>-1?l>-1&&s>l?1:-1:l>-1?s>-1&&l<s?-1:1:i.localeCompare(a)})}var Mt=["name","type"];function Kt(e,t){let r=`Builder.registerComponent(
11
+ `}return""}function A(e,t,r){t=z(t),r=z(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=z(e.normalize(o)),o.startsWith(".")||(o="./"+o),o}function z(e){return e.startsWith("\\\\?\\")?e:e.replace(/\\/g,"/")}function Ee(e,t){let r=e.extname(t),n=e.basename(t,r).split(/[\/\\]/),o=n[n.length-1];return Mt(o==="index"?e.basename(e.dirname(t)):o)}function Mt(e){return j(e).replace(/ /g,"")}function Y(e,t){let r=e.extname(t),n=z(e.basename(t,r)).split("/").pop();return j(n==="index"?e.basename(e.dirname(t)):n)}function N(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 j(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 G(e){return e.sort((t,r)=>t.name.toLocaleLowerCase().localeCompare(r.name.toLocaleLowerCase()))}async function _(e,t,r){if(typeof r!="string"||r==="")throw new Error(`getComponentId(), exportName must be a non-empty string, received: ${r}, ${t}`);return t=e.normalize(t),(await e.hash(t+"#"+r)).substring(0,8)}function De(e){return typeof e=="number"}function ge(e){return typeof e=="boolean"}function L(e){return typeof e=="string"}function Ve(e){return typeof e=="string"?/^[A-Z][A-Za-z0-9]*$/.test(e):!1}function B(e){return JSON.parse(JSON.stringify(e))}function be(e,t,r,n,o=!0){let i=t.properties.filter(s=>e.ts.isPropertyAssignment(s)),a=vr(e,t,r);return a>-1?n==null&&o?e.ts.factory.updateObjectLiteralExpression(t,i.filter((s,l)=>l!==a)):(i[a]=e.ts.factory.updatePropertyAssignment(i[a],i[a].name,ve(e,n)),e.ts.factory.updateObjectLiteralExpression(t,i)):(n!=null&&i.push(e.ts.factory.createPropertyAssignment(r,ve(e,n))),e.ts.factory.updateObjectLiteralExpression(t,i))}function vr(e,t,r){return t.properties.findIndex(n=>D(e,n)===r)}function Pe(e,t){switch(t.kind){case e.ts.SyntaxKind.ArrayLiteralExpression:return Pr(e,t);case e.ts.SyntaxKind.ObjectLiteralExpression:return br(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 br(e,t){let r={};if(t&&e.ts.isObjectLiteralExpression(t)){for(let n of t.properties)if(e.ts.isPropertyAssignment(n)){let o=D(e,n);o&&(r[o]=Pe(e,n.initializer))}}return r}function Pr(e,t){return t&&e.ts.isArrayLiteralExpression(t)?t.elements.map(r=>Pe(e,r)):[]}function D(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 ve(e,t){return lt(e,t,new WeakSet)}function lt(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)?Ir(e,t,r):typeof t=="object"?Nr(e,t,r):e.ts.factory.createIdentifier(t)}function Ir(e,t,r){let n=t.map(o=>lt(e,o,r));return e.ts.factory.createArrayLiteralExpression(n,!0)}function Nr(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,lt(e,t[o],r)));return e.ts.factory.createObjectLiteralExpression(n,!0)}function Ie(e,t,r){let n=[];if(!r)return n;let o=[];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 a=t.getTypeAtLocation(r).getCallSignatures();if(a.length>0){let s=a[0].getParameters();s.length>0&&(o=t.getTypeOfSymbolAtLocation(s[0],r).getProperties())}}for(let i of o){let a=Rr(e,t,i);a&&n.push(a)}return n.filter(Br)}function Rr(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 l=t.getTypeFromTypeNode(n.type),m=t.typeToString(l),g=ct(m);g.knownType?i=g.builderType:Ar(m)||l.flags&e.ts.TypeFlags.StringLike?i="string":l.flags&e.ts.TypeFlags.NumberLike?i="number":l.flags&e.ts.TypeFlags.IndexedAccess?i="list":l.flags&e.ts.TypeFlags.Object||l.isUnion()&&l.types.every(f=>f.flags&e.ts.TypeFlags.Object)||l.isIntersection()&&l.types.some(f=>f.flags&e.ts.TypeFlags.Object)?i="object":i="string",m!==i&&(a=m)}let s={name:o,type:i,isRegistered:!1};if(a&&n.type){let l=jr(e,t,t.getTypeFromTypeNode(n.type));s.meta=s.meta||{},l&&l.length>0&&s.type==="string"&&l.every(kr)?s.enum=l.map(Or):s.meta.ts=a}return n.questionToken||(s.required=!0),s}return null}var Fr=["ClassicComponent","FunctionComponent","IntrinsicElements","JSX","ReactNode","ReactElement","ReactPortal"];function Ar(e){return typeof e!="string"?!1:!!Fr.some(t=>e.includes(t))}function ct(e){return typeof e=="string"&&(e=e.trim(),Lr.some(t=>t.value===e))?{builderType:e,knownType:!0}:{builderType:"string",knownType:!1}}var Lr=[{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 kr(e){return/^['"].*['"]$/.test(e)}function Or(e){return(e.startsWith('"')||e.startsWith("'"))&&(e.endsWith('"')||e.endsWith("'"))?e.slice(1,-1):e}var jr=(e,t,r)=>{let n=new Set;Kt(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},_r=(e,t,r)=>{let n=e.ts.TypeFormatFlags.InElementType|e.ts.TypeFormatFlags.NoTruncation;return t.typeToString(r,void 0,n)},Kt=(e,t,r,n)=>{if(r.isUnion())r.types.forEach(o=>{Kt(e,t,o,n)});else if(r.isLiteral()){let o=_r(e,t,r);n.add(o)}};function Br(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!Vr.has(t.toLowerCase())}var Vr=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 re(e,t,r){for(let n of r.properties){if(!e.ts.isPropertyAssignment(n))continue;let o=D(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=$r(e,n.initializer);oe(t,i);continue}if(o==="meta"&&e.ts.isObjectLiteralExpression(n.initializer)){let i=Pe(e,n.initializer);i&&typeof i=="object"&&(t.meta=i);continue}}return t}function $r(e,t){let r=[];for(let n of t.elements)e.ts.isObjectLiteralExpression(n)&&r.push(zr(e,n));return r}function zr(e,t){let r=Pe(e,t),n=Jr(r);return n.isRegistered=!0,n}function X(e,t,r){let n=Mr(r);return t=be(e,t,"name",n.name,!1),t=be(e,t,"description",n.description),t=be(e,t,"image",n.image),t=Ur(e,t,n),Hr(e,t)}function Ur(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 be(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=Qr(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 Mr(e){return{name:e.name,description:e.description,image:e.image,inputs:(e.inputs||[]).filter(r=>r.isRegistered).map(Kr)}}function Kr(e){let t={name:e.name,type:e.type};return(L(e.defaultValue)||De(e.defaultValue)||ge(e.defaultValue))&&(t.defaultValue=e.defaultValue),L(e.friendlyName)&&(t.friendlyName=e.friendlyName),L(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 Qr(e,t,r){let n=t.elements.filter(o=>{if(!e.ts.isObjectLiteralExpression(o))return!1;let i=o.properties.find(s=>D(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=qr(e,n,o);return n.sort((o,i)=>{let a=o.properties.find(u=>D(e,u)==="name"),s=i.properties.find(u=>D(e,u)==="name"),l=a?.initializer,m=s?.initializer,g=l&&e.ts.isStringLiteral(l)?l.text:"zz",f=m&&e.ts.isStringLiteral(m)?m.text:"zz";return g.toLowerCase().localeCompare(f.toLowerCase())}),e.ts.factory.updateArrayLiteralExpression(t,n)}function qr(e,t,r){let n=t.findIndex(o=>o.properties.some(i=>{let a=D(e,i);return e.ts.isPropertyAssignment(i)&&a==="name"&&e.ts.isStringLiteral(i.initializer)&&i.initializer.text===r.name}));if(n>-1)t[n]=Qt(e,t[n],r);else{let o=Qt(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("name",e.ts.factory.createStringLiteral(r.name))],!0),r);t.push(o)}return t}function Qt(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=Wr(e,n,r,i);return n=Yr(e,n.filter(i=>{let a=D(e,i);return o.includes(a)})),e.ts.factory.updateObjectLiteralExpression(t,n)}function Wr(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,ve(e,r[n])):t.push(e.ts.factory.createPropertyAssignment(n,ve(e,r[n]))),t}function oe(e,t){for(let o of t){let i=e.inputs.findIndex(a=>a.name===o.name);i>-1?(o.isRegistered||!e.inputs[i].isRegistered)&&(e.inputs[i]=o):e.inputs.push(o)}let r=e.inputs.some(o=>o.name==="children"),n=e.inputs.some(o=>o.meta?.ts==="ReactNode");r||n?e.acceptsChildren=!0:e.acceptsChildren||(e.acceptsChildren=!1)}function Jr(e){let t=ct(e.type),r={name:e.name.trim(),type:t.builderType};return L(e.friendlyName)&&e.friendlyName.trim()!==e.name.trim()&&(r.friendlyName=e.friendlyName),(L(e.defaultValue)||De(e.defaultValue)||ge(e.defaultValue))&&(r.defaultValue=e.defaultValue),L(e.helperText)&&(r.helperText=e.helperText),ge(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),pt(r)}function pt(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 Hr(e,t){let r=[...t.properties].sort((n,o)=>{let i=D(e,n)||"zz",a=D(e,o)||"zz";if(i==="inputs")return 1;let s=qt.indexOf(i),l=qt.indexOf(a);return s>-1?l>-1&&s>l?1:-1:l>-1?s>-1&&l<s?-1:1:i.localeCompare(a)});return e.ts.factory.updateObjectLiteralExpression(t,r)}var qt=["component","name","description"];function Yr(e,t){return[...t].sort((n,o)=>{let i=D(e,n)||"zz",a=D(e,o)||"zz",s=Wt.indexOf(i),l=Wt.indexOf(a);return s>-1?l>-1&&s>l?1:-1:l>-1?s>-1&&l<s?-1:1:i.localeCompare(a)})}var Wt=["name","type"];function Jt(e,t){let r=`Builder.registerComponent(
12
12
  `;if(e.appDir)t.acceptsChildren?r+=` withChildren(${t.importName}),
13
13
  `:r+=` ${t.importName},
14
- `;else{let o=F(e,e.registryPath,t.filePath);t.exportName==="default"?t.acceptsChildren?r+=` withChildren(dynamic(() => import(${JSON.stringify(o)}))),
14
+ `;else{let o=A(e,e.registryPath,t.filePath);t.exportName==="default"?t.acceptsChildren?r+=` withChildren(dynamic(() => import(${JSON.stringify(o)}))),
15
15
  `:r+=` dynamic(() => import(${JSON.stringify(o)})),
16
16
  `:t.acceptsChildren?r+=` withChildren(dynamic(async () => (await import(${JSON.stringify(o)})).${t.exportName})),
17
17
  `:r+=` dynamic(async () => (await import(${JSON.stringify(o)})).${t.exportName}),
18
18
  `}r+=` {
19
19
  name: "${t.name}",
20
20
  }
21
- `,r+=");";let n=Bt(e,r);return it(e,n,t)}function it(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]=G(e,i,r),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(n,n.expression,n.typeArguments,o))):t}async function $(e,t){if(!Array.isArray(t)||t.length===0)throw new Error(`createTsProgram() Invalid filePaths: ${t}`);let r=await Ot(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=ve.get(a);if(!s){try{e.statSync(a).isFile()?s={exists:!0,content:e.readFileSync(a)}:s={exists:!1}}catch{s={exists:!1}}ve.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 l=ve.get(a);if(l)return v(e,l.content)}let s=e.readFileSync(a);if(s==null){let l=e.basename(a),m=e.extname(l).toLowerCase();if(a.startsWith(n)&&m===".ts"&&(s=qt.get(l),s==null&&typeof self<"u"&&typeof fetch=="function"))throw new Oe(l)}return a.includes("node_modules")&&(s?ve.set(a,{exists:!0,content:s}):ve.set(a,{exists:!1})),v(e,s)},readFile:a=>{let s=e.readFileSync(a);return typeof s=="string"?s:void 0},useCaseSensitiveFileNames:()=>!1,writeFile:()=>{}};for(;;)try{return Jr(e,i,t)}catch(a){if(a instanceof Oe){await Wr(e,a.libName);continue}throw console.error("createTsProgram",a),new Error(`createTsProgram() Could not create program for: ${t[0]}`)}}function Jr(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=Qt.get(o);if(!i){let a=e.ts.readConfigFile(o,s=>{let l=e.readFileSync(s);return typeof l=="string"?l:void 0});a.error?console.error("error reading tsconfig for createTsProgram"):(i=e.ts.parseJsonConfigFileContent(a.config,e.ts.sys||{useCaseSensitiveFileNames:!1,readDirectory:(l,m)=>e.readdirSync(l),fileExists:l=>e.existsSync(l),readFile:l=>e.readFileSync(l)||void 0},e.dirname(o),void 0,o).options,Qt.set(o,i))}i&&(n.options=_(i))}return n.options.moduleResolution=e.ts.ModuleResolutionKind.Node16,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 je(e,t,r){r||(r=await $(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 Oe=class{constructor(t){this.libName=t}};async function Wr(e,t){let r=`https://cdn.jsdelivr.net/npm/typescript@${e.ts.version}/lib/${t}`;ke.has(t)||ke.set(t,fetch(r).then(n=>n.text()).then(n=>{qt.set(t,n)})),await ke.get(t),ke.delete(t)}var qt=new Map,ke=new Map,ve=new Map,Qt=new Map;function P(e,t,r,n="esm"){return Array.isArray(r.namedImports)&&r.namedImports.forEach(o=>{t=Hr(e,t,o,r.importPath,!!r.isTypeOnly,n)}),typeof r.defaultImport=="string"&&(t=Yr(e,t,r.defaultImport,r.importPath,n)),t}function Hr(e,t,r,n,o,i){return i==="cjs"?Wt(e,t,null,r,n):Jt(e,t,null,r,n,o)}function Yr(e,t,r,n,o){return o==="cjs"?Wt(e,t,r,null,n):Jt(e,t,r,null,n,!1)}function Jt(e,t,r,n,o,i){let a=[...t.statements],s=0,l=!1,m=!1;for(let p=0;p<a.length;p++){let d=a[p];if(!e.ts.isImportDeclaration(d)||(s=p,!d.moduleSpecifier||!e.ts.isStringLiteral(d.moduleSpecifier))||d.moduleSpecifier.text!==o||!!d.importClause?.isTypeOnly!==i)continue;let c=[],x=d.importClause?.namedBindings;if(x&&e.ts.isNamedImports(x)&&x.elements&&c.push(...x.elements),typeof n=="string"){if(c.some(C=>C.name.text===n))return t;c.push(e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(n))),c.sort((C,S)=>C.name.text.localeCompare(S.name.text)),l=!0}let h=d.importClause?d.importClause.name:void 0;if(typeof r=="string"){if(h&&h.text===r)return t;h=e.ts.factory.createIdentifier(r),m=!0}if(l||m)return a[p]=e.ts.factory.updateImportDeclaration(d,void 0,e.ts.factory.createImportClause(i,h,e.ts.factory.createNamedImports(c)),d.moduleSpecifier,void 0),e.ts.factory.updateSourceFile(t,a)}let g,f;typeof r=="string"&&(g=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 u=e.ts.factory.createImportDeclaration(void 0,e.ts.factory.createImportClause(i,g,f),e.ts.factory.createStringLiteral(o));return a.splice(s,0,u),e.ts.factory.updateSourceFile(t,a)}function Wt(e,t,r,n,o){let i=[...t.statements],a=0;for(let s=0;s<i.length;s++){let l=i[s];if(e.ts.isVariableStatement(l))for(let m=0;m<l.declarationList.declarations.length;m++){let g=[...l.declarationList.declarations],f=g[m],u=f.initializer;if(!u||!e.ts.isCallExpression(u))continue;let p=u.expression;if(!e.ts.isIdentifier(p)||p.text!=="require"||u.arguments.length!==1)continue;let d=u.arguments[0];if(e.ts.isStringLiteral(d)&&(a=s,d.text===o)){if(e.ts.isIdentifier(f.name)&&typeof r=="string")return f.name.text===r?t:(g[m]=e.ts.factory.updateVariableDeclaration(f,e.ts.factory.createIdentifier(r),f.exclamationToken,f.type,f.initializer),i[s]=e.ts.factory.updateVariableStatement(l,l.modifiers,e.ts.factory.updateVariableDeclarationList(l.declarationList,g)),e.ts.factory.updateSourceFile(t,i));if(e.ts.isObjectBindingPattern(f.name)&&typeof n=="string"){let c=[...f.name.elements];return c.some(h=>!e.ts.isBindingElement(h)||!e.ts.isIdentifier(h.name)?!1:h.name.text===n)?t:(c.push(e.ts.factory.createBindingElement(void 0,void 0,n)),c.sort((h,C)=>!e.ts.isBindingElement(h)||!e.ts.isIdentifier(h.name)||!e.ts.isBindingElement(C)||!e.ts.isIdentifier(C.name)?0:h.name.text.localeCompare(C.name.text)),g[m]=e.ts.factory.updateVariableDeclaration(f,e.ts.factory.createObjectBindingPattern(c),f.exclamationToken,f.type,f.initializer),i[s]=e.ts.factory.updateVariableStatement(l,l.modifiers,e.ts.factory.updateVariableDeclarationList(l.declarationList,g)),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 B(e,t,r="esm"){return r==="cjs"?Xr(e,t):Gr(e,t)}function Gr(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(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})}}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 l of s.declarationList.declarations)e.ts.isIdentifier(l.name)&&l.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 Xr(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 l of s.declarationList.declarations)e.ts.isIdentifier(l.name)&&l.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 Zr(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 _e(e,t,r,n){let o=Zr(e,r,n);if(o){let i=await lt(e,e.normalize(e.resolve(e.dirname(t),o.importPath))),a=e.relative(e.getRootDir(),i);return{displayFilePath:N(e,i),filePath:i,relFilePath:a,importPath:o.importPath,exportType:o.exportType}}return null}function st(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 X(e,t,r){let n=st(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 Be(e,t){if(t){if(eo(e,t))return!0;let r=!1;if(t.forEachChild(n=>{Be(e,n)&&(r=!0)}),r)return!0}return!1}function eo(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 lt(e,t){let r=e.extname(t).toLowerCase();if(r===""||!at.includes(r)){for(let n of at){let o=t+n;if(await e.exists(o))return o}for(let n of at){let o=e.join(t,"index"+n);if(await e.exists(o))return o}}return t}var at=[".tsx",".jsx",".ts",".js"];async function Ve(e,t){if(!t.some(a=>!a.isRegistered))return t;let n=await $(e,t.map(a=>a.filePath)),o=n.getTypeChecker();return await Promise.all(t.map(async a=>{if(!a.isRegistered){let s=n.getSourceFile(a.filePath);if(s){let m=(await be(e,o,a.filePath,s)).find(g=>g.cmpInfo.id===a.id);m&&(a.inputs=De(e,o,m.node.fnNode))}}return a}))}async function ze(e,t,r){if(t.node.fnNode){let{sourceFile:n,typeChecker:o}=await je(e,t.cmpInfo.filePath,r),a=(await be(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 De(e,o,a.node.fnNode)}return[]}async function Ue(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 to(e,t,n)}return null}function to(e,t,r){let n=v(e,r);return be(e,null,t,n)}async function be(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=B(e,n);return r=e.normalize(r),await Promise.all(i.map(async a=>{let s=await no(e,t,r,a);o.push(...s)})),o}async function no(e,t,r,n){let o=[],i=e.relative(e.getRootDir(),r);if(e.ts.isVariableStatement(n.node)){for(let a of n.node.declarationList.declarations){if(!e.ts.isIdentifier(a.name)||!Le(a.name.text))continue;let s=$e(e,t,a.initializer);if(s){let l=s.name||a.name.text,m=n.isDefaultExport?"default":l,g=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await j(e,r,m),displayFilePath:N(e,r),name:O(l),inputs:[],exportName:m,exportType:g,importName:l,filePath:r,relFilePath:i},node:s})}}return o}if(e.ts.isArrowFunction(n.node)){let a=$e(e,t,n.node);if(a){let s=H(e,r),l=n.isDefaultExport?"default":s,m=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await j(e,r,l),displayFilePath:N(e,r),name:s,inputs:[],exportName:l,exportType:m,importName:Se(e,r),filePath:r,relFilePath:i},node:a})}return o}if(e.ts.isFunctionExpression(n.node)||e.ts.isFunctionDeclaration(n.node)){let a=n.node.name?.text;if(a&&!Le(a))return o;let s=$e(e,t,n.node);if(s){let l=s.name||H(e,r),m=n.isDefaultExport||!s.name?"default":s.name,g=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await j(e,r,m),displayFilePath:N(e,r),name:l,inputs:[],exportName:m,exportType:g,importName:s.name||Se(e,r),filePath:r,relFilePath:i},node:s})}return o}return o}function $e(e,t,r){if(!r)return null;if(e.ts.isArrowFunction(r))return Be(e,r.body)?{name:"",fnNode:r}:null;if(e.ts.isFunctionExpression(r)||e.ts.isFunctionDeclaration(r))return Be(e,r.body)?{name:r.name?.text||"",fnNode: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:$e(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)||!Le(o.text)||n.text!=="AccordionPrimitive")return null;let a=t.getTypeAtLocation(o).getCallSignatures();if(a.length>0&&a[0].getParameters().length>0)return{name:"",fnNode:o}}return null}async function Ht(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&&ro.has(a))return;let s=e.normalize(i.fileName);if(s===e.nextConfigPath||s===e.registryPath||s===e.builderComponentPath)return;let l=await be(e,o,s,i);r.push(...l)})),r.sort((i,a)=>i.cmpInfo.name.localeCompare(a.cmpInfo.name))}var ro=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 de(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 l=a.moduleSpecifier.text;if(!l.startsWith(".")&&!l.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,[...ct(e,r),...ct(e,n),...ct(e,o),...i])}function Z(e){let t=e.split(`
21
+ `,r+=");";let n=Ut(e,r);return ut(e,n,t)}function ut(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]=X(e,i,r),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(n,n.expression,n.typeArguments,o))):t}async function $(e,t){if(!Array.isArray(t)||t.length===0)throw new Error(`createTsProgram() Invalid filePaths: ${t}`);let r=await Vt(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=Ne.get(a);if(!s){try{e.statSync(a).isFile()?s={exists:!0,content:e.readFileSync(a)}:s={exists:!1}}catch{s={exists:!1}}Ne.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 l=Ne.get(a);if(l)return E(e,l.content)}let s=e.readFileSync(a);if(s==null){let l=e.basename(a),m=e.extname(l).toLowerCase();if(a.startsWith(n)&&m===".ts"&&(s=Yt.get(l),s==null&&typeof self<"u"&&typeof fetch=="function"))throw new ze(l)}return a.includes("node_modules")&&(s?Ne.set(a,{exists:!0,content:s}):Ne.set(a,{exists:!1})),E(e,s)},readFile:a=>{let s=e.readFileSync(a);return typeof s=="string"?s:void 0},useCaseSensitiveFileNames:()=>!1,writeFile:()=>{}};for(;;)try{return Gr(e,i,t)}catch(a){if(a instanceof ze){await Xr(e,a.libName);continue}throw console.error("createTsProgram",a),new Error(`createTsProgram() Could not create program for: ${t[0]}`)}}function Gr(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=Ht.get(o);if(!i){let a=e.ts.readConfigFile(o,s=>{let l=e.readFileSync(s);return typeof l=="string"?l:void 0});a.error?console.error("error reading tsconfig for createTsProgram"):(i=e.ts.parseJsonConfigFileContent(a.config,e.ts.sys||{useCaseSensitiveFileNames:!1,readDirectory:(l,m)=>e.readdirSync(l),fileExists:l=>e.existsSync(l),readFile:l=>e.readFileSync(l)||void 0},e.dirname(o),void 0,o).options,Ht.set(o,i))}i&&(n.options=B(i))}return n.options.moduleResolution=e.ts.ModuleResolutionKind.Node16,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 Ue(e,t,r){r||(r=await $(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 ze=class{constructor(t){this.libName=t}};async function Xr(e,t){let r=`https://cdn.jsdelivr.net/npm/typescript@${e.ts.version}/lib/${t}`;$e.has(t)||$e.set(t,fetch(r).then(n=>n.text()).then(n=>{Yt.set(t,n)})),await $e.get(t),$e.delete(t)}var Yt=new Map,$e=new Map,Ne=new Map,Ht=new Map;function v(e,t,r,n="esm"){return Array.isArray(r.namedImports)&&r.namedImports.forEach(o=>{t=Zr(e,t,o,r.importPath,!!r.isTypeOnly,n)}),typeof r.defaultImport=="string"&&(t=eo(e,t,r.defaultImport,r.importPath,n)),t}function Zr(e,t,r,n,o,i){return i==="cjs"?Xt(e,t,null,r,n):Gt(e,t,null,r,n,o)}function eo(e,t,r,n,o){return o==="cjs"?Xt(e,t,r,null,n):Gt(e,t,r,null,n,!1)}function Gt(e,t,r,n,o,i){let a=[...t.statements],s=0,l=!1,m=!1;for(let p=0;p<a.length;p++){let h=a[p];if(!e.ts.isImportDeclaration(h)||(s=p,!h.moduleSpecifier||!e.ts.isStringLiteral(h.moduleSpecifier))||h.moduleSpecifier.text!==o||!!h.importClause?.isTypeOnly!==i)continue;let c=[],d=h.importClause?.namedBindings;if(d&&e.ts.isNamedImports(d)&&d.elements&&c.push(...d.elements),typeof n=="string"){if(c.some(C=>C.name.text===n))return t;c.push(e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(n))),c.sort((C,S)=>C.name.text.localeCompare(S.name.text)),l=!0}let x=h.importClause?h.importClause.name:void 0;if(typeof r=="string"){if(x&&x.text===r)return t;x=e.ts.factory.createIdentifier(r),m=!0}if(l||m)return a[p]=e.ts.factory.updateImportDeclaration(h,void 0,e.ts.factory.createImportClause(i,x,e.ts.factory.createNamedImports(c)),h.moduleSpecifier,void 0),e.ts.factory.updateSourceFile(t,a)}let g,f;typeof r=="string"&&(g=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 u=e.ts.factory.createImportDeclaration(void 0,e.ts.factory.createImportClause(i,g,f),e.ts.factory.createStringLiteral(o));return a.splice(s,0,u),e.ts.factory.updateSourceFile(t,a)}function Xt(e,t,r,n,o){let i=[...t.statements],a=0;for(let s=0;s<i.length;s++){let l=i[s];if(e.ts.isVariableStatement(l))for(let m=0;m<l.declarationList.declarations.length;m++){let g=[...l.declarationList.declarations],f=g[m],u=f.initializer;if(!u||!e.ts.isCallExpression(u))continue;let p=u.expression;if(!e.ts.isIdentifier(p)||p.text!=="require"||u.arguments.length!==1)continue;let h=u.arguments[0];if(e.ts.isStringLiteral(h)&&(a=s,h.text===o)){if(e.ts.isIdentifier(f.name)&&typeof r=="string")return f.name.text===r?t:(g[m]=e.ts.factory.updateVariableDeclaration(f,e.ts.factory.createIdentifier(r),f.exclamationToken,f.type,f.initializer),i[s]=e.ts.factory.updateVariableStatement(l,l.modifiers,e.ts.factory.updateVariableDeclarationList(l.declarationList,g)),e.ts.factory.updateSourceFile(t,i));if(e.ts.isObjectBindingPattern(f.name)&&typeof n=="string"){let c=[...f.name.elements];return c.some(x=>!e.ts.isBindingElement(x)||!e.ts.isIdentifier(x.name)?!1:x.name.text===n)?t:(c.push(e.ts.factory.createBindingElement(void 0,void 0,n)),c.sort((x,C)=>!e.ts.isBindingElement(x)||!e.ts.isIdentifier(x.name)||!e.ts.isBindingElement(C)||!e.ts.isIdentifier(C.name)?0:x.name.text.localeCompare(C.name.text)),g[m]=e.ts.factory.updateVariableDeclaration(f,e.ts.factory.createObjectBindingPattern(c),f.exclamationToken,f.type,f.initializer),i[s]=e.ts.factory.updateVariableStatement(l,l.modifiers,e.ts.factory.updateVariableDeclarationList(l.declarationList,g)),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 V(e,t,r="esm"){return r==="cjs"?no(e,t):to(e,t)}function to(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(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})}}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 l of s.declarationList.declarations)e.ts.isIdentifier(l.name)&&l.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 no(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 l of s.declarationList.declarations)e.ts.isIdentifier(l.name)&&l.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 ro(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 Me(e,t,r,n){let o=ro(e,r,n);if(o){let i=await dt(e,e.normalize(e.resolve(e.dirname(t),o.importPath))),a=e.relative(e.getRootDir(),i);return{displayFilePath:N(e,i),filePath:i,relFilePath:a,importPath:o.importPath,exportType:o.exportType}}return null}function mt(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 Z(e,t,r){let n=mt(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 Ke(e,t){if(t){if(oo(e,t))return!0;let r=!1;if(t.forEachChild(n=>{Ke(e,n)&&(r=!0)}),r)return!0}return!1}function oo(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 dt(e,t){let r=e.extname(t).toLowerCase();if(r===""||!ft.includes(r)){for(let n of ft){let o=t+n;if(await e.exists(o))return o}for(let n of ft){let o=e.join(t,"index"+n);if(await e.exists(o))return o}}return t}var ft=[".tsx",".jsx",".ts",".js"];function Qe(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=io(e,i);return a?[{name:a}]:void 0}function io(e,t){if(typeof t=="string"){t=e.normalize(z(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 xe(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 We(e,t){if(!t.some(a=>!a.isRegistered))return t;let n=await $(e,t.map(a=>a.filePath)),o=n.getTypeChecker();return await Promise.all(t.map(async a=>{if(!a.isRegistered){let s=n.getSourceFile(a.filePath);if(s){let m=(await ie(e,o,a.filePath,s)).find(g=>g.cmpInfo.id===a.id);m&&(a.inputs=Ie(e,o,m.node.fnNode))}}return a}))}async function Je(e,t,r){if(t.node.fnNode){let{sourceFile:n,typeChecker:o}=await Ue(e,t.cmpInfo.filePath,r),a=(await ie(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 Ie(e,o,a.node.fnNode)}return[]}async function Zt(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 ao(e,t,n)}return null}function ao(e,t,r){let n=E(e,r);return ie(e,null,t,n)}async function ie(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=V(e,n);return r=e.normalize(r),await Promise.all(i.map(async a=>{let s=await so(e,t,r,a);o.push(...s)})),o}async function so(e,t,r,n){let o=[],i=e.relative(e.getRootDir(),r);if(e.ts.isVariableStatement(n.node)){for(let a of n.node.declarationList.declarations){if(!e.ts.isIdentifier(a.name)||!Ve(a.name.text))continue;let s=qe(e,t,a.initializer);if(s){let l=s.name||a.name.text,m=n.isDefaultExport?"default":l,g=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await _(e,r,m),displayFilePath:N(e,r),name:j(l),inputs:[],exportName:m,exportType:g,importName:l,filePath:r,relFilePath:i,dependencies:s.deps},node:s})}}return o}if(e.ts.isArrowFunction(n.node)){let a=qe(e,t,n.node);if(a){let s=Y(e,r),l=n.isDefaultExport?"default":s,m=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await _(e,r,l),displayFilePath:N(e,r),name:s,inputs:[],exportName:l,exportType:m,importName:Ee(e,r),filePath:r,relFilePath:i,dependencies:a.deps},node:a})}return o}if(e.ts.isFunctionExpression(n.node)||e.ts.isFunctionDeclaration(n.node)){let a=n.node.name?.text;if(a&&!Ve(a))return o;let s=qe(e,t,n.node);if(s){let l=s.name||Y(e,r),m=n.isDefaultExport||!s.name?"default":s.name,g=n.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await _(e,r,m),displayFilePath:N(e,r),name:l,inputs:[],exportName:m,exportType:g,importName:s.name||Ee(e,r),filePath:r,relFilePath:i,dependencies:s.deps},node:s})}return o}return o}function qe(e,t,r){if(!r)return null;if(e.ts.isArrowFunction(r))return Ke(e,r.body)?{name:"",fnNode:r,deps:Qe(e,t,r)}:null;if(e.ts.isFunctionExpression(r)||e.ts.isFunctionDeclaration(r))return Ke(e,r.body)?{name:r.name?.text||"",fnNode:r,deps:Qe(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:qe(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)||!Ve(o.text))return null;let a=t.getTypeAtLocation(o).getCallSignatures();if(a.length>0&&a[0].getParameters().length>0)return{name:"",fnNode:o,deps:Qe(e,t,o)}}return null}async function en(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&&lo.has(a))return;let s=e.normalize(i.fileName);if(s===e.nextConfigPath||s===e.registryPath||s===e.builderComponentPath)return;let l=await ie(e,o,s,i);r.push(...l)})),r.sort((i,a)=>i.cmpInfo.name.localeCompare(a.cmpInfo.name))}var lo=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 he(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 l=a.moduleSpecifier.text;if(!l.startsWith(".")&&!l.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,[...gt(e,r),...gt(e,n),...gt(e,o),...i])}function ee(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,14 +28,14 @@ ${r}=${n}
28
28
  `+o),o.trim().startsWith("export ")&&(o=`
29
29
  `+o)),e=o+`
30
30
  `+e}return e.trim()+`
31
- `}function ct(e,t){return t.sort((r,n)=>{let o=Yt(e,r),i=Yt(e,n);return o.toLocaleLowerCase().localeCompare(i.toLocaleLowerCase())})}function Yt(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 Xt(e){return typeof e=="string"&&!e.includes("'use client'")&&!e.includes(`"use client"'`)&&(e=`"use client"
32
- ${e}`),e}function Zt(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 Me(e,t){return t.sort((r,n)=>{if(e.ts.isObjectLiteralExpression(r)&&e.ts.isObjectLiteralExpression(n)){let o=Gt(e,r),i=Gt(e,n);return o.toLocaleLowerCase().localeCompare(i.toLocaleLowerCase())}return 1})}function Gt(e,t){let r=t.properties.find(n=>b(e,n)==="name");return r&&e.ts.isPropertyAssignment(r)&&e.ts.isStringLiteral(r.initializer)?r.initializer.text:"zzzz"}async function nn(e){let t=await e.readFile(e.registryPath);return t?oo(e,t):{components:[],sourceFile:v(e,"")}}async function oo(e,t){let r=v(e,t);return io(e,r)}async function io(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 m=i.arguments;if(m.length<2)continue;let g=m[1];if(!e.ts.isObjectLiteralExpression(g))continue;let f=m[0];if(e.ts.isCallExpression(f)){if((e.ts.isIdentifier(f.expression)&&f.expression.text)==="withChildren"){let d=f.arguments[0];if(e.ts.isCallExpression(d)){let c=await en(e,n,d,g,!0);c&&r.push(c)}else{let c=f.arguments[0];if(e.ts.isIdentifier(c)){let x=await tn(e,t,n,c,g,!0);x&&r.push(x)}}continue}let p=await en(e,n,f,g,!1);p&&r.push(p);continue}if(e.ts.isIdentifier(f)){let u=await tn(e,t,n,f,g,!1);u&&r.push(u);continue}}return{sourceFile:t,components:Y(r)}}async function en(e,t,r,n,o){let i={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",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 l=s.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 f=g.text;i.filePath=await Ke(e,f),i.relFilePath=e.relative(e.getRootDir(),i.filePath),i.name=H(e,i.filePath),i.importName="default",i.exportName="default",i.exportType="default"}else if(e.ts.isPropertyAccessExpression(l)){let m=l.expression;if(!e.ts.isParenthesizedExpression(m))return null;let g=m.expression;if(!e.ts.isAwaitExpression(g))return null;let f=g.expression;if(!e.ts.isCallExpression(f)||f.expression.kind!==e.ts.SyntaxKind.ImportKeyword||f.arguments.length!==1)return null;let p=f.arguments[0];if(!e.ts.isStringLiteral(p)||!e.ts.isIdentifier(l.name))return null;let d=p.text;i.filePath=await Ke(e,d),i.relFilePath=e.relative(e.getRootDir(),i.filePath),i.name=O(l.name.text),i.importName=l.name.text,i.exportName=l.name.text,i.exportType="named"}else return null;return i=re(e,i,n),i.displayFilePath=N(e,i.filePath),i.filePath&&i.exportName&&(i.id=await j(e,i.filePath,i.exportName)),i}async function tn(e,t,r,n,o,i){let a={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",inputs:[],nodeIndex:r,acceptsChildren:i},s=t.statements.filter(m=>e.ts.isImportDeclaration(m)),l=s.find(m=>m.importClause&&m.importClause.name?.text===n.text);if(l){let m=l.moduleSpecifier;if(!e.ts.isStringLiteral(m))return null;a.filePath=await Ke(e,m.text),a.relFilePath=e.relative(e.getRootDir(),a.filePath),a.name=H(e,a.filePath),a.importName=n.text,a.exportName="default",a.exportType="default"}else{let m=s.find(f=>!f.importClause||!f.importClause.namedBindings||!e.ts.isNamedImports(f.importClause.namedBindings)?!1:f.importClause.namedBindings.elements.some(u=>u.name.text===n.text));if(!m)return null;let g=m.moduleSpecifier;if(!e.ts.isStringLiteral(g))return null;a.filePath=await Ke(e,g.text),a.relFilePath=e.relative(e.getRootDir(),a.filePath),a.name=O(n.text),a.importName=n.text,a.exportName=n.text,a.exportType="named"}return a=re(e,a,o),a.displayFilePath=N(e,a.filePath),a.filePath&&a.exportName&&(a.id=await j(e,a.filePath,a.exportName)),a}function Ke(e,t){return lt(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}function rn(e,t,r){let n=!1,o=0,i=[...t.statements];for(let m=0;m<i.length;m++){let g=i[m];if(e.ts.isImportDeclaration(g)){o=m;continue}if(!e.ts.isExpressionStatement(g))continue;let f=g.expression;if(!e.ts.isCallExpression(f))continue;let u=f.expression;if(!e.ts.isPropertyAccessExpression(u))continue;let p=u.expression;if(!e.ts.isIdentifier(p)||p.text!=="builder")continue;if(u.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(ne)),s=r?e.ts.factory.createNonNullExpression(a):a,l=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,l),e.ts.factory.updateSourceFile(t,i)}function ge(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 l=[...s.elements];for(let m=l.length-1;m>=0;m--){let g=l[m];if(e.ts.isImportSpecifier(g)){let f=g.name;if(f&&e.ts.isIdentifier(f)){let u=f.text;on(e,t,u)||l.splice(m,1)}}}if(l.length===0)a=!0;else if(s.elements.length!==l.length){let m=e.ts.factory.updateImportClause(i.importClause,!1,i.importClause.name,e.ts.factory.createNamedImports(l)),g=e.ts.factory.updateImportDeclaration(i,void 0,m,i.moduleSpecifier,void 0);r[o]=g,n=!0}}else if(i.importClause.name&&e.ts.isIdentifier(i.importClause.name)){let l=i.importClause.name.text;on(e,t,l)||(a=!0)}a&&(r.splice(o,1),n=!0)}}return n?e.ts.factory.updateSourceFile(t,r):t}function on(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 xe(e,t,r,n,o,i,a){let s=null,l=null,m=null,g=-1;t=_(t),r=_(r);let f=t.find(p=>p.id===e),u=r.find(p=>p.id===e);if(n)u||(s={..._(f),inputs:_(f.inputs).map(p=>(p.isRegistered=!0,p))},g=r.length,r.push(s));else if(typeof u?.nodeIndex=="number"&&u.nodeIndex>-1){if(o)g=u.nodeIndex,l=_(u),r=r.filter(p=>p.id!==e);else if(i!=null)ao(u,i),g=u.nodeIndex,m=u;else if(a!=null){let p=u.inputs.find(d=>d.name===a.name);p&&(a.registerInput===!1?p.isRegistered=!1:(so(p,a),p.isRegistered=!0),m=u,g=u.nodeIndex)}}return{addCmpToRegistry:s,removeCmpFromRegistry:l,updateRegisteredCmp:m,nodeIndex:g,components:ie(t,r)}}function ie(e,t){let r=Y([...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(ot),n.inputs.sort((o,i)=>o.name.toLowerCase().localeCompare(i.name.toLowerCase()))}),r}function ao(e,t){k(t.name)?e.name=t.name:t.name===null&&(e.name=e.importName),k(t.description)?e.description=t.description:t.description===null&&delete e.description,k(t.image)?e.image=t.image:t.image===null&&delete e.image}function so(e,t){k(t.type)&&(e.type=t.type),k(t.friendlyName)?e.friendlyName=t.friendlyName:t.friendlyName===null&&delete e.friendlyName,k(t.defaultValue)||we(t.defaultValue)||me(t.defaultValue)?e.defaultValue=t.defaultValue:t.defaultValue===null&&delete e.defaultValue,k(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 an(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),l=e.extname(a).toLowerCase();if(l===".tsx"||l===".jsx"||l===".ts"||l===".js"){t.add(s);return}(await e.stat(s)).isDirectory()&&await r(s)}))};return await r(e.getRootDir()),await $(e,[...t])}async function V(e,t,r,n,o,i,a,s){let l=await an(e),[m,g,f]=await Promise.all([Ht(e,l),nn(e),pt(e)]),u=m.map(C=>C.cmpInfo),p=g.components,d={components:ie(u,p),registryPath:e.registryPath,registryDisplayPath:N(e,e.registryPath),frameworks:e.getFrameworks()};if(s)return d.components=await Ve(e,d.components),d;let c=!1,x=g.sourceFile,h=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(h.length>0){let C=h.map(T=>{let w=m.find(D=>D.cmpInfo.id===T);if(!w)throw new Error(`Component ${T} not found`);return w}),S=Array.from(new Set(C.map(T=>T.cmpInfo.filePath))),y=await $(e,S);for(let T of C){let w=d.components.find(R=>R.id===T.cmpInfo.id),D=await ze(e,T,y);oe(w,D);let A=u.findIndex(R=>R.id===T.cmpInfo.id);u[A].inputs=D;let E=xe(T.cmpInfo.id,u,p,r,n,o,i),L=[...x.statements];if(E.addCmpToRegistry?(L.push(Kt(e,E.addCmpToRegistry)),c=!0):E.removeCmpFromRegistry?(L.splice(E.nodeIndex,1),c=!0):E.updateRegisteredCmp&&(L[E.nodeIndex]=it(e,L[E.nodeIndex],E.updateRegisteredCmp),c=!0),c&&a){if(x=e.ts.factory.updateSourceFile(x,L),x=P(e,x,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),x=rn(e,x,f),e.appDir){let R=E.addCmpToRegistry||E.updateRegisteredCmp;if(R){let te=F(e,e.registryPath,R.filePath);R.exportType==="default"?x=P(e,x,{defaultImport:R.importName,importPath:te}):R.exportType==="named"&&(x=P(e,x,{namedImports:[R.importName],importPath:te}))}}else x=P(e,x,{defaultImport:"dynamic",importPath:"next/dynamic"});w?.acceptsChildren&&(x=P(e,x,{namedImports:["withChildren"],importPath:"@builder.io/react"})),d.components=E.components,p=E.components.filter(R=>R.isRegistered)}}}if(c&&a){x=ge(e,x),x=de(e,x),e.appDir&&(x=Zt(e,x));let C=I(e,x);C=Z(C),e.appDir&&(C=Xt(C)),C=await e.formatCode(e.registryPath,C),await e.writeFile(e.registryPath,C)}return d}async function sn(e){let t=[],r=await mo(e,t);return await xo(e,r,t),e.appDir?(e.debug(`ensure builder setup for next.js app ${e.appDir}`),await co(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure builder setup for next.js pages ${e.pagesDir}`),await uo(e,e.pagesDir,t)),t}async function ln(e){let t=[];return e.appDir?(e.debug(`ensure figma-imports setup for next.js app ${e.appDir}`),await lo(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure figma-imports setup for next.js pages ${e.pagesDir}`),await fo(e,e.pagesDir,t)),t}async function lo(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,cn({sys:e,routePath:o,modelName:"figma-imports"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}}async function co(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,cn({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,po(e));await e.writeFile(e.builderComponentPath,i),r.push({filePath:e.builderComponentPath,modifiedType:"create"})}}function po(e){let t=e.typescriptEnabled;return`
31
+ `}function gt(e,t){return t.sort((r,n)=>{let o=tn(e,r),i=tn(e,n);return o.toLocaleLowerCase().localeCompare(i.toLocaleLowerCase())})}function tn(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 rn(e){return typeof e=="string"&&!e.includes("'use client'")&&!e.includes(`"use client"'`)&&(e=`"use client"
32
+ ${e}`),e}function on(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 He(e,t){return t.sort((r,n)=>{if(e.ts.isObjectLiteralExpression(r)&&e.ts.isObjectLiteralExpression(n)){let o=nn(e,r),i=nn(e,n);return o.toLocaleLowerCase().localeCompare(i.toLocaleLowerCase())}return 1})}function nn(e,t){let r=t.properties.find(n=>D(e,n)==="name");return r&&e.ts.isPropertyAssignment(r)&&e.ts.isStringLiteral(r.initializer)?r.initializer.text:"zzzz"}async function ln(e){let t=await e.readFile(e.registryPath);return t?co(e,t):{components:[],sourceFile:E(e,"")}}async function co(e,t){let r=E(e,t);return po(e,r)}async function po(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 m=i.arguments;if(m.length<2)continue;let g=m[1];if(!e.ts.isObjectLiteralExpression(g))continue;let f=m[0];if(e.ts.isCallExpression(f)){if((e.ts.isIdentifier(f.expression)&&f.expression.text)==="withChildren"){let h=f.arguments[0];if(e.ts.isCallExpression(h)){let c=await an(e,n,h,g,!0);c&&r.push(c)}else{let c=f.arguments[0];if(e.ts.isIdentifier(c)){let d=await sn(e,t,n,c,g,!0);d&&r.push(d)}}continue}let p=await an(e,n,f,g,!1);p&&r.push(p);continue}if(e.ts.isIdentifier(f)){let u=await sn(e,t,n,f,g,!1);u&&r.push(u);continue}}return{sourceFile:t,components:G(r)}}async function an(e,t,r,n,o){let i={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",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 l=s.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 f=g.text;i.filePath=await Ye(e,f),i.relFilePath=e.relative(e.getRootDir(),i.filePath),i.name=Y(e,i.filePath),i.importName="default",i.exportName="default",i.exportType="default"}else if(e.ts.isPropertyAccessExpression(l)){let m=l.expression;if(!e.ts.isParenthesizedExpression(m))return null;let g=m.expression;if(!e.ts.isAwaitExpression(g))return null;let f=g.expression;if(!e.ts.isCallExpression(f)||f.expression.kind!==e.ts.SyntaxKind.ImportKeyword||f.arguments.length!==1)return null;let p=f.arguments[0];if(!e.ts.isStringLiteral(p)||!e.ts.isIdentifier(l.name))return null;let h=p.text;i.filePath=await Ye(e,h),i.relFilePath=e.relative(e.getRootDir(),i.filePath),i.name=j(l.name.text),i.importName=l.name.text,i.exportName=l.name.text,i.exportType="named"}else return null;return i=re(e,i,n),i.displayFilePath=N(e,i.filePath),i.filePath&&i.exportName&&(i.id=await _(e,i.filePath,i.exportName)),i}async function sn(e,t,r,n,o,i){let a={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",inputs:[],nodeIndex:r,acceptsChildren:i},s=t.statements.filter(m=>e.ts.isImportDeclaration(m)),l=s.find(m=>m.importClause&&m.importClause.name?.text===n.text);if(l){let m=l.moduleSpecifier;if(!e.ts.isStringLiteral(m))return null;a.filePath=await Ye(e,m.text),a.relFilePath=e.relative(e.getRootDir(),a.filePath),a.name=Y(e,a.filePath),a.importName=n.text,a.exportName="default",a.exportType="default"}else{let m=s.find(f=>!f.importClause||!f.importClause.namedBindings||!e.ts.isNamedImports(f.importClause.namedBindings)?!1:f.importClause.namedBindings.elements.some(u=>u.name.text===n.text));if(!m)return null;let g=m.moduleSpecifier;if(!e.ts.isStringLiteral(g))return null;a.filePath=await Ye(e,g.text),a.relFilePath=e.relative(e.getRootDir(),a.filePath),a.name=j(n.text),a.importName=n.text,a.exportName=n.text,a.exportType="named"}return a=re(e,a,o),a.displayFilePath=N(e,a.filePath),a.filePath&&a.exportName&&(a.id=await _(e,a.filePath,a.exportName)),a}function Ye(e,t){return dt(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}function cn(e,t,r){let n=!1,o=0,i=[...t.statements];for(let m=0;m<i.length;m++){let g=i[m];if(e.ts.isImportDeclaration(g)){o=m;continue}if(!e.ts.isExpressionStatement(g))continue;let f=g.expression;if(!e.ts.isCallExpression(f))continue;let u=f.expression;if(!e.ts.isPropertyAccessExpression(u))continue;let p=u.expression;if(!e.ts.isIdentifier(p)||p.text!=="builder")continue;if(u.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(ne)),s=r?e.ts.factory.createNonNullExpression(a):a,l=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,l),e.ts.factory.updateSourceFile(t,i)}function Ce(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 l=[...s.elements];for(let m=l.length-1;m>=0;m--){let g=l[m];if(e.ts.isImportSpecifier(g)){let f=g.name;if(f&&e.ts.isIdentifier(f)){let u=f.text;pn(e,t,u)||l.splice(m,1)}}}if(l.length===0)a=!0;else if(s.elements.length!==l.length){let m=e.ts.factory.updateImportClause(i.importClause,!1,i.importClause.name,e.ts.factory.createNamedImports(l)),g=e.ts.factory.updateImportDeclaration(i,void 0,m,i.moduleSpecifier,void 0);r[o]=g,n=!0}}else if(i.importClause.name&&e.ts.isIdentifier(i.importClause.name)){let l=i.importClause.name.text;pn(e,t,l)||(a=!0)}a&&(r.splice(o,1),n=!0)}}return n?e.ts.factory.updateSourceFile(t,r):t}function pn(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 Se(e,t,r,n,o,i,a){let s=null,l=null,m=null,g=-1;t=B(t),r=B(r);let f=t.find(p=>p.id===e),u=r.find(p=>p.id===e);if(n)u||(s={...B(f),inputs:B(f.inputs).map(p=>(p.isRegistered=!0,p))},g=r.length,r.push(s));else if(typeof u?.nodeIndex=="number"&&u.nodeIndex>-1){if(o)g=u.nodeIndex,l=B(u),r=r.filter(p=>p.id!==e);else if(i!=null)uo(u,i),g=u.nodeIndex,m=u;else if(a!=null){let p=u.inputs.find(h=>h.name===a.name);p&&(a.registerInput===!1?p.isRegistered=!1:(fo(p,a),p.isRegistered=!0),m=u,g=u.nodeIndex)}}return{addCmpToRegistry:s,removeCmpFromRegistry:l,updateRegisteredCmp:m,nodeIndex:g,components:ae(t,r)}}function ae(e,t){let r=G([...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(pt),n.inputs.sort((o,i)=>o.name.toLowerCase().localeCompare(i.name.toLowerCase()))}),r}function uo(e,t){L(t.name)?e.name=t.name:t.name===null&&(e.name=e.importName),L(t.description)?e.description=t.description:t.description===null&&delete e.description,L(t.image)?e.image=t.image:t.image===null&&delete e.image}function fo(e,t){L(t.type)&&(e.type=t.type),L(t.friendlyName)?e.friendlyName=t.friendlyName:t.friendlyName===null&&delete e.friendlyName,L(t.defaultValue)||De(t.defaultValue)||ge(t.defaultValue)?e.defaultValue=t.defaultValue:t.defaultValue===null&&delete e.defaultValue,L(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 Ge(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),l=e.extname(a).toLowerCase();if(l===".tsx"||l===".jsx"||l===".ts"||l===".js"){t.add(s);return}(await e.stat(s)).isDirectory()&&await r(s)}))};return await r(e.getRootDir()),await $(e,[...t])}async function U(e,t,r,n,o,i,a,s){let l=await Ge(e),[m,g,f,u]=await Promise.all([en(e,l),ln(e),xt(e),Te(e)]),p=m.map(S=>S.cmpInfo),h=g.components,c={components:ae(p,h),registryPath:e.registryPath,registryDisplayPath:N(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:xe(p),publicApiKey:u.envValue??void 0};if(s)return c.components=await We(e,c.components),c;let d=!1,x=g.sourceFile,C=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(C.length>0){let S=C.map(w=>{let P=m.find(k=>k.cmpInfo.id===w);if(!P)throw new Error(`Component ${w} not found`);return P}),b=Array.from(new Set(S.map(w=>w.cmpInfo.filePath))),y=await $(e,b);for(let w of S){let P=c.components.find(O=>O.id===w.cmpInfo.id),k=await Je(e,w,y);oe(P,k);let R=p.findIndex(O=>O.id===w.cmpInfo.id);p[R].inputs=k;let T=Se(w.cmpInfo.id,p,h,r,n,o,i),F=[...x.statements];if(T.addCmpToRegistry?(F.push(Jt(e,T.addCmpToRegistry)),d=!0):T.removeCmpFromRegistry?(F.splice(T.nodeIndex,1),d=!0):T.updateRegisteredCmp&&(F[T.nodeIndex]=ut(e,F[T.nodeIndex],T.updateRegisteredCmp),d=!0),d&&a){if(x=e.ts.factory.updateSourceFile(x,F),x=v(e,x,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),x=cn(e,x,f),e.appDir){let O=T.addCmpToRegistry||T.updateRegisteredCmp;if(O){let pe=A(e,e.registryPath,O.filePath);O.exportType==="default"?x=v(e,x,{defaultImport:O.importName,importPath:pe}):O.exportType==="named"&&(x=v(e,x,{namedImports:[O.importName],importPath:pe}))}}else x=v(e,x,{defaultImport:"dynamic",importPath:"next/dynamic"});P?.acceptsChildren&&(x=v(e,x,{namedImports:["withChildren"],importPath:"@builder.io/react"})),c.components=T.components,h=T.components.filter(O=>O.isRegistered)}}}if(d&&a){x=Ce(e,x),x=he(e,x),e.appDir&&(x=on(e,x));let S=I(e,x);S=ee(S),e.appDir&&(S=rn(S)),S=await e.formatCode(e.registryPath,S),await e.writeFile(e.registryPath,S)}return c}async function un(e){let t=[],r=await So(e,t);return await yo(e,r,t),e.appDir?(e.debug(`ensure builder setup for next.js app ${e.appDir}`),await go(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure builder setup for next.js pages ${e.pagesDir}`),await ho(e,e.pagesDir,t)),t}async function fn(e){let t=[];return e.appDir?(e.debug(`ensure figma-imports setup for next.js app ${e.appDir}`),await mo(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure figma-imports setup for next.js pages ${e.pagesDir}`),await Co(e,e.pagesDir,t)),t}async function mo(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,mn({sys:e,routePath:o,modelName:"figma-imports"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}}async function go(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,mn({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,xo(e));await e.writeFile(e.builderComponentPath,i),r.push({filePath:e.builderComponentPath,modifiedType:"create"})}}function xo(e){let t=e.typescriptEnabled;return`
33
33
  "use client";
34
34
  ${t?'import { ComponentProps } from "react";':""}
35
35
  import { BuilderComponent, useIsPreviewing } from "@builder.io/react";
36
36
  import { ${t?"BuilderContent, ":""}builder } from '@builder.io/sdk';
37
37
  import DefaultErrorPage from "next/error";
38
- import ${JSON.stringify(F(e,e.builderComponentPath,e.registryPath))};
38
+ import ${JSON.stringify(A(e,e.builderComponentPath,e.registryPath))};
39
39
  ${t?`
40
40
  type BuilderPageProps = ComponentProps<typeof BuilderComponent>;`:""}
41
41
 
@@ -56,7 +56,7 @@ export function RenderBuilderContent({ content, model }${t?": BuilderPageProps":
56
56
  // DefaultErrorPage with a 404.
57
57
  return <DefaultErrorPage statusCode={404} />;
58
58
  }
59
- `.trimStart()}function cn({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,o=F(e,t,e.builderComponentPath);return`
59
+ `.trimStart()}function mn({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,o=A(e,t,e.builderComponentPath);return`
60
60
  import { builder } from "@builder.io/sdk";
61
61
  import { RenderBuilderContent } from ${JSON.stringify(o)};
62
62
 
@@ -90,7 +90,7 @@ export default async function Page(props${n?": PageProps":""}) {
90
90
  </>
91
91
  );
92
92
  }
93
- `.trimStart()}async function uo(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,pn({sys:e,routePath:o,modelName:"page"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}}async function fo(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,pn({sys:e,routePath:o,modelName:"figma-imports"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}}function pn({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled;return`
93
+ `.trimStart()}async function ho(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,dn({sys:e,routePath:o,modelName:"page"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}}async function Co(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,dn({sys:e,routePath:o,modelName:"figma-imports"}));await e.writeFile(o,i),r.push({filePath:o,modifiedType:"create"})}}function dn({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled;return`
94
94
  import React from "react";
95
95
  import { useRouter } from "next/router";
96
96
  import { BuilderComponent, builder, useIsPreviewing } from "@builder.io/react";
@@ -98,7 +98,7 @@ import DefaultErrorPage from "next/error";
98
98
  import Head from "next/head";${n?`
99
99
  import { BuilderContent } from "@builder.io/sdk";`:""}${n?`
100
100
  import { GetStaticProps } from "next";`:""}
101
- import ${JSON.stringify(F(e,t,e.registryPath))};
101
+ import ${JSON.stringify(A(e,t,e.registryPath))};
102
102
 
103
103
  builder.init(process.env.${ne}${n?"!":""});
104
104
 
@@ -169,7 +169,7 @@ export default function Page({ page }${n?": { page: BuilderContent | null }":""}
169
169
  </>
170
170
  );
171
171
  }
172
- `.trimStart()}async function mo(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:l}=go(e);if(!await e.exists(i)){let m=await e.formatCode(i,s);await e.writeFile(i,m),t.push({filePath:i,modifiedType:"create"})}return await e.exists(a)||(await e.writeFile(a,l),t.push({filePath:a,modifiedType:"create"})),i}function go(e){let t=e.typescriptEnabled,r=`
172
+ `.trimStart()}async function So(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:l}=wo(e);if(!await e.exists(i)){let m=await e.formatCode(i,s);await e.writeFile(i,m),t.push({filePath:i,modifiedType:"create"})}return await e.exists(a)||(await e.writeFile(a,l),t.push({filePath:a,modifiedType:"create"})),i}function wo(e){let t=e.typescriptEnabled,r=`
173
173
  "use client"
174
174
  import React, { useState } from "react";
175
175
  import styles from "./styles.module.css";
@@ -232,13 +232,13 @@ export default Counter;
232
232
  font-size: 42px;
233
233
  text-align: center;
234
234
  }
235
- `.trimStart();return{component:r,styles:n}}async function xo(e,t,r){await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,""),r.push({filePath:e.registryPath,modifiedType:"create"}));let o=(await V(e,null,!1,!1,null,null,!1,!1)).components.find(i=>i.filePath===t);o&&await V(e,o.id,!0,!1,null,null,!0,!1)}async function un(e){let t=await ho(e);return{builderPageOptions:async()=>({templateContentId:"3de2f13211234071a4b19a17b4fbc5a7",pathname:"/builder-demo",title:"Builder + Next.js Demo Page"}),ensureBuilderSetup:()=>sn(t),ensureFigmaImportPage:()=>ln(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>V(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),loadComponent:async n=>{let o=await V(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>V(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>V(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>V(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>V(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>tt(t),setPublicApiKey:n=>_t(t,n.publicApiKey),getDependencies:()=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>ce(t),setCache:n=>pe(t,n)}}async function ho(e){let t=e.getRootDir(),r=e.join(t,"src"),n=await Co(e),o=await pt(e),i=`builder-registry.${o?"ts":"js"}`,a={...e,appDir:null,pagesDir:null,srcDir:null,builderComponentPath:"",componentsDir:"",registryPath:"",nextConfigPath:n,typescriptEnabled:o};if(await e.exists(r)){a.srcDir=r,a.componentsDir=e.join(r,"components");let s=e.join(r,"app");await e.exists(s)&&(a.appDir=s);let l=e.join(r,"pages");await e.exists(l)&&(a.pagesDir=l),a.registryPath=e.join(r,i)}else a.componentsDir=e.join(t,"components"),a.registryPath=e.join(t,i);if(a.builderComponentPath=e.join(a.componentsDir,`builder.${o?"tsx":"jsx"}`),!a.appDir){let s=e.join(t,"app");await e.exists(s)&&(a.appDir=s)}if(!a.pagesDir){let s=e.join(t,"pages");await e.exists(s)&&(a.pagesDir=s)}if(!a.appDir&&!a.pagesDir)throw new Error(`Could not find Next.js "app" or "pages" directory. Searched in "${t}".`);return a}function pt(e){let t=e.join(e.getRootDir(),"tsconfig.json");return e.exists(t)}async function Co(e){let t=e.join(e.getRootDir(),"next.config.ts");if(await e.exists(t))return t;let r=e.join(e.getRootDir(),"next.config.mjs");if(await e.exists(r))return r;let n=e.join(e.getRootDir(),"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.getRootDir()}".`)}async function ut(e){return await ue(e,[".env"],mn)}async function fn(e,t){So(t);let r=await ut(e),n=await fe(e,r.file,r.envKey,t);return{...r,modifiedType:n}}function So(e){typeof process<"u"&&(process.env[mn]=e)}var mn="PUBLIC_BUILDER_API_KEY";function dn(e,t,r){if(r.length===0)return e;let n=e.split(`
235
+ `.trimStart();return{component:r,styles:n}}async function yo(e,t,r){await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,""),r.push({filePath:e.registryPath,modifiedType:"create"}));let o=(await U(e,null,!1,!1,null,null,!1,!1)).components.find(i=>i.filePath===t);o&&await U(e,o.id,!0,!1,null,null,!0,!1)}async function gn(e){let t=await To(e);return{builderPageOptions:async()=>({templateContentId:"3de2f13211234071a4b19a17b4fbc5a7",pathname:"/builder-demo",title:"Builder + Next.js Demo Page"}),ensureBuilderSetup:()=>un(t),ensureFigmaImportPage:()=>fn(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>U(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),loadComponent:async n=>{let o=await U(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>U(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>U(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>U(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>U(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>Te(t),setPublicApiKey:n=>zt(t,n.publicApiKey),getDependencies:()=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>ue(t),setCache:n=>fe(t,n)}}async function To(e){let t=e.getRootDir(),r=e.join(t,"src"),n=await Eo(e),o=await xt(e),i=`builder-registry.${o?"ts":"js"}`,a={...e,appDir:null,pagesDir:null,srcDir:null,builderComponentPath:"",componentsDir:"",registryPath:"",nextConfigPath:n,typescriptEnabled:o};if(await e.exists(r)){a.srcDir=r,a.componentsDir=e.join(r,"components");let s=e.join(r,"app");await e.exists(s)&&(a.appDir=s);let l=e.join(r,"pages");await e.exists(l)&&(a.pagesDir=l),a.registryPath=e.join(r,i)}else a.componentsDir=e.join(t,"components"),a.registryPath=e.join(t,i);if(a.builderComponentPath=e.join(a.componentsDir,`builder.${o?"tsx":"jsx"}`),!a.appDir){let s=e.join(t,"app");await e.exists(s)&&(a.appDir=s)}if(!a.pagesDir){let s=e.join(t,"pages");await e.exists(s)&&(a.pagesDir=s)}if(!a.appDir&&!a.pagesDir)throw new Error(`Could not find Next.js "app" or "pages" directory. Searched in "${t}".`);return a}function xt(e){let t=e.join(e.getRootDir(),"tsconfig.json");return e.exists(t)}async function Eo(e){let t=e.join(e.getRootDir(),"next.config.ts");if(await e.exists(t))return t;let r=e.join(e.getRootDir(),"next.config.mjs");if(await e.exists(r))return r;let n=e.join(e.getRootDir(),"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.getRootDir()}".`)}async function Re(e){return await me(e,[".env"],hn)}async function xn(e,t){Do(t);let r=await Re(e),n=await de(e,r.file,r.envKey,t);return{...r,modifiedType:n}}function Do(e){typeof process<"u"&&(process.env[hn]=e)}var hn="PUBLIC_BUILDER_API_KEY";function Cn(e,t,r){if(r.length===0)return e;let n=e.split(`
236
236
  `),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(`
237
- `)}function Qe(e,t,r){return st(e,t,r.variableName)?t:wo(e,t,r)}function wo(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),l=e.ts.factory.createVariableStatement([s],a),m=[...t.statements,l];return e.ts.factory.updateSourceFile(t,m)}async function xn(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(".")||Eo.has(a))return;let s=e.normalize(i.fileName);if(s===e.registryPath)return;let l=await qe(e,o,s,i);r.push(...l)})),r}async function hn(e,t){if(e.extname(t).toLowerCase()===".tsx"){let n=await e.readFile(t);if(n)return yo(e,t,n)}return null}function yo(e,t,r){let n=v(e,r);return qe(e,null,t,n)}async function qe(e,t,r,n){r=e.normalize(r);let o=[],i=B(e,n);return await Promise.all(i.map(async a=>{let s=await To(e,t,r,a);s&&o.push(s)})),o}async function To(e,t,r,n){let o=e.relative(e.getRootDir(),r);if(e.ts.isVariableStatement(n.node))for(let i of n.node.declarationList.declarations){let a=gn(e,i.initializer);if(a&&e.ts.isIdentifier(i.name)){let s=i.name.text;return{cmpInfo:{id:await j(e,r,s),displayFilePath:N(e,r),name:O(s),inputs:[],exportName:n.isDefaultExport?"default":s,exportType:n.isDefaultExport?"default":"named",importName:s,filePath:r,relFilePath:o},node:a}}}else if(e.ts.isCallExpression(n.node)){let i=gn(e,n.node);if(i)return{cmpInfo:{id:await j(e,r,"default"),displayFilePath:N(e,r),name:H(e,r),inputs:[],exportName:"default",exportType:"default",importName:Se(e,r),filePath:r,relFilePath:o},node:i}}return null}function gn(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 Eo=new Set(["node_modules","layout.tsx","404.tsx","router-head.tsx"]);async function Cn(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 je(e,t.cmpInfo.filePath,null);if(!(await qe(e,i,t.cmpInfo.filePath,o)).find(l=>l.cmpInfo.id===t.cmpInfo.id))throw new Error(`createComponentInputs() Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return De(e,i,r)}return[]}async function Sn(e){return ft(e)}async function ft(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,Do),t.push({filePath:e.registryPath,modifiedType:"create"})),t}var Do=`import type { RegisteredComponent } from "@builder.io/sdk-qwik";
237
+ `)}function Xe(e,t,r){return mt(e,t,r.variableName)?t:vo(e,t,r)}function vo(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),l=e.ts.factory.createVariableStatement([s],a),m=[...t.statements,l];return e.ts.factory.updateSourceFile(t,m)}async function wn(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(".")||Io.has(a))return;let s=e.normalize(i.fileName);if(s===e.registryPath)return;let l=await Ze(e,o,s,i);r.push(...l)})),r}async function yn(e,t){if(e.extname(t).toLowerCase()===".tsx"){let n=await e.readFile(t);if(n)return bo(e,t,n)}return null}function bo(e,t,r){let n=E(e,r);return Ze(e,null,t,n)}async function Ze(e,t,r,n){r=e.normalize(r);let o=[],i=V(e,n);return await Promise.all(i.map(async a=>{let s=await Po(e,t,r,a);s&&o.push(s)})),o}async function Po(e,t,r,n){let o=e.relative(e.getRootDir(),r);if(e.ts.isVariableStatement(n.node))for(let i of n.node.declarationList.declarations){let a=Sn(e,i.initializer);if(a&&e.ts.isIdentifier(i.name)){let s=i.name.text;return{cmpInfo:{id:await _(e,r,s),displayFilePath:N(e,r),name:j(s),inputs:[],exportName:n.isDefaultExport?"default":s,exportType:n.isDefaultExport?"default":"named",importName:s,filePath:r,relFilePath:o},node:a}}}else if(e.ts.isCallExpression(n.node)){let i=Sn(e,n.node);if(i)return{cmpInfo:{id:await _(e,r,"default"),displayFilePath:N(e,r),name:Y(e,r),inputs:[],exportName:"default",exportType:"default",importName:Ee(e,r),filePath:r,relFilePath:o},node:i}}return null}function Sn(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 Io=new Set(["node_modules","layout.tsx","404.tsx","router-head.tsx"]);async function Tn(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 Ue(e,t.cmpInfo.filePath,null);if(!(await Ze(e,i,t.cmpInfo.filePath,o)).find(l=>l.cmpInfo.id===t.cmpInfo.id))throw new Error(`createComponentInputs() Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return Ie(e,i,r)}return[]}async function En(e){return ht(e)}async function ht(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,No),t.push({filePath:e.registryPath,modifiedType:"create"})),t}var No=`import type { RegisteredComponent } from "@builder.io/sdk-qwik";
238
238
 
239
239
  export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
240
240
  ];
241
- `;async function wn(e){await ft(e);let t=await e.readFile(e.registryPath);return t?vo(e,t):{components:[],sourceFile:v(e,"")}}async function vo(e,t){let r=v(e,t);return bo(e,r)}async function bo(e,t){let r=[],n=X(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await mt(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:Y(r)}}async function mt(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",inputs:[]};for(let o of r.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(b(e,o)==="component"&&e.ts.isIdentifier(o.initializer)){let a=o.initializer.text;n.name===""&&(n.name=O(a)),n.importName=a;let s=await _e(e,e.registryPath,t,a);if(!s)continue;n.filePath=s.filePath,n.relFilePath=s.relFilePath,n.displayFilePath=s.displayFilePath,n.exportType=s.exportType;let l=await hn(e,s.filePath);if(l&&l.length>0)if(l.length===1)n.exportName=l[0].cmpInfo.exportName;else{let m=l.find(g=>g.cmpInfo.exportName===a);m&&(n.exportName=m.cmpInfo.exportName)}continue}}return n=re(e,n,r),n.filePath&&n.exportName&&(n.id=await j(e,n.filePath,n.exportName)),n}async function yn(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),l=e.extname(a).toLowerCase();if(l===".tsx"||l===".ts"){t.add(s);return}(await e.stat(s)).isDirectory()&&await r(s)}))};return await r(e.getRootDir()),await $(e,[...t])}async function ae(e,t,r,n,o,i,a,s){let l=await yn(e),[m,g]=await Promise.all([xn(e,l),wn(e)]),f=m.map(d=>d.cmpInfo),u=g.components,p={components:ie(f,u),registryPath:e.registryPath,registryDisplayPath:N(e,e.registryPath),frameworks:e.getFrameworks()};if(s)return p;if(t!=null){let d=m.find(E=>E.cmpInfo.id===t);if(!d)throw new Error(`Component ${t} not found`);let c=g.sourceFile,x=p.components.find(E=>E.id===t),h=await Cn(e,d);oe(x,h),t=Array.isArray(t)?t[0]:t;let C=xe(t,f,u,r,n,o,i),{elements:S,elmIndex:y,statementIndex:T,statement:w,variableDeclaration:D}=await Io(e,c,d),A=!1;if(C.addCmpToRegistry?(S.push(Po(e,C.addCmpToRegistry)),A=!0):C.removeCmpFromRegistry?(S.splice(y,1),A=!0):C.updateRegisteredCmp&&(S[y]=G(e,S[y],C.updateRegisteredCmp),A=!0),A&&a){let E=[...c.statements];E[T]=e.ts.factory.updateVariableStatement(w,w.modifiers,e.ts.factory.updateVariableDeclarationList(w.declarationList,[e.ts.factory.updateVariableDeclaration(D,D.name,D.exclamationToken,D.type,e.ts.factory.createArrayLiteralExpression(Me(e,S)))])),c=e.ts.factory.updateSourceFile(c,E),x.exportType==="named"?c=P(e,c,{namedImports:[x.importName],importPath:F(e,e.registryPath,x.filePath)}):c=P(e,c,{defaultImport:x.importName,importPath:F(e,e.registryPath,x.filePath)}),c=P(e,c,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-qwik",isTypeOnly:!0}),c=Qe(e,c,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),c=ge(e,c),c=de(e,c);let L=I(e,c);L=Z(L),L=dn(L,No,"CUSTOM_COMPONENTS"),L=await e.formatCode(e.registryPath,L),await e.writeFile(e.registryPath,L)}p.components=C.components}return p}function Po(e,t){return G(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName))],!0),t)}async function Io(e,t,r){let n=X(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 mt(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}var No=["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 Tn(e){let t=await Ro(e);return{builderPageOptions:async()=>({templateContentId:"dc70f1d979ad416d8fd357137eb9ddfb",pathname:"/",title:"Builder + Qwik Demo Page"}),ensureBuilderSetup:()=>Sn(t),ensureFigmaImportPage:async()=>[],getRegistryPath:()=>t.registryPath,getRegistry:n=>ae(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),loadComponent:async n=>{let o=await ae(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>ae(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>ae(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>ae(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>ae(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>ut(t),setPublicApiKey:n=>fn(t,n.publicApiKey),getDependencies:()=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-qwik"}],getDevRunCommand:()=>"dev",getCache:()=>ce(t),setCache:n=>pe(t,n)}}async function Ro(e){let t=await Ce(e,e.getRootDir(),"components");if(!t)throw new Error(`Could not find components directory within project: ${e.getRootDir()}`);let r=e.join(t,"builder-registry.ts"),n=e.join(e.getRootDir(),".env");return{...e,componentsDir:t,registryPath:r,envPath:n}}async function dt(e){return await ue(e,[".env"],Pe)}async function En(e,t){let r=await dt(e),n=await fe(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var Pe="PUBLIC_BUILDER_KEY";async function Dn(e){let t=[],r=e.join(e.getRootDir(),"build"),n=async o=>{let i=await e.readdir(o);await Promise.all(i.map(async a=>{if(a.startsWith(".")||a==="node_modules"||Fo.has(a)||a.includes("$."))return;let s=e.join(o,a);if(s===e.remixConfigPath||s===e.registryPath||s===r)return;let l=await e.stat(s);if(l.isFile()){let m=await Ue(e,s);m&&t.push(...m)}else l.isDirectory()&&await n(s)}))};return await n(e.getRootDir()),t}var Fo=new Set(["root.tsx","root.ts","root.jsx","root.js","_index.tsx","_index.jsx","_index.ts","_index.js"]);async function vn(e){await xt(e);let t=await e.readFile(e.registryPath);return t?Ao(e,t):{components:[],sourceFile:v(e,"")}}async function Ao(e,t){let r=v(e,t);return Lo(e,r)}async function Lo(e,t){let r=[],n=X(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await gt(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:Y(r)}}async function gt(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",inputs:[],acceptsChildren:!1};for(let o of r.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(b(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 f=s.arguments[0];e.ts.isIdentifier(f)&&(a=f.text)}if(!a)continue;n.name===""&&(n.name=O(a)),n.importName=a;let l=await _e(e,e.registryPath,t,a);if(!l)continue;n.filePath=l.filePath,n.relFilePath=l.relFilePath,n.displayFilePath=l.displayFilePath,n.exportType=l.exportType;let m=await Ue(e,l.filePath);if(m&&m.length>0)if(m.length===1)n.exportName=m[0].cmpInfo.exportName;else{let g=m.find(f=>f.cmpInfo.exportName===a);g&&(n.exportName=g.cmpInfo.exportName)}continue}}return n=re(e,n,r),n.filePath&&n.exportName&&(n.id=await j(e,n.filePath,n.exportName)),n}async function z(e,t,r,n,o,i,a,s){let[l,m]=await Promise.all([Dn(e),vn(e)]),g=l.map(x=>x.cmpInfo),f=m.components,u={components:ie(g,f),registryPath:e.registryPath,registryDisplayPath:N(e,e.registryPath),frameworks:e.getFrameworks()};if(s)return u.components=await Ve(e,u.components),u;let p=!1,d=m.sourceFile,c=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(c.length>0){let x=c.map(S=>{let y=l.find(T=>T.cmpInfo.id===S);if(!y)throw new Error(`Component ${S} not found`);return y}),h=Array.from(new Set(x.map(S=>S.cmpInfo.filePath))),C=await $(e,h);for(let S of x){let y=u.components.find(U=>U.id===S.cmpInfo.id),T=await ze(e,S,C);oe(y,T);let w=g.findIndex(U=>U.id===S.cmpInfo.id);g[w].inputs=T;let D=xe(S.cmpInfo.id,g,f,r,n,o,i),{elements:A,elmIndex:E,statementIndex:L,statement:R,variableDeclaration:te}=await Oo(e,d,S);if(D.addCmpToRegistry)A.push(ko(e,D.addCmpToRegistry)),p=!0;else if(D.removeCmpFromRegistry)A.splice(E,1),p=!0;else if(D.updateRegisteredCmp){let U=G(e,A[E],D.updateRegisteredCmp);A[E]=e.ts.factory.updateObjectLiteralExpression(U,[bn(e,D.updateRegisteredCmp),...U.properties.slice(1)]),p=!0}if(p&&a){let U=[...d.statements];U[L]=e.ts.factory.updateVariableStatement(R,R.modifiers,e.ts.factory.updateVariableDeclarationList(R.declarationList,[e.ts.factory.updateVariableDeclaration(te,te.name,te.exclamationToken,te.type,e.ts.factory.createArrayLiteralExpression(Me(e,A)))])),d=e.ts.factory.updateSourceFile(d,U),y.exportType==="named"?d=P(e,d,{namedImports:[y.importName],importPath:F(e,e.registryPath,y.filePath)}):d=P(e,d,{defaultImport:y.importName,importPath:F(e,e.registryPath,y.filePath)}),d=P(e,d,{namedImports:["RegisteredComponent"],importPath:"@builder.io/react",isTypeOnly:!0}),y.acceptsChildren&&(d=P(e,d,{namedImports:["withChildren"],importPath:"@builder.io/react"})),d=Qe(e,d,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),u.components=D.components,f=D.components.filter(cr=>cr.isRegistered)}}}if(p&&a){d=ge(e,d),d=de(e,d);let x=I(e,d);x=Z(x),x=await e.formatCode(e.registryPath,x),await e.writeFile(e.registryPath,x)}return u}function bn(e,t){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 ko(e,t){return G(e,e.ts.factory.createObjectLiteralExpression([bn(e,t)],!0),t)}async function Oo(e,t,r){let n=X(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 gt(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}async function Pn(e){let t=[],r=await Bo(e,t);return t.push(...await xt(e)),await Vo(e,r),await _o(e,t),t}async function In(e){let t=[];return await jo(e,t),t}async function jo(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,Nn({sys:e,routePath:n,modelName:"figma-imports"}));await e.writeFile(n,i),t.push({filePath:n,modifiedType:o?"update":"create"})}async function _o(e,t){let r=`$.${e.typescriptEnabled?"tsx":"jsx"}`;e.hasLocaleParam&&(e.debug("remixEnsureAppRoute, hasLocaleParam"),r=`($locale).${r}`);let n=e.join(e.routesDir,r),o=await e.exists(n);e.debug(`remixEnsureAppRoute, hasRoute: ${o}`);let i=await e.formatCode(n,Nn({sys:e,routePath:n,modelName:"page"}));await e.writeFile(n,i),t.push({filePath:n,modifiedType:o?"update":"create"})}function Nn({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,o=F(e,t,e.registryPath),i="",a="";n&&(i="import type { LoaderArgs } from '@remix-run/server-runtime';",a=": LoaderArgs");let s=`process.env.${Pe}`;return e.getFrameworks().some(l=>l.name==="@shopify/remix-oxygen")&&(s=`context.env.${Pe}`),n&&(s+="!"),`
241
+ `;async function Dn(e){await ht(e);let t=await e.readFile(e.registryPath);return t?Ro(e,t):{components:[],sourceFile:E(e,"")}}async function Ro(e,t){let r=E(e,t);return Fo(e,r)}async function Fo(e,t){let r=[],n=Z(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await Ct(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:G(r)}}async function Ct(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",inputs:[]};for(let o of r.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(D(e,o)==="component"&&e.ts.isIdentifier(o.initializer)){let a=o.initializer.text;n.name===""&&(n.name=j(a)),n.importName=a;let s=await Me(e,e.registryPath,t,a);if(!s)continue;n.filePath=s.filePath,n.relFilePath=s.relFilePath,n.displayFilePath=s.displayFilePath,n.exportType=s.exportType;let l=await yn(e,s.filePath);if(l&&l.length>0)if(l.length===1)n.exportName=l[0].cmpInfo.exportName;else{let m=l.find(g=>g.cmpInfo.exportName===a);m&&(n.exportName=m.cmpInfo.exportName)}continue}}return n=re(e,n,r),n.filePath&&n.exportName&&(n.id=await _(e,n.filePath,n.exportName)),n}async function vn(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),l=e.extname(a).toLowerCase();if(l===".tsx"||l===".ts"){t.add(s);return}(await e.stat(s)).isDirectory()&&await r(s)}))};return await r(e.getRootDir()),await $(e,[...t])}async function se(e,t,r,n,o,i,a,s){let l=await vn(e),[m,g,f]=await Promise.all([wn(e,l),Dn(e),Re(e)]),u=m.map(c=>c.cmpInfo),p=g.components,h={components:ae(u,p),registryPath:e.registryPath,registryDisplayPath:N(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:xe(u),publicApiKey:f.envValue??void 0};if(s)return h;if(t!=null){let c=m.find(T=>T.cmpInfo.id===t);if(!c)throw new Error(`Component ${t} not found`);let d=g.sourceFile,x=h.components.find(T=>T.id===t),C=await Tn(e,c);oe(x,C),t=Array.isArray(t)?t[0]:t;let S=Se(t,u,p,r,n,o,i),{elements:b,elmIndex:y,statementIndex:w,statement:P,variableDeclaration:k}=await Lo(e,d,c),R=!1;if(S.addCmpToRegistry?(b.push(Ao(e,S.addCmpToRegistry)),R=!0):S.removeCmpFromRegistry?(b.splice(y,1),R=!0):S.updateRegisteredCmp&&(b[y]=X(e,b[y],S.updateRegisteredCmp),R=!0),R&&a){let T=[...d.statements];T[w]=e.ts.factory.updateVariableStatement(P,P.modifiers,e.ts.factory.updateVariableDeclarationList(P.declarationList,[e.ts.factory.updateVariableDeclaration(k,k.name,k.exclamationToken,k.type,e.ts.factory.createArrayLiteralExpression(He(e,b)))])),d=e.ts.factory.updateSourceFile(d,T),x.exportType==="named"?d=v(e,d,{namedImports:[x.importName],importPath:A(e,e.registryPath,x.filePath)}):d=v(e,d,{defaultImport:x.importName,importPath:A(e,e.registryPath,x.filePath)}),d=v(e,d,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-qwik",isTypeOnly:!0}),d=Xe(e,d,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),d=Ce(e,d),d=he(e,d);let F=I(e,d);F=ee(F),F=Cn(F,ko,"CUSTOM_COMPONENTS"),F=await e.formatCode(e.registryPath,F),await e.writeFile(e.registryPath,F)}h.components=S.components}return h}function Ao(e,t){return X(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName))],!0),t)}async function Lo(e,t,r){let n=Z(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 Ct(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}var ko=["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 bn(e){let t=await Oo(e);return{builderPageOptions:async()=>({templateContentId:"dc70f1d979ad416d8fd357137eb9ddfb",pathname:"/",title:"Builder + Qwik Demo Page"}),ensureBuilderSetup:()=>En(t),ensureFigmaImportPage:async()=>[],getRegistryPath:()=>t.registryPath,getRegistry:n=>se(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),loadComponent:async n=>{let o=await se(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>se(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>se(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>se(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>se(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>Re(t),setPublicApiKey:n=>xn(t,n.publicApiKey),getDependencies:()=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-qwik"}],getDevRunCommand:()=>"dev",getCache:()=>ue(t),setCache:n=>fe(t,n)}}async function Oo(e){let t=await ye(e,e.getRootDir(),"components");if(!t)throw new Error(`Could not find components directory within project: ${e.getRootDir()}`);let r=e.join(t,"builder-registry.ts"),n=e.join(e.getRootDir(),".env");return{...e,componentsDir:t,registryPath:r,envPath:n}}async function Fe(e){return await me(e,[".env"],Ae)}async function Pn(e,t){let r=await Fe(e),n=await de(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var Ae="PUBLIC_BUILDER_KEY";async function In(e,t){let r=[],n=t.getSourceFiles(),o=t.getTypeChecker(),i=e.join(e.getRootDir(),"build");return await Promise.all(n.map(async a=>{let s=e.basename(a.fileName);if(s.startsWith(".")||s==="node_modules"||jo.has(s)||s.includes("$."))return;let l=e.normalize(a.fileName);if(l===e.remixConfigPath||l===e.registryPath||l===i)return;let m=await ie(e,o,l,a);r.push(...m)})),r}var jo=new Set(["root.tsx","root.ts","root.jsx","root.js","_index.tsx","_index.jsx","_index.ts","_index.js"]);async function Nn(e){await wt(e);let t=await e.readFile(e.registryPath);return t?_o(e,t):{components:[],sourceFile:E(e,"")}}async function _o(e,t){let r=E(e,t);return Bo(e,r)}async function Bo(e,t){let r=[],n=Z(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(o,i)=>{let a=await St(e,t,o);a&&(a.nodeIndex=i,r.push(a))})),{sourceFile:t,components:G(r)}}async function St(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",inputs:[],acceptsChildren:!1};for(let o of r.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(D(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 f=s.arguments[0];e.ts.isIdentifier(f)&&(a=f.text)}if(!a)continue;n.name===""&&(n.name=j(a)),n.importName=a;let l=await Me(e,e.registryPath,t,a);if(!l)continue;n.filePath=l.filePath,n.relFilePath=l.relFilePath,n.displayFilePath=l.displayFilePath,n.exportType=l.exportType;let m=await Zt(e,l.filePath);if(m&&m.length>0)if(m.length===1)n.exportName=m[0].cmpInfo.exportName;else{let g=m.find(f=>f.cmpInfo.exportName===a);g&&(n.exportName=g.cmpInfo.exportName)}continue}}return n=re(e,n,r),n.filePath&&n.exportName&&(n.id=await _(e,n.filePath,n.exportName)),n}async function M(e,t,r,n,o,i,a,s){let l=await Ge(e),[m,g,f]=await Promise.all([In(e,l),Nn(e),Fe(e)]),u=m.map(C=>C.cmpInfo),p=g.components,h={components:ae(u,p),registryPath:e.registryPath,registryDisplayPath:N(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:xe(u),publicApiKey:f.envValue??void 0};if(s)return h.components=await We(e,h.components),h;let c=!1,d=g.sourceFile,x=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(x.length>0){let C=x.map(y=>{let w=m.find(P=>P.cmpInfo.id===y);if(!w)throw new Error(`Component ${y} not found`);return w}),S=Array.from(new Set(C.map(y=>y.cmpInfo.filePath))),b=await $(e,S);for(let y of C){let w=h.components.find(K=>K.id===y.cmpInfo.id),P=await Je(e,y,b);oe(w,P);let k=u.findIndex(K=>K.id===y.cmpInfo.id);u[k].inputs=P;let R=Se(y.cmpInfo.id,u,p,r,n,o,i),{elements:T,elmIndex:F,statementIndex:O,statement:pe,variableDeclaration:_e}=await $o(e,d,y);if(R.addCmpToRegistry)T.push(Vo(e,R.addCmpToRegistry)),c=!0;else if(R.removeCmpFromRegistry)T.splice(F,1),c=!0;else if(R.updateRegisteredCmp){let K=X(e,T[F],R.updateRegisteredCmp);T[F]=e.ts.factory.updateObjectLiteralExpression(K,[Rn(e,R.updateRegisteredCmp),...K.properties.slice(1)]),c=!0}if(c&&a){let K=[...d.statements];K[O]=e.ts.factory.updateVariableStatement(pe,pe.modifiers,e.ts.factory.updateVariableDeclarationList(pe.declarationList,[e.ts.factory.updateVariableDeclaration(_e,_e.name,_e.exclamationToken,_e.type,e.ts.factory.createArrayLiteralExpression(He(e,T)))])),d=e.ts.factory.updateSourceFile(d,K),w.exportType==="named"?d=v(e,d,{namedImports:[w.importName],importPath:A(e,e.registryPath,w.filePath)}):d=v(e,d,{defaultImport:w.importName,importPath:A(e,e.registryPath,w.filePath)}),d=v(e,d,{namedImports:["RegisteredComponent"],importPath:"@builder.io/react",isTypeOnly:!0}),w.acceptsChildren&&(d=v(e,d,{namedImports:["withChildren"],importPath:"@builder.io/react"})),d=Xe(e,d,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),h.components=R.components,p=R.components.filter(mr=>mr.isRegistered)}}}if(c&&a){d=Ce(e,d),d=he(e,d);let C=I(e,d);C=ee(C),C=await e.formatCode(e.registryPath,C),await e.writeFile(e.registryPath,C)}return h}function Rn(e,t){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 Vo(e,t){return X(e,e.ts.factory.createObjectLiteralExpression([Rn(e,t)],!0),t)}async function $o(e,t,r){let n=Z(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 St(e,t,o[a]))?.id===r.cmpInfo.id){i=a;break}return{...n,elements:o,elmIndex:i}}async function Fn(e){let t=[],r=await Mo(e,t);return t.push(...await wt(e)),await Qo(e,r),await Uo(e,t),t}async function An(e){let t=[];return await zo(e,t),t}async function zo(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,Ln({sys:e,routePath:n,modelName:"figma-imports"}));await e.writeFile(n,i),t.push({filePath:n,modifiedType:o?"update":"create"})}async function Uo(e,t){let r=`$.${e.typescriptEnabled?"tsx":"jsx"}`;e.hasLocaleParam&&(e.debug("remixEnsureAppRoute, hasLocaleParam"),r=`($locale).${r}`);let n=e.join(e.routesDir,r),o=await e.exists(n);e.debug(`remixEnsureAppRoute, hasRoute: ${o}`);let i=await e.formatCode(n,Ln({sys:e,routePath:n,modelName:"page"}));await e.writeFile(n,i),t.push({filePath:n,modifiedType:o?"update":"create"})}function Ln({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,o=A(e,t,e.registryPath),i="",a="";n&&(i="import type { LoaderArgs } from '@remix-run/server-runtime';",a=": LoaderArgs");let s=`process.env.${Ae}`;return e.getFrameworks().some(l=>l.name==="@shopify/remix-oxygen")&&(s=`context.env.${Ae}`),n&&(s+="!"),`
242
242
  import { BuilderComponent, builder } from "@builder.io/react";
243
243
  import { useLoaderData } from "@remix-run/react";
244
244
  import { CUSTOM_COMPONENTS } from ${JSON.stringify(o)};
@@ -295,11 +295,11 @@ export default function Page() {
295
295
  ${n?`
296
296
  declare global {
297
297
  interface Env {
298
- ${Pe}: string;
298
+ ${Ae}: string;
299
299
  }
300
300
  }
301
301
  `:""}
302
- `}async function Bo(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:l}=$o(e),m=await e.exists(i);if(e.debug(`remixEnsureCounterComponent, hasCounterCmp: ${m}`),!m){let f=await e.formatCode(i,s);await e.writeFile(i,f),t.push({filePath:i,modifiedType:"create"})}let g=await e.exists(a);return e.debug(`remixEnsureCounterComponent, hasCounterStyles: ${g}`),g||(await e.writeFile(a,l),t.push({filePath:a,modifiedType:"create"})),i}function $o(e){let t=e.typescriptEnabled,r=`
302
+ `}async function Mo(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:l}=Ko(e),m=await e.exists(i);if(e.debug(`remixEnsureCounterComponent, hasCounterCmp: ${m}`),!m){let f=await e.formatCode(i,s);await e.writeFile(i,f),t.push({filePath:i,modifiedType:"create"})}let g=await e.exists(a);return e.debug(`remixEnsureCounterComponent, hasCounterStyles: ${g}`),g||(await e.writeFile(a,l),t.push({filePath:a,modifiedType:"create"})),i}function Ko(e){let t=e.typescriptEnabled,r=`
303
303
  import { useState } from "react";
304
304
  import styles from "./styles.module.css";
305
305
  ${t?`
@@ -362,18 +362,18 @@ export default Counter;
362
362
  font-size: 42px;
363
363
  text-align: center;
364
364
  }
365
- `.trimStart();return{component:r,styles:n}}async function Vo(e,t){let n=(await z(e,null,!1,!1,null,null,!1,!1)).components.find(o=>o.filePath===t);n&&await z(e,n.id,!0,!1,null,null,!0,!1)}async function xt(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,zo(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}function zo(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/react";
365
+ `.trimStart();return{component:r,styles:n}}async function Qo(e,t){let n=(await M(e,null,!1,!1,null,null,!1,!1)).components.find(o=>o.filePath===t);n&&await M(e,n.id,!0,!1,null,null,!0,!1)}async function wt(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,qo(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}function qo(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/react";
366
366
 
367
367
  export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
368
368
  ];`:`export const CUSTOM_COMPONENTS = [
369
369
  ];
370
- `}async function Rn(e){let t=await Uo(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:()=>Pn(t),ensureFigmaImportPage:()=>In(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>z(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),loadComponent:async n=>{let o=await z(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>z(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>z(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>z(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>z(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>dt(t),setPublicApiKey:n=>En(t,n.publicApiKey),getDependencies:()=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>ce(t),setCache:n=>pe(t,n)}}async function Uo(e){let t=await Qo(e),r=await qo(e),n=e.dirname(r),o=e.join(n,"components"),i=await Mo(e),a=`builder-registry.${i?"ts":"js"}`,s=e.join(n,a);return{...e,registryPath:s,remixConfigPath:t,typescriptEnabled:i,appDir:n,componentsDir:o,routesDir:r,hasLocaleParam:await Ko(e,r)}}function Mo(e){let t=e.join(e.getRootDir(),"tsconfig.json");return e.exists(t)}async function Ko(e,t){return(await e.readdir(t)).some(n=>n.startsWith("($locale)."))}async function Qo(e){let t=["remix.config.ts","remix.config.js"];for(let r of t){let n=e.join(e.getRootDir(),r);if(await e.exists(n))return n}throw new Error(`Could not find Remix config file. Searched for ${t.join(", ")} in "${e.getRootDir()}".`)}async function qo(e){let t=await Ce(e,e.getRootDir(),"routes");if(t)return t;throw new Error(`Could not find Remix "routes" directory in "${e.getRootDir()}". Please ensure this command is ran from within your Remix project's directory.`)}var Xe=xr(Mn(),1);async function Kn(e,t){let n={components:(await t.getRegistry()).components.filter(i=>i.isRegistered).map(i=>{let a={filePath:W(e.relative(e.getRootDir(),i.filePath)),name:i.name,image:i.image,description:i.description,exportName:i.exportName,inputs:_(i.inputs)};return _(a)}),version:1};e.debug("exporting registry components:",n.components.length);let o=(0,Xe.compress)(n);return btoa(JSON.stringify(o))}async function Qn(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,Xe.decompress)(o),a=_(n);e.debug("importing registry components:",i.components.length);for(let s of i.components){let l=W(e.normalize(s.filePath)),m=n.components.find(f=>W(f.filePath).endsWith(l)&&f.exportName===s.exportName);if(!m){console.error(`Could not find component to register: ${s.filePath}, ${s.exportName}`);continue}e.debug(`register (${m.id})`,m.filePath),await t.registerComponent({cmpId:m.id});for(let f of s.inputs)e.debug(`set input (${m.id})`),await t.setRegisteredComponentInput({cmpId:m.id,name:f.name,type:f.type,required:f.required,defaultValue:f.defaultValue,friendlyName:f.friendlyName,helperText:f.helperText});e.debug(`set input (${m.id}) info`);let g=await t.setRegisteredComponentInfo({cmpId:m.id,name:s.name,image:s.image,description:s.description});a=_(g)}return a}var xi={"@builder.io/qwik-city":Tn,next:un,"@remix-run/react":Rn};async function qn(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 J(e)),e.frameworks.length===0)throw new Error(`Supported Devtools framework for not found within ${e.getRootDir()}`);for(let t of e.frameworks){let r=xi[t.name];if(r){let n=await r(e);return{...n,exportRegistry:()=>Kn(e,n),importRegistry:i=>Qn(e,n,i)}}}throw new Error(`Devtools framework not found for ${e.getRootDir()}, ${JSON.stringify(e.frameworks,null,2)}`)}function Jn(e){function t(f){if(typeof f!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(f))}function r(f,u){let p="",d=0,c=-1,x=0,h;for(let C=0;C<=f.length;++C){if(C<f.length)h=f.charCodeAt(C);else{if(h===47)break;h=47}if(h===47){if(!(c===C-1||x===1))if(c!==C-1&&x===2){if(p.length<2||d!==2||p.charCodeAt(p.length-1)!==46||p.charCodeAt(p.length-2)!==46){if(p.length>2){let S=p.lastIndexOf("/");if(S!==p.length-1){S===-1?(p="",d=0):(p=p.slice(0,S),d=p.length-1-p.lastIndexOf("/")),c=C,x=0;continue}}else if(p.length===2||p.length===1){p="",d=0,c=C,x=0;continue}}u&&(p.length>0?p+="/..":p="..",d=2)}else p.length>0?p+="/"+f.slice(c+1,C):p=f.slice(c+1,C),d=C-c-1;c=C,x=0}else h===46&&x!==-1?++x:x=-1}return p}let n=function(...u){let p="",d=!1;for(let c=u.length-1;c>=-1&&!d;c--){let x;c>=0?x=u[c]:e.cwd?x=e.cwd():x="/",t(x),x.length!==0&&(p=x+"/"+p,d=x.charCodeAt(0)===47)}return p=r(p,!d),d?p.length>0?"/"+p:"/":p.length>0?p:"."},o=function(u){if(t(u),u.length===0)return".";let p=u.charCodeAt(0)===47,d=u.charCodeAt(u.length-1)===47;return u=r(u,!p),u.length===0&&!p&&(u="."),u.length>0&&d&&(u+="/"),p?"/"+u:u};return{relative:function(u,p){if(t(u),t(p),u===p||(u=n(u),p=n(p),u===p))return"";let d=1;for(;d<u.length&&u.charCodeAt(d)===47;++d);let c=u.length,x=c-d,h=1;for(;h<p.length&&p.charCodeAt(h)===47;++h);let S=p.length-h,y=x<S?x:S,T=-1,w=0;for(;w<=y;++w){if(w===y){if(S>y){if(p.charCodeAt(h+w)===47)return p.slice(h+w+1);if(w===0)return p.slice(h+w)}else x>y&&(u.charCodeAt(d+w)===47?T=w:w===0&&(T=0));break}let A=u.charCodeAt(d+w),E=p.charCodeAt(h+w);if(A!==E)break;A===47&&(T=w)}let D="";for(w=d+T+1;w<=c;++w)(w===c||u.charCodeAt(w)===47)&&(D.length===0?D+="..":D+="/..");return D.length>0?D+p.slice(h+T):(h+=T,p.charCodeAt(h)===47&&++h,p.slice(h))},resolve:n,join:function(...u){if(u.length===0)return".";let p;for(let d=0;d<u.length;++d){let c=u[d];t(c),c.length>0&&(p===void 0?p=c:p+="/"+c)}return p===void 0?".":o(p)},isAbsolute:function(u){return t(u),u.length>0&&u.charCodeAt(0)===47},basename:function(u,p){if(p!==void 0&&typeof p!="string")throw new TypeError('"ext" argument must be a string');t(u);let d=0,c=-1,x=!0,h;if(p!==void 0&&p.length>0&&p.length<=u.length){if(p.length===u.length&&p===u)return"";let C=p.length-1,S=-1;for(h=u.length-1;h>=0;--h){let y=u.charCodeAt(h);if(y===47){if(!x){d=h+1;break}}else S===-1&&(x=!1,S=h+1),C>=0&&(y===p.charCodeAt(C)?--C===-1&&(c=h):(C=-1,c=S))}return d===c?c=S:c===-1&&(c=u.length),u.slice(d,c)}else{for(h=u.length-1;h>=0;--h)if(u.charCodeAt(h)===47){if(!x){d=h+1;break}}else c===-1&&(x=!1,c=h+1);return c===-1?"":u.slice(d,c)}},normalize:o,dirname:function(u){if(t(u),u.length===0)return".";let p=u.charCodeAt(0),d=p===47,c=-1,x=!0;for(let h=u.length-1;h>=1;--h)if(p=u.charCodeAt(h),p===47){if(!x){c=h;break}}else x=!1;return c===-1?d?"/":".":d&&c===1?"//":u.slice(0,c)},extname:function(u){t(u);let p=-1,d=0,c=-1,x=!0,h=0;for(let C=u.length-1;C>=0;--C){let S=u.charCodeAt(C);if(S===47){if(!x){d=C+1;break}continue}c===-1&&(x=!1,c=C+1),S===46?p===-1?p=C:h!==1&&(h=1):p!==-1&&(h=-1)}return p===-1||c===-1||h===0||h===1&&p===c-1&&p===d+1?"":u.slice(p,c)}}}async function Wn(e){let t=e.getRootDir?e.getRootDir:()=>"/",r=e.cwd?e.cwd:()=>"/",n=Jn({cwd:r,...e}),o=new Map,i=c=>n.normalize(n.resolve(r(),c)),a=c=>{for(let[x]of o)if((x+"/").startsWith(c))return!0;return c===t()},s=c=>(c=i(c),o.has(c)?!0:a(c)),l=c=>{c=i(c);let x=c===t()?c:c+"/",h=x.split("/").length-1,C=[];for(let[S]of o)if(S.split("/").slice(0,h).join("/")+"/"===x){let w=S.split("/")[h];w&&!C.includes(w)&&C.push(w)}return C.sort()},m=c=>{c=i(c);let x=o.get(c);return typeof x=="string"?x:null},g=c=>(c=i(c),{isFile:()=>o.has(c),isDirectory:()=>!o.has(c)&&a(c)}),f=async c=>{if(typeof crypto<"u"){let C=new TextEncoder().encode(c),S=await crypto.subtle.digest("SHA-256",C);return Array.from(new Uint8Array(S)).map(y=>y.toString(16).padStart(2,"0")).join("")}let x=0;for(let h=0;h<c.length;h++){let C=c.charCodeAt(h);x=(x<<5)-x+C,x|=0}return Number(Math.abs(x)).toString(36)},u=new Set,p={getRootDir:t,cwd:r,exists:async c=>s(c),existsSync:s,readdir:async c=>l(c),readdirSync:l,readFile:async c=>m(c),readFileSync:m,stat:async c=>g(c),statSync:g,writeFile:async(c,x)=>{c=i(c),o.set(c,x);let h={path:c,basename:n.basename(c),dirname:n.dirname(c),extname:n.extname(c)};for(let C of u)await C(h)},hash:f,getDeviceId:async()=>typeof navigator<"u"?f(navigator.userAgent):"",formatCode:async(c,x)=>x,on:(c,x)=>{c==="change"&&u.add(x)},off:(c,x)=>{c==="change"&&u.delete(x)},debug:(...c)=>{console.debug("[builder-dev-tools]",...c)},launchEditor:async()=>{},platform:()=>({runtime:"",os:""}),getFrameworks:()=>[],...n,...e},d=await J(p);return p.getFrameworks=()=>d,p}async function Hn(e,t,r){let n=v(e,r),o={content:r,filePath:t,fileName:e.basename(t),hasContentUpdates:!1};if(Yn(e,n))return o;let a=B(e,n,"cjs"),s=B(e,n);if(a.length!==1&&s.length!==1)throw new Error(`Expected an export from ${t}`);if(s.length===1){let g=s[0];if(!g.isDefaultExport)throw new Error(`Expected a default export from ${t}`);let f=g.statement;if(!e.ts.isVariableStatement(f))throw new Error(`Expected an export assignment from ${t}`);let u=g.statement;if(e.ts.isVariableStatement(u)){let p=[...u.declarationList.declarations];if(p.length!==1)throw new Error("Expected a single variable declaration");let d=p[0];if(!d.initializer)throw new Error("Expected an initializer on the declaration");let c=d.initializer;if(e.ts.isObjectLiteralExpression(c)||e.ts.isCallExpression(c)){let x="BuilderDevTools()",h=[...n.statements],C=h.indexOf(u);return h[C]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,[e.ts.factory.updateVariableDeclaration(d,d.name,d.exclamationToken,d.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(x),void 0,[c]))])),n=e.ts.factory.updateSourceFile(n,h),n=P(e,n,{defaultImport:"BuilderDevTools",importPath:"@builder.io/dev-tools/next"}),o.content=I(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected initializer on the variable statement")}}let l=a[0];if(!l.isDefaultExport)throw new Error(`Expected a default export from ${t}`);if(e.ts.isObjectLiteralExpression(l.node)||e.ts.isCallExpression(l.node)){let g=l.statement;if(!e.ts.isExpressionStatement(g))throw new Error("Expected an expression statement for the default export");let f=g.expression;if(!e.ts.isBinaryExpression(f))throw new Error("Expected a binary expression for the default export");let u=Rt(e,n);n=u.sourceFile;let p=[...n.statements],d=p.indexOf(g);return p[d]=e.ts.factory.updateExpressionStatement(g,e.ts.factory.updateBinaryExpression(f,f.left,f.operatorToken,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(u.withFnVariableName),void 0,[f.right]))),n=e.ts.factory.updateSourceFile(n,p),o.content=I(e,n),o.hasContentUpdates=!0,o}let m=l.statement;if(e.ts.isVariableStatement(m)){let g=[...m.declarationList.declarations];if(g.length!==1)throw new Error("Expected a single variable declaration");let f=g[0];if(!f.initializer)throw new Error("Expected an initializer on the declaration");let u=f.initializer;if(e.ts.isObjectLiteralExpression(u)||e.ts.isCallExpression(u)){let p=Rt(e,n);n=p.sourceFile;let d=[...n.statements],c=d.indexOf(m);return d[c]=e.ts.factory.updateVariableStatement(m,m.modifiers,e.ts.factory.updateVariableDeclarationList(m.declarationList,[e.ts.factory.updateVariableDeclaration(f,f.name,f.exclamationToken,f.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(p.withFnVariableName),void 0,[u]))])),n=e.ts.factory.updateSourceFile(n,d),o.content=I(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected initializer on the variable statement")}if(e.ts.isArrowFunction(l.node)){let g=l.node,f=l.statement;if(!e.ts.isExpressionStatement(f))throw new Error("Expected an expression statement for the default export");let u=f.expression;if(!e.ts.isBinaryExpression(u))throw new Error("Expected a binary expression for the default export");let d=l.node.body;if(!e.ts.isBlock(d))throw new Error("Expected a block body on the next config function");let c=[...d.statements],x=c.findIndex(T=>e.ts.isReturnStatement(T));if(x===-1)throw new Error("Expected a return statement on the next config function");let h=c[x],C=Rt(e,n);n=C.sourceFile,c[x]=e.ts.factory.updateReturnStatement(h,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(C.withFnVariableName),void 0,[h.expression]));let S=[...n.statements],y=S.indexOf(f);return S[y]=e.ts.factory.updateExpressionStatement(f,e.ts.factory.updateBinaryExpression(u,u.left,u.operatorToken,e.ts.factory.updateArrowFunction(g,g.modifiers,g.typeParameters,g.parameters,g.type,g.equalsGreaterThanToken,e.ts.factory.updateBlock(d,c)))),n=e.ts.factory.updateSourceFile(n,S),o.content=I(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected export type")}function Yn(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 Rt(e,t){let r=Yn(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 Zn(e,t,r){let n=v(e,r),o={content:r,filePath:t,fileName:e.basename(t),hasContentUpdates:!1};if(er(e,n))return o;let a=B(e,n,"cjs"),s=B(e,n);if(a.length!==1&&s.length!==1)throw new Error(`Expected an export from ${t}`);let l=a[0];if(s.length===1){let g=s[0];if(!g.isDefaultExport)throw new Error(`Expected a default export from ${t}`);let f=g.statement;if(!e.ts.isExportAssignment(f))throw new Error(`Expected an export assignment from ${t}`);if(e.ts.isObjectLiteralExpression(f.expression)){let u="builderDevTools()",p=hi(e,f.expression);if(!p)return o;let d=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(u),void 0,[p]),c=[...n.statements],x=c.indexOf(f);return c[x]=e.ts.factory.updateExportAssignment(f,f.modifiers,d),n=e.ts.factory.updateSourceFile(n,c),n=P(e,n,{defaultImport:"builderDevTools",importPath:"@builder.io/dev-tools/remix"}),o.content=I(e,n),o.hasContentUpdates=!0,o}}if(!l.isDefaultExport)throw new Error(`Expected a default export from ${t}`);if(e.ts.isObjectLiteralExpression(l.node)||e.ts.isCallExpression(l.node)){let g=l.statement;if(!e.ts.isExpressionStatement(g))throw new Error("Expected an expression statement for the default export");let f=g.expression;if(!e.ts.isBinaryExpression(f))throw new Error("Expected a binary expression for the default export");let u=Gn(e,n);n=u.sourceFile;let p=[...n.statements],d=p.indexOf(g);return p[d]=e.ts.factory.updateExpressionStatement(g,e.ts.factory.updateBinaryExpression(f,f.left,f.operatorToken,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(u.withFnVariableName),void 0,[f.right]))),n=e.ts.factory.updateSourceFile(n,p),o.content=I(e,n),o.hasContentUpdates=!0,o}let m=l.statement;if(e.ts.isVariableStatement(m)){let g=[...m.declarationList.declarations];if(g.length!==1)throw new Error("Expected a single variable declaration");let f=g[0];if(!f.initializer)throw new Error("Expected an initializer on the declaration");let u=f.initializer;if(e.ts.isObjectLiteralExpression(u)||e.ts.isCallExpression(u)){let p=Gn(e,n);n=p.sourceFile;let d=[...n.statements],c=d.indexOf(m);return d[c]=e.ts.factory.updateVariableStatement(m,m.modifiers,e.ts.factory.updateVariableDeclarationList(m.declarationList,[e.ts.factory.updateVariableDeclaration(f,f.name,f.exclamationToken,f.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(p.withFnVariableName),void 0,[u]))])),n=e.ts.factory.updateSourceFile(n,d),o.content=I(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected initializer on the variable statement")}throw new Error("Unexpected export type")}function er(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 Gn(e,t){let r=er(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 hi(e,t){let r=[...t.properties],n=r.findIndex(i=>b(e,i)==="serverDependenciesToBundle");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isArrayLiteralExpression(i.initializer)){let a=Xn(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=Xn(e,e.ts.factory.createArrayLiteralExpression([],!0));return o?e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("serverDependenciesToBundle",o)]):null}function Xn(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 nr(e,t,r){let n=v(e,r),o=B(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 l=[...i.node.arguments];if(l.length===0)throw new Error("Expected an argument in defineConfig()");let m=l[0];if(e.ts.isArrowFunction(m)){let g=Ci(e,m);if(!g)return s;l[0]=e.ts.factory.updateArrowFunction(m,m.modifiers,m.typeParameters,m.parameters,m.type,m.equalsGreaterThanToken,g);let f=[...n.statements],u=f.indexOf(a);return f[u]=e.ts.factory.updateExportAssignment(a,void 0,e.ts.factory.updateCallExpression(i.node,i.node.expression,i.node.typeArguments,l)),n=e.ts.factory.updateSourceFile(n,f),n=P(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=I(e,n),s.hasContentUpdates=!0,s}if(e.ts.isObjectLiteralExpression(m)){let g=Ft(e,m);if(!g)return s;let f=[...n.statements],u=f.indexOf(a);return f[u]=e.ts.factory.updateExportAssignment(a,void 0,e.ts.factory.updateCallExpression(i.node,i.node.expression,i.node.typeArguments,[g])),n=e.ts.factory.updateSourceFile(n,f),n=P(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=I(e,n),s.hasContentUpdates=!0,s}throw new Error("Unsupported argument in defineConfig()")}if(e.ts.isObjectLiteralExpression(a.expression)){let l=Ft(e,a.expression);if(!l)return s;let m=[...n.statements],g=m.indexOf(a);return m[g]=e.ts.factory.updateExportAssignment(a,a.modifiers,l),n=e.ts.factory.updateSourceFile(n,m),n=P(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=I(e,n),s.hasContentUpdates=!0,s}throw new Error(`Unable to parse ${t}`)}function Ci(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=Ft(e,i.expression);return a?(n[o]=e.ts.factory.updateReturnStatement(i,a),e.ts.factory.updateBlock(r,n)):null}function Ft(e,t){let r=[...t.properties],n=r.findIndex(i=>b(e,i)==="plugins");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isArrayLiteralExpression(i.initializer)){let a=tr(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=tr(e,e.ts.factory.createArrayLiteralExpression([],!0));return o?e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("plugins",o)]):null}function tr(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,[])])}async function rr(e,t,r){throw new Error("Webpack config updates not implemented")}var ir=[{id:"next",configFileNames:["next.config.ts","next.config.js","next.config.mjs"],ensureConfigPlugin:Hn},{id:"remix",configFileNames:["remix.config.ts","remix.config.js"],ensureConfigPlugin:Zn},{id:"vite",configFileNames:["vite.config.ts","vite.config.js"],ensureConfigPlugin:nr},{id:"webpack",configFileNames:["webpack.config.ts","webpack.config.js"],ensureConfigPlugin:rr}];async function At(e){let t=e.resolve("/");for(let n of ir)for(let o of n.configFileNames){let i=e.getRootDir();for(let a=0;a<10;a++)try{let s=e.join(i,o),l=e.readFileSync(s);if(typeof l=="string")return{id:n.id,filePath:s,content:l};if(i===t)break;i=e.dirname(i)}catch(s){if((s?.message??"").includes("Invalid path"))break;throw s}}if((await J(e)).some(n=>n.name==="next")){let n=e.join(e.getRootDir(),"next.config.js");return await e.writeFile(n,or),{id:"next",filePath:n,content:or}}return null}async function ar(e){let t=await At(e);if(!t)throw new Error("Unable to find config file, such as next.config.js or vite.config.js.");let n=await ir.find(o=>o.id===t.id).ensureConfigPlugin(e,t.filePath,t.content);return n.hasContentUpdates&&(n.content=Z(n.content),n.content=await e.formatCode(n.filePath,n.content),await e.writeFile(t.filePath,n.content)),n}var or=`
370
+ `}async function kn(e){let t=await Wo(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:()=>Fn(t),ensureFigmaImportPage:()=>An(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>M(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),loadComponent:async n=>{let o=await M(t,n.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(i=>i.id===n.cmpId)}},registerComponent:n=>M(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>M(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>M(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>M(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>Fe(t),setPublicApiKey:n=>Pn(t,n.publicApiKey),getDependencies:()=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>ue(t),setCache:n=>fe(t,n)}}async function Wo(e){let t=await Yo(e),r=await Go(e),n=e.dirname(r),o=e.join(n,"components"),i=await Jo(e),a=`builder-registry.${i?"ts":"js"}`,s=e.join(n,a);return{...e,registryPath:s,remixConfigPath:t,typescriptEnabled:i,appDir:n,componentsDir:o,routesDir:r,hasLocaleParam:await Ho(e,r)}}function Jo(e){let t=e.join(e.getRootDir(),"tsconfig.json");return e.exists(t)}async function Ho(e,t){return(await e.readdir(t)).some(n=>n.startsWith("($locale)."))}async function Yo(e){let t=["remix.config.ts","remix.config.js"];for(let r of t){let n=e.join(e.getRootDir(),r);if(await e.exists(n))return n}throw new Error(`Could not find Remix config file. Searched for ${t.join(", ")} in "${e.getRootDir()}".`)}async function Go(e){let t=await ye(e,e.getRootDir(),"routes");if(t)return t;throw new Error(`Could not find Remix "routes" directory in "${e.getRootDir()}". Please ensure this command is ran from within your Remix project's directory.`)}var it=wr(Wn(),1);async function Jn(e,t){let n={components:(await t.getRegistry()).components.filter(i=>i.isRegistered).map(i=>{let a={filePath:z(e.relative(e.getRootDir(),i.filePath)),name:i.name,image:i.image,description:i.description,exportName:i.exportName,inputs:B(i.inputs)};return B(a)}),version:1};e.debug("exporting registry components:",n.components.length);let o=(0,it.compress)(n);return btoa(JSON.stringify(o))}async function Hn(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,it.decompress)(o),a=B(n);e.debug("importing registry components:",i.components.length);for(let s of i.components){let l=z(e.normalize(s.filePath)),m=n.components.find(f=>z(f.filePath).endsWith(l)&&f.exportName===s.exportName);if(!m){console.error(`Could not find component to register: ${s.filePath}, ${s.exportName}`);continue}e.debug(`register (${m.id})`,m.filePath),await t.registerComponent({cmpId:m.id});for(let f of s.inputs)e.debug(`set input (${m.id})`),await t.setRegisteredComponentInput({cmpId:m.id,name:f.name,type:f.type,required:f.required,defaultValue:f.defaultValue,friendlyName:f.friendlyName,helperText:f.helperText});e.debug(`set input (${m.id}) info`);let g=await t.setRegisteredComponentInfo({cmpId:m.id,name:s.name,image:s.image,description:s.description});a=B(g)}return a}var yi={"@builder.io/qwik-city":bn,next:gn,"@remix-run/react":kn};async function Yn(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 H(e)),e.frameworks.length===0)throw new Error(`Supported Devtools framework for not found within ${e.getRootDir()}`);for(let t of e.frameworks){let r=yi[t.name];if(r){let n=await r(e);return{...n,exportRegistry:()=>Jn(e,n),importRegistry:i=>Hn(e,n,i)}}}throw new Error(`Devtools framework not found for ${e.getRootDir()}, ${JSON.stringify(e.frameworks,null,2)}`)}function Gn(e){function t(f){if(typeof f!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(f))}function r(f,u){let p="",h=0,c=-1,d=0,x;for(let C=0;C<=f.length;++C){if(C<f.length)x=f.charCodeAt(C);else{if(x===47)break;x=47}if(x===47){if(!(c===C-1||d===1))if(c!==C-1&&d===2){if(p.length<2||h!==2||p.charCodeAt(p.length-1)!==46||p.charCodeAt(p.length-2)!==46){if(p.length>2){let S=p.lastIndexOf("/");if(S!==p.length-1){S===-1?(p="",h=0):(p=p.slice(0,S),h=p.length-1-p.lastIndexOf("/")),c=C,d=0;continue}}else if(p.length===2||p.length===1){p="",h=0,c=C,d=0;continue}}u&&(p.length>0?p+="/..":p="..",h=2)}else p.length>0?p+="/"+f.slice(c+1,C):p=f.slice(c+1,C),h=C-c-1;c=C,d=0}else x===46&&d!==-1?++d:d=-1}return p}let n=function(...u){let p="",h=!1;for(let c=u.length-1;c>=-1&&!h;c--){let d;c>=0?d=u[c]:e.cwd?d=e.cwd():d="/",t(d),d.length!==0&&(p=d+"/"+p,h=d.charCodeAt(0)===47)}return p=r(p,!h),h?p.length>0?"/"+p:"/":p.length>0?p:"."},o=function(u){if(t(u),u.length===0)return".";let p=u.charCodeAt(0)===47,h=u.charCodeAt(u.length-1)===47;return u=r(u,!p),u.length===0&&!p&&(u="."),u.length>0&&h&&(u+="/"),p?"/"+u:u};return{relative:function(u,p){if(t(u),t(p),u===p||(u=n(u),p=n(p),u===p))return"";let h=1;for(;h<u.length&&u.charCodeAt(h)===47;++h);let c=u.length,d=c-h,x=1;for(;x<p.length&&p.charCodeAt(x)===47;++x);let S=p.length-x,b=d<S?d:S,y=-1,w=0;for(;w<=b;++w){if(w===b){if(S>b){if(p.charCodeAt(x+w)===47)return p.slice(x+w+1);if(w===0)return p.slice(x+w)}else d>b&&(u.charCodeAt(h+w)===47?y=w:w===0&&(y=0));break}let k=u.charCodeAt(h+w),R=p.charCodeAt(x+w);if(k!==R)break;k===47&&(y=w)}let P="";for(w=h+y+1;w<=c;++w)(w===c||u.charCodeAt(w)===47)&&(P.length===0?P+="..":P+="/..");return P.length>0?P+p.slice(x+y):(x+=y,p.charCodeAt(x)===47&&++x,p.slice(x))},resolve:n,join:function(...u){if(u.length===0)return".";let p;for(let h=0;h<u.length;++h){let c=u[h];t(c),c.length>0&&(p===void 0?p=c:p+="/"+c)}return p===void 0?".":o(p)},isAbsolute:function(u){return t(u),u.length>0&&u.charCodeAt(0)===47},basename:function(u,p){if(p!==void 0&&typeof p!="string")throw new TypeError('"ext" argument must be a string');t(u);let h=0,c=-1,d=!0,x;if(p!==void 0&&p.length>0&&p.length<=u.length){if(p.length===u.length&&p===u)return"";let C=p.length-1,S=-1;for(x=u.length-1;x>=0;--x){let b=u.charCodeAt(x);if(b===47){if(!d){h=x+1;break}}else S===-1&&(d=!1,S=x+1),C>=0&&(b===p.charCodeAt(C)?--C===-1&&(c=x):(C=-1,c=S))}return h===c?c=S:c===-1&&(c=u.length),u.slice(h,c)}else{for(x=u.length-1;x>=0;--x)if(u.charCodeAt(x)===47){if(!d){h=x+1;break}}else c===-1&&(d=!1,c=x+1);return c===-1?"":u.slice(h,c)}},normalize:o,dirname:function(u){if(t(u),u.length===0)return".";let p=u.charCodeAt(0),h=p===47,c=-1,d=!0;for(let x=u.length-1;x>=1;--x)if(p=u.charCodeAt(x),p===47){if(!d){c=x;break}}else d=!1;return c===-1?h?"/":".":h&&c===1?"//":u.slice(0,c)},extname:function(u){t(u);let p=-1,h=0,c=-1,d=!0,x=0;for(let C=u.length-1;C>=0;--C){let S=u.charCodeAt(C);if(S===47){if(!d){h=C+1;break}continue}c===-1&&(d=!1,c=C+1),S===46?p===-1?p=C:x!==1&&(x=1):p!==-1&&(x=-1)}return p===-1||c===-1||x===0||x===1&&p===c-1&&p===h+1?"":u.slice(p,c)}}}async function Xn(e){let t=e.getRootDir?e.getRootDir:()=>"/",r=e.cwd?e.cwd:()=>"/",n=Gn({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)),l=c=>{c=i(c);let d=c===t()?c:c+"/",x=d.split("/").length-1,C=[];for(let[S]of o)if(S.split("/").slice(0,x).join("/")+"/"===d){let w=S.split("/")[x];w&&!C.includes(w)&&C.push(w)}return C.sort()},m=c=>{c=i(c);let d=o.get(c);return typeof d=="string"?d:null},g=c=>(c=i(c),{isFile:()=>o.has(c),isDirectory:()=>!o.has(c)&&a(c)}),f=async c=>{if(typeof crypto<"u"){let C=new TextEncoder().encode(c),S=await crypto.subtle.digest("SHA-256",C);return Array.from(new Uint8Array(S)).map(b=>b.toString(16).padStart(2,"0")).join("")}let d=0;for(let x=0;x<c.length;x++){let C=c.charCodeAt(x);d=(d<<5)-d+C,d|=0}return Number(Math.abs(d)).toString(36)},u=new Set,p={getRootDir:t,cwd:r,exists:async c=>s(c),existsSync:s,readdir:async c=>l(c),readdirSync:l,readFile:async c=>m(c),readFileSync:m,stat:async c=>g(c),statSync:g,writeFile:async(c,d)=>{c=i(c),o.set(c,d);let x={path:c,basename:n.basename(c),dirname:n.dirname(c),extname:n.extname(c)};for(let C of u)await C(x)},hash:f,getDeviceId:async()=>typeof navigator<"u"?f(navigator.userAgent):"",formatCode:async(c,d)=>d,on:(c,d)=>{c==="change"&&u.add(d)},off:(c,d)=>{c==="change"&&u.delete(d)},debug:(...c)=>{console.debug("[builder-dev-tools]",...c)},launchEditor:async()=>{},platform:()=>({runtime:"",os:""}),getFrameworks:()=>[],...n,...e},h=await H(p);return p.getFrameworks=()=>h,p}async function Zn(e,t,r){let n=E(e,r),o={content:r,filePath:t,fileName:e.basename(t),hasContentUpdates:!1};if(er(e,n))return o;let a=V(e,n,"cjs"),s=V(e,n);if(a.length!==1&&s.length!==1)throw new Error(`Expected an export from ${t}`);if(s.length===1){let g=s[0];if(!g.isDefaultExport)throw new Error(`Expected a default export from ${t}`);let f=g.statement;if(!e.ts.isVariableStatement(f))throw new Error(`Expected an export assignment from ${t}`);let u=g.statement;if(e.ts.isVariableStatement(u)){let p=[...u.declarationList.declarations];if(p.length!==1)throw new Error("Expected a single variable declaration");let h=p[0];if(!h.initializer)throw new Error("Expected an initializer on the declaration");let c=h.initializer;if(e.ts.isObjectLiteralExpression(c)||e.ts.isCallExpression(c)){let d="BuilderDevTools()",x=[...n.statements],C=x.indexOf(u);return x[C]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,[e.ts.factory.updateVariableDeclaration(h,h.name,h.exclamationToken,h.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(d),void 0,[c]))])),n=e.ts.factory.updateSourceFile(n,x),n=v(e,n,{defaultImport:"BuilderDevTools",importPath:"@builder.io/dev-tools/next"}),o.content=I(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected initializer on the variable statement")}}let l=a[0];if(!l.isDefaultExport)throw new Error(`Expected a default export from ${t}`);if(e.ts.isObjectLiteralExpression(l.node)||e.ts.isCallExpression(l.node)){let g=l.statement;if(!e.ts.isExpressionStatement(g))throw new Error("Expected an expression statement for the default export");let f=g.expression;if(!e.ts.isBinaryExpression(f))throw new Error("Expected a binary expression for the default export");let u=kt(e,n);n=u.sourceFile;let p=[...n.statements],h=p.indexOf(g);return p[h]=e.ts.factory.updateExpressionStatement(g,e.ts.factory.updateBinaryExpression(f,f.left,f.operatorToken,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(u.withFnVariableName),void 0,[f.right]))),n=e.ts.factory.updateSourceFile(n,p),o.content=I(e,n),o.hasContentUpdates=!0,o}let m=l.statement;if(e.ts.isVariableStatement(m)){let g=[...m.declarationList.declarations];if(g.length!==1)throw new Error("Expected a single variable declaration");let f=g[0];if(!f.initializer)throw new Error("Expected an initializer on the declaration");let u=f.initializer;if(e.ts.isObjectLiteralExpression(u)||e.ts.isCallExpression(u)){let p=kt(e,n);n=p.sourceFile;let h=[...n.statements],c=h.indexOf(m);return h[c]=e.ts.factory.updateVariableStatement(m,m.modifiers,e.ts.factory.updateVariableDeclarationList(m.declarationList,[e.ts.factory.updateVariableDeclaration(f,f.name,f.exclamationToken,f.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(p.withFnVariableName),void 0,[u]))])),n=e.ts.factory.updateSourceFile(n,h),o.content=I(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected initializer on the variable statement")}if(e.ts.isArrowFunction(l.node)){let g=l.node,f=l.statement;if(!e.ts.isExpressionStatement(f))throw new Error("Expected an expression statement for the default export");let u=f.expression;if(!e.ts.isBinaryExpression(u))throw new Error("Expected a binary expression for the default export");let h=l.node.body;if(!e.ts.isBlock(h))throw new Error("Expected a block body on the next config function");let c=[...h.statements],d=c.findIndex(y=>e.ts.isReturnStatement(y));if(d===-1)throw new Error("Expected a return statement on the next config function");let x=c[d],C=kt(e,n);n=C.sourceFile,c[d]=e.ts.factory.updateReturnStatement(x,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(C.withFnVariableName),void 0,[x.expression]));let S=[...n.statements],b=S.indexOf(f);return S[b]=e.ts.factory.updateExpressionStatement(f,e.ts.factory.updateBinaryExpression(u,u.left,u.operatorToken,e.ts.factory.updateArrowFunction(g,g.modifiers,g.typeParameters,g.parameters,g.type,g.equalsGreaterThanToken,e.ts.factory.updateBlock(h,c)))),n=e.ts.factory.updateSourceFile(n,S),o.content=I(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected export type")}function er(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 kt(e,t){let r=er(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 rr(e,t,r){let n=E(e,r),o={content:r,filePath:t,fileName:e.basename(t),hasContentUpdates:!1};if(or(e,n))return o;let a=V(e,n,"cjs"),s=V(e,n);if(a.length!==1&&s.length!==1)throw new Error(`Expected an export from ${t}`);let l=a[0];if(s.length===1){let g=s[0];if(!g.isDefaultExport)throw new Error(`Expected a default export from ${t}`);let f=g.statement;if(!e.ts.isExportAssignment(f))throw new Error(`Expected an export assignment from ${t}`);if(e.ts.isObjectLiteralExpression(f.expression)){let u="builderDevTools()",p=Ti(e,f.expression);if(!p)return o;let h=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(u),void 0,[p]),c=[...n.statements],d=c.indexOf(f);return c[d]=e.ts.factory.updateExportAssignment(f,f.modifiers,h),n=e.ts.factory.updateSourceFile(n,c),n=v(e,n,{defaultImport:"builderDevTools",importPath:"@builder.io/dev-tools/remix"}),o.content=I(e,n),o.hasContentUpdates=!0,o}}if(!l.isDefaultExport)throw new Error(`Expected a default export from ${t}`);if(e.ts.isObjectLiteralExpression(l.node)||e.ts.isCallExpression(l.node)){let g=l.statement;if(!e.ts.isExpressionStatement(g))throw new Error("Expected an expression statement for the default export");let f=g.expression;if(!e.ts.isBinaryExpression(f))throw new Error("Expected a binary expression for the default export");let u=tr(e,n);n=u.sourceFile;let p=[...n.statements],h=p.indexOf(g);return p[h]=e.ts.factory.updateExpressionStatement(g,e.ts.factory.updateBinaryExpression(f,f.left,f.operatorToken,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(u.withFnVariableName),void 0,[f.right]))),n=e.ts.factory.updateSourceFile(n,p),o.content=I(e,n),o.hasContentUpdates=!0,o}let m=l.statement;if(e.ts.isVariableStatement(m)){let g=[...m.declarationList.declarations];if(g.length!==1)throw new Error("Expected a single variable declaration");let f=g[0];if(!f.initializer)throw new Error("Expected an initializer on the declaration");let u=f.initializer;if(e.ts.isObjectLiteralExpression(u)||e.ts.isCallExpression(u)){let p=tr(e,n);n=p.sourceFile;let h=[...n.statements],c=h.indexOf(m);return h[c]=e.ts.factory.updateVariableStatement(m,m.modifiers,e.ts.factory.updateVariableDeclarationList(m.declarationList,[e.ts.factory.updateVariableDeclaration(f,f.name,f.exclamationToken,f.type,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier(p.withFnVariableName),void 0,[u]))])),n=e.ts.factory.updateSourceFile(n,h),o.content=I(e,n),o.hasContentUpdates=!0,o}throw new Error("Unexpected initializer on the variable statement")}throw new Error("Unexpected export type")}function or(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 tr(e,t){let r=or(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 Ti(e,t){let r=[...t.properties],n=r.findIndex(i=>D(e,i)==="serverDependenciesToBundle");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isArrayLiteralExpression(i.initializer)){let a=nr(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=nr(e,e.ts.factory.createArrayLiteralExpression([],!0));return o?e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("serverDependenciesToBundle",o)]):null}function nr(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 ar(e,t,r){let n=E(e,r),o=V(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 l=[...i.node.arguments];if(l.length===0)throw new Error("Expected an argument in defineConfig()");let m=l[0];if(e.ts.isArrowFunction(m)){let g=Ei(e,m);if(!g)return s;l[0]=e.ts.factory.updateArrowFunction(m,m.modifiers,m.typeParameters,m.parameters,m.type,m.equalsGreaterThanToken,g);let f=[...n.statements],u=f.indexOf(a);return f[u]=e.ts.factory.updateExportAssignment(a,void 0,e.ts.factory.updateCallExpression(i.node,i.node.expression,i.node.typeArguments,l)),n=e.ts.factory.updateSourceFile(n,f),n=v(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=I(e,n),s.hasContentUpdates=!0,s}if(e.ts.isObjectLiteralExpression(m)){let g=Ot(e,m);if(!g)return s;let f=[...n.statements],u=f.indexOf(a);return f[u]=e.ts.factory.updateExportAssignment(a,void 0,e.ts.factory.updateCallExpression(i.node,i.node.expression,i.node.typeArguments,[g])),n=e.ts.factory.updateSourceFile(n,f),n=v(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=I(e,n),s.hasContentUpdates=!0,s}throw new Error("Unsupported argument in defineConfig()")}if(e.ts.isObjectLiteralExpression(a.expression)){let l=Ot(e,a.expression);if(!l)return s;let m=[...n.statements],g=m.indexOf(a);return m[g]=e.ts.factory.updateExportAssignment(a,a.modifiers,l),n=e.ts.factory.updateSourceFile(n,m),n=v(e,n,{namedImports:["builderDevTools"],importPath:"@builder.io/dev-tools/vite"}),s.content=I(e,n),s.hasContentUpdates=!0,s}throw new Error(`Unable to parse ${t}`)}function Ei(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=Ot(e,i.expression);return a?(n[o]=e.ts.factory.updateReturnStatement(i,a),e.ts.factory.updateBlock(r,n)):null}function Ot(e,t){let r=[...t.properties],n=r.findIndex(i=>D(e,i)==="plugins");if(n>-1){let i=r[n];if(e.ts.isPropertyAssignment(i)&&i.initializer&&e.ts.isArrayLiteralExpression(i.initializer)){let a=ir(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=ir(e,e.ts.factory.createArrayLiteralExpression([],!0));return o?e.ts.factory.updateObjectLiteralExpression(t,[...r,e.ts.factory.createPropertyAssignment("plugins",o)]):null}function ir(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,[])])}async function sr(e,t,r){throw new Error("Webpack config updates not implemented")}var cr=[{id:"next",configFileNames:["next.config.ts","next.config.js","next.config.mjs"],ensureConfigPlugin:Zn},{id:"remix",configFileNames:["remix.config.ts","remix.config.js"],ensureConfigPlugin:rr},{id:"vite",configFileNames:["vite.config.ts","vite.config.js"],ensureConfigPlugin:ar},{id:"webpack",configFileNames:["webpack.config.ts","webpack.config.js"],ensureConfigPlugin:sr}];async function jt(e){let t=e.resolve("/");for(let n of cr)for(let o of n.configFileNames){let i=e.getRootDir();for(let a=0;a<10;a++)try{let s=e.join(i,o),l=e.readFileSync(s);if(typeof l=="string")return{id:n.id,filePath:s,content:l};if(i===t)break;i=e.dirname(i)}catch(s){if((s?.message??"").includes("Invalid path"))break;throw s}}if((await H(e)).some(n=>n.name==="next")){let n=e.join(e.getRootDir(),"next.config.js");return await e.writeFile(n,lr),{id:"next",filePath:n,content:lr}}return null}async function pr(e){let t=await jt(e);if(!t)throw new Error("Unable to find config file, such as next.config.js or vite.config.js.");let n=await cr.find(o=>o.id===t.id).ensureConfigPlugin(e,t.filePath,t.content);return n.hasContentUpdates&&(n.content=ee(n.content),n.content=await e.formatCode(n.filePath,n.content),await e.writeFile(t.filePath,n.content)),n}var lr=`
371
371
  /** @type {import('next').NextConfig} */
372
372
  const nextConfig = {
373
373
  }
374
374
 
375
375
  module.exports = nextConfig
376
- `.trimStart();var sr="/~builder-dev-tools.js";function lr(e){try{if(typeof e!="string"||e.trim().length===0)return console.error("Missing devtool server url"),"";let t=new URL(sr,e);t.searchParams.set("v",Fe);let r=JSON.stringify(Fe),n=`/* Builder Devtools v${Fe} */
376
+ `.trimStart();var ur="/~builder-dev-tools.js";function fr(e){try{if(typeof e!="string"||e.trim().length===0)return console.error("Missing devtool server url"),"";let t=new URL(ur,e);t.searchParams.set("v",je);let r=JSON.stringify(je),n=`/* Builder Devtools v${je} */
377
377
  `;return n+=`(() => {
378
378
  `,n+=` if (typeof document !== "undefined") {
379
379
  `,n+=` let devToolsScript = document.head.querySelector("script[data-builder-dev-tools]");
@@ -386,4 +386,4 @@ module.exports = nextConfig
386
386
  `,n+=` }
387
387
  `,n+=` }
388
388
  `,n+=`})();
389
- `,n}catch(t){return console.error(`Failed to create devtools client script: ${t.message||t}`),""}}var Fe="0.2.23";
389
+ `,n}catch(t){return console.error(`Failed to create devtools client script: ${t.message||t}`),""}}var je="0.2.24";