builder.io 1.6.68 → 1.6.70
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 +263 -262
- package/cli/index.cjs.map +4 -4
- package/core/index.cjs +1 -1
- package/core/index.mjs +1 -1
- package/node/index.cjs +1 -1
- package/node/index.mjs +1 -1
- package/package.json +1 -1
- package/server/index.cjs +174 -174
- package/server/index.mjs +173 -173
- package/types/cli/code-tools.d.ts +2 -2
- package/types/cli/code.d.ts +1 -1
- package/types/cli/codegen.d.ts +1 -0
- package/types/cli/index.d.ts +2 -0
- package/types/cli/launch/helpers.d.ts +1 -0
- package/types/cli/launch.d.ts +7 -0
- package/types/tsconfig.tsbuildinfo +1 -1
package/server/index.cjs
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
"use strict";var Pu=Object.create;var Ar=Object.defineProperty;var Tu=Object.getOwnPropertyDescriptor;var Iu=Object.getOwnPropertyNames;var Ru=Object.getPrototypeOf,Bu=Object.prototype.hasOwnProperty;var oe=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ku=(e,t)=>{for(var n in t)Ar(e,n,{get:t[n],enumerable:!0})},Ki=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Iu(t))!Bu.call(e,o)&&o!==n&&Ar(e,o,{get:()=>t[o],enumerable:!(r=Tu(t,o))||r.enumerable});return e};var T=(e,t,n)=>(n=e!=null?Pu(Ru(e)):{},Ki(t||!e||!e.__esModule?Ar(n,"default",{value:e,enumerable:!0}):n,e)),Nu=e=>Ki(Ar({},"__esModule",{value:!0}),e);var qi=oe((Od,Wi)=>{"use strict";Wi.exports=function(){if(process.env.npm_config_user_agent)return Ou(process.env.npm_config_user_agent)};function Ou(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 Nr=oe((Cf,bo)=>{"use strict";var bn="\x1B",Y=`${bn}[`,Qu="\x07",Sn={to(e,t){return t?`${Y}${t+1};${e+1}H`:`${Y}${e+1}G`},move(e,t){let n="";return e<0?n+=`${Y}${-e}D`:e>0&&(n+=`${Y}${e}C`),t<0?n+=`${Y}${-t}A`:t>0&&(n+=`${Y}${t}B`),n},up:(e=1)=>`${Y}${e}A`,down:(e=1)=>`${Y}${e}B`,forward:(e=1)=>`${Y}${e}C`,backward:(e=1)=>`${Y}${e}D`,nextLine:(e=1)=>`${Y}E`.repeat(e),prevLine:(e=1)=>`${Y}F`.repeat(e),left:`${Y}G`,hide:`${Y}?25l`,show:`${Y}?25h`,save:`${bn}7`,restore:`${bn}8`},Xu={up:(e=1)=>`${Y}S`.repeat(e),down:(e=1)=>`${Y}T`.repeat(e)},Zu={screen:`${Y}2J`,up:(e=1)=>`${Y}1J`.repeat(e),down:(e=1)=>`${Y}J`.repeat(e),line:`${Y}2K`,lineEnd:`${Y}K`,lineStart:`${Y}1K`,lines(e){let t="";for(let n=0;n<e;n++)t+=this.line+(n<e-1?Sn.up():"");return e&&(t+=Sn.left),t}};bo.exports={cursor:Sn,scroll:Xu,erase:Zu,beep:Qu}});var et=oe((xf,vn)=>{var Or=process||{},So=Or.argv||[],$r=Or.env||{},el=!($r.NO_COLOR||So.includes("--no-color"))&&(!!$r.FORCE_COLOR||So.includes("--color")||Or.platform==="win32"||(Or.stdout||{}).isTTY&&$r.TERM!=="dumb"||!!$r.CI),tl=(e,t,n=e)=>r=>{let o=""+r,s=o.indexOf(t,e.length);return~s?e+rl(o,t,n,s)+t:e+o+t},rl=(e,t,n,r)=>{let o="",s=0;do o+=e.substring(s,r)+n,s=r+t.length,r=e.indexOf(t,s);while(~r);return o+e.substring(s)},vo=(e=el)=>{let t=e?tl:()=>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")}};vn.exports=vo();vn.exports.createColors=vo});var ua=oe((p0,Hr)=>{Hr.exports.Space_Separator=/[\u1680\u2000-\u200A\u202F\u205F\u3000]/;Hr.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]/;Hr.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 Zn=oe((m0,la)=>{var Xn=ua();la.exports={isSpaceSeparator(e){return typeof e=="string"&&Xn.Space_Separator.test(e)},isIdStartChar(e){return typeof e=="string"&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="$"||e==="_"||Xn.ID_Start.test(e))},isIdContinueChar(e){return typeof e=="string"&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e>="0"&&e<="9"||e==="$"||e==="_"||e==="\u200C"||e==="\u200D"||Xn.ID_Continue.test(e))},isDigit(e){return typeof e=="string"&&/[0-9]/.test(e)},isHexDigit(e){return typeof e=="string"&&/[0-9A-Fa-f]/.test(e)}}});var fa=oe((d0,da)=>{var re=Zn(),ti,de,it,Qr,gt,ke,ne,ii,Cr;da.exports=function(t,n){ti=String(t),de="start",it=[],Qr=0,gt=1,ke=0,ne=void 0,ii=void 0,Cr=void 0;do ne=qp(),Yp[de]();while(ne.type!=="eof");return typeof n=="function"?ri({"":Cr},"",n):Cr};function ri(e,t,n){let r=e[t];if(r!=null&&typeof r=="object")if(Array.isArray(r))for(let o=0;o<r.length;o++){let s=String(o),i=ri(r,s,n);i===void 0?delete r[s]:Object.defineProperty(r,s,{value:i,writable:!0,enumerable:!0,configurable:!0})}else for(let o in r){let s=ri(r,o,n);s===void 0?delete r[o]:Object.defineProperty(r,o,{value:s,writable:!0,enumerable:!0,configurable:!0})}return n.call(e,t,r)}var R,P,hr,nt,k;function qp(){for(R="default",P="",hr=!1,nt=1;;){k=ot();let e=pa[R]();if(e)return e}}function ot(){if(ti[Qr])return String.fromCodePoint(ti.codePointAt(Qr))}function x(){let e=ot();return e===`
|
|
2
|
-
`?(gt++,ke=0):e?ke+=e.length:ke++,e&&(
|
|
3
|
-
`:case"\r":case"\u2028":case"\u2029":x();return;case"/":x(),R="comment";return;case void 0:return x(),q("eof")}if(
|
|
4
|
-
`:case"\r":case"\u2028":case"\u2029":x(),R="default";return;case void 0:return x(),q("eof")}x()},value(){switch(k){case"{":case"[":return q("punctuator",x());case"n":return x(),Pt("ull"),q("null",null);case"t":return x(),Pt("rue"),q("boolean",!0);case"f":return x(),Pt("alse"),q("boolean",!1);case"-":case"+":x()==="-"&&(
|
|
5
|
-
`:case"\r":throw J(x());case"\u2028":case"\u2029":Qp(k);break;case void 0:throw J(x())}P+=x()},start(){switch(k){case"{":case"[":return q("punctuator",x())}R="value"},beforePropertyName(){switch(k){case"$":case"_":P=x(),R="identifierName";return;case"\\":x(),R="identifierNameStartEscape";return;case"}":return q("punctuator",x());case'"':case"'":
|
|
6
|
-
`;case"r":return x(),"\r";case"t":return x()," ";case"v":return x(),"\v";case"0":if(x(),
|
|
7
|
-
`:case"\u2028":case"\u2029":return x(),"";case"\r":return x(),
|
|
8
|
-
`&&x(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":throw J(x());case void 0:throw J(x())}return x()}function Hp(){let e="",t=
|
|
1
|
+
"use strict";var Pu=Object.create;var Pn=Object.defineProperty;var Tu=Object.getOwnPropertyDescriptor;var Iu=Object.getOwnPropertyNames;var Ru=Object.getPrototypeOf,Bu=Object.prototype.hasOwnProperty;var ie=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ku=(e,t)=>{for(var r in t)Pn(e,r,{get:t[r],enumerable:!0})},zo=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Iu(t))!Bu.call(e,i)&&i!==r&&Pn(e,i,{get:()=>t[i],enumerable:!(n=Tu(t,i))||n.enumerable});return e};var T=(e,t,r)=>(r=e!=null?Pu(Ru(e)):{},zo(t||!e||!e.__esModule?Pn(r,"default",{value:e,enumerable:!0}):r,e)),Nu=e=>zo(Pn({},"__esModule",{value:!0}),e);var Jo=ie((Od,qo)=>{"use strict";qo.exports=function(){if(process.env.npm_config_user_agent)return Ou(process.env.npm_config_user_agent)};function Ou(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 $n=ie((Cf,bi)=>{"use strict";var br="\x1B",Y=`${br}[`,Qu="\x07",Sr={to(e,t){return t?`${Y}${t+1};${e+1}H`:`${Y}${e+1}G`},move(e,t){let r="";return e<0?r+=`${Y}${-e}D`:e>0&&(r+=`${Y}${e}C`),t<0?r+=`${Y}${-t}A`:t>0&&(r+=`${Y}${t}B`),r},up:(e=1)=>`${Y}${e}A`,down:(e=1)=>`${Y}${e}B`,forward:(e=1)=>`${Y}${e}C`,backward:(e=1)=>`${Y}${e}D`,nextLine:(e=1)=>`${Y}E`.repeat(e),prevLine:(e=1)=>`${Y}F`.repeat(e),left:`${Y}G`,hide:`${Y}?25l`,show:`${Y}?25h`,save:`${br}7`,restore:`${br}8`},Xu={up:(e=1)=>`${Y}S`.repeat(e),down:(e=1)=>`${Y}T`.repeat(e)},Zu={screen:`${Y}2J`,up:(e=1)=>`${Y}1J`.repeat(e),down:(e=1)=>`${Y}J`.repeat(e),line:`${Y}2K`,lineEnd:`${Y}K`,lineStart:`${Y}1K`,lines(e){let t="";for(let r=0;r<e;r++)t+=this.line+(r<e-1?Sr.up():"");return e&&(t+=Sr.left),t}};bi.exports={cursor:Sr,scroll:Xu,erase:Zu,beep:Qu}});var et=ie((xf,vr)=>{var Ln=process||{},Si=Ln.argv||[],On=Ln.env||{},el=!(On.NO_COLOR||Si.includes("--no-color"))&&(!!On.FORCE_COLOR||Si.includes("--color")||Ln.platform==="win32"||(Ln.stdout||{}).isTTY&&On.TERM!=="dumb"||!!On.CI),tl=(e,t,r=e)=>n=>{let i=""+n,s=i.indexOf(t,e.length);return~s?e+nl(i,t,r,s)+t:e+i+t},nl=(e,t,r,n)=>{let i="",s=0;do i+=e.substring(s,n)+r,s=n+t.length,n=e.indexOf(t,s);while(~n);return i+e.substring(s)},vi=(e=el)=>{let t=e?tl:()=>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")}};vr.exports=vi();vr.exports.createColors=vi});var ua=ie((px,Yn)=>{Yn.exports.Space_Separator=/[\u1680\u2000-\u200A\u202F\u205F\u3000]/;Yn.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]/;Yn.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=ie((mx,la)=>{var Xr=ua();la.exports={isSpaceSeparator(e){return typeof e=="string"&&Xr.Space_Separator.test(e)},isIdStartChar(e){return typeof e=="string"&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="$"||e==="_"||Xr.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"||Xr.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 fa=ie((dx,da)=>{var ne=Zr(),to,de,ot,Xn,gt,ke,re,oo,xn;da.exports=function(t,r){to=String(t),de="start",ot=[],Xn=0,gt=1,ke=0,re=void 0,oo=void 0,xn=void 0;do re=qp(),Yp[de]();while(re.type!=="eof");return typeof r=="function"?no({"":xn},"",r):xn};function no(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 s=String(i),o=no(n,s,r);o===void 0?delete n[s]:Object.defineProperty(n,s,{value:o,writable:!0,enumerable:!0,configurable:!0})}else for(let i in n){let s=no(n,i,r);s===void 0?delete n[i]:Object.defineProperty(n,i,{value:s,writable:!0,enumerable:!0,configurable:!0})}return r.call(e,t,n)}var R,P,Cn,rt,k;function qp(){for(R="default",P="",Cn=!1,rt=1;;){k=it();let e=pa[R]();if(e)return e}}function it(){if(to[Xn])return String.fromCodePoint(to.codePointAt(Xn))}function x(){let e=it();return e===`
|
|
2
|
+
`?(gt++,ke=0):e?ke+=e.length:ke++,e&&(Xn+=e.length),e}var pa={default(){switch(k){case" ":case"\v":case"\f":case" ":case"\xA0":case"\uFEFF":case`
|
|
3
|
+
`:case"\r":case"\u2028":case"\u2029":x();return;case"/":x(),R="comment";return;case void 0:return x(),q("eof")}if(ne.isSpaceSeparator(k)){x();return}return pa[de]()},comment(){switch(k){case"*":x(),R="multiLineComment";return;case"/":x(),R="singleLineComment";return}throw J(x())},multiLineComment(){switch(k){case"*":x(),R="multiLineCommentAsterisk";return;case void 0:throw J(x())}x()},multiLineCommentAsterisk(){switch(k){case"*":x();return;case"/":x(),R="default";return;case void 0:throw J(x())}x(),R="multiLineComment"},singleLineComment(){switch(k){case`
|
|
4
|
+
`:case"\r":case"\u2028":case"\u2029":x(),R="default";return;case void 0:return x(),q("eof")}x()},value(){switch(k){case"{":case"[":return q("punctuator",x());case"n":return x(),Pt("ull"),q("null",null);case"t":return x(),Pt("rue"),q("boolean",!0);case"f":return x(),Pt("alse"),q("boolean",!1);case"-":case"+":x()==="-"&&(rt=-1),R="sign";return;case".":P=x(),R="decimalPointLeading";return;case"0":P=x(),R="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":P=x(),R="decimalInteger";return;case"I":return x(),Pt("nfinity"),q("numeric",1/0);case"N":return x(),Pt("aN"),q("numeric",NaN);case'"':case"'":Cn=x()==='"',P="",R="string";return}throw J(x())},identifierNameStartEscape(){if(k!=="u")throw J(x());x();let e=ro();switch(e){case"$":case"_":break;default:if(!ne.isIdStartChar(e))throw ca();break}P+=e,R="identifierName"},identifierName(){switch(k){case"$":case"_":case"\u200C":case"\u200D":P+=x();return;case"\\":x(),R="identifierNameEscape";return}if(ne.isIdContinueChar(k)){P+=x();return}return q("identifier",P)},identifierNameEscape(){if(k!=="u")throw J(x());x();let e=ro();switch(e){case"$":case"_":case"\u200C":case"\u200D":break;default:if(!ne.isIdContinueChar(e))throw ca();break}P+=e,R="identifierName"},sign(){switch(k){case".":P=x(),R="decimalPointLeading";return;case"0":P=x(),R="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":P=x(),R="decimalInteger";return;case"I":return x(),Pt("nfinity"),q("numeric",rt*(1/0));case"N":return x(),Pt("aN"),q("numeric",NaN)}throw J(x())},zero(){switch(k){case".":P+=x(),R="decimalPoint";return;case"e":case"E":P+=x(),R="decimalExponent";return;case"x":case"X":P+=x(),R="hexadecimal";return}return q("numeric",rt*0)},decimalInteger(){switch(k){case".":P+=x(),R="decimalPoint";return;case"e":case"E":P+=x(),R="decimalExponent";return}if(ne.isDigit(k)){P+=x();return}return q("numeric",rt*Number(P))},decimalPointLeading(){if(ne.isDigit(k)){P+=x(),R="decimalFraction";return}throw J(x())},decimalPoint(){switch(k){case"e":case"E":P+=x(),R="decimalExponent";return}if(ne.isDigit(k)){P+=x(),R="decimalFraction";return}return q("numeric",rt*Number(P))},decimalFraction(){switch(k){case"e":case"E":P+=x(),R="decimalExponent";return}if(ne.isDigit(k)){P+=x();return}return q("numeric",rt*Number(P))},decimalExponent(){switch(k){case"+":case"-":P+=x(),R="decimalExponentSign";return}if(ne.isDigit(k)){P+=x(),R="decimalExponentInteger";return}throw J(x())},decimalExponentSign(){if(ne.isDigit(k)){P+=x(),R="decimalExponentInteger";return}throw J(x())},decimalExponentInteger(){if(ne.isDigit(k)){P+=x();return}return q("numeric",rt*Number(P))},hexadecimal(){if(ne.isHexDigit(k)){P+=x(),R="hexadecimalInteger";return}throw J(x())},hexadecimalInteger(){if(ne.isHexDigit(k)){P+=x();return}return q("numeric",rt*Number(P))},string(){switch(k){case"\\":x(),P+=Jp();return;case'"':if(Cn)return x(),q("string",P);P+=x();return;case"'":if(!Cn)return x(),q("string",P);P+=x();return;case`
|
|
5
|
+
`:case"\r":throw J(x());case"\u2028":case"\u2029":Qp(k);break;case void 0:throw J(x())}P+=x()},start(){switch(k){case"{":case"[":return q("punctuator",x())}R="value"},beforePropertyName(){switch(k){case"$":case"_":P=x(),R="identifierName";return;case"\\":x(),R="identifierNameStartEscape";return;case"}":return q("punctuator",x());case'"':case"'":Cn=x()==='"',R="string";return}if(ne.isIdStartChar(k)){P+=x(),R="identifierName";return}throw J(x())},afterPropertyName(){if(k===":")return q("punctuator",x());throw J(x())},beforePropertyValue(){R="value"},afterPropertyValue(){switch(k){case",":case"}":return q("punctuator",x())}throw J(x())},beforeArrayValue(){if(k==="]")return q("punctuator",x());R="value"},afterArrayValue(){switch(k){case",":case"]":return q("punctuator",x())}throw J(x())},end(){throw J(x())}};function q(e,t){return{type:e,value:t,line:gt,column:ke}}function Pt(e){for(let t of e){if(it()!==t)throw J(x());x()}}function Jp(){switch(it()){case"b":return x(),"\b";case"f":return x(),"\f";case"n":return x(),`
|
|
6
|
+
`;case"r":return x(),"\r";case"t":return x()," ";case"v":return x(),"\v";case"0":if(x(),ne.isDigit(it()))throw J(x());return"\0";case"x":return x(),Hp();case"u":return x(),ro();case`
|
|
7
|
+
`:case"\u2028":case"\u2029":return x(),"";case"\r":return x(),it()===`
|
|
8
|
+
`&&x(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":throw J(x());case void 0:throw J(x())}return x()}function Hp(){let e="",t=it();if(!ne.isHexDigit(t)||(e+=x(),t=it(),!ne.isHexDigit(t)))throw J(x());return e+=x(),String.fromCodePoint(parseInt(e,16))}function ro(){let e="",t=4;for(;t-- >0;){let r=it();if(!ne.isHexDigit(r))throw J(x());e+=x()}return String.fromCodePoint(parseInt(e,16))}var Yp={start(){if(re.type==="eof")throw Tt();eo()},beforePropertyName(){switch(re.type){case"identifier":case"string":oo=re.value,de="afterPropertyName";return;case"punctuator":Qn();return;case"eof":throw Tt()}},afterPropertyName(){if(re.type==="eof")throw Tt();de="beforePropertyValue"},beforePropertyValue(){if(re.type==="eof")throw Tt();eo()},beforeArrayValue(){if(re.type==="eof")throw Tt();if(re.type==="punctuator"&&re.value==="]"){Qn();return}eo()},afterPropertyValue(){if(re.type==="eof")throw Tt();switch(re.value){case",":de="beforePropertyName";return;case"}":Qn()}},afterArrayValue(){if(re.type==="eof")throw Tt();switch(re.value){case",":de="beforeArrayValue";return;case"]":Qn()}},end(){}};function eo(){let e;switch(re.type){case"punctuator":switch(re.value){case"{":e={};break;case"[":e=[];break}break;case"null":case"boolean":case"numeric":case"string":e=re.value;break}if(xn===void 0)xn=e;else{let t=ot[ot.length-1];Array.isArray(t)?t.push(e):Object.defineProperty(t,oo,{value:e,writable:!0,enumerable:!0,configurable:!0})}if(e!==null&&typeof e=="object")ot.push(e),Array.isArray(e)?de="beforeArrayValue":de="beforePropertyName";else{let t=ot[ot.length-1];t==null?de="end":Array.isArray(t)?de="afterArrayValue":de="afterPropertyValue"}}function Qn(){ot.pop();let e=ot[ot.length-1];e==null?de="end":Array.isArray(e)?de="afterArrayValue":de="afterPropertyValue"}function J(e){return Zn(e===void 0?`JSON5: invalid end of input at ${gt}:${ke}`:`JSON5: invalid character '${ma(e)}' at ${gt}:${ke}`)}function Tt(){return Zn(`JSON5: invalid end of input at ${gt}:${ke}`)}function ca(){return ke-=5,Zn(`JSON5: invalid identifier character at ${gt}:${ke}`)}function Qp(e){console.warn(`JSON5: '${ma(e)}' in strings is not valid ECMAScript; consider escaping`)}function ma(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 Zn(e){let t=new SyntaxError(e);return t.lineNumber=gt,t.columnNumber=ke,t}});var Da=ie((fx,ga)=>{var io=Zr();ga.exports=function(t,r,n){let i=[],s="",o,a,u="",l;if(r!=null&&typeof r=="object"&&!Array.isArray(r)&&(n=r.space,l=r.quote,r=r.replacer),typeof r=="function")a=r;else if(Array.isArray(r)){o=[];for(let f of r){let h;typeof f=="string"?h=f:(typeof f=="number"||f instanceof String||f instanceof Number)&&(h=String(f)),h!==void 0&&o.indexOf(h)<0&&o.push(h)}}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)),c("",{"":t});function c(f,h){let d=h[f];switch(d!=null&&(typeof d.toJSON5=="function"?d=d.toJSON5(f):typeof d.toJSON=="function"&&(d=d.toJSON(f))),a&&(d=a.call(h,f,d)),d instanceof Number?d=Number(d):d instanceof String?d=String(d):d instanceof Boolean&&(d=d.valueOf()),d){case null:return"null";case!0:return"true";case!1:return"false"}if(typeof d=="string")return p(d,!1);if(typeof d=="number")return String(d);if(typeof d=="object")return Array.isArray(d)?g(d):m(d)}function p(f){let h={"'":.1,'"':.2},d={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"},y="";for(let w=0;w<f.length;w++){let b=f[w];switch(b){case"'":case'"':h[b]++,y+=b;continue;case"\0":if(io.isDigit(f[w+1])){y+="\\x00";continue}}if(d[b]){y+=d[b];continue}if(b<" "){let E=b.charCodeAt(0).toString(16);y+="\\x"+("00"+E).substring(E.length);continue}y+=b}let F=l||Object.keys(h).reduce((w,b)=>h[w]<h[b]?w:b);return y=y.replace(new RegExp(F,"g"),d[F]),F+y+F}function m(f){if(i.indexOf(f)>=0)throw TypeError("Converting circular structure to JSON5");i.push(f);let h=s;s=s+u;let d=o||Object.keys(f),y=[];for(let w of d){let b=c(w,f);if(b!==void 0){let E=D(w)+":";u!==""&&(E+=" "),E+=b,y.push(E)}}let F;if(y.length===0)F="{}";else{let w;if(u==="")w=y.join(","),F="{"+w+"}";else{let b=`,
|
|
9
9
|
`+s;w=y.join(b),F=`{
|
|
10
10
|
`+s+w+`,
|
|
11
|
-
`+h+"}"}}return
|
|
11
|
+
`+h+"}"}}return i.pop(),s=h,F}function D(f){if(f.length===0)return p(f,!0);let h=String.fromCodePoint(f.codePointAt(0));if(!io.isIdStartChar(h))return p(f,!0);for(let d=h.length;d<f.length;d++)if(!io.isIdContinueChar(String.fromCodePoint(f.codePointAt(d))))return p(f,!0);return f}function g(f){if(i.indexOf(f)>=0)throw TypeError("Converting circular structure to JSON5");i.push(f);let h=s;s=s+u;let d=[];for(let F=0;F<f.length;F++){let w=c(String(F),f);d.push(w!==void 0?w:"null")}let y;if(d.length===0)y="[]";else if(u==="")y="["+d.join(",")+"]";else{let F=`,
|
|
12
12
|
`+s,w=d.join(F);y=`[
|
|
13
13
|
`+s+w+`,
|
|
14
|
-
`+h+"]"}return
|
|
15
|
-
`:
|
|
16
|
-
`}return""}var
|
|
17
|
-
`,getSourceFile:a=>{if(a=e.normalize(a),a.includes("node_modules")){let l=
|
|
18
|
-
${u}`)}else
|
|
14
|
+
`+h+"]"}return i.pop(),s=h,y}}});var Ca=ie((gx,ha)=>{var Xp=fa(),Zp=Da(),em={parse:Xp,stringify:Zp};ha.exports=em});var ao=ie(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.throwUnsupportedData=Dt.throwUnknownDataType=Dt.getType=void 0;function Aa(e){return Object.prototype.toString.call(e)}Dt.getType=Aa;function pm(e){throw new TypeError("unsupported data type: "+Aa(e))}Dt.throwUnknownDataType=pm;function mm(e){throw new TypeError("unsupported data type: "+e)}Dt.throwUnsupportedData=mm});var mo=ie(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});ae.s_to_num=ae.int_str_to_s=ae.num_to_s=ae.big_int_to_s=ae.int_to_s=ae.s_to_big_int=ae.s_to_int=void 0;var st="";for(let e=0;e<10;e++){let t=String.fromCharCode(48+e);st+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(65+e);st+=t}for(let e=0;e<26;e++){let t=String.fromCharCode(97+e);st+=t}var qt=st.length,lo={};for(let e=0;e<qt;e++){let t=st[e];lo[t]=e}function co(e){let t=0,r=1;for(let n=e.length-1;n>=0;n--){let i=e[n],s=lo[i];s*=r,t+=s,r*=qt}return t}ae.s_to_int=co;function Pa(e){let t=BigInt(0),r=BigInt(1),n=BigInt(qt);for(let i=e.length-1;i>=0;i--){let s=e[i],o=BigInt(lo[s]);o*=r,t+=o,r*=n}return t}ae.s_to_big_int=Pa;function po(e){if(e===0)return st[0];let t=[];for(;e!==0;){let r=e%qt,n=st[r];t.push(n),e-=r,e/=qt}return t.reverse().join("")}ae.int_to_s=po;function Ta(e){let t=BigInt(0),r=BigInt(qt);if(e===t)return st[0];let n=[];for(;e!==t;){let i=e%r,s=st[Number(i)];n.push(s),e/=r}return n.reverse().join("")}ae.big_int_to_s=Ta;function Ia(e){return e.split("").reverse().join("")}function Ra(e){if(e<0)return"-"+Ra(-e);let[t,r]=e.toString().split(".");if(!r)if(t.includes("e")){let[s,o]=t.split("e");t=s,r="0e"+o}else return po(e);let n;r&&([r,n]=r.split("e")),t=tr(t),r=Ia(r),r=tr(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=tr(n),i+=n}return i}ae.num_to_s=Ra;function tr(e){let t=+e;return t.toString()===e&&t+1!==t&&t-1!==t?po(t):":"+Ta(BigInt(e))}ae.int_str_to_s=tr;function uo(e){return e[0]===":"?Pa(e.substring(1)).toString():co(e).toString()}function Ba(e){if(e[0]==="-")return-Ba(e.substr(1));let[t,r,n]=e.split(".");if(!r)return co(t);t=uo(t),r=uo(r),r=Ia(r);let i=t+"."+r;if(n){i+="e";let s=!1;n[0]==="-"&&(s=!0,n=n.slice(1)),n=uo(n),i+=s?-n:+n}return+i}ae.s_to_num=Ba});var go=ie(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.decodeStr=ue.encodeStr=ue.decodeBool=ue.encodeBool=ue.decodeKey=ue.decodeNum=ue.encodeNum=void 0;var fo=mo();function dm(e){return"n|"+(0,fo.num_to_s)(e)}ue.encodeNum=dm;function fm(e){return e=e.replace("n|",""),(0,fo.s_to_num)(e)}ue.decodeNum=fm;function gm(e){return typeof e=="number"?e:(0,fo.s_to_int)(e)}ue.decodeKey=gm;function Dm(e){return e?"b|T":"b|F"}ue.encodeBool=Dm;function hm(e){switch(e){case"b|T":return!0;case"b|F":return!1}return!!e}ue.decodeBool=hm;function Cm(e){switch(e[0]+e[1]){case"b|":case"o|":case"n|":case"a|":case"s|":e="s|"+e}return e}ue.encodeStr=Cm;function xm(e){return e[0]+e[1]==="s|"?e.substr(2):e}ue.decodeStr=xm});var Do=ie(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.config=void 0;nr.config={sort_key:!1,error_on_nan:!1,error_on_infinite:!1}});var yo=ie(Ae=>{"use strict";Object.defineProperty(Ae,"__esModule",{value:!0});Ae.addValue=Ae.makeInMemoryMemory=Ae.makeInMemoryCache=Ae.makeInMemoryStore=Ae.memToValues=void 0;var xo=Do(),ho=ao(),Co=go(),ym=mo();function Em(e){return e.store.toArray()}Ae.memToValues=Em;function ka(){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}}}Ae.makeInMemoryStore=ka;function Na(){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}}}Ae.makeInMemoryCache=Na;function Fm(){return{store:ka(),cache:Na(),keyCount:0}}Ae.makeInMemoryMemory=Fm;function It(e,t){if(e.cache.hasValue(t))return e.cache.getValue(t);let r=e.keyCount++,n=(0,ym.num_to_s)(r);return e.store.add(t),e.cache.setValue(t,n),n}function wm(e,t){xo.config.sort_key&&t.sort();let r=t.join(",");if(e.cache.hasSchema(r))return e.cache.getSchema(r);let n=yn(e,t,void 0);return e.cache.setSchema(r,n),n}function yn(e,t,r){if(t===null)return"";switch(typeof t){case"undefined":if(Array.isArray(r))return yn(e,null,r);break;case"object":if(t===null)return It(e,null);if(Array.isArray(t)){let n="a";for(let i=0;i<t.length;i++){let s=t[i],o=s===null?"_":yn(e,s,t);n+="|"+o}return n==="a"&&(n="a|"),It(e,n)}else{let n=Object.keys(t);if(n.length===0)return It(e,"o|");let i="o",s=wm(e,n);i+="|"+s;for(let o of n){let a=t[o],u=yn(e,a,t);i+="|"+u}return It(e,i)}case"boolean":return It(e,(0,Co.encodeBool)(t));case"number":return Number.isNaN(t)?(xo.config.error_on_nan&&(0,ho.throwUnsupportedData)("[number NaN]"),""):Number.POSITIVE_INFINITY===t||Number.NEGATIVE_INFINITY===t?(xo.config.error_on_infinite&&(0,ho.throwUnsupportedData)("[number Infinity]"),""):It(e,(0,Co.encodeNum)(t));case"string":return It(e,(0,Co.encodeStr)(t))}return(0,ho.throwUnknownDataType)(t)}Ae.addValue=yn});var Fo=ie(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});ht.decompress=ht.decode=ht.compress=void 0;var bm=ao(),rr=go(),Eo=yo();function Sm(e){let t=(0,Eo.makeInMemoryMemory)(),r=(0,Eo.addValue)(t,e,void 0);return[(0,Eo.memToValues)(t),r]}ht.compress=Sm;function vm(e,t){if(t==="o|")return{};let r={},n=t.split("|"),i=n[1],s=En(e,i),o=n.length;o-2===1&&!Array.isArray(s)&&(s=[s]);for(let a=2;a<o;a++){let u=s[a-2],l=n[a];l=En(e,l),r[u]=l}return r}function Am(e,t){if(t==="a|")return[];let r=t.split("|"),n=r.length-1,i=new Array(n);for(let s=0;s<n;s++){let o=r[s+1];o=En(e,o),i[s]=o}return i}function En(e,t){if(t===""||t==="_")return null;let r=(0,rr.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(0,rr.decodeBool)(n);case"o|":return vm(e,n);case"n|":return(0,rr.decodeNum)(n);case"a|":return Am(e,n);default:return(0,rr.decodeStr)(n)}}return(0,bm.throwUnknownDataType)(n)}ht.decode=En;function Pm(e){let[t,r]=e;return En(t,r)}ht.decompress=Pm});var Oa=ie(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.trimUndefinedRecursively=Jt.trimUndefined=void 0;function Tm(e){for(let t in e)e[t]===void 0&&delete e[t]}Jt.trimUndefined=Tm;function Im(e){$a(e,new Set)}Jt.trimUndefinedRecursively=Im;function $a(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)&&$a(n,t)}}});var Ma=ie(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});le.config=le.trimUndefinedRecursively=le.trimUndefined=le.addValue=le.decode=le.decompress=le.compress=void 0;var La=Fo();Object.defineProperty(le,"compress",{enumerable:!0,get:function(){return La.compress}});Object.defineProperty(le,"decompress",{enumerable:!0,get:function(){return La.decompress}});var Rm=Fo();Object.defineProperty(le,"decode",{enumerable:!0,get:function(){return Rm.decode}});var Bm=yo();Object.defineProperty(le,"addValue",{enumerable:!0,get:function(){return Bm.addValue}});var _a=Oa();Object.defineProperty(le,"trimUndefined",{enumerable:!0,get:function(){return _a.trimUndefined}});Object.defineProperty(le,"trimUndefinedRecursively",{enumerable:!0,get:function(){return _a.trimUndefinedRecursively}});var km=Do();Object.defineProperty(le,"config",{enumerable:!0,get:function(){return km.config}})});var cu=ie((IE,lu)=>{"use strict";var uu=require("child_process"),iu=uu.spawn,id=uu.exec;lu.exports=function(e,t,r){if(typeof t=="function"&&r===void 0&&(r=t,t=void 0),e=parseInt(e),Number.isNaN(e)){if(r)return r(new Error("pid must be a number"));throw new Error("pid must be a number")}var n={},i={};switch(n[e]=[],i[e]=1,process.platform){case"win32":id("taskkill /pid "+e+" /T /F",r);break;case"darwin":Oo(e,n,i,function(s){return iu("pgrep",["-P",s])},function(){su(n,t,r)});break;default:Oo(e,n,i,function(s){return iu("ps",["-o","pid","--no-headers","--ppid",s])},function(){su(n,t,r)});break}};function su(e,t,r){var n={};try{Object.keys(e).forEach(function(i){e[i].forEach(function(s){n[s]||(au(s,t),n[s]=1)}),n[i]||(au(i,t),n[i]=1)})}catch(i){if(r)return r(i);throw i}if(r)return r()}function au(e,t){try{process.kill(parseInt(e,10),t)}catch(r){if(r.code!=="ESRCH")throw r}}function Oo(e,t,r,n,i){var s=n(e),o="";s.stdout.on("data",function(l){var l=l.toString("ascii");o+=l});var a=function(u){if(delete r[e],u!=0){Object.keys(r).length==0&&i();return}o.match(/\d+/g).forEach(function(l){l=parseInt(l,10),t[e].push(l),t[l]=[],r[l]=1,Oo(l,t,r,n,i)})};s.on("close",a)}});var Rd={};ku(Rd,{createDevToolsServer:()=>To,version:()=>Ko});module.exports=Nu(Rd);var $u="1.6.70",De=process.env.OVERRIDE_VERSION??$u;var dr=require("http");var fr="preview-url";var Rt="framework",Tn="platform",In="node",Go="/~builder-connect",Ft="/~builder-connected",gr="/~builder-dev-tools",Dr="/~builder-dev-tools.js",wt="/~builder-dev-tools-close",Wo="/mappings";function N(e,t=""){return e.ts.createSourceFile("module.tsx",typeof t=="string"?t:"",e.ts.ScriptTarget.Latest,void 0)}function Rn(e,t=""){let r=N(e,t?.trim());if(r.statements.length===0)throw new Error(`No statements found in code: ${t}`);return r.statements[0]}function te(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 Yo=T(Jo(),1);function he(e){return e.endsWith(".mapper.tsx")||e.endsWith(".mapper.jsx")||e.endsWith(".mapper.ts")||e.endsWith(".mapper.js")||e.endsWith(".mapper.mjs")}function _(e,t,r){t=Ie(t),r=Ie(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=Ie(e.normalize(i)),i.startsWith(".")||(i="./"+i),i}function Ie(e){return e.startsWith("\\\\?\\")?e:e.replace(/\\/g,"/")}function bt(e,t){let r=e.extname(t),n=e.basename(t,r).split(/[\/\\]/),i=n[n.length-1];return Ho(i==="index"?e.basename(e.dirname(t)):i)}function Ho(e){return G(e).replace(/ /g,"")}function be(e,t){let r=e.extname(t),n=Ie(e.basename(t,r)).split("/").pop();return G(n==="index"?e.basename(e.dirname(t)):n)}function W(e,t){let r=Ie(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 M(e,t){let r=t,n=[];for(let i=0;i<2;i++){let s=e.basename(r);if(!s||s==="components")break;n.unshift(s),r=e.dirname(r)}return n.join("/")}function G(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 fe(e){return e.sort((t,r)=>t.name.toLocaleLowerCase().localeCompare(r.name.toLocaleLowerCase()))}async function z(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 Qo(e){return(await e.hash(e.getAppRootDir())).substring(0,8)}function Zt(e){return typeof e=="number"}function Bt(e){return typeof e=="boolean"}function me(e){return typeof e=="string"}function kt(e){return typeof e=="string"?/^[A-Z][A-Za-z0-9]*$/.test(e):!1}function Ce(e){return JSON.parse(JSON.stringify(e))}function Bn(e,t,r){for(let n of t)if(e.dirname(r).includes(n))return!0;return!1}function Xo(){try{let e=(0,Yo.default)();if(e?.name)return e.name}catch{}return"npm"}function Lu(){return process.platform.startsWith("win")}function xe(){return Lu()?'"@builder.io/dev-tools"':"builder.io"}function ye(e){let t=e.join(e.getAppRootDir(),"tsconfig.json");return e.exists(t)}var _u=["node_modules","dist","build","public"];async function Se(e,t){async function r(i,s){if(s>10)return;let o=await e.readdir(i);for(let a of o){if(_u.includes(a))continue;let u=e.join(i,a),l=await e.stat(u);if(l){if(l.isFile()&&a.startsWith("builder-registry."))return u;if(l.isDirectory()){let c=await r(u,s+1);if(c)return c}}}}let n=await r(e.getAppRootDir(),0);if(!n){let s=`builder-registry.${await ye(e)?"ts":"js"}`;return e.join(t,s)}return n}async function ct(e,t){let r=e.resolve("/");for(let n=0;n<20;n++){let i=e.join(t,"package.json"),s=await e.readFile(i);if(s)return JSON.parse(s);if(t===r)break;t=e.dirname(t)}return null}async function Zo(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 en(e,t,r){let n=await e.readdir(t);return n.includes(r)?e.join(t,r):(await Promise.all(n.map(async s=>{if(s.startsWith(".")||s==="node_modules")return;let o=e.join(t,s);if((await e.stat(o)).isDirectory()){let u=await en(e,o,r);if(u)return u}}))).find(s=>typeof s=="string")}async function Z(e,t,r){if(!Array.isArray(t)||t.length===0)throw new Error(`createTsProgram() Invalid filePaths: ${t}`);let n=await Zo(e,t[0]),i=e.join(n,"typescript","lib"),s=new Map,o={fileExists:a=>{if(a=e.normalize(a),a.includes("node_modules")){let u=tn.get(a);if(!u){try{e.statSync(a).isFile()?u={exists:!0,content:e.readFileSync(a)}:u={exists:!1}}catch{u={exists:!1}}tn.set(a,u)}return u.exists}if(!s.has(a))if(e.existsSync(a)){let l=e.statSync(a);s.set(a,l.isFile())}else s.set(a,!1);return s.get(a)},getCanonicalFileName:a=>e.normalize(a),getCurrentDirectory:()=>e.cwd(),getDefaultLibFileName:()=>e.join(i,"lib.d.ts"),getDefaultLibLocation:()=>i,getNewLine:()=>`
|
|
17
|
+
`,getSourceFile:a=>{if(a=e.normalize(a),a.includes("node_modules")){let l=tn.get(a);if(l)return N(e,l.content)}let u;try{u=e.readFileSync(a)}catch{console.error(`Could not read: ${a}`),u==null}if(u==null){let l=e.basename(a),c=e.extname(l).toLowerCase();if(a.startsWith(i)&&c===".ts"&&(u=ti.get(l),u==null&&typeof self<"u"&&typeof fetch=="function"))throw new Nn(l)}return a.includes("node_modules")&&(u?tn.set(a,{exists:!0,content:u}):tn.set(a,{exists:!1})),N(e,u)},readFile:a=>{let u=e.readFileSync(a);return typeof u=="string"?u:void 0},useCaseSensitiveFileNames:()=>!1,writeFile:()=>{}};for(;;)try{return Mu(e,o,t,r)}catch(a){if(a instanceof Nn){await ju(e,a.libName);continue}throw e.Sentry?.captureException(a),new Error(`createTsProgram() Could not create program for: ${t[0]}`,{cause:a})}}function Mu(e,t,r,n){let i={rootNames:[...r],host:t,options:{}},s=e.ts.findConfigFile(e.dirname(r[0]),o=>e.existsSync(o));if(s){let o=ei.get(s);if(!o){let a=e.ts.readConfigFile(s,u=>{let l=e.readFileSync(u);return typeof l=="string"?l:void 0});a.error?e.Sentry?.captureException(new Error("Error reading tsconfig for createTsProgram"),{extra:{error:a.error,tsConfigPath:s}}):(o=e.ts.parseJsonConfigFileContent(a.config,e.ts.sys||{useCaseSensitiveFileNames:!1,readDirectory:(l,c)=>e.readdirSync(l),fileExists:l=>e.existsSync(l),readFile:l=>e.readFileSync(l)||void 0},e.dirname(s),void 0,s).options,ei.set(s,o))}o&&(i.options=Ce(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 Nt(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 Nn=class{constructor(t){this.libName=t}};async function ju(e,t){let r=`https://cdn.jsdelivr.net/npm/typescript@${e.ts.version}/lib/${t}`;kn.has(t)||kn.set(t,fetch(r).then(n=>n.text()).then(n=>{ti.set(t,n)})),await kn.get(t),kn.delete(t)}var ti=new Map,kn=new Map,tn=new Map,ei=new Map;async function ni(e,t){let r=await e.readFile(t.filePath);return r==null?{diagnostics:[{messageText:`Error reading: ${t.filePath}`}],code:null,output:null}:hr(e,{code:r,filePath:t.filePath,compilerOptions:t.compilerOptions})}function hr(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}var Oe=require("fs/promises");var xr=require("os"),yr=T(require("path"),1),Vu=T(require("typescript"),1),Ku=T(require("launch-editor"),1);async function $t(e){let t=[],r=await ct(e,e.getRepoRootDir());if(r){let n=await oi(r,e);t.push(...n)}return t}async function oi(e,t){let r=[];if(e&&typeof e=="object"){let n=new Set(Object.keys({...e.dependencies,...e.devDependencies}));for(let i of Uu)if(n.has(i)&&!r.some(s=>s.name===i)){let s={name:i};ri.has(i)&&(s.version=await ri.get(i)(t)),r.push(s)}}return r}function Cr(e){let t=parseInt(e);return Number.isNaN(t)?void 0:t}var ri=new Map([["next",async e=>{if(!e.spawnSync)return;let t=Xo(),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 s=i[0].split("Next.js v")[1],[o,a,u]=s.split(".");return{major:Cr(o),minor:Cr(a),patch:Cr(u)}}]]),Uu=["@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"];var zu=T(require("@sentry/node"),1);var Gu=T(require("prettier"),1);function ii(){let e=(0,xr.homedir)();return yr.default.join(e,".config","builder","dev-tools.json")}function Er(e,t){return typeof e=="object"&&e!=null&&t in e}async function Ot(){let e=ii();try{let t=await(0,Oe.readFile)(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=ii();e=typeof e=="object"&&e!=null?e:{},await(0,Oe.mkdir)(yr.default.dirname(t),{recursive:!0}),await(0,Oe.writeFile)(t,JSON.stringify(e??{},null,2))}var A={gen1:"Gen 1",gen2:"Gen 2"},nn={CMS:"cms",VCP:"vcp",HYBRID:"hybrid"};var si=require("console"),ai=require("http"),ui=require("https");function Lt(e){let t=Date.now();return new Promise((r,n)=>{let s=Wu(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 a="";o.on("data",u=>{a+=u}),o.on("end",()=>{if((0,si.debug)(`${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(a))}catch(u){n(`Response from ${e.url.href} is not valid JSON: ${a}
|
|
18
|
+
${u}`)}else n(`Request to ${e.url.href} failed with status ${o.statusCode}: ${a}`)})}).on("error",o=>{n(`Error fetching ${e.url.href}, ${o}`)});e.body&&(s.setHeader("Content-Type","application/json"),s.write(e.body)),s.end()})}function Wu(e){if(e.protocol==="https:")return ui.request;if(e.protocol==="http:")return ai.request;throw new Error(`Unsupported protocol ${e.protocol}`)}async function li(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 Lt({url:t,method:"GET"}))[e.model]}async function ci(e,t){if(t.kind===nn.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 s=(await Lt({url:
|
|
23
|
+
}`};e.debug(`Get model id for model name "${t.model}"`);let s=(await Lt({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(!s)return e.debug(`No model found for model name "${t.model}"`),!1;e.debug(`Data query, modelId: "${s.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",s.id),o.searchParams.set("apiKey",t.publicApiKey);let a=await Lt({url:o,method:"GET"});return e.debug(`Data results (${a.results.length}): ${o.href}`),a.results.length>0}async function pi(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 Lt({url:r,method:"GET"});return e.debug(`get content results: ${n.results.length}`),n}async function mi(e,t){let r=new URL(`https://cdn.builder.io/api/v1/write/${t.model}`);e.debug(`writing "${t.model}" content:`,r.href),await Lt({url:r,method:"POST",headers:{Authorization:`Bearer ${t.privateAuthKey}`},body:t.body})}var _t="page",di="integration-welcome-screens",fi="8d9ee72a33344b4b867918b442ebd0af";async function gi(e,t){let r=await pi(e,{model:di,publicApiKey:fi,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=qu(t.publicApiKey,t.pathname,t.title,n);await mi(e,{privateAuthKey:t.privateAuthKey,model:_t,body:i})}function qu(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 Di(e,t,r,n){e.debug(`connect builder with public key: ${t}`),e.publicApiKey=t;let i=e.closeAppServer(),s=await e.setPublicApiKey({publicApiKey:t});if(s.modifiedType==="permission-error")return e.debug("permission error, failed to set public api key"),{success:!1,pathname:""};e.debug(`set public key: process.env.${s.envKey}=${t}`),process.env[s.envKey]=t;let o=await e.builderPageOptions();e.debug(`builder model: ${_t}, path: ${o.pathname}, template: ${o.templateContentId}`);let a=await ci(e,{model:_t,pageUrl:o.pathname,publicApiKey:t,privateAuthKey:r,kind:n});if(!a){await gi(e,{templateContentId:o.templateContentId,pathname:o.pathname,title:o.title,publicApiKey:t,privateAuthKey:r});let c=5,p=0;for(;!a&&p<c;){await new Promise(D=>setTimeout(D,1e3));let m=await li({model:_t,pageUrl:o.pathname,publicApiKey:t,privateAuthKey:r});p++,m&&m.length>0&&(a=!0)}}await i,e.debug("ensure builder setup");let u=[];n===nn.VCP?u=await e.ensureFigmaImportPage():u=await e.ensureBuilderSetup(),s.modifiedType&&u.push({filePath:s.file,modifiedType:s.modifiedType}),u.forEach(c=>{c.displayFilePath=e.relative(e.getAppRootDir(),c.filePath)}),u.sort((c,p)=>c.filePath.localeCompare(p.filePath)),u.length>0?(e.debug(`modified files: ${u.map(c=>c.displayFilePath).join(", ")}`),await e.restartAppServer(),await new Promise(c=>setTimeout(c,500))):e.debug("no modified files");let l={success:!0,pathname:o.localePathname||o.pathname,modifiedFiles:u,platform:e.platform(),kind:n};return n===nn.VCP&&(l.pathname="/"),e.debug(`connected builder: ${l.pathname}`),l}async function hi(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 Ci(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 Di(e,t.data.publicApiKey,t.data.privateAuthKey,t.data.kind);break}case"enableDevTools":{r.data=Yu(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 hi(e);break}case"loadComponent":{r.data=await e.loadComponent(t.data);break}case"getAllProjectFiles":{e.getAllProjectFiles?r.data=await e.getAllProjectFiles():r.errors=["getAllProjectFiles not implemented"];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":{wr(e,t.path)?r.data=await e.readdir(t.path,!0):r.errors=[`Invalid file request: ${t.path}`];break}case"readFile":{wr(e,t.path)?r.data=await e.readFile(t.path):r.errors=[`Invalid file request: ${t.path}`];break}case"writeFile":{wr(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 ni(e,t);break}case"transileModule":{r.data=hr(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 Ot();break}default:{r.errors=[`Unknown request type: ${JSON.stringify(t)}`];let n=t}}return r}function wr(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],!Hu.includes(i)))return!1}return Ju(e,t),!1}function Ju(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 Hu=[".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 Yu(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 xo(e){return Eo(e,`"use strict";(()=>{var fi=Object.create;var Mt=Object.defineProperty;var mi=Object.getOwnPropertyDescriptor;var vi=Object.getOwnPropertyNames;var gi=Object.getPrototypeOf,hi=Object.prototype.hasOwnProperty;var yi=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),bi=(t,e)=>{for(var r in e)Mt(t,r,{get:e[r],enumerable:!0})},Ei=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of vi(e))!hi.call(t,i)&&i!==r&&Mt(t,i,{get:()=>e[i],enumerable:!(n=mi(e,i))||n.enumerable});return t};var _i=(t,e,r)=>(r=t!=null?fi(gi(t)):{},Ei(e||!t||!t.__esModule?Mt(r,"default",{value:t,enumerable:!0}):r,t));var jn=yi((Qe,Ct)=>{(function(t,e){"use strict";var r="0.7.33",n="",i="?",o="function",s="undefined",u="object",d="string",p="major",a="model",c="name",l="type",f="vendor",m="version",_="architecture",b="console",v="mobile",y="tablet",T="smarttv",L="wearable",k="embedded",w=350,C="Amazon",R="Apple",K="ASUS",z="BlackBerry",Q="Browser",P="Chrome",Ce="Edge",ce="Firefox",_e="Google",Me="Huawei",Re="LG",Oe="Microsoft",Be="Motorola",Te="Opera",we="Samsung",ke="Sharp",fe="Sony",me="Xiaomi",Ve="Zebra",U="Facebook",et=function(S,O){var I={};for(var q in S)O[q]&&O[q].length%2===0?I[q]=O[q].concat(S[q]):I[q]=S[q];return I},tt=function(S){for(var O={},I=0;I<S.length;I++)O[S[I].toUpperCase()]=S[I];return O},Pr=function(S,O){return typeof S===d?Fe(O).indexOf(Fe(S))!==-1:!1},Fe=function(S){return S.toLowerCase()},di=function(S){return typeof S===d?S.replace(/[^\\d\\.]/g,n).split(".")[0]:e},Nt=function(S,O){if(typeof S===d)return S=S.replace(/^\\s\\s*/,n),typeof O===s?S:S.substring(0,w)},He=function(S,O){for(var I=0,q,x,nt,D,qe,ie;I<O.length&&!qe;){var Or=O[I],kr=O[I+1];for(q=x=0;q<Or.length&&!qe;)if(qe=Or[q++].exec(S),qe)for(nt=0;nt<kr.length;nt++)ie=qe[++x],D=kr[nt],typeof D===u&&D.length>0?D.length===2?typeof D[1]==o?this[D[0]]=D[1].call(this,ie):this[D[0]]=D[1]:D.length===3?typeof D[1]===o&&!(D[1].exec&&D[1].test)?this[D[0]]=ie?D[1].call(this,ie,D[2]):e:this[D[0]]=ie?ie.replace(D[1],D[2]):e:D.length===4&&(this[D[0]]=ie?D[3].call(this,ie.replace(D[1],D[2])):e):this[D]=ie||e;I+=2}},Ut=function(S,O){for(var I in O)if(typeof O[I]===u&&O[I].length>0){for(var q=0;q<O[I].length;q++)if(Pr(O[I][q],S))return I===i?e:I}else if(Pr(O[I],S))return I===i?e:I;return S},pi={"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"},Cr={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Rr={browser:[[/\\b(?:crmo|crios)\\/([\\w\\.]+)/i],[m,[c,"Chrome"]],[/edg(?:e|ios|a)?\\/([\\w\\.]+)/i],[m,[c,"Edge"]],[/(opera mini)\\/([-\\w\\.]+)/i,/(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,/(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i],[c,m],[/opios[\\/ ]+([\\w\\.]+)/i],[m,[c,Te+" Mini"]],[/\\bopr\\/([\\w\\.]+)/i],[m,[c,Te]],[/(kindle)\\/([\\w\\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,/(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,/(?:ms|\\()(ie) ([\\w\\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,/(weibo)__([\\d\\.]+)/i],[c,m],[/(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i],[m,[c,"UC"+Q]],[/microm.+\\bqbcore\\/([\\w\\.]+)/i,/\\bqbcore\\/([\\w\\.]+).+microm/i],[m,[c,"WeChat(Win) Desktop"]],[/micromessenger\\/([\\w\\.]+)/i],[m,[c,"WeChat"]],[/konqueror\\/([\\w\\.]+)/i],[m,[c,"Konqueror"]],[/trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i],[m,[c,"IE"]],[/yabrowser\\/([\\w\\.]+)/i],[m,[c,"Yandex"]],[/(avast|avg)\\/([\\w\\.]+)/i],[[c,/(.+)/,"$1 Secure "+Q],m],[/\\bfocus\\/([\\w\\.]+)/i],[m,[c,ce+" Focus"]],[/\\bopt\\/([\\w\\.]+)/i],[m,[c,Te+" Touch"]],[/coc_coc\\w+\\/([\\w\\.]+)/i],[m,[c,"Coc Coc"]],[/dolfin\\/([\\w\\.]+)/i],[m,[c,"Dolphin"]],[/coast\\/([\\w\\.]+)/i],[m,[c,Te+" Coast"]],[/miuibrowser\\/([\\w\\.]+)/i],[m,[c,"MIUI "+Q]],[/fxios\\/([-\\w\\.]+)/i],[m,[c,ce]],[/\\bqihu|(qi?ho?o?|360)browser/i],[[c,"360 "+Q]],[/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i],[[c,/(.+)/,"$1 "+Q],m],[/(comodo_dragon)\\/([\\w\\.]+)/i],[[c,/_/g," "],m],[/(electron)\\/([\\w\\.]+) safari/i,/(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i],[c,m],[/(metasr)[\\/ ]?([\\w\\.]+)/i,/(lbbrowser)/i,/\\[(linkedin)app\\]/i],[c],[/((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i],[[c,U],m],[/safari (line)\\/([\\w\\.]+)/i,/\\b(line)\\/([\\w\\.]+)\\/iab/i,/(chromium|instagram)[\\/ ]([-\\w\\.]+)/i],[c,m],[/\\bgsa\\/([\\w\\.]+) .*safari\\//i],[m,[c,"GSA"]],[/headlesschrome(?:\\/([\\w\\.]+)| )/i],[m,[c,P+" Headless"]],[/ wv\\).+(chrome)\\/([\\w\\.]+)/i],[[c,P+" WebView"],m],[/droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i],[m,[c,"Android "+Q]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i],[c,m],[/version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i],[m,[c,"Mobile Safari"]],[/version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i],[m,c],[/webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i],[c,[m,Ut,pi]],[/(webkit|khtml)\\/([\\w\\.]+)/i],[c,m],[/(navigator|netscape\\d?)\\/([-\\w\\.]+)/i],[[c,"Netscape"],m],[/mobile vr; rv:([\\w\\.]+)\\).+firefox/i],[m,[c,ce+" Reality"]],[/ekiohf.+(flow)\\/([\\w\\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,/(firefox)\\/([\\w\\.]+)/i,/(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,/(links) \\(([\\w\\.]+)/i],[c,m],[/(cobalt)\\/([\\w\\.]+)/i],[c,[m,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i],[[_,"amd64"]],[/(ia32(?=;))/i],[[_,Fe]],[/((?:i[346]|x)86)[;\\)]/i],[[_,"ia32"]],[/\\b(aarch64|arm(v?8e?l?|_?64))\\b/i],[[_,"arm64"]],[/\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i],[[_,"armhf"]],[/windows (ce|mobile); ppc;/i],[[_,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i],[[_,/ower/,n,Fe]],[/(sun4\\w)[;\\)]/i],[[_,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i],[[_,Fe]]],device:[[/\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i],[a,[f,we],[l,y]],[/\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i,/samsung[- ]([-\\w]+)/i,/sec-(sgh\\w+)/i],[a,[f,we],[l,v]],[/((ipod|iphone)\\d+,\\d+)/i],[a,[f,R],[l,v]],[/(ipad\\d+,\\d+)/i],[a,[f,R],[l,y]],[/\\((ip(?:hone|od)[\\w ]*);/i],[a,[f,R],[l,v]],[/\\((ipad);[-\\w\\),; ]+apple/i,/applecoremedia\\/[\\w\\.]+ \\((ipad)/i,/\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i],[a,[f,R],[l,y]],[/(macintosh);/i],[a,[f,R]],[/\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i],[a,[f,Me],[l,y]],[/(?:huawei|honor)([-\\w ]+)[;\\)]/i,/\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i],[a,[f,Me],[l,v]],[/\\b(poco[\\w ]+)(?: bui|\\))/i,/\\b; (\\w+) build\\/hm\\1/i,/\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,/\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,/\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i],[[a,/_/g," "],[f,me],[l,v]],[/\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i],[[a,/_/g," "],[f,me],[l,y]],[/; (\\w+) bui.+ oppo/i,/\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i],[a,[f,"OPPO"],[l,v]],[/vivo (\\w+)(?: bui|\\))/i,/\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i],[a,[f,"Vivo"],[l,v]],[/\\b(rmx[12]\\d{3})(?: bui|;|\\))/i],[a,[f,"Realme"],[l,v]],[/\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,/\\bmot(?:orola)?[- ](\\w*)/i,/((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i],[a,[f,Be],[l,v]],[/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i],[a,[f,Be],[l,y]],[/((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i],[a,[f,Re],[l,y]],[/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,/\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,/\\blg-?([\\d\\w]+) bui/i],[a,[f,Re],[l,v]],[/(ideatab[-\\w ]+)/i,/lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i],[a,[f,"Lenovo"],[l,y]],[/(?:maemo|nokia).*(n900|lumia \\d+)/i,/nokia[-_ ]?([-\\w\\.]*)/i],[[a,/_/g," "],[f,"Nokia"],[l,v]],[/(pixel c)\\b/i],[a,[f,_e],[l,y]],[/droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i],[a,[f,_e],[l,v]],[/droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i],[a,[f,fe],[l,v]],[/sony tablet [ps]/i,/\\b(?:sony)?sgp\\w+(?: bui|\\))/i],[[a,"Xperia Tablet"],[f,fe],[l,y]],[/ (kb2005|in20[12]5|be20[12][59])\\b/i,/(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i],[a,[f,"OnePlus"],[l,v]],[/(alexa)webm/i,/(kf[a-z]{2}wi)( bui|\\))/i,/(kf[a-z]+)( bui|\\)).+silk\\//i],[a,[f,C],[l,y]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i],[[a,/(.+)/g,"Fire Phone $1"],[f,C],[l,v]],[/(playbook);[-\\w\\),; ]+(rim)/i],[a,f,[l,y]],[/\\b((?:bb[a-f]|st[hv])100-\\d)/i,/\\(bb10; (\\w+)/i],[a,[f,z],[l,v]],[/(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i],[a,[f,K],[l,y]],[/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i],[a,[f,K],[l,v]],[/(nexus 9)/i],[a,[f,"HTC"],[l,y]],[/(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,/(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,/(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i],[f,[a,/_/g," "],[l,v]],[/droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i],[a,[f,"Acer"],[l,y]],[/droid.+; (m[1-5] note) bui/i,/\\bmz-([-\\w]{2,})/i],[a,[f,"Meizu"],[l,v]],[/\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i],[a,[f,ke],[l,v]],[/(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,/(hp) ([\\w ]+\\w)/i,/(asus)-?(\\w+)/i,/(microsoft); (lumia[\\w ]+)/i,/(lenovo)[-_ ]?([-\\w]+)/i,/(jolla)/i,/(oppo) ?([\\w ]+) bui/i],[f,a,[l,v]],[/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\\/([\\w\\.]+)/i,/(nook)[\\w ]+build\\/(\\w+)/i,/(dell) (strea[kpr\\d ]*[\\dko])/i,/(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,/(trinity)[- ]*(t\\d{3}) bui/i,/(gigaset)[- ]+(q\\w{1,9}) bui/i,/(vodafone) ([\\w ]+)(?:\\)| bui)/i],[f,a,[l,y]],[/(surface duo)/i],[a,[f,Oe],[l,y]],[/droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i],[a,[f,"Fairphone"],[l,v]],[/(u304aa)/i],[a,[f,"AT&T"],[l,v]],[/\\bsie-(\\w*)/i],[a,[f,"Siemens"],[l,v]],[/\\b(rct\\w+) b/i],[a,[f,"RCA"],[l,y]],[/\\b(venue[\\d ]{2,7}) b/i],[a,[f,"Dell"],[l,y]],[/\\b(q(?:mv|ta)\\w+) b/i],[a,[f,"Verizon"],[l,y]],[/\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i],[a,[f,"Barnes & Noble"],[l,y]],[/\\b(tm\\d{3}\\w+) b/i],[a,[f,"NuVision"],[l,y]],[/\\b(k88) b/i],[a,[f,"ZTE"],[l,y]],[/\\b(nx\\d{3}j) b/i],[a,[f,"ZTE"],[l,v]],[/\\b(gen\\d{3}) b.+49h/i],[a,[f,"Swiss"],[l,v]],[/\\b(zur\\d{3}) b/i],[a,[f,"Swiss"],[l,y]],[/\\b((zeki)?tb.*\\b) b/i],[a,[f,"Zeki"],[l,y]],[/\\b([yr]\\d{2}) b/i,/\\b(dragon[- ]+touch |dt)(\\w{5}) b/i],[[f,"Dragon Touch"],a,[l,y]],[/\\b(ns-?\\w{0,9}) b/i],[a,[f,"Insignia"],[l,y]],[/\\b((nxa|next)-?\\w{0,9}) b/i],[a,[f,"NextBook"],[l,y]],[/\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[f,"Voice"],a,[l,v]],[/\\b(lvtel\\-)?(v1[12]) b/i],[[f,"LvTel"],a,[l,v]],[/\\b(ph-1) /i],[a,[f,"Essential"],[l,v]],[/\\b(v(100md|700na|7011|917g).*\\b) b/i],[a,[f,"Envizen"],[l,y]],[/\\b(trio[-\\w\\. ]+) b/i],[a,[f,"MachSpeed"],[l,y]],[/\\btu_(1491) b/i],[a,[f,"Rotor"],[l,y]],[/(shield[\\w ]+) b/i],[a,[f,"Nvidia"],[l,y]],[/(sprint) (\\w+)/i],[f,a,[l,v]],[/(kin\\.[onetw]{3})/i],[[a,/\\./g," "],[f,Oe],[l,v]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i],[a,[f,Ve],[l,y]],[/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i],[a,[f,Ve],[l,v]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[f,a,[l,b]],[/droid.+; (shield) bui/i],[a,[f,"Nvidia"],[l,b]],[/(playstation [345portablevi]+)/i],[a,[f,fe],[l,b]],[/\\b(xbox(?: one)?(?!; xbox))[\\); ]/i],[a,[f,Oe],[l,b]],[/smart-tv.+(samsung)/i],[f,[l,T]],[/hbbtv.+maple;(\\d+)/i],[[a,/^/,"SmartTV"],[f,we],[l,T]],[/(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i],[[f,Re],[l,T]],[/(apple) ?tv/i],[f,[a,R+" TV"],[l,T]],[/crkey/i],[[a,P+"cast"],[f,_e],[l,T]],[/droid.+aft(\\w)( bui|\\))/i],[a,[f,C],[l,T]],[/\\(dtv[\\);].+(aquos)/i,/(aquos-tv[\\w ]+)\\)/i],[a,[f,ke],[l,T]],[/(bravia[\\w ]+)( bui|\\))/i],[a,[f,fe],[l,T]],[/(mitv-\\w{5}) bui/i],[a,[f,me],[l,T]],[/\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,/hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i],[[f,Nt],[a,Nt],[l,T]],[/\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i],[[l,T]],[/((pebble))app/i],[f,a,[l,L]],[/droid.+; (glass) \\d/i],[a,[f,_e],[l,L]],[/droid.+; (wt63?0{2,3})\\)/i],[a,[f,Ve],[l,L]],[/(quest( 2)?)/i],[a,[f,U],[l,L]],[/(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i],[f,[l,k]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i],[a,[l,v]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i],[a,[l,y]],[/\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i],[[l,y]],[/(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i],[[l,v]],[/(android[-\\w\\. ]{0,9});.+buil/i],[a,[f,"Generic"]]],engine:[[/windows.+ edge\\/([\\w\\.]+)/i],[m,[c,Ce+"HTML"]],[/webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i],[m,[c,"Blink"]],[/(presto)\\/([\\w\\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,/ekioh(flow)\\/([\\w\\.]+)/i,/(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,/(icab)[\\/ ]([23]\\.[\\d\\.]+)/i],[c,m],[/rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i],[m,c]],os:[[/microsoft (windows) (vista|xp)/i],[c,m],[/(windows) nt 6\\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,/(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i],[c,[m,Ut,Cr]],[/(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i],[[c,"Windows"],[m,Ut,Cr]],[/ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,/cfnetwork\\/.+darwin/i],[[m,/_/g,"."],[c,"iOS"]],[/(mac os x) ?([\\w\\. ]*)/i,/(macintosh|mac_powerpc\\b)(?!.+haiku)/i],[[c,"Mac OS"],[m,/_/g,"."]],[/droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i],[m,c],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,/(blackberry)\\w*\\/([\\w\\.]*)/i,/(tizen|kaios)[\\/ ]([\\w\\.]+)/i,/\\((series40);/i],[c,m],[/\\(bb(10);/i],[m,[c,z]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i],[m,[c,"Symbian"]],[/mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i],[m,[c,ce+" OS"]],[/web0s;.+rt(tv)/i,/\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i],[m,[c,"webOS"]],[/crkey\\/([\\d\\.]+)/i],[m,[c,P+"cast"]],[/(cros) [\\w]+ ([\\w\\.]+\\w)/i],[[c,"Chromium OS"],m],[/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\\);]+)/i,/\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,/(mint)[\\/\\(\\) ]?(\\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,/(hurd|linux) ?([\\w\\.]*)/i,/(gnu) ?([\\w\\.]*)/i,/\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,/(haiku) (\\w+)/i],[c,m],[/(sunos) ?([\\w\\.\\d]*)/i],[[c,"Solaris"],m],[/((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,/(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,/\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,/(unix) ?([\\w\\.]*)/i],[c,m]]},Z=function(S,O){if(typeof S===u&&(O=S,S=e),!(this instanceof Z))return new Z(S,O).getResult();var I=S||(typeof t!==s&&t.navigator&&t.navigator.userAgent?t.navigator.userAgent:n),q=O?et(Rr,O):Rr;return this.getBrowser=function(){var x={};return x[c]=e,x[m]=e,He.call(x,I,q.browser),x.major=di(x.version),x},this.getCPU=function(){var x={};return x[_]=e,He.call(x,I,q.cpu),x},this.getDevice=function(){var x={};return x[f]=e,x[a]=e,x[l]=e,He.call(x,I,q.device),x},this.getEngine=function(){var x={};return x[c]=e,x[m]=e,He.call(x,I,q.engine),x},this.getOS=function(){var x={};return x[c]=e,x[m]=e,He.call(x,I,q.os),x},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return I},this.setUA=function(x){return I=typeof x===d&&x.length>w?Nt(x,w):x,this},this.setUA(I),this};Z.VERSION=r,Z.BROWSER=tt([c,m,p]),Z.CPU=tt([_]),Z.DEVICE=tt([a,f,l,b,v,T,y,L,k]),Z.ENGINE=Z.OS=tt([c,m]),typeof Qe!==s?(typeof Ct!==s&&Ct.exports&&(Qe=Ct.exports=Z),Qe.UAParser=Z):typeof define===o&&define.amd?define(function(){return Z}):typeof t!==s&&(t.UAParser=Z);var Ae=typeof t!==s&&(t.jQuery||t.Zepto);if(Ae&&!Ae.ua){var rt=new Z;Ae.ua=rt.getResult(),Ae.ua.get=function(){return rt.getUA()},Ae.ua.set=function(S){rt.setUA(S);var O=rt.getResult();for(var I in O)Ae.ua[I]=O[I]}}})(typeof window=="object"?window:Qe)});var oe=(t,e)=>{Vt(t);let r=t.querySelector("aside");r.dataset.view=e,r.classList.remove("section-ready"),setTimeout(()=>{r.classList.add("section-ready")},200)},Ar=t=>{Array.from(t.querySelectorAll(".back-button")).forEach(e=>{e.addEventListener("click",r=>{Vt(t),r.preventDefault(),r.stopPropagation();let n=r.target;oe(t,n?.dataset.back||"nav-home")})})},Bt=(t,e)=>{Vt(t);let r=t.querySelector("aside"),n=document.createElement("div");n.className="ui-toast",n.innerHTML=e,r.appendChild(n),setTimeout(()=>{n.classList.add("ui-toast-show"),setTimeout(()=>{n.classList.remove("ui-toast-show"),setTimeout(()=>{n.remove()},500)},4e3)},30)},Vt=t=>{let e=t.querySelector("aside");Array.from(e.querySelectorAll(".ui-toast")).forEach(n=>{n.classList.remove("ui-toast-show")})},it=()=>{let t=Dr();return localStorage.getItem(t)!=="true"},Ft=t=>{let e=Dr();t?localStorage.removeItem(e):localStorage.setItem(e,"true")},Dr=()=>Ti("disableEdit"),Ti=t=>\`builder.__LOCAL_APP_ID__.\${t}\`,Nr=()=>{let e=document.body.querySelector("[builder-content-id]")?.getAttribute("builder-content-id");return je(e)},je=(t,e)=>{let r="/content";t&&(r+="/"+t+"/edit");let n=new URL(r,"https://builder.io");t&&e&&n.searchParams.set("selectedBlock",e);let i=new URL(location.pathname,location.href);return n.searchParams.set("overridePreviewUrl",i.href),n.href},ot="__DEV_TOOLS_URL__",G={components:[],registryPath:"",registryDisplayPath:"",frameworks:[],dependencies:[],publicApiKey:void 0,devToolsVersion:""},le=t=>{G.components=t.components,G.registryPath=t.registryPath,G.registryDisplayPath=t.registryDisplayPath,G.dependencies=t.dependencies,G.publicApiKey=t.publicApiKey};function Ur(t){let e=null,r=document.querySelector("builder-dev-tools-menu"),n=()=>{t.hide()},i=u=>{let d=u.target;if(!d){n();return}if(d.closest("builder-dev-tools-edit"))return;let p=d.closest("[builder-content-id]"),a=d.closest("[builder-id]");if(!p||!a){t.hide();return}let c=t.show(p,a);!c||c===e||(r.highlightOpener(),e=c)};document.addEventListener("pointerover",i,{passive:!0}),document.addEventListener("pointerleave",n,{passive:!0}),document.addEventListener("pointercancel",n,{passive:!0}),document.addEventListener("visibilitychange",n,{passive:!0}),window.addEventListener("popstate",n,{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 st=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"),Ur(this)}show(e,r){if(!it())return this.hide(),null;let n=e.getAttribute("builder-content-id"),i=r.getAttribute("builder-id");if(!n||!i)return this.hide(),null;let o=this.block,s=this.openInBuilder,u=r.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 d=s.getBoundingClientRect();if(d.width>u.width){let p=d.width-u.width;s.style.left=p/2*-1+"px"}else s.style.left="";return s.href=je(n,i),this.style.display="block",i}hide(){this.style.display=""}};var Mr="preview-url";var Br="_b-uid";var Vr="/~builder-connect";var Fr="/~builder-dev-tools";var Hr="https://cdn.builder.io/api/v1/proxy-api?url=https://api2.amplitude.com/2/httpapi";var qr=()=>se({type:"validateBuilder"}),De=t=>se({type:"launchEditor",data:t}),jr=t=>se({type:"getRegistry",data:t}),Gr=t=>se({type:"loadComponent",data:t}),Kr=t=>se({type:"registerComponent",data:t}),Wr=t=>se({type:"setComponentInfo",data:t}),at=t=>se({type:"setComponentInput",data:t}),$r=t=>se({type:"unregisterComponent",data:t}),Yr=t=>se({type:"enableDevTools",data:{enabled:t}}),zr=()=>se({type:"localConfig"}),se=async t=>{let e=new URL(Fr,ot),r;try{r=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((r.headers.get("content-type")||"").includes("application/json")){let i=await r.json();if(r.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: \${r.status}, \${await r.text()}\`)};var Qr=[{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"}],ut=["color","date","email","file","longText","richText","string"],ct=["number"],lt=["boolean"],dt=["list"],pt=["object"];function ft(t){return ut.includes(t)?"string":ct.includes(t)?"number":lt.includes(t)?"boolean":dt.includes(t)?"array":pt.includes(t)?"object":"string"}var Io=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 Ht=function(t,e){return Ht=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[i]=n[i])},Ht(t,e)};function ae(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Ht(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}var E=function(){return E=Object.assign||function(e){for(var r,n=1,i=arguments.length;n<i;n++){r=arguments[n];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e},E.apply(this,arguments)};function Ge(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r}function g(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function u(a){try{p(n.next(a))}catch(c){s(c)}}function d(a){try{p(n.throw(a))}catch(c){s(c)}}function p(a){a.done?o(a.value):i(a.value).then(u,d)}p((n=n.apply(t,e||[])).next())})}function h(t,e){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,i,o,s=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return s.next=u(0),s.throw=u(1),s.return=u(2),typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function u(p){return function(a){return d([p,a])}}function d(p){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,p[0]&&(r=0)),r;)try{if(n=1,i&&(o=p[0]&2?i.return:p[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,p[1])).done)return o;switch(i=0,o&&(p=[p[0]&2,o.value]),p[0]){case 0:case 1:o=p;break;case 4:return r.label++,{value:p[1],done:!1};case 5:r.label++,i=p[1],p=[0];continue;case 7:p=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(p[0]===6||p[0]===2)){r=0;continue}if(p[0]===3&&(!o||p[1]>o[0]&&p[1]<o[3])){r.label=p[1];break}if(p[0]===6&&r.label<o[1]){r.label=o[1],o=p;break}if(o&&r.label<o[2]){r.label=o[2],r.ops.push(p);break}o[2]&&r.ops.pop(),r.trys.pop();continue}p=e.call(t,r)}catch(a){p=[6,a],i=0}finally{n=o=0}if(p[0]&5)throw p[1];return{value:p[0]?p[1]:void 0,done:!0}}}function J(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function A(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,o=[],s;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)o.push(i.value)}catch(u){s={error:u}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o}function ee(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,o;n<i;n++)(o||!(n in e))&&(o||(o=Array.prototype.slice.call(e,0,n)),o[n]=e[n]);return t.concat(o||Array.prototype.slice.call(e))}var mt={};bi(mt,{IdentifyOperation:()=>B,LogLevel:()=>Y,PluginType:()=>N,RevenueProperty:()=>re,ServerZone:()=>Se,SpecialEventType:()=>de,Status:()=>M,TransportType:()=>Ie});var B;(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"})(B||(B={}));var re;(function(t){t.REVENUE_PRODUCT_ID="$productId",t.REVENUE_QUANTITY="$quantity",t.REVENUE_PRICE="$price",t.REVENUE_TYPE="$revenueType",t.REVENUE_CURRENCY="$currency",t.REVENUE="$revenue"})(re||(re={}));var de;(function(t){t.IDENTIFY="$identify",t.GROUP_IDENTIFY="$groupidentify",t.REVENUE="revenue_amount"})(de||(de={}));var Y;(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"})(Y||(Y={}));var N;(function(t){t.BEFORE="before",t.ENRICHMENT="enrichment",t.DESTINATION="destination"})(N||(N={}));var Se;(function(t){t.US="US",t.EU="EU",t.STAGING="STAGING"})(Se||(Se={}));var M;(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"})(M||(M={}));var Ie;(function(t){t.XHR="xhr",t.SendBeacon="beacon",t.Fetch="fetch"})(Ie||(Ie={}));var qt="-",xe="AMP",jt="".concat(xe,"_unsent"),Gt="https://api2.amplitude.com/2/httpapi",Xr="https://api.eu.amplitude.com/2/httpapi",Zr="https://api2.amplitude.com/batch",Jr="https://api.eu.amplitude.com/batch";var wi=1e3,vt=function(t){if(Object.keys(t).length>wi)return!1;for(var e in t){var r=t[e];if(!Kt(e,r))return!1}return!0},Kt=function(t,e){var r,n;if(typeof t!="string")return!1;if(Array.isArray(e)){var i=!0;try{for(var o=J(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&&vt(u);else if(!["number","string"].includes(typeof u))return!1;if(!i)return!1}}catch(d){r={error:d}}finally{try{s&&!s.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}}else{if(e==null)return!1;if(typeof e=="object")return vt(e);if(!["number","string","boolean"].includes(typeof e))return!1}return!0};var ne=function(){function t(){this._propertySet=new Set,this._properties={}}return t.prototype.getUserProperties=function(){return E({},this._properties)},t.prototype.set=function(e,r){return this._safeSet(B.SET,e,r),this},t.prototype.setOnce=function(e,r){return this._safeSet(B.SET_ONCE,e,r),this},t.prototype.append=function(e,r){return this._safeSet(B.APPEND,e,r),this},t.prototype.prepend=function(e,r){return this._safeSet(B.PREPEND,e,r),this},t.prototype.postInsert=function(e,r){return this._safeSet(B.POSTINSERT,e,r),this},t.prototype.preInsert=function(e,r){return this._safeSet(B.PREINSERT,e,r),this},t.prototype.remove=function(e,r){return this._safeSet(B.REMOVE,e,r),this},t.prototype.add=function(e,r){return this._safeSet(B.ADD,e,r),this},t.prototype.unset=function(e){return this._safeSet(B.UNSET,e,qt),this},t.prototype.clearAll=function(){return this._properties={},this._properties[B.CLEAR_ALL]=qt,this},t.prototype._safeSet=function(e,r,n){if(this._validate(e,r,n)){var i=this._properties[e];return i===void 0&&(i={},this._properties[e]=i),i[r]=n,this._propertySet.add(r),!0}return!1},t.prototype._validate=function(e,r,n){return this._properties[B.CLEAR_ALL]!==void 0||this._propertySet.has(r)?!1:e===B.ADD?typeof n=="number":e!==B.UNSET&&e!==B.REMOVE?Kt(r,n):!0},t}();var en=function(t,e,r){var n=typeof t=="string"?{event_type:t}:t;return E(E(E({},n),r),e&&{event_properties:e})},Ke=function(t,e){var r=E(E({},e),{event_type:de.IDENTIFY,user_properties:t.getUserProperties()});return r},tn=function(t,e,r,n){var i,o=E(E({},n),{event_type:de.GROUP_IDENTIFY,group_properties:r.getUserProperties(),groups:(i={},i[t]=e,i)});return o},rn=function(t,e,r){var n,i=new ne;i.set(t,e);var o=E(E({},r),{event_type:de.IDENTIFY,user_properties:i.getUserProperties(),groups:(n={},n[t]=e,n)});return o},nn=function(t,e){return E(E({},e),{event_type:de.REVENUE,event_properties:t.getEventProperties()})};var ve=function(t,e,r){return e===void 0&&(e=0),r===void 0&&(r=M.Unknown),{event:t,code:e,message:r}};var on=function(){function t(e){this.client=e,this.queue=[],this.applying=!1,this.plugins=[]}return t.prototype.register=function(e,r){return g(this,void 0,void 0,function(){return h(this,function(n){switch(n.label){case 0:return[4,e.setup(r,this.client)];case 1:return n.sent(),this.plugins.push(e),[2]}})})},t.prototype.deregister=function(e,r){var n;return g(this,void 0,void 0,function(){var i,o;return h(this,function(s){switch(s.label){case 0:return i=this.plugins.findIndex(function(u){return u.name===e}),i===-1?(r.loggerProvider.warn("Plugin with name ".concat(e," does not exist, skipping deregistration")),[2]):(o=this.plugins[i],this.plugins.splice(i,1),[4,(n=o.teardown)===null||n===void 0?void 0:n.call(o)]);case 1:return s.sent(),[2]}})})},t.prototype.reset=function(e){this.applying=!1;var r=this.plugins;r.map(function(n){var i;return(i=n.teardown)===null||i===void 0?void 0:i.call(n)}),this.plugins=[],this.client=e},t.prototype.push=function(e){var r=this;return new Promise(function(n){r.queue.push([e,n]),r.scheduleApply(0)})},t.prototype.scheduleApply=function(e){var r=this;this.applying||(this.applying=!0,setTimeout(function(){r.apply(r.queue.shift()).then(function(){r.applying=!1,r.queue.length>0&&r.scheduleApply(0)})},e))},t.prototype.apply=function(e){return g(this,void 0,void 0,function(){var r,n,i,o,s,u,d,f,m,p,a,c,l,f,m,_,b,v,y,T,L,k;return h(this,function(w){switch(w.label){case 0:if(!e)return[2];r=A(e,1),n=r[0],i=A(e,2),o=i[1],s=this.plugins.filter(function(C){return C.type===N.BEFORE}),w.label=1;case 1:w.trys.push([1,6,7,8]),u=J(s),d=u.next(),w.label=2;case 2:return d.done?[3,5]:(f=d.value,[4,f.execute(E({},n))]);case 3:if(m=w.sent(),m===null)return o({event:n,code:0,message:""}),[2];n=m,w.label=4;case 4:return d=u.next(),[3,2];case 5:return[3,8];case 6:return p=w.sent(),y={error:p},[3,8];case 7:try{d&&!d.done&&(T=u.return)&&T.call(u)}finally{if(y)throw y.error}return[7];case 8:a=this.plugins.filter(function(C){return C.type===N.ENRICHMENT}),w.label=9;case 9:w.trys.push([9,14,15,16]),c=J(a),l=c.next(),w.label=10;case 10:return l.done?[3,13]:(f=l.value,[4,f.execute(E({},n))]);case 11:if(m=w.sent(),m===null)return o({event:n,code:0,message:""}),[2];n=m,w.label=12;case 12:return l=c.next(),[3,10];case 13:return[3,16];case 14:return _=w.sent(),L={error:_},[3,16];case 15:try{l&&!l.done&&(k=c.return)&&k.call(c)}finally{if(L)throw L.error}return[7];case 16:return b=this.plugins.filter(function(C){return C.type===N.DESTINATION}),v=b.map(function(C){var R=E({},n);return C.execute(R).catch(function(K){return ve(R,0,String(K))})}),Promise.all(v).then(function(C){var R=A(C,1),K=R[0];o(K)}),[2]}})})},t.prototype.flush=function(){return g(this,void 0,void 0,function(){var e,r,n,i=this;return h(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(),r=this.plugins.filter(function(s){return s.type===N.DESTINATION}),n=r.map(function(s){return s.flush&&s.flush()}),[4,Promise.all(n)];case 2:return o.sent(),[2]}})})},t}();var sn="Event tracked successfully",an="Unexpected error occurred",un="Event rejected due to exceeded retry count",cn="Event skipped due to optOut config",ln="Event rejected due to missing API key",dn="Invalid API key",pn="Client not initialized";var X=function(t){return{promise:t||Promise.resolve()}};var Wt=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 on(this),this.name=e}return t.prototype._init=function(e){return g(this,void 0,void 0,function(){return h(this,function(r){switch(r.label){case 0:return this.config=e,this.timeline.reset(this),[4,this.runQueuedFunctions("q")];case 1:return r.sent(),[2]}})})},t.prototype.runQueuedFunctions=function(e){return g(this,void 0,void 0,function(){var r,n,i,o,s,u,d;return h(this,function(p){switch(p.label){case 0:r=this[e],this[e]=[],p.label=1;case 1:p.trys.push([1,6,7,8]),n=J(r),i=n.next(),p.label=2;case 2:return i.done?[3,5]:(o=i.value,[4,o()]);case 3:p.sent(),p.label=4;case 4:return i=n.next(),[3,2];case 5:return[3,8];case 6:return s=p.sent(),u={error:s},[3,8];case 7:try{i&&!i.done&&(d=n.return)&&d.call(n)}finally{if(u)throw u.error}return[7];case 8:return[2]}})})},t.prototype.track=function(e,r,n){var i=en(e,r,n);return X(this.dispatch(i))},t.prototype.identify=function(e,r){var n=Ke(e,r);return X(this.dispatch(n))},t.prototype.groupIdentify=function(e,r,n,i){var o=tn(e,r,n,i);return X(this.dispatch(o))},t.prototype.setGroup=function(e,r,n){var i=rn(e,r,n);return X(this.dispatch(i))},t.prototype.revenue=function(e,r){var n=nn(e,r);return X(this.dispatch(n))},t.prototype.add=function(e){return this.config?X(this.timeline.register(e,this.config)):(this.q.push(this.add.bind(this,e)),X())},t.prototype.remove=function(e){return this.config?X(this.timeline.deregister(e,this.config)):(this.q.push(this.remove.bind(this,e)),X())},t.prototype.dispatchWithCallback=function(e,r){if(!this.config)return r(ve(e,0,pn));this.process(e).then(r)},t.prototype.dispatch=function(e){return g(this,void 0,void 0,function(){var r=this;return h(this,function(n){return this.config?[2,this.process(e)]:[2,new Promise(function(i){r.dispatchQ.push(r.dispatchWithCallback.bind(r,e,i))})]})})},t.prototype.process=function(e){return g(this,void 0,void 0,function(){var i,r,n,i;return h(this,function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),this.config.optOut?[2,ve(e,0,cn)]:[4,this.timeline.push(e)];case 1:return i=o.sent(),i.code===200?this.config.loggerProvider.log(i.message):this.config.loggerProvider.error(i.message),[2,i];case 2:return r=o.sent(),this.config.loggerProvider.error(r),n=String(r),i=ve(e,0,n),[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 X(this.timeline.flush())},t}();var gt=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.setCurrency=function(e){return this.currency=e,this},t.prototype.setRevenue=function(e){return this.revenue=e,this},t.prototype.setEventProperties=function(e){return vt(e)&&(this.properties=e),this},t.prototype.getEventProperties=function(){var e=this.properties?E({},this.properties):{};return e[re.REVENUE_PRODUCT_ID]=this.productId,e[re.REVENUE_QUANTITY]=this.quantity,e[re.REVENUE_PRICE]=this.price,e[re.REVENUE_TYPE]=this.revenueType,e[re.REVENUE_CURRENCY]=this.currency,e[re.REVENUE]=this.revenue,e},t}();var fn=function(t,e){var r=Math.max(e,1);return t.reduce(function(n,i,o){var s=Math.floor(o/r);return n[s]||(n[s]=[]),n[s].push(i),n},[])};var ht="Amplitude Logger ",mn=function(){function t(){this.logLevel=Y.None}return t.prototype.disable=function(){this.logLevel=Y.None},t.prototype.enable=function(e){e===void 0&&(e=Y.Warn),this.logLevel=e},t.prototype.log=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];this.logLevel<Y.Verbose||console.log("".concat(ht,"[Log]: ").concat(e.join(" ")))},t.prototype.warn=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];this.logLevel<Y.Warn||console.warn("".concat(ht,"[Warn]: ").concat(e.join(" ")))},t.prototype.error=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];this.logLevel<Y.Error||console.error("".concat(ht,"[Error]: ").concat(e.join(" ")))},t.prototype.debug=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];this.logLevel<Y.Debug||console.log("".concat(ht,"[Debug]: ").concat(e.join(" ")))},t}();var yt=function(){return{flushMaxRetries:12,flushQueueSize:200,flushIntervalMillis:1e4,instanceName:"$default_instance",logLevel:Y.Warn,loggerProvider:new mn,optOut:!1,serverUrl:Gt,serverZone:Se.US,useBatch:!1}},$t=function(){function t(e){var r,n,i,o;this._optOut=!1;var s=yt();this.apiKey=e.apiKey,this.flushIntervalMillis=(r=e.flushIntervalMillis)!==null&&r!==void 0?r: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=(n=e.logLevel)!==null&&n!==void 0?n:s.logLevel,this.minIdLength=e.minIdLength,this.plan=e.plan,this.ingestionMetadata=e.ingestionMetadata,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=Yt(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 Si=function(t,e){return t===Se.EU?e?Jr:Xr:e?Zr:Gt},Yt=function(t,e,r){if(t===void 0&&(t=""),e===void 0&&(e=yt().serverZone),r===void 0&&(r=yt().useBatch),t)return{serverUrl:t,serverZone:void 0};var n=["US","EU"].includes(e)?e:yt().serverZone;return{serverZone:n,serverUrl:Si(n,r)}};function Ii(t){return t instanceof Error?t.message:String(t)}function bt(t){var e="";try{"body"in t&&(e=JSON.stringify(t.body))}catch{}return e}var zt=function(){function t(){this.name="amplitude",this.type=N.DESTINATION,this.retryTimeout=1e3,this.throttleTimeout=3e4,this.storageKey="",this.scheduled=null,this.queue=[]}return t.prototype.setup=function(e){var r;return g(this,void 0,void 0,function(){var n,i=this;return h(this,function(o){switch(o.label){case 0:return this.config=e,this.storageKey="".concat(jt,"_").concat(this.config.apiKey.substring(0,10)),[4,(r=this.config.storageProvider)===null||r===void 0?void 0:r.get(this.storageKey)];case 1:return n=o.sent(),this.saveEvents(),n&&n.length>0&&Promise.all(n.map(function(s){return i.execute(s)})).catch(),[2,Promise.resolve(void 0)]}})})},t.prototype.execute=function(e){var r=this;return new Promise(function(n){var i={event:e,attempts:0,callback:function(o){return n(o)},timeout:0};r.addToQueue(i)})},t.prototype.addToQueue=function(){for(var e=this,r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];var i=r.filter(function(o){return o.attempts<e.config.flushMaxRetries?(o.attempts+=1,!0):(e.fulfillRequest([o],500,un),!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 r=this;this.scheduled||(this.scheduled=setTimeout(function(){r.flush(!0).then(function(){r.queue.length>0&&r.schedule(e)})},e))},t.prototype.flush=function(e){return e===void 0&&(e=!1),g(this,void 0,void 0,function(){var r,n,i,o=this;return h(this,function(s){switch(s.label){case 0:return r=[],n=[],this.queue.forEach(function(u){return u.timeout===0?r.push(u):n.push(u)}),this.queue=n,this.scheduled&&(clearTimeout(this.scheduled),this.scheduled=null),i=fn(r,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,r){return r===void 0&&(r=!0),g(this,void 0,void 0,function(){var n,i,o,s,u;return h(this,function(d){switch(d.label){case 0:if(!this.config.apiKey)return[2,this.fulfillRequest(e,400,ln)];n={api_key:this.config.apiKey,events:e.map(function(p){var a=p.event,c=a.extra,l=Ge(a,["extra"]);return l}),options:{min_id_length:this.config.minIdLength}},d.label=1;case 1:return d.trys.push([1,3,,4]),i=Yt(this.config.serverUrl,this.config.serverZone,this.config.useBatch).serverUrl,[4,this.config.transportProvider.send(i,n)];case 2:return o=d.sent(),o===null?(this.fulfillRequest(e,0,an),[2]):r?(this.handleResponse(o,e),[3,4]):("body"in o?this.fulfillRequest(e,o.statusCode,"".concat(o.status,": ").concat(bt(o))):this.fulfillRequest(e,o.statusCode,o.status),[2]);case 3:return s=d.sent(),this.config.loggerProvider.error(s),u=Ii(s),this.fulfillRequest(e,0,u),[3,4];case 4:return[2]}})})},t.prototype.handleResponse=function(e,r){var n=e.status;switch(n){case M.Success:{this.handleSuccessResponse(e,r);break}case M.Invalid:{this.handleInvalidResponse(e,r);break}case M.PayloadTooLarge:{this.handlePayloadTooLargeResponse(e,r);break}case M.RateLimit:{this.handleRateLimitResponse(e,r);break}default:{this.config.loggerProvider.warn(\`{code: 0, error: "Status '\`.concat(n,"' provided for ").concat(r.length,' events"}')),this.handleOtherResponse(r);break}}},t.prototype.handleSuccessResponse=function(e,r){this.fulfillRequest(r,e.statusCode,sn)},t.prototype.handleInvalidResponse=function(e,r){var n=this;if(e.body.missingField||e.body.error.startsWith(dn)){this.fulfillRequest(r,e.statusCode,e.body.error);return}var i=ee(ee(ee(ee([],A(Object.values(e.body.eventsWithInvalidFields)),!1),A(Object.values(e.body.eventsWithMissingFields)),!1),A(Object.values(e.body.eventsWithInvalidIdLengths)),!1),A(e.body.silencedEvents),!1).flat(),o=new Set(i),s=r.filter(function(u,d){if(o.has(d)){n.fulfillRequest([u],e.statusCode,e.body.error);return}return!0});s.length>0&&this.config.loggerProvider.warn(bt(e)),this.addToQueue.apply(this,ee([],A(s),!1))},t.prototype.handlePayloadTooLargeResponse=function(e,r){if(r.length===1){this.fulfillRequest(r,e.statusCode,e.body.error);return}this.config.loggerProvider.warn(bt(e)),this.config.flushQueueSize/=2,this.addToQueue.apply(this,ee([],A(r),!1))},t.prototype.handleRateLimitResponse=function(e,r){var n=this,i=Object.keys(e.body.exceededDailyQuotaUsers),o=Object.keys(e.body.exceededDailyQuotaDevices),s=e.body.throttledEvents,u=new Set(i),d=new Set(o),p=new Set(s),a=r.filter(function(c,l){if(c.event.user_id&&u.has(c.event.user_id)||c.event.device_id&&d.has(c.event.device_id)){n.fulfillRequest([c],e.statusCode,e.body.error);return}return p.has(l)&&(c.timeout=n.throttleTimeout),!0});a.length>0&&this.config.loggerProvider.warn(bt(e)),this.addToQueue.apply(this,ee([],A(a),!1))},t.prototype.handleOtherResponse=function(e){var r=this;this.addToQueue.apply(this,ee([],A(e.map(function(n){return n.timeout=n.attempts*r.retryTimeout,n})),!1))},t.prototype.fulfillRequest=function(e,r,n){this.saveEvents(),e.forEach(function(i){return i.callback(ve(i.event,r,n))})},t.prototype.saveEvents=function(){if(this.config.storageProvider){var e=Array.from(this.queue.map(function(r){return r.event}));this.config.storageProvider.set(this.storageKey,e)}},t}();var xi=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 xi(e){return Ei(e,`"use strict";(()=>{var fi=Object.create;var Mt=Object.defineProperty;var mi=Object.getOwnPropertyDescriptor;var vi=Object.getOwnPropertyNames;var gi=Object.getPrototypeOf,hi=Object.prototype.hasOwnProperty;var yi=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),bi=(t,e)=>{for(var r in e)Mt(t,r,{get:e[r],enumerable:!0})},Ei=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of vi(e))!hi.call(t,i)&&i!==r&&Mt(t,i,{get:()=>e[i],enumerable:!(n=mi(e,i))||n.enumerable});return t};var _i=(t,e,r)=>(r=t!=null?fi(gi(t)):{},Ei(e||!t||!t.__esModule?Mt(r,"default",{value:t,enumerable:!0}):r,t));var jn=yi((Qe,Ct)=>{(function(t,e){"use strict";var r="0.7.33",n="",i="?",o="function",s="undefined",u="object",d="string",p="major",a="model",c="name",l="type",f="vendor",m="version",_="architecture",b="console",v="mobile",y="tablet",T="smarttv",L="wearable",k="embedded",w=350,C="Amazon",R="Apple",K="ASUS",z="BlackBerry",Q="Browser",P="Chrome",Ce="Edge",ce="Firefox",_e="Google",Me="Huawei",Re="LG",Oe="Microsoft",Be="Motorola",Te="Opera",we="Samsung",ke="Sharp",fe="Sony",me="Xiaomi",Ve="Zebra",U="Facebook",et=function(S,O){var I={};for(var q in S)O[q]&&O[q].length%2===0?I[q]=O[q].concat(S[q]):I[q]=S[q];return I},tt=function(S){for(var O={},I=0;I<S.length;I++)O[S[I].toUpperCase()]=S[I];return O},Pr=function(S,O){return typeof S===d?Fe(O).indexOf(Fe(S))!==-1:!1},Fe=function(S){return S.toLowerCase()},di=function(S){return typeof S===d?S.replace(/[^\\d\\.]/g,n).split(".")[0]:e},Nt=function(S,O){if(typeof S===d)return S=S.replace(/^\\s\\s*/,n),typeof O===s?S:S.substring(0,w)},He=function(S,O){for(var I=0,q,x,nt,D,qe,ie;I<O.length&&!qe;){var Or=O[I],kr=O[I+1];for(q=x=0;q<Or.length&&!qe;)if(qe=Or[q++].exec(S),qe)for(nt=0;nt<kr.length;nt++)ie=qe[++x],D=kr[nt],typeof D===u&&D.length>0?D.length===2?typeof D[1]==o?this[D[0]]=D[1].call(this,ie):this[D[0]]=D[1]:D.length===3?typeof D[1]===o&&!(D[1].exec&&D[1].test)?this[D[0]]=ie?D[1].call(this,ie,D[2]):e:this[D[0]]=ie?ie.replace(D[1],D[2]):e:D.length===4&&(this[D[0]]=ie?D[3].call(this,ie.replace(D[1],D[2])):e):this[D]=ie||e;I+=2}},Ut=function(S,O){for(var I in O)if(typeof O[I]===u&&O[I].length>0){for(var q=0;q<O[I].length;q++)if(Pr(O[I][q],S))return I===i?e:I}else if(Pr(O[I],S))return I===i?e:I;return S},pi={"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"},Cr={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Rr={browser:[[/\\b(?:crmo|crios)\\/([\\w\\.]+)/i],[m,[c,"Chrome"]],[/edg(?:e|ios|a)?\\/([\\w\\.]+)/i],[m,[c,"Edge"]],[/(opera mini)\\/([-\\w\\.]+)/i,/(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,/(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i],[c,m],[/opios[\\/ ]+([\\w\\.]+)/i],[m,[c,Te+" Mini"]],[/\\bopr\\/([\\w\\.]+)/i],[m,[c,Te]],[/(kindle)\\/([\\w\\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,/(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,/(?:ms|\\()(ie) ([\\w\\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,/(weibo)__([\\d\\.]+)/i],[c,m],[/(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i],[m,[c,"UC"+Q]],[/microm.+\\bqbcore\\/([\\w\\.]+)/i,/\\bqbcore\\/([\\w\\.]+).+microm/i],[m,[c,"WeChat(Win) Desktop"]],[/micromessenger\\/([\\w\\.]+)/i],[m,[c,"WeChat"]],[/konqueror\\/([\\w\\.]+)/i],[m,[c,"Konqueror"]],[/trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i],[m,[c,"IE"]],[/yabrowser\\/([\\w\\.]+)/i],[m,[c,"Yandex"]],[/(avast|avg)\\/([\\w\\.]+)/i],[[c,/(.+)/,"$1 Secure "+Q],m],[/\\bfocus\\/([\\w\\.]+)/i],[m,[c,ce+" Focus"]],[/\\bopt\\/([\\w\\.]+)/i],[m,[c,Te+" Touch"]],[/coc_coc\\w+\\/([\\w\\.]+)/i],[m,[c,"Coc Coc"]],[/dolfin\\/([\\w\\.]+)/i],[m,[c,"Dolphin"]],[/coast\\/([\\w\\.]+)/i],[m,[c,Te+" Coast"]],[/miuibrowser\\/([\\w\\.]+)/i],[m,[c,"MIUI "+Q]],[/fxios\\/([-\\w\\.]+)/i],[m,[c,ce]],[/\\bqihu|(qi?ho?o?|360)browser/i],[[c,"360 "+Q]],[/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i],[[c,/(.+)/,"$1 "+Q],m],[/(comodo_dragon)\\/([\\w\\.]+)/i],[[c,/_/g," "],m],[/(electron)\\/([\\w\\.]+) safari/i,/(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i],[c,m],[/(metasr)[\\/ ]?([\\w\\.]+)/i,/(lbbrowser)/i,/\\[(linkedin)app\\]/i],[c],[/((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i],[[c,U],m],[/safari (line)\\/([\\w\\.]+)/i,/\\b(line)\\/([\\w\\.]+)\\/iab/i,/(chromium|instagram)[\\/ ]([-\\w\\.]+)/i],[c,m],[/\\bgsa\\/([\\w\\.]+) .*safari\\//i],[m,[c,"GSA"]],[/headlesschrome(?:\\/([\\w\\.]+)| )/i],[m,[c,P+" Headless"]],[/ wv\\).+(chrome)\\/([\\w\\.]+)/i],[[c,P+" WebView"],m],[/droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i],[m,[c,"Android "+Q]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i],[c,m],[/version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i],[m,[c,"Mobile Safari"]],[/version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i],[m,c],[/webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i],[c,[m,Ut,pi]],[/(webkit|khtml)\\/([\\w\\.]+)/i],[c,m],[/(navigator|netscape\\d?)\\/([-\\w\\.]+)/i],[[c,"Netscape"],m],[/mobile vr; rv:([\\w\\.]+)\\).+firefox/i],[m,[c,ce+" Reality"]],[/ekiohf.+(flow)\\/([\\w\\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,/(firefox)\\/([\\w\\.]+)/i,/(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,/(links) \\(([\\w\\.]+)/i],[c,m],[/(cobalt)\\/([\\w\\.]+)/i],[c,[m,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i],[[_,"amd64"]],[/(ia32(?=;))/i],[[_,Fe]],[/((?:i[346]|x)86)[;\\)]/i],[[_,"ia32"]],[/\\b(aarch64|arm(v?8e?l?|_?64))\\b/i],[[_,"arm64"]],[/\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i],[[_,"armhf"]],[/windows (ce|mobile); ppc;/i],[[_,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i],[[_,/ower/,n,Fe]],[/(sun4\\w)[;\\)]/i],[[_,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i],[[_,Fe]]],device:[[/\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i],[a,[f,we],[l,y]],[/\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i,/samsung[- ]([-\\w]+)/i,/sec-(sgh\\w+)/i],[a,[f,we],[l,v]],[/((ipod|iphone)\\d+,\\d+)/i],[a,[f,R],[l,v]],[/(ipad\\d+,\\d+)/i],[a,[f,R],[l,y]],[/\\((ip(?:hone|od)[\\w ]*);/i],[a,[f,R],[l,v]],[/\\((ipad);[-\\w\\),; ]+apple/i,/applecoremedia\\/[\\w\\.]+ \\((ipad)/i,/\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i],[a,[f,R],[l,y]],[/(macintosh);/i],[a,[f,R]],[/\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i],[a,[f,Me],[l,y]],[/(?:huawei|honor)([-\\w ]+)[;\\)]/i,/\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i],[a,[f,Me],[l,v]],[/\\b(poco[\\w ]+)(?: bui|\\))/i,/\\b; (\\w+) build\\/hm\\1/i,/\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,/\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,/\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i],[[a,/_/g," "],[f,me],[l,v]],[/\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i],[[a,/_/g," "],[f,me],[l,y]],[/; (\\w+) bui.+ oppo/i,/\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i],[a,[f,"OPPO"],[l,v]],[/vivo (\\w+)(?: bui|\\))/i,/\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i],[a,[f,"Vivo"],[l,v]],[/\\b(rmx[12]\\d{3})(?: bui|;|\\))/i],[a,[f,"Realme"],[l,v]],[/\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,/\\bmot(?:orola)?[- ](\\w*)/i,/((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i],[a,[f,Be],[l,v]],[/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i],[a,[f,Be],[l,y]],[/((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i],[a,[f,Re],[l,y]],[/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,/\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,/\\blg-?([\\d\\w]+) bui/i],[a,[f,Re],[l,v]],[/(ideatab[-\\w ]+)/i,/lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i],[a,[f,"Lenovo"],[l,y]],[/(?:maemo|nokia).*(n900|lumia \\d+)/i,/nokia[-_ ]?([-\\w\\.]*)/i],[[a,/_/g," "],[f,"Nokia"],[l,v]],[/(pixel c)\\b/i],[a,[f,_e],[l,y]],[/droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i],[a,[f,_e],[l,v]],[/droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i],[a,[f,fe],[l,v]],[/sony tablet [ps]/i,/\\b(?:sony)?sgp\\w+(?: bui|\\))/i],[[a,"Xperia Tablet"],[f,fe],[l,y]],[/ (kb2005|in20[12]5|be20[12][59])\\b/i,/(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i],[a,[f,"OnePlus"],[l,v]],[/(alexa)webm/i,/(kf[a-z]{2}wi)( bui|\\))/i,/(kf[a-z]+)( bui|\\)).+silk\\//i],[a,[f,C],[l,y]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i],[[a,/(.+)/g,"Fire Phone $1"],[f,C],[l,v]],[/(playbook);[-\\w\\),; ]+(rim)/i],[a,f,[l,y]],[/\\b((?:bb[a-f]|st[hv])100-\\d)/i,/\\(bb10; (\\w+)/i],[a,[f,z],[l,v]],[/(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i],[a,[f,K],[l,y]],[/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i],[a,[f,K],[l,v]],[/(nexus 9)/i],[a,[f,"HTC"],[l,y]],[/(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,/(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,/(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i],[f,[a,/_/g," "],[l,v]],[/droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i],[a,[f,"Acer"],[l,y]],[/droid.+; (m[1-5] note) bui/i,/\\bmz-([-\\w]{2,})/i],[a,[f,"Meizu"],[l,v]],[/\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i],[a,[f,ke],[l,v]],[/(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,/(hp) ([\\w ]+\\w)/i,/(asus)-?(\\w+)/i,/(microsoft); (lumia[\\w ]+)/i,/(lenovo)[-_ ]?([-\\w]+)/i,/(jolla)/i,/(oppo) ?([\\w ]+) bui/i],[f,a,[l,v]],[/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\\/([\\w\\.]+)/i,/(nook)[\\w ]+build\\/(\\w+)/i,/(dell) (strea[kpr\\d ]*[\\dko])/i,/(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,/(trinity)[- ]*(t\\d{3}) bui/i,/(gigaset)[- ]+(q\\w{1,9}) bui/i,/(vodafone) ([\\w ]+)(?:\\)| bui)/i],[f,a,[l,y]],[/(surface duo)/i],[a,[f,Oe],[l,y]],[/droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i],[a,[f,"Fairphone"],[l,v]],[/(u304aa)/i],[a,[f,"AT&T"],[l,v]],[/\\bsie-(\\w*)/i],[a,[f,"Siemens"],[l,v]],[/\\b(rct\\w+) b/i],[a,[f,"RCA"],[l,y]],[/\\b(venue[\\d ]{2,7}) b/i],[a,[f,"Dell"],[l,y]],[/\\b(q(?:mv|ta)\\w+) b/i],[a,[f,"Verizon"],[l,y]],[/\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i],[a,[f,"Barnes & Noble"],[l,y]],[/\\b(tm\\d{3}\\w+) b/i],[a,[f,"NuVision"],[l,y]],[/\\b(k88) b/i],[a,[f,"ZTE"],[l,y]],[/\\b(nx\\d{3}j) b/i],[a,[f,"ZTE"],[l,v]],[/\\b(gen\\d{3}) b.+49h/i],[a,[f,"Swiss"],[l,v]],[/\\b(zur\\d{3}) b/i],[a,[f,"Swiss"],[l,y]],[/\\b((zeki)?tb.*\\b) b/i],[a,[f,"Zeki"],[l,y]],[/\\b([yr]\\d{2}) b/i,/\\b(dragon[- ]+touch |dt)(\\w{5}) b/i],[[f,"Dragon Touch"],a,[l,y]],[/\\b(ns-?\\w{0,9}) b/i],[a,[f,"Insignia"],[l,y]],[/\\b((nxa|next)-?\\w{0,9}) b/i],[a,[f,"NextBook"],[l,y]],[/\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[f,"Voice"],a,[l,v]],[/\\b(lvtel\\-)?(v1[12]) b/i],[[f,"LvTel"],a,[l,v]],[/\\b(ph-1) /i],[a,[f,"Essential"],[l,v]],[/\\b(v(100md|700na|7011|917g).*\\b) b/i],[a,[f,"Envizen"],[l,y]],[/\\b(trio[-\\w\\. ]+) b/i],[a,[f,"MachSpeed"],[l,y]],[/\\btu_(1491) b/i],[a,[f,"Rotor"],[l,y]],[/(shield[\\w ]+) b/i],[a,[f,"Nvidia"],[l,y]],[/(sprint) (\\w+)/i],[f,a,[l,v]],[/(kin\\.[onetw]{3})/i],[[a,/\\./g," "],[f,Oe],[l,v]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i],[a,[f,Ve],[l,y]],[/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i],[a,[f,Ve],[l,v]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[f,a,[l,b]],[/droid.+; (shield) bui/i],[a,[f,"Nvidia"],[l,b]],[/(playstation [345portablevi]+)/i],[a,[f,fe],[l,b]],[/\\b(xbox(?: one)?(?!; xbox))[\\); ]/i],[a,[f,Oe],[l,b]],[/smart-tv.+(samsung)/i],[f,[l,T]],[/hbbtv.+maple;(\\d+)/i],[[a,/^/,"SmartTV"],[f,we],[l,T]],[/(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i],[[f,Re],[l,T]],[/(apple) ?tv/i],[f,[a,R+" TV"],[l,T]],[/crkey/i],[[a,P+"cast"],[f,_e],[l,T]],[/droid.+aft(\\w)( bui|\\))/i],[a,[f,C],[l,T]],[/\\(dtv[\\);].+(aquos)/i,/(aquos-tv[\\w ]+)\\)/i],[a,[f,ke],[l,T]],[/(bravia[\\w ]+)( bui|\\))/i],[a,[f,fe],[l,T]],[/(mitv-\\w{5}) bui/i],[a,[f,me],[l,T]],[/\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,/hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i],[[f,Nt],[a,Nt],[l,T]],[/\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i],[[l,T]],[/((pebble))app/i],[f,a,[l,L]],[/droid.+; (glass) \\d/i],[a,[f,_e],[l,L]],[/droid.+; (wt63?0{2,3})\\)/i],[a,[f,Ve],[l,L]],[/(quest( 2)?)/i],[a,[f,U],[l,L]],[/(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i],[f,[l,k]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i],[a,[l,v]],[/droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i],[a,[l,y]],[/\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i],[[l,y]],[/(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i],[[l,v]],[/(android[-\\w\\. ]{0,9});.+buil/i],[a,[f,"Generic"]]],engine:[[/windows.+ edge\\/([\\w\\.]+)/i],[m,[c,Ce+"HTML"]],[/webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i],[m,[c,"Blink"]],[/(presto)\\/([\\w\\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,/ekioh(flow)\\/([\\w\\.]+)/i,/(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,/(icab)[\\/ ]([23]\\.[\\d\\.]+)/i],[c,m],[/rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i],[m,c]],os:[[/microsoft (windows) (vista|xp)/i],[c,m],[/(windows) nt 6\\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,/(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i],[c,[m,Ut,Cr]],[/(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i],[[c,"Windows"],[m,Ut,Cr]],[/ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,/cfnetwork\\/.+darwin/i],[[m,/_/g,"."],[c,"iOS"]],[/(mac os x) ?([\\w\\. ]*)/i,/(macintosh|mac_powerpc\\b)(?!.+haiku)/i],[[c,"Mac OS"],[m,/_/g,"."]],[/droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i],[m,c],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,/(blackberry)\\w*\\/([\\w\\.]*)/i,/(tizen|kaios)[\\/ ]([\\w\\.]+)/i,/\\((series40);/i],[c,m],[/\\(bb(10);/i],[m,[c,z]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i],[m,[c,"Symbian"]],[/mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i],[m,[c,ce+" OS"]],[/web0s;.+rt(tv)/i,/\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i],[m,[c,"webOS"]],[/crkey\\/([\\d\\.]+)/i],[m,[c,P+"cast"]],[/(cros) [\\w]+ ([\\w\\.]+\\w)/i],[[c,"Chromium OS"],m],[/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\\);]+)/i,/\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,/(mint)[\\/\\(\\) ]?(\\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,/(hurd|linux) ?([\\w\\.]*)/i,/(gnu) ?([\\w\\.]*)/i,/\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,/(haiku) (\\w+)/i],[c,m],[/(sunos) ?([\\w\\.\\d]*)/i],[[c,"Solaris"],m],[/((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,/(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,/\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,/(unix) ?([\\w\\.]*)/i],[c,m]]},Z=function(S,O){if(typeof S===u&&(O=S,S=e),!(this instanceof Z))return new Z(S,O).getResult();var I=S||(typeof t!==s&&t.navigator&&t.navigator.userAgent?t.navigator.userAgent:n),q=O?et(Rr,O):Rr;return this.getBrowser=function(){var x={};return x[c]=e,x[m]=e,He.call(x,I,q.browser),x.major=di(x.version),x},this.getCPU=function(){var x={};return x[_]=e,He.call(x,I,q.cpu),x},this.getDevice=function(){var x={};return x[f]=e,x[a]=e,x[l]=e,He.call(x,I,q.device),x},this.getEngine=function(){var x={};return x[c]=e,x[m]=e,He.call(x,I,q.engine),x},this.getOS=function(){var x={};return x[c]=e,x[m]=e,He.call(x,I,q.os),x},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return I},this.setUA=function(x){return I=typeof x===d&&x.length>w?Nt(x,w):x,this},this.setUA(I),this};Z.VERSION=r,Z.BROWSER=tt([c,m,p]),Z.CPU=tt([_]),Z.DEVICE=tt([a,f,l,b,v,T,y,L,k]),Z.ENGINE=Z.OS=tt([c,m]),typeof Qe!==s?(typeof Ct!==s&&Ct.exports&&(Qe=Ct.exports=Z),Qe.UAParser=Z):typeof define===o&&define.amd?define(function(){return Z}):typeof t!==s&&(t.UAParser=Z);var Ae=typeof t!==s&&(t.jQuery||t.Zepto);if(Ae&&!Ae.ua){var rt=new Z;Ae.ua=rt.getResult(),Ae.ua.get=function(){return rt.getUA()},Ae.ua.set=function(S){rt.setUA(S);var O=rt.getResult();for(var I in O)Ae.ua[I]=O[I]}}})(typeof window=="object"?window:Qe)});var oe=(t,e)=>{Vt(t);let r=t.querySelector("aside");r.dataset.view=e,r.classList.remove("section-ready"),setTimeout(()=>{r.classList.add("section-ready")},200)},Ar=t=>{Array.from(t.querySelectorAll(".back-button")).forEach(e=>{e.addEventListener("click",r=>{Vt(t),r.preventDefault(),r.stopPropagation();let n=r.target;oe(t,n?.dataset.back||"nav-home")})})},Bt=(t,e)=>{Vt(t);let r=t.querySelector("aside"),n=document.createElement("div");n.className="ui-toast",n.innerHTML=e,r.appendChild(n),setTimeout(()=>{n.classList.add("ui-toast-show"),setTimeout(()=>{n.classList.remove("ui-toast-show"),setTimeout(()=>{n.remove()},500)},4e3)},30)},Vt=t=>{let e=t.querySelector("aside");Array.from(e.querySelectorAll(".ui-toast")).forEach(n=>{n.classList.remove("ui-toast-show")})},it=()=>{let t=Dr();return localStorage.getItem(t)!=="true"},Ft=t=>{let e=Dr();t?localStorage.removeItem(e):localStorage.setItem(e,"true")},Dr=()=>Ti("disableEdit"),Ti=t=>\`builder.__LOCAL_APP_ID__.\${t}\`,Nr=()=>{let e=document.body.querySelector("[builder-content-id]")?.getAttribute("builder-content-id");return je(e)},je=(t,e)=>{let r="/content";t&&(r+="/"+t+"/edit");let n=new URL(r,"https://builder.io");t&&e&&n.searchParams.set("selectedBlock",e);let i=new URL(location.pathname,location.href);return n.searchParams.set("overridePreviewUrl",i.href),n.href},ot="__DEV_TOOLS_URL__",G={components:[],registryPath:"",registryDisplayPath:"",frameworks:[],dependencies:[],publicApiKey:void 0,devToolsVersion:""},le=t=>{G.components=t.components,G.registryPath=t.registryPath,G.registryDisplayPath=t.registryDisplayPath,G.dependencies=t.dependencies,G.publicApiKey=t.publicApiKey};function Ur(t){let e=null,r=document.querySelector("builder-dev-tools-menu"),n=()=>{t.hide()},i=u=>{let d=u.target;if(!d){n();return}if(d.closest("builder-dev-tools-edit"))return;let p=d.closest("[builder-content-id]"),a=d.closest("[builder-id]");if(!p||!a){t.hide();return}let c=t.show(p,a);!c||c===e||(r.highlightOpener(),e=c)};document.addEventListener("pointerover",i,{passive:!0}),document.addEventListener("pointerleave",n,{passive:!0}),document.addEventListener("pointercancel",n,{passive:!0}),document.addEventListener("visibilitychange",n,{passive:!0}),window.addEventListener("popstate",n,{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 st=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"),Ur(this)}show(e,r){if(!it())return this.hide(),null;let n=e.getAttribute("builder-content-id"),i=r.getAttribute("builder-id");if(!n||!i)return this.hide(),null;let o=this.block,s=this.openInBuilder,u=r.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 d=s.getBoundingClientRect();if(d.width>u.width){let p=d.width-u.width;s.style.left=p/2*-1+"px"}else s.style.left="";return s.href=je(n,i),this.style.display="block",i}hide(){this.style.display=""}};var Mr="preview-url";var Br="_b-uid";var Vr="/~builder-connect";var Fr="/~builder-dev-tools";var Hr="https://cdn.builder.io/api/v1/proxy-api?url=https://api2.amplitude.com/2/httpapi";var qr=()=>se({type:"validateBuilder"}),De=t=>se({type:"launchEditor",data:t}),jr=t=>se({type:"getRegistry",data:t}),Gr=t=>se({type:"loadComponent",data:t}),Kr=t=>se({type:"registerComponent",data:t}),Wr=t=>se({type:"setComponentInfo",data:t}),at=t=>se({type:"setComponentInput",data:t}),$r=t=>se({type:"unregisterComponent",data:t}),Yr=t=>se({type:"enableDevTools",data:{enabled:t}}),zr=()=>se({type:"localConfig"}),se=async t=>{let e=new URL(Fr,ot),r;try{r=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((r.headers.get("content-type")||"").includes("application/json")){let i=await r.json();if(r.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: \${r.status}, \${await r.text()}\`)};var Qr=[{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"}],ut=["color","date","email","file","longText","richText","string"],ct=["number"],lt=["boolean"],dt=["list"],pt=["object"];function ft(t){return ut.includes(t)?"string":ct.includes(t)?"number":lt.includes(t)?"boolean":dt.includes(t)?"array":pt.includes(t)?"object":"string"}var Io=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 Ht=function(t,e){return Ht=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[i]=n[i])},Ht(t,e)};function ae(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Ht(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}var E=function(){return E=Object.assign||function(e){for(var r,n=1,i=arguments.length;n<i;n++){r=arguments[n];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e},E.apply(this,arguments)};function Ge(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r}function g(t,e,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function u(a){try{p(n.next(a))}catch(c){s(c)}}function d(a){try{p(n.throw(a))}catch(c){s(c)}}function p(a){a.done?o(a.value):i(a.value).then(u,d)}p((n=n.apply(t,e||[])).next())})}function h(t,e){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,i,o,s=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return s.next=u(0),s.throw=u(1),s.return=u(2),typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function u(p){return function(a){return d([p,a])}}function d(p){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,p[0]&&(r=0)),r;)try{if(n=1,i&&(o=p[0]&2?i.return:p[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,p[1])).done)return o;switch(i=0,o&&(p=[p[0]&2,o.value]),p[0]){case 0:case 1:o=p;break;case 4:return r.label++,{value:p[1],done:!1};case 5:r.label++,i=p[1],p=[0];continue;case 7:p=r.ops.pop(),r.trys.pop();continue;default:if(o=r.trys,!(o=o.length>0&&o[o.length-1])&&(p[0]===6||p[0]===2)){r=0;continue}if(p[0]===3&&(!o||p[1]>o[0]&&p[1]<o[3])){r.label=p[1];break}if(p[0]===6&&r.label<o[1]){r.label=o[1],o=p;break}if(o&&r.label<o[2]){r.label=o[2],r.ops.push(p);break}o[2]&&r.ops.pop(),r.trys.pop();continue}p=e.call(t,r)}catch(a){p=[6,a],i=0}finally{n=o=0}if(p[0]&5)throw p[1];return{value:p[0]?p[1]:void 0,done:!0}}}function J(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function A(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,o=[],s;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)o.push(i.value)}catch(u){s={error:u}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o}function ee(t,e,r){if(r||arguments.length===2)for(var n=0,i=e.length,o;n<i;n++)(o||!(n in e))&&(o||(o=Array.prototype.slice.call(e,0,n)),o[n]=e[n]);return t.concat(o||Array.prototype.slice.call(e))}var mt={};bi(mt,{IdentifyOperation:()=>B,LogLevel:()=>Y,PluginType:()=>N,RevenueProperty:()=>re,ServerZone:()=>Se,SpecialEventType:()=>de,Status:()=>M,TransportType:()=>Ie});var B;(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"})(B||(B={}));var re;(function(t){t.REVENUE_PRODUCT_ID="$productId",t.REVENUE_QUANTITY="$quantity",t.REVENUE_PRICE="$price",t.REVENUE_TYPE="$revenueType",t.REVENUE_CURRENCY="$currency",t.REVENUE="$revenue"})(re||(re={}));var de;(function(t){t.IDENTIFY="$identify",t.GROUP_IDENTIFY="$groupidentify",t.REVENUE="revenue_amount"})(de||(de={}));var Y;(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"})(Y||(Y={}));var N;(function(t){t.BEFORE="before",t.ENRICHMENT="enrichment",t.DESTINATION="destination"})(N||(N={}));var Se;(function(t){t.US="US",t.EU="EU",t.STAGING="STAGING"})(Se||(Se={}));var M;(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"})(M||(M={}));var Ie;(function(t){t.XHR="xhr",t.SendBeacon="beacon",t.Fetch="fetch"})(Ie||(Ie={}));var qt="-",xe="AMP",jt="".concat(xe,"_unsent"),Gt="https://api2.amplitude.com/2/httpapi",Xr="https://api.eu.amplitude.com/2/httpapi",Zr="https://api2.amplitude.com/batch",Jr="https://api.eu.amplitude.com/batch";var wi=1e3,vt=function(t){if(Object.keys(t).length>wi)return!1;for(var e in t){var r=t[e];if(!Kt(e,r))return!1}return!0},Kt=function(t,e){var r,n;if(typeof t!="string")return!1;if(Array.isArray(e)){var i=!0;try{for(var o=J(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&&vt(u);else if(!["number","string"].includes(typeof u))return!1;if(!i)return!1}}catch(d){r={error:d}}finally{try{s&&!s.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}}else{if(e==null)return!1;if(typeof e=="object")return vt(e);if(!["number","string","boolean"].includes(typeof e))return!1}return!0};var ne=function(){function t(){this._propertySet=new Set,this._properties={}}return t.prototype.getUserProperties=function(){return E({},this._properties)},t.prototype.set=function(e,r){return this._safeSet(B.SET,e,r),this},t.prototype.setOnce=function(e,r){return this._safeSet(B.SET_ONCE,e,r),this},t.prototype.append=function(e,r){return this._safeSet(B.APPEND,e,r),this},t.prototype.prepend=function(e,r){return this._safeSet(B.PREPEND,e,r),this},t.prototype.postInsert=function(e,r){return this._safeSet(B.POSTINSERT,e,r),this},t.prototype.preInsert=function(e,r){return this._safeSet(B.PREINSERT,e,r),this},t.prototype.remove=function(e,r){return this._safeSet(B.REMOVE,e,r),this},t.prototype.add=function(e,r){return this._safeSet(B.ADD,e,r),this},t.prototype.unset=function(e){return this._safeSet(B.UNSET,e,qt),this},t.prototype.clearAll=function(){return this._properties={},this._properties[B.CLEAR_ALL]=qt,this},t.prototype._safeSet=function(e,r,n){if(this._validate(e,r,n)){var i=this._properties[e];return i===void 0&&(i={},this._properties[e]=i),i[r]=n,this._propertySet.add(r),!0}return!1},t.prototype._validate=function(e,r,n){return this._properties[B.CLEAR_ALL]!==void 0||this._propertySet.has(r)?!1:e===B.ADD?typeof n=="number":e!==B.UNSET&&e!==B.REMOVE?Kt(r,n):!0},t}();var en=function(t,e,r){var n=typeof t=="string"?{event_type:t}:t;return E(E(E({},n),r),e&&{event_properties:e})},Ke=function(t,e){var r=E(E({},e),{event_type:de.IDENTIFY,user_properties:t.getUserProperties()});return r},tn=function(t,e,r,n){var i,o=E(E({},n),{event_type:de.GROUP_IDENTIFY,group_properties:r.getUserProperties(),groups:(i={},i[t]=e,i)});return o},rn=function(t,e,r){var n,i=new ne;i.set(t,e);var o=E(E({},r),{event_type:de.IDENTIFY,user_properties:i.getUserProperties(),groups:(n={},n[t]=e,n)});return o},nn=function(t,e){return E(E({},e),{event_type:de.REVENUE,event_properties:t.getEventProperties()})};var ve=function(t,e,r){return e===void 0&&(e=0),r===void 0&&(r=M.Unknown),{event:t,code:e,message:r}};var on=function(){function t(e){this.client=e,this.queue=[],this.applying=!1,this.plugins=[]}return t.prototype.register=function(e,r){return g(this,void 0,void 0,function(){return h(this,function(n){switch(n.label){case 0:return[4,e.setup(r,this.client)];case 1:return n.sent(),this.plugins.push(e),[2]}})})},t.prototype.deregister=function(e,r){var n;return g(this,void 0,void 0,function(){var i,o;return h(this,function(s){switch(s.label){case 0:return i=this.plugins.findIndex(function(u){return u.name===e}),i===-1?(r.loggerProvider.warn("Plugin with name ".concat(e," does not exist, skipping deregistration")),[2]):(o=this.plugins[i],this.plugins.splice(i,1),[4,(n=o.teardown)===null||n===void 0?void 0:n.call(o)]);case 1:return s.sent(),[2]}})})},t.prototype.reset=function(e){this.applying=!1;var r=this.plugins;r.map(function(n){var i;return(i=n.teardown)===null||i===void 0?void 0:i.call(n)}),this.plugins=[],this.client=e},t.prototype.push=function(e){var r=this;return new Promise(function(n){r.queue.push([e,n]),r.scheduleApply(0)})},t.prototype.scheduleApply=function(e){var r=this;this.applying||(this.applying=!0,setTimeout(function(){r.apply(r.queue.shift()).then(function(){r.applying=!1,r.queue.length>0&&r.scheduleApply(0)})},e))},t.prototype.apply=function(e){return g(this,void 0,void 0,function(){var r,n,i,o,s,u,d,f,m,p,a,c,l,f,m,_,b,v,y,T,L,k;return h(this,function(w){switch(w.label){case 0:if(!e)return[2];r=A(e,1),n=r[0],i=A(e,2),o=i[1],s=this.plugins.filter(function(C){return C.type===N.BEFORE}),w.label=1;case 1:w.trys.push([1,6,7,8]),u=J(s),d=u.next(),w.label=2;case 2:return d.done?[3,5]:(f=d.value,[4,f.execute(E({},n))]);case 3:if(m=w.sent(),m===null)return o({event:n,code:0,message:""}),[2];n=m,w.label=4;case 4:return d=u.next(),[3,2];case 5:return[3,8];case 6:return p=w.sent(),y={error:p},[3,8];case 7:try{d&&!d.done&&(T=u.return)&&T.call(u)}finally{if(y)throw y.error}return[7];case 8:a=this.plugins.filter(function(C){return C.type===N.ENRICHMENT}),w.label=9;case 9:w.trys.push([9,14,15,16]),c=J(a),l=c.next(),w.label=10;case 10:return l.done?[3,13]:(f=l.value,[4,f.execute(E({},n))]);case 11:if(m=w.sent(),m===null)return o({event:n,code:0,message:""}),[2];n=m,w.label=12;case 12:return l=c.next(),[3,10];case 13:return[3,16];case 14:return _=w.sent(),L={error:_},[3,16];case 15:try{l&&!l.done&&(k=c.return)&&k.call(c)}finally{if(L)throw L.error}return[7];case 16:return b=this.plugins.filter(function(C){return C.type===N.DESTINATION}),v=b.map(function(C){var R=E({},n);return C.execute(R).catch(function(K){return ve(R,0,String(K))})}),Promise.all(v).then(function(C){var R=A(C,1),K=R[0];o(K)}),[2]}})})},t.prototype.flush=function(){return g(this,void 0,void 0,function(){var e,r,n,i=this;return h(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(),r=this.plugins.filter(function(s){return s.type===N.DESTINATION}),n=r.map(function(s){return s.flush&&s.flush()}),[4,Promise.all(n)];case 2:return o.sent(),[2]}})})},t}();var sn="Event tracked successfully",an="Unexpected error occurred",un="Event rejected due to exceeded retry count",cn="Event skipped due to optOut config",ln="Event rejected due to missing API key",dn="Invalid API key",pn="Client not initialized";var X=function(t){return{promise:t||Promise.resolve()}};var Wt=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 on(this),this.name=e}return t.prototype._init=function(e){return g(this,void 0,void 0,function(){return h(this,function(r){switch(r.label){case 0:return this.config=e,this.timeline.reset(this),[4,this.runQueuedFunctions("q")];case 1:return r.sent(),[2]}})})},t.prototype.runQueuedFunctions=function(e){return g(this,void 0,void 0,function(){var r,n,i,o,s,u,d;return h(this,function(p){switch(p.label){case 0:r=this[e],this[e]=[],p.label=1;case 1:p.trys.push([1,6,7,8]),n=J(r),i=n.next(),p.label=2;case 2:return i.done?[3,5]:(o=i.value,[4,o()]);case 3:p.sent(),p.label=4;case 4:return i=n.next(),[3,2];case 5:return[3,8];case 6:return s=p.sent(),u={error:s},[3,8];case 7:try{i&&!i.done&&(d=n.return)&&d.call(n)}finally{if(u)throw u.error}return[7];case 8:return[2]}})})},t.prototype.track=function(e,r,n){var i=en(e,r,n);return X(this.dispatch(i))},t.prototype.identify=function(e,r){var n=Ke(e,r);return X(this.dispatch(n))},t.prototype.groupIdentify=function(e,r,n,i){var o=tn(e,r,n,i);return X(this.dispatch(o))},t.prototype.setGroup=function(e,r,n){var i=rn(e,r,n);return X(this.dispatch(i))},t.prototype.revenue=function(e,r){var n=nn(e,r);return X(this.dispatch(n))},t.prototype.add=function(e){return this.config?X(this.timeline.register(e,this.config)):(this.q.push(this.add.bind(this,e)),X())},t.prototype.remove=function(e){return this.config?X(this.timeline.deregister(e,this.config)):(this.q.push(this.remove.bind(this,e)),X())},t.prototype.dispatchWithCallback=function(e,r){if(!this.config)return r(ve(e,0,pn));this.process(e).then(r)},t.prototype.dispatch=function(e){return g(this,void 0,void 0,function(){var r=this;return h(this,function(n){return this.config?[2,this.process(e)]:[2,new Promise(function(i){r.dispatchQ.push(r.dispatchWithCallback.bind(r,e,i))})]})})},t.prototype.process=function(e){return g(this,void 0,void 0,function(){var i,r,n,i;return h(this,function(o){switch(o.label){case 0:return o.trys.push([0,2,,3]),this.config.optOut?[2,ve(e,0,cn)]:[4,this.timeline.push(e)];case 1:return i=o.sent(),i.code===200?this.config.loggerProvider.log(i.message):this.config.loggerProvider.error(i.message),[2,i];case 2:return r=o.sent(),this.config.loggerProvider.error(r),n=String(r),i=ve(e,0,n),[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 X(this.timeline.flush())},t}();var gt=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.setCurrency=function(e){return this.currency=e,this},t.prototype.setRevenue=function(e){return this.revenue=e,this},t.prototype.setEventProperties=function(e){return vt(e)&&(this.properties=e),this},t.prototype.getEventProperties=function(){var e=this.properties?E({},this.properties):{};return e[re.REVENUE_PRODUCT_ID]=this.productId,e[re.REVENUE_QUANTITY]=this.quantity,e[re.REVENUE_PRICE]=this.price,e[re.REVENUE_TYPE]=this.revenueType,e[re.REVENUE_CURRENCY]=this.currency,e[re.REVENUE]=this.revenue,e},t}();var fn=function(t,e){var r=Math.max(e,1);return t.reduce(function(n,i,o){var s=Math.floor(o/r);return n[s]||(n[s]=[]),n[s].push(i),n},[])};var ht="Amplitude Logger ",mn=function(){function t(){this.logLevel=Y.None}return t.prototype.disable=function(){this.logLevel=Y.None},t.prototype.enable=function(e){e===void 0&&(e=Y.Warn),this.logLevel=e},t.prototype.log=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];this.logLevel<Y.Verbose||console.log("".concat(ht,"[Log]: ").concat(e.join(" ")))},t.prototype.warn=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];this.logLevel<Y.Warn||console.warn("".concat(ht,"[Warn]: ").concat(e.join(" ")))},t.prototype.error=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];this.logLevel<Y.Error||console.error("".concat(ht,"[Error]: ").concat(e.join(" ")))},t.prototype.debug=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];this.logLevel<Y.Debug||console.log("".concat(ht,"[Debug]: ").concat(e.join(" ")))},t}();var yt=function(){return{flushMaxRetries:12,flushQueueSize:200,flushIntervalMillis:1e4,instanceName:"$default_instance",logLevel:Y.Warn,loggerProvider:new mn,optOut:!1,serverUrl:Gt,serverZone:Se.US,useBatch:!1}},$t=function(){function t(e){var r,n,i,o;this._optOut=!1;var s=yt();this.apiKey=e.apiKey,this.flushIntervalMillis=(r=e.flushIntervalMillis)!==null&&r!==void 0?r: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=(n=e.logLevel)!==null&&n!==void 0?n:s.logLevel,this.minIdLength=e.minIdLength,this.plan=e.plan,this.ingestionMetadata=e.ingestionMetadata,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=Yt(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 Si=function(t,e){return t===Se.EU?e?Jr:Xr:e?Zr:Gt},Yt=function(t,e,r){if(t===void 0&&(t=""),e===void 0&&(e=yt().serverZone),r===void 0&&(r=yt().useBatch),t)return{serverUrl:t,serverZone:void 0};var n=["US","EU"].includes(e)?e:yt().serverZone;return{serverZone:n,serverUrl:Si(n,r)}};function Ii(t){return t instanceof Error?t.message:String(t)}function bt(t){var e="";try{"body"in t&&(e=JSON.stringify(t.body))}catch{}return e}var zt=function(){function t(){this.name="amplitude",this.type=N.DESTINATION,this.retryTimeout=1e3,this.throttleTimeout=3e4,this.storageKey="",this.scheduled=null,this.queue=[]}return t.prototype.setup=function(e){var r;return g(this,void 0,void 0,function(){var n,i=this;return h(this,function(o){switch(o.label){case 0:return this.config=e,this.storageKey="".concat(jt,"_").concat(this.config.apiKey.substring(0,10)),[4,(r=this.config.storageProvider)===null||r===void 0?void 0:r.get(this.storageKey)];case 1:return n=o.sent(),this.saveEvents(),n&&n.length>0&&Promise.all(n.map(function(s){return i.execute(s)})).catch(),[2,Promise.resolve(void 0)]}})})},t.prototype.execute=function(e){var r=this;return new Promise(function(n){var i={event:e,attempts:0,callback:function(o){return n(o)},timeout:0};r.addToQueue(i)})},t.prototype.addToQueue=function(){for(var e=this,r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];var i=r.filter(function(o){return o.attempts<e.config.flushMaxRetries?(o.attempts+=1,!0):(e.fulfillRequest([o],500,un),!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 r=this;this.scheduled||(this.scheduled=setTimeout(function(){r.flush(!0).then(function(){r.queue.length>0&&r.schedule(e)})},e))},t.prototype.flush=function(e){return e===void 0&&(e=!1),g(this,void 0,void 0,function(){var r,n,i,o=this;return h(this,function(s){switch(s.label){case 0:return r=[],n=[],this.queue.forEach(function(u){return u.timeout===0?r.push(u):n.push(u)}),this.queue=n,this.scheduled&&(clearTimeout(this.scheduled),this.scheduled=null),i=fn(r,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,r){return r===void 0&&(r=!0),g(this,void 0,void 0,function(){var n,i,o,s,u;return h(this,function(d){switch(d.label){case 0:if(!this.config.apiKey)return[2,this.fulfillRequest(e,400,ln)];n={api_key:this.config.apiKey,events:e.map(function(p){var a=p.event,c=a.extra,l=Ge(a,["extra"]);return l}),options:{min_id_length:this.config.minIdLength}},d.label=1;case 1:return d.trys.push([1,3,,4]),i=Yt(this.config.serverUrl,this.config.serverZone,this.config.useBatch).serverUrl,[4,this.config.transportProvider.send(i,n)];case 2:return o=d.sent(),o===null?(this.fulfillRequest(e,0,an),[2]):r?(this.handleResponse(o,e),[3,4]):("body"in o?this.fulfillRequest(e,o.statusCode,"".concat(o.status,": ").concat(bt(o))):this.fulfillRequest(e,o.statusCode,o.status),[2]);case 3:return s=d.sent(),this.config.loggerProvider.error(s),u=Ii(s),this.fulfillRequest(e,0,u),[3,4];case 4:return[2]}})})},t.prototype.handleResponse=function(e,r){var n=e.status;switch(n){case M.Success:{this.handleSuccessResponse(e,r);break}case M.Invalid:{this.handleInvalidResponse(e,r);break}case M.PayloadTooLarge:{this.handlePayloadTooLargeResponse(e,r);break}case M.RateLimit:{this.handleRateLimitResponse(e,r);break}default:{this.config.loggerProvider.warn(\`{code: 0, error: "Status '\`.concat(n,"' provided for ").concat(r.length,' events"}')),this.handleOtherResponse(r);break}}},t.prototype.handleSuccessResponse=function(e,r){this.fulfillRequest(r,e.statusCode,sn)},t.prototype.handleInvalidResponse=function(e,r){var n=this;if(e.body.missingField||e.body.error.startsWith(dn)){this.fulfillRequest(r,e.statusCode,e.body.error);return}var i=ee(ee(ee(ee([],A(Object.values(e.body.eventsWithInvalidFields)),!1),A(Object.values(e.body.eventsWithMissingFields)),!1),A(Object.values(e.body.eventsWithInvalidIdLengths)),!1),A(e.body.silencedEvents),!1).flat(),o=new Set(i),s=r.filter(function(u,d){if(o.has(d)){n.fulfillRequest([u],e.statusCode,e.body.error);return}return!0});s.length>0&&this.config.loggerProvider.warn(bt(e)),this.addToQueue.apply(this,ee([],A(s),!1))},t.prototype.handlePayloadTooLargeResponse=function(e,r){if(r.length===1){this.fulfillRequest(r,e.statusCode,e.body.error);return}this.config.loggerProvider.warn(bt(e)),this.config.flushQueueSize/=2,this.addToQueue.apply(this,ee([],A(r),!1))},t.prototype.handleRateLimitResponse=function(e,r){var n=this,i=Object.keys(e.body.exceededDailyQuotaUsers),o=Object.keys(e.body.exceededDailyQuotaDevices),s=e.body.throttledEvents,u=new Set(i),d=new Set(o),p=new Set(s),a=r.filter(function(c,l){if(c.event.user_id&&u.has(c.event.user_id)||c.event.device_id&&d.has(c.event.device_id)){n.fulfillRequest([c],e.statusCode,e.body.error);return}return p.has(l)&&(c.timeout=n.throttleTimeout),!0});a.length>0&&this.config.loggerProvider.warn(bt(e)),this.addToQueue.apply(this,ee([],A(a),!1))},t.prototype.handleOtherResponse=function(e){var r=this;this.addToQueue.apply(this,ee([],A(e.map(function(n){return n.timeout=n.attempts*r.retryTimeout,n})),!1))},t.prototype.fulfillRequest=function(e,r,n){this.saveEvents(),e.forEach(function(i){return i.callback(ve(i.event,r,n))})},t.prototype.saveEvents=function(){if(this.config.storageProvider){var e=Array.from(this.queue.map(function(r){return r.event}));this.config.storageProvider.set(this.storageKey,e)}},t}();var xi=function(t){t===void 0&&(t=0);var e=new Error().stack||"";return e.split(\`
|
|
26
26
|
\`).slice(2+t).map(function(r){return r.trim()})},V=function(t){return function(){var e=E({},t.config),r=e.loggerProvider,n=e.logLevel;return{logger:r,logLevel:n}}},Li=function(t,e){var r,n;e=e.replace(/\\[(\\w+)\\]/g,".$1"),e=e.replace(/^\\./,"");try{for(var i=J(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){r={error:u}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return t},F=function(t,e){return function(){var r,n,i={};try{for(var o=J(e),s=o.next();!s.done;s=o.next()){var u=s.value;i[u]=Li(t,u)}}catch(d){r={error:d}}finally{try{s&&!s.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return i}},H=function(t,e,r,n,i){return i===void 0&&(i=null),function(){for(var o=[],s=0;s<arguments.length;s++)o[s]=arguments[s];var u=r(),d=u.logger,p=u.logLevel;if(p&&p<Y.Debug||!p||!d)return t.apply(i,o);var a={type:"invoke public method",name:e,args:o,stacktrace:xi(1),time:{start:new Date().toISOString()},states:{}};n&&a.states&&(a.states.before=n());var c=t.apply(i,o);return c&&c.promise?c.promise.then(function(){n&&a.states&&(a.states.after=n()),a.time&&(a.time.end=new Date().toISOString()),d.debug(JSON.stringify(a,null,2))}):(n&&a.states&&(a.states.after=n()),a.time&&(a.time.end=new Date().toISOString()),d.debug(JSON.stringify(a,null,2))),c}};var ge=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,ge)};var Et=function(){function t(){this.memoryStorage=new Map}return t.prototype.isEnabled=function(){return g(this,void 0,void 0,function(){return h(this,function(e){return[2,!0]})})},t.prototype.get=function(e){return g(this,void 0,void 0,function(){return h(this,function(r){return[2,this.memoryStorage.get(e)]})})},t.prototype.getRaw=function(e){return g(this,void 0,void 0,function(){var r;return h(this,function(n){switch(n.label){case 0:return[4,this.get(e)];case 1:return r=n.sent(),[2,r?JSON.stringify(r):void 0]}})})},t.prototype.set=function(e,r){return g(this,void 0,void 0,function(){return h(this,function(n){return this.memoryStorage.set(e,r),[2]})})},t.prototype.remove=function(e){return g(this,void 0,void 0,function(){return h(this,function(r){return this.memoryStorage.delete(e),[2]})})},t.prototype.reset=function(){return g(this,void 0,void 0,function(){return h(this,function(e){return this.memoryStorage.clear(),[2]})})},t}();var Le=function(){function t(){}return t.prototype.send=function(e,r){return Promise.resolve(null)},t.prototype.buildResponse=function(e){var r,n,i,o,s,u,d,p,a,c,l,f,m,_,b,v,y,T,L,k,w,C;if(typeof e!="object")return null;var R=e.code||0,K=this.buildStatus(R);switch(K){case M.Success:return{status:K,statusCode:R,body:{eventsIngested:(r=e.events_ingested)!==null&&r!==void 0?r:0,payloadSizeBytes:(n=e.payload_size_bytes)!==null&&n!==void 0?n:0,serverUploadTime:(i=e.server_upload_time)!==null&&i!==void 0?i:0}};case M.Invalid:return{status:K,statusCode:R,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:(d=e.events_with_missing_fields)!==null&&d!==void 0?d:{},eventsWithInvalidIdLengths:(p=e.events_with_invalid_id_lengths)!==null&&p!==void 0?p:{},epsThreshold:(a=e.eps_threshold)!==null&&a!==void 0?a:0,exceededDailyQuotaDevices:(c=e.exceeded_daily_quota_devices)!==null&&c!==void 0?c:{},silencedDevices:(l=e.silenced_devices)!==null&&l!==void 0?l:[],silencedEvents:(f=e.silenced_events)!==null&&f!==void 0?f:[],throttledDevices:(m=e.throttled_devices)!==null&&m!==void 0?m:{},throttledEvents:(_=e.throttled_events)!==null&&_!==void 0?_:[]}};case M.PayloadTooLarge:return{status:K,statusCode:R,body:{error:(b=e.error)!==null&&b!==void 0?b:""}};case M.RateLimit:return{status:K,statusCode:R,body:{error:(v=e.error)!==null&&v!==void 0?v:"",epsThreshold:(y=e.eps_threshold)!==null&&y!==void 0?y:0,throttledDevices:(T=e.throttled_devices)!==null&&T!==void 0?T:{},throttledUsers:(L=e.throttled_users)!==null&&L!==void 0?L:{},exceededDailyQuotaDevices:(k=e.exceeded_daily_quota_devices)!==null&&k!==void 0?k:{},exceededDailyQuotaUsers:(w=e.exceeded_daily_quota_users)!==null&&w!==void 0?w:{},throttledEvents:(C=e.throttled_events)!==null&&C!==void 0?C:[]}};case M.Timeout:default:return{status:K,statusCode:R}}},t.prototype.buildStatus=function(e){return e>=200&&e<300?M.Success:e===429?M.RateLimit:e===413?M.PayloadTooLarge:e===408?M.Timeout:e>=400&&e<500?M.Invalid:e>=500?M.Failed:M.Unknown},t}();var Pi=function(){function t(){}return t.prototype.getApplicationContext=function(){return{versionName:this.versionName,language:Ci(),platform:"Web",os:void 0,deviceModel:void 0}},t}(),Ci=function(){return typeof navigator<"u"&&(navigator.languages&&navigator.languages[0]||navigator.language)||""},Ri=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(r){e(r)}),this.queue=[])},t}(),he=function(){return he=Object.assign||function(e){for(var r,n=1,i=arguments.length;n<i;n++){r=arguments[n];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e},he.apply(this,arguments)};function _t(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function vn(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,o=[],s;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)o.push(i.value)}catch(u){s={error:u}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o}var Tt=function(t,e){var r,n,i=["string","number","boolean","undefined"],o=typeof t,s=typeof e;if(o!==s)return!1;try{for(var u=_t(i),d=u.next();!d.done;d=u.next()){var p=d.value;if(p===o)return t===e}}catch(b){r={error:b}}finally{try{d&&!d.done&&(n=u.return)&&n.call(u)}finally{if(r)throw r.error}}if(t==null&&e==null)return!0;if(t==null||e==null||t.length!==e.length)return!1;var a=Array.isArray(t),c=Array.isArray(e);if(a!==c)return!1;if(a&&c){for(var l=0;l<t.length;l++)if(!Tt(t[l],e[l]))return!1}else{var f=Object.keys(t).sort(),m=Object.keys(e).sort();if(!Tt(f,m))return!1;var _=!0;return Object.keys(t).forEach(function(b){Tt(t[b],e[b])||(_=!1)}),_}return!0},Oi="$set",ki="$unset",Ai="$clearAll";Object.entries||(Object.entries=function(t){for(var e=Object.keys(t),r=e.length,n=new Array(r);r--;)n[r]=[e[r],t[e[r]]];return n});var Di=function(){function t(){this.identity={userProperties:{}},this.listeners=new Set}return t.prototype.editIdentity=function(){var e=this,r=he({},this.identity.userProperties),n=he(he({},this.identity),{userProperties:r});return{setUserId:function(i){return n.userId=i,this},setDeviceId:function(i){return n.deviceId=i,this},setUserProperties:function(i){return n.userProperties=i,this},setOptOut:function(i){return n.optOut=i,this},updateUserProperties:function(i){var o,s,u,d,p,a,c=n.userProperties||{};try{for(var l=_t(Object.entries(i)),f=l.next();!f.done;f=l.next()){var m=vn(f.value,2),_=m[0],b=m[1];switch(_){case Oi:try{for(var v=(u=void 0,_t(Object.entries(b))),y=v.next();!y.done;y=v.next()){var T=vn(y.value,2),L=T[0],k=T[1];c[L]=k}}catch(R){u={error:R}}finally{try{y&&!y.done&&(d=v.return)&&d.call(v)}finally{if(u)throw u.error}}break;case ki:try{for(var w=(p=void 0,_t(Object.keys(b))),C=w.next();!C.done;C=w.next()){var L=C.value;delete c[L]}}catch(R){p={error:R}}finally{try{C&&!C.done&&(a=w.return)&&a.call(w)}finally{if(p)throw p.error}}break;case Ai:c={};break}}}catch(R){o={error:R}}finally{try{f&&!f.done&&(s=l.return)&&s.call(l)}finally{if(o)throw o.error}}return n.userProperties=c,this},commit:function(){return e.setIdentity(n),this}}},t.prototype.getIdentity=function(){return he({},this.identity)},t.prototype.setIdentity=function(e){var r=he({},this.identity);this.identity=he({},e),Tt(r,this.identity)||this.listeners.forEach(function(n){n(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,gn=function(){function t(){this.identityStore=new Di,this.eventBridge=new Ri,this.applicationContextProvider=new Pi}return t.getInstance=function(e){return We.analyticsConnectorInstances||(We.analyticsConnectorInstances={}),We.analyticsConnectorInstances[e]||(We.analyticsConnectorInstances[e]=new t),We.analyticsConnectorInstances[e]},t}();var pe=function(t){return t===void 0&&(t="$default_instance"),gn.getInstance(t)},Qt=function(t,e){pe(e).identityStore.editIdentity().setUserId(t).commit()},Xt=function(t,e){pe(e).identityStore.editIdentity().setDeviceId(t).commit()},Zt=function(t,e){pe(e).identityStore.editIdentity().setOptOut(t).commit()};var $=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 Ne=function(){var t,e=$();if(!(!((t=e?.location)===null||t===void 0)&&t.search))return{};var r=e.location.search.substring(1).split("&").filter(Boolean),n=r.reduce(function(i,o){var s=o.split("=",2),u=hn(s[0]),d=hn(s[1]);return d&&(i[u]=d),i},{});return n},hn=function(t){t===void 0&&(t="");try{return decodeURIComponent(t)}catch{return""}};var yn="utm_campaign",bn="utm_content",En="utm_id",_n="utm_medium",Tn="utm_source",wn="utm_term",Jt="dclid",er="fbclid",tr="gbraid",rr="gclid",nr="ko_click_id",ir="li_fat_id",or="msclkid",sr="rtd_cid",ar="ttclid",ur="twclid",cr="wbraid";var Pe={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 $e=function(){function t(){}return t.prototype.parse=function(){return g(this,void 0,void 0,function(){return h(this,function(e){return[2,E(E(E(E({},Pe),this.getUtmParam()),this.getReferrer()),this.getClickIds())]})})},t.prototype.getUtmParam=function(){var e=Ne(),r=e[yn],n=e[bn],i=e[En],o=e[_n],s=e[Tn],u=e[wn];return{utm_campaign:r,utm_content:n,utm_id:i,utm_medium:o,utm_source:s,utm_term:u}},t.prototype.getReferrer=function(){var e,r,n={referrer:void 0,referring_domain:void 0};try{n.referrer=document.referrer||void 0,n.referring_domain=(r=(e=n.referrer)===null||e===void 0?void 0:e.split("/")[2])!==null&&r!==void 0?r:void 0}catch{}return n},t.prototype.getClickIds=function(){var e,r=Ne();return e={},e[Jt]=r[Jt],e[er]=r[er],e[tr]=r[tr],e[rr]=r[rr],e[nr]=r[nr],e[ir]=r[ir],e[or]=r[or],e[sr]=r[sr],e[ar]=r[ar],e[ur]=r[ur],e[cr]=r[cr],e},t}();var Ye=function(t,e,r){return e===void 0&&(e=""),r===void 0&&(r=10),[xe,e,t.substring(0,r)].filter(Boolean).join("_")},lr=function(t){return"".concat(xe.toLowerCase(),"_").concat(t.substring(0,6))};var dr=function(t){return typeof t=="boolean"?t:!!t?.fileDownloads},pr=function(t){return typeof t=="boolean"?t:!!t?.formInteractions},Sn=function(t){return typeof t=="boolean"?t:!!(t?.pageViews===!0||t?.pageViews&&typeof t.pageViews=="object")},fr=function(t){return typeof t=="boolean"?t:!!t?.sessions},mr=function(t){var e,r=!((e=t.attribution)===null||e===void 0)&&e.trackPageViews?"attribution":function(){return!1},n=void 0,i="Page View",o=Sn(t.defaultTracking);return o&&(r=void 0,i=void 0,t.defaultTracking&&typeof t.defaultTracking=="object"&&t.defaultTracking.pageViews&&typeof t.defaultTracking.pageViews=="object"&&("trackOn"in t.defaultTracking.pageViews&&(r=t.defaultTracking.pageViews.trackOn),"trackHistoryChanges"in t.defaultTracking.pageViews&&(n=t.defaultTracking.pageViews.trackHistoryChanges),"eventType"in t.defaultTracking.pageViews&&t.defaultTracking.pageViews.eventType&&(i=t.defaultTracking.pageViews.eventType))),{trackOn:r,trackHistoryChanges:n,eventType:i}};var vr=function(){var t,e,r,n;if(typeof navigator>"u")return"";var i=navigator.userLanguage;return(n=(r=(e=(t=navigator.languages)===null||t===void 0?void 0:t[0])!==null&&e!==void 0?e:navigator.language)!==null&&r!==void 0?r:i)!==null&&n!==void 0?n:""};var gr=function(){function t(){this.name="identity",this.type=N.BEFORE,this.identityStore=pe().identityStore}return t.prototype.execute=function(e){return g(this,void 0,void 0,function(){var r;return h(this,function(n){return r=e.user_properties,r&&this.identityStore.editIdentity().updateUserProperties(r).commit(),[2,e]})})},t.prototype.setup=function(e){return g(this,void 0,void 0,function(){return h(this,function(r){return e.instanceName&&(this.identityStore=pe(e.instanceName).identityStore),[2]})})},t}();var ze=function(){function t(e){this.options=E({},e)}return t.prototype.isEnabled=function(){return g(this,void 0,void 0,function(){var e,r,n,i;return h(this,function(o){switch(o.label){case 0:if(!$())return[2,!1];t.testValue=String(Date.now()),e=new t(this.options),r="AMP_TEST",o.label=1;case 1:return o.trys.push([1,4,5,7]),[4,e.set(r,t.testValue)];case 2:return o.sent(),[4,e.get(r)];case 3:return n=o.sent(),[2,n===t.testValue];case 4:return i=o.sent(),[2,!1];case 5:return[4,e.remove(r)];case 6:return o.sent(),[7];case 7:return[2]}})})},t.prototype.get=function(e){return g(this,void 0,void 0,function(){var r;return h(this,function(n){switch(n.label){case 0:return[4,this.getRaw(e)];case 1:if(r=n.sent(),!r)return[2,void 0];try{try{r=decodeURIComponent(atob(r))}catch{}return[2,JSON.parse(r)]}catch{return[2,void 0]}return[2]}})})},t.prototype.getRaw=function(e){var r;return g(this,void 0,void 0,function(){var n,i,o;return h(this,function(s){return n=$(),i=(r=n?.document.cookie.split("; "))!==null&&r!==void 0?r:[],o=i.find(function(u){return u.indexOf(e+"=")===0}),o?[2,o.substring(e.length+1)]:[2,void 0]})})},t.prototype.set=function(e,r){var n;return g(this,void 0,void 0,function(){var i,o,s,u,d,p;return h(this,function(a){try{i=(n=this.options.expirationDays)!==null&&n!==void 0?n:0,o=r!==null?i:-1,s=void 0,o&&(u=new Date,u.setTime(u.getTime()+o*24*60*60*1e3),s=u),d="".concat(e,"=").concat(btoa(encodeURIComponent(JSON.stringify(r)))),s&&(d+="; expires=".concat(s.toUTCString())),d+="; path=/",this.options.domain&&(d+="; domain=".concat(this.options.domain)),this.options.secure&&(d+="; Secure"),this.options.sameSite&&(d+="; SameSite=".concat(this.options.sameSite)),p=$(),p&&(p.document.cookie=d)}catch{}return[2]})})},t.prototype.remove=function(e){return g(this,void 0,void 0,function(){return h(this,function(r){switch(r.label){case 0:return[4,this.set(e,null)];case 1:return r.sent(),[2]}})})},t.prototype.reset=function(){return g(this,void 0,void 0,function(){return h(this,function(e){return[2]})})},t}();var hr=function(t){ae(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.send=function(r,n){return g(this,void 0,void 0,function(){var i,o,s;return h(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(n),method:"POST"},[4,fetch(r,i)];case 1:return o=u.sent(),[4,o.text()];case 2:s=u.sent();try{return[2,this.buildResponse(JSON.parse(s))]}catch{return[2,this.buildResponse({code:o.status})]}return[2]}})})},e}(Le);var In=function(t){var e={};for(var r in t){var n=t[r];n&&(e[r]=n)}return e};var yr=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var r,n={},i=$(),o=void 0,s,u=A(t,2),d=u[0],p=u[1];d&&"init"in d?(r=d,p&&(n=p)):d&&(n=d);var a=function(){return g(void 0,void 0,void 0,function(){var b,v,y;return h(this,function(T){switch(T.label){case 0:return v={event_type:(y=n.eventType)!==null&&y!==void 0?y:"Page View"},b=[{}],[4,Ni()];case 1:return[2,(v.event_properties=E.apply(void 0,[E.apply(void 0,b.concat([T.sent()])),{page_domain:typeof location<"u"&&location.hostname||"",page_location:typeof location<"u"&&location.href||"",page_path:typeof location<"u"&&location.pathname||"",page_title:typeof document<"u"&&document.title||"",page_url:typeof location<"u"&&location.href.split("?")[0]||""}]),v)]}})})},c=function(){return typeof n.trackOn>"u"||typeof n.trackOn=="function"&&n.trackOn()},l=typeof location<"u"?location.href:null,f=function(){return g(void 0,void 0,void 0,function(){var b,v,y,T,L;return h(this,function(k){switch(k.label){case 0:return b=location.href,v=Mi(n.trackHistoryChanges,b,l||"")&&c(),l=b,v?(o?.log("Tracking page view event"),r!=null?[3,1]:(y=void 0,[3,3])):[3,4];case 1:return L=(T=r).track,[4,a()];case 2:y=L.apply(T,[k.sent()]),k.label=3;case 3:k.label=4;case 4:return[2]}})})},m=function(){f()},_={name:"page-view-tracking",type:N.ENRICHMENT,setup:function(b,v){return g(void 0,void 0,void 0,function(){var y,T,L,k,w;return h(this,function(C){switch(C.label){case 0:return r=r??v,r?(o=b.loggerProvider,o.log("Installing @amplitude/plugin-page-view-tracking-browser"),n.trackOn=!((k=b.attribution)===null||k===void 0)&&k.trackPageViews?"attribution":n.trackOn,!v&&(!((w=b.attribution)===null||w===void 0)&&w.trackPageViews)&&(o.warn("@amplitude/plugin-page-view-tracking-browser overrides page view tracking behavior defined in @amplitude/analytics-browser. Resolve by disabling page view tracking in @amplitude/analytics-browser."),b.attribution.trackPageViews=!1),n.trackHistoryChanges&&i&&(i.addEventListener("popstate",m),s=i.history.pushState,i.history.pushState=new Proxy(i.history.pushState,{apply:function(R,K,z){var Q=A(z,3),P=Q[0],Ce=Q[1],ce=Q[2];R.apply(K,[P,Ce,ce]),f()}})),c()?(o.log("Tracking page view event"),L=(T=r).track,[4,a()]):[3,2]):(y=d?"Options":"undefined",b.loggerProvider.error("Argument of type '".concat(y,"' is not assignable to parameter of type 'BrowserClient'.")),[2]);case 1:L.apply(T,[C.sent()]),C.label=2;case 2:return[2]}})})},execute:function(b){return g(void 0,void 0,void 0,function(){var v;return h(this,function(y){switch(y.label){case 0:return n.trackOn==="attribution"&&Ui(b)?(o?.log("Enriching campaign event to page view event with campaign parameters"),[4,a()]):[3,2];case 1:v=y.sent(),b.event_type=v.event_type,b.event_properties=E(E({},b.event_properties),v.event_properties),y.label=2;case 2:return[2,b]}})})},teardown:function(){return g(void 0,void 0,void 0,function(){return h(this,function(b){return i&&(i.removeEventListener("popstate",m),s&&(i.history.pushState=s)),[2]})})}};return _.__trackHistoryPageView=f,_},Ni=function(){return g(void 0,void 0,void 0,function(){var t;return h(this,function(e){switch(e.label){case 0:return t=In,[4,new $e().parse()];case 1:return[2,t.apply(void 0,[e.sent()])]}})})},Ui=function(t){if(t.event_type==="$identify"&&t.user_properties){var e=t.user_properties,r=e[B.SET]||{},n=e[B.UNSET]||{},i=ee(ee([],A(Object.keys(r)),!1),A(Object.keys(n)),!1);return Object.keys(Pe).every(function(o){return i.includes(o)})}return!1},Mi=function(t,e,r){switch(t){case"pathOnly":return e.split("?")[0]!==r.split("?")[0];default:return e!==r}};var Ln=function(t,e,r){return e===void 0&&(e=""),r===void 0&&(r=10),[xe,e,t.substring(0,r)].filter(Boolean).join("_")},xn=function(t){var e=t.split(".");return e.length<=2?t:e.slice(e.length-2,e.length).join(".")},Pn=function(t,e,r){var n,i=t.referrer,o=t.referring_domain,s=Ge(t,["referrer","referring_domain"]),u=e||{},d=u.referrer,p=u.referring_domain,a=Ge(u,["referrer","referring_domain"]);if(t.referring_domain&&(!((n=r.excludeReferrers)===null||n===void 0)&&n.includes(t.referring_domain)))return!1;var c=JSON.stringify(s)!==JSON.stringify(a),l=xn(o||"")!==xn(p||"");return!e||c||l},Cn=function(t,e){var r=E(E({},Pe),t),n=Object.entries(r).reduce(function(i,o){var s,u=A(o,2),d=u[0],p=u[1];return i.setOnce("initial_".concat(d),(s=p??e.initialEmptyValue)!==null&&s!==void 0?s:"EMPTY"),p?i.set(d,p):i.unset(d)},new ne);return Ke(n)};var br=function(){for(var t=this,e,r=[],n=0;n<arguments.length;n++)r[n]=arguments[n];var i,o={},s=A(r,2),u=s[0],d=s[1];u&&"init"in u?(i=u,d&&(o=d)):u&&(o=u);var p=(e=o.excludeReferrers)!==null&&e!==void 0?e:[];typeof location<"u"&&p.unshift(location.hostname),o=E(E({disabled:!1,initialEmptyValue:"EMPTY",resetSessionOnNewCampaign:!1},o),{excludeReferrers:p});var a={name:"web-attribution",type:N.BEFORE,setup:function(c,l){var f;return g(this,void 0,void 0,function(){var m,_,b,v,y,T,L,k;return h(this,function(w){switch(w.label){case 0:return i=i??l,i?o.disabled?(c.loggerProvider.log("@amplitude/plugin-web-attribution-browser is disabled. Attribution is not tracked."),[2]):(c.loggerProvider.log("Installing @amplitude/plugin-web-attribution-browser."),!l&&!(!((f=c.attribution)===null||f===void 0)&&f.disabled)&&(c.loggerProvider.warn("@amplitude/plugin-web-attribution-browser overrides web attribution behavior defined in @amplitude/analytics-browser. Resolve by disabling web attribution tracking in @amplitude/analytics-browser."),c.attribution={disabled:!0}),_=c.cookieStorage,b=Ln(c.apiKey,"MKTG"),[4,Promise.all([new $e().parse(),_.get(b)])]):(m=u?"Options":"undefined",c.loggerProvider.error("Argument of type '".concat(m,"' is not assignable to parameter of type 'BrowserClient'.")),[2]);case 1:return v=A.apply(void 0,[w.sent(),2]),y=v[0],T=v[1],L=this.__pluginEnabledOverride,(L??Pn(y,T,o))&&(o.resetSessionOnNewCampaign&&(i.setSessionId(Date.now()),c.loggerProvider.log("Created a new session for new campaign.")),c.loggerProvider.log("Tracking attribution."),k=Cn(y,o),i.track(k),_.set(b,y)),[2]}})})},execute:function(c){return g(t,void 0,void 0,function(){return h(this,function(l){return[2,c]})})}};return a.__pluginEnabledOverride=void 0,a};var wt=1e3,Er=function(){function t(e){this.loggerProvider=e?.loggerProvider}return t.prototype.isEnabled=function(){return g(this,void 0,void 0,function(){var e,r,n,i,o;return h(this,function(s){switch(s.label){case 0:if(!$())return[2,!1];e=String(Date.now()),r=new t,n="AMP_TEST",s.label=1;case 1:return s.trys.push([1,4,5,7]),[4,r.set(n,e)];case 2:return s.sent(),[4,r.get(n)];case 3:return i=s.sent(),[2,i===e];case 4:return o=s.sent(),[2,!1];case 5:return[4,r.remove(n)];case 6:return s.sent(),[7];case 7:return[2]}})})},t.prototype.get=function(e){return g(this,void 0,void 0,function(){var r,n;return h(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),[4,this.getRaw(e)];case 1:return r=i.sent(),r?[2,JSON.parse(r)]:[2,void 0];case 2:return n=i.sent(),[2,void 0];case 3:return[2]}})})},t.prototype.getRaw=function(e){var r;return g(this,void 0,void 0,function(){return h(this,function(n){return[2,((r=$())===null||r===void 0?void 0:r.localStorage.getItem(e))||void 0]})})},t.prototype.set=function(e,r){var n,i;return g(this,void 0,void 0,function(){var o,s,u;return h(this,function(d){o=Array.isArray(r)&&r.length>wt;try{s=JSON.stringify(o?r.slice(0,wt):r),(n=$())===null||n===void 0||n.localStorage.setItem(e,s)}catch{}return o&&(u=r.length-wt,(i=this.loggerProvider)===null||i===void 0||i.error("Failed to save ".concat(u," events because the queue length exceeded ").concat(wt,"."))),[2]})})},t.prototype.remove=function(e){var r;return g(this,void 0,void 0,function(){return h(this,function(n){try{(r=$())===null||r===void 0||r.localStorage.removeItem(e)}catch{}return[2]})})},t.prototype.reset=function(){var e;return g(this,void 0,void 0,function(){return h(this,function(r){try{(e=$())===null||e===void 0||e.localStorage.clear()}catch{}return[2]})})},t}();var Rn=function(t){ae(e,t);function e(){var r=t!==null&&t.apply(this,arguments)||this;return r.state={done:4},r}return e.prototype.send=function(r,n){return g(this,void 0,void 0,function(){var i=this;return h(this,function(o){return[2,new Promise(function(s,u){typeof XMLHttpRequest>"u"&&u(new Error("XHRTransport is not supported."));var d=new XMLHttpRequest;d.open("POST",r,!0),d.onreadystatechange=function(){if(d.readyState===i.state.done)try{var p=d.responseText,a=JSON.parse(p),c=i.buildResponse(a);s(c)}catch(l){u(l)}},d.setRequestHeader("Content-Type","application/json"),d.setRequestHeader("Accept","*/*"),d.send(JSON.stringify(n))})]})})},e}(Le);var On=function(t){ae(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.send=function(r,n){return g(this,void 0,void 0,function(){var i=this;return h(this,function(o){return[2,new Promise(function(s,u){var d=$();if(!d?.navigator.sendBeacon)throw new Error("SendBeaconTransport is not supported");try{var p=JSON.stringify(n),a=d.navigator.sendBeacon(r,JSON.stringify(n));return s(a?i.buildResponse({code:200,events_ingested:n.events.length,payload_size_bytes:p.length,server_upload_time:Date.now()}):i.buildResponse({code:500}))}catch(c){u(c)}})]})})},e}(Le);var Ue=function(){var t=new Et,e={deviceManufacturer:!0,deviceModel:!0,ipAddress:!0,language:!0,osName:!0,osVersion:!0,platform:!0};return{cookieExpiration:365,cookieSameSite:"Lax",cookieSecure:!1,cookieStorage:t,cookieUpgrade:!0,disableCookies:!1,domain:"",sessionTimeout:30*60*1e3,trackingOptions:e,transportProvider:new hr}},kn=function(t){ae(e,t);function e(r,n){var i=this,o,s,u,d,p,a,c,l,f,m=Ue();return i=t.call(this,E(E({flushIntervalMillis:1e3,flushMaxRetries:5,flushQueueSize:30,transportProvider:m.transportProvider},n),{apiKey:r}))||this,i._optOut=!1,i.cookieStorage=(o=n?.cookieStorage)!==null&&o!==void 0?o:m.cookieStorage,i.deviceId=n?.deviceId,i.lastEventId=n?.lastEventId,i.lastEventTime=n?.lastEventTime,i.optOut=!!n?.optOut,i.sessionId=n?.sessionId,i.userId=n?.userId,i.appVersion=n?.appVersion,i.attribution=n?.attribution,i.cookieExpiration=(s=n?.cookieExpiration)!==null&&s!==void 0?s:m.cookieExpiration,i.cookieSameSite=(u=n?.cookieSameSite)!==null&&u!==void 0?u:m.cookieSameSite,i.cookieSecure=(d=n?.cookieSecure)!==null&&d!==void 0?d:m.cookieSecure,i.cookieUpgrade=(p=n?.cookieUpgrade)!==null&&p!==void 0?p:m.cookieUpgrade,i.defaultTracking=n?.defaultTracking,i.disableCookies=(a=n?.disableCookies)!==null&&a!==void 0?a:m.disableCookies,i.defaultTracking=n?.defaultTracking,i.domain=(c=n?.domain)!==null&&c!==void 0?c:m.domain,i.partnerId=n?.partnerId,i.sessionTimeout=(l=n?.sessionTimeout)!==null&&l!==void 0?l:m.sessionTimeout,i.trackingOptions=(f=n?.trackingOptions)!==null&&f!==void 0?f:m.trackingOptions,i}return Object.defineProperty(e.prototype,"deviceId",{get:function(){return this._deviceId},set:function(r){this._deviceId!==r&&(this._deviceId=r,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"userId",{get:function(){return this._userId},set:function(r){this._userId!==r&&(this._userId=r,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"sessionId",{get:function(){return this._sessionId},set:function(r){this._sessionId!==r&&(this._sessionId=r,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"optOut",{get:function(){return this._optOut},set:function(r){this._optOut!==r&&(this._optOut=r,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"lastEventTime",{get:function(){return this._lastEventTime},set:function(r){this._lastEventTime!==r&&(this._lastEventTime=r,this.updateStorage())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"lastEventId",{get:function(){return this._lastEventId},set:function(r){this._lastEventId!==r&&(this._lastEventId=r,this.updateStorage())},enumerable:!1,configurable:!0}),e.prototype.updateStorage=function(){var r,n={deviceId:this._deviceId,userId:this._userId,sessionId:this._sessionId,optOut:this._optOut,lastEventTime:this._lastEventTime,lastEventId:this._lastEventId};(r=this.cookieStorage)===null||r===void 0||r.set(Ye(this.apiKey),n)},e}($t);var An=function(t,e){return g(void 0,void 0,void 0,function(){var r,n,i,o,s,u,d,p,a,c,l,f,m,_,b;return h(this,function(v){switch(v.label){case 0:return r=Ue(),n=(_=e?.deviceId)!==null&&_!==void 0?_:ge(),i=e?.lastEventId,o=e?.lastEventTime,s=e?.optOut,u=e?.sessionId,d=e?.userId,p=e?.cookieStorage,a=e?.domain,c=kn.bind,l=[void 0,t],f=[E({},e)],m={cookieStorage:p,deviceId:n,domain:a,lastEventId:i,lastEventTime:o,optOut:s,sessionId:u},[4,Vi(e)];case 1:return[2,new(c.apply(kn,l.concat([E.apply(void 0,f.concat([(m.storageProvider=v.sent(),m.trackingOptions=E(E({},r.trackingOptions),e?.trackingOptions),m.transportProvider=(b=e?.transportProvider)!==null&&b!==void 0?b:_r(e?.transport),m.userId=d,m)]))])))]}})})},St=function(t,e){return e===void 0&&(e=Ue()),g(void 0,void 0,void 0,function(){var r,n,i;return h(this,function(o){switch(o.label){case 0:return r=E(E({},e),t),n=t?.cookieStorage,i=!n,i?[3,2]:[4,n.isEnabled()];case 1:i=!o.sent(),o.label=2;case 2:return i?[2,Bi(r)]:[2,n]}})})},Bi=function(t){return g(void 0,void 0,void 0,function(){var e,r;return h(this,function(n){switch(n.label){case 0:return e=new ze({domain:t.domain,expirationDays:t.cookieExpiration,sameSite:t.cookieSameSite,secure:t.cookieSecure}),r=t.disableCookies,r?[3,2]:[4,e.isEnabled()];case 1:r=!n.sent(),n.label=2;case 2:return r?(e=new Er,[4,e.isEnabled()]):[3,4];case 3:n.sent()||(e=new Et),n.label=4;case 4:return[2,e]}})})},Vi=function(t){return g(void 0,void 0,void 0,function(){var e,r,n,i,o,s,u,d,p;return h(this,function(a){switch(a.label){case 0:if(e=t&&Object.prototype.hasOwnProperty.call(t,"storageProvider"),r=t&&t.loggerProvider,!(!e||t.storageProvider))return[3,9];a.label=1;case 1:a.trys.push([1,7,8,9]),n=J([t?.storageProvider,new Er({loggerProvider:r})]),i=n.next(),a.label=2;case 2:return i.done?[3,6]:(o=i.value,s=o,s?[4,o.isEnabled()]:[3,4]);case 3:s=a.sent(),a.label=4;case 4:if(s)return[2,o];a.label=5;case 5:return i=n.next(),[3,2];case 6:return[3,9];case 7:return u=a.sent(),d={error:u},[3,9];case 8:try{i&&!i.done&&(p=n.return)&&p.call(n)}finally{if(d)throw d.error}return[7];case 9:return[2,void 0]}})})},_r=function(t){return t===Ie.XHR?new Rn:t===Ie.SendBeacon?new On:Ue().transportProvider},Dn=function(t){return g(void 0,void 0,void 0,function(){var e,r,n,i,o,o,s,u,d,p;return h(this,function(a){switch(a.label){case 0:return[4,new ze().isEnabled()];case 1:if(!a.sent()||!t&&typeof location>"u")return[2,""];for(e=t??location.hostname,r=e.split("."),n=[],i="AMP_TLDTEST",o=r.length-2;o>=0;--o)n.push(r.slice(o).join("."));o=0,a.label=2;case 2:return o<n.length?(s=n[o],u={domain:"."+s},d=new ze(u),[4,d.set(i,1)]):[3,7];case 3:return a.sent(),[4,d.get(i)];case 4:return p=a.sent(),p?[4,d.remove(i)]:[3,6];case 5:return a.sent(),[2,"."+s];case 6:return o++,[3,2];case 7:return[2,""]}})})};var W="[Amplitude]",It="".concat(W," Page Viewed"),Tr="".concat(W," Form Started"),Nn="".concat(W," Form Submitted"),Un="".concat(W," File Downloaded"),wr="session_start",Sr="session_end",Mn="".concat(W," File Extension"),Bn="".concat(W," File Name"),Vn="".concat(W," Link ID"),Fn="".concat(W," Link Text"),Hn="".concat(W," Link URL"),xt="".concat(W," Form ID"),Lt="".concat(W," Form Name"),Pt="".concat(W," Form Destination");var qn=function(t,e){return g(void 0,void 0,void 0,function(){var r,n,i,o,s,u,d,p,a,c,l;return h(this,function(f){switch(f.label){case 0:return[4,St(e)];case 1:return r=f.sent(),n=lr(t),[4,r.getRaw(n)];case 2:return i=f.sent(),i?((l=e.cookieUpgrade)!==null&&l!==void 0?l:Ue().cookieUpgrade)?[4,r.remove(n)]:[3,4]:[2,{optOut:!1}];case 3:f.sent(),f.label=4;case 4:return o=A(i.split("."),6),s=o[0],u=o[1],d=o[2],p=o[3],a=o[4],c=o[5],[2,{deviceId:s,userId:Fi(u),sessionId:Ir(p),lastEventId:Ir(c),lastEventTime:Ir(a),optOut:!!d}]}})})},Ir=function(t){var e=parseInt(t,32);if(!isNaN(e))return e},Fi=function(t){if(!(!atob||!escape||!t))try{return decodeURIComponent(escape(atob(t)))}catch{return}};var Kn=_i(jn());var Gn="1.13.4";var Hi="Web",qi="$remote",Wn=function(){function t(){this.name="context",this.type=N.BEFORE,this.library="amplitude-ts/".concat(Gn),typeof navigator<"u"&&(this.userAgent=navigator.userAgent),this.uaResult=new Kn.default(this.userAgent).getResult()}return t.prototype.setup=function(e){return this.config=e,Promise.resolve(void 0)},t.prototype.execute=function(e){var r,n;return g(this,void 0,void 0,function(){var i,o,s,u,d,p,a,c;return h(this,function(l){return i=new Date().getTime(),o=this.uaResult.browser.name,s=this.uaResult.browser.version,u=this.uaResult.device.model||this.uaResult.os.name,d=this.uaResult.device.vendor,p=(r=this.config.lastEventId)!==null&&r!==void 0?r:-1,a=(n=e.event_id)!==null&&n!==void 0?n:p+1,this.config.lastEventId=a,e.time||(this.config.lastEventTime=i),c=E(E(E(E(E(E(E(E(E(E(E(E({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:Hi}),this.config.trackingOptions.osName&&{os_name:o}),this.config.trackingOptions.osVersion&&{os_version:s}),this.config.trackingOptions.deviceManufacturer&&{device_manufacturer:d}),this.config.trackingOptions.deviceModel&&{device_model:u}),this.config.trackingOptions.language&&{language:vr()}),this.config.trackingOptions.ipAddress&&{ip:qi}),{insert_id:ge(),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:a,library:this.library,user_agent:this.userAgent}),[2,c]})})},t}();var ji={page_domain:"".concat(W," Page Domain"),page_location:"".concat(W," Page Location"),page_path:"".concat(W," Page Path"),page_title:"".concat(W," Page Title"),page_url:"".concat(W," Page URL")},$n=function(){var t="@amplitude/plugin-default-page-view-event-enrichment-browser",e=N.ENRICHMENT,r=function(){return g(void 0,void 0,void 0,function(){return h(this,function(i){return[2,void 0]})})},n=function(i){return g(void 0,void 0,void 0,function(){return h(this,function(o){return i.event_type===It&&i.event_properties&&(i.event_properties=Object.entries(i.event_properties).reduce(function(s,u){var d=A(u,2),p=d[0],a=d[1],c=ji[p];return c?s[c]=a:s[p]=a,s},{})),[2,i]})})};return{name:t,type:e,setup:r,execute:n}};var Yn=function(){var t,e=[],r=function(p,a,c){p.addEventListener(a,c),e.push({element:p,type:a,handler:c})},n=function(){e.forEach(function(p){var a=p.element,c=p.type,l=p.handler;a?.removeEventListener(c,l)}),e=[]},i="@amplitude/plugin-file-download-tracking-browser",o=N.ENRICHMENT,s=function(p,a){return g(void 0,void 0,void 0,function(){var c,l,f;return h(this,function(m){return a?typeof document>"u"?[2]:(c=function(_){var b;try{b=new URL(_.href,window.location.href)}catch{return}var v=l.exec(b.href),y=v?.[1];y&&r(_,"click",function(){var T;y&&a.track(Un,(T={},T[Mn]=y,T[Bn]=b.pathname,T[Vn]=_.id,T[Fn]=_.text,T[Hn]=_.href,T))})},l=/\\.(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)$/,f=Array.from(document.getElementsByTagName("a")),f.forEach(c),typeof MutationObserver<"u"&&(t=new MutationObserver(function(_){_.forEach(function(b){b.addedNodes.forEach(function(v){v.nodeName==="A"&&c(v),"querySelectorAll"in v&&typeof v.querySelectorAll=="function"&&Array.from(v.querySelectorAll("a")).map(c)})})}),t.observe(document.body,{subtree:!0,childList:!0})),[2]):(p.loggerProvider.warn("File download tracking requires a later version of @amplitude/analytics-browser. File download events are not tracked."),[2])})})},u=function(p){return g(void 0,void 0,void 0,function(){return h(this,function(a){return[2,p]})})},d=function(){return g(void 0,void 0,void 0,function(){return h(this,function(p){return t?.disconnect(),n(),[2]})})};return{name:i,type:o,setup:s,execute:u,teardown:d}};var zn=function(){var t,e=[],r=function(p,a,c){p.addEventListener(a,c),e.push({element:p,type:a,handler:c})},n=function(){e.forEach(function(p){var a=p.element,c=p.type,l=p.handler;a?.removeEventListener(c,l)}),e=[]},i="@amplitude/plugin-form-interaction-tracking-browser",o=N.ENRICHMENT,s=function(p,a){return g(void 0,void 0,void 0,function(){var c,l;return h(this,function(f){return a?typeof document>"u"?[2]:(c=function(m){var _=!1;r(m,"change",function(){var b;_||a.track(Tr,(b={},b[xt]=m.id,b[Lt]=m.name,b[Pt]=m.action,b)),_=!0}),r(m,"submit",function(){var b,v;_||a.track(Tr,(b={},b[xt]=m.id,b[Lt]=m.name,b[Pt]=m.action,b)),a.track(Nn,(v={},v[xt]=m.id,v[Lt]=m.name,v[Pt]=m.action,v)),_=!1})},l=Array.from(document.getElementsByTagName("form")),l.forEach(c),typeof MutationObserver<"u"&&(t=new MutationObserver(function(m){m.forEach(function(_){_.addedNodes.forEach(function(b){b.nodeName==="FORM"&&c(b),"querySelectorAll"in b&&typeof b.querySelectorAll=="function"&&Array.from(b.querySelectorAll("form")).map(c)})})}),t.observe(document.body,{subtree:!0,childList:!0})),[2]):(p.loggerProvider.warn("Form interaction tracking requires a later version of @amplitude/analytics-browser. Form interaction events are not tracked."),[2])})})},u=function(p){return g(void 0,void 0,void 0,function(){return h(this,function(a){return[2,p]})})},d=function(){return g(void 0,void 0,void 0,function(){return h(this,function(p){return t?.disconnect(),n(),[2]})})};return{name:i,type:o,setup:s,execute:u,teardown:d}};var Rt=function(t,e){for(var r=0;r<e.length;r++){var n=e[r],i=n.name,o=n.args,s=n.resolve,u=t&&t[i];if(typeof u=="function"){var d=u.apply(t,o);typeof s=="function"&&s(d?.promise)}}return t},Ot=function(t){var e=t;return e&&e._q!==void 0};var Qn=function(t){ae(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype.init=function(r,n,i){return r===void 0&&(r=""),X(this._init(E(E({},i),{userId:n,apiKey:r})))},e.prototype._init=function(r){var n,i,o,s,u,d,p,a,c,l,f,m,_,b,v,y,T,L,k,w;return g(this,void 0,void 0,function(){var C,R,K,z,Q,P,Ce,ce,_e,Me,Re,Oe,Be,Te,we,ke,fe,me,Ve=this;return h(this,function(U){switch(U.label){case 0:return this.initializing?[2]:(this.initializing=!0,C=r,r.disableCookies?(R="",[3,5]):[3,1]);case 1:return(n=r.domain)!==null&&n!==void 0?(K=n,[3,4]):[3,2];case 2:return[4,Dn()];case 3:K=U.sent(),U.label=4;case 4:R=K,U.label=5;case 5:return C.domain=R,[4,qn(r.apiKey,r)];case 6:return z=U.sent(),[4,St(r)];case 7:return Q=U.sent(),[4,Q.get(Ye(r.apiKey))];case 8:return P=U.sent(),Ce=Ne(),ce=(s=(o=(i=r.deviceId)!==null&&i!==void 0?i:Ce.deviceId)!==null&&o!==void 0?o:P?.deviceId)!==null&&s!==void 0?s:z.deviceId,_e=(u=P?.sessionId)!==null&&u!==void 0?u:z.sessionId,Me=(p=(d=r.optOut)!==null&&d!==void 0?d:P?.optOut)!==null&&p!==void 0?p:z.optOut,Re=(a=P?.lastEventId)!==null&&a!==void 0?a:z.lastEventId,Oe=(c=P?.lastEventTime)!==null&&c!==void 0?c:z.lastEventTime,Be=(f=(l=r.userId)!==null&&l!==void 0?l:P?.userId)!==null&&f!==void 0?f:z.userId,this.previousSessionDeviceId=(m=P?.deviceId)!==null&&m!==void 0?m:z.deviceId,this.previousSessionUserId=(_=P?.userId)!==null&&_!==void 0?_:z.userId,[4,An(r.apiKey,E(E({},r),{deviceId:ce,sessionId:_e,optOut:Me,lastEventId:Re,lastEventTime:Oe,userId:Be,cookieStorage:Q}))];case 9:return Te=U.sent(),[4,t.prototype._init.call(this,Te)];case 10:return U.sent(),we=!1,(!this.config.lastEventTime||!this.config.sessionId||this.config.lastEventTime&&Date.now()-this.config.lastEventTime>this.config.sessionTimeout)&&(this.setSessionId((v=(b=r.sessionId)!==null&&b!==void 0?b:this.config.sessionId)!==null&&v!==void 0?v:Date.now()),we=!0),ke=pe(r.instanceName),ke.identityStore.setIdentity({userId:this.config.userId,deviceId:this.config.deviceId}),[4,this.add(new zt).promise];case 11:return U.sent(),[4,this.add(new Wn).promise];case 12:return U.sent(),[4,this.add(new gr).promise];case 13:return U.sent(),dr(this.config.defaultTracking)?[4,this.add(Yn()).promise]:[3,15];case 14:U.sent(),U.label=15;case 15:return pr(this.config.defaultTracking)?[4,this.add(zn()).promise]:[3,17];case 16:U.sent(),U.label=17;case 17:return!((y=this.config.attribution)===null||y===void 0)&&y.disabled?[3,19]:(fe=br({excludeReferrers:(T=this.config.attribution)===null||T===void 0?void 0:T.excludeReferrers,initialEmptyValue:(L=this.config.attribution)===null||L===void 0?void 0:L.initialEmptyValue,resetSessionOnNewCampaign:(k=this.config.attribution)===null||k===void 0?void 0:k.resetSessionOnNewCampaign}),fe.__pluginEnabledOverride=we||!((w=this.config.attribution)===null||w===void 0)&&w.trackNewCampaigns?void 0:!1,[4,this.add(fe).promise]);case 18:U.sent(),U.label=19;case 19:return me=mr(this.config),me.eventType=me.eventType||It,[4,this.add(yr(me)).promise];case 20:return U.sent(),[4,this.add($n()).promise];case 21:return U.sent(),this.initializing=!1,[4,this.runQueuedFunctions("dispatchQ")];case 22:return U.sent(),ke.eventBridge.setEventReceiver(function(et){Ve.track(et.eventType,et.eventProperties)}),[2]}})})},e.prototype.getUserId=function(){var r;return(r=this.config)===null||r===void 0?void 0:r.userId},e.prototype.setUserId=function(r){if(!this.config){this.q.push(this.setUserId.bind(this,r));return}(r!==this.config.userId||r===void 0)&&(this.config.userId=r,Qt(r,this.config.instanceName))},e.prototype.getDeviceId=function(){var r;return(r=this.config)===null||r===void 0?void 0:r.deviceId},e.prototype.setDeviceId=function(r){if(!this.config){this.q.push(this.setDeviceId.bind(this,r));return}this.config.deviceId=r,Xt(r,this.config.instanceName)},e.prototype.setOptOut=function(r){Zt(r,this.config.instanceName),t.prototype.setOptOut.call(this,r)},e.prototype.reset=function(){this.setDeviceId(ge()),this.setUserId(void 0)},e.prototype.getSessionId=function(){var r;return(r=this.config)===null||r===void 0?void 0:r.sessionId},e.prototype.setSessionId=function(r){var n;if(!this.config){this.q.push(this.setSessionId.bind(this,r));return}if(r!==this.config.sessionId){var i=this.getSessionId(),o=this.config.lastEventTime,s=(n=this.config.lastEventId)!==null&&n!==void 0?n:-1;this.config.sessionId=r,this.config.lastEventTime=void 0,fr(this.config.defaultTracking)&&(i&&o&&this.track(Sr,void 0,{device_id:this.previousSessionDeviceId,event_id:++s,session_id:i,time:o+1,user_id:this.previousSessionUserId}),this.config.lastEventTime=this.config.sessionId,this.track(wr,void 0,{event_id:++s,session_id:this.config.sessionId,time:this.config.lastEventTime})),this.previousSessionDeviceId=this.config.deviceId,this.previousSessionUserId=this.config.userId}},e.prototype.extendSession=function(){if(!this.config){this.q.push(this.extendSession.bind(this));return}this.config.lastEventTime=Date.now()},e.prototype.setTransport=function(r){if(!this.config){this.q.push(this.setTransport.bind(this,r));return}this.config.transportProvider=_r(r)},e.prototype.identify=function(r,n){if(Ot(r)){var i=r._q;r._q=[],r=Rt(new ne,i)}return n?.user_id&&this.setUserId(n.user_id),n?.device_id&&this.setDeviceId(n.device_id),t.prototype.identify.call(this,r,n)},e.prototype.groupIdentify=function(r,n,i,o){if(Ot(i)){var s=i._q;i._q=[],i=Rt(new ne,s)}return t.prototype.groupIdentify.call(this,r,n,i,o)},e.prototype.revenue=function(r,n){if(Ot(r)){var i=r._q;r._q=[],r=Rt(new gt,i)}return t.prototype.revenue.call(this,r,n)},e.prototype.process=function(r){return g(this,void 0,void 0,function(){var n,i,o;return h(this,function(s){return n=Date.now(),i=this.config.lastEventTime||Date.now(),o=n-i,r.event_type!==wr&&r.event_type!==Sr&&(!r.session_id||r.session_id===this.getSessionId())&&o>this.config.sessionTimeout&&this.setSessionId(n),[2,t.prototype.process.call(this,r)]})})},e}(Wt);var Gi=function(){var t=new Qn;return{init:H(t.init.bind(t),"init",V(t),F(t,["config"])),add:H(t.add.bind(t),"add",V(t),F(t,["config.apiKey","timeline.plugins"])),remove:H(t.remove.bind(t),"remove",V(t),F(t,["config.apiKey","timeline.plugins"])),track:H(t.track.bind(t),"track",V(t),F(t,["config.apiKey","timeline.queue.length"])),logEvent:H(t.logEvent.bind(t),"logEvent",V(t),F(t,["config.apiKey","timeline.queue.length"])),identify:H(t.identify.bind(t),"identify",V(t),F(t,["config.apiKey","timeline.queue.length"])),groupIdentify:H(t.groupIdentify.bind(t),"groupIdentify",V(t),F(t,["config.apiKey","timeline.queue.length"])),setGroup:H(t.setGroup.bind(t),"setGroup",V(t),F(t,["config.apiKey","timeline.queue.length"])),revenue:H(t.revenue.bind(t),"revenue",V(t),F(t,["config.apiKey","timeline.queue.length"])),flush:H(t.flush.bind(t),"flush",V(t),F(t,["config.apiKey","timeline.queue.length"])),getUserId:H(t.getUserId.bind(t),"getUserId",V(t),F(t,["config","config.userId"])),setUserId:H(t.setUserId.bind(t),"setUserId",V(t),F(t,["config","config.userId"])),getDeviceId:H(t.getDeviceId.bind(t),"getDeviceId",V(t),F(t,["config","config.deviceId"])),setDeviceId:H(t.setDeviceId.bind(t),"setDeviceId",V(t),F(t,["config","config.deviceId"])),reset:H(t.reset.bind(t),"reset",V(t),F(t,["config","config.userId","config.deviceId"])),getSessionId:H(t.getSessionId.bind(t),"getSessionId",V(t),F(t,["config"])),setSessionId:H(t.setSessionId.bind(t),"setSessionId",V(t),F(t,["config"])),extendSession:H(t.extendSession.bind(t),"extendSession",V(t),F(t,["config"])),setOptOut:H(t.setOptOut.bind(t),"setOptOut",V(t),F(t,["config"])),setTransport:H(t.setTransport.bind(t),"setTransport",V(t),F(t,["config"]))}},j=Gi();var cc=j.add,lc=j.extendSession,dc=j.flush,pc=j.getDeviceId,fc=j.getSessionId,mc=j.getUserId,vc=j.groupIdentify,Xn=j.identify,Zn=j.init,gc=j.logEvent,hc=j.remove,yc=j.reset,bc=j.revenue,Ec=j.setDeviceId,_c=j.setGroup,Tc=j.setOptOut,wc=j.setSessionId,Sc=j.setTransport,Ic=j.setUserId,ye=j.track;var te=t=>{window.dispatchEvent(new CustomEvent("builderdevtools",{detail:{eventName:t}}))};async function Ki(){return zr()}var Jn=async()=>{let t=new URL(window.location.href),e=t.hash,r=\`#\${Br}=\`,n=Math.random().toString(36).substring(2,15),i=await Ki();Zn("f1d2eb79aecd01b28c8a371ea5d1751c",i?.userId||n,{logLevel:mt.LogLevel.None,serverUrl:Hr,flushIntervalMillis:500});let o=new ne;Xn(o,{device_id:i?.deviceId,user_id:i?.userId||n});let s="anonymous";e.startsWith(r)&&(s=e.slice(r.length),s&&(Wi(s),t.hash="",window.history.replaceState({},"",t.href))),te("init")};var Wi=t=>{if(typeof t=="string"&&t.length>0){let e=Ze();Xe({...e,builderUserId:t})}},Ze=()=>{let t=localStorage.getItem(ei);if(t)try{let e=JSON.parse(t);return(!e.ctas||typeof e.ctas!="object")&&(e=Xe({...e,ctas:{}})),e.menuOpenedTs&&(e=Xe({...e,ctas:{...e.ctas,menuOpened:e.menuOpenedTs}}),delete e.menuOpenedTs),e}catch(e){console.error(e)}return Xe({firstVisitTs:Date.now(),ctas:{},builderUserId:""})},Xe=t=>{try{localStorage.setItem(ei,JSON.stringify(t))}catch(e){console.error(e)}return t},xr=t=>!!Ze().ctas[t],Lr=t=>{let e=Ze();return Xe({...e,ctas:{...e.ctas,[t]:Date.now()}})},ei="builderDevtools";function ti(t){$i(t),Yi(t),zi(t),Qi(t)}function $i(t){let e=t.getElementById("input-register");e.addEventListener("change",async r=>{r.stopPropagation();let n=t.getElementById("input-name"),i=t.querySelector(".nav-cmp-input");i.classList.add("input-loading"),i.classList.remove("input-enabled");let o=n.dataset.id,s=n.dataset.prop,u=await at({cmpId:o,name:s,registerInput:e.checked});te("registryUpdate"),le(u),Je(t,o,s),be(t,o),i.classList.remove("input-loading")})}function Yi(t){t.getElementById("input-open-source").addEventListener("click",r=>{r.preventDefault(),r.stopPropagation();let n=r.target,i=G.components.find(o=>o.id===n?.dataset.id);i&&De({filePath:i.filePath})})}function zi(t){let e=t.getElementById("input-name"),r=e.closest(".ui-text-input"),n="",i;e.addEventListener("focus",o=>{clearTimeout(i),r.classList.remove("saved"),o.stopPropagation(),n=e.value}),e.addEventListener("blur",async o=>{if(o.stopPropagation(),clearTimeout(i),r.classList.remove("saved"),e.value!==n){if(e.value.trim().length<3){e.value=n;return}r.classList.add("saved"),i=setTimeout(()=>{r.classList.remove("saved")},3e3);let s=e.dataset.id,u=e.dataset.prop,d=await at({cmpId:s,name:u,friendlyName:e.value});te("registryUpdate"),le(d),ue(t),be(t,s),Je(t,s,u)}}),e.addEventListener("keyup",o=>{o.stopPropagation(),clearTimeout(i),r.classList.remove("saved"),o.key==="Escape"?(e.value=n,e.blur()):o.key==="Enter"&&e.blur()})}function Qi(t){let e=t.getElementById("input-type");e.addEventListener("change",async r=>{r.stopPropagation();let n=e.dataset.id,i=e.dataset.prop,o=await at({cmpId:n,name:i,type:e.value});te("registryUpdate"),le(o),ue(t),be(t,n),Je(t,n,i)})}function Je(t,e,r){let n=G.components.find(l=>l.id===e);if(!n)return null;let i=n.inputs.find(l=>l.name===r);if(!i)return null;let o=t.querySelector(".nav-cmp-input");i.isRegistered?o.classList.add("input-enabled"):o.classList.remove("input-enabled");let s=t.getElementById("input-register");s.checked=!!i.isRegistered;let u=t.getElementById("cmp-input-title");u.innerText=n.name+": "+(i.friendlyName||i.name);let d=t.getElementById("input-open-source");d.innerText=\`Open \${n.displayFilePath}\`,d.dataset.id=n.id;let p=t.getElementById("cmp-prop-name");p.innerText=i.name;let a=t.getElementById("cmp-prop-type");a.innerText=ft(i.type);let c=t.getElementById("input-name");return c.dataset.id=n.id,c.dataset.prop=i.name,c.value=i.friendlyName||i.name,Xi(t,n,i),i}function Xi(t,e,r){let n=t.getElementById("input-type");n.dataset.id=e.id,n.dataset.prop=r.name,n.innerHTML="";let i=r.type,o=ut.includes(i),s=ct.includes(i),u=lt.includes(i),d=dt.includes(i),p=pt.includes(i);Qr.forEach(a=>{let c=document.createElement("option");c.value=a.value,c.innerText=a.text,c.disabled=ut.includes(a.value)&&!o||ct.includes(a.value)&&!s||lt.includes(a.value)&&!u||dt.includes(a.value)&&!d||pt.includes(a.value)&&!p,n.appendChild(c)}),n.value=i}function ri(t){Zi(t),Ji(t),eo(t),ro(t),to(t)}function Zi(t){t.getElementById("cmp-register").addEventListener("change",r=>{r.stopPropagation(),kt(t,"update")})}async function kt(t,e){let r=t.querySelector(".nav-cmp-detail"),n=t.getElementById("cmp-error"),i=t.getElementById("cmp-register"),o=i.closest(".ui-switch");r.classList.remove("cmp-enabled"),i.checked&&r.classList.add("cmp-loading");try{let s=i.dataset.id,u;e==="load"?u=await Gr({cmpId:s}):i.checked?(u=await Kr({cmpId:s}),te("registryUpdate"),ye("interaction",{type:"click",name:"register component",detail:s})):(u=await $r({cmpId:s}),te("registryUpdate"),ye("interaction",{type:"click",name:"unregister component",detail:s})),le(u),ue(t);let d=be(t,s);e==="update"&&d&&(i.checked?(r.classList.add("cmp-enabled"),Bt(t,\`<strong>\${d.name}</strong> is now registered in <strong>\${G.registryDisplayPath}</strong> and available for use in the Builder Visual Editor\`)):Bt(t,\`<strong>\${d.name}</strong> has been unregistered from <strong>\${G.registryDisplayPath}</strong> and removed from the Builder Visual Editor\`))}catch(s){console.error(s),n.innerHTML=\`<p class="error">Error loading components</p><p class="error">\${s.message||s}</p>\`,o.style.display="none"}r.classList.remove("cmp-loading")}function Ji(t){let e=t.getElementById("cmp-name"),r=e.closest(".ui-text-input"),n="",i;e.addEventListener("focus",o=>{clearTimeout(i),r.classList.remove("saved"),o.stopPropagation(),n=e.value}),e.addEventListener("blur",async o=>{if(o.stopPropagation(),clearTimeout(i),r.classList.remove("saved"),e.value!==n){if(e.value.trim().length<3){e.value=n;return}r.classList.add("saved"),i=setTimeout(()=>{r.classList.remove("saved")},3e3);let s=e.dataset.id,u=await Wr({cmpId:s,name:e.value});te("registryUpdate"),le(u),ue(t),be(t,s)}}),e.addEventListener("keyup",o=>{o.stopPropagation(),clearTimeout(i),r.classList.remove("saved"),o.key==="Escape"?(e.value=n,e.blur()):o.key==="Enter"&&e.blur()})}function be(t,e){let r=G.components.find(a=>a.id===e);if(!r)return null;let n=t.getElementById("cmp-register"),i=t.getElementById("cmp-error"),o=n.closest(".ui-switch");o.style.display="",i.innerHTML="",n.dataset.id=r.id,n.checked=!!r.isRegistered;let s=t.querySelector(".nav-cmp-detail");r.isRegistered?s.classList.add("cmp-enabled"):s.classList.remove("cmp-enabled");let u=t.getElementById("cmp-name");u.dataset.id=r.id,u.value=r.name;let d=t.getElementById("cmp-open-source");d.innerText=\`Open \${r.displayFilePath}\`,d.dataset.id=r.id;let p=t.getElementById("cmp-detail-title");return p.innerText=\`\${r.name} Component\`,no(t,r),r}function eo(t){t.getElementById("cmp-open-source").addEventListener("click",r=>{r.preventDefault(),r.stopPropagation();let n=r.target,i=G.components.find(o=>o.id===n?.dataset.id);i&&(De({filePath:i.filePath}),ye("interaction",{type:"click",name:"open component source file",detail:i.filePath}))})}function to(t){t.getElementById("btn-inputs-reload").addEventListener("click",r=>{r.preventDefault(),r.stopPropagation(),kt(t,"load")})}function ro(t){t.getElementById("cmp-detail-inputs").addEventListener("click",r=>{r.preventDefault(),r.stopPropagation();let i=r.target?.closest("button"),o=i?.dataset.id,s=i?.dataset.propName;Je(t,o,s)&&oe(t,"nav-cmp-input")})}function no(t,e){let r=t.getElementById("cmp-detail-inputs"),n=e.inputs.filter(i=>!i.hideFromUI);n.length>0?(r.innerHTML="",n.forEach(i=>{r.appendChild(io(e,i))})):r.innerHTML=\`<p class="cmp-inputs-empty">\${e.name} component does not have any props</p>\`}function io(t,e){let r=document.createElement("button");r.dataset.id=t.id,r.dataset.propName=e.name,r.className="cmp-input-item nav-list-item",e.isRegistered||r.classList.add("cmp-input-item-unregistered");let n=document.createElement("span"),i=ft(e.type);n.className=\`nav-list-item-icon input-icon input-icon-\${i}\`,r.appendChild(n);let o=document.createElement("span");o.innerText=e.friendlyName||e.name,r.appendChild(o);let s=document.createElement("span");return s.className="nav-list-item-note",s.innerText=e.type,r.appendChild(s),r}function oi(t){t.getElementById("open-builder-registry").addEventListener("click",o=>{o.preventDefault(),o.stopPropagation(),De({filePath:G.registryPath,line:1,column:1})}),t.getElementById("cmp-list").addEventListener("click",o=>{o.preventDefault(),o.stopPropagation();let u=o.target?.dataset.id,d=G.components.find(p=>p.id===u);if(d){let p=t.querySelector(".nav-cmp-detail .section-content");p.scrollTop=0,be(t,d.id),oe(t,"nav-cmp-detail"),d.isRegistered&&kt(t,"load")}});let n=t.getElementById("component-search"),i=t.getElementById("clear-search");n?.addEventListener("input",o=>{let s=o.target.value.toLowerCase(),u=s?G.components.filter(d=>d.name.toLowerCase().includes(s)||d.displayFilePath?.toLowerCase().includes(s)):G.components;ue(t,u),i.style.display=s?"flex":"none"}),i?.addEventListener("click",()=>{n.value="",ue(t),i.style.display="none"}),n?.addEventListener("keydown",o=>{o.key==="Escape"&&(n.value="",ue(t),i.style.display="none")})}function si(t){let e=jr();oo(t,e)}async function oo(t,e){let r=t.getElementById("cmp-list"),n=t.querySelector(".nav-cmp-list");n.classList.add("nav-loading");let i=t.getElementById("open-builder-registry");try{let o=await e;le(o),ue(t),G.registryDisplayPath?i.innerText="Open "+o.registryDisplayPath:i.innerText=""}catch(o){r.innerHTML=\`<p class="error">Error loading components</p><p class="error">\${o.message||o}</p>\`,console.error(o)}n.classList.remove("nav-loading")}function ue(t,e){let r=t.getElementById("cmp-list");r.innerHTML="";let n=e||G.components,i=n.filter(s=>s.isRegistered),o=n.filter(s=>!s.isRegistered);if(e&&e.length===0){let s=document.createElement("p");s.className="no-results",s.innerText="No matching components found",r.appendChild(s);return}ni(r,"Registered Components",i),ni(r,"Unregistered Components",o)}function ni(t,e,r){if(r.length>0){let n=document.createElement("h4");n.innerText=e,t.appendChild(n),r.forEach(i=>{t.appendChild(so(i))})}}function so(t){let e=document.getElementById("component-search")?.value.toLowerCase(),r=document.createElement("button");r.dataset.id=t.id,r.className="cmp-item nav-list-item",t.isRegistered&&r.classList.add("registered");let n=document.createElement("span");n.className="nav-list-item-icon",t.image&&(n.style.backgroundImage=\`url(\${t.image})\`),r.appendChild(n);let i=document.createElement("span");i.className="nav-list-item-name",i.innerHTML=ii(t.name,e),r.appendChild(i);let o=document.createElement("span");return o.className="nav-list-item-note",o.innerHTML=ii(t.displayFilePath||"",e),r.appendChild(o),r}function ii(t,e){if(!e)return t;let r=new RegExp(\`(\${e})\`,"gi");return t.replace(r,'<span class="search-highlight">$1</span>')}var ai=t=>{t.querySelector(".menu-toggle").addEventListener("click",e=>{e.preventDefault(),e.stopPropagation(),Ee(t,!0)}),t.getElementById("close").addEventListener("click",e=>{e.preventDefault(),e.stopPropagation(),Ee(t,!1)}),t.getElementById("hit").addEventListener("click",e=>{e.preventDefault(),e.stopPropagation(),Ee(t,!1)}),Ar(t),t.addEventListener("click",e=>e.stopPropagation()),ao(t)},Ee=(t,e)=>{e?(document.body.classList.add("builder-no-scroll"),t.host.classList.add("show-builder-menu"),te("menuOpen"),Lr("menuOpened"),ye("interaction",{type:"click",name:"open dev-tools menu"})):(document.body.classList.remove("builder-no-scroll"),t.host.classList.remove("show-builder-menu"),te("menuClose"),setTimeout(()=>{oe(t,"nav-home")},300)),Yr(e)},ao=t=>{if(!xr("menuOpened")){uo(t);return}let e=Ze();if(!((Date.now()-e.firstVisitTs)/1e3/60<10)&&!xr("feedback")){Lr("feedback"),co(t);return}},uo=t=>{let e=document.createElement("a");e.classList.add("menu-toggle-tooltip"),e.href="#open-dev-tools",e.innerHTML=\`
|
|
27
27
|
<div class="menu-toggle-tooltip-content">
|
|
28
28
|
<h3>Open Builder Devtools</h3>
|
|
@@ -33,7 +33,7 @@ Restarting server after Builder Devtools update...
|
|
|
33
33
|
<h3>How's Devtools working for you?</h3>
|
|
34
34
|
<p>We'd love your feedback!</p>
|
|
35
35
|
</div>
|
|
36
|
-
\`,t.appendChild(e),setTimeout(()=>{e.classList.add("menu-toggle-tooltip-show"),e.addEventListener("click",()=>{e.classList.remove("menu-toggle-tooltip-show")})},1e3)};function ui(t){t.getElementById("go-to-builder").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),Ee(t,!1),window.open(Nr(),"builder")}),t.getElementById("components-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation();let u=t.querySelector(".nav-cmp-list .section-content");u.scrollTop=0,oe(t,"nav-cmp-list"),si(t)}),t.getElementById("settings-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),oe(t,"nav-settings")}),t.getElementById("add-page-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),Ee(t,!1),window.open(je(),"builder")}),t.getElementById("import-from-figma").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),Ee(t,!1),window.open("https://www.figma.com/community/plugin/747985167520967365/builder-io-ai-powered-figma-to-code-react-vue-tailwind-more")})}function ci(t){let e=t.getElementById("enable-edit");e.addEventListener("change",r=>{r.stopPropagation(),Ft(e.checked)}),e.checked=it(),Ft(e.checked)}var At=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>\`,ai(e),ui(e),oi(e),ri(e),ti(e),ci(e),this.setAttribute("aria-hidden","true"),e.getElementById("version").textContent="v1.6.68"}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 lo=\`<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)}
|
|
36
|
+
\`,t.appendChild(e),setTimeout(()=>{e.classList.add("menu-toggle-tooltip-show"),e.addEventListener("click",()=>{e.classList.remove("menu-toggle-tooltip-show")})},1e3)};function ui(t){t.getElementById("go-to-builder").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),Ee(t,!1),window.open(Nr(),"builder")}),t.getElementById("components-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation();let u=t.querySelector(".nav-cmp-list .section-content");u.scrollTop=0,oe(t,"nav-cmp-list"),si(t)}),t.getElementById("settings-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),oe(t,"nav-settings")}),t.getElementById("add-page-link").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),Ee(t,!1),window.open(je(),"builder")}),t.getElementById("import-from-figma").addEventListener("click",s=>{s.preventDefault(),s.stopPropagation(),Ee(t,!1),window.open("https://www.figma.com/community/plugin/747985167520967365/builder-io-ai-powered-figma-to-code-react-vue-tailwind-more")})}function ci(t){let e=t.getElementById("enable-edit");e.addEventListener("change",r=>{r.stopPropagation(),Ft(e.checked)}),e.checked=it(),Ft(e.checked)}var At=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>\`,ai(e),ui(e),oi(e),ri(e),ti(e),ci(e),this.setAttribute("aria-hidden","true"),e.getElementById("version").textContent="v1.6.70"}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 lo=\`<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)}
|
|
37
37
|
</style>\`,Dt=class extends HTMLElement{constructor(){super()}connectedCallback(){let e=this.attachShadow({mode:"open"});e.innerHTML=lo+\`<main>
|
|
38
38
|
<aside>
|
|
39
39
|
<div class="logo"></div>
|
|
@@ -72,7 +72,7 @@ Restarting server after Builder Devtools update...
|
|
|
72
72
|
</nav>
|
|
73
73
|
</section>
|
|
74
74
|
</main>
|
|
75
|
-
\`,po();let r=new URL(Vr,ot);r.searchParams.set(Mr,location.href);let n=e.querySelectorAll(".next-step");for(let i of n)i.setAttribute("href",r.href);ye("overview step viewed")}},po=()=>{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 li=async()=>{(await qr()).isValid||fo()},fo=()=>{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 mo=()=>{try{customElements.get("builder-dev-tools-edit")||customElements.define("builder-dev-tools-edit",st),customElements.get("builder-dev-tools-menu")||customElements.define("builder-dev-tools-menu",At);let t=document.querySelector("builder-dev-tools-menu");t||(t=document.createElement("builder-dev-tools-menu"),t.setAttribute("data-version","1.6.
|
|
75
|
+
\`,po();let r=new URL(Vr,ot);r.searchParams.set(Mr,location.href);let n=e.querySelectorAll(".next-step");for(let i of n)i.setAttribute("href",r.href);ye("overview step viewed")}},po=()=>{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 li=async()=>{(await qr()).isValid||fo()},fo=()=>{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 mo=()=>{try{customElements.get("builder-dev-tools-edit")||customElements.define("builder-dev-tools-edit",st),customElements.get("builder-dev-tools-menu")||customElements.define("builder-dev-tools-menu",At);let t=document.querySelector("builder-dev-tools-menu");t||(t=document.createElement("builder-dev-tools-menu"),t.setAttribute("data-version","1.6.70"),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 r=document.getElementById("builder-dev-tools-style");r||(r=document.createElement("style"),r.id="builder-dev-tools-style",r.innerHTML=".builder-no-scroll{overflow:hidden !important}",document.head.appendChild(r)),li(),Jn()}catch(t){console.error("Builder Devtools:",t)}};window.location===window.parent.location&&(console.debug("Builder.io Devtools v1.6.70"),mo());})();`)}async function yi(e){return Ei(e,`<!doctype html>
|
|
76
76
|
<html lang="en" dir="ltr">
|
|
77
77
|
<head>
|
|
78
78
|
<meta charset="utf-8" />
|
|
@@ -238,60 +238,60 @@ Restarting server after Builder Devtools update...
|
|
|
238
238
|
</script>
|
|
239
239
|
</body>
|
|
240
240
|
</html>
|
|
241
|
-
`)}async function Eo(e,t){let n=await Yi(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:"")}var Fo=require("os");async function wo(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(Ft,e.devToolsServerUrl);r.searchParams.set(Pr,(0,Fo.platform)()),r.searchParams.set(Tr,process.versions.node);let o=e.getFrameworks();return o.length>0&&(n.searchParams.set(Rt,o[0].name),r.searchParams.set(Rt,o[0].name)),n.searchParams.set("redirect_url",r.href),n.searchParams.set("preview_url",t),n.href}var yu=require("http");var Eu=require("os"),Ze=require("path"),$e=require("fs");var Fe=T(Nr(),1),Mr=require("process");var Tn=T(require("readline"),1),No=require("stream");function nl({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 il=nl();function $o(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(il,"")}function Oo(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Lo={exports:{}};(function(e){var t={};e.exports=t,t.eastAsianWidth=function(r){var o=r.charCodeAt(0),s=r.length==2?r.charCodeAt(1):0,i=o;return 55296<=o&&o<=56319&&56320<=s&&s<=57343&&(o&=1023,s&=1023,i=o<<10|s,i+=65536),i==12288||65281<=i&&i<=65376||65504<=i&&i<=65510?"F":i==8361||65377<=i&&i<=65470||65474<=i&&i<=65479||65482<=i&&i<=65487||65490<=i&&i<=65495||65498<=i&&i<=65500||65512<=i&&i<=65518?"H":4352<=i&&i<=4447||4515<=i&&i<=4519||4602<=i&&i<=4607||9001<=i&&i<=9002||11904<=i&&i<=11929||11931<=i&&i<=12019||12032<=i&&i<=12245||12272<=i&&i<=12283||12289<=i&&i<=12350||12353<=i&&i<=12438||12441<=i&&i<=12543||12549<=i&&i<=12589||12593<=i&&i<=12686||12688<=i&&i<=12730||12736<=i&&i<=12771||12784<=i&&i<=12830||12832<=i&&i<=12871||12880<=i&&i<=13054||13056<=i&&i<=19903||19968<=i&&i<=42124||42128<=i&&i<=42182||43360<=i&&i<=43388||44032<=i&&i<=55203||55216<=i&&i<=55238||55243<=i&&i<=55291||63744<=i&&i<=64255||65040<=i&&i<=65049||65072<=i&&i<=65106||65108<=i&&i<=65126||65128<=i&&i<=65131||110592<=i&&i<=110593||127488<=i&&i<=127490||127504<=i&&i<=127546||127552<=i&&i<=127560||127568<=i&&i<=127569||131072<=i&&i<=194367||177984<=i&&i<=196605||196608<=i&&i<=262141?"W":32<=i&&i<=126||162<=i&&i<=163||165<=i&&i<=166||i==172||i==175||10214<=i&&i<=10221||10629<=i&&i<=10630?"Na":i==161||i==164||167<=i&&i<=168||i==170||173<=i&&i<=174||176<=i&&i<=180||182<=i&&i<=186||188<=i&&i<=191||i==198||i==208||215<=i&&i<=216||222<=i&&i<=225||i==230||232<=i&&i<=234||236<=i&&i<=237||i==240||242<=i&&i<=243||247<=i&&i<=250||i==252||i==254||i==257||i==273||i==275||i==283||294<=i&&i<=295||i==299||305<=i&&i<=307||i==312||319<=i&&i<=322||i==324||328<=i&&i<=331||i==333||338<=i&&i<=339||358<=i&&i<=359||i==363||i==462||i==464||i==466||i==468||i==470||i==472||i==474||i==476||i==593||i==609||i==708||i==711||713<=i&&i<=715||i==717||i==720||728<=i&&i<=731||i==733||i==735||768<=i&&i<=879||913<=i&&i<=929||931<=i&&i<=937||945<=i&&i<=961||963<=i&&i<=969||i==1025||1040<=i&&i<=1103||i==1105||i==8208||8211<=i&&i<=8214||8216<=i&&i<=8217||8220<=i&&i<=8221||8224<=i&&i<=8226||8228<=i&&i<=8231||i==8240||8242<=i&&i<=8243||i==8245||i==8251||i==8254||i==8308||i==8319||8321<=i&&i<=8324||i==8364||i==8451||i==8453||i==8457||i==8467||i==8470||8481<=i&&i<=8482||i==8486||i==8491||8531<=i&&i<=8532||8539<=i&&i<=8542||8544<=i&&i<=8555||8560<=i&&i<=8569||i==8585||8592<=i&&i<=8601||8632<=i&&i<=8633||i==8658||i==8660||i==8679||i==8704||8706<=i&&i<=8707||8711<=i&&i<=8712||i==8715||i==8719||i==8721||i==8725||i==8730||8733<=i&&i<=8736||i==8739||i==8741||8743<=i&&i<=8748||i==8750||8756<=i&&i<=8759||8764<=i&&i<=8765||i==8776||i==8780||i==8786||8800<=i&&i<=8801||8804<=i&&i<=8807||8810<=i&&i<=8811||8814<=i&&i<=8815||8834<=i&&i<=8835||8838<=i&&i<=8839||i==8853||i==8857||i==8869||i==8895||i==8978||9312<=i&&i<=9449||9451<=i&&i<=9547||9552<=i&&i<=9587||9600<=i&&i<=9615||9618<=i&&i<=9621||9632<=i&&i<=9633||9635<=i&&i<=9641||9650<=i&&i<=9651||9654<=i&&i<=9655||9660<=i&&i<=9661||9664<=i&&i<=9665||9670<=i&&i<=9672||i==9675||9678<=i&&i<=9681||9698<=i&&i<=9701||i==9711||9733<=i&&i<=9734||i==9737||9742<=i&&i<=9743||9748<=i&&i<=9749||i==9756||i==9758||i==9792||i==9794||9824<=i&&i<=9825||9827<=i&&i<=9829||9831<=i&&i<=9834||9836<=i&&i<=9837||i==9839||9886<=i&&i<=9887||9918<=i&&i<=9919||9924<=i&&i<=9933||9935<=i&&i<=9953||i==9955||9960<=i&&i<=9983||i==10045||i==10071||10102<=i&&i<=10111||11093<=i&&i<=11097||12872<=i&&i<=12879||57344<=i&&i<=63743||65024<=i&&i<=65039||i==65533||127232<=i&&i<=127242||127248<=i&&i<=127277||127280<=i&&i<=127337||127344<=i&&i<=127386||917760<=i&&i<=917999||983040<=i&&i<=1048573||1048576<=i&&i<=1114109?"A":"N"},t.characterLength=function(r){var o=this.eastAsianWidth(r);return o=="F"||o=="W"||o=="A"?2:1};function n(r){return r.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}t.length=function(r){for(var o=n(r),s=0,i=0;i<o.length;i++)s=s+this.characterLength(o[i]);return s},t.slice=function(r,o,s){textLen=t.length(r),o=o||0,s=s||1,o<0&&(o=textLen+o),s<0&&(s=textLen+s);for(var i="",a=0,u=n(r),l=0;l<u.length;l++){var c=u[l],p=t.length(c);if(a>=o-(p==2?1:0))if(a+p<=s)i+=c;else break;a+=p}return i}})(Lo);var ol=Lo.exports,sl=Oo(ol),al=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},ul=Oo(al);function nr(e,t={}){if(typeof e!="string"||e.length===0||(t={ambiguousIsNarrow:!0,...t},e=$o(e),e.length===0))return 0;e=e.replace(ul()," ");let n=t.ambiguousIsNarrow?1:2,r=0;for(let o of e){let s=o.codePointAt(0);if(!(s<=31||s>=127&&s<=159||s>=768&&s<=879))switch(sl.eastAsianWidth(o)){case"F":case"W":r+=2;break;case"A":r+=n;break;default:r+=1}}return r}var An=10,Ao=(e=0)=>t=>`\x1B[${t+e}m`,Po=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,To=(e=0)=>(t,n,r)=>`\x1B[${38+e};2;${t};${n};${r}m`,H={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(H.modifier);var ll=Object.keys(H.color),cl=Object.keys(H.bgColor);[...ll,...cl];function pl(){let e=new Map;for(let[t,n]of Object.entries(H)){for(let[r,o]of Object.entries(n))H[r]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},n[r]=H[r],e.set(o[0],o[1]);Object.defineProperty(H,t,{value:n,enumerable:!1})}return Object.defineProperty(H,"codes",{value:e,enumerable:!1}),H.color.close="\x1B[39m",H.bgColor.close="\x1B[49m",H.color.ansi=Ao(),H.color.ansi256=Po(),H.color.ansi16m=To(),H.bgColor.ansi=Ao(An),H.bgColor.ansi256=Po(An),H.bgColor.ansi16m=To(An),Object.defineProperties(H,{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(s=>s+s).join(""));let o=Number.parseInt(r,16);return[o>>16&255,o>>8&255,o&255]},enumerable:!1},hexToAnsi256:{value:t=>H.rgbToAnsi256(...H.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let n,r,o;if(t>=232)n=((t-232)*10+8)/255,r=n,o=n;else{t-=16;let a=t%36;n=Math.floor(t/36)/5,r=Math.floor(a/6)/5,o=a%6/5}let s=Math.max(n,r,o)*2;if(s===0)return 30;let i=30+(Math.round(o)<<2|Math.round(r)<<1|Math.round(n));return s===2&&(i+=60),i},enumerable:!1},rgbToAnsi:{value:(t,n,r)=>H.ansi256ToAnsi(H.rgbToAnsi256(t,n,r)),enumerable:!1},hexToAnsi:{value:t=>H.ansi256ToAnsi(H.hexToAnsi256(t)),enumerable:!1}}),H}var ml=pl(),Ur=new Set(["\x1B","\x9B"]),dl=39,Rn="\x07",_o="[",fl="]",jo="m",Bn=`${fl}8;;`,Io=e=>`${Ur.values().next().value}${_o}${e}${jo}`,Ro=e=>`${Ur.values().next().value}${Bn}${e}${Rn}`,gl=e=>e.split(" ").map(t=>nr(t)),Pn=(e,t,n)=>{let r=[...t],o=!1,s=!1,i=nr($o(e[e.length-1]));for(let[a,u]of r.entries()){let l=nr(u);if(i+l<=n?e[e.length-1]+=u:(e.push(u),i=0),Ur.has(u)&&(o=!0,s=r.slice(a+1).join("").startsWith(Bn)),o){s?u===Rn&&(o=!1,s=!1):u===jo&&(o=!1);continue}i+=l,i===n&&a<r.length-1&&(e.push(""),i=0)}!i&&e[e.length-1].length>0&&e.length>1&&(e[e.length-2]+=e.pop())},Dl=e=>{let t=e.split(" "),n=t.length;for(;n>0&&!(nr(t[n-1])>0);)n--;return n===t.length?e:t.slice(0,n).join(" ")+t.slice(n).join("")},hl=(e,t,n={})=>{if(n.trim!==!1&&e.trim()==="")return"";let r="",o,s,i=gl(e),a=[""];for(let[l,c]of e.split(" ").entries()){n.trim!==!1&&(a[a.length-1]=a[a.length-1].trimStart());let p=nr(a[a.length-1]);if(l!==0&&(p>=t&&(n.wordWrap===!1||n.trim===!1)&&(a.push(""),p=0),(p>0||n.trim===!1)&&(a[a.length-1]+=" ",p++)),n.hard&&i[l]>t){let m=t-p,D=1+Math.floor((i[l]-m-1)/t);Math.floor((i[l]-1)/t)<D&&a.push(""),Pn(a,c,t);continue}if(p+i[l]>t&&p>0&&i[l]>0){if(n.wordWrap===!1&&p<t){Pn(a,c,t);continue}a.push("")}if(p+i[l]>t&&n.wordWrap===!1){Pn(a,c,t);continue}a[a.length-1]+=c}n.trim!==!1&&(a=a.map(l=>Dl(l)));let u=[...a.join(`
|
|
242
|
-
`)];for(let[l,c]of u.entries()){if(
|
|
243
|
-
`?(s&&(
|
|
244
|
-
`&&(
|
|
241
|
+
`)}async function Ei(e,t){let r=await Qo(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:"")}var Fi=require("os");async function wi(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(Tn,(0,Fi.platform)()),n.searchParams.set(In,process.versions.node);let i=e.getFrameworks();return i.length>0&&(r.searchParams.set(Rt,i[0].name),n.searchParams.set(Rt,i[0].name)),r.searchParams.set("redirect_url",n.href),r.searchParams.set("preview_url",t),r.href}var yu=require("http");var Eu=require("os"),Ze=require("path"),$e=require("fs");var Fe=T($n(),1),Un=require("process");var Tr=T(require("readline"),1),Ni=require("stream");function rl({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 ol=rl();function $i(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(ol,"")}function Oi(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Li={exports:{}};(function(e){var t={};e.exports=t,t.eastAsianWidth=function(n){var i=n.charCodeAt(0),s=n.length==2?n.charCodeAt(1):0,o=i;return 55296<=i&&i<=56319&&56320<=s&&s<=57343&&(i&=1023,s&=1023,o=i<<10|s,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),s=0,o=0;o<i.length;o++)s=s+this.characterLength(i[o]);return s},t.slice=function(n,i,s){textLen=t.length(n),i=i||0,s=s||1,i<0&&(i=textLen+i),s<0&&(s=textLen+s);for(var o="",a=0,u=r(n),l=0;l<u.length;l++){var c=u[l],p=t.length(c);if(a>=i-(p==2?1:0))if(a+p<=s)o+=c;else break;a+=p}return o}})(Li);var il=Li.exports,sl=Oi(il),al=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},ul=Oi(al);function rn(e,t={}){if(typeof e!="string"||e.length===0||(t={ambiguousIsNarrow:!0,...t},e=$i(e),e.length===0))return 0;e=e.replace(ul()," ");let r=t.ambiguousIsNarrow?1:2,n=0;for(let i of e){let s=i.codePointAt(0);if(!(s<=31||s>=127&&s<=159||s>=768&&s<=879))switch(sl.eastAsianWidth(i)){case"F":case"W":n+=2;break;case"A":n+=r;break;default:n+=1}}return n}var Ar=10,Ai=(e=0)=>t=>`\x1B[${t+e}m`,Pi=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,Ti=(e=0)=>(t,r,n)=>`\x1B[${38+e};2;${t};${r};${n}m`,H={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(H.modifier);var ll=Object.keys(H.color),cl=Object.keys(H.bgColor);[...ll,...cl];function pl(){let e=new Map;for(let[t,r]of Object.entries(H)){for(let[n,i]of Object.entries(r))H[n]={open:`\x1B[${i[0]}m`,close:`\x1B[${i[1]}m`},r[n]=H[n],e.set(i[0],i[1]);Object.defineProperty(H,t,{value:r,enumerable:!1})}return Object.defineProperty(H,"codes",{value:e,enumerable:!1}),H.color.close="\x1B[39m",H.bgColor.close="\x1B[49m",H.color.ansi=Ai(),H.color.ansi256=Pi(),H.color.ansi16m=Ti(),H.bgColor.ansi=Ai(Ar),H.bgColor.ansi256=Pi(Ar),H.bgColor.ansi16m=Ti(Ar),Object.defineProperties(H,{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(s=>s+s).join(""));let i=Number.parseInt(n,16);return[i>>16&255,i>>8&255,i&255]},enumerable:!1},hexToAnsi256:{value:t=>H.rgbToAnsi256(...H.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 a=t%36;r=Math.floor(t/36)/5,n=Math.floor(a/6)/5,i=a%6/5}let s=Math.max(r,n,i)*2;if(s===0)return 30;let o=30+(Math.round(i)<<2|Math.round(n)<<1|Math.round(r));return s===2&&(o+=60),o},enumerable:!1},rgbToAnsi:{value:(t,r,n)=>H.ansi256ToAnsi(H.rgbToAnsi256(t,r,n)),enumerable:!1},hexToAnsi:{value:t=>H.ansi256ToAnsi(H.hexToAnsi256(t)),enumerable:!1}}),H}var ml=pl(),Vn=new Set(["\x1B","\x9B"]),dl=39,Rr="\x07",_i="[",fl="]",Mi="m",Br=`${fl}8;;`,Ii=e=>`${Vn.values().next().value}${_i}${e}${Mi}`,Ri=e=>`${Vn.values().next().value}${Br}${e}${Rr}`,gl=e=>e.split(" ").map(t=>rn(t)),Pr=(e,t,r)=>{let n=[...t],i=!1,s=!1,o=rn($i(e[e.length-1]));for(let[a,u]of n.entries()){let l=rn(u);if(o+l<=r?e[e.length-1]+=u:(e.push(u),o=0),Vn.has(u)&&(i=!0,s=n.slice(a+1).join("").startsWith(Br)),i){s?u===Rr&&(i=!1,s=!1):u===Mi&&(i=!1);continue}o+=l,o===r&&a<n.length-1&&(e.push(""),o=0)}!o&&e[e.length-1].length>0&&e.length>1&&(e[e.length-2]+=e.pop())},Dl=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!(rn(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},hl=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let n="",i,s,o=gl(e),a=[""];for(let[l,c]of e.split(" ").entries()){r.trim!==!1&&(a[a.length-1]=a[a.length-1].trimStart());let p=rn(a[a.length-1]);if(l!==0&&(p>=t&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),p=0),(p>0||r.trim===!1)&&(a[a.length-1]+=" ",p++)),r.hard&&o[l]>t){let m=t-p,D=1+Math.floor((o[l]-m-1)/t);Math.floor((o[l]-1)/t)<D&&a.push(""),Pr(a,c,t);continue}if(p+o[l]>t&&p>0&&o[l]>0){if(r.wordWrap===!1&&p<t){Pr(a,c,t);continue}a.push("")}if(p+o[l]>t&&r.wordWrap===!1){Pr(a,c,t);continue}a[a.length-1]+=c}r.trim!==!1&&(a=a.map(l=>Dl(l)));let u=[...a.join(`
|
|
242
|
+
`)];for(let[l,c]of u.entries()){if(n+=c,Vn.has(c)){let{groups:m}=new RegExp(`(?:\\${_i}(?<code>\\d+)m|\\${Br}(?<uri>.*)${Rr})`).exec(u.slice(l).join(""))||{groups:{}};if(m.code!==void 0){let D=Number.parseFloat(m.code);i=D===dl?void 0:D}else m.uri!==void 0&&(s=m.uri.length===0?void 0:m.uri)}let p=ml.codes.get(Number(i));u[l+1]===`
|
|
243
|
+
`?(s&&(n+=Ri("")),i&&p&&(n+=Ii(p))):c===`
|
|
244
|
+
`&&(i&&p&&(n+=Ii(i)),s&&(n+=Ri(s)))}return n};function Bi(e,t,r){return String(e).normalize().replace(/\r\n/g,`
|
|
245
245
|
`).split(`
|
|
246
|
-
`).map(
|
|
247
|
-
`)}var Cl=["up","down","left","right","space","enter","cancel"],
|
|
248
|
-
`),
|
|
249
|
-
`),
|
|
250
|
-
`),
|
|
251
|
-
`).length-1;this.output.write(Fe.cursor.move(-999,t*-1))}render(){let t=
|
|
252
|
-
`);this.output.write(
|
|
253
|
-
`).slice(
|
|
254
|
-
`)),this._prevFrame=t;return}this.output.write(Fe.erase.down())}this.output.write(t),this.state==="initial"&&(this.state="active"),this._prevFrame=t}}},
|
|
246
|
+
`).map(n=>hl(n,t,r)).join(`
|
|
247
|
+
`)}var Cl=["up","down","left","right","space","enter","cancel"],Mn={actions:new Set(Cl),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["","cancel"],["escape","cancel"]])};function ji(e,t){if(typeof e=="string")return Mn.aliases.get(e)===t;for(let r of e)if(r!==void 0&&ji(r,t))return!0;return!1}function xl(e,t){if(e===t)return;let r=e.split(`
|
|
248
|
+
`),n=t.split(`
|
|
249
|
+
`),i=[];for(let s=0;s<Math.max(r.length,n.length);s++)r[s]!==n[s]&&i.push(s);return i}var yf=globalThis.process.platform.startsWith("win"),ki=Symbol("clack:cancel");function _n(e,t){let r=e;r.isTTY&&r.setRawMode(t)}var yl=Object.defineProperty,El=(e,t,r)=>t in e?yl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Ee=(e,t,r)=>(El(e,typeof t!="symbol"?t+"":t,r),r),Ir=class{constructor(t,r=!0){Ee(this,"input"),Ee(this,"output"),Ee(this,"_abortSignal"),Ee(this,"rl"),Ee(this,"opts"),Ee(this,"_render"),Ee(this,"_track",!1),Ee(this,"_prevFrame",""),Ee(this,"_subscribers",new Map),Ee(this,"_cursor",0),Ee(this,"state","initial"),Ee(this,"error",""),Ee(this,"value");let{input:n=Un.stdin,output:i=Un.stdout,render:s,signal:o,...a}=t;this.opts=a,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=s.bind(this),this._track=r,this._abortSignal=o,this.input=n,this.output=i}unsubscribe(){this._subscribers.clear()}setSubscriber(t,r){let n=this._subscribers.get(t)??[];n.push(r),this._subscribers.set(t,n)}on(t,r){this.setSubscriber(t,{cb:r})}once(t,r){this.setSubscriber(t,{cb:r,once:!0})}emit(t,...r){let n=this._subscribers.get(t)??[],i=[];for(let s of n)s.cb(...r),s.once&&i.push(()=>n.splice(n.indexOf(s),1));for(let s of i)s()}prompt(){return new Promise((t,r)=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),t(ki);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}let n=new Ni.Writable;n._write=(i,s,o)=>{this._track&&(this.value=this.rl?.line.replace(/\t/g,""),this._cursor=this.rl?.cursor??0,this.emit("value",this.value)),o()},this.input.pipe(n),this.rl=Tr.default.createInterface({input:this.input,output:n,tabSize:2,prompt:"",escapeCodeTimeout:50,terminal:!0}),Tr.default.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),_n(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(Fe.cursor.show),this.output.off("resize",this.render),_n(this.input,!1),t(this.value)}),this.once("cancel",()=>{this.output.write(Fe.cursor.show),this.output.off("resize",this.render),_n(this.input,!1),t(ki)})})}onKeypress(t,r){if(this.state==="error"&&(this.state="active"),r?.name&&(!this._track&&Mn.aliases.has(r.name)&&this.emit("cursor",Mn.aliases.get(r.name)),Mn.actions.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.value&&this.opts.placeholder&&(this.rl?.write(this.opts.placeholder),this.emit("value",this.opts.placeholder)),this.opts.validate){let n=this.opts.validate(this.value);n&&(this.error=n instanceof Error?n.message:n,this.state="error",this.rl?.write(this.value))}this.state!=="error"&&(this.state="submit")}ji([t,r?.name,r?.sequence],"cancel")&&(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(`
|
|
250
|
+
`),_n(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let t=Bi(this._prevFrame,process.stdout.columns,{hard:!0}).split(`
|
|
251
|
+
`).length-1;this.output.write(Fe.cursor.move(-999,t*-1))}render(){let t=Bi(this._render(this)??"",process.stdout.columns,{hard:!0});if(t!==this._prevFrame){if(this.state==="initial")this.output.write(Fe.cursor.hide);else{let r=xl(this._prevFrame,t);if(this.restoreCursor(),r&&r?.length===1){let n=r[0];this.output.write(Fe.cursor.move(0,n)),this.output.write(Fe.erase.lines(1));let i=t.split(`
|
|
252
|
+
`);this.output.write(i[n]),this._prevFrame=t,this.output.write(Fe.cursor.move(0,i.length-n-1));return}if(r&&r?.length>1){let n=r[0];this.output.write(Fe.cursor.move(0,n)),this.output.write(Fe.erase.down());let i=t.split(`
|
|
253
|
+
`).slice(n);this.output.write(i.join(`
|
|
254
|
+
`)),this._prevFrame=t;return}this.output.write(Fe.erase.down())}this.output.write(t),this.state==="initial"&&(this.state="active"),this._prevFrame=t}}},jn=class extends Ir{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(Fe.cursor.move(0,-1)),this.value=r,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}};var Fl;Fl=new WeakMap;var ve=T(require("process"),1),$=T(et(),1),Ki=T($n(),1);function wl(){return ve.default.platform!=="win32"?ve.default.env.TERM!=="linux":!!ve.default.env.CI||!!ve.default.env.WT_SESSION||!!ve.default.env.TERMINUS_SUBLIME||ve.default.env.ConEmuTask==="{cmd::Cmder}"||ve.default.env.TERM_PROGRAM==="Terminus-Sublime"||ve.default.env.TERM_PROGRAM==="vscode"||ve.default.env.TERM==="xterm-256color"||ve.default.env.TERM==="alacritty"||ve.default.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var bl=wl(),Q=(e,t)=>bl?e:t,Sl=Q("\u25C6","*"),vl=Q("\u25A0","x"),Al=Q("\u25B2","x"),zi=Q("\u25C7","o"),Pl=Q("\u250C","T"),Le=Q("\u2502","|"),Gi=Q("\u2514","\u2014"),Ui=Q("\u25CF",">"),Vi=Q("\u25CB"," "),Rf=Q("\u25FB","[\u2022]"),Bf=Q("\u25FC","[+]"),kf=Q("\u25FB","[ ]"),Nf=Q("\u25AA","\u2022"),$f=Q("\u2500","-"),Of=Q("\u256E","+"),Lf=Q("\u251C","+"),_f=Q("\u256F","+"),Tl=Q("\u25CF","\u2022"),Il=Q("\u25C6","*"),Rl=Q("\u25B2","!"),Bl=Q("\u25A0","x"),kl=e=>{switch(e){case"initial":case"active":return $.default.cyan(Sl);case"cancel":return $.default.red(vl);case"error":return $.default.yellow(Al);case"submit":return $.default.green(zi)}};var sn=e=>{let t=e.active??"Yes",r=e.inactive??"No";return new jn({active:t,inactive:r,initialValue:e.initialValue??!0,render(){let n=`${$.default.gray(Le)}
|
|
255
255
|
${kl(this.state)} ${e.message}
|
|
256
|
-
`,
|
|
257
|
-
${$.default.gray(Le)}`;default:return`${
|
|
258
|
-
${$.default.cyan(
|
|
256
|
+
`,i=this.value?t:r;switch(this.state){case"submit":return`${n}${$.default.gray(Le)} ${$.default.dim(i)}`;case"cancel":return`${n}${$.default.gray(Le)} ${$.default.strikethrough($.default.dim(i))}
|
|
257
|
+
${$.default.gray(Le)}`;default:return`${n}${$.default.cyan(Le)} ${this.value?`${$.default.green(Ui)} ${t}`:`${$.default.dim(Vi)} ${$.default.dim(t)}`} ${$.default.dim("/")} ${this.value?`${$.default.dim(Vi)} ${$.default.dim(r)}`:`${$.default.green(Ui)} ${r}`}
|
|
258
|
+
${$.default.cyan(Gi)}
|
|
259
259
|
`}}}).prompt()};var tt=(e="")=>{process.stdout.write(`${$.default.gray(Pl)} ${e}
|
|
260
|
-
`)},
|
|
261
|
-
${$.default.gray(
|
|
260
|
+
`)},an=(e="")=>{process.stdout.write(`${$.default.gray(Le)}
|
|
261
|
+
${$.default.gray(Gi)} ${e}
|
|
262
262
|
|
|
263
|
-
`)},
|
|
264
|
-
`);
|
|
263
|
+
`)},j={message:(e="",{symbol:t=$.default.gray(Le)}={})=>{let r=[`${$.default.gray(Le)}`];if(e){let[n,...i]=e.split(`
|
|
264
|
+
`);r.push(`${t} ${n}`,...i.map(s=>`${$.default.gray(Le)} ${s}`))}process.stdout.write(`${r.join(`
|
|
265
265
|
`)}
|
|
266
|
-
`)},info:e=>{
|
|
267
|
-
`),
|
|
268
|
-
`),s=s.replace(/\\r/g,"\r")),t[
|
|
269
|
-
|
|
270
|
-
${
|
|
271
|
-
${
|
|
272
|
-
|
|
273
|
-
`,await e.writeFile(t,s),"update";else return e.debug(`Creating new .env file with "${
|
|
274
|
-
`),await e.writeFile(t,s),"create"}catch(i){if(i&&String(i).includes("EACCES"))return e.debug(`Permssion denied, failed to create or modify .env file with "${n}=${r}" at ${t}`),"permission-error";e.Sentry?.captureException(i)}return null}async function ar(e){return await pt(e,[".env.local",".env.development.local",".env.production.local",".env.development",".env.production",".env"],Me)}async function Jo(e,t){let n=await ar(e),r=await mt(e,n.file,n.envKey,t);return{...n,modifiedType:r}}var Me="NEXT_PUBLIC_BUILDER_API_KEY";function jt(e,t,n,r,o=!0){let s=t.properties.filter(a=>e.ts.isPropertyAssignment(a)),i=Ol(e,t,n);return i>-1?r==null&&o?e.ts.factory.updateObjectLiteralExpression(t,s.filter((a,u)=>u!==i)):(s[i]=e.ts.factory.updatePropertyAssignment(s[i],s[i].name,ur(e,r)),e.ts.factory.updateObjectLiteralExpression(t,s)):(r!=null&&s.push(e.ts.factory.createPropertyAssignment(n,ur(e,r))),e.ts.factory.updateObjectLiteralExpression(t,s))}function Ol(e,t,n){return t.properties.findIndex(r=>K(e,r)===n)}function lr(e,t){switch(t.kind){case e.ts.SyntaxKind.ArrayLiteralExpression:return _l(e,t);case e.ts.SyntaxKind.ObjectLiteralExpression:return Ll(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 Ll(e,t){let n={};if(t&&e.ts.isObjectLiteralExpression(t)){for(let r of t.properties)if(e.ts.isPropertyAssignment(r)){let o=K(e,r);o&&(n[o]=lr(e,r.initializer))}}return n}function _l(e,t){return t&&e.ts.isArrayLiteralExpression(t)?t.elements.map(n=>lr(e,n)):[]}function K(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 ur(e,t){return kn(e,t,new WeakSet)}function kn(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)?jl(e,t,n):typeof t=="object"?Ml(e,t,n):e.ts.factory.createIdentifier(t)}function jl(e,t,n){let r=t.map(o=>kn(e,o,n));return e.ts.factory.createArrayLiteralExpression(r,!0)}function Ml(e,t,n){if(n.has(t))return e.ts.factory.createIdentifier("undefined");n.add(t);let r=Object.keys(t).map(o=>e.ts.factory.createPropertyAssignment(o,kn(e,t[o],n)));return e.ts.factory.createObjectLiteralExpression(r,!0)}function St(e,t,n){let r=[];if(!n)return r;let o=null;if(e.ts.isArrowFunction(n)||e.ts.isFunctionExpression(n)||e.ts.isFunctionDeclaration(n)){let s=n.parameters;if(s.length>0){let i=s[0],a=t.getTypeAtLocation(i);a.aliasTypeArguments&&a.aliasTypeArguments.length>0&&(a=a.aliasTypeArguments[0]),!!(a.flags&e.ts.TypeFlags.Object)&&(o=a.getProperties())}}else if(e.ts.isIdentifier(n)){let s=t.getTypeAtLocation(n),i=s.symbol?.valueDeclaration;if(i&&e.ts.isClassDeclaration(i)){let u=i.heritageClauses?.find(l=>l.token===e.ts.SyntaxKind.ExtendsKeyword)?.types;if(u){for(let l of u)if(t.getSymbolAtLocation(l.expression)?.name==="Component"){if(e.ts.isExpressionWithTypeArguments(l)){let p=l.typeArguments;if(p){let m=p[0];o=t.getTypeFromTypeNode(m).getProperties()}}break}}}if(!o){let a=s.getCallSignatures();if(a.length>0){let u=a[0].getParameters();u.length>0&&(o=t.getTypeOfSymbolAtLocation(u[0],n).getProperties())}}}else if(e.ts.isExportSpecifier(n)){let s=t.getSymbolAtLocation(n.name);if(s){let a=t.getTypeOfSymbolAtLocation(s,n).getCallSignatures();if(a.length>0){let u=a[0].getParameters();u.length>0&&(o=t.getTypeOfSymbolAtLocation(u[0],n).getProperties())}}}if(o)for(let s of o){let i=Ul(e,t,s);i&&r.push(i)}return r=r.filter(Yo),r.length>0?r:Vl(e,n)}function Ul(e,t,n){let r=n.valueDeclaration,o=n.getName();if(r||(r=n.getDeclarations()?.[0]),r&&e.ts.isPropertySignature(r)){if(o!=="children"&&r.getSourceFile().fileName.includes("node_modules/@types/"))return null;let s="string",i;if(r?.type){let u=t.getTypeFromTypeNode(r.type),l=t.typeToString(u),c=Nn(l);c.knownType?s=c.builderType:zl(l)||u.flags&e.ts.TypeFlags.StringLike?s="string":u.flags&e.ts.TypeFlags.NumberLike?s="number":u.flags&e.ts.TypeFlags.IndexedAccess?s="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)?s="object":s="string",l!==s&&(i=l)}let a={name:o,type:s,isRegistered:!1};if(i&&r.type){let u=Jl(e,t,t.getTypeFromTypeNode(r.type));a.meta=a.meta||{},u&&u.length>0&&a.type==="string"&&u.every(Wl)?a.enum=u.map(ql):a.meta.ts=i}return r.questionToken||(a.required=!0),a}return null}function Vl(e,t){let n=[],r=e.ts.getJSDocCommentsAndTags(t);for(let o of r)if(!(!e.ts.isJSDoc(o)||!o.tags))for(let s of o.tags){if(!e.ts.isJSDocParameterTag(s)||s.tagName.text!=="param")continue;let a=s.typeExpression?.type;if(!a||!e.ts.isJSDocTypeLiteral(a))continue;let u=a.jsDocPropertyTags;if(u)for(let l of u){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(Yo)}var Kl=["ClassicComponent","FunctionComponent","IntrinsicElements","JSX","ReactNode","ReactElement","ReactPortal"];function zl(e){return typeof e!="string"?!1:!!Kl.some(t=>e.includes(t))}function Nn(e){return typeof e=="string"&&(e=e.trim(),Gl.some(t=>t.value===e))?{builderType:e,knownType:!0}:{builderType:"string",knownType:!1}}var Gl=[{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 Wl(e){return/^['"].*['"]$/.test(e)}function ql(e){return(e.startsWith('"')||e.startsWith("'"))&&(e.endsWith('"')||e.endsWith("'"))?e.slice(1,-1):e}var Jl=(e,t,n)=>{let r=new Set;Ho(e,t,n,r);let o=r.delete("true"),s=r.delete("false");(o||s)&&r.add("boolean");let i=Array.from(r.keys()).sort();if(i.length>1&&(i=i.map(a=>a.indexOf("=>")>=0?`(${a})`:a)),!(i.length>20))return i},Hl=(e,t,n)=>{let r=e.ts.TypeFormatFlags.InElementType|e.ts.TypeFormatFlags.NoTruncation;return t.typeToString(n,void 0,r)},Ho=(e,t,n,r)=>{if(n.isUnion())n.types.forEach(o=>{Ho(e,t,o,r)});else if(n.isLiteral()){let o=Hl(e,t,n);r.add(o)}};function Yo(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!Yl.has(t.toLowerCase())}var Yl=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 ge(e,t,n){for(let r of n.properties){if(!e.ts.isPropertyAssignment(r))continue;let o=K(e,r);if(o==="name"&&e.ts.isStringLiteral(r.initializer)){t.name=r.initializer.text;continue}if(o==="description"&&e.ts.isStringLiteral(r.initializer)){t.description=r.initializer.text;continue}if(o==="image"&&e.ts.isStringLiteral(r.initializer)){t.image=r.initializer.text;continue}if(o==="inputs"&&e.ts.isArrayLiteralExpression(r.initializer)){let s=Ql(e,r.initializer);we(t,s);continue}if(o==="meta"&&e.ts.isObjectLiteralExpression(r.initializer)){let s=lr(e,r.initializer);s&&typeof s=="object"&&(t.meta=s);continue}}return t}function Ql(e,t){let n=[];for(let r of t.elements)e.ts.isObjectLiteralExpression(r)&&n.push(Xl(e,r));return n}function Xl(e,t){let n=lr(e,t),r=oc(n);return r.isRegistered=!0,r}function ee(e,t,n){let r=ec(n);return t=jt(e,t,"name",r.name,!1),t=jt(e,t,"description",r.description),t=jt(e,t,"image",r.image),t=jt(e,t,"meta",r.meta),t=Zl(e,t,r),sc(e,t)}function Zl(e,t,n){let r=null,o=t.properties.filter(a=>e.ts.isPropertyAssignment(a)&&e.ts.isIdentifier(a.name)),s=o.findIndex(a=>e.ts.isIdentifier(a.name)&&a.name.text==="inputs"),i=[...n.inputs??[]];if(s>-1){if(i.length===0)return jt(e,t,"inputs",null);let a=o[s];e.ts.isPropertyAssignment(a)&&e.ts.isArrayLiteralExpression(a.initializer)&&(r=a.initializer)}return i.length===0?t:(r=rc(e,r||e.ts.factory.createArrayLiteralExpression(),i),s>-1?o[s]=e.ts.factory.updatePropertyAssignment(o[s],o[s].name,r):o.push(e.ts.factory.createPropertyAssignment("inputs",r)),e.ts.factory.updateObjectLiteralExpression(t,o))}function ec(e){return{name:e.name,description:e.description,image:e.image,inputs:(e.inputs||[]).filter(n=>n.isRegistered).map(tc),...e.meta?{meta:{...e.meta}}:{}}}function tc(e){let t={name:e.name,type:e.type};return(me(e.defaultValue)||Zt(e.defaultValue)||Bt(e.defaultValue))&&(t.defaultValue=e.defaultValue),me(e.friendlyName)&&(t.friendlyName=e.friendlyName),me(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 rc(e,t,n){let r=t.elements.filter(o=>{if(!e.ts.isObjectLiteralExpression(o))return!1;let s=o.properties.find(a=>K(e,a)==="name");if(!s)return!1;let i=s.initializer;return e.ts.isStringLiteral(i)?n.some(a=>a.name===i.text):!1});for(let o of n)r=nc(e,r,o);return r.sort((o,s)=>{let i=o.properties.find(m=>K(e,m)==="name"),a=s.properties.find(m=>K(e,m)==="name"),u=i?.initializer,l=a?.initializer,c=u&&e.ts.isStringLiteral(u)?u.text:"zz",p=l&&e.ts.isStringLiteral(l)?l.text:"zz";return c.toLowerCase().localeCompare(p.toLowerCase())}),e.ts.factory.updateArrayLiteralExpression(t,r)}function nc(e,t,n){let r=t.findIndex(o=>o.properties.some(s=>{let i=K(e,s);return e.ts.isPropertyAssignment(s)&&i==="name"&&e.ts.isStringLiteral(s.initializer)&&s.initializer.text===n.name}));if(r>-1)t[r]=Qo(e,t[r],n);else{let o=Qo(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("name",e.ts.factory.createStringLiteral(n.name))],!0),n);t.push(o)}return t}function Qo(e,t,n){let r=t.properties.filter(s=>e.ts.isPropertyAssignment(s)),o=Object.keys(n).filter(s=>s!=="isRegistered");for(let s of o)r=ic(e,r,n,s);return r=ac(e,r.filter(s=>{let i=K(e,s);return o.includes(i)})),e.ts.factory.updateObjectLiteralExpression(t,r)}function ic(e,t,n,r){let o=t.findIndex(s=>e.ts.isIdentifier(s.name)&&s.name.text===r);return o>-1?t[o]=e.ts.factory.updatePropertyAssignment(t[o],t[o].name,ur(e,n[r])):t.push(e.ts.factory.createPropertyAssignment(r,ur(e,n[r]))),t}function we(e,t){for(let n of t){let r=e.inputs.findIndex(o=>o.name===n.name);r>-1?(n.isRegistered||!e.inputs[r].isRegistered)&&(e.inputs[r]=n):e.inputs.push(n)}e.acceptsChildren=$n(e)}function oc(e){let t=Nn(e.type),n={name:e.name.trim(),type:t.builderType};return me(e.friendlyName)&&e.friendlyName.trim()!==e.name.trim()&&(n.friendlyName=e.friendlyName),(me(e.defaultValue)||Zt(e.defaultValue)||Bt(e.defaultValue))&&(n.defaultValue=e.defaultValue),me(e.helperText)&&(n.helperText=e.helperText),Bt(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),On(n)}function $n(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 On(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 sc(e,t){let n=[...t.properties].sort((r,o)=>{let s=K(e,r)||"zz",i=K(e,o)||"zz";if(s==="inputs")return 1;let a=Xo.indexOf(s),u=Xo.indexOf(i);return a>-1?u>-1&&a>u?1:-1:u>-1?a>-1&&u<a?-1:1:s.localeCompare(i)});return e.ts.factory.updateObjectLiteralExpression(t,n)}var Xo=["component","name","description"];function ac(e,t){return[...t].sort((r,o)=>{let s=K(e,r)||"zz",i=K(e,o)||"zz",a=Zo.indexOf(s),u=Zo.indexOf(i);return a>-1?u>-1&&a>u?1:-1:u>-1?a>-1&&u<a?-1:1:s.localeCompare(i)})}var Zo=["name","type"];function Mt(e,t){for(let n of t.properties){if(!e.ts.isPropertyAssignment(n)||!e.ts.isIdentifier(n.name))continue;if(K(e,n)==="canHaveChildren"){let{initializer:o}=n;return o.kind===e.ts.SyntaxKind.TrueKeyword}}return!1}function es(e,t){let n=`Builder.registerComponent(
|
|
275
|
-
`;if(e.appDir)t.acceptsChildren?
|
|
276
|
-
`:
|
|
277
|
-
`;else{let
|
|
278
|
-
`:
|
|
279
|
-
`:t.acceptsChildren?
|
|
280
|
-
`:
|
|
281
|
-
`}
|
|
266
|
+
`)},info:e=>{j.message(e,{symbol:$.default.blue(Tl)})},success:e=>{j.message(e,{symbol:$.default.green(Il)})},step:e=>{j.message(e,{symbol:$.default.green(zi)})},warn:e=>{j.message(e,{symbol:$.default.yellow(Rl)})},warning:e=>{j.warn(e)},error:e=>{j.message(e,{symbol:$.default.red(Bl)})}},Mf=`${$.default.gray(Le)} `;var yt=T(et(),1);var L=T(require("typescript"),1);async function _e(e){let t=Wi(e),r=await e.readFile(t);return typeof r=="string"?JSON.parse(r):{}}async function Me(e,t){t=typeof t=="object"&&t!=null?t:{};let r=Wi(e);await e.writeFile(r,JSON.stringify(t??{},null,2))}function Wi(e){let t=e.getAppRootDir();return e.join(t,"node_modules",".builder","builder-cache.json")}async function pt(e,t,r){let n={envKey:r,envValue:null,file:""};for(let i of t){let s=e.join(e.getAppRootDir(),i),o=await Nl(e,s);if(o){let a=o[r];if(typeof a=="string"&&a.length>0&&a!=="YOUR_API_KEY")return n.envValue=a,n.file=s,n}}return n.file=e.join(e.getAppRootDir(),t[t.length-1]),n}async function Nl(e,t){let r=await e.readFile(t);return typeof r=="string"?qi(r):null}function qi(e){let t={},r=e.replace(/\r\n?/gm,`
|
|
267
|
+
`),n;for(;(n=$l.exec(r))!=null;){let i=n[1],s=n[2]||"";s=s.trim();let o=s[0];s=s.replace(/^(['"`])([\s\S]*)\1$/gm,"$2"),o==='"'&&(s=s.replace(/\\n/g,`
|
|
268
|
+
`),s=s.replace(/\\r/g,"\r")),t[i]=s}return t}var $l=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/gm;async function mt(e,t,r,n){let i="# https://www.builder.io/c/docs/using-your-api-key",s=await e.readFile(t);try{if(s)if(s.includes(r))if(s.includes(n))e.debug(`"${r}" with "${n}" already set in ${t}`);else return e.debug(`Replace "${r}" in ${t}`),s=s.replace(new RegExp(`${r}=.*`),`${r}=${n}`),await e.writeFile(t,s),"update";else return e.debug(`Append "${r}" to ${t}`),s+=`
|
|
269
|
+
|
|
270
|
+
${i}
|
|
271
|
+
${r}=${n}
|
|
272
|
+
|
|
273
|
+
`,await e.writeFile(t,s),"update";else return e.debug(`Creating new .env file with "${r}" at ${t}`),s=[i,`${r}=${n}`,""].join(`
|
|
274
|
+
`),await e.writeFile(t,s),"create"}catch(o){if(o&&String(o).includes("EACCES"))return e.debug(`Permssion denied, failed to create or modify .env file with "${r}=${n}" at ${t}`),"permission-error";e.Sentry?.captureException(o)}return null}async function un(e){return await pt(e,[".env.local",".env.development.local",".env.production.local",".env.development",".env.production",".env"],je)}async function Ji(e,t){let r=await un(e),n=await mt(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var je="NEXT_PUBLIC_BUILDER_API_KEY";function Mt(e,t,r,n,i=!0){let s=t.properties.filter(a=>e.ts.isPropertyAssignment(a)),o=Ol(e,t,r);return o>-1?n==null&&i?e.ts.factory.updateObjectLiteralExpression(t,s.filter((a,u)=>u!==o)):(s[o]=e.ts.factory.updatePropertyAssignment(s[o],s[o].name,ln(e,n)),e.ts.factory.updateObjectLiteralExpression(t,s)):(n!=null&&s.push(e.ts.factory.createPropertyAssignment(r,ln(e,n))),e.ts.factory.updateObjectLiteralExpression(t,s))}function Ol(e,t,r){return t.properties.findIndex(n=>K(e,n)===r)}function cn(e,t){switch(t.kind){case e.ts.SyntaxKind.ArrayLiteralExpression:return _l(e,t);case e.ts.SyntaxKind.ObjectLiteralExpression:return Ll(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 Ll(e,t){let r={};if(t&&e.ts.isObjectLiteralExpression(t)){for(let n of t.properties)if(e.ts.isPropertyAssignment(n)){let i=K(e,n);i&&(r[i]=cn(e,n.initializer))}}return r}function _l(e,t){return t&&e.ts.isArrayLiteralExpression(t)?t.elements.map(r=>cn(e,r)):[]}function K(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 ln(e,t){return kr(e,t,new WeakSet)}function kr(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)?Ml(e,t,r):typeof t=="object"?jl(e,t,r):e.ts.factory.createIdentifier(t)}function Ml(e,t,r){let n=t.map(i=>kr(e,i,r));return e.ts.factory.createArrayLiteralExpression(n,!0)}function jl(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,kr(e,t[i],r)));return e.ts.factory.createObjectLiteralExpression(n,!0)}function St(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 s=r.parameters;if(s.length>0){let o=s[0],a=t.getTypeAtLocation(o);a.aliasTypeArguments&&a.aliasTypeArguments.length>0&&(a=a.aliasTypeArguments[0]),!!(a.flags&e.ts.TypeFlags.Object)&&(i=a.getProperties())}}else if(e.ts.isIdentifier(r)){let s=t.getTypeAtLocation(r),o=s.symbol?.valueDeclaration;if(o&&e.ts.isClassDeclaration(o)){let u=o.heritageClauses?.find(l=>l.token===e.ts.SyntaxKind.ExtendsKeyword)?.types;if(u){for(let l of u)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 a=s.getCallSignatures();if(a.length>0){let u=a[0].getParameters();u.length>0&&(i=t.getTypeOfSymbolAtLocation(u[0],r).getProperties())}}}else if(e.ts.isExportSpecifier(r)){let s=t.getSymbolAtLocation(r.name);if(s){let a=t.getTypeOfSymbolAtLocation(s,r).getCallSignatures();if(a.length>0){let u=a[0].getParameters();u.length>0&&(i=t.getTypeOfSymbolAtLocation(u[0],r).getProperties())}}}if(i)for(let s of i){let o=Ul(e,t,s);o&&n.push(o)}return n=n.filter(Yi),n.length>0?n:Vl(e,r)}function Ul(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 s="string",o;if(n?.type){let u=t.getTypeFromTypeNode(n.type),l=t.typeToString(u),c=Nr(l);c.knownType?s=c.builderType:zl(l)||u.flags&e.ts.TypeFlags.StringLike?s="string":u.flags&e.ts.TypeFlags.NumberLike?s="number":u.flags&e.ts.TypeFlags.IndexedAccess?s="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)?s="object":s="string",l!==s&&(o=l)}let a={name:i,type:s,isRegistered:!1};if(o&&n.type){let u=Jl(e,t,t.getTypeFromTypeNode(n.type));a.meta=a.meta||{},u&&u.length>0&&a.type==="string"&&u.every(Wl)?a.enum=u.map(ql):a.meta.ts=o}return n.questionToken||(a.required=!0),a}return null}function Vl(e,t){let r=[],n=e.ts.getJSDocCommentsAndTags(t);for(let i of n)if(!(!e.ts.isJSDoc(i)||!i.tags))for(let s of i.tags){if(!e.ts.isJSDocParameterTag(s)||s.tagName.text!=="param")continue;let a=s.typeExpression?.type;if(!a||!e.ts.isJSDocTypeLiteral(a))continue;let u=a.jsDocPropertyTags;if(u)for(let l of u){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};r.push(g)}}return r.filter(Yi)}var Kl=["ClassicComponent","FunctionComponent","IntrinsicElements","JSX","ReactNode","ReactElement","ReactPortal"];function zl(e){return typeof e!="string"?!1:!!Kl.some(t=>e.includes(t))}function Nr(e){return typeof e=="string"&&(e=e.trim(),Gl.some(t=>t.value===e))?{builderType:e,knownType:!0}:{builderType:"string",knownType:!1}}var Gl=[{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 Wl(e){return/^['"].*['"]$/.test(e)}function ql(e){return(e.startsWith('"')||e.startsWith("'"))&&(e.endsWith('"')||e.endsWith("'"))?e.slice(1,-1):e}var Jl=(e,t,r)=>{let n=new Set;Hi(e,t,r,n);let i=n.delete("true"),s=n.delete("false");(i||s)&&n.add("boolean");let o=Array.from(n.keys()).sort();if(o.length>1&&(o=o.map(a=>a.indexOf("=>")>=0?`(${a})`:a)),!(o.length>20))return o},Hl=(e,t,r)=>{let n=e.ts.TypeFormatFlags.InElementType|e.ts.TypeFormatFlags.NoTruncation;return t.typeToString(r,void 0,n)},Hi=(e,t,r,n)=>{if(r.isUnion())r.types.forEach(i=>{Hi(e,t,i,n)});else if(r.isLiteral()){let i=Hl(e,t,r);n.add(i)}};function Yi(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!Yl.has(t.toLowerCase())}var Yl=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 ge(e,t,r){for(let n of r.properties){if(!e.ts.isPropertyAssignment(n))continue;let i=K(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 s=Ql(e,n.initializer);we(t,s);continue}if(i==="meta"&&e.ts.isObjectLiteralExpression(n.initializer)){let s=cn(e,n.initializer);s&&typeof s=="object"&&(t.meta=s);continue}}return t}function Ql(e,t){let r=[];for(let n of t.elements)e.ts.isObjectLiteralExpression(n)&&r.push(Xl(e,n));return r}function Xl(e,t){let r=cn(e,t),n=ic(r);return n.isRegistered=!0,n}function ee(e,t,r){let n=ec(r);return t=Mt(e,t,"name",n.name,!1),t=Mt(e,t,"description",n.description),t=Mt(e,t,"image",n.image),t=Mt(e,t,"meta",n.meta),t=Zl(e,t,n),sc(e,t)}function Zl(e,t,r){let n=null,i=t.properties.filter(a=>e.ts.isPropertyAssignment(a)&&e.ts.isIdentifier(a.name)),s=i.findIndex(a=>e.ts.isIdentifier(a.name)&&a.name.text==="inputs"),o=[...r.inputs??[]];if(s>-1){if(o.length===0)return Mt(e,t,"inputs",null);let a=i[s];e.ts.isPropertyAssignment(a)&&e.ts.isArrayLiteralExpression(a.initializer)&&(n=a.initializer)}return o.length===0?t:(n=nc(e,n||e.ts.factory.createArrayLiteralExpression(),o),s>-1?i[s]=e.ts.factory.updatePropertyAssignment(i[s],i[s].name,n):i.push(e.ts.factory.createPropertyAssignment("inputs",n)),e.ts.factory.updateObjectLiteralExpression(t,i))}function ec(e){return{name:e.name,description:e.description,image:e.image,inputs:(e.inputs||[]).filter(r=>r.isRegistered).map(tc),...e.meta?{meta:{...e.meta}}:{}}}function tc(e){let t={name:e.name,type:e.type};return(me(e.defaultValue)||Zt(e.defaultValue)||Bt(e.defaultValue))&&(t.defaultValue=e.defaultValue),me(e.friendlyName)&&(t.friendlyName=e.friendlyName),me(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 nc(e,t,r){let n=t.elements.filter(i=>{if(!e.ts.isObjectLiteralExpression(i))return!1;let s=i.properties.find(a=>K(e,a)==="name");if(!s)return!1;let o=s.initializer;return e.ts.isStringLiteral(o)?r.some(a=>a.name===o.text):!1});for(let i of r)n=rc(e,n,i);return n.sort((i,s)=>{let o=i.properties.find(m=>K(e,m)==="name"),a=s.properties.find(m=>K(e,m)==="name"),u=o?.initializer,l=a?.initializer,c=u&&e.ts.isStringLiteral(u)?u.text:"zz",p=l&&e.ts.isStringLiteral(l)?l.text:"zz";return c.toLowerCase().localeCompare(p.toLowerCase())}),e.ts.factory.updateArrayLiteralExpression(t,n)}function rc(e,t,r){let n=t.findIndex(i=>i.properties.some(s=>{let o=K(e,s);return e.ts.isPropertyAssignment(s)&&o==="name"&&e.ts.isStringLiteral(s.initializer)&&s.initializer.text===r.name}));if(n>-1)t[n]=Qi(e,t[n],r);else{let i=Qi(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("name",e.ts.factory.createStringLiteral(r.name))],!0),r);t.push(i)}return t}function Qi(e,t,r){let n=t.properties.filter(s=>e.ts.isPropertyAssignment(s)),i=Object.keys(r).filter(s=>s!=="isRegistered");for(let s of i)n=oc(e,n,r,s);return n=ac(e,n.filter(s=>{let o=K(e,s);return i.includes(o)})),e.ts.factory.updateObjectLiteralExpression(t,n)}function oc(e,t,r,n){let i=t.findIndex(s=>e.ts.isIdentifier(s.name)&&s.name.text===n);return i>-1?t[i]=e.ts.factory.updatePropertyAssignment(t[i],t[i].name,ln(e,r[n])):t.push(e.ts.factory.createPropertyAssignment(n,ln(e,r[n]))),t}function we(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=$r(e)}function ic(e){let t=Nr(e.type),r={name:e.name.trim(),type:t.builderType};return me(e.friendlyName)&&e.friendlyName.trim()!==e.name.trim()&&(r.friendlyName=e.friendlyName),(me(e.defaultValue)||Zt(e.defaultValue)||Bt(e.defaultValue))&&(r.defaultValue=e.defaultValue),me(e.helperText)&&(r.helperText=e.helperText),Bt(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),Or(r)}function $r(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 Or(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 sc(e,t){let r=[...t.properties].sort((n,i)=>{let s=K(e,n)||"zz",o=K(e,i)||"zz";if(s==="inputs")return 1;let a=Xi.indexOf(s),u=Xi.indexOf(o);return a>-1?u>-1&&a>u?1:-1:u>-1?a>-1&&u<a?-1:1:s.localeCompare(o)});return e.ts.factory.updateObjectLiteralExpression(t,r)}var Xi=["component","name","description"];function ac(e,t){return[...t].sort((n,i)=>{let s=K(e,n)||"zz",o=K(e,i)||"zz",a=Zi.indexOf(s),u=Zi.indexOf(o);return a>-1?u>-1&&a>u?1:-1:u>-1?a>-1&&u<a?-1:1:s.localeCompare(o)})}var Zi=["name","type"];function jt(e,t){for(let r of t.properties){if(!e.ts.isPropertyAssignment(r)||!e.ts.isIdentifier(r.name))continue;if(K(e,r)==="canHaveChildren"){let{initializer:i}=r;return i.kind===e.ts.SyntaxKind.TrueKeyword}}return!1}function es(e,t){let r=`Builder.registerComponent(
|
|
275
|
+
`;if(e.appDir)t.acceptsChildren?r+=` withChildren(${t.importName}),
|
|
276
|
+
`:r+=` ${t.importName},
|
|
277
|
+
`;else{let i=t.externalImportPath?t.externalImportPath:_(e,e.registryPath,t.filePath);t.exportName==="default"?t.acceptsChildren?r+=` withChildren(dynamic(() => import(${JSON.stringify(i)}))),
|
|
278
|
+
`:r+=` dynamic(() => import(${JSON.stringify(i)})),
|
|
279
|
+
`:t.acceptsChildren?r+=` withChildren(dynamic(async () => (await import(${JSON.stringify(i)})).${t.exportName})),
|
|
280
|
+
`:r+=` dynamic(async () => (await import(${JSON.stringify(i)})).${t.exportName}),
|
|
281
|
+
`}r+=` {
|
|
282
282
|
name: "${t.name}",
|
|
283
283
|
}
|
|
284
|
-
`,n+=");";let r=Ir(e,n);return Ln(e,r,t)}function Ln(e,t,n){if(!e.ts.isExpressionStatement(t))return t;let r=t.expression;if(!e.ts.isCallExpression(r))return t;let o=[...r.arguments];if(o.length<2)return t;n.acceptsChildren?e.ts.isCallExpression(o[0])&&e.ts.isIdentifier(o[0].expression)&&o[0].expression.text==="withChildren"||(o[0]=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("withChildren"),void 0,[o[0]])):e.ts.isCallExpression(o[0])&&e.ts.isIdentifier(o[0].expression)&&o[0].expression.text==="withChildren"&&(o[0]=o[0].arguments[0]);let s=o[1];return e.ts.isObjectLiteralExpression(s)?(o[1]=ee(e,s,n),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(r,r.expression,r.typeArguments,o))):t}function O(e,t,n,r="esm"){return Array.isArray(n.namedImports)&&n.namedImports.forEach(o=>{t=uc(e,t,o,n.importPath,!!n.isTypeOnly,r)}),typeof n.defaultImport=="string"&&(t=lc(e,t,n.defaultImport,n.importPath,r)),t}function uc(e,t,n,r,o,s){return s==="cjs"?rs(e,t,null,n,r):ts(e,t,null,n,r,o)}function lc(e,t,n,r,o){return o==="cjs"?rs(e,t,n,null,r):ts(e,t,n,null,r,!1)}function ts(e,t,n,r,o,s){let i=[...t.statements],a=0,u=!1,l=!1;for(let D=0;D<i.length;D++){let g=i[D];if(!e.ts.isImportDeclaration(g)||(a=D,!g.moduleSpecifier||!e.ts.isStringLiteral(g.moduleSpecifier))||g.moduleSpecifier.text!==o||!!g.importClause?.isTypeOnly!==s)continue;let f=[],h=g.importClause?.namedBindings;if(h&&e.ts.isNamedImports(h)&&h.elements&&f.push(...h.elements),typeof r=="string"){if(f.some(y=>y.name.text===r))return t;f.push(e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(r))),f.sort((y,F)=>y.name.text.localeCompare(F.name.text)),u=!0}let d=g.importClause?g.importClause.name:void 0;if(typeof n=="string"){if(d&&d.text===n)return t;d=e.ts.factory.createIdentifier(n),l=!0}if(u||l)return i[D]=e.ts.factory.updateImportDeclaration(g,void 0,e.ts.factory.createImportClause(s,d,e.ts.factory.createNamedImports(f)),g.moduleSpecifier,void 0),e.ts.factory.updateSourceFile(t,i)}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(s,c,p),e.ts.factory.createStringLiteral(o));return i.splice(a,0,m),e.ts.factory.updateSourceFile(t,i)}function rs(e,t,n,r,o){let s=[...t.statements],i=0;for(let a=0;a<s.length;a++){let u=s[a];if(e.ts.isVariableStatement(u))for(let l=0;l<u.declarationList.declarations.length;l++){let c=[...u.declarationList.declarations],p=c[l],m=p.initializer;if(!m||!e.ts.isCallExpression(m))continue;let D=m.expression;if(!e.ts.isIdentifier(D)||D.text!=="require"||m.arguments.length!==1)continue;let g=m.arguments[0];if(e.ts.isStringLiteral(g)&&(i=a,g.text===o)){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),s[a]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,c)),e.ts.factory.updateSourceFile(t,s));if(e.ts.isObjectBindingPattern(p.name)&&typeof r=="string"){let f=[...p.name.elements];return f.some(d=>!e.ts.isBindingElement(d)||!e.ts.isIdentifier(d.name)?!1:d.name.text===r)?t:(f.push(e.ts.factory.createBindingElement(void 0,void 0,r)),f.sort((d,y)=>!e.ts.isBindingElement(d)||!e.ts.isIdentifier(d.name)||!e.ts.isBindingElement(y)||!e.ts.isIdentifier(y.name)?0:d.name.text.localeCompare(y.name.text)),c[l]=e.ts.factory.updateVariableDeclaration(p,e.ts.factory.createObjectBindingPattern(f),p.exclamationToken,p.type,p.initializer),s[a]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,c)),e.ts.factory.updateSourceFile(t,s))}}}}if(typeof n=="string"){let a=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(o)]))],e.ts.NodeFlags.Const));return s.splice(i,0,a),e.ts.factory.updateSourceFile(t,s)}if(typeof r=="string"){let a=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(o)]))],e.ts.NodeFlags.Const));return s.splice(i,0,a),e.ts.factory.updateSourceFile(t,s)}return t}function vt(e,t,n="esm"){return n==="cjs"?pc(e,t):cc(e,t)}function cc(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 o of r.exportClause.elements)if(r.moduleSpecifier&&n.push({isDefaultExport:!1,statement:r,node:o}),e.ts.isIdentifier(o.name)){let s=o.name.text;for(let i of t.statements)if(e.ts.isVariableStatement(i))for(let a of i.declarationList.declarations)e.ts.isIdentifier(a.name)&&a.name.text===s&&n.push({isDefaultExport:!1,statement:i,node:i});else e.ts.isFunctionDeclaration(i)&&i.name&&i.name.text===s&&n.push({isDefaultExport:!1,statement:i,node:i})}}else!r.exportClause&&r.moduleSpecifier&&n.push({isDefaultExport:!1,statement:r,node:r});continue}if(e.ts.isExportAssignment(r)){let o=r.flags===e.ts.NodeFlags.None,s=r.expression;if(e.ts.isIdentifier(s)){let i=s.text;for(let a of t.statements){if(e.ts.isVariableStatement(a))for(let u of a.declarationList.declarations)e.ts.isIdentifier(u.name)&&u.name.text===i&&n.push({isDefaultExport:o,statement:a,node:a});e.ts.isFunctionDeclaration(a)&&a.name?.text===i&&n.push({isDefaultExport:o,statement:a,node:a})}}else(e.ts.isArrowFunction(s)||e.ts.isCallExpression(s)||e.ts.isFunctionDeclaration(s)||e.ts.isObjectLiteralExpression(s))&&n.push({isDefaultExport:o,statement:r,node:s});continue}if((e.ts.isVariableStatement(r)||e.ts.isFunctionDeclaration(r))&&r.modifiers&&r.modifiers.some(o=>o.kind===e.ts.SyntaxKind.ExportKeyword)){n.push({isDefaultExport:r.modifiers.some(o=>o.kind===e.ts.SyntaxKind.DefaultKeyword),statement:r,node:r});continue}}return n}function pc(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 o=r.expression.left,s=r.expression.right;if(!e.ts.isIdentifier(o.expression))continue;if(o.expression.text==="module"&&o.name.text==="exports"){if(e.ts.isIdentifier(s)){let i=s.text;for(let a of t.statements)if(e.ts.isVariableStatement(a))for(let u of a.declarationList.declarations)e.ts.isIdentifier(u.name)&&u.name.text===i&&n.push({isDefaultExport:!0,statement:a,node:a});else e.ts.isFunctionDeclaration(a)&&a.name&&a.name.text===i&&n.push({isDefaultExport:!0,statement:a,node:a})}else n.push({isDefaultExport:!0,statement:r,node:s});continue}}return n}function mc(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 o of r.importClause.namedBindings.elements)if(e.ts.isIdentifier(o.name)&&o.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 Ue(e,t,n,r){let o=mc(e,n,r);if(o){let s=await cr(e,e.normalize(e.resolve(e.dirname(t),o.importPath))),i=e.relative(e.getAppRootDir(),s);return{displayFilePath:j(e,s),filePath:s,relFilePath:i,importPath:o.importPath,exportType:o.exportType}}return null}function Ut(e,t,n){for(let r=0;r<t.statements.length;r++){let o=t.statements[r];if(e.ts.isVariableStatement(o)){for(let s of o.declarationList.declarations)if(e.ts.isIdentifier(s.name)&&s.name.text===n)return{statement:o,statementIndex:r}}}return null}function X(e,t,n){let r=Ut(e,t,n);if(r&&r.statement.declarationList.declarations.length>0){let o=r.statement.declarationList.declarations[0];if(o.initializer&&e.ts.isArrayLiteralExpression(o.initializer))return{statement:r.statement,statementIndex:r.statementIndex,variableDeclaration:o,arrayLiteralExp:o.initializer}}return null}function Vr(e,t){if(t){if(dc(e,t))return!0;let n=!1;if(t.forEachChild(r=>{Vr(e,r)&&(n=!0)}),n)return!0}return!1}function dc(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 cr(e,t){let n=e.extname(t).toLowerCase();if(n===""||!_n.includes(n)){for(let r of _n){let o=t+r;if(await e.exists(o))return o}for(let r of _n){let o=e.join(t,"index"+r);if(await e.exists(o))return o}}return t}var _n=[".tsx",".jsx",".ts",".js"];function Vt(e,t,n){if(!n||!t)return;let r=t.getSymbolAtLocation(n);if(!r)return;let o=r.valueDeclaration;if(!o)return;let s=o.getSourceFile().fileName,i=fc(e,s);return i?[{name:i}]:void 0}function fc(e,t){if(typeof t=="string"){t=e.normalize(Ie(t));let n=t.split("/"),r=n.lastIndexOf("node_modules");if(r>-1){let o=n.slice(r+1),s=o[0];if(s)return s.startsWith("@")&&o[1]&&(s+="/"+o[1]),s}}}function Ve(e){let t=[];for(let n of e)if(n.dependencies)for(let r of n.dependencies)t.some(o=>o.name===r.name)||t.push({...r});return t.sort((n,r)=>n.name.localeCompare(r.name))}function ns(e,t,n="esm"){return n==="cjs"?hc(e,t):Dc(e,t)}var gc=/^(@\w|\w)/;function Dc(e,t){let n=[];for(let r of t.statements)if(e.ts.isImportDeclaration(r)&&e.ts.isLiteralExpression(r.moduleSpecifier)){if(!gc.test(r.moduleSpecifier.text)||r.importClause?.isTypeOnly)continue;if(r.importClause&&r.importClause.namedBindings&&e.ts.isNamedImports(r.importClause.namedBindings))for(let o of r.importClause.namedBindings.elements)o.isTypeOnly||n.push({isDefaultExport:!1,statement:r,node:o.name});r.importClause&&r.importClause.name&&n.push({isDefaultExport:!0,statement:r,node:r.importClause.name})}return n}function hc(e,t){return[]}async function Kt(e,t){if(!t.some(i=>!i.isRegistered))return t;let r=await Z(e,t.map(i=>i.filePath)),o=r.getTypeChecker();return await Promise.all(t.map(async i=>{let a=r.getSourceFile(i.filePath);if(a){let l=(await dt(e,o,i.filePath,a,!1)).find(c=>c.cmpInfo.id===i.id);l&&(i.inputs=St(e,o,l.node.fnNode))}return i}))}async function zt(e,t,n,r){if(t.node.fnNode){let{sourceFile:o,typeChecker:s}=await Nt(e,t.cmpInfo.filePath,n),a=(await dt(e,s,t.cmpInfo.filePath,o,r)).find(u=>u.cmpInfo.id===t.cmpInfo.id);if(!a)throw new Error(`createComponentInputs() Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return St(e,s,a.node.fnNode)}return[]}async function os(e,t,n){let r=e.extname(t).toLowerCase();if(r===".tsx"||r===".jsx"||r===".ts"||r===".js"){let o=await e.readFile(t);if(o)return Cc(e,t,o,n)}return null}function Cc(e,t,n,r=!1){let o=N(e,n);return dt(e,null,t,o,r)}async function dt(e,t,n,r,o){let s=[];for(let a of r.statements)if(e.ts.isExpressionStatement(a)&&e.ts.isStringLiteral(a.expression)&&a.expression.text==="use server")return s;let i=vt(e,r);return o&&i.push(...ns(e,r)),n=e.normalize(n),await Promise.all(i.map(async a=>{let u=await xc(e,t,n,a);s.push(...u)})),s}async function xc(e,t,n,r){let o=[],s=e.relative(e.getAppRootDir(),n),i=W(e,n);if(e.ts.isVariableStatement(r.node)){for(let a of r.node.declarationList.declarations){if(!e.ts.isIdentifier(a.name)||!kt(a.name.text))continue;let u=rt(e,t,a.initializer);if(u){let l=u.name||a.name.text,c=r.isDefaultExport?"default":l,p=r.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await z(e,n,c),displayFilePath:j(e,n),name:G(l),inputs:[],exportName:c,exportType:p,importName:l,filePath:n,relFilePath:s,importPath:i,dependencies:u.deps,framework:"react"},node:u})}}return o}if(e.ts.isArrowFunction(r.node)){let a=rt(e,t,r.node);if(a){let u=be(e,n),l=r.isDefaultExport?"default":u,c=r.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await z(e,n,l),displayFilePath:j(e,n),name:u,inputs:[],exportName:l,exportType:c,importName:bt(e,n),filePath:n,relFilePath:s,importPath:i,dependencies:a.deps,framework:"react"},node:a})}return o}if(e.ts.isFunctionExpression(r.node)||e.ts.isFunctionDeclaration(r.node)){let a=r.node.name?.text;if(a&&!kt(a))return o;let u=rt(e,t,r.node);if(u){let l=u.name||be(e,n),c=r.isDefaultExport||!u.name?"default":u.name,p=r.isDefaultExport?"default":"named";o.push({cmpInfo:{id:await z(e,n,c),displayFilePath:j(e,n),name:l,inputs:[],exportName:c,exportType:p,importName:u.name||bt(e,n),filePath:n,relFilePath:s,importPath:i,dependencies:u.deps,framework:"react"},node:u})}return o}if((e.ts.isExportSpecifier(r.node)||e.ts.isIdentifier(r.node))&&kt(r.node.getText())){let a,u=rt(e,t,r.node);if(u){let l=u.name||be(e,n),c=r.isDefaultExport||!u.name?"default":u.name,p=r.isDefaultExport?"default":"named",m=yc(e,r.node)?.moduleSpecifier??Ec(e,r.node)?.moduleSpecifier;if(m&&e.ts.isStringLiteral(m)){let D=t?.getSymbolAtLocation(m);if(D&&D.declarations&&D.declarations.length>0){let g=D.declarations[0];(!e.ts.isSourceFile(g)||e.ts.isSourceFile(g)&&g.fileName.includes("node_modules"))&&(a=m.text)}}o.push({cmpInfo:{id:await z(e,n,c,a),displayFilePath:j(e,n),name:l,inputs:[],exportName:c,exportType:p,importName:u.name||bt(e,n),filePath:n,relFilePath:s,importPath:a||i,externalImportPath:a,dependencies:u.deps,framework:"react"},node:u})}return o}if(e.ts.isExportDeclaration(r.node)&&r.node.exportClause===void 0){let a=r.node.moduleSpecifier;if(a&&e.ts.isStringLiteral(a)){let u=await wc(e,t,n,a);o.push(...u)}return o}return o}function yc(e,t){for(;t;){if(e.ts.isExportDeclaration(t))return t;t=t.parent}return null}function Ec(e,t){for(;t;){if(e.ts.isImportDeclaration(t))return t;t=t.parent}return null}function rt(e,t,n){if(!n)return null;if(e.ts.isArrowFunction(n))return Vr(e,n.body)?{name:"",fnNode:n,deps:Vt(e,t,n)}:null;if(e.ts.isFunctionExpression(n)||e.ts.isFunctionDeclaration(n))return Vr(e,n.body)?{name:n.name?.text||"",fnNode:n,deps:Vt(e,t,n)}:null;if(e.ts.isCallExpression(n)){let r=n.expression;if(e.ts.isPropertyAccessExpression(r)){let o=n.arguments;if(o.length===0)return null;let s=r.expression;if(!e.ts.isIdentifier(s)||s.text!=="React")return null;let i=r.name;return!e.ts.isIdentifier(i)||i.text!=="forwardRef"?null:rt(e,t,o[0])}else if(e.ts.isIdentifier(r)&&(r.text==="observer"||r.text==="forwardRef")){let o=n.arguments;return o.length===0?null:rt(e,t,o[0])}return null}if(!t)return null;if(e.ts.isPropertyAccessExpression(n)){let r=n.expression,o=n.name;if(!e.ts.isIdentifier(r)||!e.ts.isIdentifier(o)||!kt(o.text))return null;let i=t.getTypeAtLocation(o).getCallSignatures();if(i.length>0&&i[0].getParameters().length>0)return{name:"",fnNode:o,deps:Vt(e,t,o)}}if(e.ts.isExportSpecifier(n)){let r=n.name;return{name:r.text||"",fnNode:r,deps:Vt(e,t,r)}}if(e.ts.isIdentifier(n))return{name:n.text||"",fnNode:n,deps:Vt(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 rt(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 o=r.initializer;if(e.ts.isIdentifier(o.type)&&o.type.text==="default"){let s=rt(e,t,o.expression);if(s&&e.ts.isIdentifier(r.name))return{name:r.name.text,fnNode:s.fnNode,deps:s.deps}}}}return null}async function ss(e,t){let n=[],r=t.getSourceFiles(),o=t.getTypeChecker();return await Promise.all(r.map(async s=>{let i=e.normalize(s.fileName);if(Rr(e,Fc,s.fileName)||i===e.reactConfigPath||i===e.builderComponentPath)return;let a=await dt(e,o,i,s,i===e.registryPath);n.push(...a)})),n.sort((s,i)=>s.cmpInfo.name.localeCompare(i.cmpInfo.name))}var Fc=new Set(["node_modules","dist"]);async function wc(e,t,n,r){let o=[],s=r.text;if(!t)return o;try{let i=t.getSymbolAtLocation(r);if(!i)return o;let a=t.getExportsOfModule(i);for(let u of a){let l=u.valueDeclaration||u.declarations?.[0];if(!l)continue;let c=u.name;if(!kt(c)&&c!=="default"||!as(e,t,l))continue;let p=rt(e,t,l);if(p){let m=u.name,D=m==="default"?"default":"named",g=G(m),f=m==="default"?bt(e,n):m;o.push({cmpInfo:{id:await z(e,n,m,s),displayFilePath:j(e,n),name:g,inputs:[],exportName:m,exportType:D,importName:f,filePath:n,relFilePath:e.relative(e.getAppRootDir(),n),importPath:s,externalImportPath:s,dependencies:p.deps,framework:"react"},node:p})}}}catch(i){e.Sentry?.captureException(new Error(`Error processing module ${s}:`,{cause:i}),{extra:{modulePath:s,filePath:n}})}return o}function as(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 s=t.getAliasedSymbol(r).declarations?.[0];if(s)return as(e,t,s)}return!1}if(e.ts.isFunctionDeclaration(n)||e.ts.isArrowFunction(n)||e.ts.isFunctionExpression(n)){let r=t.getSignatureFromDeclaration(n);if(r){let o=t.getReturnTypeOfSignature(r);return is(o,t)}}return e.ts.isClassDeclaration(n)?n.heritageClauses?.some(o=>o.types.some(s=>s.expression.getText()==="React.Component"||s.expression.getText()==="Component"))??!1:e.ts.isVariableDeclaration(n)?t.getTypeAtLocation(n).getCallSignatures().some(s=>is(t.getReturnTypeOfSignature(s),t)):!1}function is(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 us(e,t){let n=[],r=t.getSourceFiles(),o=t.getTypeChecker();return await Promise.all(r.map(async s=>{let i=e.basename(s.fileName);if(e.appDir&&bc.has(i)||e.dirname(s.fileName).includes("node_modules"))return;let a=e.normalize(s.fileName);if(a===e.nextConfigPath||a===e.builderComponentPath)return;let u=await dt(e,o,a,s,a===e.registryPath||he(a));n.push(...u)})),n.sort((s,i)=>s.cmpInfo.name.localeCompare(i.cmpInfo.name))}var bc=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 n=[],r=[],o=[],s=[];for(let i of t.statements){if(e.ts.isImportDeclaration(i)){if(e.ts.isStringLiteral(i.moduleSpecifier)){let u=i.moduleSpecifier.text;if(!u.startsWith(".")&&!u.startsWith("/")){n.push(i);continue}}let a=i.importClause;if(a){if(a.namedBindings){r.push(i);continue}if(a.name){r.push(i);continue}}o.push(i);continue}s.push(i)}return e.ts.factory.updateSourceFile(t,[...jn(e,n),...jn(e,r),...jn(e,o),...s])}function Re(e){let t=e.split(`
|
|
285
|
-
`).map(
|
|
286
|
-
`),/^builder.init(.*)$/.test(
|
|
287
|
-
`),t[
|
|
288
|
-
`+
|
|
289
|
-
`+
|
|
290
|
-
`+
|
|
291
|
-
`+
|
|
284
|
+
`,r+=");";let n=Rn(e,r);return Lr(e,n,t)}function Lr(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 s=i[1];return e.ts.isObjectLiteralExpression(s)?(i[1]=ee(e,s,r),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(n,n.expression,n.typeArguments,i))):t}function O(e,t,r,n="esm"){return Array.isArray(r.namedImports)&&r.namedImports.forEach(i=>{t=uc(e,t,i,r.importPath,!!r.isTypeOnly,n)}),typeof r.defaultImport=="string"&&(t=lc(e,t,r.defaultImport,r.importPath,n)),t}function uc(e,t,r,n,i,s){return s==="cjs"?ns(e,t,null,r,n):ts(e,t,null,r,n,i)}function lc(e,t,r,n,i){return i==="cjs"?ns(e,t,r,null,n):ts(e,t,r,null,n,!1)}function ts(e,t,r,n,i,s){let o=[...t.statements],a=0,u=!1,l=!1;for(let D=0;D<o.length;D++){let g=o[D];if(!e.ts.isImportDeclaration(g)||(a=D,!g.moduleSpecifier||!e.ts.isStringLiteral(g.moduleSpecifier))||g.moduleSpecifier.text!==i||!!g.importClause?.isTypeOnly!==s)continue;let f=[],h=g.importClause?.namedBindings;if(h&&e.ts.isNamedImports(h)&&h.elements&&f.push(...h.elements),typeof n=="string"){if(f.some(y=>y.name.text===n))return t;f.push(e.ts.factory.createImportSpecifier(!1,void 0,e.ts.factory.createIdentifier(n))),f.sort((y,F)=>y.name.text.localeCompare(F.name.text)),u=!0}let d=g.importClause?g.importClause.name:void 0;if(typeof r=="string"){if(d&&d.text===r)return t;d=e.ts.factory.createIdentifier(r),l=!0}if(u||l)return o[D]=e.ts.factory.updateImportDeclaration(g,void 0,e.ts.factory.createImportClause(s,d,e.ts.factory.createNamedImports(f)),g.moduleSpecifier,void 0),e.ts.factory.updateSourceFile(t,o)}let c,p;typeof r=="string"&&(c=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(s,c,p),e.ts.factory.createStringLiteral(i));return o.splice(a,0,m),e.ts.factory.updateSourceFile(t,o)}function ns(e,t,r,n,i){let s=[...t.statements],o=0;for(let a=0;a<s.length;a++){let u=s[a];if(e.ts.isVariableStatement(u))for(let l=0;l<u.declarationList.declarations.length;l++){let c=[...u.declarationList.declarations],p=c[l],m=p.initializer;if(!m||!e.ts.isCallExpression(m))continue;let D=m.expression;if(!e.ts.isIdentifier(D)||D.text!=="require"||m.arguments.length!==1)continue;let g=m.arguments[0];if(e.ts.isStringLiteral(g)&&(o=a,g.text===i)){if(e.ts.isIdentifier(p.name)&&typeof r=="string")return p.name.text===r?t:(c[l]=e.ts.factory.updateVariableDeclaration(p,e.ts.factory.createIdentifier(r),p.exclamationToken,p.type,p.initializer),s[a]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,c)),e.ts.factory.updateSourceFile(t,s));if(e.ts.isObjectBindingPattern(p.name)&&typeof n=="string"){let f=[...p.name.elements];return f.some(d=>!e.ts.isBindingElement(d)||!e.ts.isIdentifier(d.name)?!1:d.name.text===n)?t:(f.push(e.ts.factory.createBindingElement(void 0,void 0,n)),f.sort((d,y)=>!e.ts.isBindingElement(d)||!e.ts.isIdentifier(d.name)||!e.ts.isBindingElement(y)||!e.ts.isIdentifier(y.name)?0:d.name.text.localeCompare(y.name.text)),c[l]=e.ts.factory.updateVariableDeclaration(p,e.ts.factory.createObjectBindingPattern(f),p.exclamationToken,p.type,p.initializer),s[a]=e.ts.factory.updateVariableStatement(u,u.modifiers,e.ts.factory.updateVariableDeclarationList(u.declarationList,c)),e.ts.factory.updateSourceFile(t,s))}}}}if(typeof r=="string"){let a=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 s.splice(o,0,a),e.ts.factory.updateSourceFile(t,s)}if(typeof n=="string"){let a=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 s.splice(o,0,a),e.ts.factory.updateSourceFile(t,s)}return t}function vt(e,t,r="esm"){return r==="cjs"?pc(e,t):cc(e,t)}function cc(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 s=i.name.text;for(let o of t.statements)if(e.ts.isVariableStatement(o))for(let a of o.declarationList.declarations)e.ts.isIdentifier(a.name)&&a.name.text===s&&r.push({isDefaultExport:!1,statement:o,node:o});else e.ts.isFunctionDeclaration(o)&&o.name&&o.name.text===s&&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,s=n.expression;if(e.ts.isIdentifier(s)){let o=s.text;for(let a of t.statements){if(e.ts.isVariableStatement(a))for(let u of a.declarationList.declarations)e.ts.isIdentifier(u.name)&&u.name.text===o&&r.push({isDefaultExport:i,statement:a,node:a});e.ts.isFunctionDeclaration(a)&&a.name?.text===o&&r.push({isDefaultExport:i,statement:a,node:a})}}else(e.ts.isArrowFunction(s)||e.ts.isCallExpression(s)||e.ts.isFunctionDeclaration(s)||e.ts.isObjectLiteralExpression(s))&&r.push({isDefaultExport:i,statement:n,node:s});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 pc(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,s=n.expression.right;if(!e.ts.isIdentifier(i.expression))continue;if(i.expression.text==="module"&&i.name.text==="exports"){if(e.ts.isIdentifier(s)){let o=s.text;for(let a of t.statements)if(e.ts.isVariableStatement(a))for(let u of a.declarationList.declarations)e.ts.isIdentifier(u.name)&&u.name.text===o&&r.push({isDefaultExport:!0,statement:a,node:a});else e.ts.isFunctionDeclaration(a)&&a.name&&a.name.text===o&&r.push({isDefaultExport:!0,statement:a,node:a})}else r.push({isDefaultExport:!0,statement:n,node:s});continue}}return r}function mc(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 Ue(e,t,r,n){let i=mc(e,r,n);if(i){let s=await pn(e,e.normalize(e.resolve(e.dirname(t),i.importPath))),o=e.relative(e.getAppRootDir(),s);return{displayFilePath:M(e,s),filePath:s,relFilePath:o,importPath:i.importPath,exportType:i.exportType}}return null}function Ut(e,t,r){for(let n=0;n<t.statements.length;n++){let i=t.statements[n];if(e.ts.isVariableStatement(i)){for(let s of i.declarationList.declarations)if(e.ts.isIdentifier(s.name)&&s.name.text===r)return{statement:i,statementIndex:n}}}return null}function X(e,t,r){let n=Ut(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 Kn(e,t){if(t){if(dc(e,t))return!0;let r=!1;if(t.forEachChild(n=>{Kn(e,n)&&(r=!0)}),r)return!0}return!1}function dc(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 pn(e,t){let r=e.extname(t).toLowerCase();if(r===""||!_r.includes(r)){for(let n of _r){let i=t+n;if(await e.exists(i))return i}for(let n of _r){let i=e.join(t,"index"+n);if(await e.exists(i))return i}}return t}var _r=[".tsx",".jsx",".ts",".js"];function Vt(e,t,r){if(!r||!t)return;let n=t.getSymbolAtLocation(r);if(!n)return;let i=n.valueDeclaration;if(!i)return;let s=i.getSourceFile().fileName,o=fc(e,s);return o?[{name:o}]:void 0}function fc(e,t){if(typeof t=="string"){t=e.normalize(Ie(t));let r=t.split("/"),n=r.lastIndexOf("node_modules");if(n>-1){let i=r.slice(n+1),s=i[0];if(s)return s.startsWith("@")&&i[1]&&(s+="/"+i[1]),s}}}function Ve(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 rs(e,t,r="esm"){return r==="cjs"?hc(e,t):Dc(e,t)}var gc=/^(@\w|\w)/;function Dc(e,t){let r=[];for(let n of t.statements)if(e.ts.isImportDeclaration(n)&&e.ts.isLiteralExpression(n.moduleSpecifier)){if(!gc.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 hc(e,t){return[]}async function Kt(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 a=n.getSourceFile(o.filePath);if(a){let l=(await dt(e,i,o.filePath,a,!1)).find(c=>c.cmpInfo.id===o.id);l&&(o.inputs=St(e,i,l.node.fnNode))}return o}))}async function zt(e,t,r,n){if(t.node.fnNode){let{sourceFile:i,typeChecker:s}=await Nt(e,t.cmpInfo.filePath,r),a=(await dt(e,s,t.cmpInfo.filePath,i,n)).find(u=>u.cmpInfo.id===t.cmpInfo.id);if(!a)throw new Error(`createComponentInputs() Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return St(e,s,a.node.fnNode)}return[]}async function is(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 Cc(e,t,i,r)}return null}function Cc(e,t,r,n=!1){let i=N(e,r);return dt(e,null,t,i,n)}async function dt(e,t,r,n,i){let s=[];for(let a of n.statements)if(e.ts.isExpressionStatement(a)&&e.ts.isStringLiteral(a.expression)&&a.expression.text==="use server")return s;let o=vt(e,n);return i&&o.push(...rs(e,n)),r=e.normalize(r),await Promise.all(o.map(async a=>{let u=await xc(e,t,r,a);s.push(...u)})),s}async function xc(e,t,r,n){let i=[],s=e.relative(e.getAppRootDir(),r),o=W(e,r);if(e.ts.isVariableStatement(n.node)){for(let a of n.node.declarationList.declarations){if(!e.ts.isIdentifier(a.name)||!kt(a.name.text))continue;let u=nt(e,t,a.initializer);if(u){let l=u.name||a.name.text,c=n.isDefaultExport?"default":l,p=n.isDefaultExport?"default":"named";i.push({cmpInfo:{id:await z(e,r,c),displayFilePath:M(e,r),name:G(l),inputs:[],exportName:c,exportType:p,importName:l,filePath:r,relFilePath:s,importPath:o,dependencies:u.deps,framework:"react"},node:u})}}return i}if(e.ts.isArrowFunction(n.node)){let a=nt(e,t,n.node);if(a){let u=be(e,r),l=n.isDefaultExport?"default":u,c=n.isDefaultExport?"default":"named";i.push({cmpInfo:{id:await z(e,r,l),displayFilePath:M(e,r),name:u,inputs:[],exportName:l,exportType:c,importName:bt(e,r),filePath:r,relFilePath:s,importPath:o,dependencies:a.deps,framework:"react"},node:a})}return i}if(e.ts.isFunctionExpression(n.node)||e.ts.isFunctionDeclaration(n.node)){let a=n.node.name?.text;if(a&&!kt(a))return i;let u=nt(e,t,n.node);if(u){let l=u.name||be(e,r),c=n.isDefaultExport||!u.name?"default":u.name,p=n.isDefaultExport?"default":"named";i.push({cmpInfo:{id:await z(e,r,c),displayFilePath:M(e,r),name:l,inputs:[],exportName:c,exportType:p,importName:u.name||bt(e,r),filePath:r,relFilePath:s,importPath:o,dependencies:u.deps,framework:"react"},node:u})}return i}if((e.ts.isExportSpecifier(n.node)||e.ts.isIdentifier(n.node))&&kt(n.node.getText())){let a,u=nt(e,t,n.node);if(u){let l=u.name||be(e,r),c=n.isDefaultExport||!u.name?"default":u.name,p=n.isDefaultExport?"default":"named",m=yc(e,n.node)?.moduleSpecifier??Ec(e,n.node)?.moduleSpecifier;if(m&&e.ts.isStringLiteral(m)){let D=t?.getSymbolAtLocation(m);if(D&&D.declarations&&D.declarations.length>0){let g=D.declarations[0];(!e.ts.isSourceFile(g)||e.ts.isSourceFile(g)&&g.fileName.includes("node_modules"))&&(a=m.text)}}i.push({cmpInfo:{id:await z(e,r,c,a),displayFilePath:M(e,r),name:l,inputs:[],exportName:c,exportType:p,importName:u.name||bt(e,r),filePath:r,relFilePath:s,importPath:a||o,externalImportPath:a,dependencies:u.deps,framework:"react"},node:u})}return i}if(e.ts.isExportDeclaration(n.node)&&n.node.exportClause===void 0){let a=n.node.moduleSpecifier;if(a&&e.ts.isStringLiteral(a)){let u=await wc(e,t,r,a);i.push(...u)}return i}return i}function yc(e,t){for(;t;){if(e.ts.isExportDeclaration(t))return t;t=t.parent}return null}function Ec(e,t){for(;t;){if(e.ts.isImportDeclaration(t))return t;t=t.parent}return null}function nt(e,t,r){if(!r)return null;if(e.ts.isArrowFunction(r))return Kn(e,r.body)?{name:"",fnNode:r,deps:Vt(e,t,r)}:null;if(e.ts.isFunctionExpression(r)||e.ts.isFunctionDeclaration(r))return Kn(e,r.body)?{name:r.name?.text||"",fnNode:r,deps:Vt(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 s=n.expression;if(!e.ts.isIdentifier(s)||s.text!=="React")return null;let o=n.name;return!e.ts.isIdentifier(o)||o.text!=="forwardRef"?null:nt(e,t,i[0])}else if(e.ts.isIdentifier(n)&&(n.text==="observer"||n.text==="forwardRef")){let i=r.arguments;return i.length===0?null:nt(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)||!kt(i.text))return null;let o=t.getTypeAtLocation(i).getCallSignatures();if(o.length>0&&o[0].getParameters().length>0)return{name:"",fnNode:i,deps:Vt(e,t,i)}}if(e.ts.isExportSpecifier(r)){let n=r.name;return{name:n.text||"",fnNode:n,deps:Vt(e,t,n)}}if(e.ts.isIdentifier(r))return{name:r.text||"",fnNode:r,deps:Vt(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 nt(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 s=nt(e,t,i.expression);if(s&&e.ts.isIdentifier(n.name))return{name:n.name.text,fnNode:s.fnNode,deps:s.deps}}}}return null}async function ss(e,t){let r=[],n=t.getSourceFiles(),i=t.getTypeChecker();return await Promise.all(n.map(async s=>{let o=e.normalize(s.fileName);if(Bn(e,Fc,s.fileName)||o===e.reactConfigPath||o===e.builderComponentPath)return;let a=await dt(e,i,o,s,o===e.registryPath);r.push(...a)})),r.sort((s,o)=>s.cmpInfo.name.localeCompare(o.cmpInfo.name))}var Fc=new Set(["node_modules","dist"]);async function wc(e,t,r,n){let i=[],s=n.text;if(!t)return i;try{let o=t.getSymbolAtLocation(n);if(!o)return i;let a=t.getExportsOfModule(o);for(let u of a){let l=u.valueDeclaration||u.declarations?.[0];if(!l)continue;let c=u.name;if(!kt(c)&&c!=="default"||!as(e,t,l))continue;let p=nt(e,t,l);if(p){let m=u.name,D=m==="default"?"default":"named",g=G(m),f=m==="default"?bt(e,r):m;i.push({cmpInfo:{id:await z(e,r,m,s),displayFilePath:M(e,r),name:g,inputs:[],exportName:m,exportType:D,importName:f,filePath:r,relFilePath:e.relative(e.getAppRootDir(),r),importPath:s,externalImportPath:s,dependencies:p.deps,framework:"react"},node:p})}}}catch(o){e.Sentry?.captureException(new Error(`Error processing module ${s}:`,{cause:o}),{extra:{modulePath:s,filePath:r}})}return i}function as(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 s=t.getAliasedSymbol(n).declarations?.[0];if(s)return as(e,t,s)}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 os(i,t)}}return e.ts.isClassDeclaration(r)?r.heritageClauses?.some(i=>i.types.some(s=>s.expression.getText()==="React.Component"||s.expression.getText()==="Component"))??!1:e.ts.isVariableDeclaration(r)?t.getTypeAtLocation(r).getCallSignatures().some(s=>os(t.getReturnTypeOfSignature(s),t)):!1}function os(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 us(e,t){let r=[],n=t.getSourceFiles(),i=t.getTypeChecker();return await Promise.all(n.map(async s=>{let o=e.basename(s.fileName);if(e.appDir&&bc.has(o)||e.dirname(s.fileName).includes("node_modules"))return;let a=e.normalize(s.fileName);if(a===e.nextConfigPath||a===e.builderComponentPath)return;let u=await dt(e,i,a,s,a===e.registryPath||he(a));r.push(...u)})),r.sort((s,o)=>s.cmpInfo.name.localeCompare(o.cmpInfo.name))}var bc=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=[],s=[];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 a=o.importClause;if(a){if(a.namedBindings){n.push(o);continue}if(a.name){n.push(o);continue}}i.push(o);continue}s.push(o)}return e.ts.factory.updateSourceFile(t,[...Mr(e,r),...Mr(e,n),...Mr(e,i),...s])}function Re(e){let t=e.split(`
|
|
285
|
+
`).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+`
|
|
286
|
+
`),/^builder.init(.*)$/.test(i)&&(i=i+`
|
|
287
|
+
`),t[n-1]&&!t[n-1].includes("*/")&&(i.trim().startsWith("Builder.registerComponent")&&(i=`
|
|
288
|
+
`+i),i.trim().startsWith("/**")&&(i=`
|
|
289
|
+
`+i),i.trim().startsWith("module.exports")&&(i=`
|
|
290
|
+
`+i),i.trim().startsWith("export ")&&(i=`
|
|
291
|
+
`+i)),e=i+`
|
|
292
292
|
`+e}return e.trim()+`
|
|
293
|
-
`}function
|
|
294
|
-
${e}`),e}function ms(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 ze(e,t){return t.sort((n,r)=>{if(e.ts.isObjectLiteralExpression(n)&&e.ts.isObjectLiteralExpression(r)){let o=cs(e,n),s=cs(e,r);return o.toLocaleLowerCase().localeCompare(s.toLocaleLowerCase())}return 1})}function cs(e,t){let n=t.properties.find(r=>K(e,r)==="name");return n&&e.ts.isPropertyAssignment(n)&&e.ts.isStringLiteral(n.initializer)?n.initializer.text:"zzzz"}async function ds(e){let t=await e.readFile(e.registryPath);return t?Sc(e,t):{components:[],sourceFile:N(e,"")}}async function Sc(e,t){let n=N(e,t);return e.sdkVersion===A.gen2?Ac(e,n):vc(e,n)}async function vc(e,t){let n=[];for(let r=0;r<t.statements.length;r++){let o=t.statements[r];if(!e.ts.isExpressionStatement(o))continue;let s=o.expression;if(!e.ts.isCallExpression(s))continue;let i=s.expression;if(!e.ts.isPropertyAccessExpression(i))continue;let a=i.expression;if(!e.ts.isIdentifier(a)||a.text!=="Builder"||i.name.text!=="registerComponent")continue;let l=s.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=Vn(e,p.arguments[0]);if(e.ts.isCallExpression(g)){let f=await Mn(e,r,g,c,!0);f&&n.push(f)}else{let f=g;if(e.ts.isIdentifier(f)){let h=await Un(e,t,r,f,c,!0);h&&n.push(h)}}continue}if(m==="dynamic"){let g=await Mn(e,r,p,c,!1);g&&n.push(g);continue}let D=Vn(e,p.arguments[0]);if(e.ts.isCallExpression(D)&&e.ts.isIdentifier(D.expression)&&D.expression.text==="dynamic"){let g=await Mn(e,r,D,c,!1);g&&n.push(g);continue}if(e.ts.isIdentifier(D)){let g=await Un(e,t,r,D,c,!1);g&&n.push(g);continue}continue}if(e.ts.isIdentifier(p)){let m=await Un(e,t,r,p,c,!1);m&&n.push(m);continue}}return{sourceFile:t,components:fe(n)}}function Vn(e,t){return e.ts.isCallExpression(t)?(e.ts.isIdentifier(t.expression)&&t.expression.text)==="dynamic"?t:Vn(e,t.arguments[0]):t}async function Mn(e,t,n,r,o){let s={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:t,acceptsChildren:o,framework:"react"},i=n.arguments;if(i.length===0)return null;let a=i[0];if(!e.ts.isArrowFunction(a))return null;let u=a.body;if(e.ts.isCallExpression(u)){if(u.expression.kind!==e.ts.SyntaxKind.ImportKeyword||u.arguments.length!==1)return null;let c=u.arguments[0];if(!e.ts.isStringLiteral(c))return null;let p=c.text,m=await Gt(e,p);s.filePath=m,s.relFilePath=e.relative(e.getAppRootDir(),s.filePath),await e.exists(m)?s.importPath=W(e,s.filePath):(s.externalImportPath=p,s.importPath=s.externalImportPath),s.name=be(e,s.filePath),s.importName="default",s.exportName="default",s.exportType="default"}else if(e.ts.isPropertyAccessExpression(u)){let l=u.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 D=p.arguments[0];if(!e.ts.isStringLiteral(D)||!e.ts.isIdentifier(u.name))return null;let g=D.text,f=await Gt(e,g);s.filePath=f,s.relFilePath=e.relative(e.getAppRootDir(),s.filePath),await e.exists(f)?s.importPath=W(e,s.filePath):(s.externalImportPath=g,s.importPath=s.externalImportPath),s.name=G(u.name.text),s.importName=u.name.text,s.exportName=u.name.text,s.exportType="named"}else return null;return s=ge(e,s,r),s.displayFilePath=j(e,s.filePath),s.filePath&&s.exportName&&(s.id=await z(e,s.filePath,s.exportName,s.externalImportPath)),s}async function Un(e,t,n,r,o,s){let i={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:n,acceptsChildren:s,framework:"react"},a=t.statements.filter(l=>e.ts.isImportDeclaration(l)),u=a.find(l=>l.importClause&&l.importClause.name?.text===r.text);if(u){let l=u.moduleSpecifier;if(!e.ts.isStringLiteral(l))return null;let c=await Gt(e,l.text);i.filePath=c,i.relFilePath=e.relative(e.getAppRootDir(),i.filePath),await e.exists(c)?i.importPath=W(e,i.filePath):(i.externalImportPath=l.text,i.importPath=i.externalImportPath),i.name=be(e,i.filePath),i.importName=r.text,i.exportName="default",i.exportType="default"}else{let l=a.find(m=>!m.importClause||!m.importClause.namedBindings||!e.ts.isNamedImports(m.importClause.namedBindings)?!1:m.importClause.namedBindings.elements.some(D=>D.name.text===r.text));if(!l)return null;let c=l.moduleSpecifier;if(!e.ts.isStringLiteral(c))return null;let p=await Gt(e,c.text);i.filePath=p,i.relFilePath=e.relative(e.getAppRootDir(),i.filePath),await e.exists(p)?i.importPath=W(e,i.filePath):(i.externalImportPath=c.text,i.importPath=i.externalImportPath),i.name=G(r.text),i.importName=r.text,i.exportName=r.text,i.exportType="named"}return i=ge(e,i,o),i.displayFilePath=j(e,i.filePath),i.filePath&&i.exportName&&(i.id=await z(e,i.filePath,i.exportName,i.externalImportPath)),i}function Gt(e,t){return cr(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}function fs(e,t,n){let r=!1,o=0,s=[...t.statements];for(let l=0;l<s.length;l++){let c=s[l];if(e.ts.isImportDeclaration(c)){o=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 D=m.expression;if(!e.ts.isIdentifier(D)||D.text!=="builder")continue;if(m.name.text=="init"){r=!0;break}else continue}if(r)return t;let i=e.ts.factory.createPropertyAccessExpression(e.ts.factory.createPropertyAccessExpression(e.ts.factory.createIdentifier("process"),e.ts.factory.createIdentifier("env")),e.ts.factory.createIdentifier(Me)),a=n?e.ts.factory.createNonNullExpression(i):i,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,[a]));return s.splice(o+1,0,u),e.ts.factory.updateSourceFile(t,s)}async function Ac(e,t){let n=[],r=X(e,t,"CUSTOM_COMPONENTS");return r&&await Promise.all(r.arrayLiteralExp.elements.map(async(o,s)=>{let i=await Kn(e,t,o);i&&(i.nodeIndex=s,n.push(i))})),{sourceFile:t,components:fe(n)}}async function Kn(e,t,n){if(!e.ts.isObjectLiteralExpression(n))return null;let r={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1,framework:"react"};Mt(e,n)&&(r.acceptsChildren=!0);for(let s of n.properties){if(!e.ts.isPropertyAssignment(s)||!e.ts.isIdentifier(s.name))continue;if(K(e,s)==="component"){let a,{initializer:u}=s;if(e.ts.isCallExpression(u)&&(e.ts.isIdentifier(u.expression)&&u.expression.text)==="dynamic"){let D=u.arguments;if(D.length===0)return null;let g=D[0];if(!e.ts.isArrowFunction(g))return null;let f=g.body;if(e.ts.isCallExpression(f)){if(f.expression.kind!==e.ts.SyntaxKind.ImportKeyword||f.arguments.length!==1)return null;let d=f.arguments[0];if(!e.ts.isStringLiteral(d))return null;let y=d.text,F=await Gt(e,y);r.filePath=F,r.relFilePath=e.relative(e.getAppRootDir(),r.filePath),await e.exists(F)?r.importPath=W(e,r.filePath):(r.externalImportPath=y,r.importPath=r.externalImportPath),r.name=be(e,r.filePath),r.importName="default",r.exportName="default",r.exportType="default"}else if(e.ts.isPropertyAccessExpression(f)){let h=f.expression;if(!e.ts.isParenthesizedExpression(h))return null;let d=h.expression;if(!e.ts.isAwaitExpression(d))return null;let y=d.expression;if(!e.ts.isCallExpression(y)||y.expression.kind!==e.ts.SyntaxKind.ImportKeyword||y.arguments.length!==1)return null;let w=y.arguments[0];if(!e.ts.isStringLiteral(w)||!e.ts.isIdentifier(f.name))return null;let b=w.text,E=await Gt(e,b);r.filePath=E,r.relFilePath=e.relative(e.getAppRootDir(),r.filePath),await e.exists(E)?r.importPath=W(e,r.filePath):(r.externalImportPath=b,r.importPath=r.externalImportPath),r.name=G(f.name.text),r.importName=f.name.text,r.exportName=f.name.text,r.exportType="named"}else return null;return r=ge(e,r,n),r.displayFilePath=j(e,r.filePath),r.filePath&&r.exportName&&(r.id=await z(e,r.filePath,r.exportName,r.externalImportPath)),r}if(e.ts.isIdentifier(u)&&(a=u.text),!a)continue;r.name===""&&(r.name=G(a)),r.importName=a;let l=await Ue(e,e.registryPath,t,a);if(!l)continue;r.filePath=l.filePath,r.relFilePath=l.relFilePath,await e.exists(l.filePath)?r.importPath=W(e,l.filePath):(r.externalImportPath=l.importPath,r.importPath=r.externalImportPath),r.importPath=W(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===a);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(f=>f.name.text===a));if(!m)return null;let D=m.moduleSpecifier;if(!e.ts.isStringLiteral(D))return null;r.exportName=a}continue}}return r=ge(e,r,n),r.filePath&&r.exportName&&(r.id=await z(e,r.filePath,r.exportName,r.externalImportPath)),r}function Ge(e,t){let n=[...t.statements],r=!1;for(let o=t.statements.length-1;o>=0;o--){let s=t.statements[o];if(e.ts.isImportDeclaration(s)&&s.importClause){let i=!1,a=s.importClause.namedBindings;if(a&&e.ts.isNamedImports(a)&&a.elements){let u=[...a.elements];for(let l=u.length-1;l>=0;l--){let c=u[l];if(e.ts.isImportSpecifier(c)){let p=c.name;if(p&&e.ts.isIdentifier(p)){let m=p.text;gs(e,t,m)||u.splice(l,1)}}}if(u.length===0)i=!0;else if(a.elements.length!==u.length){let l=e.ts.factory.updateImportClause(s.importClause,!1,s.importClause.name,e.ts.factory.createNamedImports(u)),c=e.ts.factory.updateImportDeclaration(s,void 0,l,s.moduleSpecifier,void 0);n[o]=c,r=!0}}else if(s.importClause.name&&e.ts.isIdentifier(s.importClause.name)){let u=s.importClause.name.text;gs(e,t,u)||(i=!0)}i&&(n.splice(o,1),r=!0)}}return r?e.ts.factory.updateSourceFile(t,n):t}function gs(e,t,n){let r=!1;function o(s){if(!e.ts.isImportDeclaration(s)){if(e.ts.isIdentifier(s)&&s.text===n){r=!0;return}e.ts.forEachChild(s,o)}}return e.ts.forEachChild(t,o),r}function We(e,t,n,r,o,s,i){let a=null,u=null,l=null,c=-1;t=Ce(t),n=Ce(n);let p=t.find(D=>D.id===e),m=n.find(D=>D.id===e);if(r)m||(a={...Ce(p),inputs:Ce(p.inputs).map(D=>(D.isRegistered=!0,D))},c=n.length,n.push(a));else if(typeof m?.nodeIndex=="number"&&m.nodeIndex>-1){if(o)c=m.nodeIndex,u=Ce(m),n=n.filter(D=>D.id!==e);else if(s!=null)Pc(m,s),c=m.nodeIndex,l=m;else if(i!=null){let D=m.inputs.find(g=>g.name===i.name);D&&(i.registerInput===!1?D.isRegistered=!1:(Tc(D,i),D.isRegistered=!0),l=m,c=m.nodeIndex)}}return{addCmpToRegistry:a,removeCmpFromRegistry:u,updateRegisteredCmp:l,nodeIndex:c,components:Be(t,n)}}function Be(e,t){let n=fe([...t.map(r=>(r.isRegistered=!0,r)),...e.filter(r=>!t.some(o=>o.id===r.id)).map(r=>(r.isRegistered=!1,r))]);return n.forEach(r=>{r.inputs=r.inputs.map(On),r.inputs.sort((i,a)=>i.name.toLowerCase().localeCompare(a.name.toLowerCase()));let o=t.find(i=>i.id===r.id);o&&(o.acceptsChildren=$n(r));let s=e.find(i=>i.id===r.id&&i.externalImportPath);s&&(r.filePath=s.filePath,r.relFilePath=s.relFilePath)}),n}function Pc(e,t){me(t.name)?e.name=t.name:t.name===null&&(e.name=e.importName),me(t.description)?e.description=t.description:t.description===null&&delete e.description,me(t.image)?e.image=t.image:t.image===null&&delete e.image}function Tc(e,t){me(t.type)&&(e.type=t.type),me(t.friendlyName)?e.friendlyName=t.friendlyName:t.friendlyName===null&&delete e.friendlyName,me(t.defaultValue)||Zt(t.defaultValue)||Bt(t.defaultValue)?e.defaultValue=t.defaultValue:t.defaultValue===null&&delete e.defaultValue,me(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 ft(e){let t=new Set,n=async o=>{let s=await e.readdir(o);await Promise.all(s.map(async i=>{if(i.startsWith(".")||i==="node_modules")return;let a=e.join(o,i),u=e.extname(i).toLowerCase();if(u===".tsx"||u===".jsx"||u===".ts"||u===".js"){t.add(a);return}(await e.stat(a)).isDirectory()&&await n(a)}))};return await n(e.getAppRootDir()),await Z(e,[...t])}function qe(e,t,n){return Ut(e,t,n.variableName)?t:Ic(e,t,n)}function Ic(e,t,n){let r=typeof n.arrayType=="string"?e.ts.factory.createArrayTypeNode(e.ts.factory.createTypeReferenceNode(n.arrayType,void 0)):void 0,o=e.ts.factory.createArrayLiteralExpression([]),s=e.ts.factory.createVariableDeclaration(n.variableName,void 0,r,o),i=e.ts.factory.createVariableDeclarationList([s],e.ts.NodeFlags.Const),a=e.ts.factory.createModifier(e.ts.SyntaxKind.ExportKeyword),u=e.ts.factory.createVariableStatement([a],i),l=[...t.statements,u];return e.ts.factory.updateSourceFile(t,l)}async function Je(e,t,n,r,o,s,i,a){let u=await ft(e),[l,c,p,m]=await Promise.all([us(e,u),ds(e),ye(e),ar(e)]),D=l.map(F=>F.cmpInfo),g=c.components,f={components:Be(D,g),registryPath:e.registryPath,registryDisplayPath:j(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ve(D),publicApiKey:m.envValue??void 0,devToolsVersion:e.version};if(a)return f.components=await Kt(e,f.components),f;let h=!1,d=c.sourceFile,y=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(y.length>0){let F=y.map(E=>{let B=l.find(U=>U.cmpInfo.id===E);if(!B)throw new Error(`Component ${E} not found`);return B}),w=Array.from(new Set(F.map(E=>E.cmpInfo.filePath))),b=await Z(e,w);for(let E of F){let B=f.components.find(v=>v.id===E.cmpInfo.id),U=await zt(e,E,b,e.registryPath===E.cmpInfo.filePath||he(E.cmpInfo.filePath));we(B,U);let I=D.findIndex(v=>v.id===E.cmpInfo.id);D[I].inputs=U;let S=We(E.cmpInfo.id,D,g,n,r,o,s);if(e.sdkVersion===A.gen2){let{elements:v,elmIndex:ce,statementIndex:Te,statement:ie,variableDeclaration:V}=await kc(e,d,E);if(S.addCmpToRegistry)v.push(Bc(e,S.addCmpToRegistry)),h=!0;else if(S.removeCmpFromRegistry)v.splice(ce,1),h=!0;else if(S.updateRegisteredCmp){let pe=ee(e,v[ce],S.updateRegisteredCmp);v[ce]=e.ts.factory.updateObjectLiteralExpression(pe,[hs(e,S.updateRegisteredCmp),...pe.properties.slice(1)]),h=!0}if(h&&i){let pe=[...d.statements];pe[Te]=e.ts.factory.updateVariableStatement(ie,ie.modifiers,e.ts.factory.updateVariableDeclarationList(ie.declarationList,[e.ts.factory.updateVariableDeclaration(V,V.name,V.exclamationToken,V.type,e.ts.factory.createArrayLiteralExpression(ze(e,v)))])),d=e.ts.factory.updateSourceFile(d,pe),d=Ds(e,S,d),d=O(e,d,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-react",isTypeOnly:!0}),d=qe(e,d,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),f.components=S.components,g=S.components.filter(Et=>Et.isRegistered)}}else{let v=[...d.statements];S.addCmpToRegistry?(v.push(es(e,S.addCmpToRegistry)),h=!0):S.removeCmpFromRegistry?(v.splice(S.nodeIndex,1),h=!0):S.updateRegisteredCmp&&(v[S.nodeIndex]=Ln(e,v[S.nodeIndex],S.updateRegisteredCmp),h=!0),h&&i&&(d=e.ts.factory.updateSourceFile(d,v),d=O(e,d,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),d=fs(e,d,p),d=Ds(e,S,d),B?.acceptsChildren&&(d=O(e,d,{namedImports:["withChildren"],importPath:"@builder.io/react"})),f.components=S.components,g=S.components.filter(ce=>ce.isRegistered))}}}if(h&&i){d=Ge(e,d),d=Ke(e,d),e.appDir&&(d=ms(e,d));let F=te(e,d);F=Re(F),e.appDir&&(F=ps(F)),F=await e.formatCode(e.registryPath,F),await e.writeFile(e.registryPath,F)}return f}function hs(e,t){let n=e.ts.factory.createIdentifier(t.importName);return e.appDir?e.ts.factory.createPropertyAssignment("component",n):e.ts.factory.createPropertyAssignment("component",Nc(e,t))}function Rc(e){return e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())}function Bc(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([hs(e,t),...t.acceptsChildren?[Rc(e)]:[]],!0),t)}async function kc(e,t,n){let r=X(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 o=r.arrayLiteralExp.elements.filter(i=>e.ts.isObjectLiteralExpression(i)),s=-1;for(let i=0;i<o.length;i++)if((await Kn(e,t,o[i]))?.id===n.cmpInfo.id){s=i;break}return{...r,elements:o,elmIndex:s}}function Ds(e,t,n){if(e.appDir){let r=t.addCmpToRegistry||t.updateRegisteredCmp;if(r){let o=r.externalImportPath?r.externalImportPath:_(e,e.registryPath,r.filePath);r.exportType==="default"?n=O(e,n,{defaultImport:r.importName,importPath:o}):r.exportType==="named"&&(n=O(e,n,{namedImports:[r.importName],importPath:o}))}}else n=O(e,n,{defaultImport:"dynamic",importPath:"next/dynamic"});return n}function Nc(e,t){let n=t.externalImportPath?t.externalImportPath:_(e,e.registryPath,t.filePath),r=t.exportName!=="default",o;r?o=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)):o=e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("import"),void 0,[e.ts.factory.createStringLiteral(n)]);let s=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),o);return e.ts.factory.createCallExpression(e.ts.factory.createIdentifier("dynamic"),void 0,[s])}async function xs(e){let t=[],n=await jc(e,t);return await bs(e,t,n),e.appDir?(e.debug(`ensure builder setup for next.js app ${e.appDir}`),await Oc(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure builder setup for next.js pages ${e.pagesDir}`),await Lc(e,e.pagesDir,t)),t}async function ys(e){let t=[];return await bs(e,t),e.appDir?(e.debug(`ensure figma-imports setup for next.js app ${e.appDir}`),await $c(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure figma-imports setup for next.js pages ${e.pagesDir}`),await _c(e,e.pagesDir,t)),t}async function $c(e,t,n){let r=`page.${e.typescriptEnabled?"tsx":"jsx"}`,o=e.join(t,"figma-imports",r);if(!await e.exists(o)){let s=await e.formatCode(o,Fs({sys:e,routePath:o,modelName:"figma-imports"}));await e.writeFile(o,s),n.push({filePath:o,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let s=await e.formatCode(e.builderComponentPath,Es(e));await e.writeFile(e.builderComponentPath,s),n.push({filePath:e.builderComponentPath,modifiedType:"create"})}}async function Oc(e,t,n){let r=`page.${e.typescriptEnabled?"tsx":"jsx"}`,o=e.join(t,"[...page]",r);if(!await e.exists(o)){let s=await e.formatCode(o,Fs({sys:e,routePath:o,modelName:"page"}));await e.writeFile(o,s),n.push({filePath:o,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let s=await e.formatCode(e.builderComponentPath,Es(e));await e.writeFile(e.builderComponentPath,s),n.push({filePath:e.builderComponentPath,modifiedType:"create"})}}function Es(e){let t=e.typescriptEnabled;return e.sdkVersion===A.gen2?`
|
|
293
|
+
`}function Mr(e,t){return t.sort((r,n)=>{let i=ls(e,r),s=ls(e,n);return i.toLocaleLowerCase().localeCompare(s.toLocaleLowerCase())})}function ls(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 ps(e){return typeof e=="string"&&!e.includes("'use client'")&&!e.includes(`"use client"'`)&&(e=`"use client"
|
|
294
|
+
${e}`),e}function ms(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 ze(e,t){return t.sort((r,n)=>{if(e.ts.isObjectLiteralExpression(r)&&e.ts.isObjectLiteralExpression(n)){let i=cs(e,r),s=cs(e,n);return i.toLocaleLowerCase().localeCompare(s.toLocaleLowerCase())}return 1})}function cs(e,t){let r=t.properties.find(n=>K(e,n)==="name");return r&&e.ts.isPropertyAssignment(r)&&e.ts.isStringLiteral(r.initializer)?r.initializer.text:"zzzz"}async function ds(e){let t=await e.readFile(e.registryPath);return t?Sc(e,t):{components:[],sourceFile:N(e,"")}}async function Sc(e,t){let r=N(e,t);return e.sdkVersion===A.gen2?Ac(e,r):vc(e,r)}async function vc(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 s=i.expression;if(!e.ts.isCallExpression(s))continue;let o=s.expression;if(!e.ts.isPropertyAccessExpression(o))continue;let a=o.expression;if(!e.ts.isIdentifier(a)||a.text!=="Builder"||o.name.text!=="registerComponent")continue;let l=s.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=Vr(e,p.arguments[0]);if(e.ts.isCallExpression(g)){let f=await jr(e,n,g,c,!0);f&&r.push(f)}else{let f=g;if(e.ts.isIdentifier(f)){let h=await Ur(e,t,n,f,c,!0);h&&r.push(h)}}continue}if(m==="dynamic"){let g=await jr(e,n,p,c,!1);g&&r.push(g);continue}let D=Vr(e,p.arguments[0]);if(e.ts.isCallExpression(D)&&e.ts.isIdentifier(D.expression)&&D.expression.text==="dynamic"){let g=await jr(e,n,D,c,!1);g&&r.push(g);continue}if(e.ts.isIdentifier(D)){let g=await Ur(e,t,n,D,c,!1);g&&r.push(g);continue}continue}if(e.ts.isIdentifier(p)){let m=await Ur(e,t,n,p,c,!1);m&&r.push(m);continue}}return{sourceFile:t,components:fe(r)}}function Vr(e,t){return e.ts.isCallExpression(t)?(e.ts.isIdentifier(t.expression)&&t.expression.text)==="dynamic"?t:Vr(e,t.arguments[0]):t}async function jr(e,t,r,n,i){let s={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:t,acceptsChildren:i,framework:"react"},o=r.arguments;if(o.length===0)return null;let a=o[0];if(!e.ts.isArrowFunction(a))return null;let u=a.body;if(e.ts.isCallExpression(u)){if(u.expression.kind!==e.ts.SyntaxKind.ImportKeyword||u.arguments.length!==1)return null;let c=u.arguments[0];if(!e.ts.isStringLiteral(c))return null;let p=c.text,m=await Gt(e,p);s.filePath=m,s.relFilePath=e.relative(e.getAppRootDir(),s.filePath),await e.exists(m)?s.importPath=W(e,s.filePath):(s.externalImportPath=p,s.importPath=s.externalImportPath),s.name=be(e,s.filePath),s.importName="default",s.exportName="default",s.exportType="default"}else if(e.ts.isPropertyAccessExpression(u)){let l=u.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 D=p.arguments[0];if(!e.ts.isStringLiteral(D)||!e.ts.isIdentifier(u.name))return null;let g=D.text,f=await Gt(e,g);s.filePath=f,s.relFilePath=e.relative(e.getAppRootDir(),s.filePath),await e.exists(f)?s.importPath=W(e,s.filePath):(s.externalImportPath=g,s.importPath=s.externalImportPath),s.name=G(u.name.text),s.importName=u.name.text,s.exportName=u.name.text,s.exportType="named"}else return null;return s=ge(e,s,n),s.displayFilePath=M(e,s.filePath),s.filePath&&s.exportName&&(s.id=await z(e,s.filePath,s.exportName,s.externalImportPath)),s}async function Ur(e,t,r,n,i,s){let o={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:r,acceptsChildren:s,framework:"react"},a=t.statements.filter(l=>e.ts.isImportDeclaration(l)),u=a.find(l=>l.importClause&&l.importClause.name?.text===n.text);if(u){let l=u.moduleSpecifier;if(!e.ts.isStringLiteral(l))return null;let c=await Gt(e,l.text);o.filePath=c,o.relFilePath=e.relative(e.getAppRootDir(),o.filePath),await e.exists(c)?o.importPath=W(e,o.filePath):(o.externalImportPath=l.text,o.importPath=o.externalImportPath),o.name=be(e,o.filePath),o.importName=n.text,o.exportName="default",o.exportType="default"}else{let l=a.find(m=>!m.importClause||!m.importClause.namedBindings||!e.ts.isNamedImports(m.importClause.namedBindings)?!1:m.importClause.namedBindings.elements.some(D=>D.name.text===n.text));if(!l)return null;let c=l.moduleSpecifier;if(!e.ts.isStringLiteral(c))return null;let p=await Gt(e,c.text);o.filePath=p,o.relFilePath=e.relative(e.getAppRootDir(),o.filePath),await e.exists(p)?o.importPath=W(e,o.filePath):(o.externalImportPath=c.text,o.importPath=o.externalImportPath),o.name=G(n.text),o.importName=n.text,o.exportName=n.text,o.exportType="named"}return o=ge(e,o,i),o.displayFilePath=M(e,o.filePath),o.filePath&&o.exportName&&(o.id=await z(e,o.filePath,o.exportName,o.externalImportPath)),o}function Gt(e,t){return pn(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}function fs(e,t,r){let n=!1,i=0,s=[...t.statements];for(let l=0;l<s.length;l++){let c=s[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 D=m.expression;if(!e.ts.isIdentifier(D)||D.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(je)),a=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,[a]));return s.splice(i+1,0,u),e.ts.factory.updateSourceFile(t,s)}async function Ac(e,t){let r=[],n=X(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(i,s)=>{let o=await Kr(e,t,i);o&&(o.nodeIndex=s,r.push(o))})),{sourceFile:t,components:fe(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,framework:"react"};jt(e,r)&&(n.acceptsChildren=!0);for(let s of r.properties){if(!e.ts.isPropertyAssignment(s)||!e.ts.isIdentifier(s.name))continue;if(K(e,s)==="component"){let a,{initializer:u}=s;if(e.ts.isCallExpression(u)&&(e.ts.isIdentifier(u.expression)&&u.expression.text)==="dynamic"){let D=u.arguments;if(D.length===0)return null;let g=D[0];if(!e.ts.isArrowFunction(g))return null;let f=g.body;if(e.ts.isCallExpression(f)){if(f.expression.kind!==e.ts.SyntaxKind.ImportKeyword||f.arguments.length!==1)return null;let d=f.arguments[0];if(!e.ts.isStringLiteral(d))return null;let y=d.text,F=await Gt(e,y);n.filePath=F,n.relFilePath=e.relative(e.getAppRootDir(),n.filePath),await e.exists(F)?n.importPath=W(e,n.filePath):(n.externalImportPath=y,n.importPath=n.externalImportPath),n.name=be(e,n.filePath),n.importName="default",n.exportName="default",n.exportType="default"}else if(e.ts.isPropertyAccessExpression(f)){let h=f.expression;if(!e.ts.isParenthesizedExpression(h))return null;let d=h.expression;if(!e.ts.isAwaitExpression(d))return null;let y=d.expression;if(!e.ts.isCallExpression(y)||y.expression.kind!==e.ts.SyntaxKind.ImportKeyword||y.arguments.length!==1)return null;let w=y.arguments[0];if(!e.ts.isStringLiteral(w)||!e.ts.isIdentifier(f.name))return null;let b=w.text,E=await Gt(e,b);n.filePath=E,n.relFilePath=e.relative(e.getAppRootDir(),n.filePath),await e.exists(E)?n.importPath=W(e,n.filePath):(n.externalImportPath=b,n.importPath=n.externalImportPath),n.name=G(f.name.text),n.importName=f.name.text,n.exportName=f.name.text,n.exportType="named"}else return null;return n=ge(e,n,r),n.displayFilePath=M(e,n.filePath),n.filePath&&n.exportName&&(n.id=await z(e,n.filePath,n.exportName,n.externalImportPath)),n}if(e.ts.isIdentifier(u)&&(a=u.text),!a)continue;n.name===""&&(n.name=G(a)),n.importName=a;let l=await Ue(e,e.registryPath,t,a);if(!l)continue;n.filePath=l.filePath,n.relFilePath=l.relFilePath,await e.exists(l.filePath)?n.importPath=W(e,l.filePath):(n.externalImportPath=l.importPath,n.importPath=n.externalImportPath),n.importPath=W(e,l.filePath),n.displayFilePath=l.displayFilePath,n.exportType=l.exportType;let c=t.statements.filter(m=>e.ts.isImportDeclaration(m)),p=c.find(m=>m.importClause&&m.importClause.name?.text===a);if(p){let m=p.moduleSpecifier;if(!e.ts.isStringLiteral(m))return null;n.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(f=>f.name.text===a));if(!m)return null;let D=m.moduleSpecifier;if(!e.ts.isStringLiteral(D))return null;n.exportName=a}continue}}return n=ge(e,n,r),n.filePath&&n.exportName&&(n.id=await z(e,n.filePath,n.exportName,n.externalImportPath)),n}function Ge(e,t){let r=[...t.statements],n=!1;for(let i=t.statements.length-1;i>=0;i--){let s=t.statements[i];if(e.ts.isImportDeclaration(s)&&s.importClause){let o=!1,a=s.importClause.namedBindings;if(a&&e.ts.isNamedImports(a)&&a.elements){let u=[...a.elements];for(let l=u.length-1;l>=0;l--){let c=u[l];if(e.ts.isImportSpecifier(c)){let p=c.name;if(p&&e.ts.isIdentifier(p)){let m=p.text;gs(e,t,m)||u.splice(l,1)}}}if(u.length===0)o=!0;else if(a.elements.length!==u.length){let l=e.ts.factory.updateImportClause(s.importClause,!1,s.importClause.name,e.ts.factory.createNamedImports(u)),c=e.ts.factory.updateImportDeclaration(s,void 0,l,s.moduleSpecifier,void 0);r[i]=c,n=!0}}else if(s.importClause.name&&e.ts.isIdentifier(s.importClause.name)){let u=s.importClause.name.text;gs(e,t,u)||(o=!0)}o&&(r.splice(i,1),n=!0)}}return n?e.ts.factory.updateSourceFile(t,r):t}function gs(e,t,r){let n=!1;function i(s){if(!e.ts.isImportDeclaration(s)){if(e.ts.isIdentifier(s)&&s.text===r){n=!0;return}e.ts.forEachChild(s,i)}}return e.ts.forEachChild(t,i),n}function We(e,t,r,n,i,s,o){let a=null,u=null,l=null,c=-1;t=Ce(t),r=Ce(r);let p=t.find(D=>D.id===e),m=r.find(D=>D.id===e);if(n)m||(a={...Ce(p),inputs:Ce(p.inputs).map(D=>(D.isRegistered=!0,D))},c=r.length,r.push(a));else if(typeof m?.nodeIndex=="number"&&m.nodeIndex>-1){if(i)c=m.nodeIndex,u=Ce(m),r=r.filter(D=>D.id!==e);else if(s!=null)Pc(m,s),c=m.nodeIndex,l=m;else if(o!=null){let D=m.inputs.find(g=>g.name===o.name);D&&(o.registerInput===!1?D.isRegistered=!1:(Tc(D,o),D.isRegistered=!0),l=m,c=m.nodeIndex)}}return{addCmpToRegistry:a,removeCmpFromRegistry:u,updateRegisteredCmp:l,nodeIndex:c,components:Be(t,r)}}function Be(e,t){let r=fe([...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(Or),n.inputs.sort((o,a)=>o.name.toLowerCase().localeCompare(a.name.toLowerCase()));let i=t.find(o=>o.id===n.id);i&&(i.acceptsChildren=$r(n));let s=e.find(o=>o.id===n.id&&o.externalImportPath);s&&(n.filePath=s.filePath,n.relFilePath=s.relFilePath)}),r}function Pc(e,t){me(t.name)?e.name=t.name:t.name===null&&(e.name=e.importName),me(t.description)?e.description=t.description:t.description===null&&delete e.description,me(t.image)?e.image=t.image:t.image===null&&delete e.image}function Tc(e,t){me(t.type)&&(e.type=t.type),me(t.friendlyName)?e.friendlyName=t.friendlyName:t.friendlyName===null&&delete e.friendlyName,me(t.defaultValue)||Zt(t.defaultValue)||Bt(t.defaultValue)?e.defaultValue=t.defaultValue:t.defaultValue===null&&delete e.defaultValue,me(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 ft(e){let t=new Set,r=async i=>{let s=await e.readdir(i);await Promise.all(s.map(async o=>{if(o.startsWith(".")||o==="node_modules")return;let a=e.join(i,o),u=e.extname(o).toLowerCase();if(u===".tsx"||u===".jsx"||u===".ts"||u===".js"){t.add(a);return}(await e.stat(a)).isDirectory()&&await r(a)}))};return await r(e.getAppRootDir()),await Z(e,[...t])}function qe(e,t,r){return Ut(e,t,r.variableName)?t:Ic(e,t,r)}function Ic(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([]),s=e.ts.factory.createVariableDeclaration(r.variableName,void 0,n,i),o=e.ts.factory.createVariableDeclarationList([s],e.ts.NodeFlags.Const),a=e.ts.factory.createModifier(e.ts.SyntaxKind.ExportKeyword),u=e.ts.factory.createVariableStatement([a],o),l=[...t.statements,u];return e.ts.factory.updateSourceFile(t,l)}async function Je(e,t,r,n,i,s,o,a){let u=await ft(e),[l,c,p,m]=await Promise.all([us(e,u),ds(e),ye(e),un(e)]),D=l.map(F=>F.cmpInfo),g=c.components,f={components:Be(D,g),registryPath:e.registryPath,registryDisplayPath:M(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ve(D),publicApiKey:m.envValue??void 0,devToolsVersion:e.version};if(a)return f.components=await Kt(e,f.components),f;let h=!1,d=c.sourceFile,y=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(y.length>0){let F=y.map(E=>{let B=l.find(U=>U.cmpInfo.id===E);if(!B)throw new Error(`Component ${E} not found`);return B}),w=Array.from(new Set(F.map(E=>E.cmpInfo.filePath))),b=await Z(e,w);for(let E of F){let B=f.components.find(v=>v.id===E.cmpInfo.id),U=await zt(e,E,b,e.registryPath===E.cmpInfo.filePath||he(E.cmpInfo.filePath));we(B,U);let I=D.findIndex(v=>v.id===E.cmpInfo.id);D[I].inputs=U;let S=We(E.cmpInfo.id,D,g,r,n,i,s);if(e.sdkVersion===A.gen2){let{elements:v,elmIndex:ce,statementIndex:Te,statement:oe,variableDeclaration:V}=await kc(e,d,E);if(S.addCmpToRegistry)v.push(Bc(e,S.addCmpToRegistry)),h=!0;else if(S.removeCmpFromRegistry)v.splice(ce,1),h=!0;else if(S.updateRegisteredCmp){let pe=ee(e,v[ce],S.updateRegisteredCmp);v[ce]=e.ts.factory.updateObjectLiteralExpression(pe,[hs(e,S.updateRegisteredCmp),...pe.properties.slice(1)]),h=!0}if(h&&o){let pe=[...d.statements];pe[Te]=e.ts.factory.updateVariableStatement(oe,oe.modifiers,e.ts.factory.updateVariableDeclarationList(oe.declarationList,[e.ts.factory.updateVariableDeclaration(V,V.name,V.exclamationToken,V.type,e.ts.factory.createArrayLiteralExpression(ze(e,v)))])),d=e.ts.factory.updateSourceFile(d,pe),d=Ds(e,S,d),d=O(e,d,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-react",isTypeOnly:!0}),d=qe(e,d,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),f.components=S.components,g=S.components.filter(Et=>Et.isRegistered)}}else{let v=[...d.statements];S.addCmpToRegistry?(v.push(es(e,S.addCmpToRegistry)),h=!0):S.removeCmpFromRegistry?(v.splice(S.nodeIndex,1),h=!0):S.updateRegisteredCmp&&(v[S.nodeIndex]=Lr(e,v[S.nodeIndex],S.updateRegisteredCmp),h=!0),h&&o&&(d=e.ts.factory.updateSourceFile(d,v),d=O(e,d,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),d=fs(e,d,p),d=Ds(e,S,d),B?.acceptsChildren&&(d=O(e,d,{namedImports:["withChildren"],importPath:"@builder.io/react"})),f.components=S.components,g=S.components.filter(ce=>ce.isRegistered))}}}if(h&&o){d=Ge(e,d),d=Ke(e,d),e.appDir&&(d=ms(e,d));let F=te(e,d);F=Re(F),e.appDir&&(F=ps(F)),F=await e.formatCode(e.registryPath,F),await e.writeFile(e.registryPath,F)}return f}function hs(e,t){let r=e.ts.factory.createIdentifier(t.importName);return e.appDir?e.ts.factory.createPropertyAssignment("component",r):e.ts.factory.createPropertyAssignment("component",Nc(e,t))}function Rc(e){return e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())}function Bc(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([hs(e,t),...t.acceptsChildren?[Rc(e)]:[]],!0),t)}async function kc(e,t,r){let n=X(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let i=n.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),s=-1;for(let o=0;o<i.length;o++)if((await Kr(e,t,i[o]))?.id===r.cmpInfo.id){s=o;break}return{...n,elements:i,elmIndex:s}}function Ds(e,t,r){if(e.appDir){let n=t.addCmpToRegistry||t.updateRegisteredCmp;if(n){let i=n.externalImportPath?n.externalImportPath:_(e,e.registryPath,n.filePath);n.exportType==="default"?r=O(e,r,{defaultImport:n.importName,importPath:i}):n.exportType==="named"&&(r=O(e,r,{namedImports:[n.importName],importPath:i}))}}else r=O(e,r,{defaultImport:"dynamic",importPath:"next/dynamic"});return r}function Nc(e,t){let r=t.externalImportPath?t.externalImportPath:_(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 s=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,[s])}async function xs(e){let t=[],r=await Mc(e,t);return await bs(e,t,r),e.appDir?(e.debug(`ensure builder setup for next.js app ${e.appDir}`),await Oc(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure builder setup for next.js pages ${e.pagesDir}`),await Lc(e,e.pagesDir,t)),t}async function ys(e){let t=[];return await bs(e,t),e.appDir?(e.debug(`ensure figma-imports setup for next.js app ${e.appDir}`),await $c(e,e.appDir,t)):e.pagesDir&&(e.debug(`ensure figma-imports setup for next.js pages ${e.pagesDir}`),await _c(e,e.pagesDir,t)),t}async function $c(e,t,r){let n=`page.${e.typescriptEnabled?"tsx":"jsx"}`,i=e.join(t,"figma-imports",n);if(!await e.exists(i)){let s=await e.formatCode(i,Fs({sys:e,routePath:i,modelName:"figma-imports"}));await e.writeFile(i,s),r.push({filePath:i,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let s=await e.formatCode(e.builderComponentPath,Es(e));await e.writeFile(e.builderComponentPath,s),r.push({filePath:e.builderComponentPath,modifiedType:"create"})}}async function Oc(e,t,r){let n=`page.${e.typescriptEnabled?"tsx":"jsx"}`,i=e.join(t,"[...page]",n);if(!await e.exists(i)){let s=await e.formatCode(i,Fs({sys:e,routePath:i,modelName:"page"}));await e.writeFile(i,s),r.push({filePath:i,modifiedType:"create"})}if(!await e.exists(e.builderComponentPath)){let s=await e.formatCode(e.builderComponentPath,Es(e));await e.writeFile(e.builderComponentPath,s),r.push({filePath:e.builderComponentPath,modifiedType:"create"})}}function Es(e){let t=e.typescriptEnabled;return e.sdkVersion===A.gen2?`
|
|
295
295
|
"use client";
|
|
296
296
|
import { ${t?"BuilderContent, ":""} isPreviewing, Content } from "@builder.io/sdk-react";
|
|
297
297
|
import DefaultErrorPage from "next/error";
|
|
@@ -303,7 +303,7 @@ interface BuilderPageProps {
|
|
|
303
303
|
}`:""}
|
|
304
304
|
|
|
305
305
|
// Builder Public API Key set in .env file
|
|
306
|
-
const builderApiKey = process.env.${
|
|
306
|
+
const builderApiKey = process.env.${je}${t?"!":""};
|
|
307
307
|
|
|
308
308
|
export function RenderBuilderContent({ content, model }${t?": BuilderPageProps":""}) {
|
|
309
309
|
// Call the isPreviewing hook to determine if
|
|
@@ -334,7 +334,7 @@ ${t?`
|
|
|
334
334
|
type BuilderPageProps = ComponentProps<typeof BuilderComponent>;`:""}
|
|
335
335
|
|
|
336
336
|
// Builder Public API Key set in .env file
|
|
337
|
-
builder.init(process.env.${
|
|
337
|
+
builder.init(process.env.${je}${t?"!":""});
|
|
338
338
|
|
|
339
339
|
export function RenderBuilderContent({ content, model }${t?": BuilderPageProps":""}) {
|
|
340
340
|
// Call the useIsPreviewing hook to determine if
|
|
@@ -360,17 +360,17 @@ interface PageProps {
|
|
|
360
360
|
params: {
|
|
361
361
|
page: string[];
|
|
362
362
|
};
|
|
363
|
-
}`}function Fs({sys:e,routePath:t,modelName:
|
|
363
|
+
}`}function Fs({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,i=_(e,t,e.builderComponentPath);return e.sdkVersion===A.gen2?`
|
|
364
364
|
import { fetchOneEntry } from "@builder.io/sdk-react";
|
|
365
|
-
import { RenderBuilderContent } from ${JSON.stringify(
|
|
365
|
+
import { RenderBuilderContent } from ${JSON.stringify(i)};
|
|
366
366
|
|
|
367
367
|
// Builder Public API Key set in .env file
|
|
368
|
-
const PUBLIC_API_KEY = process.env.${
|
|
368
|
+
const PUBLIC_API_KEY = process.env.${je}${n?"!":""};
|
|
369
369
|
|
|
370
|
-
${
|
|
370
|
+
${n?Cs(e):""}
|
|
371
371
|
|
|
372
|
-
export default async function Page(props${
|
|
373
|
-
const builderModelName = "${
|
|
372
|
+
export default async function Page(props${n?": PageProps":""}) {
|
|
373
|
+
const builderModelName = "${r}";
|
|
374
374
|
|
|
375
375
|
// Use the page path specified in the URL to fetch the content
|
|
376
376
|
const urlPath = "/" + (${e.features.asyncParams?"(await props?.params)":"props?.params"}?.page?.join("/") || "");
|
|
@@ -391,14 +391,14 @@ export default async function Page(props${r?": PageProps":""}) {
|
|
|
391
391
|
}
|
|
392
392
|
`.trimStart():`
|
|
393
393
|
import { builder } from "@builder.io/sdk";
|
|
394
|
-
import { RenderBuilderContent } from ${JSON.stringify(
|
|
394
|
+
import { RenderBuilderContent } from ${JSON.stringify(i)};
|
|
395
395
|
|
|
396
396
|
// Builder Public API Key set in .env file
|
|
397
|
-
builder.init(process.env.${
|
|
398
|
-
${
|
|
397
|
+
builder.init(process.env.${je}${n?"!":""});
|
|
398
|
+
${n?Cs(e):""}
|
|
399
399
|
|
|
400
|
-
export default async function Page(props${
|
|
401
|
-
const builderModelName = "${
|
|
400
|
+
export default async function Page(props${n?": PageProps":""}) {
|
|
401
|
+
const builderModelName = "${r}";
|
|
402
402
|
|
|
403
403
|
const content = await builder
|
|
404
404
|
// Get the page content from Builder with the specified options
|
|
@@ -418,10 +418,10 @@ export default async function Page(props${r?": PageProps":""}) {
|
|
|
418
418
|
</>
|
|
419
419
|
);
|
|
420
420
|
}
|
|
421
|
-
`.trimStart()}async function Lc(e,t,
|
|
421
|
+
`.trimStart()}async function Lc(e,t,r){let n=`[...page].${e.typescriptEnabled?"tsx":"jsx"}`,i=e.join(t,n);if(!await e.exists(i)){let s=await e.formatCode(i,ws({sys:e,routePath:i,modelName:"page"}));await e.writeFile(i,s),r.push({filePath:i,modifiedType:"create"})}}async function _c(e,t,r){let n=`figma-imports.${e.typescriptEnabled?"tsx":"jsx"}`,i=e.join(t,n);if(!await e.exists(i)){let s=await e.formatCode(i,ws({sys:e,routePath:i,modelName:"figma-imports"}));await e.writeFile(i,s),r.push({filePath:i,modifiedType:"create"})}}function ws({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled;return e.sdkVersion===A.gen2?`
|
|
422
422
|
import React from "react";
|
|
423
423
|
import { useRouter } from "next/router";
|
|
424
|
-
${
|
|
424
|
+
${n?'import type { BuilderContent } from "@builder.io/sdk-react";':""}
|
|
425
425
|
import {
|
|
426
426
|
Content,
|
|
427
427
|
fetchEntries,
|
|
@@ -430,14 +430,14 @@ import {
|
|
|
430
430
|
} from "@builder.io/sdk-react";
|
|
431
431
|
import DefaultErrorPage from "next/error";
|
|
432
432
|
import Head from "next/head";
|
|
433
|
-
${
|
|
433
|
+
${n?'import { GetStaticProps } from "next";':""}
|
|
434
434
|
import { CUSTOM_COMPONENTS } from ${JSON.stringify(_(e,e.builderComponentPath,e.registryPath))};
|
|
435
435
|
|
|
436
|
-
const BUILDER_API_KEY = process.env.${
|
|
436
|
+
const BUILDER_API_KEY = process.env.${je}${n?"!":""};
|
|
437
437
|
|
|
438
438
|
// Define a function that fetches the Builder
|
|
439
439
|
// content for a given page
|
|
440
|
-
export const getStaticProps${
|
|
440
|
+
export const getStaticProps${n?": GetStaticProps":""} = async ({ params }) => {
|
|
441
441
|
${e.features.asyncParams?"await params;":""}
|
|
442
442
|
const urlPath =
|
|
443
443
|
"/" +
|
|
@@ -446,7 +446,7 @@ export const getStaticProps${r?": GetStaticProps":""} = async ({ params }) => {
|
|
|
446
446
|
// Fetch the builder content for the given page
|
|
447
447
|
const page = await fetchOneEntry({
|
|
448
448
|
apiKey: BUILDER_API_KEY,
|
|
449
|
-
model: "${
|
|
449
|
+
model: "${r}",
|
|
450
450
|
userAttributes: { urlPath },
|
|
451
451
|
});
|
|
452
452
|
|
|
@@ -458,7 +458,7 @@ export const getStaticProps${r?": GetStaticProps":""} = async ({ params }) => {
|
|
|
458
458
|
};
|
|
459
459
|
};
|
|
460
460
|
|
|
461
|
-
${
|
|
461
|
+
${r==="page"?`
|
|
462
462
|
// Define a function that generates the
|
|
463
463
|
// static paths for all pages in Builder
|
|
464
464
|
export async function getStaticPaths() {
|
|
@@ -479,7 +479,7 @@ export async function getStaticPaths() {
|
|
|
479
479
|
`:""}
|
|
480
480
|
|
|
481
481
|
// Define the Page component
|
|
482
|
-
export default function Page(props${
|
|
482
|
+
export default function Page(props${n?": { page: BuilderContent | null }":""}) {
|
|
483
483
|
const router = useRouter();
|
|
484
484
|
const canShowContent = props.page || isPreviewing(router.asPath);
|
|
485
485
|
|
|
@@ -498,7 +498,7 @@ export default function Page(props${r?": { page: BuilderContent | null }":""}) {
|
|
|
498
498
|
</Head>
|
|
499
499
|
{/* Render the Builder page */}
|
|
500
500
|
<Content
|
|
501
|
-
model="${
|
|
501
|
+
model="${r}"
|
|
502
502
|
content={props.page}
|
|
503
503
|
apiKey={BUILDER_API_KEY}
|
|
504
504
|
customComponents={CUSTOM_COMPONENTS}
|
|
@@ -512,22 +512,22 @@ import React from "react";
|
|
|
512
512
|
import { useRouter } from "next/router";
|
|
513
513
|
import { BuilderComponent, builder, useIsPreviewing } from "@builder.io/react";
|
|
514
514
|
import DefaultErrorPage from "next/error";
|
|
515
|
-
import Head from "next/head";${
|
|
516
|
-
import { BuilderContent } from "@builder.io/sdk";`:""}${
|
|
515
|
+
import Head from "next/head";${n?`
|
|
516
|
+
import { BuilderContent } from "@builder.io/sdk";`:""}${n?`
|
|
517
517
|
import { GetStaticProps } from "next";`:""}
|
|
518
518
|
import ${JSON.stringify(_(e,t,e.registryPath))};
|
|
519
519
|
|
|
520
|
-
builder.init(process.env.${
|
|
520
|
+
builder.init(process.env.${je}${n?"!":""});
|
|
521
521
|
|
|
522
522
|
// Define a function that fetches the Builder
|
|
523
523
|
// content for a given page
|
|
524
|
-
export const getStaticProps${
|
|
524
|
+
export const getStaticProps${n?": GetStaticProps":""} = async ({ params }) => {
|
|
525
525
|
${e.features.asyncParams?"await params;":""}
|
|
526
526
|
// Fetch the builder content for the given page
|
|
527
527
|
const page = await builder
|
|
528
|
-
.get("${
|
|
528
|
+
.get("${r}", {
|
|
529
529
|
userAttributes: {
|
|
530
|
-
urlPath: "/" + ((params?.page${
|
|
530
|
+
urlPath: "/" + ((params?.page${n?" as string[]":""})?.join("/") || ""),
|
|
531
531
|
},
|
|
532
532
|
})
|
|
533
533
|
.toPromise();
|
|
@@ -542,7 +542,7 @@ export const getStaticProps${r?": GetStaticProps":""} = async ({ params }) => {
|
|
|
542
542
|
};
|
|
543
543
|
};
|
|
544
544
|
|
|
545
|
-
${
|
|
545
|
+
${r==="page"?`// Define a function that generates the
|
|
546
546
|
// static paths for all pages in Builder
|
|
547
547
|
export async function getStaticPaths() {
|
|
548
548
|
// Get a list of all pages in Builder
|
|
@@ -560,7 +560,7 @@ export async function getStaticPaths() {
|
|
|
560
560
|
}`:""}
|
|
561
561
|
|
|
562
562
|
// Define the Page component
|
|
563
|
-
export default function Page({ page }${
|
|
563
|
+
export default function Page({ page }${n?": { page: BuilderContent | null }":""}) {
|
|
564
564
|
const router = useRouter();
|
|
565
565
|
const isPreviewing = useIsPreviewing();
|
|
566
566
|
|
|
@@ -578,11 +578,11 @@ export default function Page({ page }${r?": { page: BuilderContent | null }":""}
|
|
|
578
578
|
<title>{page?.data?.title}</title>
|
|
579
579
|
</Head>
|
|
580
580
|
{/* Render the Builder page */}
|
|
581
|
-
<BuilderComponent model="${
|
|
581
|
+
<BuilderComponent model="${r}" content={page || undefined} />
|
|
582
582
|
</>
|
|
583
583
|
);
|
|
584
584
|
}
|
|
585
|
-
`.trimStart()}async function
|
|
585
|
+
`.trimStart()}async function Mc(e,t){let n=e.typescriptEnabled?"tsx":"jsx",i=e.join(e.componentsDir,"Counter"),s=e.join(i,`Counter.${n}`),o=e.join(i,"styles.module.css"),{component:a,styles:u}=jc(e);if(!await e.exists(s)){let l=await e.formatCode(s,a);await e.writeFile(s,l),t.push({filePath:s,modifiedType:"create"})}return await e.exists(o)||(await e.writeFile(o,u),t.push({filePath:o,modifiedType:"create"})),s}function jc(e){let t=e.typescriptEnabled,r=`
|
|
586
586
|
"use client"
|
|
587
587
|
import React, { useState } from "react";
|
|
588
588
|
import styles from "./styles.module.css";
|
|
@@ -616,7 +616,7 @@ function Counter({ initialCount = 99 }${t?": CounterProps":""}) {
|
|
|
616
616
|
}
|
|
617
617
|
|
|
618
618
|
export default Counter;
|
|
619
|
-
`.trimStart(),
|
|
619
|
+
`.trimStart(),n=`
|
|
620
620
|
.counter {
|
|
621
621
|
margin: 32px auto;
|
|
622
622
|
display: flex;
|
|
@@ -645,18 +645,18 @@ export default Counter;
|
|
|
645
645
|
font-size: 42px;
|
|
646
646
|
text-align: center;
|
|
647
647
|
}
|
|
648
|
-
`.trimStart();return{component:
|
|
648
|
+
`.trimStart();return{component:r,styles:n}}async function bs(e,t,r){if(!await e.exists(e.registryPath)){if(e.sdkVersion===A.gen2){let s=Uc(e);await e.writeFile(e.registryPath,s)}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(s=>s.filePath===r);i&&await Je(e,i.id,!0,!1,null,null,!0,!1)}function Uc(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-react";
|
|
649
649
|
|
|
650
650
|
export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
651
651
|
];`:`export const CUSTOM_COMPONENTS = [
|
|
652
652
|
];
|
|
653
|
-
`}async function Wt(e){let t=await ct(e,e.getRepoRootDir());if(t&&typeof t=="object"){let
|
|
654
|
-
`),
|
|
655
|
-
`)}async function Is(e,t){let
|
|
653
|
+
`}async function Wt(e){let t=await ct(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 A.gen2;if(r.has("@builder.io/react"))return A.gen1}return null}async function Ss(e){let t=await Vc(e);return{builderPageOptions:async()=>({templateContentId:"3de2f13211234071a4b19a17b4fbc5a7",pathname:"/builder-demo",title:"Builder + Next.js Demo Page"}),ensureBuilderSetup:()=>xs(t),ensureFigmaImportPage:()=>ys(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(s=>s.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:()=>un(t),setPublicApiKey:n=>Ji(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===A.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:()=>_e(t),setCache:n=>Me(t,n)}}async function Vc(e){let t=e.getAppRootDir(),r=e.join(t,"src"),n=await Kc(e),i=await ye(e),s=e.getFrameworks().find(l=>l.name==="next"),o={asyncParams:s?.version?.major!==void 0&&s.version.major>=15},a={},u={...e,addExternalPackage:l=>{a[e.join(t,l,"index.ts")]=`export * from "${l}";`},readFileSync:l=>a[l]??e.readFileSync(l),existsSync:l=>!!a[l]||e.existsSync(l),readdirSync:l=>{let c=e.readdirSync(l);return l===t?[...c,...Object.keys(a).map(p=>p.slice(t.length+1))]:c},readdir:async l=>{let c=await e.readdir(l);return l===t?[...c,...Object.keys(a).map(p=>p.slice(t.length+1))]:c},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 Wt(u),await e.exists(r)){u.srcDir=r,u.componentsDir=e.join(r,"components");let l=e.join(r,"app");await e.exists(l)&&(u.appDir=l);let c=e.join(r,"pages");await e.exists(c)&&(u.pagesDir=c),u.registryPath=await Se(e,r)}else u.componentsDir=e.join(t,"components"),u.registryPath=await Se(e,t);if(u.builderComponentPath=e.join(u.componentsDir,`builder.${i?"tsx":"jsx"}`),!u.appDir){let l=e.join(t,"app");await e.exists(l)&&(u.appDir=l)}if(!u.pagesDir){let l=e.join(t,"pages");await e.exists(l)&&(u.pagesDir=l)}if(!u.appDir&&!u.pagesDir&&!e.ignoreMissingConfig)throw new Error(`Could not find Next.js "app" or "pages" directory. Searched in "${t}".`);return u}async function Kc(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 mn(e){return await pt(e,[".env"],As)}async function vs(e,t){zc(t);let r=await mn(e),n=await mt(e,r.file,r.envKey,t);return{...r,modifiedType:n}}function zc(e){typeof process<"u"&&(process.env[As]=e)}var As="PUBLIC_BUILDER_API_KEY";function Ps(e,t,r){if(r.length===0)return e;let n=e.split(`
|
|
654
|
+
`),i=n.findIndex(a=>a.includes(r));if(i===-1||n.some(a=>a.includes(t[0])))return e;let o=["/**",...t.map(a=>` * ${a.trim()}`)," */"];return n.splice(i,0,...o),n.join(`
|
|
655
|
+
`)}async function Is(e,t){let r=[],n=t.getSourceFiles(),i=t.getTypeChecker();return await Promise.all(n.map(async s=>{let o=e.basename(s.fileName);if(o.startsWith(".")||qc.has(o))return;let a=e.normalize(s.fileName);if(a===e.registryPath)return;let u=await zn(e,i,a,s);r.push(...u)})),r}async function Rs(e,t){if(e.extname(t).toLowerCase()===".tsx"){let n=await e.readFile(t);if(n)return Gc(e,t,n)}return null}function Gc(e,t,r){let n=N(e,r);return zn(e,null,t,n)}async function zn(e,t,r,n){r=e.normalize(r);let i=[],s=vt(e,n);return await Promise.all(s.map(async o=>{let a=await Wc(e,t,r,o);a&&i.push(a)})),i}async function Wc(e,t,r,n){let i=e.relative(e.getAppRootDir(),r),s=W(e,r);if(e.ts.isVariableStatement(n.node))for(let o of n.node.declarationList.declarations){let a=Ts(e,o.initializer);if(a&&e.ts.isIdentifier(o.name)){let u=o.name.text;return{cmpInfo:{id:await z(e,r,u),displayFilePath:M(e,r),name:G(u),inputs:[],exportName:n.isDefaultExport?"default":u,exportType:n.isDefaultExport?"default":"named",importName:u,filePath:r,relFilePath:i,importPath:s,framework:"qwik"},node:a}}}else if(e.ts.isCallExpression(n.node)){let o=Ts(e,n.node);if(o)return{cmpInfo:{id:await z(e,r,"default"),displayFilePath:M(e,r),name:be(e,r),inputs:[],exportName:"default",exportType:"default",importName:bt(e,r),filePath:r,relFilePath:i,importPath:s,framework:"qwik"},node:o}}return null}function Ts(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 qc=new Set(["node_modules","layout.tsx","404.tsx","router-head.tsx"]);async function Bs(e,t){let r=t.node.fnNode;if((e.ts.isArrowFunction(r)||e.ts.isFunctionExpression(r))&&r.parameters.length>0){let{sourceFile:i,typeChecker:s}=await Nt(e,t.cmpInfo.filePath,null);if(!(await zn(e,s,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 St(e,s,r)}return[]}async function ks(e){return zr(e)}async function zr(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,Jc),t.push({filePath:e.registryPath,modifiedType:"create"})),t}var Jc=`import type { RegisteredComponent } from "@builder.io/sdk-qwik";
|
|
656
656
|
|
|
657
657
|
export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
658
658
|
];
|
|
659
|
-
`;async function Ns(e){await zn(e);let t=await e.readFile(e.registryPath);return t?Hc(e,t):{components:[],sourceFile:N(e,"")}}async function Hc(e,t){let n=N(e,t);return Yc(e,n)}async function Yc(e,t){let n=[],r=X(e,t,"CUSTOM_COMPONENTS");return r&&await Promise.all(r.arrayLiteralExp.elements.map(async(o,s)=>{let i=await Gn(e,t,o);i&&(i.nodeIndex=s,n.push(i))})),{sourceFile:t,components:fe(n)}}async function Gn(e,t,n){if(!e.ts.isObjectLiteralExpression(n))return null;let r={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],framework:"qwik"};for(let o of n.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(K(e,o)==="component"&&e.ts.isIdentifier(o.initializer)){let i=o.initializer.text;r.name===""&&(r.name=G(i)),r.importName=i;let a=await Ue(e,e.registryPath,t,i);if(!a)continue;r.filePath=a.filePath,r.relFilePath=a.relFilePath,r.importPath=W(e,a.filePath),r.displayFilePath=a.displayFilePath,r.exportType=a.exportType;let u=await Rs(e,a.filePath);if(u&&u.length>0)if(u.length===1)r.exportName=u[0].cmpInfo.exportName;else{let l=u.find(c=>c.cmpInfo.exportName===i);l&&(r.exportName=l.cmpInfo.exportName)}continue}}return r=ge(e,r,n),r.filePath&&r.exportName&&(r.id=await z(e,r.filePath,r.exportName)),r}async function $s(e){let t=new Set,n=async o=>{let s=await e.readdir(o);await Promise.all(s.map(async i=>{if(i.startsWith(".")||i==="node_modules")return;let a=e.join(o,i),u=e.extname(i).toLowerCase();if(u===".tsx"||u===".ts"){t.add(a);return}(await e.stat(a)).isDirectory()&&await n(a)}))};return await n(e.getAppRootDir()),await Z(e,[...t])}async function At(e,t,n,r,o,s,i,a){let u=await $s(e),[l,c,p]=await Promise.all([Is(e,u),Ns(e),pr(e)]),m=l.map(f=>f.cmpInfo),D=c.components,g={components:Be(m,D),registryPath:e.registryPath,registryDisplayPath:j(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ve(m),publicApiKey:p.envValue??void 0,devToolsVersion:e.version};if(a)return g;if(t!=null){let f=l.find(S=>S.cmpInfo.id===t);if(!f)throw new Error(`Component ${t} not found`);let h=c.sourceFile,d=g.components.find(S=>S.id===t),y=await Bs(e,f);we(d,y),t=Array.isArray(t)?t[0]:t;let F=We(t,m,D,n,r,o,s),{elements:w,elmIndex:b,statementIndex:E,statement:B,variableDeclaration:U}=await Xc(e,h,f),I=!1;if(F.addCmpToRegistry?(w.push(Qc(e,F.addCmpToRegistry)),I=!0):F.removeCmpFromRegistry?(w.splice(b,1),I=!0):F.updateRegisteredCmp&&(w[b]=ee(e,w[b],F.updateRegisteredCmp),I=!0),I&&i){let S=[...h.statements];S[E]=e.ts.factory.updateVariableStatement(B,B.modifiers,e.ts.factory.updateVariableDeclarationList(B.declarationList,[e.ts.factory.updateVariableDeclaration(U,U.name,U.exclamationToken,U.type,e.ts.factory.createArrayLiteralExpression(ze(e,w)))])),h=e.ts.factory.updateSourceFile(h,S),d.exportType==="named"?h=O(e,h,{namedImports:[d.importName],importPath:_(e,e.registryPath,d.filePath)}):h=O(e,h,{defaultImport:d.importName,importPath:_(e,e.registryPath,d.filePath)}),h=O(e,h,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-qwik",isTypeOnly:!0}),h=qe(e,h,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),h=Ge(e,h),h=Ke(e,h);let v=te(e,h);v=Re(v),v=Ps(v,Zc,"CUSTOM_COMPONENTS"),v=await e.formatCode(e.registryPath,v),await e.writeFile(e.registryPath,v)}g.components=F.components}return g}function Qc(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName))],!0),t)}async function Xc(e,t,n){let r=X(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 o=r.arrayLiteralExp.elements.filter(i=>e.ts.isObjectLiteralExpression(i)),s=-1;for(let i=0;i<o.length;i++)if((await Gn(e,t,o[i]))?.id===n.cmpInfo.id){s=i;break}return{...r,elements:o,elmIndex:s}}var Zc=["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 Os(e){let t=await ep(e);return{builderPageOptions:async()=>({templateContentId:"dc70f1d979ad416d8fd357137eb9ddfb",pathname:"/",title:"Builder + Qwik Demo Page"}),ensureBuilderSetup:()=>ks(t),ensureFigmaImportPage:async()=>[],getRegistryPath:()=>t.registryPath,getRegistry:r=>At(t,null,!1,!1,null,null,!1,!!r?.readAllInputTypes),addExternalPackage:async r=>{},loadComponent:async r=>{let o=await At(t,r.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(s=>s.id===r.cmpId)}},registerComponent:r=>At(t,r.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:r=>At(t,r.cmpId,!1,!1,r,null,!0,!1),setRegisteredComponentInput:r=>At(t,r.cmpId,!1,!1,null,r,!0,!1),unregisterComponent:r=>At(t,r.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>pr(t),setPublicApiKey:r=>vs(t,r.publicApiKey),getDependencies:r=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-qwik"}],getDevRunCommand:()=>"dev",getCache:()=>_e(t),setCache:r=>je(t,r)}}async function ep(e){let t=await er(e,e.getAppRootDir(),"components");if(!t)throw new Error(`Could not find components directory within project: ${e.getAppRootDir()}`);let n=await Se(e,t),r=e.join(e.getAppRootDir(),".env");return{...e,componentsDir:t,registryPath:n,envPath:r}}async function mr(e){return await pt(e,[".env"],dr)}async function Ls(e,t){let n=await mr(e),r=await mt(e,n.file,n.envKey,t);return{...n,modifiedType:r}}var dr="PUBLIC_BUILDER_KEY";var tp=new Set(["dist","node_modules"]);async function _s(e,t){let n=[],r=t.getSourceFiles(),o=t.getTypeChecker(),s=e.join(e.getAppRootDir(),"build");return await Promise.all(r.map(async i=>{let a=e.basename(i.fileName);if(a.startsWith(".")||a==="node_modules"||Rr(e,tp,i.fileName)||rp.has(a)||a.includes("$."))return;let u=e.normalize(i.fileName);if(u===e.remixConfigPath||u===s)return;let l=await dt(e,o,u,i,u===e.registryPath);n.push(...l)})),n}var rp=new Set(["root.tsx","root.ts","root.jsx","root.js","_index.tsx","_index.jsx","_index.ts","_index.js"]);async function js(e){await zr(e);let t=await e.readFile(e.registryPath);return t?np(e,t):{components:[],sourceFile:N(e,"")}}async function np(e,t){let n=N(e,t);return ip(e,n)}async function ip(e,t){let n=[],r=X(e,t,"CUSTOM_COMPONENTS");return r&&await Promise.all(r.arrayLiteralExp.elements.map(async(o,s)=>{let i=await Wn(e,t,o);i&&(i.nodeIndex=s,n.push(i))})),{sourceFile:t,components:fe(n)}}async function Wn(e,t,n){if(!e.ts.isObjectLiteralExpression(n))return null;let r={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1,framework:"react"};e.sdkVersion===A.gen2&&Mt(e,n)&&(r.acceptsChildren=!0);for(let o of n.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(K(e,o)==="component"){let i,{initializer:a}=o;if(e.ts.isIdentifier(a))i=a.text;else if(e.ts.isCallExpression(a)){(e.ts.isIdentifier(a.expression)&&a.expression.text)==="withChildren"&&(r.acceptsChildren=!0);let c=a.arguments[0];e.ts.isIdentifier(c)&&(i=c.text)}if(!i)continue;r.name===""&&(r.name=G(i)),r.importName=i;let u=await Ue(e,e.registryPath,t,i);if(!u)continue;if(r.filePath=u.filePath,r.relFilePath=u.relFilePath,await e.exists(u.filePath)?r.importPath=W(e,u.filePath):(r.externalImportPath=u.importPath,r.importPath=r.externalImportPath),r.displayFilePath=u.displayFilePath,r.exportType=u.exportType,r.externalImportPath)r.exportName=i;else{let l=await os(e,u.filePath,e.registryPath===u.filePath||he(u.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===i);c&&(r.exportName=c.cmpInfo.exportName)}}continue}}return r=ge(e,r,n),r.filePath&&r.exportName&&(r.id=await z(e,r.filePath,r.exportName,r.externalImportPath)),r}async function He(e,t,n,r,o,s,i,a){let u=await ft(e),[l,c,p]=await Promise.all([_s(e,u),js(e),mr(e)]),m=l.map(y=>y.cmpInfo),D=c.components,g={components:Be(m,D),registryPath:e.registryPath,registryDisplayPath:j(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ve(m),publicApiKey:p.envValue??void 0,devToolsVersion:e.version};if(a)return g.components=await Kt(e,g.components),g;let f=!1,h=c.sourceFile,d=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(d.length>0){let y=d.map(b=>{let E=l.find(B=>B.cmpInfo.id===b);if(!E)throw new Error(`Component ${b} not found`);return E}),F=Array.from(new Set(y.map(b=>b.cmpInfo.filePath))),w=await Z(e,F);for(let b of y){let E=g.components.find(V=>V.id===b.cmpInfo.id),B=await zt(e,b,w,e.registryPath===b.cmpInfo.filePath||he(b.cmpInfo.filePath));we(E,B);let U=m.findIndex(V=>V.id===b.cmpInfo.id);m[U].inputs=B;let I=We(b.cmpInfo.id,m,D,n,r,o,s),{elements:S,elmIndex:v,statementIndex:ce,statement:Te,variableDeclaration:ie}=await sp(e,h,b);if(I.addCmpToRegistry)S.push(op(e,I.addCmpToRegistry)),f=!0;else if(I.removeCmpFromRegistry)S.splice(v,1),f=!0;else if(I.updateRegisteredCmp){let V=ee(e,S[v],I.updateRegisteredCmp);S[v]=e.ts.factory.updateObjectLiteralExpression(V,[Ms(e,I.updateRegisteredCmp),...V.properties.slice(1)]),f=!0}if(f&&i){let V=[...h.statements];V[ce]=e.ts.factory.updateVariableStatement(Te,Te.modifiers,e.ts.factory.updateVariableDeclarationList(Te.declarationList,[e.ts.factory.updateVariableDeclaration(ie,ie.name,ie.exclamationToken,ie.type,e.ts.factory.createArrayLiteralExpression(ze(e,S)))])),h=e.ts.factory.updateSourceFile(h,V),E.exportType==="named"?h=O(e,h,{namedImports:[E.importName],importPath:E.externalImportPath?E.externalImportPath:_(e,e.registryPath,E.filePath)}):h=O(e,h,{defaultImport:E.importName,importPath:E.externalImportPath?E.externalImportPath:_(e,e.registryPath,E.filePath)});let pe=e.sdkVersion===A.gen2?"@builder.io/sdk-react":"@builder.io/react";h=O(e,h,{namedImports:["RegisteredComponent"],importPath:pe,isTypeOnly:!0}),E.acceptsChildren&&e.sdkVersion!==A.gen2&&(h=O(e,h,{namedImports:["withChildren"],importPath:"@builder.io/react"})),h=qe(e,h,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),g.components=I.components,D=I.components.filter(Et=>Et.isRegistered)}}}if(f&&i){h=Ge(e,h),h=Ke(e,h);let y=te(e,h);y=Re(y),y=await e.formatCode(e.registryPath,y),await e.writeFile(e.registryPath,y)}return g}function Ms(e,t){if(e.sdkVersion===A.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 op(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([Ms(e,t),...t.acceptsChildren&&e.sdkVersion===A.gen2?[e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())]:[]],!0),t)}async function sp(e,t,n){let r=X(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 o=r.arrayLiteralExp.elements.filter(i=>e.ts.isObjectLiteralExpression(i)),s=-1;for(let i=0;i<o.length;i++)if((await Wn(e,t,o[i]))?.id===n.cmpInfo.id){s=i;break}return{...r,elements:o,elmIndex:s}}async function Us(e){let t=[],n=await lp(e,t);return t.push(...await zr(e)),await pp(e,n),await up(e,t),t}async function Vs(e){let t=[];return t.push(...await zr(e)),await ap(e,t),t}async function ap(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),o=await e.exists(r);e.debug(`remixEnsureFigmaImportRoute, hasRoute: ${o}`);let s=await e.formatCode(r,Ks({sys:e,routePath:r,modelName:"figma-imports"}));await e.writeFile(r,s),t.push({filePath:r,modifiedType:o?"update":"create"})}async function up(e,t){let n=`$.${e.typescriptEnabled?"tsx":"jsx"}`;e.hasLocaleParam&&(e.debug("remixEnsureAppRoute, hasLocaleParam"),n=`($locale).${n}`),e.sdkVersion===A.gen2&&(n=`($slug)._index.${e.typescriptEnabled?"tsx":"jsx"}`);let r=e.join(e.routesDir,n),o=await e.exists(r);e.debug(`remixEnsureAppRoute, hasRoute: ${o}`);let s=await e.formatCode(r,Ks({sys:e,routePath:r,modelName:"page"}));await e.writeFile(r,s),t.push({filePath:r,modifiedType:o?"update":"create"})}function Ks({sys:e,routePath:t,modelName:n}){let r=e.typescriptEnabled,o=_(e,t,e.registryPath),s="",i="";r&&(s="import type { LoaderArgs } from '@remix-run/server-runtime';",i=": LoaderArgs");let a=`process.env.${dr}`,u="";return e.getFrameworks().some(l=>l.name==="@shopify/remix-oxygen")&&(a=`context.env.${dr}`,u=", context"),r&&(a+="!"),e.sdkVersion===A.gen2?`
|
|
659
|
+
`;async function Ns(e){await zr(e);let t=await e.readFile(e.registryPath);return t?Hc(e,t):{components:[],sourceFile:N(e,"")}}async function Hc(e,t){let r=N(e,t);return Yc(e,r)}async function Yc(e,t){let r=[],n=X(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(i,s)=>{let o=await Gr(e,t,i);o&&(o.nodeIndex=s,r.push(o))})),{sourceFile:t,components:fe(r)}}async function Gr(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],framework:"qwik"};for(let i of r.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(K(e,i)==="component"&&e.ts.isIdentifier(i.initializer)){let o=i.initializer.text;n.name===""&&(n.name=G(o)),n.importName=o;let a=await Ue(e,e.registryPath,t,o);if(!a)continue;n.filePath=a.filePath,n.relFilePath=a.relFilePath,n.importPath=W(e,a.filePath),n.displayFilePath=a.displayFilePath,n.exportType=a.exportType;let u=await Rs(e,a.filePath);if(u&&u.length>0)if(u.length===1)n.exportName=u[0].cmpInfo.exportName;else{let l=u.find(c=>c.cmpInfo.exportName===o);l&&(n.exportName=l.cmpInfo.exportName)}continue}}return n=ge(e,n,r),n.filePath&&n.exportName&&(n.id=await z(e,n.filePath,n.exportName)),n}async function $s(e){let t=new Set,r=async i=>{let s=await e.readdir(i);await Promise.all(s.map(async o=>{if(o.startsWith(".")||o==="node_modules")return;let a=e.join(i,o),u=e.extname(o).toLowerCase();if(u===".tsx"||u===".ts"){t.add(a);return}(await e.stat(a)).isDirectory()&&await r(a)}))};return await r(e.getAppRootDir()),await Z(e,[...t])}async function At(e,t,r,n,i,s,o,a){let u=await $s(e),[l,c,p]=await Promise.all([Is(e,u),Ns(e),mn(e)]),m=l.map(f=>f.cmpInfo),D=c.components,g={components:Be(m,D),registryPath:e.registryPath,registryDisplayPath:M(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ve(m),publicApiKey:p.envValue??void 0,devToolsVersion:e.version};if(a)return g;if(t!=null){let f=l.find(S=>S.cmpInfo.id===t);if(!f)throw new Error(`Component ${t} not found`);let h=c.sourceFile,d=g.components.find(S=>S.id===t),y=await Bs(e,f);we(d,y),t=Array.isArray(t)?t[0]:t;let F=We(t,m,D,r,n,i,s),{elements:w,elmIndex:b,statementIndex:E,statement:B,variableDeclaration:U}=await Xc(e,h,f),I=!1;if(F.addCmpToRegistry?(w.push(Qc(e,F.addCmpToRegistry)),I=!0):F.removeCmpFromRegistry?(w.splice(b,1),I=!0):F.updateRegisteredCmp&&(w[b]=ee(e,w[b],F.updateRegisteredCmp),I=!0),I&&o){let S=[...h.statements];S[E]=e.ts.factory.updateVariableStatement(B,B.modifiers,e.ts.factory.updateVariableDeclarationList(B.declarationList,[e.ts.factory.updateVariableDeclaration(U,U.name,U.exclamationToken,U.type,e.ts.factory.createArrayLiteralExpression(ze(e,w)))])),h=e.ts.factory.updateSourceFile(h,S),d.exportType==="named"?h=O(e,h,{namedImports:[d.importName],importPath:_(e,e.registryPath,d.filePath)}):h=O(e,h,{defaultImport:d.importName,importPath:_(e,e.registryPath,d.filePath)}),h=O(e,h,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-qwik",isTypeOnly:!0}),h=qe(e,h,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),h=Ge(e,h),h=Ke(e,h);let v=te(e,h);v=Re(v),v=Ps(v,Zc,"CUSTOM_COMPONENTS"),v=await e.formatCode(e.registryPath,v),await e.writeFile(e.registryPath,v)}g.components=F.components}return g}function Qc(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([e.ts.factory.createPropertyAssignment("component",e.ts.factory.createIdentifier(t.importName))],!0),t)}async function Xc(e,t,r){let n=X(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let i=n.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),s=-1;for(let o=0;o<i.length;o++)if((await Gr(e,t,i[o]))?.id===r.cmpInfo.id){s=o;break}return{...n,elements:i,elmIndex:s}}var Zc=["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 Os(e){let t=await ep(e);return{builderPageOptions:async()=>({templateContentId:"dc70f1d979ad416d8fd357137eb9ddfb",pathname:"/",title:"Builder + Qwik Demo Page"}),ensureBuilderSetup:()=>ks(t),ensureFigmaImportPage:async()=>[],getRegistryPath:()=>t.registryPath,getRegistry:n=>At(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:async n=>{},loadComponent:async n=>{let i=await At(t,n.cmpId,!1,!1,null,null,!1,!1);return{...i,component:i.components.find(s=>s.id===n.cmpId)}},registerComponent:n=>At(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>At(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>At(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>At(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>mn(t),setPublicApiKey:n=>vs(t,n.publicApiKey),getDependencies:n=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-qwik"}],getDevRunCommand:()=>"dev",getCache:()=>_e(t),setCache:n=>Me(t,n)}}async function ep(e){let t=await en(e,e.getAppRootDir(),"components");if(!t)throw new Error(`Could not find components directory within project: ${e.getAppRootDir()}`);let r=await Se(e,t),n=e.join(e.getAppRootDir(),".env");return{...e,componentsDir:t,registryPath:r,envPath:n}}async function dn(e){return await pt(e,[".env"],fn)}async function Ls(e,t){let r=await dn(e),n=await mt(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var fn="PUBLIC_BUILDER_KEY";var tp=new Set(["dist","node_modules"]);async function _s(e,t){let r=[],n=t.getSourceFiles(),i=t.getTypeChecker(),s=e.join(e.getAppRootDir(),"build");return await Promise.all(n.map(async o=>{let a=e.basename(o.fileName);if(a.startsWith(".")||a==="node_modules"||Bn(e,tp,o.fileName)||np.has(a)||a.includes("$."))return;let u=e.normalize(o.fileName);if(u===e.remixConfigPath||u===s)return;let l=await dt(e,i,u,o,u===e.registryPath);r.push(...l)})),r}var np=new Set(["root.tsx","root.ts","root.jsx","root.js","_index.tsx","_index.jsx","_index.ts","_index.js"]);async function Ms(e){await Gn(e);let t=await e.readFile(e.registryPath);return t?rp(e,t):{components:[],sourceFile:N(e,"")}}async function rp(e,t){let r=N(e,t);return op(e,r)}async function op(e,t){let r=[],n=X(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(i,s)=>{let o=await Wr(e,t,i);o&&(o.nodeIndex=s,r.push(o))})),{sourceFile:t,components:fe(r)}}async function Wr(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1,framework:"react"};e.sdkVersion===A.gen2&&jt(e,r)&&(n.acceptsChildren=!0);for(let i of r.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(K(e,i)==="component"){let o,{initializer:a}=i;if(e.ts.isIdentifier(a))o=a.text;else if(e.ts.isCallExpression(a)){(e.ts.isIdentifier(a.expression)&&a.expression.text)==="withChildren"&&(n.acceptsChildren=!0);let c=a.arguments[0];e.ts.isIdentifier(c)&&(o=c.text)}if(!o)continue;n.name===""&&(n.name=G(o)),n.importName=o;let u=await Ue(e,e.registryPath,t,o);if(!u)continue;if(n.filePath=u.filePath,n.relFilePath=u.relFilePath,await e.exists(u.filePath)?n.importPath=W(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 l=await is(e,u.filePath,e.registryPath===u.filePath||he(u.filePath));if(l&&l.length>0)if(l.length===1)n.exportName=l[0].cmpInfo.exportName;else{let c=l.find(p=>p.cmpInfo.exportName===o);c&&(n.exportName=c.cmpInfo.exportName)}}continue}}return n=ge(e,n,r),n.filePath&&n.exportName&&(n.id=await z(e,n.filePath,n.exportName,n.externalImportPath)),n}async function He(e,t,r,n,i,s,o,a){let u=await ft(e),[l,c,p]=await Promise.all([_s(e,u),Ms(e),dn(e)]),m=l.map(y=>y.cmpInfo),D=c.components,g={components:Be(m,D),registryPath:e.registryPath,registryDisplayPath:M(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ve(m),publicApiKey:p.envValue??void 0,devToolsVersion:e.version};if(a)return g.components=await Kt(e,g.components),g;let f=!1,h=c.sourceFile,d=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(d.length>0){let y=d.map(b=>{let E=l.find(B=>B.cmpInfo.id===b);if(!E)throw new Error(`Component ${b} not found`);return E}),F=Array.from(new Set(y.map(b=>b.cmpInfo.filePath))),w=await Z(e,F);for(let b of y){let E=g.components.find(V=>V.id===b.cmpInfo.id),B=await zt(e,b,w,e.registryPath===b.cmpInfo.filePath||he(b.cmpInfo.filePath));we(E,B);let U=m.findIndex(V=>V.id===b.cmpInfo.id);m[U].inputs=B;let I=We(b.cmpInfo.id,m,D,r,n,i,s),{elements:S,elmIndex:v,statementIndex:ce,statement:Te,variableDeclaration:oe}=await sp(e,h,b);if(I.addCmpToRegistry)S.push(ip(e,I.addCmpToRegistry)),f=!0;else if(I.removeCmpFromRegistry)S.splice(v,1),f=!0;else if(I.updateRegisteredCmp){let V=ee(e,S[v],I.updateRegisteredCmp);S[v]=e.ts.factory.updateObjectLiteralExpression(V,[js(e,I.updateRegisteredCmp),...V.properties.slice(1)]),f=!0}if(f&&o){let V=[...h.statements];V[ce]=e.ts.factory.updateVariableStatement(Te,Te.modifiers,e.ts.factory.updateVariableDeclarationList(Te.declarationList,[e.ts.factory.updateVariableDeclaration(oe,oe.name,oe.exclamationToken,oe.type,e.ts.factory.createArrayLiteralExpression(ze(e,S)))])),h=e.ts.factory.updateSourceFile(h,V),E.exportType==="named"?h=O(e,h,{namedImports:[E.importName],importPath:E.externalImportPath?E.externalImportPath:_(e,e.registryPath,E.filePath)}):h=O(e,h,{defaultImport:E.importName,importPath:E.externalImportPath?E.externalImportPath:_(e,e.registryPath,E.filePath)});let pe=e.sdkVersion===A.gen2?"@builder.io/sdk-react":"@builder.io/react";h=O(e,h,{namedImports:["RegisteredComponent"],importPath:pe,isTypeOnly:!0}),E.acceptsChildren&&e.sdkVersion!==A.gen2&&(h=O(e,h,{namedImports:["withChildren"],importPath:"@builder.io/react"})),h=qe(e,h,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),g.components=I.components,D=I.components.filter(Et=>Et.isRegistered)}}}if(f&&o){h=Ge(e,h),h=Ke(e,h);let y=te(e,h);y=Re(y),y=await e.formatCode(e.registryPath,y),await e.writeFile(e.registryPath,y)}return g}function js(e,t){if(e.sdkVersion===A.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 ip(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([js(e,t),...t.acceptsChildren&&e.sdkVersion===A.gen2?[e.ts.factory.createPropertyAssignment("canHaveChildren",e.ts.factory.createTrue())]:[]],!0),t)}async function sp(e,t,r){let n=X(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let i=n.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),s=-1;for(let o=0;o<i.length;o++)if((await Wr(e,t,i[o]))?.id===r.cmpInfo.id){s=o;break}return{...n,elements:i,elmIndex:s}}async function Us(e){let t=[],r=await lp(e,t);return t.push(...await Gn(e)),await pp(e,r),await up(e,t),t}async function Vs(e){let t=[];return t.push(...await Gn(e)),await ap(e,t),t}async function ap(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 s=await e.formatCode(n,Ks({sys:e,routePath:n,modelName:"figma-imports"}));await e.writeFile(n,s),t.push({filePath:n,modifiedType:i?"update":"create"})}async function up(e,t){let r=`$.${e.typescriptEnabled?"tsx":"jsx"}`;e.hasLocaleParam&&(e.debug("remixEnsureAppRoute, hasLocaleParam"),r=`($locale).${r}`),e.sdkVersion===A.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 s=await e.formatCode(n,Ks({sys:e,routePath:n,modelName:"page"}));await e.writeFile(n,s),t.push({filePath:n,modifiedType:i?"update":"create"})}function Ks({sys:e,routePath:t,modelName:r}){let n=e.typescriptEnabled,i=_(e,t,e.registryPath),s="",o="";n&&(s="import type { LoaderArgs } from '@remix-run/server-runtime';",o=": LoaderArgs");let a=`process.env.${fn}`,u="";return e.getFrameworks().some(l=>l.name==="@shopify/remix-oxygen")&&(a=`context.env.${fn}`,u=", context"),n&&(a+="!"),e.sdkVersion===A.gen2?`
|
|
660
660
|
|
|
661
661
|
import {
|
|
662
662
|
Content,
|
|
@@ -664,18 +664,18 @@ import {
|
|
|
664
664
|
getBuilderSearchParams,
|
|
665
665
|
isPreviewing,
|
|
666
666
|
} from "@builder.io/sdk-react";
|
|
667
|
-
${
|
|
667
|
+
${n?'import type { LoaderFunctionArgs } from "@remix-run/node";':""}
|
|
668
668
|
import { useLoaderData } from "@remix-run/react";
|
|
669
669
|
import { fetch as webFetch } from "@remix-run/web-fetch";
|
|
670
|
-
import { CUSTOM_COMPONENTS } from ${JSON.stringify(
|
|
670
|
+
import { CUSTOM_COMPONENTS } from ${JSON.stringify(i)};
|
|
671
671
|
|
|
672
|
-
export const loader = async ({ params, request${u} }${
|
|
672
|
+
export const loader = async ({ params, request${u} }${n?": LoaderFunctionArgs":""}) => {
|
|
673
673
|
const builderApiKey = ${a};
|
|
674
674
|
const url = new URL(request.url);
|
|
675
675
|
const urlPath = \`/\${params["slug"] || ""}\`;
|
|
676
676
|
|
|
677
677
|
const page = await fetchOneEntry({
|
|
678
|
-
model: "${
|
|
678
|
+
model: "${r}",
|
|
679
679
|
apiKey: builderApiKey,
|
|
680
680
|
options: getBuilderSearchParams(url.searchParams),
|
|
681
681
|
userAttributes: { urlPath },
|
|
@@ -694,11 +694,11 @@ export const loader = async ({ params, request${u} }${r?": LoaderFunctionArgs":"
|
|
|
694
694
|
|
|
695
695
|
// Define and render the page.
|
|
696
696
|
export default function Page() {
|
|
697
|
-
const { page, builderApiKey } = useLoaderData${
|
|
697
|
+
const { page, builderApiKey } = useLoaderData${n?"<typeof loader>":""}();
|
|
698
698
|
// Render the page content from Builder.io
|
|
699
699
|
return (
|
|
700
700
|
<Content
|
|
701
|
-
model="${
|
|
701
|
+
model="${r}"
|
|
702
702
|
apiKey={builderApiKey}
|
|
703
703
|
content={page}
|
|
704
704
|
customComponents={CUSTOM_COMPONENTS}
|
|
@@ -708,18 +708,18 @@ export default function Page() {
|
|
|
708
708
|
`:`
|
|
709
709
|
import { BuilderComponent, builder } from "@builder.io/react";
|
|
710
710
|
import { useLoaderData } from "@remix-run/react";
|
|
711
|
-
import { CUSTOM_COMPONENTS } from ${JSON.stringify(
|
|
711
|
+
import { CUSTOM_COMPONENTS } from ${JSON.stringify(i)};
|
|
712
712
|
${s}
|
|
713
713
|
|
|
714
714
|
// Fetch contents of the page
|
|
715
|
-
export const loader = async ({ params, request, context }${
|
|
715
|
+
export const loader = async ({ params, request, context }${o}) => {
|
|
716
716
|
// Initialize the Builder client and pass in your Public API Key
|
|
717
717
|
const builderApiKey = ${a};
|
|
718
718
|
builder.init(builderApiKey);
|
|
719
719
|
|
|
720
720
|
// Fetch data content from Builder.io based on the URL path
|
|
721
721
|
const page = await builder
|
|
722
|
-
.get("${
|
|
722
|
+
.get("${r}", {
|
|
723
723
|
userAttributes: {
|
|
724
724
|
urlPath: "/" + params["*"],
|
|
725
725
|
},
|
|
@@ -746,27 +746,27 @@ export const loader = async ({ params, request, context }${i}) => {
|
|
|
746
746
|
// Define and render the page.
|
|
747
747
|
export default function Page() {
|
|
748
748
|
// Use the useLoaderData hook to get the Page data from "loader" above.
|
|
749
|
-
const { page, builderApiKey } = useLoaderData${
|
|
749
|
+
const { page, builderApiKey } = useLoaderData${n?"<typeof loader>":""}();
|
|
750
750
|
|
|
751
751
|
// Render the page content from Builder.io
|
|
752
752
|
return (
|
|
753
753
|
<BuilderComponent
|
|
754
754
|
customComponents={CUSTOM_COMPONENTS}
|
|
755
755
|
apiKey={builderApiKey}
|
|
756
|
-
model="${
|
|
756
|
+
model="${r}"
|
|
757
757
|
content={page}
|
|
758
758
|
/>
|
|
759
759
|
);
|
|
760
760
|
}
|
|
761
761
|
|
|
762
|
-
${
|
|
762
|
+
${n?`
|
|
763
763
|
declare global {
|
|
764
764
|
interface Env {
|
|
765
|
-
${
|
|
765
|
+
${fn}: string;
|
|
766
766
|
}
|
|
767
767
|
}
|
|
768
768
|
`:""}
|
|
769
|
-
`}async function lp(e,t){let
|
|
769
|
+
`}async function lp(e,t){let n=e.typescriptEnabled?"tsx":"jsx",i=e.join(e.componentsDir,"Counter"),s=e.join(i,`Counter.${n}`),o=e.join(i,"styles.module.css"),{component:a,styles:u}=cp(e),l=await e.exists(s);if(e.debug(`remixEnsureCounterComponent, hasCounterCmp: ${l}`),!l){let p=await e.formatCode(s,a);await e.writeFile(s,p),t.push({filePath:s,modifiedType:"create"})}let c=await e.exists(o);return e.debug(`remixEnsureCounterComponent, hasCounterStyles: ${c}`),c||(await e.writeFile(o,u),t.push({filePath:o,modifiedType:"create"})),s}function cp(e){let t=e.typescriptEnabled,r=`
|
|
770
770
|
import { useState } from "react";
|
|
771
771
|
import styles from "./styles.module.css";
|
|
772
772
|
${t?`
|
|
@@ -799,7 +799,7 @@ function Counter({ initialCount = 99 }${t?": CounterProps":""}) {
|
|
|
799
799
|
}
|
|
800
800
|
|
|
801
801
|
export default Counter;
|
|
802
|
-
`.trimStart(),
|
|
802
|
+
`.trimStart(),n=`
|
|
803
803
|
.counter {
|
|
804
804
|
margin: 32px auto;
|
|
805
805
|
display: flex;
|
|
@@ -829,34 +829,34 @@ export default Counter;
|
|
|
829
829
|
font-size: 42px;
|
|
830
830
|
text-align: center;
|
|
831
831
|
}
|
|
832
|
-
`.trimStart();return{component:
|
|
832
|
+
`.trimStart();return{component:r,styles:n}}async function pp(e,t){let n=(await He(e,null,!1,!1,null,null,!1,!1)).components.find(i=>i.filePath===t);n&&await He(e,n.id,!0,!1,null,null,!0,!1)}async function Gn(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,mp(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}function mp(e){let t=e.sdkVersion===A.gen2;return e.typescriptEnabled?`import type { RegisteredComponent } from ${t?'"@builder.io/sdk-react"':'"@builder.io/react"'};
|
|
833
833
|
|
|
834
834
|
export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
835
835
|
];`:`export const CUSTOM_COMPONENTS = [
|
|
836
836
|
];
|
|
837
|
-
`}async function zs(e){let t=await dp(e);return{builderPageOptions:async()=>{let
|
|
838
|
-
`;
|
|
839
|
-
`,
|
|
837
|
+
`}async function zs(e){let t=await dp(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:()=>Us(t),ensureFigmaImportPage:()=>Vs(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>He(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:n=>{t.addExternalPackage(n)},loadComponent:async n=>{let i=await He(t,n.cmpId,!1,!1,null,null,!1,!1);return{...i,component:i.components.find(s=>s.id===n.cmpId)}},registerComponent:n=>He(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>He(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>He(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>He(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>dn(t),setPublicApiKey:n=>Ls(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===A.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:()=>_e(t),setCache:n=>Me(t,n)}}async function dp(e){let t=await gp(e),r=e.getAppRootDir(),n=await Dp(e),i=e.dirname(n),s=e.join(i,"components"),o=await ye(e),a=await Se(e,i),u={},l={...e,registryPath:a,remixConfigPath:t,typescriptEnabled:o,appDir:i,componentsDir:s,routesDir:n,hasLocaleParam:await fp(e,n),addExternalPackage:c=>{u[e.join(r,c,"index.ts")]=`export * from "${c}";`},readFileSync:c=>u[c]??e.readFileSync(c),existsSync:c=>!!u[c]||e.existsSync(c),readdirSync:c=>{let p=e.readdirSync(c);return c===r?[...p,...Object.keys(u).map(m=>m.slice(r.length+1))]:p},readdir:async c=>{let p=await e.readdir(c);return c===r?[...p,...Object.keys(u).map(m=>m.slice(r.length+1))]:p}};return e.sdkVersion?l.sdkVersion=e.sdkVersion:l.sdkVersion=await Wt(l),l}async function fp(e,t){return(await e.readdir(t)).some(n=>n.startsWith("($locale)."))}async function gp(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}if(e.ignoreMissingConfig)return"";throw new Error(`Could not find Remix config file. Searched for ${t.join(", ")} in "${e.getAppRootDir()}".`)}async function Dp(e){let t=await en(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 gn(e){let t=[".env"],r=e.configType==="vite"?Dn:Wn;return await pt(e,t,r)}async function Gs(e,t){let r=await gn(e),n=await mt(e,r.file,r.envKey,t);return{...r,modifiedType:n}}var Dn="VITE_PUBLIC_BUILDER_KEY",Wn="PUBLIC_BUILDER_KEY";function Ws(e,t){let r=`Builder.registerComponent(
|
|
838
|
+
`;r+=` ${t.importName},
|
|
839
|
+
`,r+=` {
|
|
840
840
|
name: "${t.name}",
|
|
841
841
|
}
|
|
842
|
-
`,
|
|
842
|
+
`,r+=");";let n=Rn(e,r);return qr(e,n,t)}function qr(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 s=i[1];return e.ts.isObjectLiteralExpression(s)?(i[1]=ee(e,s,r),e.ts.factory.updateExpressionStatement(t,e.ts.factory.updateCallExpression(n,n.expression,n.typeArguments,i))):t}async function qs(e){let t=await e.readFile(e.registryPath);return t?hp(e,t):{components:[],sourceFile:N(e,"")}}async function hp(e,t){let r=N(e,t);return e.sdkVersion===A.gen2?yp(e,r):Cp(e,r)}async function Cp(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 s=i.expression;if(!e.ts.isCallExpression(s))continue;let o=s.expression;if(!e.ts.isPropertyAccessExpression(o))continue;let a=o.expression;if(!e.ts.isIdentifier(a)||a.text!=="Builder"||o.name.text!=="registerComponent")continue;let l=s.arguments;if(l.length<2)continue;let c=l[1];if(!e.ts.isObjectLiteralExpression(c))continue;let p=l[0];if(e.ts.isIdentifier(p)){let m=await xp(e,t,n,p,c,!1);m&&r.push(m);continue}}return{sourceFile:t,components:fe(r)}}async function xp(e,t,r,n,i,s){let o={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],nodeIndex:r,acceptsChildren:s,framework:"react"},a=t.statements.filter(l=>e.ts.isImportDeclaration(l)),u=a.find(l=>l.importClause&&l.importClause.name?.text===n.text);if(u){let l=u.moduleSpecifier;if(!e.ts.isStringLiteral(l))return null;o.filePath=await Jr(e,l.text),o.relFilePath=e.relative(e.getAppRootDir(),o.filePath),o.importPath=W(e,o.filePath),o.name=be(e,o.filePath),o.importName=n.text,o.exportName="default",o.exportType="default"}else{let l=a.find(m=>!m.importClause||!m.importClause.namedBindings||!e.ts.isNamedImports(m.importClause.namedBindings)?!1:m.importClause.namedBindings.elements.some(D=>D.name.text===n.text));if(!l)return null;let c=l.moduleSpecifier;if(!e.ts.isStringLiteral(c))return null;let p=await Jr(e,c.text);o.filePath=await Jr(e,c.text),o.relFilePath=e.relative(e.getAppRootDir(),o.filePath),await e.exists(p)?o.importPath=W(e,o.filePath):(o.externalImportPath=c.text,o.importPath=o.externalImportPath),o.name=G(n.text),o.importName=n.text,o.exportName=n.text,o.exportType="named"}return o=ge(e,o,i),o.displayFilePath=M(e,o.filePath),o.filePath&&o.exportName&&(o.id=await z(e,o.filePath,o.exportName,o.externalImportPath)),o}function Jr(e,t){return pn(e,e.normalize(e.resolve(e.dirname(e.registryPath),t)))}async function yp(e,t){let r=[],n=X(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(i,s)=>{let o=await Hr(e,t,i);o&&(o.nodeIndex=s,r.push(o))})),{sourceFile:t,components:fe(r)}}async function Hr(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],acceptsChildren:!1,framework:"react"};jt(e,r)&&(n.acceptsChildren=!0);for(let s of r.properties){if(!e.ts.isPropertyAssignment(s)||!e.ts.isIdentifier(s.name))continue;if(K(e,s)==="component"){let a,{initializer:u}=s;if(e.ts.isIdentifier(u)&&(a=u.text),!a)continue;n.name===""&&(n.name=G(a)),n.importName=a;let l=await Ue(e,e.registryPath,t,a);if(!l)continue;n.filePath=l.filePath,n.relFilePath=l.relFilePath,await e.exists(l.filePath)?n.importPath=W(e,l.filePath):(n.externalImportPath=l.importPath,n.importPath=n.externalImportPath),n.displayFilePath=l.displayFilePath,n.exportType=l.exportType;let c=t.statements.filter(m=>e.ts.isImportDeclaration(m)),p=c.find(m=>m.importClause&&m.importClause.name?.text===a);if(p){let m=p.moduleSpecifier;if(!e.ts.isStringLiteral(m))return null;n.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(f=>f.name.text===a));if(!m)return null;let D=m.moduleSpecifier;if(!e.ts.isStringLiteral(D))return null;n.exportName=a}continue}}return n=ge(e,n,r),n.filePath&&n.exportName&&(n.id=await z(e,n.filePath,n.exportName,n.externalImportPath)),n}async function Ye(e,t,r,n,i,s,o,a){let u=await ft(e),[l,c,p,m]=await Promise.all([ss(e,u),qs(e),ye(e),gn(e)]),D=l.map(F=>F.cmpInfo),g=c.components,f={components:Be(D,g),registryPath:e.registryPath,registryDisplayPath:M(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ve(D),publicApiKey:m.envValue??void 0,devToolsVersion:e.version};if(a)return f.components=await Kt(e,f.components),f;let h=!1,d=c.sourceFile,y=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(y.length>0){let F=y.map(E=>{let B=l.find(U=>U.cmpInfo.id===E);if(!B)throw new Error(`Component ${E} not found`);return B}),w=Array.from(new Set(F.map(E=>E.cmpInfo.filePath))),b=await Z(e,w);for(let E of F){let B=f.components.find(v=>v.id===E.cmpInfo.id),U=await zt(e,E,b,e.registryPath===E.cmpInfo.filePath||he(E.cmpInfo.filePath));we(B,U);let I=D.findIndex(v=>v.id===E.cmpInfo.id);D[I].inputs=U;let S=We(E.cmpInfo.id,D,g,r,n,i,s);if(e.sdkVersion===A.gen2){let{elements:v,elmIndex:ce,statementIndex:Te,statement:oe,variableDeclaration:V}=await Ep(e,d,E);if(S.addCmpToRegistry)v.push(Fp(e,S.addCmpToRegistry)),h=!0;else if(S.removeCmpFromRegistry)v.splice(ce,1),h=!0;else if(S.updateRegisteredCmp){let pe=ee(e,v[ce],S.updateRegisteredCmp),Et=e.ts.factory.createIdentifier(S.updateRegisteredCmp.importName);v[ce]=e.ts.factory.updateObjectLiteralExpression(pe,[e.ts.factory.createPropertyAssignment("component",Et),...pe.properties.slice(1)]),h=!0}if(h&&o){let pe=[...d.statements];pe[Te]=e.ts.factory.updateVariableStatement(oe,oe.modifiers,e.ts.factory.updateVariableDeclarationList(oe.declarationList,[e.ts.factory.updateVariableDeclaration(V,V.name,V.exclamationToken,V.type,e.ts.factory.createArrayLiteralExpression(ze(e,v)))])),d=e.ts.factory.updateSourceFile(d,pe),d=Js(e,S,d),d=O(e,d,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-react",isTypeOnly:!0}),d=qe(e,d,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),f.components=S.components,g=S.components.filter(Et=>Et.isRegistered)}}else{let v=[...d.statements];S.addCmpToRegistry?(v.push(Ws(e,S.addCmpToRegistry)),h=!0):S.removeCmpFromRegistry?(v.splice(S.nodeIndex,1),h=!0):S.updateRegisteredCmp&&(v[S.nodeIndex]=qr(e,v[S.nodeIndex],S.updateRegisteredCmp),h=!0),h&&o&&(d=e.ts.factory.updateSourceFile(d,v),d=O(e,d,{namedImports:["Builder","builder"],importPath:"@builder.io/react"}),d=Js(e,S,d),B?.acceptsChildren&&(d=O(e,d,{namedImports:["withChildren"],importPath:"@builder.io/react"})),f.components=S.components,g=S.components.filter(ce=>ce.isRegistered))}}}if(h&&o){d=Ge(e,d),d=Ke(e,d);let F=te(e,d);F=Re(F),F=await e.formatCode(e.registryPath,F),await e.writeFile(e.registryPath,F)}return f}async function Ep(e,t,r){let n=X(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let i=n.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),s=-1;for(let o=0;o<i.length;o++)if((await Hr(e,t,i[o]))?.id===r.cmpInfo.id){s=o;break}return{...n,elements:i,elmIndex:s}}function Fp(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 Js(e,t,r){let n=t.addCmpToRegistry||t.updateRegisteredCmp;if(n){let i=n.externalImportPath?n.externalImportPath:_(e,e.registryPath,n.filePath);n.exportType==="default"?r=O(e,r,{defaultImport:n.importName,importPath:i}):n.exportType==="named"&&(r=O(e,r,{namedImports:[n.importName],importPath:i}))}return r}async function Hs(e){let t=[],r=await wp(e,t);if(await Xs(e,t,r),!await e.exists(e.builderComponentPath)){let n=await e.formatCode(e.builderComponentPath,Qs(e,e.builderComponentPath));await e.writeFile(e.builderComponentPath,n),t.push({filePath:e.builderComponentPath,modifiedType:"create"})}return t}async function Ys(e){let t=[];await Xs(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,Qs(e,n,"figma-imports"));await e.writeFile(n,i),t.push({filePath:n,modifiedType:"create"})}return t}function Qs(e,t,r="page"){let n=e.typescriptEnabled;return e.sdkVersion===A.gen2?`
|
|
843
843
|
import React from "react";
|
|
844
844
|
import {
|
|
845
845
|
Content,
|
|
846
846
|
fetchOneEntry,
|
|
847
847
|
getBuilderSearchParams,
|
|
848
848
|
isPreviewing,
|
|
849
|
-
${
|
|
849
|
+
${n?"type BuilderContent,":""}
|
|
850
850
|
} from "@builder.io/sdk-react";
|
|
851
851
|
import { CUSTOM_COMPONENTS } from ${JSON.stringify(_(e,t,e.registryPath))};
|
|
852
852
|
|
|
853
853
|
// Builder Public API Key set in .env file
|
|
854
|
-
const BUILDER_API_KEY = ${e.configType==="vite"?`import.meta.env.${
|
|
855
|
-
const MODEL_NAME = "${
|
|
854
|
+
const BUILDER_API_KEY = ${e.configType==="vite"?`import.meta.env.${Dn};`:`${Wn};`}
|
|
855
|
+
const MODEL_NAME = "${r}";
|
|
856
856
|
|
|
857
857
|
export default function BuilderPage() {
|
|
858
858
|
const [notFound, setNotFound] = React.useState(false);
|
|
859
|
-
const [content, setContent] = React.useState${
|
|
859
|
+
const [content, setContent] = React.useState${n?"<BuilderContent | null>":""}(null);
|
|
860
860
|
|
|
861
861
|
// get the page content from Builder
|
|
862
862
|
React.useEffect(() => {
|
|
@@ -904,7 +904,7 @@ import { BuilderComponent, builder, useIsPreviewing } from "@builder.io/react";
|
|
|
904
904
|
import ${JSON.stringify(_(e,t,e.registryPath))};
|
|
905
905
|
|
|
906
906
|
// Builder Public API Key set in .env file
|
|
907
|
-
${e.configType==="vite"?`builder.init(import.meta.env.${
|
|
907
|
+
${e.configType==="vite"?`builder.init(import.meta.env.${Dn}${n?"!":""})`:`builder.init("${Wn}")`}
|
|
908
908
|
|
|
909
909
|
export default function BuilderPage() {
|
|
910
910
|
const isPreviewingInBuilder = useIsPreviewing();
|
|
@@ -915,7 +915,7 @@ export default function BuilderPage() {
|
|
|
915
915
|
React.useEffect(() => {
|
|
916
916
|
async function fetchContent() {
|
|
917
917
|
const content = await builder
|
|
918
|
-
.get("${
|
|
918
|
+
.get("${r}", {
|
|
919
919
|
url: window.location.pathname,
|
|
920
920
|
})
|
|
921
921
|
.promise();
|
|
@@ -945,11 +945,11 @@ export default function BuilderPage() {
|
|
|
945
945
|
return (
|
|
946
946
|
<>
|
|
947
947
|
{/* Render the Builder page */}
|
|
948
|
-
<BuilderComponent model="${
|
|
948
|
+
<BuilderComponent model="${r}" content={content} />
|
|
949
949
|
</>
|
|
950
950
|
);
|
|
951
951
|
}
|
|
952
|
-
`.trimStart()}async function Xs(e,t,
|
|
952
|
+
`.trimStart()}async function Xs(e,t,r){if(!await e.exists(e.registryPath)){if(e.sdkVersion===A.gen2){let s=Sp(e);await e.writeFile(e.registryPath,s)}else await e.writeFile(e.registryPath,"");t.push({filePath:e.registryPath,modifiedType:"create"})}if(!r)return;let i=(await Ye(e,null,!1,!1,null,null,!1,!1)).components.find(s=>s.filePath===r);i&&await Ye(e,i.id,!0,!1,null,null,!0,!1)}async function wp(e,t){let n=e.typescriptEnabled?"tsx":"jsx",i=e.join(e.componentsDir,"Counter"),s=e.join(i,`Counter.${n}`),o=e.join(i,"styles.module.css"),{component:a,styles:u}=bp(e);if(!await e.exists(s)){let l=await e.formatCode(s,a);await e.writeFile(s,l),t.push({filePath:s,modifiedType:"create"})}return await e.exists(o)||(await e.writeFile(o,u),t.push({filePath:o,modifiedType:"create"})),s}function bp(e){let t=e.typescriptEnabled,r=`
|
|
953
953
|
"use client"
|
|
954
954
|
import React, { useState } from "react";
|
|
955
955
|
import styles from "./styles.module.css";
|
|
@@ -983,7 +983,7 @@ function Counter({ initialCount = 99 }${t?": CounterProps":""}) {
|
|
|
983
983
|
}
|
|
984
984
|
|
|
985
985
|
export default Counter;
|
|
986
|
-
`.trimStart(),
|
|
986
|
+
`.trimStart(),n=`
|
|
987
987
|
.counter {
|
|
988
988
|
margin: 32px auto;
|
|
989
989
|
display: flex;
|
|
@@ -1012,18 +1012,18 @@ export default Counter;
|
|
|
1012
1012
|
font-size: 42px;
|
|
1013
1013
|
text-align: center;
|
|
1014
1014
|
}
|
|
1015
|
-
`.trimStart();return{component:
|
|
1015
|
+
`.trimStart();return{component:r,styles:n}}function Sp(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-react";
|
|
1016
1016
|
|
|
1017
1017
|
export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
1018
1018
|
];`:`export const CUSTOM_COMPONENTS = [
|
|
1019
1019
|
];
|
|
1020
|
-
`}async function Zs(e){let t=await vp(e);return{builderPageOptions:async()=>({templateContentId:"2e36438034894a8abf279ea9e6d3596f",pathname:"/builder-demo",title:"Builder + React Demo Page"}),ensureBuilderSetup:()=>Hs(t),ensureFigmaImportPage:()=>Ys(t),getRegistryPath:()=>t.registryPath,getRegistry:
|
|
1020
|
+
`}async function Zs(e){let t=await vp(e);return{builderPageOptions:async()=>({templateContentId:"2e36438034894a8abf279ea9e6d3596f",pathname:"/builder-demo",title:"Builder + React Demo Page"}),ensureBuilderSetup:()=>Hs(t),ensureFigmaImportPage:()=>Ys(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>Ye(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:n=>{t.addExternalPackage(n)},loadComponent:async n=>{let i=await Ye(t,n.cmpId,!1,!1,null,null,!1,!1);return{...i,component:i.components.find(s=>s.id===n.cmpId)}},registerComponent:n=>Ye(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>Ye(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>Ye(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>Ye(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>gn(t),setPublicApiKey:n=>Gs(t,n.publicApiKey),getDependencies:n=>n.sdkVersion===A.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:()=>_e(t),setCache:n=>Me(t,n)}}async function vp(e){let t=await Ap(e),r=e.getAppRootDir(),n=e.join(r,"src"),i=await ye(e),s={},o={...e,srcDir:null,builderComponentPath:"",componentsDir:"",registryPath:"",reactConfigPath:t,typescriptEnabled:i,configType:"",addExternalPackage:a=>{s[e.join(r,a,"index.ts")]=`export * from "${a}";`},readFileSync:a=>s[a]??e.readFileSync(a),existsSync:a=>!!s[a]||e.existsSync(a),readdirSync:a=>{let u=e.readdirSync(a);return a===r?[...u,...Object.keys(s).map(l=>l.slice(r.length+1))]:u},readdir:async a=>{let u=await e.readdir(a);return a===r?[...u,...Object.keys(s).map(l=>l.slice(r.length+1))]:u}};return e.sdkVersion?o.sdkVersion=e.sdkVersion:o.sdkVersion=await Wt(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 Se(e,n),o.builderComponentPath=e.join(o.srcDir,`builder-page.${i?"tsx":"jsx"}`)):(o.componentsDir=e.join(r,"components"),o.registryPath=await Se(e,r),o.builderComponentPath=e.join(r,`builder-page.${i?"tsx":"jsx"}`)),o}async function Ap(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 hn(e){return await Pp(e,["environment.ts"],qn)}async function ea(e,t){let r=await hn(e),n=await Bp(e,r.file,r.envKey,t);return{...r,modifiedType:n}}async function Pp(e,t,r){let n={envKey:r,envValue:null,file:""};for(let i of t){let s=e.join(e.getAppRootDir(),"src","environments",i),o=await Tp(e,s);if(typeof o=="string"&&o.length>0&&o!=="YOUR_API_KEY")return n.envValue=o,n.file=s,n}return n.file=e.join(e.getAppRootDir(),"src","environments",t[t.length-1]),n}async function Tp(e,t){let r=await e.readFile(t);return r?Ip(e,r):""}function Ip(e,t){let r=N(e,t),n="",s=Ut(e,r,"environment");if(s&&s.statement.declarationList.declarations.length>0){let a=s.statement.declarationList.declarations[0].initializer;a&&e.ts.isObjectLiteralExpression(a)&&a.properties.forEach(u=>{e.ts.isPropertyAssignment(u)&&e.ts.isIdentifier(u.name)&&u.name.text===qn&&e.ts.isStringLiteral(u.initializer)&&(n=u.initializer.text)})}return n}async function Rp(e,t,r,n){let i=N(e,t),o=Ut(e,i,"environment");if(o&&o.statement.declarationList.declarations.length>0){let a=o.statement.declarationList,u=a.declarations[0],l=u.initializer;if(l&&e.ts.isObjectLiteralExpression(l)){let c=e.ts.factory.createPropertyAssignment(e.ts.factory.createIdentifier(r),e.ts.factory.createStringLiteral(n)),p=e.ts.factory.createNodeArray([...l.properties,c]),m=e.ts.factory.updateObjectLiteralExpression(l,p),D=e.ts.factory.updateVariableDeclaration(u,u.name,u.exclamationToken,u.type,m),g=e.ts.factory.updateVariableDeclarationList(a,[D]);return e.ts.factory.updateVariableStatement(o.statement,o.statement.modifiers,g)}return null}return null}async function Bp(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 s=await Rp(e,i,r,n);if(s){let o=te(e,s),a=await e.formatCode(t,o);await e.writeFile(t,a)}return"update"}else{e.debug(`Creating new env file with "${r}" at ${t}`);let s=`
|
|
1021
1021
|
// https://www.builder.io/c/docs/using-your-api-key
|
|
1022
1022
|
export const environment = {
|
|
1023
1023
|
production: false,
|
|
1024
|
-
builderApiKey: "${
|
|
1024
|
+
builderApiKey: "${n}",
|
|
1025
1025
|
};
|
|
1026
|
-
`.trimStart(),i=await e.formatCode(t,s);return await e.writeFile(t,i),"create"}return null}var Wr="builderApiKey";async function ra(e,t){let n=[],r=t.getSourceFiles(),o=t.getTypeChecker();return await Promise.all(r.map(async s=>{let i=e.basename(s.fileName);if($p(e,s.fileName)||i.startsWith(".")||i==="node_modules"||kp.has(i))return;let a=e.normalize(s.fileName);if(a===e.registryPath)return;let u=await qr(e,o,a,s);n.push(...u)})),n.sort((s,i)=>s.cmpInfo.name.localeCompare(i.cmpInfo.name))}var kp=new Set([]),Np=new Set(["node_modules"]);function $p(e,t){for(let n of Np)if(e.dirname(t).includes(n))return!0;return!1}async function na(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 Op(e,t,r)}return null}function Op(e,t,n){let r=N(e,n);return qr(e,null,t,r)}async function qr(e,t,n,r){let o=[],s={};n=e.normalize(n);let i=r.statements.filter(c=>e.ts.isClassDeclaration(c)&&Up(e,c)),a=r.statements.find(c=>e.ts.isImportDeclaration(c)&&e.ts.isStringLiteral(c.moduleSpecifier)&&c.moduleSpecifier.text==="@angular/core");if(a&&e.ts.isImportDeclaration(a)){let c=a.importClause?.namedBindings;if(c&&e.ts.isNamedImports(c)){let p=c.elements.find(m=>(m.propertyName??m.name).text==="input");p&&(s.inputSignalImportName=p.name.text)}}let u=await _p(e,t,n,r),l=Vp(e,r);return await Promise.all(i.map(async c=>{let p=await Lp(e,t,n,c,l,s);o.push(...p)})),o.push(...u),o}async function Yn(e,t,n){if(t.node.fnNode){let{sourceFile:r,typeChecker:o}=await Nt(e,t.cmpInfo.filePath,n),i=(await qr(e,o,t.cmpInfo.filePath,r)).find(a=>a.cmpInfo.id===t.cmpInfo.id);if(!i)throw new Error(`Could not find component ${t.cmpInfo.name} in ${t.cmpInfo.filePath}`);return i.cmpInfo.inputs}return[]}async function ia(e,t,n){let r=await Z(e,n.map(i=>i.filePath)),o=r.getTypeChecker();return await Promise.all(n.filter(i=>!(i.name.endsWith("Page")||i.name.endsWith("Module")||i.name==="AppComponent")).map(async i=>{if(!i.isRegistered){let a=r.getSourceFile(i.filePath);if(a){let l=(await qr(e,o,i.filePath,a)).find(c=>c.cmpInfo.id===i.id);if(l){i.inputs=St(e,o,l.node.fnNode);let c=t.find(p=>p.cmpInfo.id===i.id);if(c){let p=await Yn(e,c,r);we(i,p)}}}}return i}))}async function Lp(e,t,n,r,o,s){let i=[],a=e.relative(e.getAppRootDir(),n),u=W(e,n),l=r.name?.text;if(!l)return i;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",D=[];return r.members.forEach(g=>{if(e.ts.isPropertyDeclaration(g)||e.ts.isGetAccessor(g)||e.ts.isSetAccessor(g)){let d=(e.ts.getDecorators(g)??[]).find(F=>jp(e,F))!==void 0&&e.ts.isIdentifier(g.name),y=s?.inputSignalImportName!==void 0&&e.ts.isIdentifier(g.name)&&Mp(e,g,s.inputSignalImportName);if(d||y){let F="any";if(e.ts.isSetAccessor(g))F=ta(e,g.parameters[0].type);else if(g.type&&t){let b=t.getTypeAtLocation(g.type);F=t.typeToString(b)}else F=ta(e,g.type);let w={name:g.name.text,type:o[F]?"string":F};o[F]&&(w.enum=o[F]),D.push(w)}}}),i.push({cmpInfo:{id:await z(e,n,l),displayFilePath:j(e,n),name:G(l),inputs:D,exportName:p,exportType:m,importName:l,filePath:n,relFilePath:a,importPath:u,meta:{...zp(e,r)},framework:"angular"},node:{name:l,fnNode:r,deps:void 0}}),i}async function _p(e,t,n,r){let o=[],s=e.relative(e.getAppRootDir(),n),i=W(e,n);for(let a of r.statements)if(e.ts.isExportDeclaration(a)&&a.exportClause&&e.ts.isNamedExports(a.exportClause))for(let u of a.exportClause.elements){let l=u.name?.text;if(!l)continue;let c=l,p="named",m=[];if(t){let f=t.getSymbolAtLocation(u.name);if(f){let h=t.getDeclaredTypeOfSymbol(f);t.getPropertiesOfType(h).forEach(y=>{let F=y.getDeclarations();F&&F.forEach(w=>{if(e.ts.isPropertyDeclaration(w)){let b=t.getTypeAtLocation(w),E={name:y.getName(),type:Kp(e,t,b)};m.push(E)}})})}}let D=e.ts.isExportSpecifier(u)&&u.parent?u.parent.parent:void 0,g;if(D){let f=D.moduleSpecifier;if(f&&e.ts.isStringLiteral(f)){let h=t?.getSymbolAtLocation(f);if(h&&h.declarations&&h.declarations.length>0){let d=h.declarations[0];(!e.ts.isSourceFile(d)||e.ts.isSourceFile(d)&&d.fileName.includes("node_modules"))&&(g=f.text)}}}o.push({cmpInfo:{id:await z(e,n,l,g),displayFilePath:j(e,n),name:G(l),inputs:m,exportName:c,exportType:p,importName:l,filePath:n,relFilePath:s,importPath:g||i,externalImportPath:g,framework:"angular"},node:{name:l,fnNode:u,deps:void 0}})}else if(e.ts.isExportDeclaration(a)&&!a.exportClause&&a.moduleSpecifier&&e.ts.isStringLiteral(a.moduleSpecifier)){let u=a.moduleSpecifier.text;if(t)try{let l=t.getSymbolAtLocation(a.moduleSpecifier);if(l&&l.exports){let c=t.getExportsOfModule(l);for(let p of c)if(p.flags&e.ts.SymbolFlags.Class){let m=p.getName();if(m.startsWith("_"))continue;o.push({cmpInfo:{id:await z(e,n,m,u),displayFilePath:j(e,n),name:G(m),inputs:[],exportName:m,exportType:"named",importName:m,filePath:n,relFilePath:s,importPath:u,externalImportPath:u,framework:"angular"},node:{name:m,fnNode:a,deps:void 0}})}}}catch(l){console.warn(`Error processing star export from ${u}:`,l)}}return o}function jp(e,t){return oa(e,t,"Input")}function Mp(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 oa(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 Up(e,t){return!!e.ts.getDecorators(t)?.some(o=>e.ts.isCallExpression(o.expression)&&e.ts.isIdentifier(o.expression.expression)&&o.expression.expression.text==="Component")}function ta(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 Vp(e,t){let n={};return e.ts.forEachChild(t,r=>{e.ts.isTypeAliasDeclaration(r)&&e.ts.isUnionTypeNode(r.type)&&r.type.types.every(o=>e.ts.isLiteralTypeNode(o)&&e.ts.isStringLiteral(o.literal))&&(n[r.name.text]=r.type.types.map(o=>o.literal.text))}),n}function Kp(e,t,n){let r=t.typeToString(n);if(r==="any"){let o=n.getSymbol();if(o){let s=o.getDeclarations();if(s&&s.length>0){let i=s[0];if(e.ts.isVariableDeclaration(i)){let a=i.type;a&&(r=t.typeToString(t.getTypeAtLocation(a)))}}}}return r}function zp(e,t){let{getDecorators:n,isCallExpression:r,isIdentifier:o,isObjectLiteralExpression:s,isPropertyAssignment:i,isStringLiteral:a,SyntaxKind:u}=e.ts,l,c;return n(t)?.forEach(m=>{if(oa(e,m,"Component")){let{expression:D}=m;if(r(D)){let[g]=D.arguments;s(g)&&g.properties.forEach(f=>{i(f)&&o(f.name)&&(f.name.escapedText==="selector"&&a(f.initializer)&&(l=f.initializer.text),f.name.escapedText==="standalone"&&(c=f.initializer.kind===u.TrueKeyword))})}}}),{selector:l,standalone:c}}async function Jr(e,t,n){let r=e.typescriptEnabled?".ts":".js",o=`app.module${r}`,s=e.join(e.appDir,o),i=await e.readFile(s);if(!i){e.Sentry?.captureException(new Error(`Unable to read app.module.${r} at ${s}`),{extra:{appModuleCode:i,appModulePath:s}});return}let a=await Gp(e,s,t,n,i);if(!a){e.Sentry?.captureException(new Error(`Unable to update app.module.${r} at ${s}`),{extra:{appModuleCode:i,appModulePath:s}});return}return await e.writeFile(s,a),s}async function Gp(e,t,n,r,o){let s=o,i=N(e,o),a=_(e,t,r);i=O(e,i,{namedImports:[n],importPath:a}),i=O(e,i,{namedImports:["Content"],importPath:"@builder.io/sdk-angular"});let u=[];for(let l of i.statements)if(e.ts.isClassDeclaration(l)&&l.name?.text==="AppModule"){let c=Wp(e,n,l);u.push(c)}else u.push(l);return i=e.ts.factory.updateSourceFile(i,u),s=te(e,i),s}function Wp(e,t,n){let r=e.ts.getDecorators(n);if(r){for(let o of r)if(e.ts.isCallExpression(o.expression)&&e.ts.isIdentifier(o.expression.expression)&&o.expression.expression.text==="NgModule"){let s=o.expression.arguments;if(s.length===1&&e.ts.isObjectLiteralExpression(s[0])){let i=sa(e,s[0],"declarations",t);if(i){let a=sa(e,i,"imports","Content");if(a&&(i=a),i){let u=e.ts.factory.updateDecorator(o,e.ts.factory.updateCallExpression(o.expression,o.expression.expression,o.expression.typeArguments,[i])),c=[...r.map(p=>p===o?u:p),...e.ts.getModifiers(n)||[]];return e.ts.factory.updateClassDeclaration(n,c,n.name,n.typeParameters,n.heritageClauses,n.members)}}}}}return n}function sa(e,t,n,r){let o=[...t.properties],s=o.findIndex(a=>K(e,a)===n);if(s>-1){let a=o[s];if(e.ts.isPropertyAssignment(a)&&a.initializer&&e.ts.isArrayLiteralExpression(a.initializer)){let u=aa(e,a.initializer,r);return u?(o[s]=e.ts.factory.updatePropertyAssignment(a,a.name,u),e.ts.factory.updateObjectLiteralExpression(t,o)):null}return null}let i=aa(e,e.ts.factory.createArrayLiteralExpression([],!0),r);return i?e.ts.factory.updateObjectLiteralExpression(t,[...o,e.ts.factory.createPropertyAssignment(n,i)]):null}function aa(e,t,n){return t.elements.some(o=>e.ts.isIdentifier(o)?o.text===n:!1)?null:e.ts.factory.updateArrayLiteralExpression(t,[...t.elements,e.ts.factory.createIdentifier(n)])}async function Qn(e,t,n,r){let s=`app.routes${e.typescriptEnabled?".ts":".js"}`,i=e.join(e.appDir,s);try{if(e.magicast){let a=await e.magicast.loadFile(i);Object.keys(a.exports).length===0&&(a.exports.routes=[]);let l=Object.keys(a.exports)[0],c=a.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),a.imports.$items.find(m=>m.imported===n))return;a.imports.$append({imported:n,from:r}),await e.magicast.writeFile(a,i)}}catch(a){let u=null;try{u=e.readFileSync(i)}catch(l){e.Sentry?.captureException(l,{level:"warning"})}e.Sentry?.captureException(a,{extra:{content:u,appRoutesPath:i,componentName:n,componentPath:r}})}}var xa=T(Ca(),1);async function ya(e){let t=e.ts.findConfigFile(e.getAppRootDir(),e.existsSync);if(t){let n=await e.readFile(t);if(!n)return;let r=xa.default.parse(n);if(!r||typeof r!="object"||Array.isArray(r))return;let o=r.compilerOptions;if(!o||typeof o!="object"||Array.isArray(o))return;let s=o.paths;(!s||typeof s!="object"||Array.isArray(s))&&(o.paths={},s=o.paths),Object.assign(o.paths,{"~/*":["./src/*"]}),await e.writeFile(t,JSON.stringify(r,null,2))}}async function Ea(e){let t=[],n=await nm(e,t);t.push(...await Zr(e)),await tm(e,n);let r="BuilderPage";if(!await e.exists(e.builderPageComponentPath)){let o=await e.formatCode(e.builderPageComponentPath,wa(e,r,e.builderPageComponentPath,"builder-page","page",!0));await e.writeFile(e.builderPageComponentPath,o),t.push({filePath:e.builderPageComponentPath,modifiedType:"create"})}if(e.hasAppModule){await Jr(e,"Counter",n);let o=await Jr(e,r,e.builderPageComponentPath);o&&t.push({filePath:o,modifiedType:"update"})}return await Qn(e,"**",r,"./components/builder-page.component"),t}async function Fa(e){let t=[];t.push(...await Zr(e));let n="FigmaImportsPage",r="figma-imports.component",o=e.join(e.componentsDir,`${r}.${e.typescriptEnabled?"ts":"js"}`);if(!await e.exists(o)){let s=await e.formatCode(o,wa(e,n,o,"figma-imports","figma-imports",!1));await e.writeFile(o,s),t.push({filePath:o,modifiedType:"create"})}if(e.hasAppModule){let s=await Jr(e,n,o);s&&t.push({filePath:s,modifiedType:"update"})}return await Qn(e,"figma-imports",n,`./components/${r}`),await ya(e),t}async function Zr(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,rm(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}async function tm(e,t){let r=(await Qe(e,null,!1,!1,null,null,!1,!1)).components.find(o=>o.filePath===t);r&&await Qe(e,r.id,!0,!1,null,null,!0,!1)}function wa(e,t,n,r,o,s){let i=!e.hasAppModule,a=_(e,n,e.registryPath),u=e.join(e.getAppRootDir(),"src","environments","environment.ts"),l=_(e,n,u),c=s?` <ng-container *ngIf="content || isPreviewing; else notFound">
|
|
1026
|
+
`.trimStart(),o=await e.formatCode(t,s);return await e.writeFile(t,o),"create"}return null}var qn="builderApiKey";async function na(e,t){let r=[],n=t.getSourceFiles(),i=t.getTypeChecker();return await Promise.all(n.map(async s=>{let o=e.basename(s.fileName);if($p(e,s.fileName)||o.startsWith(".")||o==="node_modules"||kp.has(o))return;let a=e.normalize(s.fileName);if(a===e.registryPath)return;let u=await Jn(e,i,a,s);r.push(...u)})),r.sort((s,o)=>s.cmpInfo.name.localeCompare(o.cmpInfo.name))}var kp=new Set([]),Np=new Set(["node_modules"]);function $p(e,t){for(let r of Np)if(e.dirname(t).includes(r))return!0;return!1}async function ra(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 Op(e,t,n)}return null}function Op(e,t,r){let n=N(e,r);return Jn(e,null,t,n)}async function Jn(e,t,r,n){let i=[],s={};r=e.normalize(r);let o=n.statements.filter(c=>e.ts.isClassDeclaration(c)&&Up(e,c)),a=n.statements.find(c=>e.ts.isImportDeclaration(c)&&e.ts.isStringLiteral(c.moduleSpecifier)&&c.moduleSpecifier.text==="@angular/core");if(a&&e.ts.isImportDeclaration(a)){let c=a.importClause?.namedBindings;if(c&&e.ts.isNamedImports(c)){let p=c.elements.find(m=>(m.propertyName??m.name).text==="input");p&&(s.inputSignalImportName=p.name.text)}}let u=await _p(e,t,r,n),l=Vp(e,n);return await Promise.all(o.map(async c=>{let p=await Lp(e,t,r,c,l,s);i.push(...p)})),i.push(...u),i}async function Yr(e,t,r){if(t.node.fnNode){let{sourceFile:n,typeChecker:i}=await Nt(e,t.cmpInfo.filePath,r),o=(await Jn(e,i,t.cmpInfo.filePath,n)).find(a=>a.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 oa(e,t,r){let n=await Z(e,r.map(o=>o.filePath)),i=n.getTypeChecker();return await Promise.all(r.filter(o=>!(o.name.endsWith("Page")||o.name.endsWith("Module")||o.name==="AppComponent")).map(async o=>{if(!o.isRegistered){let a=n.getSourceFile(o.filePath);if(a){let l=(await Jn(e,i,o.filePath,a)).find(c=>c.cmpInfo.id===o.id);if(l){o.inputs=St(e,i,l.node.fnNode);let c=t.find(p=>p.cmpInfo.id===o.id);if(c){let p=await Yr(e,c,n);we(o,p)}}}}return o}))}async function Lp(e,t,r,n,i,s){let o=[],a=e.relative(e.getAppRootDir(),r),u=W(e,r),l=n.name?.text;if(!l)return o;let c=!1;n.modifiers&&(c=n.modifiers.some(g=>g.kind===e.ts.SyntaxKind.DefaultKeyword));let p=c?"default":l,m=c?"default":"named",D=[];return n.members.forEach(g=>{if(e.ts.isPropertyDeclaration(g)||e.ts.isGetAccessor(g)||e.ts.isSetAccessor(g)){let d=(e.ts.getDecorators(g)??[]).find(F=>Mp(e,F))!==void 0&&e.ts.isIdentifier(g.name),y=s?.inputSignalImportName!==void 0&&e.ts.isIdentifier(g.name)&&jp(e,g,s.inputSignalImportName);if(d||y){let F="any";if(e.ts.isSetAccessor(g))F=ta(e,g.parameters[0].type);else if(g.type&&t){let b=t.getTypeAtLocation(g.type);F=t.typeToString(b)}else F=ta(e,g.type);let w={name:g.name.text,type:i[F]?"string":F};i[F]&&(w.enum=i[F]),D.push(w)}}}),o.push({cmpInfo:{id:await z(e,r,l),displayFilePath:M(e,r),name:G(l),inputs:D,exportName:p,exportType:m,importName:l,filePath:r,relFilePath:a,importPath:u,meta:{...zp(e,n)},framework:"angular"},node:{name:l,fnNode:n,deps:void 0}}),o}async function _p(e,t,r,n){let i=[],s=e.relative(e.getAppRootDir(),r),o=W(e,r);for(let a of n.statements)if(e.ts.isExportDeclaration(a)&&a.exportClause&&e.ts.isNamedExports(a.exportClause))for(let u of a.exportClause.elements){let l=u.name?.text;if(!l)continue;let c=l,p="named",m=[];if(t){let f=t.getSymbolAtLocation(u.name);if(f){let h=t.getDeclaredTypeOfSymbol(f);t.getPropertiesOfType(h).forEach(y=>{let F=y.getDeclarations();F&&F.forEach(w=>{if(e.ts.isPropertyDeclaration(w)){let b=t.getTypeAtLocation(w),E={name:y.getName(),type:Kp(e,t,b)};m.push(E)}})})}}let D=e.ts.isExportSpecifier(u)&&u.parent?u.parent.parent:void 0,g;if(D){let f=D.moduleSpecifier;if(f&&e.ts.isStringLiteral(f)){let h=t?.getSymbolAtLocation(f);if(h&&h.declarations&&h.declarations.length>0){let d=h.declarations[0];(!e.ts.isSourceFile(d)||e.ts.isSourceFile(d)&&d.fileName.includes("node_modules"))&&(g=f.text)}}}i.push({cmpInfo:{id:await z(e,r,l,g),displayFilePath:M(e,r),name:G(l),inputs:m,exportName:c,exportType:p,importName:l,filePath:r,relFilePath:s,importPath:g||o,externalImportPath:g,framework:"angular"},node:{name:l,fnNode:u,deps:void 0}})}else if(e.ts.isExportDeclaration(a)&&!a.exportClause&&a.moduleSpecifier&&e.ts.isStringLiteral(a.moduleSpecifier)){let u=a.moduleSpecifier.text;if(t)try{let l=t.getSymbolAtLocation(a.moduleSpecifier);if(l&&l.exports){let c=t.getExportsOfModule(l);for(let p of c)if(p.flags&e.ts.SymbolFlags.Class){let m=p.getName();if(m.startsWith("_"))continue;i.push({cmpInfo:{id:await z(e,r,m,u),displayFilePath:M(e,r),name:G(m),inputs:[],exportName:m,exportType:"named",importName:m,filePath:r,relFilePath:s,importPath:u,externalImportPath:u,framework:"angular"},node:{name:m,fnNode:a,deps:void 0}})}}}catch(l){console.warn(`Error processing star export from ${u}:`,l)}}return i}function Mp(e,t){return ia(e,t,"Input")}function jp(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 ia(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 Up(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 ta(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 Vp(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 Kp(e,t,r){let n=t.typeToString(r);if(n==="any"){let i=r.getSymbol();if(i){let s=i.getDeclarations();if(s&&s.length>0){let o=s[0];if(e.ts.isVariableDeclaration(o)){let a=o.type;a&&(n=t.typeToString(t.getTypeAtLocation(a)))}}}}return n}function zp(e,t){let{getDecorators:r,isCallExpression:n,isIdentifier:i,isObjectLiteralExpression:s,isPropertyAssignment:o,isStringLiteral:a,SyntaxKind:u}=e.ts,l,c;return r(t)?.forEach(m=>{if(ia(e,m,"Component")){let{expression:D}=m;if(n(D)){let[g]=D.arguments;s(g)&&g.properties.forEach(f=>{o(f)&&i(f.name)&&(f.name.escapedText==="selector"&&a(f.initializer)&&(l=f.initializer.text),f.name.escapedText==="standalone"&&(c=f.initializer.kind===u.TrueKeyword))})}}}),{selector:l,standalone:c}}async function Hn(e,t,r){let n=e.typescriptEnabled?".ts":".js",i=`app.module${n}`,s=e.join(e.appDir,i),o=await e.readFile(s);if(!o){e.Sentry?.captureException(new Error(`Unable to read app.module.${n} at ${s}`),{extra:{appModuleCode:o,appModulePath:s}});return}let a=await Gp(e,s,t,r,o);if(!a){e.Sentry?.captureException(new Error(`Unable to update app.module.${n} at ${s}`),{extra:{appModuleCode:o,appModulePath:s}});return}return await e.writeFile(s,a),s}async function Gp(e,t,r,n,i){let s=i,o=N(e,i),a=_(e,t,n);o=O(e,o,{namedImports:[r],importPath:a}),o=O(e,o,{namedImports:["Content"],importPath:"@builder.io/sdk-angular"});let u=[];for(let l of o.statements)if(e.ts.isClassDeclaration(l)&&l.name?.text==="AppModule"){let c=Wp(e,r,l);u.push(c)}else u.push(l);return o=e.ts.factory.updateSourceFile(o,u),s=te(e,o),s}function Wp(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 s=i.expression.arguments;if(s.length===1&&e.ts.isObjectLiteralExpression(s[0])){let o=sa(e,s[0],"declarations",t);if(o){let a=sa(e,o,"imports","Content");if(a&&(o=a),o){let u=e.ts.factory.updateDecorator(i,e.ts.factory.updateCallExpression(i.expression,i.expression.expression,i.expression.typeArguments,[o])),c=[...n.map(p=>p===i?u:p),...e.ts.getModifiers(r)||[]];return e.ts.factory.updateClassDeclaration(r,c,r.name,r.typeParameters,r.heritageClauses,r.members)}}}}}return r}function sa(e,t,r,n){let i=[...t.properties],s=i.findIndex(a=>K(e,a)===r);if(s>-1){let a=i[s];if(e.ts.isPropertyAssignment(a)&&a.initializer&&e.ts.isArrayLiteralExpression(a.initializer)){let u=aa(e,a.initializer,n);return u?(i[s]=e.ts.factory.updatePropertyAssignment(a,a.name,u),e.ts.factory.updateObjectLiteralExpression(t,i)):null}return null}let o=aa(e,e.ts.factory.createArrayLiteralExpression([],!0),n);return o?e.ts.factory.updateObjectLiteralExpression(t,[...i,e.ts.factory.createPropertyAssignment(r,o)]):null}function aa(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 Qr(e,t,r,n){let s=`app.routes${e.typescriptEnabled?".ts":".js"}`,o=e.join(e.appDir,s);try{if(e.magicast){let a=await e.magicast.loadFile(o);Object.keys(a.exports).length===0&&(a.exports.routes=[]);let l=Object.keys(a.exports)[0],c=a.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(r),c.push(p),a.imports.$items.find(m=>m.imported===r))return;a.imports.$append({imported:r,from:n}),await e.magicast.writeFile(a,o)}}catch(a){let u=null;try{u=e.readFileSync(o)}catch(l){e.Sentry?.captureException(l,{level:"warning"})}e.Sentry?.captureException(a,{extra:{content:u,appRoutesPath:o,componentName:r,componentPath:n}})}}var xa=T(Ca(),1);async function ya(e){let t=e.ts.findConfigFile(e.getAppRootDir(),e.existsSync);if(t){let r=await e.readFile(t);if(!r)return;let n=xa.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 s=i.paths;(!s||typeof s!="object"||Array.isArray(s))&&(i.paths={},s=i.paths),Object.assign(i.paths,{"~/*":["./src/*"]}),await e.writeFile(t,JSON.stringify(n,null,2))}}async function Ea(e){let t=[],r=await rm(e,t);t.push(...await er(e)),await tm(e,r);let n="BuilderPage";if(!await e.exists(e.builderPageComponentPath)){let i=await e.formatCode(e.builderPageComponentPath,wa(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 Hn(e,"Counter",r);let i=await Hn(e,n,e.builderPageComponentPath);i&&t.push({filePath:i,modifiedType:"update"})}return await Qr(e,"**",n,"./components/builder-page.component"),t}async function Fa(e){let t=[];t.push(...await er(e));let r="FigmaImportsPage",n="figma-imports.component",i=e.join(e.componentsDir,`${n}.${e.typescriptEnabled?"ts":"js"}`);if(!await e.exists(i)){let s=await e.formatCode(i,wa(e,r,i,"figma-imports","figma-imports",!1));await e.writeFile(i,s),t.push({filePath:i,modifiedType:"create"})}if(e.hasAppModule){let s=await Hn(e,r,i);s&&t.push({filePath:s,modifiedType:"update"})}return await Qr(e,"figma-imports",r,`./components/${n}`),await ya(e),t}async function er(e){let t=[];return await e.exists(e.registryPath)||(await e.writeFile(e.registryPath,nm(e)),t.push({filePath:e.registryPath,modifiedType:"create"})),t}async function tm(e,t){let n=(await Qe(e,null,!1,!1,null,null,!1,!1)).components.find(i=>i.filePath===t);n&&await Qe(e,n.id,!0,!1,null,null,!0,!1)}function wa(e,t,r,n,i,s){let o=!e.hasAppModule,a=_(e,r,e.registryPath),u=e.join(e.getAppRootDir(),"src","environments","environment.ts"),l=_(e,r,u),c=s?` <ng-container *ngIf="content || isPreviewing; else notFound">
|
|
1027
1027
|
<builder-content
|
|
1028
1028
|
[model]="model"
|
|
1029
1029
|
[content]="content"
|
|
@@ -1042,15 +1042,15 @@ export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
|
1042
1042
|
></builder-content>`;return`
|
|
1043
1043
|
import { Component, Input } from '@angular/core';
|
|
1044
1044
|
import { fetchOneEntry, type BuilderContent${s?", isPreviewing":""} } from '@builder.io/sdk-angular';
|
|
1045
|
-
${
|
|
1046
|
-
${
|
|
1045
|
+
${o?"import { Content } from '@builder.io/sdk-angular';":""}
|
|
1046
|
+
${o?"import { CommonModule } from '@angular/common';":""}
|
|
1047
1047
|
import { environment } from ${JSON.stringify(l)};
|
|
1048
1048
|
import { CUSTOM_COMPONENTS } from ${JSON.stringify(a)};
|
|
1049
1049
|
|
|
1050
1050
|
@Component({
|
|
1051
|
-
selector: 'app-${
|
|
1052
|
-
${
|
|
1053
|
-
${
|
|
1051
|
+
selector: 'app-${n}',
|
|
1052
|
+
${o?"standalone: true,":""}
|
|
1053
|
+
${o?"imports: [Content, CommonModule],":""}
|
|
1054
1054
|
template: \`
|
|
1055
1055
|
${c}
|
|
1056
1056
|
\`,
|
|
@@ -1059,9 +1059,9 @@ export class ${t} {
|
|
|
1059
1059
|
|
|
1060
1060
|
${s?`isPreviewing = isPreviewing();
|
|
1061
1061
|
`:""}
|
|
1062
|
-
@Input() model = '${
|
|
1062
|
+
@Input() model = '${i}';
|
|
1063
1063
|
|
|
1064
|
-
apiKey = environment.${
|
|
1064
|
+
apiKey = environment.${qn};
|
|
1065
1065
|
${e.typescriptEnabled?`
|
|
1066
1066
|
content: BuilderContent | null = null;
|
|
1067
1067
|
`:`
|
|
@@ -1089,12 +1089,12 @@ export class ${t} {
|
|
|
1089
1089
|
}
|
|
1090
1090
|
}
|
|
1091
1091
|
|
|
1092
|
-
`.trimStart()}function
|
|
1092
|
+
`.trimStart()}function nm(e){return e.typescriptEnabled?`import type { RegisteredComponent } from "@builder.io/sdk-angular";
|
|
1093
1093
|
|
|
1094
1094
|
export const CUSTOM_COMPONENTS: RegisteredComponent[] = [
|
|
1095
1095
|
];`:`export const CUSTOM_COMPONENTS = [
|
|
1096
1096
|
];
|
|
1097
|
-
`}async function
|
|
1097
|
+
`}async function rm(e,t){let n=e.typescriptEnabled?"ts":"js",i=e.join(e.componentsDir,`counter.component.${n}`),s=await e.exists(i);e.debug(`angularEnsureCounterComponent, hasCounterCmp: ${s}`);let o=om(e);if(!s){let a=await e.formatCode(i,o);await e.writeFile(i,a),t.push({filePath:i,modifiedType:"create"})}return i}function om(e){return`
|
|
1098
1098
|
import { Component, Input } from '@angular/core';
|
|
1099
1099
|
|
|
1100
1100
|
@Component({
|
|
@@ -1162,24 +1162,24 @@ export class Counter {
|
|
|
1162
1162
|
}
|
|
1163
1163
|
}
|
|
1164
1164
|
|
|
1165
|
-
`.trimStart()}async function ba(e){await Zr(e);let t=await e.readFile(e.registryPath);return t?om(e,t):{components:[],sourceFile:N(e,"")}}async function om(e,t){let n=N(e,t);return sm(e,n)}async function sm(e,t){let n=[],r=X(e,t,"CUSTOM_COMPONENTS");return r&&await Promise.all(r.arrayLiteralExp.elements.map(async(o,s)=>{let i=await si(e,t,o);i&&(i.nodeIndex=s,n.push(i))})),{sourceFile:t,components:fe(n)}}async function si(e,t,n){if(!e.ts.isObjectLiteralExpression(n))return null;let r={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],framework:"angular"};for(let o of n.properties){if(!e.ts.isPropertyAssignment(o)||!e.ts.isIdentifier(o.name))continue;if(K(e,o)==="component"){let i,{initializer:a}=o;if(e.ts.isIdentifier(a))i=a.text;else if(e.ts.isCallExpression(a)){let l=a.arguments[0];e.ts.isIdentifier(l)&&(i=l.text)}if(!i)continue;r.name===""&&(r.name=G(i)),r.importName=i;let u=await Ue(e,e.registryPath,t,i);if(!u)continue;if(r.filePath=u.filePath,r.relFilePath=u.relFilePath,await e.exists(u.filePath)?r.importPath=W(e,u.filePath):(r.externalImportPath=u.importPath,r.importPath=r.externalImportPath),r.displayFilePath=u.displayFilePath,r.exportType=u.exportType,r.externalImportPath)r.exportName=i;else{let l=await na(e,u.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===i);c&&(r.exportName=c.cmpInfo.exportName)}}continue}}return r=ge(e,r,n),r.filePath&&r.exportName&&(r.id=await z(e,r.filePath,r.exportName,r.externalImportPath)),r}async function Qe(e,t,n,r,o,s,i,a){let u=await ft(e),[l,c,p]=await Promise.all([ra(e,u),ba(e),Dr(e)]),m=l.map(y=>y.cmpInfo),D=c.components,g={components:Be(m,D),registryPath:e.registryPath,registryDisplayPath:j(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ve(m),publicApiKey:p.envValue??void 0,devToolsVersion:e.version};if(a)return g.components=await ia(e,l,g.components),g;let f=!1,h=c.sourceFile,d=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(d.length>0){let y=d.map(b=>{let E=l.find(B=>B.cmpInfo.id===b);if(!E)throw new Error(`Component ${b} not found`);return E}),F=Array.from(new Set(y.map(b=>b.cmpInfo.filePath))),w=await Z(e,F);for(let b of y){let E=g.components.find(V=>V.id===b.cmpInfo.id),B=await Yn(e,b,w);we(E,B);let U=m.findIndex(V=>V.id===b.cmpInfo.id);m[U].inputs=B;let I=We(b.cmpInfo.id,m,D,n,r,o,s),{elements:S,elmIndex:v,statementIndex:ce,statement:Te,variableDeclaration:ie}=await um(e,h,b);if(I.addCmpToRegistry)S.push(am(e,I.addCmpToRegistry)),f=!0;else if(I.removeCmpFromRegistry)S.splice(v,1),f=!0;else if(I.updateRegisteredCmp){let V=ee(e,S[v],I.updateRegisteredCmp);S[v]=e.ts.factory.updateObjectLiteralExpression(V,[Sa(e,I.updateRegisteredCmp),...V.properties.slice(1)]),f=!0}if(f&&i){let V=[...h.statements];V[ce]=e.ts.factory.updateVariableStatement(Te,Te.modifiers,e.ts.factory.updateVariableDeclarationList(Te.declarationList,[e.ts.factory.updateVariableDeclaration(ie,ie.name,ie.exclamationToken,ie.type,e.ts.factory.createArrayLiteralExpression(ze(e,S)))])),h=e.ts.factory.updateSourceFile(h,V),E.exportType==="named"?h=O(e,h,{namedImports:[E.importName],importPath:E.externalImportPath?E.externalImportPath:_(e,e.registryPath,E.filePath)}):h=O(e,h,{defaultImport:E.importName,importPath:E.externalImportPath?E.externalImportPath:_(e,e.registryPath,E.filePath)}),h=O(e,h,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-angular",isTypeOnly:!0}),h=qe(e,h,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),g.components=I.components,D=I.components.filter(pe=>pe.isRegistered)}}}if(f&&i){h=Ge(e,h),h=Ke(e,h);let y=te(e,h);y=Re(y),y=await e.formatCode(e.registryPath,y),await e.writeFile(e.registryPath,y)}return g}function Sa(e,t){let n=e.ts.factory.createIdentifier(t.importName);return e.ts.factory.createPropertyAssignment("component",n)}function am(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([Sa(e,t)],!0),t)}async function um(e,t,n){let r=X(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 o=r.arrayLiteralExp.elements.filter(i=>e.ts.isObjectLiteralExpression(i)),s=-1;for(let i=0;i<o.length;i++)if((await si(e,t,o[i]))?.id===n.cmpInfo.id){s=i;break}return{...r,elements:o,elmIndex:s}}async function va(e){let t=await lm(e);return{builderPageOptions:async()=>({templateContentId:"f0b8016ac92e474699293211a268ebaa",pathname:"/builder-demo",title:"Builder + Angular Demo Page"}),ensureBuilderSetup:()=>Ea(t),ensureFigmaImportPage:()=>Fa(t),getRegistryPath:()=>t.registryPath,getRegistry:r=>Qe(t,null,!1,!1,null,null,!1,!!r?.readAllInputTypes),addExternalPackage:async r=>{t.addExternalPackage(r)},loadComponent:async r=>{let o=await Qe(t,r.cmpId,!1,!1,null,null,!1,!1);return{...o,component:o.components.find(s=>s.id===r.cmpId)}},registerComponent:r=>Qe(t,r.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:r=>Qe(t,r.cmpId,!1,!1,r,null,!0,!1),setRegisteredComponentInput:r=>Qe(t,r.cmpId,!1,!1,null,r,!0,!1),unregisterComponent:r=>Qe(t,r.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>Dr(t),setPublicApiKey:r=>ea(t,r.publicApiKey),getDependencies:r=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-angular"},{name:"concurrently"}],getDevRunCommand:()=>"builder-dev",getCache:()=>_e(t),setCache:r=>je(t,r)}}async function lm(e){let t=await cm(e),n=e.getAppRootDir(),r=e.join(n,"src"),o=await ye(e),s=e.join(r,"app"),i=await Se(e,s),a={},u={...e,srcDir:"",appDir:"",componentsDir:"",registryPath:i,angularConfigPath:t,typescriptEnabled:o,builderPageComponentPath:"",hasAppModule:!1,addExternalPackage:p=>{a[e.join(n,p,"index.ts")]=`export * from "${p}";`},readFileSync:p=>a[p]??e.readFileSync(p),existsSync:p=>!!a[p]||e.existsSync(p),readdirSync:p=>{let m=e.readdirSync(p);return p===n?[...m,...Object.keys(a).map(D=>D.slice(n.length+1))]:m},readdir:async p=>{let m=await e.readdir(p);return p===n?[...m,...Object.keys(a).map(D=>D.slice(n.length+1))]:m}};if(!await e.exists(r))throw new Error(`Could not find src directory. Searched for src in "${e.getAppRootDir()}".`);u.srcDir=r,u.appDir=s,u.componentsDir=e.join(u.appDir,"components"),u.builderPageComponentPath=e.join(u.componentsDir,`builder-page.component.${o?"ts":"js"}`);let l=`app.module.${o?"ts":"js"}`,c=e.join(u.appDir,l);return await e.exists(c)&&(u.hasAppModule=!0),u}async function cm(e){let t=e.join(e.getAppRootDir(),"angular.json");if(await e.exists(t))return t;let n=e.join(e.getAppRootDir(),"project.json");if(await e.exists(n))return n;if(e.ignoreMissingConfig)return"";throw new Error(`Could not find Angular config file. Searched for angular.json & project.json in "${e.getAppRootDir()}".`)}var nn=T(ja(),1);async function Ma(e,t){let r={components:(await t.getRegistry()).components.filter(s=>s.isRegistered).map(s=>{let i={filePath:Ie(e.relative(e.getAppRootDir(),s.filePath)),name:s.name,image:s.image,description:s.description,exportName:s.exportName,inputs:Ce(s.inputs)};return Ce(i)}),version:1};e.debug("exporting registry components:",r.components.length);let o=(0,nn.compress)(r);return btoa(JSON.stringify(o))}async function Ua(e,t,n){if(typeof n!="string")throw new Error("Invalid registry to import");let r=await t.getRegistry(),o=JSON.parse(atob(n)),s=(0,nn.decompress)(o),i=Ce(r);e.debug("importing registry components:",s.components.length);for(let a of s.components){let u=Ie(e.normalize(a.filePath)),l=r.components.find(p=>Ie(p.filePath).endsWith(u)&&p.exportName===a.exportName);if(!l){console.error(`Could not find component to register: ${a.filePath}, ${a.exportName}`);continue}e.debug(`register (${l.id})`,l.filePath),await t.registerComponent({cmpId:l.id});for(let p of a.inputs)e.debug(`set input (${l.id})`),await t.setRegisteredComponentInput({cmpId:l.id,name:p.name,type:p.type,required:p.required,defaultValue:p.defaultValue,friendlyName:p.friendlyName,helperText:p.helperText});e.debug(`set input (${l.id}) info`);let c=await t.setRegisteredComponentInfo({cmpId:l.id,name:a.name,image:a.image,description:a.description});i=Ce(c)}return i}var Ne={react:"react",remix:"remix",angular:"angular",next:"next",qwik:"qwik"},mx={[Ne.react]:[{version:A.gen1,recommended:!0},{version:A.gen2,recommended:!1}],[Ne.remix]:[{version:A.gen1,recommended:!1},{version:A.gen2,recommended:!0}],[Ne.angular]:[{version:A.gen2,recommended:!0}],[Ne.next]:[{version:A.gen1,recommended:!0},{version:A.gen2,recommended:!1}],[Ne.qwik]:[{version:A.gen2,recommended:!0}]};async function Va(e,t){let n=[],r=new Set;async function o(s){let i=e.join(s,"package.json");try{if(!await e.exists(i))return null;let u=await e.readFile(i);if(u===null)throw new Error(`Failed to read package.json at ${i}`);let l=JSON.parse(u);if(r.has(l.name))return null;r.add(l.name);let c={name:l.name,subPackages:[]},p=await e.readdir(s);for(let m of p)m!=="node_modules"&&(await e.stat(e.join(s,m))).isDirectory()&&c.subPackages.push(m);return n.push(c),c}catch(a){return e.Sentry?.captureException(a,{level:"warning"}),null}}try{let s=e.join(t,"package.json");if(await e.exists(s)){let a=await e.readFile(s);if(a!==null){let u=JSON.parse(a),l={...u.dependencies,...u.devDependencies};for(let c of Object.keys(l)){let p=e.join(t,"node_modules",c);await o(p)}if(Array.isArray(u.workspaces))for(let c of u.workspaces){let p=await e.readdir(e.join(t,c));for(let m of p){let D=e.join(t,c,m);await o(D)}}}}}catch(s){e.Sentry?.captureException(s,{level:"warning"})}return n}var Nm={"@builder.io/qwik-city":Os,next:Ss,"@remix-run/react":zs,react:Zs,"@angular/core":va},$m={"@builder.io/qwik-city":Ne.qwik,next:Ne.next,"@remix-run/react":Ne.remix,react:Ne.react,"@angular/core":Ne.angular};async function on(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 $t(e)),e.frameworks.length===0)throw new Error("Supported Devtools framework for not found");for(let t of e.frameworks){let n=Nm[t.name];if(n)try{let r=await n(e);return{...r,exportRegistry:()=>Ma(e,r),importRegistry:s=>Ua(e,r,s),framework:$m[t.name],findAllDependencies:async()=>await Va(e,e.getRepoRootDir())}}catch(r){e.Sentry?.captureException(r,{level:"warning"})}}throw new Error(`Devtools framework not found for ${e.getAppRootDir()}, ${JSON.stringify(e.frameworks,null,2)}`)}var ay=`
|
|
1165
|
+
`.trimStart()}async function ba(e){await er(e);let t=await e.readFile(e.registryPath);return t?im(e,t):{components:[],sourceFile:N(e,"")}}async function im(e,t){let r=N(e,t);return sm(e,r)}async function sm(e,t){let r=[],n=X(e,t,"CUSTOM_COMPONENTS");return n&&await Promise.all(n.arrayLiteralExp.elements.map(async(i,s)=>{let o=await so(e,t,i);o&&(o.nodeIndex=s,r.push(o))})),{sourceFile:t,components:fe(r)}}async function so(e,t,r){if(!e.ts.isObjectLiteralExpression(r))return null;let n={id:"",name:"",displayFilePath:"",exportName:"",importName:"",filePath:"",relFilePath:"",importPath:"",inputs:[],framework:"angular"};for(let i of r.properties){if(!e.ts.isPropertyAssignment(i)||!e.ts.isIdentifier(i.name))continue;if(K(e,i)==="component"){let o,{initializer:a}=i;if(e.ts.isIdentifier(a))o=a.text;else if(e.ts.isCallExpression(a)){let l=a.arguments[0];e.ts.isIdentifier(l)&&(o=l.text)}if(!o)continue;n.name===""&&(n.name=G(o)),n.importName=o;let u=await Ue(e,e.registryPath,t,o);if(!u)continue;if(n.filePath=u.filePath,n.relFilePath=u.relFilePath,await e.exists(u.filePath)?n.importPath=W(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 l=await ra(e,u.filePath);if(l&&l.length>0)if(l.length===1)n.exportName=l[0].cmpInfo.exportName;else{let c=l.find(p=>p.cmpInfo.exportName===o);c&&(n.exportName=c.cmpInfo.exportName)}}continue}}return n=ge(e,n,r),n.filePath&&n.exportName&&(n.id=await z(e,n.filePath,n.exportName,n.externalImportPath)),n}async function Qe(e,t,r,n,i,s,o,a){let u=await ft(e),[l,c,p]=await Promise.all([na(e,u),ba(e),hn(e)]),m=l.map(y=>y.cmpInfo),D=c.components,g={components:Be(m,D),registryPath:e.registryPath,registryDisplayPath:M(e,e.registryPath),frameworks:e.getFrameworks(),dependencies:Ve(m),publicApiKey:p.envValue??void 0,devToolsVersion:e.version};if(a)return g.components=await oa(e,l,g.components),g;let f=!1,h=c.sourceFile,d=Array.isArray(t)?t:typeof t=="string"?[t]:[];if(d.length>0){let y=d.map(b=>{let E=l.find(B=>B.cmpInfo.id===b);if(!E)throw new Error(`Component ${b} not found`);return E}),F=Array.from(new Set(y.map(b=>b.cmpInfo.filePath))),w=await Z(e,F);for(let b of y){let E=g.components.find(V=>V.id===b.cmpInfo.id),B=await Yr(e,b,w);we(E,B);let U=m.findIndex(V=>V.id===b.cmpInfo.id);m[U].inputs=B;let I=We(b.cmpInfo.id,m,D,r,n,i,s),{elements:S,elmIndex:v,statementIndex:ce,statement:Te,variableDeclaration:oe}=await um(e,h,b);if(I.addCmpToRegistry)S.push(am(e,I.addCmpToRegistry)),f=!0;else if(I.removeCmpFromRegistry)S.splice(v,1),f=!0;else if(I.updateRegisteredCmp){let V=ee(e,S[v],I.updateRegisteredCmp);S[v]=e.ts.factory.updateObjectLiteralExpression(V,[Sa(e,I.updateRegisteredCmp),...V.properties.slice(1)]),f=!0}if(f&&o){let V=[...h.statements];V[ce]=e.ts.factory.updateVariableStatement(Te,Te.modifiers,e.ts.factory.updateVariableDeclarationList(Te.declarationList,[e.ts.factory.updateVariableDeclaration(oe,oe.name,oe.exclamationToken,oe.type,e.ts.factory.createArrayLiteralExpression(ze(e,S)))])),h=e.ts.factory.updateSourceFile(h,V),E.exportType==="named"?h=O(e,h,{namedImports:[E.importName],importPath:E.externalImportPath?E.externalImportPath:_(e,e.registryPath,E.filePath)}):h=O(e,h,{defaultImport:E.importName,importPath:E.externalImportPath?E.externalImportPath:_(e,e.registryPath,E.filePath)}),h=O(e,h,{namedImports:["RegisteredComponent"],importPath:"@builder.io/sdk-angular",isTypeOnly:!0}),h=qe(e,h,{variableName:"CUSTOM_COMPONENTS",arrayType:"RegisteredComponent"}),g.components=I.components,D=I.components.filter(pe=>pe.isRegistered)}}}if(f&&o){h=Ge(e,h),h=Ke(e,h);let y=te(e,h);y=Re(y),y=await e.formatCode(e.registryPath,y),await e.writeFile(e.registryPath,y)}return g}function Sa(e,t){let r=e.ts.factory.createIdentifier(t.importName);return e.ts.factory.createPropertyAssignment("component",r)}function am(e,t){return ee(e,e.ts.factory.createObjectLiteralExpression([Sa(e,t)],!0),t)}async function um(e,t,r){let n=X(e,t,"CUSTOM_COMPONENTS");if(!n)throw new Error(`Exported name of the Builder registry must be "CUSTOM_COMPONENTS". Please update your Builder registry file: ${e.registryPath}`);let i=n.arrayLiteralExp.elements.filter(o=>e.ts.isObjectLiteralExpression(o)),s=-1;for(let o=0;o<i.length;o++)if((await so(e,t,i[o]))?.id===r.cmpInfo.id){s=o;break}return{...n,elements:i,elmIndex:s}}async function va(e){let t=await lm(e);return{builderPageOptions:async()=>({templateContentId:"f0b8016ac92e474699293211a268ebaa",pathname:"/builder-demo",title:"Builder + Angular Demo Page"}),ensureBuilderSetup:()=>Ea(t),ensureFigmaImportPage:()=>Fa(t),getRegistryPath:()=>t.registryPath,getRegistry:n=>Qe(t,null,!1,!1,null,null,!1,!!n?.readAllInputTypes),addExternalPackage:async n=>{t.addExternalPackage(n)},loadComponent:async n=>{let i=await Qe(t,n.cmpId,!1,!1,null,null,!1,!1);return{...i,component:i.components.find(s=>s.id===n.cmpId)}},registerComponent:n=>Qe(t,n.cmpId,!0,!1,null,null,!0,!1),setRegisteredComponentInfo:n=>Qe(t,n.cmpId,!1,!1,n,null,!0,!1),setRegisteredComponentInput:n=>Qe(t,n.cmpId,!1,!1,null,n,!0,!1),unregisterComponent:n=>Qe(t,n.cmpId,!1,!0,null,null,!0,!1),getPublicApiKey:()=>hn(t),setPublicApiKey:n=>ea(t,n.publicApiKey),getDependencies:n=>[{name:"@builder.io/dev-tools"},{name:"@builder.io/sdk-angular"},{name:"concurrently"}],getDevRunCommand:()=>"builder-dev",getCache:()=>_e(t),setCache:n=>Me(t,n)}}async function lm(e){let t=await cm(e),r=e.getAppRootDir(),n=e.join(r,"src"),i=await ye(e),s=e.join(n,"app"),o=await Se(e,s),a={},u={...e,srcDir:"",appDir:"",componentsDir:"",registryPath:o,angularConfigPath:t,typescriptEnabled:i,builderPageComponentPath:"",hasAppModule:!1,addExternalPackage:p=>{a[e.join(r,p,"index.ts")]=`export * from "${p}";`},readFileSync:p=>a[p]??e.readFileSync(p),existsSync:p=>!!a[p]||e.existsSync(p),readdirSync:p=>{let m=e.readdirSync(p);return p===r?[...m,...Object.keys(a).map(D=>D.slice(r.length+1))]:m},readdir:async p=>{let m=await e.readdir(p);return p===r?[...m,...Object.keys(a).map(D=>D.slice(r.length+1))]:m}};if(!await e.exists(n))throw new Error(`Could not find src directory. Searched for src in "${e.getAppRootDir()}".`);u.srcDir=n,u.appDir=s,u.componentsDir=e.join(u.appDir,"components"),u.builderPageComponentPath=e.join(u.componentsDir,`builder-page.component.${i?"ts":"js"}`);let l=`app.module.${i?"ts":"js"}`,c=e.join(u.appDir,l);return await e.exists(c)&&(u.hasAppModule=!0),u}async function cm(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;if(e.ignoreMissingConfig)return"";throw new Error(`Could not find Angular config file. Searched for angular.json & project.json in "${e.getAppRootDir()}".`)}var or=T(Ma(),1);async function ja(e,t){let n={components:(await t.getRegistry()).components.filter(s=>s.isRegistered).map(s=>{let o={filePath:Ie(e.relative(e.getAppRootDir(),s.filePath)),name:s.name,image:s.image,description:s.description,exportName:s.exportName,inputs:Ce(s.inputs)};return Ce(o)}),version:1};e.debug("exporting registry components:",n.components.length);let i=(0,or.compress)(n);return btoa(JSON.stringify(i))}async function Ua(e,t,r){if(typeof r!="string")throw new Error("Invalid registry to import");let n=await t.getRegistry(),i=JSON.parse(atob(r)),s=(0,or.decompress)(i),o=Ce(n);e.debug("importing registry components:",s.components.length);for(let a of s.components){let u=Ie(e.normalize(a.filePath)),l=n.components.find(p=>Ie(p.filePath).endsWith(u)&&p.exportName===a.exportName);if(!l){console.error(`Could not find component to register: ${a.filePath}, ${a.exportName}`);continue}e.debug(`register (${l.id})`,l.filePath),await t.registerComponent({cmpId:l.id});for(let p of a.inputs)e.debug(`set input (${l.id})`),await t.setRegisteredComponentInput({cmpId:l.id,name:p.name,type:p.type,required:p.required,defaultValue:p.defaultValue,friendlyName:p.friendlyName,helperText:p.helperText});e.debug(`set input (${l.id}) info`);let c=await t.setRegisteredComponentInfo({cmpId:l.id,name:a.name,image:a.image,description:a.description});o=Ce(c)}return o}var Ne={react:"react",remix:"remix",angular:"angular",next:"next",qwik:"qwik"},m0={[Ne.react]:[{version:A.gen1,recommended:!0},{version:A.gen2,recommended:!1}],[Ne.remix]:[{version:A.gen1,recommended:!1},{version:A.gen2,recommended:!0}],[Ne.angular]:[{version:A.gen2,recommended:!0}],[Ne.next]:[{version:A.gen1,recommended:!0},{version:A.gen2,recommended:!1}],[Ne.qwik]:[{version:A.gen2,recommended:!0}]};async function Va(e,t){let r=[],n=new Set;async function i(s){let o=e.join(s,"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 l=JSON.parse(u);if(n.has(l.name))return null;n.add(l.name);let c={name:l.name,subPackages:[]},p=await e.readdir(s);for(let m of p)m!=="node_modules"&&(await e.stat(e.join(s,m))).isDirectory()&&c.subPackages.push(m);return r.push(c),c}catch(a){return e.Sentry?.captureException(a,{level:"warning"}),null}}try{let s=e.join(t,"package.json");if(await e.exists(s)){let a=await e.readFile(s);if(a!==null){let u=JSON.parse(a),l={...u.dependencies,...u.devDependencies};for(let c of Object.keys(l)){let p=e.join(t,"node_modules",c);await i(p)}if(Array.isArray(u.workspaces))for(let c of u.workspaces){let p=await e.readdir(e.join(t,c));for(let m of p){let D=e.join(t,c,m);await i(D)}}}}}catch(s){e.Sentry?.captureException(s,{level:"warning"})}return r}var Nm={"@builder.io/qwik-city":Os,next:Ss,"@remix-run/react":zs,react:Zs,"@angular/core":va},$m={"@builder.io/qwik-city":Ne.qwik,next:Ne.next,"@remix-run/react":Ne.remix,react:Ne.react,"@angular/core":Ne.angular};async function ir(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 $t(e)),e.frameworks.length===0)throw new Error("Supported Devtools framework for not found");for(let t of e.frameworks){let r=Nm[t.name];if(r)try{let n=await r(e);return{...n,exportRegistry:()=>ja(e,n),importRegistry:s=>Ua(e,n,s),framework:$m[t.name],findAllDependencies:async()=>await Va(e,e.getRepoRootDir())}}catch(n){e.Sentry?.captureException(n,{level:"warning"})}}throw new Error(`Devtools framework not found for ${e.getAppRootDir()}, ${JSON.stringify(e.frameworks,null,2)}`)}var ay=`
|
|
1166
1166
|
/** @type {import('next').NextConfig} */
|
|
1167
1167
|
const nextConfig = {
|
|
1168
1168
|
}
|
|
1169
1169
|
|
|
1170
1170
|
module.exports = nextConfig
|
|
1171
|
-
`.trimStart();var Ka=T(require("@sentry/node"),1),za=T(require("@amplitude/analytics-node"),1);async function at(e){if(process.env.NODE_ENV!=="test")try{await Promise.allSettled([Ka.flush(2e3),za.flush().promise])}catch(t){console.error(t)}process.exit(e)}var
|
|
1171
|
+
`.trimStart();var Ka=T(require("@sentry/node"),1),za=T(require("@amplitude/analytics-node"),1);async function at(e){if(process.env.NODE_ENV!=="test")try{await Promise.allSettled([Ka.flush(2e3),za.flush().promise])}catch(t){console.error(t)}process.exit(e)}var Fn=process.env.AIR_HOST||"https://ai.builder.io";var Ht=T(require("@amplitude/analytics-node"),1),wn=T(require("@sentry/node"),1);var se=[];for(let e=0;e<256;++e)se.push((e+256).toString(16).slice(1));function Ga(e,t=0){return(se[e[t+0]]+se[e[t+1]]+se[e[t+2]]+se[e[t+3]]+"-"+se[e[t+4]]+se[e[t+5]]+"-"+se[e[t+6]]+se[e[t+7]]+"-"+se[e[t+8]]+se[e[t+9]]+"-"+se[e[t+10]]+se[e[t+11]]+se[e[t+12]]+se[e[t+13]]+se[e[t+14]]+se[e[t+15]]).toLowerCase()}var Wa=T(require("crypto")),ar=new Uint8Array(256),sr=ar.length;function wo(){return sr>ar.length-16&&(Wa.default.randomFillSync(ar),sr=0),ar.slice(sr,sr+=16)}var qa=T(require("crypto")),bo={randomUUID:qa.default.randomUUID};function Om(e,t,r){if(bo.randomUUID&&!t&&!e)return bo.randomUUID();e=e||{};let n=e.random||(e.rng||wo)();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 Ga(n)}var So=Om;async function bn(e,t){let r={...t,app:"dev-tools-cli",package:"cli"},n=await Lm(),i=await _m();return await Ht.track(e,r,{user_id:n,device_id:i}).promise}var ur,vo;async function Ja(e){ur=e;let t=await Ot();await Fr({...t,userId:e})}async function Lm(){if(ur)return ur;let e=await Ot(),t;return Er(e,"userId")&&(t=e.userId),ur=t,t}async function _m(){if(vo)return vo;let e=await Ot(),t=So();return Er(e,"deviceId")?t=e.deviceId:await Fr({...e,deviceId:t}),vo=t,t}var Ya=T(et(),1),Qa=require("undici");var Xa=T(et(),1);var Ha="0.0.0";var Ao=T(require("process"),1),Za=T(require("@sentry/node"),1),Ct=async(e,t)=>{let r="fetch"in globalThis?globalThis.fetch:Qa.fetch;try{let n=Za.getTraceData(),i=await r(e,{...t,headers:{...t?.headers,...jm(),...n}});if(!i.ok&&i.status===429){let s=await i.json(),o=s.severity??"high",a=s.message??"Rate limit exceeded. Please try again later.";return console.log(),o==="high"?i.error((0,Ya.red)(`${i.status} ${a}
|
|
1172
1172
|
|
|
1173
|
-
`)):
|
|
1173
|
+
`)):i.warn((0,Xa.yellow)(`${i.status} ${a}
|
|
1174
1174
|
|
|
1175
|
-
`)),await at(1)}return
|
|
1176
|
-
`);let y=0,F=0;p(),process.env.CI||(
|
|
1175
|
+
`)),await at(1)}return i}catch(n){if(n instanceof Error&&n.name==="AbortError")throw n;let i=typeof e=="string"?e:e instanceof URL?e.toString():e.url,s=t?.method||"GET",o=n instanceof Error?n.message:String(n),a=new Error(`Fetch failed for ${s} ${i}: ${o}`);throw n instanceof Error&&(a.cause=n),a.requestContext={url:i,method:s,headers:t?.headers},a}};function jm(){let t={darwin:"Macintosh",win32:"Windows NT",linux:"Linux",android:"Android",ios:"iPhone"}[Ao.default.platform]||"Unknown",r=Ao.default.platform==="win32"?"10.0":"";return{"User-Agent":`Mozilla/5.0 (${t}${r?"; "+r:""}) builder-cli/${Ha}`,"Sec-Ch-Ua-Platform":t}}var Um=T(require("@sentry/node"),1);var Xe=T(et(),1);var Wm=require("glob");var Vm=T(require("prettier"),1);var qm=T(require("chokidar"),1),Jm=T(require("ignore"),1);var Io=T(require("process"),1);function Ro(){let{env:e}=Io.default,{TERM:t,TERM_PROGRAM:r}=e;return Io.default.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 Bo=T(et(),1),ut=T($n(),1),lr=require("process"),xt=T(require("readline"),1),Sn=T(et(),1),cr=()=>{let e=ko?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],t=ko?80:120,r,n,i=!1,s="",o="",a="",u=d=>{let y=d>1?"Something went wrong":"Canceled";i&&g(y,d)},l=(d,y)=>{console.error(y,d),u(2)},c=()=>u(1),p=()=>{process.on("uncaughtExceptionMonitor",l),process.on("unhandledRejection",l),process.on("SIGINT",c),process.on("SIGTERM",c),process.on("exit",u)},m=()=>{process.removeListener("uncaughtExceptionMonitor",l),process.removeListener("unhandledRejection",l),process.removeListener("SIGINT",c),process.removeListener("SIGTERM",c),process.removeListener("exit",u)},D=(d="")=>{i=!0,r=ed(),s=d.replace(/\.+$/,""),process.stdout.write(`${Bo.default.gray(Hm)}
|
|
1176
|
+
`);let y=0,F=0;p(),process.env.CI||(n=setInterval(()=>{let w=Bo.default.magenta(e[y]),b=".".repeat(Math.floor(F)).slice(0,3);process.stdout.write(ut.cursor.move(-999,-a.split(`
|
|
1177
1177
|
`).length+1)),process.stdout.write(ut.erase.down(a.split(`
|
|
1178
|
-
`).length));let E=`${w} ${s}${b}${
|
|
1178
|
+
`).length));let E=`${w} ${s}${b}${o}`;process.stdout.write(E),y=y+1<e.length?y+1:0,F=F<e.length?F+.125:0,a=E},t))},g=(d,y=0)=>{s=d??s,i=!1,clearInterval(n);let F=y===0?(0,Sn.green)(Xm):y===1?(0,Sn.red)(Ym):(0,Sn.red)(Qm);process.stdout.write(ut.cursor.move(-999,-a.split(`
|
|
1179
1179
|
`).length+1)),process.stdout.write(ut.erase.down(a.split(`
|
|
1180
1180
|
`).length)),process.stdout.write(`${F} ${s}
|
|
1181
|
-
`),a=s,m(),
|
|
1182
|
-
`));var t=[],
|
|
1181
|
+
`),a=s,m(),r()};return{start:D,stop:g,message:(d="")=>{s=d??s},extra:(d="")=>{o=d}}},ko=Ro(),pr=(e,t)=>ko?e:t,Hm=pr("\u2502","|"),Ym=pr("\u25A0","x"),Qm=pr("\u25B2","x"),Xm=pr("\u25C7","o"),Zm=globalThis.process.platform.startsWith("win");function ed({input:e=lr.stdin,output:t=lr.stdout,overwrite:r=!0,hideCursor:n=!0}={}){let i=xt.createInterface({input:e,output:t,prompt:"",tabSize:1});xt.emitKeypressEvents(e,i),e.isTTY&&e.setRawMode(!0);let s=(o,{name:a})=>{if(String(o)===""){n&&t.write(ut.cursor.show),process.exit(0);return}if(!r)return;xt.moveCursor(t,a==="return"?0:-1,a==="return"?-1:0,()=>{xt.clearLine(t,1,()=>{e.once("keypress",s)})})};return n&&t.write(ut.cursor.hide),e.once("keypress",s),()=>{e.off("keypress",s),n&&t.write(ut.cursor.show),e.isTTY&&!Zm&&e.setRawMode(!1),i.terminal=!1,i.close()}}function lt(){}lt.prototype={diff:function(t,r){var n,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=i.callback;typeof i=="function"&&(s=i,i={}),this.options=i;var o=this;function a(w){return s?(setTimeout(function(){s(void 0,w)},0),!0):w}t=this.castInput(t),r=this.castInput(r),t=this.removeEmpty(this.tokenize(t)),r=this.removeEmpty(this.tokenize(r));var u=r.length,l=t.length,c=1,p=u+l;i.maxEditLength&&(p=Math.min(p,i.maxEditLength));var m=(n=i.timeout)!==null&&n!==void 0?n:1/0,D=Date.now()+m,g=[{oldPos:-1,lastComponent:void 0}],f=this.extractCommon(g[0],r,t,0);if(g[0].oldPos+1>=l&&f+1>=u)return a([{value:this.join(r),count:r.length}]);var h=-1/0,d=1/0;function y(){for(var w=Math.max(h,-c);w<=Math.min(d,c);w+=2){var b=void 0,E=g[w-1],B=g[w+1];E&&(g[w-1]=void 0);var U=!1;if(B){var I=B.oldPos-w;U=B&&0<=I&&I<u}var S=E&&E.oldPos+1<l;if(!U&&!S){g[w]=void 0;continue}if(!S||U&&E.oldPos+1<B.oldPos?b=o.addToPath(B,!0,void 0,0):b=o.addToPath(E,void 0,!0,1),f=o.extractCommon(b,r,t,w),b.oldPos+1>=l&&f+1>=u)return a(td(o,b.lastComponent,r,t,o.useLongestToken));g[w]=b,b.oldPos+1>=l&&(d=Math.min(d,w-1)),f+1>=u&&(h=Math.max(h,w+1))}c++}if(s)(function w(){setTimeout(function(){if(c>p||Date.now()>D)return s();y()||w()},0)})();else for(;c<=p&&Date.now()<=D;){var F=y();if(F)return F}},addToPath:function(t,r,n,i){var s=t.lastComponent;return s&&s.added===r&&s.removed===n?{oldPos:t.oldPos+i,lastComponent:{count:s.count+1,added:r,removed:n,previousComponent:s.previousComponent}}:{oldPos:t.oldPos+i,lastComponent:{count:1,added:r,removed:n,previousComponent:s}}},extractCommon:function(t,r,n,i){for(var s=r.length,o=n.length,a=t.oldPos,u=a-i,l=0;u+1<s&&a+1<o&&this.equals(r[u+1],n[a+1]);)u++,a++,l++;return l&&(t.lastComponent={count:l,previousComponent:t.lastComponent}),t.oldPos=a,u},equals:function(t,r){return this.options.comparator?this.options.comparator(t,r):t===r||this.options.ignoreCase&&t.toLowerCase()===r.toLowerCase()},removeEmpty:function(t){for(var r=[],n=0;n<t.length;n++)t[n]&&r.push(t[n]);return r},castInput:function(t){return t},tokenize:function(t){return t.split("")},join:function(t){return t.join("")}};function td(e,t,r,n,i){for(var s=[],o;t;)s.push(t),o=t.previousComponent,delete t.previousComponent,t=o;s.reverse();for(var a=0,u=s.length,l=0,c=0;a<u;a++){var p=s[a];if(p.removed){if(p.value=e.join(n.slice(c,c+p.count)),c+=p.count,a&&s[a-1].added){var D=s[a-1];s[a-1]=s[a],s[a]=D}}else{if(!p.added&&i){var m=r.slice(l,l+p.count);m=m.map(function(f,h){var d=n[c+h];return d.length>f.length?d:f}),p.value=e.join(m)}else p.value=e.join(r.slice(l,l+p.count));l+=p.count,p.added||(c+=p.count)}}var g=s[u-1];return u>1&&typeof g.value=="string"&&(g.added||g.removed)&&e.equals("",g.value)&&(s[u-2].value+=g.value,s.pop()),s}var FE=new lt;var tu=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,nu=/\S/,ru=new lt;ru.equals=function(e,t){return this.options.ignoreCase&&(e=e.toLowerCase(),t=t.toLowerCase()),e===t||this.options.ignoreWhitespace&&!nu.test(e)&&!nu.test(t)};ru.tokenize=function(e){for(var t=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),r=0;r<t.length-1;r++)!t[r+1]&&t[r+2]&&tu.test(t[r])&&tu.test(t[r+2])&&(t[r]+=t[r+2],t.splice(r+1,2),r--);return t};var ou=new lt;ou.tokenize=function(e){this.options.stripTrailingCr&&(e=e.replace(/\r\n/g,`
|
|
1182
|
+
`));var t=[],r=e.split(/(\n|\r\n)/);r[r.length-1]||r.pop();for(var n=0;n<r.length;n++){var i=r[n];n%2&&!this.options.newlineIsToken?t[t.length-1]+=i:(this.options.ignoreWhitespace&&(i=i.trim()),t.push(i))}return t};var nd=new lt;nd.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};var rd=new lt;rd.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};function mr(e){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?mr=function(t){return typeof t}:mr=function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},mr(e)}var od=Object.prototype.toString,vn=new lt;vn.useLongestToken=!0;vn.tokenize=ou.tokenize;vn.castInput=function(e){var t=this.options,r=t.undefinedReplacement,n=t.stringifyReplacer,i=n===void 0?function(s,o){return typeof o>"u"?r:o}:n;return typeof e=="string"?e:JSON.stringify(No(e,null,null,i),i," ")};vn.equals=function(e,t){return lt.prototype.equals.call(vn,e.replace(/,([\r\n])/g,"$1"),t.replace(/,([\r\n])/g,"$1"))};function No(e,t,r,n,i){t=t||[],r=r||[],n&&(e=n(i,e));var s;for(s=0;s<t.length;s+=1)if(t[s]===e)return r[s];var o;if(od.call(e)==="[object Array]"){for(t.push(e),o=new Array(e.length),r.push(o),s=0;s<e.length;s+=1)o[s]=No(e[s],t,r,n,i);return t.pop(),r.pop(),o}if(e&&e.toJSON&&(e=e.toJSON()),mr(e)==="object"&&e!==null){t.push(e),o={},r.push(o);var a=[],u;for(u in e)e.hasOwnProperty(u)&&a.push(u);for(a.sort(),s=0;s<a.length;s+=1)u=a[s],o[u]=No(e[u],t,r,n,u);t.pop(),r.pop()}else o=e;return o}var $o=new lt;$o.tokenize=function(e){return e.slice()};$o.join=$o.removeEmpty=function(e){return e};var ud=T(require("prettier"),1);var ad=T(cu(),1);var Qt=T(require("fs"),1);var pu=T(require("path"),1);var sd=()=>{let e="/tmp/builder";return Qt.existsSync(e)||Qt.mkdirSync(e,{recursive:!0}),e},mu=e=>pu.default.join(sd(),e),NE=mu(".builder-logs"),$E=mu(".builder-status");var C=T(et(),1);function Lo(e){switch(bn("cli help",{subcommand:e}),console.log(""),tt((0,C.bgCyan)((0,C.bold)((0,C.white)(" help ")))+" "+(0,C.dim)(De)),e){case"add":case"generate":case"gen":case"g":tt(`${(0,C.cyan)("\u2192")} ${(0,C.bold)("Generate Figma Components")}
|
|
1183
1183
|
|
|
1184
1184
|
${(0,C.bgGreen)((0,C.white)(` npx ${xe()} figma generate URL [URL ...] `))}
|
|
1185
1185
|
|
|
@@ -1197,7 +1197,7 @@ ${(0,C.yellow)("Arguments:")}
|
|
|
1197
1197
|
${(0,C.cyan)("--ci")} Run in CI mode without interactive prompts
|
|
1198
1198
|
${(0,C.cyan)("--force")} Force operation even if there are warnings
|
|
1199
1199
|
${(0,C.cyan)("--skipInstallation")} Skip the package installation step
|
|
1200
|
-
${(0,C.cyan)("--yes")} Auto-confirm all prompts`);break;case"auth":
|
|
1200
|
+
${(0,C.cyan)("--yes")} Auto-confirm all prompts`);break;case"auth":j.info(`${(0,C.cyan)("\u2192")} ${(0,C.bold)("Authentication")}
|
|
1201
1201
|
|
|
1202
1202
|
${(0,C.bgGreen)((0,C.white)(` npx ${xe()} auth `))}
|
|
1203
1203
|
|
|
@@ -1225,7 +1225,7 @@ ${(0,C.yellow)("Arguments:")}
|
|
|
1225
1225
|
${(0,C.yellow)("Learn More:")}
|
|
1226
1226
|
\u2022 Builder.io API keys: https://www.builder.io/c/docs/using-your-api-key#managing-private-keys
|
|
1227
1227
|
\u2022 Figma access token: https://help.figma.com/hc/en-us/articles/8085703771159-Manage-personal-access-tokens
|
|
1228
|
-
\u2022 CI setup guide: https://www.builder.io/c/docs/integrating-builder-figma`);break;case"publish":
|
|
1228
|
+
\u2022 CI setup guide: https://www.builder.io/c/docs/integrating-builder-figma`);break;case"publish":j.info(`${(0,C.cyan)("\u2192")} ${(0,C.bold)("Publish Mappings")}
|
|
1229
1229
|
|
|
1230
1230
|
${(0,C.bgGreen)((0,C.white)(` npx ${xe()} figma publish `))}
|
|
1231
1231
|
|
|
@@ -1237,7 +1237,7 @@ ${(0,C.yellow)("Arguments:")}
|
|
|
1237
1237
|
${(0,C.cyan)("--force")} Force publish even if there are warnings
|
|
1238
1238
|
${(0,C.cyan)("--verbose")} Print output as JSON
|
|
1239
1239
|
${(0,C.cyan)("--dryrun")} Run without making changes
|
|
1240
|
-
${(0,C.cyan)("--yes")} Auto-confirm all prompts`);break;case"migrate":
|
|
1240
|
+
${(0,C.cyan)("--yes")} Auto-confirm all prompts`);break;case"migrate":j.info(`${(0,C.cyan)("\u2192")} ${(0,C.bold)("Migrate Mappings")}
|
|
1241
1241
|
|
|
1242
1242
|
${(0,C.bgGreen)((0,C.white)(` npx ${xe()} figma migrate `))}
|
|
1243
1243
|
|
|
@@ -1249,7 +1249,7 @@ ${(0,C.yellow)("Description:")}
|
|
|
1249
1249
|
${(0,C.yellow)("Arguments:")}
|
|
1250
1250
|
${(0,C.cyan)("--spaceId")} Builder.io space ID to use
|
|
1251
1251
|
${(0,C.cyan)("--force")} Force migration even if there are warnings
|
|
1252
|
-
${(0,C.cyan)("--yes")} Auto-confirm all prompts`);break;case"code":
|
|
1252
|
+
${(0,C.cyan)("--yes")} Auto-confirm all prompts`);break;case"code":j.info(`${(0,C.cyan)("\u2192")} ${(0,C.bold)("Code Generation")}
|
|
1253
1253
|
|
|
1254
1254
|
${(0,C.bgGreen)((0,C.white)(` npx ${xe()} code --url URL `))}
|
|
1255
1255
|
|
|
@@ -1266,7 +1266,7 @@ ${(0,C.yellow)("Arguments:")}
|
|
|
1266
1266
|
${(0,C.yellow)("Configuration Files:")}
|
|
1267
1267
|
${(0,C.cyan)(".builderignore")} Add patterns to exclude files from being included in code generation
|
|
1268
1268
|
${(0,C.cyan)(".builderrules")} Add custom instructions that will be injected into the LLM prompt
|
|
1269
|
-
${(0,C.cyan)(".cursorrules")} Cursor's settings are automatically supported for consistent behavior`);break;case"indexing":
|
|
1269
|
+
${(0,C.cyan)(".cursorrules")} Cursor's settings are automatically supported for consistent behavior`);break;case"indexing":j.info(`${(0,C.cyan)("\u2192")} ${(0,C.bold)("Code Indexing")}
|
|
1270
1270
|
|
|
1271
1271
|
${(0,C.bgGreen)((0,C.white)(` npx ${xe()} code indexing `))}
|
|
1272
1272
|
|
|
@@ -1274,7 +1274,7 @@ Index your codebase to improve code generation results.
|
|
|
1274
1274
|
|
|
1275
1275
|
${(0,C.yellow)("Arguments:")}
|
|
1276
1276
|
${(0,C.cyan)("--spaceId")} Builder.io space ID to use
|
|
1277
|
-
${(0,C.cyan)("--cwd")} Working directory to run commands from`);break;case"index-repo":
|
|
1277
|
+
${(0,C.cyan)("--cwd")} Working directory to run commands from`);break;case"index-repo":j.info(`${(0,C.cyan)("\u2192")} ${(0,C.bold)("Repository Indexing")}
|
|
1278
1278
|
|
|
1279
1279
|
${(0,C.bgGreen)((0,C.white)(` npx ${xe()} index-repo `))}
|
|
1280
1280
|
|
|
@@ -1282,7 +1282,7 @@ Index your entire repository to improve code generation results.
|
|
|
1282
1282
|
|
|
1283
1283
|
${(0,C.yellow)("Arguments:")}
|
|
1284
1284
|
${(0,C.cyan)("--spaceId")} Builder.io space ID to use
|
|
1285
|
-
${(0,C.cyan)("--cwd")} Working directory to run commands from`);break;case"launch":case"fusion":
|
|
1285
|
+
${(0,C.cyan)("--cwd")} Working directory to run commands from`);break;case"launch":case"fusion":j.info(`${(0,C.cyan)("\u2192")} ${(0,C.bold)("Fusion Development Server")}
|
|
1286
1286
|
|
|
1287
1287
|
${(0,C.bgGreen)((0,C.white)(` npx ${xe()} launch -p <port> -c <command> `))}
|
|
1288
1288
|
|
|
@@ -1311,18 +1311,18 @@ ${(0,C.yellow)("Arguments:")}
|
|
|
1311
1311
|
${(0,C.cyan)("--branchName")} Branch name to clone (required)
|
|
1312
1312
|
${(0,C.cyan)("--githubToken")} GitHub token for private repositories
|
|
1313
1313
|
${(0,C.cyan)("--installCommand")} Command to install dependencies (defaults to npm install)
|
|
1314
|
-
${(0,C.cyan)("--volumePath")} Path to clone repository to (defaults to ~/builder)`);break;default:
|
|
1315
|
-
`),[{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"},{command:"index-repo",description:"Index your entire repository to improve code generation results"},{command:"code-server",description:"Start a development server that provides project file information and code analysis"},{command:"launch",description:"Launch a development server"}].forEach(({command:
|
|
1316
|
-
${(0,C.dim)(
|
|
1317
|
-
`)}),
|
|
1318
|
-
Use ${(0,C.cyan)(`npx ${xe()} figma help <command>`)} for detailed help about a command`)}
|
|
1319
|
-
`+(0,Xe.dim)("ESC to interrupt");var Pe=T(require("typescript"),1);function
|
|
1320
|
-
|
|
1321
|
-
${hd(u)}`),at(1);let l=[...
|
|
1322
|
-
However the command required --spaceId=${(0,yt.green)(
|
|
1323
|
-
Please set the FIGMA_PERSONAL_TOKEN environment variable.`);if(!u&&
|
|
1324
|
-
Please set the BUILDER_PRIVATE_KEY environment variable.`);if(!a&&
|
|
1325
|
-
Please set the BUILDER_PUBLIC_KEY environment variable.`);return{figmaAuth:s,builderPublicKey:a,builderPrivateKey:u,userId:
|
|
1314
|
+
${(0,C.cyan)("--volumePath")} Path to clone repository to (defaults to ~/builder)`);break;default:j.info(`${(0,C.bold)("Available Commands:")}
|
|
1315
|
+
`),[{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"},{command:"index-repo",description:"Index your entire repository to improve code generation results"},{command:"code-server",description:"Start a development server that provides project file information and code analysis"},{command:"launch",description:"Launch a development server"}].forEach(({command:r,description:n})=>{j.info(`${(0,C.cyan)("\u2192")} ${(0,C.bgGreen)((0,C.white)(` npx ${xe()} figma ${r} `))}
|
|
1316
|
+
${(0,C.dim)(n)}
|
|
1317
|
+
`)}),j.info(`
|
|
1318
|
+
Use ${(0,C.cyan)(`npx ${xe()} figma help <command>`)} for detailed help about a command`)}an("bye \u{1F44B}")}async function _o(e){let{default:t}=await import("open");await t(e)}var Tw=`
|
|
1319
|
+
`+(0,Xe.dim)("ESC to interrupt");var Pe=T(require("typescript"),1);function Mo(e){return!(e.category!==Pe.DiagnosticCategory.Error||!e.file||e.code===6133||e.code===6138||e.code===6305||e.code===6196||e.code===6192||e.code===6198||e.code===6199||e.code===6205||e.code===1449||e.code===2578||e.code===7006||e.code===5074||e.code===7026||e.code===2503||e.code===2695||e.code===2322)}async function cd(e,t,r){let n=[],i=[t],s=e.relative(e.getAppRootDir(),t.fileName);for(;i.length>0;){let o=i.shift();if(gd(o,t)){let a=md(e,o,t,r),{line:u,character:l}=t.getLineAndCharacterOfPosition(o.getStart());a&&(a.loc=`${s}:${u+1}:${l+1}`,n.push(a))}i.push(...o.getChildren(t))}return n}var pd="figmaMapping";function md(e,t,r,n){let[i]=t.arguments;if(!i)throw new Error("Invalid figmaMapping call, no arguments found");if(!L.default.isObjectLiteralExpression(i))throw new Error("Invalid figmaMapping call, argument is not an object literal");let s=i.properties;if(!s)throw new Error("Invalid figmaMapping call, argument has no properties");let o="",a,u,l,c="-",p=e.basename(r.fileName).replace(/\.mapper\.[tsxjm]+$/,""),m,D,g,f;if(t.typeArguments&&t.typeArguments.length>0){let y=gu(t.typeArguments[0].getText(r));y&&(p=y)}for(let y of s){let F=y.name?.getText(r);if(!F)throw new Error("Invalid figmaMapping call, property has no name");switch(F){case"componentName":{if(!("initializer"in y))throw new Error("Invalid figmaMapping call, componentName has no initializer");let w=y.initializer;if(!L.default.isStringLiteral(w))throw new Error("Invalid figmaMapping call, componentName is not a string literal");a=w.text;break}case"url":{if(!("initializer"in y))throw new Error("Invalid figmaMapping call, url has no initializer");let w=y.initializer;if(!L.default.isStringLiteral(w))throw new Error("Invalid figmaMapping call, url is not a string literal");f=w.text;break}case"componentKey":{if(!("initializer"in y))throw new Error("Invalid figmaMapping call, componentKey has no initializer");let w=y.initializer;if(!L.default.isStringLiteral(w))throw new Error("Invalid figmaMapping call, componentKey is not a string literal");o=w.text;break}case"mapper":if(L.default.isMethodDeclaration(y)){let w=function(E){let U=n.getSymbolAtLocation(E)?.getDeclarations()?.[0];if(U){let I=fd(U);if(I?.importClause){let S=I.importClause.name?.getText(r);return S===c?(m="default",D=S):I.importClause.namedBindings&&L.default.isNamedImports(I.importClause.namedBindings)&&(m="named",I.importClause.namedBindings.elements.forEach(v=>{v.name.getText(r)===c&&(D=v.name.getText(r))})),D&&L.default.isStringLiteral(I.moduleSpecifier)&&(g=I.moduleSpecifier.text),!0}}return!1},b=function(E){if((L.default.isJsxOpeningElement(E)||L.default.isJsxSelfClosingElement(E))&&L.default.isIdentifier(E.tagName)){c=E.tagName.getText(r),w(E.tagName);return}else if(L.default.isTaggedTemplateExpression(E)&&L.default.isIdentifier(E.tag)&&E.tag.escapedText==="html"){if(L.default.isTemplateExpression(E.template)){let U=E.template.templateSpans.find(I=>L.default.isIdentifier(I.expression)&&dd(I.expression.text)&&w(I.expression));if(U&&L.default.isIdentifier(U.expression)){c=U.expression.text;return}}let B=E.template.getText(r).match(/^`\s*<([^\s]+)/);if(B){c=B[1];return}}else L.default.forEachChild(E,b)};var h=w,d=b;if(y.parameters[0].type){let E=y.parameters[0].type.getText(r),B=gu(E);B&&(p=B)}L.default.forEachChild(y,b),l=y.getText(r).replace(/^mapper/,"function Mapper"),u=jo(l);break}case"designTokenMapper":if(L.default.isMethodDeclaration(y)){l=y.getText(r).replace(/^designTokenMapper/,"function Mapper"),u=jo(l),o="design-tokens";break}case"genericMapper":if(L.default.isMethodDeclaration(y)){l=y.getText(r).replace(/^genericMapper/,"function Mapper"),u=jo(l),o="*";break}}}if(!o&&!f)throw new Error("Invalid figmaMapping call, no componentKey or url found");if(!o&&!u)throw new Error("Invalid figmaMapping call, no mapper found");if(!o&&!l)throw new Error("Invalid figmaMapping call, no original mapper found");return{builderName:c,figmaName:a??p,figmaKey:o,figmaUrl:f,inputMapper:u,exportType:m,importName:D,importPath:g,originalInputMapper:l,imports:Cd(r),source:"cli"}}function dd(e){return e.charAt(0)===e.charAt(0).toUpperCase()}function jo(e){return L.default.transpile(e,{target:L.default.ScriptTarget.Latest,allowNonTsExtensions:!0,moduleResolution:L.default.ModuleResolutionKind.NodeJs,module:L.default.ModuleKind.CommonJS,noImplicitAny:!1,esModuleInterop:!0,noUnusedLocals:!1,noUnusedParameters:!1,jsx:L.default.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 fd(e){let t=e;for(;t;){if(L.default.isImportDeclaration(t))return t;t=t.parent}}function gd(e,t){return L.default.isCallExpression(e)&&e.expression.getText(t)===pd}async function Du(e){let t=["node_modules","dist","build","public"];return(await e.readdirRecursive(e.getAppRootDir(),t)).filter(n=>he(n))}function gu(e){let t=e.match(/^Figma(\w+)Props$/);if(t&&typeof t[1]=="string")return t[1]}async function hu(e,t,r,n=!1){try{return r||(r=await ir(e)),(await r.setPublicApiKey({publicApiKey:t})).modifiedType==="permission-error"?!1:(n&&await r.ensureFigmaImportPage(),!0)}catch{return!1}}var Dd={getCanonicalFileName:e=>e,getCurrentDirectory:()=>L.default.sys.getCurrentDirectory(),getNewLine:()=>L.default.sys.newLine};function hd(e){return L.default.formatDiagnosticsWithColorAndContext(e,Dd)}async function Cu({sys:e,mappingFiles:t,typeCheck:r}){if(e.Sentry?.setContext("findMappings",{mappingFiles:t}),!t.length)return{mapperFiles:[],figmaBuilderLinks:[],figmaLinksToResolve:[],diagnostics:[]};let n=[],i=[],s=[],o=await Z(e,t),a=o.getTypeChecker(),u=o.getSyntacticDiagnostics().filter(Mo).filter(p=>p.file?.fileName?t.includes(p.file.fileName):!1);if(u.length>0)return j.error(`At least one of the mappings contain syntactic errors:
|
|
1320
|
+
|
|
1321
|
+
${hd(u)}`),at(1);let l=[...r?o.getSemanticDiagnostics():[]].filter(Mo);for(let p of t)try{let m=o.getSourceFile(p);if(!m){e.Sentry?.captureException(new Error("Could not find source file"),{extra:{file:p,sourceFiles:o.getSourceFiles().map(f=>f.fileName)},level:"warning"});continue}let D=m?.fileName;if(i.push({filePath:p,content:m.getText()}),D){let f=l.filter(h=>h.file?.fileName===D);f.length>0&&s.push(...f)}let g=await cd(e,m,a);n.push(...g)}catch(m){return e.Sentry?.captureException(m),await at(1)}let c=n.filter(p=>p.figmaUrl&&!p.figmaKey).map(p=>p.figmaUrl);return{mapperFiles:i,figmaBuilderLinks:n,figmaLinksToResolve:c,diagnostics:s}}function Cd(e){let t=[];for(let r of e.statements){if(!L.default.isImportDeclaration(r)||!r.importClause||r.importClause.isTypeOnly||!L.default.isStringLiteral(r.moduleSpecifier))continue;let n=r.moduleSpecifier.text;if(n.startsWith("@builder.io"))continue;r.importClause.name&&t.push({importType:"default",importName:r.importClause.name.text,importPath:n});let i=r.importClause.namedBindings;if(i&&L.default.isNamedImports(i))for(let s of i.elements)s.isTypeOnly||t.push({importType:"named",importName:s.name.text,importPath:n})}return t}var Fu=require("crypto");var xd=5294,yd=5284,Vo=4,Uo=e=>!!(process.env.CI||e.ci),Yt=async(e,t,r)=>{let n=Uo(t)?{}:bd(e),i=n.spaceName,s,o=t.builderUserId??process.env.BUILDER_USER_ID??n.userId,a=t.builderPublicKey??process.env.BUILDER_PUBLIC_KEY??n.builderPublicKey,u=t.builderPrivateKey??process.env.BUILDER_PRIVATE_KEY??n.builderPrivateKey,l=process.env.FIGMA_PERSONAL_TOKEN??t.figmaToken;if(l?s={access_token:l,oauth:!1}:s=n.figmaAuth,r.forceSpaceId&&!t.yes&&a&&a!==r.forceSpaceId&&(j.warning(`CLI is currently logged in space ${(0,yt.yellow)(a)},
|
|
1322
|
+
However the command required --spaceId=${(0,yt.green)(r.forceSpaceId)}`),await sn({message:"Do you wanna switch spaces?",active:"Yes",inactive:`Stay in current ${i} space`})?(a=r.forceSpaceId,u=void 0,i=void 0,o=void 0):j.warning("Staying in the current space. Some other auth issues might occur.")),Uo(t)){if(!s&&r.figmaAuth)throw new Error(`No Figma personal token found.
|
|
1323
|
+
Please set the FIGMA_PERSONAL_TOKEN environment variable.`);if(!u&&r.builderPrivateKey)throw new Error(`No Builder private key found.
|
|
1324
|
+
Please set the BUILDER_PRIVATE_KEY environment variable.`);if(!a&&r.builderPublicKey)throw new Error(`No Builder public key found.
|
|
1325
|
+
Please set the BUILDER_PUBLIC_KEY environment variable.`);return{figmaAuth:s,builderPublicKey:a,builderPrivateKey:u,userId:o,spaceName:i}}if((r.force||!s&&r.figmaAuth)&&(s=await Fd(e),xu(e,{figmaAuth:s})),r.force||!u&&r.builderPrivateKey||!a&&r.builderPublicKey){let{privateKey:c,spaceId:p,spaceName:m,userId:D}=await wd(e,r.forceSpaceId);if(r.forceSpaceId&&p!==r.forceSpaceId)throw new Error(`OAuth flow returned space ${(0,yt.yellow)(p)}, however the command specified --spaceId=${(0,yt.green)(r.forceSpaceId)}`);a=p,u=c,i=m,o=D,await Ja(o),await ct(e,e.getAppRootDir())&&(await hu(e,p,void 0,!1)||j.warn("Unable to set public api key in an existing .env file or create a new one. Please ensure you have write access in the current directory.")),xu(e,{builderPublicKey:a,builderPrivateKey:u,spaceName:i,userId:o})}return o&&e.Sentry?.setUser({id:o,username:process.env.USER||process.env.USERNAME||"unknown"}),(i||a)&&e.Sentry?.setContext("builder",{spaceId:a,spaceName:i,userId:o}),{figmaAuth:s,builderPublicKey:a,builderPrivateKey:u,spaceName:i,userId:o}},Ed="RHr2ed743waC2g2ZHMEJSn6O0NQ08L";async function Fd(e){let t=(0,Fu.randomUUID)();return wu({sys:e,name:"Figma",initialPort:xd,requestListener:async(r,n,i,s,o)=>{let a=new URL(n.url||"",`http://localhost:${r}`);if(a.pathname==="/figma-connect"){let u=a.searchParams.get("code"),l=a.searchParams.get("state"),c="nrGCqw6TLl95QJhVDi097A",p=Ed,D=`Basic ${Buffer.from(`${c}:${p}`).toString("base64")}`;if(u&&t===l){let g=await Ct("https://api.figma.com/v1/oauth/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Authorization:D},body:new URLSearchParams({redirect_uri:`http://localhost:${r}/figma-connect`,code:u,grant_type:"authorization_code"}).toString()});g.ok||o(new Error("Failed to get figma access token"));let f=await g.json();i.end(`<!doctype html>
|
|
1326
1326
|
<html lang="en" dir="ltr">
|
|
1327
1327
|
<head>
|
|
1328
1328
|
<meta charset="utf-8" />
|
|
@@ -1431,7 +1431,7 @@ Please set the BUILDER_PUBLIC_KEY environment variable.`);return{figmaAuth:s,bui
|
|
|
1431
1431
|
<!--SCRIPT_PLACEHOLDER-->
|
|
1432
1432
|
</body>
|
|
1433
1433
|
</html>
|
|
1434
|
-
`.replace("{{MESSAGE}}","The CLI has authenticated correctly with Figma"),()=>{s({...f,oauth:!0})})}}},onListen:
|
|
1434
|
+
`.replace("{{MESSAGE}}","The CLI has authenticated correctly with Figma"),()=>{s({...f,oauth:!0})})}}},onListen:r=>{let n=new URL("https://www.figma.com/oauth");return n.searchParams.set("client_id","nrGCqw6TLl95QJhVDi097A"),n.searchParams.set("redirect_uri",`http://localhost:${r}/figma-connect`),n.searchParams.set("scope","files:read,file_dev_resources:read,file_variables:read"),n.searchParams.set("state",t),n.searchParams.set("response_type","code"),n.href}})}async function wd(e,t){let r=await e.getDeviceId();return wu({sys:e,name:"Builder.io",initialPort:yd,requestListener:async(n,i,s,o)=>{let a=new URL(i.url||"",`http://localhost:${n}`);a.pathname===Ft&&s.end(`<!doctype html>
|
|
1435
1435
|
<html lang="en" dir="ltr">
|
|
1436
1436
|
<head>
|
|
1437
1437
|
<meta charset="utf-8" />
|
|
@@ -1540,5 +1540,5 @@ Please set the BUILDER_PUBLIC_KEY environment variable.`);return{figmaAuth:s,bui
|
|
|
1540
1540
|
<!--SCRIPT_PLACEHOLDER-->
|
|
1541
1541
|
</body>
|
|
1542
1542
|
</html>
|
|
1543
|
-
`.replace("{{MESSAGE}}","The CLI has authenticated correctly with Builder.io"),()=>{
|
|
1544
|
-
OPEN: ${(0,yt.dim)(m)}`),
|
|
1543
|
+
`.replace("{{MESSAGE}}","The CLI has authenticated correctly with Builder.io"),()=>{o({privateKey:a.searchParams.get("p-key")||"",spaceId:a.searchParams.get("api-key")||"",spaceName:a.searchParams.get("org-name")||"",userId:a.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 s=new URL(Ft,`http://localhost:${n}`);s.searchParams.set(Tn,(0,Eu.platform)()),s.searchParams.set(In,process.versions.node);let o=e.getFrameworks();return o.length>0&&(i.searchParams.set(Rt,o[0].name),s.searchParams.set(Rt,o[0].name)),i.searchParams.set("redirect_url",s.href),i.href}})}function xu(e,t){let r=[(0,Ze.join)(e.getAppRootDir(),"node_modules",".builder","data.json"),(0,Ze.join)(e.getRepoRootDir(),".git",".builder.json")],n;for(let i of r)if((0,$e.existsSync)(i)){n=i;break}if(n)try{let i=(0,$e.readFileSync)(n,"utf8");t=Object.assign(JSON.parse(i).credentials,t)}catch(i){e.Sentry?.captureException(i)}else(0,$e.existsSync)((0,Ze.join)(e.getAppRootDir(),"package.json"))?n=(0,Ze.join)(e.getAppRootDir(),"node_modules",".builder","data.json"):n=(0,Ze.join)(e.getRepoRootDir(),".git",".builder.json"),(0,$e.mkdirSync)((0,Ze.dirname)(n),{recursive:!0});(0,$e.writeFileSync)(n,JSON.stringify({credentials:t},null,2))}function bd(e){let t=[(0,Ze.join)(e.getAppRootDir(),"node_modules",".builder","data.json"),(0,Ze.join)(e.getRepoRootDir(),".git",".builder.json")];for(let r of t)if((0,$e.existsSync)(r))try{let n=(0,$e.readFileSync)(r,"utf8");return JSON.parse(n).credentials}catch(n){e.Sentry?.captureException(n)}return{}}async function wu(e){let t,r,n,i=new Promise((p,m)=>{t=p,r=m}),s=e.initialPort,o=0,a=(0,yu.createServer)((p,m)=>e.requestListener(s,p,m,t,r)),u=()=>{l(),a&&("closeAllConnections"in a&&a.closeAllConnections(),a.close(p=>{p&&e.sys.Sentry?.captureException(p)}))};process.on("uncaughtExceptionMonitor",u),process.on("unhandledRejection",u),process.on("SIGINT",u),process.on("SIGTERM",u),process.on("exit",u);let l=()=>{process.removeListener("uncaughtExceptionMonitor",u),process.removeListener("unhandledRejection",u),process.removeListener("SIGINT",u),process.removeListener("SIGTERM",u),process.removeListener("exit",u)},c=()=>new Promise((p,m)=>{let D=g=>{a.removeListener("error",D),g.code==="EADDRINUSE"&&o<Vo?(j.warning(`Port ${s} is already in use, trying next port`),s++,o++,p(0)):m(g)};a.once("error",D),a.listen(s,()=>{a.removeListener("error",D);let g=a.address();p(g.port)})});try{let p=0;for(;p===0&&o<Vo;)p=await c();if(p===0)throw new Error(`Failed to find an available port after ${Vo} attempts`);let m=e.onListen(p);j.warn(`Required authenticating with ${e.name}
|
|
1544
|
+
OPEN: ${(0,yt.dim)(m)}`),n=cr(),n.start(`Waiting for ${e.name} authentication`),await _o(m);let D=await i;return n&&n.stop(`Authenticated with ${e.name} successfully`),D}catch(p){throw n&&(n.stop(`Failed to authenticate with ${e.name}.`,-1),Lo("auth")),e.sys.Sentry?.captureException(p),u(),p}finally{u()}}async function Su(e,t,r,n){try{if(!e)return Xt(r,n,400,"Builder context closed");let i=Td(r);if(i.pathname===gr){if(r.method==="POST"){let s=await Pd(r);if(s)try{let o=await Ci(e,JSON.parse(s));return bu(r,n,200,o)}catch(o){e.debug("Dev API Error",o.stack||o.message||o);let a={errors:[String(o.message||o)]};return bu(r,n,500,a)}}else if(r.method==="OPTIONS"){let s={"Access-Control-Allow-Methods":"POST, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Cache-Control, X-Builder-Devtools-Version, sentry-trace, baggage"},o=r.headers.origin;o&&o!=="null"?vu(new URL(o))&&(s["Access-Control-Allow-Origin"]=o):s["Access-Control-Allow-Origin"]="*",n.writeHead(200,s),n.end();return}return Xt(r,n,405,`${gr} is an API endpoint used only during development by the Builder.io Devtools client-side script`)}if(i.pathname===Dr)return Sd(r,n,200,await xi(e));if(i.pathname===Go){let s=i.searchParams.get(fr);return s?Ad(n,302,await wi(e,s)):Xt(r,n,400,`Missing ${fr} querystring`)}if(i.pathname===Ft)return vd(r,n,200,await yi(e));if(i.pathname===Wo){await Yt(e,{_:[]},{});let s=await Du(e),{figmaBuilderLinks:o,diagnostics:a}=await Cu({mappingFiles:s,sys:e});return An(r,n,200,"application/json",JSON.stringify({figmaBuilderLinks:o,foundErrors:a.length>0,diagnostics:a,version:2,local:!0},null,2))}return i.pathname===wt?(e.debug(`Close Dev Tools Server Requested: ${i.href}`),setTimeout(()=>{try{t.close(s=>{e.debug(`Dev Tools Server Closed Error: ${s}`)})}catch(s){e.debug(`Error closing devtools server: ${s}`)}},20),Xt(r,n,200,"Closing Dev Tools Server")):Xt(r,n,404,"Not found")}catch(i){return e?.Sentry?.captureException(i),Xt(r,n,500,`Dev Server Error: ${i}`)}}function bu(e,t,r,n){An(e,t,r,"application/json",JSON.stringify(n))}function Sd(e,t,r,n){An(e,t,r,"application/javascript",n)}function vd(e,t,r,n){An(e,t,r,"text/html",n)}function Xt(e,t,r,n){An(e,t,r,"text/plain",n)}function An(e,t,r,n,i){let s={"Content-Type":`${n}; charset=utf-8`,"Cache-Control":"no-cache, no-store, must-revalidate","X-Builder-Devtools-Version":De},o=e.headers.origin;o&&o!=="null"?vu(new URL(o))&&(s["Access-Control-Allow-Origin"]=o):s["Access-Control-Allow-Origin"]="*",t.writeHead(r,s),t.end(i)}function vu(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 Ad(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 Td(e){let t=e.url||"/";return new URL(t,`http://${e.headers.host}`)}async function Au(e){if(globalThis.__builderDevToolsServer)return e.debug("reusing existing devtools server"),globalThis.__builderDevToolsServer.setContext(e),globalThis.__builderDevToolsServer;let t=await Id(e),r=(0,dr.createServer)((i,s)=>{Su(e,r,i,s)}),n=()=>new Promise((i,s)=>{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}`),s(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 Id(e){return new Promise(t=>{let r=e.port;try{(0,dr.request)({hostname:"localhost",port:r,path:wt,method:"GET"},i=>{i.on("end",()=>{e.debug(`${wt} - Response ended`),t(r)})}).on("error",i=>{e.debug(`${wt} - No response ${i}`),t(r)}).end()}catch(n){e.debug(`${wt} - Error ${n}`),t(r)}})}async function To(e){let t={...e,devToolsServerUrl:"",isValid:!1,serverShouldRestart:!1,publicApiKey:"",port:e.port||5273,ignoreMissingConfig:!1,getAllProjectFiles:e.getAllProjectFiles||(()=>Promise.resolve([]))},r=e.getFrameworks().map(s=>s.name).join(", ");t.debug(`create devtools ${Ko} [${r}]`);let n=await Au(t);return t.devToolsServerUrl=n.url,t.port=n.port,{getUrl:()=>t.devToolsServerUrl}}var Ko=De;0&&(module.exports={createDevToolsServer,version});
|