@xyo-network/sentinel 2.72.9 → 2.73.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/index.d.mts +291 -0
- package/dist/index.d.ts +291 -0
- package/dist/index.js +7542 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +7517 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +40 -27
- package/src/AbstractSentinel.ts +1 -1
- package/tsup.config.ts +16 -0
- package/dist/cjs/AbstractSentinel.js +0 -125
- package/dist/cjs/AbstractSentinel.js.map +0 -1
- package/dist/cjs/Automation.js +0 -5
- package/dist/cjs/Automation.js.map +0 -1
- package/dist/cjs/MemorySentinel.js +0 -50
- package/dist/cjs/MemorySentinel.js.map +0 -1
- package/dist/cjs/SentinelIntervalAutomationWrapper.js +0 -51
- package/dist/cjs/SentinelIntervalAutomationWrapper.js.map +0 -1
- package/dist/cjs/SentinelRunner.js +0 -102
- package/dist/cjs/SentinelRunner.js.map +0 -1
- package/dist/cjs/Wrapper.js +0 -29
- package/dist/cjs/Wrapper.js.map +0 -1
- package/dist/cjs/index.js +0 -11
- package/dist/cjs/index.js.map +0 -1
- package/dist/docs.json +0 -68111
- package/dist/esm/AbstractSentinel.js +0 -98
- package/dist/esm/AbstractSentinel.js.map +0 -1
- package/dist/esm/Automation.js +0 -2
- package/dist/esm/Automation.js.map +0 -1
- package/dist/esm/MemorySentinel.js +0 -41
- package/dist/esm/MemorySentinel.js.map +0 -1
- package/dist/esm/SentinelIntervalAutomationWrapper.js +0 -44
- package/dist/esm/SentinelIntervalAutomationWrapper.js.map +0 -1
- package/dist/esm/SentinelRunner.js +0 -86
- package/dist/esm/SentinelRunner.js.map +0 -1
- package/dist/esm/Wrapper.js +0 -20
- package/dist/esm/Wrapper.js.map +0 -1
- package/dist/esm/index.js +0 -8
- package/dist/esm/index.js.map +0 -1
- package/dist/types/AbstractSentinel.d.ts +0 -22
- package/dist/types/AbstractSentinel.d.ts.map +0 -1
- package/dist/types/Automation.d.ts +0 -28
- package/dist/types/Automation.d.ts.map +0 -1
- package/dist/types/MemorySentinel.d.ts +0 -11
- package/dist/types/MemorySentinel.d.ts.map +0 -1
- package/dist/types/SentinelIntervalAutomationWrapper.d.ts +0 -11
- package/dist/types/SentinelIntervalAutomationWrapper.d.ts.map +0 -1
- package/dist/types/SentinelRunner.d.ts +0 -24
- package/dist/types/SentinelRunner.d.ts.map +0 -1
- package/dist/types/Wrapper.d.ts +0 -14
- package/dist/types/Wrapper.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -8
- package/dist/types/index.d.ts.map +0 -1
package/package.json
CHANGED
|
@@ -10,48 +10,62 @@
|
|
|
10
10
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@xylabs/assert": "^2.
|
|
14
|
-
"@xylabs/promise": "^2.
|
|
15
|
-
"@xyo-network/archivist": "~2.
|
|
16
|
-
"@xyo-network/boundwitness-builder": "~2.
|
|
17
|
-
"@xyo-network/boundwitness-model": "~2.
|
|
18
|
-
"@xyo-network/core": "~2.
|
|
19
|
-
"@xyo-network/error": "~2.
|
|
20
|
-
"@xyo-network/module": "~2.
|
|
21
|
-
"@xyo-network/payload-model": "~2.
|
|
22
|
-
"@xyo-network/payload-wrapper": "~2.
|
|
23
|
-
"@xyo-network/sentinel-model": "~2.
|
|
24
|
-
"@xyo-network/witness": "~2.
|
|
13
|
+
"@xylabs/assert": "^2.10.7",
|
|
14
|
+
"@xylabs/promise": "^2.10.7",
|
|
15
|
+
"@xyo-network/archivist": "~2.73.0",
|
|
16
|
+
"@xyo-network/boundwitness-builder": "~2.73.0",
|
|
17
|
+
"@xyo-network/boundwitness-model": "~2.73.0",
|
|
18
|
+
"@xyo-network/core": "~2.73.0",
|
|
19
|
+
"@xyo-network/error": "~2.73.0",
|
|
20
|
+
"@xyo-network/module": "~2.73.0",
|
|
21
|
+
"@xyo-network/payload-model": "~2.73.0",
|
|
22
|
+
"@xyo-network/payload-wrapper": "~2.73.0",
|
|
23
|
+
"@xyo-network/sentinel-model": "~2.73.0",
|
|
24
|
+
"@xyo-network/witness": "~2.73.0",
|
|
25
25
|
"lodash": "^4.17.21"
|
|
26
26
|
},
|
|
27
27
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@types/lodash": "^4.14.198",
|
|
30
|
-
"@xylabs/ts-scripts-yarn3": "^2.19.
|
|
31
|
-
"@xylabs/tsconfig": "^2.19.
|
|
30
|
+
"@xylabs/ts-scripts-yarn3": "^2.19.5",
|
|
31
|
+
"@xylabs/tsconfig": "^2.19.5",
|
|
32
|
+
"publint": "^0.2.2",
|
|
33
|
+
"tsup": "^7.2.0",
|
|
32
34
|
"typescript": "^5.2.2"
|
|
33
35
|
},
|
|
34
|
-
"
|
|
36
|
+
"scripts": {
|
|
37
|
+
"package-compile": "tsup && publint",
|
|
38
|
+
"package-recompile": "tsup && publint"
|
|
39
|
+
},
|
|
35
40
|
"docs": "dist/docs.json",
|
|
41
|
+
"types": "dist/index.d.ts",
|
|
36
42
|
"exports": {
|
|
37
43
|
".": {
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
},
|
|
42
|
-
"browser": {
|
|
43
|
-
"import": "./dist/esm/index.js",
|
|
44
|
-
"require": "./dist/cjs/index.js"
|
|
44
|
+
"require": {
|
|
45
|
+
"types": "./dist/index.d.ts",
|
|
46
|
+
"default": "./dist/index.js"
|
|
45
47
|
},
|
|
46
|
-
"
|
|
48
|
+
"import": {
|
|
49
|
+
"types": "./dist/index.d.mts",
|
|
50
|
+
"default": "./dist/index.mjs"
|
|
51
|
+
}
|
|
47
52
|
},
|
|
48
53
|
"./dist/docs.json": {
|
|
49
54
|
"default": "./dist/docs.json"
|
|
50
55
|
},
|
|
56
|
+
"./cjs": {
|
|
57
|
+
"default": "./dist/index.js"
|
|
58
|
+
},
|
|
59
|
+
"./docs": {
|
|
60
|
+
"default": "./dist/docs.json"
|
|
61
|
+
},
|
|
62
|
+
"./esm": {
|
|
63
|
+
"default": "./dist/index.mjs"
|
|
64
|
+
},
|
|
51
65
|
"./package.json": "./package.json"
|
|
52
66
|
},
|
|
53
|
-
"main": "dist/
|
|
54
|
-
"module": "dist/
|
|
67
|
+
"main": "dist/index.js",
|
|
68
|
+
"module": "dist/index.mjs",
|
|
55
69
|
"homepage": "https://xyo.network",
|
|
56
70
|
"license": "LGPL-3.0",
|
|
57
71
|
"publishConfig": {
|
|
@@ -62,6 +76,5 @@
|
|
|
62
76
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
|
|
63
77
|
},
|
|
64
78
|
"sideEffects": false,
|
|
65
|
-
"
|
|
66
|
-
"version": "2.72.9"
|
|
79
|
+
"version": "2.73.0"
|
|
67
80
|
}
|
package/src/AbstractSentinel.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { assertEx } from '@xylabs/assert'
|
|
2
|
+
import { uniq } from '@xylabs/lodash'
|
|
2
3
|
import { AbstractArchivingModule, asArchivistInstance } from '@xyo-network/archivist'
|
|
3
4
|
import { QueryBoundWitness, QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-builder'
|
|
4
5
|
import { BoundWitness, isBoundWitness, notBoundWitness } from '@xyo-network/boundwitness-model'
|
|
@@ -13,7 +14,6 @@ import {
|
|
|
13
14
|
SentinelReportQuerySchema,
|
|
14
15
|
} from '@xyo-network/sentinel-model'
|
|
15
16
|
import { isWitnessInstance, WitnessInstance } from '@xyo-network/witness'
|
|
16
|
-
import uniq from 'lodash/uniq'
|
|
17
17
|
|
|
18
18
|
export abstract class AbstractSentinel<
|
|
19
19
|
TParams extends SentinelParams = SentinelParams,
|
package/tsup.config.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { defineConfig } from 'tsup'
|
|
2
|
+
|
|
3
|
+
// eslint-disable-next-line import/no-default-export
|
|
4
|
+
export default defineConfig({
|
|
5
|
+
bundle: true,
|
|
6
|
+
cjsInterop: true,
|
|
7
|
+
clean: true,
|
|
8
|
+
dts: {
|
|
9
|
+
entry: ['src/index.ts'],
|
|
10
|
+
},
|
|
11
|
+
entry: ['src/index.ts'],
|
|
12
|
+
format: ['cjs', 'esm'],
|
|
13
|
+
sourcemap: true,
|
|
14
|
+
splitting: false,
|
|
15
|
+
tsconfig: 'tsconfig.json',
|
|
16
|
+
})
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AbstractSentinel = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const assert_1 = require("@xylabs/assert");
|
|
6
|
-
const archivist_1 = require("@xyo-network/archivist");
|
|
7
|
-
const boundwitness_builder_1 = require("@xyo-network/boundwitness-builder");
|
|
8
|
-
const boundwitness_model_1 = require("@xyo-network/boundwitness-model");
|
|
9
|
-
const sentinel_model_1 = require("@xyo-network/sentinel-model");
|
|
10
|
-
const witness_1 = require("@xyo-network/witness");
|
|
11
|
-
const uniq_1 = tslib_1.__importDefault(require("lodash/uniq"));
|
|
12
|
-
class AbstractSentinel extends archivist_1.AbstractArchivingModule {
|
|
13
|
-
constructor() {
|
|
14
|
-
super(...arguments);
|
|
15
|
-
this.history = [];
|
|
16
|
-
}
|
|
17
|
-
get queries() {
|
|
18
|
-
return [sentinel_model_1.SentinelReportQuerySchema, ...super.queries];
|
|
19
|
-
}
|
|
20
|
-
get _queryAccountPaths() {
|
|
21
|
-
return {
|
|
22
|
-
'network.xyo.query.sentinel.report': '1/1',
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
addArchivist(address) {
|
|
26
|
-
var _a;
|
|
27
|
-
this.config.archivists = (0, uniq_1.default)([...address, ...((_a = this.config.archivists) !== null && _a !== void 0 ? _a : [])]);
|
|
28
|
-
}
|
|
29
|
-
addWitness(address) {
|
|
30
|
-
var _a;
|
|
31
|
-
this.config.witnesses = (0, uniq_1.default)([...address, ...((_a = this.config.witnesses) !== null && _a !== void 0 ? _a : [])]);
|
|
32
|
-
}
|
|
33
|
-
archivists() {
|
|
34
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
35
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
36
|
-
(_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug(`archivists:config:archivist: ${(_c = (_b = this.config) === null || _b === void 0 ? void 0 : _b.archivists) === null || _c === void 0 ? void 0 : _c.length}`);
|
|
37
|
-
const namesOrAddresses = ((_d = this.config) === null || _d === void 0 ? void 0 : _d.archivists)
|
|
38
|
-
? Array.isArray(this.config.archivists)
|
|
39
|
-
? (_e = this.config) === null || _e === void 0 ? void 0 : _e.archivists
|
|
40
|
-
: [this.config.archivists]
|
|
41
|
-
: undefined;
|
|
42
|
-
(_f = this.logger) === null || _f === void 0 ? void 0 : _f.debug(`archivist:namesOrAddresses: ${namesOrAddresses === null || namesOrAddresses === void 0 ? void 0 : namesOrAddresses.length}`);
|
|
43
|
-
const result = [
|
|
44
|
-
...(yield this.resolve(namesOrAddresses ? { address: namesOrAddresses } : undefined)),
|
|
45
|
-
...(yield this.resolve(namesOrAddresses ? { name: namesOrAddresses } : undefined)),
|
|
46
|
-
].map((module) => (0, assert_1.assertEx)((0, archivist_1.asArchivistInstance)(module), 'Tried to resolve a non-archivist as an archivist'));
|
|
47
|
-
if (namesOrAddresses && namesOrAddresses.length !== result.length) {
|
|
48
|
-
(_g = this.logger) === null || _g === void 0 ? void 0 : _g.warn(`Not all archivists found [Requested: ${namesOrAddresses.length}, Found: ${result.length}]`);
|
|
49
|
-
}
|
|
50
|
-
(_h = this.logger) === null || _h === void 0 ? void 0 : _h.debug(`archivists:result: ${result === null || result === void 0 ? void 0 : result.length}`);
|
|
51
|
-
return result;
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
removeArchivist(address) {
|
|
55
|
-
var _a;
|
|
56
|
-
this.config.archivists = ((_a = this.config.archivists) !== null && _a !== void 0 ? _a : []).filter((archivist) => !address.includes(archivist));
|
|
57
|
-
}
|
|
58
|
-
removeWitness(address) {
|
|
59
|
-
var _a;
|
|
60
|
-
this.config.witnesses = ((_a = this.config.witnesses) !== null && _a !== void 0 ? _a : []).filter((witness) => !address.includes(witness));
|
|
61
|
-
}
|
|
62
|
-
report(inPayloads) {
|
|
63
|
-
var _a;
|
|
64
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
65
|
-
this._noOverride('report');
|
|
66
|
-
yield this.emit('reportStart', { inPayloads, module: this });
|
|
67
|
-
const payloads = yield this.reportHandler(inPayloads);
|
|
68
|
-
(_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug(`report:payloads: ${JSON.stringify(payloads, null, 2)}`);
|
|
69
|
-
const outPayloads = payloads.filter(boundwitness_model_1.notBoundWitness);
|
|
70
|
-
const boundwitnesses = payloads.filter(boundwitness_model_1.isBoundWitness);
|
|
71
|
-
const boundwitness = boundwitnesses.find((bw) => bw.addresses.includes(this.address));
|
|
72
|
-
yield this.emit('reportEnd', { boundwitness, inPayloads, module: this, outPayloads });
|
|
73
|
-
return payloads;
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
witnesses() {
|
|
77
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
|
78
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
79
|
-
(_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug(`witnesses:config:witnesses: ${(_c = (_b = this.config) === null || _b === void 0 ? void 0 : _b.witnesses) === null || _c === void 0 ? void 0 : _c.length}`);
|
|
80
|
-
const namesOrAddresses = ((_d = this.config) === null || _d === void 0 ? void 0 : _d.witnesses)
|
|
81
|
-
? Array.isArray(this.config.witnesses)
|
|
82
|
-
? (_e = this.config) === null || _e === void 0 ? void 0 : _e.witnesses
|
|
83
|
-
: [this.config.witnesses]
|
|
84
|
-
: undefined;
|
|
85
|
-
(_f = this.logger) === null || _f === void 0 ? void 0 : _f.debug(`witnesses:namesOrAddresses: ${namesOrAddresses === null || namesOrAddresses === void 0 ? void 0 : namesOrAddresses.length}`);
|
|
86
|
-
const result = namesOrAddresses
|
|
87
|
-
? [
|
|
88
|
-
...(yield this.resolve({ address: namesOrAddresses }, { identity: witness_1.isWitnessInstance })),
|
|
89
|
-
...(yield this.resolve({ name: namesOrAddresses }, { identity: witness_1.isWitnessInstance })),
|
|
90
|
-
]
|
|
91
|
-
: yield this.resolve(undefined, { identity: witness_1.isWitnessInstance });
|
|
92
|
-
if (namesOrAddresses && namesOrAddresses.length !== result.length) {
|
|
93
|
-
(_g = this.logger) === null || _g === void 0 ? void 0 : _g.warn(`Not all witnesses found [Requested: ${namesOrAddresses.length}, Found: ${result.length}]`);
|
|
94
|
-
}
|
|
95
|
-
result.map((item) => {
|
|
96
|
-
var _a;
|
|
97
|
-
(_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug(`witnesses:result: ${item.config.schema}`);
|
|
98
|
-
});
|
|
99
|
-
return result;
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
queryHandler(query, payloads, queryConfig) {
|
|
103
|
-
const _super = Object.create(null, {
|
|
104
|
-
queryHandler: { get: () => super.queryHandler }
|
|
105
|
-
});
|
|
106
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
107
|
-
const wrapper = boundwitness_builder_1.QueryBoundWitnessWrapper.parseQuery(query, payloads);
|
|
108
|
-
const queryPayload = yield wrapper.getQuery();
|
|
109
|
-
(0, assert_1.assertEx)(this.queryable(query, payloads, queryConfig));
|
|
110
|
-
const resultPayloads = [];
|
|
111
|
-
switch (queryPayload.schema) {
|
|
112
|
-
case sentinel_model_1.SentinelReportQuerySchema: {
|
|
113
|
-
resultPayloads.push(...(yield this.report(payloads)));
|
|
114
|
-
break;
|
|
115
|
-
}
|
|
116
|
-
default: {
|
|
117
|
-
return _super.queryHandler.call(this, query, payloads);
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
return resultPayloads;
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
exports.AbstractSentinel = AbstractSentinel;
|
|
125
|
-
//# sourceMappingURL=AbstractSentinel.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractSentinel.js","sourceRoot":"","sources":["../../src/AbstractSentinel.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/Automation.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Automation.js","sourceRoot":"","sources":["../../src/Automation.ts"],"names":[],"mappings":";;;AAIa,QAAA,wBAAwB,GAA6B,wBAAwB,CAAA"}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MemorySentinel = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const assert_1 = require("@xylabs/assert");
|
|
6
|
-
const promise_1 = require("@xylabs/promise");
|
|
7
|
-
const error_1 = require("@xyo-network/error");
|
|
8
|
-
const sentinel_model_1 = require("@xyo-network/sentinel-model");
|
|
9
|
-
const AbstractSentinel_1 = require("./AbstractSentinel");
|
|
10
|
-
class MemorySentinel extends AbstractSentinel_1.AbstractSentinel {
|
|
11
|
-
reportHandler(payloads = []) {
|
|
12
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
13
|
-
yield this.started('throw');
|
|
14
|
-
const errors = [];
|
|
15
|
-
const allWitnesses = [...(yield this.witnesses())];
|
|
16
|
-
const resultPayloads = [];
|
|
17
|
-
try {
|
|
18
|
-
const [generatedPayloads, generatedErrors] = yield this.generateResults(allWitnesses);
|
|
19
|
-
const combinedPayloads = [...generatedPayloads, ...payloads];
|
|
20
|
-
resultPayloads.push(...combinedPayloads);
|
|
21
|
-
errors.push(...generatedErrors);
|
|
22
|
-
}
|
|
23
|
-
catch (ex) {
|
|
24
|
-
(0, error_1.handleError)(ex, (error) => {
|
|
25
|
-
errors.push(error);
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
const [boundWitness] = yield this.bindQueryResult({ schema: sentinel_model_1.SentinelReportQuerySchema }, resultPayloads);
|
|
29
|
-
this.history.push((0, assert_1.assertEx)(boundWitness));
|
|
30
|
-
return [boundWitness, ...resultPayloads];
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
generateResults(witnesses) {
|
|
34
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
35
|
-
const results = yield Promise.allSettled(witnesses === null || witnesses === void 0 ? void 0 : witnesses.map((witness) => witness.observe()));
|
|
36
|
-
const payloads = results
|
|
37
|
-
.filter(promise_1.fulfilled)
|
|
38
|
-
.map((result) => result.value)
|
|
39
|
-
.flat();
|
|
40
|
-
const errors = results
|
|
41
|
-
.filter(promise_1.rejected)
|
|
42
|
-
.map((result) => result.reason)
|
|
43
|
-
.flat();
|
|
44
|
-
return [payloads, errors];
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
exports.MemorySentinel = MemorySentinel;
|
|
49
|
-
MemorySentinel.configSchemas = [sentinel_model_1.SentinelConfigSchema];
|
|
50
|
-
//# sourceMappingURL=MemorySentinel.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MemorySentinel.js","sourceRoot":"","sources":["../../src/MemorySentinel.ts"],"names":[],"mappings":";;;;AAAA,2CAAyC;AACzC,6CAAqD;AACrD,8CAAgD;AAGhD,gEAOoC;AAGpC,yDAAqD;AAMrD,MAAa,cAGX,SAAQ,mCAAqC;IAGvC,aAAa,CAAC,WAAsB,EAAE;;YAC1C,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YAC3B,MAAM,MAAM,GAAY,EAAE,CAAA;YAC1B,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;YAClD,MAAM,cAAc,GAAc,EAAE,CAAA;YAEpC,IAAI;gBACF,MAAM,CAAC,iBAAiB,EAAE,eAAe,CAAC,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;gBACrF,MAAM,gBAAgB,GAAG,CAAC,GAAG,iBAAiB,EAAE,GAAG,QAAQ,CAAC,CAAA;gBAC5D,cAAc,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAA;gBACxC,MAAM,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAA;aAChC;YAAC,OAAO,EAAE,EAAE;gBACX,IAAA,mBAAW,EAAC,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;oBACxB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACpB,CAAC,CAAC,CAAA;aACH;YAED,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,0CAAyB,EAAE,EAAE,cAAc,CAAC,CAAA;YACxG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,iBAAQ,EAAC,YAAY,CAAC,CAAC,CAAA;YACzC,OAAO,CAAC,YAAY,EAAE,GAAG,cAAc,CAAC,CAAA;QAC1C,CAAC;KAAA;IAEa,eAAe,CAAC,SAA4B;;YACxD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;YACxF,MAAM,QAAQ,GAAG,OAAO;iBACrB,MAAM,CAAC,mBAAS,CAAC;iBACjB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC7B,IAAI,EAAE,CAAA;YACT,MAAM,MAAM,GAAG,OAAO;iBACnB,MAAM,CAAC,kBAAQ,CAAC;iBAChB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;iBAC9B,IAAI,EAAE,CAAA;YACT,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QAC3B,CAAC;KAAA;;AAvCH,wCAwCC;AApCiB,4BAAa,GAAG,CAAC,qCAAoB,CAAC,CAAA"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SentinelIntervalAutomationWrapper = void 0;
|
|
4
|
-
const payload_wrapper_1 = require("@xyo-network/payload-wrapper");
|
|
5
|
-
class SentinelIntervalAutomationWrapper extends payload_wrapper_1.PayloadWrapper {
|
|
6
|
-
constructor(payload) {
|
|
7
|
-
super(payload);
|
|
8
|
-
}
|
|
9
|
-
get frequencyMillis() {
|
|
10
|
-
var _a;
|
|
11
|
-
const frequency = this.payload().frequency;
|
|
12
|
-
if (frequency === undefined)
|
|
13
|
-
return Infinity;
|
|
14
|
-
switch ((_a = this.payload().frequencyUnits) !== null && _a !== void 0 ? _a : 'hour') {
|
|
15
|
-
case 'second':
|
|
16
|
-
return frequency * 1000;
|
|
17
|
-
case 'minute':
|
|
18
|
-
return frequency * 60 * 1000;
|
|
19
|
-
case 'hour':
|
|
20
|
-
return frequency * 60 * 60 * 1000;
|
|
21
|
-
case 'day':
|
|
22
|
-
return frequency * 24 * 60 * 60 * 1000;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
get remaining() {
|
|
26
|
-
var _a;
|
|
27
|
-
//if remaining is not defined, we assume Infinity
|
|
28
|
-
return (_a = this.payload().remaining) !== null && _a !== void 0 ? _a : Infinity;
|
|
29
|
-
}
|
|
30
|
-
next() {
|
|
31
|
-
this.payload().start = this.payload().start + this.frequencyMillis;
|
|
32
|
-
this.consumeRemaining();
|
|
33
|
-
this.checkEnd();
|
|
34
|
-
return this;
|
|
35
|
-
}
|
|
36
|
-
checkEnd() {
|
|
37
|
-
var _a;
|
|
38
|
-
if (this.payload().start > ((_a = this.payload().end) !== null && _a !== void 0 ? _a : Infinity)) {
|
|
39
|
-
this.payload().start = Infinity;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
consumeRemaining(count = 1) {
|
|
43
|
-
const remaining = this.remaining - count;
|
|
44
|
-
this.payload().remaining = remaining;
|
|
45
|
-
if (remaining <= 0) {
|
|
46
|
-
this.payload().start = Infinity;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
exports.SentinelIntervalAutomationWrapper = SentinelIntervalAutomationWrapper;
|
|
51
|
-
//# sourceMappingURL=SentinelIntervalAutomationWrapper.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SentinelIntervalAutomationWrapper.js","sourceRoot":"","sources":["../../src/SentinelIntervalAutomationWrapper.ts"],"names":[],"mappings":";;;AAAA,kEAA6D;AAI7D,MAAa,iCAEX,SAAQ,gCAAiB;IACzB,YAAY,OAAU;QACpB,KAAK,CAAC,OAAO,CAAC,CAAA;IAChB,CAAC;IAED,IAAc,eAAe;;QAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,SAAS,CAAA;QAC1C,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO,QAAQ,CAAA;QAC5C,QAAQ,MAAA,IAAI,CAAC,OAAO,EAAE,CAAC,cAAc,mCAAI,MAAM,EAAE;YAC/C,KAAK,QAAQ;gBACX,OAAO,SAAS,GAAG,IAAI,CAAA;YACzB,KAAK,QAAQ;gBACX,OAAO,SAAS,GAAG,EAAE,GAAG,IAAI,CAAA;YAC9B,KAAK,MAAM;gBACT,OAAO,SAAS,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;YACnC,KAAK,KAAK;gBACR,OAAO,SAAS,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;SACzC;IACH,CAAC;IAED,IAAc,SAAS;;QACrB,iDAAiD;QACjD,OAAO,MAAA,IAAI,CAAC,OAAO,EAAE,CAAC,SAAS,mCAAI,QAAQ,CAAA;IAC7C,CAAC;IAED,IAAI;QACF,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,CAAA;QAClE,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,QAAQ,EAAE,CAAA;QACf,OAAO,IAAI,CAAA;IACb,CAAC;IAES,QAAQ;;QAChB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,GAAG,CAAC,MAAA,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,mCAAI,QAAQ,CAAC,EAAE;YAC3D,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,GAAG,QAAQ,CAAA;SAChC;IACH,CAAC;IAES,gBAAgB,CAAC,KAAK,GAAG,CAAC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;QACxC,IAAI,CAAC,OAAO,EAAE,CAAC,SAAS,GAAG,SAAS,CAAA;QAEpC,IAAI,SAAS,IAAI,CAAC,EAAE;YAClB,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,GAAG,QAAQ,CAAA;SAChC;IACH,CAAC;CACF;AAhDD,8EAgDC"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SentinelRunner = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const assert_1 = require("@xylabs/assert");
|
|
6
|
-
const payload_wrapper_1 = require("@xyo-network/payload-wrapper");
|
|
7
|
-
const SentinelIntervalAutomationWrapper_1 = require("./SentinelIntervalAutomationWrapper");
|
|
8
|
-
class SentinelRunner {
|
|
9
|
-
constructor(sentinel, automations, onTriggerResult) {
|
|
10
|
-
this._automations = {};
|
|
11
|
-
this.sentinel = sentinel;
|
|
12
|
-
this.onTriggerResult = onTriggerResult;
|
|
13
|
-
automations === null || automations === void 0 ? void 0 : automations.forEach((automation) => this.add(automation));
|
|
14
|
-
}
|
|
15
|
-
get automations() {
|
|
16
|
-
return this._automations;
|
|
17
|
-
}
|
|
18
|
-
get next() {
|
|
19
|
-
return Object.values(this._automations).reduce((previous, current) => {
|
|
20
|
-
var _a;
|
|
21
|
-
if (current.type === 'interval') {
|
|
22
|
-
return current.start < ((_a = previous === null || previous === void 0 ? void 0 : previous.start) !== null && _a !== void 0 ? _a : Infinity) ? current : previous;
|
|
23
|
-
}
|
|
24
|
-
}, undefined);
|
|
25
|
-
}
|
|
26
|
-
add(automation, restart = true) {
|
|
27
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
28
|
-
const hash = yield payload_wrapper_1.PayloadWrapper.hashAsync(automation);
|
|
29
|
-
this._automations[hash] = automation;
|
|
30
|
-
if (restart)
|
|
31
|
-
yield this.restart();
|
|
32
|
-
return hash;
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
find(hash) {
|
|
36
|
-
Object.entries(this._automations).find(([key]) => key === hash);
|
|
37
|
-
}
|
|
38
|
-
remove(hash, restart = true) {
|
|
39
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
40
|
-
delete this._automations[hash];
|
|
41
|
-
if (restart)
|
|
42
|
-
yield this.restart();
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
removeAll() {
|
|
46
|
-
this.stop();
|
|
47
|
-
this._automations = {};
|
|
48
|
-
}
|
|
49
|
-
restart() {
|
|
50
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
51
|
-
this.stop();
|
|
52
|
-
yield this.start();
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
start() {
|
|
56
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
57
|
-
(0, assert_1.assertEx)(this.timeoutId === undefined, 'Already started');
|
|
58
|
-
const automation = this.next;
|
|
59
|
-
if (automation) {
|
|
60
|
-
const delay = automation.start - Date.now();
|
|
61
|
-
if (delay < 0) {
|
|
62
|
-
//automation is due, just do it
|
|
63
|
-
yield this.trigger(automation);
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
this.timeoutId = setTimeout(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
67
|
-
this.timeoutId = undefined;
|
|
68
|
-
yield this.start();
|
|
69
|
-
}), delay > 0 ? delay : 0);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
stop() {
|
|
75
|
-
if (this.timeoutId) {
|
|
76
|
-
clearTimeout(this.timeoutId);
|
|
77
|
-
this.timeoutId = undefined;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
update(hash, automation, restart = true) {
|
|
81
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
82
|
-
yield this.remove(hash, false);
|
|
83
|
-
yield this.add(automation, false);
|
|
84
|
-
if (restart)
|
|
85
|
-
yield this.restart();
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
trigger(automation) {
|
|
89
|
-
var _a;
|
|
90
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
91
|
-
const wrapper = new SentinelIntervalAutomationWrapper_1.SentinelIntervalAutomationWrapper(automation);
|
|
92
|
-
yield this.remove(yield wrapper.hashAsync(), false);
|
|
93
|
-
wrapper.next();
|
|
94
|
-
yield this.add(wrapper.payload(), false);
|
|
95
|
-
const triggerResult = yield this.sentinel.report();
|
|
96
|
-
(_a = this.onTriggerResult) === null || _a === void 0 ? void 0 : _a.call(this, triggerResult);
|
|
97
|
-
yield this.start();
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
exports.SentinelRunner = SentinelRunner;
|
|
102
|
-
//# sourceMappingURL=SentinelRunner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SentinelRunner.js","sourceRoot":"","sources":["../../src/SentinelRunner.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/Wrapper.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var _a, _b;
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.SentinelWrapper = void 0;
|
|
5
|
-
const tslib_1 = require("tslib");
|
|
6
|
-
const module_1 = require("@xyo-network/module");
|
|
7
|
-
const sentinel_model_1 = require("@xyo-network/sentinel-model");
|
|
8
|
-
(0, module_1.constructableModuleWrapper)();
|
|
9
|
-
class SentinelWrapper extends (_b = module_1.ModuleWrapper) {
|
|
10
|
-
archivists() {
|
|
11
|
-
throw Error('Not supported');
|
|
12
|
-
}
|
|
13
|
-
report(payloads) {
|
|
14
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
15
|
-
const queryPayload = { schema: sentinel_model_1.SentinelReportQuerySchema };
|
|
16
|
-
const result = yield this.sendQuery(queryPayload, payloads);
|
|
17
|
-
return result;
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
witnesses() {
|
|
21
|
-
throw Error('Not supported');
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
exports.SentinelWrapper = SentinelWrapper;
|
|
25
|
-
_a = SentinelWrapper;
|
|
26
|
-
SentinelWrapper.instanceIdentityCheck = sentinel_model_1.isSentinelInstance;
|
|
27
|
-
SentinelWrapper.moduleIdentityCheck = sentinel_model_1.isSentinelModule;
|
|
28
|
-
SentinelWrapper.requiredQueries = [sentinel_model_1.SentinelReportQuerySchema, ...Reflect.get(_b, "requiredQueries", _a)];
|
|
29
|
-
//# sourceMappingURL=Wrapper.js.map
|
package/dist/cjs/Wrapper.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Wrapper.js","sourceRoot":"","sources":["../../src/Wrapper.ts"],"names":[],"mappings":";;;;;AACA,gDAA+E;AAE/E,gEAOoC;AAGpC,IAAA,mCAA0B,GAAE,CAAA;AAC5B,MAAa,eACX,SAAQ,MAAA,sBAAa,CAAS;IAO9B,UAAU;QACR,MAAM,KAAK,CAAC,eAAe,CAAC,CAAA;IAC9B,CAAC;IAEK,MAAM,CAAC,QAAoB;;YAC/B,MAAM,YAAY,GAAwB,EAAE,MAAM,EAAE,0CAAyB,EAAE,CAAA;YAC/E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;YAC3D,OAAO,MAAM,CAAA;QACf,CAAC;KAAA;IAED,SAAS;QACP,MAAM,KAAK,CAAC,eAAe,CAAC,CAAA;IAC9B,CAAC;;AApBH,0CAqBC;;AAjBiB,qCAAqB,GAAG,mCAAkB,AAArB,CAAqB;AAC1C,mCAAmB,GAAG,iCAAgB,AAAnB,CAAmB;AACtC,+BAAe,GAAG,CAAC,0CAAyB,EAAE,GAAG,sCAAqB,CAAC,AAAxD,CAAwD"}
|
package/dist/cjs/index.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
tslib_1.__exportStar(require("./AbstractSentinel"), exports);
|
|
5
|
-
tslib_1.__exportStar(require("./Automation"), exports);
|
|
6
|
-
tslib_1.__exportStar(require("./MemorySentinel"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./SentinelIntervalAutomationWrapper"), exports);
|
|
8
|
-
tslib_1.__exportStar(require("./SentinelRunner"), exports);
|
|
9
|
-
tslib_1.__exportStar(require("./Wrapper"), exports);
|
|
10
|
-
tslib_1.__exportStar(require("@xyo-network/sentinel-model"), exports);
|
|
11
|
-
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,6DAAkC;AAClC,uDAA4B;AAC5B,2DAAgC;AAChC,8EAAmD;AACnD,2DAAgC;AAChC,oDAAyB;AACzB,sEAA2C"}
|