@rindo/core 4.18.1 → 4.18.2-dev.1733699480.1e6d201

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.
Files changed (39) hide show
  1. package/cli/index.cjs +27 -12
  2. package/cli/index.js +27 -12
  3. package/cli/package.json +1 -1
  4. package/compiler/package.json +1 -1
  5. package/compiler/rindo.js +12 -12
  6. package/dev-server/client/index.js +1 -1
  7. package/dev-server/client/package.json +1 -1
  8. package/dev-server/connector.html +2 -2
  9. package/dev-server/index.js +1 -1
  10. package/dev-server/package.json +1 -1
  11. package/dev-server/server-process.js +2 -2
  12. package/internal/app-data/package.json +1 -1
  13. package/internal/client/index.js +56 -24
  14. package/internal/client/package.json +1 -1
  15. package/internal/client/patch-browser.js +1 -1
  16. package/internal/hydrate/index.js +54 -24
  17. package/internal/hydrate/package.json +1 -1
  18. package/internal/hydrate/runner.js +66 -58
  19. package/internal/package.json +1 -1
  20. package/internal/rindo-private.d.ts +4 -3
  21. package/internal/rindo-public-compiler.d.ts +3 -3
  22. package/internal/rindo-public-runtime.d.ts +2 -8
  23. package/internal/testing/index.js +53 -23
  24. package/internal/testing/package.json +1 -1
  25. package/mock-doc/index.cjs +66 -58
  26. package/mock-doc/index.d.ts +36 -30
  27. package/mock-doc/index.js +66 -58
  28. package/mock-doc/package.json +1 -1
  29. package/package.json +4 -5
  30. package/screenshot/index.js +1 -1
  31. package/screenshot/package.json +1 -1
  32. package/screenshot/pixel-match.js +4 -1
  33. package/sys/node/glob.js +1 -1
  34. package/sys/node/index.js +2 -2
  35. package/sys/node/package.json +1 -1
  36. package/sys/node/worker.js +1 -1
  37. package/testing/index.js +26 -5
  38. package/testing/mock-fetch.d.ts +4 -4
  39. package/testing/package.json +1 -1
package/sys/node/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- Rindo Node System v4.18.1 | MIT Licensed | https://rindojs.web.app
2
+ Rindo Node System v4.18.2-dev.1733699480.1e6d201 | MIT Licensed | https://rindojs.web.app
3
3
  */
