@xyo-network/bridge-wrapper 2.53.19
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/LICENSE +165 -0
- package/README.md +13 -0
- package/dist/cjs/BridgeWrapper.js +78 -0
- package/dist/cjs/BridgeWrapper.js.map +1 -0
- package/dist/cjs/index.js +5 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/docs.json +23187 -0
- package/dist/esm/BridgeWrapper.js +59 -0
- package/dist/esm/BridgeWrapper.js.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/types/BridgeWrapper.d.ts +46 -0
- package/dist/types/BridgeWrapper.d.ts.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -0
- package/package.json +59 -0
- package/src/BridgeWrapper.ts +89 -0
- package/src/index.ts +1 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { assertEx } from '@xylabs/assert';
|
|
2
|
+
import { BridgeConnectQuerySchema, BridgeDisconnectQuerySchema } from '@xyo-network/bridge-model';
|
|
3
|
+
import { ModuleDiscoverQuerySchema, ModuleWrapper, } from '@xyo-network/module';
|
|
4
|
+
import { PayloadWrapper } from '@xyo-network/payload-wrapper';
|
|
5
|
+
export class BridgeWrapper extends ModuleWrapper {
|
|
6
|
+
get targetDownResolver() {
|
|
7
|
+
return this.module.targetDownResolver;
|
|
8
|
+
}
|
|
9
|
+
static tryWrap(module, account) {
|
|
10
|
+
if (module) {
|
|
11
|
+
const missingRequiredQueries = this.missingRequiredQueries(module);
|
|
12
|
+
if (missingRequiredQueries.length > 0) {
|
|
13
|
+
//console.warn(`Missing queries: ${JSON.stringify(missingRequiredQueries, null, 2)}`)
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
return new BridgeWrapper({ account, module: module });
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
static wrap(module, account) {
|
|
21
|
+
return assertEx(this.tryWrap(module, account), 'Unable to wrap module as DivinerWrapper');
|
|
22
|
+
}
|
|
23
|
+
async connect(uri) {
|
|
24
|
+
const queryPayload = PayloadWrapper.parse({ schema: BridgeConnectQuerySchema, uri });
|
|
25
|
+
await this.sendQuery(queryPayload);
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
async disconnect(uri) {
|
|
29
|
+
const queryPayload = PayloadWrapper.parse({ schema: BridgeDisconnectQuerySchema, uri });
|
|
30
|
+
await this.sendQuery(queryPayload);
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
targetConfig(address) {
|
|
34
|
+
return this.module.targetConfig(address);
|
|
35
|
+
}
|
|
36
|
+
async targetDiscover(address) {
|
|
37
|
+
const queryPayload = PayloadWrapper.parse({ schema: ModuleDiscoverQuerySchema });
|
|
38
|
+
return await this.sendTargetQuery(address, queryPayload);
|
|
39
|
+
}
|
|
40
|
+
targetQueries(address) {
|
|
41
|
+
return this.module.targetQueries(address);
|
|
42
|
+
}
|
|
43
|
+
async targetQuery(address, query, payloads) {
|
|
44
|
+
return await this.module.targetQuery(address, query, payloads);
|
|
45
|
+
}
|
|
46
|
+
async targetQueryable(address, query, payloads, queryConfig) {
|
|
47
|
+
return await this.module.targetQueryable(address, query, payloads, queryConfig);
|
|
48
|
+
}
|
|
49
|
+
async targetResolve(address, filter) {
|
|
50
|
+
return await this.module.targetResolve(address, filter);
|
|
51
|
+
}
|
|
52
|
+
async sendTargetQuery(address, queryPayload, payloads) {
|
|
53
|
+
const query = await this.bindQuery(queryPayload, payloads);
|
|
54
|
+
const result = await this.module.targetQuery(address, query[0], query[1]);
|
|
55
|
+
this.throwErrors(query, result);
|
|
56
|
+
return result?.[1];
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=BridgeWrapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BridgeWrapper.js","sourceRoot":"","sources":["../../src/BridgeWrapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { AccountInstance } from '@xyo-network/account-model';
|
|
2
|
+
import { BridgeModule } from '@xyo-network/bridge-model';
|
|
3
|
+
import { Module, ModuleConfig, ModuleFilter, ModuleQueryResult, ModuleWrapper, Query, QueryBoundWitness } from '@xyo-network/module';
|
|
4
|
+
import { Payload } from '@xyo-network/payload-model';
|
|
5
|
+
import { PayloadWrapper } from '@xyo-network/payload-wrapper';
|
|
6
|
+
export declare class BridgeWrapper extends ModuleWrapper<BridgeModule> implements BridgeModule {
|
|
7
|
+
get targetDownResolver(): (address?: string | undefined) => import("@xyo-network/module").ModuleResolver;
|
|
8
|
+
static tryWrap(module?: Module, account?: AccountInstance): BridgeWrapper | undefined;
|
|
9
|
+
static wrap(module?: Module, account?: AccountInstance): BridgeWrapper;
|
|
10
|
+
connect(uri?: string): Promise<boolean>;
|
|
11
|
+
disconnect(uri?: string): Promise<boolean>;
|
|
12
|
+
targetConfig(address: string): ModuleConfig;
|
|
13
|
+
targetDiscover(address: string): Promise<Payload[] | undefined>;
|
|
14
|
+
targetQueries(address: string): string[];
|
|
15
|
+
targetQuery<T extends QueryBoundWitness = QueryBoundWitness>(address: string, query: T, payloads?: Payload[]): Promise<ModuleQueryResult | undefined>;
|
|
16
|
+
targetQueryable(address: string, query: QueryBoundWitness, payloads?: Payload[], queryConfig?: ModuleConfig): Promise<boolean>;
|
|
17
|
+
targetResolve(address: string, filter?: ModuleFilter): Promise<Module<import("@xyo-network/module").ModuleParams<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
18
|
+
name?: string | undefined;
|
|
19
|
+
paging?: Record<string, {
|
|
20
|
+
size?: number | undefined;
|
|
21
|
+
}> | undefined;
|
|
22
|
+
schema: string;
|
|
23
|
+
security?: {
|
|
24
|
+
allowAnonymous?: boolean | undefined;
|
|
25
|
+
allowed?: Record<string, (string | import("@xyo-network/module").CosigningAddressSet)[]> | undefined;
|
|
26
|
+
disallowed?: Record<string, string[]> | undefined;
|
|
27
|
+
} | undefined;
|
|
28
|
+
storeQueries?: boolean | undefined;
|
|
29
|
+
} & Omit<Omit<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
30
|
+
name?: string | undefined;
|
|
31
|
+
paging?: Record<string, {
|
|
32
|
+
size?: number | undefined;
|
|
33
|
+
}> | undefined;
|
|
34
|
+
schema: "network.xyo.module.config";
|
|
35
|
+
security?: {
|
|
36
|
+
allowAnonymous?: boolean | undefined;
|
|
37
|
+
allowed?: Record<string, (string | import("@xyo-network/module").CosigningAddressSet)[]> | undefined;
|
|
38
|
+
disallowed?: Record<string, string[]> | undefined;
|
|
39
|
+
} | undefined;
|
|
40
|
+
storeQueries?: boolean | undefined;
|
|
41
|
+
} & Omit<undefined, "schema">, "schema"> & {
|
|
42
|
+
schema: string;
|
|
43
|
+
}, "schema">, undefined>, import("@xyo-network/module").ModuleEventData>[]>;
|
|
44
|
+
protected sendTargetQuery<T extends Query | PayloadWrapper<Query>>(address: string, queryPayload: T, payloads?: Payload[]): Promise<Payload[] | undefined>;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=BridgeWrapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BridgeWrapper.d.ts","sourceRoot":"","sources":["../../src/BridgeWrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAyD,YAAY,EAAe,MAAM,2BAA2B,CAAA;AAC5H,OAAO,EACL,MAAM,EACN,YAAY,EAGZ,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,KAAK,EACL,iBAAiB,EAClB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAE7D,qBAAa,aAAc,SAAQ,aAAa,CAAC,YAAY,CAAE,YAAW,YAAY;IACpF,IAAI,kBAAkB,mFAErB;WAEe,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,aAAa,GAAG,SAAS;WAW9E,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,aAAa;IAIzE,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMvC,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMhD,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY;IAIrC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;IAKrE,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAIlC,WAAW,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB,EAC/D,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,CAAC,EACR,QAAQ,CAAC,EAAE,OAAO,EAAE,GACnB,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAInC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9H,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;cAI1C,eAAe,CAAC,CAAC,SAAS,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,EACrE,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,CAAC,EACf,QAAQ,CAAC,EAAE,OAAO,EAAE,GACnB,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC;CAMlC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA"}
|
package/package.json
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@xyo-network/bridge-wrapper",
|
|
3
|
+
"author": {
|
|
4
|
+
"email": "support@xyo.network",
|
|
5
|
+
"name": "XYO Development Team",
|
|
6
|
+
"url": "https://xyo.network"
|
|
7
|
+
},
|
|
8
|
+
"bugs": {
|
|
9
|
+
"email": "support@xyo.network",
|
|
10
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
|
|
11
|
+
},
|
|
12
|
+
"dependencies": {
|
|
13
|
+
"@xylabs/assert": "^2.7.6",
|
|
14
|
+
"@xyo-network/account-model": "^2.53.19",
|
|
15
|
+
"@xyo-network/bridge-model": "^2.53.19",
|
|
16
|
+
"@xyo-network/module": "^2.53.19",
|
|
17
|
+
"@xyo-network/payload-model": "^2.53.19",
|
|
18
|
+
"@xyo-network/payload-wrapper": "^2.53.19"
|
|
19
|
+
},
|
|
20
|
+
"devDependencies": {
|
|
21
|
+
"@xylabs/ts-scripts-yarn3": "^2.16.1",
|
|
22
|
+
"@xylabs/tsconfig": "^2.16.1",
|
|
23
|
+
"typescript": "^4.9.5"
|
|
24
|
+
},
|
|
25
|
+
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
26
|
+
"browser": "dist/esm/index.js",
|
|
27
|
+
"docs": "dist/docs.json",
|
|
28
|
+
"exports": {
|
|
29
|
+
".": {
|
|
30
|
+
"node": {
|
|
31
|
+
"import": "./dist/esm/index.js",
|
|
32
|
+
"require": "./dist/cjs/index.js"
|
|
33
|
+
},
|
|
34
|
+
"browser": {
|
|
35
|
+
"import": "./dist/esm/index.js",
|
|
36
|
+
"require": "./dist/cjs/index.js"
|
|
37
|
+
},
|
|
38
|
+
"default": "./dist/esm/index.js"
|
|
39
|
+
},
|
|
40
|
+
"./dist/docs.json": {
|
|
41
|
+
"default": "./dist/docs.json"
|
|
42
|
+
},
|
|
43
|
+
"./package.json": "./package.json"
|
|
44
|
+
},
|
|
45
|
+
"main": "dist/cjs/index.js",
|
|
46
|
+
"module": "dist/esm/index.js",
|
|
47
|
+
"homepage": "https://xyo.network",
|
|
48
|
+
"license": "LGPL-3.0",
|
|
49
|
+
"publishConfig": {
|
|
50
|
+
"access": "public"
|
|
51
|
+
},
|
|
52
|
+
"repository": {
|
|
53
|
+
"type": "git",
|
|
54
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
|
|
55
|
+
},
|
|
56
|
+
"sideEffects": false,
|
|
57
|
+
"types": "dist/types/index.d.ts",
|
|
58
|
+
"version": "2.53.19"
|
|
59
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { assertEx } from '@xylabs/assert'
|
|
2
|
+
import { AccountInstance } from '@xyo-network/account-model'
|
|
3
|
+
import { BridgeConnectQuerySchema, BridgeDisconnectQuerySchema, BridgeModule, BridgeQuery } from '@xyo-network/bridge-model'
|
|
4
|
+
import {
|
|
5
|
+
Module,
|
|
6
|
+
ModuleConfig,
|
|
7
|
+
ModuleDiscoverQuery,
|
|
8
|
+
ModuleDiscoverQuerySchema,
|
|
9
|
+
ModuleFilter,
|
|
10
|
+
ModuleQueryResult,
|
|
11
|
+
ModuleWrapper,
|
|
12
|
+
Query,
|
|
13
|
+
QueryBoundWitness,
|
|
14
|
+
} from '@xyo-network/module'
|
|
15
|
+
import { Payload } from '@xyo-network/payload-model'
|
|
16
|
+
import { PayloadWrapper } from '@xyo-network/payload-wrapper'
|
|
17
|
+
|
|
18
|
+
export class BridgeWrapper extends ModuleWrapper<BridgeModule> implements BridgeModule {
|
|
19
|
+
get targetDownResolver() {
|
|
20
|
+
return this.module.targetDownResolver
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
static override tryWrap(module?: Module, account?: AccountInstance): BridgeWrapper | undefined {
|
|
24
|
+
if (module) {
|
|
25
|
+
const missingRequiredQueries = this.missingRequiredQueries(module)
|
|
26
|
+
if (missingRequiredQueries.length > 0) {
|
|
27
|
+
//console.warn(`Missing queries: ${JSON.stringify(missingRequiredQueries, null, 2)}`)
|
|
28
|
+
} else {
|
|
29
|
+
return new BridgeWrapper({ account, module: module as BridgeModule })
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
static override wrap(module?: Module, account?: AccountInstance): BridgeWrapper {
|
|
35
|
+
return assertEx(this.tryWrap(module, account), 'Unable to wrap module as DivinerWrapper')
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
async connect(uri?: string): Promise<boolean> {
|
|
39
|
+
const queryPayload = PayloadWrapper.parse<BridgeQuery>({ schema: BridgeConnectQuerySchema, uri })
|
|
40
|
+
await this.sendQuery(queryPayload)
|
|
41
|
+
return true
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
async disconnect(uri?: string): Promise<boolean> {
|
|
45
|
+
const queryPayload = PayloadWrapper.parse<BridgeQuery>({ schema: BridgeDisconnectQuerySchema, uri })
|
|
46
|
+
await this.sendQuery(queryPayload)
|
|
47
|
+
return true
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
targetConfig(address: string): ModuleConfig {
|
|
51
|
+
return this.module.targetConfig(address)
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
async targetDiscover(address: string): Promise<Payload[] | undefined> {
|
|
55
|
+
const queryPayload = PayloadWrapper.parse<ModuleDiscoverQuery>({ schema: ModuleDiscoverQuerySchema })
|
|
56
|
+
return await this.sendTargetQuery(address, queryPayload)
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
targetQueries(address: string): string[] {
|
|
60
|
+
return this.module.targetQueries(address)
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
async targetQuery<T extends QueryBoundWitness = QueryBoundWitness>(
|
|
64
|
+
address: string,
|
|
65
|
+
query: T,
|
|
66
|
+
payloads?: Payload[],
|
|
67
|
+
): Promise<ModuleQueryResult | undefined> {
|
|
68
|
+
return await this.module.targetQuery(address, query, payloads)
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
async targetQueryable(address: string, query: QueryBoundWitness, payloads?: Payload[], queryConfig?: ModuleConfig): Promise<boolean> {
|
|
72
|
+
return await this.module.targetQueryable(address, query, payloads, queryConfig)
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
async targetResolve(address: string, filter?: ModuleFilter) {
|
|
76
|
+
return await this.module.targetResolve(address, filter)
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
protected async sendTargetQuery<T extends Query | PayloadWrapper<Query>>(
|
|
80
|
+
address: string,
|
|
81
|
+
queryPayload: T,
|
|
82
|
+
payloads?: Payload[],
|
|
83
|
+
): Promise<Payload[] | undefined> {
|
|
84
|
+
const query = await this.bindQuery(queryPayload, payloads)
|
|
85
|
+
const result = await this.module.targetQuery(address, query[0], query[1])
|
|
86
|
+
this.throwErrors(query, result)
|
|
87
|
+
return result?.[1]
|
|
88
|
+
}
|
|
89
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './BridgeWrapper'
|