@xyo-network/module-abstract 2.53.1 → 2.53.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/AbstractModule.js +2 -2
- package/dist/cjs/AbstractModule.js.map +1 -1
- package/dist/cjs/Error.js +1 -1
- package/dist/cjs/Error.js.map +1 -1
- package/dist/cjs/ModuleWrapper.js.map +1 -1
- package/dist/cjs/Query/QueryBoundWitnessWrapper.js.map +1 -1
- package/dist/cjs/QueryValidator/SupportedQueryValidator.js.map +1 -1
- package/dist/docs.json +3641 -3519
- package/dist/esm/AbstractModule.js +3 -3
- package/dist/esm/AbstractModule.js.map +1 -1
- package/dist/esm/Error.js +2 -2
- package/dist/esm/Error.js.map +1 -1
- package/dist/esm/ModuleWrapper.js.map +1 -1
- package/dist/esm/Query/QueryBoundWitnessWrapper.js.map +1 -1
- package/dist/esm/QueryValidator/SupportedQueryValidator.js.map +1 -1
- package/dist/types/AbstractModule.d.ts +10 -10
- package/dist/types/AbstractModule.d.ts.map +1 -1
- package/dist/types/Error.d.ts +4 -4
- package/dist/types/Error.d.ts.map +1 -1
- package/dist/types/ModuleWrapper.d.ts +10 -10
- package/dist/types/ModuleWrapper.d.ts.map +1 -1
- package/dist/types/Query/QueryBoundWitnessWrapper.d.ts +2 -2
- package/dist/types/Query/QueryBoundWitnessWrapper.d.ts.map +1 -1
- package/dist/types/QueryValidator/QueryValidator.d.ts +2 -2
- package/dist/types/QueryValidator/QueryValidator.d.ts.map +1 -1
- package/dist/types/QueryValidator/SupportedQueryValidator.d.ts +4 -4
- package/dist/types/QueryValidator/SupportedQueryValidator.d.ts.map +1 -1
- package/package.json +18 -18
- package/src/AbstractModule.ts +17 -17
- package/src/Error.ts +4 -4
- package/src/ModuleWrapper.ts +13 -13
- package/src/Query/QueryBoundWitnessWrapper.ts +2 -2
- package/src/QueryValidator/QueryValidator.ts +2 -2
- package/src/QueryValidator/SupportedQueryValidator.ts +2 -2
package/src/ModuleWrapper.ts
CHANGED
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
XyoQuery,
|
|
16
16
|
XyoQueryBoundWitness,
|
|
17
17
|
} from '@xyo-network/module-model'
|
|
18
|
-
import {
|
|
18
|
+
import { Payload } from '@xyo-network/payload-model'
|
|
19
19
|
import { PayloadWrapper } from '@xyo-network/payload-wrapper'
|
|
20
20
|
import { Promisable, PromiseEx } from '@xyo-network/promise'
|
|
21
21
|
import compact from 'lodash/compact'
|
|
@@ -26,7 +26,7 @@ import { QueryBoundWitnessBuilder, QueryBoundWitnessWrapper } from './Query'
|
|
|
26
26
|
|
|
27
27
|
export interface WrapperError extends Error {
|
|
28
28
|
errors: (XyoError | null)[]
|
|
29
|
-
query: [XyoQueryBoundWitness,
|
|
29
|
+
query: [XyoQueryBoundWitness, Payload[]]
|
|
30
30
|
result: ModuleQueryResult | undefined
|
|
31
31
|
}
|
|
32
32
|
|
|
@@ -152,7 +152,7 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
|
|
|
152
152
|
return description
|
|
153
153
|
}
|
|
154
154
|
|
|
155
|
-
discover(): Promise<
|
|
155
|
+
discover(): Promise<Payload[]> {
|
|
156
156
|
const queryPayload = PayloadWrapper.parse<ModuleDiscoverQuery>({ schema: ModuleDiscoverQuerySchema })
|
|
157
157
|
return this.sendQuery(queryPayload)
|
|
158
158
|
}
|
|
@@ -195,11 +195,11 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
|
|
|
195
195
|
return this.module.once(eventName, listener)
|
|
196
196
|
}
|
|
197
197
|
|
|
198
|
-
async query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness>(query: T, payloads?:
|
|
198
|
+
async query<T extends XyoQueryBoundWitness = XyoQueryBoundWitness>(query: T, payloads?: Payload[]): Promise<ModuleQueryResult> {
|
|
199
199
|
return await this.module.query(query, payloads)
|
|
200
200
|
}
|
|
201
201
|
|
|
202
|
-
queryable<T extends XyoQueryBoundWitness = XyoQueryBoundWitness>(query: T, payloads?:
|
|
202
|
+
queryable<T extends XyoQueryBoundWitness = XyoQueryBoundWitness>(query: T, payloads?: Payload[]) {
|
|
203
203
|
return this.module.queryable(query, payloads)
|
|
204
204
|
}
|
|
205
205
|
|
|
@@ -260,10 +260,10 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
|
|
|
260
260
|
|
|
261
261
|
protected bindQuery<T extends XyoQuery | PayloadWrapper<XyoQuery>>(
|
|
262
262
|
query: T,
|
|
263
|
-
payloads?:
|
|
263
|
+
payloads?: Payload[],
|
|
264
264
|
account: AccountInstance | undefined = this.account,
|
|
265
|
-
): PromiseEx<[XyoQueryBoundWitness,
|
|
266
|
-
const promise = new PromiseEx<[XyoQueryBoundWitness,
|
|
265
|
+
): PromiseEx<[XyoQueryBoundWitness, Payload[]], AccountInstance> {
|
|
266
|
+
const promise = new PromiseEx<[XyoQueryBoundWitness, Payload[]], AccountInstance>((resolve) => {
|
|
267
267
|
const result = this.bindQueryInternal(query, payloads, account)
|
|
268
268
|
resolve?.(result)
|
|
269
269
|
return result
|
|
@@ -273,15 +273,15 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
|
|
|
273
273
|
|
|
274
274
|
protected bindQueryInternal<T extends XyoQuery | PayloadWrapper<XyoQuery>>(
|
|
275
275
|
query: T,
|
|
276
|
-
payloads?:
|
|
276
|
+
payloads?: Payload[],
|
|
277
277
|
account: AccountInstance | undefined = this.account,
|
|
278
|
-
): [XyoQueryBoundWitness,
|
|
278
|
+
): [XyoQueryBoundWitness, Payload[]] {
|
|
279
279
|
const builder = new QueryBoundWitnessBuilder().payloads(payloads).query(query)
|
|
280
280
|
const result = (account ? builder.witness(account) : builder).build()
|
|
281
281
|
return result
|
|
282
282
|
}
|
|
283
283
|
|
|
284
|
-
protected filterErrors(query: [XyoQueryBoundWitness,
|
|
284
|
+
protected filterErrors(query: [XyoQueryBoundWitness, Payload[]], result: ModuleQueryResult | undefined): (XyoError | null)[] {
|
|
285
285
|
return (result?.[1]?.filter((payload) => {
|
|
286
286
|
if (payload?.schema === XyoErrorSchema) {
|
|
287
287
|
const wrapper = new QueryBoundWitnessWrapper(query[0])
|
|
@@ -291,7 +291,7 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
|
|
|
291
291
|
}) ?? []) as XyoError[]
|
|
292
292
|
}
|
|
293
293
|
|
|
294
|
-
protected async sendQuery<T extends XyoQuery | PayloadWrapper<XyoQuery>>(queryPayload: T, payloads?:
|
|
294
|
+
protected async sendQuery<T extends XyoQuery | PayloadWrapper<XyoQuery>>(queryPayload: T, payloads?: Payload[]): Promise<Payload[]> {
|
|
295
295
|
//make sure we did not get wrapped payloads
|
|
296
296
|
const unwrappedPayloads = payloads?.map((payload) => assertEx(PayloadWrapper.unwrap(payload), 'Unable to parse payload'))
|
|
297
297
|
const unwrappedQueryPayload = assertEx(BoundWitnessWrapper.unwrap<XyoQueryBoundWitness>(queryPayload), 'Unable to parse queryPayload')
|
|
@@ -306,7 +306,7 @@ export class ModuleWrapper<TWrappedModule extends Module = Module>
|
|
|
306
306
|
return result[1]
|
|
307
307
|
}
|
|
308
308
|
|
|
309
|
-
protected throwErrors(query: [XyoQueryBoundWitness,
|
|
309
|
+
protected throwErrors(query: [XyoQueryBoundWitness, Payload[]], result: ModuleQueryResult | undefined) {
|
|
310
310
|
const errors = this.filterErrors(query, result)
|
|
311
311
|
if (errors?.length > 0) {
|
|
312
312
|
const error: WrapperError = {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { assertEx } from '@xylabs/assert'
|
|
2
2
|
import { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'
|
|
3
3
|
import { XyoQuery, XyoQueryBoundWitness } from '@xyo-network/module-model'
|
|
4
|
-
import {
|
|
4
|
+
import { Payload, PayloadSetPayload } from '@xyo-network/payload-model'
|
|
5
5
|
import { PayloadWrapper } from '@xyo-network/payload-wrapper'
|
|
6
6
|
|
|
7
7
|
import { QueryBoundWitnessValidator } from './QueryBoundWitnessValidator'
|
|
@@ -38,7 +38,7 @@ export class QueryBoundWitnessWrapper<T extends XyoQuery = XyoQuery> extends Bou
|
|
|
38
38
|
)
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
static parseQuery<T extends XyoQuery = XyoQuery>(obj: unknown, payloads?:
|
|
41
|
+
static parseQuery<T extends XyoQuery = XyoQuery>(obj: unknown, payloads?: Payload[]): QueryBoundWitnessWrapper<T> {
|
|
42
42
|
assertEx(!Array.isArray(obj), 'Array can not be converted to QueryBoundWitnessWrapper')
|
|
43
43
|
switch (typeof obj) {
|
|
44
44
|
case 'object': {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { XyoQueryBoundWitness } from '@xyo-network/module-model'
|
|
2
|
-
import {
|
|
2
|
+
import { Payload } from '@xyo-network/payload-model'
|
|
3
3
|
|
|
4
|
-
export type Queryable<T extends XyoQueryBoundWitness = XyoQueryBoundWitness> = (query: T, payloads?:
|
|
4
|
+
export type Queryable<T extends XyoQueryBoundWitness = XyoQueryBoundWitness> = (query: T, payloads?: Payload[]) => boolean
|
|
5
5
|
|
|
6
6
|
export interface QueryValidator<T extends XyoQueryBoundWitness = XyoQueryBoundWitness> {
|
|
7
7
|
queryable: Queryable<T>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Module, ModuleQuery, XyoQueryBoundWitness } from '@xyo-network/module-model'
|
|
2
|
-
import {
|
|
2
|
+
import { Payload } from '@xyo-network/payload-model'
|
|
3
3
|
|
|
4
4
|
import { QueryBoundWitnessWrapper } from '../Query'
|
|
5
5
|
import { Queryable, QueryValidator } from './QueryValidator'
|
|
@@ -7,7 +7,7 @@ import { Queryable, QueryValidator } from './QueryValidator'
|
|
|
7
7
|
export const isQuerySupportedByModule = <T extends XyoQueryBoundWitness = XyoQueryBoundWitness>(
|
|
8
8
|
mod: Module,
|
|
9
9
|
query: T,
|
|
10
|
-
payloads?:
|
|
10
|
+
payloads?: Payload[],
|
|
11
11
|
): boolean => {
|
|
12
12
|
const wrapper = QueryBoundWitnessWrapper.parseQuery<ModuleQuery>(query, payloads)
|
|
13
13
|
const schema = wrapper.query.schema
|