@xyo-network/sentinel 2.45.1 → 2.46.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.
Files changed (39) hide show
  1. package/dist/cjs/{Sentinel.js → AbstractSentinel.js} +7 -8
  2. package/dist/cjs/AbstractSentinel.js.map +1 -0
  3. package/dist/cjs/Config.js +5 -0
  4. package/dist/cjs/Config.js.map +1 -0
  5. package/dist/cjs/SentinelRunner.js.map +1 -1
  6. package/dist/cjs/index.js +1 -1
  7. package/dist/cjs/index.js.map +1 -1
  8. package/dist/docs.json +19522 -12573
  9. package/dist/esm/{Sentinel.js → AbstractSentinel.js} +6 -7
  10. package/dist/esm/AbstractSentinel.js.map +1 -0
  11. package/dist/esm/Config.js +2 -0
  12. package/dist/esm/Config.js.map +1 -0
  13. package/dist/esm/SentinelRunner.js.map +1 -1
  14. package/dist/esm/index.js +1 -1
  15. package/dist/esm/index.js.map +1 -1
  16. package/dist/types/{Sentinel.d.ts → AbstractSentinel.d.ts} +9 -11
  17. package/dist/types/AbstractSentinel.d.ts.map +1 -0
  18. package/dist/types/Config.d.ts +15 -0
  19. package/dist/types/Config.d.ts.map +1 -0
  20. package/dist/types/Queries/index.d.ts +2 -2
  21. package/dist/types/Queries/index.d.ts.map +1 -1
  22. package/dist/types/SentinelModel.d.ts +4 -3
  23. package/dist/types/SentinelModel.d.ts.map +1 -1
  24. package/dist/types/SentinelRunner.d.ts +3 -3
  25. package/dist/types/SentinelRunner.d.ts.map +1 -1
  26. package/dist/types/index.d.ts +1 -1
  27. package/dist/types/index.d.ts.map +1 -1
  28. package/package.json +12 -12
  29. package/src/{Sentinel.ts → AbstractSentinel.ts} +12 -22
  30. package/src/Config.ts +18 -0
  31. package/src/Queries/index.ts +2 -2
  32. package/src/SentinelModel.ts +5 -3
  33. package/src/SentinelRunner.ts +3 -3
  34. package/src/index.ts +1 -1
  35. package/src/spec/Sentinel.spec.ts +7 -6
  36. package/src/spec/SentinelRunner.spec.ts +4 -3
  37. package/dist/cjs/Sentinel.js.map +0 -1
  38. package/dist/esm/Sentinel.js.map +0 -1
  39. package/dist/types/Sentinel.d.ts.map +0 -1
@@ -2,17 +2,19 @@ import { assertEx } from '@xylabs/assert';
2
2
  import { Account } from '@xyo-network/account';
3
3
  import { ArchivingModule } from '@xyo-network/archivist';
4
4
  import { ArchivistWrapper } from '@xyo-network/archivist-wrapper';
5
- import { QueryBoundWitnessWrapper, XyoErrorBuilder, } from '@xyo-network/module';
5
+ import { QueryBoundWitnessWrapper, XyoErrorBuilder } from '@xyo-network/module';
6
6
  import { WitnessWrapper } from '@xyo-network/witness';
7
7
  import compact from 'lodash/compact';
8
8
  import uniq from 'lodash/uniq';
9
9
  import { SentinelReportQuerySchema } from './Queries';