4
4
  "use strict";var bi=Object.create;var $t=Object.defineProperty;var Ei=Object.getOwnPropertyDescriptor;var Ti=Object.getOwnPropertyNames;var xi=Object.getPrototypeOf,Ci=Object.prototype.hasOwnProperty;var he=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),Sr=(n,t)=>{for(var e in t)$t(n,e,{get:t[e],enumerable:!0})},Lr=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Ti(t))!Ci.call(n,i)&&i!==e&&$t(n,i,{get:()=>t[i],enumerable:!(r=Ei(t,i))||r.enumerable});return n};var ve=(n,t,e)=>(e=n!=null?bi(xi(n)):{},Lr(t||!n||!n.__esModule?$t(e,"default",{value:n,enumerable:!0}):e,n)),Si=n=>Lr($t({},"__esModule",{value:!0}),n);var Dr=he((Ao,Dt)=>{"use strict";var Li=typeof process<"u"&&process.env.TERM_PROGRAM==="Hyper",Oi=typeof process<"u"&&process.platform==="win32",Or=typeof process<"u"&&process.platform==="linux",_t={ballotDisabled:"\u2612",ballotOff:"\u2610",ballotOn:"\u2611",bullet:"\u2022",bulletWhite:"\u25E6",fullBlock:"\u2588",heart:"\u2764",identicalTo:"\u2261",line:"\u2500",mark:"\u203B",middot:"\xB7",minus:"\uFF0D",multiplication:"\xD7",obelus:"\xF7",pencilDownRight:"\u270E",pencilRight:"\u270F",pencilUpRight:"\u2710",percent:"%",pilcrow2:"\u2761",pilcrow:"\xB6",plusMinus:"\xB1",question:"?",section:"\xA7",starsOff:"\u2606",starsOn:"\u2605",upDownArrow:"\u2195"},Ar=Object.assign({},_t,{check:"\u221A",cross:"\xD7",ellipsisLarge:"...",ellipsis:"...",info:"i",questionSmall:"?",pointer:">",pointerSmall:"\xBB",radioOff:"( )",radioOn:"(*)",warning:"\u203C"}),Rr=Object.assign({},_t,{ballotCross:"\u2718",check:"\u2714",cross:"\u2716",ellipsisLarge:"\u22EF",ellipsis:"\u2026",info:"\u2139",questionFull:"\uFF1F",questionSmall:"\uFE56",pointer:Or?"\u25B8":"\u276F",pointerSmall:Or?"\u2023":"\u203A",radioOff:"\u25EF",radioOn:"\u25C9",warning:"\u26A0"});Dt.exports=Oi&&!Li?Ar:Rr;Reflect.defineProperty(Dt.exports,"common",{enumerable:!1,value:_t});Reflect.defineProperty(Dt.exports,"windows",{enumerable:!1,value:Ar});Reflect.defineProperty(Dt.exports,"other",{enumerable:!1,value:Rr})});var wr=he((Ro,er)=>{"use strict";var Ai=n=>n!==null&&typeof n=="object"&&!Array.isArray(n),Ri=/[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g,Di=()=>typeof process<"u"?process.env.FORCE_COLOR!=="0":!1,Pr=()=>{let n={enabled:Di(),visible:!0,styles:{},keys:{}},t=s=>{let l=s.open=`\x1B[${s.codes[0]}m`,a=s.close=`\x1B[${s.codes[1]}m`,d=s.regex=new RegExp(`\\u001b\\[${s.codes[1]}m`,"g");return s.wrap=(c,y)=>{c.includes(a)&&(c=c.replace(d,a+l));let h=l+c+a;return y?h.replace(/\r*\n/g,`${a}$&${l}`):h},s},e=(s,l,a)=>typeof s=="function"?s(l):s.wrap(l,a),r=(s,l)=>{if(s===""||s==null)return"";if(n.enabled===!1)return s;if(n.visible===!1)return"";let a=""+s,d=a.includes(`
5
5
  `),c=l.length;for(c>0&&l.includes("unstyle")&&(l=[...new Set(["unstyle",...l])].reverse());c-- >0;)a=e(n.styles[l[c]],a,d);return a},i=(s,l,a)=>{n.styles[s]=t({name:s,codes:l}),(n.keys[a]||(n.keys[a]=[])).push(s),Reflect.defineProperty(n,s,{configurable:!0,enumerable:!0,set(c){n.alias(s,c)},get(){let c=y=>r(y,c.stack);return Reflect.setPrototypeOf(c,n),c.stack=this.stack?this.stack.concat(s):[s],c}})};return i("reset",[0,0],"modifier"),i("bold",[1,22],"modifier"),i("dim",[2,22],"modifier"),i("italic",[3,23],"modifier"),i("underline",[4,24],"modifier"),i("inverse",[7,27],"modifier"),i("hidden",[8,28],"modifier"),i("strikethrough",[9,29],"modifier"),i("black",[30,39],"color"),i("red",[31,39],"color"),i("green",[32,39],"color"),i("yellow",[33,39],"color"),i("blue",[34,39],"color"),i("magenta",[35,39],"color"),i("cyan",[36,39],"color"),i("white",[37,39],"color"),i("gray",[90,39],"color"),i("grey",[90,39],"color"),i("bgBlack",[40,49],"bg"),i("bgRed",[41,49],"bg"),i("bgGreen",[42,49],"bg"),i("bgYellow",[43,49],"bg"),i("bgBlue",[44,49],"bg"),i("bgMagenta",[45,49],"bg"),i("bgCyan",[46,49],"bg"),i("bgWhite",[47,49],"bg"),i("blackBright",[90,39],"bright"),i("redBright",[91,39],"bright"),i("greenBright",[92,39],"bright"),i("yellowBright",[93,39],"bright"),i("blueBright",[94,39],"bright"),i("magentaBright",[95,39],"bright"),i("cyanBright",[96,39],"bright"),i("whiteBright",[97,39],"bright"),i("bgBlackBright",[100,49],"bgBright"),i("bgRedBright",[101,49],"bgBright"),i("bgGreenBright",[102,49],"bgBright"),i("bgYellowBright",[103,49],"bgBright"),i("bgBlueBright",[104,49],"bgBright"),i("bgMagentaBright",[105,49],"bgBright"),i("bgCyanBright",[106,49],"bgBright"),i("bgWhiteBright",[107,49],"bgBright"),n.ansiRegex=Ri,n.hasColor=n.hasAnsi=s=>(n.ansiRegex.lastIndex=0,typeof s=="string"&&s!==""&&n.ansiRegex.test(s)),n.alias=(s,l)=>{let a=typeof l=="string"?n[l]:l;if(typeof a!="function")throw new TypeError("Expected alias to be the name of an existing color (string) or a function");a.stack||(Reflect.defineProperty(a,"name",{value:s}),n.styles[s]=a,a.stack=[s]),Reflect.defineProperty(n,s,{configurable:!0,enumerable:!0,set(d){n.alias(s,d)},get(){let d=c=>r(c,d.stack);return Reflect.setPrototypeOf(d,n),d.stack=this.stack?this.stack.concat(a.stack):a.stack,d}})},n.theme=s=>{if(!Ai(s))throw new TypeError("Expected theme to be an object");for(let l of Object.keys(s))n.alias(l,s[l]);return n},n.alias("unstyle",s=>typeof s=="string"&&s!==""?(n.ansiRegex.lastIndex=0,s.replace(n.ansiRegex,"")):""),n.alias("noop",s=>s),n.none=n.clear=n.noop,n.stripColor=n.unstyle,n.symbols=Dr(),n.define=i,n};er.exports=Pr();er.exports.create=Pr});var Wr=he((bl,Gr)=>{Gr.exports=function(n){var t={};function e(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return n[r].call(i.exports,i,i.exports,e),i.l=!0,i.exports}return e.m=n,e.c=t,e.i=function(r){return r},e.d=function(r,i,s){e.o(r,i)||Object.defineProperty(r,i,{configurable:!1,enumerable:!0,get:s})},e.n=function(r){var i=r&&r.__esModule?function(){return r.default}:function(){return r};return e.d(i,"a",i),i},e.o=function(r,i){return Object.prototype.hasOwnProperty.call(r,i)},e.p="",e(e.s=14)}([function(n,t){n.exports=require("path")},function(n,t,e){"use strict";t.__esModule=!0;var r=e(173),i=s(r);function s(l){return l&&l.__esModule?l:{default:l}}t.default=function(l){return function(){var a=l.apply(this,arguments);return new i.default(function(d,c){function y(h,A){try{var x=a[h](A),g=x.value}catch(C){c(C);return}if(x.done)d(g);else return i.default.resolve(g).then(function(C){y("next",C)},function(C){y("throw",C)})}return y("next")})}}},function(n,t){n.exports=require("util")},function(n,t){n.exports=require("fs")},function(n,t,e){"use strict";Object.defineProperty(t,"__esModule",{value:!0});class r extends Error{constructor(c,y){super(c),this.code=y}}t.MessageError=r;class i extends r{constructor(c,y,h){super(c,y),this.process=h}}t.ProcessSpawnError=i;class s extends r{}t.SecurityError=s;class l extends r{}t.ProcessTermError=l;class a extends Error{constructor(c,y){super(c),this.responseCode=y}}t.ResponseError=a},function(n,t,e){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFirstSuitableFolder=t.readFirstAvailableStream=t.makeTempDir=t.hardlinksWork=t.writeFilePreservingEol=t.getFileSizeOnDisk=t.walk=t.symlink=t.find=t.readJsonAndFile=t.readJson=t.readFileAny=t.hardlinkBulk=t.copyBulk=t.unlink=t.glob=t.link=t.chmod=t.lstat=t.exists=t.mkdirp=t.stat=t.access=t.rename=t.readdir=t.realpath=t.readlink=t.writeFile=t.open=t.readFileBuffer=t.lockQueue=t.constants=void 0;var r;function i(){return r=B(e(1))}let s=(()=>{var K=(0,(r||i()).default)(function*(G,U,j,V){let te=(()=>{var se=(0,(r||i()).default)(function*(Le){let ge=Le.src,re=Le.dest,Rt=Le.type,He=Le.onFresh||Je,ye=Le.onDone||Je;if(oe.has(re.toLowerCase())?V.verbose(`The case-insensitive file ${re} shouldn't be copied twice in one bulk copy`):oe.add(re.toLowerCase()),Rt==="symlink"){yield Ee((o||u()).default.dirname(re)),He(),Re.symlink.push({dest:re,linkname:ge}),ye();return}if(U.ignoreBasenames.indexOf((o||u()).default.basename(ge))>=0)return;let be=yield Ce(ge),rt;be.isDirectory()&&(rt=yield Se(ge));let Ne;try{Ne=yield Ce(re)}catch(ke){if(ke.code!=="ENOENT")throw ke}if(Ne){let ke=be.isSymbolicLink()&&Ne.isSymbolicLink(),nt=be.isDirectory()&&Ne.isDirectory(),qe=be.isFile()&&Ne.isFile();if(qe&&de.has(re)){ye(),V.verbose(V.lang("verboseFileSkipArtifact",ge));return}if(qe&&be.size===Ne.size&&(0,(X||Q()).fileDatesEqual)(be.mtime,Ne.mtime)){ye(),V.verbose(V.lang("verboseFileSkip",ge,re,be.size,+be.mtime));return}if(ke){let Oe=yield ae(ge);if(Oe===(yield ae(re))){ye(),V.verbose(V.lang("verboseFileSkipSymlink",ge,re,Oe));return}}if(nt){let Oe=yield Se(re);yt(rt,"src files not initialised");for(var Ye=Oe,lt=Array.isArray(Ye),je=0,Ye=lt?Ye:Ye[Symbol.iterator]();;){var Et;if(lt){if(je>=Ye.length)break;Et=Ye[je++]}else{if(je=Ye.next(),je.done)break;Et=je.value}let ft=Et;if(rt.indexOf(ft)<0){let it=(o||u()).default.join(re,ft);if(j.add(it),(yield Ce(it)).isDirectory())for(var Qe=yield Se(it),ut=Array.isArray(Qe),Ue=0,Qe=ut?Qe:Qe[Symbol.iterator]();;){var Tt;if(ut){if(Ue>=Qe.length)break;Tt=Qe[Ue++]}else{if(Ue=Qe.next(),Ue.done)break;Tt=Ue.value}let qt=Tt;j.add((o||u()).default.join(it,qt))}}}}}if(Ne&&Ne.isSymbolicLink()&&(yield(0,(X||Q()).unlink)(re),Ne=null),be.isSymbolicLink()){He();let ke=yield ae(ge);Re.symlink.push({dest:re,linkname:ke}),ye()}else if(be.isDirectory()){Ne||(V.verbose(V.lang("verboseFileFolder",re)),yield Ee(re));let ke=re.split((o||u()).default.sep);for(;ke.length;)oe.add(ke.join((o||u()).default.sep).toLowerCase()),ke.pop();yt(rt,"src files not initialised");let nt=rt.length;nt||ye();for(var Ze=rt,ct=Array.isArray(Ze),Xe=0,Ze=ct?Ze:Ze[Symbol.iterator]();;){var we;if(ct){if(Xe>=Ze.length)break;we=Ze[Xe++]}else{if(Xe=Ze.next(),Xe.done)break;we=Xe.value}let qe=we;G.push({dest:(o||u()).default.join(re,qe),onFresh:He,onDone:function(Oe){function ft(){return Oe.apply(this,arguments)}return ft.toString=function(){return Oe.toString()},ft}(function(){--nt===0&&ye()}),src:(o||u()).default.join(ge,qe)})}}else if(be.isFile())He(),Re.file.push({src:ge,dest:re,atime:be.atime,mtime:be.mtime,mode:be.mode}),ye();else throw new Error(`unsure how to copy this: ${ge}`)});return function(ge){return se.apply(this,arguments)}})(),de=new Set(U.artifactFiles||[]),oe=new Set;for(var ie=G,le=Array.isArray(ie),ne=0,ie=le?ie:ie[Symbol.iterator]();;){var $e;if(le){if(ne>=ie.length)break;$e=ie[ne++]}else{if(ne=ie.next(),ne.done)break;$e=ne.value}let se=$e,Le=se.onDone;se.onDone=function(){U.onProgress(se.dest),Le&&Le()}}U.onStart(G.length);let Re={file:[],symlink:[],link:[]};for(;G.length;){let se=G.splice(0,dt);yield Promise.all(se.map(te))}for(var De=de,at=Array.isArray(De),ze=0,De=at?De:De[Symbol.iterator]();;){var gt;if(at){if(ze>=De.length)break;gt=De[ze++]}else{if(ze=De.next(),ze.done)break;gt=ze.value}let se=gt;j.has(se)&&(V.verbose(V.lang("verboseFilePhantomExtraneous",se)),j.delete(se))}for(var Pe=j,At=Array.isArray(Pe),Ke=0,Pe=At?Pe:Pe[Symbol.iterator]();;){var pt;if(At){if(Ke>=Pe.length)break;pt=Pe[Ke++]}else{if(Ke=Pe.next(),Ke.done)break;pt=Ke.value}let se=pt;oe.has(se.toLowerCase())&&j.delete(se)}return Re});return function(U,j,V,te){return K.apply(this,arguments)}})(),l=(()=>{var K=(0,(r||i()).default)(function*(G,U,j,V){let te=(()=>{var se=(0,(r||i()).default)(function*(Le){let ge=Le.src,re=Le.dest,Rt=Le.onFresh||Je,He=Le.onDone||Je;if(oe.has(re.toLowerCase())){He();return}if(oe.add(re.toLowerCase()),U.ignoreBasenames.indexOf((o||u()).default.basename(ge))>=0)return;let ye=yield Ce(ge),be;ye.isDirectory()&&(be=yield Se(ge));let rt=yield We(re);if(rt){let we=yield Ce(re),ke=ye.isSymbolicLink()&&we.isSymbolicLink(),nt=ye.isDirectory()&&we.isDirectory(),qe=ye.isFile()&&we.isFile();if(ye.mode!==we.mode)try{yield Te(re,ye.mode)}catch(Oe){V.verbose(Oe)}if(qe&&de.has(re)){He(),V.verbose(V.lang("verboseFileSkipArtifact",ge));return}if(qe&&ye.ino!==null&&ye.ino===we.ino){He(),V.verbose(V.lang("verboseFileSkip",ge,re,ye.ino));return}if(ke){let Oe=yield ae(ge);if(Oe===(yield ae(re))){He(),V.verbose(V.lang("verboseFileSkipSymlink",ge,re,Oe));return}}if(nt){let Oe=yield Se(re);yt(be,"src files not initialised");for(var je=Oe,Ne=Array.isArray(je),lt=0,je=Ne?je:je[Symbol.iterator]();;){var Ye;if(Ne){if(lt>=je.length)break;Ye=je[lt++]}else{if(lt=je.next(),lt.done)break;Ye=lt.value}let ft=Ye;if(be.indexOf(ft)<0){let it=(o||u()).default.join(re,ft);if(j.add(it),(yield Ce(it)).isDirectory())for(var Ue=yield Se(it),Et=Array.isArray(Ue),ut=0,Ue=Et?Ue:Ue[Symbol.iterator]();;){var Qe;if(Et){if(ut>=Ue.length)break;Qe=Ue[ut++]}else{if(ut=Ue.next(),ut.done)break;Qe=ut.value}let qt=Qe;j.add((o||u()).default.join(it,qt))}}}}}if(ye.isSymbolicLink()){Rt();let we=yield ae(ge);Re.symlink.push({dest:re,linkname:we}),He()}else if(ye.isDirectory()){V.verbose(V.lang("verboseFileFolder",re)),yield Ee(re);let we=re.split((o||u()).default.sep);for(;we.length;)oe.add(we.join((o||u()).default.sep).toLowerCase()),we.pop();yt(be,"src files not initialised");let ke=be.length;ke||He();for(var Xe=be,Tt=Array.isArray(Xe),ct=0,Xe=Tt?Xe:Xe[Symbol.iterator]();;){var Ze;if(Tt){if(ct>=Xe.length)break;Ze=Xe[ct++]}else{if(ct=Xe.next(),ct.done)break;Ze=ct.value}let nt=Ze;G.push({onFresh:Rt,src:(o||u()).default.join(ge,nt),dest:(o||u()).default.join(re,nt),onDone:function(qe){function Oe(){return qe.apply(this,arguments)}return Oe.toString=function(){return qe.toString()},Oe}(function(){--ke===0&&He()})})}}else if(ye.isFile())Rt(),Re.link.push({src:ge,dest:re,removeDest:rt}),He();else throw new Error(`unsure how to copy this: ${ge}`)});return function(ge){return se.apply(this,arguments)}})(),de=new Set(U.artifactFiles||[]),oe=new Set;for(var ie=G,le=Array.isArray(ie),ne=0,ie=le?ie:ie[Symbol.iterator]();;){var $e;if(le){if(ne>=ie.length)break;$e=ie[ne++]}else{if(ne=ie.next(),ne.done)break;$e=ne.value}let se=$e,Le=se.onDone||Je;se.onDone=function(){U.onProgress(se.dest),Le()}}U.onStart(G.length);let Re={file:[],symlink:[],link:[]};for(;G.length;){let se=G.splice(0,dt);yield Promise.all(se.map(te))}for(var De=de,at=Array.isArray(De),ze=0,De=at?De:De[Symbol.iterator]();;){var gt;if(at){if(ze>=De.length)break;gt=De[ze++]}else{if(ze=De.next(),ze.done)break;gt=ze.value}let se=gt;j.has(se)&&(V.verbose(V.lang("verboseFilePhantomExtraneous",se)),j.delete(se))}for(var Pe=j,At=Array.isArray(Pe),Ke=0,Pe=At?Pe:Pe[Symbol.iterator]();;){var pt;if(At){if(Ke>=Pe.length)break;pt=Pe[Ke++]}else{if(Ke=Pe.next(),Ke.done)break;pt=Ke.value}let se=pt;oe.has(se.toLowerCase())&&j.delete(se)}return Re});return function(U,j,V,te){return K.apply(this,arguments)}})(),a=t.copyBulk=(()=>{var K=(0,(r||i()).default)(function*(G,U,j){let V={onStart:j&&j.onStart||Je,onProgress:j&&j.onProgress||Je,possibleExtraneous:j?j.possibleExtraneous:new Set,ignoreBasenames:j&&j.ignoreBasenames||[],artifactFiles:j&&j.artifactFiles||[]},te=yield s(G,V,V.possibleExtraneous,U);V.onStart(te.file.length+te.symlink.length+te.link.length);let de=te.file,oe=new Map;yield(b||L()).queue(de,(()=>{var ne=(0,(r||i()).default)(function*(ie){let $e;for(;$e=oe.get(ie.dest);)yield $e;U.verbose(U.lang("verboseFileCopy",ie.src,ie.dest));let Re=(0,(X||Q()).copyFile)(ie,function(){return oe.delete(ie.dest)});return oe.set(ie.dest,Re),V.onProgress(ie.dest),Re});return function(ie){return ne.apply(this,arguments)}})(),dt);let le=te.symlink;yield(b||L()).queue(le,function(ne){let ie=(o||u()).default.resolve((o||u()).default.dirname(ne.dest),ne.linkname);return U.verbose(U.lang("verboseFileSymlink",ne.dest,ie)),x(ie,ne.dest)})});return function(U,j,V){return K.apply(this,arguments)}})(),d=t.hardlinkBulk=(()=>{var K=(0,(r||i()).default)(function*(G,U,j){let V={onStart:j&&j.onStart||Je,onProgress:j&&j.onProgress||Je,possibleExtraneous:j?j.possibleExtraneous:new Set,artifactFiles:j&&j.artifactFiles||[],ignoreBasenames:[]},te=yield l(G,V,V.possibleExtraneous,U);V.onStart(te.file.length+te.symlink.length+te.link.length);let de=te.link;yield(b||L()).queue(de,(()=>{var le=(0,(r||i()).default)(function*(ne){U.verbose(U.lang("verboseFileLink",ne.src,ne.dest)),ne.removeDest&&(yield(0,(X||Q()).unlink)(ne.dest)),yield Mt(ne.src,ne.dest)});return function(ne){return le.apply(this,arguments)}})(),dt);let oe=te.symlink;yield(b||L()).queue(oe,function(le){let ne=(o||u()).default.resolve((o||u()).default.dirname(le.dest),le.linkname);return U.verbose(U.lang("verboseFileSymlink",le.dest,ne)),x(ne,le.dest)})});return function(U,j,V){return K.apply(this,arguments)}})(),c=t.readFileAny=(()=>{var K=(0,(r||i()).default)(function*(G){for(var V=G,U=Array.isArray(V),j=0,V=U?V:V[Symbol.iterator]();;){var te;if(U){if(j>=V.length)break;te=V[j++]}else{if(j=V.next(),j.done)break;te=j.value}let de=te;if(yield We(de))return Zt(de)}return null});return function(U){return K.apply(this,arguments)}})(),y=t.readJson=(()=>{var K=(0,(r||i()).default)(function*(G){return(yield h(G)).object});return function(U){return K.apply(this,arguments)}})(),h=t.readJsonAndFile=(()=>{var K=(0,(r||i()).default)(function*(G){let U=yield Zt(G);try{return{object:(0,(F||H()).default)(JSON.parse(Ot(U))),content:U}}catch(j){throw j.message=`${G}: ${j.message}`,j}});return function(U){return K.apply(this,arguments)}})(),A=t.find=(()=>{var K=(0,(r||i()).default)(function*(G,U){let j=U.split((o||u()).default.sep);for(;j.length;){let V=j.concat(G).join((o||u()).default.sep);if(yield We(V))return V;j.pop()}return!1});return function(U,j){return K.apply(this,arguments)}})(),x=t.symlink=(()=>{var K=(0,(r||i()).default)(function*(G,U){try{if((yield Ce(U)).isSymbolicLink()&&(yield Ae(U))===G)return}catch(j){if(j.code!=="ENOENT")throw j}if(yield(0,(X||Q()).unlink)(U),process.platform==="win32")yield Ft(G,U,"junction");else{let j;try{j=(o||u()).default.relative((E||S()).default.realpathSync((o||u()).default.dirname(U)),(E||S()).default.realpathSync(G))}catch(V){if(V.code!=="ENOENT")throw V;j=(o||u()).default.relative((o||u()).default.dirname(U),G)}yield Ft(j||".",U)}});return function(U,j){return K.apply(this,arguments)}})(),g=t.walk=(()=>{var K=(0,(r||i()).default)(function*(G,U,j=new Set){let V=[],te=yield Se(G);j.size&&(te=te.filter(function(ie){return!j.has(ie)}));for(var le=te,de=Array.isArray(le),oe=0,le=de?le:le[Symbol.iterator]();;){var ne;if(de){if(oe>=le.length)break;ne=le[oe++]}else{if(oe=le.next(),oe.done)break;ne=oe.value}let ie=ne,$e=U?(o||u()).default.join(U,ie):ie,Re=(o||u()).default.join(G,ie),at=yield Ce(Re);V.push({relative:$e,basename:ie,absolute:Re,mtime:+at.mtime}),at.isDirectory()&&(V=V.concat(yield g(Re,$e,j)))}return V});return function(U,j){return K.apply(this,arguments)}})(),C=t.getFileSizeOnDisk=(()=>{var K=(0,(r||i()).default)(function*(G){let U=yield Ce(G),j=U.size,V=U.blksize;return Math.ceil(j/V)*V});return function(U){return K.apply(this,arguments)}})(),T=(()=>{var K=(0,(r||i()).default)(function*(G){if(!(yield We(G)))return;let U=yield Y(G);for(let j=0;j<U.length;++j){if(U[j]===vi)return`\r
@@ -47,6 +47,6 @@ See: https://github.com/isaacs/node-glob/issues/167`);if(!(this instanceof k))re
47
47
  `))}N("D",[`${o} ${u}`])}else{let F=et([w],n.getColumns());d(F),console.log(F.join(`
48
48
  `)),N("I",[`${o} ${u}`]),P&&P.push(`${o} ${u}`)}b&&console.log("")},R=(o,u=!1,f)=>{let v=Date.now(),b=()=>Date.now()-v,L={duration:b,finish:(P,w,F,H)=>{let X=b(),Q;return X>1e3?Q="in "+(X/1e3).toFixed(2)+" s":parseFloat(X.toFixed(3))>0?Q="in "+X+" ms":Q="in less than 1 ms",I(P,Q,w,!!F,!!H,u,f),X}};return C(o,u,f),L},N=(o,u)=>{if(e){let f=new Date,v=""+("0"+f.getHours()).slice(-2)+":"+("0"+f.getMinutes()).slice(-2)+":"+("0"+f.getSeconds()).slice(-2)+"."+("0"+Math.floor(f.getMilliseconds()/1e3*10))+" "+("000"+(n.memoryUsage()/1e6).toFixed(1)).slice(-6)+"MB "+o+" "+u.join(", ");r.push(v)}},k=o=>{if(e)try{N("F",["--------------------------------------"]),n.writeLogs(e,r.join(`
49
49
  `),o)}catch{}r.length=0},p=o=>{_.default.enabled=o},E=(o,u)=>{if(!o||o.length===0)return;let f=[""];o.forEach(v=>{f=f.concat(S(v,u))}),console.log(f.join(`
50
- `))},S=(o,u)=>{let f=et([o.messageText],n.getColumns()),v="";o.header&&o.header!=="Build Error"&&(v+=o.header),typeof o.absFilePath=="string"&&typeof o.relFilePath!="string"&&(typeof u!="string"&&(u=n.cwd()),o.relFilePath=n.relativePath(u,o.absFilePath),o.relFilePath.includes("/")||(o.relFilePath="./"+o.relFilePath));let b=o.relFilePath;return typeof b!="string"&&(b=o.absFilePath),typeof b=="string"&&(v.length>0&&(v+=": "),v+=(0,_.cyan)(b),typeof o.lineNumber=="number"&&o.lineNumber>-1&&(v+=(0,_.dim)(":"),v+=(0,_.yellow)(`${o.lineNumber}`),typeof o.columnNumber=="number"&&o.columnNumber>-1&&(v+=(0,_.dim)(":"),v+=(0,_.yellow)(`${o.columnNumber}`)))),v.length>0&&f.unshift(st+v),f.push(""),o.lines&&o.lines.length&&(Pi(o.lines).forEach(P=>{if(!ki(P.text))return;let w="";for(P.lineNumber>-1&&(w=`L${P.lineNumber}: `);w.length<st.length;)w=" "+w;let F=P.text;P.errorCharStart>-1&&(F=D(F,P.errorCharStart,P.errorLength)),w=(0,_.dim)(w),o.language==="typescript"||o.language==="javascript"?w+=M(F):o.language==="scss"||o.language==="css"?w+=O(F):w+=F,f.push(w)}),f.push("")),o.level==="error"?A(f):o.level==="warn"?y(f):o.level==="debug"?g(f):d(f),o.debugText!=null&&t==="debug"&&(f.push(o.debugText),g(et([o.debugText],n.getColumns()))),f},D=(o,u,f)=>{let v=o.length-u+f-1;for(;o.length+st.length>n.getColumns();)if(u>o.length-u+f&&u>5)o=o.slice(1),u--;else if(v>1)o=o.slice(0,-1),v--;else break;let b=[],L=Math.max(o.length,u+f);for(let P=0;P<L;P++){let w=o.charAt(P);P>=u&&P<u+f&&(w=(0,_.bgRed)(w===""?" ":w)),b.push(w)}return b.join("")},M=o=>o.trim().startsWith("//")?(0,_.dim)(o):o.split(" ").map(f=>Ii.indexOf(f)>-1?(0,_.cyan)(f):f).join(" "),O=o=>{let u=!0,f="abcdefghijklmnopqrstuvwxyz-_",v=".#,:}@$[]/*",b=[];for(let L=0;L<o.length;L++){let P=o.charAt(L);if(P===";"||P==="{"?u=!0:v.indexOf(P)>-1&&(u=!1),u&&f.indexOf(P.toLowerCase())>-1){b.push((0,_.cyan)(P));continue}b.push(P)}return b.join("")};return{createLineUpdater:n.createLineUpdater,createTimeSpan:R,debug:x,emoji:n.emoji,enableColors:p,error:h,getLevel:s,info:a,printDiagnostics:E,setLevel:i,setLogFilePath:l,warn:c,writeLogs:k,bgRed:_.bgRed,blue:_.blue,bold:_.bold,cyan:_.cyan,dim:_.dim,gray:_.gray,green:_.green,magenta:_.magenta,red:_.red,yellow:_.yellow}},xt=(n,t)=>tr.indexOf(t)>=tr.indexOf(n),kr=()=>{let n=new Date,t=Ir(n.getMinutes()),e=Ir(n.getSeconds()),r=Math.floor(n.getMilliseconds()/1e3*10);return`[${t}:${e}.${r}]`},Ir=n=>("0"+n.toString()).slice(-2),et=(n,t)=>{let e=[],r=[];n.forEach(s=>{s===null?r.push("null"):typeof s>"u"?r.push("undefined"):typeof s=="string"?s.replace(/\s/gm," ").split(" ").forEach(l=>{l.trim().length&&r.push(l.trim())}):typeof s=="number"||typeof s=="boolean"||typeof s=="function"?r.push(s.toString()):Array.isArray(s)?r.push(()=>s.toString()):Object(s)===s?r.push(()=>s.toString()):r.push(s.toString())});let i=st;return r.forEach(s=>{e.length>25||(typeof s=="function"?(i.trim().length&&e.push(i),e.push(s()),i=st):st.length+s.length>t-1?(i.trim().length&&e.push(i),e.push(st+s),i=st):s.length+i.length>t-1?(e.push(i),i=st+s+" "):i+=s+" ")}),i.trim().length&&e.push(i),e.map(s=>s.trimRight())},Pi=n=>{let e=JSON.parse(JSON.stringify(n));for(let r=0;r<100;r++){if(!wi(e))return e;for(let i=0;i<e.length;i++)if(e[i].text=e[i].text.slice(1),e[i].errorCharStart--,!e[i].text.length)return e}return e},wi=n=>{if(!n.length)return!1;for(let t=0;t<n.length;t++){if(!n[t].text||n[t].text.length<1)return!1;let e=n[t].text.charAt(0);if(e!==" "&&e!==" ")return!1}return!0},ki=n=>n?(n=n.trim(),n.length>0):!1,Ii=["abstract","any","as","break","boolean","case","catch","class","console","const","continue","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","import","in","implements","Infinity","instanceof","let","module","namespace","NaN","new","number","null","public","private","protected","require","return","static","set","string","super","switch","this","throw","try","true","type","typeof","undefined","var","void","with","while","yield"],st=" ";var Fr=()=>{let n=Mi();return Mr(n)};function Mi(){return{cwd:()=>process.cwd(),emoji:a=>process.platform!=="win32"?a:"",getColumns:()=>{var h,A;let y=(A=(h=process==null?void 0:process.stdout)==null?void 0:h.columns)!=null?A:80;return Math.max(Math.min(y,120),60)},memoryUsage:()=>process.memoryUsage().rss,relativePath:(a,d)=>Nr.default.relative(a,d),writeLogs:(a,d,c)=>{if(c)try{Ht.default.accessSync(a)}catch{c=!1}c?Ht.default.appendFileSync(a,d):Ht.default.writeFileSync(a,d)},createLineUpdater:async()=>{let a=await import("readline"),d=Promise.resolve(),c=h=>(h=h.substring(0,process.stdout.columns-5)+"\x1B[0m",d=d.then(()=>new Promise(A=>{a.clearLine(process.stdout,0),a.cursorTo(process.stdout,0,null),process.stdout.write(h,A)}))),y=()=>c("\x1B[?25h");return process.stdout.write("\x1B[?25l"),{update:c,stop:y}}}}var Br=()=>{};var rr=n=>n.flat?n.flat(1):n.reduce((t,e)=>(t.push(...e),t),[]);var $r=n=>typeof n=="function";var mt=n=>typeof n=="string";var Hr=n=>!!n&&(typeof n=="object"||typeof n=="function")&&typeof n.then=="function";var jr=n=>{let t={"{":"}","(":")","[":"]"},e=/\\(.)|(^!|\*|[\].+)]\?|\[[^\\\]]+\]|\{[^\\}]+\}|\(\?[:!=][^\\)]+\)|\([^|]+\|[^\\)]+\))/;if(n==="")return!1;let r;for(;r=e.exec(n);){if(r[2])return!0;let i=r.index+r[0].length,s=r[1],l=s?t[s]:null;if(s&&l){let a=n.indexOf(l,i);a!==-1&&(i=a+1)}n=n.slice(i)}return!1};var Pt=n=>{let t={level:"error",type:"build",header:"Build Error",messageText:"build error",relFilePath:void 0,absFilePath:void 0,lines:[]};return n&&n.push(t),t};var nr=(n,t,e)=>{let r={level:"error",type:"build",header:"Build Error",messageText:"build error",lines:[]};return mt(e)?r.messageText=e.length?e:"UNKNOWN ERROR":t!=null&&(t.stack!=null?r.messageText=t.stack.toString():t.message!=null?r.messageText=t.message.length?t.message:"UNKNOWN ERROR":r.messageText=t.toString()),n!=null&&!ir(r.messageText)&&n.push(r),r};var ir=n=>n===ht,ht="task canceled";var pe=(n,t=!0)=>{if(typeof n!="string")throw new Error("invalid path to normalize");n=Fi(n.trim());let e=Ji(n,ji(n)),r=Hi(e),i=r[0],s=r[1],l=i+r.slice(1).join("/");return l===""?".":i===""&&s&&n.includes("/")&&!s.startsWith(".")&&!s.startsWith("@")&&t?"./"+l:l},Fi=n=>n.replace($i,"/"),Bi="\\",Ur="://",$i=/\\/g,Hi=n=>{if(!Array.isArray(n)||n.length===0)return[];let t=[n[0]];for(let e=1;e<n.length;e++){let r=n[e];if(r&&r!=="."){if(r===".."){if(t.length>1){if(t[t.length-1]!==".."){t.pop();continue}}else if(t[0])continue}t.push(r)}}return t},ji=n=>{let t=Ui(n);return t<0?~t:t},Ui=n=>{if(!n)return 0;let t=n.charCodeAt(0);if(t===47||t===92){if(n.charCodeAt(1)!==t)return 1;let r=n.indexOf(t===47?"/":Bi,2);return r<0?n.length:r+1}if(Xr(t)&&n.charCodeAt(1)===58){let r=n.charCodeAt(2);if(r===47||r===92)return 3;if(n.length===2)return 2}let e=n.indexOf(Ur);if(e!==-1){let r=e+Ur.length,i=n.indexOf("/",r);if(i!==-1){let s=n.slice(0,e),l=n.slice(r,i);if(s==="file"&&(l===""||l==="localhost")&&Xr(n.charCodeAt(i+1))){let a=Xi(n,i+2);if(a!==-1){if(n.charCodeAt(a)===47)return~(a+1);if(a===n.length)return~a}}return~(i+1)}return~n.length}return 0},Xr=n=>n>=97&&n<=122||n>=65&&n<=90,Xi=(n,t)=>{let e=n.charCodeAt(t);if(e===58)return t+1;if(e===37&&n.charCodeAt(t+1)===51){let r=n.charCodeAt(t+2);if(r===97||r===65)return t+3}return-1},Ji=(n,t)=>{let e=n.substring(0,t),r=n.substring(t).split("/"),i=r.length;return i>0&&!r[i-1]&&r.pop(),[e,...r]};var or={};Sr(or,{err:()=>Jr,map:()=>Vi,ok:()=>sr,unwrap:()=>Gi,unwrapErr:()=>Wi});var sr=n=>({isOk:!0,isErr:!1,value:n}),Jr=n=>({isOk:!1,isErr:!0,value:n});function Vi(n,t){if(n.isOk){let e=t(n.value);return e instanceof Promise?e.then(r=>sr(r)):sr(e)}if(n.isErr){let e=n.value;return Jr(e)}throw"should never get here"}var Gi=n=>{if(n.isOk)return n.value;throw n.value},Wi=n=>{if(n.isErr)return n.value;throw n.value};function Vr(n){n.process.on("unhandledRejection",t=>{if(!ir(t)){let e="unhandledRejection";t!=null&&(typeof t=="string"?e+=": "+t:t.stack?e+=": "+t.stack:t.message&&(e+=": "+t.message)),n.logger.error(e)}})}var di=ve(Wr()),xr=require("crypto"),gi=ve(Kr()),ue=ve(require("./graceful-fs.js")),Ve=require("os"),pi=ve(require("os")),ce=ve(require("path"));var Yr=()=>{let n=[],t=s=>{let l=n.findIndex(a=>a.callback===s);return l>-1?(n.splice(l,1),!0):!1};return{emit:(s,l)=>{let a=s.toLowerCase().trim(),d=n.slice();for(let c of d)if(c.eventName==null)try{c.callback(s,l)}catch(y){console.error(y)}else if(c.eventName===a)try{c.callback(l)}catch(y){console.error(y)}},on:(s,l)=>{if(typeof s=="function"){let d=s;return n.push({eventName:null,callback:d}),()=>t(d)}else if(typeof s=="string"&&typeof l=="function"){let a=s.toLowerCase().trim(),d=l;return n.push({eventName:a,callback:d}),()=>t(d)}return()=>!1},unsubscribeAll:()=>{n.length=0}}};var tn=require("./glob.js"),_e=ve(require("path"));var Ct=ve(require("./graceful-fs.js")),St=require("util"),Qr=(0,St.promisify)(Ct.default.copyFile),Zr=(0,St.promisify)(Ct.default.mkdir),qr=(0,St.promisify)(Ct.default.readdir),xl=(0,St.promisify)(Ct.default.readFile),_r=(0,St.promisify)(Ct.default.stat);async function rn(n,t){let e={diagnostics:[],dirPaths:[],filePaths:[]};try{n=rr(await Promise.all(n.map(s=>zi(s,t))));let r=[];for(;n.length>0;){let s=n.splice(0,100);await Promise.all(s.map(l=>nn(e,r,l)))}let i=qi(r);try{await Promise.all(i.map(s=>Zr(s,{recursive:!0})))}catch{}for(;r.length>0;){let s=r.splice(0,100);await Promise.all(s.map(l=>Qr(l.src,l.dest)))}}catch(r){nr(e.diagnostics,r)}return e}async function zi(n,t){return jr(n.src)?await Yi(n,t):[{src:Ki(t,n.src),dest:n.keepDirStructure?_e.default.join(n.dest,n.src):n.dest,warn:n.warn,keepDirStructure:n.keepDirStructure}]}function Ki(n,t){return _e.default.isAbsolute(t)?t:_e.default.join(n,t)}async function Yi(n,t){return(await ar(n.src,{cwd:t,nodir:!0})).map(r=>Qi(n,t,r))}function Qi(n,t,e){let r=_e.default.join(n.dest,n.keepDirStructure?e:_e.default.basename(e));return{src:_e.default.join(t,e),dest:r,warn:n.warn,keepDirStructure:n.keepDirStructure}}async function nn(n,t,e){try{e.src=pe(e.src),e.dest=pe(e.dest),(await _r(e.src)).isDirectory()?(n.dirPaths.includes(e.dest)||n.dirPaths.push(e.dest),await Zi(n,t,e)):es(e.src)||(n.filePaths.includes(e.dest)||n.filePaths.push(e.dest),t.push(e))}catch(r){if(e.warn!==!1){let i=Pt(n.diagnostics);r instanceof Error&&(i.messageText=r.message)}}}async function Zi(n,t,e){try{let r=await qr(e.src);await Promise.all(r.map(async i=>{let s={src:_e.default.join(e.src,i),dest:_e.default.join(e.dest,i),warn:e.warn};await nn(n,t,s)}))}catch(r){nr(n.diagnostics,r)}}function qi(n){let t=[];return n.forEach(e=>{_i(t,_e.default.dirname(e.dest))}),t.sort((e,r)=>{let i=e.split("/").length,s=r.split("/").length;return i<s?-1:i>s?1:e<r?-1:e>r?1:0}),t}function _i(n,t){t=pe(t),!(t===en||t+"/"===en||t==="")&&(n.includes(t)||n.push(t))}var en=pe(_e.default.resolve("/"));function es(n){return n=n.trim().toLowerCase(),ts.some(t=>n.endsWith(t))}var ts=[".ds_store",".gitignore","desktop.ini","thumbs.db"];function ar(n,t){return(0,tn.glob)(n,t)}var Kn=ve(require("./graceful-fs.js")),Yn=ve(require("path")),Qn=ve(fr()),Zn=ve(Tn()),qn=ve(zn()),Gt=class{constructor(t,e){this.nodeResolveModule=t;this.lazyDependencies=e;this.ensured=new Set}async ensure(t,e){let r=[],i=[];if(e.forEach(s=>{if(!this.ensured.has(s)){let{minVersion:l,recommendedVersion:a,maxVersion:d}=this.lazyDependencies[s];try{let c=this.nodeResolveModule.resolveModule(t,s),y=JSON.parse(Kn.default.readFileSync(c,"utf8"));if(d?(0,qn.default)(y.version,`${l} - ${(0,Zn.default)(d)}.x`):(0,Qn.default)(l,y.version)){this.ensured.add(s);return}}catch{}i.push(`${s}@${a}`)}}),i.length>0){let s=Pt(r);s.header="Please install supported versions of dev dependencies with either npm or yarn.",s.messageText=`npm install --save-dev ${i.join(" ")}`}return r}require(t,e){let r=this.getModulePath(t,e);return require(r)}getModulePath(t,e){let r=this.nodeResolveModule.resolveModule(t,e);return Yn.default.dirname(r)}};var Wt=ve(require("./graceful-fs.js")),Be=ve(require("path")),zt=class{constructor(){this.resolveModuleCache=new Map}resolveModule(t,e,r){let i=`${t}:${e}`,s=this.resolveModuleCache.get(i);if(s)return s;if(r&&r.manuallyResolve)return this.resolveModuleManually(t,e,i);if(e.startsWith("@types/"))return this.resolveTypesModule(t,e,i);let l=require("module");t=Be.default.resolve(t);let a=Be.default.join(t,"noop.js"),d=pe(l._resolveFilename(e,{id:a,filename:a,paths:l._nodeModulePaths(t)})),c=pe(Be.default.parse(t).root),y;for(;d!==c;)if(d=pe(Be.default.dirname(d)),y=Be.default.join(d,"package.json"),!!Wt.default.existsSync(y))return this.resolveModuleCache.set(i,y),y;throw new Error(`error loading "${e}" from "${t}"`)}resolveTypesModule(t,e,r){let i=e.split("/"),s=pe(Be.default.parse(t).root),l=pe(Be.default.join(t,"noop.js")),a;for(;l!==s;)if(l=pe(Be.default.dirname(l)),a=Be.default.join(l,"node_modules",i[0],i[1],"package.json"),!!Wt.default.existsSync(a))return this.resolveModuleCache.set(r,a),a;throw new Error(`error loading "${e}" from "${t}"`)}resolveModuleManually(t,e,r){let i=pe(Be.default.parse(t).root),s=pe(Be.default.join(t,"noop.js")),l;for(;s!==i;)if(s=pe(Be.default.dirname(s)),l=Be.default.join(s,"node_modules",e,"package.json"),!!Wt.default.existsSync(l))return this.resolveModuleCache.set(r,l),l;throw new Error(`error loading "${e}" from "${t}"`)}};var Tr=ve(require("./graceful-fs.js")),ni=require("os"),ii=ve(require("path")),si=ve(gr()),fo="https://registry.npmjs.org/@rindo/core",go=1e3*60*60*24*7,Er="https://github.com/rindojs/rindo/blob/main/CHANGELOG.md";async function oi(n,t){try{let e=await po(n);if(e!=null)return()=>{(0,si.default)(t,e)?yo(n,t,e):console.debug(`${n.cyan("@rindo/core")} version ${n.green(t)} is the latest version`)}}catch(e){n.debug(`unable to load latest compiler version: ${e}`)}return Br}async function po(n){try{let t=await vo();if(t==null)return _n(),null;if(!ho(Date.now(),t,go))return null;let e=_n(),r=await mo(fo),i=JSON.parse(r);return await e,i["dist-tags"].latest}catch(t){n.debug(`getLatestCompilerVersion error: ${t}`)}return null}async function mo(n){let t=await import("https");return new Promise((e,r)=>{let i=t.request(n,s=>{if(s.statusCode>299){r(`url: ${n}, staus: ${s.statusCode}`);return}s.once("error",r);let l=[];s.once("end",()=>{e(l.join(""))}),s.on("data",a=>{l.push(a)})});i.once("error",r),i.end()})}function ho(n,t,e){return t+e<n}function vo(){return new Promise(n=>{Tr.default.readFile(ai(),"utf8",(t,e)=>{if(!t&&mt(e))try{n(JSON.parse(e))}catch{}n(null)})})}function _n(){return new Promise(n=>{let t=JSON.stringify(Date.now());Tr.default.writeFile(ai(),t,()=>{n()})})}function ai(){return ii.default.join((0,ni.tmpdir)(),"rindo_last_version_node.json")}function yo(n,t,e){let r="npm install @rindo/core",i=[`Update available: ${t} ${bo} ${e}`,"To get the latest, please run:",r,Er],s=i.reduce((y,h)=>h.length>y?h.length:y,0),l=[],a=Eo;for(;a.length<=s+Kt*2;)a+=ti;a+=To,l.push(a),i.forEach(y=>{let h=ei;for(let A=0;A<Kt;A++)h+=" ";for(h+=y;h.length<=s+Kt*2;)h+=" ";h+=ei,l.push(h)});let d=xo;for(;d.length<=s+Kt*2;)d+=ti;d+=Co,l.push(d);let c=`${ri}${l.join(`
50
+ `))},S=(o,u)=>{let f=et([o.messageText],n.getColumns()),v="";o.header&&o.header!=="Build Error"&&(v+=o.header),typeof o.absFilePath=="string"&&typeof o.relFilePath!="string"&&(typeof u!="string"&&(u=n.cwd()),o.relFilePath=n.relativePath(u,o.absFilePath),o.relFilePath.includes("/")||(o.relFilePath="./"+o.relFilePath));let b=o.relFilePath;return typeof b!="string"&&(b=o.absFilePath),typeof b=="string"&&(v.length>0&&(v+=": "),v+=(0,_.cyan)(b),typeof o.lineNumber=="number"&&o.lineNumber>-1&&(v+=(0,_.dim)(":"),v+=(0,_.yellow)(`${o.lineNumber}`),typeof o.columnNumber=="number"&&o.columnNumber>-1&&(v+=(0,_.dim)(":"),v+=(0,_.yellow)(`${o.columnNumber}`)))),v.length>0&&f.unshift(st+v),f.push(""),o.lines&&o.lines.length&&(Pi(o.lines).forEach(P=>{if(!ki(P.text))return;let w="";for(P.lineNumber>-1&&(w=`L${P.lineNumber}: `);w.length<st.length;)w=" "+w;let F=P.text;P.errorCharStart>-1&&(F=D(F,P.errorCharStart,P.errorLength)),w=(0,_.dim)(w),o.language==="typescript"||o.language==="javascript"?w+=M(F):o.language==="scss"||o.language==="css"?w+=O(F):w+=F,f.push(w)}),f.push("")),o.level==="error"?A(f):o.level==="warn"?y(f):o.level==="debug"?g(f):d(f),o.debugText!=null&&t==="debug"&&(f.push(o.debugText),g(et([o.debugText],n.getColumns()))),f},D=(o,u,f=0)=>{let v=o.length-u+f-1;for(;o.length+st.length>n.getColumns();)if(u>o.length-u+f&&u>5)o=o.slice(1),u--;else if(v>1)o=o.slice(0,-1),v--;else break;let b=[],L=Math.max(o.length,u+f);for(let P=0;P<L;P++){let w=o.charAt(P);P>=u&&P<u+f&&(w=(0,_.bgRed)(w===""?" ":w)),b.push(w)}return b.join("")},M=o=>o.trim().startsWith("//")?(0,_.dim)(o):o.split(" ").map(f=>Ii.indexOf(f)>-1?(0,_.cyan)(f):f).join(" "),O=o=>{let u=!0,f="abcdefghijklmnopqrstuvwxyz-_",v=".#,:}@$[]/*",b=[];for(let L=0;L<o.length;L++){let P=o.charAt(L);if(P===";"||P==="{"?u=!0:v.indexOf(P)>-1&&(u=!1),u&&f.indexOf(P.toLowerCase())>-1){b.push((0,_.cyan)(P));continue}b.push(P)}return b.join("")};return{createLineUpdater:n.createLineUpdater,createTimeSpan:R,debug:x,emoji:n.emoji,enableColors:p,error:h,getLevel:s,info:a,printDiagnostics:E,setLevel:i,setLogFilePath:l,warn:c,writeLogs:k,bgRed:_.bgRed,blue:_.blue,bold:_.bold,cyan:_.cyan,dim:_.dim,gray:_.gray,green:_.green,magenta:_.magenta,red:_.red,yellow:_.yellow}},xt=(n,t)=>tr.indexOf(t)>=tr.indexOf(n),kr=()=>{let n=new Date,t=Ir(n.getMinutes()),e=Ir(n.getSeconds()),r=Math.floor(n.getMilliseconds()/1e3*10);return`[${t}:${e}.${r}]`},Ir=n=>("0"+n.toString()).slice(-2),et=(n,t)=>{let e=[],r=[];n.forEach(s=>{s===null?r.push("null"):typeof s>"u"?r.push("undefined"):typeof s=="string"?s.replace(/\s/gm," ").split(" ").forEach(l=>{l.trim().length&&r.push(l.trim())}):typeof s=="number"||typeof s=="boolean"||typeof s=="function"?r.push(s.toString()):Array.isArray(s)?r.push(()=>s.toString()):Object(s)===s?r.push(()=>s.toString()):r.push(s.toString())});let i=st;return r.forEach(s=>{e.length>25||(typeof s=="function"?(i.trim().length&&e.push(i),e.push(s()),i=st):st.length+s.length>t-1?(i.trim().length&&e.push(i),e.push(st+s),i=st):s.length+i.length>t-1?(e.push(i),i=st+s+" "):i+=s+" ")}),i.trim().length&&e.push(i),e.map(s=>s.trimRight())},Pi=n=>{let e=JSON.parse(JSON.stringify(n));for(let r=0;r<100;r++){if(!wi(e))return e;for(let i=0;i<e.length;i++)if(e[i].text=e[i].text.slice(1),e[i].errorCharStart--,!e[i].text.length)return e}return e},wi=n=>{if(!n.length)return!1;for(let t=0;t<n.length;t++){if(!n[t].text||n[t].text.length<1)return!1;let e=n[t].text.charAt(0);if(e!==" "&&e!==" ")return!1}return!0},ki=n=>n?(n=n.trim(),n.length>0):!1,Ii=["abstract","any","as","break","boolean","case","catch","class","console","const","continue","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","import","in","implements","Infinity","instanceof","let","module","namespace","NaN","new","number","null","public","private","protected","require","return","static","set","string","super","switch","this","throw","try","true","type","typeof","undefined","var","void","with","while","yield"],st=" ";var Fr=()=>{let n=Mi();return Mr(n)};function Mi(){return{cwd:()=>process.cwd(),emoji:a=>process.platform!=="win32"?a:"",getColumns:()=>{var h,A;let y=(A=(h=process==null?void 0:process.stdout)==null?void 0:h.columns)!=null?A:80;return Math.max(Math.min(y,120),60)},memoryUsage:()=>process.memoryUsage().rss,relativePath:(a,d)=>Nr.default.relative(a,d),writeLogs:(a,d,c)=>{if(c)try{Ht.default.accessSync(a)}catch{c=!1}c?Ht.default.appendFileSync(a,d):Ht.default.writeFileSync(a,d)},createLineUpdater:async()=>{let a=await import("readline"),d=Promise.resolve(),c=h=>(h=h.substring(0,process.stdout.columns-5)+"\x1B[0m",d=d.then(()=>new Promise(A=>{a.clearLine(process.stdout,0),a.cursorTo(process.stdout,0,void 0),process.stdout.write(h,A)}))),y=()=>c("\x1B[?25h");return process.stdout.write("\x1B[?25l"),{update:c,stop:y}}}}var Br=()=>{};var rr=n=>n.flat?n.flat(1):n.reduce((t,e)=>(t.push(...e),t),[]);var $r=n=>typeof n=="function";var mt=n=>typeof n=="string";var Hr=n=>!!n&&(typeof n=="object"||typeof n=="function")&&typeof n.then=="function";var jr=n=>{let t={"{":"}","(":")","[":"]"},e=/\\(.)|(^!|\*|[\].+)]\?|\[[^\\\]]+\]|\{[^\\}]+\}|\(\?[:!=][^\\)]+\)|\([^|]+\|[^\\)]+\))/;if(n==="")return!1;let r;for(;r=e.exec(n);){if(r[2])return!0;let i=r.index+r[0].length,s=r[1],l=s?t[s]:null;if(s&&l){let a=n.indexOf(l,i);a!==-1&&(i=a+1)}n=n.slice(i)}return!1};var Pt=n=>{let t={level:"error",type:"build",header:"Build Error",messageText:"build error",relFilePath:void 0,absFilePath:void 0,lines:[]};return n&&n.push(t),t};var nr=(n,t,e)=>{let r={level:"error",type:"build",header:"Build Error",messageText:"build error",lines:[]};return mt(e)?r.messageText=e.length?e:"UNKNOWN ERROR":t!=null&&(t.stack!=null?r.messageText=t.stack.toString():t.message!=null?r.messageText=t.message.length?t.message:"UNKNOWN ERROR":r.messageText=t.toString()),n!=null&&!ir(r.messageText)&&n.push(r),r};var ir=n=>n===ht,ht="task canceled";var pe=(n,t=!0)=>{if(typeof n!="string")throw new Error("invalid path to normalize");n=Fi(n.trim());let e=Ji(n,ji(n)),r=Hi(e),i=r[0],s=r[1],l=i+r.slice(1).join("/");return l===""?".":i===""&&s&&n.includes("/")&&!s.startsWith(".")&&!s.startsWith("@")&&t?"./"+l:l},Fi=n=>n.replace($i,"/"),Bi="\\",Ur="://",$i=/\\/g,Hi=n=>{if(!Array.isArray(n)||n.length===0)return[];let t=[n[0]];for(let e=1;e<n.length;e++){let r=n[e];if(r&&r!=="."){if(r===".."){if(t.length>1){if(t[t.length-1]!==".."){t.pop();continue}}else if(t[0])continue}t.push(r)}}return t},ji=n=>{let t=Ui(n);return t<0?~t:t},Ui=n=>{if(!n)return 0;let t=n.charCodeAt(0);if(t===47||t===92){if(n.charCodeAt(1)!==t)return 1;let r=n.indexOf(t===47?"/":Bi,2);return r<0?n.length:r+1}if(Xr(t)&&n.charCodeAt(1)===58){let r=n.charCodeAt(2);if(r===47||r===92)return 3;if(n.length===2)return 2}let e=n.indexOf(Ur);if(e!==-1){let r=e+Ur.length,i=n.indexOf("/",r);if(i!==-1){let s=n.slice(0,e),l=n.slice(r,i);if(s==="file"&&(l===""||l==="localhost")&&Xr(n.charCodeAt(i+1))){let a=Xi(n,i+2);if(a!==-1){if(n.charCodeAt(a)===47)return~(a+1);if(a===n.length)return~a}}return~(i+1)}return~n.length}return 0},Xr=n=>n>=97&&n<=122||n>=65&&n<=90,Xi=(n,t)=>{let e=n.charCodeAt(t);if(e===58)return t+1;if(e===37&&n.charCodeAt(t+1)===51){let r=n.charCodeAt(t+2);if(r===97||r===65)return t+3}return-1},Ji=(n,t)=>{let e=n.substring(0,t),r=n.substring(t).split("/"),i=r.length;return i>0&&!r[i-1]&&r.pop(),[e,...r]};var or={};Sr(or,{err:()=>Jr,map:()=>Vi,ok:()=>sr,unwrap:()=>Gi,unwrapErr:()=>Wi});var sr=n=>({isOk:!0,isErr:!1,value:n}),Jr=n=>({isOk:!1,isErr:!0,value:n});function Vi(n,t){if(n.isOk){let e=t(n.value);return e instanceof Promise?e.then(r=>sr(r)):sr(e)}if(n.isErr){let e=n.value;return Jr(e)}throw"should never get here"}var Gi=n=>{if(n.isOk)return n.value;throw n.value},Wi=n=>{if(n.isErr)return n.value;throw n.value};function Vr(n){n.process.on("unhandledRejection",t=>{if(!ir(t)){let e="unhandledRejection";t!=null&&(typeof t=="string"?e+=": "+t:t.stack?e+=": "+t.stack:t.message&&(e+=": "+t.message)),n.logger.error(e)}})}var di=ve(Wr()),xr=require("crypto"),gi=ve(Kr()),ue=ve(require("./graceful-fs.js")),Ve=require("os"),pi=ve(require("os")),ce=ve(require("path"));var Yr=()=>{let n=[],t=s=>{let l=n.findIndex(a=>a.callback===s);return l>-1?(n.splice(l,1),!0):!1};return{emit:(s,l)=>{let a=s.toLowerCase().trim(),d=n.slice();for(let c of d)if(c.eventName==null)try{c.callback(s,l)}catch(y){console.error(y)}else if(c.eventName===a)try{c.callback(l)}catch(y){console.error(y)}},on:(s,l)=>{if(typeof s=="function"){let d=s;return n.push({eventName:null,callback:d}),()=>t(d)}else if(typeof s=="string"&&typeof l=="function"){let a=s.toLowerCase().trim(),d=l;return n.push({eventName:a,callback:d}),()=>t(d)}return()=>!1},unsubscribeAll:()=>{n.length=0}}};var tn=require("./glob.js"),_e=ve(require("path"));var Ct=ve(require("./graceful-fs.js")),St=require("util"),Qr=(0,St.promisify)(Ct.default.copyFile),Zr=(0,St.promisify)(Ct.default.mkdir),qr=(0,St.promisify)(Ct.default.readdir),xl=(0,St.promisify)(Ct.default.readFile),_r=(0,St.promisify)(Ct.default.stat);async function rn(n,t){let e={diagnostics:[],dirPaths:[],filePaths:[]};try{n=rr(await Promise.all(n.map(s=>zi(s,t))));let r=[];for(;n.length>0;){let s=n.splice(0,100);await Promise.all(s.map(l=>nn(e,r,l)))}let i=qi(r);try{await Promise.all(i.map(s=>Zr(s,{recursive:!0})))}catch{}for(;r.length>0;){let s=r.splice(0,100);await Promise.all(s.map(l=>Qr(l.src,l.dest)))}}catch(r){nr(e.diagnostics,r)}return e}async function zi(n,t){return jr(n.src)?await Yi(n,t):[{src:Ki(t,n.src),dest:n.keepDirStructure?_e.default.join(n.dest,n.src):n.dest,warn:n.warn,keepDirStructure:n.keepDirStructure}]}function Ki(n,t){return _e.default.isAbsolute(t)?t:_e.default.join(n,t)}async function Yi(n,t){return(await ar(n.src,{cwd:t,nodir:!0})).map(r=>Qi(n,t,r))}function Qi(n,t,e){let r=_e.default.join(n.dest,n.keepDirStructure?e:_e.default.basename(e));return{src:_e.default.join(t,e),dest:r,warn:n.warn,keepDirStructure:n.keepDirStructure}}async function nn(n,t,e){try{e.src=pe(e.src),e.dest=pe(e.dest),(await _r(e.src)).isDirectory()?(n.dirPaths.includes(e.dest)||n.dirPaths.push(e.dest),await Zi(n,t,e)):es(e.src)||(n.filePaths.includes(e.dest)||n.filePaths.push(e.dest),t.push(e))}catch(r){if(e.warn!==!1){let i=Pt(n.diagnostics);r instanceof Error&&(i.messageText=r.message)}}}async function Zi(n,t,e){try{let r=await qr(e.src);await Promise.all(r.map(async i=>{let s={src:_e.default.join(e.src,i),dest:_e.default.join(e.dest,i),warn:e.warn};await nn(n,t,s)}))}catch(r){nr(n.diagnostics,r)}}function qi(n){let t=[];return n.forEach(e=>{_i(t,_e.default.dirname(e.dest))}),t.sort((e,r)=>{let i=e.split("/").length,s=r.split("/").length;return i<s?-1:i>s?1:e<r?-1:e>r?1:0}),t}function _i(n,t){t=pe(t),!(t===en||t+"/"===en||t==="")&&(n.includes(t)||n.push(t))}var en=pe(_e.default.resolve("/"));function es(n){return n=n.trim().toLowerCase(),ts.some(t=>n.endsWith(t))}var ts=[".ds_store",".gitignore","desktop.ini","thumbs.db"];function ar(n,t){return(0,tn.glob)(n,t)}var Kn=ve(require("./graceful-fs.js")),Yn=ve(require("path")),Qn=ve(fr()),Zn=ve(Tn()),qn=ve(zn()),Gt=class{constructor(t,e){this.nodeResolveModule=t;this.lazyDependencies=e;this.ensured=new Set}async ensure(t,e){let r=[],i=[];if(e.forEach(s=>{if(!this.ensured.has(s)){let{minVersion:l,recommendedVersion:a,maxVersion:d}=this.lazyDependencies[s];try{let c=this.nodeResolveModule.resolveModule(t,s),y=JSON.parse(Kn.default.readFileSync(c,"utf8"));if(d?(0,qn.default)(y.version,`${l} - ${(0,Zn.default)(d)}.x`):(0,Qn.default)(l,y.version)){this.ensured.add(s);return}}catch{}i.push(`${s}@${a}`)}}),i.length>0){let s=Pt(r);s.header="Please install supported versions of dev dependencies with either npm or yarn.",s.messageText=`npm install --save-dev ${i.join(" ")}`}return r}require(t,e){let r=this.getModulePath(t,e);return require(r)}getModulePath(t,e){let r=this.nodeResolveModule.resolveModule(t,e);return Yn.default.dirname(r)}};var Wt=ve(require("./graceful-fs.js")),Be=ve(require("path")),zt=class{constructor(){this.resolveModuleCache=new Map}resolveModule(t,e,r){let i=`${t}:${e}`,s=this.resolveModuleCache.get(i);if(s)return s;if(r&&r.manuallyResolve)return this.resolveModuleManually(t,e,i);if(e.startsWith("@types/"))return this.resolveTypesModule(t,e,i);let l=require("module");t=Be.default.resolve(t);let a=Be.default.join(t,"noop.js"),d=pe(l._resolveFilename(e,{id:a,filename:a,paths:l._nodeModulePaths(t)})),c=pe(Be.default.parse(t).root),y;for(;d!==c;)if(d=pe(Be.default.dirname(d)),y=Be.default.join(d,"package.json"),!!Wt.default.existsSync(y))return this.resolveModuleCache.set(i,y),y;throw new Error(`error loading "${e}" from "${t}"`)}resolveTypesModule(t,e,r){let i=e.split("/"),s=pe(Be.default.parse(t).root),l=pe(Be.default.join(t,"noop.js")),a;for(;l!==s;)if(l=pe(Be.default.dirname(l)),a=Be.default.join(l,"node_modules",i[0],i[1],"package.json"),!!Wt.default.existsSync(a))return this.resolveModuleCache.set(r,a),a;throw new Error(`error loading "${e}" from "${t}"`)}resolveModuleManually(t,e,r){let i=pe(Be.default.parse(t).root),s=pe(Be.default.join(t,"noop.js")),l;for(;s!==i;)if(s=pe(Be.default.dirname(s)),l=Be.default.join(s,"node_modules",e,"package.json"),!!Wt.default.existsSync(l))return this.resolveModuleCache.set(r,l),l;throw new Error(`error loading "${e}" from "${t}"`)}};var Tr=ve(require("./graceful-fs.js")),ni=require("os"),ii=ve(require("path")),si=ve(gr()),fo="https://registry.npmjs.org/@rindo/core",go=1e3*60*60*24*7,Er="https://github.com/rindojs/rindo/blob/main/CHANGELOG.md";async function oi(n,t){try{let e=await po(n);if(e!=null)return()=>{(0,si.default)(t,e)?yo(n,t,e):console.debug(`${n.cyan("@rindo/core")} version ${n.green(t)} is the latest version`)}}catch(e){n.debug(`unable to load latest compiler version: ${e}`)}return Br}async function po(n){try{let t=await vo();if(t==null)return _n(),null;if(!ho(Date.now(),t,go))return null;let e=_n(),r=await mo(fo),i=JSON.parse(r);return await e,i["dist-tags"].latest}catch(t){n.debug(`getLatestCompilerVersion error: ${t}`)}return null}async function mo(n){let t=await import("https");return new Promise((e,r)=>{let i=t.request(n,s=>{if(s.statusCode>299){r(`url: ${n}, staus: ${s.statusCode}`);return}s.once("error",r);let l=[];s.once("end",()=>{e(l.join(""))}),s.on("data",a=>{l.push(a)})});i.once("error",r),i.end()})}function ho(n,t,e){return t+e<n}function vo(){return new Promise(n=>{Tr.default.readFile(ai(),"utf8",(t,e)=>{if(!t&&mt(e))try{n(JSON.parse(e))}catch{}n(null)})})}function _n(){return new Promise(n=>{let t=JSON.stringify(Date.now());Tr.default.writeFile(ai(),t,()=>{n()})})}function ai(){return ii.default.join((0,ni.tmpdir)(),"rindo_last_version_node.json")}function yo(n,t,e){let r="npm install @rindo/core",i=[`Update available: ${t} ${bo} ${e}`,"To get the latest, please run:",r,Er],s=i.reduce((y,h)=>h.length>y?h.length:y,0),l=[],a=Eo;for(;a.length<=s+Kt*2;)a+=ti;a+=To,l.push(a),i.forEach(y=>{let h=ei;for(let A=0;A<Kt;A++)h+=" ";for(h+=y;h.length<=s+Kt*2;)h+=" ";h+=ei,l.push(h)});let d=xo;for(;d.length<=s+Kt*2;)d+=ti;d+=Co,l.push(d);let c=`${ri}${l.join(`
51
51
  ${ri}`)}
52
52
  `;c=c.replace(t,n.red(t)),c=c.replace(e,n.green(e)),c=c.replace(r,n.cyan(r)),c=c.replace(Er,n.dim(Er)),console.log(c)}var bo="\u2192",Eo="\u256D",To="\u256E",xo="\u2570",Co="\u256F",ei="\u2502",ti="\u2500",Kt=2,ri=" ";var ci=require("events"),fi=require("os");var li=ve(require("child_process")),ui=require("events"),Yt=class extends ui.EventEmitter{constructor(e,r){super();this.id=e;this.tasks=new Map;this.exitCode=null;this.processQueue=!0;this.sendQueue=[];this.stopped=!1;this.successfulMessage=!1;this.totalTasksAssigned=0;this.fork(r)}fork(e){let i={execArgv:process.execArgv.filter(s=>!/^--(debug|inspect)/.test(s)),env:process.env,cwd:process.cwd(),silent:!0};this.childProcess=li.fork(e,[],i),this.childProcess.stdout.setEncoding("utf8"),this.childProcess.stdout.on("data",s=>{console.log(s)}),this.childProcess.stderr.setEncoding("utf8"),this.childProcess.stderr.on("data",s=>{console.log(s)}),this.childProcess.on("message",this.receiveFromWorker.bind(this)),this.childProcess.on("error",s=>{this.emit("error",s)}),this.childProcess.once("exit",s=>{this.exitCode=s,this.emit("exit",s)})}run(e){this.totalTasksAssigned++,this.tasks.set(e.rindoId,e);let[r,...i]=e.inputArgs;this.sendToWorker({rindoId:e.rindoId,method:r,args:i})}sendToWorker(e){if(!this.processQueue){this.sendQueue.push(e);return}(!this.childProcess.send(e,i=>{if(!(i&&i instanceof Error)&&(this.processQueue=!0,this.sendQueue.length>0)){let s=this.sendQueue.slice();this.sendQueue=[],s.forEach(l=>this.sendToWorker(l))}})||/^win/.test(process.platform))&&(this.processQueue=!1)}receiveFromWorker(e){if(this.successfulMessage=!0,this.stopped)return;let r=this.tasks.get(e.rindoId);if(!r){e.rindoRtnError!=null&&this.emit("error",e.rindoRtnError);return}e.rindoRtnError!=null?r.reject(e.rindoRtnError):r.resolve(e.rindoRtnValue),this.tasks.delete(e.rindoId),this.emit("response",e)}stop(){this.stopped=!0,this.tasks.forEach(e=>e.reject(ht)),this.tasks.clear(),this.successfulMessage?(this.childProcess.send({exit:!0}),setTimeout(()=>{this.exitCode===null&&this.childProcess.kill("SIGKILL")},100)):this.childProcess.kill("SIGKILL")}};var Qt=class extends ci.EventEmitter{constructor(e,r){super();this.forkModulePath=e;this.workerIds=0;this.rindoId=0;this.isEnding=!1;this.taskQueue=[];this.workers=[];let i=(0,fi.cpus)().length;this.useForkedWorkers=r>0,this.maxWorkers=Math.max(Math.min(r,i),2)-1,this.useForkedWorkers?this.startWorkers():this.mainThreadRunner=require(e)}onError(e,r){if(e.code==="ERR_IPC_CHANNEL_CLOSED")return this.stopWorker(r);e.code!=="EPIPE"&&console.error(e)}onExit(e){setTimeout(()=>{let r=!1,i=this.workers.find(s=>s.id===e);i&&(i.tasks.forEach(s=>{s.retries++,this.taskQueue.unshift(s),r=!0}),i.tasks.clear()),this.stopWorker(e),r&&this.processTaskQueue()},10)}startWorkers(){for(;this.workers.length<this.maxWorkers;)this.startWorker()}startWorker(){let e=this.workerIds++,r=new Yt(e,this.forkModulePath);r.on("response",this.processTaskQueue.bind(this)),r.once("exit",()=>{this.onExit(e)}),r.on("error",i=>{this.onError(i,e)}),this.workers.push(r)}stopWorker(e){let r=this.workers.find(i=>i.id===e);if(r){r.stop();let i=this.workers.indexOf(r);i>-1&&this.workers.splice(i,1)}}processTaskQueue(){if(!this.isEnding)for(this.useForkedWorkers&&this.startWorkers();this.taskQueue.length>0;){let e=So(this.workers);if(!e)break;e.run(this.taskQueue.shift())}}send(...e){return this.isEnding?Promise.reject(ht):this.useForkedWorkers?new Promise((r,i)=>{let s={rindoId:this.rindoId++,inputArgs:e,retries:0,resolve:r,reject:i};this.taskQueue.push(s),this.processTaskQueue()}):this.mainThreadRunner[e[0]].apply(null,e.slice(1))}handler(e){return(...r)=>this.send(e,...r)}cancelTasks(){for(let e of this.workers)e.tasks.forEach(r=>r.reject(ht)),e.tasks.clear();this.taskQueue.length=0}destroy(){if(!this.isEnding){this.isEnding=!0;for(let r of this.taskQueue)r.reject(ht);this.taskQueue.length=0;let e=this.workers.map(r=>r.id);for(let r of e)this.stopWorker(r)}}};function So(n){let t=n.filter(r=>!r.stopped);return t.length===0?null:t.sort((r,i)=>r.tasks.size<i.tasks.size?-1:r.tasks.size>i.tasks.size?1:r.totalTasksAssigned<i.totalTasksAssigned?-1:r.totalTasksAssigned>i.totalTasksAssigned?1:0)[0]}function mi(n={}){var x;let t=(x=n==null?void 0:n.process)!=null?x:global.process,e=n==null?void 0:n.logger,r=new Set,i=[],s=(0,Ve.cpus)(),l=s.length,a=(0,Ve.platform)(),d=ce.default.join(__dirname,"..","..","compiler","rindo.js"),c=ce.default.join(__dirname,"..","..","dev-server","index.js"),y=()=>{let g=[],C;for(;$r(C=i.pop());)try{let T=C();Hr(T)&&g.push(T)}catch{}return g.length>0?Promise.all(g):null},h={name:"node",version:t.versions.node,access(g){return new Promise(C=>{ue.default.access(g,T=>C(!T))})},accessSync(g){let C=!1;try{ue.default.accessSync(g),C=!0}catch{}return C},addDestroy(g){r.add(g)},removeDestroy(g){r.delete(g)},applyPrerenderGlobalPatch(g){if(typeof global.fetch!="function"){let C=require(ce.default.join(__dirname,"node-fetch.js"));global.fetch=(T,I)=>{if(typeof T=="string"){let R=new URL(T,g.devServerHostUrl).href;return C.fetch(R,I)}else return T.url=new URL(T.url,g.devServerHostUrl).href,C.fetch(T,I)},global.Headers=C.Headers,global.Request=C.Request,global.Response=C.Response,global.FetchError=C.FetchError}g.window.fetch=global.fetch,g.window.Headers=global.Headers,g.window.Request=global.Request,g.window.Response=global.Response,g.window.FetchError=global.FetchError},fetch:(g,C)=>{let T=require(ce.default.join(__dirname,"node-fetch.js"));if(typeof g=="string"){let I=new URL(g).href;return T.fetch(I,C)}else return g.url=new URL(g.url).href,T.fetch(g,C)},checkVersion:oi,copyFile(g,C){return new Promise(T=>{ue.default.copyFile(g,C,I=>{T(!I)})})},createDir(g,C){return new Promise(T=>{C?ue.default.mkdir(g,C,I=>{T({basename:ce.default.basename(g),dirname:ce.default.dirname(g),path:g,newDirs:[],error:I})}):ue.default.mkdir(g,I=>{T({basename:ce.default.basename(g),dirname:ce.default.dirname(g),path:g,newDirs:[],error:I})})})},createDirSync(g,C){let T={basename:ce.default.basename(g),dirname:ce.default.dirname(g),path:g,newDirs:[],error:null};try{ue.default.mkdirSync(g,C)}catch(I){T.error=I}return T},createWorkerController(g){let C=ce.default.join(__dirname,"worker.js");return new Qt(C,g)},async destroy(){let g=[];r.forEach(C=>{try{let T=C();T&&typeof T.then=="function"&&g.push(T)}catch(T){console.error(`node sys destroy: ${T}`)}}),g.length>0&&await Promise.all(g),r.clear()},dynamicImport(g){return Promise.resolve(require(g))},encodeToBase64(g){return Buffer.from(g).toString("base64")},async ensureDependencies(){return console.warn("ensureDependencies will be removed in a future version of Rindo."),console.warn("To get the rindoPath, please use getCompilerExecutingPath()."),{rindoPath:h.getCompilerExecutingPath(),diagnostics:[]}},async ensureResources(){console.warn("ensureResources is a no-op, and will be removed in a future version of Rindo")},exit:async g=>{await y(),(0,gi.default)(g)},getCurrentDirectory(){return pe(t.cwd())},getCompilerExecutingPath(){return d},getDevServerExecutingPath(){return c},getEnvironmentVar(g){return process.env[g]},getLocalModulePath(){return null},getRemoteModuleUrl(){return null},glob:ar,hardwareConcurrency:l,isSymbolicLink(g){return new Promise(C=>{try{ue.default.lstat(g,(T,I)=>{C(T?!1:I.isSymbolicLink())})}catch{C(!1)}})},nextTick:t.nextTick,normalizePath:pe,onProcessInterrupt:g=>{i.includes(g)||i.push(g)},platformPath:ce.default,readDir(g){return new Promise(C=>{ue.default.readdir(g,(T,I)=>{C(T?[]:I.map(R=>pe(ce.default.join(g,R))))})})},parseYarnLockFile(g){return(0,di.parse)(g)},isTTY(){var g;return!!((g=process==null?void 0:process.stdout)!=null&&g.isTTY)},readDirSync(g){try{return ue.default.readdirSync(g).map(C=>pe(ce.default.join(g,C)))}catch{}return[]},readFile(g,C){return C==="binary"?new Promise(T=>{ue.default.readFile(g,(I,R)=>{T(R)})}):new Promise(T=>{ue.default.readFile(g,"utf8",(I,R)=>{T(R)})})},readFileSync(g){try{return ue.default.readFileSync(g,"utf8")}catch{}},homeDir(){try{return pi.homedir()}catch{}},realpath(g){return new Promise(C=>{ue.default.realpath(g,"utf8",(T,I)=>{C({path:I,error:T})})})},realpathSync(g){let C={path:void 0,error:null};try{C.path=ue.default.realpathSync(g,"utf8")}catch(T){C.error=T}return C},rename(g,C){return new Promise(T=>{ue.default.rename(g,C,I=>{T({oldPath:g,newPath:C,error:I,oldDirs:[],oldFiles:[],newDirs:[],newFiles:[],renamed:[],isFile:!1,isDirectory:!1})})})},resolvePath(g){return pe(g)},removeDir(g,C){return new Promise(T=>{!!(C&&C.recursive)?ue.default.rm(g,{recursive:!0,force:!0},R=>{T({basename:ce.default.basename(g),dirname:ce.default.dirname(g),path:g,removedDirs:[],removedFiles:[],error:R})}):ue.default.rmdir(g,R=>{T({basename:ce.default.basename(g),dirname:ce.default.dirname(g),path:g,removedDirs:[],removedFiles:[],error:R})})})},removeDirSync(g,C){try{return!!(C&&C.recursive)?ue.default.rmSync(g,{recursive:!0,force:!0}):ue.default.rmdirSync(g),{basename:ce.default.basename(g),dirname:ce.default.dirname(g),path:g,removedDirs:[],removedFiles:[],error:null}}catch(T){return{basename:ce.default.basename(g),dirname:ce.default.dirname(g),path:g,removedDirs:[],removedFiles:[],error:T}}},removeFile(g){return new Promise(C=>{ue.default.unlink(g,T=>{C({basename:ce.default.basename(g),dirname:ce.default.dirname(g),path:g,error:T})})})},removeFileSync(g){let C={basename:ce.default.basename(g),dirname:ce.default.dirname(g),path:g,error:null};try{ue.default.unlinkSync(g)}catch(T){C.error=T}return C},setupCompiler(g){let C=g.ts,T=C.sys.watchDirectory,I=C.sys.watchFile;h.watchTimeout=80,h.events=Yr(),h.watchDirectory=(R,N,k)=>{e==null||e.debug(`NODE_SYS_DEBUG::watchDir ${R}`);let p=T(R,S=>{e==null||e.debug(`NODE_SYS_DEBUG::watchDir:callback dir=${R} changedPath=${S}`),N(pe(S),"fileUpdate")},k),E=()=>{p.close()};return h.addDestroy(E),{close(){h.removeDestroy(E),p.close()}}},h.watchFile=(R,N)=>{e==null||e.debug(`NODE_SYS_DEBUG::watchFile ${R}`);let k=I(R,(E,S)=>{E=pe(E),S===C.FileWatcherEventKind.Created?(N(E,"fileAdd"),h.events.emit("fileAdd",E)):S===C.FileWatcherEventKind.Changed?(N(E,"fileUpdate"),h.events.emit("fileUpdate",E)):S===C.FileWatcherEventKind.Deleted&&(N(E,"fileDelete"),h.events.emit("fileDelete",E))},250,{watchFile:C.WatchFileKind.FixedPollingInterval,fallbackPolling:C.PollingWatchKind.FixedInterval}),p=()=>{k.close()};return h.addDestroy(p),{close(){h.removeDestroy(p),k.close()}}}},stat(g){return new Promise(C=>{ue.default.stat(g,(T,I)=>{C(T?{isDirectory:!1,isFile:!1,isSymbolicLink:!1,size:0,mtimeMs:0,error:T}:{isDirectory:I.isDirectory(),isFile:I.isFile(),isSymbolicLink:I.isSymbolicLink(),size:I.size,mtimeMs:I.mtimeMs,error:null})})})},statSync(g){try{let C=ue.default.statSync(g);return{isDirectory:C.isDirectory(),isFile:C.isFile(),isSymbolicLink:C.isSymbolicLink(),size:C.size,mtimeMs:C.mtimeMs,error:null}}catch(C){return{isDirectory:!1,isFile:!1,isSymbolicLink:!1,size:0,mtimeMs:0,error:C}}},tmpDirSync(){return(0,Ve.tmpdir)()},writeFile(g,C){return new Promise(T=>{ue.default.writeFile(g,C,I=>{T({path:g,error:I})})})},writeFileSync(g,C){let T={path:g,error:null};try{ue.default.writeFileSync(g,C)}catch(I){T.error=I}return T},generateContentHash(g,C){let T=(0,xr.createHash)("sha1").update(g).digest("hex").toLowerCase();return typeof C=="number"&&(T=T.slice(0,C)),Promise.resolve(T)},generateFileHash(g,C){return new Promise((T,I)=>{let R=(0,xr.createHash)("sha1");ue.default.createReadStream(g).on("error",N=>I(N)).on("data",N=>R.update(N)).on("end",()=>{let N=R.digest("hex").toLowerCase();typeof C=="number"&&(N=N.slice(0,C)),T(N)})})},copy:rn,details:{cpuModel:(Array.isArray(s)&&s.length>0?s[0]&&s[0].model:"")||"",freemem(){return(0,Ve.freemem)()},platform:a==="darwin"||a==="linux"?a:a==="win32"?"windows":"",release:(0,Ve.release)(),totalmem:(0,Ve.totalmem)()}},A=new zt;return h.lazyRequire=new Gt(A,{"@types/jest":{minVersion:"24.9.1",recommendedVersion:"29",maxVersion:"29.0.0"},jest:{minVersion:"24.9.0",recommendedVersion:"29",maxVersion:"29.0.0"},"jest-cli":{minVersion:"24.9.0",recommendedVersion:"29",maxVersion:"29.0.0"},puppeteer:{minVersion:"10.0.0",recommendedVersion:"20"},"puppeteer-core":{minVersion:"10.0.0",recommendedVersion:"20"},"workbox-build":{minVersion:"4.3.1",recommendedVersion:"4.3.1"}}),t.on("SIGINT",y),t.on("exit",y),h}0&&(module.exports={createNodeLogger,createNodeSys,setupNodeProcess});
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rindo/core/sys/node",
3
- "version": "4.18.1",
3
+ "version": "4.18.2-dev.1733699480.1e6d201",
4
4
  "description": "Rindo Node System.",
5
5
  "main": "./index.js",
6
6
  "types": "./index.d.ts",
@@ -1,4 +1,4 @@
1
1
  /*!
2
- Rindo Node System Worker v4.18.1 | MIT Licensed | https://rindojs.web.app
2
+ Rindo Node System Worker v4.18.2-dev.1733699480.1e6d201 | MIT Licensed | https://rindojs.web.app
3
3
  */
4
4
  "use strict";var f=Object.create;var s=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,R=Object.prototype.hasOwnProperty;var g=(r,e,d,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of E(e))!R.call(r,o)&&o!==d&&s(r,o,{get:()=>e[o],enumerable:!(t=p(e,o))||t.enumerable});return r};var a=(r,e,d)=>(d=r!=null?f(y(r)):{},g(e||!r||!r.__esModule?s(d,"default",{value:r,enumerable:!0}):d,r));var l=a(require("../../compiler/rindo.js")),m=a(require("./index.js"));var c=(r,e)=>{let d=o=>{o&&o.code==="ERR_IPC_CHANNEL_CLOSED"&&r.exit(0)},t=(o,n)=>{let i={rindoId:o,rindoRtnValue:null,rindoRtnError:"Error"};typeof n=="string"?i.rindoRtnError+=": "+n:n&&(n.stack?i.rindoRtnError+=": "+n.stack:n.message&&(i.rindoRtnError+=":"+n.message)),r.send(i,d)};r.on("message",async o=>{if(o&&typeof o.rindoId=="number")try{let n={rindoId:o.rindoId,rindoRtnValue:await e(o),rindoRtnError:null};r.send(n,d)}catch(n){t(o.rindoId,n)}}),r.on("unhandledRejection",o=>{t(-1,o)})};var k=m.createNodeSys({process}),M=l.createWorkerMessageHandler(k);c(process,M);
package/testing/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- Rindo Testing v4.18.1 | MIT Licensed | https://rindojs.web.app
2
+ Rindo Testing v4.18.2-dev.1733699480.1e6d201 | MIT Licensed | https://rindojs.web.app
3
3
  */
4
4
  "use strict";
5
5
 
@@ -5699,6 +5699,9 @@ var getJestFacade = () => {
5699
5699
  JEST_RINDO_FACADE = new Jest27Rindo();
5700
5700
  }
5701
5701
  }
