@xyo-network/manifest 2.84.6 → 2.84.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA4BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
1
+ {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA0BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA4BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
1
+ {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA0BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA4BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
1
+ {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA0BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
@@ -57,21 +57,19 @@ var ManifestWrapper = class _ManifestWrapper extends import_payload_wrapper.Payl
57
57
  }
58
58
  async loadModule(node, manifest, external = true, additionalCreatableModules) {
59
59
  const collision = async (node2, name, external2) => {
60
- const externalConflict = external2 ? (await node2.resolve({ name: [name] }, { direction: external2 ? "all" : "down" })).length !== 0 : false;
61
- return externalConflict || (await node2.resolve({ name: [name] }, { direction: "down" })).length !== 0;
60
+ const externalConflict = external2 ? (await node2.resolve({ name: [name] }, { direction: external2 ? "all" : "down" })).length > 0 : false;
61
+ return externalConflict || (await node2.resolve({ name: [name] }, { direction: "down" })).length > 0;
62
62
  };
63
63
  const creatableModules = (0, import_module_model2.assignCreatableModuleRegistry)(
64
64
  {},
65
65
  (0, import_module_model2.toCreatableModuleRegistry)(standardCreatableModules),
66
66
  (0, import_module_model2.toCreatableModuleRegistry)(additionalCreatableModules ?? {})
67
67
  );
68
- if (!await collision(node, manifest.config.name, external)) {
69
- if (manifest.config.language && manifest.config.language === "javascript") {
70
- (0, import_assert.assertEx)(
71
- (manifest.config.name && await node.attach(manifest.config.name, external)) ?? await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external),
72
- `No module with config schema [${manifest.config.name}] registered`
73
- );
74
- }
68
+ if (!await collision(node, manifest.config.name, external) && manifest.config.language && manifest.config.language === "javascript") {
69
+ (0, import_assert.assertEx)(
70
+ (manifest.config.name && await node.attach(manifest.config.name, external)) ?? await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external),
71
+ `No module with config schema [${manifest.config.name}] registered`
72
+ );
75
73
  }
76
74
  }
77
75
  async loadNodeFromIndex(index, additionalCreatableModules) {
@@ -95,18 +93,18 @@ var ManifestWrapper = class _ManifestWrapper extends import_payload_wrapper.Payl
95
93
  this.privateChildren.map(async (child) => {
96
94
  const wrapper = new _ManifestWrapper(child, this.wallet, this.locator);
97
95
  const subNodes = await wrapper.loadNodes(node);
98
- subNodes.forEach((subNode) => {
96
+ for (const subNode of subNodes) {
99
97
  node.attach(subNode.address, false);
100
- });
98
+ }
101
99
  })
102
100
  );
103
101
  await Promise.all(
104
102
  this.publicChildren.map(async (child) => {
105
103
  const wrapper = new _ManifestWrapper(child, this.wallet, this.locator);
106
104
  const subNodes = await wrapper.loadNodes(node);
107
- subNodes.forEach((subNode) => {
105
+ for (const subNode of subNodes) {
108
106
  node.attach(subNode.address, true);
109
- });
107
+ }
110
108
  })
111
109
  );
112
110
  return node;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/ManifestWrapper.ts","../../src/standardCreatableModules.ts"],"sourcesContent":["export * from './ManifestWrapper'\nexport * from './standardCreatableModules'\nexport * from '@xyo-network/manifest-model'\n","import { assertEx } from '@xylabs/assert'\nimport { Account } from '@xyo-network/account'\nimport { ModuleManifest, NodeManifest, PackageManifestPayload } from '@xyo-network/manifest-model'\nimport {\n assignCreatableModuleRegistry,\n CreatableModuleDictionary,\n CreatableModuleRegistry,\n ModuleFactoryLocator,\n ModuleInstance,\n toCreatableModuleRegistry,\n} from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { NodeInstance } from '@xyo-network/node-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { WalletInstance } from '@xyo-network/wallet-model'\n\nimport { standardCreatableModules } from './standardCreatableModules'\n\n/** Provides functionality that can be performed on a PackageManifest */\nexport class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {\n constructor(\n payload: PackageManifestPayload,\n protected readonly wallet: WalletInstance,\n protected readonly locator: ModuleFactoryLocator = new ModuleFactoryLocator({}),\n protected readonly publicChildren: PackageManifestPayload[] = [],\n protected readonly privateChildren: PackageManifestPayload[] = [],\n ) {\n super(payload)\n }\n\n async loadModule(node: MemoryNode, manifest: ModuleManifest, external: boolean, additionalCreatableModules?: CreatableModuleRegistry): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external: boolean,\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external = true,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<void> {\n const collision = async (node: NodeInstance, name: string, external: boolean) => {\n const externalConflict = external ? (await node.resolve({ name: [name] }, { direction: external ? 'all' : 'down' })).length !== 0 : false\n return externalConflict || (await node.resolve({ name: [name] }, { direction: 'down' })).length !== 0\n }\n\n const creatableModules = assignCreatableModuleRegistry(\n {},\n toCreatableModuleRegistry(standardCreatableModules),\n toCreatableModuleRegistry(additionalCreatableModules ?? {}),\n )\n if (!(await collision(node, manifest.config.name, external))) {\n if (manifest.config.language && manifest.config.language === 'javascript') {\n assertEx(\n (manifest.config.name && (await node.attach(manifest.config.name, external))) ??\n (await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external)),\n `No module with config schema [${manifest.config.name}] registered`,\n )\n }\n }\n }\n\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode> {\n const manifest = assertEx(this.nodeManifest(index), 'Failed to find Node Manifest')\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n return await this.loadNodeFromManifest(manifest, manifest.config.accountPath ?? `${index}'`, registry)\n }\n\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromManifest(\n manifest: NodeManifest,\n path?: string,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<MemoryNode> {\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const node = await MemoryNode.create({ account, config: manifest.config, wallet })\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n // Load Private Modules\n const privateModules =\n manifest.modules?.private?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, false, registry)\n }) ?? []\n // Load Public Modules\n const publicModules =\n manifest.modules?.public?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, true, registry)\n }) ?? []\n await Promise.all([...privateModules, ...publicModules])\n\n await Promise.all(\n this.privateChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n subNodes.forEach((subNode) => {\n node.attach(subNode.address, false)\n })\n }),\n )\n\n await Promise.all(\n this.publicChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n subNodes.forEach((subNode) => {\n node.attach(subNode.address, true)\n })\n }),\n )\n\n return node\n }\n\n /**\n * Load the nodes that are defined in the wrapped manifest and optionally attach them to a node\n */\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleRegistry,\n ): Promise<MemoryNode[]>\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<MemoryNode[]>\n async loadNodes(node?: MemoryNode, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode[]> {\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n const result = await Promise.all(\n this.jsonPayload().nodes?.map(async (nodeManifest, index) => {\n const subNode = await this.loadNodeFromManifest(nodeManifest, nodeManifest.config.accountPath ?? `${index}'`, registry)\n await node?.register(subNode)\n return subNode\n }),\n )\n return result\n }\n\n nodeManifest(index: number) {\n return this.jsonPayload().nodes?.[index]\n }\n\n /** Register a module on a node based on a manifest */\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleRegistry): Promise<ModuleInstance>\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleDictionary): Promise<ModuleInstance>\n private async registerModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n creatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<ModuleInstance> {\n const registry = toCreatableModuleRegistry(creatableModules ?? {})\n const creatableModule = new ModuleFactoryLocator(this.locator.registry)\n .registerMany(registry)\n .locate(manifest.config.schema, manifest.config.labels)\n const path = manifest.config.accountPath\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const module = await creatableModule.create({\n account,\n config: assertEx(manifest.config, 'Missing config'),\n wallet,\n })\n await node.register(module)\n return module\n }\n}\n","import { HttpBridge } from '@xyo-network/http-bridge'\nimport { MemoryArchivist } from '@xyo-network/memory-archivist'\nimport { CreatableModuleDictionary, ModuleFactory } from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { MemorySentinel } from '@xyo-network/sentinel'\n\nexport const standardCreatableModules: CreatableModuleDictionary = {\n 'network.xyo.archivist.config': MemoryArchivist,\n 'network.xyo.bridge.http.config': ModuleFactory.withParams(HttpBridge, { config: { schema: HttpBridge.configSchema } }),\n 'network.xyo.node.config': MemoryNode,\n 'network.xyo.sentinel.config': MemorySentinel,\n}\n"],"mappings":"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","names":["import_module_model","import_node_memory","node","external","module"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/ManifestWrapper.ts","../../src/standardCreatableModules.ts"],"sourcesContent":["export * from './ManifestWrapper'\nexport * from './standardCreatableModules'\nexport * from '@xyo-network/manifest-model'\n","import { assertEx } from '@xylabs/assert'\nimport { Account } from '@xyo-network/account'\nimport { ModuleManifest, NodeManifest, PackageManifestPayload } from '@xyo-network/manifest-model'\nimport {\n assignCreatableModuleRegistry,\n CreatableModuleDictionary,\n CreatableModuleRegistry,\n ModuleFactoryLocator,\n ModuleInstance,\n toCreatableModuleRegistry,\n} from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { NodeInstance } from '@xyo-network/node-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { WalletInstance } from '@xyo-network/wallet-model'\n\nimport { standardCreatableModules } from './standardCreatableModules'\n\n/** Provides functionality that can be performed on a PackageManifest */\nexport class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {\n constructor(\n payload: PackageManifestPayload,\n protected readonly wallet: WalletInstance,\n protected readonly locator: ModuleFactoryLocator = new ModuleFactoryLocator({}),\n protected readonly publicChildren: PackageManifestPayload[] = [],\n protected readonly privateChildren: PackageManifestPayload[] = [],\n ) {\n super(payload)\n }\n\n async loadModule(node: MemoryNode, manifest: ModuleManifest, external: boolean, additionalCreatableModules?: CreatableModuleRegistry): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external: boolean,\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external = true,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<void> {\n const collision = async (node: NodeInstance, name: string, external: boolean) => {\n const externalConflict = external ? (await node.resolve({ name: [name] }, { direction: external ? 'all' : 'down' })).length > 0 : false\n return externalConflict || (await node.resolve({ name: [name] }, { direction: 'down' })).length > 0\n }\n\n const creatableModules = assignCreatableModuleRegistry(\n {},\n toCreatableModuleRegistry(standardCreatableModules),\n toCreatableModuleRegistry(additionalCreatableModules ?? {}),\n )\n if (!(await collision(node, manifest.config.name, external)) && manifest.config.language && manifest.config.language === 'javascript') {\n assertEx(\n (manifest.config.name && (await node.attach(manifest.config.name, external))) ??\n (await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external)),\n `No module with config schema [${manifest.config.name}] registered`,\n )\n }\n }\n\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode> {\n const manifest = assertEx(this.nodeManifest(index), 'Failed to find Node Manifest')\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n return await this.loadNodeFromManifest(manifest, manifest.config.accountPath ?? `${index}'`, registry)\n }\n\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromManifest(\n manifest: NodeManifest,\n path?: string,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<MemoryNode> {\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const node = await MemoryNode.create({ account, config: manifest.config, wallet })\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n // Load Private Modules\n const privateModules =\n manifest.modules?.private?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, false, registry)\n }) ?? []\n // Load Public Modules\n const publicModules =\n manifest.modules?.public?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, true, registry)\n }) ?? []\n await Promise.all([...privateModules, ...publicModules])\n\n await Promise.all(\n this.privateChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n for (const subNode of subNodes) {\n node.attach(subNode.address, false)\n }\n }),\n )\n\n await Promise.all(\n this.publicChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n for (const subNode of subNodes) {\n node.attach(subNode.address, true)\n }\n }),\n )\n\n return node\n }\n\n /**\n * Load the nodes that are defined in the wrapped manifest and optionally attach them to a node\n */\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleRegistry,\n ): Promise<MemoryNode[]>\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<MemoryNode[]>\n async loadNodes(node?: MemoryNode, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode[]> {\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n const result = await Promise.all(\n this.jsonPayload().nodes?.map(async (nodeManifest, index) => {\n const subNode = await this.loadNodeFromManifest(nodeManifest, nodeManifest.config.accountPath ?? `${index}'`, registry)\n await node?.register(subNode)\n return subNode\n }),\n )\n return result\n }\n\n nodeManifest(index: number) {\n return this.jsonPayload().nodes?.[index]\n }\n\n /** Register a module on a node based on a manifest */\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleRegistry): Promise<ModuleInstance>\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleDictionary): Promise<ModuleInstance>\n private async registerModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n creatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<ModuleInstance> {\n const registry = toCreatableModuleRegistry(creatableModules ?? {})\n const creatableModule = new ModuleFactoryLocator(this.locator.registry)\n .registerMany(registry)\n .locate(manifest.config.schema, manifest.config.labels)\n const path = manifest.config.accountPath\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const module = await creatableModule.create({\n account,\n config: assertEx(manifest.config, 'Missing config'),\n wallet,\n })\n await node.register(module)\n return module\n }\n}\n","import { HttpBridge } from '@xyo-network/http-bridge'\nimport { MemoryArchivist } from '@xyo-network/memory-archivist'\nimport { CreatableModuleDictionary, ModuleFactory } from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { MemorySentinel } from '@xyo-network/sentinel'\n\nexport const standardCreatableModules: CreatableModuleDictionary = {\n 'network.xyo.archivist.config': MemoryArchivist,\n 'network.xyo.bridge.http.config': ModuleFactory.withParams(HttpBridge, { config: { schema: HttpBridge.configSchema } }),\n 'network.xyo.node.config': MemoryNode,\n 'network.xyo.sentinel.config': MemorySentinel,\n}\n"],"mappings":"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","names":["import_module_model","import_node_memory","node","external","module"]}
@@ -33,21 +33,19 @@ var ManifestWrapper = class _ManifestWrapper extends PayloadWrapper {
33
33
  }
34
34
  async loadModule(node, manifest, external = true, additionalCreatableModules) {
35
35
  const collision = async (node2, name, external2) => {
36
- const externalConflict = external2 ? (await node2.resolve({ name: [name] }, { direction: external2 ? "all" : "down" })).length !== 0 : false;
37
- return externalConflict || (await node2.resolve({ name: [name] }, { direction: "down" })).length !== 0;
36
+ const externalConflict = external2 ? (await node2.resolve({ name: [name] }, { direction: external2 ? "all" : "down" })).length > 0 : false;
37
+ return externalConflict || (await node2.resolve({ name: [name] }, { direction: "down" })).length > 0;
38
38
  };
39
39
  const creatableModules = assignCreatableModuleRegistry(
40
40
  {},
41
41
  toCreatableModuleRegistry(standardCreatableModules),
42
42
  toCreatableModuleRegistry(additionalCreatableModules ?? {})
43
43
  );
44
- if (!await collision(node, manifest.config.name, external)) {
45
- if (manifest.config.language && manifest.config.language === "javascript") {
46
- assertEx(
47
- (manifest.config.name && await node.attach(manifest.config.name, external)) ?? await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external),
48
- `No module with config schema [${manifest.config.name}] registered`
49
- );
50
- }
44
+ if (!await collision(node, manifest.config.name, external) && manifest.config.language && manifest.config.language === "javascript") {
45
+ assertEx(
46
+ (manifest.config.name && await node.attach(manifest.config.name, external)) ?? await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external),
47
+ `No module with config schema [${manifest.config.name}] registered`
48
+ );
51
49
  }
52
50
  }
53
51
  async loadNodeFromIndex(index, additionalCreatableModules) {
@@ -71,18 +69,18 @@ var ManifestWrapper = class _ManifestWrapper extends PayloadWrapper {
71
69
  this.privateChildren.map(async (child) => {
72
70
  const wrapper = new _ManifestWrapper(child, this.wallet, this.locator);
73
71
  const subNodes = await wrapper.loadNodes(node);
74
- subNodes.forEach((subNode) => {
72
+ for (const subNode of subNodes) {
75
73
  node.attach(subNode.address, false);
76
- });
74
+ }
77
75
  })
78
76
  );
79
77
  await Promise.all(
80
78
  this.publicChildren.map(async (child) => {
81
79
  const wrapper = new _ManifestWrapper(child, this.wallet, this.locator);
82
80
  const subNodes = await wrapper.loadNodes(node);
83
- subNodes.forEach((subNode) => {
81
+ for (const subNode of subNodes) {
84
82
  node.attach(subNode.address, true);
85
- });
83
+ }
86
84
  })
87
85
  );
88
86
  return node;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ManifestWrapper.ts","../../src/standardCreatableModules.ts","../../src/index.ts"],"sourcesContent":["import { assertEx } from '@xylabs/assert'\nimport { Account } from '@xyo-network/account'\nimport { ModuleManifest, NodeManifest, PackageManifestPayload } from '@xyo-network/manifest-model'\nimport {\n assignCreatableModuleRegistry,\n CreatableModuleDictionary,\n CreatableModuleRegistry,\n ModuleFactoryLocator,\n ModuleInstance,\n toCreatableModuleRegistry,\n} from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { NodeInstance } from '@xyo-network/node-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { WalletInstance } from '@xyo-network/wallet-model'\n\nimport { standardCreatableModules } from './standardCreatableModules'\n\n/** Provides functionality that can be performed on a PackageManifest */\nexport class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {\n constructor(\n payload: PackageManifestPayload,\n protected readonly wallet: WalletInstance,\n protected readonly locator: ModuleFactoryLocator = new ModuleFactoryLocator({}),\n protected readonly publicChildren: PackageManifestPayload[] = [],\n protected readonly privateChildren: PackageManifestPayload[] = [],\n ) {\n super(payload)\n }\n\n async loadModule(node: MemoryNode, manifest: ModuleManifest, external: boolean, additionalCreatableModules?: CreatableModuleRegistry): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external: boolean,\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external = true,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<void> {\n const collision = async (node: NodeInstance, name: string, external: boolean) => {\n const externalConflict = external ? (await node.resolve({ name: [name] }, { direction: external ? 'all' : 'down' })).length !== 0 : false\n return externalConflict || (await node.resolve({ name: [name] }, { direction: 'down' })).length !== 0\n }\n\n const creatableModules = assignCreatableModuleRegistry(\n {},\n toCreatableModuleRegistry(standardCreatableModules),\n toCreatableModuleRegistry(additionalCreatableModules ?? {}),\n )\n if (!(await collision(node, manifest.config.name, external))) {\n if (manifest.config.language && manifest.config.language === 'javascript') {\n assertEx(\n (manifest.config.name && (await node.attach(manifest.config.name, external))) ??\n (await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external)),\n `No module with config schema [${manifest.config.name}] registered`,\n )\n }\n }\n }\n\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode> {\n const manifest = assertEx(this.nodeManifest(index), 'Failed to find Node Manifest')\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n return await this.loadNodeFromManifest(manifest, manifest.config.accountPath ?? `${index}'`, registry)\n }\n\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromManifest(\n manifest: NodeManifest,\n path?: string,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<MemoryNode> {\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const node = await MemoryNode.create({ account, config: manifest.config, wallet })\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n // Load Private Modules\n const privateModules =\n manifest.modules?.private?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, false, registry)\n }) ?? []\n // Load Public Modules\n const publicModules =\n manifest.modules?.public?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, true, registry)\n }) ?? []\n await Promise.all([...privateModules, ...publicModules])\n\n await Promise.all(\n this.privateChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n subNodes.forEach((subNode) => {\n node.attach(subNode.address, false)\n })\n }),\n )\n\n await Promise.all(\n this.publicChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n subNodes.forEach((subNode) => {\n node.attach(subNode.address, true)\n })\n }),\n )\n\n return node\n }\n\n /**\n * Load the nodes that are defined in the wrapped manifest and optionally attach them to a node\n */\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleRegistry,\n ): Promise<MemoryNode[]>\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<MemoryNode[]>\n async loadNodes(node?: MemoryNode, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode[]> {\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n const result = await Promise.all(\n this.jsonPayload().nodes?.map(async (nodeManifest, index) => {\n const subNode = await this.loadNodeFromManifest(nodeManifest, nodeManifest.config.accountPath ?? `${index}'`, registry)\n await node?.register(subNode)\n return subNode\n }),\n )\n return result\n }\n\n nodeManifest(index: number) {\n return this.jsonPayload().nodes?.[index]\n }\n\n /** Register a module on a node based on a manifest */\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleRegistry): Promise<ModuleInstance>\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleDictionary): Promise<ModuleInstance>\n private async registerModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n creatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<ModuleInstance> {\n const registry = toCreatableModuleRegistry(creatableModules ?? {})\n const creatableModule = new ModuleFactoryLocator(this.locator.registry)\n .registerMany(registry)\n .locate(manifest.config.schema, manifest.config.labels)\n const path = manifest.config.accountPath\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const module = await creatableModule.create({\n account,\n config: assertEx(manifest.config, 'Missing config'),\n wallet,\n })\n await node.register(module)\n return module\n }\n}\n","import { HttpBridge } from '@xyo-network/http-bridge'\nimport { MemoryArchivist } from '@xyo-network/memory-archivist'\nimport { CreatableModuleDictionary, ModuleFactory } from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { MemorySentinel } from '@xyo-network/sentinel'\n\nexport const standardCreatableModules: CreatableModuleDictionary = {\n 'network.xyo.archivist.config': MemoryArchivist,\n 'network.xyo.bridge.http.config': ModuleFactory.withParams(HttpBridge, { config: { schema: HttpBridge.configSchema } }),\n 'network.xyo.node.config': MemoryNode,\n 'network.xyo.sentinel.config': MemorySentinel,\n}\n","export * from './ManifestWrapper'\nexport * from './standardCreatableModules'\nexport * from '@xyo-network/manifest-model'\n"],"mappings":"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","names":["MemoryNode","node","external","MemoryNode"]}
1
+ {"version":3,"sources":["../../src/ManifestWrapper.ts","../../src/standardCreatableModules.ts","../../src/index.ts"],"sourcesContent":["import { assertEx } from '@xylabs/assert'\nimport { Account } from '@xyo-network/account'\nimport { ModuleManifest, NodeManifest, PackageManifestPayload } from '@xyo-network/manifest-model'\nimport {\n assignCreatableModuleRegistry,\n CreatableModuleDictionary,\n CreatableModuleRegistry,\n ModuleFactoryLocator,\n ModuleInstance,\n toCreatableModuleRegistry,\n} from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { NodeInstance } from '@xyo-network/node-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { WalletInstance } from '@xyo-network/wallet-model'\n\nimport { standardCreatableModules } from './standardCreatableModules'\n\n/** Provides functionality that can be performed on a PackageManifest */\nexport class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {\n constructor(\n payload: PackageManifestPayload,\n protected readonly wallet: WalletInstance,\n protected readonly locator: ModuleFactoryLocator = new ModuleFactoryLocator({}),\n protected readonly publicChildren: PackageManifestPayload[] = [],\n protected readonly privateChildren: PackageManifestPayload[] = [],\n ) {\n super(payload)\n }\n\n async loadModule(node: MemoryNode, manifest: ModuleManifest, external: boolean, additionalCreatableModules?: CreatableModuleRegistry): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external: boolean,\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external = true,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<void> {\n const collision = async (node: NodeInstance, name: string, external: boolean) => {\n const externalConflict = external ? (await node.resolve({ name: [name] }, { direction: external ? 'all' : 'down' })).length > 0 : false\n return externalConflict || (await node.resolve({ name: [name] }, { direction: 'down' })).length > 0\n }\n\n const creatableModules = assignCreatableModuleRegistry(\n {},\n toCreatableModuleRegistry(standardCreatableModules),\n toCreatableModuleRegistry(additionalCreatableModules ?? {}),\n )\n if (!(await collision(node, manifest.config.name, external)) && manifest.config.language && manifest.config.language === 'javascript') {\n assertEx(\n (manifest.config.name && (await node.attach(manifest.config.name, external))) ??\n (await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external)),\n `No module with config schema [${manifest.config.name}] registered`,\n )\n }\n }\n\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode> {\n const manifest = assertEx(this.nodeManifest(index), 'Failed to find Node Manifest')\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n return await this.loadNodeFromManifest(manifest, manifest.config.accountPath ?? `${index}'`, registry)\n }\n\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromManifest(\n manifest: NodeManifest,\n path?: string,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<MemoryNode> {\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const node = await MemoryNode.create({ account, config: manifest.config, wallet })\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n // Load Private Modules\n const privateModules =\n manifest.modules?.private?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, false, registry)\n }) ?? []\n // Load Public Modules\n const publicModules =\n manifest.modules?.public?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, true, registry)\n }) ?? []\n await Promise.all([...privateModules, ...publicModules])\n\n await Promise.all(\n this.privateChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n for (const subNode of subNodes) {\n node.attach(subNode.address, false)\n }\n }),\n )\n\n await Promise.all(\n this.publicChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n for (const subNode of subNodes) {\n node.attach(subNode.address, true)\n }\n }),\n )\n\n return node\n }\n\n /**\n * Load the nodes that are defined in the wrapped manifest and optionally attach them to a node\n */\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleRegistry,\n ): Promise<MemoryNode[]>\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<MemoryNode[]>\n async loadNodes(node?: MemoryNode, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode[]> {\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n const result = await Promise.all(\n this.jsonPayload().nodes?.map(async (nodeManifest, index) => {\n const subNode = await this.loadNodeFromManifest(nodeManifest, nodeManifest.config.accountPath ?? `${index}'`, registry)\n await node?.register(subNode)\n return subNode\n }),\n )\n return result\n }\n\n nodeManifest(index: number) {\n return this.jsonPayload().nodes?.[index]\n }\n\n /** Register a module on a node based on a manifest */\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleRegistry): Promise<ModuleInstance>\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleDictionary): Promise<ModuleInstance>\n private async registerModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n creatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<ModuleInstance> {\n const registry = toCreatableModuleRegistry(creatableModules ?? {})\n const creatableModule = new ModuleFactoryLocator(this.locator.registry)\n .registerMany(registry)\n .locate(manifest.config.schema, manifest.config.labels)\n const path = manifest.config.accountPath\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const module = await creatableModule.create({\n account,\n config: assertEx(manifest.config, 'Missing config'),\n wallet,\n })\n await node.register(module)\n return module\n }\n}\n","import { HttpBridge } from '@xyo-network/http-bridge'\nimport { MemoryArchivist } from '@xyo-network/memory-archivist'\nimport { CreatableModuleDictionary, ModuleFactory } from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { MemorySentinel } from '@xyo-network/sentinel'\n\nexport const standardCreatableModules: CreatableModuleDictionary = {\n 'network.xyo.archivist.config': MemoryArchivist,\n 'network.xyo.bridge.http.config': ModuleFactory.withParams(HttpBridge, { config: { schema: HttpBridge.configSchema } }),\n 'network.xyo.node.config': MemoryNode,\n 'network.xyo.sentinel.config': MemorySentinel,\n}\n","export * from './ManifestWrapper'\nexport * from './standardCreatableModules'\nexport * from '@xyo-network/manifest-model'\n"],"mappings":"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","names":["MemoryNode","node","external","MemoryNode"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA4BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
1
+ {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA0BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA4BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
1
+ {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA0BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA4BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
1
+ {"version":3,"file":"ManifestWrapper.d.ts","sourceRoot":"","sources":["../../src/ManifestWrapper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAClG,OAAO,EAEL,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EAGrB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAI1D,wEAAwE;AACxE,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,oBAAoB;IAChD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;IAC3D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,EAAE;gBAJ5D,OAAO,EAAE,sBAAsB,EACZ,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,oBAAmD,EAC5D,cAAc,GAAE,sBAAsB,EAAO,EAC7C,eAAe,GAAE,sBAAsB,EAAO;IAK7D,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9I,UAAU,CACd,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,OAAO,EACjB,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,IAAI,CAAC;IA0BV,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC3G,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IAO7G,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IACrI,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,0BAA0B,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;IA6C7I;;OAEG;IACG,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,uBAAuB,GACnD,OAAO,CAAC,UAAU,EAAE,CAAC;IAClB,SAAS;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,UAAU;IACjB,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,yBAAyB,GACrD,OAAO,CAAC,UAAU,EAAE,CAAC;IAaxB,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B,sDAAsD;YACxC,cAAc;CAsB7B"}
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/index.ts
22
+ var src_exports = {};
23
+ __export(src_exports, {
24
+ ManifestWrapper: () => ManifestWrapper,
25
+ standardCreatableModules: () => standardCreatableModules
26
+ });
27
+ module.exports = __toCommonJS(src_exports);
28
+
29
+ // src/ManifestWrapper.ts
30
+ var import_assert = require("@xylabs/assert");
31
+ var import_account = require("@xyo-network/account");
32
+ var import_module_model2 = require("@xyo-network/module-model");
33
+ var import_node_memory2 = require("@xyo-network/node-memory");
34
+ var import_payload_wrapper = require("@xyo-network/payload-wrapper");
35
+
36
+ // src/standardCreatableModules.ts
37
+ var import_http_bridge = require("@xyo-network/http-bridge");
38
+ var import_memory_archivist = require("@xyo-network/memory-archivist");
39
+ var import_module_model = require("@xyo-network/module-model");
40
+ var import_node_memory = require("@xyo-network/node-memory");
41
+ var import_sentinel = require("@xyo-network/sentinel");
42
+ var standardCreatableModules = {
43
+ "network.xyo.archivist.config": import_memory_archivist.MemoryArchivist,
44
+ "network.xyo.bridge.http.config": import_module_model.ModuleFactory.withParams(import_http_bridge.HttpBridge, { config: { schema: import_http_bridge.HttpBridge.configSchema } }),
45
+ "network.xyo.node.config": import_node_memory.MemoryNode,
46
+ "network.xyo.sentinel.config": import_sentinel.MemorySentinel
47
+ };
48
+
49
+ // src/ManifestWrapper.ts
50
+ var ManifestWrapper = class _ManifestWrapper extends import_payload_wrapper.PayloadWrapper {
51
+ constructor(payload, wallet, locator = new import_module_model2.ModuleFactoryLocator({}), publicChildren = [], privateChildren = []) {
52
+ super(payload);
53
+ this.wallet = wallet;
54
+ this.locator = locator;
55
+ this.publicChildren = publicChildren;
56
+ this.privateChildren = privateChildren;
57
+ }
58
+ async loadModule(node, manifest, external = true, additionalCreatableModules) {
59
+ const collision = async (node2, name, external2) => {
60
+ const externalConflict = external2 ? (await node2.resolve({ name: [name] }, { direction: external2 ? "all" : "down" })).length > 0 : false;
61
+ return externalConflict || (await node2.resolve({ name: [name] }, { direction: "down" })).length > 0;
62
+ };
63
+ const creatableModules = (0, import_module_model2.assignCreatableModuleRegistry)(
64
+ {},
65
+ (0, import_module_model2.toCreatableModuleRegistry)(standardCreatableModules),
66
+ (0, import_module_model2.toCreatableModuleRegistry)(additionalCreatableModules ?? {})
67
+ );
68
+ if (!await collision(node, manifest.config.name, external) && manifest.config.language && manifest.config.language === "javascript") {
69
+ (0, import_assert.assertEx)(
70
+ (manifest.config.name && await node.attach(manifest.config.name, external)) ?? await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external),
71
+ `No module with config schema [${manifest.config.name}] registered`
72
+ );
73
+ }
74
+ }
75
+ async loadNodeFromIndex(index, additionalCreatableModules) {
76
+ const manifest = (0, import_assert.assertEx)(this.nodeManifest(index), "Failed to find Node Manifest");
77
+ const registry = (0, import_module_model2.toCreatableModuleRegistry)(additionalCreatableModules ?? {});
78
+ return await this.loadNodeFromManifest(manifest, manifest.config.accountPath ?? `${index}'`, registry);
79
+ }
80
+ async loadNodeFromManifest(manifest, path, additionalCreatableModules) {
81
+ var _a, _b, _c, _d;
82
+ const wallet = path ? await this.wallet.derivePath(path) : void 0;
83
+ const account = path ? void 0 : import_account.Account.randomSync();
84
+ const node = await import_node_memory2.MemoryNode.create({ account, config: manifest.config, wallet });
85
+ const registry = (0, import_module_model2.toCreatableModuleRegistry)(additionalCreatableModules ?? {});
86
+ const privateModules = ((_b = (_a = manifest.modules) == null ? void 0 : _a.private) == null ? void 0 : _b.map(async (moduleManifest) => {
87
+ await this.loadModule(node, moduleManifest, false, registry);
88
+ })) ?? [];
89
+ const publicModules = ((_d = (_c = manifest.modules) == null ? void 0 : _c.public) == null ? void 0 : _d.map(async (moduleManifest) => {
90
+ await this.loadModule(node, moduleManifest, true, registry);
91
+ })) ?? [];
92
+ await Promise.all([...privateModules, ...publicModules]);
93
+ await Promise.all(
94
+ this.privateChildren.map(async (child) => {
95
+ const wrapper = new _ManifestWrapper(child, this.wallet, this.locator);
96
+ const subNodes = await wrapper.loadNodes(node);
97
+ for (const subNode of subNodes) {
98
+ node.attach(subNode.address, false);
99
+ }
100
+ })
101
+ );
102
+ await Promise.all(
103
+ this.publicChildren.map(async (child) => {
104
+ const wrapper = new _ManifestWrapper(child, this.wallet, this.locator);
105
+ const subNodes = await wrapper.loadNodes(node);
106
+ for (const subNode of subNodes) {
107
+ node.attach(subNode.address, true);
108
+ }
109
+ })
110
+ );
111
+ return node;
112
+ }
113
+ async loadNodes(node, additionalCreatableModules) {
114
+ var _a;
115
+ const registry = (0, import_module_model2.toCreatableModuleRegistry)(additionalCreatableModules ?? {});
116
+ const result = await Promise.all(
117
+ (_a = this.jsonPayload().nodes) == null ? void 0 : _a.map(async (nodeManifest, index) => {
118
+ const subNode = await this.loadNodeFromManifest(nodeManifest, nodeManifest.config.accountPath ?? `${index}'`, registry);
119
+ await (node == null ? void 0 : node.register(subNode));
120
+ return subNode;
121
+ })
122
+ );
123
+ return result;
124
+ }
125
+ nodeManifest(index) {
126
+ var _a;
127
+ return (_a = this.jsonPayload().nodes) == null ? void 0 : _a[index];
128
+ }
129
+ async registerModule(node, manifest, creatableModules) {
130
+ const registry = (0, import_module_model2.toCreatableModuleRegistry)(creatableModules ?? {});
131
+ const creatableModule = new import_module_model2.ModuleFactoryLocator(this.locator.registry).registerMany(registry).locate(manifest.config.schema, manifest.config.labels);
132
+ const path = manifest.config.accountPath;
133
+ const wallet = path ? await this.wallet.derivePath(path) : void 0;
134
+ const account = path ? void 0 : import_account.Account.randomSync();
135
+ const module2 = await creatableModule.create({
136
+ account,
137
+ config: (0, import_assert.assertEx)(manifest.config, "Missing config"),
138
+ wallet
139
+ });
140
+ await node.register(module2);
141
+ return module2;
142
+ }
143
+ };
144
+
145
+ // src/index.ts
146
+ __reExport(src_exports, require("@xyo-network/manifest-model"), module.exports);
147
+ // Annotate the CommonJS export names for ESM import in node:
148
+ 0 && (module.exports = {
149
+ ManifestWrapper,
150
+ standardCreatableModules,
151
+ ...require("@xyo-network/manifest-model")
152
+ });
153
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/index.ts","../../src/ManifestWrapper.ts","../../src/standardCreatableModules.ts"],"sourcesContent":["export * from './ManifestWrapper'\nexport * from './standardCreatableModules'\nexport * from '@xyo-network/manifest-model'\n","import { assertEx } from '@xylabs/assert'\nimport { Account } from '@xyo-network/account'\nimport { ModuleManifest, NodeManifest, PackageManifestPayload } from '@xyo-network/manifest-model'\nimport {\n assignCreatableModuleRegistry,\n CreatableModuleDictionary,\n CreatableModuleRegistry,\n ModuleFactoryLocator,\n ModuleInstance,\n toCreatableModuleRegistry,\n} from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { NodeInstance } from '@xyo-network/node-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { WalletInstance } from '@xyo-network/wallet-model'\n\nimport { standardCreatableModules } from './standardCreatableModules'\n\n/** Provides functionality that can be performed on a PackageManifest */\nexport class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {\n constructor(\n payload: PackageManifestPayload,\n protected readonly wallet: WalletInstance,\n protected readonly locator: ModuleFactoryLocator = new ModuleFactoryLocator({}),\n protected readonly publicChildren: PackageManifestPayload[] = [],\n protected readonly privateChildren: PackageManifestPayload[] = [],\n ) {\n super(payload)\n }\n\n async loadModule(node: MemoryNode, manifest: ModuleManifest, external: boolean, additionalCreatableModules?: CreatableModuleRegistry): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external: boolean,\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external = true,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<void> {\n const collision = async (node: NodeInstance, name: string, external: boolean) => {\n const externalConflict = external ? (await node.resolve({ name: [name] }, { direction: external ? 'all' : 'down' })).length > 0 : false\n return externalConflict || (await node.resolve({ name: [name] }, { direction: 'down' })).length > 0\n }\n\n const creatableModules = assignCreatableModuleRegistry(\n {},\n toCreatableModuleRegistry(standardCreatableModules),\n toCreatableModuleRegistry(additionalCreatableModules ?? {}),\n )\n if (!(await collision(node, manifest.config.name, external)) && manifest.config.language && manifest.config.language === 'javascript') {\n assertEx(\n (manifest.config.name && (await node.attach(manifest.config.name, external))) ??\n (await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external)),\n `No module with config schema [${manifest.config.name}] registered`,\n )\n }\n }\n\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode> {\n const manifest = assertEx(this.nodeManifest(index), 'Failed to find Node Manifest')\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n return await this.loadNodeFromManifest(manifest, manifest.config.accountPath ?? `${index}'`, registry)\n }\n\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromManifest(\n manifest: NodeManifest,\n path?: string,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<MemoryNode> {\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const node = await MemoryNode.create({ account, config: manifest.config, wallet })\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n // Load Private Modules\n const privateModules =\n manifest.modules?.private?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, false, registry)\n }) ?? []\n // Load Public Modules\n const publicModules =\n manifest.modules?.public?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, true, registry)\n }) ?? []\n await Promise.all([...privateModules, ...publicModules])\n\n await Promise.all(\n this.privateChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n for (const subNode of subNodes) {\n node.attach(subNode.address, false)\n }\n }),\n )\n\n await Promise.all(\n this.publicChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n for (const subNode of subNodes) {\n node.attach(subNode.address, true)\n }\n }),\n )\n\n return node\n }\n\n /**\n * Load the nodes that are defined in the wrapped manifest and optionally attach them to a node\n */\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleRegistry,\n ): Promise<MemoryNode[]>\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<MemoryNode[]>\n async loadNodes(node?: MemoryNode, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode[]> {\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n const result = await Promise.all(\n this.jsonPayload().nodes?.map(async (nodeManifest, index) => {\n const subNode = await this.loadNodeFromManifest(nodeManifest, nodeManifest.config.accountPath ?? `${index}'`, registry)\n await node?.register(subNode)\n return subNode\n }),\n )\n return result\n }\n\n nodeManifest(index: number) {\n return this.jsonPayload().nodes?.[index]\n }\n\n /** Register a module on a node based on a manifest */\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleRegistry): Promise<ModuleInstance>\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleDictionary): Promise<ModuleInstance>\n private async registerModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n creatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<ModuleInstance> {\n const registry = toCreatableModuleRegistry(creatableModules ?? {})\n const creatableModule = new ModuleFactoryLocator(this.locator.registry)\n .registerMany(registry)\n .locate(manifest.config.schema, manifest.config.labels)\n const path = manifest.config.accountPath\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const module = await creatableModule.create({\n account,\n config: assertEx(manifest.config, 'Missing config'),\n wallet,\n })\n await node.register(module)\n return module\n }\n}\n","import { HttpBridge } from '@xyo-network/http-bridge'\nimport { MemoryArchivist } from '@xyo-network/memory-archivist'\nimport { CreatableModuleDictionary, ModuleFactory } from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { MemorySentinel } from '@xyo-network/sentinel'\n\nexport const standardCreatableModules: CreatableModuleDictionary = {\n 'network.xyo.archivist.config': MemoryArchivist,\n 'network.xyo.bridge.http.config': ModuleFactory.withParams(HttpBridge, { config: { schema: HttpBridge.configSchema } }),\n 'network.xyo.node.config': MemoryNode,\n 'network.xyo.sentinel.config': MemorySentinel,\n}\n"],"mappings":"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","names":["import_module_model","import_node_memory","node","external","module"]}
@@ -1,54 +1,30 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
19
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
-
21
- // src/index.ts
22
- var src_exports = {};
23
- __export(src_exports, {
24
- ManifestWrapper: () => ManifestWrapper,
25
- standardCreatableModules: () => standardCreatableModules
26
- });
27
- module.exports = __toCommonJS(src_exports);
28
-
29
1
  // src/ManifestWrapper.ts
30
- var import_assert = require("@xylabs/assert");
31
- var import_account = require("@xyo-network/account");
32
- var import_module_model2 = require("@xyo-network/module-model");
33
- var import_node_memory2 = require("@xyo-network/node-memory");
34
- var import_payload_wrapper = require("@xyo-network/payload-wrapper");
2
+ import { assertEx } from "@xylabs/assert";
3
+ import { Account } from "@xyo-network/account";
4
+ import {
5
+ assignCreatableModuleRegistry,
6
+ ModuleFactoryLocator,
7
+ toCreatableModuleRegistry
8
+ } from "@xyo-network/module-model";
9
+ import { MemoryNode as MemoryNode2 } from "@xyo-network/node-memory";
10
+ import { PayloadWrapper } from "@xyo-network/payload-wrapper";
35
11
 
36
12
  // src/standardCreatableModules.ts
37
- var import_http_bridge = require("@xyo-network/http-bridge");
38
- var import_memory_archivist = require("@xyo-network/memory-archivist");
39
- var import_module_model = require("@xyo-network/module-model");
40
- var import_node_memory = require("@xyo-network/node-memory");
41
- var import_sentinel = require("@xyo-network/sentinel");
13
+ import { HttpBridge } from "@xyo-network/http-bridge";
14
+ import { MemoryArchivist } from "@xyo-network/memory-archivist";
15
+ import { ModuleFactory } from "@xyo-network/module-model";
16
+ import { MemoryNode } from "@xyo-network/node-memory";
17
+ import { MemorySentinel } from "@xyo-network/sentinel";
42
18
  var standardCreatableModules = {
43
- "network.xyo.archivist.config": import_memory_archivist.MemoryArchivist,
44
- "network.xyo.bridge.http.config": import_module_model.ModuleFactory.withParams(import_http_bridge.HttpBridge, { config: { schema: import_http_bridge.HttpBridge.configSchema } }),
45
- "network.xyo.node.config": import_node_memory.MemoryNode,
46
- "network.xyo.sentinel.config": import_sentinel.MemorySentinel
19
+ "network.xyo.archivist.config": MemoryArchivist,
20
+ "network.xyo.bridge.http.config": ModuleFactory.withParams(HttpBridge, { config: { schema: HttpBridge.configSchema } }),
21
+ "network.xyo.node.config": MemoryNode,
22
+ "network.xyo.sentinel.config": MemorySentinel
47
23
  };
48
24
 
49
25
  // src/ManifestWrapper.ts
50
- var ManifestWrapper = class _ManifestWrapper extends import_payload_wrapper.PayloadWrapper {
51
- constructor(payload, wallet, locator = new import_module_model2.ModuleFactoryLocator({}), publicChildren = [], privateChildren = []) {
26
+ var ManifestWrapper = class _ManifestWrapper extends PayloadWrapper {
27
+ constructor(payload, wallet, locator = new ModuleFactoryLocator({}), publicChildren = [], privateChildren = []) {
52
28
  super(payload);
53
29
  this.wallet = wallet;
54
30
  this.locator = locator;
@@ -57,34 +33,32 @@ var ManifestWrapper = class _ManifestWrapper extends import_payload_wrapper.Payl
57
33
  }
58
34
  async loadModule(node, manifest, external = true, additionalCreatableModules) {
59
35
  const collision = async (node2, name, external2) => {
60
- const externalConflict = external2 ? (await node2.resolve({ name: [name] }, { direction: external2 ? "all" : "down" })).length !== 0 : false;
61
- return externalConflict || (await node2.resolve({ name: [name] }, { direction: "down" })).length !== 0;
36
+ const externalConflict = external2 ? (await node2.resolve({ name: [name] }, { direction: external2 ? "all" : "down" })).length > 0 : false;
37
+ return externalConflict || (await node2.resolve({ name: [name] }, { direction: "down" })).length > 0;
62
38
  };
63
- const creatableModules = (0, import_module_model2.assignCreatableModuleRegistry)(
39
+ const creatableModules = assignCreatableModuleRegistry(
64
40
  {},
65
- (0, import_module_model2.toCreatableModuleRegistry)(standardCreatableModules),
66
- (0, import_module_model2.toCreatableModuleRegistry)(additionalCreatableModules ?? {})
41
+ toCreatableModuleRegistry(standardCreatableModules),
42
+ toCreatableModuleRegistry(additionalCreatableModules ?? {})
67
43
  );
68
- if (!await collision(node, manifest.config.name, external)) {
69
- if (manifest.config.language && manifest.config.language === "javascript") {
70
- (0, import_assert.assertEx)(
71
- (manifest.config.name && await node.attach(manifest.config.name, external)) ?? await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external),
72
- `No module with config schema [${manifest.config.name}] registered`
73
- );
74
- }
44
+ if (!await collision(node, manifest.config.name, external) && manifest.config.language && manifest.config.language === "javascript") {
45
+ assertEx(
46
+ (manifest.config.name && await node.attach(manifest.config.name, external)) ?? await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external),
47
+ `No module with config schema [${manifest.config.name}] registered`
48
+ );
75
49
  }
76
50
  }
77
51
  async loadNodeFromIndex(index, additionalCreatableModules) {
78
- const manifest = (0, import_assert.assertEx)(this.nodeManifest(index), "Failed to find Node Manifest");
79
- const registry = (0, import_module_model2.toCreatableModuleRegistry)(additionalCreatableModules ?? {});
52
+ const manifest = assertEx(this.nodeManifest(index), "Failed to find Node Manifest");
53
+ const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {});
80
54
  return await this.loadNodeFromManifest(manifest, manifest.config.accountPath ?? `${index}'`, registry);
81
55
  }
82
56
  async loadNodeFromManifest(manifest, path, additionalCreatableModules) {
83
57
  var _a, _b, _c, _d;
84
58
  const wallet = path ? await this.wallet.derivePath(path) : void 0;
85
- const account = path ? void 0 : import_account.Account.randomSync();
86
- const node = await import_node_memory2.MemoryNode.create({ account, config: manifest.config, wallet });
87
- const registry = (0, import_module_model2.toCreatableModuleRegistry)(additionalCreatableModules ?? {});
59
+ const account = path ? void 0 : Account.randomSync();
60
+ const node = await MemoryNode2.create({ account, config: manifest.config, wallet });
61
+ const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {});
88
62
  const privateModules = ((_b = (_a = manifest.modules) == null ? void 0 : _a.private) == null ? void 0 : _b.map(async (moduleManifest) => {
89
63
  await this.loadModule(node, moduleManifest, false, registry);
90
64
  })) ?? [];
@@ -96,25 +70,25 @@ var ManifestWrapper = class _ManifestWrapper extends import_payload_wrapper.Payl
96
70
  this.privateChildren.map(async (child) => {
97
71
  const wrapper = new _ManifestWrapper(child, this.wallet, this.locator);
98
72
  const subNodes = await wrapper.loadNodes(node);
99
- subNodes.forEach((subNode) => {
73
+ for (const subNode of subNodes) {
100
74
  node.attach(subNode.address, false);
101
- });
75
+ }
102
76
  })
103
77
  );
104
78
  await Promise.all(
105
79
  this.publicChildren.map(async (child) => {
106
80
  const wrapper = new _ManifestWrapper(child, this.wallet, this.locator);
107
81
  const subNodes = await wrapper.loadNodes(node);
108
- subNodes.forEach((subNode) => {
82
+ for (const subNode of subNodes) {
109
83
  node.attach(subNode.address, true);
110
- });
84
+ }
111
85
  })
112
86
  );
113
87
  return node;
114
88
  }
115
89
  async loadNodes(node, additionalCreatableModules) {
116
90
  var _a;
117
- const registry = (0, import_module_model2.toCreatableModuleRegistry)(additionalCreatableModules ?? {});
91
+ const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {});
118
92
  const result = await Promise.all(
119
93
  (_a = this.jsonPayload().nodes) == null ? void 0 : _a.map(async (nodeManifest, index) => {
120
94
  const subNode = await this.loadNodeFromManifest(nodeManifest, nodeManifest.config.accountPath ?? `${index}'`, registry);
@@ -129,27 +103,25 @@ var ManifestWrapper = class _ManifestWrapper extends import_payload_wrapper.Payl
129
103
  return (_a = this.jsonPayload().nodes) == null ? void 0 : _a[index];
130
104
  }
131
105
  async registerModule(node, manifest, creatableModules) {
132
- const registry = (0, import_module_model2.toCreatableModuleRegistry)(creatableModules ?? {});
133
- const creatableModule = new import_module_model2.ModuleFactoryLocator(this.locator.registry).registerMany(registry).locate(manifest.config.schema, manifest.config.labels);
106
+ const registry = toCreatableModuleRegistry(creatableModules ?? {});
107
+ const creatableModule = new ModuleFactoryLocator(this.locator.registry).registerMany(registry).locate(manifest.config.schema, manifest.config.labels);
134
108
  const path = manifest.config.accountPath;
135
109
  const wallet = path ? await this.wallet.derivePath(path) : void 0;
136
- const account = path ? void 0 : import_account.Account.randomSync();
137
- const module2 = await creatableModule.create({
110
+ const account = path ? void 0 : Account.randomSync();
111
+ const module = await creatableModule.create({
138
112
  account,
139
- config: (0, import_assert.assertEx)(manifest.config, "Missing config"),
113
+ config: assertEx(manifest.config, "Missing config"),
140
114
  wallet
141
115
  });
142
- await node.register(module2);
143
- return module2;
116
+ await node.register(module);
117
+ return module;
144
118
  }
145
119
  };
146
120
 
147
121
  // src/index.ts
148
- __reExport(src_exports, require("@xyo-network/manifest-model"), module.exports);
149
- // Annotate the CommonJS export names for ESM import in node:
150
- 0 && (module.exports = {
122
+ export * from "@xyo-network/manifest-model";
123
+ export {
151
124
  ManifestWrapper,
152
- standardCreatableModules,
153
- ...require("@xyo-network/manifest-model")
154
- });
125
+ standardCreatableModules
126
+ };
155
127
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/ManifestWrapper.ts","../../src/standardCreatableModules.ts"],"sourcesContent":["export * from './ManifestWrapper'\nexport * from './standardCreatableModules'\nexport * from '@xyo-network/manifest-model'\n","import { assertEx } from '@xylabs/assert'\nimport { Account } from '@xyo-network/account'\nimport { ModuleManifest, NodeManifest, PackageManifestPayload } from '@xyo-network/manifest-model'\nimport {\n assignCreatableModuleRegistry,\n CreatableModuleDictionary,\n CreatableModuleRegistry,\n ModuleFactoryLocator,\n ModuleInstance,\n toCreatableModuleRegistry,\n} from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { NodeInstance } from '@xyo-network/node-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { WalletInstance } from '@xyo-network/wallet-model'\n\nimport { standardCreatableModules } from './standardCreatableModules'\n\n/** Provides functionality that can be performed on a PackageManifest */\nexport class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {\n constructor(\n payload: PackageManifestPayload,\n protected readonly wallet: WalletInstance,\n protected readonly locator: ModuleFactoryLocator = new ModuleFactoryLocator({}),\n protected readonly publicChildren: PackageManifestPayload[] = [],\n protected readonly privateChildren: PackageManifestPayload[] = [],\n ) {\n super(payload)\n }\n\n async loadModule(node: MemoryNode, manifest: ModuleManifest, external: boolean, additionalCreatableModules?: CreatableModuleRegistry): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external: boolean,\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external = true,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<void> {\n const collision = async (node: NodeInstance, name: string, external: boolean) => {\n const externalConflict = external ? (await node.resolve({ name: [name] }, { direction: external ? 'all' : 'down' })).length !== 0 : false\n return externalConflict || (await node.resolve({ name: [name] }, { direction: 'down' })).length !== 0\n }\n\n const creatableModules = assignCreatableModuleRegistry(\n {},\n toCreatableModuleRegistry(standardCreatableModules),\n toCreatableModuleRegistry(additionalCreatableModules ?? {}),\n )\n if (!(await collision(node, manifest.config.name, external))) {\n if (manifest.config.language && manifest.config.language === 'javascript') {\n assertEx(\n (manifest.config.name && (await node.attach(manifest.config.name, external))) ??\n (await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external)),\n `No module with config schema [${manifest.config.name}] registered`,\n )\n }\n }\n }\n\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode> {\n const manifest = assertEx(this.nodeManifest(index), 'Failed to find Node Manifest')\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n return await this.loadNodeFromManifest(manifest, manifest.config.accountPath ?? `${index}'`, registry)\n }\n\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromManifest(\n manifest: NodeManifest,\n path?: string,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<MemoryNode> {\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const node = await MemoryNode.create({ account, config: manifest.config, wallet })\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n // Load Private Modules\n const privateModules =\n manifest.modules?.private?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, false, registry)\n }) ?? []\n // Load Public Modules\n const publicModules =\n manifest.modules?.public?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, true, registry)\n }) ?? []\n await Promise.all([...privateModules, ...publicModules])\n\n await Promise.all(\n this.privateChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n subNodes.forEach((subNode) => {\n node.attach(subNode.address, false)\n })\n }),\n )\n\n await Promise.all(\n this.publicChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n subNodes.forEach((subNode) => {\n node.attach(subNode.address, true)\n })\n }),\n )\n\n return node\n }\n\n /**\n * Load the nodes that are defined in the wrapped manifest and optionally attach them to a node\n */\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleRegistry,\n ): Promise<MemoryNode[]>\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<MemoryNode[]>\n async loadNodes(node?: MemoryNode, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode[]> {\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n const result = await Promise.all(\n this.jsonPayload().nodes?.map(async (nodeManifest, index) => {\n const subNode = await this.loadNodeFromManifest(nodeManifest, nodeManifest.config.accountPath ?? `${index}'`, registry)\n await node?.register(subNode)\n return subNode\n }),\n )\n return result\n }\n\n nodeManifest(index: number) {\n return this.jsonPayload().nodes?.[index]\n }\n\n /** Register a module on a node based on a manifest */\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleRegistry): Promise<ModuleInstance>\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleDictionary): Promise<ModuleInstance>\n private async registerModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n creatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<ModuleInstance> {\n const registry = toCreatableModuleRegistry(creatableModules ?? {})\n const creatableModule = new ModuleFactoryLocator(this.locator.registry)\n .registerMany(registry)\n .locate(manifest.config.schema, manifest.config.labels)\n const path = manifest.config.accountPath\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const module = await creatableModule.create({\n account,\n config: assertEx(manifest.config, 'Missing config'),\n wallet,\n })\n await node.register(module)\n return module\n }\n}\n","import { HttpBridge } from '@xyo-network/http-bridge'\nimport { MemoryArchivist } from '@xyo-network/memory-archivist'\nimport { CreatableModuleDictionary, ModuleFactory } from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { MemorySentinel } from '@xyo-network/sentinel'\n\nexport const standardCreatableModules: CreatableModuleDictionary = {\n 'network.xyo.archivist.config': MemoryArchivist,\n 'network.xyo.bridge.http.config': ModuleFactory.withParams(HttpBridge, { config: { schema: HttpBridge.configSchema } }),\n 'network.xyo.node.config': MemoryNode,\n 'network.xyo.sentinel.config': MemorySentinel,\n}\n"],"mappings":"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","names":["import_module_model","import_node_memory","node","external","module"]}
1
+ {"version":3,"sources":["../../src/ManifestWrapper.ts","../../src/standardCreatableModules.ts","../../src/index.ts"],"sourcesContent":["import { assertEx } from '@xylabs/assert'\nimport { Account } from '@xyo-network/account'\nimport { ModuleManifest, NodeManifest, PackageManifestPayload } from '@xyo-network/manifest-model'\nimport {\n assignCreatableModuleRegistry,\n CreatableModuleDictionary,\n CreatableModuleRegistry,\n ModuleFactoryLocator,\n ModuleInstance,\n toCreatableModuleRegistry,\n} from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { NodeInstance } from '@xyo-network/node-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { WalletInstance } from '@xyo-network/wallet-model'\n\nimport { standardCreatableModules } from './standardCreatableModules'\n\n/** Provides functionality that can be performed on a PackageManifest */\nexport class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {\n constructor(\n payload: PackageManifestPayload,\n protected readonly wallet: WalletInstance,\n protected readonly locator: ModuleFactoryLocator = new ModuleFactoryLocator({}),\n protected readonly publicChildren: PackageManifestPayload[] = [],\n protected readonly privateChildren: PackageManifestPayload[] = [],\n ) {\n super(payload)\n }\n\n async loadModule(node: MemoryNode, manifest: ModuleManifest, external: boolean, additionalCreatableModules?: CreatableModuleRegistry): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external: boolean,\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external = true,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<void> {\n const collision = async (node: NodeInstance, name: string, external: boolean) => {\n const externalConflict = external ? (await node.resolve({ name: [name] }, { direction: external ? 'all' : 'down' })).length > 0 : false\n return externalConflict || (await node.resolve({ name: [name] }, { direction: 'down' })).length > 0\n }\n\n const creatableModules = assignCreatableModuleRegistry(\n {},\n toCreatableModuleRegistry(standardCreatableModules),\n toCreatableModuleRegistry(additionalCreatableModules ?? {}),\n )\n if (!(await collision(node, manifest.config.name, external)) && manifest.config.language && manifest.config.language === 'javascript') {\n assertEx(\n (manifest.config.name && (await node.attach(manifest.config.name, external))) ??\n (await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external)),\n `No module with config schema [${manifest.config.name}] registered`,\n )\n }\n }\n\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode> {\n const manifest = assertEx(this.nodeManifest(index), 'Failed to find Node Manifest')\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n return await this.loadNodeFromManifest(manifest, manifest.config.accountPath ?? `${index}'`, registry)\n }\n\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromManifest(\n manifest: NodeManifest,\n path?: string,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<MemoryNode> {\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const node = await MemoryNode.create({ account, config: manifest.config, wallet })\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n // Load Private Modules\n const privateModules =\n manifest.modules?.private?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, false, registry)\n }) ?? []\n // Load Public Modules\n const publicModules =\n manifest.modules?.public?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, true, registry)\n }) ?? []\n await Promise.all([...privateModules, ...publicModules])\n\n await Promise.all(\n this.privateChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n for (const subNode of subNodes) {\n node.attach(subNode.address, false)\n }\n }),\n )\n\n await Promise.all(\n this.publicChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n for (const subNode of subNodes) {\n node.attach(subNode.address, true)\n }\n }),\n )\n\n return node\n }\n\n /**\n * Load the nodes that are defined in the wrapped manifest and optionally attach them to a node\n */\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleRegistry,\n ): Promise<MemoryNode[]>\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<MemoryNode[]>\n async loadNodes(node?: MemoryNode, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode[]> {\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n const result = await Promise.all(\n this.jsonPayload().nodes?.map(async (nodeManifest, index) => {\n const subNode = await this.loadNodeFromManifest(nodeManifest, nodeManifest.config.accountPath ?? `${index}'`, registry)\n await node?.register(subNode)\n return subNode\n }),\n )\n return result\n }\n\n nodeManifest(index: number) {\n return this.jsonPayload().nodes?.[index]\n }\n\n /** Register a module on a node based on a manifest */\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleRegistry): Promise<ModuleInstance>\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleDictionary): Promise<ModuleInstance>\n private async registerModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n creatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<ModuleInstance> {\n const registry = toCreatableModuleRegistry(creatableModules ?? {})\n const creatableModule = new ModuleFactoryLocator(this.locator.registry)\n .registerMany(registry)\n .locate(manifest.config.schema, manifest.config.labels)\n const path = manifest.config.accountPath\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const module = await creatableModule.create({\n account,\n config: assertEx(manifest.config, 'Missing config'),\n wallet,\n })\n await node.register(module)\n return module\n }\n}\n","import { HttpBridge } from '@xyo-network/http-bridge'\nimport { MemoryArchivist } from '@xyo-network/memory-archivist'\nimport { CreatableModuleDictionary, ModuleFactory } from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { MemorySentinel } from '@xyo-network/sentinel'\n\nexport const standardCreatableModules: CreatableModuleDictionary = {\n 'network.xyo.archivist.config': MemoryArchivist,\n 'network.xyo.bridge.http.config': ModuleFactory.withParams(HttpBridge, { config: { schema: HttpBridge.configSchema } }),\n 'network.xyo.node.config': MemoryNode,\n 'network.xyo.sentinel.config': MemorySentinel,\n}\n","export * from './ManifestWrapper'\nexport * from './standardCreatableModules'\nexport * from '@xyo-network/manifest-model'\n"],"mappings":"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","names":["MemoryNode","node","external","MemoryNode"]}
package/package.json CHANGED
@@ -11,24 +11,23 @@
11
11
  "description": "Primary SDK for using XYO Protocol 2.0",
12
12
  "dependencies": {
13
13
  "@xylabs/assert": "^2.13.20",
14
- "@xyo-network/http-bridge": "~2.84.6",
15
- "@xyo-network/manifest-model": "~2.84.6",
16
- "@xyo-network/memory-archivist": "~2.84.6",
17
- "@xyo-network/module-model": "~2.84.6",
18
- "@xyo-network/node-memory": "~2.84.6",
19
- "@xyo-network/node-model": "~2.84.6",
20
- "@xyo-network/payload-wrapper": "~2.84.6",
21
- "@xyo-network/sentinel": "~2.84.6",
22
- "@xyo-network/wallet-model": "~2.84.6"
14
+ "@xyo-network/http-bridge": "~2.84.7",
15
+ "@xyo-network/manifest-model": "~2.84.7",
16
+ "@xyo-network/memory-archivist": "~2.84.7",
17
+ "@xyo-network/module-model": "~2.84.7",
18
+ "@xyo-network/node-memory": "~2.84.7",
19
+ "@xyo-network/node-model": "~2.84.7",
20
+ "@xyo-network/payload-wrapper": "~2.84.7",
21
+ "@xyo-network/sentinel": "~2.84.7",
22
+ "@xyo-network/wallet-model": "~2.84.7"
23
23
  },
24
24
  "devDependencies": {
25
- "@xylabs/ts-scripts-yarn3": "^3.2.19",
26
- "@xylabs/tsconfig": "^3.2.19",
27
- "@xyo-network/account": "~2.84.6",
25
+ "@xylabs/ts-scripts-yarn3": "^3.2.24",
26
+ "@xylabs/tsconfig": "^3.2.24",
27
+ "@xyo-network/account": "~2.84.7",
28
28
  "@xyo-network/address-payload-plugin": "^2.84.2",
29
29
  "typescript": "^5.3.3"
30
30
  },
31
- "docs": "dist/docs.json",
32
31
  "types": "dist/node/index.d.ts",
33
32
  "exports": {
34
33
  ".": {
@@ -44,12 +43,12 @@
44
43
  },
45
44
  "node": {
46
45
  "require": {
47
- "types": "./dist/node/index.d.ts",
48
- "default": "./dist/node/index.js"
46
+ "types": "./dist/node/index.d.cts",
47
+ "default": "./dist/node/index.cjs"
49
48
  },
50
49
  "import": {
51
50
  "types": "./dist/node/index.d.mts",
52
- "default": "./dist/node/index.mjs"
51
+ "default": "./dist/node/index.js"
53
52
  }
54
53
  }
55
54
  },
@@ -58,8 +57,8 @@
58
57
  },
59
58
  "./package.json": "./package.json"
60
59
  },
61
- "main": "dist/node/index.js",
62
- "module": "dist/node/index.mjs",
60
+ "main": "dist/node/index.cjs",
61
+ "module": "dist/node/index.js",
63
62
  "homepage": "https://xyo.network",
64
63
  "license": "LGPL-3.0-only",
65
64
  "name": "@xyo-network/manifest",
@@ -71,5 +70,6 @@
71
70
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
72
71
  },
73
72
  "sideEffects": false,
74
- "version": "2.84.6"
73
+ "version": "2.84.7",
74
+ "type": "module"
75
75
  }
@@ -42,8 +42,8 @@ export class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {
42
42
  additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,
43
43
  ): Promise<void> {
44
44
  const collision = async (node: NodeInstance, name: string, external: boolean) => {
45
- const externalConflict = external ? (await node.resolve({ name: [name] }, { direction: external ? 'all' : 'down' })).length !== 0 : false
46
- return externalConflict || (await node.resolve({ name: [name] }, { direction: 'down' })).length !== 0
45
+ const externalConflict = external ? (await node.resolve({ name: [name] }, { direction: external ? 'all' : 'down' })).length > 0 : false
46
+ return externalConflict || (await node.resolve({ name: [name] }, { direction: 'down' })).length > 0
47
47
  }
48
48
 
49
49
  const creatableModules = assignCreatableModuleRegistry(
@@ -51,14 +51,12 @@ export class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {
51
51
  toCreatableModuleRegistry(standardCreatableModules),
52
52
  toCreatableModuleRegistry(additionalCreatableModules ?? {}),
53
53
  )
54
- if (!(await collision(node, manifest.config.name, external))) {
55
- if (manifest.config.language && manifest.config.language === 'javascript') {
56
- assertEx(
57
- (manifest.config.name && (await node.attach(manifest.config.name, external))) ??
58
- (await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external)),
59
- `No module with config schema [${manifest.config.name}] registered`,
60
- )
61
- }
54
+ if (!(await collision(node, manifest.config.name, external)) && manifest.config.language && manifest.config.language === 'javascript') {
55
+ assertEx(
56
+ (manifest.config.name && (await node.attach(manifest.config.name, external))) ??
57
+ (await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external)),
58
+ `No module with config schema [${manifest.config.name}] registered`,
59
+ )
62
60
  }
63
61
  }
64
62
 
@@ -97,9 +95,9 @@ export class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {
97
95
  this.privateChildren.map(async (child) => {
98
96
  const wrapper = new ManifestWrapper(child, this.wallet, this.locator)
99
97
  const subNodes = await wrapper.loadNodes(node)
100
- subNodes.forEach((subNode) => {
98
+ for (const subNode of subNodes) {
101
99
  node.attach(subNode.address, false)
102
- })
100
+ }
103
101
  }),
104
102
  )
105
103
 
@@ -107,9 +105,9 @@ export class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {
107
105
  this.publicChildren.map(async (child) => {
108
106
  const wrapper = new ManifestWrapper(child, this.wallet, this.locator)
109
107
  const subNodes = await wrapper.loadNodes(node)
110
- subNodes.forEach((subNode) => {
108
+ for (const subNode of subNodes) {
111
109
  node.attach(subNode.address, true)
112
- })
110
+ }
113
111
  }),
114
112
  )
115
113
 
@@ -1,129 +0,0 @@
1
- // src/ManifestWrapper.ts
2
- import { assertEx } from "@xylabs/assert";
3
- import { Account } from "@xyo-network/account";
4
- import {
5
- assignCreatableModuleRegistry,
6
- ModuleFactoryLocator,
7
- toCreatableModuleRegistry
8
- } from "@xyo-network/module-model";
9
- import { MemoryNode as MemoryNode2 } from "@xyo-network/node-memory";
10
- import { PayloadWrapper } from "@xyo-network/payload-wrapper";
11
-
12
- // src/standardCreatableModules.ts
13
- import { HttpBridge } from "@xyo-network/http-bridge";
14
- import { MemoryArchivist } from "@xyo-network/memory-archivist";
15
- import { ModuleFactory } from "@xyo-network/module-model";
16
- import { MemoryNode } from "@xyo-network/node-memory";
17
- import { MemorySentinel } from "@xyo-network/sentinel";
18
- var standardCreatableModules = {
19
- "network.xyo.archivist.config": MemoryArchivist,
20
- "network.xyo.bridge.http.config": ModuleFactory.withParams(HttpBridge, { config: { schema: HttpBridge.configSchema } }),
21
- "network.xyo.node.config": MemoryNode,
22
- "network.xyo.sentinel.config": MemorySentinel
23
- };
24
-
25
- // src/ManifestWrapper.ts
26
- var ManifestWrapper = class _ManifestWrapper extends PayloadWrapper {
27
- constructor(payload, wallet, locator = new ModuleFactoryLocator({}), publicChildren = [], privateChildren = []) {
28
- super(payload);
29
- this.wallet = wallet;
30
- this.locator = locator;
31
- this.publicChildren = publicChildren;
32
- this.privateChildren = privateChildren;
33
- }
34
- async loadModule(node, manifest, external = true, additionalCreatableModules) {
35
- const collision = async (node2, name, external2) => {
36
- const externalConflict = external2 ? (await node2.resolve({ name: [name] }, { direction: external2 ? "all" : "down" })).length !== 0 : false;
37
- return externalConflict || (await node2.resolve({ name: [name] }, { direction: "down" })).length !== 0;
38
- };
39
- const creatableModules = assignCreatableModuleRegistry(
40
- {},
41
- toCreatableModuleRegistry(standardCreatableModules),
42
- toCreatableModuleRegistry(additionalCreatableModules ?? {})
43
- );
44
- if (!await collision(node, manifest.config.name, external)) {
45
- if (manifest.config.language && manifest.config.language === "javascript") {
46
- assertEx(
47
- (manifest.config.name && await node.attach(manifest.config.name, external)) ?? await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external),
48
- `No module with config schema [${manifest.config.name}] registered`
49
- );
50
- }
51
- }
52
- }
53
- async loadNodeFromIndex(index, additionalCreatableModules) {
54
- const manifest = assertEx(this.nodeManifest(index), "Failed to find Node Manifest");
55
- const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {});
56
- return await this.loadNodeFromManifest(manifest, manifest.config.accountPath ?? `${index}'`, registry);
57
- }
58
- async loadNodeFromManifest(manifest, path, additionalCreatableModules) {
59
- var _a, _b, _c, _d;
60
- const wallet = path ? await this.wallet.derivePath(path) : void 0;
61
- const account = path ? void 0 : Account.randomSync();
62
- const node = await MemoryNode2.create({ account, config: manifest.config, wallet });
63
- const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {});
64
- const privateModules = ((_b = (_a = manifest.modules) == null ? void 0 : _a.private) == null ? void 0 : _b.map(async (moduleManifest) => {
65
- await this.loadModule(node, moduleManifest, false, registry);
66
- })) ?? [];
67
- const publicModules = ((_d = (_c = manifest.modules) == null ? void 0 : _c.public) == null ? void 0 : _d.map(async (moduleManifest) => {
68
- await this.loadModule(node, moduleManifest, true, registry);
69
- })) ?? [];
70
- await Promise.all([...privateModules, ...publicModules]);
71
- await Promise.all(
72
- this.privateChildren.map(async (child) => {
73
- const wrapper = new _ManifestWrapper(child, this.wallet, this.locator);
74
- const subNodes = await wrapper.loadNodes(node);
75
- subNodes.forEach((subNode) => {
76
- node.attach(subNode.address, false);
77
- });
78
- })
79
- );
80
- await Promise.all(
81
- this.publicChildren.map(async (child) => {
82
- const wrapper = new _ManifestWrapper(child, this.wallet, this.locator);
83
- const subNodes = await wrapper.loadNodes(node);
84
- subNodes.forEach((subNode) => {
85
- node.attach(subNode.address, true);
86
- });
87
- })
88
- );
89
- return node;
90
- }
91
- async loadNodes(node, additionalCreatableModules) {
92
- var _a;
93
- const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {});
94
- const result = await Promise.all(
95
- (_a = this.jsonPayload().nodes) == null ? void 0 : _a.map(async (nodeManifest, index) => {
96
- const subNode = await this.loadNodeFromManifest(nodeManifest, nodeManifest.config.accountPath ?? `${index}'`, registry);
97
- await (node == null ? void 0 : node.register(subNode));
98
- return subNode;
99
- })
100
- );
101
- return result;
102
- }
103
- nodeManifest(index) {
104
- var _a;
105
- return (_a = this.jsonPayload().nodes) == null ? void 0 : _a[index];
106
- }
107
- async registerModule(node, manifest, creatableModules) {
108
- const registry = toCreatableModuleRegistry(creatableModules ?? {});
109
- const creatableModule = new ModuleFactoryLocator(this.locator.registry).registerMany(registry).locate(manifest.config.schema, manifest.config.labels);
110
- const path = manifest.config.accountPath;
111
- const wallet = path ? await this.wallet.derivePath(path) : void 0;
112
- const account = path ? void 0 : Account.randomSync();
113
- const module = await creatableModule.create({
114
- account,
115
- config: assertEx(manifest.config, "Missing config"),
116
- wallet
117
- });
118
- await node.register(module);
119
- return module;
120
- }
121
- };
122
-
123
- // src/index.ts
124
- export * from "@xyo-network/manifest-model";
125
- export {
126
- ManifestWrapper,
127
- standardCreatableModules
128
- };
129
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/ManifestWrapper.ts","../../src/standardCreatableModules.ts","../../src/index.ts"],"sourcesContent":["import { assertEx } from '@xylabs/assert'\nimport { Account } from '@xyo-network/account'\nimport { ModuleManifest, NodeManifest, PackageManifestPayload } from '@xyo-network/manifest-model'\nimport {\n assignCreatableModuleRegistry,\n CreatableModuleDictionary,\n CreatableModuleRegistry,\n ModuleFactoryLocator,\n ModuleInstance,\n toCreatableModuleRegistry,\n} from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { NodeInstance } from '@xyo-network/node-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { WalletInstance } from '@xyo-network/wallet-model'\n\nimport { standardCreatableModules } from './standardCreatableModules'\n\n/** Provides functionality that can be performed on a PackageManifest */\nexport class ManifestWrapper extends PayloadWrapper<PackageManifestPayload> {\n constructor(\n payload: PackageManifestPayload,\n protected readonly wallet: WalletInstance,\n protected readonly locator: ModuleFactoryLocator = new ModuleFactoryLocator({}),\n protected readonly publicChildren: PackageManifestPayload[] = [],\n protected readonly privateChildren: PackageManifestPayload[] = [],\n ) {\n super(payload)\n }\n\n async loadModule(node: MemoryNode, manifest: ModuleManifest, external: boolean, additionalCreatableModules?: CreatableModuleRegistry): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external: boolean,\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<void>\n async loadModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n external = true,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<void> {\n const collision = async (node: NodeInstance, name: string, external: boolean) => {\n const externalConflict = external ? (await node.resolve({ name: [name] }, { direction: external ? 'all' : 'down' })).length !== 0 : false\n return externalConflict || (await node.resolve({ name: [name] }, { direction: 'down' })).length !== 0\n }\n\n const creatableModules = assignCreatableModuleRegistry(\n {},\n toCreatableModuleRegistry(standardCreatableModules),\n toCreatableModuleRegistry(additionalCreatableModules ?? {}),\n )\n if (!(await collision(node, manifest.config.name, external))) {\n if (manifest.config.language && manifest.config.language === 'javascript') {\n assertEx(\n (manifest.config.name && (await node.attach(manifest.config.name, external))) ??\n (await node.attach((await this.registerModule(node, manifest, creatableModules)).address, external)),\n `No module with config schema [${manifest.config.name}] registered`,\n )\n }\n }\n }\n\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromIndex(index: number, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode> {\n const manifest = assertEx(this.nodeManifest(index), 'Failed to find Node Manifest')\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n return await this.loadNodeFromManifest(manifest, manifest.config.accountPath ?? `${index}'`, registry)\n }\n\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleRegistry): Promise<MemoryNode>\n async loadNodeFromManifest(manifest: NodeManifest, path: string, additionalCreatableModules?: CreatableModuleDictionary): Promise<MemoryNode>\n async loadNodeFromManifest(\n manifest: NodeManifest,\n path?: string,\n additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<MemoryNode> {\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const node = await MemoryNode.create({ account, config: manifest.config, wallet })\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n // Load Private Modules\n const privateModules =\n manifest.modules?.private?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, false, registry)\n }) ?? []\n // Load Public Modules\n const publicModules =\n manifest.modules?.public?.map(async (moduleManifest) => {\n await this.loadModule(node, moduleManifest, true, registry)\n }) ?? []\n await Promise.all([...privateModules, ...publicModules])\n\n await Promise.all(\n this.privateChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n subNodes.forEach((subNode) => {\n node.attach(subNode.address, false)\n })\n }),\n )\n\n await Promise.all(\n this.publicChildren.map(async (child) => {\n const wrapper = new ManifestWrapper(child, this.wallet, this.locator)\n const subNodes = await wrapper.loadNodes(node)\n subNodes.forEach((subNode) => {\n node.attach(subNode.address, true)\n })\n }),\n )\n\n return node\n }\n\n /**\n * Load the nodes that are defined in the wrapped manifest and optionally attach them to a node\n */\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleRegistry,\n ): Promise<MemoryNode[]>\n async loadNodes(\n /** Node to optionally attach the loaded nodes to */\n node?: MemoryNode,\n /** Additional creatable modules */\n additionalCreatableModules?: CreatableModuleDictionary,\n ): Promise<MemoryNode[]>\n async loadNodes(node?: MemoryNode, additionalCreatableModules?: CreatableModuleDictionary | CreatableModuleRegistry): Promise<MemoryNode[]> {\n const registry = toCreatableModuleRegistry(additionalCreatableModules ?? {})\n const result = await Promise.all(\n this.jsonPayload().nodes?.map(async (nodeManifest, index) => {\n const subNode = await this.loadNodeFromManifest(nodeManifest, nodeManifest.config.accountPath ?? `${index}'`, registry)\n await node?.register(subNode)\n return subNode\n }),\n )\n return result\n }\n\n nodeManifest(index: number) {\n return this.jsonPayload().nodes?.[index]\n }\n\n /** Register a module on a node based on a manifest */\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleRegistry): Promise<ModuleInstance>\n private async registerModule(node: MemoryNode, manifest: ModuleManifest, creatableModules?: CreatableModuleDictionary): Promise<ModuleInstance>\n private async registerModule(\n node: MemoryNode,\n manifest: ModuleManifest,\n creatableModules?: CreatableModuleDictionary | CreatableModuleRegistry,\n ): Promise<ModuleInstance> {\n const registry = toCreatableModuleRegistry(creatableModules ?? {})\n const creatableModule = new ModuleFactoryLocator(this.locator.registry)\n .registerMany(registry)\n .locate(manifest.config.schema, manifest.config.labels)\n const path = manifest.config.accountPath\n const wallet = path ? await this.wallet.derivePath(path) : undefined\n const account = path ? undefined : Account.randomSync()\n const module = await creatableModule.create({\n account,\n config: assertEx(manifest.config, 'Missing config'),\n wallet,\n })\n await node.register(module)\n return module\n }\n}\n","import { HttpBridge } from '@xyo-network/http-bridge'\nimport { MemoryArchivist } from '@xyo-network/memory-archivist'\nimport { CreatableModuleDictionary, ModuleFactory } from '@xyo-network/module-model'\nimport { MemoryNode } from '@xyo-network/node-memory'\nimport { MemorySentinel } from '@xyo-network/sentinel'\n\nexport const standardCreatableModules: CreatableModuleDictionary = {\n 'network.xyo.archivist.config': MemoryArchivist,\n 'network.xyo.bridge.http.config': ModuleFactory.withParams(HttpBridge, { config: { schema: HttpBridge.configSchema } }),\n 'network.xyo.node.config': MemoryNode,\n 'network.xyo.sentinel.config': MemorySentinel,\n}\n","export * from './ManifestWrapper'\nexport * from './standardCreatableModules'\nexport * from '@xyo-network/manifest-model'\n"],"mappings":";AAAA,SAAS,gBAAgB;AACzB,SAAS,eAAe;AAExB;AAAA,EACE;AAAA,EAGA;AAAA,EAEA;AAAA,OACK;AACP,SAAS,cAAAA,mBAAkB;AAE3B,SAAS,sBAAsB;;;ACb/B,SAAS,kBAAkB;AAC3B,SAAS,uBAAuB;AAChC,SAAoC,qBAAqB;AACzD,SAAS,kBAAkB;AAC3B,SAAS,sBAAsB;AAExB,IAAM,2BAAsD;AAAA,EACjE,gCAAgC;AAAA,EAChC,kCAAkC,cAAc,WAAW,YAAY,EAAE,QAAQ,EAAE,QAAQ,WAAW,aAAa,EAAE,CAAC;AAAA,EACtH,2BAA2B;AAAA,EAC3B,+BAA+B;AACjC;;;ADQO,IAAM,kBAAN,MAAM,yBAAwB,eAAuC;AAAA,EAC1E,YACE,SACmB,QACA,UAAgC,IAAI,qBAAqB,CAAC,CAAC,GAC3D,iBAA2C,CAAC,GAC5C,kBAA4C,CAAC,GAChE;AACA,UAAM,OAAO;AALM;AACA;AACA;AACA;AAAA,EAGrB;AAAA,EASA,MAAM,WACJ,MACA,UACA,WAAW,MACX,4BACe;AACf,UAAM,YAAY,OAAOC,OAAoB,MAAcC,cAAsB;AAC/E,YAAM,mBAAmBA,aAAY,MAAMD,MAAK,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,WAAWC,YAAW,QAAQ,OAAO,CAAC,GAAG,WAAW,IAAI;AACpI,aAAO,qBAAqB,MAAMD,MAAK,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,OAAO,CAAC,GAAG,WAAW;AAAA,IACtG;AAEA,UAAM,mBAAmB;AAAA,MACvB,CAAC;AAAA,MACD,0BAA0B,wBAAwB;AAAA,MAClD,0BAA0B,8BAA8B,CAAC,CAAC;AAAA,IAC5D;AACA,QAAI,CAAE,MAAM,UAAU,MAAM,SAAS,OAAO,MAAM,QAAQ,GAAI;AAC5D,UAAI,SAAS,OAAO,YAAY,SAAS,OAAO,aAAa,cAAc;AACzE;AAAA,WACG,SAAS,OAAO,QAAS,MAAM,KAAK,OAAO,SAAS,OAAO,MAAM,QAAQ,MACvE,MAAM,KAAK,QAAQ,MAAM,KAAK,eAAe,MAAM,UAAU,gBAAgB,GAAG,SAAS,QAAQ;AAAA,UACpG,iCAAiC,SAAS,OAAO,IAAI;AAAA,QACvD;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAIA,MAAM,kBAAkB,OAAe,4BAAuG;AAC5I,UAAM,WAAW,SAAS,KAAK,aAAa,KAAK,GAAG,8BAA8B;AAClF,UAAM,WAAW,0BAA0B,8BAA8B,CAAC,CAAC;AAC3E,WAAO,MAAM,KAAK,qBAAqB,UAAU,SAAS,OAAO,eAAe,GAAG,KAAK,KAAK,QAAQ;AAAA,EACvG;AAAA,EAIA,MAAM,qBACJ,UACA,MACA,4BACqB;AA9EzB;AA+EI,UAAM,SAAS,OAAO,MAAM,KAAK,OAAO,WAAW,IAAI,IAAI;AAC3D,UAAM,UAAU,OAAO,SAAY,QAAQ,WAAW;AACtD,UAAM,OAAO,MAAME,YAAW,OAAO,EAAE,SAAS,QAAQ,SAAS,QAAQ,OAAO,CAAC;AACjF,UAAM,WAAW,0BAA0B,8BAA8B,CAAC,CAAC;AAE3E,UAAM,mBACJ,oBAAS,YAAT,mBAAkB,YAAlB,mBAA2B,IAAI,OAAO,mBAAmB;AACvD,YAAM,KAAK,WAAW,MAAM,gBAAgB,OAAO,QAAQ;AAAA,IAC7D,OAAM,CAAC;AAET,UAAM,kBACJ,oBAAS,YAAT,mBAAkB,WAAlB,mBAA0B,IAAI,OAAO,mBAAmB;AACtD,YAAM,KAAK,WAAW,MAAM,gBAAgB,MAAM,QAAQ;AAAA,IAC5D,OAAM,CAAC;AACT,UAAM,QAAQ,IAAI,CAAC,GAAG,gBAAgB,GAAG,aAAa,CAAC;AAEvD,UAAM,QAAQ;AAAA,MACZ,KAAK,gBAAgB,IAAI,OAAO,UAAU;AACxC,cAAM,UAAU,IAAI,iBAAgB,OAAO,KAAK,QAAQ,KAAK,OAAO;AACpE,cAAM,WAAW,MAAM,QAAQ,UAAU,IAAI;AAC7C,iBAAS,QAAQ,CAAC,YAAY;AAC5B,eAAK,OAAO,QAAQ,SAAS,KAAK;AAAA,QACpC,CAAC;AAAA,MACH,CAAC;AAAA,IACH;AAEA,UAAM,QAAQ;AAAA,MACZ,KAAK,eAAe,IAAI,OAAO,UAAU;AACvC,cAAM,UAAU,IAAI,iBAAgB,OAAO,KAAK,QAAQ,KAAK,OAAO;AACpE,cAAM,WAAW,MAAM,QAAQ,UAAU,IAAI;AAC7C,iBAAS,QAAQ,CAAC,YAAY;AAC5B,eAAK,OAAO,QAAQ,SAAS,IAAI;AAAA,QACnC,CAAC;AAAA,MACH,CAAC;AAAA,IACH;AAEA,WAAO;AAAA,EACT;AAAA,EAiBA,MAAM,UAAU,MAAmB,4BAAyG;AArI9I;AAsII,UAAM,WAAW,0BAA0B,8BAA8B,CAAC,CAAC;AAC3E,UAAM,SAAS,MAAM,QAAQ;AAAA,OAC3B,UAAK,YAAY,EAAE,UAAnB,mBAA0B,IAAI,OAAO,cAAc,UAAU;AAC3D,cAAM,UAAU,MAAM,KAAK,qBAAqB,cAAc,aAAa,OAAO,eAAe,GAAG,KAAK,KAAK,QAAQ;AACtH,eAAM,6BAAM,SAAS;AACrB,eAAO;AAAA,MACT;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAAA,EAEA,aAAa,OAAe;AAjJ9B;AAkJI,YAAO,UAAK,YAAY,EAAE,UAAnB,mBAA2B;AAAA,EACpC;AAAA,EAKA,MAAc,eACZ,MACA,UACA,kBACyB;AACzB,UAAM,WAAW,0BAA0B,oBAAoB,CAAC,CAAC;AACjE,UAAM,kBAAkB,IAAI,qBAAqB,KAAK,QAAQ,QAAQ,EACnE,aAAa,QAAQ,EACrB,OAAO,SAAS,OAAO,QAAQ,SAAS,OAAO,MAAM;AACxD,UAAM,OAAO,SAAS,OAAO;AAC7B,UAAM,SAAS,OAAO,MAAM,KAAK,OAAO,WAAW,IAAI,IAAI;AAC3D,UAAM,UAAU,OAAO,SAAY,QAAQ,WAAW;AACtD,UAAM,SAAS,MAAM,gBAAgB,OAAO;AAAA,MAC1C;AAAA,MACA,QAAQ,SAAS,SAAS,QAAQ,gBAAgB;AAAA,MAClD;AAAA,IACF,CAAC;AACD,UAAM,KAAK,SAAS,MAAM;AAC1B,WAAO;AAAA,EACT;AACF;;;AE1KA,cAAc;","names":["MemoryNode","node","external","MemoryNode"]}