@latticexyz/utils 0.10.0 → 0.11.1
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/CHANGELOG.md +10 -0
- package/dist/CoordMap.d.ts +26 -0
- package/dist/area.d.ts +3 -0
- package/{src/arrays.ts → dist/arrays.d.ts} +2 -8
- package/dist/console.d.ts +52 -0
- package/dist/cubic.d.ts +32 -0
- package/dist/deferred.d.ts +5 -0
- package/{src/distance.ts → dist/distance.d.ts} +1 -3
- package/dist/enums.d.ts +5 -0
- package/dist/eth.d.ts +22 -0
- package/dist/guards.d.ts +3 -0
- package/dist/hash.d.ts +6 -0
- package/{src/index.ts → dist/index.d.ts} +1 -13
- package/dist/index.js +802 -0
- package/dist/index.js.map +1 -0
- package/dist/iterable.d.ts +10 -0
- package/{src/math.ts → dist/math.d.ts} +1 -4
- package/dist/mobx.d.ts +6 -0
- package/dist/objects.d.ts +11 -0
- package/dist/pack.d.ts +16 -0
- package/dist/promise.d.ts +4 -0
- package/dist/proxy.d.ts +8 -0
- package/{src/random.ts → dist/random.d.ts} +2 -7
- package/dist/rx.d.ts +30 -0
- package/dist/sleep.d.ts +1 -0
- package/dist/types.d.ts +40 -0
- package/dist/uuid.d.ts +19 -0
- package/dist/worker.d.ts +6 -0
- package/package.json +9 -5
- package/jest.config.js +0 -5
- package/rollup.config.js +0 -16
- package/src/CoordMap.spec.ts +0 -57
- package/src/CoordMap.ts +0 -106
- package/src/area.ts +0 -15
- package/src/console.ts +0 -62
- package/src/cubic.spec.ts +0 -14
- package/src/cubic.ts +0 -109
- package/src/deferred.ts +0 -14
- package/src/enums.ts +0 -13
- package/src/eth.ts +0 -42
- package/src/guards.ts +0 -10
- package/src/hash.ts +0 -11
- package/src/iterable.spec.ts +0 -56
- package/src/iterable.ts +0 -59
- package/src/mobx.ts +0 -26
- package/src/objects.ts +0 -16
- package/src/pack.spec.ts +0 -37
- package/src/pack.ts +0 -61
- package/src/promise.ts +0 -45
- package/src/proxy.spec.ts +0 -186
- package/src/proxy.ts +0 -101
- package/src/rx.spec.ts +0 -45
- package/src/rx.ts +0 -124
- package/src/sleep.ts +0 -3
- package/src/types.ts +0 -48
- package/src/uuid.ts +0 -70
- package/src/worker.ts +0 -16
- package/tsconfig.json +0 -102
- package/typedoc.json +0 -9
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/arrays.ts","../src/deferred.ts","../src/mobx.ts","../src/guards.ts","../src/proxy.ts","../src/enums.ts","../src/objects.ts","../src/random.ts","../src/rx.ts","../src/uuid.ts","../src/sleep.ts","../src/promise.ts","../src/iterable.ts","../src/area.ts","../src/hash.ts","../src/worker.ts","../src/pack.ts","../src/CoordMap.ts","../src/eth.ts","../src/cubic.ts","../src/console.ts","../src/distance.ts","../src/math.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["keccak256Bytes"],"mappings":";;;;;;AAAA;;;;AAIG;AACG,SAAU,UAAU,CAAI,KAAU,EAAA;AACtC,IAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,KAAK,CAAC;AACrC,IAAA,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;AAKG;AACG,SAAU,mBAAmB,CAAI,KAAwB,EAAA;AAC7D,IAAA,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,IAAI,CAAQ,CAAC;AACvD;;AClBA;;;AAGG;SACa,QAAQ,GAAA;IACtB,IAAI,OAAO,GAA4B,IAAI,CAAC;IAC5C,IAAI,MAAM,GAAgC,IAAI,CAAC;IAC/C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAI,CAAC,CAAC,EAAE,EAAE,KAAI;QACvC,OAAO,GAAG,CAAC,CAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACzB,MAAM,GAAG,CAAC,CAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/B,KAAC,CAAC,CAAC;;AAEH,IAAA,OAAO,CAAC,OAAc,EAAE,MAAa,EAAE,OAAO,CAAC,CAAC;AAClD;;ACVA;;;AAGG;AACI,eAAe,UAAU,CAAI,IAAqE,EAAA;IACvG,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,QAAQ,EAAK,CAAC;AAE3C,IAAA,MAAM,OAAO,GAAG,QAAQ,CACtB,MAAM,IAAI,CAAC,GAAG,EAAE,EAChB,CAAC,KAAK,KAAI;AACR,QAAA,IAAI,KAAK,EAAE;YACT,OAAO,CAAC,KAAK,CAAC,CAAC;AAChB,SAAA;AACH,KAAC,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAC;AAEF,IAAA,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC;;AAE5B,IAAA,OAAO,EAAE,CAAC;AAEV,IAAA,OAAO,KAAK,CAAC;AACf;;ACtBM,SAAU,QAAQ,CAAC,CAAU,EAAA;AACjC,IAAA,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;AAClE,CAAC;AAEK,SAAU,UAAU,CAAC,CAAU,EAAA;IACnC,OAAO,CAAC,YAAY,QAAQ,CAAC;AAC/B;;ACTA;AAOA,SAAS,UAAU,CAAC,MAA+B,EAAE,IAAc,EAAA;AACjE,IAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,MAAM,CAAC;AACrC,IAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;AAC7B,IAAA,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AAChC,IAAA,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;AAChF,IAAA,OAAO,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC;AAED;;;;AAIG;AACG,SAAU,eAAe,CAC7B,MAAuE,EAAA;;;;;IAMvE,MAAM,SAAS,GAKT,EAAE,CAAC;;;;;AAMT,IAAA,MAAM,aAAa,GAAG,IAAI,SAAS,CACjC,EAAE,EACF;QACE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAA;AACV,YAAA,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC;AACjC,YAAA,IAAI,WAAW,EAAE;;;gBAGf,IAAI,IAAI,KAAK,SAAS;AAAE,oBAAA,OAAO,KAAK,CAAC;gBACrC,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AACvC,aAAA;AAAM,iBAAA;;;gBAGL,IAAI,IAAI,KAAK,SAAS;AAAE,oBAAA,OAAO,IAAI,CAAC;gBACpC,IAAI,IAAI,KAAK,MAAM;AAAE,oBAAA,OAAO,eAAe,CAAC;gBAC5C,IAAI,IAAI,KAAK,QAAQ;oBAAE,OAAO,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxD,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;AAChC,aAAA;SACF;AACD,QAAA,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAA;AACpB,YAAA,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC;AACjC,YAAA,IAAI,WAAW,EAAE;;gBAEf,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AACtD,gBAAA,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;AAAE,oBAAA,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;gBACvE,OAAO,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACjD,aAAA;AAAM,iBAAA;;;gBAGL,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,EAAE,CAAC;AAC9C,gBAAA,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AAC3D,gBAAA,OAAO,OAAO,CAAC;AAChB,aAAA;SACF;AACF,KAAA,CACF,CAAC;AAEF,IAAA,QAAQ,CACN,MAAM,MAAM,CAAC,GAAG,EAAE,EAClB,CAAC,WAAW,KAAI;AACd,QAAA,IAAI,CAAC,WAAW;YAAE,OAAO;;QAEzB,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACxC,QAAA,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,WAAW,EAAE;YACzD,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AAC7C,YAAA,IAAI,IAAI,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE;gBAC9B,CAAC,YAAW;oBACV,IAAI;wBACF,OAAO,CAAC,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;AAChC,qBAAA;AAAC,oBAAA,OAAO,CAAM,EAAE;wBACf,MAAM,CAAC,CAAC,CAAC,CAAC;AACX,qBAAA;iBACF,GAAG,CAAC;AACN,aAAA;AAAM,iBAAA;gBACL,OAAO,CAAC,MAAM,CAAC,CAAC;AACjB,aAAA;AACF,SAAA;AACH,KAAC,CACF,CAAC;AAEF,IAAA,OAAO,aAA0B,CAAC;AACpC;;ACpGA;;;AAGG;AACG,SAAU,SAAS,CAAC,GAAW,EAAA;IACnC,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;QACpC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;YACvB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AACxB,SAAA;AACF,KAAA;AACD,IAAA,OAAO,IAAI,CAAC;AACd;;ACZA;;;;;AAKG;AACa,SAAA,SAAS,CACvB,MAAS,EACT,QAAyD,EAAA;IAEzD,MAAM,MAAM,GAA0D,EAAE,CAAC;AACzE,IAAA,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;AACxB,QAAA,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAC1C,KAAA;AACD,IAAA,OAAO,MAAW,CAAC;AACrB;;ACfA;;;;;AAKG;SACa,MAAM,CAAC,EAAU,EAAE,IAAI,GAAG,CAAC,EAAA;AACzC,IAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;AAC5D,CAAC;AAED;;;AAGG;AACG,SAAU,UAAU,CAAI,KAAkB,EAAA;IAC9C,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;AACzC;;SCGgB,aAAa,GAAA;AAC3B,IAAA,OAAO,IAAI,CACT,MAAM,CAAI,CAAC,CAAI,KAAK,CAAC,IAAI,IAAI,CAAwC,CACtE,CAAC;AACJ,CAAC;SAEe,YAAY,GAAA;AAC1B,IAAA,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAI,KAAK,CAAC,CAAC,CAAoC,CAAC;AACzE,CAAC;AAED;;;;AAIG;AACG,SAAU,OAAO,CAAI,cAAsB,EAAA;AAC/C,IAAA,OAAO,IAAI,CACT,SAAS,EAAK,EACd,IAAI,CAAC,CAAC,GAA8C,EAAE,IAAkB,KAAI;;QAE1E,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,GAAG,KAAK,IAAI,EAAE;YAChB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;AACjD,YAAA,KAAK,GAAG,SAAS,GAAG,cAAc,GAAG,CAAC,GAAG,cAAc,GAAG,SAAS,CAAC;AACrE,SAAA;QAED,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;AACzB,YAAA,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;AACJ,KAAC,EAAE,IAAI,CAAC,EACR,aAAa,EAAE,EACf,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CACrD,CAAC;AACJ,CAAC;AAEK,SAAU,oBAAoB,CAAI,GAAwB,EAAA;IAC9D,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;AACnC,CAAC;AAEK,SAAU,gBAAgB,CAAI,IAA6C,EAAA;AAC/E,IAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAI,CAAC,CAAC,CAAC;AACvC,IAAA,QAAQ,CACN,MAAM,IAAI,CAAC,GAAG,EAAE,EAChB,CAAC,KAAK,KAAI;QACR,IAAI,KAAK,IAAI,IAAI;AAAE,YAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxC,KAAC,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAC;AACF,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;AAEK,SAAU,kBAAkB,CAAI,GAAM,EAAA;AAC1C,IAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAI,CAAC,CAAC,CAAC;AACvC,IAAA,QAAQ,CACN,MAAM,IAAI,CAAC,GAAG,CAAC,EACf,CAAC,KAAK,KAAI;QACR,IAAI,KAAK,IAAI,IAAI;AAAE,YAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxC,KAAC,EACD,EAAE,eAAe,EAAE,IAAI,EAAE,CAC1B,CAAC;AACF,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;AAEK,SAAU,gBAAgB,CAAI,OAAsB,EAAA;AACxD,IAAA,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAiB,CAAC;IAC9C,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,KAAK,WAAW,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC9D,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;AACrC,CAAC;AAEM,eAAe,uBAAuB,CAAI,OAAsB,EAAA;AACrE,IAAA,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAK,CAAC;IAClC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,KAAK,WAAW,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC9D,IAAA,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;AAClD,IAAA,MAAM,UAAU,CAAC,aAAa,CAAC,CAAC;AAChC,IAAA,OAAO,aAAkC,CAAC;AAC5C,CAAC;AAED;;;;;AAKG;AACI,eAAe,gBAAgB,CACpC,OAAsB,EACtB,SAAmC,GAAA,CAAC,KAAK,KAAK,KAAK,IAAI,IAAI,EAAA;IAE3D,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,QAAQ,EAAK,CAAC;AAC3C,IAAA,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AAClD,IAAA,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;AAIG;AACI,eAAe,oBAAoB,CAAI,OAAsB,EAAA;IAClE,MAAM,KAAK,GAAoB,EAAE,CAAC;AAClC,IAAA,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;IAC9C,KAAK,CAAC,OAAO,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAChD,IAAA,OAAO,KAAuB,CAAC;AACjC;;AC3HA;;;;;;;;AAQG;AAEH;;;;AAIG;AAEH;AAEA;;;AAGG;AACU,MAAA,IAAI,GAAG,YAAA;AAClB,IAAA,MAAM,IAAI,GAAG,aAAa,EACxB,GAAG,GAAG,WAAW,CAAC;IACpB,QACE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAChB,GAAG;QACH,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAChB,GAAG;QACH,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzB,GAAG;QACH,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzB,GAAG;QACH,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EACjB;AACJ,EAAE;AAEF;;;;;AAKG;AACH,MAAM,aAAa,GAAG,UAAU,CAAS,EAAA;AACvC,IAAA,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE;AACnB,QAAA,OAAO,GAAG,CAAC;AACZ,KAAA;AACD,IAAA,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC;AAC3C,IAAA,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,UAAU,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;AAC5F,CAAC,CAAC;AAEF;;;;;;AAMG;AACH,MAAM,WAAW,GAAG,UAAU,GAAW,EAAE,MAAc,EAAA;IACvD,IAAI,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EACxB,CAAC,GAAG,MAAM,GAAG,GAAG,CAAC,MAAM,EACvB,CAAC,GAAG,GAAG,CAAC;IACV,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;QAC9B,IAAI,CAAC,GAAG,CAAC,EAAE;AACT,YAAA,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;AACf,SAAA;AACF,KAAA;AACD,IAAA,OAAO,GAAG,CAAC;AACb,CAAC;;ACrEe,SAAA,KAAK,CAAI,OAAe,EAAE,OAAW,EAAA;IACnD,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,KAAK,UAAU,CAAC,MAAM,OAAO,CAAC,OAAY,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AACvF;;ACFA;AAIa,MAAA,KAAK,GAAG,WAAW,KAAK,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAA;;AAE3D,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,MAAM,IAAI,GAAG,CAAC,EAAE,GAAG,IAAI,EAAE,GAAE;AACxD,EAAE;AAEK,eAAe,WAAW,CAAI,EAAU,EAAE,GAAW,EAAA;AAC1D,IAAA,MAAM,KAAK,CAAC,EAAE,CAAC,CAAC;AAChB,IAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACvB,CAAC;AAEM,MAAM,YAAY,GAAG,OAAU,OAAmB,EAAE,EAAU,EAAE,UAAkB,KAAI;AAC3F,IAAA,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,WAAW,CAAI,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;AACjE,EAAE;AAEW,MAAA,aAAa,GAAG,CAC3B,EAAkC,EAClC,IAAc,GAAA,EAAE,EAChB,UAAU,GAAG,EAAE,EACf,aAAa,GAAG,IAAI,KACN;IACd,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,EAAK,CAAC;AACjD,IAAA,MAAM,OAAO,GAAG,YAAW;AACzB,QAAA,IAAI,GAAM,CAAC;QACX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;YACnC,IAAI;AACF,gBAAA,GAAG,GAAG,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,CAAC;gBACb,MAAM;AACP,aAAA;AAAC,YAAA,OAAO,CAAC,EAAE;AACV,gBAAA,IAAI,CAAC,GAAG,UAAU,GAAG,CAAC,EAAE;AACtB,oBAAA,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;oBACjC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AAC5E,iBAAA;AAAM,qBAAA;oBACL,MAAM,CAAC,CAAqB,CAAC,CAAC;AAC/B,iBAAA;AACF,aAAA;AACF,SAAA;AACH,KAAC,CAAC;AACF,IAAA,OAAO,EAAE,CAAC;AACV,IAAA,OAAO,OAAO,CAAC;AACjB;;AC5CM,SAAU,YAAY,CAAI,QAAqB,EAAA;AACnD,IAAA,MAAM,QAAQ,GAAwB;AACpC,QAAA,GAAG,QAAQ;QACX,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAA;AACf,YAAA,OAAO,IAAI,CAAC;SACb;KACF,CAAC;AAEF,IAAA,OAAO,QAAQ,CAAC;AAClB,CAAC;AAEe,SAAA,eAAe,CAAI,KAAkB,EAAE,MAAoB,EAAA;AACzE,IAAA,IAAI,CAAC,MAAM;AAAE,QAAA,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;AACxC,IAAA,OAAO,YAAY,CAAC;QAClB,IAAI,GAAA;AACF,YAAA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,IAAI;AAAE,gBAAA,OAAO,IAAI,CAAC;AAC5B,YAAA,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;SACtB;AACF,KAAA,CAAC,CAAC;AACL,CAAC;AAEe,SAAA,cAAc,CAAO,SAAsB,EAAE,SAAsB,EAAA;AACjF,IAAA,MAAM,QAAQ,GAAqB;QACjC,IAAI,GAAA;AACF,YAAA,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;AAC/B,YAAA,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;AAC/B,YAAA,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI;gBAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACjE,YAAA,OAAO,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;SAC9C;KACF,CAAC;AACF,IAAA,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;AAChC,CAAC;AAEe,SAAA,iBAAiB,CAAO,QAAqB,EAAE,SAA0B,EAAA;AACvF,IAAA,OAAO,YAAY,CAAC;QAClB,IAAI,GAAA;YACF,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;AACxC,YAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;SACzD;AACF,KAAA,CAAC,CAAC;AACL,CAAC;AAED;;;;AAIG;AACG,SAAU,eAAe,CAAI,KAAU,EAAA;IAC3C,IAAI,CAAC,GAAG,CAAC,CAAC;AACV,IAAA,MAAM,QAAQ,GAAgB;QAC5B,IAAI,GAAA;AACF,YAAA,MAAM,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC;AAC/B,YAAA,IAAI,IAAI;AAAE,gBAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YACvC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;SAC9B;KACF,CAAC;AACF,IAAA,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;AAChC;;ACxDgB,SAAA,YAAY,CAAC,IAAU,EAAE,KAAY,EAAA;AACnD,IAAA,OAAO,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AACnH,CAAC;AAEK,SAAU,QAAQ,CAAC,IAAU,EAAA;IACjC,MAAM,MAAM,GAAY,EAAE,CAAC;AAC3B,IAAA,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;AACtC,QAAA,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE;YACvC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACjD,SAAA;AACF,KAAA;AACD,IAAA,OAAO,MAAM,CAAC;AAChB;;ACXA;;;;AAIG;AACG,SAAU,SAAS,CAAC,IAAY,EAAA;AACpC,IAAA,OAAO,SAAS,CAAC,IAAI,CAACA,WAAc,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;AACzE;;ACJgB,SAAA,UAAU,CAAO,MAAc,EAAE,MAAqB,EAAA;AACpE,IAAA,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,OAAO,SAAS,CAAkB,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAChF,CAAC;AAEK,SAAU,SAAS,CAAO,MAAoB,EAAA;IAClD,MAAM,MAAM,GAAG,SAAS,CAAkB,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACrE,IAAA,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;AACxD;;ACfA,SAAS,SAAS,CAAC,KAAa,EAAE,IAAY,EAAA;IAC5C,OAAO,KAAK,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;;;AAKG;AACa,SAAA,IAAI,CAAC,OAAiB,EAAE,aAAuB,EAAA;;AAE7D,IAAA,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,GAAG,GAAG,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE;AAC3D,QAAA,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;AAChF,KAAA;;AAGD,IAAA,IAAI,OAAO,CAAC,MAAM,KAAK,aAAa,CAAC,MAAM;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;;AAG3F,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACvC,QAAA,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;AAClB,YAAA,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;AAC9D,SAAA;AACD,QAAA,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;AAC1C,YAAA,MAAM,KAAK,GAAG,CAAa,UAAA,EAAA,OAAO,CAAC,CAAC,CAAC,CAAA,iBAAA,EAAoB,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC;AACjF,YAAA,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;AACxB,SAAA;AACF,KAAA;;IAGD,IAAI,MAAM,GAAG,CAAC,CAAC;AACf,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACvC,QAAA,MAAM,GAAG,CAAC,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;AACpD,KAAA;AACD,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;AAKG;AACa,SAAA,MAAM,CAAC,MAAc,EAAE,aAAuB,EAAA;IAC5D,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,aAAa,GAAG,MAAM,CAAC;AAC3B,IAAA,KAAK,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;AAClD,QAAA,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5D,QAAA,aAAa,GAAG,aAAa,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC;AACpD,KAAA;AACD,IAAA,OAAO,OAAO,CAAC;AACjB,CAAC;AAEK,SAAU,SAAS,CAAC,OAAyB,EAAA;IACjD,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAEK,SAAU,WAAW,CAAC,MAAc,EAAA;IACxC,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAqB,CAAC;AACrD;;ACzDA,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AACpC,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAElB,SAAA,QAAQ,CAAC,IAAuB,EAAE,QAA2B,EAAA;AAC3E,IAAA,MAAM,MAAM,GAAG,IAAI,QAAQ,EAAW,CAAC;AAEvC,IAAA,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;AACjC,QAAA,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,SAAS;AAClC,QAAA,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AACzB,KAAA;AAED,IAAA,OAAO,MAAM,CAAC;AAChB,CAAC;AAEK,SAAU,UAAU,CAAC,KAAY,EAAA;AACrC,IAAA,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC;AAC1D,IAAA,OAAO,GAAG,CAAC;;;AAIb,CAAC;AAEK,SAAU,UAAU,CAAC,GAAW,EAAA;AACpC,IAAA,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC;IACpB,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC;AAC5B,IAAA,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;;;;AAKlB,CAAC;MAEY,QAAQ,CAAA;AAInB,IAAA,WAAA,CAAY,KAA4B,EAAA;AACtC,QAAA,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAa,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,KAAK,KAAA,IAAA,IAAL,KAAK,KAAL,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,KAAK,CAAE,YAAY,CAAC;KACzC;IAED,OAAO,IAAI,CAAI,YAAuD,EAAA;AACpE,QAAA,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAK,CAAC;AACnC,QAAA,QAAQ,CAAC,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC;AAChC,QAAA,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC,YAAY,CAAC;AAClD,QAAA,OAAO,QAAQ,CAAC;KACjB;IAED,GAAG,CAAC,KAAY,EAAE,KAAQ,EAAA;AACxB,QAAA,IACE,KAAK,CAAC,CAAC,GAAG,aAAa;AACvB,YAAA,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,aAAa;YAC5B,KAAK,CAAC,CAAC,GAAG,aAAa;AACvB,YAAA,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,aAAa,EAC5B;AACA,YAAA,MAAM,IAAI,KAAK,CAAC,uCAAuC,aAAa,CAAA,CAAE,CAAC,CAAC;AACzE,SAAA;AACD,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;KAC/C;AAED,IAAA,GAAG,CAAC,KAAY,EAAA;;AACd,QAAA,OAAO,MAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,IAAI,CAAC,YAAY,CAAC;KAC7D;IAED,IAAI,GAAA;AACF,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;KACxB;IAED,MAAM,GAAA;AACJ,QAAA,OAAO,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,KAAK,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;KACrE;IAED,OAAO,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;KAC3B;IAED,OAAO,GAAA;AACL,QAAA,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/C,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;KAChE;IAED,MAAM,GAAA;AACJ,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;KAC1B;AAED,IAAA,MAAM,CAAC,KAAY,EAAA;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;KAC3C;AAED,IAAA,GAAG,CAAC,KAAY,EAAA;QACd,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;KACxC;IAED,KAAK,GAAA;QACH,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE;AACjC,YAAA,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACtB,SAAA;KACF;AAED,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;KACtB;AACF;;ACzGD;;;;;AAKG;AACa,SAAA,cAAc,CAAC,KAAa,EAAE,IAAY,EAAA;;IAExD,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI;AAAE,QAAA,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;;AAE9D,IAAA,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC;IACxB,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpC,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;;IAE/C,OAAO,CAAA,EAAA,EAAK,KAAK,CAAA,CAAE,CAAC;AACtB,CAAC;AAED;;;;;AAKG;AACG,SAAU,YAAY,CAAC,KAAa,EAAA;AACxC,IAAA,OAAO,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC;AAED;;;;;AAKG;AACG,SAAU,cAAc,CAAC,KAAa,EAAA;AAC1C,IAAA,OAAO,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC;AAEK,SAAU,uBAAuB,CAAC,KAAa,EAAA;;AAEnD,IAAA,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAChF,OAAO,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;AACpC;;ACzCA,MAAM,KAAK,GAAG,SAAS,CAAC;AACxB,MAAM,KAAK,GAAG,UAAU,CAAC;AACzB,MAAM,QAAQ,GAAG,IAAI,CAAC;SAEN,SAAS,CAAC,IAAY,EAAE,CAAS,EAAE,CAAS,EAAA;IAC1D,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC;AAC/G,CAAC;AAEe,SAAA,IAAI,CAAC,UAAkB,EAAE,MAAc,EAAA;IACrD,IAAI,UAAU,GAAG,CAAC;QAAE,OAAO,UAAU,GAAG,CAAC;YAAE,UAAU,IAAI,MAAM,CAAC;IAChE,OAAO,UAAU,GAAG,MAAM,CAAC;AAC7B,CAAC;AAEe,SAAA,WAAW,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,KAAa,EAAA;IACzG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC;;AAGjH,CAAC;AAED;;;;;;AAMG;SACa,gBAAgB,CAC9B,IAAY,EACZ,MAAc,EACd,KAAa,EACb,OAAO,GAAG,MAAM,CAAC,gBAAgB,EACjC,OAAO,GAAG,MAAM,CAAC,gBAAgB,EAAA;IAEjC,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAChD,QAAA,OAAO,EAAE,OAAO;AAChB,QAAA,OAAO,EAAE,OAAO;QAChB,MAAM;QACN,KAAK;KACN,CAAC;AACJ,CAAC;AAED;;;;;AAKG;AACa,SAAA,iBAAiB,CAAC,MAA2C,EAAE,CAAS,EAAA;IACtF,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACzB,IAAA,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;AAEpB,IAAA,QACE,WAAW,CACT,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EACvD,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EACnD,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EACvD,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EACvD,IAAI,EACJ,CAAC,EACD,CAAC,CACF;QACC,QAAQ;AACV,QAAA,QAAQ,EACR;AACJ,CAAC;AAED;;;;;;AAMG;SACa,iBAAiB,CAC/B,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAuC,EAC9E,CAAS,EACT,CAAS,EAAA;IAET,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;AAClC,IAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC;IAClE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;AAClC,IAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,MAAM,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC;IAClE,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAC7B,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;AAEjC,IAAA,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IAE9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;AAC1B,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;QAEpC,QAAQ,CAAC,CAAC,CAAC,GAAG,WAAW,CACvB,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EACtB,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EACtB,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EACtB,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EACtB,KAAK,EACL,QAAQ,EACR,CAAC,CACF,CAAC;AACH,KAAA;AAED,IAAA,OAAO,IAAI,CAAC,KAAK,CACf,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAChH,CAAC;AACJ;;AC5GA,MAAM,UAAU,GAAG,mBAAmB,CAAC;SAEvB,YAAY,GAAA;AAC1B,IAAA,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;IACrC,IAAI,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAE9D,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AACtD,IAAA,IAAI,MAAM,GAAa,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;IAEpE,SAAS,GAAG,CAAC,GAAG,IAAc,EAAA;AAC5B,QAAA,IAAI,aAAa;YAAE,OAAO;AAC1B,QAAA,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;KAC5B;AAED,IAAA,SAAS,YAAY,CAAC,KAAa,EAAE,GAAG,IAAc,EAAA;QACpD,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;AAC5C,YAAA,aAAa,CAAC,GAAG,CAAC,8BAA8B,KAAK,CAAA,IAAA,CAAM,CAAC,CAAC;AAC7D,YAAA,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;AAC5B,SAAA;KACF;AAED,IAAA,SAAS,aAAa,GAAA;AACpB,QAAA,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,aAAa,GAAG,IAAI,CAAC;KACtB;AAED,IAAA,SAAS,cAAc,GAAA;AACrB,QAAA,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACpC,aAAa,GAAG,KAAK,CAAC;KACvB;IAED,SAAS,QAAQ,CAAC,KAAa,EAAA;AAC7B,QAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACnB,QAAA,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;KAC1D;IAED,SAAS,WAAW,CAAC,KAAa,EAAA;AAChC,QAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC;AAC3C,QAAA,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;KAC1D;AAED,IAAA,SAAS,WAAW,GAAA;QAClB,MAAM,GAAG,EAAE,CAAC;AACZ,QAAA,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;KAC1D;AAED,IAAA,MAAM,MAAM,GAAG;AACb,QAAA,GAAG,aAAa;QAChB,GAAG;QACH,YAAY;QACZ,aAAa;QACb,cAAc;QACd,QAAQ;QACR,WAAW;QACX,WAAW;KACZ,CAAC;;AAGD,IAAA,MAAc,CAAC,MAAM,GAAG,MAAM,CAAC;AAChC,IAAA,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC;AACxB,IAAA,OAAO,MAAM,CAAC;AAChB;;AC7DA;;;;;;AAMG;AACa,SAAA,SAAS,CAAC,CAAmB,EAAE,CAAmB,EAAA;AAChE,IAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACxE;;ACTA;;;;;;AAMG;AACG,SAAU,gBAAgB,CAAC,CAAS,EAAA;AACxC,IAAA,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAC5B,IAAA,OAAO,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACxC;;;;"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare function makeIterable<T>(iterator: Iterator<T>): IterableIterator<T>;
|
|
2
|
+
export declare function concatIterators<T>(first: Iterator<T>, second?: Iterator<T>): IterableIterator<T>;
|
|
3
|
+
export declare function mergeIterators<A, B>(iteratorA: Iterator<A>, iteratorB: Iterator<B>): IterableIterator<[A, B]>;
|
|
4
|
+
export declare function transformIterator<A, B>(iterator: Iterator<A>, transform: (value: A) => B): IterableIterator<B>;
|
|
5
|
+
/**
|
|
6
|
+
* Turns an array into an iterator. NOTE: an iterator can only be iterated once.
|
|
7
|
+
* @param array Array to be turned into an iterator
|
|
8
|
+
* @returns Iterator to iterate through the array
|
|
9
|
+
*/
|
|
10
|
+
export declare function arrayToIterator<T>(array: T[]): IterableIterator<T>;
|
|
@@ -5,7 +5,4 @@
|
|
|
5
5
|
* @param x A numeric expression.
|
|
6
6
|
* @returns Input rounded towards zero.
|
|
7
7
|
*/
|
|
8
|
-
export function roundTowardsZero(x: number)
|
|
9
|
-
const sign = x < 0 ? -1 : 1;
|
|
10
|
-
return sign * Math.floor(Math.abs(x));
|
|
11
|
-
}
|
|
8
|
+
export declare function roundTowardsZero(x: number): number;
|
package/dist/mobx.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { IComputedValue, IObservableValue } from "mobx";
|
|
2
|
+
/**
|
|
3
|
+
* @param comp Computed/Observable value that is either defined or undefined
|
|
4
|
+
* @returns promise that resolves with the first truthy computed value
|
|
5
|
+
*/
|
|
6
|
+
export declare function awaitValue<T>(comp: IComputedValue<T | undefined> | IObservableValue<T | undefined>): Promise<T>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility function to map a source object to an object with the same keys but mapped values
|
|
3
|
+
* @param source Source object to be mapped
|
|
4
|
+
* @param valueMap Mapping values of the source object to values of the target object
|
|
5
|
+
* @returns An object with the same keys as the source object but mapped values
|
|
6
|
+
*/
|
|
7
|
+
export declare function mapObject<S extends {
|
|
8
|
+
[key: string]: unknown;
|
|
9
|
+
}, T extends {
|
|
10
|
+
[key in keyof S]: unknown;
|
|
11
|
+
}>(source: S, valueMap: (value: S[keyof S], key: keyof S) => T[keyof S]): T;
|
package/dist/pack.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Packs two unsigned integers in one 32 bit unsigned integer
|
|
3
|
+
* @param numbers Unsigned integers to be packed in 32 bit integer
|
|
4
|
+
* @param bitsPerNumber Bits for each number
|
|
5
|
+
* @returns Packed 32 bit unsigned integer
|
|
6
|
+
*/
|
|
7
|
+
export declare function pack(numbers: number[], bitsPerNumber: number[]): number;
|
|
8
|
+
/**
|
|
9
|
+
* Unpacks a packed 32 bit unsigned integer into the original unsigned integers
|
|
10
|
+
* @param packed Packed 32 bit unsigned integer
|
|
11
|
+
* @param bitsPerNumber Bits for each unsigned integer
|
|
12
|
+
* @returns Array of unpacked unsignd integers
|
|
13
|
+
*/
|
|
14
|
+
export declare function unpack(packed: number, bitsPerNumber: number[]): number[];
|
|
15
|
+
export declare function packTuple(numbers: [number, number]): number;
|
|
16
|
+
export declare function unpackTuple(packed: number): [number, number];
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const range: (total?: number, step?: number, from?: number) => Generator<number, void, unknown>;
|
|
2
|
+
export declare function rejectAfter<T>(ms: number, msg: string): Promise<T>;
|
|
3
|
+
export declare const timeoutAfter: <T>(promise: Promise<T>, ms: number, timeoutMsg: string) => Promise<T>;
|
|
4
|
+
export declare const callWithRetry: <T>(fn: (...args: any[]) => Promise<T>, args?: any[], maxRetries?: number, retryInterval?: number) => Promise<T>;
|
package/dist/proxy.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IComputedValue, IObservableValue } from "mobx";
|
|
2
|
+
import { Cached } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* Caches any function calls to the target until the target is ready.
|
|
5
|
+
* @param target T extends Cachable
|
|
6
|
+
* @returns Cached<T>
|
|
7
|
+
*/
|
|
8
|
+
export declare function cacheUntilReady<T extends Record<string, any>>(target: IObservableValue<T | undefined> | IComputedValue<T | undefined>): Cached<T>;
|
|
@@ -4,14 +4,9 @@
|
|
|
4
4
|
* @param from Lower bound (included). Default 0.
|
|
5
5
|
* @returns A random integer between from and to.
|
|
6
6
|
*/
|
|
7
|
-
export function random(to: number, from
|
|
8
|
-
return Math.floor(Math.random() * (to - from + 1)) + from;
|
|
9
|
-
}
|
|
10
|
-
|
|
7
|
+
export declare function random(to: number, from?: number): number;
|
|
11
8
|
/**
|
|
12
9
|
* @param array Array to pick a random element from.
|
|
13
10
|
* @returns Random element from the given array.
|
|
14
11
|
*/
|
|
15
|
-
export function pickRandom<T>(array: [T, ...T[]]): T
|
|
16
|
-
return array[random(array.length - 1)];
|
|
17
|
-
}
|
|
12
|
+
export declare function pickRandom<T>(array: [T, ...T[]]): T;
|
package/dist/rx.d.ts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Observable, OperatorFunction } from "rxjs";
|
|
2
|
+
import { IComputedValue, IObservableValue } from "mobx";
|
|
3
|
+
export declare function filterNullish<T>(): OperatorFunction<T, NonNullable<T>>;
|
|
4
|
+
export declare function awaitPromise<T extends Promise<unknown>>(): OperatorFunction<T, Awaited<T>>;
|
|
5
|
+
/**
|
|
6
|
+
* RxJS operator to stretch out an event stream by a given delay per event
|
|
7
|
+
* @param spacingDelayMs Delay between each event in ms
|
|
8
|
+
* @returns stream of events with at least spacingDelayMs spaceing between event
|
|
9
|
+
*/
|
|
10
|
+
export declare function stretch<T>(spacingDelayMs: number): import("rxjs").UnaryFunction<Observable<T>, Observable<T>>;
|
|
11
|
+
export declare function observableToComputed<T>(obs: IObservableValue<T>): IComputedValue<T>;
|
|
12
|
+
export declare function computedToStream<T>(comp: IComputedValue<T> | IObservableValue<T>): Observable<T>;
|
|
13
|
+
export declare function observableToStream<T>(obs: T): Observable<T>;
|
|
14
|
+
export declare function streamToComputed<T>(stream$: Observable<T>): IComputedValue<T | undefined>;
|
|
15
|
+
export declare function streamToDefinedComputed<T>(stream$: Observable<T>): Promise<IComputedValue<T>>;
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @param stream$ RxJS observable to check for the given value
|
|
19
|
+
* @param predicate Predicate to check
|
|
20
|
+
* @returns A promise that resolves with the requested value once the predicate is true
|
|
21
|
+
*/
|
|
22
|
+
export declare function awaitStreamValue<T>(stream$: Observable<T>, predicate?: (value: T) => boolean): Promise<T>;
|
|
23
|
+
/**
|
|
24
|
+
* Turns a stream into an updating object for easy access outside of rxjs
|
|
25
|
+
* @param stream$ Stream to turn into a wrapped value
|
|
26
|
+
* @returns Object with `current` key corresponding to last stream value
|
|
27
|
+
*/
|
|
28
|
+
export declare function streamToWrappedValue<T>(stream$: Observable<T>): Promise<{
|
|
29
|
+
current: T;
|
|
30
|
+
}>;
|
package/dist/sleep.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function sleep<T>(timeout: number, returns?: T): Promise<T>;
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { enableLogger } from "./console";
|
|
2
|
+
export declare type Func<A extends any[], R> = (...args: A) => R;
|
|
3
|
+
export declare type AsyncFunc<A extends any[], R> = R extends Promise<unknown> ? (...args: A) => R : (...args: A) => Promise<R>;
|
|
4
|
+
export declare type CachedValue<V, Proxied extends boolean> = Proxied extends true ? V extends Func<infer A, infer B> ? AsyncFunc<A, B> : V extends Record<string, any> ? Cached<V> & {
|
|
5
|
+
proxied: true;
|
|
6
|
+
} : {
|
|
7
|
+
proxied: true;
|
|
8
|
+
} : V extends Func<infer A, infer B> ? Func<A, B> : V extends Record<string, any> ? V : V & {
|
|
9
|
+
proxied: false;
|
|
10
|
+
};
|
|
11
|
+
export declare type Cached<C> = ({
|
|
12
|
+
proxied: false;
|
|
13
|
+
} & {
|
|
14
|
+
[key in keyof C]: CachedValue<C[key], false>;
|
|
15
|
+
}) | ({
|
|
16
|
+
proxied: true;
|
|
17
|
+
} & {
|
|
18
|
+
[key in keyof C]: CachedValue<C[key], true>;
|
|
19
|
+
});
|
|
20
|
+
/**
|
|
21
|
+
* @deprecated Use Awaited<T> instead
|
|
22
|
+
*/
|
|
23
|
+
export declare type PromiseValue<T> = Awaited<T>;
|
|
24
|
+
export declare type ValueOf<T extends object> = T[keyof T];
|
|
25
|
+
export declare type Area = {
|
|
26
|
+
x: number;
|
|
27
|
+
y: number;
|
|
28
|
+
width: number;
|
|
29
|
+
height: number;
|
|
30
|
+
};
|
|
31
|
+
export declare type Coord = {
|
|
32
|
+
x: number;
|
|
33
|
+
y: number;
|
|
34
|
+
};
|
|
35
|
+
export declare type VoxelCoord = {
|
|
36
|
+
x: number;
|
|
37
|
+
y: number;
|
|
38
|
+
z: number;
|
|
39
|
+
};
|
|
40
|
+
export declare type Logger = ReturnType<typeof enableLogger>;
|
package/dist/uuid.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UUID.core.js - UUID.js for Minimalists
|
|
3
|
+
*
|
|
4
|
+
* @file
|
|
5
|
+
* @author LiosK
|
|
6
|
+
* @version v4.2.0
|
|
7
|
+
* @license Apache License 2.0: Copyright (c) 2010-2018 LiosK
|
|
8
|
+
* @url https://github.com/LiosK/UUID.js/blob/master/src/uuid.core.js
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @class
|
|
12
|
+
* @classdesc {@link UUID} object.
|
|
13
|
+
* @hideconstructor
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Generates a version 4 UUID as a hexadecimal string.
|
|
17
|
+
* @returns {string} Hexadecimal UUID string.
|
|
18
|
+
*/
|
|
19
|
+
export declare const uuid: () => string;
|
package/dist/worker.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Observable } from "rxjs";
|
|
2
|
+
export interface DoWork<I, O> {
|
|
3
|
+
work(input$: Observable<I>): Observable<O>;
|
|
4
|
+
}
|
|
5
|
+
export declare function fromWorker<I, O>(worker: Worker, input$: Observable<I>): Observable<O>;
|
|
6
|
+
export declare function runWorker<I, O>(worker: DoWork<I, O>): void;
|
package/package.json
CHANGED
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@latticexyz/utils",
|
|
3
3
|
"license": "MIT",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.11.1",
|
|
5
5
|
"type": "module",
|
|
6
|
-
"
|
|
6
|
+
"source": "src/index.ts",
|
|
7
|
+
"main": "dist/index.js",
|
|
7
8
|
"repository": {
|
|
8
9
|
"type": "git",
|
|
9
10
|
"url": "https://github.com/latticexyz/mud.git",
|
|
10
11
|
"directory": "packages/utils"
|
|
11
12
|
},
|
|
12
13
|
"scripts": {
|
|
14
|
+
"prepare": "yarn build",
|
|
13
15
|
"lint": "eslint . --ext .ts",
|
|
14
16
|
"test": "jest",
|
|
15
|
-
"build": "rimraf dist && rollup -c rollup.config.js",
|
|
16
17
|
"link": "yarn link",
|
|
17
|
-
"docs": "typedoc src"
|
|
18
|
+
"docs": "typedoc src",
|
|
19
|
+
"prepack": "mv package.json package.json.bak && jq \".main = \\\"dist/index.js\\\"\" package.json.bak > package.json ",
|
|
20
|
+
"postpack": "mv package.json.bak package.json || echo 'no package.json.bak'",
|
|
21
|
+
"build": "rimraf dist && rollup -c rollup.config.js"
|
|
18
22
|
},
|
|
19
23
|
"devDependencies": {
|
|
20
24
|
"@rollup/plugin-node-resolve": "^13.1.3",
|
|
@@ -40,5 +44,5 @@
|
|
|
40
44
|
"proxy-deep": "^3.1.1",
|
|
41
45
|
"rxjs": "^7.5.5"
|
|
42
46
|
},
|
|
43
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "43b26a1c0311605a3f91e630e57487a8e4faa58f"
|
|
44
48
|
}
|
package/jest.config.js
DELETED
package/rollup.config.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import typescript from "@rollup/plugin-typescript";
|
|
2
|
-
import { nodeResolve } from "@rollup/plugin-node-resolve";
|
|
3
|
-
import commonjs from "rollup-plugin-commonjs";
|
|
4
|
-
import peerDepsExternal from "rollup-plugin-peer-deps-external";
|
|
5
|
-
|
|
6
|
-
import { defineConfig } from "rollup";
|
|
7
|
-
|
|
8
|
-
export default defineConfig({
|
|
9
|
-
input: "./src/index.ts",
|
|
10
|
-
treeshake: true,
|
|
11
|
-
output: {
|
|
12
|
-
dir: "dist",
|
|
13
|
-
sourcemap: true,
|
|
14
|
-
},
|
|
15
|
-
plugins: [nodeResolve(), typescript(), commonjs(), peerDepsExternal()],
|
|
16
|
-
});
|
package/src/CoordMap.spec.ts
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { coordToKey, keyToCoord } from "./CoordMap";
|
|
2
|
-
|
|
3
|
-
describe("CoordMap", () => {
|
|
4
|
-
describe("coordToKey", () => {
|
|
5
|
-
it("should be the inverse of keyToCoord", () => {
|
|
6
|
-
const MAX = 2 ** 15 - 1;
|
|
7
|
-
const coords = [
|
|
8
|
-
{ x: 1, y: 2 },
|
|
9
|
-
{ x: -1, y: 2 },
|
|
10
|
-
{ x: 1, y: -2 },
|
|
11
|
-
{ x: 0, y: 0 },
|
|
12
|
-
{ x: -1, y: -2 },
|
|
13
|
-
{ x: MAX, y: MAX },
|
|
14
|
-
{ x: -1 * MAX, y: MAX },
|
|
15
|
-
{ x: MAX, y: -1 * MAX },
|
|
16
|
-
{ x: -1 * MAX, y: -1 * MAX },
|
|
17
|
-
];
|
|
18
|
-
|
|
19
|
-
for (const coord of coords) {
|
|
20
|
-
const key = coordToKey(coord);
|
|
21
|
-
expect(keyToCoord(key)).toEqual(coord);
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
describe("keyToCoord", () => {
|
|
27
|
-
it("should be the inverse of coordToKey", () => {
|
|
28
|
-
const keys = [
|
|
29
|
-
"11111111111111110000000000000000",
|
|
30
|
-
"11011101110111011000101001001000",
|
|
31
|
-
"01101101101110110001010101111001",
|
|
32
|
-
"11010101111011010010010010001001",
|
|
33
|
-
"00111111111111110111000001001100",
|
|
34
|
-
"01101110001111010110010010001001",
|
|
35
|
-
"10101110011011010010010001010101",
|
|
36
|
-
"01011011101011010101100100101000",
|
|
37
|
-
"11011110111101111000010000100011",
|
|
38
|
-
"10110111011011010101101010001001",
|
|
39
|
-
"00110111011101110001000100010000",
|
|
40
|
-
"10110101101101010001001010001001",
|
|
41
|
-
"01100011010101111010010100110010",
|
|
42
|
-
"11111111111111111111111111111111",
|
|
43
|
-
"00000000000000000000000000000000",
|
|
44
|
-
];
|
|
45
|
-
|
|
46
|
-
for (const key of keys) {
|
|
47
|
-
const numKey = parseInt(key, 2) >> 0;
|
|
48
|
-
const coord = keyToCoord(numKey);
|
|
49
|
-
expect(coordToKey(coord)).toEqual(numKey);
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
|
|
53
|
-
it("should work with {x: 0, y: 0}", () => {
|
|
54
|
-
expect(keyToCoord(0)).toEqual({ x: 0, y: 0 });
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
});
|
package/src/CoordMap.ts
DELETED
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { Coord } from "./types";
|
|
2
|
-
import { transformIterator } from "./iterable";
|
|
3
|
-
|
|
4
|
-
const LOWER_HALF_MASK = 2 ** 16 - 1;
|
|
5
|
-
const MAX_SUPPORTED = 2 ** 15 - 1;
|
|
6
|
-
|
|
7
|
-
export function subtract(from: CoordMap<boolean>, subtract: CoordMap<boolean>): CoordMap<boolean> {
|
|
8
|
-
const result = new CoordMap<boolean>();
|
|
9
|
-
|
|
10
|
-
for (const coord of from.coords()) {
|
|
11
|
-
if (subtract.get(coord)) continue;
|
|
12
|
-
result.set(coord, true);
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
return result;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export function coordToKey(coord: Coord) {
|
|
19
|
-
const key = (coord.x << 16) | (coord.y & LOWER_HALF_MASK);
|
|
20
|
-
return key;
|
|
21
|
-
|
|
22
|
-
// Old version using strings:
|
|
23
|
-
// return `${coord.x}/${coord.y}`;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export function keyToCoord(key: number): Coord {
|
|
27
|
-
const x = key >> 16;
|
|
28
|
-
const y = (key << 16) >> 16;
|
|
29
|
-
return { x, y };
|
|
30
|
-
|
|
31
|
-
// Old version using strings:
|
|
32
|
-
// const fragments = key.split("/");
|
|
33
|
-
// return { x: Number(fragments[0]), y: Number(fragments[1]) };
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export class CoordMap<T> {
|
|
37
|
-
map: Map<number, T>;
|
|
38
|
-
defaultValue?: T;
|
|
39
|
-
|
|
40
|
-
constructor(props?: { defaultValue?: T }) {
|
|
41
|
-
this.map = new Map<number, T>();
|
|
42
|
-
this.defaultValue = props?.defaultValue;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
static from<T>(coordMapLike: { map: Map<number, T>; defaultValue?: T }): CoordMap<T> {
|
|
46
|
-
const coordMap = new CoordMap<T>();
|
|
47
|
-
coordMap.map = coordMapLike.map;
|
|
48
|
-
coordMap.defaultValue = coordMapLike.defaultValue;
|
|
49
|
-
return coordMap;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
set(coord: Coord, value: T) {
|
|
53
|
-
if (
|
|
54
|
-
coord.x > MAX_SUPPORTED ||
|
|
55
|
-
coord.x < -1 * MAX_SUPPORTED ||
|
|
56
|
-
coord.y > MAX_SUPPORTED ||
|
|
57
|
-
coord.y < -1 * MAX_SUPPORTED
|
|
58
|
-
) {
|
|
59
|
-
throw new Error(`CoordMap only supports coords up to ${MAX_SUPPORTED}`);
|
|
60
|
-
}
|
|
61
|
-
return this.map.set(coordToKey(coord), value);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
get(coord: Coord) {
|
|
65
|
-
return this.map.get(coordToKey(coord)) ?? this.defaultValue;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
keys() {
|
|
69
|
-
return this.map.keys();
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
coords(): IterableIterator<Coord> {
|
|
73
|
-
return transformIterator(this.map.keys(), (key) => keyToCoord(key));
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
entries() {
|
|
77
|
-
return this.map.entries();
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
toArray(): [Coord, T][] {
|
|
81
|
-
const entries = Array.from(this.map.entries());
|
|
82
|
-
return entries.map(([key, value]) => [keyToCoord(key), value]);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
values() {
|
|
86
|
-
return this.map.values();
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
delete(coord: Coord) {
|
|
90
|
-
return this.map.delete(coordToKey(coord));
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
has(coord: Coord): boolean {
|
|
94
|
-
return this.map.has(coordToKey(coord));
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
clear() {
|
|
98
|
-
for (const key of this.map.keys()) {
|
|
99
|
-
this.map.delete(key);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
get size(): number {
|
|
104
|
-
return this.map.size;
|
|
105
|
-
}
|
|
106
|
-
}
|
package/src/area.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Area, Coord } from "./types";
|
|
2
|
-
|
|
3
|
-
export function areaContains(area: Area, coord: Coord) {
|
|
4
|
-
return coord.x >= area.x && coord.y >= area.y && coord.x < area.x + area.width && coord.y < area.y + area.height;
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
export function coordsOf(area: Area) {
|
|
8
|
-
const coords: Coord[] = [];
|
|
9
|
-
for (let dx = 0; dx < area.width; dx++) {
|
|
10
|
-
for (let dy = 0; dy < area.height; dy++) {
|
|
11
|
-
coords.push({ x: area.x + dx, y: area.y + dy });
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
return coords;
|
|
15
|
-
}
|
package/src/console.ts
DELETED
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
const TOPICS_KEY = "mud-logger-topics";
|
|
2
|
-
|
|
3
|
-
export function enableLogger() {
|
|
4
|
-
const windowConsole = window.console;
|
|
5
|
-
let filtersActive = Boolean(localStorage.getItem(TOPICS_KEY));
|
|
6
|
-
|
|
7
|
-
const topicsString = localStorage.getItem(TOPICS_KEY);
|
|
8
|
-
let topics: string[] = topicsString ? JSON.parse(topicsString) : [];
|
|
9
|
-
|
|
10
|
-
function log(...logs: string[]) {
|
|
11
|
-
if (filtersActive) return;
|
|
12
|
-
windowConsole.log(...logs);
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
function logWithTopic(topic: string, ...logs: string[]) {
|
|
16
|
-
if (!filtersActive || topics.includes(topic)) {
|
|
17
|
-
windowConsole.log(`--- BETTER CONSOLE / TOPIC ${topic} ---`);
|
|
18
|
-
windowConsole.log(...logs);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
function enableFilters() {
|
|
23
|
-
localStorage.setItem(TOPICS_KEY, JSON.stringify([]));
|
|
24
|
-
filtersActive = true;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
function disableFilters() {
|
|
28
|
-
localStorage.removeItem(TOPICS_KEY);
|
|
29
|
-
filtersActive = false;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
function addTopic(topic: string) {
|
|
33
|
-
topics.push(topic);
|
|
34
|
-
localStorage.setItem(TOPICS_KEY, JSON.stringify(topics));
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
function removeTopic(topic: string) {
|
|
38
|
-
topics = topics.filter((t) => t !== topic);
|
|
39
|
-
localStorage.setItem(TOPICS_KEY, JSON.stringify(topics));
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
function resetTopics() {
|
|
43
|
-
topics = [];
|
|
44
|
-
localStorage.setItem(TOPICS_KEY, JSON.stringify(topics));
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
const logger = {
|
|
48
|
-
...windowConsole,
|
|
49
|
-
log,
|
|
50
|
-
logWithTopic,
|
|
51
|
-
enableFilters,
|
|
52
|
-
disableFilters,
|
|
53
|
-
addTopic,
|
|
54
|
-
removeTopic,
|
|
55
|
-
resetTopics,
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
59
|
-
(window as any).logger = logger;
|
|
60
|
-
window.console = logger;
|
|
61
|
-
return logger;
|
|
62
|
-
}
|
package/src/cubic.spec.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { cubicNoiseSample2, cubicNoiseConfig } from "./cubic";
|
|
2
|
-
|
|
3
|
-
describe("Cubic", () => {
|
|
4
|
-
it("computes noise", () => {
|
|
5
|
-
const coords: [number, number][] = [];
|
|
6
|
-
for (let i = 0; i < 100; i++) {
|
|
7
|
-
coords.push([Math.floor((Math.random() - 0.5) * 1000), Math.floor((Math.random() - 0.5) * 1000)]);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
const noises = coords.map((c) => cubicNoiseSample2(cubicNoiseConfig(1000, 64, 16, 256, 256), c[0], c[1]));
|
|
11
|
-
console.log("coords", JSON.stringify(coords));
|
|
12
|
-
console.log("noises", JSON.stringify(noises));
|
|
13
|
-
});
|
|
14
|
-
});
|