@xyo-network/bridge-pub-sub 2.91.3 → 2.92.0-rc.10

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 (107) hide show
  1. package/dist/browser/AsyncQueryBus/AsyncQueryBusBase.d.cts +3 -0
  2. package/dist/browser/AsyncQueryBus/AsyncQueryBusBase.d.cts.map +1 -1
  3. package/dist/browser/AsyncQueryBus/AsyncQueryBusBase.d.mts +3 -0
  4. package/dist/browser/AsyncQueryBus/AsyncQueryBusBase.d.mts.map +1 -1
  5. package/dist/browser/AsyncQueryBus/AsyncQueryBusBase.d.ts +3 -0
  6. package/dist/browser/AsyncQueryBus/AsyncQueryBusBase.d.ts.map +1 -1
  7. package/dist/browser/AsyncQueryBus/AsyncQueryBusHost.d.cts +1 -1
  8. package/dist/browser/AsyncQueryBus/AsyncQueryBusHost.d.mts +1 -1
  9. package/dist/browser/AsyncQueryBus/AsyncQueryBusHost.d.ts +1 -1
  10. package/dist/browser/AsyncQueryBus/ModuleHost/ModuleHost.d.cts +1 -1
  11. package/dist/browser/AsyncQueryBus/ModuleHost/ModuleHost.d.cts.map +1 -1
  12. package/dist/browser/AsyncQueryBus/ModuleHost/ModuleHost.d.mts +1 -1
  13. package/dist/browser/AsyncQueryBus/ModuleHost/ModuleHost.d.mts.map +1 -1
  14. package/dist/browser/AsyncQueryBus/ModuleHost/ModuleHost.d.ts +1 -1
  15. package/dist/browser/AsyncQueryBus/ModuleHost/ModuleHost.d.ts.map +1 -1
  16. package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.cts +1 -1
  17. package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.cts.map +1 -1
  18. package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.mts +1 -1
  19. package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.mts.map +1 -1
  20. package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.ts +1 -1
  21. package/dist/browser/AsyncQueryBus/ModuleProxy/ModuleProxy.d.ts.map +1 -1
  22. package/dist/browser/PubSubBridge.d.cts +8 -18
  23. package/dist/browser/PubSubBridge.d.cts.map +1 -1
  24. package/dist/browser/PubSubBridge.d.mts +8 -18
  25. package/dist/browser/PubSubBridge.d.mts.map +1 -1
  26. package/dist/browser/PubSubBridge.d.ts +8 -18
  27. package/dist/browser/PubSubBridge.d.ts.map +1 -1
  28. package/dist/browser/index.cjs +81 -255
  29. package/dist/browser/index.cjs.map +1 -1
  30. package/dist/browser/index.d.cts +1 -1
  31. package/dist/browser/index.d.cts.map +1 -1
  32. package/dist/browser/index.d.mts +1 -1
  33. package/dist/browser/index.d.mts.map +1 -1
  34. package/dist/browser/index.d.ts +1 -1
  35. package/dist/browser/index.d.ts.map +1 -1
  36. package/dist/browser/index.js +76 -250
  37. package/dist/browser/index.js.map +1 -1
  38. package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.cts +3 -0
  39. package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.cts.map +1 -1
  40. package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.mts +3 -0
  41. package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.mts.map +1 -1
  42. package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.ts +3 -0
  43. package/dist/node/AsyncQueryBus/AsyncQueryBusBase.d.ts.map +1 -1
  44. package/dist/node/AsyncQueryBus/AsyncQueryBusHost.d.cts +1 -1
  45. package/dist/node/AsyncQueryBus/AsyncQueryBusHost.d.mts +1 -1
  46. package/dist/node/AsyncQueryBus/AsyncQueryBusHost.d.ts +1 -1
  47. package/dist/node/AsyncQueryBus/ModuleHost/ModuleHost.d.cts +1 -1
  48. package/dist/node/AsyncQueryBus/ModuleHost/ModuleHost.d.cts.map +1 -1
  49. package/dist/node/AsyncQueryBus/ModuleHost/ModuleHost.d.mts +1 -1
  50. package/dist/node/AsyncQueryBus/ModuleHost/ModuleHost.d.mts.map +1 -1
  51. package/dist/node/AsyncQueryBus/ModuleHost/ModuleHost.d.ts +1 -1
  52. package/dist/node/AsyncQueryBus/ModuleHost/ModuleHost.d.ts.map +1 -1
  53. package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.cts +1 -1
  54. package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.cts.map +1 -1
  55. package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.mts +1 -1
  56. package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.mts.map +1 -1
  57. package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.ts +1 -1
  58. package/dist/node/AsyncQueryBus/ModuleProxy/ModuleProxy.d.ts.map +1 -1
  59. package/dist/node/PubSubBridge.d.cts +8 -18
  60. package/dist/node/PubSubBridge.d.cts.map +1 -1
  61. package/dist/node/PubSubBridge.d.mts +8 -18
  62. package/dist/node/PubSubBridge.d.mts.map +1 -1
  63. package/dist/node/PubSubBridge.d.ts +8 -18
  64. package/dist/node/PubSubBridge.d.ts.map +1 -1
  65. package/dist/node/index.cjs +83 -256
  66. package/dist/node/index.cjs.map +1 -1
  67. package/dist/node/index.d.cts +1 -1
  68. package/dist/node/index.d.cts.map +1 -1
  69. package/dist/node/index.d.mts +1 -1
  70. package/dist/node/index.d.mts.map +1 -1
  71. package/dist/node/index.d.ts +1 -1
  72. package/dist/node/index.d.ts.map +1 -1
  73. package/dist/node/index.js +77 -250
  74. package/dist/node/index.js.map +1 -1
  75. package/package.json +26 -31
  76. package/src/AsyncQueryBus/AsyncQueryBusBase.ts +11 -0
  77. package/src/AsyncQueryBus/AsyncQueryBusHost.ts +19 -19
  78. package/src/AsyncQueryBus/ModuleHost/ModuleHost.ts +1 -1
  79. package/src/AsyncQueryBus/ModuleProxy/ModuleProxy.ts +1 -1
  80. package/src/PubSubBridge.ts +32 -89
  81. package/src/index.ts +1 -1
  82. package/dist/browser/AbstractModuleProxy/AbstractModuleProxy.d.cts +0 -90
  83. package/dist/browser/AbstractModuleProxy/AbstractModuleProxy.d.cts.map +0 -1
  84. package/dist/browser/AbstractModuleProxy/AbstractModuleProxy.d.mts +0 -90
  85. package/dist/browser/AbstractModuleProxy/AbstractModuleProxy.d.mts.map +0 -1
  86. package/dist/browser/AbstractModuleProxy/AbstractModuleProxy.d.ts +0 -90
  87. package/dist/browser/AbstractModuleProxy/AbstractModuleProxy.d.ts.map +0 -1
  88. package/dist/browser/AbstractModuleProxy/index.d.cts +0 -2
  89. package/dist/browser/AbstractModuleProxy/index.d.cts.map +0 -1
  90. package/dist/browser/AbstractModuleProxy/index.d.mts +0 -2
  91. package/dist/browser/AbstractModuleProxy/index.d.mts.map +0 -1
  92. package/dist/browser/AbstractModuleProxy/index.d.ts +0 -2
  93. package/dist/browser/AbstractModuleProxy/index.d.ts.map +0 -1
  94. package/dist/node/AbstractModuleProxy/AbstractModuleProxy.d.cts +0 -90
  95. package/dist/node/AbstractModuleProxy/AbstractModuleProxy.d.cts.map +0 -1
  96. package/dist/node/AbstractModuleProxy/AbstractModuleProxy.d.mts +0 -90
  97. package/dist/node/AbstractModuleProxy/AbstractModuleProxy.d.mts.map +0 -1
  98. package/dist/node/AbstractModuleProxy/AbstractModuleProxy.d.ts +0 -90
  99. package/dist/node/AbstractModuleProxy/AbstractModuleProxy.d.ts.map +0 -1
  100. package/dist/node/AbstractModuleProxy/index.d.cts +0 -2
  101. package/dist/node/AbstractModuleProxy/index.d.cts.map +0 -1
  102. package/dist/node/AbstractModuleProxy/index.d.mts +0 -2
  103. package/dist/node/AbstractModuleProxy/index.d.mts.map +0 -1
  104. package/dist/node/AbstractModuleProxy/index.d.ts +0 -2
  105. package/dist/node/AbstractModuleProxy/index.d.ts.map +0 -1
  106. package/src/AbstractModuleProxy/AbstractModuleProxy.ts +0 -239
  107. package/src/AbstractModuleProxy/index.ts +0 -1
