@xyo-network/module-model 2.64.10 → 2.65.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/CreatableModuleDictionary.js +3 -0
- package/dist/cjs/CreatableModuleDictionary.js.map +1 -0
- package/dist/cjs/{Query/Payload.js → Events/ModuleBusy.js} +1 -1
- package/dist/cjs/Events/ModuleBusy.js.map +1 -0
- package/dist/cjs/Events/ModuleQueried.js +3 -0
- package/dist/cjs/Events/ModuleQueried.js.map +1 -0
- package/dist/cjs/Events/index.js +6 -0
- package/dist/cjs/Events/index.js.map +1 -0
- package/dist/cjs/ModuleFactory.js +30 -0
- package/dist/cjs/ModuleFactory.js.map +1 -0
- package/dist/cjs/Queries/index.js.map +1 -1
- package/dist/cjs/index.js +4 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/duplicateModules.js +17 -0
- package/dist/cjs/lib/duplicateModules.js.map +1 -0
- package/dist/cjs/lib/index.js +6 -0
- package/dist/cjs/lib/index.js.map +1 -0
- package/dist/cjs/lib/serializable.js +38 -0
- package/dist/cjs/lib/serializable.js.map +1 -0
- package/dist/esm/CreatableModuleDictionary.js +2 -0
- package/dist/esm/CreatableModuleDictionary.js.map +1 -0
- package/dist/esm/Events/ModuleBusy.js +2 -0
- package/dist/esm/Events/ModuleBusy.js.map +1 -0
- package/dist/esm/Events/ModuleQueried.js +2 -0
- package/dist/esm/Events/ModuleQueried.js.map +1 -0
- package/dist/esm/Events/index.js +3 -0
- package/dist/esm/Events/index.js.map +1 -0
- package/dist/esm/ModuleFactory.js +28 -0
- package/dist/esm/ModuleFactory.js.map +1 -0
- package/dist/esm/Queries/index.js.map +1 -1
- package/dist/esm/index.js +4 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/duplicateModules.js +13 -0
- package/dist/esm/lib/duplicateModules.js.map +1 -0
- package/dist/esm/lib/index.js +3 -0
- package/dist/esm/lib/index.js.map +1 -0
- package/dist/esm/lib/serializable.js +32 -0
- package/dist/esm/lib/serializable.js.map +1 -0
- package/dist/types/CreatableModule.d.ts +7 -7
- package/dist/types/CreatableModule.d.ts.map +1 -1
- package/dist/types/CreatableModuleDictionary.d.ts +5 -0
- package/dist/types/CreatableModuleDictionary.d.ts.map +1 -0
- package/dist/types/Events/ModuleBusy.d.ts +9 -0
- package/dist/types/Events/ModuleBusy.d.ts.map +1 -0
- package/dist/types/Events/ModuleQueried.d.ts +14 -0
- package/dist/types/Events/ModuleQueried.d.ts.map +1 -0
- package/dist/types/Events/index.d.ts +3 -0
- package/dist/types/Events/index.d.ts.map +1 -0
- package/dist/types/Module.d.ts +11 -22
- package/dist/types/Module.d.ts.map +1 -1
- package/dist/types/ModuleFactory.d.ts +15 -0
- package/dist/types/ModuleFactory.d.ts.map +1 -0
- package/dist/types/ModuleQueryResult.d.ts +1 -1
- package/dist/types/ModuleQueryResult.d.ts.map +1 -1
- package/dist/types/Queries/Describe/Query.d.ts +1 -1
- package/dist/types/Queries/Describe/Query.d.ts.map +1 -1
- package/dist/types/Queries/Discover.d.ts +1 -1
- package/dist/types/Queries/Discover.d.ts.map +1 -1
- package/dist/types/Queries/Manifest.d.ts +1 -1
- package/dist/types/Queries/Manifest.d.ts.map +1 -1
- package/dist/types/Queries/ModuleAddress/Query.d.ts +1 -1
- package/dist/types/Queries/ModuleAddress/Query.d.ts.map +1 -1
- package/dist/types/Queries/Subscribe.d.ts +1 -1
- package/dist/types/Queries/Subscribe.d.ts.map +1 -1
- package/dist/types/Queries/index.d.ts +1 -1
- package/dist/types/Queries/index.d.ts.map +1 -1
- package/dist/types/index.d.ts +4 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/lib/duplicateModules.d.ts +12 -0
- package/dist/types/lib/duplicateModules.d.ts.map +1 -0
- package/dist/types/lib/index.d.ts +3 -0
- package/dist/types/lib/index.d.ts.map +1 -0
- package/dist/types/lib/serializable.d.ts +3 -0
- package/dist/types/lib/serializable.d.ts.map +1 -0
- package/package.json +14 -12
- package/src/CreatableModule.ts +7 -7
- package/src/CreatableModuleDictionary.ts +5 -0
- package/src/Events/ModuleBusy.ts +9 -0
- package/src/Events/ModuleQueried.ts +19 -0
- package/src/Events/index.ts +2 -0
- package/src/Module.ts +12 -27
- package/src/ModuleFactory.ts +40 -0
- package/src/ModuleQueryResult.ts +1 -1
- package/src/Queries/Describe/Query.ts +1 -1
- package/src/Queries/Discover.ts +1 -1
- package/src/Queries/Manifest.ts +1 -1
- package/src/Queries/ModuleAddress/Query.ts +1 -1
- package/src/Queries/Subscribe.ts +1 -1
- package/src/Queries/index.ts +2 -1
- package/src/index.ts +4 -2
- package/src/lib/duplicateModules.ts +14 -0
- package/src/lib/index.ts +2 -0
- package/src/lib/serializable.ts +41 -0
- package/dist/cjs/Error.js +0 -5
- package/dist/cjs/Error.js.map +0 -1
- package/dist/cjs/Query/Payload.js.map +0 -1
- package/dist/cjs/Query/QueryBoundWitness.js +0 -8
- package/dist/cjs/Query/QueryBoundWitness.js.map +0 -1
- package/dist/cjs/Query/index.js +0 -6
- package/dist/cjs/Query/index.js.map +0 -1
- package/dist/docs.json +0 -24709
- package/dist/esm/Error.js +0 -2
- package/dist/esm/Error.js.map +0 -1
- package/dist/esm/Query/Payload.js +0 -2
- package/dist/esm/Query/Payload.js.map +0 -1
- package/dist/esm/Query/QueryBoundWitness.js +0 -4
- package/dist/esm/Query/QueryBoundWitness.js.map +0 -1
- package/dist/esm/Query/index.js +0 -3
- package/dist/esm/Query/index.js.map +0 -1
- package/dist/types/Error.d.ts +0 -11
- package/dist/types/Error.d.ts.map +0 -1
- package/dist/types/Query/Payload.d.ts +0 -13
- package/dist/types/Query/Payload.d.ts.map +0 -1
- package/dist/types/Query/QueryBoundWitness.d.ts +0 -17
- package/dist/types/Query/QueryBoundWitness.d.ts.map +0 -1
- package/dist/types/Query/index.d.ts +0 -3
- package/dist/types/Query/index.d.ts.map +0 -1
- package/src/Error.ts +0 -12
- package/src/Query/Payload.ts +0 -17
- package/src/Query/QueryBoundWitness.ts +0 -13
- package/src/Query/index.ts +0 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreatableModuleDictionary.js","sourceRoot":"","sources":["../../src/CreatableModuleDictionary.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModuleBusy.js","sourceRoot":"","sources":["../../../src/Events/ModuleBusy.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModuleQueried.js","sourceRoot":"","sources":["../../../src/Events/ModuleQueried.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Events/index.ts"],"names":[],"mappings":";;;AAAA,uDAA4B;AAC5B,0DAA+B"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ModuleFactory = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const merge_1 = tslib_1.__importDefault(require("lodash/merge"));
|
|
6
|
+
class ModuleFactory {
|
|
7
|
+
constructor(creatableModule, params) {
|
|
8
|
+
this.creatableModule = creatableModule;
|
|
9
|
+
this.defaultParams = params;
|
|
10
|
+
this.configSchemas = creatableModule.configSchemas;
|
|
11
|
+
}
|
|
12
|
+
get configSchema() {
|
|
13
|
+
return this.configSchemas[0];
|
|
14
|
+
}
|
|
15
|
+
static withParams(creatableModule, params) {
|
|
16
|
+
return new ModuleFactory(creatableModule, params);
|
|
17
|
+
}
|
|
18
|
+
create(params) {
|
|
19
|
+
var _a;
|
|
20
|
+
const factory = this;
|
|
21
|
+
const schema = factory.creatableModule.configSchema;
|
|
22
|
+
const mergedParams = (0, merge_1.default)((_a = factory.defaultParams) !== null && _a !== void 0 ? _a : {}, params, { config: { schema } });
|
|
23
|
+
return factory.creatableModule.create(mergedParams);
|
|
24
|
+
}
|
|
25
|
+
factory(_params) {
|
|
26
|
+
throw new Error('Method not implemented.');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.ModuleFactory = ModuleFactory;
|
|
30
|
+
//# sourceMappingURL=ModuleFactory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModuleFactory.js","sourceRoot":"","sources":["../../src/ModuleFactory.ts"],"names":[],"mappings":";;;;AACA,iEAAgC;AAKhC,MAAa,aAAa;IASxB,YAAY,eAAyC,EAAE,MAA0B;QAC/E,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;QACtC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAA;QAC3B,IAAI,CAAC,aAAa,GAAG,eAAe,CAAC,aAAa,CAAA;IACpD,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC;IAED,MAAM,CAAC,UAAU,CAA2B,eAAmC,EAAE,MAAoB;QACnG,OAAO,IAAI,aAAa,CAAC,eAAe,EAAE,MAAM,CAAC,CAAA;IACnD,CAAC;IAED,MAAM,CAA4D,MAAsC;;QACtG,MAAM,OAAO,GAAG,IAAwB,CAAA;QACxC,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,YAAY,CAAA;QACnD,MAAM,YAAY,GAAsB,IAAA,eAAK,EAAC,MAAA,OAAO,CAAC,aAAa,mCAAI,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA;QAC1G,OAAO,OAAO,CAAC,eAAe,CAAC,MAAM,CAAI,YAAY,CAAC,CAAA;IACxD,CAAC;IAED,OAAO,CAAqD,OAAiC;QAC3F,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;CACF;AAjCD,sCAiCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Queries/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Queries/index.ts"],"names":[],"mappings":";;;AAOA,qDAA0B;AAC1B,qDAA0B;AAC1B,qDAA0B;AAC1B,0DAA+B;AAC/B,sDAA2B"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -4,15 +4,17 @@ const tslib_1 = require("tslib");
|
|
|
4
4
|
tslib_1.__exportStar(require("./asModule"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./Config"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./CreatableModule"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./
|
|
7
|
+
tslib_1.__exportStar(require("./CreatableModuleDictionary"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./Events"), exports);
|
|
8
9
|
tslib_1.__exportStar(require("./isModule"), exports);
|
|
10
|
+
tslib_1.__exportStar(require("./lib"), exports);
|
|
9
11
|
tslib_1.__exportStar(require("./Module"), exports);
|
|
10
12
|
tslib_1.__exportStar(require("./ModuleDescription"), exports);
|
|
13
|
+
tslib_1.__exportStar(require("./ModuleFactory"), exports);
|
|
11
14
|
tslib_1.__exportStar(require("./ModuleFilter"), exports);
|
|
12
15
|
tslib_1.__exportStar(require("./ModuleParams"), exports);
|
|
13
16
|
tslib_1.__exportStar(require("./ModuleQueryResult"), exports);
|
|
14
17
|
tslib_1.__exportStar(require("./ModuleRepository"), exports);
|
|
15
18
|
tslib_1.__exportStar(require("./Queries"), exports);
|
|
16
|
-
tslib_1.__exportStar(require("./Query"), exports);
|
|
17
19
|
tslib_1.__exportStar(require("./withModule"), exports);
|
|
18
20
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,qDAA0B;AAC1B,mDAAwB;AACxB,4DAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,qDAA0B;AAC1B,mDAAwB;AACxB,4DAAiC;AACjC,sEAA2C;AAC3C,mDAAwB;AACxB,qDAA0B;AAC1B,gDAAqB;AACrB,mDAAwB;AACxB,8DAAmC;AACnC,0DAA+B;AAC/B,yDAA8B;AAC9B,yDAA8B;AAC9B,8DAAmC;AACnC,6DAAkC;AAClC,oDAAyB;AACzB,uDAA4B"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.duplicateModules = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Used to filter duplicates from an array of modules
|
|
6
|
+
* @example: modulesArray.filter(duplicateModules)
|
|
7
|
+
* @param value Current Module
|
|
8
|
+
* @param index Current Module's index
|
|
9
|
+
* @param array Module Array
|
|
10
|
+
* @returns True if the Module's address is the first occurrence of
|
|
11
|
+
* that address in the array, false otherwise
|
|
12
|
+
*/
|
|
13
|
+
const duplicateModules = (value, index, array) => {
|
|
14
|
+
return array.findIndex((v) => v.address === value.address) === index;
|
|
15
|
+
};
|
|
16
|
+
exports.duplicateModules = duplicateModules;
|
|
17
|
+
//# sourceMappingURL=duplicateModules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duplicateModules.js","sourceRoot":"","sources":["../../../src/lib/duplicateModules.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;GAQG;AACI,MAAM,gBAAgB,GAAG,CAAC,KAAqB,EAAE,KAAa,EAAE,KAAuB,EAA2B,EAAE;IACzH,OAAO,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,KAAK,KAAK,CAAA;AACtE,CAAC,CAAA;AAFY,QAAA,gBAAgB,oBAE5B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./duplicateModules"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./serializable"), exports);
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":";;;AAAA,6DAAkC;AAClC,yDAA8B"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Inspired by https://stackoverflow.com/a/49079549/2803259
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.serializableField = exports.serializable = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const every_1 = tslib_1.__importDefault(require("lodash/every"));
|
|
7
|
+
const isArray_1 = tslib_1.__importDefault(require("lodash/isArray"));
|
|
8
|
+
const isBoolean_1 = tslib_1.__importDefault(require("lodash/isBoolean"));
|
|
9
|
+
const isNull_1 = tslib_1.__importDefault(require("lodash/isNull"));
|
|
10
|
+
const isNumber_1 = tslib_1.__importDefault(require("lodash/isNumber"));
|
|
11
|
+
const isPlainObject_1 = tslib_1.__importDefault(require("lodash/isPlainObject"));
|
|
12
|
+
const isString_1 = tslib_1.__importDefault(require("lodash/isString"));
|
|
13
|
+
const isUndefined_1 = tslib_1.__importDefault(require("lodash/isUndefined"));
|
|
14
|
+
const overSome_1 = tslib_1.__importDefault(require("lodash/overSome"));
|
|
15
|
+
const JSONPrimitiveChecks = [isUndefined_1.default, isNull_1.default, isBoolean_1.default, isNumber_1.default, isString_1.default];
|
|
16
|
+
const JSONComplexChecks = [isPlainObject_1.default, isArray_1.default];
|
|
17
|
+
const serializable = (field, depth) => {
|
|
18
|
+
let depthExceeded = false;
|
|
19
|
+
const decrementDepth = () => (depth ? depth-- : undefined);
|
|
20
|
+
const recursiveSerializable = (field) => {
|
|
21
|
+
if (depth !== undefined && depth < 1) {
|
|
22
|
+
depthExceeded = true;
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
// decrement during every recursion
|
|
26
|
+
decrementDepth();
|
|
27
|
+
const nestedSerializable = (field) => (0, overSome_1.default)(JSONComplexChecks)(field) && (0, every_1.default)(field, recursiveSerializable);
|
|
28
|
+
return (0, overSome_1.default)([...JSONPrimitiveChecks, nestedSerializable])(field);
|
|
29
|
+
};
|
|
30
|
+
const valid = recursiveSerializable(field);
|
|
31
|
+
return depthExceeded ? null : valid;
|
|
32
|
+
};
|
|
33
|
+
exports.serializable = serializable;
|
|
34
|
+
const serializableField = (field) => {
|
|
35
|
+
return (0, overSome_1.default)([...JSONPrimitiveChecks, ...JSONComplexChecks])(field);
|
|
36
|
+
};
|
|
37
|
+
exports.serializableField = serializableField;
|
|
38
|
+
//# sourceMappingURL=serializable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serializable.js","sourceRoot":"","sources":["../../../src/lib/serializable.ts"],"names":[],"mappings":";AAAA,2DAA2D;;;;AAE3D,iEAAgC;AAChC,qEAAoC;AACpC,yEAAwC;AACxC,mEAAkC;AAClC,uEAAsC;AACtC,iFAAgD;AAChD,uEAAsC;AACtC,6EAA4C;AAC5C,uEAAsC;AAEtC,MAAM,mBAAmB,GAAG,CAAC,qBAAW,EAAE,gBAAM,EAAE,mBAAS,EAAE,kBAAQ,EAAE,kBAAQ,CAAC,CAAA;AAChF,MAAM,iBAAiB,GAAG,CAAC,uBAAa,EAAE,iBAAO,CAAC,CAAA;AAE3C,MAAM,YAAY,GAAG,CAAC,KAAc,EAAE,KAAc,EAAkB,EAAE;IAC7E,IAAI,aAAa,GAAG,KAAK,CAAA;IACzB,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAE1D,MAAM,qBAAqB,GAAG,CAAC,KAAc,EAAE,EAAE;QAC/C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,GAAG,CAAC,EAAE;YACpC,aAAa,GAAG,IAAI,CAAA;YACpB,OAAO,KAAK,CAAA;SACb;QAED,mCAAmC;QACnC,cAAc,EAAE,CAAA;QAEhB,MAAM,kBAAkB,GAAG,CAAC,KAAc,EAAW,EAAE,CAAC,IAAA,kBAAQ,EAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,eAAK,EAAC,KAAe,EAAE,qBAAqB,CAAC,CAAA;QAE3I,OAAO,IAAA,kBAAQ,EAAC,CAAC,GAAG,mBAAmB,EAAE,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACtE,CAAC,CAAA;IAED,MAAM,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;IAE1C,OAAO,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;AACrC,CAAC,CAAA;AArBY,QAAA,YAAY,gBAqBxB;AAEM,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAE,EAAE;IAClD,OAAO,IAAA,kBAAQ,EAAC,CAAC,GAAG,mBAAmB,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;AACxE,CAAC,CAAA;AAFY,QAAA,iBAAiB,qBAE7B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreatableModuleDictionary.js","sourceRoot":"","sources":["../../src/CreatableModuleDictionary.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModuleBusy.js","sourceRoot":"","sources":["../../../src/Events/ModuleBusy.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModuleQueried.js","sourceRoot":"","sources":["../../../src/Events/ModuleQueried.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Events/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import merge from 'lodash/merge';
|
|
2
|
+
export class ModuleFactory {
|
|
3
|
+
configSchemas;
|
|
4
|
+
creatableModule;
|
|
5
|
+
defaultLogger;
|
|
6
|
+
defaultParams;
|
|
7
|
+
constructor(creatableModule, params) {
|
|
8
|
+
this.creatableModule = creatableModule;
|
|
9
|
+
this.defaultParams = params;
|
|
10
|
+
this.configSchemas = creatableModule.configSchemas;
|
|
11
|
+
}
|
|
12
|
+
get configSchema() {
|
|
13
|
+
return this.configSchemas[0];
|
|
14
|
+
}
|
|
15
|
+
static withParams(creatableModule, params) {
|
|
16
|
+
return new ModuleFactory(creatableModule, params);
|
|
17
|
+
}
|
|
18
|
+
create(params) {
|
|
19
|
+
const factory = this;
|
|
20
|
+
const schema = factory.creatableModule.configSchema;
|
|
21
|
+
const mergedParams = merge(factory.defaultParams ?? {}, params, { config: { schema } });
|
|
22
|
+
return factory.creatableModule.create(mergedParams);
|
|
23
|
+
}
|
|
24
|
+
factory(_params) {
|
|
25
|
+
throw new Error('Method not implemented.');
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=ModuleFactory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModuleFactory.js","sourceRoot":"","sources":["../../src/ModuleFactory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,cAAc,CAAA;AAKhC,MAAM,OAAO,aAAa;IACxB,aAAa,CAAkD;IAE/D,eAAe,CAA0B;IAEzC,aAAa,CAAqB;IAElC,aAAa,CAAoB;IAEjC,YAAY,eAAyC,EAAE,MAA0B;QAC/E,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;QACtC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAA;QAC3B,IAAI,CAAC,aAAa,GAAG,eAAe,CAAC,aAAa,CAAA;IACpD,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC;IAED,MAAM,CAAC,UAAU,CAA2B,eAAmC,EAAE,MAAoB;QACnG,OAAO,IAAI,aAAa,CAAC,eAAe,EAAE,MAAM,CAAC,CAAA;IACnD,CAAC;IAED,MAAM,CAA4D,MAAsC;QACtG,MAAM,OAAO,GAAG,IAAwB,CAAA;QACxC,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,YAAY,CAAA;QACnD,MAAM,YAAY,GAAsB,KAAK,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA;QAC1G,OAAO,OAAO,CAAC,eAAe,CAAC,MAAM,CAAI,YAAY,CAAC,CAAA;IACxD,CAAC;IAED,OAAO,CAAqD,OAAiC;QAC3F,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Queries/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Queries/index.ts"],"names":[],"mappings":"AAOA,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
export * from './asModule';
|
|
2
2
|
export * from './Config';
|
|
3
3
|
export * from './CreatableModule';
|
|
4
|
-
export * from './
|
|
4
|
+
export * from './CreatableModuleDictionary';
|
|
5
|
+
export * from './Events';
|
|
5
6
|
export * from './isModule';
|
|
7
|
+
export * from './lib';
|
|
6
8
|
export * from './Module';
|
|
7
9
|
export * from './ModuleDescription';
|
|
10
|
+
export * from './ModuleFactory';
|
|
8
11
|
export * from './ModuleFilter';
|
|
9
12
|
export * from './ModuleParams';
|
|
10
13
|
export * from './ModuleQueryResult';
|
|
11
14
|
export * from './ModuleRepository';
|
|
12
15
|
export * from './Queries';
|
|
13
|
-
export * from './Query';
|
|
14
16
|
export * from './withModule';
|
|
15
17
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,mBAAmB,CAAA;AACjC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,mBAAmB,CAAA;AACjC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,OAAO,CAAA;AACrB,cAAc,UAAU,CAAA;AACxB,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Used to filter duplicates from an array of modules
|
|
3
|
+
* @example: modulesArray.filter(duplicateModules)
|
|
4
|
+
* @param value Current Module
|
|
5
|
+
* @param index Current Module's index
|
|
6
|
+
* @param array Module Array
|
|
7
|
+
* @returns True if the Module's address is the first occurrence of
|
|
8
|
+
* that address in the array, false otherwise
|
|
9
|
+
*/
|
|
10
|
+
export const duplicateModules = (value, index, array) => {
|
|
11
|
+
return array.findIndex((v) => v.address === value.address) === index;
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=duplicateModules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duplicateModules.js","sourceRoot":"","sources":["../../../src/lib/duplicateModules.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAqB,EAAE,KAAa,EAAE,KAAuB,EAA2B,EAAE;IACzH,OAAO,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,KAAK,KAAK,CAAA;AACtE,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// Inspired by https://stackoverflow.com/a/49079549/2803259
|
|
2
|
+
import every from 'lodash/every';
|
|
3
|
+
import isArray from 'lodash/isArray';
|
|
4
|
+
import isBoolean from 'lodash/isBoolean';
|
|
5
|
+
import isNull from 'lodash/isNull';
|
|
6
|
+
import isNumber from 'lodash/isNumber';
|
|
7
|
+
import isPlainObject from 'lodash/isPlainObject';
|
|
8
|
+
import isString from 'lodash/isString';
|
|
9
|
+
import isUndefined from 'lodash/isUndefined';
|
|
10
|
+
import overSome from 'lodash/overSome';
|
|
11
|
+
const JSONPrimitiveChecks = [isUndefined, isNull, isBoolean, isNumber, isString];
|
|
12
|
+
const JSONComplexChecks = [isPlainObject, isArray];
|
|
13
|
+
export const serializable = (field, depth) => {
|
|
14
|
+
let depthExceeded = false;
|
|
15
|
+
const decrementDepth = () => (depth ? depth-- : undefined);
|
|
16
|
+
const recursiveSerializable = (field) => {
|
|
17
|
+
if (depth !== undefined && depth < 1) {
|
|
18
|
+
depthExceeded = true;
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
// decrement during every recursion
|
|
22
|
+
decrementDepth();
|
|
23
|
+
const nestedSerializable = (field) => overSome(JSONComplexChecks)(field) && every(field, recursiveSerializable);
|
|
24
|
+
return overSome([...JSONPrimitiveChecks, nestedSerializable])(field);
|
|
25
|
+
};
|
|
26
|
+
const valid = recursiveSerializable(field);
|
|
27
|
+
return depthExceeded ? null : valid;
|
|
28
|
+
};
|
|
29
|
+
export const serializableField = (field) => {
|
|
30
|
+
return overSome([...JSONPrimitiveChecks, ...JSONComplexChecks])(field);
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=serializable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serializable.js","sourceRoot":"","sources":["../../../src/lib/serializable.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAE3D,OAAO,KAAK,MAAM,cAAc,CAAA;AAChC,OAAO,OAAO,MAAM,gBAAgB,CAAA;AACpC,OAAO,SAAS,MAAM,kBAAkB,CAAA;AACxC,OAAO,MAAM,MAAM,eAAe,CAAA;AAClC,OAAO,QAAQ,MAAM,iBAAiB,CAAA;AACtC,OAAO,aAAa,MAAM,sBAAsB,CAAA;AAChD,OAAO,QAAQ,MAAM,iBAAiB,CAAA;AACtC,OAAO,WAAW,MAAM,oBAAoB,CAAA;AAC5C,OAAO,QAAQ,MAAM,iBAAiB,CAAA;AAEtC,MAAM,mBAAmB,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;AAChF,MAAM,iBAAiB,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;AAElD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAc,EAAE,KAAc,EAAkB,EAAE;IAC7E,IAAI,aAAa,GAAG,KAAK,CAAA;IACzB,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAE1D,MAAM,qBAAqB,GAAG,CAAC,KAAc,EAAE,EAAE;QAC/C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,GAAG,CAAC,EAAE;YACpC,aAAa,GAAG,IAAI,CAAA;YACpB,OAAO,KAAK,CAAA;SACb;QAED,mCAAmC;QACnC,cAAc,EAAE,CAAA;QAEhB,MAAM,kBAAkB,GAAG,CAAC,KAAc,EAAW,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAe,EAAE,qBAAqB,CAAC,CAAA;QAE3I,OAAO,QAAQ,CAAC,CAAC,GAAG,mBAAmB,EAAE,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACtE,CAAC,CAAA;IAED,MAAM,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;IAE1C,OAAO,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;AACrC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAE,EAAE;IAClD,OAAO,QAAQ,CAAC,CAAC,GAAG,mBAAmB,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;AACxE,CAAC,CAAA"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { Logger } from '@xyo-network/core';
|
|
2
|
-
import {
|
|
3
|
-
export interface CreatableModule<T extends
|
|
2
|
+
import { IndirectModule } from './Module';
|
|
3
|
+
export interface CreatableModule<T extends IndirectModule = IndirectModule> {
|
|
4
4
|
configSchema: string;
|
|
5
5
|
configSchemas: string[];
|
|
6
6
|
defaultLogger?: Logger;
|
|
7
7
|
new (privateConstructorKey: string, params: T['params']): T;
|
|
8
|
-
create<T extends
|
|
9
|
-
factory<T extends
|
|
8
|
+
create<T extends IndirectModule>(this: CreatableModule<T>, params?: T['params']): Promise<T>;
|
|
9
|
+
factory<T extends IndirectModule>(this: CreatableModule<T>, params?: T['params']): CreatableModuleFactory<T>;
|
|
10
10
|
}
|
|
11
|
-
export type CreatableModuleFactory<T extends
|
|
12
|
-
create<T extends
|
|
11
|
+
export type CreatableModuleFactory<T extends IndirectModule = IndirectModule> = Omit<Omit<CreatableModule<T>, 'new'>, 'create'> & {
|
|
12
|
+
create<T extends IndirectModule>(this: CreatableModuleFactory<T>, params?: T['params']): Promise<T>;
|
|
13
13
|
};
|
|
14
14
|
/**
|
|
15
15
|
* Class annotation to be used to decorate Modules which support
|
|
@@ -17,5 +17,5 @@ export type CreatableModuleFactory<T extends Module = Module> = Omit<Omit<Creata
|
|
|
17
17
|
* @returns The decorated Module requiring it implement the members
|
|
18
18
|
* of the CreatableModule as statics properties/methods
|
|
19
19
|
*/
|
|
20
|
-
export declare function creatableModule<TModule extends
|
|
20
|
+
export declare function creatableModule<TModule extends IndirectModule = IndirectModule>(): <U extends CreatableModule<TModule>>(constructor: U) => void;
|
|
21
21
|
//# sourceMappingURL=CreatableModule.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreatableModule.d.ts","sourceRoot":"","sources":["../../src/CreatableModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"CreatableModule.d.ts","sourceRoot":"","sources":["../../src/CreatableModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAEzC,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc;IACxE,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,KAAK,qBAAqB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IAC3D,MAAM,CAAC,CAAC,SAAS,cAAc,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;IAC5F,OAAO,CAAC,CAAC,SAAS,cAAc,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAAA;CAC7G;AAED,MAAM,MAAM,sBAAsB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,QAAQ,CAAC,GAAG;IAChI,MAAM,CAAC,CAAC,SAAS,cAAc,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;CACpG,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,SAAS,cAAc,GAAG,cAAc,kEAI9E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreatableModuleDictionary.d.ts","sourceRoot":"","sources":["../../src/CreatableModuleDictionary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAE1D,MAAM,WAAW,yBAAyB;IACxC,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,CAAA;CACtC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { EventData } from '@xyo-network/module-events';
|
|
2
|
+
import { IndirectModule, ModuleEventArgs } from '../Module';
|
|
3
|
+
export type ModuleBusyEventArgs<TModule extends IndirectModule = IndirectModule> = ModuleEventArgs<TModule, {
|
|
4
|
+
busy: boolean;
|
|
5
|
+
}>;
|
|
6
|
+
export interface ModuleBusyEventData extends EventData {
|
|
7
|
+
moduleBusy: ModuleBusyEventArgs;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=ModuleBusy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModuleBusy.d.ts","sourceRoot":"","sources":["../../../src/Events/ModuleBusy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEtD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAE3D,MAAM,MAAM,mBAAmB,CAAC,OAAO,SAAS,cAAc,GAAG,cAAc,IAAI,eAAe,CAAC,OAAO,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,CAAA;AAE9H,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,UAAU,EAAE,mBAAmB,CAAA;CAChC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { QueryBoundWitness } from '@xyo-network/boundwitness-builder';
|
|
2
|
+
import { EventData } from '@xyo-network/module-events';
|
|
3
|
+
import { Payload } from '@xyo-network/payload-model';
|
|
4
|
+
import { IndirectModule, ModuleEventArgs } from '../Module';
|
|
5
|
+
import { ModuleQueryResult } from '../ModuleQueryResult';
|
|
6
|
+
export type ModuleQueriedEventArgs = ModuleEventArgs<IndirectModule, {
|
|
7
|
+
payloads?: Payload[];
|
|
8
|
+
query: QueryBoundWitness;
|
|
9
|
+
result: ModuleQueryResult;
|
|
10
|
+
}>;
|
|
11
|
+
export interface ModuleQueriedEventData extends EventData {
|
|
12
|
+
moduleQueried: ModuleQueriedEventArgs;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=ModuleQueried.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModuleQueried.d.ts","sourceRoot":"","sources":["../../../src/Events/ModuleQueried.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAExD,MAAM,MAAM,sBAAsB,GAAG,eAAe,CAClD,cAAc,EACd;IACE,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAA;IACpB,KAAK,EAAE,iBAAiB,CAAA;IACxB,MAAM,EAAE,iBAAiB,CAAA;CAC1B,CACF,CAAA;AAED,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,aAAa,EAAE,sBAAsB,CAAA;CACtC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Events/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA"}
|
package/dist/types/Module.d.ts
CHANGED
|
@@ -1,43 +1,32 @@
|
|
|
1
1
|
import { AccountInstance } from '@xyo-network/account-model';
|
|
2
|
+
import { QueryBoundWitness } from '@xyo-network/boundwitness-builder';
|
|
2
3
|
import { ModuleManifestPayload } from '@xyo-network/manifest-model';
|
|
3
|
-
import { EventArgs,
|
|
4
|
+
import { EventArgs, EventFunctions } from '@xyo-network/module-events';
|
|
4
5
|
import { Payload } from '@xyo-network/payload-model';
|
|
5
6
|
import { Promisable } from '@xyo-network/promise';
|
|
6
7
|
import { AnyConfigSchema, ModuleConfig } from './Config';
|
|
8
|
+
import { ModuleBusyEventData, ModuleQueriedEventData } from './Events';
|
|
7
9
|
import { ModuleDescription } from './ModuleDescription';
|
|
8
10
|
import { ModuleFilter } from './ModuleFilter';
|
|
9
11
|
import { ModuleParams } from './ModuleParams';
|
|
10
12
|
import { ModuleQueryResult } from './ModuleQueryResult';
|
|
11
13
|
import { AddressPreviousHashPayload } from './Queries';
|
|
12
|
-
|
|
13
|
-
|
|
14
|
+
export interface ResolveFunctions {
|
|
15
|
+
resolve<TModule extends Module = Module>(filter?: ModuleFilter): Promisable<TModule[]>;
|
|
16
|
+
resolve<TModule extends Module = Module>(nameOrAddress: string): Promisable<TModule | undefined>;
|
|
17
|
+
resolve<TModule extends Module = Module>(nameOrAddressOrFilter?: ModuleFilter | string): Promisable<TModule | TModule[] | undefined>;
|
|
18
|
+
}
|
|
19
|
+
export interface ModuleResolver extends ResolveFunctions {
|
|
14
20
|
addResolver: (resolver: ModuleResolver) => this;
|
|
15
21
|
isModuleResolver: boolean;
|
|
16
22
|
removeResolver: (resolver: ModuleResolver) => this;
|
|
17
|
-
/**
|
|
18
|
-
* Resolves all modules matching the supplied filter. If no filter
|
|
19
|
-
* is supplied, all modules are returned
|
|
20
|
-
* @param filter Filter criteria for the desired modules
|
|
21
|
-
*/
|
|
22
|
-
resolve<T extends IndirectModule = IndirectModule>(filter?: ModuleFilter): Promisable<T[]>;
|
|
23
|
-
/**
|
|
24
|
-
* Resolves a single module, or undefined if no modules matched the filter.
|
|
25
|
-
* @param filter The desired Module's Address or Name
|
|
26
|
-
*/
|
|
27
|
-
resolveOne<T extends IndirectModule = IndirectModule>(filter: string): Promisable<T | undefined>;
|
|
28
23
|
}
|
|
29
24
|
export type ModuleEventArgs<TModule extends IndirectModule = IndirectModule, TArgs extends EventArgs | undefined = undefined> = TArgs extends EventArgs ? {
|
|
30
25
|
module: TModule;
|
|
31
26
|
} & TArgs : {
|
|
32
27
|
module: TModule;
|
|
33
28
|
};
|
|
34
|
-
export
|
|
35
|
-
payloads?: Payload[];
|
|
36
|
-
query: QueryBoundWitness;
|
|
37
|
-
result: ModuleQueryResult;
|
|
38
|
-
}>;
|
|
39
|
-
export interface ModuleEventData extends EventData {
|
|
40
|
-
moduleQueried: ModuleQueriedEventArgs;
|
|
29
|
+
export interface ModuleEventData extends ModuleQueriedEventData, ModuleBusyEventData {
|
|
41
30
|
}
|
|
42
31
|
export type ModuleQueryFunctions = {
|
|
43
32
|
addressPreviousHash: () => Promisable<AddressPreviousHashPayload>;
|
|
@@ -59,7 +48,7 @@ export type ModuleFields<TParams extends ModuleParams<AnyConfigSchema<ModuleConf
|
|
|
59
48
|
readonly upResolver: ModuleResolver;
|
|
60
49
|
};
|
|
61
50
|
export type IndirectModule<TParams extends ModuleParams<AnyConfigSchema<ModuleConfig>> = ModuleParams<AnyConfigSchema<ModuleConfig>>, TEventData extends ModuleEventData = ModuleEventData> = ModuleFields<TParams> & EventFunctions<TEventData>;
|
|
62
|
-
export type DirectModule<TParams extends ModuleParams<AnyConfigSchema<ModuleConfig>> = ModuleParams<AnyConfigSchema<ModuleConfig>>, TEventData extends ModuleEventData = ModuleEventData> = IndirectModule<TParams, TEventData> & ModuleQueryFunctions;
|
|
51
|
+
export type DirectModule<TParams extends ModuleParams<AnyConfigSchema<ModuleConfig>> = ModuleParams<AnyConfigSchema<ModuleConfig>>, TEventData extends ModuleEventData = ModuleEventData> = IndirectModule<TParams, TEventData> & ModuleQueryFunctions & ResolveFunctions;
|
|
63
52
|
export type ModuleInstance<TParams extends ModuleParams<AnyConfigSchema<ModuleConfig>> = ModuleParams<AnyConfigSchema<ModuleConfig>>, TEventData extends ModuleEventData = ModuleEventData> = DirectModule<TParams, TEventData>;
|
|
64
53
|
export type Module<TParams extends ModuleParams<AnyConfigSchema<ModuleConfig>> = ModuleParams<AnyConfigSchema<ModuleConfig>>, TEventData extends ModuleEventData = ModuleEventData> = IndirectModule<TParams, TEventData>;
|
|
65
54
|
//# sourceMappingURL=Module.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Module.d.ts","sourceRoot":"","sources":["../../src/Module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"Module.d.ts","sourceRoot":"","sources":["../../src/Module.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Logger } from '@xyo-network/core';
|
|
2
|
+
import { CreatableModule, CreatableModuleFactory } from './CreatableModule';
|
|
3
|
+
import { IndirectModule } from './Module';
|
|
4
|
+
export declare class ModuleFactory<TModule extends IndirectModule> implements CreatableModuleFactory<TModule> {
|
|
5
|
+
configSchemas: CreatableModuleFactory<TModule>['configSchemas'];
|
|
6
|
+
creatableModule: CreatableModule<TModule>;
|
|
7
|
+
defaultLogger?: Logger | undefined;
|
|
8
|
+
defaultParams?: TModule['params'];
|
|
9
|
+
constructor(creatableModule: CreatableModule<TModule>, params?: TModule['params']);
|
|
10
|
+
get configSchema(): string;
|
|
11
|
+
static withParams<T extends IndirectModule>(creatableModule: CreatableModule<T>, params?: T['params']): ModuleFactory<T>;
|
|
12
|
+
create<T extends IndirectModule>(this: CreatableModuleFactory<T>, params?: TModule['params'] | undefined): Promise<T>;
|
|
13
|
+
factory<T extends IndirectModule>(this: CreatableModule<T>, _params?: T['params'] | undefined): CreatableModuleFactory<T>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=ModuleFactory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModuleFactory.d.ts","sourceRoot":"","sources":["../../src/ModuleFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAG1C,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAEzC,qBAAa,aAAa,CAAC,OAAO,SAAS,cAAc,CAAE,YAAW,sBAAsB,CAAC,OAAO,CAAC;IACnG,aAAa,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC,eAAe,CAAC,CAAA;IAE/D,eAAe,EAAE,eAAe,CAAC,OAAO,CAAC,CAAA;IAEzC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAElC,aAAa,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;gBAErB,eAAe,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC;IAMjF,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,cAAc,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC;IAIrG,MAAM,CAAC,CAAC,SAAS,cAAc,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC;IAOrH,OAAO,CAAC,CAAC,SAAS,cAAc,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,SAAS,GAAG,sBAAsB,CAAC,CAAC,CAAC;CAG1H"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { BoundWitness } from '@xyo-network/boundwitness-model';
|
|
2
2
|
import { Payload } from '@xyo-network/payload-model';
|
|
3
|
-
export type ModuleQueryResult<
|
|
3
|
+
export type ModuleQueryResult<E extends Payload[] = Payload[]> = [BoundWitness, Payload[], E];
|
|
4
4
|
//# sourceMappingURL=ModuleQueryResult.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModuleQueryResult.d.ts","sourceRoot":"","sources":["../../src/ModuleQueryResult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,IAAI,CAAC,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"ModuleQueryResult.d.ts","sourceRoot":"","sources":["../../src/ModuleQueryResult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Query } from '
|
|
1
|
+
import { Query } from '@xyo-network/payload-model';
|
|
2
2
|
export type ModuleDescribeQuerySchema = 'network.xyo.query.module.describe';
|
|
3
3
|
export declare const ModuleDescribeQuerySchema: ModuleDescribeQuerySchema;
|
|
4
4
|
export type ModuleDescribeQuery = Query<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Query.d.ts","sourceRoot":"","sources":["../../../../src/Queries/Describe/Query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"Query.d.ts","sourceRoot":"","sources":["../../../../src/Queries/Describe/Query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAElD,MAAM,MAAM,yBAAyB,GAAG,mCAAmC,CAAA;AAC3E,eAAO,MAAM,yBAAyB,EAAE,yBAA+D,CAAA;AAEvG,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC;IACtC,MAAM,EAAE,yBAAyB,CAAA;CAClC,CAAC,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Query } from '
|
|
1
|
+
import { Query } from '@xyo-network/payload-model';
|
|
2
2
|
export type ModuleDiscoverQuerySchema = 'network.xyo.query.module.discover';
|
|
3
3
|
export declare const ModuleDiscoverQuerySchema: ModuleDiscoverQuerySchema;
|
|
4
4
|
export type ModuleDiscoverQuery = Query<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Discover.d.ts","sourceRoot":"","sources":["../../../src/Queries/Discover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"Discover.d.ts","sourceRoot":"","sources":["../../../src/Queries/Discover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAElD,MAAM,MAAM,yBAAyB,GAAG,mCAAmC,CAAA;AAC3E,eAAO,MAAM,yBAAyB,EAAE,yBAA+D,CAAA;AAEvG,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC;IACtC,MAAM,EAAE,yBAAyB,CAAA;CAClC,CAAC,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Query } from '
|
|
1
|
+
import { Query } from '@xyo-network/payload-model';
|
|
2
2
|
export type ModuleManifestQuerySchema = 'network.xyo.query.module.manifest';
|
|
3
3
|
export declare const ModuleManifestQuerySchema: ModuleManifestQuerySchema;
|
|
4
4
|
export type ModuleManifestQuery = Query<{
|