5702
+ if (!JEST_RINDO_FACADE) {
5703
+ throw new Error("Rindo could not determine the Jest version being used.");
5704
+ }
5702
5705
  return JEST_RINDO_FACADE;
5703
5706
  };
5704
5707
  var getRunner = () => {
@@ -9591,10 +9594,28 @@ var E2EElement = class extends import_mock_doc19.MockHTMLElement {
9591
9594
  (elm, pseudoElt2) => {
9592
9595
  const rtn = {};
9593
9596
  const computedStyle = window.getComputedStyle(elm, pseudoElt2);
9594
- const keys = Object.keys(computedStyle);
9597
+ const keys = [
9598
+ ...Object.keys(computedStyle),
9599
+ /**
9600
+ * include CSS variables defined within the style attribute
9601
+ * of an element, e.g.:
9602
+ * ```
9603
+ * <my-component style="--my-component-text-color: rgb(255, 0, 0);"></my-component>
9604
+ * ```
9605
+ */
9606
+ ...Array.from(elm.style)
9607
+ ];
9595
9608
  keys.forEach((key) => {
9596
9609
  if (isNaN(key)) {
9597
- const value = computedStyle[key];
9610
+ const value = (
9611
+ /**
9612
+ * access property directly for any known css property
9613
+ */
9614
+ computedStyle[key] || /**
9615
+ * use `getPropertyValue` for css variables
9616
+ */
9617
+ computedStyle.getPropertyValue(key)
9618
+ );
9598
9619
  if (value != null) {
9599
9620
  rtn[key] = value;
9600
9621
  }
@@ -9888,7 +9909,6 @@ async function compareScreenshot(emulateConfig, screenshotBuildData, currentScre
9888
9909
  const currentImageName = `${currentImageHash}.png`;
9889
9910
  const currentImagePath = (0, import_path26.join)(screenshotBuildData.imagesDir, currentImageName);
9890
9911
  await writeScreenshotImage(currentImagePath, currentScreenshotBuf);
9891
- currentScreenshotBuf = null;
9892
9912
  if (testPath) {
9893
9913
  testPath = normalizePath((0, import_path26.relative)(screenshotBuildData.rootDir, testPath));
9894
9914
  }
@@ -9961,6 +9981,7 @@ async function compareScreenshot(emulateConfig, screenshotBuildData, currentScre
9961
9981
  }
9962
9982
  async function getMismatchedPixels(pixelmatchModulePath, pixelMatchInput, screenshotTimeoutMs) {
9963
9983
  return new Promise((resolve3, reject) => {
9984
+ var _a;
9964
9985
  const timeout = screenshotTimeoutMs !== null ? screenshotTimeoutMs : typeof jasmine !== "undefined" && jasmine.DEFAULT_TIMEOUT_INTERVAL ? jasmine.DEFAULT_TIMEOUT_INTERVAL * 0.5 : DEFAULT_SCREENSHOT_TIMEOUT;
9965
9986
  const tmr = setTimeout(() => {
9966
9987
  reject(`getMismatchedPixels timeout: ${timeout}ms`);
@@ -9984,7 +10005,7 @@ async function getMismatchedPixels(pixelmatchModulePath, pixelMatchInput, screen
9984
10005
  clearTimeout(tmr);
9985
10006
  reject(err2);
9986
10007
  });
9987
- pixelMatchProcess.stderr.on("data", (data) => {
10008
+ (_a = pixelMatchProcess.stderr) == null ? void 0 : _a.on("data", (data) => {
9988
10009
  error = data.toString();
9989
10010
  });
9990
10011
  pixelMatchProcess.on("exit", (code) => {
@@ -2,10 +2,10 @@ import { MockResponse } from '@rindo/core/mock-doc';
2
2
  export declare function setupMockFetch(global: any): void;
3
3
  export declare function mockFetchReset(): void;
4
4
  export declare const mockFetch: {
5
- json(data: any, url?: string): void;
6
- text(data: string, url?: string): void;
7
- response(rsp: MockResponse, url?: string): void;
8
- reject(rsp?: MockResponse, url?: string): void;
5
+ json(data: any, url: string): void;
6
+ text(data: string, url: string): void;
7
+ response(rsp: MockResponse, url: string): void;
8
+ reject(rsp: MockResponse, url: string): void;
9
9
  reset: typeof mockFetchReset;
10
10
  };
11
11
  export { MockHeaders, MockRequest, MockRequestInfo, MockRequestInit, MockResponse, MockResponseInit, } from '@rindo/core/mock-doc';
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rindo/core/testing",
3
- "version": "4.18.1",
3
+ "version": "4.18.2-dev.1733699480.1e6d201",
4
4
  "description": "Rindo testing suite.",
5
5
  "main": "./index.js",
6
6
  "types": "./index.d.ts",