@@ -1,90 +0,0 @@
1
- import { Address } from '@xylabs/hex';
2
- import { Base, BaseParams } from '@xylabs/object';
3
- import { Promisable, PromiseEx } from '@xylabs/promise';
4
- import { AccountInstance } from '@xyo-network/account-model';
5
- import { QueryBoundWitness } from '@xyo-network/boundwitness-model';
6
- import { ModuleManifestPayload } from '@xyo-network/manifest-model';
7
- import { EventAnyListener, EventListener, EventUnsubscribeFunction } from '@xyo-network/module-events';
8
- import { AddressPreviousHashPayload, Module, ModuleDescription, ModuleFilter, ModuleFilterOptions, ModuleInstance, ModuleQueryResult, ModuleResolverInstance } from '@xyo-network/module-model';
9
- import { ModuleError, Payload, Query, WithMeta } from '@xyo-network/payload-model';
10
- export type ModuleProxyParams = BaseParams<{
11
- account: AccountInstance;
12
- moduleAddress: Address;
13
- queries: string[];
14
- }>;
15
- export declare abstract class AbstractModuleProxy<TParams extends ModuleProxyParams = ModuleProxyParams, TWrappedModule extends Module = Module> extends Base<TWrappedModule['params']> implements ModuleInstance<TWrappedModule['params'], TWrappedModule['eventData']> {
16
- static requiredQueries: string[];
17
- eventData: TWrappedModule["eventData"];
18
- protected readonly proxyParams: TParams;
19
- constructor(params: TParams);
20
- get account(): AccountInstance;
21
- get address(): Lowercase<string>;
22
- get config(): import("@xyo-network/payload-model").SchemaFields & object & Omit<{
23
- readonly archivist?: string | undefined;
24
- readonly labels?: import("@xyo-network/module-model").Labels | undefined;
25
- readonly name?: string | undefined;
26
- readonly paging?: Record<string, {
27
- size?: number | undefined;
28
- }> | undefined;
29
- readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
30
- schema: "network.xyo.module.config";
31
- readonly security?: {
32
- readonly allowAnonymous?: boolean | undefined;
33
- readonly allowed?: Record<string, (Lowercase<string> | import("@xyo-network/module-model").CosigningAddressSet)[]> | undefined;
34
- readonly disallowed?: Record<string, Lowercase<string>[]> | undefined;
35
- } | undefined;
36
- readonly sign?: boolean | undefined;
37
- readonly storeQueries?: boolean | undefined;
38
- readonly timestamp?: boolean | undefined;
39
- } & import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/payload-model").SchemaFields & object & {
40
- readonly archivist?: string | undefined;
41
- readonly labels?: import("@xyo-network/module-model").Labels | undefined;
42
- readonly name?: string | undefined;
43
- readonly paging?: Record<string, {
44
- size?: number | undefined;
45
- }> | undefined;
46
- readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
47
- schema: "network.xyo.module.config";
48
- readonly security?: {
49
- readonly allowAnonymous?: boolean | undefined;
50
- readonly allowed?: Record<string, (Lowercase<string> | import("@xyo-network/module-model").CosigningAddressSet)[]> | undefined;
51
- readonly disallowed?: Record<string, Lowercase<string>[]> | undefined;
52
- } | undefined;
53
- readonly sign?: boolean | undefined;
54
- readonly storeQueries?: boolean | undefined;
55
- readonly timestamp?: boolean | undefined;
56
- }, "schema"> & {
57
- schema: string;
58
- };
59
- get downResolver(): ModuleResolverInstance;
60
- get id(): Lowercase<string>;
61
- get queries(): string[];
62
- get upResolver(): ModuleResolverInstance;
63
- static hasRequiredQueries(module: Module): boolean;
64
- static missingRequiredQueries(module: Module): string[];
65
- addressPreviousHash(): Promise<AddressPreviousHashPayload>;
66
- clearListeners(_eventNames: Parameters<TWrappedModule['clearListeners']>[0]): void;
67
- describe(): Promise<ModuleDescription>;
68
- discover(): Promise<Payload[]>;
69
- emit(_eventName: Parameters<TWrappedModule['emit']>[0], _eventArgs: Parameters<TWrappedModule['emit']>[1]): Promise<void>;
70
- emitSerial(_eventName: Parameters<TWrappedModule['emitSerial']>[0], _eventArgs: Parameters<TWrappedModule['emitSerial']>[1]): Promise<void>;
71
- listenerCount(_eventNames: Parameters<TWrappedModule['listenerCount']>[0]): number;
72
- manifest(maxDepth?: number): Promise<ModuleManifestPayload>;
73
- moduleAddress(): Promise<AddressPreviousHashPayload[]>;
74
- off<TEventName extends keyof TWrappedModule['eventData']>(_eventNames: TEventName, _listener: EventListener<TWrappedModule['eventData'][TEventName]>): void;
75
- offAny(_listener: EventAnyListener): void;
76
- on<TEventName extends keyof TWrappedModule['eventData']>(_eventNames: TEventName, _listener: EventListener<TWrappedModule['eventData'][TEventName]>): EventUnsubscribeFunction;
77
- onAny(_listener: EventAnyListener): EventUnsubscribeFunction;
78
- once<TEventName extends keyof TWrappedModule['eventData']>(_eventName: TEventName, _listener: EventListener<TWrappedModule['eventData'][TEventName]>): EventUnsubscribeFunction;
79
- previousHash(): Promise<string | undefined>;
80
- queryable<T extends QueryBoundWitness = QueryBoundWitness>(_query: T, _payloads?: Payload[]): boolean;
81
- resolve(filter?: ModuleFilter | undefined, options?: ModuleFilterOptions<ModuleInstance> | undefined): Promisable<ModuleInstance[]>;
82
- resolve(nameOrAddress: string, options?: ModuleFilterOptions<ModuleInstance> | undefined): Promisable<ModuleInstance | undefined>;
83
- state(): never[];
84
- protected bindQuery<T extends Query>(query: T, payloads?: Payload[], account?: AccountInstance | undefined): PromiseEx<[QueryBoundWitness, Payload[], ModuleError[]], AccountInstance>;
85
- protected bindQueryInternal<T extends Query>(query: T, payloads?: Payload[], account?: AccountInstance | undefined): Promise<[QueryBoundWitness, Payload[], ModuleError[]]>;
86
- protected filterErrors(result: ModuleQueryResult): Promise<ModuleError[]>;
87
- protected sendQuery<T extends Query, P extends Payload = Payload, R extends Payload = Payload>(queryPayload: T, payloads?: P[]): Promise<WithMeta<R>[]>;
88
- abstract query<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryResult>;
89
- }
90
- //# sourceMappingURL=AbstractModuleProxy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AbstractModuleProxy.d.ts","sourceRoot":"","sources":["../../../src/AbstractModuleProxy/AbstractModuleProxy.ts"],"names":[],"mappings":"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"}
@@ -1,90 +0,0 @@
1
- import { Address } from '@xylabs/hex';
2
- import { Base, BaseParams } from '@xylabs/object';
3
- import { Promisable, PromiseEx } from '@xylabs/promise';
4
- import { AccountInstance } from '@xyo-network/account-model';
5
- import { QueryBoundWitness } from '@xyo-network/boundwitness-model';
6
- import { ModuleManifestPayload } from '@xyo-network/manifest-model';
7
- import { EventAnyListener, EventListener, EventUnsubscribeFunction } from '@xyo-network/module-events';
8
- import { AddressPreviousHashPayload, Module, ModuleDescription, ModuleFilter, ModuleFilterOptions, ModuleInstance, ModuleQueryResult, ModuleResolverInstance } from '@xyo-network/module-model';
9
- import { ModuleError, Payload, Query, WithMeta } from '@xyo-network/payload-model';
10
- export type ModuleProxyParams = BaseParams<{
11
- account: AccountInstance;
12
- moduleAddress: Address;
13
- queries: string[];
14
- }>;
15
- export declare abstract class AbstractModuleProxy<TParams extends ModuleProxyParams = ModuleProxyParams, TWrappedModule extends Module = Module> extends Base<TWrappedModule['params']> implements ModuleInstance<TWrappedModule['params'], TWrappedModule['eventData']> {
16
- static requiredQueries: string[];
17
- eventData: TWrappedModule["eventData"];
18
- protected readonly proxyParams: TParams;
19
- constructor(params: TParams);
20
- get account(): AccountInstance;
21
- get address(): Lowercase<string>;
22
- get config(): import("@xyo-network/payload-model").SchemaFields & object & Omit<{
23
- readonly archivist?: string | undefined;
24
- readonly labels?: import("@xyo-network/module-model").Labels | undefined;
25
- readonly name?: string | undefined;
26
- readonly paging?: Record<string, {
27
- size?: number | undefined;
28
- }> | undefined;
29
- readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
30
- schema: "network.xyo.module.config";
31
- readonly security?: {
32
- readonly allowAnonymous?: boolean | undefined;
33
- readonly allowed?: Record<string, (Lowercase<string> | import("@xyo-network/module-model").CosigningAddressSet)[]> | undefined;
34
- readonly disallowed?: Record<string, Lowercase<string>[]> | undefined;
35
- } | undefined;
36
- readonly sign?: boolean | undefined;
37
- readonly storeQueries?: boolean | undefined;
38
- readonly timestamp?: boolean | undefined;
39
- } & import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/payload-model").SchemaFields & object & {
40
- readonly archivist?: string | undefined;
41
- readonly labels?: import("@xyo-network/module-model").Labels | undefined;
42
- readonly name?: string | undefined;
43
- readonly paging?: Record<string, {
44
- size?: number | undefined;
45
- }> | undefined;
46
- readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
47
- schema: "network.xyo.module.config";
48
- readonly security?: {
49
- readonly allowAnonymous?: boolean | undefined;
50
- readonly allowed?: Record<string, (Lowercase<string> | import("@xyo-network/module-model").CosigningAddressSet)[]> | undefined;
51
- readonly disallowed?: Record<string, Lowercase<string>[]> | undefined;
52
- } | undefined;
53
- readonly sign?: boolean | undefined;
54
- readonly storeQueries?: boolean | undefined;
55
- readonly timestamp?: boolean | undefined;
56
- }, "schema"> & {
57
- schema: string;
58
- };
59
- get downResolver(): ModuleResolverInstance;
60
- get id(): Lowercase<string>;
61
- get queries(): string[];
62
- get upResolver(): ModuleResolverInstance;
63
- static hasRequiredQueries(module: Module): boolean;
64
- static missingRequiredQueries(module: Module): string[];
65
- addressPreviousHash(): Promise<AddressPreviousHashPayload>;
66
- clearListeners(_eventNames: Parameters<TWrappedModule['clearListeners']>[0]): void;
67
- describe(): Promise<ModuleDescription>;
68
- discover(): Promise<Payload[]>;
69
- emit(_eventName: Parameters<TWrappedModule['emit']>[0], _eventArgs: Parameters<TWrappedModule['emit']>[1]): Promise<void>;
70
- emitSerial(_eventName: Parameters<TWrappedModule['emitSerial']>[0], _eventArgs: Parameters<TWrappedModule['emitSerial']>[1]): Promise<void>;
71
- listenerCount(_eventNames: Parameters<TWrappedModule['listenerCount']>[0]): number;
72
- manifest(maxDepth?: number): Promise<ModuleManifestPayload>;
73
- moduleAddress(): Promise<AddressPreviousHashPayload[]>;
74
- off<TEventName extends keyof TWrappedModule['eventData']>(_eventNames: TEventName, _listener: EventListener<TWrappedModule['eventData'][TEventName]>): void;
75
- offAny(_listener: EventAnyListener): void;
76
- on<TEventName extends keyof TWrappedModule['eventData']>(_eventNames: TEventName, _listener: EventListener<TWrappedModule['eventData'][TEventName]>): EventUnsubscribeFunction;
77
- onAny(_listener: EventAnyListener): EventUnsubscribeFunction;
78
- once<TEventName extends keyof TWrappedModule['eventData']>(_eventName: TEventName, _listener: EventListener<TWrappedModule['eventData'][TEventName]>): EventUnsubscribeFunction;
79
- previousHash(): Promise<string | undefined>;
80
- queryable<T extends QueryBoundWitness = QueryBoundWitness>(_query: T, _payloads?: Payload[]): boolean;
81
- resolve(filter?: ModuleFilter | undefined, options?: ModuleFilterOptions<ModuleInstance> | undefined): Promisable<ModuleInstance[]>;
82
- resolve(nameOrAddress: string, options?: ModuleFilterOptions<ModuleInstance> | undefined): Promisable<ModuleInstance | undefined>;
83
- state(): never[];
84
- protected bindQuery<T extends Query>(query: T, payloads?: Payload[], account?: AccountInstance | undefined): PromiseEx<[QueryBoundWitness, Payload[], ModuleError[]], AccountInstance>;
85
- protected bindQueryInternal<T extends Query>(query: T, payloads?: Payload[], account?: AccountInstance | undefined): Promise<[QueryBoundWitness, Payload[], ModuleError[]]>;
86
- protected filterErrors(result: ModuleQueryResult): Promise<ModuleError[]>;
87
- protected sendQuery<T extends Query, P extends Payload = Payload, R extends Payload = Payload>(queryPayload: T, payloads?: P[]): Promise<WithMeta<R>[]>;
88
- abstract query<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryResult>;
89
- }
90
- //# sourceMappingURL=AbstractModuleProxy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AbstractModuleProxy.d.ts","sourceRoot":"","sources":["../../../src/AbstractModuleProxy/AbstractModuleProxy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAE5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAEnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AACtG,OAAO,EACL,0BAA0B,EAE1B,MAAM,EAMN,iBAAiB,EAGjB,YAAY,EACZ,mBAAmB,EACnB,cAAc,EAGd,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,WAAW,EAAqB,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAErG,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC;IACzC,OAAO,EAAE,eAAe,CAAA;IACxB,aAAa,EAAE,OAAO,CAAA;IACtB,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB,CAAC,CAAA;AAEF,8BAAsB,mBAAmB,CAAC,OAAO,SAAS,iBAAiB,GAAG,iBAAiB,EAAE,cAAc,SAAS,MAAM,GAAG,MAAM,CACrI,SAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CACrC,YAAW,cAAc,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;IAEhF,MAAM,CAAC,eAAe,EAAE,MAAM,EAAE,CAA8B;IAE9D,SAAS,8BAAoC;IAE7C,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;gBAE3B,MAAM,EAAE,OAAO;IAK3B,IAAI,OAAO,oBAEV;IAED,IAAI,OAAO,sBAEV;IAED,IAAI,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAET;IAED,IAAI,YAAY,IAAI,sBAAsB,CAEzC;IAED,IAAI,EAAE,sBAEL;IAED,IAAI,OAAO,IAAI,MAAM,EAAE,CAEtB;IAED,IAAI,UAAU,IAAI,sBAAsB,CAEvC;IAED,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM;IAIxC,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE;IASjD,mBAAmB,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAQhE,cAAc,CAAC,WAAW,EAAE,UAAU,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IAKrE,QAAQ,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAKtC,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAKpC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzH,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3I,aAAa,CAAC,WAAW,EAAE,UAAU,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM;IAI5E,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAK3D,aAAa,IAAI,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAK5D,GAAG,CAAC,UAAU,SAAS,MAAM,cAAc,CAAC,WAAW,CAAC,EACtD,WAAW,EAAE,UAAU,EACvB,SAAS,EAAE,aAAa,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC;IAKnE,MAAM,CAAC,SAAS,EAAE,gBAAgB;IAIlC,EAAE,CAAC,UAAU,SAAS,MAAM,cAAc,CAAC,WAAW,CAAC,EACrD,WAAW,EAAE,UAAU,EACvB,SAAS,EAAE,aAAa,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC,GAChE,wBAAwB;IAI3B,KAAK,CAAC,SAAS,EAAE,gBAAgB,GAAG,wBAAwB;IAI5D,IAAI,CAAC,UAAU,SAAS,MAAM,cAAc,CAAC,WAAW,CAAC,EACvD,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,CAAC,GAChE,wBAAwB;IAIrB,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAKjD,SAAS,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE;IAI3F,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,mBAAmB,CAAC,cAAc,CAAC,GAAG,SAAS,GAAG,UAAU,CAAC,cAAc,EAAE,CAAC;IACnI,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,CAAC,cAAc,CAAC,GAAG,SAAS,GAAG,UAAU,CAAC,cAAc,GAAG,SAAS,CAAC;IAKjI,KAAK;IAIL,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,KAAK,EACjC,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,OAAO,EAAE,EACpB,OAAO,GAAE,eAAe,GAAG,SAAwB,GAClD,SAAS,CAAC,CAAC,iBAAiB,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,eAAe,CAAC;cAU5D,iBAAiB,CAAC,CAAC,SAAS,KAAK,EAC/C,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,OAAO,EAAE,EACpB,OAAO,GAAE,eAAe,GAAG,SAAwB,GAClD,OAAO,CAAC,CAAC,iBAAiB,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;cAMzC,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;cAK/D,SAAS,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC,SAAS,OAAO,GAAG,OAAO,EAAE,CAAC,SAAS,OAAO,GAAG,OAAO,EACjG,YAAY,EAAE,CAAC,EACf,QAAQ,CAAC,EAAE,CAAC,EAAE,GACb,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAiBzB,QAAQ,CAAC,KAAK,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAC5H"}
@@ -1,2 +0,0 @@
1
- export * from './AbstractModuleProxy';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/AbstractModuleProxy/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from './AbstractModuleProxy';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/AbstractModuleProxy/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from './AbstractModuleProxy';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/AbstractModuleProxy/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA"}
@@ -1,239 +0,0 @@
1
- import { assertEx } from '@xylabs/assert'
2
- import { Address } from '@xylabs/hex'
3
- import { compact } from '@xylabs/lodash'
4
- import { Base, BaseParams } from '@xylabs/object'
5
- import { Promisable, PromiseEx } from '@xylabs/promise'
6
- import { AccountInstance } from '@xyo-network/account-model'
7
- import { QueryBoundWitnessBuilder } from '@xyo-network/boundwitness-builder'
8
- import { QueryBoundWitness } from '@xyo-network/boundwitness-model'
9
- import { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'
10
- import { ModuleManifestPayload } from '@xyo-network/manifest-model'
11
- import { EventAnyListener, EventListener, EventUnsubscribeFunction } from '@xyo-network/module-events'
12
- import {
13
- AddressPreviousHashPayload,
14
- AddressPreviousHashSchema,
15
- Module,
16
- ModuleAddressQuery,
17
- ModuleAddressQuerySchema,
18
- ModuleConfigSchema,
19
- ModuleDescribeQuery,
20
- ModuleDescribeQuerySchema,
21
- ModuleDescription,
22
- ModuleDiscoverQuery,
23
- ModuleDiscoverQuerySchema,
24
- ModuleFilter,
25
- ModuleFilterOptions,
26
- ModuleInstance,
27
- ModuleManifestQuery,
28
- ModuleManifestQuerySchema,
29
- ModuleQueryResult,
30
- ModuleResolverInstance,
31
- } from '@xyo-network/module-model'
32
- import { ModuleError, ModuleErrorSchema, Payload, Query, WithMeta } from '@xyo-network/payload-model'
33
-
34
- export type ModuleProxyParams = BaseParams<{
35
- account: AccountInstance
36
- moduleAddress: Address
37
- queries: string[]
38
- }>
39
-
40
- export abstract class AbstractModuleProxy<TParams extends ModuleProxyParams = ModuleProxyParams, TWrappedModule extends Module = Module>
41
- extends Base<TWrappedModule['params']>
42
- implements ModuleInstance<TWrappedModule['params'], TWrappedModule['eventData']>
43
- {
44
- static requiredQueries: string[] = [ModuleDiscoverQuerySchema]
45
-
46
- eventData = {} as TWrappedModule['eventData']
47
-
48
- protected readonly proxyParams: TParams
49
-
50
- constructor(params: TParams) {
51
- super({ config: { schema: ModuleConfigSchema } })
52
- this.proxyParams = params
53
- }
54
-
55
- get account() {
56
- return this.proxyParams.account
57
- }
58
-
59
- get address() {
60
- return this.proxyParams.moduleAddress
61
- }
62
-
63
- get config() {
64
- return this.params.config
65
- }
66
-
67
- get downResolver(): ModuleResolverInstance {
68
- throw new Error('Unsupported')
69
- }
70
-
71
- get id() {
72
- return this.proxyParams.moduleAddress
73
- }
74
-
75
- get queries(): string[] {
76
- return this.proxyParams.queries
77
- }
78
-
79
- get upResolver(): ModuleResolverInstance {
80
- throw new Error('Unsupported')
81
- }
82
-
83
- static hasRequiredQueries(module: Module) {
84
- return this.missingRequiredQueries(module).length === 0
85
- }
86
-
87
- static missingRequiredQueries(module: Module): string[] {
88
- const moduleQueries = module.queries
89
- return compact(
90
- this.requiredQueries.map((query) => {
91
- return moduleQueries.includes(query) ? null : query
92
- }),
93
- )
94
- }
95
-
96
- async addressPreviousHash(): Promise<AddressPreviousHashPayload> {
97
- const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }
98
- return assertEx(
99
- (await this.sendQuery(queryPayload)).find((payload) => payload.schema === AddressPreviousHashSchema) as WithMeta<AddressPreviousHashPayload>,
100
- 'Result did not include correct payload',
101
- )
102
- }
103
-
104
- clearListeners(_eventNames: Parameters<TWrappedModule['clearListeners']>[0]) {
105
- throw new Error('Unsupported')
106
- }
107
-
108
- //TODO: Make ModuleDescription into real payload
109
- async describe(): Promise<ModuleDescription> {
110
- const queryPayload: ModuleDescribeQuery = { schema: ModuleDescribeQuerySchema }
111
- return (await this.sendQuery(queryPayload))[0] as unknown as ModuleDescription
112
- }
113
-
114
- async discover(): Promise<Payload[]> {
115
- const queryPayload: ModuleDiscoverQuery = { schema: ModuleDiscoverQuerySchema }
116
- return await this.sendQuery(queryPayload)
117
- }
118
-
119
- emit(_eventName: Parameters<TWrappedModule['emit']>[0], _eventArgs: Parameters<TWrappedModule['emit']>[1]): Promise<void> {
120
- throw new Error('Unsupported')
121
- }
122
-
123
- emitSerial(_eventName: Parameters<TWrappedModule['emitSerial']>[0], _eventArgs: Parameters<TWrappedModule['emitSerial']>[1]): Promise<void> {
124
- throw new Error('Unsupported')
125
- }
126
-
127
- listenerCount(_eventNames: Parameters<TWrappedModule['listenerCount']>[0]): number {
128
- throw new Error('Unsupported')
129
- }
130
-
131
- async manifest(maxDepth?: number): Promise<ModuleManifestPayload> {
132
- const queryPayload: ModuleManifestQuery = { schema: ModuleManifestQuerySchema, ...(maxDepth === undefined ? {} : { maxDepth }) }
133
- return (await this.sendQuery(queryPayload))[0] as WithMeta<ModuleManifestPayload>
134
- }
135
-
136
- async moduleAddress(): Promise<AddressPreviousHashPayload[]> {
137
- const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }
138
- return (await this.sendQuery(queryPayload)) as WithMeta<AddressPreviousHashPayload>[]
139
- }
140
-
141
- off<TEventName extends keyof TWrappedModule['eventData']>(
142
- _eventNames: TEventName,
143
- _listener: EventListener<TWrappedModule['eventData'][TEventName]>,
144
- ) {
145
- throw new Error('Unsupported')
146
- }
147
-
148
- offAny(_listener: EventAnyListener) {
149
- throw new Error('Unsupported')
150
- }
151
-
152
- on<TEventName extends keyof TWrappedModule['eventData']>(
153
- _eventNames: TEventName,
154
- _listener: EventListener<TWrappedModule['eventData'][TEventName]>,
155
- ): EventUnsubscribeFunction {
156
- throw new Error('Unsupported')
157
- }
158
-
159
- onAny(_listener: EventAnyListener): EventUnsubscribeFunction {
160
- throw new Error('Unsupported')
161
- }
162
-
163
- once<TEventName extends keyof TWrappedModule['eventData']>(
164
- _eventName: TEventName,
165
- _listener: EventListener<TWrappedModule['eventData'][TEventName]>,
166
- ): EventUnsubscribeFunction {
167
- throw new Error('Unsupported')
168
- }
169
-
170
- async previousHash(): Promise<string | undefined> {
171
- const queryPayload: ModuleAddressQuery = { schema: ModuleAddressQuerySchema }
172
- return ((await this.sendQuery(queryPayload)).pop() as WithMeta<AddressPreviousHashPayload>).previousHash
173
- }
174
-
175
- queryable<T extends QueryBoundWitness = QueryBoundWitness>(_query: T, _payloads?: Payload[]) {
176
- return true
177
- }
178
-
179
- resolve(filter?: ModuleFilter | undefined, options?: ModuleFilterOptions<ModuleInstance> | undefined): Promisable<ModuleInstance[]>
180
- resolve(nameOrAddress: string, options?: ModuleFilterOptions<ModuleInstance> | undefined): Promisable<ModuleInstance | undefined>
181
- resolve(nameOrAddressOrFilter?: string | ModuleFilter, _options?: unknown): Promisable<ModuleInstance | ModuleInstance[] | undefined> | undefined {
182
- return typeof nameOrAddressOrFilter === 'string' ? undefined : []
183
- }
184
-
185
- state() {
186
- return []
187
- }
188
-
189
- protected bindQuery<T extends Query>(
190
- query: T,
191
- payloads?: Payload[],
192
- account: AccountInstance | undefined = this.account,
193
- ): PromiseEx<[QueryBoundWitness, Payload[], ModuleError[]], AccountInstance> {
194
- // eslint-disable-next-line @typescript-eslint/no-misused-promises
195
- const promise = new PromiseEx<[QueryBoundWitness, Payload[], ModuleError[]], AccountInstance>(async (resolve) => {
196
- const result = await this.bindQueryInternal(query, payloads, account)
197
- resolve?.(result)
198
- return result
199
- }, account)
200
- return promise
201
- }
202
-
203
- protected async bindQueryInternal<T extends Query>(
204
- query: T,
205
- payloads?: Payload[],
206
- account: AccountInstance | undefined = this.account,
207
- ): Promise<[QueryBoundWitness, Payload[], ModuleError[]]> {
208
- const builder = await new QueryBoundWitnessBuilder().payloads(payloads).query(query)
209
- const result = await (account ? builder.witness(account) : builder).build()
210
- return result
211
- }
212
-
213
- protected async filterErrors(result: ModuleQueryResult): Promise<ModuleError[]> {
214
- const wrapper = await BoundWitnessWrapper.wrap(result[0], result[1])
215
- return wrapper.payloadsBySchema<WithMeta<ModuleError>>(ModuleErrorSchema)
216
- }
217
-
218
- protected async sendQuery<T extends Query, P extends Payload = Payload, R extends Payload = Payload>(
219
- queryPayload: T,
220
- payloads?: P[],
221
- ): Promise<WithMeta<R>[]> {
222
- // Bind them
223
- const query = await this.bindQuery(queryPayload, payloads)
224
-
225
- // Send them off
226
- const [, resultPayloads, errors] = await this.query(query[0], query[1])
227
-
228
- /* TODO: Figure out what to do with the returning BW. Should we store them in a queue in case the caller wants to see them? */
229
-
230
- if (errors && errors.length > 0) {
231
- /* TODO: Figure out how to rollup multiple Errors */
232
- throw errors[0]
233
- }
234
-
235
- return resultPayloads as WithMeta<R>[]
236
- }
237
-
238
- abstract query<T extends QueryBoundWitness = QueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryResult>
239
- }
@@ -1 +0,0 @@
1
- export * from './AbstractModuleProxy'