10
- export const SentinelConfigSchema = 'network.xyo.sentinel.config';
11
- export class Sentinel extends ArchivingModule {
10
+ export class AbstractSentinel extends ArchivingModule {
12
11
  static configSchema;
13
12
  history = [];
14
13
  _archivists;
15
14
  _witnesses;
15
+ get queries() {
16
+ return [SentinelReportQuerySchema, ...super.queries];
17
+ }
16
18
  static async create(params) {
17
19
  return (await super.create(params));
18
20
  }
@@ -33,9 +35,6 @@ export class Sentinel extends ArchivingModule {
33
35
  this._witnesses || (await this.resolver?.resolve({ address: addresses })).map((witness) => new WitnessWrapper(witness));
34
36
  return this._witnesses;
35
37
  }
36
- queries() {
37
- return [SentinelReportQuerySchema, ...super.queries()];
38
- }
39
38
  async query(query, payloads, queryConfig) {
40
39
  const wrapper = QueryBoundWitnessWrapper.parseQuery(query, payloads);
41
40
  const typedQuery = wrapper.query;
@@ -99,4 +98,4 @@ export class Sentinel extends ArchivingModule {
99
98
  return (await Promise.all(witnesses?.map(async (witness) => await witness.observe()))).flat();
100
99
  }
101
100
  }
102
- //# sourceMappingURL=Sentinel.js.map
101
+ //# sourceMappingURL=AbstractSentinel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractSentinel.js","sourceRoot":"","sources":["../../src/AbstractSentinel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export const SentinelConfigSchema = 'network.xyo.node.sentinel';
2
+ //# sourceMappingURL=Config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,oBAAoB,GAAyB,2BAA2B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"SentinelRunner.js","sourceRoot":"","sources":["../../src/SentinelRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SentinelRunner.js","sourceRoot":"","sources":["../../src/SentinelRunner.ts"],"names":[],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -1,5 +1,5 @@
1
+ export * from './AbstractSentinel';
1
2
  export * from './Automation';
2
- export * from './Sentinel';
3
3
  export * from './SentinelIntervalAutomationWrapper';
4
4
  export * from './SentinelModel';
5
5
  export * from './SentinelRunner';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,qCAAqC,CAAA;AACnD,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,cAAc,CAAA;AAC5B,cAAc,qCAAqC,CAAA;AACnD,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA"}
@@ -1,35 +1,33 @@
1
- import { ArchivingModule, ArchivingModuleConfig } from '@xyo-network/archivist';
1
+ import { ArchivingModule } from '@xyo-network/archivist';
2
2
  import { ArchivistWrapper } from '@xyo-network/archivist-wrapper';
3
3
  import { XyoBoundWitness } from '@xyo-network/boundwitness-model';
4
- import { AbstractModuleConfig, ModuleParams, ModuleQueryResult, XyoQueryBoundWitness } from '@xyo-network/module';
4
+ import { ModuleConfig, ModuleParams, ModuleQueryResult, XyoQueryBoundWitness } from '@xyo-network/module';
5
5
  import { XyoPayload } from '@xyo-network/payload-model';
6
6
  import { WitnessWrapper } from '@xyo-network/witness';
7
+ import { SentinelConfig, SentinelConfigSchema } from './Config';
7
8
  import { SentinelModule } from './SentinelModel';
8
- export type SentinelConfigSchema = 'network.xyo.sentinel.config';
9
- export declare const SentinelConfigSchema: SentinelConfigSchema;
10
- export type SentinelConfig = ArchivingModuleConfig<{
9
+ export type AbstractSentinelConfig = SentinelConfig<{
11
10
  onReportEnd?: (boundWitness?: XyoBoundWitness, errors?: Error[]) => void;
12
11
  onReportStart?: () => void;
13
12
  onWitnessReportEnd?: (witness: WitnessWrapper, error?: Error) => void;
14
13
  onWitnessReportStart?: (witness: WitnessWrapper) => void;
15
14
  schema: SentinelConfigSchema;
16
- witnesses?: string[];
17
15
  }>;
18
- export declare class Sentinel extends ArchivingModule<SentinelConfig> implements SentinelModule {
16
+ export declare class AbstractSentinel<TConfig extends SentinelConfig = SentinelConfig> extends ArchivingModule<TConfig> implements SentinelModule<TConfig> {
19
17
  static configSchema: SentinelConfigSchema;
20
18
  history: XyoBoundWitness[];
21
19
  private _archivists;
22
20
  private _witnesses;
23
- static create(params?: Partial<ModuleParams<SentinelConfig>>): Promise<Sentinel>;
21
+ get queries(): string[];
22
+ static create(params?: Partial<ModuleParams<SentinelConfig>>): Promise<AbstractSentinel>;
24
23
  addWitness(address: string[]): void;
25
24
  getArchivists(): Promise<ArchivistWrapper[]>;
26
25
  getWitnesses(): Promise<WitnessWrapper[]>;
27
- queries(): string[];
28
- query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness, TConfig extends AbstractModuleConfig = AbstractModuleConfig>(query: T, payloads?: XyoPayload[], queryConfig?: TConfig): Promise<ModuleQueryResult>;
26
+ query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(query: T, payloads?: XyoPayload[], queryConfig?: TConfig): Promise<ModuleQueryResult>;
29
27
  removeArchivist(address: string[]): void;
30
28
  removeWitness(address: string[]): void;
31
29
  report(payloads?: XyoPayload[]): Promise<[XyoBoundWitness, XyoPayload[]]>;
32
30
  tryReport(payloads?: XyoPayload[]): Promise<[XyoBoundWitness | null, XyoPayload[]]>;
33
31
  private generatePayloads;
34
32
  }
35
- //# sourceMappingURL=Sentinel.d.ts.map
33
+ //# sourceMappingURL=AbstractSentinel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractSentinel.d.ts","sourceRoot":"","sources":["../../src/AbstractSentinel.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqB,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAA6C,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AACpJ,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAmB,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAItE,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhD,MAAM,MAAM,sBAAsB,GAAG,cAAc,CAAC;IAClD,WAAW,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,CAAA;IACxE,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,CAAA;IACrE,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAA;IACxD,MAAM,EAAE,oBAAoB,CAAA;CAC7B,CAAC,CAAA;AAEF,qBAAa,gBAAgB,CAAC,OAAO,SAAS,cAAc,GAAG,cAAc,CAAE,SAAQ,eAAe,CAAC,OAAO,CAAE,YAAW,cAAc,CAAC,OAAO,CAAC;IAChJ,OAAgB,YAAY,EAAE,oBAAoB,CAAA;IAE3C,OAAO,EAAE,eAAe,EAAE,CAAK;IACtC,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,UAAU,CAA8B;IAEhD,IAAoB,OAAO,IAAI,MAAM,EAAE,CAEtC;WAEqB,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIhG,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE;IAKtB,aAAa;IASb,YAAY;IAQV,KAAK,CAAC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,EAAE,OAAO,SAAS,YAAY,GAAG,YAAY,EACrH,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,UAAU,EAAE,EACvB,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,iBAAiB,CAAC;IAuBtB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE;IAKjC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE;IAKzB,MAAM,CAAC,QAAQ,GAAE,UAAU,EAAO,GAAG,OAAO,CAAC,CAAC,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;IAoB7E,SAAS,CAAC,QAAQ,GAAE,UAAU,EAAO,GAAG,OAAO,CAAC,CAAC,eAAe,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YAUtF,gBAAgB;CAG/B"}
@@ -0,0 +1,15 @@
1
+ import { ArchivingModuleConfig } from '@xyo-network/archivist';
2
+ import { XyoBoundWitness } from '@xyo-network/boundwitness-model';
3
+ import { ModuleConfig } from '@xyo-network/module';
4
+ import { XyoPayload } from '@xyo-network/payload-model';
5
+ import { WitnessModule } from '@xyo-network/witness';
6
+ export type SentinelConfigSchema = 'network.xyo.node.sentinel';
7
+ export declare const SentinelConfigSchema: SentinelConfigSchema;
8
+ export type SentinelConfig<TConfig extends XyoPayload = XyoPayload> = ModuleConfig<ArchivingModuleConfig & {
9
+ onReportEnd?: (boundWitness?: XyoBoundWitness, errors?: Error[]) => void;
10
+ onReportStart?: () => void;
11
+ onWitnessReportEnd?: (witness: WitnessModule, error?: Error) => void;
12
+ onWitnessReportStart?: (witness: WitnessModule) => void;
13
+ witnesses?: string[];
14
+ } & TConfig>;
15
+ //# sourceMappingURL=Config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,MAAM,MAAM,oBAAoB,GAAG,2BAA2B,CAAA;AAC9D,eAAO,MAAM,oBAAoB,EAAE,oBAAkD,CAAA;AAErF,MAAM,MAAM,cAAc,CAAC,OAAO,SAAS,UAAU,GAAG,UAAU,IAAI,YAAY,CAChF,qBAAqB,GAAG;IACtB,WAAW,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,CAAA;IACxE,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,CAAA;IACpE,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAA;IACvD,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;CACrB,GAAG,OAAO,CACZ,CAAA"}
@@ -1,6 +1,6 @@
1
1
  export * from './Report';
2
- import { AbstractModuleQuery, XyoQuery } from '@xyo-network/module-model';
2
+ import { ModuleQuery, XyoQuery } from '@xyo-network/module-model';
3
3
  import { SentinelReportQuery } from './Report';
4
4
  export type SentinelQueryBase = SentinelReportQuery;
5
- export type SentinelQuery<TQuery extends XyoQuery | void = void> = AbstractModuleQuery<TQuery extends XyoQuery ? SentinelQueryBase | TQuery : SentinelQueryBase>;
5
+ export type SentinelQuery<TQuery extends XyoQuery | void = void> = ModuleQuery<TQuery extends XyoQuery ? SentinelQueryBase | TQuery : SentinelQueryBase>;
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Queries/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AAExB,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAEzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAE9C,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,CAAA;AAEnD,MAAM,MAAM,aAAa,CAAC,MAAM,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAAI,mBAAmB,CACpF,MAAM,SAAS,QAAQ,GAAG,iBAAiB,GAAG,MAAM,GAAG,iBAAiB,CACzE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Queries/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AAExB,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAEjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAE9C,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,CAAA;AAEnD,MAAM,MAAM,aAAa,CAAC,MAAM,SAAS,QAAQ,GAAG,IAAI,GAAG,IAAI,IAAI,WAAW,CAC5E,MAAM,SAAS,QAAQ,GAAG,iBAAiB,GAAG,MAAM,GAAG,iBAAiB,CACzE,CAAA"}
@@ -1,11 +1,12 @@
1
+ import { ArchivingModule } from '@xyo-network/archivist';
1
2
  import { XyoBoundWitness } from '@xyo-network/boundwitness-model';
2
- import { Module } from '@xyo-network/module-model';
3
3
  import { XyoPayload } from '@xyo-network/payload-model';
4
4
  import { Promisable } from '@xyo-network/promise';
5
- export interface SentinelModel {
5
+ import { SentinelConfig } from './Config';
6
+ export interface Sentinel {
6
7
  report: (payloads?: XyoPayload[]) => Promisable<[XyoBoundWitness, XyoPayload[]]>;
7
8
  tryReport: (payloads?: XyoPayload[]) => Promisable<[XyoBoundWitness | null, XyoPayload[]]>;
8
9
  }
9
- export interface SentinelModule extends Module, SentinelModel {
10
+ export interface SentinelModule<TConfig extends SentinelConfig = SentinelConfig> extends ArchivingModule<TConfig>, Sentinel {
10
11
  }
11
12
  //# sourceMappingURL=SentinelModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SentinelModel.d.ts","sourceRoot":"","sources":["../../src/SentinelModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,KAAK,UAAU,CAAC,CAAC,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC,CAAA;IAChF,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,KAAK,UAAU,CAAC,CAAC,eAAe,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAA;CAC3F;AAED,MAAM,WAAW,cAAe,SAAQ,MAAM,EAAE,aAAa;CAAG"}
1
+ {"version":3,"file":"SentinelModel.d.ts","sourceRoot":"","sources":["../../src/SentinelModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAEzC,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,KAAK,UAAU,CAAC,CAAC,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC,CAAA;IAChF,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,KAAK,UAAU,CAAC,CAAC,eAAe,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAA;CAC3F;AAED,MAAM,WAAW,cAAc,CAAC,OAAO,SAAS,cAAc,GAAG,cAAc,CAAE,SAAQ,eAAe,CAAC,OAAO,CAAC,EAAE,QAAQ;CAAG"}
@@ -2,14 +2,14 @@
2
2
  import { XyoBoundWitness } from '@xyo-network/boundwitness-model';
3
3
  import { XyoPayload } from '@xyo-network/payload-model';
4
4
  import { SentinelAutomationPayload } from './Automation';
5
- import { SentinelModel } from './SentinelModel';
5
+ import { SentinelModule } from './SentinelModel';
6
6
  export type OnSentinelRunnerTriggerResult = (result: [XyoBoundWitness | null, XyoPayload[]]) => void;
7
7
  export declare class SentinelRunner {
8
8
  protected _automations: Record<string, SentinelAutomationPayload>;
9
9
  protected onTriggerResult: OnSentinelRunnerTriggerResult | undefined;
10
- protected sentinel: SentinelModel;
10
+ protected sentinel: SentinelModule;
11
11
  protected timeoutId?: NodeJS.Timer;
12
- constructor(sentinel: SentinelModel, automations?: SentinelAutomationPayload[], onTriggerResult?: OnSentinelRunnerTriggerResult);
12
+ constructor(sentinel: SentinelModule, automations?: SentinelAutomationPayload[], onTriggerResult?: OnSentinelRunnerTriggerResult);
13
13
  get automations(): Record<string, SentinelAutomationPayload>;
14
14
  private get next();
15
15
  add(automation: SentinelAutomationPayload, restart?: boolean): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"SentinelRunner.d.ts","sourceRoot":"","sources":["../../src/SentinelRunner.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AAGvD,OAAO,EAAE,yBAAyB,EAAqC,MAAM,cAAc,CAAA;AAE3F,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C,MAAM,MAAM,6BAA6B,GAAG,CAAC,MAAM,EAAE,CAAC,eAAe,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC,KAAK,IAAI,CAAA;AAEpG,qBAAa,cAAc;IACzB,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAK;IACtE,SAAS,CAAC,eAAe,EAAE,6BAA6B,GAAG,SAAS,CAAA;IACpE,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAA;IACjC,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,CAAA;gBAEtB,QAAQ,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,yBAAyB,EAAE,EAAE,eAAe,CAAC,EAAE,6BAA6B;IAM/H,IAAW,WAAW,8CAErB;IAED,OAAO,KAAK,IAAI,GAMf;IAEY,GAAG,CAAC,UAAU,EAAE,yBAAyB,EAAE,OAAO,UAAO;IAO/D,IAAI,CAAC,IAAI,EAAE,MAAM;IAIX,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,UAAO;IAKzC,SAAS;IAKH,OAAO;IAKP,KAAK;IAoBX,IAAI;IAOE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,yBAAyB,EAAE,OAAO,UAAO;YAMzE,OAAO;CAStB"}
1
+ {"version":3,"file":"SentinelRunner.d.ts","sourceRoot":"","sources":["../../src/SentinelRunner.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AAGvD,OAAO,EAAE,yBAAyB,EAAqC,MAAM,cAAc,CAAA;AAE3F,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhD,MAAM,MAAM,6BAA6B,GAAG,CAAC,MAAM,EAAE,CAAC,eAAe,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC,KAAK,IAAI,CAAA;AAEpG,qBAAa,cAAc;IACzB,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAK;IACtE,SAAS,CAAC,eAAe,EAAE,6BAA6B,GAAG,SAAS,CAAA;IACpE,SAAS,CAAC,QAAQ,EAAE,cAAc,CAAA;IAClC,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,CAAA;gBAEtB,QAAQ,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,yBAAyB,EAAE,EAAE,eAAe,CAAC,EAAE,6BAA6B;IAMhI,IAAW,WAAW,8CAErB;IAED,OAAO,KAAK,IAAI,GAMf;IAEY,GAAG,CAAC,UAAU,EAAE,yBAAyB,EAAE,OAAO,UAAO;IAO/D,IAAI,CAAC,IAAI,EAAE,MAAM;IAIX,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,UAAO;IAKzC,SAAS;IAKH,OAAO;IAKP,KAAK;IAoBX,IAAI;IAOE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,yBAAyB,EAAE,OAAO,UAAO;YAMzE,OAAO;CAStB"}
@@ -1,5 +1,5 @@
1
+ export * from './AbstractSentinel';
1
2
  export * from './Automation';
2
- export * from './Sentinel';
3
3
  export * from './SentinelIntervalAutomationWrapper';
4
4
  export * from './SentinelModel';
5
5
  export * from './SentinelRunner';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,qCAAqC,CAAA;AACnD,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,cAAc,CAAA;AAC5B,cAAc,qCAAqC,CAAA;AACnD,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA"}
package/package.json CHANGED
@@ -11,17 +11,17 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "@xylabs/assert": "^2.7.1",
14
- "@xyo-network/account": "^2.45.1",
15
- "@xyo-network/archivist": "^2.45.1",
16
- "@xyo-network/archivist-wrapper": "^2.45.1",
17
- "@xyo-network/boundwitness-model": "^2.45.1",
18
- "@xyo-network/core": "^2.45.1",
19
- "@xyo-network/module": "^2.45.1",
20
- "@xyo-network/module-model": "^2.45.1",
21
- "@xyo-network/payload-model": "^2.45.1",
22
- "@xyo-network/payload-wrapper": "^2.45.1",
23
- "@xyo-network/promise": "^2.45.1",
24
- "@xyo-network/witness": "^2.45.1",
14
+ "@xyo-network/account": "^2.46.0",
15
+ "@xyo-network/archivist": "^2.46.0",
16
+ "@xyo-network/archivist-wrapper": "^2.46.0",
17
+ "@xyo-network/boundwitness-model": "^2.46.0",
18
+ "@xyo-network/core": "^2.46.0",
19
+ "@xyo-network/module": "^2.46.0",
20
+ "@xyo-network/module-model": "^2.46.0",
21
+ "@xyo-network/payload-model": "^2.46.0",
22
+ "@xyo-network/payload-wrapper": "^2.46.0",
23
+ "@xyo-network/promise": "^2.46.0",
24
+ "@xyo-network/witness": "^2.46.0",
25
25
  "lodash": "^4.17.21"
26
26
  },
27
27
  "description": "Primary SDK for using XYO Protocol 2.0",
@@ -63,5 +63,5 @@
63
63
  },
64
64
  "sideEffects": false,
65
65
  "types": "dist/types/index.d.ts",
66
- "version": "2.45.1"
66
+ "version": "2.46.0"
67
67
  }
@@ -1,45 +1,39 @@
1
1
  import { assertEx } from '@xylabs/assert'
2
2
  import { Account } from '@xyo-network/account'
3
- import { AbstractArchivist, ArchivingModule, ArchivingModuleConfig } from '@xyo-network/archivist'
3
+ import { AbstractArchivist, ArchivingModule } from '@xyo-network/archivist'
4
4
  import { ArchivistWrapper } from '@xyo-network/archivist-wrapper'
5
5
  import { XyoBoundWitness } from '@xyo-network/boundwitness-model'
6
- import {
7
- AbstractModuleConfig,
8
- ModuleParams,
9
- ModuleQueryResult,
10
- QueryBoundWitnessWrapper,
11
- XyoErrorBuilder,
12
- XyoQueryBoundWitness,
13
- } from '@xyo-network/module'
6
+ import { ModuleConfig, ModuleParams, ModuleQueryResult, QueryBoundWitnessWrapper, XyoErrorBuilder, XyoQueryBoundWitness } from '@xyo-network/module'
14
7
  import { XyoPayload } from '@xyo-network/payload-model'
15
8
  import { AbstractWitness, WitnessWrapper } from '@xyo-network/witness'
16
9
  import compact from 'lodash/compact'
17
10
  import uniq from 'lodash/uniq'
18
11
 
12
+ import { SentinelConfig, SentinelConfigSchema } from './Config'
19
13
  import { SentinelQuery, SentinelReportQuerySchema } from './Queries'
20
14
  import { SentinelModule } from './SentinelModel'
21
15
 
22
- export type SentinelConfigSchema = 'network.xyo.sentinel.config'
23
- export const SentinelConfigSchema: SentinelConfigSchema = 'network.xyo.sentinel.config'
24
-
25
- export type SentinelConfig = ArchivingModuleConfig<{
16
+ export type AbstractSentinelConfig = SentinelConfig<{
26
17
  onReportEnd?: (boundWitness?: XyoBoundWitness, errors?: Error[]) => void
27
18
  onReportStart?: () => void
28
19
  onWitnessReportEnd?: (witness: WitnessWrapper, error?: Error) => void
29
20
  onWitnessReportStart?: (witness: WitnessWrapper) => void
30
21
  schema: SentinelConfigSchema
31
- witnesses?: string[]
32
22
  }>
33
23
 
34
- export class Sentinel extends ArchivingModule<SentinelConfig> implements SentinelModule {
24
+ export class AbstractSentinel<TConfig extends SentinelConfig = SentinelConfig> extends ArchivingModule<TConfig> implements SentinelModule<TConfig> {
35
25
  static override configSchema: SentinelConfigSchema
36
26
 
37
27
  public history: XyoBoundWitness[] = []
38
28
  private _archivists: ArchivistWrapper[] | undefined
39
29
  private _witnesses: WitnessWrapper[] | undefined
40
30
 
41
- static override async create(params?: Partial<ModuleParams<SentinelConfig>>): Promise<Sentinel> {
42
- return (await super.create(params)) as Sentinel
31
+ public override get queries(): string[] {
32
+ return [SentinelReportQuerySchema, ...super.queries]
33
+ }
34
+
35
+ static override async create(params?: Partial<ModuleParams<SentinelConfig>>): Promise<AbstractSentinel> {
36
+ return (await super.create(params)) as AbstractSentinel
43
37
  }
44
38
 
45
39
  public addWitness(address: string[]) {
@@ -64,11 +58,7 @@ export class Sentinel extends ArchivingModule<SentinelConfig> implements Sentine
64
58
  return this._witnesses
65
59
  }
66
60
 
67
- public override queries(): string[] {
68
- return [SentinelReportQuerySchema, ...super.queries()]
69
- }
70
-
71
- override async query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness, TConfig extends AbstractModuleConfig = AbstractModuleConfig>(
61
+ override async query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness, TConfig extends ModuleConfig = ModuleConfig>(
72
62
  query: T,
73
63
  payloads?: XyoPayload[],
74
64
  queryConfig?: TConfig,
package/src/Config.ts ADDED
@@ -0,0 +1,18 @@
1
+ import { ArchivingModuleConfig } from '@xyo-network/archivist'
2
+ import { XyoBoundWitness } from '@xyo-network/boundwitness-model'
3
+ import { ModuleConfig } from '@xyo-network/module'
4
+ import { XyoPayload } from '@xyo-network/payload-model'
5
+ import { WitnessModule } from '@xyo-network/witness'
6
+
7
+ export type SentinelConfigSchema = 'network.xyo.node.sentinel'
8
+ export const SentinelConfigSchema: SentinelConfigSchema = 'network.xyo.node.sentinel'
9
+
10
+ export type SentinelConfig<TConfig extends XyoPayload = XyoPayload> = ModuleConfig<
11
+ ArchivingModuleConfig & {
12
+ onReportEnd?: (boundWitness?: XyoBoundWitness, errors?: Error[]) => void
13
+ onReportStart?: () => void
14
+ onWitnessReportEnd?: (witness: WitnessModule, error?: Error) => void
15
+ onWitnessReportStart?: (witness: WitnessModule) => void
16
+ witnesses?: string[]
17
+ } & TConfig
18
+ >
@@ -1,11 +1,11 @@
1
1
  export * from './Report'
2
2
 
3
- import { AbstractModuleQuery, XyoQuery } from '@xyo-network/module-model'
3
+ import { ModuleQuery, XyoQuery } from '@xyo-network/module-model'
4
4
 
5
5
  import { SentinelReportQuery } from './Report'
6
6
 
7
7
  export type SentinelQueryBase = SentinelReportQuery
8
8
 
9
- export type SentinelQuery<TQuery extends XyoQuery | void = void> = AbstractModuleQuery<
9
+ export type SentinelQuery<TQuery extends XyoQuery | void = void> = ModuleQuery<
10
10
  TQuery extends XyoQuery ? SentinelQueryBase | TQuery : SentinelQueryBase
11
11
  >
@@ -1,11 +1,13 @@
1
+ import { ArchivingModule } from '@xyo-network/archivist'
1
2
  import { XyoBoundWitness } from '@xyo-network/boundwitness-model'
2
- import { Module } from '@xyo-network/module-model'
3
3
  import { XyoPayload } from '@xyo-network/payload-model'
4
4
  import { Promisable } from '@xyo-network/promise'
5
5
 
6
- export interface SentinelModel {
6
+ import { SentinelConfig } from './Config'
7
+
8
+ export interface Sentinel {
7
9
  report: (payloads?: XyoPayload[]) => Promisable<[XyoBoundWitness, XyoPayload[]]>
8
10
  tryReport: (payloads?: XyoPayload[]) => Promisable<[XyoBoundWitness | null, XyoPayload[]]>
9
11
  }
10
12
 
11
- export interface SentinelModule extends Module, SentinelModel {}
13
+ export interface SentinelModule<TConfig extends SentinelConfig = SentinelConfig> extends ArchivingModule<TConfig>, Sentinel {}
@@ -5,17 +5,17 @@ import { PayloadWrapper } from '@xyo-network/payload-wrapper'
5
5
 
6
6
  import { SentinelAutomationPayload, SentinelIntervalAutomationPayload } from './Automation'
7
7
  import { SentinelIntervalAutomationWrapper } from './SentinelIntervalAutomationWrapper'
8
- import { SentinelModel } from './SentinelModel'
8
+ import { SentinelModule } from './SentinelModel'
9
9
 
10
10
  export type OnSentinelRunnerTriggerResult = (result: [XyoBoundWitness | null, XyoPayload[]]) => void
11
11
 
12
12
  export class SentinelRunner {
13
13
  protected _automations: Record<string, SentinelAutomationPayload> = {}
14
14
  protected onTriggerResult: OnSentinelRunnerTriggerResult | undefined
15
- protected sentinel: SentinelModel
15
+ protected sentinel: SentinelModule
16
16
  protected timeoutId?: NodeJS.Timer
17
17
 
18
- constructor(sentinel: SentinelModel, automations?: SentinelAutomationPayload[], onTriggerResult?: OnSentinelRunnerTriggerResult) {
18
+ constructor(sentinel: SentinelModule, automations?: SentinelAutomationPayload[], onTriggerResult?: OnSentinelRunnerTriggerResult) {
19
19
  this.sentinel = sentinel
20
20
  this.onTriggerResult = onTriggerResult
21
21
  automations?.forEach((automation) => this.add(automation))
package/src/index.ts CHANGED
@@ -1,5 +1,5 @@
1
+ export * from './AbstractSentinel'
1
2
  export * from './Automation'
2
- export * from './Sentinel'
3
3
  export * from './SentinelIntervalAutomationWrapper'
4
4
  export * from './SentinelModel'
5
5
  export * from './SentinelRunner'
@@ -11,7 +11,8 @@ import { PayloadWrapper } from '@xyo-network/payload-wrapper'
11
11
  import { AbstractWitness } from '@xyo-network/witness'
12
12
  import { XyoAdhocWitness, XyoAdhocWitnessConfigSchema } from '@xyo-network/witnesses'
13
13
 
14
- import { Sentinel, SentinelConfig, SentinelConfigSchema } from '../Sentinel'
14
+ import { AbstractSentinel } from '../AbstractSentinel'
15
+ import { SentinelConfig, SentinelConfigSchema } from '../Config'
15
16
 
16
17
  describe('Sentinel', () => {
17
18
  test('all [simple sentinel send]', async () => {
@@ -39,7 +40,7 @@ describe('Sentinel', () => {
39
40
  resolver.add(archivist)
40
41
  witnesses.forEach((witness) => resolver.add(witness))
41
42
 
42
- const sentinel = await Sentinel.create({ config, resolver })
43
+ const sentinel = await AbstractSentinel.create({ config, resolver })
43
44
  expect(await sentinel.getArchivists()).toBeArrayOfSize(1)
44
45
  expect(await sentinel.getWitnesses()).toBeArrayOfSize(2)
45
46
  const adhocWitness = await XyoAdhocWitness.create({
@@ -130,7 +131,7 @@ describe('Sentinel', () => {
130
131
  },
131
132
  resolver,
132
133
  }
133
- const sentinel = await Sentinel.create(params)
134
+ const sentinel = await AbstractSentinel.create(params)
134
135
  const result = await sentinel.report()
135
136
  assertSentinelReport(result)
136
137
  await assertArchivistStateMatchesSentinelReport(result, [archivistA, archivistB])
@@ -146,7 +147,7 @@ describe('Sentinel', () => {
146
147
  },
147
148
  resolver,
148
149
  }
149
- const sentinel = await Sentinel.create(params)
150
+ const sentinel = await AbstractSentinel.create(params)
150
151
  const observed = await witnessB.observe()
151
152
  expect(observed).toBeArrayOfSize(1)
152
153
  const result = await sentinel.report(observed)
@@ -164,7 +165,7 @@ describe('Sentinel', () => {
164
165
  },
165
166
  resolver,
166
167
  }
167
- const sentinel = await Sentinel.create(params)
168
+ const sentinel = await AbstractSentinel.create(params)
168
169
  const observedA = await witnessA.observe()
169
170
  expect(observedA).toBeArrayOfSize(1)
170
171
  const observedB = await witnessB.observe()
@@ -206,7 +207,7 @@ describe('Sentinel', () => {
206
207
  },
207
208
  resolver,
208
209
  }
209
- const sentinel = await Sentinel.create(params)
210
+ const sentinel = await AbstractSentinel.create(params)
210
211
  await sentinel.report()
211
212
  return
212
213
  })
@@ -3,12 +3,13 @@ import { CompositeModuleResolver } from '@xyo-network/module'
3
3
  import { IdSchema, IdWitness, IdWitnessConfigSchema } from '@xyo-network/plugins'
4
4
  import { AbstractWitness } from '@xyo-network/witness'
5
5
 
6
+ import { AbstractSentinel } from '../AbstractSentinel'
6
7
  import { AutomationSchema, SentinelIntervalAutomationPayload } from '../Automation'
7
- import { Sentinel, SentinelConfig, SentinelConfigSchema } from '../Sentinel'
8
+ import { SentinelConfig, SentinelConfigSchema } from '../Config'
8
9
  import { OnSentinelRunnerTriggerResult, SentinelRunner } from '../SentinelRunner'
9
10
 
10
11
  describe('SentinelRunner', () => {
11
- let sentinel: Sentinel
12
+ let sentinel: AbstractSentinel
12
13
  let config: SentinelConfig
13
14
 
14
15
  beforeEach(async () => {
@@ -21,7 +22,7 @@ describe('SentinelRunner', () => {
21
22
  witnesses: witnesses.map((witness) => witness.address),
22
23
  }
23
24
 
24
- sentinel = await Sentinel.create({ config, resolver })
25
+ sentinel = await AbstractSentinel.create({ config, resolver })
25
26
  })
26
27
 
27
28
  it('should output interval results', async () => {
@@ -1 +0,0 @@
1
- {"version":3,"file":"Sentinel.js","sourceRoot":"","sources":["../../src/Sentinel.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Sentinel.js","sourceRoot":"","sources":["../../src/Sentinel.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Sentinel.d.ts","sourceRoot":"","sources":["../../src/Sentinel.ts"],"names":[],"mappings":"AAEA,OAAO,EAAqB,eAAe,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAClG,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EAGjB,oBAAoB,EACrB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAmB,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAKtE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAEhD,MAAM,MAAM,oBAAoB,GAAG,6BAA6B,CAAA;AAChE,eAAO,MAAM,oBAAoB,EAAE,oBAAoD,CAAA;AAEvF,MAAM,MAAM,cAAc,GAAG,qBAAqB,CAAC;IACjD,WAAW,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,CAAA;IACxE,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,CAAA;IACrE,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAA;IACxD,MAAM,EAAE,oBAAoB,CAAA;IAC5B,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;CACrB,CAAC,CAAA;AAEF,qBAAa,QAAS,SAAQ,eAAe,CAAC,cAAc,CAAE,YAAW,cAAc;IACrF,OAAgB,YAAY,EAAE,oBAAoB,CAAA;IAE3C,OAAO,EAAE,eAAe,EAAE,CAAK;IACtC,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,UAAU,CAA8B;WAE1B,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIxF,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE;IAKtB,aAAa;IASb,YAAY;IAQT,OAAO,IAAI,MAAM,EAAE;IAIpB,KAAK,CAAC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,EAAE,OAAO,SAAS,oBAAoB,GAAG,oBAAoB,EACrI,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,UAAU,EAAE,EACvB,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,iBAAiB,CAAC;IAuBtB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE;IAKjC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE;IAKzB,MAAM,CAAC,QAAQ,GAAE,UAAU,EAAO,GAAG,OAAO,CAAC,CAAC,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;IAoB7E,SAAS,CAAC,QAAQ,GAAE,UAAU,EAAO,GAAG,OAAO,CAAC,CAAC,eAAe,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YAUtF,gBAAgB;CAG/B"}