builder.io 1.5.10 → 1.5.11
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/cli/index.cjs +493 -493
- package/cli/index.cjs.map +4 -4
- package/core/index.cjs +2 -2
- package/core/index.mjs +2 -2
- package/node/index.cjs +1 -1
- package/node/index.mjs +1 -1
- package/package.json +1 -1
- package/server/index.cjs +182 -182
- package/server/index.mjs +182 -182
- package/types/cli/code.d.ts +1 -0
- package/types/cli/download.d.ts +1 -1
- package/types/cli/figma-publish.d.ts +4 -17
- package/types/cli/figma-utils.d.ts +16 -1
package/server/index.mjs
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
var _u=Object.create;var go=Object.defineProperty;var ju=Object.getOwnPropertyDescriptor;var Mu=Object.getOwnPropertyNames;var Vu=Object.getPrototypeOf,Ku=Object.prototype.hasOwnProperty;var ae=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Uu=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Mu(t))!Ku.call(e,i)&&i!==n&&go(e,i,{get:()=>t[i],enumerable:!(r=ju(t,i))||r.enumerable});return e};var pe=(e,t,n)=>(n=e!=null?_u(Vu(e)):{},Uu(t||!e||!e.__esModule?go(n,"default",{value:e,enumerable:!0}):n,e));var xo=ae((Km,Eo)=>{"use strict";Eo.exports=function(){if(process.env.npm_config_user_agent)return zu(process.env.npm_config_user_agent)};function zu(e){let t=e.split(" ")[0],n=t.lastIndexOf("/"),r=t.substring(0,n);return{name:r==="npminstall"?"cnpm":r,version:t.substring(n+1)}}});var gr=ae((Kf,Wo)=>{"use strict";var tn="\x1B",J=`${tn}[`,ss="\x07",rn={to(e,t){return t?`${J}${t+1};${e+1}H`:`${J}${e+1}G`},move(e,t){let n="";return e<0?n+=`${J}${-e}D`:e>0&&(n+=`${J}${e}C`),t<0?n+=`${J}${-t}A`:t>0&&(n+=`${J}${t}B`),n},up:(e=1)=>`${J}${e}A`,down:(e=1)=>`${J}${e}B`,forward:(e=1)=>`${J}${e}C`,backward:(e=1)=>`${J}${e}D`,nextLine:(e=1)=>`${J}E`.repeat(e),prevLine:(e=1)=>`${J}F`.repeat(e),left:`${J}G`,hide:`${J}?25l`,show:`${J}?25h`,save:`${tn}7`,restore:`${tn}8`},ls={up:(e=1)=>`${J}S`.repeat(e),down:(e=1)=>`${J}T`.repeat(e)},cs={screen:`${J}2J`,up:(e=1)=>`${J}1J`.repeat(e),down:(e=1)=>`${J}J`.repeat(e),line:`${J}2K`,lineEnd:`${J}K`,lineStart:`${J}1K`,lines(e){let t="";for(let n=0;n<e;n++)t+=this.line+(n<e-1?rn.up():"");return e&&(t+=rn.left),t}};Wo.exports={cursor:rn,scroll:ls,erase:cs,beep:ss}});var Ue=ae((Uf,nn)=>{var hr=process||{},Go=hr.argv||[],Cr=hr.env||{},ps=!(Cr.NO_COLOR||Go.includes("--no-color"))&&(!!Cr.FORCE_COLOR||Go.includes("--color")||hr.platform==="win32"||(hr.stdout||{}).isTTY&&Cr.TERM!=="dumb"||!!Cr.CI),ms=(e,t,n=e)=>r=>{let i=""+r,a=i.indexOf(t,e.length);return~a?e+fs(i,t,n,a)+t:e+i+t},fs=(e,t,n,r)=>{let i="",a=0;do i+=e.substring(a,r)+n,a=r+t.length,r=e.indexOf(t,a);while(~r);return i+e.substring(a)},Ho=(e=ps)=>{let t=e?ms:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};nn.exports=Ho();nn.exports.createColors=Ho});var Ia=ae((Lh,Br)=>{Br.exports.Space_Separator=/[\u1680\u2000-\u200A\u202F\u205F\u3000]/;Br.exports.ID_Start=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/;Br.exports.ID_Continue=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/});var Nn=ae((_h,Ba)=>{var Rn=Ia();Ba.exports={isSpaceSeparator(e){return typeof e=="string"&&Rn.Space_Separator.test(e)},isIdStartChar(e){return typeof e=="string"&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="$"||e==="_"||Rn.ID_Start.test(e))},isIdContinueChar(e){return typeof e=="string"&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e>="0"&&e<="9"||e==="$"||e==="_"||e==="\u200C"||e==="\u200D"||Rn.ID_Continue.test(e))},isDigit(e){return typeof e=="string"&&/[0-9]/.test(e)},isHexDigit(e){return typeof e=="string"&&/[0-9A-Fa-f]/.test(e)}}});var Oa=ae((jh,ka)=>{var re=Nn(),kn,ce,We,Nr,ot,we,ne,_n,rr;ka.exports=function(t,n){kn=String(t),ce="start",We=[],Nr=0,ot=1,we=0,ne=void 0,_n=void 0,rr=void 0;do ne=ap(),lp[ce]();while(ne.type!=="eof");return typeof n=="function"?On({"":rr},"",n):rr};function On(e,t,n){let r=e[t];if(r!=null&&typeof r=="object")if(Array.isArray(r))for(let i=0;i<r.length;i++){let a=String(i),o=On(r,a,n);o===void 0?delete r[a]:Object.defineProperty(r,a,{value:o,writable:!0,enumerable:!0,configurable:!0})}else for(let i in r){let a=On(r,i,n);a===void 0?delete r[i]:Object.defineProperty(r,i,{value:a,writable:!0,enumerable:!0,configurable:!0})}return n.call(e,t,r)}var T,P,tr,Je,I;function ap(){for(T="default",P="",tr=!1,Je=1;;){I=Ge();let e=Na[T]();if(e)return e}}function Ge(){if(kn[Nr])return String.fromCodePoint(kn.codePointAt(Nr))}function h(){let e=Ge();return e===`
|
|
2
|
-
`?(
|
|
3
|
-
`:case"\r":case"\u2028":case"\u2029":
|
|
4
|
-
`:case"\r":case"\u2028":case"\u2029":
|
|
5
|
-
`:case"\r":throw
|
|
6
|
-
`;case"r":return
|
|
7
|
-
`:case"\u2028":case"\u2029":return
|
|
8
|
-
`&&
|
|
9
|
-
`+a;
|
|
10
|
-
`+a+
|
|
11
|
-
`+d+"}"}}return i.pop(),a=d,x}function
|
|
12
|
-
`+a,
|
|
13
|
-
`+a+
|
|
14
|
-
`+d+"]"}return i.pop(),a=d,E}}});var Ma=ae((Vh,ja)=>{var pp=Oa(),mp=_a(),fp={parse:pp,stringify:mp};ja.exports=fp});var Vn=ae(Or=>{"use strict";Object.defineProperty(Or,"__esModule",{value:!0});function Ha(e){return Object.prototype.toString.call(e)}Or.getType=Ha;function yp(e){throw new TypeError("unsupported data type: "+Ha(e))}Or.throwUnknownDataType=yp});var Jn=ae(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});var He="";for(let e=0;e<10;e++){let t=String.fromCharCode(48+e);He+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(65+e);He+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(97+e);He+=t}var kt=He.length,Un={};for(let e=0;e<kt;e++){let t=He[e];Un[t]=e}function zn(e){let t=0,n=1;for(let r=e.length-1;r>=0;r--){let i=e[r],a=Un[i];a*=n,t+=a,n*=kt}return t}Qe.s_to_int=zn;function Qa(e){let t=BigInt(0),n=BigInt(1),r=BigInt(kt);for(let i=e.length-1;i>=0;i--){let a=e[i],o=BigInt(Un[a]);o*=n,t+=o,n*=r}return t}Qe.s_to_big_int=Qa;function qn(e){if(e===0)return He[0];let t=[];for(;e!==0;){let n=e%kt,r=He[n];t.push(r),e-=n,e/=kt}return t.reverse().join("")}Qe.int_to_s=qn;function Ya(e){let t=BigInt(0),n=BigInt(kt);if(e===t)return He[0];let r=[];for(;e!==t;){let i=e%n,a=He[Number(i)];r.push(a),e-=i,e/=n}return r.reverse().join("")}Qe.big_int_to_s=Ya;function _r(e){return e.split("").reverse().join("")}function Xa(e){if(e<0)return"-"+Xa(-e);let[t,n]=e.toString().split(".");if(!n)return qn(e);let r;n&&([n,r]=n.split("e")),t=Lr(t),n=_r(n),n=Lr(n);let i=t+"."+n;if(r){switch(i+=".",r[0]){case"+":r=r.slice(1);break;case"-":i+="-",r=r.slice(1);break}r=_r(r),r=Lr(r),i+=r}return i}Qe.num_to_s=Xa;function Lr(e){let t=+e;return t.toString()===e?qn(t):":"+Ya(BigInt(e))}Qe.int_str_to_s=Lr;function Kn(e){return e[0]===":"?Qa(e.substring(1)).toString():zn(e).toString()}function Za(e){if(e[0]==="-")return-Za(e.substr(1));let[t,n,r]=e.split(".");if(!n)return zn(t);t=Kn(t),n=Kn(n),n=_r(n);let i=t+"."+n;if(r){i+="e";let a=!1;r[0]==="-"&&(a=!0,r=r.slice(1)),r=Kn(r),r=_r(r),i+=a?-r:+r}return+i}Qe.s_to_num=Za});var Gn=ae(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});var Wn=Jn();function vp(e){return"n|"+Wn.num_to_s(e)}Ye.encodeNum=vp;function bp(e){return e=e.replace("n|",""),Wn.s_to_num(e)}Ye.decodeNum=bp;function wp(e){return typeof e=="number"?e:Wn.s_to_int(e)}Ye.decodeKey=wp;function Pp(e){return e?"b|T":"b|F"}Ye.encodeBool=Pp;function Tp(e){switch(e){case"b|T":return!0;case"b|F":return!1}return!!e}Ye.decodeBool=Tp;function Ip(e){switch(e[0]+e[1]){case"b|":case"o|":case"n|":case"a|":case"s|":e="s|"+e}return e}Ye.encodeStr=Ip;function Bp(e){return e[0]+e[1]==="s|"?e.substr(2):e}Ye.decodeStr=Bp});var eu=ae(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.config={sort_key:!1}});var Yn=ae(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});var Rp=eu(),Np=Vn(),Qn=Gn(),$p=Jn();function kp(e){return e.store.toArray()}ht.memToValues=kp;function tu(){let e=[];return{forEach(t){for(let n=0;n<e.length;n++)if(t(e[n])==="break")return},add(t){e.push(t)},toArray(){return e}}}ht.makeInMemoryStore=tu;function ru(){let e=Object.create(null),t=Object.create(null);return{getValue(n){return e[n]},getSchema(n){return t[n]},forEachValue(n){for(let[r,i]of Object.entries(e))if(n(r,i)==="break")return},forEachSchema(n){for(let[r,i]of Object.entries(t))if(n(r,i)==="break")return},setValue(n,r){e[n]=r},setSchema(n,r){t[n]=r},hasValue(n){return n in e},hasSchema(n){return n in t}}}ht.makeInMemoryCache=ru;function Op(){return{store:tu(),cache:ru(),keyCount:0}}ht.makeInMemoryMemory=Op;function Ct(e,t){if(e.cache.hasValue(t))return e.cache.getValue(t);let n=e.keyCount++,r=$p.num_to_s(n);return e.store.add(t),e.cache.setValue(t,r),r}function Lp(e,t){Rp.config.sort_key&&t.sort();let n=t.join(",");if(e.cache.hasSchema(n))return e.cache.getSchema(n);let r=nr(e,t,void 0);return e.cache.setSchema(n,r),r}function nr(e,t,n){if(t===null)return"";switch(typeof t){case"undefined":if(Array.isArray(n))return nr(e,null,n);break;case"object":if(t===null)return Ct(e,null);if(Array.isArray(t)){let r="a";for(let i=0;i<t.length;i++){let a=t[i],o=a===null?"_":nr(e,a,t);r+="|"+o}return r==="a"&&(r="a|"),Ct(e,r)}else{let r=Object.keys(t);if(r.length===0)return Ct(e,"o|");let i="o",a=Lp(e,r);i+="|"+a;for(let o of r){let u=t[o],s=nr(e,u,t);i+="|"+s}return Ct(e,i)}case"boolean":return Ct(e,Qn.encodeBool(t));case"number":return Ct(e,Qn.encodeNum(t));case"string":return Ct(e,Qn.encodeStr(t))}return Np.throwUnknownDataType(t)}ht.addValue=nr});var Zn=ae(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});var _p=Vn(),jr=Gn(),Xn=Yn();function jp(e){let t=Xn.makeInMemoryMemory(),n=Xn.addValue(t,e,void 0);return[Xn.memToValues(t),n]}ir.compress=jp;function Mp(e,t){if(t==="o|")return{};let n={},r=t.split("|"),i=r[1],a=or(e,i),o=r.length;o-2===1&&!Array.isArray(a)&&(a=[a]);for(let u=2;u<o;u++){let s=a[u-2],l=r[u];l=or(e,l),n[s]=l}return n}function Vp(e,t){if(t==="a|")return[];let n=t.split("|"),r=n.length-1,i=new Array(r);for(let a=0;a<r;a++){let o=n[a+1];o=or(e,o),i[a]=o}return i}function or(e,t){if(t===""||t==="_")return null;let n=jr.decodeKey(t),r=e[n];if(r===null)return r;switch(typeof r){case"undefined":return r;case"number":return r;case"string":switch(r[0]+r[1]){case"b|":return jr.decodeBool(r);case"o|":return Mp(e,r);case"n|":return jr.decodeNum(r);case"a|":return Vp(e,r);default:return jr.decodeStr(r)}}return _p.throwUnknownDataType(r)}ir.decode=or;function Kp(e){let[t,n]=e;return or(t,n)}ir.decompress=Kp});var ou=ae(Mr=>{"use strict";Object.defineProperty(Mr,"__esModule",{value:!0});function Up(e){for(let t in e)e[t]===void 0&&delete e[t]}Mr.trimUndefined=Up;function zp(e){nu(e,new Set)}Mr.trimUndefinedRecursively=zp;function nu(e,t){t.add(e);for(let n in e)if(e[n]===void 0)delete e[n];else{let r=e[n];r&&typeof r=="object"&&!t.has(r)&&nu(r,t)}}});var uu=ae(it=>{"use strict";Object.defineProperty(it,"__esModule",{value:!0});var iu=Zn();it.compress=iu.compress;it.decompress=iu.decompress;var qp=Zn();it.decode=qp.decode;var Jp=Yn();it.addValue=Jp.addValue;var au=ou();it.trimUndefined=au.trimUndefined;it.trimUndefinedRecursively=au.trimUndefinedRecursively});import{createServer as km,request as Om}from"node:http";var Wr="preview-url";var Et="framework",lr="platform",cr="node",Co="/~builder-connect",lt="/~builder-connected",Gr="/~builder-dev-tools",Hr="/~builder-dev-tools.js",ct="/~builder-dev-tools-close",ho="/mappings";function B(e,t=""){return e.ts.createSourceFile("module.tsx",typeof t=="string"?t:"",e.ts.ScriptTarget.Latest,void 0)}function pr(e,t=""){let n=B(e,t?.trim());if(n.statements.length===0)throw new Error(`No statements found in code: ${t}`);return n.statements[0]}function te(e,t,n){if(t){let r=e.ts.createPrinter({newLine:e.ts.NewLineKind.LineFeed,removeComments:n});return e.ts.isSourceFile(t)?r.printFile(t).trim()+`
|
|
15
|
-
`:
|
|
16
|
-
`}return""}var
|
|
17
|
-
`,getSourceFile:
|
|
18
|
-
${
|
|
1
|
+
var Mu=Object.create;var No=Object.defineProperty;var Ku=Object.getOwnPropertyDescriptor;var Vu=Object.getOwnPropertyNames;var Uu=Object.getPrototypeOf,zu=Object.prototype.hasOwnProperty;var et=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var _=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var qu=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Vu(t))!zu.call(e,i)&&i!==r&&No(e,i,{get:()=>t[i],enumerable:!(n=Ku(t,i))||n.enumerable});return e};var se=(e,t,r)=>(r=e!=null?Mu(Uu(e)):{},qu(t||!e||!e.__esModule?No(r,"default",{value:e,enumerable:!0}):r,e));var cr=_((xd,Oo)=>{"use strict";Oo.exports=function(){if(process.env.npm_config_user_agent)return Wu(process.env.npm_config_user_agent)};function Wu(e){let t=e.split(" ")[0],r=t.lastIndexOf("/"),n=t.substring(0,r);return{name:n==="npminstall"?"cnpm":n,version:t.substring(r+1)}}});var An=_((CD,ci)=>{"use strict";var Dr="\x1B",G=`${Dr}[`,lc="\x07",gr={to(e,t){return t?`${G}${t+1};${e+1}H`:`${G}${e+1}G`},move(e,t){let r="";return e<0?r+=`${G}${-e}D`:e>0&&(r+=`${G}${e}C`),t<0?r+=`${G}${-t}A`:t>0&&(r+=`${G}${t}B`),r},up:(e=1)=>`${G}${e}A`,down:(e=1)=>`${G}${e}B`,forward:(e=1)=>`${G}${e}C`,backward:(e=1)=>`${G}${e}D`,nextLine:(e=1)=>`${G}E`.repeat(e),prevLine:(e=1)=>`${G}F`.repeat(e),left:`${G}G`,hide:`${G}?25l`,show:`${G}?25h`,save:`${Dr}7`,restore:`${Dr}8`},pc={up:(e=1)=>`${G}S`.repeat(e),down:(e=1)=>`${G}T`.repeat(e)},mc={screen:`${G}2J`,up:(e=1)=>`${G}1J`.repeat(e),down:(e=1)=>`${G}J`.repeat(e),line:`${G}2K`,lineEnd:`${G}K`,lineStart:`${G}1K`,lines(e){let t="";for(let r=0;r<e;r++)t+=this.line+(r<e-1?gr.up():"");return e&&(t+=gr.left),t}};ci.exports={cursor:gr,scroll:pc,erase:mc,beep:lc}});var Ue=_((xD,hr)=>{var bn=process||{},li=bn.argv||[],vn=bn.env||{},fc=!(vn.NO_COLOR||li.includes("--no-color"))&&(!!vn.FORCE_COLOR||li.includes("--color")||bn.platform==="win32"||(bn.stdout||{}).isTTY&&vn.TERM!=="dumb"||!!vn.CI),dc=(e,t,r=e)=>n=>{let i=""+n,a=i.indexOf(t,e.length);return~a?e+Dc(i,t,r,a)+t:e+i+t},Dc=(e,t,r,n)=>{let i="",a=0;do i+=e.substring(a,n)+r,a=n+t.length,n=e.indexOf(t,a);while(~n);return i+e.substring(a)},pi=(e=fc)=>{let t=e?dc:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};hr.exports=pi();hr.exports.createColors=pi});var Wa=_((fx,_n)=>{_n.exports.Space_Separator=/[\u1680\u2000-\u200A\u202F\u205F\u3000]/;_n.exports.ID_Start=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/;_n.exports.ID_Continue=/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/});var zr=_((dx,Ja)=>{var Ur=Wa();Ja.exports={isSpaceSeparator(e){return typeof e=="string"&&Ur.Space_Separator.test(e)},isIdStartChar(e){return typeof e=="string"&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="$"||e==="_"||Ur.ID_Start.test(e))},isIdContinueChar(e){return typeof e=="string"&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e>="0"&&e<="9"||e==="$"||e==="_"||e==="\u200C"||e==="\u200D"||Ur.ID_Continue.test(e))},isDigit(e){return typeof e=="string"&&/[0-9]/.test(e)},isHexDigit(e){return typeof e=="string"&&/[0-9A-Fa-f]/.test(e)}}});var Xa=_((Dx,Ya)=>{var re=zr(),Wr,pe,Je,Mn,at,be,oe,Hr,fn;Ya.exports=function(t,r){Wr=String(t),pe="start",Je=[],Mn=0,at=1,be=0,oe=void 0,Hr=void 0,fn=void 0;do oe=um(),pm[pe]();while(oe.type!=="eof");return typeof r=="function"?Jr({"":fn},"",r):fn};function Jr(e,t,r){let n=e[t];if(n!=null&&typeof n=="object")if(Array.isArray(n))for(let i=0;i<n.length;i++){let a=String(i),o=Jr(n,a,r);o===void 0?delete n[a]:Object.defineProperty(n,a,{value:o,writable:!0,enumerable:!0,configurable:!0})}else for(let i in n){let a=Jr(n,i,r);a===void 0?delete n[i]:Object.defineProperty(n,i,{value:a,writable:!0,enumerable:!0,configurable:!0})}return r.call(e,t,n)}var T,P,mn,We,I;function um(){for(T="default",P="",mn=!1,We=1;;){I=Ge();let e=Ha[T]();if(e)return e}}function Ge(){if(Wr[Mn])return String.fromCodePoint(Wr.codePointAt(Mn))}function C(){let e=Ge();return e===`
|
|
2
|
+
`?(at++,be=0):e?be+=e.length:be++,e&&(Mn+=e.length),e}var Ha={default(){switch(I){case" ":case"\v":case"\f":case" ":case"\xA0":case"\uFEFF":case`
|
|
3
|
+
`:case"\r":case"\u2028":case"\u2029":C();return;case"/":C(),T="comment";return;case void 0:return C(),q("eof")}if(re.isSpaceSeparator(I)){C();return}return Ha[pe]()},comment(){switch(I){case"*":C(),T="multiLineComment";return;case"/":C(),T="singleLineComment";return}throw W(C())},multiLineComment(){switch(I){case"*":C(),T="multiLineCommentAsterisk";return;case void 0:throw W(C())}C()},multiLineCommentAsterisk(){switch(I){case"*":C();return;case"/":C(),T="default";return;case void 0:throw W(C())}C(),T="multiLineComment"},singleLineComment(){switch(I){case`
|
|
4
|
+
`:case"\r":case"\u2028":case"\u2029":C(),T="default";return;case void 0:return C(),q("eof")}C()},value(){switch(I){case"{":case"[":return q("punctuator",C());case"n":return C(),Ft("ull"),q("null",null);case"t":return C(),Ft("rue"),q("boolean",!0);case"f":return C(),Ft("alse"),q("boolean",!1);case"-":case"+":C()==="-"&&(We=-1),T="sign";return;case".":P=C(),T="decimalPointLeading";return;case"0":P=C(),T="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":P=C(),T="decimalInteger";return;case"I":return C(),Ft("nfinity"),q("numeric",1/0);case"N":return C(),Ft("aN"),q("numeric",NaN);case'"':case"'":mn=C()==='"',P="",T="string";return}throw W(C())},identifierNameStartEscape(){if(I!=="u")throw W(C());C();let e=Gr();switch(e){case"$":case"_":break;default:if(!re.isIdStartChar(e))throw Ga();break}P+=e,T="identifierName"},identifierName(){switch(I){case"$":case"_":case"\u200C":case"\u200D":P+=C();return;case"\\":C(),T="identifierNameEscape";return}if(re.isIdContinueChar(I)){P+=C();return}return q("identifier",P)},identifierNameEscape(){if(I!=="u")throw W(C());C();let e=Gr();switch(e){case"$":case"_":case"\u200C":case"\u200D":break;default:if(!re.isIdContinueChar(e))throw Ga();break}P+=e,T="identifierName"},sign(){switch(I){case".":P=C(),T="decimalPointLeading";return;case"0":P=C(),T="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":P=C(),T="decimalInteger";return;case"I":return C(),Ft("nfinity"),q("numeric",We*(1/0));case"N":return C(),Ft("aN"),q("numeric",NaN)}throw W(C())},zero(){switch(I){case".":P+=C(),T="decimalPoint";return;case"e":case"E":P+=C(),T="decimalExponent";return;case"x":case"X":P+=C(),T="hexadecimal";return}return q("numeric",We*0)},decimalInteger(){switch(I){case".":P+=C(),T="decimalPoint";return;case"e":case"E":P+=C(),T="decimalExponent";return}if(re.isDigit(I)){P+=C();return}return q("numeric",We*Number(P))},decimalPointLeading(){if(re.isDigit(I)){P+=C(),T="decimalFraction";return}throw W(C())},decimalPoint(){switch(I){case"e":case"E":P+=C(),T="decimalExponent";return}if(re.isDigit(I)){P+=C(),T="decimalFraction";return}return q("numeric",We*Number(P))},decimalFraction(){switch(I){case"e":case"E":P+=C(),T="decimalExponent";return}if(re.isDigit(I)){P+=C();return}return q("numeric",We*Number(P))},decimalExponent(){switch(I){case"+":case"-":P+=C(),T="decimalExponentSign";return}if(re.isDigit(I)){P+=C(),T="decimalExponentInteger";return}throw W(C())},decimalExponentSign(){if(re.isDigit(I)){P+=C(),T="decimalExponentInteger";return}throw W(C())},decimalExponentInteger(){if(re.isDigit(I)){P+=C();return}return q("numeric",We*Number(P))},hexadecimal(){if(re.isHexDigit(I)){P+=C(),T="hexadecimalInteger";return}throw W(C())},hexadecimalInteger(){if(re.isHexDigit(I)){P+=C();return}return q("numeric",We*Number(P))},string(){switch(I){case"\\":C(),P+=cm();return;case'"':if(mn)return C(),q("string",P);P+=C();return;case"'":if(!mn)return C(),q("string",P);P+=C();return;case`
|
|
5
|
+
`:case"\r":throw W(C());case"\u2028":case"\u2029":mm(I);break;case void 0:throw W(C())}P+=C()},start(){switch(I){case"{":case"[":return q("punctuator",C())}T="value"},beforePropertyName(){switch(I){case"$":case"_":P=C(),T="identifierName";return;case"\\":C(),T="identifierNameStartEscape";return;case"}":return q("punctuator",C());case'"':case"'":mn=C()==='"',T="string";return}if(re.isIdStartChar(I)){P+=C(),T="identifierName";return}throw W(C())},afterPropertyName(){if(I===":")return q("punctuator",C());throw W(C())},beforePropertyValue(){T="value"},afterPropertyValue(){switch(I){case",":case"}":return q("punctuator",C())}throw W(C())},beforeArrayValue(){if(I==="]")return q("punctuator",C());T="value"},afterArrayValue(){switch(I){case",":case"]":return q("punctuator",C())}throw W(C())},end(){throw W(C())}};function q(e,t){return{type:e,value:t,line:at,column:be}}function Ft(e){for(let t of e){if(Ge()!==t)throw W(C());C()}}function cm(){switch(Ge()){case"b":return C(),"\b";case"f":return C(),"\f";case"n":return C(),`
|
|
6
|
+
`;case"r":return C(),"\r";case"t":return C()," ";case"v":return C(),"\v";case"0":if(C(),re.isDigit(Ge()))throw W(C());return"\0";case"x":return C(),lm();case"u":return C(),Gr();case`
|
|
7
|
+
`:case"\u2028":case"\u2029":return C(),"";case"\r":return C(),Ge()===`
|
|
8
|
+
`&&C(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":throw W(C());case void 0:throw W(C())}return C()}function lm(){let e="",t=Ge();if(!re.isHexDigit(t)||(e+=C(),t=Ge(),!re.isHexDigit(t)))throw W(C());return e+=C(),String.fromCodePoint(parseInt(e,16))}function Gr(){let e="",t=4;for(;t-- >0;){let r=Ge();if(!re.isHexDigit(r))throw W(C());e+=C()}return String.fromCodePoint(parseInt(e,16))}var pm={start(){if(oe.type==="eof")throw yt();qr()},beforePropertyName(){switch(oe.type){case"identifier":case"string":Hr=oe.value,pe="afterPropertyName";return;case"punctuator":jn();return;case"eof":throw yt()}},afterPropertyName(){if(oe.type==="eof")throw yt();pe="beforePropertyValue"},beforePropertyValue(){if(oe.type==="eof")throw yt();qr()},beforeArrayValue(){if(oe.type==="eof")throw yt();if(oe.type==="punctuator"&&oe.value==="]"){jn();return}qr()},afterPropertyValue(){if(oe.type==="eof")throw yt();switch(oe.value){case",":pe="beforePropertyName";return;case"}":jn()}},afterArrayValue(){if(oe.type==="eof")throw yt();switch(oe.value){case",":pe="beforeArrayValue";return;case"]":jn()}},end(){}};function qr(){let e;switch(oe.type){case"punctuator":switch(oe.value){case"{":e={};break;case"[":e=[];break}break;case"null":case"boolean":case"numeric":case"string":e=oe.value;break}if(fn===void 0)fn=e;else{let t=Je[Je.length-1];Array.isArray(t)?t.push(e):Object.defineProperty(t,Hr,{value:e,writable:!0,enumerable:!0,configurable:!0})}if(e!==null&&typeof e=="object")Je.push(e),Array.isArray(e)?pe="beforeArrayValue":pe="beforePropertyName";else{let t=Je[Je.length-1];t==null?pe="end":Array.isArray(t)?pe="afterArrayValue":pe="afterPropertyValue"}}function jn(){Je.pop();let e=Je[Je.length-1];e==null?pe="end":Array.isArray(e)?pe="afterArrayValue":pe="afterPropertyValue"}function W(e){return Kn(e===void 0?`JSON5: invalid end of input at ${at}:${be}`:`JSON5: invalid character '${Qa(e)}' at ${at}:${be}`)}function yt(){return Kn(`JSON5: invalid end of input at ${at}:${be}`)}function Ga(){return be-=5,Kn(`JSON5: invalid identifier character at ${at}:${be}`)}function mm(e){console.warn(`JSON5: '${Qa(e)}' in strings is not valid ECMAScript; consider escaping`)}function Qa(e){let t={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};if(t[e])return t[e];if(e<" "){let r=e.charCodeAt(0).toString(16);return"\\x"+("00"+r).substring(r.length)}return e}function Kn(e){let t=new SyntaxError(e);return t.lineNumber=at,t.columnNumber=be,t}});var es=_((gx,Za)=>{var Qr=zr();Za.exports=function(t,r,n){let i=[],a="",o,s,u="",c;if(r!=null&&typeof r=="object"&&!Array.isArray(r)&&(n=r.space,c=r.quote,r=r.replacer),typeof r=="function")s=r;else if(Array.isArray(r)){o=[];for(let D of r){let d;typeof D=="string"?d=D:(typeof D=="number"||D instanceof String||D instanceof Number)&&(d=String(D)),d!==void 0&&o.indexOf(d)<0&&o.push(d)}}return n instanceof Number?n=Number(n):n instanceof String&&(n=String(n)),typeof n=="number"?n>0&&(n=Math.min(10,Math.floor(n)),u=" ".substr(0,n)):typeof n=="string"&&(u=n.substr(0,10)),l("",{"":t});function l(D,d){let f=d[D];switch(f!=null&&(typeof f.toJSON5=="function"?f=f.toJSON5(D):typeof f.toJSON=="function"&&(f=f.toJSON(D))),s&&(f=s.call(d,D,f)),f instanceof Number?f=Number(f):f instanceof String?f=String(f):f instanceof Boolean&&(f=f.valueOf()),f){case null:return"null";case!0:return"true";case!1:return"false"}if(typeof f=="string")return p(f,!1);if(typeof f=="number")return String(f);if(typeof f=="object")return Array.isArray(f)?g(f):m(f)}function p(D){let d={"'":.1,'"':.2},f={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"},E="";for(let A=0;A<D.length;A++){let S=D[A];switch(S){case"'":case'"':d[S]++,E+=S;continue;case"\0":if(Qr.isDigit(D[A+1])){E+="\\x00";continue}}if(f[S]){E+=f[S];continue}if(S<" "){let y=S.charCodeAt(0).toString(16);E+="\\x"+("00"+y).substring(y.length);continue}E+=S}let x=c||Object.keys(d).reduce((A,S)=>d[A]<d[S]?A:S);return E=E.replace(new RegExp(x,"g"),f[x]),x+E+x}function m(D){if(i.indexOf(D)>=0)throw TypeError("Converting circular structure to JSON5");i.push(D);let d=a;a=a+u;let f=o||Object.keys(D),E=[];for(let A of f){let S=l(A,D);if(S!==void 0){let y=h(A)+":";u!==""&&(y+=" "),y+=S,E.push(y)}}let x;if(E.length===0)x="{}";else{let A;if(u==="")A=E.join(","),x="{"+A+"}";else{let S=`,
|
|
9
|
+
`+a;A=E.join(S),x=`{
|
|
10
|
+
`+a+A+`,
|
|
11
|
+
`+d+"}"}}return i.pop(),a=d,x}function h(D){if(D.length===0)return p(D,!0);let d=String.fromCodePoint(D.codePointAt(0));if(!Qr.isIdStartChar(d))return p(D,!0);for(let f=d.length;f<D.length;f++)if(!Qr.isIdContinueChar(String.fromCodePoint(D.codePointAt(f))))return p(D,!0);return D}function g(D){if(i.indexOf(D)>=0)throw TypeError("Converting circular structure to JSON5");i.push(D);let d=a;a=a+u;let f=[];for(let x=0;x<D.length;x++){let A=l(String(x),D);f.push(A!==void 0?A:"null")}let E;if(f.length===0)E="[]";else if(u==="")E="["+f.join(",")+"]";else{let x=`,
|
|
12
|
+
`+a,A=f.join(x);E=`[
|
|
13
|
+
`+a+A+`,
|
|
14
|
+
`+d+"]"}return i.pop(),a=d,E}}});var ns=_((hx,ts)=>{var fm=Xa(),dm=es(),Dm={parse:fm,stringify:dm};ts.exports=Dm});var Xr=_(Un=>{"use strict";Object.defineProperty(Un,"__esModule",{value:!0});function ps(e){return Object.prototype.toString.call(e)}Un.getType=ps;function vm(e){throw new TypeError("unsupported data type: "+ps(e))}Un.throwUnknownDataType=vm});var ro=_(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});var He="";for(let e=0;e<10;e++){let t=String.fromCharCode(48+e);He+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(65+e);He+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(97+e);He+=t}var Kt=He.length,eo={};for(let e=0;e<Kt;e++){let t=He[e];eo[t]=e}function to(e){let t=0,r=1;for(let n=e.length-1;n>=0;n--){let i=e[n],a=eo[i];a*=r,t+=a,r*=Kt}return t}Qe.s_to_int=to;function ms(e){let t=BigInt(0),r=BigInt(1),n=BigInt(Kt);for(let i=e.length-1;i>=0;i--){let a=e[i],o=BigInt(eo[a]);o*=r,t+=o,r*=n}return t}Qe.s_to_big_int=ms;function no(e){if(e===0)return He[0];let t=[];for(;e!==0;){let r=e%Kt,n=He[r];t.push(n),e-=r,e/=Kt}return t.reverse().join("")}Qe.int_to_s=no;function fs(e){let t=BigInt(0),r=BigInt(Kt);if(e===t)return He[0];let n=[];for(;e!==t;){let i=e%r,a=He[Number(i)];n.push(a),e-=i,e/=r}return n.reverse().join("")}Qe.big_int_to_s=fs;function qn(e){return e.split("").reverse().join("")}function ds(e){if(e<0)return"-"+ds(-e);let[t,r]=e.toString().split(".");if(!r)return no(e);let n;r&&([r,n]=r.split("e")),t=zn(t),r=qn(r),r=zn(r);let i=t+"."+r;if(n){switch(i+=".",n[0]){case"+":n=n.slice(1);break;case"-":i+="-",n=n.slice(1);break}n=qn(n),n=zn(n),i+=n}return i}Qe.num_to_s=ds;function zn(e){let t=+e;return t.toString()===e?no(t):":"+fs(BigInt(e))}Qe.int_str_to_s=zn;function Zr(e){return e[0]===":"?ms(e.substring(1)).toString():to(e).toString()}function Ds(e){if(e[0]==="-")return-Ds(e.substr(1));let[t,r,n]=e.split(".");if(!r)return to(t);t=Zr(t),r=Zr(r),r=qn(r);let i=t+"."+r;if(n){i+="e";let a=!1;n[0]==="-"&&(a=!0,n=n.slice(1)),n=Zr(n),n=qn(n),i+=a?-n:+n}return+i}Qe.s_to_num=Ds});var io=_(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});var oo=ro();function bm(e){return"n|"+oo.num_to_s(e)}Ye.encodeNum=bm;function Pm(e){return e=e.replace("n|",""),oo.s_to_num(e)}Ye.decodeNum=Pm;function Tm(e){return typeof e=="number"?e:oo.s_to_int(e)}Ye.decodeKey=Tm;function Im(e){return e?"b|T":"b|F"}Ye.encodeBool=Im;function Bm(e){switch(e){case"b|T":return!0;case"b|F":return!1}return!!e}Ye.decodeBool=Bm;function Rm(e){switch(e[0]+e[1]){case"b|":case"o|":case"n|":case"a|":case"s|":e="s|"+e}return e}Ye.encodeStr=Rm;function Nm(e){return e[0]+e[1]==="s|"?e.substr(2):e}Ye.decodeStr=Nm});var gs=_(ao=>{"use strict";Object.defineProperty(ao,"__esModule",{value:!0});ao.config={sort_key:!1}});var uo=_(wt=>{"use strict";Object.defineProperty(wt,"__esModule",{value:!0});var km=gs(),$m=Xr(),so=io(),Om=ro();function Lm(e){return e.store.toArray()}wt.memToValues=Lm;function hs(){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}}}wt.makeInMemoryStore=hs;function Cs(){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,i]of Object.entries(e))if(r(n,i)==="break")return},forEachSchema(r){for(let[n,i]of Object.entries(t))if(r(n,i)==="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}}}wt.makeInMemoryCache=Cs;function _m(){return{store:hs(),cache:Cs(),keyCount:0}}wt.makeInMemoryMemory=_m;function St(e,t){if(e.cache.hasValue(t))return e.cache.getValue(t);let r=e.keyCount++,n=Om.num_to_s(r);return e.store.add(t),e.cache.setValue(t,n),n}function jm(e,t){km.config.sort_key&&t.sort();let r=t.join(",");if(e.cache.hasSchema(r))return e.cache.getSchema(r);let n=dn(e,t,void 0);return e.cache.setSchema(r,n),n}function dn(e,t,r){if(t===null)return"";switch(typeof t){case"undefined":if(Array.isArray(r))return dn(e,null,r);break;case"object":if(t===null)return St(e,null);if(Array.isArray(t)){let n="a";for(let i=0;i<t.length;i++){let a=t[i],o=a===null?"_":dn(e,a,t);n+="|"+o}return n==="a"&&(n="a|"),St(e,n)}else{let n=Object.keys(t);if(n.length===0)return St(e,"o|");let i="o",a=jm(e,n);i+="|"+a;for(let o of n){let s=t[o],u=dn(e,s,t);i+="|"+u}return St(e,i)}case"boolean":return St(e,so.encodeBool(t));case"number":return St(e,so.encodeNum(t));case"string":return St(e,so.encodeStr(t))}return $m.throwUnknownDataType(t)}wt.addValue=dn});var lo=_(gn=>{"use strict";Object.defineProperty(gn,"__esModule",{value:!0});var Mm=Xr(),Wn=io(),co=uo();function Km(e){let t=co.makeInMemoryMemory(),r=co.addValue(t,e,void 0);return[co.memToValues(t),r]}gn.compress=Km;function Vm(e,t){if(t==="o|")return{};let r={},n=t.split("|"),i=n[1],a=Dn(e,i),o=n.length;o-2===1&&!Array.isArray(a)&&(a=[a]);for(let s=2;s<o;s++){let u=a[s-2],c=n[s];c=Dn(e,c),r[u]=c}return r}function Um(e,t){if(t==="a|")return[];let r=t.split("|"),n=r.length-1,i=new Array(n);for(let a=0;a<n;a++){let o=r[a+1];o=Dn(e,o),i[a]=o}return i}function Dn(e,t){if(t===""||t==="_")return null;let r=Wn.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 Wn.decodeBool(n);case"o|":return Vm(e,n);case"n|":return Wn.decodeNum(n);case"a|":return Um(e,n);default:return Wn.decodeStr(n)}}return Mm.throwUnknownDataType(n)}gn.decode=Dn;function zm(e){let[t,r]=e;return Dn(t,r)}gn.decompress=zm});var Es=_(Jn=>{"use strict";Object.defineProperty(Jn,"__esModule",{value:!0});function qm(e){for(let t in e)e[t]===void 0&&delete e[t]}Jn.trimUndefined=qm;function Wm(e){xs(e,new Set)}Jn.trimUndefinedRecursively=Wm;function xs(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)&&xs(n,t)}}});var Ss=_(st=>{"use strict";Object.defineProperty(st,"__esModule",{value:!0});var Fs=lo();st.compress=Fs.compress;st.decompress=Fs.decompress;var Jm=lo();st.decode=Jm.decode;var Gm=uo();st.addValue=Gm.addValue;var ys=Es();st.trimUndefined=ys.trimUndefined;st.trimUndefinedRecursively=ys.trimUndefinedRecursively});var Vs=_((Qy,Ks)=>{Ks.exports=Ms;Ms.sync=xf;var _s=et("fs");function Cf(e,t){var r=t.pathExt!==void 0?t.pathExt:process.env.PATHEXT;if(!r||(r=r.split(";"),r.indexOf("")!==-1))return!0;for(var n=0;n<r.length;n++){var i=r[n].toLowerCase();if(i&&e.substr(-i.length).toLowerCase()===i)return!0}return!1}function js(e,t,r){return!e.isSymbolicLink()&&!e.isFile()?!1:Cf(t,r)}function Ms(e,t,r){_s.stat(e,function(n,i){r(n,n?!1:js(i,e,t))})}function xf(e,t){return js(_s.statSync(e),e,t)}});var Js=_((Yy,Ws)=>{Ws.exports=zs;zs.sync=Ef;var Us=et("fs");function zs(e,t,r){Us.stat(e,function(n,i){r(n,n?!1:qs(i,t))})}function Ef(e,t){return qs(Us.statSync(e),t)}function qs(e,t){return e.isFile()&&Ff(e,t)}function Ff(e,t){var r=e.mode,n=e.uid,i=e.gid,a=t.uid!==void 0?t.uid:process.getuid&&process.getuid(),o=t.gid!==void 0?t.gid:process.getgid&&process.getgid(),s=parseInt("100",8),u=parseInt("010",8),c=parseInt("001",8),l=s|u,p=r&c||r&u&&i===o||r&s&&n===a||r&l&&a===0;return p}});var Hs=_((Zy,Gs)=>{var Xy=et("fs"),or;process.platform==="win32"||global.TESTING_WINDOWS?or=Vs():or=Js();Gs.exports=Eo;Eo.sync=yf;function Eo(e,t,r){if(typeof t=="function"&&(r=t,t={}),!r){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(n,i){Eo(e,t||{},function(a,o){a?i(a):n(o)})})}or(e,t||{},function(n,i){n&&(n.code==="EACCES"||t&&t.ignoreErrors)&&(n=null,i=!1),r(n,i)})}function yf(e,t){try{return or.sync(e,t||{})}catch(r){if(t&&t.ignoreErrors||r.code==="EACCES")return!1;throw r}}});var nu=_((eS,tu)=>{var zt=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Qs=et("path"),Sf=zt?";":":",Ys=Hs(),Xs=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),Zs=(e,t)=>{let r=t.colon||Sf,n=e.match(/\//)||zt&&e.match(/\\/)?[""]:[...zt?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(r)],i=zt?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",a=zt?i.split(r):[""];return zt&&e.indexOf(".")!==-1&&a[0]!==""&&a.unshift(""),{pathEnv:n,pathExt:a,pathExtExe:i}},eu=(e,t,r)=>{typeof t=="function"&&(r=t,t={}),t||(t={});let{pathEnv:n,pathExt:i,pathExtExe:a}=Zs(e,t),o=[],s=c=>new Promise((l,p)=>{if(c===n.length)return t.all&&o.length?l(o):p(Xs(e));let m=n[c],h=/^".*"$/.test(m)?m.slice(1,-1):m,g=Qs.join(h,e),D=!h&&/^\.[\\\/]/.test(e)?e.slice(0,2)+g:g;l(u(D,c,0))}),u=(c,l,p)=>new Promise((m,h)=>{if(p===i.length)return m(s(l+1));let g=i[p];Ys(c+g,{pathExt:a},(D,d)=>{if(!D&&d)if(t.all)o.push(c+g);else return m(c+g);return m(u(c,l,p+1))})});return r?s(0).then(c=>r(null,c),r):s(0)},wf=(e,t)=>{t=t||{};let{pathEnv:r,pathExt:n,pathExtExe:i}=Zs(e,t),a=[];for(let o=0;o<r.length;o++){let s=r[o],u=/^".*"$/.test(s)?s.slice(1,-1):s,c=Qs.join(u,e),l=!u&&/^\.[\\\/]/.test(e)?e.slice(0,2)+c:c;for(let p=0;p<n.length;p++){let m=l+n[p];try{if(Ys.sync(m,{pathExt:i}))if(t.all)a.push(m);else return m}catch{}}}if(t.all&&a.length)return a;if(t.nothrow)return null;throw Xs(e)};tu.exports=eu;eu.sync=wf});var ou=_((tS,Fo)=>{"use strict";var ru=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(n=>n.toUpperCase()==="PATH")||"Path"};Fo.exports=ru;Fo.exports.default=ru});var uu=_((nS,su)=>{"use strict";var iu=et("path"),Af=nu(),vf=ou();function au(e,t){let r=e.options.env||process.env,n=process.cwd(),i=e.options.cwd!=null,a=i&&process.chdir!==void 0&&!process.chdir.disabled;if(a)try{process.chdir(e.options.cwd)}catch{}let o;try{o=Af.sync(e.command,{path:r[vf({env:r})],pathExt:t?iu.delimiter:void 0})}catch{}finally{a&&process.chdir(n)}return o&&(o=iu.resolve(i?e.options.cwd:"",o)),o}function bf(e){return au(e)||au(e,!0)}su.exports=bf});var cu=_((rS,So)=>{"use strict";var yo=/([()\][%!^"`<>&|;, *?])/g;function Pf(e){return e=e.replace(yo,"^$1"),e}function Tf(e,t){return e=`${e}`,e=e.replace(/(\\*)"/g,'$1$1\\"'),e=e.replace(/(\\*)$/,"$1$1"),e=`"${e}"`,e=e.replace(yo,"^$1"),t&&(e=e.replace(yo,"^$1")),e}So.exports.command=Pf;So.exports.argument=Tf});var pu=_((oS,lu)=>{"use strict";lu.exports=/^#!(.*)/});var fu=_((iS,mu)=>{"use strict";var If=pu();mu.exports=(e="")=>{let t=e.match(If);if(!t)return null;let[r,n]=t[0].replace(/#! ?/,"").split(" "),i=r.split("/").pop();return i==="env"?n:n?`${i} ${n}`:i}});var Du=_((aS,du)=>{"use strict";var wo=et("fs"),Bf=fu();function Rf(e){let r=Buffer.alloc(150),n;try{n=wo.openSync(e,"r"),wo.readSync(n,r,0,150,0),wo.closeSync(n)}catch{}return Bf(r.toString())}du.exports=Rf});var xu=_((sS,Cu)=>{"use strict";var Nf=et("path"),gu=uu(),hu=cu(),kf=Du(),$f=process.platform==="win32",Of=/\.(?:com|exe)$/i,Lf=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function _f(e){e.file=gu(e);let t=e.file&&kf(e.file);return t?(e.args.unshift(e.file),e.command=t,gu(e)):e.file}function jf(e){if(!$f)return e;let t=_f(e),r=!Of.test(t);if(e.options.forceShell||r){let n=Lf.test(t);e.command=Nf.normalize(e.command),e.command=hu.command(e.command),e.args=e.args.map(a=>hu.argument(a,n));let i=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${i}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function Mf(e,t,r){t&&!Array.isArray(t)&&(r=t,t=null),t=t?t.slice(0):[],r=Object.assign({},r);let n={command:e,args:t,options:r,file:void 0,original:{command:e,args:t}};return r.shell?n:jf(n)}Cu.exports=Mf});var yu=_((uS,Fu)=>{"use strict";var Ao=process.platform==="win32";function vo(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function Kf(e,t){if(!Ao)return;let r=e.emit;e.emit=function(n,i){if(n==="exit"){let a=Eu(i,t,"spawn");if(a)return r.call(e,"error",a)}return r.apply(e,arguments)}}function Eu(e,t){return Ao&&e===1&&!t.file?vo(t.original,"spawn"):null}function Vf(e,t){return Ao&&e===1&&!t.file?vo(t.original,"spawnSync"):null}Fu.exports={hookChildProcess:Kf,verifyENOENT:Eu,verifyENOENTSync:Vf,notFoundError:vo}});var Au=_((cS,qt)=>{"use strict";var Su=et("child_process"),bo=xu(),Po=yu();function wu(e,t,r){let n=bo(e,t,r),i=Su.spawn(n.command,n.args,n.options);return Po.hookChildProcess(i,n),i}function Uf(e,t,r){let n=bo(e,t,r),i=Su.spawnSync(n.command,n.args,n.options);return i.error=i.error||Po.verifyENOENTSync(i.status,n),i}qt.exports=wu;qt.exports.spawn=wu;qt.exports.sync=Uf;qt.exports._parse=bo;qt.exports._enoent=Po});import{createServer as fd,request as dd}from"node:http";var ar="preview-url";var At="framework",xn="platform",En="node",ko="/~builder-connect",ft="/~builder-connected",sr="/~builder-dev-tools",ur="/~builder-dev-tools.js",dt="/~builder-dev-tools-close",$o="/mappings";function B(e,t=""){return e.ts.createSourceFile("module.tsx",typeof t=="string"?t:"",e.ts.ScriptTarget.Latest,void 0)}function Fn(e,t=""){let r=B(e,t?.trim());if(r.statements.length===0)throw new Error(`No statements found in code: ${t}`);return r.statements[0]}function ne(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()+`
|
|
15
|
+
`:n.printNode(e.ts.EmitHint.Unspecified,t,e.ts.createSourceFile("module.tsx","",e.ts.ScriptTarget.Latest)).trim()+`
|
|
16
|
+
`}return""}var _o=se(cr(),1);function Ce(e){return e.endsWith(".mapper.tsx")||e.endsWith(".mapper.jsx")}function k(e,t,r){t=Se(t),r=Se(r),t=e.dirname(t);let n=e.basename(r,e.extname(r));r=e.dirname(r);let i;return n==="index"?i=e.relative(t,r):i=e.relative(t,e.join(r,n)),i=Se(e.normalize(i)),i.startsWith(".")||(i="./"+i),i}function Se(e){return e.startsWith("\\\\?\\")?e:e.replace(/\\/g,"/")}function Dt(e,t){let r=e.extname(t),n=e.basename(t,r).split(/[\/\\]/),i=n[n.length-1];return Lo(i==="index"?e.basename(e.dirname(t)):i)}function Lo(e){return z(e).replace(/ /g,"")}function xe(e,t){let r=e.extname(t),n=Se(e.basename(t,r)).split("/").pop();return z(n==="index"?e.basename(e.dirname(t)):n)}function V(e,t){let r=Se(e.relative(e.getAppRootDir(),t));r=r.split("/").filter(i=>i!=="."&&i!==".."&&i!=="").join("/"),r.endsWith(".tsx")||r.endsWith(".jsx")?r=r.slice(0,-4):(r.endsWith(".ts")||r.endsWith(".js"))&&(r=r.slice(0,-3));let n=e.getFrameworks();return r.startsWith("src/")&&(r=r.slice(4)),n.some(i=>i.name.includes("next"))?"@/"+r:"~/"+r}function $(e,t){let r=t,n=[];for(let i=0;i<2;i++){let a=e.basename(r);if(!a||a==="components")break;n.unshift(a),r=e.dirname(r)}return n.join("/")}function z(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 me(e){return e.sort((t,r)=>t.name.toLocaleLowerCase().localeCompare(r.name.toLocaleLowerCase()))}async function U(e,t,r,n){if(typeof r!="string"||r==="")throw new Error(`getComponentId(), exportName must be a non-empty string, received: ${r}, ${t}`);return n&&(t=n),t=e.normalize(t),(await e.hash(t+"#"+r)).substring(0,8)}async function jo(e){return(await e.hash(e.getAppRootDir())).substring(0,8)}function Jt(e){return typeof e=="number"}function vt(e){return typeof e=="boolean"}function le(e){return typeof e=="string"}function bt(e){return typeof e=="string"?/^[A-Z][A-Za-z0-9]*$/.test(e):!1}function de(e){return JSON.parse(JSON.stringify(e))}function yn(e,t,r){for(let n of t)if(e.dirname(r).includes(n))return!0;return!1}function Mo(){try{let e=(0,_o.default)();if(e?.name)return e.name}catch{}return"npm"}function De(e){let t=e.join(e.getAppRootDir(),"tsconfig.json");return e.exists(t)}var Ju=["node_modules","dist","build","public"];async function Ee(e,t){async function r(i,a){if(a>10)return;let o=await e.readdir(i);for(let s of o){if(Ju.includes(s))continue;let u=e.join(i,s),c=await e.stat(u);if(c){if(c.isFile()&&s.startsWith("builder-registry."))return u;if(c.isDirectory()){let l=await r(u,a+1);if(l)return l}}}}let n=await r(e.getAppRootDir(),0);if(!n){let a=`builder-registry.${await De(e)?"ts":"js"}`;return e.join(t,a)}return n}async function Gt(e,t){let r=e.resolve("/");for(let n=0;n<20;n++){let i=e.join(t,"package.json"),a=await e.readFile(i);if(a)return JSON.parse(a);if(t===r)break;t=e.dirname(t)}return null}async function Ko(e,t){for(let r=0;r<20;r++){let n=e.dirname(t),i=e.join(n,"node_modules");if(await e.exists(i))return i;if(t===e.getAppRootDir())break;t=e.dirname(t)}return e.join(e.getAppRootDir(),"node_modules")}async function Ht(e,t,r){let n=await e.readdir(t);return n.includes(r)?e.join(t,r):(await Promise.all(n.map(async a=>{if(a.startsWith(".")||a==="node_modules")return;let o=e.join(t,a);if((await e.stat(o)).isDirectory()){let u=await Ht(e,o,r);if(u)return u}}))).find(a=>typeof a=="string")}async function Z(e,t,r){if(!Array.isArray(t)||t.length===0)throw new Error(`createTsProgram() Invalid filePaths: ${t}`);let n=await Ko(e,t[0]),i=e.join(n,"typescript","lib"),a=new Map,o={fileExists:s=>{if(s=e.normalize(s),s.includes("node_modules")){let u=Qt.get(s);if(!u){try{e.statSync(s).isFile()?u={exists:!0,content:e.readFileSync(s)}:u={exists:!1}}catch{u={exists:!1}}Qt.set(s,u)}return u.exists}return a.has(s)||a.set(s,e.existsSync(s)),a.get(s)},getCanonicalFileName:s=>e.normalize(s),getCurrentDirectory:()=>e.cwd(),getDefaultLibFileName:()=>e.join(i,"lib.d.ts"),getDefaultLibLocation:()=>i,getNewLine:()=>`
|
|
17
|
+
`,getSourceFile:s=>{if(s=e.normalize(s),s.includes("node_modules")){let c=Qt.get(s);if(c)return B(e,c.content)}let u=e.readFileSync(s);if(u==null){let c=e.basename(s),l=e.extname(c).toLowerCase();if(s.startsWith(i)&&l===".ts"&&(u=Uo.get(c),u==null&&typeof self<"u"&&typeof fetch=="function"))throw new wn(c)}return s.includes("node_modules")&&(u?Qt.set(s,{exists:!0,content:u}):Qt.set(s,{exists:!1})),B(e,u)},readFile:s=>{let u=e.readFileSync(s);return typeof u=="string"?u:void 0},useCaseSensitiveFileNames:()=>!1,writeFile:()=>{}};for(;;)try{return Gu(e,o,t,r)}catch(s){if(s instanceof wn){await Hu(e,s.libName);continue}throw console.error("createTsProgram",s),new Error(`createTsProgram() Could not create program for: ${t[0]}`)}}function Gu(e,t,r,n){let i={rootNames:[...r],options:{},host:t},a=e.ts.findConfigFile(e.dirname(r[0]),o=>e.existsSync(o));if(a){let o=Vo.get(a);if(!o){let s=e.ts.readConfigFile(a,u=>{let c=e.readFileSync(u);return typeof c=="string"?c:void 0});s.error?console.error("error reading tsconfig for createTsProgram"):(o=e.ts.parseJsonConfigFileContent(s.config,e.ts.sys||{useCaseSensitiveFileNames:!1,readDirectory:(c,l)=>e.readdirSync(c),fileExists:c=>e.existsSync(c),readFile:c=>e.readFileSync(c)||void 0},e.dirname(a),void 0,a).options,Vo.set(a,o))}o&&(i.options=de(o))}return i.options.noEmit=!0,i.options.isolatedModules=!1,i.options.strict=!1,i.options.jsx=e.ts.JsxEmit.Preserve,i.options.allowJs=!0,Object.assign(i.options,n),e.ts.createProgram(i)}async function Pt(e,t,r){r||(r=await Z(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 wn=class{constructor(t){this.libName=t}};async function Hu(e,t){let r=`https://cdn.jsdelivr.net/npm/typescript@${e.ts.version}/lib/${t}`;Sn.has(t)||Sn.set(t,fetch(r).then(n=>n.text()).then(n=>{Uo.set(t,n)})),await Sn.get(t),Sn.delete(t)}var Uo=new Map,Sn=new Map,Qt=new Map,Vo=new Map;async function zo(e,t){let r=await e.readFile(t.filePath);return r==null?{diagnostics:[{messageText:`Error reading: ${t.filePath}`}],code:null,output:null}:lr(e,{code:r,filePath:t.filePath,compilerOptions:t.compilerOptions})}function lr(e,t){let r={diagnostics:[],code:t.code,output:null};try{let n=e.ts.transpileModule(t.code,{compilerOptions:t.compilerOptions,fileName:t.filePath??"module.tsx",reportDiagnostics:!0});n.diagnostics?.forEach(i=>{r.diagnostics.push({messageText:String(i.messageText)})}),r.output=n.outputText}catch(n){console.error("transpileModule",n),r.diagnostics.push({messageText:String(n)})}return r}import{access as Id,mkdir as Yu,readdir as Bd,readFile as Xu,stat as Rd,unlink as Nd,writeFile as Zu}from"node:fs/promises";import{homedir as ec,hostname as $d}from"node:os";import Jo from"node:path";import _d from"prettier";import Md from"typescript";import Vd from"launch-editor";async function Tt(e){let t=[],r=await Gt(e,e.getRepoRootDir());if(r){let n=await Wo(r,e);t.push(...n)}return t}async function Wo(e,t){let r=[];if(e&&typeof e=="object"){let n=new Set(Object.keys({...e.dependencies,...e.devDependencies}));for(let i of Qu)if(n.has(i)&&!r.some(a=>a.name===i)){let a={name:i};qo.has(i)&&(a.version=await qo.get(i)(t)),r.push(a)}}return r}function pr(e){let t=parseInt(e);return Number.isNaN(t)?void 0:t}var qo=new Map([["next",async e=>{if(!e.spawnSync)return;let t=Mo(),r=t==="npm"?"npx":t,{stdout:n}=e.spawnSync(r,["next","-v"],{encoding:"utf8"});if(!n)return;let i=n.match(/(Next.js v)([\d.]+)/g);if(!i)return;let a=i[0].split("Next.js v")[1],[o,s,u]=a.split(".");return{major:pr(o),minor:pr(s),patch:pr(u)}}]]),Qu=["@shopify/remix-oxygen","@shopify/hydrogen","@builder.io/qwik-city","@remix-run/react","@sveltejs/kit","astro","gatsby","next","nuxt","@builder.io/qwik","@angular/core","react","solid-js","svelte","vue"];import*as zd from"@sentry/node";function Go(){let e=ec();return Jo.join(e,".config","builder","dev-tools.json")}function mr(e,t){return typeof e=="object"&&e!=null&&t in e}async function It(){let e=Go();try{let t=await Xu(e,"utf-8");if(typeof t=="string")return JSON.parse(t)}catch(t){if(t.code==="ENOENT")return null}return null}async function fr(e){let t=Go();e=typeof e=="object"&&e!=null?e:{},await Yu(Jo.dirname(t),{recursive:!0}),await Zu(t,JSON.stringify(e??{},null,2))}var b={gen1:"Gen 1",gen2:"Gen 2"},Yt={CMS:"cms",VCP:"vcp",HYBRID:"hybrid"};import{debug as tc}from"node:console";import{request as nc}from"node:http";import{request as rc}from"node:https";function Bt(e){let t=Date.now();return new Promise((r,n)=>{let a=oc(e.url)({protocol:e.url.protocol,host:e.url.host,port:e.url.port,path:e.url.pathname+e.url.search,method:e.method,headers:e.headers},o=>{let s="";o.on("data",u=>{s+=u}),o.on("end",()=>{if(tc(`${e.method} ${e.url.href}, duration: ${Date.now()-t}ms`),typeof o.statusCode=="number"&&o.statusCode>=200&&o.statusCode<300)if(typeof o.headers["content-type"]!="string"||!o.headers["content-type"].includes("application/json"))n(`Response from ${e.url.href} content-type is ${o.headers["content-type"]}`);else try{r(JSON.parse(s))}catch(u){n(`Response from ${e.url.href} is not valid JSON: ${s}
|
|
18
|
+
${u}`)}else n(`Request to ${e.url.href} failed with status ${o.statusCode}: ${s}`)})}).on("error",o=>{n(`Error fetching ${e.url.href}, ${o}`)});e.body&&(a.setHeader("Content-Type","application/json"),a.write(e.body)),a.end()})}function oc(e){if(e.protocol==="https:")return rc;if(e.protocol==="http:")return nc;throw new Error(`Unsupported protocol ${e.protocol}`)}async function Ho(e){let t=new URL(`https://cdn.builder.io/api/v3/query/${e.publicApiKey}/${e.model}`);return t.searchParams.set("omit","meta.componentsUsed"),t.searchParams.set("apiKey",e.publicApiKey),t.searchParams.set("userAttributes.urlPath",e.pageUrl),t.searchParams.set("options.page.model",`"${e.model}"`),t.searchParams.set("cachebust","true"),(await Bt({url:t,method:"GET"}))[e.model]}async function Qo(e,t){if(t.kind===Yt.VCP)return!0;let r=new URL("https://cdn.builder.io/api/v2/admin"),n={query:`query {
|
|
19
19
|
models {
|
|
20
20
|
id
|
|
21
21
|
name
|
|
22
22
|
}
|
|
23
|
-
}`};e.debug(`Get model id for model name "${t.model}"`);let a=(await
|
|
23
|
+
}`};e.debug(`Get model id for model name "${t.model}"`);let a=(await Bt({url:r,method:"POST",headers:{Authorization:`Bearer ${t.privateAuthKey}`,"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(n)})).data.models.find(u=>u.name===t.model);if(!a)return e.debug(`No model found for model name "${t.model}"`),!1;e.debug(`Data query, modelId: "${a.id}", urlPath: "${t.pageUrl}"`);let o=new URL("https://cdn.builder.io/api/v3/data");o.searchParams.set("limit","1"),o.searchParams.set("cachebust","true"),o.searchParams.set("collection","content"),o.searchParams.set("query.published.$ne","archived"),o.searchParams.set("query.query.$elemMatch.$and[0].property","urlPath"),o.searchParams.set("query.query.$elemMatch.$and[0].operator","is"),o.searchParams.set("query.query.$elemMatch.$and[0].value",t.pageUrl),o.searchParams.set("query.modelId",a.id),o.searchParams.set("apiKey",t.publicApiKey);let s=await Bt({url:o,method:"GET"});return e.debug(`Data results (${s.results.length}): ${o.href}`),s.results.length>0}async function Yo(e,t){let r=new URL(`https://cdn.builder.io/api/v3/content/${t.model}`);r.searchParams.set("apiKey",t.publicApiKey),r.searchParams.set("cachebust","true"),r.searchParams.set("cb",Date.now().toString()),t.pageUrl&&(r.searchParams.set("url",t.pageUrl),e.debug(`get model: "${t.model}", pageUrl: "${t.pageUrl}":`,r.href)),t.id&&(r.searchParams.set("query.id",t.id),e.debug(`get model: "${t.model}", id: "${t.id}":`,r.href));let n=await Bt({url:r,method:"GET"});return e.debug(`get content results: ${n.results.length}`),n}async function Xo(e,t){let r=new URL(`https://cdn.builder.io/api/v1/write/${t.model}`);e.debug(`writing "${t.model}" content:`,r.href),await Bt({url:r,method:"POST",headers:{Authorization:`Bearer ${t.privateAuthKey}`},body:t.body})}var Rt="page",Zo="integration-welcome-screens",ei="8d9ee72a33344b4b867918b442ebd0af";async function ti(e,t){let r=await Yo(e,{model:Zo,publicApiKey:ei,id:t.templateContentId});if(!Array.isArray(r?.results)||r.results.length===0||!r.results[0].data?.blocks)throw new Error(`No Builder content found for id ${t.templateContentId}`);let n=JSON.stringify(r.results[0].data.blocks),i=ic(t.publicApiKey,t.pathname,t.title,n);await Xo(e,{privateAuthKey:t.privateAuthKey,model:Rt,body:i})}function ic(e,t,r,n){return JSON.stringify({name:r,ownerId:e,published:"published",query:[{property:"urlPath",value:[t],operator:"is"}],data:{title:r,blocksString:n}})}async function ni(e,t,r,n){e.debug(`connect builder with public key: ${t}`),e.publicApiKey=t;let i=e.closeAppServer(),a=await e.setPublicApiKey({publicApiKey:t});e.debug(`set public key: process.env.${a.envKey}=${t}`),process.env[a.envKey]=t;let o=await e.builderPageOptions();e.debug(`builder model: ${Rt}, path: ${o.pathname}, template: ${o.templateContentId}`);let s=await Qo(e,{model:Rt,pageUrl:o.pathname,publicApiKey:t,privateAuthKey:r,kind:n});if(!s){await ti(e,{templateContentId:o.templateContentId,pathname:o.pathname,title:o.title,publicApiKey:t,privateAuthKey:r});let l=5,p=0;for(;!s&&p<l;){await new Promise(h=>setTimeout(h,1e3));let m=await Ho({model:Rt,pageUrl:o.pathname,publicApiKey:t,privateAuthKey:r});p++,m&&m.length>0&&(s=!0)}}await i,e.debug("ensure builder setup");let u=[];n===Yt.VCP?u=await e.ensureFigmaImportPage():u=await e.ensureBuilderSetup(),a.modifiedType&&u.push({filePath:a.file,modifiedType:a.modifiedType}),u.forEach(l=>{l.displayFilePath=e.relative(e.getAppRootDir(),l.filePath)}),u.sort((l,p)=>l.filePath.localeCompare(p.filePath)),u.length>0?(e.debug(`modified files: ${u.map(l=>l.displayFilePath).join(", ")}`),await e.restartAppServer(),await new Promise(l=>setTimeout(l,500))):e.debug("no modified files");let c={success:!0,pathname:o.localePathname||o.pathname,modifiedFiles:u,platform:e.platform(),kind:n};return n===Yt.VCP&&(c.pathname="/"),e.debug(`connected builder: ${c.pathname}`),c}async function ri(e){let t=await e.builderPageOptions();e.debug(`validateBuilder, pathname: ${t.pathname}, localePathname: ${t.localePathname}, isValid: ${e.isValid}`);let r={isValid:e.isValid,pathname:t.localePathname||t.pathname,platform:e.platform()};if(e.isValid)return r;let n=await e.getPublicApiKey();return n.envValue?(e.debug(`public api key: ${n.envValue}, ${n.file}`),e.publicApiKey=n.envValue,e.debug("builder connection is valid"),r.isValid=!0,e.isValid=!0,r):(e.debug("missing public api key"),r)}async function oi(e,t){let r={type:t.type};switch(t.type){case"getCache":{r.data=await e.getCache();break}case"setCache":{await e.setCache(t.data);break}case"connectBuilder":{r.data=await ni(e,t.data.publicApiKey,t.data.privateAuthKey,t.data.kind);break}case"enableDevTools":{r.data=uc(e,t.data.enabled);break}case"getRegistry":{r.data=await e.getRegistry(t.data);break}case"launchEditor":{r.data=await e.launchEditor(t.data);break}case"validateBuilder":{r.data=await ri(e);break}case"loadComponent":{r.data=await e.loadComponent(t.data);break}case"registerComponent":{r.data=await e.registerComponent(t.data),e.serverShouldRestart=!0;break}case"setComponentInfo":{r.data=await e.setRegisteredComponentInfo(t.data),e.serverShouldRestart=!0;break}case"setComponentInput":{r.data=await e.setRegisteredComponentInput(t.data),e.serverShouldRestart=!0;break}case"unregisterComponent":{r.data=await e.unregisterComponent(t.data),e.serverShouldRestart=!0;break}case"getFrameworks":{r.data=e.getFrameworks();break}case"readdir":{dr(e,t.path)?r.data=await e.readdir(t.path,!0):r.errors=[`Invalid file request: ${t.path}`];break}case"readFile":{dr(e,t.path)?r.data=await e.readFile(t.path):r.errors=[`Invalid file request: ${t.path}`];break}case"writeFile":{dr(e,t.path)?await e.writeFile(t.path,t.content):r.errors=[`Invalid file request: ${t.path}`];break}case"ensureFigmaImportPage":{r.data=await e.ensureFigmaImportPage();break}case"transileFile":{r.data=await zo(e,t);break}case"transileModule":{r.data=lr(e,t);break}case"getPastSyncInfo":{r.data=await e.getPastSyncInfo?.(t.data);break}case"resyncSnippet":{r.data=await e.resyncSnippet?.(t.data);break}case"localConfig":{r.data=await It();break}default:{r.errors=[`Unknown request type: ${JSON.stringify(t)}`];let n=t}}return r}function dr(e,t){if(!t||t.includes(".."))return!1;t=t.replace(/\\/g,"/");let r=t.split("/"),n=r[r.length-1];if(n.length>0){let i=n.split(".").pop();if(i&&(i=`.${i}`.toLocaleLowerCase(),i=i.split("?")[0],!sc.includes(i)))return!1}return ac(e,t),!1}function ac(e,t){if(!t)return!1;t=e.normalize(e.resolve(t));let r=e.getAppRootDir();return!(!t.startsWith(r)&&!t.includes("node_modules"))}var sc=[".js",".jsx",".ts",".tsx",".json",".css",".scss",".sass",".less",".html",".htm",".xml",".svg",".png",".jpg",".jpeg",".gif",".ico",".webp",".woff",".woff2",".ttf",".eot",".mp4",".webm",".ogg",".md",".txt",".csv",".pdf"];function uc(e,t){return!t&&e.serverShouldRestart&&setTimeout(()=>{console.log(`
|
|
24
24
|
Restarting server after Builder Devtools update...
|
|
25
|
-
`),e.restartAppServer()},10),e.enableAppWatch(!t),{enabled:t,platform:e.platform()}}async function Uo(e){return qo(e,`"use strict";(()=>{var Hr=Object.defineProperty;var qr=(t,e)=>{for(var n in e)Hr(t,n,{get:e[n],enumerable:!0})};var W=(t,e)=>{It(t);let n=t.querySelector("aside");n.dataset.view=e,n.classList.remove("section-ready"),setTimeout(()=>{n.classList.add("section-ready")},200)},pn=t=>{Array.from(t.querySelectorAll(".back-button")).forEach(e=>{e.addEventListener("click",n=>{It(t),n.preventDefault(),n.stopPropagation();let r=n.target;W(t,r?.dataset.back||"nav-home")})})},Tt=(t,e)=>{It(t);let n=t.querySelector("aside"),r=document.createElement("div");r.className="ui-toast",r.innerHTML=e,n.appendChild(r),setTimeout(()=>{r.classList.add("ui-toast-show"),setTimeout(()=>{r.classList.remove("ui-toast-show"),setTimeout(()=>{r.remove()},500)},4e3)},30)},It=t=>{let e=t.querySelector("aside");Array.from(e.querySelectorAll(".ui-toast")).forEach(r=>{r.classList.remove("ui-toast-show")})},ke=()=>{let t=fn();return localStorage.getItem(t)!=="true"},bt=t=>{let e=fn();t?localStorage.removeItem(e):localStorage.setItem(e,"true")},fn=()=>jr("disableEdit"),jr=t=>\`builder.__LOCAL_APP_ID__.\${t}\`,mn=()=>{let e=document.body.querySelector("[builder-content-id]")?.getAttribute("builder-content-id");return Ee(e)},Ee=(t,e)=>{let n="/content";t&&(n+="/"+t+"/edit");let r=new URL(n,"https://builder.io");t&&e&&r.searchParams.set("selectedBlock",e);let i=new URL(location.pathname,location.href);return r.searchParams.set("overridePreviewUrl",i.href),r.href},Oe="__DEV_TOOLS_URL__",A={components:[],registryPath:"",registryDisplayPath:"",frameworks:[],dependencies:[],publicApiKey:void 0,devToolsVersion:""},J=t=>{A.components=t.components,A.registryPath=t.registryPath,A.registryDisplayPath=t.registryDisplayPath,A.dependencies=t.dependencies,A.publicApiKey=t.publicApiKey};function vn(t){let e=null,n=document.querySelector("builder-dev-tools-menu"),r=()=>{t.hide()},i=u=>{let c=u.target;if(!c){r();return}if(c.closest("builder-dev-tools-edit"))return;let a=c.closest("[builder-content-id]"),l=c.closest("[builder-id]");if(!a||!l){t.hide();return}let d=t.show(a,l);!d||d===e||(n.highlightOpener(),e=d)};document.addEventListener("pointerover",i,{passive:!0}),document.addEventListener("pointerleave",r,{passive:!0}),document.addEventListener("pointercancel",r,{passive:!0}),document.addEventListener("visibilitychange",r,{passive:!0}),window.addEventListener("popstate",r,{passive:!0});let o=history.pushState;history.pushState=function(...u){t.hide(),o.apply(this,u)};let s=history.replaceState;history.replaceState=function(...u){t.hide(),s.apply(this,u)}}var Ue=class extends HTMLElement{openInBuilder=null;block=null;constructor(){super()}connectedCallback(){this.setAttribute("aria-hidden","true");let e=this.attachShadow({mode:"open"});e.innerHTML='<style>*,*:before,*:after{box-sizing:border-box}:host{--background-color: rgba(40, 40, 40, 1);--primary-color: rgba(72, 161, 255, 1);--primary-color-subdued: rgb(72, 161, 255, .6);--primary-color-highlight: rgb(126, 188, 255);--primary-contrast-color: white;--edit-color: #1d74e2;--edit-color-highlight: #1c6bd1;--edit-color-alpha: rgb(72, 161, 255, .15);--error-color: #ff2b55;--text-color: white;--text-color-highlight: white;--border-color: #454545;--button-background-color-hover: rgba(255, 255, 255, .1);--menu-width: 320px;--transition-time: .15s;--font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-family:var(--font-family);line-height:1.6}button{cursor:pointer;color:var(--text-color);-webkit-tap-highlight-color:transparent}input,select,button{font-family:var(--font-family)}:host{display:none;position:absolute;top:0;left:0;width:100%;height:100%;z-index:2147483646;user-select:none;pointer-events:none;color:var(--text-color)}#content-highlight,#block{position:absolute}#content-highlight{border:3px solid var(--primary-color);background-color:var(--primary-color-alpha)}a{position:absolute;top:-33px;left:0;display:block;padding:5px 10px 8px;pointer-events:auto;z-index:100;text-decoration:none}a:hover{text-decoration:none}a span{display:block;padding:3px 6px;font-size:10px;font-weight:300;border-radius:3px;text-align:center;text-decoration:none;pointer-events:none;background-color:var(--edit-color);color:var(--text-color);white-space:nowrap}a:hover span{background-color:var(--edit-color-highlight)}a:hover~.outline{border-color:var(--edit-color-highlight)}#open-in-editor{display:none}.outline{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid var(--edit-color);background-color:var(--edit-color-alpha)}</style><div id="block"> <a id="open-in-builder" target="builder"><span>Open In Builder</span></a> <a id="open-in-editor" href="#open-in-editor"><span>Open In Editor</span></a> <div class="outline"></div> </div>',this.openInBuilder=e.getElementById("open-in-builder"),this.block=e.getElementById("block"),vn(this)}show(e,n){if(!ke())return this.hide(),null;let r=e.getAttribute("builder-content-id"),i=n.getAttribute("builder-id");if(!r||!i)return this.hide(),null;let o=this.block,s=this.openInBuilder,u=n.getBoundingClientRect();o.style.top=u.top+window.scrollY-1+"px",o.style.left=u.left+window.scrollX+"px",o.style.width=u.width+"px",o.style.height=u.height+1+"px";let c=s.getBoundingClientRect();if(c.width>u.width){let a=c.width-u.width;s.style.left=a/2*-1+"px"}else s.style.left="";return s.href=Ee(r,i),this.style.display="block",i}hide(){this.style.display=""}};var gn="preview-url";var hn="_b-uid";var yn="/~builder-connect";var _n="/~builder-dev-tools";var En="https://cdn.builder.io/api/v1/proxy-api?url=https://api2.amplitude.com/2/httpapi";var Tn=()=>$({type:"validateBuilder"}),ve=t=>$({type:"launchEditor",data:t}),In=t=>$({type:"getRegistry",data:t}),bn=t=>$({type:"loadComponent",data:t}),Sn=t=>$({type:"registerComponent",data:t}),xn=t=>$({type:"setComponentInfo",data:t}),Me=t=>$({type:"setComponentInput",data:t}),Ln=t=>$({type:"unregisterComponent",data:t}),wn=t=>$({type:"enableDevTools",data:{enabled:t}}),Cn=()=>$({type:"localConfig"}),$=async t=>{let e=new URL(_n,Oe),n;try{n=await fetch(e,{method:"POST",body:JSON.stringify(t)})}catch(i){throw console.error(\`Devtools Fetch Error, \${e.href}\`,i),new Error("Builder Devtools Fetch Error")}if((n.headers.get("content-type")||"").includes("application/json")){let i=await n.json();if(n.ok)return i.data;if(Array.isArray(i.errors)&&i.errors.length>0)throw i.errors.forEach(o=>console.error(o)),new Error(\`Builder Devtools Fetch Error: \${i.errors[0]}\`)}throw new Error(\`Builder Devtools Fetch Error: \${n.status}, \${await n.text()}\`)};var Pn=[{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"}],Ne=["color","date","email","file","longText","richText","string"],Be=["number"],Fe=["boolean"],Ve=["list"],He=["object"];function qe(t){return Ne.includes(t)?"string":Be.includes(t)?"number":Fe.includes(t)?"boolean":Ve.includes(t)?"array":He.includes(t)?"object":"string"}var $i=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(t=>t.toLowerCase()));var St=function(t,e){return St=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(n[i]=r[i])},St(t,e)};function V(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");St(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var v=function(){return v=Object.assign||function(e){for(var n,r=1,i=arguments.length;r<i;r++){n=arguments[r];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},v.apply(this,arguments)};function Te(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n}function p(t,e,n,r){function i(o){return o instanceof n?o:new n(function(s){s(o)})}return new(n||(n=Promise))(function(o,s){function u(l){try{a(r.next(l))}catch(d){s(d)}}function c(l){try{a(r.throw(l))}catch(d){s(d)}}function a(l){l.done?o(l.value):i(l.value).then(u,c)}a((r=r.apply(t,e||[])).next())})}function f(t,e){var n={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},r,i,o,s;return s={next:u(0),throw:u(1),return:u(2)},typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function u(a){return function(l){return c([a,l])}}function c(a){if(r)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(n=0)),n;)try{if(r=1,i&&(o=a[0]&2?i.return:a[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,a[1])).done)return o;switch(i=0,o&&(a=[a[0]&2,o.value]),a[0]){case 0:case 1:o=a;break;case 4:return n.label++,{value:a[1],done:!1};case 5:n.label++,i=a[1],a=[0];continue;case 7:a=n.ops.pop(),n.trys.pop();continue;default:if(o=n.trys,!(o=o.length>0&&o[o.length-1])&&(a[0]===6||a[0]===2)){n=0;continue}if(a[0]===3&&(!o||a[1]>o[0]&&a[1]<o[3])){n.label=a[1];break}if(a[0]===6&&n.label<o[1]){n.label=o[1],o=a;break}if(o&&n.label<o[2]){n.label=o[2],n.ops.push(a);break}o[2]&&n.ops.pop(),n.trys.pop();continue}a=e.call(t,n)}catch(l){a=[6,l],i=0}finally{r=o=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}}function Y(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function L(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,o=[],s;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)o.push(i.value)}catch(u){s={error:u}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(s)throw s.error}}return o}function q(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,o;r<i;r++)(o||!(r in e))&&(o||(o=Array.prototype.slice.call(e,0,r)),o[r]=e[r]);return t.concat(o||Array.prototype.slice.call(e))}var Rn="Event tracked successfully",Dn="Unexpected error occurred",An="Event rejected due to exceeded retry count",kn="Event skipped due to optOut config",On="Event rejected due to missing API key",Un="Invalid API key",Mn="Client not initialized";var Ge={};qr(Ge,{IdentifyOperation:()=>w,LogLevel:()=>M,OfflineDisabled:()=>Ke,RevenueProperty:()=>Q,ServerZone:()=>je,SpecialEventType:()=>ee,Status:()=>x});var w;(function(t){t.SET="$set",t.SET_ONCE="$setOnce",t.ADD="$add",t.APPEND="$append",t.PREPEND="$prepend",t.REMOVE="$remove",t.PREINSERT="$preInsert",t.POSTINSERT="$postInsert",t.UNSET="$unset",t.CLEAR_ALL="$clearAll"})(w||(w={}));var Q;(function(t){t.REVENUE_PRODUCT_ID="$productId",t.REVENUE_QUANTITY="$quantity",t.REVENUE_PRICE="$price",t.REVENUE_TYPE="$revenueType",t.REVENUE="$revenue"})(Q||(Q={}));var ee;(function(t){t.IDENTIFY="$identify",t.GROUP_IDENTIFY="$groupidentify",t.REVENUE="revenue_amount"})(ee||(ee={}));var M;(function(t){t[t.None=0]="None",t[t.Error=1]="Error",t[t.Warn=2]="Warn",t[t.Verbose=3]="Verbose",t[t.Debug=4]="Debug"})(M||(M={}));var je;(function(t){t.US="US",t.EU="EU"})(je||(je={}));var x;(function(t){t.Unknown="unknown",t.Skipped="skipped",t.Success="success",t.RateLimit="rate_limit",t.PayloadTooLarge="payload_too_large",t.Invalid="invalid",t.Failed="failed",t.Timeout="Timeout",t.SystemError="SystemError"})(x||(x={}));var Ke=null;var te=function(t,e,n){return e===void 0&&(e=0),n===void 0&&(n=x.Unknown),{event:t,code:e,message:n}};var X=function(t){return t?(t^Math.random()*16>>t/4).toString(16):(String(1e7)+String(-1e3)+String(-4e3)+String(-8e3)+String(-1e11)).replace(/[018]/g,X)};var Nn=function(){function t(e){this.client=e,this.queue=[],this.applying=!1,this.plugins=[]}return t.prototype.register=function(e,n){var r,i,o;return p(this,void 0,void 0,function(){return f(this,function(s){switch(s.label){case 0:return e.name=(r=e.name)!==null&&r!==void 0?r:X(),e.type=(i=e.type)!==null&&i!==void 0?i:"enrichment",[4,(o=e.setup)===null||o===void 0?void 0:o.call(e,n,this.client)];case 1:return s.sent(),this.plugins.push(e),[2]}})})},t.prototype.deregister=function(e){var n;return p(this,void 0,void 0,function(){var r,i;return f(this,function(o){switch(o.label){case 0:return r=this.plugins.findIndex(function(s){return s.name===e}),i=this.plugins[r],this.plugins.splice(r,1),[4,(n=i.teardown)===null||n===void 0?void 0:n.call(i)];case 1:return o.sent(),[2]}})})},t.prototype.reset=function(e){this.applying=!1;var n=this.plugins;n.map(function(r){var i;return(i=r.teardown)===null||i===void 0?void 0:i.call(r)}),this.plugins=[],this.client=e},t.prototype.push=function(e){var n=this;return new Promise(function(r){n.queue.push([e,r]),n.scheduleApply(0)})},t.prototype.scheduleApply=function(e){var n=this;this.applying||(this.applying=!0,setTimeout(function(){n.apply(n.queue.shift()).then(function(){n.applying=!1,n.queue.length>0&&n.scheduleApply(0)})},e))},t.prototype.apply=function(e){return p(this,void 0,void 0,function(){var n,r,i,o,s,u,c,y,g,a,l,d,m,y,g,T,h,_,U,I,k,F;return f(this,function(b){switch(b.label){case 0:if(!e)return[2];n=L(e,1),r=n[0],i=L(e,2),o=i[1],s=this.plugins.filter(function(S){return S.type==="before"}),b.label=1;case 1:b.trys.push([1,6,7,8]),u=Y(s),c=u.next(),b.label=2;case 2:return c.done?[3,5]:(y=c.value,y.execute?[4,y.execute(v({},r))]:[3,4]);case 3:if(g=b.sent(),g===null)return o({event:r,code:0,message:""}),[2];r=g,b.label=4;case 4:return c=u.next(),[3,2];case 5:return[3,8];case 6:return a=b.sent(),U={error:a},[3,8];case 7:try{c&&!c.done&&(I=u.return)&&I.call(u)}finally{if(U)throw U.error}return[7];case 8:l=this.plugins.filter(function(S){return S.type==="enrichment"||S.type===void 0}),b.label=9;case 9:b.trys.push([9,14,15,16]),d=Y(l),m=d.next(),b.label=10;case 10:return m.done?[3,13]:(y=m.value,y.execute?[4,y.execute(v({},r))]:[3,12]);case 11:if(g=b.sent(),g===null)return o({event:r,code:0,message:""}),[2];r=g,b.label=12;case 12:return m=d.next(),[3,10];case 13:return[3,16];case 14:return T=b.sent(),k={error:T},[3,16];case 15:try{m&&!m.done&&(F=d.return)&&F.call(d)}finally{if(k)throw k.error}return[7];case 16:return h=this.plugins.filter(function(S){return S.type==="destination"}),_=h.map(function(S){var O=v({},r);return S.execute(O).catch(function(B){return te(O,0,String(B))})}),Promise.all(_).then(function(S){var O=L(S,1),B=O[0],Z=B||te(r,100,"Event not tracked, no destination plugins on the instance");o(Z)}),[2]}})})},t.prototype.flush=function(){return p(this,void 0,void 0,function(){var e,n,r,i=this;return f(this,function(o){switch(o.label){case 0:return e=this.queue,this.queue=[],[4,Promise.all(e.map(function(s){return i.apply(s)}))];case 1:return o.sent(),n=this.plugins.filter(function(s){return s.type==="destination"}),r=n.map(function(s){return s.flush&&s.flush()}),[4,Promise.all(r)];case 2:return o.sent(),[2]}})})},t}();var xt="-",de="AMP",Lt="".concat(de,"_unsent"),wt="https://api2.amplitude.com/2/httpapi",Bn="https://api.eu.amplitude.com/2/httpapi",Fn="https://api2.amplitude.com/batch",Vn="https://api.eu.amplitude.com/batch";var Kr=1e3,We=function(t){if(Object.keys(t).length>Kr)return!1;for(var e in t){var n=t[e];if(!Ct(e,n))return!1}return!0},Ct=function(t,e){var n,r;if(typeof t!="string")return!1;if(Array.isArray(e)){var i=!0;try{for(var o=Y(e),s=o.next();!s.done;s=o.next()){var u=s.value;if(Array.isArray(u))return!1;if(typeof u=="object")i=i&&We(u);else if(!["number","string"].includes(typeof u))return!1;if(!i)return!1}}catch(c){n={error:c}}finally{try{s&&!s.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}}else{if(e==null)return!1;if(typeof e=="object")return We(e);if(!["number","string","boolean"].includes(typeof e))return!1}return!0};var G=function(){function t(){this._propertySet=new Set,this._properties={}}return t.prototype.getUserProperties=function(){return v({},this._properties)},t.prototype.set=function(e,n){return this._safeSet(w.SET,e,n),this},t.prototype.setOnce=function(e,n){return this._safeSet(w.SET_ONCE,e,n),this},t.prototype.append=function(e,n){return this._safeSet(w.APPEND,e,n),this},t.prototype.prepend=function(e,n){return this._safeSet(w.PREPEND,e,n),this},t.prototype.postInsert=function(e,n){return this._safeSet(w.POSTINSERT,e,n),this},t.prototype.preInsert=function(e,n){return this._safeSet(w.PREINSERT,e,n),this},t.prototype.remove=function(e,n){return this._safeSet(w.REMOVE,e,n),this},t.prototype.add=function(e,n){return this._safeSet(w.ADD,e,n),this},t.prototype.unset=function(e){return this._safeSet(w.UNSET,e,xt),this},t.prototype.clearAll=function(){return this._properties={},this._properties[w.CLEAR_ALL]=xt,this},t.prototype._safeSet=function(e,n,r){if(this._validate(e,n,r)){var i=this._properties[e];return i===void 0&&(i={},this._properties[e]=i),i[n]=r,this._propertySet.add(n),!0}return!1},t.prototype._validate=function(e,n,r){return this._properties[w.CLEAR_ALL]!==void 0||this._propertySet.has(n)?!1:e===w.ADD?typeof r=="number":e!==w.UNSET&&e!==w.REMOVE?Ct(n,r):!0},t}();var Hn=function(t,e,n){var r=typeof t=="string"?{event_type:t}:t;return v(v(v({},r),n),e&&{event_properties:e})},Ie=function(t,e){var n=v(v({},e),{event_type:ee.IDENTIFY,user_properties:t.getUserProperties()});return n},qn=function(t,e,n,r){var i,o=v(v({},r),{event_type:ee.GROUP_IDENTIFY,group_properties:n.getUserProperties(),groups:(i={},i[t]=e,i)});return o},jn=function(t,e,n){var r,i=new G;i.set(t,e);var o=v(v({},n),{event_type:ee.IDENTIFY,user_properties:i.getUserProperties(),groups:(r={},r[t]=e,r)});return o},Kn=function(t,e){return v(v({},e),{event_type:ee.REVENUE,event_properties:t.getEventProperties()})};var H=function(t){return{promise:t||Promise.resolve()}};var Pt=function(){function t(e){e===void 0&&(e="$default"),this.initializing=!1,this.q=[],this.dispatchQ=[],this.logEvent=this.track.bind(this),this.timeline=new Nn(this),this.name=e}return t.prototype._init=function(e){return p(this,void 0,void 0,function(){return f(this,function(n){switch(n.label){case 0:return this.config=e,this.timeline.reset(this),[4,this.runQueuedFunctions("q")];case 1:return n.sent(),[2]}})})},t.prototype.runQueuedFunctions=function(e){return p(this,void 0,void 0,function(){var n,r,i,o,s,u,c;return f(this,function(a){switch(a.label){case 0:n=this[e],this[e]=[],a.label=1;case 1:a.trys.push([1,6,7,8]),r=Y(n),i=r.next(),a.label=2;case 2:return i.done?[3,5]:(o=i.value,[4,o()]);case 3:a.sent(),a.label=4;case 4:return i=r.next(),[3,2];case 5:return[3,8];case 6:return s=a.sent(),u={error:s},[3,8];case 7:try{i&&!i.done&&(c=r.return)&&c.call(r)}finally{if(u)throw u.error}return[7];case 8:return[2]}})})},t.prototype.track=function(e,n,r){var i=Hn(e,n,r);return H(this.dispatch(i))},t.prototype.identify=function(e,n){var r=Ie(e,n);return H(this.dispatch(r))},t.prototype.groupIdentify=function(e,n,r,i){var o=qn(e,n,r,i);return H(this.dispatch(o))},t.prototype.setGroup=function(e,n,r){var i=jn(e,n,r);return H(this.dispatch(i))},t.prototype.revenue=function(e,n){var r=Kn(e,n);return H(this.dispatch(r))},t.prototype.add=function(e){return this.config?H(this.timeline.register(e,this.config)):(this.q.push(this.add.bind(this,e)),H())},t.prototype.remove=function(e){return this.config?H(this.timeline.deregister(e)):(this.q.push(this.remove.bind(this,e)),H())},t.prototype.dispatchWithCallback=function(e,n){if(!this.config)return n(te(e,0,Mn));this.process(e).then(n)},t.prototype.dispatch=function(e){return p(this,void 0,void 0,function(){var n=this;return f(this,function(r){return this.config?[2,this.process(e)]:[2,new Promise(function(i){n.dispatchQ.push(n.dispatchWithCallback.bind(n,e,i))})]})})},t.prototype.process=function(e){return p(this,void 0,void 0,function(){var i,n,r,i;return f(this,function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),this.config.optOut?[2,te(e,0,kn)]:[4,this.timeline.push(e)];case 1:return i=o.sent(),i.code===200?this.config.loggerProvider.log(i.message):i.code===100?this.config.loggerProvider.warn(i.message):this.config.loggerProvider.error(i.message),[2,i];case 2:return n=o.sent(),r=String(n),this.config.loggerProvider.error(r),i=te(e,0,r),[2,i];case 3:return[2]}})})},t.prototype.setOptOut=function(e){if(!this.config){this.q.push(this.setOptOut.bind(this,!!e));return}this.config.optOut=!!e},t.prototype.flush=function(){return H(this.timeline.flush())},t}();var $e=function(){function t(){this.productId="",this.quantity=1,this.price=0}return t.prototype.setProductId=function(e){return this.productId=e,this},t.prototype.setQuantity=function(e){return e>0&&(this.quantity=e),this},t.prototype.setPrice=function(e){return this.price=e,this},t.prototype.setRevenueType=function(e){return this.revenueType=e,this},t.prototype.setRevenue=function(e){return this.revenue=e,this},t.prototype.setEventProperties=function(e){return We(e)&&(this.properties=e),this},t.prototype.getEventProperties=function(){var e=this.properties?v({},this.properties):{};return e[Q.REVENUE_PRODUCT_ID]=this.productId,e[Q.REVENUE_QUANTITY]=this.quantity,e[Q.REVENUE_PRICE]=this.price,e[Q.REVENUE_TYPE]=this.revenueType,e[Q.REVENUE]=this.revenue,e},t}();var Gn=function(t,e){var n=Math.max(e,1);return t.reduce(function(r,i,o){var s=Math.floor(o/n);return r[s]||(r[s]=[]),r[s].push(i),r},[])};var Ye="Amplitude Logger ",be=function(){function t(){this.logLevel=M.None}return t.prototype.disable=function(){this.logLevel=M.None},t.prototype.enable=function(e){e===void 0&&(e=M.Warn),this.logLevel=e},t.prototype.log=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];this.logLevel<M.Verbose||console.log("".concat(Ye,"[Log]: ").concat(e.join(" ")))},t.prototype.warn=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];this.logLevel<M.Warn||console.warn("".concat(Ye,"[Warn]: ").concat(e.join(" ")))},t.prototype.error=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];this.logLevel<M.Error||console.error("".concat(Ye,"[Error]: ").concat(e.join(" ")))},t.prototype.debug=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];this.logLevel<M.Debug||console.log("".concat(Ye,"[Debug]: ").concat(e.join(" ")))},t}();var Qe=function(){return{flushMaxRetries:12,flushQueueSize:200,flushIntervalMillis:1e4,instanceName:"$default_instance",logLevel:M.Warn,loggerProvider:new be,offline:!1,optOut:!1,serverUrl:wt,serverZone:"US",useBatch:!1}},Rt=function(){function t(e){var n,r,i,o;this._optOut=!1;var s=Qe();this.apiKey=e.apiKey,this.flushIntervalMillis=(n=e.flushIntervalMillis)!==null&&n!==void 0?n:s.flushIntervalMillis,this.flushMaxRetries=e.flushMaxRetries||s.flushMaxRetries,this.flushQueueSize=e.flushQueueSize||s.flushQueueSize,this.instanceName=e.instanceName||s.instanceName,this.loggerProvider=e.loggerProvider||s.loggerProvider,this.logLevel=(r=e.logLevel)!==null&&r!==void 0?r:s.logLevel,this.minIdLength=e.minIdLength,this.plan=e.plan,this.ingestionMetadata=e.ingestionMetadata,this.offline=e.offline!==void 0?e.offline:s.offline,this.optOut=(i=e.optOut)!==null&&i!==void 0?i:s.optOut,this.serverUrl=e.serverUrl,this.serverZone=e.serverZone||s.serverZone,this.storageProvider=e.storageProvider,this.transportProvider=e.transportProvider,this.useBatch=(o=e.useBatch)!==null&&o!==void 0?o:s.useBatch,this.loggerProvider.enable(this.logLevel);var u=Dt(e.serverUrl,e.serverZone,e.useBatch);this.serverZone=u.serverZone,this.serverUrl=u.serverUrl}return Object.defineProperty(t.prototype,"optOut",{get:function(){return this._optOut},set:function(e){this._optOut=e},enumerable:!1,configurable:!0}),t}();var Gr=function(t,e){return t==="EU"?e?Vn:Bn:e?Fn:wt},Dt=function(t,e,n){if(t===void 0&&(t=""),e===void 0&&(e=Qe().serverZone),n===void 0&&(n=Qe().useBatch),t)return{serverUrl:t,serverZone:void 0};var r=["US","EU"].includes(e)?e:Qe().serverZone;return{serverZone:r,serverUrl:Gr(r,n)}};function Wr(t){return t instanceof Error?t.message:String(t)}function Xe(t){var e="";try{"body"in t&&(e=JSON.stringify(t.body,null,2))}catch{}return e}var At=function(){function t(){this.name="amplitude",this.type="destination",this.retryTimeout=1e3,this.throttleTimeout=3e4,this.storageKey="",this.scheduled=null,this.queue=[]}return t.prototype.setup=function(e){var n;return p(this,void 0,void 0,function(){var r,i=this;return f(this,function(o){switch(o.label){case 0:return this.config=e,this.storageKey="".concat(Lt,"_").concat(this.config.apiKey.substring(0,10)),[4,(n=this.config.storageProvider)===null||n===void 0?void 0:n.get(this.storageKey)];case 1:return r=o.sent(),this.saveEvents(),r&&r.length>0&&Promise.all(r.map(function(s){return i.execute(s)})).catch(),[2,Promise.resolve(void 0)]}})})},t.prototype.execute=function(e){var n=this;return new Promise(function(r){var i={event:e,attempts:0,callback:function(o){return r(o)},timeout:0};n.addToQueue(i)})},t.prototype.addToQueue=function(){for(var e=this,n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];var i=n.filter(function(o){return o.attempts<e.config.flushMaxRetries?(o.attempts+=1,!0):(e.fulfillRequest([o],500,An),!1)});i.forEach(function(o){if(e.queue=e.queue.concat(o),o.timeout===0){e.schedule(e.config.flushIntervalMillis);return}setTimeout(function(){o.timeout=0,e.schedule(0)},o.timeout)}),this.saveEvents()},t.prototype.schedule=function(e){var n=this;this.scheduled||this.config.offline||(this.scheduled=setTimeout(function(){n.flush(!0).then(function(){n.queue.length>0&&n.schedule(e)})},e))},t.prototype.flush=function(e){return e===void 0&&(e=!1),p(this,void 0,void 0,function(){var n,r,i,o=this;return f(this,function(s){switch(s.label){case 0:return this.config.offline?(this.config.loggerProvider.debug("Skipping flush while offline."),[2]):(n=[],r=[],this.queue.forEach(function(u){return u.timeout===0?n.push(u):r.push(u)}),this.queue=r,this.scheduled&&(clearTimeout(this.scheduled),this.scheduled=null),i=Gn(n,this.config.flushQueueSize),[4,Promise.all(i.map(function(u){return o.send(u,e)}))]);case 1:return s.sent(),[2]}})})},t.prototype.send=function(e,n){return n===void 0&&(n=!0),p(this,void 0,void 0,function(){var r,i,o,s,u;return f(this,function(c){switch(c.label){case 0:if(!this.config.apiKey)return[2,this.fulfillRequest(e,400,On)];r={api_key:this.config.apiKey,events:e.map(function(a){var l=a.event,d=l.extra,m=Te(l,["extra"]);return m}),options:{min_id_length:this.config.minIdLength},client_upload_time:new Date().toISOString()},c.label=1;case 1:return c.trys.push([1,3,,4]),i=Dt(this.config.serverUrl,this.config.serverZone,this.config.useBatch).serverUrl,[4,this.config.transportProvider.send(i,r)];case 2:return o=c.sent(),o===null?(this.fulfillRequest(e,0,Dn),[2]):n?(this.handleResponse(o,e),[3,4]):("body"in o?this.fulfillRequest(e,o.statusCode,"".concat(o.status,": ").concat(Xe(o))):this.fulfillRequest(e,o.statusCode,o.status),[2]);case 3:return s=c.sent(),u=Wr(s),this.config.loggerProvider.error(u),this.fulfillRequest(e,0,u),[3,4];case 4:return[2]}})})},t.prototype.handleResponse=function(e,n){var r=e.status;switch(r){case x.Success:{this.handleSuccessResponse(e,n);break}case x.Invalid:{this.handleInvalidResponse(e,n);break}case x.PayloadTooLarge:{this.handlePayloadTooLargeResponse(e,n);break}case x.RateLimit:{this.handleRateLimitResponse(e,n);break}default:{this.config.loggerProvider.warn(\`{code: 0, error: "Status '\`.concat(r,"' provided for ").concat(n.length,' events"}')),this.handleOtherResponse(n);break}}},t.prototype.handleSuccessResponse=function(e,n){this.fulfillRequest(n,e.statusCode,Rn)},t.prototype.handleInvalidResponse=function(e,n){var r=this;if(e.body.missingField||e.body.error.startsWith(Un)){this.fulfillRequest(n,e.statusCode,e.body.error);return}var i=q(q(q(q([],L(Object.values(e.body.eventsWithInvalidFields)),!1),L(Object.values(e.body.eventsWithMissingFields)),!1),L(Object.values(e.body.eventsWithInvalidIdLengths)),!1),L(e.body.silencedEvents),!1).flat(),o=new Set(i),s=n.filter(function(u,c){if(o.has(c)){r.fulfillRequest([u],e.statusCode,e.body.error);return}return!0});s.length>0&&this.config.loggerProvider.warn(Xe(e)),this.addToQueue.apply(this,q([],L(s),!1))},t.prototype.handlePayloadTooLargeResponse=function(e,n){if(n.length===1){this.fulfillRequest(n,e.statusCode,e.body.error);return}this.config.loggerProvider.warn(Xe(e)),this.config.flushQueueSize/=2,this.addToQueue.apply(this,q([],L(n),!1))},t.prototype.handleRateLimitResponse=function(e,n){var r=this,i=Object.keys(e.body.exceededDailyQuotaUsers),o=Object.keys(e.body.exceededDailyQuotaDevices),s=e.body.throttledEvents,u=new Set(i),c=new Set(o),a=new Set(s),l=n.filter(function(d,m){if(d.event.user_id&&u.has(d.event.user_id)||d.event.device_id&&c.has(d.event.device_id)){r.fulfillRequest([d],e.statusCode,e.body.error);return}return a.has(m)&&(d.timeout=r.throttleTimeout),!0});l.length>0&&this.config.loggerProvider.warn(Xe(e)),this.addToQueue.apply(this,q([],L(l),!1))},t.prototype.handleOtherResponse=function(e){var n=this;this.addToQueue.apply(this,q([],L(e.map(function(r){return r.timeout=r.attempts*n.retryTimeout,r})),!1))},t.prototype.fulfillRequest=function(e,n,r){this.saveEvents(),e.forEach(function(i){return i.callback(te(i.event,n,r))})},t.prototype.saveEvents=function(){if(this.config.storageProvider){var e=Array.from(this.queue.map(function(n){return n.event}));this.config.storageProvider.set(this.storageKey,e)}},t}();var $r=function(t){t===void 0&&(t=0);var e=new Error().stack||"";return e.split(\`
|
|
25
|
+
`),e.restartAppServer()},10),e.enableAppWatch(!t),{enabled:t,platform:e.platform()}}async function ii(e){return si(e,`"use strict";(()=>{var Hr=Object.defineProperty;var qr=(t,e)=>{for(var n in e)Hr(t,n,{get:e[n],enumerable:!0})};var W=(t,e)=>{It(t);let n=t.querySelector("aside");n.dataset.view=e,n.classList.remove("section-ready"),setTimeout(()=>{n.classList.add("section-ready")},200)},pn=t=>{Array.from(t.querySelectorAll(".back-button")).forEach(e=>{e.addEventListener("click",n=>{It(t),n.preventDefault(),n.stopPropagation();let r=n.target;W(t,r?.dataset.back||"nav-home")})})},Tt=(t,e)=>{It(t);let n=t.querySelector("aside"),r=document.createElement("div");r.className="ui-toast",r.innerHTML=e,n.appendChild(r),setTimeout(()=>{r.classList.add("ui-toast-show"),setTimeout(()=>{r.classList.remove("ui-toast-show"),setTimeout(()=>{r.remove()},500)},4e3)},30)},It=t=>{let e=t.querySelector("aside");Array.from(e.querySelectorAll(".ui-toast")).forEach(r=>{r.classList.remove("ui-toast-show")})},ke=()=>{let t=fn();return localStorage.getItem(t)!=="true"},bt=t=>{let e=fn();t?localStorage.removeItem(e):localStorage.setItem(e,"true")},fn=()=>jr("disableEdit"),jr=t=>\`builder.__LOCAL_APP_ID__.\${t}\`,mn=()=>{let e=document.body.querySelector("[builder-content-id]")?.getAttribute("builder-content-id");return Ee(e)},Ee=(t,e)=>{let n="/content";t&&(n+="/"+t+"/edit");let r=new URL(n,"https://builder.io");t&&e&&r.searchParams.set("selectedBlock",e);let i=new URL(location.pathname,location.href);return r.searchParams.set("overridePreviewUrl",i.href),r.href},Oe="__DEV_TOOLS_URL__",A={components:[],registryPath:"",registryDisplayPath:"",frameworks:[],dependencies:[],publicApiKey:void 0,devToolsVersion:""},J=t=>{A.components=t.components,A.registryPath=t.registryPath,A.registryDisplayPath=t.registryDisplayPath,A.dependencies=t.dependencies,A.publicApiKey=t.publicApiKey};function vn(t){let e=null,n=document.querySelector("builder-dev-tools-menu"),r=()=>{t.hide()},i=u=>{let c=u.target;if(!c){r();return}if(c.closest("builder-dev-tools-edit"))return;let a=c.closest("[builder-content-id]"),l=c.closest("[builder-id]");if(!a||!l){t.hide();return}let d=t.show(a,l);!d||d===e||(n.highlightOpener(),e=d)};document.addEventListener("pointerover",i,{passive:!0}),document.addEventListener("pointerleave",r,{passive:!0}),document.addEventListener("pointercancel",r,{passive:!0}),document.addEventListener("visibilitychange",r,{passive:!0}),window.addEventListener("popstate",r,{passive:!0});let o=history.pushState;history.pushState=function(...u){t.hide(),o.apply(this,u)};let s=history.replaceState;history.replaceState=function(...u){t.hide(),s.apply(this,u)}}var Ue=class extends HTMLElement{openInBuilder=null;block=null;constructor(){super()}connectedCallback(){this.setAttribute("aria-hidden","true");let e=this.attachShadow({mode:"open"});e.innerHTML='<style>*,*:before,*:after{box-sizing:border-box}:host{--background-color: rgba(40, 40, 40, 1);--primary-color: rgba(72, 161, 255, 1);--primary-color-subdued: rgb(72, 161, 255, .6);--primary-color-highlight: rgb(126, 188, 255);--primary-contrast-color: white;--edit-color: #1d74e2;--edit-color-highlight: #1c6bd1;--edit-color-alpha: rgb(72, 161, 255, .15);--error-color: #ff2b55;--text-color: white;--text-color-highlight: white;--border-color: #454545;--button-background-color-hover: rgba(255, 255, 255, .1);--menu-width: 320px;--transition-time: .15s;--font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-family:var(--font-family);line-height:1.6}button{cursor:pointer;color:var(--text-color);-webkit-tap-highlight-color:transparent}input,select,button{font-family:var(--font-family)}:host{display:none;position:absolute;top:0;left:0;width:100%;height:100%;z-index:2147483646;user-select:none;pointer-events:none;color:var(--text-color)}#content-highlight,#block{position:absolute}#content-highlight{border:3px solid var(--primary-color);background-color:var(--primary-color-alpha)}a{position:absolute;top:-33px;left:0;display:block;padding:5px 10px 8px;pointer-events:auto;z-index:100;text-decoration:none}a:hover{text-decoration:none}a span{display:block;padding:3px 6px;font-size:10px;font-weight:300;border-radius:3px;text-align:center;text-decoration:none;pointer-events:none;background-color:var(--edit-color);color:var(--text-color);white-space:nowrap}a:hover span{background-color:var(--edit-color-highlight)}a:hover~.outline{border-color:var(--edit-color-highlight)}#open-in-editor{display:none}.outline{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid var(--edit-color);background-color:var(--edit-color-alpha)}</style><div id="block"> <a id="open-in-builder" target="builder"><span>Open In Builder</span></a> <a id="open-in-editor" href="#open-in-editor"><span>Open In Editor</span></a> <div class="outline"></div> </div>',this.openInBuilder=e.getElementById("open-in-builder"),this.block=e.getElementById("block"),vn(this)}show(e,n){if(!ke())return this.hide(),null;let r=e.getAttribute("builder-content-id"),i=n.getAttribute("builder-id");if(!r||!i)return this.hide(),null;let o=this.block,s=this.openInBuilder,u=n.getBoundingClientRect();o.style.top=u.top+window.scrollY-1+"px",o.style.left=u.left+window.scrollX+"px",o.style.width=u.width+"px",o.style.height=u.height+1+"px";let c=s.getBoundingClientRect();if(c.width>u.width){let a=c.width-u.width;s.style.left=a/2*-1+"px"}else s.style.left="";return s.href=Ee(r,i),this.style.display="block",i}hide(){this.style.display=""}};var gn="preview-url";var hn="_b-uid";var yn="/~builder-connect";var _n="/~builder-dev-tools";var En="https://cdn.builder.io/api/v1/proxy-api?url=https://api2.amplitude.com/2/httpapi";var Tn=()=>$({type:"validateBuilder"}),ve=t=>$({type:"launchEditor",data:t}),In=t=>$({type:"getRegistry",data:t}),bn=t=>$({type:"loadComponent",data:t}),Sn=t=>$({type:"registerComponent",data:t}),xn=t=>$({type:"setComponentInfo",data:t}),Me=t=>$({type:"setComponentInput",data:t}),Ln=t=>$({type:"unregisterComponent",data:t}),wn=t=>$({type:"enableDevTools",data:{enabled:t}}),Cn=()=>$({type:"localConfig"}),$=async t=>{let e=new URL(_n,Oe),n;try{n=await fetch(e,{method:"POST",body:JSON.stringify(t)})}catch(i){throw console.error(\`Devtools Fetch Error, \${e.href}\`,i),new Error("Builder Devtools Fetch Error")}if((n.headers.get("content-type")||"").includes("application/json")){let i=await n.json();if(n.ok)return i.data;if(Array.isArray(i.errors)&&i.errors.length>0)throw i.errors.forEach(o=>console.error(o)),new Error(\`Builder Devtools Fetch Error: \${i.errors[0]}\`)}throw new Error(\`Builder Devtools Fetch Error: \${n.status}, \${await n.text()}\`)};var Pn=[{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"}],Ne=["color","date","email","file","longText","richText","string"],Be=["number"],Fe=["boolean"],Ve=["list"],He=["object"];function qe(t){return Ne.includes(t)?"string":Be.includes(t)?"number":Fe.includes(t)?"boolean":Ve.includes(t)?"array":He.includes(t)?"object":"string"}var $i=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(t=>t.toLowerCase()));var St=function(t,e){return St=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(n[i]=r[i])},St(t,e)};function V(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");St(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var v=function(){return v=Object.assign||function(e){for(var n,r=1,i=arguments.length;r<i;r++){n=arguments[r];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},v.apply(this,arguments)};function Te(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n}function p(t,e,n,r){function i(o){return o instanceof n?o:new n(function(s){s(o)})}return new(n||(n=Promise))(function(o,s){function u(l){try{a(r.next(l))}catch(d){s(d)}}function c(l){try{a(r.throw(l))}catch(d){s(d)}}function a(l){l.done?o(l.value):i(l.value).then(u,c)}a((r=r.apply(t,e||[])).next())})}function f(t,e){var n={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},r,i,o,s;return s={next:u(0),throw:u(1),return:u(2)},typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function u(a){return function(l){return c([a,l])}}function c(a){if(r)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(n=0)),n;)try{if(r=1,i&&(o=a[0]&2?i.return:a[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,a[1])).done)return o;switch(i=0,o&&(a=[a[0]&2,o.value]),a[0]){case 0:case 1:o=a;break;case 4:return n.label++,{value:a[1],done:!1};case 5:n.label++,i=a[1],a=[0];continue;case 7:a=n.ops.pop(),n.trys.pop();continue;default:if(o=n.trys,!(o=o.length>0&&o[o.length-1])&&(a[0]===6||a[0]===2)){n=0;continue}if(a[0]===3&&(!o||a[1]>o[0]&&a[1]<o[3])){n.label=a[1];break}if(a[0]===6&&n.label<o[1]){n.label=o[1],o=a;break}if(o&&n.label<o[2]){n.label=o[2],n.ops.push(a);break}o[2]&&n.ops.pop(),n.trys.pop();continue}a=e.call(t,n)}catch(l){a=[6,l],i=0}finally{r=o=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}}function Y(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function L(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,o=[],s;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)o.push(i.value)}catch(u){s={error:u}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(s)throw s.error}}return o}function q(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,o;r<i;r++)(o||!(r in e))&&(o||(o=Array.prototype.slice.call(e,0,r)),o[r]=e[r]);return t.concat(o||Array.prototype.slice.call(e))}var Rn="Event tracked successfully",Dn="Unexpected error occurred",An="Event rejected due to exceeded retry count",kn="Event skipped due to optOut config",On="Event rejected due to missing API key",Un="Invalid API key",Mn="Client not initialized";var Ge={};qr(Ge,{IdentifyOperation:()=>w,LogLevel:()=>M,OfflineDisabled:()=>Ke,RevenueProperty:()=>Q,ServerZone:()=>je,SpecialEventType:()=>ee,Status:()=>x});var w;(function(t){t.SET="$set",t.SET_ONCE="$setOnce",t.ADD="$add",t.APPEND="$append",t.PREPEND="$prepend",t.REMOVE="$remove",t.PREINSERT="$preInsert",t.POSTINSERT="$postInsert",t.UNSET="$unset",t.CLEAR_ALL="$clearAll"})(w||(w={}));var Q;(function(t){t.REVENUE_PRODUCT_ID="$productId",t.REVENUE_QUANTITY="$quantity",t.REVENUE_PRICE="$price",t.REVENUE_TYPE="$revenueType",t.REVENUE="$revenue"})(Q||(Q={}));var ee;(function(t){t.IDENTIFY="$identify",t.GROUP_IDENTIFY="$groupidentify",t.REVENUE="revenue_amount"})(ee||(ee={}));var M;(function(t){t[t.None=0]="None",t[t.Error=1]="Error",t[t.Warn=2]="Warn",t[t.Verbose=3]="Verbose",t[t.Debug=4]="Debug"})(M||(M={}));var je;(function(t){t.US="US",t.EU="EU"})(je||(je={}));var x;(function(t){t.Unknown="unknown",t.Skipped="skipped",t.Success="success",t.RateLimit="rate_limit",t.PayloadTooLarge="payload_too_large",t.Invalid="invalid",t.Failed="failed",t.Timeout="Timeout",t.SystemError="SystemError"})(x||(x={}));var Ke=null;var te=function(t,e,n){return e===void 0&&(e=0),n===void 0&&(n=x.Unknown),{event:t,code:e,message:n}};var X=function(t){return t?(t^Math.random()*16>>t/4).toString(16):(String(1e7)+String(-1e3)+String(-4e3)+String(-8e3)+String(-1e11)).replace(/[018]/g,X)};var Nn=function(){function t(e){this.client=e,this.queue=[],this.applying=!1,this.plugins=[]}return t.prototype.register=function(e,n){var r,i,o;return p(this,void 0,void 0,function(){return f(this,function(s){switch(s.label){case 0:return e.name=(r=e.name)!==null&&r!==void 0?r:X(),e.type=(i=e.type)!==null&&i!==void 0?i:"enrichment",[4,(o=e.setup)===null||o===void 0?void 0:o.call(e,n,this.client)];case 1:return s.sent(),this.plugins.push(e),[2]}})})},t.prototype.deregister=function(e){var n;return p(this,void 0,void 0,function(){var r,i;return f(this,function(o){switch(o.label){case 0:return r=this.plugins.findIndex(function(s){return s.name===e}),i=this.plugins[r],this.plugins.splice(r,1),[4,(n=i.teardown)===null||n===void 0?void 0:n.call(i)];case 1:return o.sent(),[2]}})})},t.prototype.reset=function(e){this.applying=!1;var n=this.plugins;n.map(function(r){var i;return(i=r.teardown)===null||i===void 0?void 0:i.call(r)}),this.plugins=[],this.client=e},t.prototype.push=function(e){var n=this;return new Promise(function(r){n.queue.push([e,r]),n.scheduleApply(0)})},t.prototype.scheduleApply=function(e){var n=this;this.applying||(this.applying=!0,setTimeout(function(){n.apply(n.queue.shift()).then(function(){n.applying=!1,n.queue.length>0&&n.scheduleApply(0)})},e))},t.prototype.apply=function(e){return p(this,void 0,void 0,function(){var n,r,i,o,s,u,c,y,g,a,l,d,m,y,g,T,h,_,U,I,k,F;return f(this,function(b){switch(b.label){case 0:if(!e)return[2];n=L(e,1),r=n[0],i=L(e,2),o=i[1],s=this.plugins.filter(function(S){return S.type==="before"}),b.label=1;case 1:b.trys.push([1,6,7,8]),u=Y(s),c=u.next(),b.label=2;case 2:return c.done?[3,5]:(y=c.value,y.execute?[4,y.execute(v({},r))]:[3,4]);case 3:if(g=b.sent(),g===null)return o({event:r,code:0,message:""}),[2];r=g,b.label=4;case 4:return c=u.next(),[3,2];case 5:return[3,8];case 6:return a=b.sent(),U={error:a},[3,8];case 7:try{c&&!c.done&&(I=u.return)&&I.call(u)}finally{if(U)throw U.error}return[7];case 8:l=this.plugins.filter(function(S){return S.type==="enrichment"||S.type===void 0}),b.label=9;case 9:b.trys.push([9,14,15,16]),d=Y(l),m=d.next(),b.label=10;case 10:return m.done?[3,13]:(y=m.value,y.execute?[4,y.execute(v({},r))]:[3,12]);case 11:if(g=b.sent(),g===null)return o({event:r,code:0,message:""}),[2];r=g,b.label=12;case 12:return m=d.next(),[3,10];case 13:return[3,16];case 14:return T=b.sent(),k={error:T},[3,16];case 15:try{m&&!m.done&&(F=d.return)&&F.call(d)}finally{if(k)throw k.error}return[7];case 16:return h=this.plugins.filter(function(S){return S.type==="destination"}),_=h.map(function(S){var O=v({},r);return S.execute(O).catch(function(B){return te(O,0,String(B))})}),Promise.all(_).then(function(S){var O=L(S,1),B=O[0],Z=B||te(r,100,"Event not tracked, no destination plugins on the instance");o(Z)}),[2]}})})},t.prototype.flush=function(){return p(this,void 0,void 0,function(){var e,n,r,i=this;return f(this,function(o){switch(o.label){case 0:return e=this.queue,this.queue=[],[4,Promise.all(e.map(function(s){return i.apply(s)}))];case 1:return o.sent(),n=this.plugins.filter(function(s){return s.type==="destination"}),r=n.map(function(s){return s.flush&&s.flush()}),[4,Promise.all(r)];case 2:return o.sent(),[2]}})})},t}();var xt="-",de="AMP",Lt="".concat(de,"_unsent"),wt="https://api2.amplitude.com/2/httpapi",Bn="https://api.eu.amplitude.com/2/httpapi",Fn="https://api2.amplitude.com/batch",Vn="https://api.eu.amplitude.com/batch";var Kr=1e3,We=function(t){if(Object.keys(t).length>Kr)return!1;for(var e in t){var n=t[e];if(!Ct(e,n))return!1}return!0},Ct=function(t,e){var n,r;if(typeof t!="string")return!1;if(Array.isArray(e)){var i=!0;try{for(var o=Y(e),s=o.next();!s.done;s=o.next()){var u=s.value;if(Array.isArray(u))return!1;if(typeof u=="object")i=i&&We(u);else if(!["number","string"].includes(typeof u))return!1;if(!i)return!1}}catch(c){n={error:c}}finally{try{s&&!s.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}}else{if(e==null)return!1;if(typeof e=="object")return We(e);if(!["number","string","boolean"].includes(typeof e))return!1}return!0};var G=function(){function t(){this._propertySet=new Set,this._properties={}}return t.prototype.getUserProperties=function(){return v({},this._properties)},t.prototype.set=function(e,n){return this._safeSet(w.SET,e,n),this},t.prototype.setOnce=function(e,n){return this._safeSet(w.SET_ONCE,e,n),this},t.prototype.append=function(e,n){return this._safeSet(w.APPEND,e,n),this},t.prototype.prepend=function(e,n){return this._safeSet(w.PREPEND,e,n),this},t.prototype.postInsert=function(e,n){return this._safeSet(w.POSTINSERT,e,n),this},t.prototype.preInsert=function(e,n){return this._safeSet(w.PREINSERT,e,n),this},t.prototype.remove=function(e,n){return this._safeSet(w.REMOVE,e,n),this},t.prototype.add=function(e,n){return this._safeSet(w.ADD,e,n),this},t.prototype.unset=function(e){return this._safeSet(w.UNSET,e,xt),this},t.prototype.clearAll=function(){return this._properties={},this._properties[w.CLEAR_ALL]=xt,this},t.prototype._safeSet=function(e,n,r){if(this._validate(e,n,r)){var i=this._properties[e];return i===void 0&&(i={},this._properties[e]=i),i[n]=r,this._propertySet.add(n),!0}return!1},t.prototype._validate=function(e,n,r){return this._properties[w.CLEAR_ALL]!==void 0||this._propertySet.has(n)?!1:e===w.ADD?typeof r=="number":e!==w.UNSET&&e!==w.REMOVE?Ct(n,r):!0},t}();var Hn=function(t,e,n){var r=typeof t=="string"?{event_type:t}:t;return v(v(v({},r),n),e&&{event_properties:e})},Ie=function(t,e){var n=v(v({},e),{event_type:ee.IDENTIFY,user_properties:t.getUserProperties()});return n},qn=function(t,e,n,r){var i,o=v(v({},r),{event_type:ee.GROUP_IDENTIFY,group_properties:n.getUserProperties(),groups:(i={},i[t]=e,i)});return o},jn=function(t,e,n){var r,i=new G;i.set(t,e);var o=v(v({},n),{event_type:ee.IDENTIFY,user_properties:i.getUserProperties(),groups:(r={},r[t]=e,r)});return o},Kn=function(t,e){return v(v({},e),{event_type:ee.REVENUE,event_properties:t.getEventProperties()})};var H=function(t){return{promise:t||Promise.resolve()}};var Pt=function(){function t(e){e===void 0&&(e="$default"),this.initializing=!1,this.q=[],this.dispatchQ=[],this.logEvent=this.track.bind(this),this.timeline=new Nn(this),this.name=e}return t.prototype._init=function(e){return p(this,void 0,void 0,function(){return f(this,function(n){switch(n.label){case 0:return this.config=e,this.timeline.reset(this),[4,this.runQueuedFunctions("q")];case 1:return n.sent(),[2]}})})},t.prototype.runQueuedFunctions=function(e){return p(this,void 0,void 0,function(){var n,r,i,o,s,u,c;return f(this,function(a){switch(a.label){case 0:n=this[e],this[e]=[],a.label=1;case 1:a.trys.push([1,6,7,8]),r=Y(n),i=r.next(),a.label=2;case 2:return i.done?[3,5]:(o=i.value,[4,o()]);case 3:a.sent(),a.label=4;case 4:return i=r.next(),[3,2];case 5:return[3,8];case 6:return s=a.sent(),u={error:s},[3,8];case 7:try{i&&!i.done&&(c=r.return)&&c.call(r)}finally{if(u)throw u.error}return[7];case 8:return[2]}})})},t.prototype.track=function(e,n,r){var i=Hn(e,n,r);return H(this.dispatch(i))},t.prototype.identify=function(e,n){var r=Ie(e,n);return H(this.dispatch(r))},t.prototype.groupIdentify=function(e,n,r,i){var o=qn(e,n,r,i);return H(this.dispatch(o))},t.prototype.setGroup=function(e,n,r){var i=jn(e,n,r);return H(this.dispatch(i))},t.prototype.revenue=function(e,n){var r=Kn(e,n);return H(this.dispatch(r))},t.prototype.add=function(e){return this.config?H(this.timeline.register(e,this.config)):(this.q.push(this.add.bind(this,e)),H())},t.prototype.remove=function(e){return this.config?H(this.timeline.deregister(e)):(this.q.push(this.remove.bind(this,e)),H())},t.prototype.dispatchWithCallback=function(e,n){if(!this.config)return n(te(e,0,Mn));this.process(e).then(n)},t.prototype.dispatch=function(e){return p(this,void 0,void 0,function(){var n=this;return f(this,function(r){return this.config?[2,this.process(e)]:[2,new Promise(function(i){n.dispatchQ.push(n.dispatchWithCallback.bind(n,e,i))})]})})},t.prototype.process=function(e){return p(this,void 0,void 0,function(){var i,n,r,i;return f(this,function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),this.config.optOut?[2,te(e,0,kn)]:[4,this.timeline.push(e)];case 1:return i=o.sent(),i.code===200?this.config.loggerProvider.log(i.message):i.code===100?this.config.loggerProvider.warn(i.message):this.config.loggerProvider.error(i.message),[2,i];case 2:return n=o.sent(),r=String(n),this.config.loggerProvider.error(r),i=te(e,0,r),[2,i];case 3:return[2]}})})},t.prototype.setOptOut=function(e){if(!this.config){this.q.push(this.setOptOut.bind(this,!!e));return}this.config.optOut=!!e},t.prototype.flush=function(){return H(this.timeline.flush())},t}();var $e=function(){function t(){this.productId="",this.quantity=1,this.price=0}return t.prototype.setProductId=function(e){return this.productId=e,this},t.prototype.setQuantity=function(e){return e>0&&(this.quantity=e),this},t.prototype.setPrice=function(e){return this.price=e,this},t.prototype.setRevenueType=function(e){return this.revenueType=e,this},t.prototype.setRevenue=function(e){return this.revenue=e,this},t.prototype.setEventProperties=function(e){return We(e)&&(this.properties=e),this},t.prototype.getEventProperties=function(){var e=this.properties?v({},this.properties):{};return e[Q.REVENUE_PRODUCT_ID]=this.productId,e[Q.REVENUE_QUANTITY]=this.quantity,e[Q.REVENUE_PRICE]=this.price,e[Q.REVENUE_TYPE]=this.revenueType,e[Q.REVENUE]=this.revenue,e},t}();var Gn=function(t,e){var n=Math.max(e,1);return t.reduce(function(r,i,o){var s=Math.floor(o/n);return r[s]||(r[s]=[]),r[s].push(i),r},[])};var Ye="Amplitude Logger ",be=function(){function t(){this.logLevel=M.None}return t.prototype.disable=function(){this.logLevel=M.None},t.prototype.enable=function(e){e===void 0&&(e=M.Warn),this.logLevel=e},t.prototype.log=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];this.logLevel<M.Verbose||console.log("".concat(Ye,"[Log]: ").concat(e.join(" ")))},t.prototype.warn=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];this.logLevel<M.Warn||console.warn("".concat(Ye,"[Warn]: ").concat(e.join(" ")))},t.prototype.error=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];this.logLevel<M.Error||console.error("".concat(Ye,"[Error]: ").concat(e.join(" ")))},t.prototype.debug=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];this.logLevel<M.Debug||console.log("".concat(Ye,"[Debug]: ").concat(e.join(" ")))},t}();var Qe=function(){return{flushMaxRetries:12,flushQueueSize:200,flushIntervalMillis:1e4,instanceName:"$default_instance",logLevel:M.Warn,loggerProvider:new be,offline:!1,optOut:!1,serverUrl:wt,serverZone:"US",useBatch:!1}},Rt=function(){function t(e){var n,r,i,o;this._optOut=!1;var s=Qe();this.apiKey=e.apiKey,this.flushIntervalMillis=(n=e.flushIntervalMillis)!==null&&n!==void 0?n:s.flushIntervalMillis,this.flushMaxRetries=e.flushMaxRetries||s.flushMaxRetries,this.flushQueueSize=e.flushQueueSize||s.flushQueueSize,this.instanceName=e.instanceName||s.instanceName,this.loggerProvider=e.loggerProvider||s.loggerProvider,this.logLevel=(r=e.logLevel)!==null&&r!==void 0?r:s.logLevel,this.minIdLength=e.minIdLength,this.plan=e.plan,this.ingestionMetadata=e.ingestionMetadata,this.offline=e.offline!==void 0?e.offline:s.offline,this.optOut=(i=e.optOut)!==null&&i!==void 0?i:s.optOut,this.serverUrl=e.serverUrl,this.serverZone=e.serverZone||s.serverZone,this.storageProvider=e.storageProvider,this.transportProvider=e.transportProvider,this.useBatch=(o=e.useBatch)!==null&&o!==void 0?o:s.useBatch,this.loggerProvider.enable(this.logLevel);var u=Dt(e.serverUrl,e.serverZone,e.useBatch);this.serverZone=u.serverZone,this.serverUrl=u.serverUrl}return Object.defineProperty(t.prototype,"optOut",{get:function(){return this._optOut},set:function(e){this._optOut=e},enumerable:!1,configurable:!0}),t}();var Gr=function(t,e){return t==="EU"?e?Vn:Bn:e?Fn:wt},Dt=function(t,e,n){if(t===void 0&&(t=""),e===void 0&&(e=Qe().serverZone),n===void 0&&(n=Qe().useBatch),t)return{serverUrl:t,serverZone:void 0};var r=["US","EU"].includes(e)?e:Qe().serverZone;return{serverZone:r,serverUrl:Gr(r,n)}};function Wr(t){return t instanceof Error?t.message:String(t)}function Xe(t){var e="";try{"body"in t&&(e=JSON.stringify(t.body,null,2))}catch{}return e}var At=function(){function t(){this.name="amplitude",this.type="destination",this.retryTimeout=1e3,this.throttleTimeout=3e4,this.storageKey="",this.scheduled=null,this.queue=[]}return t.prototype.setup=function(e){var n;return p(this,void 0,void 0,function(){var r,i=this;return f(this,function(o){switch(o.label){case 0:return this.config=e,this.storageKey="".concat(Lt,"_").concat(this.config.apiKey.substring(0,10)),[4,(n=this.config.storageProvider)===null||n===void 0?void 0:n.get(this.storageKey)];case 1:return r=o.sent(),this.saveEvents(),r&&r.length>0&&Promise.all(r.map(function(s){return i.execute(s)})).catch(),[2,Promise.resolve(void 0)]}})})},t.prototype.execute=function(e){var n=this;return new Promise(function(r){var i={event:e,attempts:0,callback:function(o){return r(o)},timeout:0};n.addToQueue(i)})},t.prototype.addToQueue=function(){for(var e=this,n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];var i=n.filter(function(o){return o.attempts<e.config.flushMaxRetries?(o.attempts+=1,!0):(e.fulfillRequest([o],500,An),!1)});i.forEach(function(o){if(e.queue=e.queue.concat(o),o.timeout===0){e.schedule(e.config.flushIntervalMillis);return}setTimeout(function(){o.timeout=0,e.schedule(0)},o.timeout)}),this.saveEvents()},t.prototype.schedule=function(e){var n=this;this.scheduled||this.config.offline||(this.scheduled=setTimeout(function(){n.flush(!0).then(function(){n.queue.length>0&&n.schedule(e)})},e))},t.prototype.flush=function(e){return e===void 0&&(e=!1),p(this,void 0,void 0,function(){var n,r,i,o=this;return f(this,function(s){switch(s.label){case 0:return this.config.offline?(this.config.loggerProvider.debug("Skipping flush while offline."),[2]):(n=[],r=[],this.queue.forEach(function(u){return u.timeout===0?n.push(u):r.push(u)}),this.queue=r,this.scheduled&&(clearTimeout(this.scheduled),this.scheduled=null),i=Gn(n,this.config.flushQueueSize),[4,Promise.all(i.map(function(u){return o.send(u,e)}))]);case 1:return s.sent(),[2]}})})},t.prototype.send=function(e,n){return n===void 0&&(n=!0),p(this,void 0,void 0,function(){var r,i,o,s,u;return f(this,function(c){switch(c.label){case 0:if(!this.config.apiKey)return[2,this.fulfillRequest(e,400,On)];r={api_key:this.config.apiKey,events:e.map(function(a){var l=a.event,d=l.extra,m=Te(l,["extra"]);return m}),options:{min_id_length:this.config.minIdLength},client_upload_time:new Date().toISOString()},c.label=1;case 1:return c.trys.push([1,3,,4]),i=Dt(this.config.serverUrl,this.config.serverZone,this.config.useBatch).serverUrl,[4,this.config.transportProvider.send(i,r)];case 2:return o=c.sent(),o===null?(this.fulfillRequest(e,0,Dn),[2]):n?(this.handleResponse(o,e),[3,4]):("body"in o?this.fulfillRequest(e,o.statusCode,"".concat(o.status,": ").concat(Xe(o))):this.fulfillRequest(e,o.statusCode,o.status),[2]);case 3:return s=c.sent(),u=Wr(s),this.config.loggerProvider.error(u),this.fulfillRequest(e,0,u),[3,4];case 4:return[2]}})})},t.prototype.handleResponse=function(e,n){var r=e.status;switch(r){case x.Success:{this.handleSuccessResponse(e,n);break}case x.Invalid:{this.handleInvalidResponse(e,n);break}case x.PayloadTooLarge:{this.handlePayloadTooLargeResponse(e,n);break}case x.RateLimit:{this.handleRateLimitResponse(e,n);break}default:{this.config.loggerProvider.warn(\`{code: 0, error: "Status '\`.concat(r,"' provided for ").concat(n.length,' events"}')),this.handleOtherResponse(n);break}}},t.prototype.handleSuccessResponse=function(e,n){this.fulfillRequest(n,e.statusCode,Rn)},t.prototype.handleInvalidResponse=function(e,n){var r=this;if(e.body.missingField||e.body.error.startsWith(Un)){this.fulfillRequest(n,e.statusCode,e.body.error);return}var i=q(q(q(q([],L(Object.values(e.body.eventsWithInvalidFields)),!1),L(Object.values(e.body.eventsWithMissingFields)),!1),L(Object.values(e.body.eventsWithInvalidIdLengths)),!1),L(e.body.silencedEvents),!1).flat(),o=new Set(i),s=n.filter(function(u,c){if(o.has(c)){r.fulfillRequest([u],e.statusCode,e.body.error);return}return!0});s.length>0&&this.config.loggerProvider.warn(Xe(e)),this.addToQueue.apply(this,q([],L(s),!1))},t.prototype.handlePayloadTooLargeResponse=function(e,n){if(n.length===1){this.fulfillRequest(n,e.statusCode,e.body.error);return}this.config.loggerProvider.warn(Xe(e)),this.config.flushQueueSize/=2,this.addToQueue.apply(this,q([],L(n),!1))},t.prototype.handleRateLimitResponse=function(e,n){var r=this,i=Object.keys(e.body.exceededDailyQuotaUsers),o=Object.keys(e.body.exceededDailyQuotaDevices),s=e.body.throttledEvents,u=new Set(i),c=new Set(o),a=new Set(s),l=n.filter(function(d,m){if(d.event.user_id&&u.has(d.event.user_id)||d.event.device_id&&c.has(d.event.device_id)){r.fulfillRequest([d],e.statusCode,e.body.error);return}return a.has(m)&&(d.timeout=r.throttleTimeout),!0});l.length>0&&this.config.loggerProvider.warn(Xe(e)),this.addToQueue.apply(this,q([],L(l),!1))},t.prototype.handleOtherResponse=function(e){var n=this;this.addToQueue.apply(this,q([],L(e.map(function(r){return r.timeout=r.attempts*n.retryTimeout,r})),!1))},t.prototype.fulfillRequest=function(e,n,r){this.saveEvents(),e.forEach(function(i){return i.callback(te(i.event,n,r))})},t.prototype.saveEvents=function(){if(this.config.storageProvider){var e=Array.from(this.queue.map(function(n){return n.event}));this.config.storageProvider.set(this.storageKey,e)}},t}();var $r=function(t){t===void 0&&(t=0);var e=new Error().stack||"";return e.split(\`
|
|
26
26
|
\`).slice(2+t).map(function(n){return n.trim()})},C=function(t){return function(){var e=v({},t.config),n=e.loggerProvider,r=e.logLevel;return{logger:n,logLevel:r}}},Yr=function(t,e){var n,r;e=e.replace(/\\[(\\w+)\\]/g,".$1"),e=e.replace(/^\\./,"");try{for(var i=Y(e.split(".")),o=i.next();!o.done;o=i.next()){var s=o.value;if(s in t)t=t[s];else return}}catch(u){n={error:u}}finally{try{o&&!o.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return t},P=function(t,e){return function(){var n,r,i={};try{for(var o=Y(e),s=o.next();!s.done;s=o.next()){var u=s.value;i[u]=Yr(t,u)}}catch(c){n={error:c}}finally{try{s&&!s.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return i}},R=function(t,e,n,r,i){return i===void 0&&(i=null),function(){for(var o=[],s=0;s<arguments.length;s++)o[s]=arguments[s];var u=n(),c=u.logger,a=u.logLevel;if(a&&a<M.Debug||!a||!c)return t.apply(i,o);var l={type:"invoke public method",name:e,args:o,stacktrace:$r(1),time:{start:new Date().toISOString()},states:{}};r&&l.states&&(l.states.before=r());var d=t.apply(i,o);return d&&d.promise?d.promise.then(function(){r&&l.states&&(l.states.after=r()),l.time&&(l.time.end=new Date().toISOString()),c.debug(JSON.stringify(l,null,2))}):(r&&l.states&&(l.states.after=r()),l.time&&(l.time.end=new Date().toISOString()),c.debug(JSON.stringify(l,null,2))),d}};var ze=function(){function t(){this.memoryStorage=new Map}return t.prototype.isEnabled=function(){return p(this,void 0,void 0,function(){return f(this,function(e){return[2,!0]})})},t.prototype.get=function(e){return p(this,void 0,void 0,function(){return f(this,function(n){return[2,this.memoryStorage.get(e)]})})},t.prototype.getRaw=function(e){return p(this,void 0,void 0,function(){var n;return f(this,function(r){switch(r.label){case 0:return[4,this.get(e)];case 1:return n=r.sent(),[2,n?JSON.stringify(n):void 0]}})})},t.prototype.set=function(e,n){return p(this,void 0,void 0,function(){return f(this,function(r){return this.memoryStorage.set(e,n),[2]})})},t.prototype.remove=function(e){return p(this,void 0,void 0,function(){return f(this,function(n){return this.memoryStorage.delete(e),[2]})})},t.prototype.reset=function(){return p(this,void 0,void 0,function(){return f(this,function(e){return this.memoryStorage.clear(),[2]})})},t}();var pe=function(){function t(){}return t.prototype.send=function(e,n){return Promise.resolve(null)},t.prototype.buildResponse=function(e){var n,r,i,o,s,u,c,a,l,d,m,y,g,T,h,_,U,I,k,F,b,S;if(typeof e!="object")return null;var O=e.code||0,B=this.buildStatus(O);switch(B){case x.Success:return{status:B,statusCode:O,body:{eventsIngested:(n=e.events_ingested)!==null&&n!==void 0?n:0,payloadSizeBytes:(r=e.payload_size_bytes)!==null&&r!==void 0?r:0,serverUploadTime:(i=e.server_upload_time)!==null&&i!==void 0?i:0}};case x.Invalid:return{status:B,statusCode:O,body:{error:(o=e.error)!==null&&o!==void 0?o:"",missingField:(s=e.missing_field)!==null&&s!==void 0?s:"",eventsWithInvalidFields:(u=e.events_with_invalid_fields)!==null&&u!==void 0?u:{},eventsWithMissingFields:(c=e.events_with_missing_fields)!==null&&c!==void 0?c:{},eventsWithInvalidIdLengths:(a=e.events_with_invalid_id_lengths)!==null&&a!==void 0?a:{},epsThreshold:(l=e.eps_threshold)!==null&&l!==void 0?l:0,exceededDailyQuotaDevices:(d=e.exceeded_daily_quota_devices)!==null&&d!==void 0?d:{},silencedDevices:(m=e.silenced_devices)!==null&&m!==void 0?m:[],silencedEvents:(y=e.silenced_events)!==null&&y!==void 0?y:[],throttledDevices:(g=e.throttled_devices)!==null&&g!==void 0?g:{},throttledEvents:(T=e.throttled_events)!==null&&T!==void 0?T:[]}};case x.PayloadTooLarge:return{status:B,statusCode:O,body:{error:(h=e.error)!==null&&h!==void 0?h:""}};case x.RateLimit:return{status:B,statusCode:O,body:{error:(_=e.error)!==null&&_!==void 0?_:"",epsThreshold:(U=e.eps_threshold)!==null&&U!==void 0?U:0,throttledDevices:(I=e.throttled_devices)!==null&&I!==void 0?I:{},throttledUsers:(k=e.throttled_users)!==null&&k!==void 0?k:{},exceededDailyQuotaDevices:(F=e.exceeded_daily_quota_devices)!==null&&F!==void 0?F:{},exceededDailyQuotaUsers:(b=e.exceeded_daily_quota_users)!==null&&b!==void 0?b:{},throttledEvents:(S=e.throttled_events)!==null&&S!==void 0?S:[]}};case x.Timeout:default:return{status:B,statusCode:O}}},t.prototype.buildStatus=function(e){return e>=200&&e<300?x.Success:e===429?x.RateLimit:e===413?x.PayloadTooLarge:e===408?x.Timeout:e>=400&&e<500?x.Invalid:e>=500?x.Failed:x.Unknown},t}();var N=function(){if(typeof globalThis<"u")return globalThis;if(typeof window<"u")return window;if(typeof self<"u")return self;if(typeof global<"u")return global};var ge=function(){var t,e=N();if(!(!((t=e?.location)===null||t===void 0)&&t.search))return{};var n=e.location.search.substring(1).split("&").filter(Boolean),r=n.reduce(function(i,o){var s=o.split("=",2),u=Wn(s[0]),c=Wn(s[1]);return c&&(i[u]=c),i},{});return r},Wn=function(t){t===void 0&&(t="");try{return decodeURIComponent(t)}catch{return""}};var $n="utm_campaign",Yn="utm_content",Qn="utm_id",Xn="utm_medium",zn="utm_source",Zn="utm_term",kt="dclid",Ot="fbclid",Ut="gbraid",Mt="gclid",Nt="ko_click_id",Bt="li_fat_id",Ft="msclkid",Vt="rtd_cid",Ht="ttclid",qt="twclid",jt="wbraid";var fe={utm_campaign:void 0,utm_content:void 0,utm_id:void 0,utm_medium:void 0,utm_source:void 0,utm_term:void 0,referrer:void 0,referring_domain:void 0,dclid:void 0,gbraid:void 0,gclid:void 0,fbclid:void 0,ko_click_id:void 0,li_fat_id:void 0,msclkid:void 0,rtd_cid:void 0,ttclid:void 0,twclid:void 0,wbraid:void 0};var Se=function(){function t(){}return t.prototype.parse=function(){return p(this,void 0,void 0,function(){return f(this,function(e){return[2,v(v(v(v({},fe),this.getUtmParam()),this.getReferrer()),this.getClickIds())]})})},t.prototype.getUtmParam=function(){var e=ge(),n=e[$n],r=e[Yn],i=e[Qn],o=e[Xn],s=e[zn],u=e[Zn];return{utm_campaign:n,utm_content:r,utm_id:i,utm_medium:o,utm_source:s,utm_term:u}},t.prototype.getReferrer=function(){var e,n,r={referrer:void 0,referring_domain:void 0};try{r.referrer=document.referrer||void 0,r.referring_domain=(n=(e=r.referrer)===null||e===void 0?void 0:e.split("/")[2])!==null&&n!==void 0?n:void 0}catch{}return r},t.prototype.getClickIds=function(){var e,n=ge();return e={},e[kt]=n[kt],e[Ot]=n[Ot],e[Ut]=n[Ut],e[Mt]=n[Mt],e[Nt]=n[Nt],e[Bt]=n[Bt],e[Ft]=n[Ft],e[Vt]=n[Vt],e[Ht]=n[Ht],e[qt]=n[qt],e[jt]=n[jt],e},t}();var Ze=function(t,e,n){return e===void 0&&(e=""),n===void 0&&(n=10),[de,e,t.substring(0,n)].filter(Boolean).join("_")},Kt=function(t){return"".concat(de.toLowerCase(),"_").concat(t.substring(0,6))};var xe=function(t,e){e===void 0&&(e=Date.now());var n=Date.now(),r=n-e;return r>t};var Le=function(){function t(e){this.options=v({},e)}return t.prototype.isEnabled=function(){return p(this,void 0,void 0,function(){var e,n,r,i;return f(this,function(o){switch(o.label){case 0:if(!N())return[2,!1];t.testValue=String(Date.now()),e=new t(this.options),n="AMP_TEST",o.label=1;case 1:return o.trys.push([1,4,5,7]),[4,e.set(n,t.testValue)];case 2:return o.sent(),[4,e.get(n)];case 3:return r=o.sent(),[2,r===t.testValue];case 4:return i=o.sent(),[2,!1];case 5:return[4,e.remove(n)];case 6:return o.sent(),[7];case 7:return[2]}})})},t.prototype.get=function(e){return p(this,void 0,void 0,function(){var n;return f(this,function(r){switch(r.label){case 0:return[4,this.getRaw(e)];case 1:if(n=r.sent(),!n)return[2,void 0];try{try{n=decodeURIComponent(atob(n))}catch{}return[2,JSON.parse(n)]}catch{return[2,void 0]}return[2]}})})},t.prototype.getRaw=function(e){var n,r;return p(this,void 0,void 0,function(){var i,o,s;return f(this,function(u){return i=N(),o=(r=(n=i?.document)===null||n===void 0?void 0:n.cookie.split("; "))!==null&&r!==void 0?r:[],s=o.find(function(c){return c.indexOf(e+"=")===0}),s?[2,s.substring(e.length+1)]:[2,void 0]})})},t.prototype.set=function(e,n){var r;return p(this,void 0,void 0,function(){var i,o,s,u,c,a;return f(this,function(l){try{i=(r=this.options.expirationDays)!==null&&r!==void 0?r:0,o=n!==null?i:-1,s=void 0,o&&(u=new Date,u.setTime(u.getTime()+o*24*60*60*1e3),s=u),c="".concat(e,"=").concat(btoa(encodeURIComponent(JSON.stringify(n)))),s&&(c+="; expires=".concat(s.toUTCString())),c+="; path=/",this.options.domain&&(c+="; domain=".concat(this.options.domain)),this.options.secure&&(c+="; Secure"),this.options.sameSite&&(c+="; SameSite=".concat(this.options.sameSite)),a=N(),a&&(a.document.cookie=c)}catch{}return[2]})})},t.prototype.remove=function(e){return p(this,void 0,void 0,function(){return f(this,function(n){switch(n.label){case 0:return[4,this.set(e,null)];case 1:return n.sent(),[2]}})})},t.prototype.reset=function(){return p(this,void 0,void 0,function(){return f(this,function(e){return[2]})})},t}();var Gt=function(t){V(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.send=function(n,r){return p(this,void 0,void 0,function(){var i,o,s;return f(this,function(u){switch(u.label){case 0:if(typeof fetch>"u")throw new Error("FetchTransport is not supported");return i={headers:{"Content-Type":"application/json",Accept:"*/*"},body:JSON.stringify(r),method:"POST"},[4,fetch(n,i)];case 1:return o=u.sent(),[4,o.json()];case 2:return s=u.sent(),[2,this.buildResponse(s)]}})})},e}(pe);var Qr=function(){function t(){}return t.prototype.getApplicationContext=function(){return{versionName:this.versionName,language:Xr(),platform:"Web",os:void 0,deviceModel:void 0}},t}(),Xr=function(){return typeof navigator<"u"&&(navigator.languages&&navigator.languages[0]||navigator.language)||""},zr=function(){function t(){this.queue=[]}return t.prototype.logEvent=function(e){this.receiver?this.receiver(e):this.queue.length<512&&this.queue.push(e)},t.prototype.setEventReceiver=function(e){this.receiver=e,this.queue.length>0&&(this.queue.forEach(function(n){e(n)}),this.queue=[])},t}(),ie=function(){return ie=Object.assign||function(e){for(var n,r=1,i=arguments.length;r<i;r++){n=arguments[r];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},ie.apply(this,arguments)},Je=function(t,e){var n=["string","number","boolean","undefined"],r=typeof t,i=typeof e;if(r!==i)return!1;for(var o=0,s=n;o<s.length;o++){var u=s[o];if(u===r)return t===e}if(t==null&&e==null)return!0;if(t==null||e==null||t.length!==e.length)return!1;var c=Array.isArray(t),a=Array.isArray(e);if(c!==a)return!1;if(c&&a){for(var l=0;l<t.length;l++)if(!Je(t[l],e[l]))return!1}else{var d=Object.keys(t).sort(),m=Object.keys(e).sort();if(!Je(d,m))return!1;var y=!0;return Object.keys(t).forEach(function(g){Je(t[g],e[g])||(y=!1)}),y}return!0},Zr="$set",Jr="$unset",ei="$clearAll";Object.entries||(Object.entries=function(t){for(var e=Object.keys(t),n=e.length,r=new Array(n);n--;)r[n]=[e[n],t[e[n]]];return r});var ti=function(){function t(){this.identity={userProperties:{}},this.listeners=new Set}return t.prototype.editIdentity=function(){var e=this,n=ie({},this.identity.userProperties),r=ie(ie({},this.identity),{userProperties:n});return{setUserId:function(i){return r.userId=i,this},setDeviceId:function(i){return r.deviceId=i,this},setUserProperties:function(i){return r.userProperties=i,this},setOptOut:function(i){return r.optOut=i,this},updateUserProperties:function(i){for(var o=r.userProperties||{},s=0,u=Object.entries(i);s<u.length;s++){var c=u[s],a=c[0],l=c[1];switch(a){case Zr:for(var d=0,m=Object.entries(l);d<m.length;d++){var y=m[d],g=y[0],T=y[1];o[g]=T}break;case Jr:for(var h=0,_=Object.keys(l);h<_.length;h++){var g=_[h];delete o[g]}break;case ei:o={};break}}return r.userProperties=o,this},commit:function(){return e.setIdentity(r),this}}},t.prototype.getIdentity=function(){return ie({},this.identity)},t.prototype.setIdentity=function(e){var n=ie({},this.identity);this.identity=ie({},e),Je(n,this.identity)||this.listeners.forEach(function(r){r(e)})},t.prototype.addIdentityListener=function(e){this.listeners.add(e)},t.prototype.removeIdentityListener=function(e){this.listeners.delete(e)},t}(),we=typeof globalThis<"u"?globalThis:typeof global<"u"?global:self,Jn=function(){function t(){this.identityStore=new ti,this.eventBridge=new zr,this.applicationContextProvider=new Qr}return t.getInstance=function(e){return we.analyticsConnectorInstances||(we.analyticsConnectorInstances={}),we.analyticsConnectorInstances[e]||(we.analyticsConnectorInstances[e]=new t),we.analyticsConnectorInstances[e]},t}();var oe=function(t){return t===void 0&&(t="$default_instance"),Jn.getInstance(t)},Wt=function(t,e){oe(e).identityStore.editIdentity().setUserId(t).commit()},$t=function(t,e){oe(e).identityStore.editIdentity().setDeviceId(t).commit()};var Yt=function(){function t(){this.name="identity",this.type="before",this.identityStore=oe().identityStore}return t.prototype.execute=function(e){return p(this,void 0,void 0,function(){var n;return f(this,function(r){return n=e.user_properties,n&&this.identityStore.editIdentity().updateUserProperties(n).commit(),[2,e]})})},t.prototype.setup=function(e){return p(this,void 0,void 0,function(){return f(this,function(n){return e.instanceName&&(this.identityStore=oe(e.instanceName).identityStore),[2]})})},t}();var Qt=function(){var t,e,n,r;if(typeof navigator>"u")return"";var i=navigator.userLanguage;return(r=(n=(e=(t=navigator.languages)===null||t===void 0?void 0:t[0])!==null&&e!==void 0?e:navigator.language)!==null&&n!==void 0?n:i)!==null&&r!==void 0?r:""};var Ce=function(t,e){return typeof t=="boolean"?t:t?.[e]!==!1},et=function(t){return Ce(t,"attribution")},Xt=function(t){return Ce(t,"fileDownloads")},zt=function(t){return Ce(t,"formInteractions")},tt=function(t){return Ce(t,"pageViews")},Zt=function(t){return Ce(t,"sessions")},Jt=function(t){var e=function(){return!1},n=void 0,r,i=t.pageCounter,o=tt(t.defaultTracking);return o&&(e=void 0,r=void 0,t.defaultTracking&&typeof t.defaultTracking=="object"&&t.defaultTracking.pageViews&&typeof t.defaultTracking.pageViews=="object"&&("trackOn"in t.defaultTracking.pageViews&&(e=t.defaultTracking.pageViews.trackOn),"trackHistoryChanges"in t.defaultTracking.pageViews&&(n=t.defaultTracking.pageViews.trackHistoryChanges),"eventType"in t.defaultTracking.pageViews&&t.defaultTracking.pageViews.eventType&&(r=t.defaultTracking.pageViews.eventType))),{trackOn:e,trackHistoryChanges:n,eventType:r,pageCounter:i}},en=function(t){return et(t.defaultTracking)&&t.defaultTracking&&typeof t.defaultTracking=="object"&&t.defaultTracking.attribution&&typeof t.defaultTracking.attribution=="object"?v({},t.defaultTracking.attribution):{}};var nt=function(t,e){for(var n=0;n<e.length;n++){var r=e[n],i=r.name,o=r.args,s=r.resolve,u=t&&t[i];if(typeof u=="function"){var c=u.apply(t,o);typeof s=="function"&&s(c?.promise)}}return t},rt=function(t){var e=t;return e&&e._q!==void 0};var er="2.5.2";var ni="Web",ri="$remote",tr=function(){function t(){this.name="@amplitude/plugin-context-browser",this.type="before",this.library="amplitude-ts/".concat(er),typeof navigator<"u"&&(this.userAgent=navigator.userAgent)}return t.prototype.setup=function(e){return this.config=e,Promise.resolve(void 0)},t.prototype.execute=function(e){var n,r;return p(this,void 0,void 0,function(){var i,o,s,u;return f(this,function(c){return i=new Date().getTime(),o=(n=this.config.lastEventId)!==null&&n!==void 0?n:-1,s=(r=e.event_id)!==null&&r!==void 0?r:o+1,this.config.lastEventId=s,e.time||(this.config.lastEventTime=i),u=v(v(v(v(v(v(v(v({user_id:this.config.userId,device_id:this.config.deviceId,session_id:this.config.sessionId,time:i},this.config.appVersion&&{app_version:this.config.appVersion}),this.config.trackingOptions.platform&&{platform:ni}),this.config.trackingOptions.language&&{language:Qt()}),this.config.trackingOptions.ipAddress&&{ip:ri}),{insert_id:X(),partner_id:this.config.partnerId,plan:this.config.plan}),this.config.ingestionMetadata&&{ingestion_metadata:{source_name:this.config.ingestionMetadata.sourceName,source_version:this.config.ingestionMetadata.sourceVersion}}),e),{event_id:s,library:this.library,user_agent:this.userAgent}),[2,u]})})},t}();var it=function(){function t(e){this.storage=e}return t.prototype.isEnabled=function(){return p(this,void 0,void 0,function(){var e,n,r,i,o;return f(this,function(s){switch(s.label){case 0:if(!this.storage)return[2,!1];e=String(Date.now()),n=new t(this.storage),r="AMP_TEST",s.label=1;case 1:return s.trys.push([1,4,5,7]),[4,n.set(r,e)];case 2:return s.sent(),[4,n.get(r)];case 3:return i=s.sent(),[2,i===e];case 4:return o=s.sent(),[2,!1];case 5:return[4,n.remove(r)];case 6:return s.sent(),[7];case 7:return[2]}})})},t.prototype.get=function(e){return p(this,void 0,void 0,function(){var n,r;return f(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),[4,this.getRaw(e)];case 1:return n=i.sent(),n?[2,JSON.parse(n)]:[2,void 0];case 2:return r=i.sent(),console.error("[Amplitude] Error: Could not get value from storage"),[2,void 0];case 3:return[2]}})})},t.prototype.getRaw=function(e){var n;return p(this,void 0,void 0,function(){return f(this,function(r){return[2,((n=this.storage)===null||n===void 0?void 0:n.getItem(e))||void 0]})})},t.prototype.set=function(e,n){var r;return p(this,void 0,void 0,function(){return f(this,function(i){try{(r=this.storage)===null||r===void 0||r.setItem(e,JSON.stringify(n))}catch{}return[2]})})},t.prototype.remove=function(e){var n;return p(this,void 0,void 0,function(){return f(this,function(r){try{(n=this.storage)===null||n===void 0||n.removeItem(e)}catch{}return[2]})})},t.prototype.reset=function(){var e;return p(this,void 0,void 0,function(){return f(this,function(n){try{(e=this.storage)===null||e===void 0||e.clear()}catch{}return[2]})})},t}();var ot=1e3,tn=function(t){V(e,t);function e(n){var r=this,i;return r=t.call(this,(i=N())===null||i===void 0?void 0:i.localStorage)||this,r.loggerProvider=n?.loggerProvider,r}return e.prototype.set=function(n,r){var i;return p(this,void 0,void 0,function(){var o;return f(this,function(s){switch(s.label){case 0:return Array.isArray(r)&&r.length>ot?(o=r.length-ot,[4,t.prototype.set.call(this,n,r.slice(0,ot))]):[3,2];case 1:return s.sent(),(i=this.loggerProvider)===null||i===void 0||i.error("Failed to save ".concat(o," events because the queue length exceeded ").concat(ot,".")),[3,4];case 2:return[4,t.prototype.set.call(this,n,r)];case 3:s.sent(),s.label=4;case 4:return[2]}})})},e}(it);var nr=function(t){V(e,t);function e(){var n;return t.call(this,(n=N())===null||n===void 0?void 0:n.sessionStorage)||this}return e}(it);var rr=function(t){V(e,t);function e(){var n=t!==null&&t.apply(this,arguments)||this;return n.state={done:4},n}return e.prototype.send=function(n,r){return p(this,void 0,void 0,function(){var i=this;return f(this,function(o){return[2,new Promise(function(s,u){typeof XMLHttpRequest>"u"&&u(new Error("XHRTransport is not supported."));var c=new XMLHttpRequest;c.open("POST",n,!0),c.onreadystatechange=function(){if(c.readyState===i.state.done)try{var a=c.responseText,l=JSON.parse(a),d=i.buildResponse(l);s(d)}catch(m){u(m)}},c.setRequestHeader("Content-Type","application/json"),c.setRequestHeader("Accept","*/*"),c.send(JSON.stringify(r))})]})})},e}(pe);var ir=function(t){V(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.send=function(n,r){return p(this,void 0,void 0,function(){var i=this;return f(this,function(o){return[2,new Promise(function(s,u){var c=N();if(!c?.navigator.sendBeacon)throw new Error("SendBeaconTransport is not supported");try{var a=JSON.stringify(r),l=c.navigator.sendBeacon(n,JSON.stringify(r));return s(l?i.buildResponse({code:200,events_ingested:r.events.length,payload_size_bytes:a.length,server_upload_time:Date.now()}):i.buildResponse({code:500}))}catch(d){u(d)}})]})})},e}(pe);var or=function(t,e,n){return n===void 0&&(n=!0),p(void 0,void 0,void 0,function(){var r,i,o,s,u,c,a,l,d;return f(this,function(m){switch(m.label){case 0:return r=Kt(t),[4,e.getRaw(r)];case 1:return i=m.sent(),i?n?[4,e.remove(r)]:[3,3]:[2,{optOut:!1}];case 2:m.sent(),m.label=3;case 3:return o=L(i.split("."),6),s=o[0],u=o[1],c=o[2],a=o[3],l=o[4],d=o[5],[2,{deviceId:s,userId:ii(u),sessionId:nn(a),lastEventId:nn(d),lastEventTime:nn(l),optOut:!!c}]}})})},nn=function(t){var e=parseInt(t,32);if(!isNaN(e))return e},ii=function(t){if(!(!atob||!escape||!t))try{return decodeURIComponent(escape(atob(t)))}catch{return}};var j="[Amplitude]",ka="".concat(j," Page Viewed"),rn="".concat(j," Form Started"),sr="".concat(j," Form Submitted"),ar="".concat(j," File Downloaded"),on="session_start",sn="session_end",ur="".concat(j," File Extension"),cr="".concat(j," File Name"),lr="".concat(j," Link ID"),dr="".concat(j," Link Text"),pr="".concat(j," Link URL"),st="".concat(j," Form ID"),at="".concat(j," Form Name"),ut="".concat(j," Form Destination"),Pe="cookie",fr="US";var oi=function(t){V(e,t);function e(n,r,i,o,s,u,c,a,l,d,m,y,g,T,h,_,U,I,k,F,b,S,O,B,Z,ne,ce,re,le,ye,_e){i===void 0&&(i=new ze),o===void 0&&(o={domain:"",expiration:365,sameSite:"Lax",secure:!1,upgrade:!0}),c===void 0&&(c=1e3),a===void 0&&(a=5),l===void 0&&(l=30),d===void 0&&(d=Pe),h===void 0&&(h=new be),_===void 0&&(_=M.Warn),I===void 0&&(I=!1),k===void 0&&(k=!1),S===void 0&&(S=""),O===void 0&&(O=fr),Z===void 0&&(Z=30*60*1e3),ne===void 0&&(ne=new tn({loggerProvider:h})),ce===void 0&&(ce={ipAddress:!0,language:!0,platform:!0}),re===void 0&&(re="fetch"),le===void 0&&(le=!1);var E=t.call(this,{apiKey:n,storageProvider:ne,transportProvider:an(re)})||this;return E.apiKey=n,E.appVersion=r,E.cookieOptions=o,E.defaultTracking=s,E.flushIntervalMillis=c,E.flushMaxRetries=a,E.flushQueueSize=l,E.identityStorage=d,E.ingestionMetadata=m,E.instanceName=y,E.loggerProvider=h,E.logLevel=_,E.minIdLength=U,E.offline=I,E.partnerId=F,E.plan=b,E.serverUrl=S,E.serverZone=O,E.sessionTimeout=Z,E.storageProvider=ne,E.trackingOptions=ce,E.transport=re,E.useBatch=le,E._optOut=!1,E._cookieStorage=i,E.deviceId=u,E.lastEventId=g,E.lastEventTime=T,E.optOut=k,E.sessionId=B,E.pageCounter=_e,E.userId=ye,E.loggerProvider.enable(E.logLevel),E}return Object.defineProperty(e.prototype,"cookieStorage",{get:function(){return this._cookieStorage},set:function(n){this._cookieStorage!==n&&(this._cookieStorage=n,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"deviceId",{get:function(){return this._deviceId},set:function(n){this._deviceId!==n&&(this._deviceId=n,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"userId",{get:function(){return this._userId},set:function(n){this._userId!==n&&(this._userId=n,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"sessionId",{get:function(){return this._sessionId},set:function(n){this._sessionId!==n&&(this._sessionId=n,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"optOut",{get:function(){return this._optOut},set:function(n){this._optOut!==n&&(this._optOut=n,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"lastEventTime",{get:function(){return this._lastEventTime},set:function(n){this._lastEventTime!==n&&(this._lastEventTime=n,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"lastEventId",{get:function(){return this._lastEventId},set:function(n){this._lastEventId!==n&&(this._lastEventId=n,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pageCounter",{get:function(){return this._pageCounter},set:function(n){this._pageCounter!==n&&(this._pageCounter=n,this.updateStorage())},enumerable:!1,configurable:!0}),e.prototype.updateStorage=function(){var n={deviceId:this._deviceId,userId:this._userId,sessionId:this._sessionId,optOut:this._optOut,lastEventTime:this._lastEventTime,lastEventId:this._lastEventId,pageCounter:this._pageCounter};this.cookieStorage.set(Ze(this.apiKey),n)},e}(Rt);var mr=function(t,e,n){return e===void 0&&(e={}),p(void 0,void 0,void 0,function(){var r,i,o,s,u,c,a,l,d,m,y,g,T,h,_,U,I,k,F,b,S,O,B,Z,ne,ce,re,le,ye,_e,E,pt,ft,mt,vt,gt,ht,yt,_t,Et;return f(this,function(me){switch(me.label){case 0:return r=e.identityStorage||Pe,I={},r===Pe?[3,1]:(o="",[3,5]);case 1:return(F=(k=e.cookieOptions)===null||k===void 0?void 0:k.domain)!==null&&F!==void 0?(s=F,[3,4]):[3,2];case 2:return[4,ai()];case 3:s=me.sent(),me.label=4;case 4:o=s,me.label=5;case 5:return i=v.apply(void 0,[(I.domain=o,I.expiration=365,I.sameSite="Lax",I.secure=!1,I.upgrade=!0,I),e.cookieOptions]),u=si(e.identityStorage,i),[4,or(t,u,(S=(b=e.cookieOptions)===null||b===void 0?void 0:b.upgrade)!==null&&S!==void 0?S:!0)];case 6:return c=me.sent(),[4,u.get(Ze(t))];case 7:return a=me.sent(),l=ge(),d=(ne=(Z=(B=(O=e.deviceId)!==null&&O!==void 0?O:l.deviceId)!==null&&B!==void 0?B:a?.deviceId)!==null&&Z!==void 0?Z:c.deviceId)!==null&&ne!==void 0?ne:X(),m=(ce=a?.lastEventId)!==null&&ce!==void 0?ce:c.lastEventId,y=(re=a?.lastEventTime)!==null&&re!==void 0?re:c.lastEventTime,g=(ye=(le=e.optOut)!==null&&le!==void 0?le:a?.optOut)!==null&&ye!==void 0?ye:c.optOut,T=(_e=a?.sessionId)!==null&&_e!==void 0?_e:c.sessionId,h=(pt=(E=e.userId)!==null&&E!==void 0?E:a?.userId)!==null&&pt!==void 0?pt:c.userId,n.previousSessionDeviceId=(ft=a?.deviceId)!==null&&ft!==void 0?ft:c.deviceId,n.previousSessionUserId=(mt=a?.userId)!==null&&mt!==void 0?mt:c.userId,_={ipAddress:(gt=(vt=e.trackingOptions)===null||vt===void 0?void 0:vt.ipAddress)!==null&>!==void 0?gt:!0,language:(yt=(ht=e.trackingOptions)===null||ht===void 0?void 0:ht.language)!==null&&yt!==void 0?yt:!0,platform:(Et=(_t=e.trackingOptions)===null||_t===void 0?void 0:_t.platform)!==null&&Et!==void 0?Et:!0},U=a?.pageCounter,[2,new oi(t,e.appVersion,u,i,e.defaultTracking,d,e.flushIntervalMillis,e.flushMaxRetries,e.flushQueueSize,r,e.ingestionMetadata,e.instanceName,m,y,e.loggerProvider,e.logLevel,e.minIdLength,e.offline,g,e.partnerId,e.plan,e.serverUrl,e.serverZone,T,e.sessionTimeout,e.storageProvider,_,e.transport,e.useBatch,h,U)]}})})},si=function(t,e){switch(t===void 0&&(t=Pe),e===void 0&&(e={}),t){case"localStorage":return new tn;case"sessionStorage":return new nr;case"none":return new ze;case"cookie":default:return new Le(v(v({},e),{expirationDays:e.expiration}))}},an=function(t){return t==="xhr"?new rr:t==="beacon"?new ir:new Gt},ai=function(t){return p(void 0,void 0,void 0,function(){var e,n,r,i,o,o,s,u,c,a;return f(this,function(l){switch(l.label){case 0:return[4,new Le().isEnabled()];case 1:if(!l.sent()||!t&&typeof location>"u")return[2,""];for(e=t??location.hostname,n=e.split("."),r=[],i="AMP_TLDTEST",o=n.length-2;o>=0;--o)r.push(n.slice(o).join("."));o=0,l.label=2;case 2:return o<r.length?(s=r[o],u={domain:"."+s},c=new Le(u),[4,c.set(i,1)]):[3,7];case 3:return l.sent(),[4,c.get(i)];case 4:return a=l.sent(),a?[4,c.remove(i)]:[3,6];case 5:return l.sent(),[2,"."+s];case 6:return o++,[3,2];case 7:return[2,""]}})})};var gr=function(t,e,n){return e===void 0&&(e=""),n===void 0&&(n=10),[de,e,t.substring(0,n)].filter(Boolean).join("_")},vr=function(t){var e=t.split(".");return e.length<=2?t:e.slice(e.length-2,e.length).join(".")},ui=function(t){return Object.values(t).every(function(e){return!e})},hr=function(t,e,n,r){r===void 0&&(r=!0);var i=t.referrer,o=t.referring_domain,s=Te(t,["referrer","referring_domain"]),u=e||{},c=u.referrer,a=u.referring_domain,l=Te(u,["referrer","referring_domain"]);if(ci(n.excludeReferrers,t.referring_domain)||!r&&ui(t)&&e)return!1;var d=JSON.stringify(s)!==JSON.stringify(l),m=vr(o||"")!==vr(a||"");return!e||d||m},ci=function(t,e){return t===void 0&&(t=[]),e===void 0&&(e=""),t.some(function(n){return n instanceof RegExp?n.test(e):n===e})},yr=function(t,e){var n=v(v({},fe),t),r=Object.entries(n).reduce(function(i,o){var s,u=L(o,2),c=u[0],a=u[1];return i.setOnce("initial_".concat(c),(s=a??e.initialEmptyValue)!==null&&s!==void 0?s:"EMPTY"),a?i.set(c,a):i.unset(c)},new G);return Ie(r)},_r=function(t){var e=t;return e?(e.startsWith(".")&&(e=e.substring(1)),[new RegExp("".concat(e.replace(".","\\\\."),"$"))]):[]};var un=function(t){var e=this;t===void 0&&(t={});var n={name:"@amplitude/plugin-web-attribution-browser",type:"before",setup:function(r,i){var o;return p(this,void 0,void 0,function(){var s,u,c,a,l,d,m,y;return f(this,function(g){switch(g.label){case 0:return s=v({initialEmptyValue:"EMPTY",resetSessionOnNewCampaign:!1,excludeReferrers:_r((o=r.cookieOptions)===null||o===void 0?void 0:o.domain)},t),r.loggerProvider.log("Installing @amplitude/plugin-web-attribution-browser."),u=r.cookieStorage,c=gr(r.apiKey,"MKTG"),[4,Promise.all([new Se().parse(),u.get(c)])];case 1:return a=L.apply(void 0,[g.sent(),2]),l=a[0],d=a[1],m=xe(r.sessionTimeout,r.lastEventTime),hr(l,d,s,m)&&(s.resetSessionOnNewCampaign&&(i.setSessionId(Date.now()),r.loggerProvider.log("Created a new session for new campaign.")),r.loggerProvider.log("Tracking attribution."),y=yr(l,s),i.track(y),u.set(c,l)),[2]}})})},execute:function(r){return p(e,void 0,void 0,function(){return f(this,function(i){return[2,r]})})}};return n};var Er=function(t){var e={};for(var n in t){var r=t[n];r&&(e[n]=r)}return e};var cn=function(t){t===void 0&&(t={});var e,n=N(),r=void 0,i,o,s=function(){return p(void 0,void 0,void 0,function(){var m,y,g;return f(this,function(T){switch(T.label){case 0:return o.pageCounter=o.pageCounter?o.pageCounter+1:1,y={event_type:(g=t.eventType)!==null&&g!==void 0?g:"[Amplitude] Page Viewed"},m=[{}],[4,li()];case 1:return[2,(y.event_properties=v.apply(void 0,[v.apply(void 0,m.concat([T.sent()])),{"[Amplitude] Page Domain":typeof location<"u"&&location.hostname||"","[Amplitude] Page Location":typeof location<"u"&&location.href||"","[Amplitude] Page Path":typeof location<"u"&&location.pathname||"","[Amplitude] Page Title":typeof document<"u"&&document.title||"","[Amplitude] Page URL":typeof location<"u"&&location.href.split("?")[0]||"","[Amplitude] Page Counter":o.pageCounter}]),y)]}})})},u=function(){return typeof t.trackOn>"u"||typeof t.trackOn=="function"&&t.trackOn()},c=typeof location<"u"?location.href:null,a=function(){return p(void 0,void 0,void 0,function(){var m,y,g,T,h;return f(this,function(_){switch(_.label){case 0:return m=location.href,y=pi(t.trackHistoryChanges,m,c||"")&&u(),c=m,y?(r?.log("Tracking page view event"),e!=null?[3,1]:(g=void 0,[3,3])):[3,4];case 1:return h=(T=e).track,[4,s()];case 2:g=h.apply(T,[_.sent()]),_.label=3;case 3:_.label=4;case 4:return[2]}})})},l=function(){a()},d={name:"@amplitude/plugin-page-view-tracking-browser",type:"enrichment",setup:function(m,y){return p(void 0,void 0,void 0,function(){var g,T;return f(this,function(h){switch(h.label){case 0:return e=y,o=m,r=m.loggerProvider,r.log("Installing @amplitude/plugin-page-view-tracking-browser"),n&&(n.addEventListener("popstate",l),i=n.history.pushState,n.history.pushState=new Proxy(n.history.pushState,{apply:function(_,U,I){var k=L(I,3),F=k[0],b=k[1],S=k[2];_.apply(U,[F,b,S]),a()}})),u()?(r.log("Tracking page view event"),T=(g=e).track,[4,s()]):[3,2];case 1:T.apply(g,[h.sent()]),h.label=2;case 2:return[2]}})})},execute:function(m){return p(void 0,void 0,void 0,function(){var y;return f(this,function(g){switch(g.label){case 0:return t.trackOn==="attribution"&&di(m)?(r?.log("Enriching campaign event to page view event with campaign parameters"),[4,s()]):[3,2];case 1:y=g.sent(),m.event_type=y.event_type,m.event_properties=v(v({},m.event_properties),y.event_properties),g.label=2;case 2:return[2,m]}})})},teardown:function(){return p(void 0,void 0,void 0,function(){return f(this,function(m){return n&&(n.removeEventListener("popstate",l),i&&(n.history.pushState=i)),[2]})})}};return d},li=function(){return p(void 0,void 0,void 0,function(){var t;return f(this,function(e){switch(e.label){case 0:return t=Er,[4,new Se().parse()];case 1:return[2,t.apply(void 0,[e.sent()])]}})})},di=function(t){if(t.event_type==="$identify"&&t.user_properties){var e=t.user_properties,n=e[w.SET]||{},r=e[w.UNSET]||{},i=q(q([],L(Object.keys(n)),!1),L(Object.keys(r)),!1);return Object.keys(fe).every(function(o){return i.includes(o)})}return!1},pi=function(t,e,n){switch(t){case"pathOnly":return e.split("?")[0]!==n.split("?")[0];default:return e!==n}};var Tr=function(){var t,e=[],n=function(a,l,d){a.addEventListener(l,d),e.push({element:a,type:l,handler:d})},r=function(){e.forEach(function(a){var l=a.element,d=a.type,m=a.handler;l?.removeEventListener(d,m)}),e=[]},i="@amplitude/plugin-form-interaction-tracking-browser",o="enrichment",s=function(a,l){return p(void 0,void 0,void 0,function(){var d,m;return f(this,function(y){return l?typeof document>"u"?[2]:(d=function(g){var T=!1;n(g,"change",function(){var h;T||l.track(rn,(h={},h[st]=he(g.id),h[at]=he(g.name),h[ut]=g.action,h)),T=!0}),n(g,"submit",function(){var h,_;T||l.track(rn,(h={},h[st]=he(g.id),h[at]=he(g.name),h[ut]=g.action,h)),l.track(sr,(_={},_[st]=he(g.id),_[at]=he(g.name),_[ut]=g.action,_)),T=!1})},m=Array.from(document.getElementsByTagName("form")),m.forEach(d),typeof MutationObserver<"u"&&(t=new MutationObserver(function(g){g.forEach(function(T){T.addedNodes.forEach(function(h){h.nodeName==="FORM"&&d(h),"querySelectorAll"in h&&typeof h.querySelectorAll=="function"&&Array.from(h.querySelectorAll("form")).map(d)})})}),t.observe(document.body,{subtree:!0,childList:!0})),[2]):(a.loggerProvider.warn("Form interaction tracking requires a later version of @amplitude/analytics-browser. Form interaction events are not tracked."),[2])})})},u=function(a){return p(void 0,void 0,void 0,function(){return f(this,function(l){return[2,a]})})},c=function(){return p(void 0,void 0,void 0,function(){return f(this,function(a){return t?.disconnect(),r(),[2]})})};return{name:i,type:o,setup:s,execute:u,teardown:c}},he=function(t){if(typeof t=="string")return t};var Ir=function(){var t,e=[],n=function(a,l,d){a.addEventListener(l,d),e.push({element:a,type:l,handler:d})},r=function(){e.forEach(function(a){var l=a.element,d=a.type,m=a.handler;l?.removeEventListener(d,m)}),e=[]},i="@amplitude/plugin-file-download-tracking-browser",o="enrichment",s=function(a,l){return p(void 0,void 0,void 0,function(){var d,m,y;return f(this,function(g){return l?typeof document>"u"?[2]:(d=function(T){var h;try{h=new URL(T.href,window.location.href)}catch{return}var _=m.exec(h.href),U=_?.[1];U&&n(T,"click",function(){var I;U&&l.track(ar,(I={},I[ur]=U,I[cr]=h.pathname,I[lr]=T.id,I[dr]=T.text,I[pr]=T.href,I))})},m=/\\.(pdf|xlsx?|docx?|txt|rtf|csv|exe|key|pp(s|t|tx)|7z|pkg|rar|gz|zip|avi|mov|mp4|mpe?g|wmv|midi?|mp3|wav|wma)$/,y=Array.from(document.getElementsByTagName("a")),y.forEach(d),typeof MutationObserver<"u"&&(t=new MutationObserver(function(T){T.forEach(function(h){h.addedNodes.forEach(function(_){_.nodeName==="A"&&d(_),"querySelectorAll"in _&&typeof _.querySelectorAll=="function"&&Array.from(_.querySelectorAll("a")).map(d)})})}),t.observe(document.body,{subtree:!0,childList:!0})),[2]):(a.loggerProvider.warn("File download tracking requires a later version of @amplitude/analytics-browser. File download events are not tracked."),[2])})})},u=function(a){return p(void 0,void 0,void 0,function(){return f(this,function(l){return[2,a]})})},c=function(){return p(void 0,void 0,void 0,function(){return f(this,function(a){return t?.disconnect(),r(),[2]})})};return{name:i,type:o,setup:s,execute:u,teardown:c}};var br=!1,Sr=function(t){if(!(br||t.defaultTracking!==void 0)){var e=\`\\\`options.defaultTracking\\\` is set to undefined. This implicitly configures your Amplitude instance to track Page Views, Sessions, File Downloads, and Form Interactions. You can suppress this warning by explicitly setting a value to \\\`options.defaultTracking\\\`. The value must either be a boolean, to enable and disable all default events, or an object, for advanced configuration. For example:
|
|
27
27
|
|
|
28
28
|
amplitude.init(<YOUR_API_KEY>, {
|
|
@@ -39,7 +39,7 @@ Visit https://www.docs.developers.amplitude.com/data/sdks/browser-2/#tracking-de
|
|
|
39
39
|
<h3>How's Devtools working for you?</h3>
|
|
40
40
|
<p>We'd love your feedback!</p>
|
|
41
41
|
</div>
|
|
42
|
-
\`,t.appendChild(e),setTimeout(()=>{e.classList.add("menu-toggle-tooltip-show"),e.addEventListener("click",()=>{e.classList.remove("menu-toggle-tooltip-show")})},1e3)};function Br(t){t.getElementById("go-to-builder").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),ue(t,!1),window.open(mn(),"builder")}),t.getElementById("components-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation();let u=t.querySelector(".nav-cmp-list .section-content");u.scrollTop=0,W(t,"nav-cmp-list"),Mr(t)}),t.getElementById("settings-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),W(t,"nav-settings")}),t.getElementById("add-page-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),ue(t,!1),window.open(Ee(),"builder")}),t.getElementById("import-from-figma").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),ue(t,!1),window.open("https://www.figma.com/community/plugin/747985167520967365/builder-io-ai-powered-figma-to-code-react-vue-tailwind-more")})}function Fr(t){let e=t.getElementById("enable-edit");e.addEventListener("change",n=>{n.stopPropagation(),bt(e.checked)}),e.checked=ke(),bt(e.checked)}var lt=class extends HTMLElement{constructor(){super()}connectedCallback(){let e=this.attachShadow({mode:"open"});e.innerHTML=\`<style>*,*:before,*:after{box-sizing:border-box}:host{--background-color: rgba(40, 40, 40, 1);--primary-color: rgba(72, 161, 255, 1);--primary-color-subdued: rgb(72, 161, 255, .6);--primary-color-highlight: rgb(126, 188, 255);--primary-contrast-color: white;--edit-color: #1d74e2;--edit-color-highlight: #1c6bd1;--edit-color-alpha: rgb(72, 161, 255, .15);--error-color: #ff2b55;--text-color: white;--text-color-highlight: white;--border-color: #454545;--button-background-color-hover: rgba(255, 255, 255, .1);--menu-width: 320px;--transition-time: .15s;--font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-family:var(--font-family);line-height:1.6}button{cursor:pointer;color:var(--text-color);-webkit-tap-highlight-color:transparent}input,select,button{font-family:var(--font-family)}.menu-toggle{position:absolute;right:0;bottom:0;pointer-events:auto;padding:8px;background:transparent;border:none;appearance:none}.menu-toggle div{position:relative;width:64px;height:64px;pointer-events:none;border-radius:50%;background:#000;border:1px solid white;box-shadow:#00000054 0 0 8px}.menu-toggle:hover div{background-color:var(--background-color);border:1px solid rgb(220,220,220)}.menu-toggle svg{position:absolute;top:15px;left:15px;width:33px;height:32px}div.highlight-bg{position:absolute;top:-1px;left:-1px;background-color:#1a1a1a;pointer-events:none;transition:all .4s ease-out;opacity:0}.menu-toggle-highlight-no-transition div.highlight-bg{transition:none}.menu-toggle-highlight div.highlight-bg{opacity:1}.menu-toggle-tooltip{position:absolute;bottom:0;right:0;width:382px;height:72px;padding:0;text-align:left;appearance:none;background-color:transparent;border:none;pointer-events:none;transform:translate3d(320px,0,0);opacity:0;transition:all .15s ease-in-out;color:#fff}.menu-toggle-tooltip.menu-toggle-tooltip-show{pointer-events:auto;opacity:1;transform:translateZ(0)}.menu-toggle-tooltip-content{position:absolute;inset:0 95px 10px 0;padding:8px 12px;background-color:var(--primary-color);box-shadow:#00000054 0 0 20px;border-radius:2px}.menu-toggle-tooltip-content:before{content:"";position:absolute;bottom:15px;right:-6px;width:30px;height:30px;background-color:var(--primary-color);transform:rotate(45deg)}.menu-toggle-tooltip:hover .menu-toggle-tooltip-content,.menu-toggle-tooltip:hover .menu-toggle-tooltip-content:before{background-color:var(--primary-color-highlight)}.menu-toggle-tooltip-content h3{margin:0;font-size:16px}.menu-toggle-tooltip-content p{margin:0;font-size:12px}section{position:absolute;display:grid;grid-template-rows:64px auto 64px;top:0;left:0;width:100%;height:100%;padding:0;pointer-events:none}.section-content{margin:0;padding:0 0 10px;font-weight:300;transform:translate3d(105%,0,0);transition:transform var(--transition-time) ease-in-out;overflow-y:auto}.section-content .error{color:var(--error-color);font-weight:700}section a{text-decoration:none;color:var(--text-color)}section h3,section p{margin-left:16px;margin-right:16px}.info{font-size:12px}ul.list{list-style:none;padding:0;margin:0}ul.list li{display:block;padding:0;margin:0}ul.list a,ul.list button{display:grid;grid-template-columns:24px auto;grid-gap:16px;padding:12px;margin:8px 0;border:none;background:transparent;appearance:none;width:100%;font-weight:300;text-align:left;text-decoration:none;color:var(--text-color)}ul.list a:hover,ul.list button:hover{text-decoration:none;color:var(--text-color);background-color:var(--button-background-color-hover)}ul.list a span,ul.list button span{display:block;font-size:16px;font-weight:500;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}header{position:relative;display:grid;grid-template-columns:44px 1fr;gap:8px;padding-left:8px;border-bottom:1px solid var(--border-color);transition:opacity var(--transition-time) ease-in-out;opacity:0;pointer-events:none}header>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-home header>div{margin-right:56px}header h2{margin:7px 0 0;font-size:18px;font-weight:500;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}header p{margin:2px 0 0;font-size:12px;font-weight:300;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}header p button{display:block;margin:0;padding:0;width:100%;font-size:12px;font-weight:300;text-decoration:none;appearance:none;text-align:left;background-color:transparent;border:none;color:var(--primary-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}header p button:hover{text-decoration:underline;color:var(--primary-color)}.builder-logo{margin:12px 0 0 8px}#close{display:block;position:absolute;appearance:none;background:transparent;border:none;border-radius:50%;margin:0;padding:0;right:4px;top:8px;width:48px;height:48px;z-index:1;opacity:.7}#close:hover{opacity:1;background-color:var(--button-background-color-hover)}#close svg{position:absolute;top:12px;left:12px;width:24px;height:24px;fill:currentColor;pointer-events:none}.back-button{position:relative;display:block;margin:7px 0 0 -2px;width:48px;height:48px;background:transparent;border:none;appearance:none;border-radius:50%}.back-button:hover{background-color:var(--button-background-color-hover)}.back-button svg{position:absolute;top:12px;left:12px;width:24px;height:24px;fill:currentColor;pointer-events:none}footer{border-top:1px solid var(--border-color);transition:opacity var(--transition-time) ease-in-out;opacity:0;pointer-events:none}section.nav-cmp-list{grid-template-rows:64px auto 120px}footer a{text-decoration:underline;color:var(--primary-color)}footer a:hover{color:var(--primary-color);text-decoration:none}.nav-list{padding:2px 0}.nav-loading{pointer-events:none}.nav-loading-icon{position:absolute;display:inline-block;top:170px;left:0;width:100%;transform:translateZ(0);pointer-events:auto;opacity:0;transition:all 50ms ease-in-out;transition-delay:50ms;pointer-events:none}.nav-loading .nav-loading-icon{opacity:.5}.nav-list h4{margin:8px 8px 8px 10px;font-size:14px;font-weight:600}.nav-list .nav-list-item+h4{margin-top:30px}.nav-list-item{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:relative;margin:2px 0;padding:8px 28px 8px 46px;width:100%;font-size:14px;font-weight:300;text-align:left;border:none;background:transparent;appearance:none}.nav-list-item:hover{background-color:var(--button-background-color-hover)}.nav-list-item-icon{position:absolute;top:4px;left:10px;width:24px;height:24px;object-fit:contain;filter:invert(100%);background-size:24px 24px;background-repeat:no-repeat;background-position:center center}.nav-list-item span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.nav-list-item:after{display:block;position:absolute;content:"";background-image:url('data:image/svg+xml,<svg width="8" height="14" viewBox="0 0 8 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L7 7L1 13" stroke="%23F2F2F2" stroke-opacity="0.5" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/></svg>');background-repeat:no-repeat;background-position:12px 9px;top:0;right:0;width:32px;height:32px;pointer-events:none}.nav-list-item-note{opacity:0;font-size:12px;padding-top:1px;text-align:right}.nav-list-item:hover .nav-list-item-note{opacity:.5}.ui-select{display:block;margin:8px 0 16px;padding:8px 16px;cursor:pointer}.ui-select h3{margin:0;font-size:14px;font-weight:500}.ui-select p{margin:8px 0;font-size:12px;font-weight:300}.ui-select .select{position:relative;margin:8px 0;border-radius:4px;padding:0;line-height:1.1;overflow:hidden;border:1px solid var(--border-color)}.ui-select select{appearance:none;background-color:transparent;border:none;outline:none;padding:8px 32px 8px 8px;margin:0;width:100%;font-size:14px;cursor:pointer;text-overflow:ellipsis;opacity:.6;color:var(--text-color)}.ui-select .select:after{content:"";top:6px;right:5px;width:24px;height:24px;position:absolute;background-image:url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="%23F2F2F2" d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"/></svg>');background-repeat:no-repeat;background-position:center;pointer-events:none;opacity:.6}.ui-select .select:hover{border-color:var(--primary-color-subdued)}.ui-text-input .select:focus-within{border-color:var(--primary-color)}.ui-text-input .select:focus-within select{opacity:1}.spinner:after{content:" ";display:block;width:32px;height:32px;margin:0 auto;pointer-events:auto;border-radius:50%;border:3px solid var(--text-color);border-color:var(--text-color) transparent var(--text-color) transparent;animation:spinner .75s linear infinite}@keyframes spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ui-switch{display:grid;grid-template-columns:auto 48px;grid-gap:20px;margin:8px 0 16px;padding:8px 0 8px 16px;cursor:pointer}.ui-switch>*{pointer-events:none}.ui-switch input{display:none;visibility:hidden}.ui-switch .switcher{display:inline-block;border-radius:100px;width:35px;height:14px;background-color:#ccc;position:relative;top:6px;vertical-align:middle;cursor:pointer}.ui-switch input[type=checkbox]:checked+.switcher{background-color:var(--primary-color-subdued)}.ui-switch .switcher:before{content:"";display:block;width:20px;height:20px;background-color:var(--text-color);box-shadow:0 1px 3px #0009;border-radius:50%;position:absolute;top:-3px;left:0;margin-right:0;transition:all .15s}.ui-switch input[type=checkbox]:checked+.switcher:before{left:100%;margin-left:-20px;background-color:var(--primary-color)}.ui-switch h3{margin:0;font-size:14px;font-weight:500}.ui-switch p{margin:4px 0 0;font-size:12px;font-weight:300}.ui-text-input{display:block;margin:8px 0 16px;padding:8px 16px;cursor:pointer}.ui-text-input h3{margin:0;font-size:14px;font-weight:500}.ui-text-input p{margin:8px 0;font-size:12px;font-weight:300}.ui-text-input .input{position:relative;margin:8px 0;border:1px solid var(--border-color);border-radius:4px;background:transparent;padding:2px;overflow:hidden}.ui-text-input input{display:block;width:235px;font-size:14px;border:none;background:transparent;padding:6px;appearance:none;color:var(--text-color);opacity:.6;outline:none}.ui-text-input .input:hover{border-color:var(--primary-color-subdued)}.ui-text-input .input:focus-within{border-color:var(--primary-color)}.ui-text-input .input:focus-within input{opacity:1}.ui-text-input .input:after{content:"";position:absolute;top:5px;right:14px;width:8px;height:17px;border:2px solid rgba(51,181,51,1);border-top:none;border-left:none;transform:rotate(45deg);opacity:0;transition:opacity 80ms ease-in-out;pointer-events:none}.ui-text-input.saved .input:after{opacity:1}.ui-toast{position:fixed;bottom:8px;left:8px;right:8px;padding:6px 12px;font-size:14px;border-radius:4px;transform:translate3d(0,150%,0);opacity:0;transition:all var(--transition-time) ease-in-out;background-color:var(--primary-color-subdued);color:var(--text-color);pointer-events:none}.ui-toast.ui-toast-show{transform:translateZ(0);opacity:1;pointer-events:auto}[data-view=nav-home] .nav-home .section-content,[data-view=nav-cmp-list] .nav-cmp-list .section-content,[data-view=nav-cmp-detail] .nav-cmp-detail .section-content,[data-view=nav-cmp-input] .nav-cmp-input .section-content,[data-view=nav-settings] .nav-settings .section-content{transform:translateZ(0);pointer-events:auto}[data-view=nav-home] .nav-home header,[data-view=nav-home] .nav-home footer,[data-view=nav-cmp-list] .nav-cmp-list header,[data-view=nav-cmp-list] .nav-cmp-list footer,[data-view=nav-cmp-detail] .nav-cmp-detail header,[data-view=nav-cmp-detail] .nav-cmp-detail footer,[data-view=nav-cmp-input] .nav-cmp-input header,[data-view=nav-cmp-input] .nav-cmp-input footer,[data-view=nav-settings] .nav-settings header,[data-view=nav-settings] .nav-settings footer{opacity:1;pointer-events:auto}[data-view=nav-cmp-list] .nav-home .section-content,[data-view=nav-cmp-detail] .nav-home .section-content,[data-view=nav-cmp-detail] .nav-cmp-list .section-content,[data-view=nav-cmp-input] .nav-home .section-content,[data-view=nav-cmp-input] .nav-cmp-list .section-content,[data-view=nav-cmp-input] .nav-cmp-detail .section-content,[data-view=nav-settings] .nav-home .section-content{transform:translate3d(-105%,0,0)}.cmp-item .nav-list-item-icon{background-image:url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20.83 16.809C20.94 16.561 21 16.289 21 16.008V7.99001C20.9994 7.64108 20.9066 7.29851 20.731 6.99699C20.5554 6.69547 20.3032 6.44571 20 6.27301L13 2.26501C12.6954 2.09103 12.3508 1.99951 12 1.99951C11.6492 1.99951 11.3046 2.09103 11 2.26501L7.988 3.99001M5.441 5.44801L4 6.27301C3.381 6.62801 3 7.28301 3 7.99101V16.009C3 16.718 3.381 17.372 4 17.726L11 21.734C11.3046 21.908 11.6492 21.9995 12 21.9995C12.3508 21.9995 12.6954 21.908 13 21.734L18.544 18.56" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/><path d="M12 22V12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/><path d="M14.532 10.538L20.73 6.95996" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/><path d="M3.27002 6.95996L12 12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/><path d="M3 3L21 21" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/></svg>');opacity:.3}.cmp-item.registered .nav-list-item-icon{background-image:url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M21 16.008V7.99001C20.9994 7.64108 20.9066 7.29851 20.731 6.99699C20.5554 6.69547 20.3032 6.44571 20 6.27301L13 2.26501C12.6954 2.09103 12.3508 1.99951 12 1.99951C11.6492 1.99951 11.3046 2.09103 11 2.26501L4 6.27301C3.381 6.62801 3 7.28301 3 7.99101V16.009C3 16.718 3.381 17.372 4 17.726L11 21.734C11.3046 21.908 11.6492 21.9995 12 21.9995C12.3508 21.9995 12.6954 21.908 13 21.734L20 17.726C20.619 17.371 21 16.716 21 16.008Z" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M12 22V12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M12 12L20.73 6.95996" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M3.26999 6.95996L12 12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /></svg>');opacity:.8}.search-highlight{background-color:var(--primary-color-alpha);padding:0 2px;border-radius:2px;font-weight:500}.search-container{position:sticky;top:0;z-index:10;padding:12px 16px;background:var(--background-color);border-bottom:1px solid var(--border-color)}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:12px;color:var(--text-color-secondary);pointer-events:none}.component-search-input{width:100%;height:36px;padding:8px 36px;border:1px solid var(--border-color);border-radius:6px;background:var(--input-background);color:var(--text-color);font-size:14px;transition:border-color .2s,box-shadow .2s}.component-search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-color-alpha)}.component-search-input::placeholder{color:var(--text-color-tertiary)}.clear-search-button{position:absolute;right:8px;padding:4px;color:var(--text-color-secondary);border:none;background:transparent;border-radius:4px;cursor:pointer;opacity:0;transition:opacity .2s,background-color .2s;display:flex;align-items:center;justify-content:center}.clear-search-button:hover{background-color:var(--hover-color)}.component-search-input:not(:placeholder-shown)+.clear-search-button{opacity:1}.no-results{padding:32px 16px;text-align:center;color:var(--text-color-secondary);font-size:14px}#cmp-detail{position:relative}.cmp-loading{pointer-events:none!important}.cmp-loading-icon{position:absolute;display:inline-block;top:170px;left:0;width:100%;transform:translateZ(0);pointer-events:auto;opacity:0;transition:all 50ms ease-in-out;transition-delay:50ms;pointer-events:none}.cmp-loading .cmp-loading-icon{opacity:.5}.cmp-cover{position:absolute;top:160px;left:0;width:100%;height:100vh;background:var(--background-color);transform:translateZ(0);pointer-events:none;display:none}[data-view=nav-cmp-detail] .cmp-cover{display:block;pointer-events:auto}.cmp-enabled .cmp-cover{transform:translate3d(0,105%,0);pointer-events:none}.section-ready .cmp-cover{transition:all var(--transition-time) ease-in-out}.cmp-detail-inputs-container{margin:8px 0 16px;padding:0}.cmp-detail-inputs-container h3{margin:0 0 6px;padding-left:16px;padding-right:8px;font-size:14px;font-weight:500;display:flex;justify-content:space-between;align-items:center}.cmp-detail-inputs-reload{font-weight:300;font-size:.9em;text-decoration:none;appearance:none;text-align:left;background-color:transparent;border:none;color:var(--primary-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmp-detail-inputs-reload:hover{text-decoration:underline;color:var(--primary-color)}.cmp-detail-inputs-container .cmp-inputs-empty{padding:0;margin-top:12px;font-size:12px;font-weight:300;opacity:.5;font-style:italic}.cmp-detail-inputs-container .nav-list-item-icon{opacity:.8;background-size:20px 20px;background-position:4px center}.input-icon{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path></svg>')}.input-icon-array{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path> <path d="M10 16v-6a2 2 0 1 1 4 0v6"></path> <path d="M10 13h4"></path></svg>')}.input-icon-boolean{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path> <path d="M10 16h2a2 2 0 1 0 0 -4h-2h2a2 2 0 1 0 0 -4h-2v8z"></path></svg>')}.input-icon-number{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path> <path d="M10 16v-8l4 8v-8"></path></svg>')}.input-icon-object{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path> <path d="M12 8a2 2 0 0 1 2 2v4a2 2 0 1 1 -4 0v-4a2 2 0 0 1 2 -2z"></path></svg>')}.input-icon-string{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path> <path d="M10 15a1 1 0 0 0 1 1h2a1 1 0 0 0 1 -1v-2a1 1 0 0 0 -1 -1h-2a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1"></path></svg>')}.cmp-input-item-unregistered{opacity:.4}.cmp-input-item-unregistered .input-icon:after{content:"";position:absolute;top:11px;left:4px;width:20px;height:2px;background-color:#000;transform:rotate(-45deg)}.cmp-prop-info{border-bottom:1px solid var(--border-color)}.cmp-input-readonly{margin:16px 0;padding:0 16px;display:grid;grid-template-columns:50% 50%;gap:12px}.cmp-input-readonly h3{margin:0;font-size:14px;font-weight:500}.cmp-input-readonly span{margin-top:2px;font-size:12px;font-weight:300;opacity:.8}.cmp-input-detail{margin:16px 0}.cmp-input-detail a{color:var(--primary-color);text-decoration:none}.cmp-input-detail a:hover{text-decoration:underline}.input-cover{position:absolute;top:175px;left:0;width:100%;height:100%;background:var(--background-color);transform:translateZ(0);transition:all var(--transition-time) ease-in-out;pointer-events:auto}.input-enabled .input-cover{transform:translate3d(0,105%,0);pointer-events:none}.input-loading-icon{position:absolute;display:inline-block;top:190px;left:0;width:100%;transform:translateZ(0);pointer-events:auto;opacity:0;transition:all 50ms ease-in-out;transition-delay:50ms;pointer-events:none}.input-loading .input-loading-icon{opacity:.5}:host{position:fixed;inset:0;z-index:2147483646;user-select:none;pointer-events:none;color:var(--text-color)}aside{position:absolute;top:0;right:0;width:var(--menu-width);height:100%;transform:translate3d(105%,0,0);transition:transform var(--transition-time) ease-in-out;background:var(--background-color);box-shadow:#000000c9 5px 0 20px;overflow:hidden;z-index:1}:host(.show-builder-menu) aside{pointer-events:auto;transform:translateZ(0)}#hit{position:absolute;inset:0;display:none}:host(.show-builder-menu) #hit{display:block;pointer-events:auto}#version{position:absolute;bottom:6px;right:6px;font-size:8px;color:#9b9b9b}</style><div id="hit"></div> <aside data-view="nav-home"> <section class="nav-home"> <header> <svg class="builder-logo" viewBox="0 0 31 36" fill="none" xmlns="http://www.w3.org/2000/svg" > <path d="M31 9.96854C31.0016 11.4553 30.6701 12.9236 30.03 14.2654C29.3898 15.6072 28.4572 16.7884 27.3007 17.7221L0.702841 2.61812C0.601104 2.56012 0.506714 2.49008 0.421705 2.40951C0.288323 2.27871 0.182333 2.12263 0.109928 1.95039C0.0375215 1.77814 0.000151253 1.59319 0 1.40633C0 1.03335 0.148098 0.675643 0.411715 0.411905C0.675332 0.148167 1.03287 0 1.40568 0L21.036 0C23.6786 0 26.213 1.05025 28.0816 2.91972C29.9502 4.78918 31 7.32472 31 9.96854Z" fill="#18B4F4" /> <path d="M31 25.4757C31.0004 26.7849 30.7429 28.0815 30.2423 29.2912C29.7417 30.5009 29.0078 31.6001 28.0825 32.526C27.1572 33.4519 26.0587 34.1864 24.8497 34.6875C23.6406 35.1886 22.3448 35.4465 21.0361 35.4465H1.40573C1.12766 35.4436 0.856725 35.3581 0.627199 35.201C0.397672 35.044 0.219871 34.8223 0.116289 34.5641C0.0127078 34.3059 -0.011999 34.0228 0.0452946 33.7505C0.102588 33.4783 0.239308 33.2292 0.438156 33.0347C0.517415 32.9551 0.606358 32.8858 0.702893 32.8284L11.1705 26.8843L27.2984 17.7244C28.4548 18.6579 29.3874 19.8387 30.028 21.18C30.6685 22.5213 31.0007 23.9891 31 25.4757Z" fill="#FD6B3C" /> <path d="M27.3011 17.7221L11.1709 26.8843L0.703209 32.8284C0.602697 32.8843 0.509784 32.9528 0.426758 33.0323C4.41799 28.9369 6.6496 23.442 6.64456 17.7221C6.65208 12.0015 4.42111 6.50517 0.429101 2.40948C0.51411 2.49005 0.6085 2.56009 0.710237 2.61809L27.3011 17.7221Z" fill="#A97FF2" /> </svg> <div> <h2 class="builder-home-title">Builder Devtools</h2> <p><button id="go-to-builder">Go to Builder</button></p> </div> <button id="close" aria-label="Close Menu"> <svg viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round" > <path stroke="none" d="M0 0h24v24H0z" fill="none" /> <path d="M18 6l-12 12" /> <path d="M6 6l12 12" /> </svg> </button> </header> <div class="section-content"> <ul class="list"> <li> <button id="components-link"> <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" > <path d="M21 16.008V7.99001C20.9994 7.64108 20.9066 7.29851 20.731 6.99699C20.5554 6.69547 20.3032 6.44571 20 6.27301L13 2.26501C12.6954 2.09103 12.3508 1.99951 12 1.99951C11.6492 1.99951 11.3046 2.09103 11 2.26501L4 6.27301C3.381 6.62801 3 7.28301 3 7.99101V16.009C3 16.718 3.381 17.372 4 17.726L11 21.734C11.3046 21.908 11.6492 21.9995 12 21.9995C12.3508 21.9995 12.6954 21.908 13 21.734L20 17.726C20.619 17.371 21 16.716 21 16.008Z" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M12 22V12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M12 12L20.73 6.95996" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M3.26999 6.95996L12 12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> </svg> <span>Components</span> </button> </li> <li> <button id="settings-link"> <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" > <path d="M10.325 4.317C10.751 2.561 13.249 2.561 13.675 4.317C13.7389 4.5808 13.8642 4.82578 14.0407 5.032C14.2172 5.23822 14.4399 5.39985 14.6907 5.50375C14.9414 5.60764 15.2132 5.65085 15.4838 5.62987C15.7544 5.60889 16.0162 5.5243 16.248 5.383C17.791 4.443 19.558 6.209 18.618 7.753C18.4769 7.98466 18.3924 8.24634 18.3715 8.51677C18.3506 8.78721 18.3938 9.05877 18.4975 9.30938C18.6013 9.55999 18.7627 9.78258 18.9687 9.95905C19.1747 10.1355 19.4194 10.2609 19.683 10.325C21.439 10.751 21.439 13.249 19.683 13.675C19.4192 13.7389 19.1742 13.8642 18.968 14.0407C18.7618 14.2172 18.6001 14.4399 18.4963 14.6907C18.3924 14.9414 18.3491 15.2132 18.3701 15.4838C18.3911 15.7544 18.4757 16.0162 18.617 16.248C19.557 17.791 17.791 19.558 16.247 18.618C16.0153 18.4769 15.7537 18.3924 15.4832 18.3715C15.2128 18.3506 14.9412 18.3938 14.6906 18.4975C14.44 18.6013 14.2174 18.7627 14.0409 18.9687C13.8645 19.1747 13.7391 19.4194 13.675 19.683C13.249 21.439 10.751 21.439 10.325 19.683C10.2611 19.4192 10.1358 19.1742 9.95929 18.968C9.7828 18.7618 9.56011 18.6001 9.30935 18.4963C9.05859 18.3924 8.78683 18.3491 8.51621 18.3701C8.24559 18.3911 7.98375 18.4757 7.752 18.617C6.209 19.557 4.442 17.791 5.382 16.247C5.5231 16.0153 5.60755 15.7537 5.62848 15.4832C5.64942 15.2128 5.60624 14.9412 5.50247 14.6906C5.3987 14.44 5.23726 14.2174 5.03127 14.0409C4.82529 13.8645 4.58056 13.7391 4.317 13.675C2.561 13.249 2.561 10.751 4.317 10.325C4.5808 10.2611 4.82578 10.1358 5.032 9.95929C5.23822 9.7828 5.39985 9.56011 5.50375 9.30935C5.60764 9.05859 5.65085 8.78683 5.62987 8.51621C5.60889 8.24559 5.5243 7.98375 5.383 7.752C4.443 6.209 6.209 4.442 7.753 5.382C8.753 5.99 10.049 5.452 10.325 4.317Z" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M9 12C9 12.7956 9.31607 13.5587 9.87868 14.1213C10.4413 14.6839 11.2044 15 12 15C12.7956 15 13.5587 14.6839 14.1213 14.1213C14.6839 13.5587 15 12.7956 15 12C15 11.2044 14.6839 10.4413 14.1213 9.87868C13.5587 9.31607 12.7956 9 12 9C11.2044 9 10.4413 9.31607 9.87868 9.87868C9.31607 10.4413 9 11.2044 9 12Z" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> </svg> <span>Settings</span> </button> </li> <li> <button id="add-page-link"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round" > <path stroke="none" d="M0 0h24v24H0z" fill="none" /> <path d="M14 3v4a1 1 0 0 0 1 1h4" /> <path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z" /> <path d="M12 11l0 6" /> <path d="M9 14l6 0" /> </svg> <span>Add Builder Page</span> </button> </li> <li> <button id="import-from-figma"> <svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-brand-figma" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round" > <path stroke="none" d="M0 0h24v24H0z" fill="none" /> <path d="M15 12m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0" /> <path d="M6 3m0 3a3 3 0 0 1 3 -3h6a3 3 0 0 1 3 3v0a3 3 0 0 1 -3 3h-6a3 3 0 0 1 -3 -3z" /> <path d="M9 9a3 3 0 0 0 0 6h3m-3 0a3 3 0 1 0 3 3v-15" /> </svg> <span>Import From Figma</span> </button> </li> </ul> </div> <footer> <ul class="list"> <li> <a href="https://docs.google.com/forms/d/e/1FAIpQLSdqZcJpRtm_Ia5DTHP6SDY9Xa6LID3KiTjRWkjMzWyJRUtSHw/viewform" target="_blank" > <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" > <path d="M11.013 17.0114L10.013 18.0114L2.513 10.5834C2.0183 10.102 1.62864 9.52342 1.36854 8.88404C1.10845 8.24466 0.983558 7.55836 1.00173 6.86834C1.01991 6.17832 1.18076 5.49954 1.47415 4.87474C1.76755 4.24994 2.18713 3.69266 2.70648 3.23799C3.22583 2.78331 3.8337 2.4411 4.49181 2.23289C5.14991 2.02468 5.844 1.95499 6.53036 2.02821C7.21673 2.10143 7.8805 2.31596 8.47987 2.65831C9.07925 3.00066 9.60124 3.46341 10.013 4.01741C10.8086 2.95654 11.9931 2.2552 13.3059 2.06766C14.6186 1.88012 15.9521 2.22176 17.013 3.01741C18.0739 3.81306 18.7752 4.99755 18.9627 6.3103C19.1503 7.62305 18.8086 8.95654 18.013 10.0174" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> <path d="M18.2006 19.8175L16.0286 20.9555C15.9642 20.989 15.8917 21.004 15.8192 20.9987C15.7467 20.9934 15.6771 20.9681 15.6182 20.9256C15.5593 20.8831 15.5134 20.825 15.4855 20.7579C15.4577 20.6907 15.4491 20.6172 15.4606 20.5455L15.8756 18.1345L14.1186 16.4275C14.0662 16.3768 14.0291 16.3123 14.0115 16.2416C13.9939 16.1708 13.9966 16.0965 14.0192 16.0271C14.0418 15.9578 14.0835 15.8962 14.1394 15.8494C14.1954 15.8026 14.2634 15.7725 14.3356 15.7625L16.7636 15.4105L17.8496 13.2175C17.8821 13.1521 17.9322 13.0972 17.9942 13.0588C18.0562 13.0204 18.1277 13 18.2006 13C18.2736 13 18.3451 13.0204 18.4071 13.0588C18.4691 13.0972 18.5191 13.1521 18.5516 13.2175L19.6376 15.4105L22.0656 15.7625C22.1377 15.7728 22.2054 15.8031 22.2611 15.85C22.3168 15.8968 22.3583 15.9583 22.3809 16.0275C22.4034 16.0967 22.4062 16.1708 22.3888 16.2415C22.3715 16.3122 22.3347 16.3766 22.2826 16.4275L20.5256 18.1345L20.9396 20.5445C20.9521 20.6163 20.9441 20.6902 20.9166 20.7578C20.8891 20.8254 20.8433 20.8839 20.7842 20.9267C20.7252 20.9695 20.6553 20.9949 20.5825 21C20.5098 21.005 20.4371 20.9896 20.3726 20.9555L18.2006 19.8175Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> </svg> <span>Give Feedback</span> </a> </li> </ul> <div id="version"></div> </footer> </section> <section class="nav-cmp-list"> <header> <button class="back-button"> <svg viewBox="0 0 24 24"> <path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z" /> </svg> </button> <div class="search-container"> <div class="search-input-wrapper"> <svg class="search-icon" viewBox="0 0 24 24" width="16" height="16"> <path fill="none" stroke="currentColor" stroke-width="2" d="M15.5 15.5L20 20M10 17C6.13401 17 3 13.866 3 10C3 6.13401 6.13401 3 10 3C13.866 3 17 6.13401 17 10C17 13.866 13.866 17 10 17Z" /> </svg> <input type="text" id="component-search" class="component-search-input" placeholder="Search components..." autocomplete="off" spellcheck="false" /> <button id="clear-search" class="clear-search-button" type="button" aria-label="Clear search" > <svg viewBox="0 0 24 24" width="16" height="16"> <path fill="none" stroke="currentColor" stroke-width="2" d="M6 6l12 12M6 18L18 6" /> </svg> </button> </div> </div> <div> <h2>Custom Components</h2> <p> <button id="open-builder-registry"></button> </p> </div> </header> <div class="section-content"> <div id="cmp-list" class="cmp-list nav-list"></div> </div> <div class="nav-loading-icon spinner"></div> <footer> <p class="info"> Expand on Builder's selection of built-in blocks by <a target="_blank" href="https://www.builder.io/c/docs/custom-components-intro" >registering components</a > from your codebase. This way, teammates can drag and drop your components within Builder's Visual Editor just like any other block. </p> </footer> </section> <section class="nav-cmp-detail"> <header> <button class="back-button" data-back="nav-cmp-list"> <svg viewBox="0 0 24 24"> <path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z" /> </svg> </button> <div> <h2 id="cmp-detail-title"></h2> <p> <button id="cmp-open-source"></button> </p> </div> </header> <div class="section-content"> <div id="cmp-error"></div> <label class="ui-switch"> <div> <h3>Register Component</h3> <p> Registers this component so it can be used within Builder Visual CMS </p> </div> <input type="checkbox" role="switch" id="cmp-register" /> <span class="switcher"></span> </label> <div id="cmp-detail"> <label class="ui-text-input"> <h3>Component Name</h3> <div class="input"> <input type="text" id="cmp-name" autocapitalize="off" autocorrect="off" spellcheck="false" autocomplete="off" minlength="2" maxlength="30" required placeholder="e.g. My Counter" /> </div> <p> Unique name to identify this custom component within Builder. Press ESC to cancel </p> </label> <div class="cmp-detail-inputs-container"> <h3> <span>Builder Inputs (Props)</span> <button class="cmp-detail-inputs-reload" id="btn-inputs-reload"> Reload </button> </h3> <div id="cmp-detail-inputs"></div> </div> </div> </div> <div class="cmp-cover"></div> <div class="cmp-loading-icon spinner"></div> </section> <section class="nav-cmp-input"> <header> <button class="back-button" data-back="nav-cmp-detail"> <svg viewBox="0 0 24 24"> <path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z" /> </svg> </button> <div> <h2 id="cmp-input-title"></h2> <p> <button id="input-open-source"></button> </p> </div> </header> <div class="section-content"> <label class="ui-switch"> <div> <h3>Enable Input</h3> <p>Add this component prop as a Builder input</p> </div> <input type="checkbox" role="switch" id="input-register" /> <span class="switcher"></span> </label> <div class="cmp-prop-info"> <div class="cmp-input-readonly"> <h3>Prop Name</h3> <span id="cmp-prop-name"></span> </div> <div class="cmp-input-readonly"> <h3>Prop Type</h3> <span id="cmp-prop-type"></span> </div> </div> <div class="cmp-input-detail"> <label class="ui-text-input"> <h3>Builder Input Name</h3> <div class="input"> <input type="text" id="input-name" autocapitalize="off" autocorrect="off" spellcheck="false" autocomplete="off" minlength="1" maxlength="30" required placeholder="e.g. Text" /> </div> <p> Friendly name to identify this component prop as a Builder input. Press ESC to cancel </p> </label> <label class="ui-select"> <h3>Builder Input Type</h3> <div class="select"> <select id="input-type"></select> </div> <p> Correlate to what editing UI is appropriate for this Builder input. <a href="https://www.builder.io/c/docs/custom-components-input-types" target="_blank" >Read more about input types.</a > </p> </label> </div> <div class="input-cover"></div> <div class="input-loading-icon spinner"></div> </div> </section> <section class="nav-settings"> <header> <button class="back-button"> <svg viewBox="0 0 24 24"> <path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z" /> </svg> </button> <div> <h2>Settings</h2> <p>Configure Builder's Devtools</p> </div> </header> <div class="section-content"> <label class="ui-switch"> <div> <h3>Enable edit button in UI</h3> <p>Enables the edit button so you can edit content in Builder</p> </div> <input type="checkbox" role="switch" id="enable-edit" /> <span class="switcher"></span> </label> </div> </section> <div class="ui-toast" id="toast"></div> </aside> <button class="menu-toggle" aria-label="Toggle Builder Devtools"> <div> <div class="highlight-bg"></div> <svg viewBox="0 0 31 36" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M31 9.96854C31.0016 11.4553 30.6701 12.9236 30.03 14.2654C29.3898 15.6072 28.4572 16.7884 27.3007 17.7221L0.702841 2.61812C0.601104 2.56012 0.506714 2.49008 0.421705 2.40951C0.288323 2.27871 0.182333 2.12263 0.109928 1.95039C0.0375215 1.77814 0.000151253 1.59319 0 1.40633C0 1.03335 0.148098 0.675643 0.411715 0.411905C0.675332 0.148167 1.03287 0 1.40568 0L21.036 0C23.6786 0 26.213 1.05025 28.0816 2.91972C29.9502 4.78918 31 7.32472 31 9.96854Z" fill="#18B4F4" /> <path d="M31 25.4757C31.0004 26.7849 30.7429 28.0815 30.2423 29.2912C29.7417 30.5009 29.0078 31.6001 28.0825 32.526C27.1572 33.4519 26.0587 34.1864 24.8497 34.6875C23.6406 35.1886 22.3448 35.4465 21.0361 35.4465H1.40573C1.12766 35.4436 0.856725 35.3581 0.627199 35.201C0.397672 35.044 0.219871 34.8223 0.116289 34.5641C0.0127078 34.3059 -0.011999 34.0228 0.0452946 33.7505C0.102588 33.4783 0.239308 33.2292 0.438156 33.0347C0.517415 32.9551 0.606358 32.8858 0.702893 32.8284L11.1705 26.8843L27.2984 17.7244C28.4548 18.6579 29.3874 19.8387 30.028 21.18C30.6685 22.5213 31.0007 23.9891 31 25.4757Z" fill="#FD6B3C" /> <path d="M27.3011 17.7221L11.1709 26.8843L0.703209 32.8284C0.602697 32.8843 0.509784 32.9528 0.426758 33.0323C4.41799 28.9369 6.6496 23.442 6.64456 17.7221C6.65208 12.0015 4.42111 6.50517 0.429101 2.40948C0.51411 2.49005 0.6085 2.56009 0.710237 2.61809L27.3011 17.7221Z" fill="#A97FF2" /> </svg> </div> </button>\`,Nr(e),Br(e),Ur(e),Ar(e),Dr(e),Fr(e),this.setAttribute("aria-hidden","true"),e.getElementById("version").textContent="v1.5.10"}highlightOpener(){let e=this.shadowRoot.querySelector(".menu-toggle");e.classList.add("menu-toggle-highlight"),e.classList.add("menu-toggle-highlight-no-transition"),setTimeout(()=>{e.classList.remove("menu-toggle-highlight-no-transition"),setTimeout(()=>{e.classList.remove("menu-toggle-highlight")},20)},20)}};var ki=\`<style>*,*:before,*:after{box-sizing:border-box}html,body,:host{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:2147483646;margin:0;padding:0;line-height:1.8;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";background-color:#252525;color:#fff;transition:opacity .25s ease-in-out}:host([aria-hidden="true"]){opacity:0;pointer-events:none}main{position:absolute;top:0;left:0;width:100%;height:100vh}h1{margin-top:0;font-size:24px;font-weight:300;line-height:1.4}p{margin:20px 0;font-weight:300}button{cursor:pointer}aside{position:absolute;top:0;left:0;width:350px;height:100vh;padding:60px 0 0 50px;background-color:#121212}aside ul{margin:30px 0 0;padding:0;list-style:none}aside li{position:relative;margin:0;padding:20px 10px;font-weight:300}aside li.highlight{color:#48a1ff}aside li.active{font-weight:700}aside li .circle{position:absolute;top:20px;left:10px;width:24px;height:24px;border:3px solid white;border-radius:50%;font-size:14px}aside li.highlight .circle{border-color:#48a1ff}aside li.active .circle:after{content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background-color:#48a1ff}aside li.completed .circle{background-color:#48a1ff}aside li.completed .circle:after{content:"";position:absolute;top:2px;left:6px;width:6px;height:13px;border:3px solid black;border-top:none;border-left:none;transform:rotate(45deg)}aside li .line{position:absolute;top:44px;left:21px;width:3px;height:45px;background-color:#fff}aside li.completed .line{background-color:#48a1ff}aside li span{display:block;margin-left:44px}nav{margin-top:30px}section{position:absolute;top:135px;left:350px;padding:0 80px 0 140px;transition:opacity .15s ease-in-out}section[aria-hidden=true]{pointer-events:none;opacity:0}section h1,section p{min-width:300px;max-width:600px}.button{position:relative;display:inline-block;color:#fff;background-color:#48a1ff;border-radius:4px;text-decoration:none;padding:10px 40px 10px 20px;white-space:nowrap}.button:hover{background-color:#48a1ffd9}#button-icon{position:absolute;top:1px;right:5px;bottom:0;width:30px;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="none" stroke="white" stroke-linecap="square" stroke-miterlimit="10" stroke-width="48" d="M184 112l144 144-144 144"/></svg>');background-repeat:no-repeat;background-position:center;background-size:24px 24px}.button[aria-disabled=true]{opacity:.9;background-color:#ffffff4d;pointer-events:none;padding-right:60px}.button[aria-disabled=true] #button-icon{top:21px;right:29px;width:8px;height:8px;border-radius:4px;background:#fff;color:#fff;animation:dot-flashing .5s infinite linear alternate;animation-delay:.25s}.button[aria-disabled=true] #button-icon:before,.button[aria-disabled=true] #button-icon:after{content:"";display:inline-block;position:absolute;top:0}.button[aria-disabled=true] #button-icon:before{left:-12px;width:8px;height:8px;border-radius:4px;background-color:#fff;color:#fff;animation:dot-flashing .5s infinite alternate;animation-delay:0s}.button[aria-disabled=true] #button-icon:after{left:12px;width:8px;height:8px;border-radius:4px;background-color:#fff;color:#fff;animation:dot-flashing .5s infinite alternate;animation-delay:.5s}@keyframes dot-flashing{0%{background-color:#fff}50%,to{background-color:#ffffff4d}}.logo{margin-left:9px;background:url('data:image/svg+xml,<svg viewBox="0 0 150 32" fill="none" xmlns="http://www.w3.org/2000/svg" > <g clip-path="url(%23clip0_4_304)"> <path d="M27.9858 8.99927C27.9872 10.3415 27.688 11.667 27.1101 12.8783C26.5321 14.0896 25.6902 15.156 24.6462 15.9989V15.9989L0.634502 2.36355C0.542657 2.31119 0.457444 2.24796 0.380701 2.17523C0.260289 2.05715 0.164605 1.91624 0.0992389 1.76075C0.0338732 1.60525 0.000136546 1.43828 0 1.26959C0 0.932873 0.133698 0.609948 0.371683 0.371854C0.609667 0.13376 0.932443 0 1.269 0L18.9906 0C21.3763 0 23.6642 0.948135 25.3512 2.63583C27.0381 4.32352 27.9858 6.61252 27.9858 8.99927V8.99927Z" fill="%2318B4F4" /> <path d="M27.9858 22.9986C27.9861 24.1806 27.7536 25.351 27.3017 26.4431C26.8498 27.5352 26.1873 28.5275 25.352 29.3634C24.5167 30.1993 23.5249 30.8624 22.4335 31.3147C21.342 31.7671 20.1721 32 18.9907 32H1.26906C1.01802 31.9973 0.77343 31.9202 0.566221 31.7784C0.359012 31.6366 0.198499 31.4364 0.104989 31.2034C0.0114791 30.9703 -0.0108254 30.7147 0.0408974 30.4689C0.0926201 30.2231 0.216046 29.9982 0.395559 29.8226V29.8226C0.467112 29.7508 0.547407 29.6882 0.634555 29.6364L10.0844 24.2703L24.6441 16.001C25.688 16.8438 26.53 17.9097 27.1083 19.1206C27.6866 20.3315 27.9864 21.6566 27.9858 22.9986V22.9986Z" fill="%23FD6B3C" /> <path d="M24.6461 15.9989L10.0843 24.2703L0.634458 29.6365C0.54372 29.6868 0.459841 29.7487 0.384888 29.8205C3.98804 26.1233 6.00266 21.1627 5.99812 15.9989C6.0049 10.8346 3.99085 5.87268 0.387003 2.17523C0.463746 2.24796 0.548959 2.31119 0.640803 2.36355L24.6461 15.9989Z" fill="%23A97FF2" /> <path d="M47.6659 11.7352C51.8177 11.7352 54.1632 15.0531 54.1632 19.0714C54.1632 23.0896 51.8177 26.3821 47.6659 26.3821C45.5086 26.3821 43.8589 25.5188 42.9473 24.0545L42.5709 26.052H39.9736V6.77115H43.1884V13.8914C43.971 12.6959 45.5086 11.7352 47.6659 11.7352ZM47.0187 23.5488C49.4446 23.5488 50.9547 21.5809 50.9547 19.0714C50.9547 16.5089 49.4446 14.5664 47.0187 14.5664C44.5928 14.5664 43.0806 16.5047 43.0806 19.0714C43.0806 21.583 44.5653 23.5488 47.0187 23.5488V23.5488Z" fill="white" /> <path d="M65.4595 20.2859V12.0611H68.668V20.123C68.668 23.7202 67.0246 26.3821 62.4943 26.3821C57.9639 26.3821 56.3206 23.7117 56.3206 20.123V12.0611H59.529V20.2859C59.529 22.4696 60.5527 23.5488 62.49 23.5488C64.4274 23.5488 65.4595 22.4696 65.4595 20.2859Z" fill="white" /> <path d="M71.2355 7.74451C71.2247 7.46284 71.2724 7.18199 71.3755 6.91968C71.4787 6.65737 71.6351 6.41929 71.8348 6.22047C72.0345 6.02165 72.2732 5.8664 72.5359 5.76452C72.7986 5.66264 73.0796 5.61633 73.3611 5.62853C74.5793 5.62853 75.4571 6.50666 75.4571 7.75509C75.4571 9.00352 74.5793 9.8224 73.3611 9.8224C72.1428 9.8224 71.2355 8.9612 71.2355 7.74451Z" fill="white" /> <path d="M128.476 7.74451C128.465 7.46376 128.513 7.18383 128.615 6.92227C128.718 6.66071 128.873 6.42315 129.072 6.22449C129.27 6.02583 129.508 5.87035 129.769 5.7678C130.031 5.66524 130.31 5.61783 130.591 5.62852C131.809 5.62852 132.687 6.50666 132.687 7.75509C132.687 9.00352 131.809 9.8224 130.591 9.8224C129.373 9.8224 128.476 8.9612 128.476 7.74451Z" fill="white" /> <path d="M122.302 24.1031C122.291 23.8223 122.339 23.5422 122.441 23.2805C122.543 23.0188 122.699 22.7811 122.897 22.5824C123.096 22.3837 123.334 22.2282 123.595 22.1258C123.857 22.0233 124.137 21.9761 124.417 21.9872C125.636 21.9872 126.513 22.8653 126.513 24.1031C126.513 25.341 125.636 26.1726 124.417 26.1726C123.199 26.1726 122.302 25.3219 122.302 24.1031Z" fill="white" /> <path d="M74.9516 12.059H71.7432V26.0583H74.9516V12.059Z" fill="white" /> <path d="M78.16 26.0583V6.77115H81.3685V26.0626L78.16 26.0583Z" fill="white" /> <path d="M94.6063 6.77115H97.8148V26.0626H95.2239L94.8474 24.0651C93.9591 25.523 92.3094 26.3927 90.131 26.3927C86.0046 26.3927 83.6591 23.0748 83.6591 19.0819C83.6591 15.0891 86.0046 11.7458 90.131 11.7458C92.3137 11.7458 93.8238 12.7149 94.6063 13.902V6.77115ZM90.7993 14.5707C88.3734 14.5707 86.8633 16.5131 86.8633 19.0756C86.8633 21.5851 88.3734 23.553 90.7993 23.553C93.2252 23.553 94.7354 21.5851 94.7354 19.0756C94.7396 16.5047 93.257 14.5664 90.8036 14.5664L90.7993 14.5707Z" fill="white" /> <path d="M113.479 22.2284C112.482 24.7359 110.162 26.3821 107.117 26.3821C102.887 26.3821 100.137 23.225 100.137 19.0439C100.137 14.9706 102.942 11.7353 107.093 11.7353C111.245 11.7353 113.969 14.8902 113.969 18.991C113.982 19.3255 113.953 19.6604 113.883 19.9876H103.288C103.53 22.2009 104.959 23.6292 107.197 23.6292C108.735 23.6292 110.001 22.8738 110.594 21.473L113.479 22.2284ZM103.341 17.6156H110.784C110.513 15.6731 109.166 14.3506 107.089 14.3506C105.012 14.3506 103.665 15.7006 103.341 17.6156V17.6156Z" fill="white" /> <path d="M123.779 14.9452C123.538 14.9117 123.295 14.8933 123.051 14.8902C120.786 14.8902 119.439 16.0772 119.439 18.7751V26.0583H116.23V12.0611H118.821L119.195 14.0014C119.707 13.1127 120.887 11.9257 123.322 11.9257C123.455 11.9257 123.779 11.9532 123.779 11.9532V14.9452Z" fill="white" /> <path d="M132.192 12.059H128.984V26.0583H132.192V12.059Z" fill="white" /> <path d="M134.483 19.0714C134.483 15.1335 137.287 11.7353 141.735 11.7353C146.183 11.7353 149.015 15.1335 149.015 19.0714C149.015 23.0092 146.213 26.3821 141.735 26.3821C137.258 26.3821 134.483 23.0092 134.483 19.0714ZM141.735 23.5488C144.083 23.5488 145.806 21.7692 145.806 19.0714C145.806 16.3735 144.083 14.5664 141.735 14.5664C139.387 14.5664 137.687 16.346 137.687 19.0714C137.687 21.7968 139.417 23.5488 141.735 23.5488V23.5488Z" fill="white" /> </g> <defs> <clipPath id="clip0_4_304"> <rect width="149.015" height="32" fill="white" /> </clipPath> </defs> </svg>');background-repeat:no-repeat;width:150px;height:32px}@media (max-width: 840px){aside{width:250px;padding:60px 0 0 20px}section{left:250px;padding:0 80px}}@media (max-width: 590px){aside{width:230px;padding:60px 0 0 10px}section{left:230px;padding:0 40px}}#modified-files-message a{color:#cbcbcb;font-weight:300;text-decoration:underline}#modified-files-message a:hover{color:#fff;text-decoration:none}#restart-warning{border-radius:4px;padding:8px 16px;border:1px solid #fd6b3c;background:#fd6b3c1a}#react-router-steps{margin:0 0 5px;padding:0 20px}#need-help{color:#48a1ff;text-decoration:none}#router-message{border-radius:4px;padding:16px;border:1px solid #48a1ff}#router-finish-button{margin-top:12px}#router-checkbox-div{display:flex;align-items:center}#router-checkbox{margin-right:10px;width:15px;height:15px}#success-title{display:flex;align-items:center;gap:10px}#success-title .check-icon{display:inline-block;width:24px;height:24px;border:2px solid #28a745;border-radius:50%;position:relative}#success-title .check-icon:before{content:"";position:absolute;top:50%;left:50%;width:6px;height:12px;border:solid #28a745;border-width:0 2px 2px 0;transform:translate(-50%,-60%) rotate(45deg)}
|
|
42
|
+
\`,t.appendChild(e),setTimeout(()=>{e.classList.add("menu-toggle-tooltip-show"),e.addEventListener("click",()=>{e.classList.remove("menu-toggle-tooltip-show")})},1e3)};function Br(t){t.getElementById("go-to-builder").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),ue(t,!1),window.open(mn(),"builder")}),t.getElementById("components-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation();let u=t.querySelector(".nav-cmp-list .section-content");u.scrollTop=0,W(t,"nav-cmp-list"),Mr(t)}),t.getElementById("settings-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),W(t,"nav-settings")}),t.getElementById("add-page-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),ue(t,!1),window.open(Ee(),"builder")}),t.getElementById("import-from-figma").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),ue(t,!1),window.open("https://www.figma.com/community/plugin/747985167520967365/builder-io-ai-powered-figma-to-code-react-vue-tailwind-more")})}function Fr(t){let e=t.getElementById("enable-edit");e.addEventListener("change",n=>{n.stopPropagation(),bt(e.checked)}),e.checked=ke(),bt(e.checked)}var lt=class extends HTMLElement{constructor(){super()}connectedCallback(){let e=this.attachShadow({mode:"open"});e.innerHTML=\`<style>*,*:before,*:after{box-sizing:border-box}:host{--background-color: rgba(40, 40, 40, 1);--primary-color: rgba(72, 161, 255, 1);--primary-color-subdued: rgb(72, 161, 255, .6);--primary-color-highlight: rgb(126, 188, 255);--primary-contrast-color: white;--edit-color: #1d74e2;--edit-color-highlight: #1c6bd1;--edit-color-alpha: rgb(72, 161, 255, .15);--error-color: #ff2b55;--text-color: white;--text-color-highlight: white;--border-color: #454545;--button-background-color-hover: rgba(255, 255, 255, .1);--menu-width: 320px;--transition-time: .15s;--font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-family:var(--font-family);line-height:1.6}button{cursor:pointer;color:var(--text-color);-webkit-tap-highlight-color:transparent}input,select,button{font-family:var(--font-family)}.menu-toggle{position:absolute;right:0;bottom:0;pointer-events:auto;padding:8px;background:transparent;border:none;appearance:none}.menu-toggle div{position:relative;width:64px;height:64px;pointer-events:none;border-radius:50%;background:#000;border:1px solid white;box-shadow:#00000054 0 0 8px}.menu-toggle:hover div{background-color:var(--background-color);border:1px solid rgb(220,220,220)}.menu-toggle svg{position:absolute;top:15px;left:15px;width:33px;height:32px}div.highlight-bg{position:absolute;top:-1px;left:-1px;background-color:#1a1a1a;pointer-events:none;transition:all .4s ease-out;opacity:0}.menu-toggle-highlight-no-transition div.highlight-bg{transition:none}.menu-toggle-highlight div.highlight-bg{opacity:1}.menu-toggle-tooltip{position:absolute;bottom:0;right:0;width:382px;height:72px;padding:0;text-align:left;appearance:none;background-color:transparent;border:none;pointer-events:none;transform:translate3d(320px,0,0);opacity:0;transition:all .15s ease-in-out;color:#fff}.menu-toggle-tooltip.menu-toggle-tooltip-show{pointer-events:auto;opacity:1;transform:translateZ(0)}.menu-toggle-tooltip-content{position:absolute;inset:0 95px 10px 0;padding:8px 12px;background-color:var(--primary-color);box-shadow:#00000054 0 0 20px;border-radius:2px}.menu-toggle-tooltip-content:before{content:"";position:absolute;bottom:15px;right:-6px;width:30px;height:30px;background-color:var(--primary-color);transform:rotate(45deg)}.menu-toggle-tooltip:hover .menu-toggle-tooltip-content,.menu-toggle-tooltip:hover .menu-toggle-tooltip-content:before{background-color:var(--primary-color-highlight)}.menu-toggle-tooltip-content h3{margin:0;font-size:16px}.menu-toggle-tooltip-content p{margin:0;font-size:12px}section{position:absolute;display:grid;grid-template-rows:64px auto 64px;top:0;left:0;width:100%;height:100%;padding:0;pointer-events:none}.section-content{margin:0;padding:0 0 10px;font-weight:300;transform:translate3d(105%,0,0);transition:transform var(--transition-time) ease-in-out;overflow-y:auto}.section-content .error{color:var(--error-color);font-weight:700}section a{text-decoration:none;color:var(--text-color)}section h3,section p{margin-left:16px;margin-right:16px}.info{font-size:12px}ul.list{list-style:none;padding:0;margin:0}ul.list li{display:block;padding:0;margin:0}ul.list a,ul.list button{display:grid;grid-template-columns:24px auto;grid-gap:16px;padding:12px;margin:8px 0;border:none;background:transparent;appearance:none;width:100%;font-weight:300;text-align:left;text-decoration:none;color:var(--text-color)}ul.list a:hover,ul.list button:hover{text-decoration:none;color:var(--text-color);background-color:var(--button-background-color-hover)}ul.list a span,ul.list button span{display:block;font-size:16px;font-weight:500;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}header{position:relative;display:grid;grid-template-columns:44px 1fr;gap:8px;padding-left:8px;border-bottom:1px solid var(--border-color);transition:opacity var(--transition-time) ease-in-out;opacity:0;pointer-events:none}header>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-home header>div{margin-right:56px}header h2{margin:7px 0 0;font-size:18px;font-weight:500;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}header p{margin:2px 0 0;font-size:12px;font-weight:300;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}header p button{display:block;margin:0;padding:0;width:100%;font-size:12px;font-weight:300;text-decoration:none;appearance:none;text-align:left;background-color:transparent;border:none;color:var(--primary-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}header p button:hover{text-decoration:underline;color:var(--primary-color)}.builder-logo{margin:12px 0 0 8px}#close{display:block;position:absolute;appearance:none;background:transparent;border:none;border-radius:50%;margin:0;padding:0;right:4px;top:8px;width:48px;height:48px;z-index:1;opacity:.7}#close:hover{opacity:1;background-color:var(--button-background-color-hover)}#close svg{position:absolute;top:12px;left:12px;width:24px;height:24px;fill:currentColor;pointer-events:none}.back-button{position:relative;display:block;margin:7px 0 0 -2px;width:48px;height:48px;background:transparent;border:none;appearance:none;border-radius:50%}.back-button:hover{background-color:var(--button-background-color-hover)}.back-button svg{position:absolute;top:12px;left:12px;width:24px;height:24px;fill:currentColor;pointer-events:none}footer{border-top:1px solid var(--border-color);transition:opacity var(--transition-time) ease-in-out;opacity:0;pointer-events:none}section.nav-cmp-list{grid-template-rows:64px auto 120px}footer a{text-decoration:underline;color:var(--primary-color)}footer a:hover{color:var(--primary-color);text-decoration:none}.nav-list{padding:2px 0}.nav-loading{pointer-events:none}.nav-loading-icon{position:absolute;display:inline-block;top:170px;left:0;width:100%;transform:translateZ(0);pointer-events:auto;opacity:0;transition:all 50ms ease-in-out;transition-delay:50ms;pointer-events:none}.nav-loading .nav-loading-icon{opacity:.5}.nav-list h4{margin:8px 8px 8px 10px;font-size:14px;font-weight:600}.nav-list .nav-list-item+h4{margin-top:30px}.nav-list-item{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:relative;margin:2px 0;padding:8px 28px 8px 46px;width:100%;font-size:14px;font-weight:300;text-align:left;border:none;background:transparent;appearance:none}.nav-list-item:hover{background-color:var(--button-background-color-hover)}.nav-list-item-icon{position:absolute;top:4px;left:10px;width:24px;height:24px;object-fit:contain;filter:invert(100%);background-size:24px 24px;background-repeat:no-repeat;background-position:center center}.nav-list-item span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.nav-list-item:after{display:block;position:absolute;content:"";background-image:url('data:image/svg+xml,<svg width="8" height="14" viewBox="0 0 8 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L7 7L1 13" stroke="%23F2F2F2" stroke-opacity="0.5" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/></svg>');background-repeat:no-repeat;background-position:12px 9px;top:0;right:0;width:32px;height:32px;pointer-events:none}.nav-list-item-note{opacity:0;font-size:12px;padding-top:1px;text-align:right}.nav-list-item:hover .nav-list-item-note{opacity:.5}.ui-select{display:block;margin:8px 0 16px;padding:8px 16px;cursor:pointer}.ui-select h3{margin:0;font-size:14px;font-weight:500}.ui-select p{margin:8px 0;font-size:12px;font-weight:300}.ui-select .select{position:relative;margin:8px 0;border-radius:4px;padding:0;line-height:1.1;overflow:hidden;border:1px solid var(--border-color)}.ui-select select{appearance:none;background-color:transparent;border:none;outline:none;padding:8px 32px 8px 8px;margin:0;width:100%;font-size:14px;cursor:pointer;text-overflow:ellipsis;opacity:.6;color:var(--text-color)}.ui-select .select:after{content:"";top:6px;right:5px;width:24px;height:24px;position:absolute;background-image:url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="%23F2F2F2" d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"/></svg>');background-repeat:no-repeat;background-position:center;pointer-events:none;opacity:.6}.ui-select .select:hover{border-color:var(--primary-color-subdued)}.ui-text-input .select:focus-within{border-color:var(--primary-color)}.ui-text-input .select:focus-within select{opacity:1}.spinner:after{content:" ";display:block;width:32px;height:32px;margin:0 auto;pointer-events:auto;border-radius:50%;border:3px solid var(--text-color);border-color:var(--text-color) transparent var(--text-color) transparent;animation:spinner .75s linear infinite}@keyframes spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ui-switch{display:grid;grid-template-columns:auto 48px;grid-gap:20px;margin:8px 0 16px;padding:8px 0 8px 16px;cursor:pointer}.ui-switch>*{pointer-events:none}.ui-switch input{display:none;visibility:hidden}.ui-switch .switcher{display:inline-block;border-radius:100px;width:35px;height:14px;background-color:#ccc;position:relative;top:6px;vertical-align:middle;cursor:pointer}.ui-switch input[type=checkbox]:checked+.switcher{background-color:var(--primary-color-subdued)}.ui-switch .switcher:before{content:"";display:block;width:20px;height:20px;background-color:var(--text-color);box-shadow:0 1px 3px #0009;border-radius:50%;position:absolute;top:-3px;left:0;margin-right:0;transition:all .15s}.ui-switch input[type=checkbox]:checked+.switcher:before{left:100%;margin-left:-20px;background-color:var(--primary-color)}.ui-switch h3{margin:0;font-size:14px;font-weight:500}.ui-switch p{margin:4px 0 0;font-size:12px;font-weight:300}.ui-text-input{display:block;margin:8px 0 16px;padding:8px 16px;cursor:pointer}.ui-text-input h3{margin:0;font-size:14px;font-weight:500}.ui-text-input p{margin:8px 0;font-size:12px;font-weight:300}.ui-text-input .input{position:relative;margin:8px 0;border:1px solid var(--border-color);border-radius:4px;background:transparent;padding:2px;overflow:hidden}.ui-text-input input{display:block;width:235px;font-size:14px;border:none;background:transparent;padding:6px;appearance:none;color:var(--text-color);opacity:.6;outline:none}.ui-text-input .input:hover{border-color:var(--primary-color-subdued)}.ui-text-input .input:focus-within{border-color:var(--primary-color)}.ui-text-input .input:focus-within input{opacity:1}.ui-text-input .input:after{content:"";position:absolute;top:5px;right:14px;width:8px;height:17px;border:2px solid rgba(51,181,51,1);border-top:none;border-left:none;transform:rotate(45deg);opacity:0;transition:opacity 80ms ease-in-out;pointer-events:none}.ui-text-input.saved .input:after{opacity:1}.ui-toast{position:fixed;bottom:8px;left:8px;right:8px;padding:6px 12px;font-size:14px;border-radius:4px;transform:translate3d(0,150%,0);opacity:0;transition:all var(--transition-time) ease-in-out;background-color:var(--primary-color-subdued);color:var(--text-color);pointer-events:none}.ui-toast.ui-toast-show{transform:translateZ(0);opacity:1;pointer-events:auto}[data-view=nav-home] .nav-home .section-content,[data-view=nav-cmp-list] .nav-cmp-list .section-content,[data-view=nav-cmp-detail] .nav-cmp-detail .section-content,[data-view=nav-cmp-input] .nav-cmp-input .section-content,[data-view=nav-settings] .nav-settings .section-content{transform:translateZ(0);pointer-events:auto}[data-view=nav-home] .nav-home header,[data-view=nav-home] .nav-home footer,[data-view=nav-cmp-list] .nav-cmp-list header,[data-view=nav-cmp-list] .nav-cmp-list footer,[data-view=nav-cmp-detail] .nav-cmp-detail header,[data-view=nav-cmp-detail] .nav-cmp-detail footer,[data-view=nav-cmp-input] .nav-cmp-input header,[data-view=nav-cmp-input] .nav-cmp-input footer,[data-view=nav-settings] .nav-settings header,[data-view=nav-settings] .nav-settings footer{opacity:1;pointer-events:auto}[data-view=nav-cmp-list] .nav-home .section-content,[data-view=nav-cmp-detail] .nav-home .section-content,[data-view=nav-cmp-detail] .nav-cmp-list .section-content,[data-view=nav-cmp-input] .nav-home .section-content,[data-view=nav-cmp-input] .nav-cmp-list .section-content,[data-view=nav-cmp-input] .nav-cmp-detail .section-content,[data-view=nav-settings] .nav-home .section-content{transform:translate3d(-105%,0,0)}.cmp-item .nav-list-item-icon{background-image:url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20.83 16.809C20.94 16.561 21 16.289 21 16.008V7.99001C20.9994 7.64108 20.9066 7.29851 20.731 6.99699C20.5554 6.69547 20.3032 6.44571 20 6.27301L13 2.26501C12.6954 2.09103 12.3508 1.99951 12 1.99951C11.6492 1.99951 11.3046 2.09103 11 2.26501L7.988 3.99001M5.441 5.44801L4 6.27301C3.381 6.62801 3 7.28301 3 7.99101V16.009C3 16.718 3.381 17.372 4 17.726L11 21.734C11.3046 21.908 11.6492 21.9995 12 21.9995C12.3508 21.9995 12.6954 21.908 13 21.734L18.544 18.56" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/><path d="M12 22V12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/><path d="M14.532 10.538L20.73 6.95996" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/><path d="M3.27002 6.95996L12 12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/><path d="M3 3L21 21" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"/></svg>');opacity:.3}.cmp-item.registered .nav-list-item-icon{background-image:url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M21 16.008V7.99001C20.9994 7.64108 20.9066 7.29851 20.731 6.99699C20.5554 6.69547 20.3032 6.44571 20 6.27301L13 2.26501C12.6954 2.09103 12.3508 1.99951 12 1.99951C11.6492 1.99951 11.3046 2.09103 11 2.26501L4 6.27301C3.381 6.62801 3 7.28301 3 7.99101V16.009C3 16.718 3.381 17.372 4 17.726L11 21.734C11.3046 21.908 11.6492 21.9995 12 21.9995C12.3508 21.9995 12.6954 21.908 13 21.734L20 17.726C20.619 17.371 21 16.716 21 16.008Z" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M12 22V12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M12 12L20.73 6.95996" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M3.26999 6.95996L12 12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /></svg>');opacity:.8}.search-highlight{background-color:var(--primary-color-alpha);padding:0 2px;border-radius:2px;font-weight:500}.search-container{position:sticky;top:0;z-index:10;padding:12px 16px;background:var(--background-color);border-bottom:1px solid var(--border-color)}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:12px;color:var(--text-color-secondary);pointer-events:none}.component-search-input{width:100%;height:36px;padding:8px 36px;border:1px solid var(--border-color);border-radius:6px;background:var(--input-background);color:var(--text-color);font-size:14px;transition:border-color .2s,box-shadow .2s}.component-search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-color-alpha)}.component-search-input::placeholder{color:var(--text-color-tertiary)}.clear-search-button{position:absolute;right:8px;padding:4px;color:var(--text-color-secondary);border:none;background:transparent;border-radius:4px;cursor:pointer;opacity:0;transition:opacity .2s,background-color .2s;display:flex;align-items:center;justify-content:center}.clear-search-button:hover{background-color:var(--hover-color)}.component-search-input:not(:placeholder-shown)+.clear-search-button{opacity:1}.no-results{padding:32px 16px;text-align:center;color:var(--text-color-secondary);font-size:14px}#cmp-detail{position:relative}.cmp-loading{pointer-events:none!important}.cmp-loading-icon{position:absolute;display:inline-block;top:170px;left:0;width:100%;transform:translateZ(0);pointer-events:auto;opacity:0;transition:all 50ms ease-in-out;transition-delay:50ms;pointer-events:none}.cmp-loading .cmp-loading-icon{opacity:.5}.cmp-cover{position:absolute;top:160px;left:0;width:100%;height:100vh;background:var(--background-color);transform:translateZ(0);pointer-events:none;display:none}[data-view=nav-cmp-detail] .cmp-cover{display:block;pointer-events:auto}.cmp-enabled .cmp-cover{transform:translate3d(0,105%,0);pointer-events:none}.section-ready .cmp-cover{transition:all var(--transition-time) ease-in-out}.cmp-detail-inputs-container{margin:8px 0 16px;padding:0}.cmp-detail-inputs-container h3{margin:0 0 6px;padding-left:16px;padding-right:8px;font-size:14px;font-weight:500;display:flex;justify-content:space-between;align-items:center}.cmp-detail-inputs-reload{font-weight:300;font-size:.9em;text-decoration:none;appearance:none;text-align:left;background-color:transparent;border:none;color:var(--primary-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmp-detail-inputs-reload:hover{text-decoration:underline;color:var(--primary-color)}.cmp-detail-inputs-container .cmp-inputs-empty{padding:0;margin-top:12px;font-size:12px;font-weight:300;opacity:.5;font-style:italic}.cmp-detail-inputs-container .nav-list-item-icon{opacity:.8;background-size:20px 20px;background-position:4px center}.input-icon{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path></svg>')}.input-icon-array{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path> <path d="M10 16v-6a2 2 0 1 1 4 0v6"></path> <path d="M10 13h4"></path></svg>')}.input-icon-boolean{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path> <path d="M10 16h2a2 2 0 1 0 0 -4h-2h2a2 2 0 1 0 0 -4h-2v8z"></path></svg>')}.input-icon-number{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path> <path d="M10 16v-8l4 8v-8"></path></svg>')}.input-icon-object{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path> <path d="M12 8a2 2 0 0 1 2 2v4a2 2 0 1 1 -4 0v-4a2 2 0 0 1 2 -2z"></path></svg>')}.input-icon-string{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"></path> <path d="M10 15a1 1 0 0 0 1 1h2a1 1 0 0 0 1 -1v-2a1 1 0 0 0 -1 -1h-2a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1"></path></svg>')}.cmp-input-item-unregistered{opacity:.4}.cmp-input-item-unregistered .input-icon:after{content:"";position:absolute;top:11px;left:4px;width:20px;height:2px;background-color:#000;transform:rotate(-45deg)}.cmp-prop-info{border-bottom:1px solid var(--border-color)}.cmp-input-readonly{margin:16px 0;padding:0 16px;display:grid;grid-template-columns:50% 50%;gap:12px}.cmp-input-readonly h3{margin:0;font-size:14px;font-weight:500}.cmp-input-readonly span{margin-top:2px;font-size:12px;font-weight:300;opacity:.8}.cmp-input-detail{margin:16px 0}.cmp-input-detail a{color:var(--primary-color);text-decoration:none}.cmp-input-detail a:hover{text-decoration:underline}.input-cover{position:absolute;top:175px;left:0;width:100%;height:100%;background:var(--background-color);transform:translateZ(0);transition:all var(--transition-time) ease-in-out;pointer-events:auto}.input-enabled .input-cover{transform:translate3d(0,105%,0);pointer-events:none}.input-loading-icon{position:absolute;display:inline-block;top:190px;left:0;width:100%;transform:translateZ(0);pointer-events:auto;opacity:0;transition:all 50ms ease-in-out;transition-delay:50ms;pointer-events:none}.input-loading .input-loading-icon{opacity:.5}:host{position:fixed;inset:0;z-index:2147483646;user-select:none;pointer-events:none;color:var(--text-color)}aside{position:absolute;top:0;right:0;width:var(--menu-width);height:100%;transform:translate3d(105%,0,0);transition:transform var(--transition-time) ease-in-out;background:var(--background-color);box-shadow:#000000c9 5px 0 20px;overflow:hidden;z-index:1}:host(.show-builder-menu) aside{pointer-events:auto;transform:translateZ(0)}#hit{position:absolute;inset:0;display:none}:host(.show-builder-menu) #hit{display:block;pointer-events:auto}#version{position:absolute;bottom:6px;right:6px;font-size:8px;color:#9b9b9b}</style><div id="hit"></div> <aside data-view="nav-home"> <section class="nav-home"> <header> <svg class="builder-logo" viewBox="0 0 31 36" fill="none" xmlns="http://www.w3.org/2000/svg" > <path d="M31 9.96854C31.0016 11.4553 30.6701 12.9236 30.03 14.2654C29.3898 15.6072 28.4572 16.7884 27.3007 17.7221L0.702841 2.61812C0.601104 2.56012 0.506714 2.49008 0.421705 2.40951C0.288323 2.27871 0.182333 2.12263 0.109928 1.95039C0.0375215 1.77814 0.000151253 1.59319 0 1.40633C0 1.03335 0.148098 0.675643 0.411715 0.411905C0.675332 0.148167 1.03287 0 1.40568 0L21.036 0C23.6786 0 26.213 1.05025 28.0816 2.91972C29.9502 4.78918 31 7.32472 31 9.96854Z" fill="#18B4F4" /> <path d="M31 25.4757C31.0004 26.7849 30.7429 28.0815 30.2423 29.2912C29.7417 30.5009 29.0078 31.6001 28.0825 32.526C27.1572 33.4519 26.0587 34.1864 24.8497 34.6875C23.6406 35.1886 22.3448 35.4465 21.0361 35.4465H1.40573C1.12766 35.4436 0.856725 35.3581 0.627199 35.201C0.397672 35.044 0.219871 34.8223 0.116289 34.5641C0.0127078 34.3059 -0.011999 34.0228 0.0452946 33.7505C0.102588 33.4783 0.239308 33.2292 0.438156 33.0347C0.517415 32.9551 0.606358 32.8858 0.702893 32.8284L11.1705 26.8843L27.2984 17.7244C28.4548 18.6579 29.3874 19.8387 30.028 21.18C30.6685 22.5213 31.0007 23.9891 31 25.4757Z" fill="#FD6B3C" /> <path d="M27.3011 17.7221L11.1709 26.8843L0.703209 32.8284C0.602697 32.8843 0.509784 32.9528 0.426758 33.0323C4.41799 28.9369 6.6496 23.442 6.64456 17.7221C6.65208 12.0015 4.42111 6.50517 0.429101 2.40948C0.51411 2.49005 0.6085 2.56009 0.710237 2.61809L27.3011 17.7221Z" fill="#A97FF2" /> </svg> <div> <h2 class="builder-home-title">Builder Devtools</h2> <p><button id="go-to-builder">Go to Builder</button></p> </div> <button id="close" aria-label="Close Menu"> <svg viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round" > <path stroke="none" d="M0 0h24v24H0z" fill="none" /> <path d="M18 6l-12 12" /> <path d="M6 6l12 12" /> </svg> </button> </header> <div class="section-content"> <ul class="list"> <li> <button id="components-link"> <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" > <path d="M21 16.008V7.99001C20.9994 7.64108 20.9066 7.29851 20.731 6.99699C20.5554 6.69547 20.3032 6.44571 20 6.27301L13 2.26501C12.6954 2.09103 12.3508 1.99951 12 1.99951C11.6492 1.99951 11.3046 2.09103 11 2.26501L4 6.27301C3.381 6.62801 3 7.28301 3 7.99101V16.009C3 16.718 3.381 17.372 4 17.726L11 21.734C11.3046 21.908 11.6492 21.9995 12 21.9995C12.3508 21.9995 12.6954 21.908 13 21.734L20 17.726C20.619 17.371 21 16.716 21 16.008Z" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M12 22V12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M12 12L20.73 6.95996" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M3.26999 6.95996L12 12" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> </svg> <span>Components</span> </button> </li> <li> <button id="settings-link"> <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" > <path d="M10.325 4.317C10.751 2.561 13.249 2.561 13.675 4.317C13.7389 4.5808 13.8642 4.82578 14.0407 5.032C14.2172 5.23822 14.4399 5.39985 14.6907 5.50375C14.9414 5.60764 15.2132 5.65085 15.4838 5.62987C15.7544 5.60889 16.0162 5.5243 16.248 5.383C17.791 4.443 19.558 6.209 18.618 7.753C18.4769 7.98466 18.3924 8.24634 18.3715 8.51677C18.3506 8.78721 18.3938 9.05877 18.4975 9.30938C18.6013 9.55999 18.7627 9.78258 18.9687 9.95905C19.1747 10.1355 19.4194 10.2609 19.683 10.325C21.439 10.751 21.439 13.249 19.683 13.675C19.4192 13.7389 19.1742 13.8642 18.968 14.0407C18.7618 14.2172 18.6001 14.4399 18.4963 14.6907C18.3924 14.9414 18.3491 15.2132 18.3701 15.4838C18.3911 15.7544 18.4757 16.0162 18.617 16.248C19.557 17.791 17.791 19.558 16.247 18.618C16.0153 18.4769 15.7537 18.3924 15.4832 18.3715C15.2128 18.3506 14.9412 18.3938 14.6906 18.4975C14.44 18.6013 14.2174 18.7627 14.0409 18.9687C13.8645 19.1747 13.7391 19.4194 13.675 19.683C13.249 21.439 10.751 21.439 10.325 19.683C10.2611 19.4192 10.1358 19.1742 9.95929 18.968C9.7828 18.7618 9.56011 18.6001 9.30935 18.4963C9.05859 18.3924 8.78683 18.3491 8.51621 18.3701C8.24559 18.3911 7.98375 18.4757 7.752 18.617C6.209 19.557 4.442 17.791 5.382 16.247C5.5231 16.0153 5.60755 15.7537 5.62848 15.4832C5.64942 15.2128 5.60624 14.9412 5.50247 14.6906C5.3987 14.44 5.23726 14.2174 5.03127 14.0409C4.82529 13.8645 4.58056 13.7391 4.317 13.675C2.561 13.249 2.561 10.751 4.317 10.325C4.5808 10.2611 4.82578 10.1358 5.032 9.95929C5.23822 9.7828 5.39985 9.56011 5.50375 9.30935C5.60764 9.05859 5.65085 8.78683 5.62987 8.51621C5.60889 8.24559 5.5243 7.98375 5.383 7.752C4.443 6.209 6.209 4.442 7.753 5.382C8.753 5.99 10.049 5.452 10.325 4.317Z" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> <path d="M9 12C9 12.7956 9.31607 13.5587 9.87868 14.1213C10.4413 14.6839 11.2044 15 12 15C12.7956 15 13.5587 14.6839 14.1213 14.1213C14.6839 13.5587 15 12.7956 15 12C15 11.2044 14.6839 10.4413 14.1213 9.87868C13.5587 9.31607 12.7956 9 12 9C11.2044 9 10.4413 9.31607 9.87868 9.87868C9.31607 10.4413 9 11.2044 9 12Z" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" /> </svg> <span>Settings</span> </button> </li> <li> <button id="add-page-link"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round" > <path stroke="none" d="M0 0h24v24H0z" fill="none" /> <path d="M14 3v4a1 1 0 0 0 1 1h4" /> <path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z" /> <path d="M12 11l0 6" /> <path d="M9 14l6 0" /> </svg> <span>Add Builder Page</span> </button> </li> <li> <button id="import-from-figma"> <svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-brand-figma" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round" > <path stroke="none" d="M0 0h24v24H0z" fill="none" /> <path d="M15 12m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0" /> <path d="M6 3m0 3a3 3 0 0 1 3 -3h6a3 3 0 0 1 3 3v0a3 3 0 0 1 -3 3h-6a3 3 0 0 1 -3 -3z" /> <path d="M9 9a3 3 0 0 0 0 6h3m-3 0a3 3 0 1 0 3 3v-15" /> </svg> <span>Import From Figma</span> </button> </li> </ul> </div> <footer> <ul class="list"> <li> <a href="https://docs.google.com/forms/d/e/1FAIpQLSdqZcJpRtm_Ia5DTHP6SDY9Xa6LID3KiTjRWkjMzWyJRUtSHw/viewform" target="_blank" > <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" > <path d="M11.013 17.0114L10.013 18.0114L2.513 10.5834C2.0183 10.102 1.62864 9.52342 1.36854 8.88404C1.10845 8.24466 0.983558 7.55836 1.00173 6.86834C1.01991 6.17832 1.18076 5.49954 1.47415 4.87474C1.76755 4.24994 2.18713 3.69266 2.70648 3.23799C3.22583 2.78331 3.8337 2.4411 4.49181 2.23289C5.14991 2.02468 5.844 1.95499 6.53036 2.02821C7.21673 2.10143 7.8805 2.31596 8.47987 2.65831C9.07925 3.00066 9.60124 3.46341 10.013 4.01741C10.8086 2.95654 11.9931 2.2552 13.3059 2.06766C14.6186 1.88012 15.9521 2.22176 17.013 3.01741C18.0739 3.81306 18.7752 4.99755 18.9627 6.3103C19.1503 7.62305 18.8086 8.95654 18.013 10.0174" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> <path d="M18.2006 19.8175L16.0286 20.9555C15.9642 20.989 15.8917 21.004 15.8192 20.9987C15.7467 20.9934 15.6771 20.9681 15.6182 20.9256C15.5593 20.8831 15.5134 20.825 15.4855 20.7579C15.4577 20.6907 15.4491 20.6172 15.4606 20.5455L15.8756 18.1345L14.1186 16.4275C14.0662 16.3768 14.0291 16.3123 14.0115 16.2416C13.9939 16.1708 13.9966 16.0965 14.0192 16.0271C14.0418 15.9578 14.0835 15.8962 14.1394 15.8494C14.1954 15.8026 14.2634 15.7725 14.3356 15.7625L16.7636 15.4105L17.8496 13.2175C17.8821 13.1521 17.9322 13.0972 17.9942 13.0588C18.0562 13.0204 18.1277 13 18.2006 13C18.2736 13 18.3451 13.0204 18.4071 13.0588C18.4691 13.0972 18.5191 13.1521 18.5516 13.2175L19.6376 15.4105L22.0656 15.7625C22.1377 15.7728 22.2054 15.8031 22.2611 15.85C22.3168 15.8968 22.3583 15.9583 22.3809 16.0275C22.4034 16.0967 22.4062 16.1708 22.3888 16.2415C22.3715 16.3122 22.3347 16.3766 22.2826 16.4275L20.5256 18.1345L20.9396 20.5445C20.9521 20.6163 20.9441 20.6902 20.9166 20.7578C20.8891 20.8254 20.8433 20.8839 20.7842 20.9267C20.7252 20.9695 20.6553 20.9949 20.5825 21C20.5098 21.005 20.4371 20.9896 20.3726 20.9555L18.2006 19.8175Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> </svg> <span>Give Feedback</span> </a> </li> </ul> <div id="version"></div> </footer> </section> <section class="nav-cmp-list"> <header> <button class="back-button"> <svg viewBox="0 0 24 24"> <path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z" /> </svg> </button> <div class="search-container"> <div class="search-input-wrapper"> <svg class="search-icon" viewBox="0 0 24 24" width="16" height="16"> <path fill="none" stroke="currentColor" stroke-width="2" d="M15.5 15.5L20 20M10 17C6.13401 17 3 13.866 3 10C3 6.13401 6.13401 3 10 3C13.866 3 17 6.13401 17 10C17 13.866 13.866 17 10 17Z" /> </svg> <input type="text" id="component-search" class="component-search-input" placeholder="Search components..." autocomplete="off" spellcheck="false" /> <button id="clear-search" class="clear-search-button" type="button" aria-label="Clear search" > <svg viewBox="0 0 24 24" width="16" height="16"> <path fill="none" stroke="currentColor" stroke-width="2" d="M6 6l12 12M6 18L18 6" /> </svg> </button> </div> </div> <div> <h2>Custom Components</h2> <p> <button id="open-builder-registry"></button> </p> </div> </header> <div class="section-content"> <div id="cmp-list" class="cmp-list nav-list"></div> </div> <div class="nav-loading-icon spinner"></div> <footer> <p class="info"> Expand on Builder's selection of built-in blocks by <a target="_blank" href="https://www.builder.io/c/docs/custom-components-intro" >registering components</a > from your codebase. This way, teammates can drag and drop your components within Builder's Visual Editor just like any other block. </p> </footer> </section> <section class="nav-cmp-detail"> <header> <button class="back-button" data-back="nav-cmp-list"> <svg viewBox="0 0 24 24"> <path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z" /> </svg> </button> <div> <h2 id="cmp-detail-title"></h2> <p> <button id="cmp-open-source"></button> </p> </div> </header> <div class="section-content"> <div id="cmp-error"></div> <label class="ui-switch"> <div> <h3>Register Component</h3> <p> Registers this component so it can be used within Builder Visual CMS </p> </div> <input type="checkbox" role="switch" id="cmp-register" /> <span class="switcher"></span> </label> <div id="cmp-detail"> <label class="ui-text-input"> <h3>Component Name</h3> <div class="input"> <input type="text" id="cmp-name" autocapitalize="off" autocorrect="off" spellcheck="false" autocomplete="off" minlength="2" maxlength="30" required placeholder="e.g. My Counter" /> </div> <p> Unique name to identify this custom component within Builder. Press ESC to cancel </p> </label> <div class="cmp-detail-inputs-container"> <h3> <span>Builder Inputs (Props)</span> <button class="cmp-detail-inputs-reload" id="btn-inputs-reload"> Reload </button> </h3> <div id="cmp-detail-inputs"></div> </div> </div> </div> <div class="cmp-cover"></div> <div class="cmp-loading-icon spinner"></div> </section> <section class="nav-cmp-input"> <header> <button class="back-button" data-back="nav-cmp-detail"> <svg viewBox="0 0 24 24"> <path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z" /> </svg> </button> <div> <h2 id="cmp-input-title"></h2> <p> <button id="input-open-source"></button> </p> </div> </header> <div class="section-content"> <label class="ui-switch"> <div> <h3>Enable Input</h3> <p>Add this component prop as a Builder input</p> </div> <input type="checkbox" role="switch" id="input-register" /> <span class="switcher"></span> </label> <div class="cmp-prop-info"> <div class="cmp-input-readonly"> <h3>Prop Name</h3> <span id="cmp-prop-name"></span> </div> <div class="cmp-input-readonly"> <h3>Prop Type</h3> <span id="cmp-prop-type"></span> </div> </div> <div class="cmp-input-detail"> <label class="ui-text-input"> <h3>Builder Input Name</h3> <div class="input"> <input type="text" id="input-name" autocapitalize="off" autocorrect="off" spellcheck="false" autocomplete="off" minlength="1" maxlength="30" required placeholder="e.g. Text" /> </div> <p> Friendly name to identify this component prop as a Builder input. Press ESC to cancel </p> </label> <label class="ui-select"> <h3>Builder Input Type</h3> <div class="select"> <select id="input-type"></select> </div> <p> Correlate to what editing UI is appropriate for this Builder input. <a href="https://www.builder.io/c/docs/custom-components-input-types" target="_blank" >Read more about input types.</a > </p> </label> </div> <div class="input-cover"></div> <div class="input-loading-icon spinner"></div> </div> </section> <section class="nav-settings"> <header> <button class="back-button"> <svg viewBox="0 0 24 24"> <path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z" /> </svg> </button> <div> <h2>Settings</h2> <p>Configure Builder's Devtools</p> </div> </header> <div class="section-content"> <label class="ui-switch"> <div> <h3>Enable edit button in UI</h3> <p>Enables the edit button so you can edit content in Builder</p> </div> <input type="checkbox" role="switch" id="enable-edit" /> <span class="switcher"></span> </label> </div> </section> <div class="ui-toast" id="toast"></div> </aside> <button class="menu-toggle" aria-label="Toggle Builder Devtools"> <div> <div class="highlight-bg"></div> <svg viewBox="0 0 31 36" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M31 9.96854C31.0016 11.4553 30.6701 12.9236 30.03 14.2654C29.3898 15.6072 28.4572 16.7884 27.3007 17.7221L0.702841 2.61812C0.601104 2.56012 0.506714 2.49008 0.421705 2.40951C0.288323 2.27871 0.182333 2.12263 0.109928 1.95039C0.0375215 1.77814 0.000151253 1.59319 0 1.40633C0 1.03335 0.148098 0.675643 0.411715 0.411905C0.675332 0.148167 1.03287 0 1.40568 0L21.036 0C23.6786 0 26.213 1.05025 28.0816 2.91972C29.9502 4.78918 31 7.32472 31 9.96854Z" fill="#18B4F4" /> <path d="M31 25.4757C31.0004 26.7849 30.7429 28.0815 30.2423 29.2912C29.7417 30.5009 29.0078 31.6001 28.0825 32.526C27.1572 33.4519 26.0587 34.1864 24.8497 34.6875C23.6406 35.1886 22.3448 35.4465 21.0361 35.4465H1.40573C1.12766 35.4436 0.856725 35.3581 0.627199 35.201C0.397672 35.044 0.219871 34.8223 0.116289 34.5641C0.0127078 34.3059 -0.011999 34.0228 0.0452946 33.7505C0.102588 33.4783 0.239308 33.2292 0.438156 33.0347C0.517415 32.9551 0.606358 32.8858 0.702893 32.8284L11.1705 26.8843L27.2984 17.7244C28.4548 18.6579 29.3874 19.8387 30.028 21.18C30.6685 22.5213 31.0007 23.9891 31 25.4757Z" fill="#FD6B3C" /> <path d="M27.3011 17.7221L11.1709 26.8843L0.703209 32.8284C0.602697 32.8843 0.509784 32.9528 0.426758 33.0323C4.41799 28.9369 6.6496 23.442 6.64456 17.7221C6.65208 12.0015 4.42111 6.50517 0.429101 2.40948C0.51411 2.49005 0.6085 2.56009 0.710237 2.61809L27.3011 17.7221Z" fill="#A97FF2" /> </svg> </div> </button>\`,Nr(e),Br(e),Ur(e),Ar(e),Dr(e),Fr(e),this.setAttribute("aria-hidden","true"),e.getElementById("version").textContent="v1.5.11"}highlightOpener(){let e=this.shadowRoot.querySelector(".menu-toggle");e.classList.add("menu-toggle-highlight"),e.classList.add("menu-toggle-highlight-no-transition"),setTimeout(()=>{e.classList.remove("menu-toggle-highlight-no-transition"),setTimeout(()=>{e.classList.remove("menu-toggle-highlight")},20)},20)}};var ki=\`<style>*,*:before,*:after{box-sizing:border-box}html,body,:host{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:2147483646;margin:0;padding:0;line-height:1.8;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";background-color:#252525;color:#fff;transition:opacity .25s ease-in-out}:host([aria-hidden="true"]){opacity:0;pointer-events:none}main{position:absolute;top:0;left:0;width:100%;height:100vh}h1{margin-top:0;font-size:24px;font-weight:300;line-height:1.4}p{margin:20px 0;font-weight:300}button{cursor:pointer}aside{position:absolute;top:0;left:0;width:350px;height:100vh;padding:60px 0 0 50px;background-color:#121212}aside ul{margin:30px 0 0;padding:0;list-style:none}aside li{position:relative;margin:0;padding:20px 10px;font-weight:300}aside li.highlight{color:#48a1ff}aside li.active{font-weight:700}aside li .circle{position:absolute;top:20px;left:10px;width:24px;height:24px;border:3px solid white;border-radius:50%;font-size:14px}aside li.highlight .circle{border-color:#48a1ff}aside li.active .circle:after{content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background-color:#48a1ff}aside li.completed .circle{background-color:#48a1ff}aside li.completed .circle:after{content:"";position:absolute;top:2px;left:6px;width:6px;height:13px;border:3px solid black;border-top:none;border-left:none;transform:rotate(45deg)}aside li .line{position:absolute;top:44px;left:21px;width:3px;height:45px;background-color:#fff}aside li.completed .line{background-color:#48a1ff}aside li span{display:block;margin-left:44px}nav{margin-top:30px}section{position:absolute;top:135px;left:350px;padding:0 80px 0 140px;transition:opacity .15s ease-in-out}section[aria-hidden=true]{pointer-events:none;opacity:0}section h1,section p{min-width:300px;max-width:600px}.button{position:relative;display:inline-block;color:#fff;background-color:#48a1ff;border-radius:4px;text-decoration:none;padding:10px 40px 10px 20px;white-space:nowrap}.button:hover{background-color:#48a1ffd9}#button-icon{position:absolute;top:1px;right:5px;bottom:0;width:30px;background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="none" stroke="white" stroke-linecap="square" stroke-miterlimit="10" stroke-width="48" d="M184 112l144 144-144 144"/></svg>');background-repeat:no-repeat;background-position:center;background-size:24px 24px}.button[aria-disabled=true]{opacity:.9;background-color:#ffffff4d;pointer-events:none;padding-right:60px}.button[aria-disabled=true] #button-icon{top:21px;right:29px;width:8px;height:8px;border-radius:4px;background:#fff;color:#fff;animation:dot-flashing .5s infinite linear alternate;animation-delay:.25s}.button[aria-disabled=true] #button-icon:before,.button[aria-disabled=true] #button-icon:after{content:"";display:inline-block;position:absolute;top:0}.button[aria-disabled=true] #button-icon:before{left:-12px;width:8px;height:8px;border-radius:4px;background-color:#fff;color:#fff;animation:dot-flashing .5s infinite alternate;animation-delay:0s}.button[aria-disabled=true] #button-icon:after{left:12px;width:8px;height:8px;border-radius:4px;background-color:#fff;color:#fff;animation:dot-flashing .5s infinite alternate;animation-delay:.5s}@keyframes dot-flashing{0%{background-color:#fff}50%,to{background-color:#ffffff4d}}.logo{margin-left:9px;background:url('data:image/svg+xml,<svg viewBox="0 0 150 32" fill="none" xmlns="http://www.w3.org/2000/svg" > <g clip-path="url(%23clip0_4_304)"> <path d="M27.9858 8.99927C27.9872 10.3415 27.688 11.667 27.1101 12.8783C26.5321 14.0896 25.6902 15.156 24.6462 15.9989V15.9989L0.634502 2.36355C0.542657 2.31119 0.457444 2.24796 0.380701 2.17523C0.260289 2.05715 0.164605 1.91624 0.0992389 1.76075C0.0338732 1.60525 0.000136546 1.43828 0 1.26959C0 0.932873 0.133698 0.609948 0.371683 0.371854C0.609667 0.13376 0.932443 0 1.269 0L18.9906 0C21.3763 0 23.6642 0.948135 25.3512 2.63583C27.0381 4.32352 27.9858 6.61252 27.9858 8.99927V8.99927Z" fill="%2318B4F4" /> <path d="M27.9858 22.9986C27.9861 24.1806 27.7536 25.351 27.3017 26.4431C26.8498 27.5352 26.1873 28.5275 25.352 29.3634C24.5167 30.1993 23.5249 30.8624 22.4335 31.3147C21.342 31.7671 20.1721 32 18.9907 32H1.26906C1.01802 31.9973 0.77343 31.9202 0.566221 31.7784C0.359012 31.6366 0.198499 31.4364 0.104989 31.2034C0.0114791 30.9703 -0.0108254 30.7147 0.0408974 30.4689C0.0926201 30.2231 0.216046 29.9982 0.395559 29.8226V29.8226C0.467112 29.7508 0.547407 29.6882 0.634555 29.6364L10.0844 24.2703L24.6441 16.001C25.688 16.8438 26.53 17.9097 27.1083 19.1206C27.6866 20.3315 27.9864 21.6566 27.9858 22.9986V22.9986Z" fill="%23FD6B3C" /> <path d="M24.6461 15.9989L10.0843 24.2703L0.634458 29.6365C0.54372 29.6868 0.459841 29.7487 0.384888 29.8205C3.98804 26.1233 6.00266 21.1627 5.99812 15.9989C6.0049 10.8346 3.99085 5.87268 0.387003 2.17523C0.463746 2.24796 0.548959 2.31119 0.640803 2.36355L24.6461 15.9989Z" fill="%23A97FF2" /> <path d="M47.6659 11.7352C51.8177 11.7352 54.1632 15.0531 54.1632 19.0714C54.1632 23.0896 51.8177 26.3821 47.6659 26.3821C45.5086 26.3821 43.8589 25.5188 42.9473 24.0545L42.5709 26.052H39.9736V6.77115H43.1884V13.8914C43.971 12.6959 45.5086 11.7352 47.6659 11.7352ZM47.0187 23.5488C49.4446 23.5488 50.9547 21.5809 50.9547 19.0714C50.9547 16.5089 49.4446 14.5664 47.0187 14.5664C44.5928 14.5664 43.0806 16.5047 43.0806 19.0714C43.0806 21.583 44.5653 23.5488 47.0187 23.5488V23.5488Z" fill="white" /> <path d="M65.4595 20.2859V12.0611H68.668V20.123C68.668 23.7202 67.0246 26.3821 62.4943 26.3821C57.9639 26.3821 56.3206 23.7117 56.3206 20.123V12.0611H59.529V20.2859C59.529 22.4696 60.5527 23.5488 62.49 23.5488C64.4274 23.5488 65.4595 22.4696 65.4595 20.2859Z" fill="white" /> <path d="M71.2355 7.74451C71.2247 7.46284 71.2724 7.18199 71.3755 6.91968C71.4787 6.65737 71.6351 6.41929 71.8348 6.22047C72.0345 6.02165 72.2732 5.8664 72.5359 5.76452C72.7986 5.66264 73.0796 5.61633 73.3611 5.62853C74.5793 5.62853 75.4571 6.50666 75.4571 7.75509C75.4571 9.00352 74.5793 9.8224 73.3611 9.8224C72.1428 9.8224 71.2355 8.9612 71.2355 7.74451Z" fill="white" /> <path d="M128.476 7.74451C128.465 7.46376 128.513 7.18383 128.615 6.92227C128.718 6.66071 128.873 6.42315 129.072 6.22449C129.27 6.02583 129.508 5.87035 129.769 5.7678C130.031 5.66524 130.31 5.61783 130.591 5.62852C131.809 5.62852 132.687 6.50666 132.687 7.75509C132.687 9.00352 131.809 9.8224 130.591 9.8224C129.373 9.8224 128.476 8.9612 128.476 7.74451Z" fill="white" /> <path d="M122.302 24.1031C122.291 23.8223 122.339 23.5422 122.441 23.2805C122.543 23.0188 122.699 22.7811 122.897 22.5824C123.096 22.3837 123.334 22.2282 123.595 22.1258C123.857 22.0233 124.137 21.9761 124.417 21.9872C125.636 21.9872 126.513 22.8653 126.513 24.1031C126.513 25.341 125.636 26.1726 124.417 26.1726C123.199 26.1726 122.302 25.3219 122.302 24.1031Z" fill="white" /> <path d="M74.9516 12.059H71.7432V26.0583H74.9516V12.059Z" fill="white" /> <path d="M78.16 26.0583V6.77115H81.3685V26.0626L78.16 26.0583Z" fill="white" /> <path d="M94.6063 6.77115H97.8148V26.0626H95.2239L94.8474 24.0651C93.9591 25.523 92.3094 26.3927 90.131 26.3927C86.0046 26.3927 83.6591 23.0748 83.6591 19.0819C83.6591 15.0891 86.0046 11.7458 90.131 11.7458C92.3137 11.7458 93.8238 12.7149 94.6063 13.902V6.77115ZM90.7993 14.5707C88.3734 14.5707 86.8633 16.5131 86.8633 19.0756C86.8633 21.5851 88.3734 23.553 90.7993 23.553C93.2252 23.553 94.7354 21.5851 94.7354 19.0756C94.7396 16.5047 93.257 14.5664 90.8036 14.5664L90.7993 14.5707Z" fill="white" /> <path d="M113.479 22.2284C112.482 24.7359 110.162 26.3821 107.117 26.3821C102.887 26.3821 100.137 23.225 100.137 19.0439C100.137 14.9706 102.942 11.7353 107.093 11.7353C111.245 11.7353 113.969 14.8902 113.969 18.991C113.982 19.3255 113.953 19.6604 113.883 19.9876H103.288C103.53 22.2009 104.959 23.6292 107.197 23.6292C108.735 23.6292 110.001 22.8738 110.594 21.473L113.479 22.2284ZM103.341 17.6156H110.784C110.513 15.6731 109.166 14.3506 107.089 14.3506C105.012 14.3506 103.665 15.7006 103.341 17.6156V17.6156Z" fill="white" /> <path d="M123.779 14.9452C123.538 14.9117 123.295 14.8933 123.051 14.8902C120.786 14.8902 119.439 16.0772 119.439 18.7751V26.0583H116.23V12.0611H118.821L119.195 14.0014C119.707 13.1127 120.887 11.9257 123.322 11.9257C123.455 11.9257 123.779 11.9532 123.779 11.9532V14.9452Z" fill="white" /> <path d="M132.192 12.059H128.984V26.0583H132.192V12.059Z" fill="white" /> <path d="M134.483 19.0714C134.483 15.1335 137.287 11.7353 141.735 11.7353C146.183 11.7353 149.015 15.1335 149.015 19.0714C149.015 23.0092 146.213 26.3821 141.735 26.3821C137.258 26.3821 134.483 23.0092 134.483 19.0714ZM141.735 23.5488C144.083 23.5488 145.806 21.7692 145.806 19.0714C145.806 16.3735 144.083 14.5664 141.735 14.5664C139.387 14.5664 137.687 16.346 137.687 19.0714C137.687 21.7968 139.417 23.5488 141.735 23.5488V23.5488Z" fill="white" /> </g> <defs> <clipPath id="clip0_4_304"> <rect width="149.015" height="32" fill="white" /> </clipPath> </defs> </svg>');background-repeat:no-repeat;width:150px;height:32px}@media (max-width: 840px){aside{width:250px;padding:60px 0 0 20px}section{left:250px;padding:0 80px}}@media (max-width: 590px){aside{width:230px;padding:60px 0 0 10px}section{left:230px;padding:0 40px}}#modified-files-message a{color:#cbcbcb;font-weight:300;text-decoration:underline}#modified-files-message a:hover{color:#fff;text-decoration:none}#restart-warning{border-radius:4px;padding:8px 16px;border:1px solid #fd6b3c;background:#fd6b3c1a}#react-router-steps{margin:0 0 5px;padding:0 20px}#need-help{color:#48a1ff;text-decoration:none}#router-message{border-radius:4px;padding:16px;border:1px solid #48a1ff}#router-finish-button{margin-top:12px}#router-checkbox-div{display:flex;align-items:center}#router-checkbox{margin-right:10px;width:15px;height:15px}#success-title{display:flex;align-items:center;gap:10px}#success-title .check-icon{display:inline-block;width:24px;height:24px;border:2px solid #28a745;border-radius:50%;position:relative}#success-title .check-icon:before{content:"";position:absolute;top:50%;left:50%;width:6px;height:12px;border:solid #28a745;border-width:0 2px 2px 0;transform:translate(-50%,-60%) rotate(45deg)}
|
|
43
43
|
</style>\`,dt=class extends HTMLElement{constructor(){super()}connectedCallback(){let e=this.attachShadow({mode:"open"});e.innerHTML=ki+\`<main>
|
|
44
44
|
<aside>
|
|
45
45
|
<div class="logo"></div>
|
|
@@ -78,7 +78,7 @@ Visit https://www.docs.developers.amplitude.com/data/sdks/browser-2/#tracking-de
|
|
|
78
78
|
</nav>
|
|
79
79
|
</section>
|
|
80
80
|
</main>
|
|
81
|
-
\`,Oi();let n=new URL(yn,Oe);n.searchParams.set(gn,location.href);let r=e.querySelectorAll(".next-step");for(let i of r)i.setAttribute("href",n.href);se("overview step viewed")}},Oi=()=>{let t=document.head.querySelector("link[rel='icon'], link[rel='icon shortcut']");t?(t.href="https://cdn.builder.io/favicon.ico",t.removeAttribute("type")):(t=document.createElement("link"),t.rel="icon",t.href="https://cdn.builder.io/favicon.ico",document.head.appendChild(t))};var Vr=async()=>{(await Tn()).isValid||Ui()},Ui=()=>{customElements.get("builder-dev-tools-overview")||customElements.define("builder-dev-tools-overview",dt);let t=document.querySelector("builder-dev-tools-overview");t||(t=document.createElement("builder-dev-tools-overview"),t.setAttribute("aria-hidden","true"),document.body.appendChild(t)),setTimeout(()=>{t.removeAttribute("aria-hidden")},32)};var Mi=()=>{try{customElements.get("builder-dev-tools-edit")||customElements.define("builder-dev-tools-edit",Ue),customElements.get("builder-dev-tools-menu")||customElements.define("builder-dev-tools-menu",lt);let t=document.querySelector("builder-dev-tools-menu");t||(t=document.createElement("builder-dev-tools-menu"),t.setAttribute("data-version","1.5.
|
|
81
|
+
\`,Oi();let n=new URL(yn,Oe);n.searchParams.set(gn,location.href);let r=e.querySelectorAll(".next-step");for(let i of r)i.setAttribute("href",n.href);se("overview step viewed")}},Oi=()=>{let t=document.head.querySelector("link[rel='icon'], link[rel='icon shortcut']");t?(t.href="https://cdn.builder.io/favicon.ico",t.removeAttribute("type")):(t=document.createElement("link"),t.rel="icon",t.href="https://cdn.builder.io/favicon.ico",document.head.appendChild(t))};var Vr=async()=>{(await Tn()).isValid||Ui()},Ui=()=>{customElements.get("builder-dev-tools-overview")||customElements.define("builder-dev-tools-overview",dt);let t=document.querySelector("builder-dev-tools-overview");t||(t=document.createElement("builder-dev-tools-overview"),t.setAttribute("aria-hidden","true"),document.body.appendChild(t)),setTimeout(()=>{t.removeAttribute("aria-hidden")},32)};var Mi=()=>{try{customElements.get("builder-dev-tools-edit")||customElements.define("builder-dev-tools-edit",Ue),customElements.get("builder-dev-tools-menu")||customElements.define("builder-dev-tools-menu",lt);let t=document.querySelector("builder-dev-tools-menu");t||(t=document.createElement("builder-dev-tools-menu"),t.setAttribute("data-version","1.5.11"),document.body.appendChild(t));let e=document.querySelector("builder-dev-tools-edit");e||(e=document.createElement("builder-dev-tools-edit"),document.body.appendChild(e));let n=document.getElementById("builder-dev-tools-style");n||(n=document.createElement("style"),n.id="builder-dev-tools-style",n.innerHTML=".builder-no-scroll{overflow:hidden !important}",document.head.appendChild(n)),Vr(),Pr()}catch(t){console.error("Builder Devtools:",t)}};window.location===window.parent.location&&(console.debug("Builder.io Devtools v1.5.11"),Mi());})();`)}async function ai(e){return si(e,`<!DOCTYPE html>
|
|
82
82
|
<html lang="en" dir="ltr">
|
|
83
83
|
<head>
|
|
84
84
|
<meta charset="utf-8" />
|
|
@@ -244,66 +244,66 @@ Visit https://www.docs.developers.amplitude.com/data/sdks/browser-2/#tracking-de
|
|
|
244
244
|
</script>
|
|
245
245
|
</body>
|
|
246
246
|
</html>
|
|
247
|
-
`)}async function qo(e,t){let n=await Ao(e),r=e.getFrameworks();return t.replace(/__LOCAL_APP_ID__/g,n).replace(/__DEV_TOOLS_URL__/g,e.devToolsServerUrl).replace(/__CLIENT_ID__/g,e.getClientId()).replace(/__FRAMEWORK__/g,r.length?r[0].name:"")}import{platform as us}from"node:os";async function Jo(e,t){let n=new URL("/cli-auth","https://builder.io");n.searchParams.set("client_id",e.getClientId()),n.searchParams.set("host",await e.getDeviceId()),n.searchParams.set("response_type","code"),n.searchParams.set("cli","true");let r=new URL(lt,e.devToolsServerUrl);r.searchParams.set(lr,us()),r.searchParams.set(cr,process.versions.node);let i=e.getFrameworks();return i.length>0&&(n.searchParams.set(Et,i[0].name),r.searchParams.set(Et,i[0].name)),n.searchParams.set("redirect_url",r.href),n.searchParams.set("preview_url",t),n.href}import{createServer as Fm}from"http";import{platform as Sm}from"os";import{join as Do}from"path";import{existsSync as Iu,mkdirSync as Am,readFileSync as Bu,writeFileSync as ym}from"fs";var ge=pe(gr(),1);import{stdin as ds,stdout as Ds}from"node:process";import Qo from"node:readline";import{WriteStream as gs}from"node:tty";function Cs({onlyFirst:e=!1}={}){let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}var hs=Cs();function oi(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(hs,"")}function ii(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ai={exports:{}};(function(e){var t={};e.exports=t,t.eastAsianWidth=function(r){var i=r.charCodeAt(0),a=r.length==2?r.charCodeAt(1):0,o=i;return 55296<=i&&i<=56319&&56320<=a&&a<=57343&&(i&=1023,a&=1023,o=i<<10|a,o+=65536),o==12288||65281<=o&&o<=65376||65504<=o&&o<=65510?"F":o==8361||65377<=o&&o<=65470||65474<=o&&o<=65479||65482<=o&&o<=65487||65490<=o&&o<=65495||65498<=o&&o<=65500||65512<=o&&o<=65518?"H":4352<=o&&o<=4447||4515<=o&&o<=4519||4602<=o&&o<=4607||9001<=o&&o<=9002||11904<=o&&o<=11929||11931<=o&&o<=12019||12032<=o&&o<=12245||12272<=o&&o<=12283||12289<=o&&o<=12350||12353<=o&&o<=12438||12441<=o&&o<=12543||12549<=o&&o<=12589||12593<=o&&o<=12686||12688<=o&&o<=12730||12736<=o&&o<=12771||12784<=o&&o<=12830||12832<=o&&o<=12871||12880<=o&&o<=13054||13056<=o&&o<=19903||19968<=o&&o<=42124||42128<=o&&o<=42182||43360<=o&&o<=43388||44032<=o&&o<=55203||55216<=o&&o<=55238||55243<=o&&o<=55291||63744<=o&&o<=64255||65040<=o&&o<=65049||65072<=o&&o<=65106||65108<=o&&o<=65126||65128<=o&&o<=65131||110592<=o&&o<=110593||127488<=o&&o<=127490||127504<=o&&o<=127546||127552<=o&&o<=127560||127568<=o&&o<=127569||131072<=o&&o<=194367||177984<=o&&o<=196605||196608<=o&&o<=262141?"W":32<=o&&o<=126||162<=o&&o<=163||165<=o&&o<=166||o==172||o==175||10214<=o&&o<=10221||10629<=o&&o<=10630?"Na":o==161||o==164||167<=o&&o<=168||o==170||173<=o&&o<=174||176<=o&&o<=180||182<=o&&o<=186||188<=o&&o<=191||o==198||o==208||215<=o&&o<=216||222<=o&&o<=225||o==230||232<=o&&o<=234||236<=o&&o<=237||o==240||242<=o&&o<=243||247<=o&&o<=250||o==252||o==254||o==257||o==273||o==275||o==283||294<=o&&o<=295||o==299||305<=o&&o<=307||o==312||319<=o&&o<=322||o==324||328<=o&&o<=331||o==333||338<=o&&o<=339||358<=o&&o<=359||o==363||o==462||o==464||o==466||o==468||o==470||o==472||o==474||o==476||o==593||o==609||o==708||o==711||713<=o&&o<=715||o==717||o==720||728<=o&&o<=731||o==733||o==735||768<=o&&o<=879||913<=o&&o<=929||931<=o&&o<=937||945<=o&&o<=961||963<=o&&o<=969||o==1025||1040<=o&&o<=1103||o==1105||o==8208||8211<=o&&o<=8214||8216<=o&&o<=8217||8220<=o&&o<=8221||8224<=o&&o<=8226||8228<=o&&o<=8231||o==8240||8242<=o&&o<=8243||o==8245||o==8251||o==8254||o==8308||o==8319||8321<=o&&o<=8324||o==8364||o==8451||o==8453||o==8457||o==8467||o==8470||8481<=o&&o<=8482||o==8486||o==8491||8531<=o&&o<=8532||8539<=o&&o<=8542||8544<=o&&o<=8555||8560<=o&&o<=8569||o==8585||8592<=o&&o<=8601||8632<=o&&o<=8633||o==8658||o==8660||o==8679||o==8704||8706<=o&&o<=8707||8711<=o&&o<=8712||o==8715||o==8719||o==8721||o==8725||o==8730||8733<=o&&o<=8736||o==8739||o==8741||8743<=o&&o<=8748||o==8750||8756<=o&&o<=8759||8764<=o&&o<=8765||o==8776||o==8780||o==8786||8800<=o&&o<=8801||8804<=o&&o<=8807||8810<=o&&o<=8811||8814<=o&&o<=8815||8834<=o&&o<=8835||8838<=o&&o<=8839||o==8853||o==8857||o==8869||o==8895||o==8978||9312<=o&&o<=9449||9451<=o&&o<=9547||9552<=o&&o<=9587||9600<=o&&o<=9615||9618<=o&&o<=9621||9632<=o&&o<=9633||9635<=o&&o<=9641||9650<=o&&o<=9651||9654<=o&&o<=9655||9660<=o&&o<=9661||9664<=o&&o<=9665||9670<=o&&o<=9672||o==9675||9678<=o&&o<=9681||9698<=o&&o<=9701||o==9711||9733<=o&&o<=9734||o==9737||9742<=o&&o<=9743||9748<=o&&o<=9749||o==9756||o==9758||o==9792||o==9794||9824<=o&&o<=9825||9827<=o&&o<=9829||9831<=o&&o<=9834||9836<=o&&o<=9837||o==9839||9886<=o&&o<=9887||9918<=o&&o<=9919||9924<=o&&o<=9933||9935<=o&&o<=9953||o==9955||9960<=o&&o<=9983||o==10045||o==10071||10102<=o&&o<=10111||11093<=o&&o<=11097||12872<=o&&o<=12879||57344<=o&&o<=63743||65024<=o&&o<=65039||o==65533||127232<=o&&o<=127242||127248<=o&&o<=127277||127280<=o&&o<=127337||127344<=o&&o<=127386||917760<=o&&o<=917999||983040<=o&&o<=1048573||1048576<=o&&o<=1114109?"A":"N"},t.characterLength=function(r){var i=this.eastAsianWidth(r);return i=="F"||i=="W"||i=="A"?2:1};function n(r){return r.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}t.length=function(r){for(var i=n(r),a=0,o=0;o<i.length;o++)a=a+this.characterLength(i[o]);return a},t.slice=function(r,i,a){textLen=t.length(r),i=i||0,a=a||1,i<0&&(i=textLen+i),a<0&&(a=textLen+a);for(var o="",u=0,s=n(r),l=0;l<s.length;l++){var c=s[l],p=t.length(c);if(u>=i-(p==2?1:0))if(u+p<=a)o+=c;else break;u+=p}return o}})(ai);var Es=ai.exports,xs=ii(Es),Fs=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g},Ss=ii(Fs);function Ut(e,t={}){if(typeof e!="string"||e.length===0||(t={ambiguousIsNarrow:!0,...t},e=oi(e),e.length===0))return 0;e=e.replace(Ss()," ");let n=t.ambiguousIsNarrow?1:2,r=0;for(let i of e){let a=i.codePointAt(0);if(!(a<=31||a>=127&&a<=159||a>=768&&a<=879))switch(xs.eastAsianWidth(i)){case"F":case"W":r+=2;break;case"A":r+=n;break;default:r+=1}}return r}var on=10,Yo=(e=0)=>t=>`\x1B[${t+e}m`,Xo=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,Zo=(e=0)=>(t,n,r)=>`\x1B[${38+e};2;${t};${n};${r}m`,q={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(q.modifier);var As=Object.keys(q.color),ys=Object.keys(q.bgColor);[...As,...ys];function vs(){let e=new Map;for(let[t,n]of Object.entries(q)){for(let[r,i]of Object.entries(n))q[r]={open:`\x1B[${i[0]}m`,close:`\x1B[${i[1]}m`},n[r]=q[r],e.set(i[0],i[1]);Object.defineProperty(q,t,{value:n,enumerable:!1})}return Object.defineProperty(q,"codes",{value:e,enumerable:!1}),q.color.close="\x1B[39m",q.bgColor.close="\x1B[49m",q.color.ansi=Yo(),q.color.ansi256=Xo(),q.color.ansi16m=Zo(),q.bgColor.ansi=Yo(on),q.bgColor.ansi256=Xo(on),q.bgColor.ansi16m=Zo(on),Object.defineProperties(q,{rgbToAnsi256:{value:(t,n,r)=>t===n&&n===r?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5),enumerable:!1},hexToRgb:{value:t=>{let n=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!n)return[0,0,0];let[r]=n;r.length===3&&(r=[...r].map(a=>a+a).join(""));let i=Number.parseInt(r,16);return[i>>16&255,i>>8&255,i&255]},enumerable:!1},hexToAnsi256:{value:t=>q.rgbToAnsi256(...q.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let n,r,i;if(t>=232)n=((t-232)*10+8)/255,r=n,i=n;else{t-=16;let u=t%36;n=Math.floor(t/36)/5,r=Math.floor(u/6)/5,i=u%6/5}let a=Math.max(n,r,i)*2;if(a===0)return 30;let o=30+(Math.round(i)<<2|Math.round(r)<<1|Math.round(n));return a===2&&(o+=60),o},enumerable:!1},rgbToAnsi:{value:(t,n,r)=>q.ansi256ToAnsi(q.rgbToAnsi256(t,n,r)),enumerable:!1},hexToAnsi:{value:t=>q.ansi256ToAnsi(q.hexToAnsi256(t)),enumerable:!1}}),q}var bs=vs(),Fr=new Set(["\x1B","\x9B"]),ws=39,sn="\x07",ui="[",Ps="]",si="m",ln=`${Ps}8;;`,ei=e=>`${Fr.values().next().value}${ui}${e}${si}`,ti=e=>`${Fr.values().next().value}${ln}${e}${sn}`,Ts=e=>e.split(" ").map(t=>Ut(t)),an=(e,t,n)=>{let r=[...t],i=!1,a=!1,o=Ut(oi(e[e.length-1]));for(let[u,s]of r.entries()){let l=Ut(s);if(o+l<=n?e[e.length-1]+=s:(e.push(s),o=0),Fr.has(s)&&(i=!0,a=r.slice(u+1).join("").startsWith(ln)),i){a?s===sn&&(i=!1,a=!1):s===si&&(i=!1);continue}o+=l,o===n&&u<r.length-1&&(e.push(""),o=0)}!o&&e[e.length-1].length>0&&e.length>1&&(e[e.length-2]+=e.pop())},Is=e=>{let t=e.split(" "),n=t.length;for(;n>0&&!(Ut(t[n-1])>0);)n--;return n===t.length?e:t.slice(0,n).join(" ")+t.slice(n).join("")},Bs=(e,t,n={})=>{if(n.trim!==!1&&e.trim()==="")return"";let r="",i,a,o=Ts(e),u=[""];for(let[l,c]of e.split(" ").entries()){n.trim!==!1&&(u[u.length-1]=u[u.length-1].trimStart());let p=Ut(u[u.length-1]);if(l!==0&&(p>=t&&(n.wordWrap===!1||n.trim===!1)&&(u.push(""),p=0),(p>0||n.trim===!1)&&(u[u.length-1]+=" ",p++)),n.hard&&o[l]>t){let m=t-p,C=1+Math.floor((o[l]-m-1)/t);Math.floor((o[l]-1)/t)<C&&u.push(""),an(u,c,t);continue}if(p+o[l]>t&&p>0&&o[l]>0){if(n.wordWrap===!1&&p<t){an(u,c,t);continue}u.push("")}if(p+o[l]>t&&n.wordWrap===!1){an(u,c,t);continue}u[u.length-1]+=c}n.trim!==!1&&(u=u.map(l=>Is(l)));let s=[...u.join(`
|
|
248
|
-
`)];for(let[l
|
|
249
|
-
`?(a&&(
|
|
250
|
-
`&&(i&&p&&(
|
|
247
|
+
`)}async function si(e,t){let r=await jo(e),n=e.getFrameworks();return t.replace(/__LOCAL_APP_ID__/g,r).replace(/__DEV_TOOLS_URL__/g,e.devToolsServerUrl).replace(/__CLIENT_ID__/g,e.getClientId()).replace(/__FRAMEWORK__/g,n.length?n[0].name:"")}import{platform as cc}from"node:os";async function ui(e,t){let r=new URL("/cli-auth","https://builder.io");r.searchParams.set("client_id",e.getClientId()),r.searchParams.set("host",await e.getDeviceId()),r.searchParams.set("response_type","code"),r.searchParams.set("cli","true");let n=new URL(ft,e.devToolsServerUrl);n.searchParams.set(xn,cc()),n.searchParams.set(En,process.versions.node);let i=e.getFrameworks();return i.length>0&&(r.searchParams.set(At,i[0].name),n.searchParams.set(At,i[0].name)),r.searchParams.set("redirect_url",n.href),r.searchParams.set("preview_url",t),r.href}import{createServer as Zf}from"http";import{platform as ed}from"os";import{join as Ro}from"path";import{existsSync as Ru,mkdirSync as td,readFileSync as Nu,writeFileSync as nd}from"fs";var ge=se(An(),1);import{stdin as gc,stdout as hc}from"node:process";import mi from"node:readline";import{WriteStream as Cc}from"node:tty";function xc({onlyFirst:e=!1}={}){let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}var Ec=xc();function Ei(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(Ec,"")}function Fi(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var yi={exports:{}};(function(e){var t={};e.exports=t,t.eastAsianWidth=function(n){var i=n.charCodeAt(0),a=n.length==2?n.charCodeAt(1):0,o=i;return 55296<=i&&i<=56319&&56320<=a&&a<=57343&&(i&=1023,a&=1023,o=i<<10|a,o+=65536),o==12288||65281<=o&&o<=65376||65504<=o&&o<=65510?"F":o==8361||65377<=o&&o<=65470||65474<=o&&o<=65479||65482<=o&&o<=65487||65490<=o&&o<=65495||65498<=o&&o<=65500||65512<=o&&o<=65518?"H":4352<=o&&o<=4447||4515<=o&&o<=4519||4602<=o&&o<=4607||9001<=o&&o<=9002||11904<=o&&o<=11929||11931<=o&&o<=12019||12032<=o&&o<=12245||12272<=o&&o<=12283||12289<=o&&o<=12350||12353<=o&&o<=12438||12441<=o&&o<=12543||12549<=o&&o<=12589||12593<=o&&o<=12686||12688<=o&&o<=12730||12736<=o&&o<=12771||12784<=o&&o<=12830||12832<=o&&o<=12871||12880<=o&&o<=13054||13056<=o&&o<=19903||19968<=o&&o<=42124||42128<=o&&o<=42182||43360<=o&&o<=43388||44032<=o&&o<=55203||55216<=o&&o<=55238||55243<=o&&o<=55291||63744<=o&&o<=64255||65040<=o&&o<=65049||65072<=o&&o<=65106||65108<=o&&o<=65126||65128<=o&&o<=65131||110592<=o&&o<=110593||127488<=o&&o<=127490||127504<=o&&o<=127546||127552<=o&&o<=127560||127568<=o&&o<=127569||131072<=o&&o<=194367||177984<=o&&o<=196605||196608<=o&&o<=262141?"W":32<=o&&o<=126||162<=o&&o<=163||165<=o&&o<=166||o==172||o==175||10214<=o&&o<=10221||10629<=o&&o<=10630?"Na":o==161||o==164||167<=o&&o<=168||o==170||173<=o&&o<=174||176<=o&&o<=180||182<=o&&o<=186||188<=o&&o<=191||o==198||o==208||215<=o&&o<=216||222<=o&&o<=225||o==230||232<=o&&o<=234||236<=o&&o<=237||o==240||242<=o&&o<=243||247<=o&&o<=250||o==252||o==254||o==257||o==273||o==275||o==283||294<=o&&o<=295||o==299||305<=o&&o<=307||o==312||319<=o&&o<=322||o==324||328<=o&&o<=331||o==333||338<=o&&o<=339||358<=o&&o<=359||o==363||o==462||o==464||o==466||o==468||o==470||o==472||o==474||o==476||o==593||o==609||o==708||o==711||713<=o&&o<=715||o==717||o==720||728<=o&&o<=731||o==733||o==735||768<=o&&o<=879||913<=o&&o<=929||931<=o&&o<=937||945<=o&&o<=961||963<=o&&o<=969||o==1025||1040<=o&&o<=1103||o==1105||o==8208||8211<=o&&o<=8214||8216<=o&&o<=8217||8220<=o&&o<=8221||8224<=o&&o<=8226||8228<=o&&o<=8231||o==8240||8242<=o&&o<=8243||o==8245||o==8251||o==8254||o==8308||o==8319||8321<=o&&o<=8324||o==8364||o==8451||o==8453||o==8457||o==8467||o==8470||8481<=o&&o<=8482||o==8486||o==8491||8531<=o&&o<=8532||8539<=o&&o<=8542||8544<=o&&o<=8555||8560<=o&&o<=8569||o==8585||8592<=o&&o<=8601||8632<=o&&o<=8633||o==8658||o==8660||o==8679||o==8704||8706<=o&&o<=8707||8711<=o&&o<=8712||o==8715||o==8719||o==8721||o==8725||o==8730||8733<=o&&o<=8736||o==8739||o==8741||8743<=o&&o<=8748||o==8750||8756<=o&&o<=8759||8764<=o&&o<=8765||o==8776||o==8780||o==8786||8800<=o&&o<=8801||8804<=o&&o<=8807||8810<=o&&o<=8811||8814<=o&&o<=8815||8834<=o&&o<=8835||8838<=o&&o<=8839||o==8853||o==8857||o==8869||o==8895||o==8978||9312<=o&&o<=9449||9451<=o&&o<=9547||9552<=o&&o<=9587||9600<=o&&o<=9615||9618<=o&&o<=9621||9632<=o&&o<=9633||9635<=o&&o<=9641||9650<=o&&o<=9651||9654<=o&&o<=9655||9660<=o&&o<=9661||9664<=o&&o<=9665||9670<=o&&o<=9672||o==9675||9678<=o&&o<=9681||9698<=o&&o<=9701||o==9711||9733<=o&&o<=9734||o==9737||9742<=o&&o<=9743||9748<=o&&o<=9749||o==9756||o==9758||o==9792||o==9794||9824<=o&&o<=9825||9827<=o&&o<=9829||9831<=o&&o<=9834||9836<=o&&o<=9837||o==9839||9886<=o&&o<=9887||9918<=o&&o<=9919||9924<=o&&o<=9933||9935<=o&&o<=9953||o==9955||9960<=o&&o<=9983||o==10045||o==10071||10102<=o&&o<=10111||11093<=o&&o<=11097||12872<=o&&o<=12879||57344<=o&&o<=63743||65024<=o&&o<=65039||o==65533||127232<=o&&o<=127242||127248<=o&&o<=127277||127280<=o&&o<=127337||127344<=o&&o<=127386||917760<=o&&o<=917999||983040<=o&&o<=1048573||1048576<=o&&o<=1114109?"A":"N"},t.characterLength=function(n){var i=this.eastAsianWidth(n);return i=="F"||i=="W"||i=="A"?2:1};function r(n){return n.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}t.length=function(n){for(var i=r(n),a=0,o=0;o<i.length;o++)a=a+this.characterLength(i[o]);return a},t.slice=function(n,i,a){textLen=t.length(n),i=i||0,a=a||1,i<0&&(i=textLen+i),a<0&&(a=textLen+a);for(var o="",s=0,u=r(n),c=0;c<u.length;c++){var l=u[c],p=t.length(l);if(s>=i-(p==2?1:0))if(s+p<=a)o+=l;else break;s+=p}return o}})(yi);var Fc=yi.exports,yc=Fi(Fc),Sc=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g},wc=Fi(Sc);function Xt(e,t={}){if(typeof e!="string"||e.length===0||(t={ambiguousIsNarrow:!0,...t},e=Ei(e),e.length===0))return 0;e=e.replace(wc()," ");let r=t.ambiguousIsNarrow?1:2,n=0;for(let i of e){let a=i.codePointAt(0);if(!(a<=31||a>=127&&a<=159||a>=768&&a<=879))switch(yc.eastAsianWidth(i)){case"F":case"W":n+=2;break;case"A":n+=r;break;default:n+=1}}return n}var Cr=10,fi=(e=0)=>t=>`\x1B[${t+e}m`,di=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,Di=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,J={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(J.modifier);var Ac=Object.keys(J.color),vc=Object.keys(J.bgColor);[...Ac,...vc];function bc(){let e=new Map;for(let[t,r]of Object.entries(J)){for(let[n,i]of Object.entries(r))J[n]={open:`\x1B[${i[0]}m`,close:`\x1B[${i[1]}m`},r[n]=J[n],e.set(i[0],i[1]);Object.defineProperty(J,t,{value:r,enumerable:!1})}return Object.defineProperty(J,"codes",{value:e,enumerable:!1}),J.color.close="\x1B[39m",J.bgColor.close="\x1B[49m",J.color.ansi=fi(),J.color.ansi256=di(),J.color.ansi16m=Di(),J.bgColor.ansi=fi(Cr),J.bgColor.ansi256=di(Cr),J.bgColor.ansi16m=Di(Cr),Object.defineProperties(J,{rgbToAnsi256:{value:(t,r,n)=>t===r&&r===n?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5),enumerable:!1},hexToRgb:{value:t=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(a=>a+a).join(""));let i=Number.parseInt(n,16);return[i>>16&255,i>>8&255,i&255]},enumerable:!1},hexToAnsi256:{value:t=>J.rgbToAnsi256(...J.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,n,i;if(t>=232)r=((t-232)*10+8)/255,n=r,i=r;else{t-=16;let s=t%36;r=Math.floor(t/36)/5,n=Math.floor(s/6)/5,i=s%6/5}let a=Math.max(r,n,i)*2;if(a===0)return 30;let o=30+(Math.round(i)<<2|Math.round(n)<<1|Math.round(r));return a===2&&(o+=60),o},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>J.ansi256ToAnsi(J.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>J.ansi256ToAnsi(J.hexToAnsi256(t)),enumerable:!1}}),J}var Pc=bc(),In=new Set(["\x1B","\x9B"]),Tc=39,Fr="\x07",Si="[",Ic="]",wi="m",yr=`${Ic}8;;`,gi=e=>`${In.values().next().value}${Si}${e}${wi}`,hi=e=>`${In.values().next().value}${yr}${e}${Fr}`,Bc=e=>e.split(" ").map(t=>Xt(t)),xr=(e,t,r)=>{let n=[...t],i=!1,a=!1,o=Xt(Ei(e[e.length-1]));for(let[s,u]of n.entries()){let c=Xt(u);if(o+c<=r?e[e.length-1]+=u:(e.push(u),o=0),In.has(u)&&(i=!0,a=n.slice(s+1).join("").startsWith(yr)),i){a?u===Fr&&(i=!1,a=!1):u===wi&&(i=!1);continue}o+=c,o===r&&s<n.length-1&&(e.push(""),o=0)}!o&&e[e.length-1].length>0&&e.length>1&&(e[e.length-2]+=e.pop())},Rc=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(Xt(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},Nc=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",i,a,o=Bc(e),s=[""];for(let[c,l]of e.split(" ").entries()){r.trim!==!1&&(s[s.length-1]=s[s.length-1].trimStart());let p=Xt(s[s.length-1]);if(c!==0&&(p>=t&&(r.wordWrap===!1||r.trim===!1)&&(s.push(""),p=0),(p>0||r.trim===!1)&&(s[s.length-1]+=" ",p++)),r.hard&&o[c]>t){let m=t-p,h=1+Math.floor((o[c]-m-1)/t);Math.floor((o[c]-1)/t)<h&&s.push(""),xr(s,l,t);continue}if(p+o[c]>t&&p>0&&o[c]>0){if(r.wordWrap===!1&&p<t){xr(s,l,t);continue}s.push("")}if(p+o[c]>t&&r.wordWrap===!1){xr(s,l,t);continue}s[s.length-1]+=l}r.trim!==!1&&(s=s.map(c=>Rc(c)));let u=[...s.join(`
|
|
248
|
+
`)];for(let[c,l]of u.entries()){if(n+=l,In.has(l)){let{groups:m}=new RegExp(`(?:\\${Si}(?<code>\\d+)m|\\${yr}(?<uri>.*)${Fr})`).exec(u.slice(c).join(""))||{groups:{}};if(m.code!==void 0){let h=Number.parseFloat(m.code);i=h===Tc?void 0:h}else m.uri!==void 0&&(a=m.uri.length===0?void 0:m.uri)}let p=Pc.codes.get(Number(i));u[c+1]===`
|
|
249
|
+
`?(a&&(n+=hi("")),i&&p&&(n+=gi(p))):l===`
|
|
250
|
+
`&&(i&&p&&(n+=gi(i)),a&&(n+=hi(a)))}return n};function Ci(e,t,r){return String(e).normalize().replace(/\r\n/g,`
|
|
251
251
|
`).split(`
|
|
252
|
-
`).map(
|
|
253
|
-
`)}var
|
|
254
|
-
`),
|
|
255
|
-
`),i=[];for(let a=0;a<Math.max(
|
|
256
|
-
`),
|
|
257
|
-
`).length-1;this.output.write(ge.cursor.move(-999,t*-1))}render(){let t=
|
|
258
|
-
`);this.output.write(i[
|
|
259
|
-
`).slice(
|
|
260
|
-
`)),this._prevFrame=t;return}this.output.write(ge.erase.down())}this.output.write(t),this.state==="initial"&&(this.state="active"),this._prevFrame=t}}},
|
|
261
|
-
${
|
|
262
|
-
`,i=this.value?t:
|
|
263
|
-
${R.default.gray(ze)}`;default:return`${
|
|
264
|
-
${R.default.cyan(
|
|
265
|
-
`}}}).prompt()};var
|
|
266
|
-
|
|
267
|
-
`)},
|
|
268
|
-
`)},
|
|
269
|
-
${R.default.gray(
|
|
270
|
-
|
|
271
|
-
`)},
|
|
272
|
-
`);
|
|
252
|
+
`).map(n=>Nc(n,t,r)).join(`
|
|
253
|
+
`)}var kc=Object.defineProperty,$c=(e,t,r)=>t in e?kc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Fe=(e,t,r)=>($c(e,typeof t!="symbol"?t+"":t,r),r);function Oc(e,t){if(e===t)return;let r=e.split(`
|
|
254
|
+
`),n=t.split(`
|
|
255
|
+
`),i=[];for(let a=0;a<Math.max(r.length,n.length);a++)r[a]!==n[a]&&i.push(a);return i}var Ai=Symbol("clack:cancel");function tt(e){return e===Ai}function Pn(e,t){e.isTTY&&e.setRawMode(t)}var xi=new Map([["k","up"],["j","down"],["h","left"],["l","right"]]),Lc=new Set(["up","down","left","right","space","enter"]),Er=class{constructor({render:t,input:r=gc,output:n=hc,...i},a=!0){Fe(this,"input"),Fe(this,"output"),Fe(this,"rl"),Fe(this,"opts"),Fe(this,"_track",!1),Fe(this,"_render"),Fe(this,"_cursor",0),Fe(this,"state","initial"),Fe(this,"value"),Fe(this,"error",""),Fe(this,"subscribers",new Map),Fe(this,"_prevFrame",""),this.opts=i,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=t.bind(this),this._track=a,this.input=r,this.output=n}prompt(){let t=new Cc(0);return t._write=(r,n,i)=>{this._track&&(this.value=this.rl.line.replace(/\t/g,""),this._cursor=this.rl.cursor,this.emit("value",this.value)),i()},this.input.pipe(t),this.rl=mi.createInterface({input:this.input,output:t,tabSize:2,prompt:"",escapeCodeTimeout:50}),mi.emitKeypressEvents(this.input,this.rl),this.rl.prompt(),this.opts.initialValue!==void 0&&this._track&&this.rl.write(this.opts.initialValue),this.input.on("keypress",this.onKeypress),Pn(this.input,!0),this.output.on("resize",this.render),this.render(),new Promise((r,n)=>{this.once("submit",()=>{this.output.write(ge.cursor.show),this.output.off("resize",this.render),Pn(this.input,!1),r(this.value)}),this.once("cancel",()=>{this.output.write(ge.cursor.show),this.output.off("resize",this.render),Pn(this.input,!1),r(Ai)})})}on(t,r){let n=this.subscribers.get(t)??[];n.push({cb:r}),this.subscribers.set(t,n)}once(t,r){let n=this.subscribers.get(t)??[];n.push({cb:r,once:!0}),this.subscribers.set(t,n)}emit(t,...r){let n=this.subscribers.get(t)??[],i=[];for(let a of n)a.cb(...r),a.once&&i.push(()=>n.splice(n.indexOf(a),1));for(let a of i)a()}unsubscribe(){this.subscribers.clear()}onKeypress(t,r){if(this.state==="error"&&(this.state="active"),r?.name&&!this._track&&xi.has(r.name)&&this.emit("cursor",xi.get(r.name)),r?.name&&Lc.has(r.name)&&this.emit("cursor",r.name),t&&(t.toLowerCase()==="y"||t.toLowerCase()==="n")&&this.emit("confirm",t.toLowerCase()==="y"),t===" "&&this.opts.placeholder&&(this.value||(this.rl.write(this.opts.placeholder),this.emit("value",this.opts.placeholder))),t&&this.emit("key",t.toLowerCase()),r?.name==="return"){if(this.opts.validate){let n=this.opts.validate(this.value);n&&(this.error=n,this.state="error",this.rl.write(this.value))}this.state!=="error"&&(this.state="submit")}t===""&&(this.state="cancel"),(this.state==="submit"||this.state==="cancel")&&this.emit("finalize"),this.render(),(this.state==="submit"||this.state==="cancel")&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
|
|
256
|
+
`),Pn(this.input,!1),this.rl.close(),this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let t=Ci(this._prevFrame,process.stdout.columns,{hard:!0}).split(`
|
|
257
|
+
`).length-1;this.output.write(ge.cursor.move(-999,t*-1))}render(){let t=Ci(this._render(this)??"",process.stdout.columns,{hard:!0});if(t!==this._prevFrame){if(this.state==="initial")this.output.write(ge.cursor.hide);else{let r=Oc(this._prevFrame,t);if(this.restoreCursor(),r&&r?.length===1){let n=r[0];this.output.write(ge.cursor.move(0,n)),this.output.write(ge.erase.lines(1));let i=t.split(`
|
|
258
|
+
`);this.output.write(i[n]),this._prevFrame=t,this.output.write(ge.cursor.move(0,i.length-n-1));return}else if(r&&r?.length>1){let n=r[0];this.output.write(ge.cursor.move(0,n)),this.output.write(ge.erase.down());let i=t.split(`
|
|
259
|
+
`).slice(n);this.output.write(i.join(`
|
|
260
|
+
`)),this._prevFrame=t;return}this.output.write(ge.erase.down())}this.output.write(t),this.state==="initial"&&(this.state="active"),this._prevFrame=t}}},Tn=class extends Er{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(t){super(t,!1),this.value=!!t.initialValue,this.on("value",()=>{this.value=this._value}),this.on("confirm",r=>{this.output.write(ge.cursor.move(0,-1)),this.value=r,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}};var SD=globalThis.process.platform.startsWith("win");var R=se(Ue(),1),Pi=se(An(),1);import we from"node:process";function _c(){return we.platform!=="win32"?we.env.TERM!=="linux":!!we.env.CI||!!we.env.WT_SESSION||!!we.env.TERMINUS_SUBLIME||we.env.ConEmuTask==="{cmd::Cmder}"||we.env.TERM_PROGRAM==="Terminus-Sublime"||we.env.TERM_PROGRAM==="vscode"||we.env.TERM==="xterm-256color"||we.env.TERM==="alacritty"||we.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var jc=_c(),Q=(e,t)=>jc?e:t,Mc=Q("\u25C6","*"),Kc=Q("\u25A0","x"),Vc=Q("\u25B2","x"),Ti=Q("\u25C7","o"),Uc=Q("\u250C","T"),ze=Q("\u2502","|"),Sr=Q("\u2514","\u2014"),vi=Q("\u25CF",">"),bi=Q("\u25CB"," "),kD=Q("\u25FB","[\u2022]"),$D=Q("\u25FC","[+]"),OD=Q("\u25FB","[ ]"),LD=Q("\u25AA","\u2022"),_D=Q("\u2500","-"),jD=Q("\u256E","+"),MD=Q("\u251C","+"),KD=Q("\u256F","+"),zc=Q("\u25CF","\u2022"),qc=Q("\u25C6","*"),Wc=Q("\u25B2","!"),Jc=Q("\u25A0","x"),Gc=e=>{switch(e){case"initial":case"active":return R.default.cyan(Mc);case"cancel":return R.default.red(Kc);case"error":return R.default.yellow(Vc);case"submit":return R.default.green(Ti)}};var Zt=e=>{let t=e.active??"Yes",r=e.inactive??"No";return new Tn({active:t,inactive:r,initialValue:e.initialValue??!0,render(){let n=`${R.default.gray(ze)}
|
|
261
|
+
${Gc(this.state)} ${e.message}
|
|
262
|
+
`,i=this.value?t:r;switch(this.state){case"submit":return`${n}${R.default.gray(ze)} ${R.default.dim(i)}`;case"cancel":return`${n}${R.default.gray(ze)} ${R.default.strikethrough(R.default.dim(i))}
|
|
263
|
+
${R.default.gray(ze)}`;default:return`${n}${R.default.cyan(ze)} ${this.value?`${R.default.green(vi)} ${t}`:`${R.default.dim(bi)} ${R.default.dim(t)}`} ${R.default.dim("/")} ${this.value?`${R.default.dim(bi)} ${R.default.dim(r)}`:`${R.default.green(vi)} ${r}`}
|
|
264
|
+
${R.default.cyan(Sr)}
|
|
265
|
+
`}}}).prompt()};var gt=(e="")=>{process.stdout.write(`${R.default.gray(Sr)} ${R.default.red(e)}
|
|
266
|
+
|
|
267
|
+
`)},ht=(e="")=>{process.stdout.write(`${R.default.gray(Uc)} ${e}
|
|
268
|
+
`)},en=(e="")=>{process.stdout.write(`${R.default.gray(ze)}
|
|
269
|
+
${R.default.gray(Sr)} ${e}
|
|
270
|
+
|
|
271
|
+
`)},j={message:(e="",{symbol:t=R.default.gray(ze)}={})=>{let r=[`${R.default.gray(ze)}`];if(e){let[n,...i]=e.split(`
|
|
272
|
+
`);r.push(`${t} ${n}`,...i.map(a=>`${R.default.gray(ze)} ${a}`))}process.stdout.write(`${r.join(`
|
|
273
273
|
`)}
|
|
274
|
-
`)},info:e=>{
|
|
275
|
-
`),
|
|
276
|
-
`),a=a.replace(/\\r/g,"\r")),t[i]=a}return t}var
|
|
274
|
+
`)},info:e=>{j.message(e,{symbol:R.default.blue(zc)})},success:e=>{j.message(e,{symbol:R.default.green(qc)})},step:e=>{j.message(e,{symbol:R.default.green(Ti)})},warn:e=>{j.message(e,{symbol:R.default.yellow(Wc)})},warning:e=>{j.warn(e)},error:e=>{j.message(e,{symbol:R.default.red(Jc)})}};var pt=se(Ue(),1);import*as Ze from"@sentry/node";import H from"typescript";import*as Io from"@sentry/node";var X=se(Ue(),1);async function Te(e){let t=Ii(e),r=await e.readFile(t);return typeof r=="string"?JSON.parse(r):{}}async function Ie(e,t){t=typeof t=="object"&&t!=null?t:{};let r=Ii(e);await e.writeFile(r,JSON.stringify(t??{},null,2))}function Ii(e){let t=e.getAppRootDir();return e.join(t,"node_modules",".builder","builder-cache.json")}async function nt(e,t,r){let n={envKey:r,envValue:null,file:""};for(let i of t){let a=e.join(e.getAppRootDir(),i),o=await Hc(e,a);if(o){let s=o[r];if(typeof s=="string"&&s.length>0&&s!=="YOUR_API_KEY")return n.envValue=s,n.file=a,n}}return n.file=e.join(e.getAppRootDir(),t[t.length-1]),n}async function Hc(e,t){let r=await e.readFile(t);return typeof r=="string"?Bi(r):null}function Bi(e){let t={},r=e.replace(/\r\n?/gm,`
|
|
275
|
+
`),n;for(;(n=Qc.exec(r))!=null;){let i=n[1],a=n[2]||"";a=a.trim();let o=a[0];a=a.replace(/^(['"`])([\s\S]*)\1$/gm,"$2"),o==='"'&&(a=a.replace(/\\n/g,`
|
|
276
|
+
`),a=a.replace(/\\r/g,"\r")),t[i]=a}return t}var Qc=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/gm;async function rt(e,t,r,n){let i="# https://www.builder.io/c/docs/using-your-api-key",a=await e.readFile(t);if(a)if(a.includes(r))if(a.includes(n))e.debug(`"${r}" with "${n}" already set in ${t}`);else return e.debug(`Replace "${r}" in ${t}`),a=a.replace(new RegExp(`${r}=.*`),`${r}=${n}`),await e.writeFile(t,a),"update";else return e.debug(`Append "${r}" to ${t}`),a+=`
|
|
277
277
|
|
|
278
278
|
${i}
|
|
279
|
-
${
|
|
280
|
-
|
|
281
|
-
`,await e.writeFile(t,a),"update";else return e.debug(`Creating new .env file with "${
|
|
282
|
-
`),await e.writeFile(t,a),"create";return null}async function qt(e){return await et(e,[".env.local",".env.development.local",".env.production.local",".env.development",".env.production",".env"],Be)}async function gi(e,t){let n=await qt(e),r=await tt(e,n.file,n.envKey,t);return{...n,modifiedType:r}}var Be="NEXT_PUBLIC_BUILDER_API_KEY";function wt(e,t,n,r,i=!0){let a=t.properties.filter(u=>e.ts.isPropertyAssignment(u)),o=Hs(e,t,n);return o>-1?r==null&&i?e.ts.factory.updateObjectLiteralExpression(t,a.filter((u,s)=>s!==o)):(a[o]=e.ts.factory.updatePropertyAssignment(a[o],a[o].name,Jt(e,r)),e.ts.factory.updateObjectLiteralExpression(t,a)):(r!=null&&a.push(e.ts.factory.createPropertyAssignment(n,Jt(e,r))),e.ts.factory.updateObjectLiteralExpression(t,a))}function Hs(e,t,n){return t.properties.findIndex(r=>O(e,r)===n)}function Wt(e,t){switch(t.kind){case e.ts.SyntaxKind.ArrayLiteralExpression:return Ys(e,t);case e.ts.SyntaxKind.ObjectLiteralExpression:return Qs(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 Qs(e,t){let n={};if(t&&e.ts.isObjectLiteralExpression(t)){for(let r of t.properties)if(e.ts.isPropertyAssignment(r)){let i=O(e,r);i&&(n[i]=Wt(e,r.initializer))}}return n}function Ys(e,t){return t&&e.ts.isArrayLiteralExpression(t)?t.elements.map(n=>Wt(e,n)):[]}function O(e,t){if(t&&e.ts.isPropertyAssignment(t)){let n=t.name;switch(n.kind){case e.ts.SyntaxKind.Identifier:return n.text;case e.ts.SyntaxKind.StringLiteral:case e.ts.SyntaxKind.NumericLiteral:return n.text;case e.ts.SyntaxKind.ComputedPropertyName:let r=n.expression;if(e.ts.isStringLiteral(r)||e.ts.isNumericLiteral(r))return n.expression.text}}}function Jt(e,t){return fn(e,t,new WeakSet)}function fn(e,t,n){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)?Xs(e,t,n):typeof t=="object"?Zs(e,t,n):e.ts.factory.createIdentifier(t)}function Xs(e,t,n){let r=t.map(i=>fn(e,i,n));return e.ts.factory.createArrayLiteralExpression(r,!0)}function Zs(e,t,n){if(n.has(t))return e.ts.factory.createIdentifier("undefined");n.add(t);let r=Object.keys(t).map(i=>e.ts.factory.createPropertyAssignment(i,fn(e,t[i],n)));return e.ts.factory.createObjectLiteralExpression(r,!0)}function mt(e,t,n){let r=[];if(!n)return r;let i=null;if(e.ts.isArrowFunction(n)||e.ts.isFunctionExpression(n)||e.ts.isFunctionDeclaration(n)){let a=n.parameters;if(a.length>0){let o=a[0],u=t.getTypeAtLocation(o);u.aliasTypeArguments&&u.aliasTypeArguments.length>0?i=u.aliasTypeArguments[0].getProperties():i=u.getProperties()}}else if(e.ts.isIdentifier(n)){let a=t.getTypeAtLocation(n),o=a.symbol?.valueDeclaration;if(o&&e.ts.isClassDeclaration(o)){let s=o.heritageClauses?.find(l=>l.token===e.ts.SyntaxKind.ExtendsKeyword)?.types;if(s){for(let l of s)if(t.getSymbolAtLocation(l.expression)?.name==="Component"){if(e.ts.isExpressionWithTypeArguments(l)){let p=l.typeArguments;if(p){let m=p[0];i=t.getTypeFromTypeNode(m).getProperties()}}break}}}if(!i){let u=a.getCallSignatures();if(u.length>0){let s=u[0].getParameters();s.length>0&&(i=t.getTypeOfSymbolAtLocation(s[0],n).getProperties())}}}else if(e.ts.isExportSpecifier(n)){let a=t.getSymbolAtLocation(n.name);if(a){let u=t.getTypeOfSymbolAtLocation(a,n).getCallSignatures();if(u.length>0){let s=u[0].getParameters();s.length>0&&(i=t.getTypeOfSymbolAtLocation(s[0],n).getProperties())}}}if(i)for(let a of i){let o=el(e,t,a);o&&r.push(o)}return r=r.filter(hi),r.length>0?r:tl(e,n)}function el(e,t,n){let r=n.valueDeclaration,i=n.getName();if(r||(r=n.getDeclarations()?.[0]),r&&e.ts.isPropertySignature(r)){if(i!=="children"&&r.getSourceFile().fileName.includes("node_modules/@types/"))return null;let a="string",o;if(r?.type){let s=t.getTypeFromTypeNode(r.type),l=t.typeToString(s),c=dn(l);c.knownType?a=c.builderType:nl(l)||s.flags&e.ts.TypeFlags.StringLike?a="string":s.flags&e.ts.TypeFlags.NumberLike?a="number":s.flags&e.ts.TypeFlags.IndexedAccess?a="list":s.flags&e.ts.TypeFlags.Object||s.isUnion()&&s.types.every(p=>p.flags&e.ts.TypeFlags.Object)||s.isIntersection()&&s.types.some(p=>p.flags&e.ts.TypeFlags.Object)?a="object":a="string",l!==a&&(o=l)}let u={name:i,type:a,isRegistered:!1};if(o&&r.type){let s=ul(e,t,t.getTypeFromTypeNode(r.type));u.meta=u.meta||{},s&&s.length>0&&u.type==="string"&&s.every(il)?u.enum=s.map(al):u.meta.ts=o}return r.questionToken||(u.required=!0),u}return null}function tl(e,t){let n=[],r=e.ts.getJSDocCommentsAndTags(t);for(let i of r)if(!(!e.ts.isJSDoc(i)||!i.tags))for(let a of i.tags){if(!e.ts.isJSDocParameterTag(a)||a.tagName.text!=="param")continue;let u=a.typeExpression?.type;if(!u||!e.ts.isJSDocTypeLiteral(u))continue;let s=u.jsDocPropertyTags;if(s)for(let l of s){if(!e.ts.isJSDocPropertyLikeTag(l))continue;let c=l.name;if(!e.ts.isQualifiedName(c))continue;let p=l.typeExpression;if(!p)continue;let m="";switch(p.type.kind){case e.ts.SyntaxKind.StringKeyword:{m="string";break}case e.ts.SyntaxKind.NumberKeyword:{m="number";break}case e.ts.SyntaxKind.BooleanKeyword:{m="boolean";break}default:continue}let g={name:c.right.text,type:m,isRegistered:!1};n.push(g)}}return n.filter(hi)}var rl=["ClassicComponent","FunctionComponent","IntrinsicElements","JSX","ReactNode","ReactElement","ReactPortal"];function nl(e){return typeof e!="string"?!1:!!rl.some(t=>e.includes(t))}function dn(e){return typeof e=="string"&&(e=e.trim(),ol.some(t=>t.value===e))?{builderType:e,knownType:!0}:{builderType:"string",knownType:!1}}var ol=[{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 il(e){return/^['"].*['"]$/.test(e)}function al(e){return(e.startsWith('"')||e.startsWith("'"))&&(e.endsWith('"')||e.endsWith("'"))?e.slice(1,-1):e}var ul=(e,t,n)=>{let r=new Set;Ci(e,t,n,r);let i=r.delete("true"),a=r.delete("false");(i||a)&&r.add("boolean");let o=Array.from(r.keys()).sort();if(o.length>1&&(o=o.map(u=>u.indexOf("=>")>=0?`(${u})`:u)),!(o.length>20))return o},sl=(e,t,n)=>{let r=e.ts.TypeFormatFlags.InElementType|e.ts.TypeFormatFlags.NoTruncation;return t.typeToString(n,void 0,r)},Ci=(e,t,n,r)=>{if(n.isUnion())n.types.forEach(i=>{Ci(e,t,i,r)});else if(n.isLiteral()){let i=sl(e,t,n);r.add(i)}};function hi(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 n=t.charAt(2);if(n.toUpperCase()===n)return!1}return!ll.has(t.toLowerCase())}var ll=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 fe(e,t,n){for(let r of n.properties){if(!e.ts.isPropertyAssignment(r))continue;let i=O(e,r);if(i==="name"&&e.ts.isStringLiteral(r.initializer)){t.name=r.initializer.text;continue}if(i==="description"&&e.ts.isStringLiteral(r.initializer)){t.description=r.initializer.text;continue}if(i==="image"&&e.ts.isStringLiteral(r.initializer)){t.image=r.initializer.text;continue}if(i==="inputs"&&e.ts.isArrayLiteralExpression(r.initializer)){let a=cl(e,r.initializer);Ce(t,a);continue}if(i==="meta"&&e.ts.isObjectLiteralExpression(r.initializer)){let a=Wt(e,r.initializer);a&&typeof a=="object"&&(t.meta=a);continue}}return t}function cl(e,t){let n=[];for(let r of t.elements)e.ts.isObjectLiteralExpression(r)&&n.push(pl(e,r));return n}function pl(e,t){let n=Wt(e,t),r=hl(n);return r.isRegistered=!0,r}function Z(e,t,n){let r=fl(n);return t=wt(e,t,"name",r.name,!1),t=wt(e,t,"description",r.description),t=wt(e,t,"image",r.image),t=wt(e,t,"meta",r.meta),t=ml(e,t,r),El(e,t)}function ml(e,t,n){let r=null,i=t.properties.filter(u=>e.ts.isPropertyAssignment(u)&&e.ts.isIdentifier(u.name)),a=i.findIndex(u=>e.ts.isIdentifier(u.name)&&u.name.text==="inputs"),o=[...n.inputs??[]];if(a>-1){if(o.length===0)return wt(e,t,"inputs",null);let u=i[a];e.ts.isPropertyAssignment(u)&&e.ts.isArrayLiteralExpression(u.initializer)&&(r=u.initializer)}return o.length===0?t:(r=Dl(e,r||e.ts.factory.createArrayLiteralExpression(),o),a>-1?i[a]=e.ts.factory.updatePropertyAssignment(i[a],i[a].name,r):i.push(e.ts.factory.createPropertyAssignment("inputs",r)),e.ts.factory.updateObjectLiteralExpression(t,i))}function fl(e){return{name:e.name,description:e.description,image:e.image,inputs:(e.inputs||[]).filter(n=>n.isRegistered).map(dl),...e.meta?{meta:{...e.meta}}:{}}}function dl(e){let t={name:e.name,type:e.type};return(le(e.defaultValue)||jt(e.defaultValue)||xt(e.defaultValue))&&(t.defaultValue=e.defaultValue),le(e.friendlyName)&&(t.friendlyName=e.friendlyName),le(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 Dl(e,t,n){let r=t.elements.filter(i=>{if(!e.ts.isObjectLiteralExpression(i))return!1;let a=i.properties.find(u=>O(e,u)==="name");if(!a)return!1;let o=a.initializer;return e.ts.isStringLiteral(o)?n.some(u=>u.name===o.text):!1});for(let i of n)r=gl(e,r,i);return r.sort((i,a)=>{let o=i.properties.find(m=>O(e,m)==="name"),u=a.properties.find(m=>O(e,m)==="name"),s=o?.initializer,l=u?.initializer,c=s&&e.ts.isStringLiteral(s)?s.text:"zz",p=l&&e.ts.isStringLiteral(l)?l.text:"zz";return c.toLowerCase().localeCompare(p.toLowerCase())}),e.ts.factory.updateArrayLiteralExpression(t,r)}function gl(e,t,n){let r=t.findIndex(i=>i.properties.some(a=>{let o=O(e,a);return e.ts.isPropertyAssignment(a)&&o==="name"&&e.ts.isStringLiteral(a.initializer)&&a.initializer.text===n.name}));if(r>-1)t[r]=Ei(e,t[r],n);else{let i=Ei(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("name",e.ts.factory.createStringLiteral(n.name))],!0),n);t.push(i)}return t}function Ei(e,t,n){let r=t.properties.filter(a=>e.ts.isPropertyAssignment(a)),i=Object.keys(n).filter(a=>a!=="isRegistered");for(let a of i)r=Cl(e,r,n,a);return r=xl(e,r.filter(a=>{let o=O(e,a);return i.includes(o)})),e.ts.factory.updateObjectLiteralExpression(t,r)}function Cl(e,t,n,r){let i=t.findIndex(a=>e.ts.isIdentifier(a.name)&&a.name.text===r);return i>-1?t[i]=e.ts.factory.updatePropertyAssignment(t[i],t[i].name,Jt(e,n[r])):t.push(e.ts.factory.createPropertyAssignment(r,Jt(e,n[r]))),t}function Ce(e,t){for(let n of t){let r=e.inputs.findIndex(i=>i.name===n.name);r>-1?(n.isRegistered||!e.inputs[r].isRegistered)&&(e.inputs[r]=n):e.inputs.push(n)}e.acceptsChildren=Dn(e)}function hl(e){let t=dn(e.type),n={name:e.name.trim(),type:t.builderType};return le(e.friendlyName)&&e.friendlyName.trim()!==e.name.trim()&&(n.friendlyName=e.friendlyName),(le(e.defaultValue)||jt(e.defaultValue)||xt(e.defaultValue))&&(n.defaultValue=e.defaultValue),le(e.helperText)&&(n.helperText=e.helperText),xt(e.required)&&(n.required=e.required),typeof e.meta=="object"&&e.meta!=null&&Object.keys(e.meta).length>0&&(n.meta=e.meta),Array.isArray(e.enum)&&e.enum.length>0&&(n.enum=e.enum),e.hideFromUI===!0&&(n.hideFromUI=!0),gn(n)}function Dn(e){let t=e.inputs.some(r=>r.name==="children"),n=e.inputs.some(r=>r.meta?.ts==="ReactNode");return!!(t||n||e.acceptsChildren===!0)}function gn(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 El(e,t){let n=[...t.properties].sort((r,i)=>{let a=O(e,r)||"zz",o=O(e,i)||"zz";if(a==="inputs")return 1;let u=xi.indexOf(a),s=xi.indexOf(o);return u>-1?s>-1&&u>s?1:-1:s>-1?u>-1&&s<u?-1:1:a.localeCompare(o)});return e.ts.factory.updateObjectLiteralExpression(t,n)}var xi=["component","name","description"];function xl(e,t){return[...t].sort((r,i)=>{let a=O(e,r)||"zz",o=O(e,i)||"zz",u=Fi.indexOf(a),s=Fi.indexOf(o);return u>-1?s>-1&&u>s?1:-1:s>-1?u>-1&&s<u?-1:1:a.localeCompare(o)})}var Fi=["name","type"];function Pt(e,t){for(let n of t.properties){if(!e.ts.isPropertyAssignment(n)||!e.ts.isIdentifier(n.name))continue;if(O(e,n)==="canHaveChildren"){let{initializer:i}=n;return i.kind===e.ts.SyntaxKind.TrueKeyword}}return!1}function Si(e,t){let n=`Builder.registerComponent(
|
|
283
|
-
`;if(e.appDir)t.acceptsChildren?
|
|
284
|
-
`:
|
|
285
|
-
`;else{let i=t.externalImportPath?t.externalImportPath
|
|
286
|
-
`:
|
|
287
|
-
`:t.acceptsChildren?
|
|
288
|
-
`:
|
|
289
|
-
`}
|
|
279
|
+
${r}=${n}
|
|
280
|
+
|
|
281
|
+
`,await e.writeFile(t,a),"update";else return e.debug(`Creating new .env file with "${r}" at ${t}`),a=[i,`${r}=${n}`,""].join(`
|
|
282
|
+
`),await e.writeFile(t,a),"create";return null}async function tn(e){return await nt(e,[".env.local",".env.development.local",".env.production.local",".env.development",".env.production",".env"],Be)}async function Ri(e,t){let r=await tn(e),n=await rt(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var Be="NEXT_PUBLIC_BUILDER_API_KEY";function Nt(e,t,r,n,i=!0){let a=t.properties.filter(s=>e.ts.isPropertyAssignment(s)),o=Yc(e,t,r);return o>-1?n==null&&i?e.ts.factory.updateObjectLiteralExpression(t,a.filter((s,u)=>u!==o)):(a[o]=e.ts.factory.updatePropertyAssignment(a[o],a[o].name,nn(e,n)),e.ts.factory.updateObjectLiteralExpression(t,a)):(n!=null&&a.push(e.ts.factory.createPropertyAssignment(r,nn(e,n))),e.ts.factory.updateObjectLiteralExpression(t,a))}function Yc(e,t,r){return t.properties.findIndex(n=>O(e,n)===r)}function rn(e,t){switch(t.kind){case e.ts.SyntaxKind.ArrayLiteralExpression:return Zc(e,t);case e.ts.SyntaxKind.ObjectLiteralExpression:return Xc(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 Xc(e,t){let r={};if(t&&e.ts.isObjectLiteralExpression(t)){for(let n of t.properties)if(e.ts.isPropertyAssignment(n)){let i=O(e,n);i&&(r[i]=rn(e,n.initializer))}}return r}function Zc(e,t){return t&&e.ts.isArrayLiteralExpression(t)?t.elements.map(r=>rn(e,r)):[]}function O(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 nn(e,t){return wr(e,t,new WeakSet)}function wr(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)?el(e,t,r):typeof t=="object"?tl(e,t,r):e.ts.factory.createIdentifier(t)}function el(e,t,r){let n=t.map(i=>wr(e,i,r));return e.ts.factory.createArrayLiteralExpression(n,!0)}function tl(e,t,r){if(r.has(t))return e.ts.factory.createIdentifier("undefined");r.add(t);let n=Object.keys(t).map(i=>e.ts.factory.createPropertyAssignment(i,wr(e,t[i],r)));return e.ts.factory.createObjectLiteralExpression(n,!0)}function Ct(e,t,r){let n=[];if(!r)return n;let i=null;if(e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r)||e.ts.isFunctionDeclaration(r)){let a=r.parameters;if(a.length>0){let o=a[0],s=t.getTypeAtLocation(o);s.aliasTypeArguments&&s.aliasTypeArguments.length>0?i=s.aliasTypeArguments[0].getProperties():i=s.getProperties()}}else if(e.ts.isIdentifier(r)){let a=t.getTypeAtLocation(r),o=a.symbol?.valueDeclaration;if(o&&e.ts.isClassDeclaration(o)){let u=o.heritageClauses?.find(c=>c.token===e.ts.SyntaxKind.ExtendsKeyword)?.types;if(u){for(let c of u)if(t.getSymbolAtLocation(c.expression)?.name==="Component"){if(e.ts.isExpressionWithTypeArguments(c)){let p=c.typeArguments;if(p){let m=p[0];i=t.getTypeFromTypeNode(m).getProperties()}}break}}}if(!i){let s=a.getCallSignatures();if(s.length>0){let u=s[0].getParameters();u.length>0&&(i=t.getTypeOfSymbolAtLocation(u[0],r).getProperties())}}}else if(e.ts.isExportSpecifier(r)){let a=t.getSymbolAtLocation(r.name);if(a){let s=t.getTypeOfSymbolAtLocation(a,r).getCallSignatures();if(s.length>0){let u=s[0].getParameters();u.length>0&&(i=t.getTypeOfSymbolAtLocation(u[0],r).getProperties())}}}if(i)for(let a of i){let o=nl(e,t,a);o&&n.push(o)}return n=n.filter(ki),n.length>0?n:rl(e,r)}function nl(e,t,r){let n=r.valueDeclaration,i=r.getName();if(n||(n=r.getDeclarations()?.[0]),n&&e.ts.isPropertySignature(n)){if(i!=="children"&&n.getSourceFile().fileName.includes("node_modules/@types/"))return null;let a="string",o;if(n?.type){let u=t.getTypeFromTypeNode(n.type),c=t.typeToString(u),l=Ar(c);l.knownType?a=l.builderType:il(c)||u.flags&e.ts.TypeFlags.StringLike?a="string":u.flags&e.ts.TypeFlags.NumberLike?a="number":u.flags&e.ts.TypeFlags.IndexedAccess?a="list":u.flags&e.ts.TypeFlags.Object||u.isUnion()&&u.types.every(p=>p.flags&e.ts.TypeFlags.Object)||u.isIntersection()&&u.types.some(p=>p.flags&e.ts.TypeFlags.Object)?a="object":a="string",c!==a&&(o=c)}let s={name:i,type:a,isRegistered:!1};if(o&&n.type){let u=cl(e,t,t.getTypeFromTypeNode(n.type));s.meta=s.meta||{},u&&u.length>0&&s.type==="string"&&u.every(sl)?s.enum=u.map(ul):s.meta.ts=o}return n.questionToken||(s.required=!0),s}return null}function rl(e,t){let r=[],n=e.ts.getJSDocCommentsAndTags(t);for(let i of n)if(!(!e.ts.isJSDoc(i)||!i.tags))for(let a of i.tags){if(!e.ts.isJSDocParameterTag(a)||a.tagName.text!=="param")continue;let s=a.typeExpression?.type;if(!s||!e.ts.isJSDocTypeLiteral(s))continue;let u=s.jsDocPropertyTags;if(u)for(let c of u){if(!e.ts.isJSDocPropertyLikeTag(c))continue;let l=c.name;if(!e.ts.isQualifiedName(l))continue;let p=c.typeExpression;if(!p)continue;let m="";switch(p.type.kind){case e.ts.SyntaxKind.StringKeyword:{m="string";break}case e.ts.SyntaxKind.NumberKeyword:{m="number";break}case e.ts.SyntaxKind.BooleanKeyword:{m="boolean";break}default:continue}let g={name:l.right.text,type:m,isRegistered:!1};r.push(g)}}return r.filter(ki)}var ol=["ClassicComponent","FunctionComponent","IntrinsicElements","JSX","ReactNode","ReactElement","ReactPortal"];function il(e){return typeof e!="string"?!1:!!ol.some(t=>e.includes(t))}function Ar(e){return typeof e=="string"&&(e=e.trim(),al.some(t=>t.value===e))?{builderType:e,knownType:!0}:{builderType:"string",knownType:!1}}var al=[{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 sl(e){return/^['"].*['"]$/.test(e)}function ul(e){return(e.startsWith('"')||e.startsWith("'"))&&(e.endsWith('"')||e.endsWith("'"))?e.slice(1,-1):e}var cl=(e,t,r)=>{let n=new Set;Ni(e,t,r,n);let i=n.delete("true"),a=n.delete("false");(i||a)&&n.add("boolean");let o=Array.from(n.keys()).sort();if(o.length>1&&(o=o.map(s=>s.indexOf("=>")>=0?`(${s})`:s)),!(o.length>20))return o},ll=(e,t,r)=>{let n=e.ts.TypeFormatFlags.InElementType|e.ts.TypeFormatFlags.NoTruncation;return t.typeToString(r,void 0,n)},Ni=(e,t,r,n)=>{if(r.isUnion())r.types.forEach(i=>{Ni(e,t,i,n)});else if(r.isLiteral()){let i=ll(e,t,r);n.add(i)}};function ki(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!pl.has(t.toLowerCase())}var pl=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 fe(e,t,r){for(let n of r.properties){if(!e.ts.isPropertyAssignment(n))continue;let i=O(e,n);if(i==="name"&&e.ts.isStringLiteral(n.initializer)){t.name=n.initializer.text;continue}if(i==="description"&&e.ts.isStringLiteral(n.initializer)){t.description=n.initializer.text;continue}if(i==="image"&&e.ts.isStringLiteral(n.initializer)){t.image=n.initializer.text;continue}if(i==="inputs"&&e.ts.isArrayLiteralExpression(n.initializer)){let a=ml(e,n.initializer);he(t,a);continue}if(i==="meta"&&e.ts.isObjectLiteralExpression(n.initializer)){let a=rn(e,n.initializer);a&&typeof a=="object"&&(t.meta=a);continue}}return t}function ml(e,t){let r=[];for(let n of t.elements)e.ts.isObjectLiteralExpression(n)&&r.push(fl(e,n));return r}function fl(e,t){let r=rn(e,t),n=El(r);return n.isRegistered=!0,n}function ee(e,t,r){let n=Dl(r);return t=Nt(e,t,"name",n.name,!1),t=Nt(e,t,"description",n.description),t=Nt(e,t,"image",n.image),t=Nt(e,t,"meta",n.meta),t=dl(e,t,n),Fl(e,t)}function dl(e,t,r){let n=null,i=t.properties.filter(s=>e.ts.isPropertyAssignment(s)&&e.ts.isIdentifier(s.name)),a=i.findIndex(s=>e.ts.isIdentifier(s.name)&&s.name.text==="inputs"),o=[...r.inputs??[]];if(a>-1){if(o.length===0)return Nt(e,t,"inputs",null);let s=i[a];e.ts.isPropertyAssignment(s)&&e.ts.isArrayLiteralExpression(s.initializer)&&(n=s.initializer)}return o.length===0?t:(n=hl(e,n||e.ts.factory.createArrayLiteralExpression(),o),a>-1?i[a]=e.ts.factory.updatePropertyAssignment(i[a],i[a].name,n):i.push(e.ts.factory.createPropertyAssignment("inputs",n)),e.ts.factory.updateObjectLiteralExpression(t,i))}function Dl(e){return{name:e.name,description:e.description,image:e.image,inputs:(e.inputs||[]).filter(r=>r.isRegistered).map(gl),...e.meta?{meta:{...e.meta}}:{}}}function gl(e){let t={name:e.name,type:e.type};return(le(e.defaultValue)||Jt(e.defaultValue)||vt(e.defaultValue))&&(t.defaultValue=e.defaultValue),le(e.friendlyName)&&(t.friendlyName=e.friendlyName),le(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 hl(e,t,r){let n=t.elements.filter(i=>{if(!e.ts.isObjectLiteralExpression(i))return!1;let a=i.properties.find(s=>O(e,s)==="name");if(!a)return!1;let o=a.initializer;return e.ts.isStringLiteral(o)?r.some(s=>s.name===o.text):!1});for(let i of r)n=Cl(e,n,i);return n.sort((i,a)=>{let o=i.properties.find(m=>O(e,m)==="name"),s=a.properties.find(m=>O(e,m)==="name"),u=o?.initializer,c=s?.initializer,l=u&&e.ts.isStringLiteral(u)?u.text:"zz",p=c&&e.ts.isStringLiteral(c)?c.text:"zz";return l.toLowerCase().localeCompare(p.toLowerCase())}),e.ts.factory.updateArrayLiteralExpression(t,n)}function Cl(e,t,r){let n=t.findIndex(i=>i.properties.some(a=>{let o=O(e,a);return e.ts.isPropertyAssignment(a)&&o==="name"&&e.ts.isStringLiteral(a.initializer)&&a.initializer.text===r.name}));if(n>-1)t[n]=$i(e,t[n],r);else{let i=$i(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("name",e.ts.factory.createStringLiteral(r.name))],!0),r);t.push(i)}return t}function $i(e,t,r){let n=t.properties.filter(a=>e.ts.isPropertyAssignment(a)),i=Object.keys(r).filter(a=>a!=="isRegistered");for(let a of i)n=xl(e,n,r,a);return n=yl(e,n.filter(a=>{let o=O(e,a);return i.includes(o)})),e.ts.factory.updateObjectLiteralExpression(t,n)}function xl(e,t,r,n){let i=t.findIndex(a=>e.ts.isIdentifier(a.name)&&a.name.text===n);return i>-1?t[i]=e.ts.factory.updatePropertyAssignment(t[i],t[i].name,nn(e,r[n])):t.push(e.ts.factory.createPropertyAssignment(n,nn(e,r[n]))),t}function he(e,t){for(let r of t){let n=e.inputs.findIndex(i=>i.name===r.name);n>-1?(r.isRegistered||!e.inputs[n].isRegistered)&&(e.inputs[n]=r):e.inputs.push(r)}e.acceptsChildren=vr(e)}function El(e){let t=Ar(e.type),r={name:e.name.trim(),type:t.builderType};return le(e.friendlyName)&&e.friendlyName.trim()!==e.name.trim()&&(r.friendlyName=e.friendlyName),(le(e.defaultValue)||Jt(e.defaultValue)||vt(e.defaultValue))&&(r.defaultValue=e.defaultValue),le(e.helperText)&&(r.helperText=e.helperText),vt(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),br(r)}function vr(e){let t=e.inputs.some(n=>n.name==="children"),r=e.inputs.some(n=>n.meta?.ts==="ReactNode");return!!(t||r||e.acceptsChildren===!0)}function br(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 Fl(e,t){let r=[...t.properties].sort((n,i)=>{let a=O(e,n)||"zz",o=O(e,i)||"zz";if(a==="inputs")return 1;let s=Oi.indexOf(a),u=Oi.indexOf(o);return s>-1?u>-1&&s>u?1:-1:u>-1?s>-1&&u<s?-1:1:a.localeCompare(o)});return e.ts.factory.updateObjectLiteralExpression(t,r)}var Oi=["component","name","description"];function yl(e,t){return[...t].sort((n,i)=>{let a=O(e,n)||"zz",o=O(e,i)||"zz",s=Li.indexOf(a),u=Li.indexOf(o);return s>-1?u>-1&&s>u?1:-1:u>-1?s>-1&&u<s?-1:1:a.localeCompare(o)})}var Li=["name","type"];function kt(e,t){for(let r of t.properties){if(!e.ts.isPropertyAssignment(r)||!e.ts.isIdentifier(r.name))continue;if(O(e,r)==="canHaveChildren"){let{initializer:i}=r;return i.kind===e.ts.SyntaxKind.TrueKeyword}}return!1}function _i(e,t){let r=`Builder.registerComponent(
|
|
283
|
+
`;if(e.appDir)t.acceptsChildren?r+=` withChildren(${t.importName}),
|
|
284
|
+
`:r+=` ${t.importName},
|
|
285
|
+
`;else{let i=t.externalImportPath?t.externalImportPath:k(e,e.registryPath,t.filePath);t.exportName==="default"?t.acceptsChildren?r+=` withChildren(dynamic(() => import(${JSON.stringify(i)}))),
|
|
286
|
+
`:r+=` dynamic(() => import(${JSON.stringify(i)})),
|
|
287
|
+
`:t.acceptsChildren?r+=` withChildren(dynamic(async () => (await import(${JSON.stringify(i)})).${t.exportName})),
|
|
288
|
+
`:r+=` dynamic(async () => (await import(${JSON.stringify(i)})).${t.exportName}),
|
|
289
|
+
`}r+=` {
|
|
290
290
|
name: "${t.name}",
|
|
291
291
|
}
|
|
292
|
-
`,n+=");";let r=pr(e,n);return Cn(e,r,t)}function Cn(e,t,n){if(!e.ts.isExpressionStatement(t))return t;let r=t.expression;if(!e.ts.isCallExpression(r))return t;let i=[...r.arguments];if(i.length<2)return t;n.acceptsChildren?e.ts.isCallExpression(i[0])&&e.ts.isIdentifier(i[0].expression)&&i[0].expression.text==="withChildren"||(i[0]=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("withChildren"),void 0,[i[0]])):e.ts.isCallExpression(i[0])&&e.ts.isIdentifier(i[0].expression)&&i[0].expression.text==="withChildren"&&(i[0]=i[0].arguments[0]);let a=i[1];return e.ts.isObjectLiteralExpression(a)?(i[1]=Z(e,a,n),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(r,r.expression,r.typeArguments,i))):t}function N(e,t,n,r="esm"){return Array.isArray(n.namedImports)&&n.namedImports.forEach(i=>{t=Fl(e,t,i,n.importPath,!!n.isTypeOnly,r)}),typeof n.defaultImport=="string"&&(t=Sl(e,t,n.defaultImport,n.importPath,r)),t}function Fl(e,t,n,r,i,a){return a==="cjs"?yi(e,t,null,n,r):Ai(e,t,null,n,r,i)}function Sl(e,t,n,r,i){return i==="cjs"?yi(e,t,n,null,r):Ai(e,t,n,null,r,!1)}function Ai(e,t,n,r,i,a){let o=[...t.statements],u=0,s=!1,l=!1;for(let C=0;C<o.length;C++){let g=o[C];if(!e.ts.isImportDeclaration(g)||(u=C,!g.moduleSpecifier||!e.ts.isStringLiteral(g.moduleSpecifier))||g.moduleSpecifier.text!==i||!!g.importClause?.isTypeOnly!==a)continue;let D=[],d=g.importClause?.namedBindings;if(d&&e.ts.isNamedImports(d)&&d.elements&&D.push(...d.elements),typeof r=="string"){if(D.some(E=>E.name.text===r))return t;D.push(e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(r))),D.sort((E,x)=>E.name.text.localeCompare(x.name.text)),s=!0}let f=g.importClause?g.importClause.name:void 0;if(typeof n=="string"){if(f&&f.text===n)return t;f=e.ts.factory.createIdentifier(n),l=!0}if(s||l)return o[C]=e.ts.factory.updateImportDeclaration(g,void 0,e.ts.factory.createImportClause(a,f,e.ts.factory.createNamedImports(D)),g.moduleSpecifier,void 0),e.ts.factory.updateSourceFile(t,o)}let c,p;typeof n=="string"&&(c=e.ts.factory.createIdentifier(n)),typeof r=="string"&&(p=e.ts.factory.createNamedImports([e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(r))]));let m=e.ts.factory.createImportDeclaration(void 0,e.ts.factory.createImportClause(a,c,p),e.ts.factory.createStringLiteral(i));return o.splice(u,0,m),e.ts.factory.updateSourceFile(t,o)}function yi(e,t,n,r,i){let a=[...t.statements],o=0;for(let u=0;u<a.length;u++){let s=a[u];if(e.ts.isVariableStatement(s))for(let l=0;l<s.declarationList.declarations.length;l++){let c=[...s.declarationList.declarations],p=c[l],m=p.initializer;if(!m||!e.ts.isCallExpression(m))continue;let C=m.expression;if(!e.ts.isIdentifier(C)||C.text!=="require"||m.arguments.length!==1)continue;let g=m.arguments[0];if(e.ts.isStringLiteral(g)&&(o=u,g.text===i)){if(e.ts.isIdentifier(p.name)&&typeof n=="string")return p.name.text===n?t:(c[l]=e.ts.factory.updateVariableDeclaration(p,e.ts.factory.createIdentifier(n),p.exclamationToken,p.type,p.initializer),a[u]=e.ts.factory.updateVariableStatement(s,s.modifiers,e.ts.factory.updateVariableDeclarationList(s.declarationList,c)),e.ts.factory.updateSourceFile(t,a));if(e.ts.isObjectBindingPattern(p.name)&&typeof r=="string"){let D=[...p.name.elements];return D.some(f=>!e.ts.isBindingElement(f)||!e.ts.isIdentifier(f.name)?!1:f.name.text===r)?t:(D.push(e.ts.factory.createBindingElement(void 0,void 0,r)),D.sort((f,E)=>!e.ts.isBindingElement(f)||!e.ts.isIdentifier(f.name)||!e.ts.isBindingElement(E)||!e.ts.isIdentifier(E.name)?0:f.name.text.localeCompare(E.name.text)),c[l]=e.ts.factory.updateVariableDeclaration(p,e.ts.factory.createObjectBindingPattern(D),p.exclamationToken,p.type,p.initializer),a[u]=e.ts.factory.updateVariableStatement(s,s.modifiers,e.ts.factory.updateVariableDeclarationList(s.declarationList,c)),e.ts.factory.updateSourceFile(t,a))}}}}if(typeof n=="string"){let u=e.ts.factory.createVariableStatement(void 0,e.ts.factory.createVariableDeclarationList([e.ts.factory.createVariableDeclaration(n,void 0,void 0,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("require"),void 0,[e.ts.factory.createStringLiteral(i)]))],e.ts.NodeFlags.Const));return a.splice(o,0,u),e.ts.factory.updateSourceFile(t,a)}if(typeof r=="string"){let u=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,r)]),void 0,void 0,e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("require"),void 0,[e.ts.factory.createStringLiteral(i)]))],e.ts.NodeFlags.Const));return a.splice(o,0,u),e.ts.factory.updateSourceFile(t,a)}return t}function ft(e,t,n="esm"){return n==="cjs"?yl(e,t):Al(e,t)}function Al(e,t){let n=[];for(let r of t.statements){if(e.ts.isExportDeclaration(r)){if(r.exportClause&&e.ts.isNamedExports(r.exportClause)){for(let i of r.exportClause.elements)if(r.moduleSpecifier&&n.push({isDefaultExport:!1,statement:r,node:i}),e.ts.isIdentifier(i.name)){let a=i.name.text;for(let o of t.statements)if(e.ts.isVariableStatement(o))for(let u of o.declarationList.declarations)e.ts.isIdentifier(u.name)&&u.name.text===a&&n.push({isDefaultExport:!1,statement:o,node:o});else e.ts.isFunctionDeclaration(o)&&o.name&&o.name.text===a&&n.push({isDefaultExport:!1,statement:o,node:o})}}else!r.exportClause&&r.moduleSpecifier&&n.push({isDefaultExport:!1,statement:r,node:r});continue}if(e.ts.isExportAssignment(r)){let i=r.flags===e.ts.NodeFlags.None,a=r.expression;if(e.ts.isIdentifier(a)){let o=a.text;for(let u of t.statements){if(e.ts.isVariableStatement(u))for(let s of u.declarationList.declarations)e.ts.isIdentifier(s.name)&&s.name.text===o&&n.push({isDefaultExport:i,statement:u,node:u});e.ts.isFunctionDeclaration(u)&&u.name?.text===o&&n.push({isDefaultExport:i,statement:u,node:u})}}else(e.ts.isArrowFunction(a)||e.ts.isCallExpression(a)||e.ts.isFunctionDeclaration(a)||e.ts.isObjectLiteralExpression(a))&&n.push({isDefaultExport:i,statement:r,node:a});continue}if((e.ts.isVariableStatement(r)||e.ts.isFunctionDeclaration(r))&&r.modifiers&&r.modifiers.some(i=>i.kind===e.ts.SyntaxKind.ExportKeyword)){n.push({isDefaultExport:r.modifiers.some(i=>i.kind===e.ts.SyntaxKind.DefaultKeyword),statement:r,node:r});continue}}return n}function yl(e,t){let n=[];for(let r of t.statements)if(e.ts.isExpressionStatement(r)&&e.ts.isBinaryExpression(r.expression)&&e.ts.isPropertyAccessExpression(r.expression.left)){let i=r.expression.left,a=r.expression.right;if(!e.ts.isIdentifier(i.expression))continue;if(i.expression.text==="module"&&i.name.text==="exports"){if(e.ts.isIdentifier(a)){let o=a.text;for(let u of t.statements)if(e.ts.isVariableStatement(u))for(let s of u.declarationList.declarations)e.ts.isIdentifier(s.name)&&s.name.text===o&&n.push({isDefaultExport:!0,statement:u,node:u});else e.ts.isFunctionDeclaration(u)&&u.name&&u.name.text===o&&n.push({isDefaultExport:!0,statement:u,node:u})}else n.push({isDefaultExport:!0,statement:r,node:a});continue}}return n}function vl(e,t,n){for(let r of t.statements)if(e.ts.isImportDeclaration(r)&&r.importClause){if(r.importClause.namedBindings&&e.ts.isNamedImports(r.importClause.namedBindings)){for(let i of r.importClause.namedBindings.elements)if(e.ts.isIdentifier(i.name)&&i.name.text===n&&e.ts.isStringLiteral(r.moduleSpecifier))return{importPath:r.moduleSpecifier.text,exportType:"named"}}if(r.importClause.name&&r.importClause.name.text===n&&e.ts.isStringLiteral(r.moduleSpecifier))return{importPath:r.moduleSpecifier.text,exportType:"default"}}return null}async function Re(e,t,n,r){let i=vl(e,n,r);if(i){let a=await Gt(e,e.normalize(e.resolve(e.dirname(t),i.importPath))),o=e.relative(e.getAppRootDir(),a);return{displayFilePath:k(e,a),filePath:a,relFilePath:o,importPath:i.importPath,exportType:i.exportType}}return null}function Tt(e,t,n){for(let r=0;r<t.statements.length;r++){let i=t.statements[r];if(e.ts.isVariableStatement(i)){for(let a of i.declarationList.declarations)if(e.ts.isIdentifier(a.name)&&a.name.text===n)return{statement:i,statementIndex:r}}}return null}function Q(e,t,n){let r=Tt(e,t,n);if(r&&r.statement.declarationList.declarations.length>0){let i=r.statement.declarationList.declarations[0];if(i.initializer&&e.ts.isArrayLiteralExpression(i.initializer))return{statement:r.statement,statementIndex:r.statementIndex,variableDeclaration:i,arrayLiteralExp:i.initializer}}return null}function yr(e,t){if(t){if(bl(e,t))return!0;let n=!1;if(t.forEachChild(r=>{yr(e,r)&&(n=!0)}),n)return!0}return!1}function bl(e,t){return e.ts.isJsxElement(t)||e.ts.isJsxOpeningElement(t)||e.ts.isJsxOpeningFragment(t)||e.ts.isJsxSelfClosingElement(t)||e.ts.isJsxFragment(t)||e.ts.isJsxChild(t)}async function Gt(e,t){let n=e.extname(t).toLowerCase();if(n===""||!hn.includes(n)){for(let r of hn){let i=t+r;if(await e.exists(i))return i}for(let r of hn){let i=e.join(t,"index"+r);if(await e.exists(i))return i}}return t}var hn=[".tsx",".jsx",".ts",".js"];function It(e,t,n){if(!n||!t)return;let r=t.getSymbolAtLocation(n);if(!r)return;let i=r.valueDeclaration;if(!i)return;let a=i.getSourceFile().fileName,o=wl(e,a);return o?[{name:o}]:void 0}function wl(e,t){if(typeof t=="string"){t=e.normalize(Ae(t));let n=t.split("/"),r=n.lastIndexOf("node_modules");if(r>-1){let i=n.slice(r+1),a=i[0];if(a)return a.startsWith("@")&&i[1]&&(a+="/"+i[1]),a}}}function Ne(e){let t=[];for(let n of e)if(n.dependencies)for(let r of n.dependencies)t.some(i=>i.name===r.name)||t.push({...r});return t.sort((n,r)=>n.name.localeCompare(r.name))}function vi(e,t,n="esm"){return n==="cjs"?Il(e,t):Tl(e,t)}var Pl=/^(@\w|\w)/;function Tl(e,t){let n=[];for(let r of t.statements)if(e.ts.isImportDeclaration(r)&&e.ts.isLiteralExpression(r.moduleSpecifier)){if(!Pl.test(r.moduleSpecifier.text)||r.importClause?.isTypeOnly)continue;if(r.importClause&&r.importClause.namedBindings&&e.ts.isNamedImports(r.importClause.namedBindings))for(let i of r.importClause.namedBindings.elements)i.isTypeOnly||n.push({isDefaultExport:!1,statement:r,node:i.name});r.importClause&&r.importClause.name&&n.push({isDefaultExport:!0,statement:r,node:r.importClause.name})}return n}function Il(e,t){return[]}async function Bt(e,t){if(!t.some(o=>!o.isRegistered))return t;let r=await X(e,t.map(o=>o.filePath)),i=r.getTypeChecker();return await Promise.all(t.map(async o=>{let u=r.getSourceFile(o.filePath);if(u){let l=(await rt(e,i,o.filePath,u,!1)).find(c=>c.cmpInfo.id===o.id);l&&(o.inputs=mt(e,i,l.node.fnNode))}return o}))}async function Rt(e,t,n,r){if(t.node.fnNode){let{sourceFile:i,typeChecker:a}=await St(e,t.cmpInfo.filePath,n),u=(await rt(e,a,t.cmpInfo.filePath,i,r)).find(s=>s.cmpInfo.id===t.cmpInfo.id);if(!u)throw new Error(`createComponentInputs() Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return mt(e,a,u.node.fnNode)}return[]}async function wi(e,t,n){let r=e.extname(t).toLowerCase();if(r===".tsx"||r===".jsx"||r===".ts"||r===".js"){let i=await e.readFile(t);if(i)return Bl(e,t,i,n)}return null}function Bl(e,t,n,r=!1){let i=B(e,n);return rt(e,null,t,i,r)}async function rt(e,t,n,r,i){let a=[];for(let u of r.statements)if(e.ts.isExpressionStatement(u)&&e.ts.isStringLiteral(u.expression)&&u.expression.text==="use server")return a;let o=ft(e,r);return i&&o.push(...vi(e,r)),n=e.normalize(n),await Promise.all(o.map(async u=>{let s=await Rl(e,t,n,u);a.push(...s)})),a}async function Rl(e,t,n,r){let i=[],a=e.relative(e.getAppRootDir(),n),o=M(e,n);if(e.ts.isVariableStatement(r.node)){for(let u of r.node.declarationList.declarations){if(!e.ts.isIdentifier(u.name)||!Ft(u.name.text))continue;let s=qe(e,t,u.initializer);if(s){let l=s.name||u.name.text,c=r.isDefaultExport?"default":l,p=r.isDefaultExport?"default":"named";i.push({cmpInfo:{id:await V(e,n,c),displayFilePath:k(e,n),name:K(l),inputs:[],exportName:c,exportType:p,importName:l,filePath:n,relFilePath:a,importPath:o,dependencies:s.deps},node:s})}}return i}if(e.ts.isArrowFunction(r.node)){let u=qe(e,t,r.node);if(u){let s=Ee(e,n),l=r.isDefaultExport?"default":s,c=r.isDefaultExport?"default":"named";i.push({cmpInfo:{id:await V(e,n,l),displayFilePath:k(e,n),name:s,inputs:[],exportName:l,exportType:c,importName:pt(e,n),filePath:n,relFilePath:a,importPath:o,dependencies:u.deps},node:u})}return i}if(e.ts.isFunctionExpression(r.node)||e.ts.isFunctionDeclaration(r.node)){let u=r.node.name?.text;if(u&&!Ft(u))return i;let s=qe(e,t,r.node);if(s){let l=s.name||Ee(e,n),c=r.isDefaultExport||!s.name?"default":s.name,p=r.isDefaultExport?"default":"named";i.push({cmpInfo:{id:await V(e,n,c),displayFilePath:k(e,n),name:l,inputs:[],exportName:c,exportType:p,importName:s.name||pt(e,n),filePath:n,relFilePath:a,importPath:o,dependencies:s.deps},node:s})}return i}if((e.ts.isExportSpecifier(r.node)||e.ts.isIdentifier(r.node))&&Ft(r.node.getText())){let u,s=qe(e,t,r.node);if(s){let l=s.name||Ee(e,n),c=r.isDefaultExport||!s.name?"default":s.name,p=r.isDefaultExport?"default":"named",m=Nl(e,r.node)?.moduleSpecifier??$l(e,r.node)?.moduleSpecifier;if(m&&e.ts.isStringLiteral(m)){let C=t?.getSymbolAtLocation(m);if(C&&C.declarations&&C.declarations.length>0){let g=C.declarations[0];(!e.ts.isSourceFile(g)||e.ts.isSourceFile(g)&&g.fileName.includes("node_modules"))&&(u=m.text)}}i.push({cmpInfo:{id:await V(e,n,c,u),displayFilePath:k(e,n),name:l,inputs:[],exportName:c,exportType:p,importName:s.name||pt(e,n),filePath:n,relFilePath:a,importPath:u||o,externalImportPath:u,dependencies:s.deps},node:s})}return i}if(e.ts.isExportDeclaration(r.node)&&r.node.exportClause===void 0){let u=r.node.moduleSpecifier;if(u&&e.ts.isStringLiteral(u)){let s=await Ol(e,t,n,u);i.push(...s)}return i}return i}function Nl(e,t){for(;t;){if(e.ts.isExportDeclaration(t))return t;t=t.parent}return null}function $l(e,t){for(;t;){if(e.ts.isImportDeclaration(t))return t;t=t.parent}return null}function qe(e,t,n){if(!n)return null;if(e.ts.isArrowFunction(n))return yr(e,n.body)?{name:"",fnNode:n,deps:It(e,t,n)}:null;if(e.ts.isFunctionExpression(n)||e.ts.isFunctionDeclaration(n))return yr(e,n.body)?{name:n.name?.text||"",fnNode:n,deps:It(e,t,n)}:null;if(e.ts.isCallExpression(n)){let r=n.expression;if(e.ts.isPropertyAccessExpression(r)){let i=n.arguments;if(i.length===0)return null;let a=r.expression;if(!e.ts.isIdentifier(a)||a.text!=="React")return null;let o=r.name;return!e.ts.isIdentifier(o)||o.text!=="forwardRef"?null:qe(e,t,i[0])}else if(e.ts.isIdentifier(r)&&r.text==="observer"){let i=n.arguments;return i.length===0?null:qe(e,t,i[0])}return null}if(!t)return null;if(e.ts.isPropertyAccessExpression(n)){let r=n.expression,i=n.name;if(!e.ts.isIdentifier(r)||!e.ts.isIdentifier(i)||!Ft(i.text))return null;let o=t.getTypeAtLocation(i).getCallSignatures();if(o.length>0&&o[0].getParameters().length>0)return{name:"",fnNode:i,deps:It(e,t,i)}}if(e.ts.isExportSpecifier(n)){let r=n.name;return{name:r.text||"",fnNode:r,deps:It(e,t,r)}}if(e.ts.isIdentifier(n))return{name:n.text||"",fnNode:n,deps:It(e,t,n)};if(e.ts.isExpressionStatement(n)){let r=n.expression;if(e.ts.isAsExpression(r)&&e.ts.isIdentifier(r.type)&&r.type.text==="default")return qe(e,t,r.expression)}if(e.ts.isVariableStatement(n)){for(let r of n.declarationList.declarations)if(r.initializer&&e.ts.isAsExpression(r.initializer)){let i=r.initializer;if(e.ts.isIdentifier(i.type)&&i.type.text==="default"){let a=qe(e,t,i.expression);if(a&&e.ts.isIdentifier(r.name))return{name:r.name.text,fnNode:a.fnNode,deps:a.deps}}}}return null}async function Pi(e,t){let n=[],r=t.getSourceFiles(),i=t.getTypeChecker();return await Promise.all(r.map(async a=>{let o=e.normalize(a.fileName);if(mr(e,kl,a.fileName)||o===e.reactConfigPath||o===e.builderComponentPath)return;let u=await rt(e,i,o,a,o===e.registryPath);n.push(...u)})),n.sort((a,o)=>a.cmpInfo.name.localeCompare(o.cmpInfo.name))}var kl=new Set(["node_modules","dist"]);async function Ol(e,t,n,r){let i=[],a=r.text;if(!t)return i;try{let o=t.getSymbolAtLocation(r);if(!o)return i;let u=t.getExportsOfModule(o);for(let s of u){let l=s.valueDeclaration||s.declarations?.[0];if(!l)continue;let c=s.name;if(!Ft(c)&&c!=="default"||!Ti(e,t,l))continue;let p=qe(e,t,l);if(p){let m=s.name,C=m==="default"?"default":"named",g=K(m),D=m==="default"?pt(e,n):m;i.push({cmpInfo:{id:await V(e,n,m,a),displayFilePath:k(e,n),name:g,inputs:[],exportName:m,exportType:C,importName:D,filePath:n,relFilePath:e.relative(e.getAppRootDir(),n),importPath:a,externalImportPath:a,dependencies:p.deps},node:p})}}}catch(o){console.error(`Error processing module ${a}:`,o)}return i}function Ti(e,t,n){if(e.ts.isInterfaceDeclaration(n)||e.ts.isTypeAliasDeclaration(n))return!1;if(e.ts.isExportSpecifier(n)){let r=t.getSymbolAtLocation(n.name);if(r){let a=t.getAliasedSymbol(r).declarations?.[0];if(a)return Ti(e,t,a)}return!1}if(e.ts.isFunctionDeclaration(n)||e.ts.isArrowFunction(n)||e.ts.isFunctionExpression(n)){let r=t.getSignatureFromDeclaration(n);if(r){let i=t.getReturnTypeOfSignature(r);return bi(i,t)}}return e.ts.isClassDeclaration(n)?n.heritageClauses?.some(i=>i.types.some(a=>a.expression.getText()==="React.Component"||a.expression.getText()==="Component"))??!1:e.ts.isVariableDeclaration(n)?t.getTypeAtLocation(n).getCallSignatures().some(a=>bi(t.getReturnTypeOfSignature(a),t)):!1}function bi(e,t){let n=t.typeToString(e);return n==="JSX.Element"||n==="Element"||n.includes("ReactElement")||n.includes("React.ReactElement")||n.includes("ReactNode")}async function Ii(e,t){let n=[],r=t.getSourceFiles(),i=t.getTypeChecker();return await Promise.all(r.map(async a=>{let o=e.basename(a.fileName);if(e.appDir&&Ll.has(o)||e.dirname(a.fileName).includes("node_modules"))return;let u=e.normalize(a.fileName);if(u===e.nextConfigPath||u===e.builderComponentPath)return;let s=await rt(e,i,u,a,u===e.registryPath||he(u));n.push(...s)})),n.sort((a,o)=>a.cmpInfo.name.localeCompare(o.cmpInfo.name))}var Ll=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 $e(e,t){let n=[],r=[],i=[],a=[];for(let o of t.statements){if(e.ts.isImportDeclaration(o)){if(e.ts.isStringLiteral(o.moduleSpecifier)){let s=o.moduleSpecifier.text;if(!s.startsWith(".")&&!s.startsWith("/")){n.push(o);continue}}let u=o.importClause;if(u){if(u.namedBindings){r.push(o);continue}if(u.name){r.push(o);continue}}i.push(o);continue}a.push(o)}return e.ts.factory.updateSourceFile(t,[...En(e,n),...En(e,r),...En(e,i),...a])}function ve(e){let t=e.split(`
|
|
293
|
-
`).map(
|
|
292
|
+
`,r+=");";let n=Fn(e,r);return Pr(e,n,t)}function Pr(e,t,r){if(!e.ts.isExpressionStatement(t))return t;let n=t.expression;if(!e.ts.isCallExpression(n))return t;let i=[...n.arguments];if(i.length<2)return t;r.acceptsChildren?e.ts.isCallExpression(i[0])&&e.ts.isIdentifier(i[0].expression)&&i[0].expression.text==="withChildren"||(i[0]=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("withChildren"),void 0,[i[0]])):e.ts.isCallExpression(i[0])&&e.ts.isIdentifier(i[0].expression)&&i[0].expression.text==="withChildren"&&(i[0]=i[0].arguments[0]);let a=i[1];return e.ts.isObjectLiteralExpression(a)?(i[1]=ee(e,a,r),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(n,n.expression,n.typeArguments,i))):t}function N(e,t,r,n="esm"){return Array.isArray(r.namedImports)&&r.namedImports.forEach(i=>{t=Sl(e,t,i,r.importPath,!!r.isTypeOnly,n)}),typeof r.defaultImport=="string"&&(t=wl(e,t,r.defaultImport,r.importPath,n)),t}function Sl(e,t,r,n,i,a){return a==="cjs"?Mi(e,t,null,r,n):ji(e,t,null,r,n,i)}function wl(e,t,r,n,i){return i==="cjs"?Mi(e,t,r,null,n):ji(e,t,r,null,n,!1)}function ji(e,t,r,n,i,a){let o=[...t.statements],s=0,u=!1,c=!1;for(let h=0;h<o.length;h++){let g=o[h];if(!e.ts.isImportDeclaration(g)||(s=h,!g.moduleSpecifier||!e.ts.isStringLiteral(g.moduleSpecifier))||g.moduleSpecifier.text!==i||!!g.importClause?.isTypeOnly!==a)continue;let D=[],d=g.importClause?.namedBindings;if(d&&e.ts.isNamedImports(d)&&d.elements&&D.push(...d.elements),typeof n=="string"){if(D.some(E=>E.name.text===n))return t;D.push(e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(n))),D.sort((E,x)=>E.name.text.localeCompare(x.name.text)),u=!0}let f=g.importClause?g.importClause.name:void 0;if(typeof r=="string"){if(f&&f.text===r)return t;f=e.ts.factory.createIdentifier(r),c=!0}if(u||c)return o[h]=e.ts.factory.updateImportDeclaration(g,void 0,e.ts.factory.createImportClause(a,f,e.ts.factory.createNamedImports(D)),g.moduleSpecifier,void 0),e.ts.factory.updateSourceFile(t,o)}let l,p;typeof r=="string"&&(l=e.ts.factory.createIdentifier(r)),typeof n=="string"&&(p=e.ts.factory.createNamedImports([e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(n))]));let m=e.ts.factory.createImportDeclaration(void 0,e.ts.factory.createImportClause(a,l,p),e.ts.factory.createStringLiteral(i));return o.splice(s,0,m),e.ts.factory.updateSourceFile(t,o)}function Mi(e,t,r,n,i){let a=[...t.statements],o=0;for(let s=0;s<a.length;s++){let u=a[s];if(e.ts.isVariableStatement(u))for(let c=0;c<u.declarationList.declarations.length;c++){let l=[...u.declarationList.declarations],p=l[c],m=p.initializer;if(!m||!e.ts.isCallExpression(m))continue;let h=m.expression;if(!e.ts.isIdentifier(h)||h.text!=="require"||m.arguments.length!==1)continue;let g=m.arguments[0];if(e.ts.isStringLiteral(g)&&(o=s,g.text===i)){if(e.ts.isIdentifier(p.name)&&typeof r=="string")return p.name.text===r?t:(l[c]=e.ts.factory.updateVariableDeclaration(p,e.ts.factory.createIdentifier(r),p.exclamationToken,p.type,p.initializer),a[s]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,l)),e.ts.factory.updateSourceFile(t,a));if(e.ts.isObjectBindingPattern(p.name)&&typeof n=="string"){let D=[...p.name.elements];return D.some(f=>!e.ts.isBindingElement(f)||!e.ts.isIdentifier(f.name)?!1:f.name.text===n)?t:(D.push(e.ts.factory.createBindingElement(void 0,void 0,n)),D.sort((f,E)=>!e.ts.isBindingElement(f)||!e.ts.isIdentifier(f.name)||!e.ts.isBindingElement(E)||!e.ts.isIdentifier(E.name)?0:f.name.text.localeCompare(E.name.text)),l[c]=e.ts.factory.updateVariableDeclaration(p,e.ts.factory.createObjectBindingPattern(D),p.exclamationToken,p.type,p.initializer),a[s]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,l)),e.ts.factory.updateSourceFile(t,a))}}}}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(i)]))],e.ts.NodeFlags.Const));return a.splice(o,0,s),e.ts.factory.updateSourceFile(t,a)}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(i)]))],e.ts.NodeFlags.Const));return a.splice(o,0,s),e.ts.factory.updateSourceFile(t,a)}return t}function xt(e,t,r="esm"){return r==="cjs"?vl(e,t):Al(e,t)}function Al(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 i of n.exportClause.elements)if(n.moduleSpecifier&&r.push({isDefaultExport:!1,statement:n,node:i}),e.ts.isIdentifier(i.name)){let a=i.name.text;for(let o of t.statements)if(e.ts.isVariableStatement(o))for(let s of o.declarationList.declarations)e.ts.isIdentifier(s.name)&&s.name.text===a&&r.push({isDefaultExport:!1,statement:o,node:o});else e.ts.isFunctionDeclaration(o)&&o.name&&o.name.text===a&&r.push({isDefaultExport:!1,statement:o,node:o})}}else!n.exportClause&&n.moduleSpecifier&&r.push({isDefaultExport:!1,statement:n,node:n});continue}if(e.ts.isExportAssignment(n)){let i=n.flags===e.ts.NodeFlags.None,a=n.expression;if(e.ts.isIdentifier(a)){let o=a.text;for(let s of t.statements){if(e.ts.isVariableStatement(s))for(let u of s.declarationList.declarations)e.ts.isIdentifier(u.name)&&u.name.text===o&&r.push({isDefaultExport:i,statement:s,node:s});e.ts.isFunctionDeclaration(s)&&s.name?.text===o&&r.push({isDefaultExport:i,statement:s,node:s})}}else(e.ts.isArrowFunction(a)||e.ts.isCallExpression(a)||e.ts.isFunctionDeclaration(a)||e.ts.isObjectLiteralExpression(a))&&r.push({isDefaultExport:i,statement:n,node:a});continue}if((e.ts.isVariableStatement(n)||e.ts.isFunctionDeclaration(n))&&n.modifiers&&n.modifiers.some(i=>i.kind===e.ts.SyntaxKind.ExportKeyword)){r.push({isDefaultExport:n.modifiers.some(i=>i.kind===e.ts.SyntaxKind.DefaultKeyword),statement:n,node:n});continue}}return r}function vl(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 i=n.expression.left,a=n.expression.right;if(!e.ts.isIdentifier(i.expression))continue;if(i.expression.text==="module"&&i.name.text==="exports"){if(e.ts.isIdentifier(a)){let o=a.text;for(let s of t.statements)if(e.ts.isVariableStatement(s))for(let u of s.declarationList.declarations)e.ts.isIdentifier(u.name)&&u.name.text===o&&r.push({isDefaultExport:!0,statement:s,node:s});else e.ts.isFunctionDeclaration(s)&&s.name&&s.name.text===o&&r.push({isDefaultExport:!0,statement:s,node:s})}else r.push({isDefaultExport:!0,statement:n,node:a});continue}}return r}function bl(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 i of n.importClause.namedBindings.elements)if(e.ts.isIdentifier(i.name)&&i.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 Re(e,t,r,n){let i=bl(e,r,n);if(i){let a=await on(e,e.normalize(e.resolve(e.dirname(t),i.importPath))),o=e.relative(e.getAppRootDir(),a);return{displayFilePath:$(e,a),filePath:a,relFilePath:o,importPath:i.importPath,exportType:i.exportType}}return null}function $t(e,t,r){for(let n=0;n<t.statements.length;n++){let i=t.statements[n];if(e.ts.isVariableStatement(i)){for(let a of i.declarationList.declarations)if(e.ts.isIdentifier(a.name)&&a.name.text===r)return{statement:i,statementIndex:n}}}return null}function Y(e,t,r){let n=$t(e,t,r);if(n&&n.statement.declarationList.declarations.length>0){let i=n.statement.declarationList.declarations[0];if(i.initializer&&e.ts.isArrayLiteralExpression(i.initializer))return{statement:n.statement,statementIndex:n.statementIndex,variableDeclaration:i,arrayLiteralExp:i.initializer}}return null}function Bn(e,t){if(t){if(Pl(e,t))return!0;let r=!1;if(t.forEachChild(n=>{Bn(e,n)&&(r=!0)}),r)return!0}return!1}function Pl(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 on(e,t){let r=e.extname(t).toLowerCase();if(r===""||!Tr.includes(r)){for(let n of Tr){let i=t+n;if(await e.exists(i))return i}for(let n of Tr){let i=e.join(t,"index"+n);if(await e.exists(i))return i}}return t}var Tr=[".tsx",".jsx",".ts",".js"];function Ot(e,t,r){if(!r||!t)return;let n=t.getSymbolAtLocation(r);if(!n)return;let i=n.valueDeclaration;if(!i)return;let a=i.getSourceFile().fileName,o=Tl(e,a);return o?[{name:o}]:void 0}function Tl(e,t){if(typeof t=="string"){t=e.normalize(Se(t));let r=t.split("/"),n=r.lastIndexOf("node_modules");if(n>-1){let i=r.slice(n+1),a=i[0];if(a)return a.startsWith("@")&&i[1]&&(a+="/"+i[1]),a}}}function Ne(e){let t=[];for(let r of e)if(r.dependencies)for(let n of r.dependencies)t.some(i=>i.name===n.name)||t.push({...n});return t.sort((r,n)=>r.name.localeCompare(n.name))}function Ki(e,t,r="esm"){return r==="cjs"?Rl(e,t):Bl(e,t)}var Il=/^(@\w|\w)/;function Bl(e,t){let r=[];for(let n of t.statements)if(e.ts.isImportDeclaration(n)&&e.ts.isLiteralExpression(n.moduleSpecifier)){if(!Il.test(n.moduleSpecifier.text)||n.importClause?.isTypeOnly)continue;if(n.importClause&&n.importClause.namedBindings&&e.ts.isNamedImports(n.importClause.namedBindings))for(let i of n.importClause.namedBindings.elements)i.isTypeOnly||r.push({isDefaultExport:!1,statement:n,node:i.name});n.importClause&&n.importClause.name&&r.push({isDefaultExport:!0,statement:n,node:n.importClause.name})}return r}function Rl(e,t){return[]}async function Lt(e,t){if(!t.some(o=>!o.isRegistered))return t;let n=await Z(e,t.map(o=>o.filePath)),i=n.getTypeChecker();return await Promise.all(t.map(async o=>{let s=n.getSourceFile(o.filePath);if(s){let c=(await ot(e,i,o.filePath,s,!1)).find(l=>l.cmpInfo.id===o.id);c&&(o.inputs=Ct(e,i,c.node.fnNode))}return o}))}async function _t(e,t,r,n){if(t.node.fnNode){let{sourceFile:i,typeChecker:a}=await Pt(e,t.cmpInfo.filePath,r),s=(await ot(e,a,t.cmpInfo.filePath,i,n)).find(u=>u.cmpInfo.id===t.cmpInfo.id);if(!s)throw new Error(`createComponentInputs() Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return Ct(e,a,s.node.fnNode)}return[]}async function Ui(e,t,r){let n=e.extname(t).toLowerCase();if(n===".tsx"||n===".jsx"||n===".ts"||n===".js"){let i=await e.readFile(t);if(i)return Nl(e,t,i,r)}return null}function Nl(e,t,r,n=!1){let i=B(e,r);return ot(e,null,t,i,n)}async function ot(e,t,r,n,i){let a=[];for(let s of n.statements)if(e.ts.isExpressionStatement(s)&&e.ts.isStringLiteral(s.expression)&&s.expression.text==="use server")return a;let o=xt(e,n);return i&&o.push(...Ki(e,n)),r=e.normalize(r),await Promise.all(o.map(async s=>{let u=await kl(e,t,r,s);a.push(...u)})),a}async function kl(e,t,r,n){let i=[],a=e.relative(e.getAppRootDir(),r),o=V(e,r);if(e.ts.isVariableStatement(n.node)){for(let s of n.node.declarationList.declarations){if(!e.ts.isIdentifier(s.name)||!bt(s.name.text))continue;let u=qe(e,t,s.initializer);if(u){let c=u.name||s.name.text,l=n.isDefaultExport?"default":c,p=n.isDefaultExport?"default":"named";i.push({cmpInfo:{id:await U(e,r,l),displayFilePath:$(e,r),name:z(c),inputs:[],exportName:l,exportType:p,importName:c,filePath:r,relFilePath:a,importPath:o,dependencies:u.deps},node:u})}}return i}if(e.ts.isArrowFunction(n.node)){let s=qe(e,t,n.node);if(s){let u=xe(e,r),c=n.isDefaultExport?"default":u,l=n.isDefaultExport?"default":"named";i.push({cmpInfo:{id:await U(e,r,c),displayFilePath:$(e,r),name:u,inputs:[],exportName:c,exportType:l,importName:Dt(e,r),filePath:r,relFilePath:a,importPath:o,dependencies:s.deps},node:s})}return i}if(e.ts.isFunctionExpression(n.node)||e.ts.isFunctionDeclaration(n.node)){let s=n.node.name?.text;if(s&&!bt(s))return i;let u=qe(e,t,n.node);if(u){let c=u.name||xe(e,r),l=n.isDefaultExport||!u.name?"default":u.name,p=n.isDefaultExport?"default":"named";i.push({cmpInfo:{id:await U(e,r,l),displayFilePath:$(e,r),name:c,inputs:[],exportName:l,exportType:p,importName:u.name||Dt(e,r),filePath:r,relFilePath:a,importPath:o,dependencies:u.deps},node:u})}return i}if((e.ts.isExportSpecifier(n.node)||e.ts.isIdentifier(n.node))&&bt(n.node.getText())){let s,u=qe(e,t,n.node);if(u){let c=u.name||xe(e,r),l=n.isDefaultExport||!u.name?"default":u.name,p=n.isDefaultExport?"default":"named",m=$l(e,n.node)?.moduleSpecifier??Ol(e,n.node)?.moduleSpecifier;if(m&&e.ts.isStringLiteral(m)){let h=t?.getSymbolAtLocation(m);if(h&&h.declarations&&h.declarations.length>0){let g=h.declarations[0];(!e.ts.isSourceFile(g)||e.ts.isSourceFile(g)&&g.fileName.includes("node_modules"))&&(s=m.text)}}i.push({cmpInfo:{id:await U(e,r,l,s),displayFilePath:$(e,r),name:c,inputs:[],exportName:l,exportType:p,importName:u.name||Dt(e,r),filePath:r,relFilePath:a,importPath:s||o,externalImportPath:s,dependencies:u.deps},node:u})}return i}if(e.ts.isExportDeclaration(n.node)&&n.node.exportClause===void 0){let s=n.node.moduleSpecifier;if(s&&e.ts.isStringLiteral(s)){let u=await _l(e,t,r,s);i.push(...u)}return i}return i}function $l(e,t){for(;t;){if(e.ts.isExportDeclaration(t))return t;t=t.parent}return null}function Ol(e,t){for(;t;){if(e.ts.isImportDeclaration(t))return t;t=t.parent}return null}function qe(e,t,r){if(!r)return null;if(e.ts.isArrowFunction(r))return Bn(e,r.body)?{name:"",fnNode:r,deps:Ot(e,t,r)}:null;if(e.ts.isFunctionExpression(r)||e.ts.isFunctionDeclaration(r))return Bn(e,r.body)?{name:r.name?.text||"",fnNode:r,deps:Ot(e,t,r)}:null;if(e.ts.isCallExpression(r)){let n=r.expression;if(e.ts.isPropertyAccessExpression(n)){let i=r.arguments;if(i.length===0)return null;let a=n.expression;if(!e.ts.isIdentifier(a)||a.text!=="React")return null;let o=n.name;return!e.ts.isIdentifier(o)||o.text!=="forwardRef"?null:qe(e,t,i[0])}else if(e.ts.isIdentifier(n)&&n.text==="observer"){let i=r.arguments;return i.length===0?null:qe(e,t,i[0])}return null}if(!t)return null;if(e.ts.isPropertyAccessExpression(r)){let n=r.expression,i=r.name;if(!e.ts.isIdentifier(n)||!e.ts.isIdentifier(i)||!bt(i.text))return null;let o=t.getTypeAtLocation(i).getCallSignatures();if(o.length>0&&o[0].getParameters().length>0)return{name:"",fnNode:i,deps:Ot(e,t,i)}}if(e.ts.isExportSpecifier(r)){let n=r.name;return{name:n.text||"",fnNode:n,deps:Ot(e,t,n)}}if(e.ts.isIdentifier(r))return{name:r.text||"",fnNode:r,deps:Ot(e,t,r)};if(e.ts.isExpressionStatement(r)){let n=r.expression;if(e.ts.isAsExpression(n)&&e.ts.isIdentifier(n.type)&&n.type.text==="default")return qe(e,t,n.expression)}if(e.ts.isVariableStatement(r)){for(let n of r.declarationList.declarations)if(n.initializer&&e.ts.isAsExpression(n.initializer)){let i=n.initializer;if(e.ts.isIdentifier(i.type)&&i.type.text==="default"){let a=qe(e,t,i.expression);if(a&&e.ts.isIdentifier(n.name))return{name:n.name.text,fnNode:a.fnNode,deps:a.deps}}}}return null}async function zi(e,t){let r=[],n=t.getSourceFiles(),i=t.getTypeChecker();return await Promise.all(n.map(async a=>{let o=e.normalize(a.fileName);if(yn(e,Ll,a.fileName)||o===e.reactConfigPath||o===e.builderComponentPath)return;let s=await ot(e,i,o,a,o===e.registryPath);r.push(...s)})),r.sort((a,o)=>a.cmpInfo.name.localeCompare(o.cmpInfo.name))}var Ll=new Set(["node_modules","dist"]);async function _l(e,t,r,n){let i=[],a=n.text;if(!t)return i;try{let o=t.getSymbolAtLocation(n);if(!o)return i;let s=t.getExportsOfModule(o);for(let u of s){let c=u.valueDeclaration||u.declarations?.[0];if(!c)continue;let l=u.name;if(!bt(l)&&l!=="default"||!qi(e,t,c))continue;let p=qe(e,t,c);if(p){let m=u.name,h=m==="default"?"default":"named",g=z(m),D=m==="default"?Dt(e,r):m;i.push({cmpInfo:{id:await U(e,r,m,a),displayFilePath:$(e,r),name:g,inputs:[],exportName:m,exportType:h,importName:D,filePath:r,relFilePath:e.relative(e.getAppRootDir(),r),importPath:a,externalImportPath:a,dependencies:p.deps},node:p})}}}catch(o){console.error(`Error processing module ${a}:`,o)}return i}function qi(e,t,r){if(e.ts.isInterfaceDeclaration(r)||e.ts.isTypeAliasDeclaration(r))return!1;if(e.ts.isExportSpecifier(r)){let n=t.getSymbolAtLocation(r.name);if(n){let a=t.getAliasedSymbol(n).declarations?.[0];if(a)return qi(e,t,a)}return!1}if(e.ts.isFunctionDeclaration(r)||e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r)){let n=t.getSignatureFromDeclaration(r);if(n){let i=t.getReturnTypeOfSignature(n);return Vi(i,t)}}return e.ts.isClassDeclaration(r)?r.heritageClauses?.some(i=>i.types.some(a=>a.expression.getText()==="React.Component"||a.expression.getText()==="Component"))??!1:e.ts.isVariableDeclaration(r)?t.getTypeAtLocation(r).getCallSignatures().some(a=>Vi(t.getReturnTypeOfSignature(a),t)):!1}function Vi(e,t){let r=t.typeToString(e);return r==="JSX.Element"||r==="Element"||r.includes("ReactElement")||r.includes("React.ReactElement")||r.includes("ReactNode")}async function Wi(e,t){let r=[],n=t.getSourceFiles(),i=t.getTypeChecker();return await Promise.all(n.map(async a=>{let o=e.basename(a.fileName);if(e.appDir&&jl.has(o)||e.dirname(a.fileName).includes("node_modules"))return;let s=e.normalize(a.fileName);if(s===e.nextConfigPath||s===e.builderComponentPath)return;let u=await ot(e,i,s,a,s===e.registryPath||Ce(s));r.push(...u)})),r.sort((a,o)=>a.cmpInfo.name.localeCompare(o.cmpInfo.name))}var jl=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 ke(e,t){let r=[],n=[],i=[],a=[];for(let o of t.statements){if(e.ts.isImportDeclaration(o)){if(e.ts.isStringLiteral(o.moduleSpecifier)){let u=o.moduleSpecifier.text;if(!u.startsWith(".")&&!u.startsWith("/")){r.push(o);continue}}let s=o.importClause;if(s){if(s.namedBindings){n.push(o);continue}if(s.name){n.push(o);continue}}i.push(o);continue}a.push(o)}return e.ts.factory.updateSourceFile(t,[...Ir(e,r),...Ir(e,n),...Ir(e,i),...a])}function Ae(e){let t=e.split(`
|
|
293
|
+
`).map(n=>n.trimEnd());e="";let r=!1;for(let n=t.length-1;n>=0;n--){let i=t[n];!r&&i.startsWith("import ")&&(r=!0,i=i+`
|
|
294
294
|
`),/^builder.init(.*)$/.test(i)&&(i=i+`
|
|
295
|
-
`),t[
|
|
295
|
+
`),t[n-1]&&!t[n-1].includes("*/")&&(i.trim().startsWith("Builder.registerComponent")&&(i=`
|
|
296
296
|
`+i),i.trim().startsWith("/**")&&(i=`
|
|
297
297
|
`+i),i.trim().startsWith("module.exports")&&(i=`
|
|
298
298
|
`+i),i.trim().startsWith("export ")&&(i=`
|
|
299
299
|
`+i)),e=i+`
|
|
300
300
|
`+e}return e.trim()+`
|
|
301
|
-
`}function
|
|
302
|
-
${e}`),e}function $i(e,t){let n=t.statements.filter(r=>!(e.ts.isExpressionStatement(r)&&e.ts.isStringLiteral(r.expression)&&e.ts.isStringLiteral(r.expression)&&r.expression.text==="use client"));return e.ts.factory.updateSourceFile(t,n)}function ke(e,t){return t.sort((n,r)=>{if(e.ts.isObjectLiteralExpression(n)&&e.ts.isObjectLiteralExpression(r)){let i=Ri(e,n),a=Ri(e,r);return i.toLocaleLowerCase().localeCompare(a.toLocaleLowerCase())}return 1})}function Ri(e,t){let n=t.properties.find(r=>O(e,r)==="name");return n&&e.ts.isPropertyAssignment(n)&&e.ts.isStringLiteral(n.initializer)?n.initializer.text:"zzzz"}async function ki(e){let t=await e.readFile(e.registryPath);return t?_l(e,t):{components:[],sourceFile:B(e,"")}}async function _l(e,t){let n=B(e,t);return e.sdkVersion===w.gen2?Ml(e,n):jl(e,n)}async function jl(e,t){let n=[];for(let r=0;r<t.statements.length;r++){let i=t.statements[r];if(!e.ts.isExpressionStatement(i))continue;let a=i.expression;if(!e.ts.isCallExpression(a))continue;let o=a.expression;if(!e.ts.isPropertyAccessExpression(o))continue;let u=o.expression;if(!e.ts.isIdentifier(u)||u.text!=="Builder"||o.name.text!=="registerComponent")continue;let l=a.arguments;if(l.length<2)continue;let c=l[1];if(!e.ts.isObjectLiteralExpression(c))continue;let p=l[0];if(e.ts.isCallExpression(p)){let m=e.ts.isIdentifier(p.expression)&&p.expression.text;if(m==="withChildren"){let g=Sn(e,p.arguments[0]);if(e.ts.isCallExpression(g)){let D=await xn(e,r,g,c,!0);D&&n.push(D)}else{let D=g;if(e.ts.isIdentifier(D)){let d=await Fn(e,t,r,D,c,!0);d&&n.push(d)}}continue}if(m==="dynamic"){let g=await xn(e,r,p,c,!1);g&&n.push(g);continue}let C=Sn(e,p.arguments[0]);if(e.ts.isCallExpression(C)&&e.ts.isIdentifier(C.expression)&&C.expression.text==="dynamic"){let g=await xn(e,r,C,c,!1);g&&n.push(g);continue}if(e.ts.isIdentifier(C)){let g=await Fn(e,t,r,C,c,!1);g&&n.push(g);continue}continue}if(e.ts.isIdentifier(p)){let m=await Fn(e,t,r,p,c,!1);m&&n.push(m);continue}}return{sourceFile:t,components:me(n)}}function Sn(e,t){return e.ts.isCallExpression(t)?(e.ts.isIdentifier(t.expression)&&t.expression.text)==="dynamic"?t:Sn(e,t.arguments[0]):t}async function xn(e,t,n,r,i){let a={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:t,acceptsChildren:i},o=n.arguments;if(o.length===0)return null;let u=o[0];if(!e.ts.isArrowFunction(u))return null;let s=u.body;if(e.ts.isCallExpression(s)){if(s.expression.kind!==e.ts.SyntaxKind.ImportKeyword||s.arguments.length!==1)return null;let c=s.arguments[0];if(!e.ts.isStringLiteral(c))return null;let p=c.text,m=await Nt(e,p);a.filePath=m,a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),await e.exists(m)?a.importPath=M(e,a.filePath):(a.externalImportPath=p,a.importPath=a.externalImportPath),a.name=Ee(e,a.filePath),a.importName="default",a.exportName="default",a.exportType="default"}else if(e.ts.isPropertyAccessExpression(s)){let l=s.expression;if(!e.ts.isParenthesizedExpression(l))return null;let c=l.expression;if(!e.ts.isAwaitExpression(c))return null;let p=c.expression;if(!e.ts.isCallExpression(p)||p.expression.kind!==e.ts.SyntaxKind.ImportKeyword||p.arguments.length!==1)return null;let C=p.arguments[0];if(!e.ts.isStringLiteral(C)||!e.ts.isIdentifier(s.name))return null;let g=C.text,D=await Nt(e,g);a.filePath=D,a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),await e.exists(D)?a.importPath=M(e,a.filePath):(a.externalImportPath=g,a.importPath=a.externalImportPath),a.name=K(s.name.text),a.importName=s.name.text,a.exportName=s.name.text,a.exportType="named"}else return null;return a=fe(e,a,r),a.displayFilePath=k(e,a.filePath),a.filePath&&a.exportName&&(a.id=await V(e,a.filePath,a.exportName,a.externalImportPath)),a}async function Fn(e,t,n,r,i,a){let o={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:n,acceptsChildren:a},u=t.statements.filter(l=>e.ts.isImportDeclaration(l)),s=u.find(l=>l.importClause&&l.importClause.name?.text===r.text);if(s){let l=s.moduleSpecifier;if(!e.ts.isStringLiteral(l))return null;let c=await Nt(e,l.text);o.filePath=c,o.relFilePath=e.relative(e.getAppRootDir(),o.filePath),await e.exists(c)?o.importPath=M(e,o.filePath):(o.externalImportPath=l.text,o.importPath=o.externalImportPath),o.name=Ee(e,o.filePath),o.importName=r.text,o.exportName="default",o.exportType="default"}else{let l=u.find(m=>!m.importClause||!m.importClause.namedBindings||!e.ts.isNamedImports(m.importClause.namedBindings)?!1:m.importClause.namedBindings.elements.some(C=>C.name.text===r.text));if(!l)return null;let c=l.moduleSpecifier;if(!e.ts.isStringLiteral(c))return null;let p=await Nt(e,c.text);o.filePath=p,o.relFilePath=e.relative(e.getAppRootDir(),o.filePath),await e.exists(p)?o.importPath=M(e,o.filePath):(o.externalImportPath=c.text,o.importPath=o.externalImportPath),o.name=K(r.text),o.importName=r.text,o.exportName=r.text,o.exportType="named"}return o=fe(e,o,i),o.displayFilePath=k(e,o.filePath),o.filePath&&o.exportName&&(o.id=await V(e,o.filePath,o.exportName,o.externalImportPath)),o}function Nt(e,t){return Gt(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}function Oi(e,t,n){let r=!1,i=0,a=[...t.statements];for(let l=0;l<a.length;l++){let c=a[l];if(e.ts.isImportDeclaration(c)){i=l;continue}if(!e.ts.isExpressionStatement(c))continue;let p=c.expression;if(!e.ts.isCallExpression(p))continue;let m=p.expression;if(!e.ts.isPropertyAccessExpression(m))continue;let C=m.expression;if(!e.ts.isIdentifier(C)||C.text!=="builder")continue;if(m.name.text=="init"){r=!0;break}else continue}if(r)return t;let o=e.ts.factory.createPropertyAccessExpression(e.ts.factory.createPropertyAccessExpression(e.ts.factory.createIdentifier("process"),e.ts.factory.createIdentifier("env")),e.ts.factory.createIdentifier(Be)),u=n?e.ts.factory.createNonNullExpression(o):o,s=e.ts.factory.createExpressionStatement(e.ts.factory.createCallExpression(e.ts.factory.createPropertyAccessExpression(e.ts.factory.createIdentifier("builder"),e.ts.factory.createIdentifier("init")),void 0,[u]));return a.splice(i+1,0,s),e.ts.factory.updateSourceFile(t,a)}async function Ml(e,t){let n=[],r=Q(e,t,"CUSTOM_COMPONENTS");return r&&await Promise.all(r.arrayLiteralExp.elements.map(async(i,a)=>{let o=await An(e,t,i);o&&(o.nodeIndex=a,n.push(o))})),{sourceFile:t,components:me(n)}}async function An(e,t,n){if(!e.ts.isObjectLiteralExpression(n))return null;let r={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1};Pt(e,n)&&(r.acceptsChildren=!0);for(let a of n.properties){if(!e.ts.isPropertyAssignment(a)||!e.ts.isIdentifier(a.name))continue;if(O(e,a)==="component"){let u,{initializer:s}=a;if(e.ts.isCallExpression(s)&&(e.ts.isIdentifier(s.expression)&&s.expression.text)==="dynamic"){let C=s.arguments;if(C.length===0)return null;let g=C[0];if(!e.ts.isArrowFunction(g))return null;let D=g.body;if(e.ts.isCallExpression(D)){if(D.expression.kind!==e.ts.SyntaxKind.ImportKeyword||D.arguments.length!==1)return null;let f=D.arguments[0];if(!e.ts.isStringLiteral(f))return null;let E=f.text,x=await Nt(e,E);r.filePath=x,r.relFilePath=e.relative(e.getAppRootDir(),r.filePath),await e.exists(x)?r.importPath=M(e,r.filePath):(r.externalImportPath=E,r.importPath=r.externalImportPath),r.name=Ee(e,r.filePath),r.importName="default",r.exportName="default",r.exportType="default"}else if(e.ts.isPropertyAccessExpression(D)){let d=D.expression;if(!e.ts.isParenthesizedExpression(d))return null;let f=d.expression;if(!e.ts.isAwaitExpression(f))return null;let E=f.expression;if(!e.ts.isCallExpression(E)||E.expression.kind!==e.ts.SyntaxKind.ImportKeyword||E.arguments.length!==1)return null;let v=E.arguments[0];if(!e.ts.isStringLiteral(v)||!e.ts.isIdentifier(D.name))return null;let A=v.text,S=await Nt(e,A);r.filePath=S,r.relFilePath=e.relative(e.getAppRootDir(),r.filePath),await e.exists(S)?r.importPath=M(e,r.filePath):(r.externalImportPath=A,r.importPath=r.externalImportPath),r.name=K(D.name.text),r.importName=D.name.text,r.exportName=D.name.text,r.exportType="named"}else return null;return r=fe(e,r,n),r.displayFilePath=k(e,r.filePath),r.filePath&&r.exportName&&(r.id=await V(e,r.filePath,r.exportName,r.externalImportPath)),r}if(e.ts.isIdentifier(s)&&(u=s.text),!u)continue;r.name===""&&(r.name=K(u)),r.importName=u;let l=await Re(e,e.registryPath,t,u);if(!l)continue;r.filePath=l.filePath,r.relFilePath=l.relFilePath,await e.exists(l.filePath)?r.importPath=M(e,l.filePath):(r.externalImportPath=l.importPath,r.importPath=r.externalImportPath),r.importPath=M(e,l.filePath),r.displayFilePath=l.displayFilePath,r.exportType=l.exportType;let c=t.statements.filter(m=>e.ts.isImportDeclaration(m)),p=c.find(m=>m.importClause&&m.importClause.name?.text===u);if(p){let m=p.moduleSpecifier;if(!e.ts.isStringLiteral(m))return null;r.exportName="default"}else{let m=c.find(g=>!g.importClause||!g.importClause.namedBindings||!e.ts.isNamedImports(g.importClause.namedBindings)?!1:g.importClause.namedBindings.elements.some(D=>D.name.text===u));if(!m)return null;let C=m.moduleSpecifier;if(!e.ts.isStringLiteral(C))return null;r.exportName=u}continue}}return r=fe(e,r,n),r.filePath&&r.exportName&&(r.id=await V(e,r.filePath,r.exportName,r.externalImportPath)),r}function Oe(e,t){let n=[...t.statements],r=!1;for(let i=t.statements.length-1;i>=0;i--){let a=t.statements[i];if(e.ts.isImportDeclaration(a)&&a.importClause){let o=!1,u=a.importClause.namedBindings;if(u&&e.ts.isNamedImports(u)&&u.elements){let s=[...u.elements];for(let l=s.length-1;l>=0;l--){let c=s[l];if(e.ts.isImportSpecifier(c)){let p=c.name;if(p&&e.ts.isIdentifier(p)){let m=p.text;Li(e,t,m)||s.splice(l,1)}}}if(s.length===0)o=!0;else if(u.elements.length!==s.length){let l=e.ts.factory.updateImportClause(a.importClause,!1,a.importClause.name,e.ts.factory.createNamedImports(s)),c=e.ts.factory.updateImportDeclaration(a,void 0,l,a.moduleSpecifier,void 0);n[i]=c,r=!0}}else if(a.importClause.name&&e.ts.isIdentifier(a.importClause.name)){let s=a.importClause.name.text;Li(e,t,s)||(o=!0)}o&&(n.splice(i,1),r=!0)}}return r?e.ts.factory.updateSourceFile(t,n):t}function Li(e,t,n){let r=!1;function i(a){if(!e.ts.isImportDeclaration(a)){if(e.ts.isIdentifier(a)&&a.text===n){r=!0;return}e.ts.forEachChild(a,i)}}return e.ts.forEachChild(t,i),r}function Le(e,t,n,r,i,a,o){let u=null,s=null,l=null,c=-1;t=de(t),n=de(n);let p=t.find(C=>C.id===e),m=n.find(C=>C.id===e);if(r)m||(u={...de(p),inputs:de(p.inputs).map(C=>(C.isRegistered=!0,C))},c=n.length,n.push(u));else if(typeof m?.nodeIndex=="number"&&m.nodeIndex>-1){if(i)c=m.nodeIndex,s=de(m),n=n.filter(C=>C.id!==e);else if(a!=null)Vl(m,a),c=m.nodeIndex,l=m;else if(o!=null){let C=m.inputs.find(g=>g.name===o.name);C&&(o.registerInput===!1?C.isRegistered=!1:(Kl(C,o),C.isRegistered=!0),l=m,c=m.nodeIndex)}}return{addCmpToRegistry:u,removeCmpFromRegistry:s,updateRegisteredCmp:l,nodeIndex:c,components:be(t,n)}}function be(e,t){let n=me([...t.map(r=>(r.isRegistered=!0,r)),...e.filter(r=>!t.some(i=>i.id===r.id)).map(r=>(r.isRegistered=!1,r))]);return n.forEach(r=>{r.inputs=r.inputs.map(gn),r.inputs.sort((o,u)=>o.name.toLowerCase().localeCompare(u.name.toLowerCase()));let i=t.find(o=>o.id===r.id);i&&(i.acceptsChildren=Dn(r));let a=e.find(o=>o.id===r.id&&o.externalImportPath);a&&(r.filePath=a.filePath,r.relFilePath=a.relFilePath)}),n}function Vl(e,t){le(t.name)?e.name=t.name:t.name===null&&(e.name=e.importName),le(t.description)?e.description=t.description:t.description===null&&delete e.description,le(t.image)?e.image=t.image:t.image===null&&delete e.image}function Kl(e,t){le(t.type)&&(e.type=t.type),le(t.friendlyName)?e.friendlyName=t.friendlyName:t.friendlyName===null&&delete e.friendlyName,le(t.defaultValue)||jt(t.defaultValue)||xt(t.defaultValue)?e.defaultValue=t.defaultValue:t.defaultValue===null&&delete e.defaultValue,le(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 nt(e){let t=new Set,n=async i=>{let a=await e.readdir(i);await Promise.all(a.map(async o=>{if(o.startsWith(".")||o==="node_modules")return;let u=e.join(i,o),s=e.extname(o).toLowerCase();if(s===".tsx"||s===".jsx"||s===".ts"||s===".js"){t.add(u);return}(await e.stat(u)).isDirectory()&&await n(u)}))};return await n(e.getAppRootDir()),await X(e,[...t])}function _e(e,t,n){return Tt(e,t,n.variableName)?t:Ul(e,t,n)}function Ul(e,t,n){let r=typeof n.arrayType=="string"?e.ts.factory.createArrayTypeNode(e.ts.factory.createTypeReferenceNode(n.arrayType,void 0)):void 0,i=e.ts.factory.createArrayLiteralExpression([]),a=e.ts.factory.createVariableDeclaration(n.variableName,void 0,r,i),o=e.ts.factory.createVariableDeclarationList([a],e.ts.NodeFlags.Const),u=e.ts.factory.createModifier(e.ts.SyntaxKind.ExportKeyword),s=e.ts.factory.createVariableStatement([u],o),l=[...t.statements,s];return e.ts.factory.updateSourceFile(t,l)}async function je(e,t,n,r,i,a,o,u){let s=await nt(e),[l,c,p,m]=await Promise.all([Ii(e,s),ki(e),De(e),qt(e)]),C=l.map(x=>x.cmpInfo),g=c.components,D={components:be(C,g),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ne(C),publicApiKey:m.envValue??void 0,devToolsVersion:e.version};if(u)return D.components=await Bt(e,D.components),D;let d=!1,f=c.sourceFile,E=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(E.length>0){let x=E.map(S=>{let _=l.find(ee=>ee.cmpInfo.id===S);if(!_)throw new Error(`Component ${S} not found`);return _}),v=Array.from(new Set(x.map(S=>S.cmpInfo.filePath))),A=await X(e,v);for(let S of x){let _=D.components.find(b=>b.id===S.cmpInfo.id),ee=await Rt(e,S,A,e.registryPath===S.cmpInfo.filePath||he(S.cmpInfo.filePath));Ce(_,ee);let j=C.findIndex(b=>b.id===S.cmpInfo.id);C[j].inputs=ee;let y=Le(S.cmpInfo.id,C,g,n,r,i,a);if(e.sdkVersion===w.gen2){let{elements:b,elmIndex:ue,statementIndex:Se,statement:oe,variableDeclaration:L}=await Jl(e,f,S);if(y.addCmpToRegistry)b.push(ql(e,y.addCmpToRegistry)),d=!0;else if(y.removeCmpFromRegistry)b.splice(ue,1),d=!0;else if(y.updateRegisteredCmp){let se=Z(e,b[ue],y.updateRegisteredCmp);b[ue]=e.ts.factory.updateObjectLiteralExpression(se,[ji(e,y.updateRegisteredCmp),...se.properties.slice(1)]),d=!0}if(d&&o){let se=[...f.statements];se[Se]=e.ts.factory.updateVariableStatement(oe,oe.modifiers,e.ts.factory.updateVariableDeclarationList(oe.declarationList,[e.ts.factory.updateVariableDeclaration(L,L.name,L.exclamationToken,L.type,e.ts.factory.createArrayLiteralExpression(ke(e,b)))])),f=e.ts.factory.updateSourceFile(f,se),f=_i(e,y,f),f=N(e,f,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-react",isTypeOnly:!0}),f=_e(e,f,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),D.components=y.components,g=y.components.filter(st=>st.isRegistered)}}else{let b=[...f.statements];y.addCmpToRegistry?(b.push(Si(e,y.addCmpToRegistry)),d=!0):y.removeCmpFromRegistry?(b.splice(y.nodeIndex,1),d=!0):y.updateRegisteredCmp&&(b[y.nodeIndex]=Cn(e,b[y.nodeIndex],y.updateRegisteredCmp),d=!0),d&&o&&(f=e.ts.factory.updateSourceFile(f,b),f=N(e,f,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),f=Oi(e,f,p),f=_i(e,y,f),_?.acceptsChildren&&(f=N(e,f,{namedImports:["withChildren"],importPath:"@builder.io/react"})),D.components=y.components,g=y.components.filter(ue=>ue.isRegistered))}}}if(d&&o){f=Oe(e,f),f=$e(e,f),e.appDir&&(f=$i(e,f));let x=te(e,f);x=ve(x),e.appDir&&(x=Ni(x)),x=await e.formatCode(e.registryPath,x),await e.writeFile(e.registryPath,x)}return D}function ji(e,t){let n=e.ts.factory.createIdentifier(t.importName);return e.appDir?e.ts.factory.createPropertyAssignment("component",n):e.ts.factory.createPropertyAssignment("component",Wl(e,t))}function zl(e){return e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())}function ql(e,t){return Z(e,e.ts.factory.createObjectLiteralExpression([ji(e,t),...t.acceptsChildren?[zl(e)]:[]],!0),t)}async function Jl(e,t,n){let r=Q(e,t,"CUSTOM_COMPONENTS");if(!r)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let i=r.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),a=-1;for(let o=0;o<i.length;o++)if((await An(e,t,i[o]))?.id===n.cmpInfo.id){a=o;break}return{...r,elements:i,elmIndex:a}}function _i(e,t,n){if(e.appDir){let r=t.addCmpToRegistry||t.updateRegisteredCmp;if(r){let i=r.externalImportPath?r.externalImportPath:$(e,e.registryPath,r.filePath);r.exportType==="default"?n=N(e,n,{defaultImport:r.importName,importPath:i}):r.exportType==="named"&&(n=N(e,n,{namedImports:[r.importName],importPath:i}))}}else n=N(e,n,{defaultImport:"dynamic",importPath:"next/dynamic"});return n}function Wl(e,t){let n=t.externalImportPath?t.externalImportPath:$(e,e.registryPath,t.filePath),r=t.exportName!=="default",i;r?i=e.ts.factory.createPropertyAccessExpression(e.ts.factory.createAwaitExpression(e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("import"),void 0,[e.ts.factory.createStringLiteral(n)])),e.ts.factory.createIdentifier(t.exportName)):i=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("import"),void 0,[e.ts.factory.createStringLiteral(n)]);let a=e.ts.factory.createArrowFunction(r?[e.ts.factory.createModifier(e.ts.SyntaxKind.AsyncKeyword)]:void 0,void 0,[],void 0,e.ts.factory.createToken(e.ts.SyntaxKind.EqualsGreaterThanToken),i);return e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("dynamic"),void 0,[a])}async function Vi(e){let t=[],n=await Xl(e,t);return await Ji(e,t,n),e.appDir?(e.debug(`ensure builder setup for next.js app ${e.appDir}`),await Hl(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure builder setup for next.js pages ${e.pagesDir}`),await Ql(e,e.pagesDir,t)),t}async function Ki(e){let t=[];return await Ji(e,t),e.appDir?(e.debug(`ensure figma-imports setup for next.js app ${e.appDir}`),await Gl(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure figma-imports setup for next.js pages ${e.pagesDir}`),await Yl(e,e.pagesDir,t)),t}async function Gl(e,t,n){let r=`page.${e.typescriptEnabled?"tsx":"jsx"}`,i=e.join(t,"figma-imports",r);if(!await e.exists(i)){let a=await e.formatCode(i,zi({sys:e,routePath:i,modelName:"figma-imports"}));await e.writeFile(i,a),n.push({filePath:i,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let a=await e.formatCode(e.builderComponentPath,Ui(e));await e.writeFile(e.builderComponentPath,a),n.push({filePath:e.builderComponentPath,modifiedType:"create"})}}async function Hl(e,t,n){let r=`page.${e.typescriptEnabled?"tsx":"jsx"}`,i=e.join(t,"[...page]",r);if(!await e.exists(i)){let a=await e.formatCode(i,zi({sys:e,routePath:i,modelName:"page"}));await e.writeFile(i,a),n.push({filePath:i,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let a=await e.formatCode(e.builderComponentPath,Ui(e));await e.writeFile(e.builderComponentPath,a),n.push({filePath:e.builderComponentPath,modifiedType:"create"})}}function Ui(e){let t=e.typescriptEnabled;return e.sdkVersion===w.gen2?`
|
|
301
|
+
`}function Ir(e,t){return t.sort((r,n)=>{let i=Ji(e,r),a=Ji(e,n);return i.toLocaleLowerCase().localeCompare(a.toLocaleLowerCase())})}function Ji(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 Hi(e){return typeof e=="string"&&!e.includes("'use client'")&&!e.includes(`"use client"'`)&&(e=`"use client"
|
|
302
|
+
${e}`),e}function Qi(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 $e(e,t){return t.sort((r,n)=>{if(e.ts.isObjectLiteralExpression(r)&&e.ts.isObjectLiteralExpression(n)){let i=Gi(e,r),a=Gi(e,n);return i.toLocaleLowerCase().localeCompare(a.toLocaleLowerCase())}return 1})}function Gi(e,t){let r=t.properties.find(n=>O(e,n)==="name");return r&&e.ts.isPropertyAssignment(r)&&e.ts.isStringLiteral(r.initializer)?r.initializer.text:"zzzz"}async function Yi(e){let t=await e.readFile(e.registryPath);return t?Ml(e,t):{components:[],sourceFile:B(e,"")}}async function Ml(e,t){let r=B(e,t);return e.sdkVersion===b.gen2?Vl(e,r):Kl(e,r)}async function Kl(e,t){let r=[];for(let n=0;n<t.statements.length;n++){let i=t.statements[n];if(!e.ts.isExpressionStatement(i))continue;let a=i.expression;if(!e.ts.isCallExpression(a))continue;let o=a.expression;if(!e.ts.isPropertyAccessExpression(o))continue;let s=o.expression;if(!e.ts.isIdentifier(s)||s.text!=="Builder"||o.name.text!=="registerComponent")continue;let c=a.arguments;if(c.length<2)continue;let l=c[1];if(!e.ts.isObjectLiteralExpression(l))continue;let p=c[0];if(e.ts.isCallExpression(p)){let m=e.ts.isIdentifier(p.expression)&&p.expression.text;if(m==="withChildren"){let g=Nr(e,p.arguments[0]);if(e.ts.isCallExpression(g)){let D=await Br(e,n,g,l,!0);D&&r.push(D)}else{let D=g;if(e.ts.isIdentifier(D)){let d=await Rr(e,t,n,D,l,!0);d&&r.push(d)}}continue}if(m==="dynamic"){let g=await Br(e,n,p,l,!1);g&&r.push(g);continue}let h=Nr(e,p.arguments[0]);if(e.ts.isCallExpression(h)&&e.ts.isIdentifier(h.expression)&&h.expression.text==="dynamic"){let g=await Br(e,n,h,l,!1);g&&r.push(g);continue}if(e.ts.isIdentifier(h)){let g=await Rr(e,t,n,h,l,!1);g&&r.push(g);continue}continue}if(e.ts.isIdentifier(p)){let m=await Rr(e,t,n,p,l,!1);m&&r.push(m);continue}}return{sourceFile:t,components:me(r)}}function Nr(e,t){return e.ts.isCallExpression(t)?(e.ts.isIdentifier(t.expression)&&t.expression.text)==="dynamic"?t:Nr(e,t.arguments[0]):t}async function Br(e,t,r,n,i){let a={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:t,acceptsChildren:i},o=r.arguments;if(o.length===0)return null;let s=o[0];if(!e.ts.isArrowFunction(s))return null;let u=s.body;if(e.ts.isCallExpression(u)){if(u.expression.kind!==e.ts.SyntaxKind.ImportKeyword||u.arguments.length!==1)return null;let l=u.arguments[0];if(!e.ts.isStringLiteral(l))return null;let p=l.text,m=await jt(e,p);a.filePath=m,a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),await e.exists(m)?a.importPath=V(e,a.filePath):(a.externalImportPath=p,a.importPath=a.externalImportPath),a.name=xe(e,a.filePath),a.importName="default",a.exportName="default",a.exportType="default"}else if(e.ts.isPropertyAccessExpression(u)){let c=u.expression;if(!e.ts.isParenthesizedExpression(c))return null;let l=c.expression;if(!e.ts.isAwaitExpression(l))return null;let p=l.expression;if(!e.ts.isCallExpression(p)||p.expression.kind!==e.ts.SyntaxKind.ImportKeyword||p.arguments.length!==1)return null;let h=p.arguments[0];if(!e.ts.isStringLiteral(h)||!e.ts.isIdentifier(u.name))return null;let g=h.text,D=await jt(e,g);a.filePath=D,a.relFilePath=e.relative(e.getAppRootDir(),a.filePath),await e.exists(D)?a.importPath=V(e,a.filePath):(a.externalImportPath=g,a.importPath=a.externalImportPath),a.name=z(u.name.text),a.importName=u.name.text,a.exportName=u.name.text,a.exportType="named"}else return null;return a=fe(e,a,n),a.displayFilePath=$(e,a.filePath),a.filePath&&a.exportName&&(a.id=await U(e,a.filePath,a.exportName,a.externalImportPath)),a}async function Rr(e,t,r,n,i,a){let o={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:r,acceptsChildren:a},s=t.statements.filter(c=>e.ts.isImportDeclaration(c)),u=s.find(c=>c.importClause&&c.importClause.name?.text===n.text);if(u){let c=u.moduleSpecifier;if(!e.ts.isStringLiteral(c))return null;let l=await jt(e,c.text);o.filePath=l,o.relFilePath=e.relative(e.getAppRootDir(),o.filePath),await e.exists(l)?o.importPath=V(e,o.filePath):(o.externalImportPath=c.text,o.importPath=o.externalImportPath),o.name=xe(e,o.filePath),o.importName=n.text,o.exportName="default",o.exportType="default"}else{let c=s.find(m=>!m.importClause||!m.importClause.namedBindings||!e.ts.isNamedImports(m.importClause.namedBindings)?!1:m.importClause.namedBindings.elements.some(h=>h.name.text===n.text));if(!c)return null;let l=c.moduleSpecifier;if(!e.ts.isStringLiteral(l))return null;let p=await jt(e,l.text);o.filePath=p,o.relFilePath=e.relative(e.getAppRootDir(),o.filePath),await e.exists(p)?o.importPath=V(e,o.filePath):(o.externalImportPath=l.text,o.importPath=o.externalImportPath),o.name=z(n.text),o.importName=n.text,o.exportName=n.text,o.exportType="named"}return o=fe(e,o,i),o.displayFilePath=$(e,o.filePath),o.filePath&&o.exportName&&(o.id=await U(e,o.filePath,o.exportName,o.externalImportPath)),o}function jt(e,t){return on(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}function Xi(e,t,r){let n=!1,i=0,a=[...t.statements];for(let c=0;c<a.length;c++){let l=a[c];if(e.ts.isImportDeclaration(l)){i=c;continue}if(!e.ts.isExpressionStatement(l))continue;let p=l.expression;if(!e.ts.isCallExpression(p))continue;let m=p.expression;if(!e.ts.isPropertyAccessExpression(m))continue;let h=m.expression;if(!e.ts.isIdentifier(h)||h.text!=="builder")continue;if(m.name.text=="init"){n=!0;break}else continue}if(n)return t;let o=e.ts.factory.createPropertyAccessExpression(e.ts.factory.createPropertyAccessExpression(e.ts.factory.createIdentifier("process"),e.ts.factory.createIdentifier("env")),e.ts.factory.createIdentifier(Be)),s=r?e.ts.factory.createNonNullExpression(o):o,u=e.ts.factory.createExpressionStatement(e.ts.factory.createCallExpression(e.ts.factory.createPropertyAccessExpression(e.ts.factory.createIdentifier("builder"),e.ts.factory.createIdentifier("init")),void 0,[s]));return a.splice(i+1,0,u),e.ts.factory.updateSourceFile(t,a)}async function Vl(e,t){let r=[],n=Y(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(i,a)=>{let o=await kr(e,t,i);o&&(o.nodeIndex=a,r.push(o))})),{sourceFile:t,components:me(r)}}async function kr(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1};kt(e,r)&&(n.acceptsChildren=!0);for(let a of r.properties){if(!e.ts.isPropertyAssignment(a)||!e.ts.isIdentifier(a.name))continue;if(O(e,a)==="component"){let s,{initializer:u}=a;if(e.ts.isCallExpression(u)&&(e.ts.isIdentifier(u.expression)&&u.expression.text)==="dynamic"){let h=u.arguments;if(h.length===0)return null;let g=h[0];if(!e.ts.isArrowFunction(g))return null;let D=g.body;if(e.ts.isCallExpression(D)){if(D.expression.kind!==e.ts.SyntaxKind.ImportKeyword||D.arguments.length!==1)return null;let f=D.arguments[0];if(!e.ts.isStringLiteral(f))return null;let E=f.text,x=await jt(e,E);n.filePath=x,n.relFilePath=e.relative(e.getAppRootDir(),n.filePath),await e.exists(x)?n.importPath=V(e,n.filePath):(n.externalImportPath=E,n.importPath=n.externalImportPath),n.name=xe(e,n.filePath),n.importName="default",n.exportName="default",n.exportType="default"}else if(e.ts.isPropertyAccessExpression(D)){let d=D.expression;if(!e.ts.isParenthesizedExpression(d))return null;let f=d.expression;if(!e.ts.isAwaitExpression(f))return null;let E=f.expression;if(!e.ts.isCallExpression(E)||E.expression.kind!==e.ts.SyntaxKind.ImportKeyword||E.arguments.length!==1)return null;let A=E.arguments[0];if(!e.ts.isStringLiteral(A)||!e.ts.isIdentifier(D.name))return null;let S=A.text,y=await jt(e,S);n.filePath=y,n.relFilePath=e.relative(e.getAppRootDir(),n.filePath),await e.exists(y)?n.importPath=V(e,n.filePath):(n.externalImportPath=S,n.importPath=n.externalImportPath),n.name=z(D.name.text),n.importName=D.name.text,n.exportName=D.name.text,n.exportType="named"}else return null;return n=fe(e,n,r),n.displayFilePath=$(e,n.filePath),n.filePath&&n.exportName&&(n.id=await U(e,n.filePath,n.exportName,n.externalImportPath)),n}if(e.ts.isIdentifier(u)&&(s=u.text),!s)continue;n.name===""&&(n.name=z(s)),n.importName=s;let c=await Re(e,e.registryPath,t,s);if(!c)continue;n.filePath=c.filePath,n.relFilePath=c.relFilePath,await e.exists(c.filePath)?n.importPath=V(e,c.filePath):(n.externalImportPath=c.importPath,n.importPath=n.externalImportPath),n.importPath=V(e,c.filePath),n.displayFilePath=c.displayFilePath,n.exportType=c.exportType;let l=t.statements.filter(m=>e.ts.isImportDeclaration(m)),p=l.find(m=>m.importClause&&m.importClause.name?.text===s);if(p){let m=p.moduleSpecifier;if(!e.ts.isStringLiteral(m))return null;n.exportName="default"}else{let m=l.find(g=>!g.importClause||!g.importClause.namedBindings||!e.ts.isNamedImports(g.importClause.namedBindings)?!1:g.importClause.namedBindings.elements.some(D=>D.name.text===s));if(!m)return null;let h=m.moduleSpecifier;if(!e.ts.isStringLiteral(h))return null;n.exportName=s}continue}}return n=fe(e,n,r),n.filePath&&n.exportName&&(n.id=await U(e,n.filePath,n.exportName,n.externalImportPath)),n}function Oe(e,t){let r=[...t.statements],n=!1;for(let i=t.statements.length-1;i>=0;i--){let a=t.statements[i];if(e.ts.isImportDeclaration(a)&&a.importClause){let o=!1,s=a.importClause.namedBindings;if(s&&e.ts.isNamedImports(s)&&s.elements){let u=[...s.elements];for(let c=u.length-1;c>=0;c--){let l=u[c];if(e.ts.isImportSpecifier(l)){let p=l.name;if(p&&e.ts.isIdentifier(p)){let m=p.text;Zi(e,t,m)||u.splice(c,1)}}}if(u.length===0)o=!0;else if(s.elements.length!==u.length){let c=e.ts.factory.updateImportClause(a.importClause,!1,a.importClause.name,e.ts.factory.createNamedImports(u)),l=e.ts.factory.updateImportDeclaration(a,void 0,c,a.moduleSpecifier,void 0);r[i]=l,n=!0}}else if(a.importClause.name&&e.ts.isIdentifier(a.importClause.name)){let u=a.importClause.name.text;Zi(e,t,u)||(o=!0)}o&&(r.splice(i,1),n=!0)}}return n?e.ts.factory.updateSourceFile(t,r):t}function Zi(e,t,r){let n=!1;function i(a){if(!e.ts.isImportDeclaration(a)){if(e.ts.isIdentifier(a)&&a.text===r){n=!0;return}e.ts.forEachChild(a,i)}}return e.ts.forEachChild(t,i),n}function Le(e,t,r,n,i,a,o){let s=null,u=null,c=null,l=-1;t=de(t),r=de(r);let p=t.find(h=>h.id===e),m=r.find(h=>h.id===e);if(n)m||(s={...de(p),inputs:de(p.inputs).map(h=>(h.isRegistered=!0,h))},l=r.length,r.push(s));else if(typeof m?.nodeIndex=="number"&&m.nodeIndex>-1){if(i)l=m.nodeIndex,u=de(m),r=r.filter(h=>h.id!==e);else if(a!=null)Ul(m,a),l=m.nodeIndex,c=m;else if(o!=null){let h=m.inputs.find(g=>g.name===o.name);h&&(o.registerInput===!1?h.isRegistered=!1:(zl(h,o),h.isRegistered=!0),c=m,l=m.nodeIndex)}}return{addCmpToRegistry:s,removeCmpFromRegistry:u,updateRegisteredCmp:c,nodeIndex:l,components:ve(t,r)}}function ve(e,t){let r=me([...t.map(n=>(n.isRegistered=!0,n)),...e.filter(n=>!t.some(i=>i.id===n.id)).map(n=>(n.isRegistered=!1,n))]);return r.forEach(n=>{n.inputs=n.inputs.map(br),n.inputs.sort((o,s)=>o.name.toLowerCase().localeCompare(s.name.toLowerCase()));let i=t.find(o=>o.id===n.id);i&&(i.acceptsChildren=vr(n));let a=e.find(o=>o.id===n.id&&o.externalImportPath);a&&(n.filePath=a.filePath,n.relFilePath=a.relFilePath)}),r}function Ul(e,t){le(t.name)?e.name=t.name:t.name===null&&(e.name=e.importName),le(t.description)?e.description=t.description:t.description===null&&delete e.description,le(t.image)?e.image=t.image:t.image===null&&delete e.image}function zl(e,t){le(t.type)&&(e.type=t.type),le(t.friendlyName)?e.friendlyName=t.friendlyName:t.friendlyName===null&&delete e.friendlyName,le(t.defaultValue)||Jt(t.defaultValue)||vt(t.defaultValue)?e.defaultValue=t.defaultValue:t.defaultValue===null&&delete e.defaultValue,le(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 it(e){let t=new Set,r=async i=>{let a=await e.readdir(i);await Promise.all(a.map(async o=>{if(o.startsWith(".")||o==="node_modules")return;let s=e.join(i,o),u=e.extname(o).toLowerCase();if(u===".tsx"||u===".jsx"||u===".ts"||u===".js"){t.add(s);return}(await e.stat(s)).isDirectory()&&await r(s)}))};return await r(e.getAppRootDir()),await Z(e,[...t])}function _e(e,t,r){return $t(e,t,r.variableName)?t:ql(e,t,r)}function ql(e,t,r){let n=typeof r.arrayType=="string"?e.ts.factory.createArrayTypeNode(e.ts.factory.createTypeReferenceNode(r.arrayType,void 0)):void 0,i=e.ts.factory.createArrayLiteralExpression([]),a=e.ts.factory.createVariableDeclaration(r.variableName,void 0,n,i),o=e.ts.factory.createVariableDeclarationList([a],e.ts.NodeFlags.Const),s=e.ts.factory.createModifier(e.ts.SyntaxKind.ExportKeyword),u=e.ts.factory.createVariableStatement([s],o),c=[...t.statements,u];return e.ts.factory.updateSourceFile(t,c)}async function je(e,t,r,n,i,a,o,s){let u=await it(e),[c,l,p,m]=await Promise.all([Wi(e,u),Yi(e),De(e),tn(e)]),h=c.map(x=>x.cmpInfo),g=l.components,D={components:ve(h,g),registryPath:e.registryPath,registryDisplayPath:$(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ne(h),publicApiKey:m.envValue??void 0,devToolsVersion:e.version};if(s)return D.components=await Lt(e,D.components),D;let d=!1,f=l.sourceFile,E=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(E.length>0){let x=E.map(y=>{let M=c.find(te=>te.cmpInfo.id===y);if(!M)throw new Error(`Component ${y} not found`);return M}),A=Array.from(new Set(x.map(y=>y.cmpInfo.filePath))),S=await Z(e,A);for(let y of x){let M=D.components.find(v=>v.id===y.cmpInfo.id),te=await _t(e,y,S,e.registryPath===y.cmpInfo.filePath||Ce(y.cmpInfo.filePath));he(M,te);let K=h.findIndex(v=>v.id===y.cmpInfo.id);h[K].inputs=te;let w=Le(y.cmpInfo.id,h,g,r,n,i,a);if(e.sdkVersion===b.gen2){let{elements:v,elmIndex:ue,statementIndex:ye,statement:ie,variableDeclaration:L}=await Gl(e,f,y);if(w.addCmpToRegistry)v.push(Jl(e,w.addCmpToRegistry)),d=!0;else if(w.removeCmpFromRegistry)v.splice(ue,1),d=!0;else if(w.updateRegisteredCmp){let ce=ee(e,v[ue],w.updateRegisteredCmp);v[ue]=e.ts.factory.updateObjectLiteralExpression(ce,[ta(e,w.updateRegisteredCmp),...ce.properties.slice(1)]),d=!0}if(d&&o){let ce=[...f.statements];ce[ye]=e.ts.factory.updateVariableStatement(ie,ie.modifiers,e.ts.factory.updateVariableDeclarationList(ie.declarationList,[e.ts.factory.updateVariableDeclaration(L,L.name,L.exclamationToken,L.type,e.ts.factory.createArrayLiteralExpression($e(e,v)))])),f=e.ts.factory.updateSourceFile(f,ce),f=ea(e,w,f),f=N(e,f,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-react",isTypeOnly:!0}),f=_e(e,f,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),D.components=w.components,g=w.components.filter(mt=>mt.isRegistered)}}else{let v=[...f.statements];w.addCmpToRegistry?(v.push(_i(e,w.addCmpToRegistry)),d=!0):w.removeCmpFromRegistry?(v.splice(w.nodeIndex,1),d=!0):w.updateRegisteredCmp&&(v[w.nodeIndex]=Pr(e,v[w.nodeIndex],w.updateRegisteredCmp),d=!0),d&&o&&(f=e.ts.factory.updateSourceFile(f,v),f=N(e,f,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),f=Xi(e,f,p),f=ea(e,w,f),M?.acceptsChildren&&(f=N(e,f,{namedImports:["withChildren"],importPath:"@builder.io/react"})),D.components=w.components,g=w.components.filter(ue=>ue.isRegistered))}}}if(d&&o){f=Oe(e,f),f=ke(e,f),e.appDir&&(f=Qi(e,f));let x=ne(e,f);x=Ae(x),e.appDir&&(x=Hi(x)),x=await e.formatCode(e.registryPath,x),await e.writeFile(e.registryPath,x)}return D}function ta(e,t){let r=e.ts.factory.createIdentifier(t.importName);return e.appDir?e.ts.factory.createPropertyAssignment("component",r):e.ts.factory.createPropertyAssignment("component",Hl(e,t))}function Wl(e){return e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())}function Jl(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([ta(e,t),...t.acceptsChildren?[Wl(e)]:[]],!0),t)}async function Gl(e,t,r){let n=Y(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 i=n.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),a=-1;for(let o=0;o<i.length;o++)if((await kr(e,t,i[o]))?.id===r.cmpInfo.id){a=o;break}return{...n,elements:i,elmIndex:a}}function ea(e,t,r){if(e.appDir){let n=t.addCmpToRegistry||t.updateRegisteredCmp;if(n){let i=n.externalImportPath?n.externalImportPath:k(e,e.registryPath,n.filePath);n.exportType==="default"?r=N(e,r,{defaultImport:n.importName,importPath:i}):n.exportType==="named"&&(r=N(e,r,{namedImports:[n.importName],importPath:i}))}}else r=N(e,r,{defaultImport:"dynamic",importPath:"next/dynamic"});return r}function Hl(e,t){let r=t.externalImportPath?t.externalImportPath:k(e,e.registryPath,t.filePath),n=t.exportName!=="default",i;n?i=e.ts.factory.createPropertyAccessExpression(e.ts.factory.createAwaitExpression(e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("import"),void 0,[e.ts.factory.createStringLiteral(r)])),e.ts.factory.createIdentifier(t.exportName)):i=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("import"),void 0,[e.ts.factory.createStringLiteral(r)]);let a=e.ts.factory.createArrowFunction(n?[e.ts.factory.createModifier(e.ts.SyntaxKind.AsyncKeyword)]:void 0,void 0,[],void 0,e.ts.factory.createToken(e.ts.SyntaxKind.EqualsGreaterThanToken),i);return e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("dynamic"),void 0,[a])}async function ra(e){let t=[],r=await ep(e,t);return await ua(e,t,r),e.appDir?(e.debug(`ensure builder setup for next.js app ${e.appDir}`),await Yl(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure builder setup for next.js pages ${e.pagesDir}`),await Xl(e,e.pagesDir,t)),t}async function oa(e){let t=[];return await ua(e,t),e.appDir?(e.debug(`ensure figma-imports setup for next.js app ${e.appDir}`),await Ql(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure figma-imports setup for next.js pages ${e.pagesDir}`),await Zl(e,e.pagesDir,t)),t}async function Ql(e,t,r){let n=`page.${e.typescriptEnabled?"tsx":"jsx"}`,i=e.join(t,"figma-imports",n);if(!await e.exists(i)){let a=await e.formatCode(i,aa({sys:e,routePath:i,modelName:"figma-imports"}));await e.writeFile(i,a),r.push({filePath:i,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let a=await e.formatCode(e.builderComponentPath,ia(e));await e.writeFile(e.builderComponentPath,a),r.push({filePath:e.builderComponentPath,modifiedType:"create"})}}async function Yl(e,t,r){let n=`page.${e.typescriptEnabled?"tsx":"jsx"}`,i=e.join(t,"[...page]",n);if(!await e.exists(i)){let a=await e.formatCode(i,aa({sys:e,routePath:i,modelName:"page"}));await e.writeFile(i,a),r.push({filePath:i,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let a=await e.formatCode(e.builderComponentPath,ia(e));await e.writeFile(e.builderComponentPath,a),r.push({filePath:e.builderComponentPath,modifiedType:"create"})}}function ia(e){let t=e.typescriptEnabled;return e.sdkVersion===b.gen2?`
|
|
303
303
|
"use client";
|
|
304
304
|
import { ${t?"BuilderContent, ":""} isPreviewing, Content } from "@builder.io/sdk-react";
|
|
305
305
|
import DefaultErrorPage from "next/error";
|
|
306
|
-
import { CUSTOM_COMPONENTS } from ${JSON.stringify(
|
|
306
|
+
import { CUSTOM_COMPONENTS } from ${JSON.stringify(k(e,e.builderComponentPath,e.registryPath))};
|
|
307
307
|
${t?`
|
|
308
308
|
interface BuilderPageProps {
|
|
309
309
|
content: BuilderContent | null;
|
|
@@ -337,7 +337,7 @@ ${t?'import { ComponentProps } from "react";':""}
|
|
|
337
337
|
import { BuilderComponent, useIsPreviewing } from "@builder.io/react";
|
|
338
338
|
import { ${t?"BuilderContent, ":""}builder } from '@builder.io/sdk';
|
|
339
339
|
import DefaultErrorPage from "next/error";
|
|
340
|
-
import ${JSON.stringify(
|
|
340
|
+
import ${JSON.stringify(k(e,e.builderComponentPath,e.registryPath))};
|
|
341
341
|
${t?`
|
|
342
342
|
type BuilderPageProps = ComponentProps<typeof BuilderComponent>;`:""}
|
|
343
343
|
|
|
@@ -358,7 +358,7 @@ export function RenderBuilderContent({ content, model }${t?": BuilderPageProps":
|
|
|
358
358
|
// DefaultErrorPage with a 404.
|
|
359
359
|
return <DefaultErrorPage statusCode={404} />;
|
|
360
360
|
}
|
|
361
|
-
`.trimStart()}function
|
|
361
|
+
`.trimStart()}function na(e){return e.features.asyncParams?`
|
|
362
362
|
interface PageProps {
|
|
363
363
|
params: Promise<{
|
|
364
364
|
page: string[];
|
|
@@ -368,17 +368,17 @@ interface PageProps {
|
|
|
368
368
|
params: {
|
|
369
369
|
page: string[];
|
|
370
370
|
};
|
|
371
|
-
}`}function
|
|
371
|
+
}`}function aa({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,i=k(e,t,e.builderComponentPath);return e.sdkVersion===b.gen2?`
|
|
372
372
|
import { fetchOneEntry } from "@builder.io/sdk-react";
|
|
373
373
|
import { RenderBuilderContent } from ${JSON.stringify(i)};
|
|
374
374
|
|
|
375
375
|
// Builder Public API Key set in .env file
|
|
376
|
-
const PUBLIC_API_KEY = process.env.${Be}${
|
|
376
|
+
const PUBLIC_API_KEY = process.env.${Be}${n?"!":""};
|
|
377
377
|
|
|
378
|
-
${
|
|
378
|
+
${n?na(e):""}
|
|
379
379
|
|
|
380
|
-
export default async function Page(props${
|
|
381
|
-
const builderModelName = "${
|
|
380
|
+
export default async function Page(props${n?": PageProps":""}) {
|
|
381
|
+
const builderModelName = "${r}";
|
|
382
382
|
|
|
383
383
|
// Use the page path specified in the URL to fetch the content
|
|
384
384
|
const urlPath = "/" + (${e.features.asyncParams?"(await props?.params)":"props?.params"}?.page?.join("/") || "");
|
|
@@ -402,11 +402,11 @@ import { builder } from "@builder.io/sdk";
|
|
|
402
402
|
import { RenderBuilderContent } from ${JSON.stringify(i)};
|
|
403
403
|
|
|
404
404
|
// Builder Public API Key set in .env file
|
|
405
|
-
builder.init(process.env.${Be}${
|
|
406
|
-
${
|
|
405
|
+
builder.init(process.env.${Be}${n?"!":""});
|
|
406
|
+
${n?na(e):""}
|
|
407
407
|
|
|
408
|
-
export default async function Page(props${
|
|
409
|
-
const builderModelName = "${
|
|
408
|
+
export default async function Page(props${n?": PageProps":""}) {
|
|
409
|
+
const builderModelName = "${r}";
|
|
410
410
|
|
|
411
411
|
const content = await builder
|
|
412
412
|
// Get the page content from Builder with the specified options
|
|
@@ -426,10 +426,10 @@ export default async function Page(props${r?": PageProps":""}) {
|
|
|
426
426
|
</>
|
|
427
427
|
);
|
|
428
428
|
}
|
|
429
|
-
`.trimStart()}async function
|
|
429
|
+
`.trimStart()}async function Xl(e,t,r){let n=`[...page].${e.typescriptEnabled?"tsx":"jsx"}`,i=e.join(t,n);if(!await e.exists(i)){let a=await e.formatCode(i,sa({sys:e,routePath:i,modelName:"page"}));await e.writeFile(i,a),r.push({filePath:i,modifiedType:"create"})}}async function Zl(e,t,r){let n=`figma-imports.${e.typescriptEnabled?"tsx":"jsx"}`,i=e.join(t,n);if(!await e.exists(i)){let a=await e.formatCode(i,sa({sys:e,routePath:i,modelName:"figma-imports"}));await e.writeFile(i,a),r.push({filePath:i,modifiedType:"create"})}}function sa({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled;return e.sdkVersion===b.gen2?`
|
|
430
430
|
import React from "react";
|
|
431
431
|
import { useRouter } from "next/router";
|
|
432
|
-
${
|
|
432
|
+
${n?'import type { BuilderContent } from "@builder.io/sdk-react";':""}
|
|
433
433
|
import {
|
|
434
434
|
Content,
|
|
435
435
|
fetchEntries,
|
|
@@ -438,14 +438,14 @@ import {
|
|
|
438
438
|
} from "@builder.io/sdk-react";
|
|
439
439
|
import DefaultErrorPage from "next/error";
|
|
440
440
|
import Head from "next/head";
|
|
441
|
-
${
|
|
442
|
-
import { CUSTOM_COMPONENTS } from ${JSON.stringify(
|
|
441
|
+
${n?'import { GetStaticProps } from "next";':""}
|
|
442
|
+
import { CUSTOM_COMPONENTS } from ${JSON.stringify(k(e,e.builderComponentPath,e.registryPath))};
|
|
443
443
|
|
|
444
|
-
const BUILDER_API_KEY = process.env.${Be}${
|
|
444
|
+
const BUILDER_API_KEY = process.env.${Be}${n?"!":""};
|
|
445
445
|
|
|
446
446
|
// Define a function that fetches the Builder
|
|
447
447
|
// content for a given page
|
|
448
|
-
export const getStaticProps${
|
|
448
|
+
export const getStaticProps${n?": GetStaticProps":""} = async ({ params }) => {
|
|
449
449
|
${e.features.asyncParams?"await params;":""}
|
|
450
450
|
const urlPath =
|
|
451
451
|
"/" +
|
|
@@ -454,7 +454,7 @@ export const getStaticProps${r?": GetStaticProps":""} = async ({ params }) => {
|
|
|
454
454
|
// Fetch the builder content for the given page
|
|
455
455
|
const page = await fetchOneEntry({
|
|
456
456
|
apiKey: BUILDER_API_KEY,
|
|
457
|
-
model: "${
|
|
457
|
+
model: "${r}",
|
|
458
458
|
userAttributes: { urlPath },
|
|
459
459
|
});
|
|
460
460
|
|
|
@@ -466,7 +466,7 @@ export const getStaticProps${r?": GetStaticProps":""} = async ({ params }) => {
|
|
|
466
466
|
};
|
|
467
467
|
};
|
|
468
468
|
|
|
469
|
-
${
|
|
469
|
+
${r==="page"?`
|
|
470
470
|
// Define a function that generates the
|
|
471
471
|
// static paths for all pages in Builder
|
|
472
472
|
export async function getStaticPaths() {
|
|
@@ -487,7 +487,7 @@ export async function getStaticPaths() {
|
|
|
487
487
|
`:""}
|
|
488
488
|
|
|
489
489
|
// Define the Page component
|
|
490
|
-
export default function Page(props${
|
|
490
|
+
export default function Page(props${n?": { page: BuilderContent | null }":""}) {
|
|
491
491
|
const router = useRouter();
|
|
492
492
|
const canShowContent = props.page || isPreviewing(router.asPath);
|
|
493
493
|
|
|
@@ -506,7 +506,7 @@ export default function Page(props${r?": { page: BuilderContent | null }":""}) {
|
|
|
506
506
|
</Head>
|
|
507
507
|
{/* Render the Builder page */}
|
|
508
508
|
<Content
|
|
509
|
-
model="${
|
|
509
|
+
model="${r}"
|
|
510
510
|
content={props.page}
|
|
511
511
|
apiKey={BUILDER_API_KEY}
|
|
512
512
|
customComponents={CUSTOM_COMPONENTS}
|
|
@@ -520,22 +520,22 @@ import React from "react";
|
|
|
520
520
|
import { useRouter } from "next/router";
|
|
521
521
|
import { BuilderComponent, builder, useIsPreviewing } from "@builder.io/react";
|
|
522
522
|
import DefaultErrorPage from "next/error";
|
|
523
|
-
import Head from "next/head";${
|
|
524
|
-
import { BuilderContent } from "@builder.io/sdk";`:""}${
|
|
523
|
+
import Head from "next/head";${n?`
|
|
524
|
+
import { BuilderContent } from "@builder.io/sdk";`:""}${n?`
|
|
525
525
|
import { GetStaticProps } from "next";`:""}
|
|
526
|
-
import ${JSON.stringify(
|
|
526
|
+
import ${JSON.stringify(k(e,t,e.registryPath))};
|
|
527
527
|
|
|
528
|
-
builder.init(process.env.${Be}${
|
|
528
|
+
builder.init(process.env.${Be}${n?"!":""});
|
|
529
529
|
|
|
530
530
|
// Define a function that fetches the Builder
|
|
531
531
|
// content for a given page
|
|
532
|
-
export const getStaticProps${
|
|
532
|
+
export const getStaticProps${n?": GetStaticProps":""} = async ({ params }) => {
|
|
533
533
|
${e.features.asyncParams?"await params;":""}
|
|
534
534
|
// Fetch the builder content for the given page
|
|
535
535
|
const page = await builder
|
|
536
|
-
.get("${
|
|
536
|
+
.get("${r}", {
|
|
537
537
|
userAttributes: {
|
|
538
|
-
urlPath: "/" + ((params?.page${
|
|
538
|
+
urlPath: "/" + ((params?.page${n?" as string[]":""})?.join("/") || ""),
|
|
539
539
|
},
|
|
540
540
|
})
|
|
541
541
|
.toPromise();
|
|
@@ -550,7 +550,7 @@ export const getStaticProps${r?": GetStaticProps":""} = async ({ params }) => {
|
|
|
550
550
|
};
|
|
551
551
|
};
|
|
552
552
|
|
|
553
|
-
${
|
|
553
|
+
${r==="page"?`// Define a function that generates the
|
|
554
554
|
// static paths for all pages in Builder
|
|
555
555
|
export async function getStaticPaths() {
|
|
556
556
|
// Get a list of all pages in Builder
|
|
@@ -568,7 +568,7 @@ export async function getStaticPaths() {
|
|
|
568
568
|
}`:""}
|
|
569
569
|
|
|
570
570
|
// Define the Page component
|
|
571
|
-
export default function Page({ page }${
|
|
571
|
+
export default function Page({ page }${n?": { page: BuilderContent | null }":""}) {
|
|
572
572
|
const router = useRouter();
|
|
573
573
|
const isPreviewing = useIsPreviewing();
|
|
574
574
|
|
|
@@ -586,11 +586,11 @@ export default function Page({ page }${r?": { page: BuilderContent | null }":""}
|
|
|
586
586
|
<title>{page?.data?.title}</title>
|
|
587
587
|
</Head>
|
|
588
588
|
{/* Render the Builder page */}
|
|
589
|
-
<BuilderComponent model="${
|
|
589
|
+
<BuilderComponent model="${r}" content={page || undefined} />
|
|
590
590
|
</>
|
|
591
591
|
);
|
|
592
592
|
}
|
|
593
|
-
`.trimStart()}async function
|
|
593
|
+
`.trimStart()}async function ep(e,t){let n=e.typescriptEnabled?"tsx":"jsx",i=e.join(e.componentsDir,"Counter"),a=e.join(i,`Counter.${n}`),o=e.join(i,"styles.module.css"),{component:s,styles:u}=tp(e);if(!await e.exists(a)){let c=await e.formatCode(a,s);await e.writeFile(a,c),t.push({filePath:a,modifiedType:"create"})}return await e.exists(o)||(await e.writeFile(o,u),t.push({filePath:o,modifiedType:"create"})),a}function tp(e){let t=e.typescriptEnabled,r=`
|
|
594
594
|
"use client"
|
|
595
595
|
import React, { useState } from "react";
|
|
596
596
|
import styles from "./styles.module.css";
|
|
@@ -624,7 +624,7 @@ function Counter({ initialCount = 99 }${t?": CounterProps":""}) {
|
|
|
624
624
|
}
|
|
625
625
|
|
|
626
626
|
export default Counter;
|
|
627
|
-
`.trimStart(),
|
|
627
|
+
`.trimStart(),n=`
|
|
628
628
|
.counter {
|
|
629
629
|
margin: 32px auto;
|
|
630
630
|
display: flex;
|
|
@@ -653,18 +653,18 @@ export default Counter;
|
|
|
653
653
|
font-size: 42px;
|
|
654
654
|
text-align: center;
|
|
655
655
|
}
|
|
656
|
-
`.trimStart();return{component:
|
|
656
|
+
`.trimStart();return{component:r,styles:n}}async function ua(e,t,r){if(!await e.exists(e.registryPath)){if(e.sdkVersion===b.gen2){let a=np(e);await e.writeFile(e.registryPath,a)}else await e.writeFile(e.registryPath,"");t.push({filePath:e.registryPath,modifiedType:"create"})}if(!r)return;let i=(await je(e,null,!1,!1,null,null,!1,!1)).components.find(a=>a.filePath===r);i&&await je(e,i.id,!0,!1,null,null,!0,!1)}function np(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-react";
|
|
657
657
|
|
|
658
658
|
export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
659
659
|
];`:`export const CUSTOM_COMPONENTS = [
|
|
660
660
|
];
|
|
661
|
-
`}async function
|
|
662
|
-
`),i=
|
|
663
|
-
`)}async function
|
|
661
|
+
`}async function Mt(e){let t=await Gt(e,e.getRepoRootDir());if(t&&typeof t=="object"){let r=new Set(Object.keys({...t.dependencies,...t.devDependencies}));if(r.has("@builder.io/sdk-react"))return b.gen2;if(r.has("@builder.io/react"))return b.gen1}return null}async function ca(e){let t=await rp(e);return{builderPageOptions:async()=>({templateContentId:"3de2f13211234071a4b19a17b4fbc5a7",pathname:"/builder-demo",title:"Builder + Next.js Demo Page"}),ensureBuilderSetup:()=>ra(t),ensureFigmaImportPage:()=>oa(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>je(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:n=>{t.addExternalPackage(n)},loadComponent:async n=>{let i=await je(t,n.cmpId,!1,!1,null,null,!1,!1);return{...i,component:i.components.find(a=>a.id===n.cmpId)}},registerComponent:n=>je(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>je(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>je(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>je(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>tn(t),setPublicApiKey:n=>Ri(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===b.gen2?[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-react"}]:[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>Te(t),setCache:n=>Ie(t,n)}}async function rp(e){let t=e.getAppRootDir(),r=e.join(t,"src"),n=await op(e),i=await De(e),a=e.getFrameworks().find(c=>c.name==="next"),o={asyncParams:a?.version?.major!==void 0&&a.version.major>=15},s={},u={...e,addExternalPackage:c=>{s[e.join(t,c,"index.ts")]=`export * from "${c}";`},readFileSync:c=>s[c]??e.readFileSync(c),existsSync:c=>!!s[c]||e.existsSync(c),readdirSync:c=>{let l=e.readdirSync(c);return c===t?[...l,...Object.keys(s).map(p=>p.slice(t.length+1))]:l},readdir:async c=>{let l=await e.readdir(c);return c===t?[...l,...Object.keys(s).map(p=>p.slice(t.length+1))]:l},appDir:null,pagesDir:null,srcDir:null,builderComponentPath:"",componentsDir:"",registryPath:"",nextConfigPath:n,typescriptEnabled:i,features:o};if(e.sdkVersion?u.sdkVersion=e.sdkVersion:u.sdkVersion=await Mt(u),await e.exists(r)){u.srcDir=r,u.componentsDir=e.join(r,"components");let c=e.join(r,"app");await e.exists(c)&&(u.appDir=c);let l=e.join(r,"pages");await e.exists(l)&&(u.pagesDir=l),u.registryPath=await Ee(e,r)}else u.componentsDir=e.join(t,"components"),u.registryPath=await Ee(e,t);if(u.builderComponentPath=e.join(u.componentsDir,`builder.${i?"tsx":"jsx"}`),!u.appDir){let c=e.join(t,"app");await e.exists(c)&&(u.appDir=c)}if(!u.pagesDir){let c=e.join(t,"pages");await e.exists(c)&&(u.pagesDir=c)}if(!u.appDir&&!u.pagesDir)throw new Error(`Could not find Next.js "app" or "pages" directory. Searched in "${t}".`);return u}async function op(e){let t=e.join(e.getAppRootDir(),"next.config.ts");if(await e.exists(t))return t;let r=e.join(e.getAppRootDir(),"next.config.mjs");if(await e.exists(r))return r;let n=e.join(e.getAppRootDir(),"next.config.js");if(await e.exists(n))return n;throw new Error(`Could not find Next.js config file. Searched for "next.config.ts", "next.config.mjs" and "next.config.js" in "${e.getAppRootDir()}".`)}async function an(e){return await nt(e,[".env"],pa)}async function la(e,t){ip(t);let r=await an(e),n=await rt(e,r.file,r.envKey,t);return{...r,modifiedType:n}}function ip(e){typeof process<"u"&&(process.env[pa]=e)}var pa="PUBLIC_BUILDER_API_KEY";function ma(e,t,r){if(r.length===0)return e;let n=e.split(`
|
|
662
|
+
`),i=n.findIndex(s=>s.includes(r));if(i===-1||n.some(s=>s.includes(t[0])))return e;let o=["/**",...t.map(s=>` * ${s.trim()}`)," */"];return n.splice(i,0,...o),n.join(`
|
|
663
|
+
`)}async function da(e,t){let r=[],n=t.getSourceFiles(),i=t.getTypeChecker();return await Promise.all(n.map(async a=>{let o=e.basename(a.fileName);if(o.startsWith(".")||up.has(o))return;let s=e.normalize(a.fileName);if(s===e.registryPath)return;let u=await Rn(e,i,s,a);r.push(...u)})),r}async function Da(e,t){if(e.extname(t).toLowerCase()===".tsx"){let n=await e.readFile(t);if(n)return ap(e,t,n)}return null}function ap(e,t,r){let n=B(e,r);return Rn(e,null,t,n)}async function Rn(e,t,r,n){r=e.normalize(r);let i=[],a=xt(e,n);return await Promise.all(a.map(async o=>{let s=await sp(e,t,r,o);s&&i.push(s)})),i}async function sp(e,t,r,n){let i=e.relative(e.getAppRootDir(),r),a=V(e,r);if(e.ts.isVariableStatement(n.node))for(let o of n.node.declarationList.declarations){let s=fa(e,o.initializer);if(s&&e.ts.isIdentifier(o.name)){let u=o.name.text;return{cmpInfo:{id:await U(e,r,u),displayFilePath:$(e,r),name:z(u),inputs:[],exportName:n.isDefaultExport?"default":u,exportType:n.isDefaultExport?"default":"named",importName:u,filePath:r,relFilePath:i,importPath:a},node:s}}}else if(e.ts.isCallExpression(n.node)){let o=fa(e,n.node);if(o)return{cmpInfo:{id:await U(e,r,"default"),displayFilePath:$(e,r),name:xe(e,r),inputs:[],exportName:"default",exportType:"default",importName:Dt(e,r),filePath:r,relFilePath:i,importPath:a},node:o}}return null}function fa(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 up=new Set(["node_modules","layout.tsx","404.tsx","router-head.tsx"]);async function ga(e,t){let r=t.node.fnNode;if((e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r))&&r.parameters.length>0){let{sourceFile:i,typeChecker:a}=await Pt(e,t.cmpInfo.filePath,null);if(!(await Rn(e,a,t.cmpInfo.filePath,i)).find(u=>u.cmpInfo.id===t.cmpInfo.id))throw new Error(`createComponentInputs() Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return Ct(e,a,r)}return[]}async function ha(e){return $r(e)}async function $r(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,cp),t.push({filePath:e.registryPath,modifiedType:"create"})),t}var cp=`import type { RegisteredComponent } from "@builder.io/sdk-qwik";
|
|
664
664
|
|
|
665
665
|
export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
666
666
|
];
|
|
667
|
-
`;async function ra(e){await yn(e);let t=await e.readFile(e.registryPath);return t?sc(e,t):{components:[],sourceFile:B(e,"")}}async function sc(e,t){let n=B(e,t);return lc(e,n)}async function lc(e,t){let n=[],r=Q(e,t,"CUSTOM_COMPONENTS");return r&&await Promise.all(r.arrayLiteralExp.elements.map(async(i,a)=>{let o=await vn(e,t,i);o&&(o.nodeIndex=a,n.push(o))})),{sourceFile:t,components:me(n)}}async function vn(e,t,n){if(!e.ts.isObjectLiteralExpression(n))return null;let r={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[]};for(let i of n.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(O(e,i)==="component"&&e.ts.isIdentifier(i.initializer)){let o=i.initializer.text;r.name===""&&(r.name=K(o)),r.importName=o;let u=await Re(e,e.registryPath,t,o);if(!u)continue;r.filePath=u.filePath,r.relFilePath=u.relFilePath,r.importPath=M(e,u.filePath),r.displayFilePath=u.displayFilePath,r.exportType=u.exportType;let s=await Zi(e,u.filePath);if(s&&s.length>0)if(s.length===1)r.exportName=s[0].cmpInfo.exportName;else{let l=s.find(c=>c.cmpInfo.exportName===o);l&&(r.exportName=l.cmpInfo.exportName)}continue}}return r=fe(e,r,n),r.filePath&&r.exportName&&(r.id=await V(e,r.filePath,r.exportName)),r}async function na(e){let t=new Set,n=async i=>{let a=await e.readdir(i);await Promise.all(a.map(async o=>{if(o.startsWith(".")||o==="node_modules")return;let u=e.join(i,o),s=e.extname(o).toLowerCase();if(s===".tsx"||s===".ts"){t.add(u);return}(await e.stat(u)).isDirectory()&&await n(u)}))};return await n(e.getAppRootDir()),await X(e,[...t])}async function dt(e,t,n,r,i,a,o,u){let s=await na(e),[l,c,p]=await Promise.all([Xi(e,s),ra(e),Ht(e)]),m=l.map(D=>D.cmpInfo),C=c.components,g={components:be(m,C),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ne(m),publicApiKey:p.envValue??void 0,devToolsVersion:e.version};if(u)return g;if(t!=null){let D=l.find(y=>y.cmpInfo.id===t);if(!D)throw new Error(`Component ${t} not found`);let d=c.sourceFile,f=g.components.find(y=>y.id===t),E=await ea(e,D);Ce(f,E),t=Array.isArray(t)?t[0]:t;let x=Le(t,m,C,n,r,i,a),{elements:v,elmIndex:A,statementIndex:S,statement:_,variableDeclaration:ee}=await pc(e,d,D),j=!1;if(x.addCmpToRegistry?(v.push(cc(e,x.addCmpToRegistry)),j=!0):x.removeCmpFromRegistry?(v.splice(A,1),j=!0):x.updateRegisteredCmp&&(v[A]=Z(e,v[A],x.updateRegisteredCmp),j=!0),j&&o){let y=[...d.statements];y[S]=e.ts.factory.updateVariableStatement(_,_.modifiers,e.ts.factory.updateVariableDeclarationList(_.declarationList,[e.ts.factory.updateVariableDeclaration(ee,ee.name,ee.exclamationToken,ee.type,e.ts.factory.createArrayLiteralExpression(ke(e,v)))])),d=e.ts.factory.updateSourceFile(d,y),f.exportType==="named"?d=N(e,d,{namedImports:[f.importName],importPath:$(e,e.registryPath,f.filePath)}):d=N(e,d,{defaultImport:f.importName,importPath:$(e,e.registryPath,f.filePath)}),d=N(e,d,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-qwik",isTypeOnly:!0}),d=_e(e,d,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),d=Oe(e,d),d=$e(e,d);let b=te(e,d);b=ve(b),b=Qi(b,mc,"CUSTOM_COMPONENTS"),b=await e.formatCode(e.registryPath,b),await e.writeFile(e.registryPath,b)}g.components=x.components}return g}function cc(e,t){return Z(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName))],!0),t)}async function pc(e,t,n){let r=Q(e,t,"CUSTOM_COMPONENTS");if(!r)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let i=r.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),a=-1;for(let o=0;o<i.length;o++)if((await vn(e,t,i[o]))?.id===n.cmpInfo.id){a=o;break}return{...r,elements:i,elmIndex:a}}var mc=["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 oa(e){let t=await fc(e);return{builderPageOptions:async()=>({templateContentId:"dc70f1d979ad416d8fd357137eb9ddfb",pathname:"/",title:"Builder + Qwik Demo Page"}),ensureBuilderSetup:()=>ta(t),ensureFigmaImportPage:async()=>[],getRegistryPath:()=>t.registryPath,getRegistry:r=>dt(t,null,!1,!1,null,null,!1,!!r?.readAllInputTypes),addExternalPackage:async r=>{},loadComponent:async r=>{let i=await dt(t,r.cmpId,!1,!1,null,null,!1,!1);return{...i,component:i.components.find(a=>a.id===r.cmpId)}},registerComponent:r=>dt(t,r.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:r=>dt(t,r.cmpId,!1,!1,r,null,!0,!1),setRegisteredComponentInput:r=>dt(t,r.cmpId,!1,!1,null,r,!0,!1),unregisterComponent:r=>dt(t,r.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>Ht(t),setPublicApiKey:r=>Gi(t,r.publicApiKey),getDependencies:r=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-qwik"}],getDevRunCommand:()=>"dev",getCache:()=>Te(t),setCache:r=>Ie(t,r)}}async function fc(e){let t=await Mt(e,e.getAppRootDir(),"components");if(!t)throw new Error(`Could not find components directory within project: ${e.getAppRootDir()}`);let n=await xe(e,t),r=e.join(e.getAppRootDir(),".env");return{...e,componentsDir:t,registryPath:n,envPath:r}}async function Qt(e){return await et(e,[".env"],Yt)}async function ia(e,t){let n=await Qt(e),r=await tt(e,n.file,n.envKey,t);return{...n,modifiedType:r}}var Yt="PUBLIC_BUILDER_KEY";var dc=new Set(["dist","node_modules"]);async function aa(e,t){let n=[],r=t.getSourceFiles(),i=t.getTypeChecker(),a=e.join(e.getAppRootDir(),"build");return await Promise.all(r.map(async o=>{let u=e.basename(o.fileName);if(u.startsWith(".")||u==="node_modules"||mr(e,dc,o.fileName)||Dc.has(u)||u.includes("$."))return;let s=e.normalize(o.fileName);if(s===e.remixConfigPath||s===a)return;let l=await rt(e,i,s,o,s===e.registryPath);n.push(...l)})),n}var Dc=new Set(["root.tsx","root.ts","root.jsx","root.js","_index.tsx","_index.jsx","_index.ts","_index.js"]);async function ua(e){await br(e);let t=await e.readFile(e.registryPath);return t?gc(e,t):{components:[],sourceFile:B(e,"")}}async function gc(e,t){let n=B(e,t);return Cc(e,n)}async function Cc(e,t){let n=[],r=Q(e,t,"CUSTOM_COMPONENTS");return r&&await Promise.all(r.arrayLiteralExp.elements.map(async(i,a)=>{let o=await bn(e,t,i);o&&(o.nodeIndex=a,n.push(o))})),{sourceFile:t,components:me(n)}}async function bn(e,t,n){if(!e.ts.isObjectLiteralExpression(n))return null;let r={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1};e.sdkVersion===w.gen2&&Pt(e,n)&&(r.acceptsChildren=!0);for(let i of n.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(O(e,i)==="component"){let o,{initializer:u}=i;if(e.ts.isIdentifier(u))o=u.text;else if(e.ts.isCallExpression(u)){(e.ts.isIdentifier(u.expression)&&u.expression.text)==="withChildren"&&(r.acceptsChildren=!0);let c=u.arguments[0];e.ts.isIdentifier(c)&&(o=c.text)}if(!o)continue;r.name===""&&(r.name=K(o)),r.importName=o;let s=await Re(e,e.registryPath,t,o);if(!s)continue;if(r.filePath=s.filePath,r.relFilePath=s.relFilePath,await e.exists(s.filePath)?r.importPath=M(e,s.filePath):(r.externalImportPath=s.importPath,r.importPath=r.externalImportPath),r.displayFilePath=s.displayFilePath,r.exportType=s.exportType,r.externalImportPath)r.exportName=o;else{let l=await wi(e,s.filePath,e.registryPath===s.filePath||he(s.filePath));if(l&&l.length>0)if(l.length===1)r.exportName=l[0].cmpInfo.exportName;else{let c=l.find(p=>p.cmpInfo.exportName===o);c&&(r.exportName=c.cmpInfo.exportName)}}continue}}return r=fe(e,r,n),r.filePath&&r.exportName&&(r.id=await V(e,r.filePath,r.exportName,r.externalImportPath)),r}async function Me(e,t,n,r,i,a,o,u){let s=await nt(e),[l,c,p]=await Promise.all([aa(e,s),ua(e),Qt(e)]),m=l.map(E=>E.cmpInfo),C=c.components,g={components:be(m,C),registryPath:e.registryPath,registryDisplayPath:k(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ne(m),publicApiKey:p.envValue??void 0,devToolsVersion:e.version};if(u)return g.components=await Bt(e,g.components),g;let D=!1,d=c.sourceFile,f=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(f.length>0){let E=f.map(A=>{let S=l.find(_=>_.cmpInfo.id===A);if(!S)throw new Error(`Component ${A} not found`);return S}),x=Array.from(new Set(E.map(A=>A.cmpInfo.filePath))),v=await X(e,x);for(let A of E){let S=g.components.find(L=>L.id===A.cmpInfo.id),_=await Rt(e,A,v,e.registryPath===A.cmpInfo.filePath||he(A.cmpInfo.filePath));Ce(S,_);let ee=m.findIndex(L=>L.id===A.cmpInfo.id);m[ee].inputs=_;let j=Le(A.cmpInfo.id,m,C,n,r,i,a),{elements:y,elmIndex:b,statementIndex:ue,statement:Se,variableDeclaration:oe}=await Ec(e,d,A);if(j.addCmpToRegistry)y.push(hc(e,j.addCmpToRegistry)),D=!0;else if(j.removeCmpFromRegistry)y.splice(b,1),D=!0;else if(j.updateRegisteredCmp){let L=Z(e,y[b],j.updateRegisteredCmp);y[b]=e.ts.factory.updateObjectLiteralExpression(L,[sa(e,j.updateRegisteredCmp),...L.properties.slice(1)]),D=!0}if(D&&o){let L=[...d.statements];L[ue]=e.ts.factory.updateVariableStatement(Se,Se.modifiers,e.ts.factory.updateVariableDeclarationList(Se.declarationList,[e.ts.factory.updateVariableDeclaration(oe,oe.name,oe.exclamationToken,oe.type,e.ts.factory.createArrayLiteralExpression(ke(e,y)))])),d=e.ts.factory.updateSourceFile(d,L),S.exportType==="named"?d=N(e,d,{namedImports:[S.importName],importPath:S.externalImportPath?S.externalImportPath:$(e,e.registryPath,S.filePath)}):d=N(e,d,{defaultImport:S.importName,importPath:S.externalImportPath?S.externalImportPath:$(e,e.registryPath,S.filePath)});let se=e.sdkVersion===w.gen2?"@builder.io/sdk-react":"@builder.io/react";d=N(e,d,{namedImports:["RegisteredComponent"],importPath:se,isTypeOnly:!0}),S.acceptsChildren&&e.sdkVersion!==w.gen2&&(d=N(e,d,{namedImports:["withChildren"],importPath:"@builder.io/react"})),d=_e(e,d,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),g.components=j.components,C=j.components.filter(st=>st.isRegistered)}}}if(D&&o){d=Oe(e,d),d=$e(e,d);let E=te(e,d);E=ve(E),E=await e.formatCode(e.registryPath,E),await e.writeFile(e.registryPath,E)}return g}function sa(e,t){if(e.sdkVersion===w.gen2)return e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName));let n=e.ts.factory.createIdentifier(t.importName),r=t.acceptsChildren?e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("withChildren"),void 0,[n]):n;return e.ts.factory.createPropertyAssignment("component",r)}function hc(e,t){return Z(e,e.ts.factory.createObjectLiteralExpression([sa(e,t),...t.acceptsChildren&&e.sdkVersion===w.gen2?[e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())]:[]],!0),t)}async function Ec(e,t,n){let r=Q(e,t,"CUSTOM_COMPONENTS");if(!r)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let i=r.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),a=-1;for(let o=0;o<i.length;o++)if((await bn(e,t,i[o]))?.id===n.cmpInfo.id){a=o;break}return{...r,elements:i,elmIndex:a}}async function la(e){let t=[],n=await Sc(e,t);return t.push(...await br(e)),await yc(e,n),await Fc(e,t),t}async function ca(e){let t=[];return t.push(...await br(e)),await xc(e,t),t}async function xc(e,t){let n=`figma-imports.${e.typescriptEnabled?"tsx":"jsx"}`;e.hasLocaleParam&&(e.debug("remixEnsureFigmaImportRoute, hasLocaleParam"),n=`($locale).${n}`);let r=e.join(e.routesDir,n),i=await e.exists(r);e.debug(`remixEnsureFigmaImportRoute, hasRoute: ${i}`);let a=await e.formatCode(r,pa({sys:e,routePath:r,modelName:"figma-imports"}));await e.writeFile(r,a),t.push({filePath:r,modifiedType:i?"update":"create"})}async function Fc(e,t){let n=`$.${e.typescriptEnabled?"tsx":"jsx"}`;e.hasLocaleParam&&(e.debug("remixEnsureAppRoute, hasLocaleParam"),n=`($locale).${n}`),e.sdkVersion===w.gen2&&(n=`($slug)._index.${e.typescriptEnabled?"tsx":"jsx"}`);let r=e.join(e.routesDir,n),i=await e.exists(r);e.debug(`remixEnsureAppRoute, hasRoute: ${i}`);let a=await e.formatCode(r,pa({sys:e,routePath:r,modelName:"page"}));await e.writeFile(r,a),t.push({filePath:r,modifiedType:i?"update":"create"})}function pa({sys:e,routePath:t,modelName:n}){let r=e.typescriptEnabled,i=$(e,t,e.registryPath),a="",o="";r&&(a="import type { LoaderArgs } from '@remix-run/server-runtime';",o=": LoaderArgs");let u=`process.env.${Yt}`;return e.getFrameworks().some(s=>s.name==="@shopify/remix-oxygen")&&(u=`context.env.${Yt}`),r&&(u+="!"),e.sdkVersion===w.gen2?`
|
|
667
|
+
`;async function Ca(e){await $r(e);let t=await e.readFile(e.registryPath);return t?lp(e,t):{components:[],sourceFile:B(e,"")}}async function lp(e,t){let r=B(e,t);return pp(e,r)}async function pp(e,t){let r=[],n=Y(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(i,a)=>{let o=await Or(e,t,i);o&&(o.nodeIndex=a,r.push(o))})),{sourceFile:t,components:me(r)}}async function Or(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[]};for(let i of r.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(O(e,i)==="component"&&e.ts.isIdentifier(i.initializer)){let o=i.initializer.text;n.name===""&&(n.name=z(o)),n.importName=o;let s=await Re(e,e.registryPath,t,o);if(!s)continue;n.filePath=s.filePath,n.relFilePath=s.relFilePath,n.importPath=V(e,s.filePath),n.displayFilePath=s.displayFilePath,n.exportType=s.exportType;let u=await Da(e,s.filePath);if(u&&u.length>0)if(u.length===1)n.exportName=u[0].cmpInfo.exportName;else{let c=u.find(l=>l.cmpInfo.exportName===o);c&&(n.exportName=c.cmpInfo.exportName)}continue}}return n=fe(e,n,r),n.filePath&&n.exportName&&(n.id=await U(e,n.filePath,n.exportName)),n}async function xa(e){let t=new Set,r=async i=>{let a=await e.readdir(i);await Promise.all(a.map(async o=>{if(o.startsWith(".")||o==="node_modules")return;let s=e.join(i,o),u=e.extname(o).toLowerCase();if(u===".tsx"||u===".ts"){t.add(s);return}(await e.stat(s)).isDirectory()&&await r(s)}))};return await r(e.getAppRootDir()),await Z(e,[...t])}async function Et(e,t,r,n,i,a,o,s){let u=await xa(e),[c,l,p]=await Promise.all([da(e,u),Ca(e),an(e)]),m=c.map(D=>D.cmpInfo),h=l.components,g={components:ve(m,h),registryPath:e.registryPath,registryDisplayPath:$(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ne(m),publicApiKey:p.envValue??void 0,devToolsVersion:e.version};if(s)return g;if(t!=null){let D=c.find(w=>w.cmpInfo.id===t);if(!D)throw new Error(`Component ${t} not found`);let d=l.sourceFile,f=g.components.find(w=>w.id===t),E=await ga(e,D);he(f,E),t=Array.isArray(t)?t[0]:t;let x=Le(t,m,h,r,n,i,a),{elements:A,elmIndex:S,statementIndex:y,statement:M,variableDeclaration:te}=await fp(e,d,D),K=!1;if(x.addCmpToRegistry?(A.push(mp(e,x.addCmpToRegistry)),K=!0):x.removeCmpFromRegistry?(A.splice(S,1),K=!0):x.updateRegisteredCmp&&(A[S]=ee(e,A[S],x.updateRegisteredCmp),K=!0),K&&o){let w=[...d.statements];w[y]=e.ts.factory.updateVariableStatement(M,M.modifiers,e.ts.factory.updateVariableDeclarationList(M.declarationList,[e.ts.factory.updateVariableDeclaration(te,te.name,te.exclamationToken,te.type,e.ts.factory.createArrayLiteralExpression($e(e,A)))])),d=e.ts.factory.updateSourceFile(d,w),f.exportType==="named"?d=N(e,d,{namedImports:[f.importName],importPath:k(e,e.registryPath,f.filePath)}):d=N(e,d,{defaultImport:f.importName,importPath:k(e,e.registryPath,f.filePath)}),d=N(e,d,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-qwik",isTypeOnly:!0}),d=_e(e,d,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),d=Oe(e,d),d=ke(e,d);let v=ne(e,d);v=Ae(v),v=ma(v,dp,"CUSTOM_COMPONENTS"),v=await e.formatCode(e.registryPath,v),await e.writeFile(e.registryPath,v)}g.components=x.components}return g}function mp(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName))],!0),t)}async function fp(e,t,r){let n=Y(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 i=n.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),a=-1;for(let o=0;o<i.length;o++)if((await Or(e,t,i[o]))?.id===r.cmpInfo.id){a=o;break}return{...n,elements:i,elmIndex:a}}var dp=["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 Ea(e){let t=await Dp(e);return{builderPageOptions:async()=>({templateContentId:"dc70f1d979ad416d8fd357137eb9ddfb",pathname:"/",title:"Builder + Qwik Demo Page"}),ensureBuilderSetup:()=>ha(t),ensureFigmaImportPage:async()=>[],getRegistryPath:()=>t.registryPath,getRegistry:n=>Et(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:async n=>{},loadComponent:async n=>{let i=await Et(t,n.cmpId,!1,!1,null,null,!1,!1);return{...i,component:i.components.find(a=>a.id===n.cmpId)}},registerComponent:n=>Et(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>Et(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>Et(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>Et(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>an(t),setPublicApiKey:n=>la(t,n.publicApiKey),getDependencies:n=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-qwik"}],getDevRunCommand:()=>"dev",getCache:()=>Te(t),setCache:n=>Ie(t,n)}}async function Dp(e){let t=await Ht(e,e.getAppRootDir(),"components");if(!t)throw new Error(`Could not find components directory within project: ${e.getAppRootDir()}`);let r=await Ee(e,t),n=e.join(e.getAppRootDir(),".env");return{...e,componentsDir:t,registryPath:r,envPath:n}}async function sn(e){return await nt(e,[".env"],un)}async function Fa(e,t){let r=await sn(e),n=await rt(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var un="PUBLIC_BUILDER_KEY";var gp=new Set(["dist","node_modules"]);async function ya(e,t){let r=[],n=t.getSourceFiles(),i=t.getTypeChecker(),a=e.join(e.getAppRootDir(),"build");return await Promise.all(n.map(async o=>{let s=e.basename(o.fileName);if(s.startsWith(".")||s==="node_modules"||yn(e,gp,o.fileName)||hp.has(s)||s.includes("$."))return;let u=e.normalize(o.fileName);if(u===e.remixConfigPath||u===a)return;let c=await ot(e,i,u,o,u===e.registryPath);r.push(...c)})),r}var hp=new Set(["root.tsx","root.ts","root.jsx","root.js","_index.tsx","_index.jsx","_index.ts","_index.js"]);async function Sa(e){await Nn(e);let t=await e.readFile(e.registryPath);return t?Cp(e,t):{components:[],sourceFile:B(e,"")}}async function Cp(e,t){let r=B(e,t);return xp(e,r)}async function xp(e,t){let r=[],n=Y(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(i,a)=>{let o=await Lr(e,t,i);o&&(o.nodeIndex=a,r.push(o))})),{sourceFile:t,components:me(r)}}async function Lr(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1};e.sdkVersion===b.gen2&&kt(e,r)&&(n.acceptsChildren=!0);for(let i of r.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(O(e,i)==="component"){let o,{initializer:s}=i;if(e.ts.isIdentifier(s))o=s.text;else if(e.ts.isCallExpression(s)){(e.ts.isIdentifier(s.expression)&&s.expression.text)==="withChildren"&&(n.acceptsChildren=!0);let l=s.arguments[0];e.ts.isIdentifier(l)&&(o=l.text)}if(!o)continue;n.name===""&&(n.name=z(o)),n.importName=o;let u=await Re(e,e.registryPath,t,o);if(!u)continue;if(n.filePath=u.filePath,n.relFilePath=u.relFilePath,await e.exists(u.filePath)?n.importPath=V(e,u.filePath):(n.externalImportPath=u.importPath,n.importPath=n.externalImportPath),n.displayFilePath=u.displayFilePath,n.exportType=u.exportType,n.externalImportPath)n.exportName=o;else{let c=await Ui(e,u.filePath,e.registryPath===u.filePath||Ce(u.filePath));if(c&&c.length>0)if(c.length===1)n.exportName=c[0].cmpInfo.exportName;else{let l=c.find(p=>p.cmpInfo.exportName===o);l&&(n.exportName=l.cmpInfo.exportName)}}continue}}return n=fe(e,n,r),n.filePath&&n.exportName&&(n.id=await U(e,n.filePath,n.exportName,n.externalImportPath)),n}async function Me(e,t,r,n,i,a,o,s){let u=await it(e),[c,l,p]=await Promise.all([ya(e,u),Sa(e),sn(e)]),m=c.map(E=>E.cmpInfo),h=l.components,g={components:ve(m,h),registryPath:e.registryPath,registryDisplayPath:$(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ne(m),publicApiKey:p.envValue??void 0,devToolsVersion:e.version};if(s)return g.components=await Lt(e,g.components),g;let D=!1,d=l.sourceFile,f=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(f.length>0){let E=f.map(S=>{let y=c.find(M=>M.cmpInfo.id===S);if(!y)throw new Error(`Component ${S} not found`);return y}),x=Array.from(new Set(E.map(S=>S.cmpInfo.filePath))),A=await Z(e,x);for(let S of E){let y=g.components.find(L=>L.id===S.cmpInfo.id),M=await _t(e,S,A,e.registryPath===S.cmpInfo.filePath||Ce(S.cmpInfo.filePath));he(y,M);let te=m.findIndex(L=>L.id===S.cmpInfo.id);m[te].inputs=M;let K=Le(S.cmpInfo.id,m,h,r,n,i,a),{elements:w,elmIndex:v,statementIndex:ue,statement:ye,variableDeclaration:ie}=await Fp(e,d,S);if(K.addCmpToRegistry)w.push(Ep(e,K.addCmpToRegistry)),D=!0;else if(K.removeCmpFromRegistry)w.splice(v,1),D=!0;else if(K.updateRegisteredCmp){let L=ee(e,w[v],K.updateRegisteredCmp);w[v]=e.ts.factory.updateObjectLiteralExpression(L,[wa(e,K.updateRegisteredCmp),...L.properties.slice(1)]),D=!0}if(D&&o){let L=[...d.statements];L[ue]=e.ts.factory.updateVariableStatement(ye,ye.modifiers,e.ts.factory.updateVariableDeclarationList(ye.declarationList,[e.ts.factory.updateVariableDeclaration(ie,ie.name,ie.exclamationToken,ie.type,e.ts.factory.createArrayLiteralExpression($e(e,w)))])),d=e.ts.factory.updateSourceFile(d,L),y.exportType==="named"?d=N(e,d,{namedImports:[y.importName],importPath:y.externalImportPath?y.externalImportPath:k(e,e.registryPath,y.filePath)}):d=N(e,d,{defaultImport:y.importName,importPath:y.externalImportPath?y.externalImportPath:k(e,e.registryPath,y.filePath)});let ce=e.sdkVersion===b.gen2?"@builder.io/sdk-react":"@builder.io/react";d=N(e,d,{namedImports:["RegisteredComponent"],importPath:ce,isTypeOnly:!0}),y.acceptsChildren&&e.sdkVersion!==b.gen2&&(d=N(e,d,{namedImports:["withChildren"],importPath:"@builder.io/react"})),d=_e(e,d,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),g.components=K.components,h=K.components.filter(mt=>mt.isRegistered)}}}if(D&&o){d=Oe(e,d),d=ke(e,d);let E=ne(e,d);E=Ae(E),E=await e.formatCode(e.registryPath,E),await e.writeFile(e.registryPath,E)}return g}function wa(e,t){if(e.sdkVersion===b.gen2)return e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName));let r=e.ts.factory.createIdentifier(t.importName),n=t.acceptsChildren?e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("withChildren"),void 0,[r]):r;return e.ts.factory.createPropertyAssignment("component",n)}function Ep(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([wa(e,t),...t.acceptsChildren&&e.sdkVersion===b.gen2?[e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())]:[]],!0),t)}async function Fp(e,t,r){let n=Y(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 i=n.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),a=-1;for(let o=0;o<i.length;o++)if((await Lr(e,t,i[o]))?.id===r.cmpInfo.id){a=o;break}return{...n,elements:i,elmIndex:a}}async function Aa(e){let t=[],r=await wp(e,t);return t.push(...await Nn(e)),await vp(e,r),await Sp(e,t),t}async function va(e){let t=[];return t.push(...await Nn(e)),await yp(e,t),t}async function yp(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),i=await e.exists(n);e.debug(`remixEnsureFigmaImportRoute, hasRoute: ${i}`);let a=await e.formatCode(n,ba({sys:e,routePath:n,modelName:"figma-imports"}));await e.writeFile(n,a),t.push({filePath:n,modifiedType:i?"update":"create"})}async function Sp(e,t){let r=`$.${e.typescriptEnabled?"tsx":"jsx"}`;e.hasLocaleParam&&(e.debug("remixEnsureAppRoute, hasLocaleParam"),r=`($locale).${r}`),e.sdkVersion===b.gen2&&(r=`($slug)._index.${e.typescriptEnabled?"tsx":"jsx"}`);let n=e.join(e.routesDir,r),i=await e.exists(n);e.debug(`remixEnsureAppRoute, hasRoute: ${i}`);let a=await e.formatCode(n,ba({sys:e,routePath:n,modelName:"page"}));await e.writeFile(n,a),t.push({filePath:n,modifiedType:i?"update":"create"})}function ba({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,i=k(e,t,e.registryPath),a="",o="";n&&(a="import type { LoaderArgs } from '@remix-run/server-runtime';",o=": LoaderArgs");let s=`process.env.${un}`;return e.getFrameworks().some(u=>u.name==="@shopify/remix-oxygen")&&(s=`context.env.${un}`),n&&(s+="!"),e.sdkVersion===b.gen2?`
|
|
668
668
|
|
|
669
669
|
import {
|
|
670
670
|
Content,
|
|
@@ -672,18 +672,18 @@ import {
|
|
|
672
672
|
getBuilderSearchParams,
|
|
673
673
|
isPreviewing,
|
|
674
674
|
} from "@builder.io/sdk-react";
|
|
675
|
-
${
|
|
675
|
+
${n?'import type { LoaderFunctionArgs } from "@remix-run/node";':""}
|
|
676
676
|
import { useLoaderData } from "@remix-run/react";
|
|
677
|
-
import { fetch ${
|
|
677
|
+
import { fetch ${n?"as webFetch":""}} from "@remix-run/web-fetch";
|
|
678
678
|
import { CUSTOM_COMPONENTS } from ${JSON.stringify(i)};
|
|
679
679
|
|
|
680
|
-
export const loader = async ({ params, request }${
|
|
681
|
-
const builderApiKey = ${
|
|
680
|
+
export const loader = async ({ params, request }${n?": LoaderFunctionArgs":""}) => {
|
|
681
|
+
const builderApiKey = ${s};
|
|
682
682
|
const url = new URL(request.url);
|
|
683
683
|
const urlPath = \`/\${params["slug"] || ""}\`;
|
|
684
684
|
|
|
685
685
|
const page = await fetchOneEntry({
|
|
686
|
-
model: "${
|
|
686
|
+
model: "${r}",
|
|
687
687
|
apiKey: builderApiKey,
|
|
688
688
|
options: getBuilderSearchParams(url.searchParams),
|
|
689
689
|
userAttributes: { urlPath },
|
|
@@ -702,11 +702,11 @@ export const loader = async ({ params, request }${r?": LoaderFunctionArgs":""})
|
|
|
702
702
|
|
|
703
703
|
// Define and render the page.
|
|
704
704
|
export default function Page() {
|
|
705
|
-
const { page, builderApiKey } = useLoaderData${
|
|
705
|
+
const { page, builderApiKey } = useLoaderData${n?"<typeof loader>":""}();
|
|
706
706
|
// Render the page content from Builder.io
|
|
707
707
|
return (
|
|
708
708
|
<Content
|
|
709
|
-
model="${
|
|
709
|
+
model="${r}"
|
|
710
710
|
apiKey={builderApiKey}
|
|
711
711
|
content={page}
|
|
712
712
|
customComponents={CUSTOM_COMPONENTS}
|
|
@@ -722,12 +722,12 @@ ${a}
|
|
|
722
722
|
// Fetch contents of the page
|
|
723
723
|
export const loader = async ({ params, request, context }${o}) => {
|
|
724
724
|
// Initialize the Builder client and pass in your Public API Key
|
|
725
|
-
const builderApiKey = ${
|
|
725
|
+
const builderApiKey = ${s};
|
|
726
726
|
builder.init(builderApiKey);
|
|
727
727
|
|
|
728
728
|
// Fetch data content from Builder.io based on the URL path
|
|
729
729
|
const page = await builder
|
|
730
|
-
.get("${
|
|
730
|
+
.get("${r}", {
|
|
731
731
|
userAttributes: {
|
|
732
732
|
urlPath: "/" + params["*"],
|
|
733
733
|
},
|
|
@@ -754,27 +754,27 @@ export const loader = async ({ params, request, context }${o}) => {
|
|
|
754
754
|
// Define and render the page.
|
|
755
755
|
export default function Page() {
|
|
756
756
|
// Use the useLoaderData hook to get the Page data from "loader" above.
|
|
757
|
-
const { page, builderApiKey } = useLoaderData${
|
|
757
|
+
const { page, builderApiKey } = useLoaderData${n?"<typeof loader>":""}();
|
|
758
758
|
|
|
759
759
|
// Render the page content from Builder.io
|
|
760
760
|
return (
|
|
761
761
|
<BuilderComponent
|
|
762
762
|
customComponents={CUSTOM_COMPONENTS}
|
|
763
763
|
apiKey={builderApiKey}
|
|
764
|
-
model="${
|
|
764
|
+
model="${r}"
|
|
765
765
|
content={page}
|
|
766
766
|
/>
|
|
767
767
|
);
|
|
768
768
|
}
|
|
769
769
|
|
|
770
|
-
${
|
|
770
|
+
${n?`
|
|
771
771
|
declare global {
|
|
772
772
|
interface Env {
|
|
773
|
-
${
|
|
773
|
+
${un}: string;
|
|
774
774
|
}
|
|
775
775
|
}
|
|
776
776
|
`:""}
|
|
777
|
-
`}async function
|
|
777
|
+
`}async function wp(e,t){let n=e.typescriptEnabled?"tsx":"jsx",i=e.join(e.componentsDir,"Counter"),a=e.join(i,`Counter.${n}`),o=e.join(i,"styles.module.css"),{component:s,styles:u}=Ap(e),c=await e.exists(a);if(e.debug(`remixEnsureCounterComponent, hasCounterCmp: ${c}`),!c){let p=await e.formatCode(a,s);await e.writeFile(a,p),t.push({filePath:a,modifiedType:"create"})}let l=await e.exists(o);return e.debug(`remixEnsureCounterComponent, hasCounterStyles: ${l}`),l||(await e.writeFile(o,u),t.push({filePath:o,modifiedType:"create"})),a}function Ap(e){let t=e.typescriptEnabled,r=`
|
|
778
778
|
import { useState } from "react";
|
|
779
779
|
import styles from "./styles.module.css";
|
|
780
780
|
${t?`
|
|
@@ -807,7 +807,7 @@ function Counter({ initialCount = 99 }${t?": CounterProps":""}) {
|
|
|
807
807
|
}
|
|
808
808
|
|
|
809
809
|
export default Counter;
|
|
810
|
-
`.trimStart(),
|
|
810
|
+
`.trimStart(),n=`
|
|
811
811
|
.counter {
|
|
812
812
|
margin: 32px auto;
|
|
813
813
|
display: flex;
|
|
@@ -837,34 +837,34 @@ export default Counter;
|
|
|
837
837
|
font-size: 42px;
|
|
838
838
|
text-align: center;
|
|
839
839
|
}
|
|
840
|
-
`.trimStart();return{component:
|
|
840
|
+
`.trimStart();return{component:r,styles:n}}async function vp(e,t){let n=(await Me(e,null,!1,!1,null,null,!1,!1)).components.find(i=>i.filePath===t);n&&await Me(e,n.id,!0,!1,null,null,!0,!1)}async function Nn(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,bp(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}function bp(e){let t=e.sdkVersion===b.gen2;return e.typescriptEnabled?`import type { RegisteredComponent } from ${t?'"@builder.io/sdk-react"':'"@builder.io/react"'};
|
|
841
841
|
|
|
842
842
|
export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
843
843
|
];`:`export const CUSTOM_COMPONENTS = [
|
|
844
844
|
];
|
|
845
|
-
`}async function
|
|
846
|
-
`;
|
|
847
|
-
`,
|
|
845
|
+
`}async function Pa(e){let t=await Pp(e);return{builderPageOptions:async()=>{let n="/builder-demo",i=t.hasLocaleParam?`/en-us${n}`:void 0;return{templateContentId:"a5c9eef7909d4fc99554264a17de22c9",pathname:n,localePathname:i,title:"Builder + Remix Demo Page"}},ensureBuilderSetup:()=>Aa(t),ensureFigmaImportPage:()=>va(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>Me(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:n=>{t.addExternalPackage(n)},loadComponent:async n=>{let i=await Me(t,n.cmpId,!1,!1,null,null,!1,!1);return{...i,component:i.components.find(a=>a.id===n.cmpId)}},registerComponent:n=>Me(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>Me(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>Me(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>Me(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>sn(t),setPublicApiKey:n=>Fa(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===b.gen2?[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-react"}]:[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>Te(t),setCache:n=>Ie(t,n)}}async function Pp(e){let t=await Ip(e),r=e.getAppRootDir(),n=await Bp(e),i=e.dirname(n),a=e.join(i,"components"),o=await De(e),s=await Ee(e,i),u={},c={...e,registryPath:s,remixConfigPath:t,typescriptEnabled:o,appDir:i,componentsDir:a,routesDir:n,hasLocaleParam:await Tp(e,n),addExternalPackage:l=>{u[e.join(r,l,"index.ts")]=`export * from "${l}";`},readFileSync:l=>u[l]??e.readFileSync(l),existsSync:l=>!!u[l]||e.existsSync(l),readdirSync:l=>{let p=e.readdirSync(l);return l===r?[...p,...Object.keys(u).map(m=>m.slice(r.length+1))]:p},readdir:async l=>{let p=await e.readdir(l);return l===r?[...p,...Object.keys(u).map(m=>m.slice(r.length+1))]:p}};return e.sdkVersion?c.sdkVersion=e.sdkVersion:c.sdkVersion=await Mt(c),c}async function Tp(e,t){return(await e.readdir(t)).some(n=>n.startsWith("($locale)."))}async function Ip(e){let t=["remix.config.ts","remix.config.js","vite.config.ts","vite.config.js"];for(let r of t){let n=e.join(e.getAppRootDir(),r);if(await e.exists(n))return n}throw new Error(`Could not find Remix config file. Searched for ${t.join(", ")} in "${e.getAppRootDir()}".`)}async function Bp(e){let t=await Ht(e,e.getAppRootDir(),"routes");if(t)return t;throw new Error(`Could not find Remix "routes" directory in "${e.getAppRootDir()}". Please ensure this command is ran from within your Remix project's directory.`)}async function cn(e){let t=[".env"],r=e.configType==="vite"?ln:kn;return await nt(e,t,r)}async function Ta(e,t){let r=await cn(e),n=await rt(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var ln="VITE_PUBLIC_BUILDER_KEY",kn="YOUR_PUBLIC_BUILDER_KEY";function Ia(e,t){let r=`Builder.registerComponent(
|
|
846
|
+
`;r+=` ${t.importName},
|
|
847
|
+
`,r+=` {
|
|
848
848
|
name: "${t.name}",
|
|
849
849
|
}
|
|
850
|
-
`,
|
|
850
|
+
`,r+=");";let n=Fn(e,r);return _r(e,n,t)}function _r(e,t,r){if(!e.ts.isExpressionStatement(t))return t;let n=t.expression;if(!e.ts.isCallExpression(n))return t;let i=[...n.arguments];if(i.length<2)return t;let a=i[1];return e.ts.isObjectLiteralExpression(a)?(i[1]=ee(e,a,r),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(n,n.expression,n.typeArguments,i))):t}async function Ba(e){let t=await e.readFile(e.registryPath);return t?Rp(e,t):{components:[],sourceFile:B(e,"")}}async function Rp(e,t){let r=B(e,t);return e.sdkVersion===b.gen2?$p(e,r):Np(e,r)}async function Np(e,t){let r=[];for(let n=0;n<t.statements.length;n++){let i=t.statements[n];if(!e.ts.isExpressionStatement(i))continue;let a=i.expression;if(!e.ts.isCallExpression(a))continue;let o=a.expression;if(!e.ts.isPropertyAccessExpression(o))continue;let s=o.expression;if(!e.ts.isIdentifier(s)||s.text!=="Builder"||o.name.text!=="registerComponent")continue;let c=a.arguments;if(c.length<2)continue;let l=c[1];if(!e.ts.isObjectLiteralExpression(l))continue;let p=c[0];if(e.ts.isIdentifier(p)){let m=await kp(e,t,n,p,l,!1);m&&r.push(m);continue}}return{sourceFile:t,components:me(r)}}async function kp(e,t,r,n,i,a){let o={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:r,acceptsChildren:a},s=t.statements.filter(c=>e.ts.isImportDeclaration(c)),u=s.find(c=>c.importClause&&c.importClause.name?.text===n.text);if(u){let c=u.moduleSpecifier;if(!e.ts.isStringLiteral(c))return null;o.filePath=await jr(e,c.text),o.relFilePath=e.relative(e.getAppRootDir(),o.filePath),o.importPath=V(e,o.filePath),o.name=xe(e,o.filePath),o.importName=n.text,o.exportName="default",o.exportType="default"}else{let c=s.find(m=>!m.importClause||!m.importClause.namedBindings||!e.ts.isNamedImports(m.importClause.namedBindings)?!1:m.importClause.namedBindings.elements.some(h=>h.name.text===n.text));if(!c)return null;let l=c.moduleSpecifier;if(!e.ts.isStringLiteral(l))return null;let p=await jr(e,l.text);o.filePath=await jr(e,l.text),o.relFilePath=e.relative(e.getAppRootDir(),o.filePath),await e.exists(p)?o.importPath=V(e,o.filePath):(o.externalImportPath=l.text,o.importPath=o.externalImportPath),o.name=z(n.text),o.importName=n.text,o.exportName=n.text,o.exportType="named"}return o=fe(e,o,i),o.displayFilePath=$(e,o.filePath),o.filePath&&o.exportName&&(o.id=await U(e,o.filePath,o.exportName,o.externalImportPath)),o}function jr(e,t){return on(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}async function $p(e,t){let r=[],n=Y(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(i,a)=>{let o=await Mr(e,t,i);o&&(o.nodeIndex=a,r.push(o))})),{sourceFile:t,components:me(r)}}async function Mr(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1};kt(e,r)&&(n.acceptsChildren=!0);for(let a of r.properties){if(!e.ts.isPropertyAssignment(a)||!e.ts.isIdentifier(a.name))continue;if(O(e,a)==="component"){let s,{initializer:u}=a;if(e.ts.isIdentifier(u)&&(s=u.text),!s)continue;n.name===""&&(n.name=z(s)),n.importName=s;let c=await Re(e,e.registryPath,t,s);if(!c)continue;n.filePath=c.filePath,n.relFilePath=c.relFilePath,await e.exists(c.filePath)?n.importPath=V(e,c.filePath):(n.externalImportPath=c.importPath,n.importPath=n.externalImportPath),n.displayFilePath=c.displayFilePath,n.exportType=c.exportType;let l=t.statements.filter(m=>e.ts.isImportDeclaration(m)),p=l.find(m=>m.importClause&&m.importClause.name?.text===s);if(p){let m=p.moduleSpecifier;if(!e.ts.isStringLiteral(m))return null;n.exportName="default"}else{let m=l.find(g=>!g.importClause||!g.importClause.namedBindings||!e.ts.isNamedImports(g.importClause.namedBindings)?!1:g.importClause.namedBindings.elements.some(D=>D.name.text===s));if(!m)return null;let h=m.moduleSpecifier;if(!e.ts.isStringLiteral(h))return null;n.exportName=s}continue}}return n=fe(e,n,r),n.filePath&&n.exportName&&(n.id=await U(e,n.filePath,n.exportName,n.externalImportPath)),n}async function Ke(e,t,r,n,i,a,o,s){let u=await it(e),[c,l,p,m]=await Promise.all([zi(e,u),Ba(e),De(e),cn(e)]),h=c.map(x=>x.cmpInfo),g=l.components,D={components:ve(h,g),registryPath:e.registryPath,registryDisplayPath:$(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ne(h),publicApiKey:m.envValue??void 0,devToolsVersion:e.version};if(s)return D.components=await Lt(e,D.components),D;let d=!1,f=l.sourceFile,E=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(E.length>0){let x=E.map(y=>{let M=c.find(te=>te.cmpInfo.id===y);if(!M)throw new Error(`Component ${y} not found`);return M}),A=Array.from(new Set(x.map(y=>y.cmpInfo.filePath))),S=await Z(e,A);for(let y of x){let M=D.components.find(v=>v.id===y.cmpInfo.id),te=await _t(e,y,S,e.registryPath===y.cmpInfo.filePath||Ce(y.cmpInfo.filePath));he(M,te);let K=h.findIndex(v=>v.id===y.cmpInfo.id);h[K].inputs=te;let w=Le(y.cmpInfo.id,h,g,r,n,i,a);if(e.sdkVersion===b.gen2){let{elements:v,elmIndex:ue,statementIndex:ye,statement:ie,variableDeclaration:L}=await Op(e,f,y);if(w.addCmpToRegistry)v.push(Lp(e,w.addCmpToRegistry)),d=!0;else if(w.removeCmpFromRegistry)v.splice(ue,1),d=!0;else if(w.updateRegisteredCmp){let ce=ee(e,v[ue],w.updateRegisteredCmp),mt=e.ts.factory.createIdentifier(w.updateRegisteredCmp.importName);v[ue]=e.ts.factory.updateObjectLiteralExpression(ce,[e.ts.factory.createPropertyAssignment("component",mt),...ce.properties.slice(1)]),d=!0}if(d&&o){let ce=[...f.statements];ce[ye]=e.ts.factory.updateVariableStatement(ie,ie.modifiers,e.ts.factory.updateVariableDeclarationList(ie.declarationList,[e.ts.factory.updateVariableDeclaration(L,L.name,L.exclamationToken,L.type,e.ts.factory.createArrayLiteralExpression($e(e,v)))])),f=e.ts.factory.updateSourceFile(f,ce),f=Ra(e,w,f),f=N(e,f,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-react",isTypeOnly:!0}),f=_e(e,f,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),D.components=w.components,g=w.components.filter(mt=>mt.isRegistered)}}else{let v=[...f.statements];w.addCmpToRegistry?(v.push(Ia(e,w.addCmpToRegistry)),d=!0):w.removeCmpFromRegistry?(v.splice(w.nodeIndex,1),d=!0):w.updateRegisteredCmp&&(v[w.nodeIndex]=_r(e,v[w.nodeIndex],w.updateRegisteredCmp),d=!0),d&&o&&(f=e.ts.factory.updateSourceFile(f,v),f=N(e,f,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),f=Ra(e,w,f),M?.acceptsChildren&&(f=N(e,f,{namedImports:["withChildren"],importPath:"@builder.io/react"})),D.components=w.components,g=w.components.filter(ue=>ue.isRegistered))}}}if(d&&o){f=Oe(e,f),f=ke(e,f);let x=ne(e,f);x=Ae(x),x=await e.formatCode(e.registryPath,x),await e.writeFile(e.registryPath,x)}return D}async function Op(e,t,r){let n=Y(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 i=n.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),a=-1;for(let o=0;o<i.length;o++)if((await Mr(e,t,i[o]))?.id===r.cmpInfo.id){a=o;break}return{...n,elements:i,elmIndex:a}}function Lp(e,t){let r=e.ts.factory.createIdentifier(t.importName);return ee(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("component",r),...t.acceptsChildren?[e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())]:[]],!0),t)}function Ra(e,t,r){let n=t.addCmpToRegistry||t.updateRegisteredCmp;if(n){let i=n.externalImportPath?n.externalImportPath:k(e,e.registryPath,n.filePath);n.exportType==="default"?r=N(e,r,{defaultImport:n.importName,importPath:i}):n.exportType==="named"&&(r=N(e,r,{namedImports:[n.importName],importPath:i}))}return r}async function Na(e){let t=[],r=await _p(e,t);if(await Oa(e,t,r),!await e.exists(e.builderComponentPath)){let n=await e.formatCode(e.builderComponentPath,$a(e,e.builderComponentPath));await e.writeFile(e.builderComponentPath,n),t.push({filePath:e.builderComponentPath,modifiedType:"create"})}return t}async function ka(e){let t=[];await Oa(e,t);let r=`figma-imports.${e.typescriptEnabled?"tsx":"jsx"}`,n=e.join(e.componentsDir,r);if(!await e.exists(n)){let i=await e.formatCode(n,$a(e,n,"figma-imports"));await e.writeFile(n,i),t.push({filePath:n,modifiedType:"create"})}return t}function $a(e,t,r="page"){let n=e.typescriptEnabled;return e.sdkVersion===b.gen2?`
|
|
851
851
|
import React from "react";
|
|
852
852
|
import {
|
|
853
853
|
Content,
|
|
854
854
|
fetchOneEntry,
|
|
855
855
|
getBuilderSearchParams,
|
|
856
856
|
isPreviewing,
|
|
857
|
-
${
|
|
857
|
+
${n?"type BuilderContent,":""}
|
|
858
858
|
} from "@builder.io/sdk-react";
|
|
859
|
-
import { CUSTOM_COMPONENTS } from ${JSON.stringify(
|
|
859
|
+
import { CUSTOM_COMPONENTS } from ${JSON.stringify(k(e,t,e.registryPath))};
|
|
860
860
|
|
|
861
861
|
// Builder Public API Key set in .env file
|
|
862
|
-
const BUILDER_API_KEY = ${e.configType==="vite"?`import.meta.env.${
|
|
863
|
-
const MODEL_NAME = "${
|
|
862
|
+
const BUILDER_API_KEY = ${e.configType==="vite"?`import.meta.env.${ln};`:`${kn};`}
|
|
863
|
+
const MODEL_NAME = "${r}";
|
|
864
864
|
|
|
865
865
|
export default function BuilderPage() {
|
|
866
866
|
const [notFound, setNotFound] = React.useState(false);
|
|
867
|
-
const [content, setContent] = React.useState${
|
|
867
|
+
const [content, setContent] = React.useState${n?"<BuilderContent | null>":""}(null);
|
|
868
868
|
|
|
869
869
|
// get the page content from Builder
|
|
870
870
|
React.useEffect(() => {
|
|
@@ -909,10 +909,10 @@ export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
|
909
909
|
`:`
|
|
910
910
|
import React from "react";
|
|
911
911
|
import { BuilderComponent, builder, useIsPreviewing } from "@builder.io/react";
|
|
912
|
-
import ${JSON.stringify(
|
|
912
|
+
import ${JSON.stringify(k(e,t,e.registryPath))};
|
|
913
913
|
|
|
914
914
|
// Builder Public API Key set in .env file
|
|
915
|
-
${e.configType==="vite"?`builder.init(import.meta.env.${
|
|
915
|
+
${e.configType==="vite"?`builder.init(import.meta.env.${ln}${n?"!":""})`:`builder.init("${kn}")`}
|
|
916
916
|
|
|
917
917
|
export default function BuilderPage() {
|
|
918
918
|
const isPreviewingInBuilder = useIsPreviewing();
|
|
@@ -923,7 +923,7 @@ export default function BuilderPage() {
|
|
|
923
923
|
React.useEffect(() => {
|
|
924
924
|
async function fetchContent() {
|
|
925
925
|
const content = await builder
|
|
926
|
-
.get("${
|
|
926
|
+
.get("${r}", {
|
|
927
927
|
url: window.location.pathname,
|
|
928
928
|
})
|
|
929
929
|
.promise();
|
|
@@ -953,11 +953,11 @@ export default function BuilderPage() {
|
|
|
953
953
|
return (
|
|
954
954
|
<>
|
|
955
955
|
{/* Render the Builder page */}
|
|
956
|
-
<BuilderComponent model="${
|
|
956
|
+
<BuilderComponent model="${r}" content={content} />
|
|
957
957
|
</>
|
|
958
958
|
);
|
|
959
959
|
}
|
|
960
|
-
`.trimStart()}async function
|
|
960
|
+
`.trimStart()}async function Oa(e,t,r){if(!await e.exists(e.registryPath)){if(e.sdkVersion===b.gen2){let a=Mp(e);await e.writeFile(e.registryPath,a)}else await e.writeFile(e.registryPath,"");t.push({filePath:e.registryPath,modifiedType:"create"})}if(!r)return;let i=(await Ke(e,null,!1,!1,null,null,!1,!1)).components.find(a=>a.filePath===r);i&&await Ke(e,i.id,!0,!1,null,null,!0,!1)}async function _p(e,t){let n=e.typescriptEnabled?"tsx":"jsx",i=e.join(e.componentsDir,"Counter"),a=e.join(i,`Counter.${n}`),o=e.join(i,"styles.module.css"),{component:s,styles:u}=jp(e);if(!await e.exists(a)){let c=await e.formatCode(a,s);await e.writeFile(a,c),t.push({filePath:a,modifiedType:"create"})}return await e.exists(o)||(await e.writeFile(o,u),t.push({filePath:o,modifiedType:"create"})),a}function jp(e){let t=e.typescriptEnabled,r=`
|
|
961
961
|
"use client"
|
|
962
962
|
import React, { useState } from "react";
|
|
963
963
|
import styles from "./styles.module.css";
|
|
@@ -991,7 +991,7 @@ function Counter({ initialCount = 99 }${t?": CounterProps":""}) {
|
|
|
991
991
|
}
|
|
992
992
|
|
|
993
993
|
export default Counter;
|
|
994
|
-
`.trimStart(),
|
|
994
|
+
`.trimStart(),n=`
|
|
995
995
|
.counter {
|
|
996
996
|
margin: 32px auto;
|
|
997
997
|
display: flex;
|
|
@@ -1020,18 +1020,18 @@ export default Counter;
|
|
|
1020
1020
|
font-size: 42px;
|
|
1021
1021
|
text-align: center;
|
|
1022
1022
|
}
|
|
1023
|
-
`.trimStart();return{component:
|
|
1023
|
+
`.trimStart();return{component:r,styles:n}}function Mp(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-react";
|
|
1024
1024
|
|
|
1025
1025
|
export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
1026
1026
|
];`:`export const CUSTOM_COMPONENTS = [
|
|
1027
1027
|
];
|
|
1028
|
-
`}async function
|
|
1028
|
+
`}async function La(e){let t=await Kp(e);return{builderPageOptions:async()=>({templateContentId:"2e36438034894a8abf279ea9e6d3596f",pathname:"/builder-demo",title:"Builder + React Demo Page"}),ensureBuilderSetup:()=>Na(t),ensureFigmaImportPage:()=>ka(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>Ke(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:n=>{t.addExternalPackage(n)},loadComponent:async n=>{let i=await Ke(t,n.cmpId,!1,!1,null,null,!1,!1);return{...i,component:i.components.find(a=>a.id===n.cmpId)}},registerComponent:n=>Ke(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>Ke(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>Ke(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>Ke(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>cn(t),setPublicApiKey:n=>Ta(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===b.gen2?[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-react"}]:[{name:"@builder.io/dev-tools"},{name:"@builder.io/react"},{name:"@builder.io/sdk"}],getDevRunCommand:()=>"dev",getCache:()=>Te(t),setCache:n=>Ie(t,n)}}async function Kp(e){let t=await Vp(e),r=e.getAppRootDir(),n=e.join(r,"src"),i=await De(e),a={},o={...e,srcDir:null,builderComponentPath:"",componentsDir:"",registryPath:"",reactConfigPath:t,typescriptEnabled:i,configType:"",addExternalPackage:s=>{a[e.join(r,s,"index.ts")]=`export * from "${s}";`},readFileSync:s=>a[s]??e.readFileSync(s),existsSync:s=>!!a[s]||e.existsSync(s),readdirSync:s=>{let u=e.readdirSync(s);return s===r?[...u,...Object.keys(a).map(c=>c.slice(r.length+1))]:u},readdir:async s=>{let u=await e.readdir(s);return s===r?[...u,...Object.keys(a).map(c=>c.slice(r.length+1))]:u}};return e.sdkVersion?o.sdkVersion=e.sdkVersion:o.sdkVersion=await Mt(o),t.includes("webpack.config")&&(o.configType="webpack"),t.includes("vite.config")&&(o.configType="vite"),await e.exists(n)?(o.srcDir=n,o.componentsDir=e.join(n,"components"),o.registryPath=await Ee(e,n),o.builderComponentPath=e.join(o.srcDir,`builder-page.${i?"tsx":"jsx"}`)):(o.componentsDir=e.join(r,"components"),o.registryPath=await Ee(e,r),o.builderComponentPath=e.join(r,`builder-page.${i?"tsx":"jsx"}`)),o}async function Vp(e){let t=["vite.config.ts","vite.config.js","webpack.config.js","webpack.config.ts"];for(let r of t){let n=e.join(e.getAppRootDir(),r);if(await e.exists(n))return n}if(e.ignoreMissingConfig)return"";throw new Error(`Could not find React config file. Searched for ${t.join(", ")} in "${e.getAppRootDir()}".`)}async function pn(e){return await Up(e,["environment.ts"],$n)}async function _a(e,t){let r=await pn(e),n=await Jp(e,r.file,r.envKey,t);return{...r,modifiedType:n}}async function Up(e,t,r){let n={envKey:r,envValue:null,file:""};for(let i of t){let a=e.join(e.getAppRootDir(),"src","environments",i),o=await zp(e,a);if(typeof o=="string"&&o.length>0&&o!=="YOUR_API_KEY")return n.envValue=o,n.file=a,n}return n.file=e.join(e.getAppRootDir(),"src","environments",t[t.length-1]),n}async function zp(e,t){let r=await e.readFile(t);return r?qp(e,r):""}function qp(e,t){let r=B(e,t),n="",a=$t(e,r,"environment");if(a&&a.statement.declarationList.declarations.length>0){let s=a.statement.declarationList.declarations[0].initializer;s&&e.ts.isObjectLiteralExpression(s)&&s.properties.forEach(u=>{e.ts.isPropertyAssignment(u)&&e.ts.isIdentifier(u.name)&&u.name.text===$n&&e.ts.isStringLiteral(u.initializer)&&(n=u.initializer.text)})}return n}async function Wp(e,t,r,n){let i=B(e,t),o=$t(e,i,"environment");if(o&&o.statement.declarationList.declarations.length>0){let s=o.statement.declarationList,u=s.declarations[0],c=u.initializer;if(c&&e.ts.isObjectLiteralExpression(c)){let l=e.ts.factory.createPropertyAssignment(e.ts.factory.createIdentifier(r),e.ts.factory.createStringLiteral(n)),p=e.ts.factory.createNodeArray([...c.properties,l]),m=e.ts.factory.updateObjectLiteralExpression(c,p),h=e.ts.factory.updateVariableDeclaration(u,u.name,u.exclamationToken,u.type,m),g=e.ts.factory.updateVariableDeclarationList(s,[h]);return e.ts.factory.updateVariableStatement(o.statement,o.statement.modifiers,g)}return null}return null}async function Jp(e,t,r,n){let i=await e.readFile(t);if(i)if(i.includes(r))e.debug(`"${r}" already set in ${t}`);else{e.debug(`Add "${r}" to ${t}`);let a=await Wp(e,i,r,n);if(a){let o=ne(e,a),s=await e.formatCode(t,o);await e.writeFile(t,s)}return"update"}else{e.debug(`Creating new env file with "${r}" at ${t}`);let a=`
|
|
1029
1029
|
// https://www.builder.io/c/docs/using-your-api-key
|
|
1030
1030
|
export const environment = {
|
|
1031
1031
|
production: false,
|
|
1032
|
-
builderApiKey: "${
|
|
1032
|
+
builderApiKey: "${n}",
|
|
1033
1033
|
};
|
|
1034
|
-
`.trimStart(),o=await e.formatCode(t,a);return await e.writeFile(t,o),"create"}return null}var Pr="builderApiKey";async function ya(e,t){let n=[],r=t.getSourceFiles(),i=t.getTypeChecker();return await Promise.all(r.map(async a=>{let o=e.basename(a.fileName);if(Gc(e,a.fileName)||o.startsWith(".")||o==="node_modules"||Jc.has(o))return;let u=e.normalize(a.fileName);if(u===e.registryPath)return;let s=await Tr(e,i,u,a);n.push(...s)})),n.sort((a,o)=>a.cmpInfo.name.localeCompare(o.cmpInfo.name))}var Jc=new Set([]),Wc=new Set(["node_modules"]);function Gc(e,t){for(let n of Wc)if(e.dirname(t).includes(n))return!0;return!1}async function va(e,t){let n=e.extname(t).toLowerCase();if(n===".tsx"||n===".jsx"||n===".ts"||n===".js"){let r=await e.readFile(t);if(r)return Hc(e,t,r)}return null}function Hc(e,t,n){let r=B(e,n);return Tr(e,null,t,r)}async function Tr(e,t,n,r){let i=[],a={};n=e.normalize(n);let o=r.statements.filter(c=>e.ts.isClassDeclaration(c)&&ep(e,c)),u=r.statements.find(c=>e.ts.isImportDeclaration(c)&&e.ts.isStringLiteral(c.moduleSpecifier)&&c.moduleSpecifier.text==="@angular/core");if(u&&e.ts.isImportDeclaration(u)){let c=u.importClause?.namedBindings;if(c&&e.ts.isNamedImports(c)){let p=c.elements.find(m=>(m.propertyName??m.name).text==="input");p&&(a.inputSignalImportName=p.name.text)}}let s=await Yc(e,t,n,r),l=tp(e,r);return await Promise.all(o.map(async c=>{let p=await Qc(e,t,n,c,l,a);i.push(...p)})),i.push(...s),i}async function In(e,t,n){if(t.node.fnNode){let{sourceFile:r,typeChecker:i}=await St(e,t.cmpInfo.filePath,n),o=(await Tr(e,i,t.cmpInfo.filePath,r)).find(u=>u.cmpInfo.id===t.cmpInfo.id);if(!o)throw new Error(`Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return o.cmpInfo.inputs}return[]}async function ba(e,t,n){if(!n.some(u=>!u.isRegistered))return n;let i=await X(e,n.map(u=>u.filePath)),a=i.getTypeChecker();return await Promise.all(n.filter(u=>!(u.name.endsWith("Page")||u.name.endsWith("Module")||u.name==="AppComponent")).map(async u=>{if(!u.isRegistered){let s=i.getSourceFile(u.filePath);if(s){let c=(await Tr(e,a,u.filePath,s)).find(p=>p.cmpInfo.id===u.id);if(c){u.inputs=mt(e,a,c.node.fnNode);let p=t.find(m=>m.cmpInfo.id===u.id);if(p){let m=await In(e,p,i);Ce(u,m)}}}}return u}))}async function Qc(e,t,n,r,i,a){let o=[],u=e.relative(e.getAppRootDir(),n),s=M(e,n),l=r.name?.text;if(!l)return o;let c=!1;r.modifiers&&(c=r.modifiers.some(g=>g.kind===e.ts.SyntaxKind.DefaultKeyword));let p=c?"default":l,m=c?"default":"named",C=[];return r.members.forEach(g=>{if(e.ts.isPropertyDeclaration(g)||e.ts.isGetAccessor(g)||e.ts.isSetAccessor(g)){let f=(e.ts.getDecorators(g)??[]).find(x=>Xc(e,x))!==void 0&&e.ts.isIdentifier(g.name),E=a?.inputSignalImportName!==void 0&&e.ts.isIdentifier(g.name)&&Zc(e,g,a.inputSignalImportName);if(f||E){let x="any";if(e.ts.isSetAccessor(g))x=Aa(e,g.parameters[0].type);else if(g.type&&t){let A=t.getTypeAtLocation(g.type);x=t.typeToString(A)}else x=Aa(e,g.type);let v={name:g.name.text,type:i[x]?"string":x};i[x]&&(v.enum=i[x]),C.push(v)}}}),o.push({cmpInfo:{id:await V(e,n,l),displayFilePath:k(e,n),name:K(l),inputs:C,exportName:p,exportType:m,importName:l,filePath:n,relFilePath:u,importPath:s,meta:{...np(e,r)}},node:{name:l,fnNode:r,deps:void 0}}),o}async function Yc(e,t,n,r){let i=[],a=e.relative(e.getAppRootDir(),n),o=M(e,n);for(let u of r.statements)if(e.ts.isExportDeclaration(u)&&u.exportClause&&e.ts.isNamedExports(u.exportClause))for(let s of u.exportClause.elements){let l=s.name?.text;if(!l)continue;let c=l,p="named",m=[];if(t){let D=t.getSymbolAtLocation(s.name);if(D){let d=t.getDeclaredTypeOfSymbol(D);t.getPropertiesOfType(d).forEach(E=>{let x=E.getDeclarations();x&&x.forEach(v=>{if(e.ts.isPropertyDeclaration(v)){let A=t.getTypeAtLocation(v),S={name:E.getName(),type:rp(e,t,A)};m.push(S)}})})}}let C=e.ts.isExportSpecifier(s)&&s.parent?s.parent.parent:void 0,g;if(C){let D=C.moduleSpecifier;if(D&&e.ts.isStringLiteral(D)){let d=t?.getSymbolAtLocation(D);if(d&&d.declarations&&d.declarations.length>0){let f=d.declarations[0];(!e.ts.isSourceFile(f)||e.ts.isSourceFile(f)&&f.fileName.includes("node_modules"))&&(g=D.text)}}}i.push({cmpInfo:{id:await V(e,n,l,g),displayFilePath:k(e,n),name:K(l),inputs:m,exportName:c,exportType:p,importName:l,filePath:n,relFilePath:a,importPath:g||o,externalImportPath:g},node:{name:l,fnNode:s,deps:void 0}})}return i}function Xc(e,t){return wa(e,t,"Input")}function Zc(e,t,n){return e.ts.isPropertyDeclaration(t)&&t.initializer!==void 0&&e.ts.isCallExpression(t.initializer)&&e.ts.isIdentifier(t.initializer.expression)&&t.initializer.expression.text===n}function wa(e,t,n){if(e.ts.isCallExpression(t.expression)){let r=t.expression;if(e.ts.isIdentifier(r.expression))return r.expression?.text===n}return!1}function ep(e,t){return!!e.ts.getDecorators(t)?.some(i=>e.ts.isCallExpression(i.expression)&&e.ts.isIdentifier(i.expression.expression)&&i.expression.expression.text==="Component")}function Aa(e,t){if(!t)return"any";let n="any";switch(t.kind){case e.ts.SyntaxKind.StringKeyword:n="string";break;case e.ts.SyntaxKind.NumberKeyword:n="number";break;case e.ts.SyntaxKind.BooleanKeyword:n="boolean";break;case e.ts.SyntaxKind.TypeReference:e.ts.isTypeReferenceNode(t)&&e.ts.isIdentifier(t.typeName)&&(n=t.typeName.text);break}return n.includes("|")?"string":n}function tp(e,t){let n={};return e.ts.forEachChild(t,r=>{e.ts.isTypeAliasDeclaration(r)&&e.ts.isUnionTypeNode(r.type)&&r.type.types.every(i=>e.ts.isLiteralTypeNode(i)&&e.ts.isStringLiteral(i.literal))&&(n[r.name.text]=r.type.types.map(i=>i.literal.text))}),n}function rp(e,t,n){let r=t.typeToString(n);if(r==="any"){let i=n.getSymbol();if(i){let a=i.getDeclarations();if(a&&a.length>0){let o=a[0];if(e.ts.isVariableDeclaration(o)){let u=o.type;u&&(r=t.typeToString(t.getTypeAtLocation(u)))}}}}return r}function np(e,t){let{getDecorators:n,isCallExpression:r,isIdentifier:i,isObjectLiteralExpression:a,isPropertyAssignment:o,isStringLiteral:u,SyntaxKind:s}=e.ts,l,c;return n(t)?.forEach(m=>{if(wa(e,m,"Component")){let{expression:C}=m;if(r(C)){let[g]=C.arguments;a(g)&&g.properties.forEach(D=>{o(D)&&i(D.name)&&(D.name.escapedText==="selector"&&u(D.initializer)&&(l=D.initializer.text),D.name.escapedText==="standalone"&&(c=D.initializer.kind===s.TrueKeyword))})}}}),{selector:l,standalone:c}}async function Ir(e,t,n){let r=e.typescriptEnabled?".ts":".js",i=`app.module${r}`,a=e.join(e.appDir,i),o=await e.readFile(a);if(!o){console.error(`Unable to read app.module.${r} at ${a}`);return}let u=await op(e,a,t,n,o);if(!u){console.error(`Unable to update app.module.${r} at ${a}`);return}return await e.writeFile(a,u),a}async function op(e,t,n,r,i){let a=i,o=B(e,i),u=$(e,t,r);o=N(e,o,{namedImports:[n],importPath:u}),o=N(e,o,{namedImports:["Content"],importPath:"@builder.io/sdk-angular"});let s=[];for(let l of o.statements)if(e.ts.isClassDeclaration(l)&&l.name?.text==="AppModule"){let c=ip(e,n,l);s.push(c)}else s.push(l);return o=e.ts.factory.updateSourceFile(o,s),a=te(e,o),a}function ip(e,t,n){let r=e.ts.getDecorators(n);if(r){for(let i of r)if(e.ts.isCallExpression(i.expression)&&e.ts.isIdentifier(i.expression.expression)&&i.expression.expression.text==="NgModule"){let a=i.expression.arguments;if(a.length===1&&e.ts.isObjectLiteralExpression(a[0])){let o=Pa(e,a[0],"declarations",t);if(o){let u=Pa(e,o,"imports","Content");if(u&&(o=u),o){let s=e.ts.factory.updateDecorator(i,e.ts.factory.updateCallExpression(i.expression,i.expression.expression,i.expression.typeArguments,[o])),c=[...r.map(p=>p===i?s:p),...e.ts.getModifiers(n)||[]];return e.ts.factory.updateClassDeclaration(n,c,n.name,n.typeParameters,n.heritageClauses,n.members)}}}}}return n}function Pa(e,t,n,r){let i=[...t.properties],a=i.findIndex(u=>O(e,u)===n);if(a>-1){let u=i[a];if(e.ts.isPropertyAssignment(u)&&u.initializer&&e.ts.isArrayLiteralExpression(u.initializer)){let s=Ta(e,u.initializer,r);return s?(i[a]=e.ts.factory.updatePropertyAssignment(u,u.name,s),e.ts.factory.updateObjectLiteralExpression(t,i)):null}return null}let o=Ta(e,e.ts.factory.createArrayLiteralExpression([],!0),r);return o?e.ts.factory.updateObjectLiteralExpression(t,[...i,e.ts.factory.createPropertyAssignment(n,o)]):null}function Ta(e,t,n){return t.elements.some(i=>e.ts.isIdentifier(i)?i.text===n:!1)?null:e.ts.factory.updateArrayLiteralExpression(t,[...t.elements,e.ts.factory.createIdentifier(n)])}async function Bn(e,t,n,r){try{if(e.magicast){let a=`app.routes${e.typescriptEnabled?".ts":".js"}`,o=e.join(e.appDir,a),u=await e.magicast.loadFile(o);Object.keys(u.exports).length===0&&(u.exports.routes=[]);let l=Object.keys(u.exports)[0],c=u.exports[l];if(c.find(m=>m.path===t))return;let p=e.magicast.builders.raw("{}");if(p.path=t,p.component=e.magicast.builders.raw(n),c.push(p),u.imports.$items.find(m=>m.imported===n))return;u.imports.$append({imported:n,from:r}),await e.magicast.writeFile(u,o)}}catch(i){console.error(i)}}var Va=pe(Ma(),1);async function Ka(e){let t=e.ts.findConfigFile(e.getAppRootDir(),e.existsSync);if(t){let n=await e.readFile(t);if(!n)return;let r=Va.default.parse(n);if(!r||typeof r!="object"||Array.isArray(r))return;let i=r.compilerOptions;if(!i||typeof i!="object"||Array.isArray(i))return;let a=i.paths;(!a||typeof a!="object"||Array.isArray(a))&&(i.paths={},a=i.paths),Object.assign(i.paths,{"~/*":["./src/*"]}),await e.writeFile(t,JSON.stringify(r,null,2))}}async function Ua(e){let t=[],n=await gp(e,t);t.push(...await kr(e)),await dp(e,n);let r="BuilderPage";if(!await e.exists(e.builderPageComponentPath)){let i=await e.formatCode(e.builderPageComponentPath,qa(e,r,e.builderPageComponentPath,"builder-page","page",!0));await e.writeFile(e.builderPageComponentPath,i),t.push({filePath:e.builderPageComponentPath,modifiedType:"create"})}if(e.hasAppModule){await Ir(e,"Counter",n);let i=await Ir(e,r,e.builderPageComponentPath);i&&t.push({filePath:i,modifiedType:"update"})}return await Bn(e,"**",r,"./components/builder-page.component"),t}async function za(e){let t=[];t.push(...await kr(e));let n="FigmaImportsPage",r="figma-imports.component",i=e.join(e.componentsDir,`${r}.${e.typescriptEnabled?"ts":"js"}`);if(!await e.exists(i)){let a=await e.formatCode(i,qa(e,n,i,"figma-imports","figma-imports",!1));await e.writeFile(i,a),t.push({filePath:i,modifiedType:"create"})}if(e.hasAppModule){let a=await Ir(e,n,i);a&&t.push({filePath:a,modifiedType:"update"})}return await Bn(e,"figma-imports",n,`./components/${r}`),await Ka(e),t}async function kr(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,Dp(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}async function dp(e,t){let r=(await Ke(e,null,!1,!1,null,null,!1,!1)).components.find(i=>i.filePath===t);r&&await Ke(e,r.id,!0,!1,null,null,!0,!1)}function qa(e,t,n,r,i,a){let o=!e.hasAppModule,u=$(e,n,e.registryPath),s=e.join(e.getAppRootDir(),"src","environments","environment.ts"),l=$(e,n,s),c=a?` <ng-container *ngIf="content || isPreviewing; else notFound">
|
|
1034
|
+
`.trimStart(),o=await e.formatCode(t,a);return await e.writeFile(t,o),"create"}return null}var $n="builderApiKey";async function Ma(e,t){let r=[],n=t.getSourceFiles(),i=t.getTypeChecker();return await Promise.all(n.map(async a=>{let o=e.basename(a.fileName);if(Qp(e,a.fileName)||o.startsWith(".")||o==="node_modules"||Gp.has(o))return;let s=e.normalize(a.fileName);if(s===e.registryPath)return;let u=await On(e,i,s,a);r.push(...u)})),r.sort((a,o)=>a.cmpInfo.name.localeCompare(o.cmpInfo.name))}var Gp=new Set([]),Hp=new Set(["node_modules"]);function Qp(e,t){for(let r of Hp)if(e.dirname(t).includes(r))return!0;return!1}async function Ka(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 Yp(e,t,n)}return null}function Yp(e,t,r){let n=B(e,r);return On(e,null,t,n)}async function On(e,t,r,n){let i=[],a={};r=e.normalize(r);let o=n.statements.filter(l=>e.ts.isClassDeclaration(l)&&nm(e,l)),s=n.statements.find(l=>e.ts.isImportDeclaration(l)&&e.ts.isStringLiteral(l.moduleSpecifier)&&l.moduleSpecifier.text==="@angular/core");if(s&&e.ts.isImportDeclaration(s)){let l=s.importClause?.namedBindings;if(l&&e.ts.isNamedImports(l)){let p=l.elements.find(m=>(m.propertyName??m.name).text==="input");p&&(a.inputSignalImportName=p.name.text)}}let u=await Zp(e,t,r,n),c=rm(e,n);return await Promise.all(o.map(async l=>{let p=await Xp(e,t,r,l,c,a);i.push(...p)})),i.push(...u),i}async function Kr(e,t,r){if(t.node.fnNode){let{sourceFile:n,typeChecker:i}=await Pt(e,t.cmpInfo.filePath,r),o=(await On(e,i,t.cmpInfo.filePath,n)).find(s=>s.cmpInfo.id===t.cmpInfo.id);if(!o)throw new Error(`Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return o.cmpInfo.inputs}return[]}async function Va(e,t,r){if(!r.some(s=>!s.isRegistered))return r;let i=await Z(e,r.map(s=>s.filePath)),a=i.getTypeChecker();return await Promise.all(r.filter(s=>!(s.name.endsWith("Page")||s.name.endsWith("Module")||s.name==="AppComponent")).map(async s=>{if(!s.isRegistered){let u=i.getSourceFile(s.filePath);if(u){let l=(await On(e,a,s.filePath,u)).find(p=>p.cmpInfo.id===s.id);if(l){s.inputs=Ct(e,a,l.node.fnNode);let p=t.find(m=>m.cmpInfo.id===s.id);if(p){let m=await Kr(e,p,i);he(s,m)}}}}return s}))}async function Xp(e,t,r,n,i,a){let o=[],s=e.relative(e.getAppRootDir(),r),u=V(e,r),c=n.name?.text;if(!c)return o;let l=!1;n.modifiers&&(l=n.modifiers.some(g=>g.kind===e.ts.SyntaxKind.DefaultKeyword));let p=l?"default":c,m=l?"default":"named",h=[];return n.members.forEach(g=>{if(e.ts.isPropertyDeclaration(g)||e.ts.isGetAccessor(g)||e.ts.isSetAccessor(g)){let f=(e.ts.getDecorators(g)??[]).find(x=>em(e,x))!==void 0&&e.ts.isIdentifier(g.name),E=a?.inputSignalImportName!==void 0&&e.ts.isIdentifier(g.name)&&tm(e,g,a.inputSignalImportName);if(f||E){let x="any";if(e.ts.isSetAccessor(g))x=ja(e,g.parameters[0].type);else if(g.type&&t){let S=t.getTypeAtLocation(g.type);x=t.typeToString(S)}else x=ja(e,g.type);let A={name:g.name.text,type:i[x]?"string":x};i[x]&&(A.enum=i[x]),h.push(A)}}}),o.push({cmpInfo:{id:await U(e,r,c),displayFilePath:$(e,r),name:z(c),inputs:h,exportName:p,exportType:m,importName:c,filePath:r,relFilePath:s,importPath:u,meta:{...im(e,n)}},node:{name:c,fnNode:n,deps:void 0}}),o}async function Zp(e,t,r,n){let i=[],a=e.relative(e.getAppRootDir(),r),o=V(e,r);for(let s of n.statements)if(e.ts.isExportDeclaration(s)&&s.exportClause&&e.ts.isNamedExports(s.exportClause))for(let u of s.exportClause.elements){let c=u.name?.text;if(!c)continue;let l=c,p="named",m=[];if(t){let D=t.getSymbolAtLocation(u.name);if(D){let d=t.getDeclaredTypeOfSymbol(D);t.getPropertiesOfType(d).forEach(E=>{let x=E.getDeclarations();x&&x.forEach(A=>{if(e.ts.isPropertyDeclaration(A)){let S=t.getTypeAtLocation(A),y={name:E.getName(),type:om(e,t,S)};m.push(y)}})})}}let h=e.ts.isExportSpecifier(u)&&u.parent?u.parent.parent:void 0,g;if(h){let D=h.moduleSpecifier;if(D&&e.ts.isStringLiteral(D)){let d=t?.getSymbolAtLocation(D);if(d&&d.declarations&&d.declarations.length>0){let f=d.declarations[0];(!e.ts.isSourceFile(f)||e.ts.isSourceFile(f)&&f.fileName.includes("node_modules"))&&(g=D.text)}}}i.push({cmpInfo:{id:await U(e,r,c,g),displayFilePath:$(e,r),name:z(c),inputs:m,exportName:l,exportType:p,importName:c,filePath:r,relFilePath:a,importPath:g||o,externalImportPath:g},node:{name:c,fnNode:u,deps:void 0}})}return i}function em(e,t){return Ua(e,t,"Input")}function tm(e,t,r){return e.ts.isPropertyDeclaration(t)&&t.initializer!==void 0&&e.ts.isCallExpression(t.initializer)&&e.ts.isIdentifier(t.initializer.expression)&&t.initializer.expression.text===r}function Ua(e,t,r){if(e.ts.isCallExpression(t.expression)){let n=t.expression;if(e.ts.isIdentifier(n.expression))return n.expression?.text===r}return!1}function nm(e,t){return!!e.ts.getDecorators(t)?.some(i=>e.ts.isCallExpression(i.expression)&&e.ts.isIdentifier(i.expression.expression)&&i.expression.expression.text==="Component")}function ja(e,t){if(!t)return"any";let r="any";switch(t.kind){case e.ts.SyntaxKind.StringKeyword:r="string";break;case e.ts.SyntaxKind.NumberKeyword:r="number";break;case e.ts.SyntaxKind.BooleanKeyword:r="boolean";break;case e.ts.SyntaxKind.TypeReference:e.ts.isTypeReferenceNode(t)&&e.ts.isIdentifier(t.typeName)&&(r=t.typeName.text);break}return r.includes("|")?"string":r}function rm(e,t){let r={};return e.ts.forEachChild(t,n=>{e.ts.isTypeAliasDeclaration(n)&&e.ts.isUnionTypeNode(n.type)&&n.type.types.every(i=>e.ts.isLiteralTypeNode(i)&&e.ts.isStringLiteral(i.literal))&&(r[n.name.text]=n.type.types.map(i=>i.literal.text))}),r}function om(e,t,r){let n=t.typeToString(r);if(n==="any"){let i=r.getSymbol();if(i){let a=i.getDeclarations();if(a&&a.length>0){let o=a[0];if(e.ts.isVariableDeclaration(o)){let s=o.type;s&&(n=t.typeToString(t.getTypeAtLocation(s)))}}}}return n}function im(e,t){let{getDecorators:r,isCallExpression:n,isIdentifier:i,isObjectLiteralExpression:a,isPropertyAssignment:o,isStringLiteral:s,SyntaxKind:u}=e.ts,c,l;return r(t)?.forEach(m=>{if(Ua(e,m,"Component")){let{expression:h}=m;if(n(h)){let[g]=h.arguments;a(g)&&g.properties.forEach(D=>{o(D)&&i(D.name)&&(D.name.escapedText==="selector"&&s(D.initializer)&&(c=D.initializer.text),D.name.escapedText==="standalone"&&(l=D.initializer.kind===u.TrueKeyword))})}}}),{selector:c,standalone:l}}async function Ln(e,t,r){let n=e.typescriptEnabled?".ts":".js",i=`app.module${n}`,a=e.join(e.appDir,i),o=await e.readFile(a);if(!o){console.error(`Unable to read app.module.${n} at ${a}`);return}let s=await am(e,a,t,r,o);if(!s){console.error(`Unable to update app.module.${n} at ${a}`);return}return await e.writeFile(a,s),a}async function am(e,t,r,n,i){let a=i,o=B(e,i),s=k(e,t,n);o=N(e,o,{namedImports:[r],importPath:s}),o=N(e,o,{namedImports:["Content"],importPath:"@builder.io/sdk-angular"});let u=[];for(let c of o.statements)if(e.ts.isClassDeclaration(c)&&c.name?.text==="AppModule"){let l=sm(e,r,c);u.push(l)}else u.push(c);return o=e.ts.factory.updateSourceFile(o,u),a=ne(e,o),a}function sm(e,t,r){let n=e.ts.getDecorators(r);if(n){for(let i of n)if(e.ts.isCallExpression(i.expression)&&e.ts.isIdentifier(i.expression.expression)&&i.expression.expression.text==="NgModule"){let a=i.expression.arguments;if(a.length===1&&e.ts.isObjectLiteralExpression(a[0])){let o=za(e,a[0],"declarations",t);if(o){let s=za(e,o,"imports","Content");if(s&&(o=s),o){let u=e.ts.factory.updateDecorator(i,e.ts.factory.updateCallExpression(i.expression,i.expression.expression,i.expression.typeArguments,[o])),l=[...n.map(p=>p===i?u:p),...e.ts.getModifiers(r)||[]];return e.ts.factory.updateClassDeclaration(r,l,r.name,r.typeParameters,r.heritageClauses,r.members)}}}}}return r}function za(e,t,r,n){let i=[...t.properties],a=i.findIndex(s=>O(e,s)===r);if(a>-1){let s=i[a];if(e.ts.isPropertyAssignment(s)&&s.initializer&&e.ts.isArrayLiteralExpression(s.initializer)){let u=qa(e,s.initializer,n);return u?(i[a]=e.ts.factory.updatePropertyAssignment(s,s.name,u),e.ts.factory.updateObjectLiteralExpression(t,i)):null}return null}let o=qa(e,e.ts.factory.createArrayLiteralExpression([],!0),n);return o?e.ts.factory.updateObjectLiteralExpression(t,[...i,e.ts.factory.createPropertyAssignment(r,o)]):null}function qa(e,t,r){return t.elements.some(i=>e.ts.isIdentifier(i)?i.text===r:!1)?null:e.ts.factory.updateArrayLiteralExpression(t,[...t.elements,e.ts.factory.createIdentifier(r)])}async function Vr(e,t,r,n){try{if(e.magicast){let a=`app.routes${e.typescriptEnabled?".ts":".js"}`,o=e.join(e.appDir,a),s=await e.magicast.loadFile(o);Object.keys(s.exports).length===0&&(s.exports.routes=[]);let c=Object.keys(s.exports)[0],l=s.exports[c];if(l.find(m=>m.path===t))return;let p=e.magicast.builders.raw("{}");if(p.path=t,p.component=e.magicast.builders.raw(r),l.push(p),s.imports.$items.find(m=>m.imported===r))return;s.imports.$append({imported:r,from:n}),await e.magicast.writeFile(s,o)}}catch(i){console.error(i)}}var rs=se(ns(),1);async function os(e){let t=e.ts.findConfigFile(e.getAppRootDir(),e.existsSync);if(t){let r=await e.readFile(t);if(!r)return;let n=rs.default.parse(r);if(!n||typeof n!="object"||Array.isArray(n))return;let i=n.compilerOptions;if(!i||typeof i!="object"||Array.isArray(i))return;let a=i.paths;(!a||typeof a!="object"||Array.isArray(a))&&(i.paths={},a=i.paths),Object.assign(i.paths,{"~/*":["./src/*"]}),await e.writeFile(t,JSON.stringify(n,null,2))}}async function is(e){let t=[],r=await Cm(e,t);t.push(...await Vn(e)),await gm(e,r);let n="BuilderPage";if(!await e.exists(e.builderPageComponentPath)){let i=await e.formatCode(e.builderPageComponentPath,ss(e,n,e.builderPageComponentPath,"builder-page","page",!0));await e.writeFile(e.builderPageComponentPath,i),t.push({filePath:e.builderPageComponentPath,modifiedType:"create"})}if(e.hasAppModule){await Ln(e,"Counter",r);let i=await Ln(e,n,e.builderPageComponentPath);i&&t.push({filePath:i,modifiedType:"update"})}return await Vr(e,"**",n,"./components/builder-page.component"),t}async function as(e){let t=[];t.push(...await Vn(e));let r="FigmaImportsPage",n="figma-imports.component",i=e.join(e.componentsDir,`${n}.${e.typescriptEnabled?"ts":"js"}`);if(!await e.exists(i)){let a=await e.formatCode(i,ss(e,r,i,"figma-imports","figma-imports",!1));await e.writeFile(i,a),t.push({filePath:i,modifiedType:"create"})}if(e.hasAppModule){let a=await Ln(e,r,i);a&&t.push({filePath:a,modifiedType:"update"})}return await Vr(e,"figma-imports",r,`./components/${n}`),await os(e),t}async function Vn(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,hm(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}async function gm(e,t){let n=(await Ve(e,null,!1,!1,null,null,!1,!1)).components.find(i=>i.filePath===t);n&&await Ve(e,n.id,!0,!1,null,null,!0,!1)}function ss(e,t,r,n,i,a){let o=!e.hasAppModule,s=k(e,r,e.registryPath),u=e.join(e.getAppRootDir(),"src","environments","environment.ts"),c=k(e,r,u),l=a?` <ng-container *ngIf="content || isPreviewing; else notFound">
|
|
1035
1035
|
<builder-content
|
|
1036
1036
|
[model]="model"
|
|
1037
1037
|
[content]="content"
|
|
@@ -1052,15 +1052,15 @@ import { Component, Input } from '@angular/core';
|
|
|
1052
1052
|
import { fetchOneEntry, type BuilderContent${a?", isPreviewing":""} } from '@builder.io/sdk-angular';
|
|
1053
1053
|
${o?"import { Content } from '@builder.io/sdk-angular';":""}
|
|
1054
1054
|
${o?"import { CommonModule } from '@angular/common';":""}
|
|
1055
|
-
import { environment } from ${JSON.stringify(
|
|
1056
|
-
import { CUSTOM_COMPONENTS } from ${JSON.stringify(
|
|
1055
|
+
import { environment } from ${JSON.stringify(c)};
|
|
1056
|
+
import { CUSTOM_COMPONENTS } from ${JSON.stringify(s)};
|
|
1057
1057
|
|
|
1058
1058
|
@Component({
|
|
1059
|
-
selector: 'app-${
|
|
1059
|
+
selector: 'app-${n}',
|
|
1060
1060
|
${o?"standalone: true,":""}
|
|
1061
1061
|
${o?"imports: [Content, CommonModule],":""}
|
|
1062
1062
|
template: \`
|
|
1063
|
-
${
|
|
1063
|
+
${l}
|
|
1064
1064
|
\`,
|
|
1065
1065
|
})
|
|
1066
1066
|
export class ${t} {
|
|
@@ -1069,7 +1069,7 @@ export class ${t} {
|
|
|
1069
1069
|
`:""}
|
|
1070
1070
|
@Input() model = '${i}';
|
|
1071
1071
|
|
|
1072
|
-
apiKey = environment.${
|
|
1072
|
+
apiKey = environment.${$n};
|
|
1073
1073
|
${e.typescriptEnabled?`
|
|
1074
1074
|
content: BuilderContent | null = null;
|
|
1075
1075
|
`:`
|
|
@@ -1097,12 +1097,12 @@ export class ${t} {
|
|
|
1097
1097
|
}
|
|
1098
1098
|
}
|
|
1099
1099
|
|
|
1100
|
-
`.trimStart()}function
|
|
1100
|
+
`.trimStart()}function hm(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-angular";
|
|
1101
1101
|
|
|
1102
1102
|
export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
1103
1103
|
];`:`export const CUSTOM_COMPONENTS = [
|
|
1104
1104
|
];
|
|
1105
|
-
`}async function
|
|
1105
|
+
`}async function Cm(e,t){let n=e.typescriptEnabled?"ts":"js",i=e.join(e.componentsDir,`counter.component.${n}`),a=await e.exists(i);e.debug(`angularEnsureCounterComponent, hasCounterCmp: ${a}`);let o=xm(e);if(!a){let s=await e.formatCode(i,o);await e.writeFile(i,s),t.push({filePath:i,modifiedType:"create"})}return i}function xm(e){return`
|
|
1106
1106
|
import { Component, Input } from '@angular/core';
|
|
1107
1107
|
|
|
1108
1108
|
@Component({
|
|
@@ -1170,30 +1170,24 @@ export class Counter {
|
|
|
1170
1170
|
}
|
|
1171
1171
|
}
|
|
1172
1172
|
|
|
1173
|
-
`.trimStart()}async function
|
|
1173
|
+
`.trimStart()}async function us(e){await Vn(e);let t=await e.readFile(e.registryPath);return t?Em(e,t):{components:[],sourceFile:B(e,"")}}async function Em(e,t){let r=B(e,t);return Fm(e,r)}async function Fm(e,t){let r=[],n=Y(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(i,a)=>{let o=await Yr(e,t,i);o&&(o.nodeIndex=a,r.push(o))})),{sourceFile:t,components:me(r)}}async function Yr(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[]};for(let i of r.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(O(e,i)==="component"){let o,{initializer:s}=i;if(e.ts.isIdentifier(s))o=s.text;else if(e.ts.isCallExpression(s)){let c=s.arguments[0];e.ts.isIdentifier(c)&&(o=c.text)}if(!o)continue;n.name===""&&(n.name=z(o)),n.importName=o;let u=await Re(e,e.registryPath,t,o);if(!u)continue;if(n.filePath=u.filePath,n.relFilePath=u.relFilePath,await e.exists(u.filePath)?n.importPath=V(e,u.filePath):(n.externalImportPath=u.importPath,n.importPath=n.externalImportPath),n.displayFilePath=u.displayFilePath,n.exportType=u.exportType,n.externalImportPath)n.exportName=o;else{let c=await Ka(e,u.filePath);if(c&&c.length>0)if(c.length===1)n.exportName=c[0].cmpInfo.exportName;else{let l=c.find(p=>p.cmpInfo.exportName===o);l&&(n.exportName=l.cmpInfo.exportName)}}continue}}return n=fe(e,n,r),n.filePath&&n.exportName&&(n.id=await U(e,n.filePath,n.exportName,n.externalImportPath)),n}async function Ve(e,t,r,n,i,a,o,s){let u=await it(e),[c,l,p]=await Promise.all([Ma(e,u),us(e),pn(e)]),m=c.map(E=>E.cmpInfo),h=l.components,g={components:ve(m,h),registryPath:e.registryPath,registryDisplayPath:$(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ne(m),publicApiKey:p.envValue??void 0,devToolsVersion:e.version};if(s)return g.components=await Va(e,c,g.components),g;let D=!1,d=l.sourceFile,f=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(f.length>0){let E=f.map(S=>{let y=c.find(M=>M.cmpInfo.id===S);if(!y)throw new Error(`Component ${S} not found`);return y}),x=Array.from(new Set(E.map(S=>S.cmpInfo.filePath))),A=await Z(e,x);for(let S of E){let y=g.components.find(L=>L.id===S.cmpInfo.id),M=await Kr(e,S,A);he(y,M);let te=m.findIndex(L=>L.id===S.cmpInfo.id);m[te].inputs=M;let K=Le(S.cmpInfo.id,m,h,r,n,i,a),{elements:w,elmIndex:v,statementIndex:ue,statement:ye,variableDeclaration:ie}=await Sm(e,d,S);if(K.addCmpToRegistry)w.push(ym(e,K.addCmpToRegistry)),D=!0;else if(K.removeCmpFromRegistry)w.splice(v,1),D=!0;else if(K.updateRegisteredCmp){let L=ee(e,w[v],K.updateRegisteredCmp);w[v]=e.ts.factory.updateObjectLiteralExpression(L,[cs(e,K.updateRegisteredCmp),...L.properties.slice(1)]),D=!0}if(D&&o){let L=[...d.statements];L[ue]=e.ts.factory.updateVariableStatement(ye,ye.modifiers,e.ts.factory.updateVariableDeclarationList(ye.declarationList,[e.ts.factory.updateVariableDeclaration(ie,ie.name,ie.exclamationToken,ie.type,e.ts.factory.createArrayLiteralExpression($e(e,w)))])),d=e.ts.factory.updateSourceFile(d,L),y.exportType==="named"?d=N(e,d,{namedImports:[y.importName],importPath:y.externalImportPath?y.externalImportPath:k(e,e.registryPath,y.filePath)}):d=N(e,d,{defaultImport:y.importName,importPath:y.externalImportPath?y.externalImportPath:k(e,e.registryPath,y.filePath)}),d=N(e,d,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-angular",isTypeOnly:!0}),d=_e(e,d,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),g.components=K.components,h=K.components.filter(ce=>ce.isRegistered)}}}if(D&&o){d=Oe(e,d),d=ke(e,d);let E=ne(e,d);E=Ae(E),E=await e.formatCode(e.registryPath,E),await e.writeFile(e.registryPath,E)}return g}function cs(e,t){let r=e.ts.factory.createIdentifier(t.importName);return e.ts.factory.createPropertyAssignment("component",r)}function ym(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([cs(e,t)],!0),t)}async function Sm(e,t,r){let n=Y(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 i=n.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),a=-1;for(let o=0;o<i.length;o++)if((await Yr(e,t,i[o]))?.id===r.cmpInfo.id){a=o;break}return{...n,elements:i,elmIndex:a}}async function ls(e){let t=await wm(e),r={};return{builderPageOptions:async()=>({templateContentId:"f0b8016ac92e474699293211a268ebaa",pathname:"/builder-demo",title:"Builder + Angular Demo Page"}),ensureBuilderSetup:()=>is(t),ensureFigmaImportPage:()=>as(t),getRegistryPath:()=>t.registryPath,getRegistry:i=>Ve(t,null,!1,!1,null,null,!1,!!i?.readAllInputTypes),addExternalPackage:async i=>{r[i]||(r[i]=`export * from "${i}";`)},loadComponent:async i=>{let a=await Ve(t,i.cmpId,!1,!1,null,null,!1,!1);return{...a,component:a.components.find(o=>o.id===i.cmpId)}},registerComponent:i=>Ve(t,i.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:i=>Ve(t,i.cmpId,!1,!1,i,null,!0,!1),setRegisteredComponentInput:i=>Ve(t,i.cmpId,!1,!1,null,i,!0,!1),unregisterComponent:i=>Ve(t,i.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>pn(t),setPublicApiKey:i=>_a(t,i.publicApiKey),getDependencies:i=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-angular"},{name:"concurrently"}],getDevRunCommand:()=>"builder-dev",getCache:()=>Te(t),setCache:i=>Ie(t,i)}}async function wm(e){let t=await Am(e),r=e.getAppRootDir(),n=e.join(r,"src"),i=await De(e),a=e.join(n,"app"),o=await Ee(e,a),s={...e,srcDir:"",appDir:"",componentsDir:"",registryPath:o,angularConfigPath:t,typescriptEnabled:i,builderPageComponentPath:"",hasAppModule:!1};if(!await e.exists(n))throw new Error(`Could not find src directory. Searched for src in "${e.getAppRootDir()}".`);s.srcDir=n,s.appDir=a,s.componentsDir=e.join(s.appDir,"components"),s.builderPageComponentPath=e.join(s.componentsDir,`builder-page.component.${i?"ts":"js"}`);let u=`app.module.${i?"ts":"js"}`,c=e.join(s.appDir,u);return await e.exists(c)&&(s.hasAppModule=!0),s}async function Am(e){let t=e.join(e.getAppRootDir(),"angular.json");if(await e.exists(t))return t;let r=e.join(e.getAppRootDir(),"project.json");if(await e.exists(r))return r;throw new Error(`Could not find Angular config file. Searched for angular.json & project.json in "${e.getAppRootDir()}".`)}var Gn=se(Ss(),1);async function ws(e,t){let n={components:(await t.getRegistry()).components.filter(a=>a.isRegistered).map(a=>{let o={filePath:Se(e.relative(e.getAppRootDir(),a.filePath)),name:a.name,image:a.image,description:a.description,exportName:a.exportName,inputs:de(a.inputs)};return de(o)}),version:1};e.debug("exporting registry components:",n.components.length);let i=(0,Gn.compress)(n);return btoa(JSON.stringify(i))}async function As(e,t,r){if(typeof r!="string")throw new Error("Invalid registry to import");let n=await t.getRegistry(),i=JSON.parse(atob(r)),a=(0,Gn.decompress)(i),o=de(n);e.debug("importing registry components:",a.components.length);for(let s of a.components){let u=Se(e.normalize(s.filePath)),c=n.components.find(p=>Se(p.filePath).endsWith(u)&&p.exportName===s.exportName);if(!c){console.error(`Could not find component to register: ${s.filePath}, ${s.exportName}`);continue}e.debug(`register (${c.id})`,c.filePath),await t.registerComponent({cmpId:c.id});for(let p of s.inputs)e.debug(`set input (${c.id})`),await t.setRegisteredComponentInput({cmpId:c.id,name:p.name,type:p.type,required:p.required,defaultValue:p.defaultValue,friendlyName:p.friendlyName,helperText:p.helperText});e.debug(`set input (${c.id}) info`);let l=await t.setRegisteredComponentInfo({cmpId:c.id,name:s.name,image:s.image,description:s.description});o=de(l)}return o}var Pe={react:"react",remix:"remix",angular:"angular",next:"next",qwik:"qwik"},dE={[Pe.react]:[{version:b.gen1,recommended:!0},{version:b.gen2,recommended:!1}],[Pe.remix]:[{version:b.gen1,recommended:!1},{version:b.gen2,recommended:!0}],[Pe.angular]:[{version:b.gen2,recommended:!0}],[Pe.next]:[{version:b.gen1,recommended:!0},{version:b.gen2,recommended:!1}],[Pe.qwik]:[{version:b.gen2,recommended:!0}]};async function vs(e,t){let r=[],n=new Set;async function i(a){let o=e.join(a,"package.json");try{if(!await e.exists(o))return null;let u=await e.readFile(o);if(u===null)throw new Error(`Failed to read package.json at ${o}`);let c=JSON.parse(u);if(n.has(c.name))return null;n.add(c.name);let l={name:c.name,subPackages:[]},p=await e.readdir(a);for(let m of p)m!=="node_modules"&&(await e.stat(e.join(a,m))).isDirectory()&&l.subPackages.push(m);return r.push(l),l}catch(s){return e.Sentry?.captureException(s),null}}try{let a=e.join(t,"package.json");if(await e.exists(a)){let s=await e.readFile(a);if(s!==null){let u=JSON.parse(s),c={...u.dependencies,...u.devDependencies};for(let l of Object.keys(c)){let p=e.join(t,"node_modules",l);await i(p)}if(u.workspaces)for(let l of u.workspaces){let p=await e.readdir(e.join(t,l));for(let m of p){let h=e.join(t,l,m);await i(h)}}}}}catch(a){e.Sentry?.captureException(a)}return r}var Hm={"@builder.io/qwik-city":Ea,next:ca,"@remix-run/react":Pa,react:La,"@angular/core":ls},Qm={"@builder.io/qwik-city":Pe.qwik,next:Pe.next,"@remix-run/react":Pe.remix,react:Pe.react,"@angular/core":Pe.angular};async function Hn(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 Tt(e)),e.frameworks.length===0)throw new Error("Supported Devtools framework for not found");for(let t of e.frameworks){let r=Hm[t.name];if(r){let n=await r(e);return{...n,exportRegistry:()=>ws(e,n),importRegistry:a=>As(e,n,a),framework:Qm[t.name],findAllDependencies:async()=>await vs(e,e.getRepoRootDir())}}}throw new Error(`Devtools framework not found for ${e.getAppRootDir()}, ${JSON.stringify(e.frameworks,null,2)}`)}var lF=`
|
|
1174
1174
|
/** @type {import('next').NextConfig} */
|
|
1175
1175
|
const nextConfig = {
|
|
1176
1176
|
}
|
|
1177
1177
|
|
|
1178
1178
|
module.exports = nextConfig
|
|
1179
|
-
`.trimStart();import*as
|
|
1180
|
-
|
|
1181
|
-
`)):
|
|
1182
|
-
|
|
1183
|
-
`)),await
|
|
1184
|
-
`+await
|
|
1185
|
-
`)
|
|
1186
|
-
`)
|
|
1187
|
-
|
|
1188
|
-
`)
|
|
1189
|
-
`)),r.join(`
|
|
1190
|
-
`)}import{randomUUID as vm}from"crypto";import bu from"node:process";function po(){let{env:e}=bu,{TERM:t,TERM_PROGRAM:n}=e;return bu.platform!=="win32"?t!=="linux":!!e.WT_SESSION||!!e.TERMINUS_SUBLIME||e.ConEmuTask==="{cmd::Cmder}"||n==="Terminus-Sublime"||n==="vscode"||t==="xterm-256color"||t==="alacritty"||t==="rxvt-unicode"||t==="rxvt-unicode-256color"||e.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var mo=pe(Ue(),1),Xe=pe(gr(),1),ur=pe(Ue(),1);import{stdin as fm,stdout as dm}from"node:process";import*as at from"node:readline";var wu=()=>{let e=fo?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],t=fo?80:120,n,r,i=!1,a="",o="",u="",s=f=>{let E=f>1?"Something went wrong":"Canceled";i&&g(E,f)},l=(f,E)=>{console.error(E,f),s(2)},c=()=>s(1),p=()=>{process.on("uncaughtExceptionMonitor",l),process.on("unhandledRejection",l),process.on("SIGINT",c),process.on("SIGTERM",c),process.on("exit",s)},m=()=>{process.removeListener("uncaughtExceptionMonitor",l),process.removeListener("unhandledRejection",l),process.removeListener("SIGINT",c),process.removeListener("SIGTERM",c),process.removeListener("exit",s)},C=(f="")=>{i=!0,n=xm(),a=f.replace(/\.+$/,""),process.stdout.write(`${mo.default.gray(Dm)}
|
|
1191
|
-
`);let E=0,x=0;p(),process.env.CI||(r=setInterval(()=>{let v=mo.default.magenta(e[E]),A=".".repeat(Math.floor(x)).slice(0,3);process.stdout.write(Xe.cursor.move(-999,-u.split(`
|
|
1192
|
-
`).length+1)),process.stdout.write(Xe.erase.down(u.split(`
|
|
1193
|
-
`).length));let S=`${v} ${a}${A}${o}`;process.stdout.write(S),E=E+1<e.length?E+1:0,x=x<e.length?x+.125:0,u=S},t))},g=(f,E=0)=>{a=f??a,i=!1,clearInterval(r);let x=E===0?(0,ur.green)(hm):E===1?(0,ur.red)(gm):(0,ur.red)(Cm);process.stdout.write(Xe.cursor.move(-999,-u.split(`
|
|
1194
|
-
`).length+1)),process.stdout.write(Xe.erase.down(u.split(`
|
|
1179
|
+
`.trimStart();import*as bs from"@sentry/node";import*as Ps from"@amplitude/analytics-node";async function ut(e){if(process.env.NODE_ENV!=="test")try{await Promise.allSettled([bs.flush(2e3),Ps.flush().promise])}catch(t){console.error(t)}process.exit(e)}var Qn=process.env.AIR_HOST||"https://air-layout-v2-tk43uighdq-uc.a.run.app";import*as Vt from"@amplitude/analytics-node";import*as er from"@sentry/node";import Ym from"crypto";var Xn=new Uint8Array(256),Yn=Xn.length;function po(){return Yn>Xn.length-16&&(Ym.randomFillSync(Xn),Yn=0),Xn.slice(Yn,Yn+=16)}var ae=[];for(let e=0;e<256;++e)ae.push((e+256).toString(16).slice(1));function Ts(e,t=0){return ae[e[t+0]]+ae[e[t+1]]+ae[e[t+2]]+ae[e[t+3]]+"-"+ae[e[t+4]]+ae[e[t+5]]+"-"+ae[e[t+6]]+ae[e[t+7]]+"-"+ae[e[t+8]]+ae[e[t+9]]+"-"+ae[e[t+10]]+ae[e[t+11]]+ae[e[t+12]]+ae[e[t+13]]+ae[e[t+14]]+ae[e[t+15]]}import Xm from"crypto";var mo={randomUUID:Xm.randomUUID};function Zm(e,t,r){if(mo.randomUUID&&!t&&!e)return mo.randomUUID();e=e||{};let n=e.random||(e.rng||po)();if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){r=r||0;for(let i=0;i<16;++i)t[r+i]=n[i];return t}return Ts(n)}var fo=Zm;async function tr(e,t,r){let n={...t,app:"dev-tools-cli",package:"cli"};return Vt.track(e,n,{...r,user_id:await ef(),device_id:await tf()})}var Zn,Do;async function Is(e){Zn=e;let t=await It();await fr({...t,userId:e})}async function ef(){if(Zn)return Zn;let e=await It(),t;return mr(e,"userId")&&(t=e.userId),Zn=t,t}async function tf(){if(Do)return Do;let e=await It(),t=fo();return mr(e,"deviceId")?t=e.deviceId:await fr({...e,deviceId:t}),Do=t,t}var Bs=se(Ue(),1);import{fetch as nf}from"undici";var Rs=se(Ue(),1),ct=async(e,t)=>{let r="fetch"in globalThis?globalThis.fetch:nf;try{let n=await r(e,t);if(!n.ok)if(n.status===429){let i=await n.json(),a=i.severity??"high",o=i.message??"Rate limit exceeded. Please try again later.";return console.log(),a==="high"?n.error((0,Bs.red)(`${n.status} ${o}
|
|
1180
|
+
|
|
1181
|
+
`)):n.warn((0,Rs.yellow)(`${n.status} ${o}
|
|
1182
|
+
|
|
1183
|
+
`)),await ut(1)}else throw new Error(`Failed to generate completion:
|
|
1184
|
+
`+await n.text());return n}catch(n){let i=typeof e=="string"?e:e instanceof URL?e.toString():e.url,a=t?.method||"GET",o=n instanceof Error?n.message:String(n),s=new Error(`Fetch failed for ${a} ${i}: ${o}`);throw n instanceof Error&&(s.cause=n),s.requestContext={url:i,method:a,headers:t?.headers},s}};var Ut=process.env.OVERRIDE_VERSION??"1.5.11";import*as Ns from"@sentry/node";import*as rf from"@sentry/node";var of=/[^\x00-\x7F]/g;function ks(e){return e=e.replace(of,""),e=e.replace(/[\W\d]/g," "),e=e.trim(),e=af(e),e=e.charAt(0).toUpperCase()+e.slice(1),e}function af(e){return e.replace(/(?:^\w|[A-Z]|\b\w)/g,function(t,r){return r===0?t.toLowerCase():t.toUpperCase()}).replace(/\s+/g,"")}import{glob as xy}from"glob";import ry from"prettier";import Ay from"chokidar";import by from"ignore";import Ls from"node:process";function go(){let{env:e}=Ls,{TERM:t,TERM_PROGRAM:r}=e;return Ls.platform!=="win32"?t!=="linux":!!e.WT_SESSION||!!e.TERMINUS_SUBLIME||e.ConEmuTask==="{cmd::Cmder}"||r==="Terminus-Sublime"||r==="vscode"||t==="xterm-256color"||t==="alacritty"||t==="rxvt-unicode"||t==="rxvt-unicode-256color"||e.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var ho=se(Ue(),1),Xe=se(An(),1),hn=se(Ue(),1);import{stdin as cf,stdout as lf}from"node:process";import*as lt from"node:readline";var nr=()=>{let e=Co?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],t=Co?80:120,r,n,i=!1,a="",o="",s="",u=f=>{let E=f>1?"Something went wrong":"Canceled";i&&g(E,f)},c=(f,E)=>{console.error(E,f),u(2)},l=()=>u(1),p=()=>{process.on("uncaughtExceptionMonitor",c),process.on("unhandledRejection",c),process.on("SIGINT",l),process.on("SIGTERM",l),process.on("exit",u)},m=()=>{process.removeListener("uncaughtExceptionMonitor",c),process.removeListener("unhandledRejection",c),process.removeListener("SIGINT",l),process.removeListener("SIGTERM",l),process.removeListener("exit",u)},h=(f="")=>{i=!0,r=gf(),a=f.replace(/\.+$/,""),process.stdout.write(`${ho.default.gray(pf)}
|
|
1185
|
+
`);let E=0,x=0;p(),process.env.CI||(n=setInterval(()=>{let A=ho.default.magenta(e[E]),S=".".repeat(Math.floor(x)).slice(0,3);process.stdout.write(Xe.cursor.move(-999,-s.split(`
|
|
1186
|
+
`).length+1)),process.stdout.write(Xe.erase.down(s.split(`
|
|
1187
|
+
`).length));let y=`${A} ${a}${S}${o}`;process.stdout.write(y),E=E+1<e.length?E+1:0,x=x<e.length?x+.125:0,s=y},t))},g=(f,E=0)=>{a=f??a,i=!1,clearInterval(n);let x=E===0?(0,hn.green)(df):E===1?(0,hn.red)(mf):(0,hn.red)(ff);process.stdout.write(Xe.cursor.move(-999,-s.split(`
|
|
1188
|
+
`).length+1)),process.stdout.write(Xe.erase.down(s.split(`
|
|
1195
1189
|
`).length)),process.stdout.write(`${x} ${a}
|
|
1196
|
-
`),
|
|
1190
|
+
`),s=a,m(),r()};return{start:h,stop:g,message:(f="")=>{a=f??a},extra:(f="")=>{o=f}}},Co=go(),rr=(e,t)=>Co?e:t,pf=rr("\u2502","|"),mf=rr("\u25A0","x"),ff=rr("\u25B2","x"),df=rr("\u25C7","o"),Df=globalThis.process.platform.startsWith("win");function gf({input:e=cf,output:t=lf,overwrite:r=!0,hideCursor:n=!0}={}){let i=lt.createInterface({input:e,output:t,prompt:"",tabSize:1});lt.emitKeypressEvents(e,i),e.isTTY&&e.setRawMode(!0);let a=(o,{name:s})=>{if(String(o)===""){n&&t.write(Xe.cursor.show),process.exit(0);return}if(!r)return;lt.moveCursor(t,s==="return"?0:-1,s==="return"?-1:0,()=>{lt.clearLine(t,1,()=>{e.once("keypress",a)})})};return n&&t.write(Xe.cursor.hide),e.once("keypress",a),()=>{e.off("keypress",a),n&&t.write(Xe.cursor.show),e.isTTY&&!Df&&e.setRawMode(!1),i.terminal=!1,i.close()}}var F=se(Ue(),1);function xo(e){switch(tr("cli help",{subcommand:e}),console.log(""),ht((0,F.bgCyan)((0,F.bold)((0,F.white)(" help ")))+" "+(0,F.dim)(Ut)),e){case"add":case"generate":case"gen":case"g":ht(`${(0,F.cyan)("\u2192")} ${(0,F.bold)("Generate Figma Components")}
|
|
1197
1191
|
|
|
1198
1192
|
${(0,F.bgGreen)((0,F.white)(" npx builder.io figma generate URL [URL ...] "))}
|
|
1199
1193
|
|
|
@@ -1210,7 +1204,7 @@ ${(0,F.yellow)("Arguments:")}
|
|
|
1210
1204
|
${(0,F.cyan)("--ci")} Run in CI mode without interactive prompts
|
|
1211
1205
|
${(0,F.cyan)("--force")} Force operation even if there are warnings
|
|
1212
1206
|
${(0,F.cyan)("--skipInstallation")} Skip the package installation step
|
|
1213
|
-
${(0,F.cyan)("--yes")} Auto-confirm all prompts`);break;case"auth":
|
|
1207
|
+
${(0,F.cyan)("--yes")} Auto-confirm all prompts`);break;case"auth":j.info(`${(0,F.cyan)("\u2192")} ${(0,F.bold)("Authentication")}
|
|
1214
1208
|
|
|
1215
1209
|
${(0,F.bgGreen)((0,F.white)(" npx builder.io auth "))}
|
|
1216
1210
|
|
|
@@ -1239,7 +1233,7 @@ ${(0,F.yellow)("Arguments:")}
|
|
|
1239
1233
|
${(0,F.yellow)("Learn More:")}
|
|
1240
1234
|
\u2022 Builder.io API keys: https://www.builder.io/c/docs/using-your-api-key#managing-private-keys
|
|
1241
1235
|
\u2022 Figma access token: https://help.figma.com/hc/en-us/articles/8085703771159-Manage-personal-access-tokens
|
|
1242
|
-
\u2022 CI setup guide: https://www.builder.io/c/docs/integrating-builder-figma`);break;case"publish":
|
|
1236
|
+
\u2022 CI setup guide: https://www.builder.io/c/docs/integrating-builder-figma`);break;case"publish":j.info(`${(0,F.cyan)("\u2192")} ${(0,F.bold)("Publish Mappings")}
|
|
1243
1237
|
|
|
1244
1238
|
${(0,F.bgGreen)((0,F.white)(" npx builder.io figma publish "))}
|
|
1245
1239
|
|
|
@@ -1252,7 +1246,7 @@ ${(0,F.yellow)("Arguments:")}
|
|
|
1252
1246
|
${(0,F.cyan)("--force")} Force publish even if there are warnings
|
|
1253
1247
|
${(0,F.cyan)("--verbose")} Print output as JSON
|
|
1254
1248
|
${(0,F.cyan)("--dryrun")} Run without making changes
|
|
1255
|
-
${(0,F.cyan)("--yes")} Auto-confirm all prompts`);break;case"migrate":
|
|
1249
|
+
${(0,F.cyan)("--yes")} Auto-confirm all prompts`);break;case"migrate":j.info(`${(0,F.cyan)("\u2192")} ${(0,F.bold)("Migrate Mappings")}
|
|
1256
1250
|
|
|
1257
1251
|
${(0,F.bgGreen)((0,F.white)(" npx builder.io figma migrate "))}
|
|
1258
1252
|
|
|
@@ -1265,7 +1259,7 @@ ${(0,F.yellow)("Arguments:")}
|
|
|
1265
1259
|
${(0,F.cyan)("--privateKey")} Builder.io private API key
|
|
1266
1260
|
${(0,F.cyan)("--spaceId")} Builder.io space ID to use
|
|
1267
1261
|
${(0,F.cyan)("--force")} Force migration even if there are warnings
|
|
1268
|
-
${(0,F.cyan)("--yes")} Auto-confirm all prompts`);break;case"code":
|
|
1262
|
+
${(0,F.cyan)("--yes")} Auto-confirm all prompts`);break;case"code":j.info(`${(0,F.cyan)("\u2192")} ${(0,F.bold)("Code Generation")}
|
|
1269
1263
|
|
|
1270
1264
|
${(0,F.bgGreen)((0,F.white)(" npx builder.io code --url URL "))}
|
|
1271
1265
|
|
|
@@ -1282,7 +1276,7 @@ ${(0,F.yellow)("Arguments:")}
|
|
|
1282
1276
|
${(0,F.yellow)("Configuration Files:")}
|
|
1283
1277
|
${(0,F.cyan)(".builderignore")} Add patterns to exclude files from being included in code generation
|
|
1284
1278
|
${(0,F.cyan)(".builderrules")} Add custom instructions that will be injected into the LLM prompt
|
|
1285
|
-
${(0,F.cyan)(".cursorrules")} Cursor's settings are automatically supported for consistent behavior`);break;case"indexing":
|
|
1279
|
+
${(0,F.cyan)(".cursorrules")} Cursor's settings are automatically supported for consistent behavior`);break;case"indexing":j.info(`${(0,F.cyan)("\u2192")} ${(0,F.bold)("Code Indexing")}
|
|
1286
1280
|
|
|
1287
1281
|
${(0,F.bgGreen)((0,F.white)(" npx builder.io code indexing "))}
|
|
1288
1282
|
|
|
@@ -1291,15 +1285,21 @@ Index your codebase to improve code generation results.
|
|
|
1291
1285
|
${(0,F.yellow)("Arguments:")}
|
|
1292
1286
|
${(0,F.cyan)("--privateKey")} Builder.io private API key
|
|
1293
1287
|
${(0,F.cyan)("--spaceId")} Builder.io space ID to use
|
|
1294
|
-
${(0,F.cyan)("--cwd")} Working directory to run commands from`);break;default:
|
|
1295
|
-
`),[{command:"generate URL [URL ...]",description:"Start the auto-mapping wizard for Figma Component URLs"},{command:"publish",description:"Publish your Figma Mappings to Builder.io"},{command:"migrate",description:"Migrate existing Figma Mappings into the repo as local files"},{command:"auth",description:"Re-authenticate with Figma and Builder.io"},{command:"code",description:"Generate or modify code based on Figma designs"},{command:"indexing",description:"Index your codebase to improve code generation results"}].forEach(({command:
|
|
1296
|
-
${(0,F.dim)(
|
|
1297
|
-
`)}),
|
|
1298
|
-
Use ${(0,F.cyan)("npx builder.io figma help <command>")} for detailed help about a command`)}
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1288
|
+
${(0,F.cyan)("--cwd")} Working directory to run commands from`);break;default:j.info(`${(0,F.bold)("Available Commands:")}
|
|
1289
|
+
`),[{command:"generate URL [URL ...]",description:"Start the auto-mapping wizard for Figma Component URLs"},{command:"publish",description:"Publish your Figma Mappings to Builder.io"},{command:"migrate",description:"Migrate existing Figma Mappings into the repo as local files"},{command:"auth",description:"Re-authenticate with Figma and Builder.io"},{command:"code",description:"Generate or modify code based on Figma designs"},{command:"indexing",description:"Index your codebase to improve code generation results"}].forEach(({command:r,description:n})=>{j.info(`${(0,F.cyan)("\u2192")} ${(0,F.bgGreen)((0,F.white)(` npx builder.io figma ${r} `))}
|
|
1290
|
+
${(0,F.dim)(n)}
|
|
1291
|
+
`)}),j.info(`
|
|
1292
|
+
Use ${(0,F.cyan)("npx builder.io figma help <command>")} for detailed help about a command`)}en("bye \u{1F44B}")}var zf=se(cr()),qf=se(Au());import*as vu from"@sentry/node";import dS from"prompts";import jS from"prettier";async function Jf(e,t,r){let n=[],i=[t],a=e.relative(e.getAppRootDir(),t.fileName);for(;i.length>0;){let o=i.shift();if(Yf(o,t)){let s=Hf(e,o,t,r),{line:u,character:c}=t.getLineAndCharacterOfPosition(o.getStart());s&&(s.loc=`${a}:${u+1}:${c+1}`,n.push(s))}i.push(...o.getChildren(t))}return n}var Gf="figmaMapping";function Hf(e,t,r,n){let[i]=t.arguments;if(!i)throw new Error("Invalid figmaMapping call, no arguments found");if(!H.isObjectLiteralExpression(i))throw new Error("Invalid figmaMapping call, argument is not an object literal");let a=i.properties;if(!a)throw new Error("Invalid figmaMapping call, argument has no properties");let o="",s,u,c="-",l=e.basename(r.fileName,".mapper.tsx"),p,m,h,g;if(t.typeArguments&&t.typeArguments.length>0){let d=bu(t.typeArguments[0].getText(r));d&&(l=d)}for(let d of a){let f=d.name?.getText(r);if(!f)throw new Error("Invalid figmaMapping call, property has no name");switch(f){case"url":{if(!("initializer"in d))throw new Error("Invalid figmaMapping call, url has no initializer");let E=d.initializer;if(!H.isStringLiteral(E))throw new Error("Invalid figmaMapping call, componentKey is not a string literal");g=E.text;break}case"componentKey":{if(!("initializer"in d))throw new Error("Invalid figmaMapping call, componentKey has no initializer");let E=d.initializer;if(!H.isStringLiteral(E))throw new Error("Invalid figmaMapping call, componentKey is not a string literal");o=E.text;break}case"mapper":if(H.isMethodDeclaration(d)){let E=function(x){if((H.isJsxOpeningElement(x)||H.isJsxSelfClosingElement(x))&&H.isIdentifier(x.tagName)){c=x.tagName.getText(r);let S=n.getSymbolAtLocation(x.tagName)?.getDeclarations()?.[0];if(S){let y=Qf(S);y?.importClause&&(y.importClause.name?.getText(r)===c?p="default":y.importClause.namedBindings&&(p="named"),m=c,H.isStringLiteral(y.moduleSpecifier)&&(h=y.moduleSpecifier.text))}return c}else if(H.isTaggedTemplateExpression(x)&&H.isIdentifier(x.tag)&&x.tag.escapedText==="html"){let A=x.template.getText(r).match(/^`<([^\s]+)/);if(A){c=A[1];return}}else H.forEachChild(x,E)};var D=E;if(d.parameters[0].type){let x=d.parameters[0].type.getText(r),A=bu(x);A&&(l=A)}H.forEachChild(d,E),u=d.getText(r).replace(/^mapper/,"function Mapper"),s=To(u);break}case"designTokenMapper":if(H.isMethodDeclaration(d)){u=d.getText(r).replace(/^designTokenMapper/,"function Mapper"),s=To(u),o="design-tokens";break}case"genericMapper":if(H.isMethodDeclaration(d)){u=d.getText(r).replace(/^genericMapper/,"function Mapper"),s=To(u),o="*";break}}}if(!o&&!g)throw new Error("Invalid figmaMapping call, no componentKey or url found");if(!o&&!s)throw new Error("Invalid figmaMapping call, no mapper found");if(!o&&!u)throw new Error("Invalid figmaMapping call, no original mapper found");return{builderName:c,figmaName:l,figmaKey:o,figmaUrl:g,inputMapper:s,exportType:p,importName:m,importPath:h,originalInputMapper:u,source:"cli"}}function To(e){return H.transpile(e,{target:H.ScriptTarget.Latest,allowNonTsExtensions:!0,moduleResolution:H.ModuleResolutionKind.NodeJs,module:H.ModuleKind.CommonJS,noImplicitAny:!1,esModuleInterop:!0,noUnusedLocals:!1,noUnusedParameters:!1,jsx:H.JsxEmit.React,jsxFactory:"React.createElement",jsxFragmentFactory:"React.Fragment",allowJs:!0,checkJs:!0,strict:!0,suppressImplicitAnyIndexErrors:!0,typeRoots:["node_modules/@types"],inlineSources:!0,inlineSourceMap:!0})}function Qf(e){let t=e;for(;t;){if(H.isImportDeclaration(t))return t;t=t.parent}}function Yf(e,t){return H.isCallExpression(e)&&e.expression.getText(t).includes(Gf)}async function Pu(e){let t=["node_modules","dist","build","public"];return(await e.readdirRecursive(e.getAppRootDir(),t)).filter(n=>Ce(n))}function bu(e){let t=e.match(/^Figma(\w+)Props$/);if(t&&typeof t[1]=="string")return t[1]}async function Tu(e,t,r,n=!1){try{return r||(r=await Hn(e)),await r.setPublicApiKey({publicApiKey:t}),n&&await r.ensureFigmaImportPage(),!0}catch(i){return Io.captureException(i),!1}}async function Iu({force:e,mappingFiles:t,print:r,sys:n}){if(!t.length)return{figmaBuilderLinks:[],figmaLinksToResolve:[],foundErrors:!1};let i=[],a=await Z(n,t),o=a.getTypeChecker(),s=[...a.getSyntacticDiagnostics(),...a.getGlobalDiagnostics(),...a.getSemanticDiagnostics(),...a.getDeclarationDiagnostics()].filter(p=>!(p.category!==H.DiagnosticCategory.Error||p.code===6133||p.code===6138||p.code===6196||p.code===6192||p.code===6198||p.code===6199||p.code===6205||p.code===1449||p.code===2578||p.code===2695||p.code===2322)),u=new Set,c=!1;for(let p of t)try{let m=a.getSourceFile(p);if(!m)throw new Error(`Could not find source file for ${p}`);let h=m?.fileName;if(h){let D=s.filter(d=>d.file?.fileName===h);if(D.length>0&&(c=!0,e!==!0)){j.error((0,X.red)(`TypeScript errors in ${(0,X.dim)(n.relative(n.getAppRootDir(),p))}:
|
|
1293
|
+
`)+D.map(d=>` \u2022 ${Xf(d)}`).join(`
|
|
1294
|
+
`));continue}}let g=await Jf(n,m,o);if(i.push(...g),r){let D=!1,d=`${(0,X.dim)(n.relative(n.getAppRootDir(),p))}:
|
|
1295
|
+
`+g.map(f=>{let E=!1;f.figmaKey?(E||(E=u.has(f.figmaKey)),u.add(f.figmaKey)):f.figmaUrl&&(E||(E=u.has(f.figmaUrl)),u.add(f.figmaUrl));let x="";switch(f.figmaKey){case"design-tokens":x=" "+(0,X.cyan)("\u2747\uFE0E Design tokens mapper");break;case"*":x=" "+(0,X.yellow)("\u25CF Generic mapper");break;default:x=` ${(0,X.magenta)("\u2756 "+ks(f.figmaName))} ${(0,X.dim)("\u2192")} ${f.builderName==="-"?"-":"<"+f.builderName+">"}`;break}return E&&(D=!0,x=(0,X.bgRed)(x+(0,X.bold)(" <= duplicated"))),x}).join(`
|
|
1296
|
+
`);D?(c=!0,j.error(d)):j.info(d)}}catch(m){return Io.captureException(m),console.error(m),await ut(1)}let l=i.filter(p=>p.figmaUrl&&!p.figmaKey).map(p=>p.figmaUrl);return{figmaBuilderLinks:i,figmaLinksToResolve:l,foundErrors:c}}function Xf(e){let{messageText:t}=e;if(typeof t=="string")return t;let{next:r}=t,n=[t.messageText];return r&&n.push(r.map(i=>i.messageText).join(`
|
|
1297
|
+
`)),n.join(`
|
|
1298
|
+
`)}import{randomUUID as rd}from"crypto";var Bo=e=>!!(process.env.CI||e.ci),ir=async(e,t,r)=>{let n=Bo(t)?{}:sd(e),i=n.spaceName,a=n.userId,o,s=process.env.BUILDER_PUBLIC_KEY??t.spaceId??n.builderPublicKey,u=process.env.BUILDER_PRIVATE_KEY??t.privateKey??n.builderPrivateKey,c=process.env.FIGMA_PERSONAL_TOKEN??t.figmaToken;if(c?o={access_token:c,oauth:!1}:o=n.figmaAuth,r.forceSpaceId&&s&&s!==r.forceSpaceId){j.warning(`CLI is currently logged in space ${(0,pt.yellow)(s)},
|
|
1299
|
+
however the command required --spaceId=${(0,pt.green)(r.forceSpaceId)}`);let l=t.yes||await Zt({message:"Do you wanna switch spaces?",active:"Yes",inactive:`Stay in current ${i} space`});if(tt(l)||!l)throw gt(`Aborting. Another way to fix this conflict is making sure the figma plugin is logged in "${i}" instead.`),new Error("Exiting");s=r.forceSpaceId,u=void 0,i=void 0,a=void 0}if(Bo(t)){if(!o&&r.figmaAuth)throw new Error(`No Figma personal token found.
|
|
1300
|
+
Please set the FIGMA_PERSONAL_TOKEN environment variable.`);if(!u&&r.builderPrivateKey)throw new Error(`No Builder private key found.
|
|
1301
|
+
Please set the BUILDER_PRIVATE_KEY environment variable.`);if(!s&&r.builderPublicKey)throw new Error(`No Builder public key found.
|
|
1302
|
+
Please set the BUILDER_PUBLIC_KEY environment variable.`);return{figmaAuth:o,builderPublicKey:s,builderPrivateKey:u}}if((r.force||!o&&r.figmaAuth)&&(o=await id(),Bu(e,{figmaAuth:o})),r.force||!u&&r.builderPrivateKey||!s&&r.builderPublicKey){let{privateKey:l,spaceId:p,spaceName:m,userId:h}=await ad(e,r.forceSpaceId);if(r.forceSpaceId&&p!==r.forceSpaceId)throw new Error(`OAuth flow returned space ${(0,pt.yellow)(p)}, however the command required --spaceId=${(0,pt.green)(r.forceSpaceId)}`);s=p,u=l,i=m,a=h,await Is(a),await Tu(e,p,void 0,!1),Bu(e,{builderPublicKey:s,builderPrivateKey:u,spaceName:i,userId:a})}return a&&Ze.setUser({id:a,username:process.env.USER||process.env.USERNAME||"unknown"}),(i||s)&&Ze.setContext("builder",{spaceId:s,spaceName:i}),{figmaAuth:o,builderPublicKey:s,builderPrivateKey:u,spaceName:i,userId:a}},od="RHr2ed743waC2g2ZHMEJSn6O0NQ08L";async function id(){let e=rd();return ku({name:"Figma",port:5283,requestListener:async(t,r,n,i,a)=>{let o=new URL(r.url||"",`http://localhost:${t}`);if(o.pathname==="/figma-connect"){let s=o.searchParams.get("code"),u=o.searchParams.get("state");if(s&&e===u){let c=await ct("https://www.figma.com/api/oauth/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:"nrGCqw6TLl95QJhVDi097A",client_secret:od,redirect_uri:"http://localhost:5283/figma-connect",code:s,grant_type:"authorization_code"}).toString()});c.ok||a(new Error("Failed to get figma access token"));let l=await c.json();n.end(`<!DOCTYPE html>
|
|
1303
1303
|
<html lang="en" dir="ltr">
|
|
1304
1304
|
<head>
|
|
1305
1305
|
<meta charset="utf-8" />
|
|
@@ -1408,7 +1408,7 @@ Please set the BUILDER_PUBLIC_KEY environment variable.`);return{figmaAuth:o,bui
|
|
|
1408
1408
|
<!--SCRIPT_PLACEHOLDER-->
|
|
1409
1409
|
</body>
|
|
1410
1410
|
</html>
|
|
1411
|
-
`.replace("{{MESSAGE}}","The CLI has authenticated correctly with Figma"),()=>{i({...
|
|
1411
|
+
`.replace("{{MESSAGE}}","The CLI has authenticated correctly with Figma"),()=>{i({...l,oauth:!0})})}}},onListen:t=>{let r=new URL("https://www.figma.com/oauth");return r.searchParams.set("client_id","nrGCqw6TLl95QJhVDi097A"),r.searchParams.set("redirect_uri",`http://localhost:${t}/figma-connect`),r.searchParams.set("scope","files:read,file_dev_resources:read,file_variables:read"),r.searchParams.set("state",e),r.searchParams.set("response_type","code"),r.href}})}async function ad(e,t){let r=await e.getDeviceId();return ku({name:"Builder.io",port:5284,requestListener:async(n,i,a,o)=>{let s=new URL(i.url||"",`http://localhost:${n}`);s.pathname===ft&&a.end(`<!DOCTYPE html>
|
|
1412
1412
|
<html lang="en" dir="ltr">
|
|
1413
1413
|
<head>
|
|
1414
1414
|
<meta charset="utf-8" />
|
|
@@ -1517,5 +1517,5 @@ Please set the BUILDER_PUBLIC_KEY environment variable.`);return{figmaAuth:o,bui
|
|
|
1517
1517
|
<!--SCRIPT_PLACEHOLDER-->
|
|
1518
1518
|
</body>
|
|
1519
1519
|
</html>
|
|
1520
|
-
`.replace("{{MESSAGE}}","The CLI has authenticated correctly with Builder.io"),()=>{o({privateKey:
|
|
1521
|
-
OPEN: ${(0,
|
|
1520
|
+
`.replace("{{MESSAGE}}","The CLI has authenticated correctly with Builder.io"),()=>{o({privateKey:s.searchParams.get("p-key")||"",spaceId:s.searchParams.get("api-key")||"",spaceName:s.searchParams.get("org-name")||"",userId:s.searchParams.get("user-id")||""})})},onListen:n=>{let i=new URL("/cli-auth","https://builder.io");i.searchParams.set("client_id","builder-dev-tools-cli"),i.searchParams.set("host",r),i.searchParams.set("response_type","code"),i.searchParams.set("cli","true"),t&&i.searchParams.set("space_id",t);let a=new URL(ft,`http://localhost:${n}`);a.searchParams.set(xn,ed()),a.searchParams.set(En,process.versions.node);let o=e.getFrameworks();return o.length>0&&(i.searchParams.set(At,o[0].name),a.searchParams.set(At,o[0].name)),i.searchParams.set("redirect_url",a.href),i.href}})}function Bu(e,t){let r=e.getAppRootDir(),n=Ro(r,"node_modules",".builder"),i=Ro(n,"data.json");if(Ru(i))try{let a=Nu(i,"utf8"),o=JSON.parse(a);t=Object.assign(o.credentials,t)}catch(a){Ze.captureException(a),console.error("Failed to store credentials",a)}else td(n,{recursive:!0});nd(i,JSON.stringify({credentials:t},null,2))}function sd(e){let t=e.getAppRootDir(),r=Ro(t,"node_modules",".builder","data.json");if(Ru(r))try{let n=Nu(r,"utf8");return JSON.parse(n).credentials}catch(n){Ze.captureException(n),console.error("Failed to load credentials",n)}return{}}async function ku(e){let{default:t}=await import("open"),r,n,i,a=new Promise((c,l)=>{r=c,n=l}),o=Zf((c,l)=>e.requestListener(e.port,c,l,r,n)),s=()=>{u(),o&&("closeAllConnections"in o&&o.closeAllConnections(),o.close(c=>{c&&(Ze.captureException(c),console.error(c))}))};process.on("uncaughtExceptionMonitor",s),process.on("unhandledRejection",s),process.on("SIGINT",s),process.on("SIGTERM",s),process.on("exit",s);let u=()=>{process.removeListener("uncaughtExceptionMonitor",s),process.removeListener("unhandledRejection",s),process.removeListener("SIGINT",s),process.removeListener("SIGTERM",s),process.removeListener("exit",s)};try{o.listen(e.port,()=>{let l=e.onListen(e.port);j.warn(`Required authenticating with ${e.name}
|
|
1521
|
+
OPEN: ${(0,pt.dim)(l)}`),i=nr(),i.start(`Waiting for ${e.name} authentication`),t(l,{wait:!1})});let c=await a;return i&&i.stop(`Authenticated with ${e.name} successfully`),c}catch(c){throw i&&(i.stop(`Failed to authenticate with ${e.name}.`,-1),xo("auth")),console.error(c),Ze.captureException(c),s(),c}finally{s()}}async function Ou(e,t,r,n){try{if(!e)return Wt(r,n,400,"Builder context closed");let i=md(r);if(i.pathname===sr){if(r.method==="POST"){let a=await pd(r);if(a)try{let o=await oi(e,JSON.parse(a));return $u(r,n,200,o)}catch(o){e.debug("Dev API Error",o.stack||o.message||o);let s={errors:[String(o.message||o)]};return $u(r,n,500,s)}}else if(r.method==="OPTIONS"){let a={"Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Cache-Control, X-Builder-Devtools-Version"},o=r.headers.origin;o&&o!=="null"?Lu(new URL(o))&&(a["Access-Control-Allow-Origin"]=o):a["Access-Control-Allow-Origin"]="*",n.writeHead(200,a),n.end();return}return Wt(r,n,405,`${sr} is an API endpoint used only during development by the Builder.io Devtools client-side script`)}if(i.pathname===ur)return ud(r,n,200,await ii(e));if(i.pathname===ko){let a=i.searchParams.get(ar);return a?ld(n,302,await ui(e,a)):Wt(r,n,400,`Missing ${ar} querystring`)}if(i.pathname===ft)return cd(r,n,200,await ai(e));if(i.pathname===$o){await ir(e,{_:[]},{});let a=await Pu(e),{figmaBuilderLinks:o,foundErrors:s}=await Iu({force:!0,mappingFiles:a,sys:e,print:!1});return Cn(r,n,200,"application/json",JSON.stringify({figmaBuilderLinks:o,foundErrors:s,version:2,local:!0},null,2))}return i.pathname===dt?(e.debug(`Close Dev Tools Server Requested: ${i.href}`),setTimeout(()=>{try{t.close(a=>{e.debug(`Dev Tools Server Closed Error: ${a}`)})}catch(a){e.debug(`Error closing devtools server: ${a}`)}},20),Wt(r,n,200,"Closing Dev Tools Server")):Wt(r,n,404,"Not found")}catch(i){return console.error("Dev Server Error",i),Wt(r,n,500,`Dev Server Error: ${i}`)}}function $u(e,t,r,n){Cn(e,t,r,"application/json",JSON.stringify(n))}function ud(e,t,r,n){Cn(e,t,r,"application/javascript",n)}function cd(e,t,r,n){Cn(e,t,r,"text/html",n)}function Wt(e,t,r,n){Cn(e,t,r,"text/plain",n)}function Cn(e,t,r,n,i){let a={"Content-Type":`${n}; charset=utf-8`,"Cache-Control":"no-cache, no-store, must-revalidate","X-Builder-Devtools-Version":"1.5.11"},o=e.headers.origin;o&&o!=="null"?Lu(new URL(o))&&(a["Access-Control-Allow-Origin"]=o):a["Access-Control-Allow-Origin"]="*",t.writeHead(r,a),t.end(i)}function Lu(e){return e.hostname==="localhost"||e.origin==="https://builder.io"||e.origin==="https://www.builder.io"||e.origin.endsWith(".builder.io")?!0:e.port===""?!1:e.port!=="80"&&e.port!=="443"}function ld(e,t,r){e.writeHead(t,{Location:r}),e.end()}async function pd(e){let t="";for await(let r of e)t+=r;return t}function md(e){let t=e.url||"/";return new URL(t,`http://${e.headers.host}`)}async function _u(e){if(globalThis.__builderDevToolsServer)return e.debug("reusing existing devtools server"),globalThis.__builderDevToolsServer.setContext(e),globalThis.__builderDevToolsServer;let t=await Dd(e),r=fd((i,a)=>{Ou(e,r,i,a)}),n=()=>new Promise((i,a)=>{r.listening?(e.debug(`closing devtools server on port ${t}`),r.close(o=>{e=null,o?(e.debug(`error closing devtools server on port ${t}`),a(o)):(e&&e.debug(`closed devtools server on port ${t}`),i())})):(e.debug(`devtools server on port ${t} not listening`),i())});return process.once("SIGTERM",n),process.once("SIGINT",n),process.env.CI!=="true"&&process.stdin.on("end",n),globalThis.__builderDevToolsServer={url:new URL(`http://localhost:${t}`).href,port:t,setContext:i=>{e.debug(`set devtools context on server ${t}`),e=i},close:async()=>{globalThis.__builderDevToolsServer=null,await n()}},new Promise(i=>{r.listen(t,()=>{e.debug(`started devtools server on port ${t}`),i(globalThis.__builderDevToolsServer)})})}function Dd(e){return new Promise(t=>{let r=e.port;try{dd({hostname:"localhost",port:r,path:dt,method:"GET"},i=>{i.on("end",()=>{e.debug(`${dt} - Response ended`),t(r)})}).on("error",i=>{e.debug(`${dt} - No response ${i}`),t(r)}).end()}catch(n){e.debug(`${dt} - Error ${n}`),t(r)}})}async function Os(e){let t={getPastSyncInfo:()=>null,resyncSnippet:()=>null,...e,devToolsServerUrl:"",isValid:!1,publicApiKey:"",serverShouldRestart:!1,port:e.port||5273,ignoreMissingConfig:!1},r=e.getFrameworks().map(a=>a.name).join(", ");t.debug(`create devtools ${ju} [${r}]`);let n=await _u(t);return t.devToolsServerUrl=n.url,t.port=n.port,{getUrl:()=>t.devToolsServerUrl}}var ju="1.5.11";export{Os as createDevToolsServer,ju as version};
|