@xyo-network/node-wrapper 3.0.7 → 3.0.8
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/neutral/NodeWrapper.d.ts +40 -0
- package/dist/neutral/NodeWrapper.d.ts.map +1 -0
- package/dist/neutral/index.d.ts +2 -46
- package/dist/neutral/index.d.ts.map +1 -0
- package/dist/neutral/index.mjs.map +1 -1
- package/package.json +10 -10
- package/src/NodeWrapper.ts +10 -4
- package/xy.config.ts +1 -3
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { Address } from '@xylabs/hex';
|
|
2
|
+
import type { AccountInstance } from '@xyo-network/account-model';
|
|
3
|
+
import type { NodeManifestPayload } from '@xyo-network/manifest-model';
|
|
4
|
+
import type { AddressPayload, InstanceTypeCheck, ModuleIdentifier, ModuleQueryResult } from '@xyo-network/module-model';
|
|
5
|
+
import { ModuleWrapper } from '@xyo-network/module-wrapper';
|
|
6
|
+
import type { ChildCertification, ChildCertificationFields, NodeInstance, NodeModule } from '@xyo-network/node-model';
|
|
7
|
+
import { Mutex } from 'async-mutex';
|
|
8
|
+
export declare class NodeWrapper<TWrappedModule extends NodeModule = NodeModule> extends ModuleWrapper<TWrappedModule> implements NodeInstance<TWrappedModule['params']> {
|
|
9
|
+
static instanceIdentityCheck: InstanceTypeCheck<NodeInstance>;
|
|
10
|
+
static moduleIdentityCheck: import("@xyo-network/module-model").ModuleTypeCheck<NodeModule<import("@xylabs/object").BaseParamsFields & {
|
|
11
|
+
account?: import("@xyo-network/account-model").AccountInstance | "random";
|
|
12
|
+
addToResolvers?: boolean;
|
|
13
|
+
additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
|
|
14
|
+
allowNameResolution?: boolean;
|
|
15
|
+
config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & {
|
|
16
|
+
archivist?: string;
|
|
17
|
+
} & {
|
|
18
|
+
schema: "network.xyo.node.config";
|
|
19
|
+
}, "schema"> & {
|
|
20
|
+
schema: string;
|
|
21
|
+
};
|
|
22
|
+
ephemeralQueryAccountEnabled?: boolean;
|
|
23
|
+
moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
|
|
24
|
+
}, import("@xyo-network/node-model").NodeModuleEventData>>;
|
|
25
|
+
static requiredQueries: string[];
|
|
26
|
+
protected _attached?: Address[];
|
|
27
|
+
protected _attachedMutex: Mutex;
|
|
28
|
+
attach(id: ModuleIdentifier, external?: boolean): Promise<Address | undefined>;
|
|
29
|
+
attachQuery(id: ModuleIdentifier, external?: boolean, account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>>;
|
|
30
|
+
attached(): Promise<Address[]>;
|
|
31
|
+
attachedQuery(account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>>;
|
|
32
|
+
certify(id: ModuleIdentifier): Promise<ChildCertificationFields | undefined>;
|
|
33
|
+
certifyQuery(id: ModuleIdentifier, account?: AccountInstance): Promise<ModuleQueryResult<ChildCertification>>;
|
|
34
|
+
detach(id: ModuleIdentifier): Promise<Address | undefined>;
|
|
35
|
+
detachQuery(id: ModuleIdentifier, account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>>;
|
|
36
|
+
manifest(maxDepth?: number): Promise<NodeManifestPayload>;
|
|
37
|
+
registered(): Promise<Address[]>;
|
|
38
|
+
registeredQuery(account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>>;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=NodeWrapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NodeWrapper.d.ts","sourceRoot":"","sources":["../../src/NodeWrapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAEtE,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAEhB,iBAAiB,EAClB,MAAM,2BAA2B,CAAA;AAKlC,OAAO,EAA8B,aAAa,EAAE,MAAM,6BAA6B,CAAA;AACvF,OAAO,KAAK,EACV,kBAAkB,EAClB,wBAAwB,EAKxB,YAAY,EACZ,UAAU,EAEX,MAAM,yBAAyB,CAAA;AAahC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAGnC,qBAAa,WAAW,CAAC,cAAc,SAAS,UAAU,GAAG,UAAU,CACrE,SAAQ,aAAa,CAAC,cAAc,CACpC,YAAW,YAAY,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IACjD,OAAgB,qBAAqB,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAiB;IACvF,OAAgB,mBAAmB;yBAJW,4BAC7C;;mCAED,4BAA0B;;uBACf,4BAA4B,wBAC7B,4BAA4B,8BAA8B,2BAEpE,iCACA,2BAA0B,8BAEZ,4BAA4B,wBAAwB,4BAC7D;qBACD,CAAL;;;;;;;8CAGe,2BAGb;+DAdiD;IAClD,OAAgB,eAAe,WAA4D;IAE3F,SAAS,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAA;IAC/B,SAAS,CAAC,cAAc,QAAc;IAEhC,MAAM,CAAC,EAAE,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAQ9E,WAAW,CAAC,EAAE,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAO5H,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAW9B,aAAa,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAKpF,OAAO,CAAC,EAAE,EAAE,gBAAgB,GAAG,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC;IAM5E,YAAY,CAAC,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IAK7G,MAAM,CAAC,EAAE,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAM1D,WAAW,CAAC,EAAE,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAK/F,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAMlE,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAMhC,eAAe,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;CAI7F"}
|
package/dist/neutral/index.d.ts
CHANGED
|
@@ -1,46 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import * as _xyo_network_module_model from '@xyo-network/module-model';
|
|
4
|
-
import { InstanceTypeCheck, ModuleIdentifier, ModuleQueryResult, AddressPayload } from '@xyo-network/module-model';
|
|
5
|
-
import * as _xyo_network_payload_model from '@xyo-network/payload-model';
|
|
6
|
-
import * as _xylabs_object from '@xylabs/object';
|
|
7
|
-
import { Address } from '@xylabs/hex';
|
|
8
|
-
import { AccountInstance } from '@xyo-network/account-model';
|
|
9
|
-
import { NodeManifestPayload } from '@xyo-network/manifest-model';
|
|
10
|
-
import { ModuleWrapper } from '@xyo-network/module-wrapper';
|
|
11
|
-
import { Mutex } from 'async-mutex';
|
|
12
|
-
|
|
13
|
-
declare class NodeWrapper<TWrappedModule extends NodeModule = NodeModule> extends ModuleWrapper<TWrappedModule> implements NodeInstance<TWrappedModule['params']> {
|
|
14
|
-
static instanceIdentityCheck: InstanceTypeCheck<NodeInstance>;
|
|
15
|
-
static moduleIdentityCheck: _xyo_network_module_model.ModuleTypeCheck<NodeModule<_xylabs_object.BaseParamsFields & {
|
|
16
|
-
account?: AccountInstance | "random";
|
|
17
|
-
addToResolvers?: boolean;
|
|
18
|
-
additionalSigners?: AccountInstance[];
|
|
19
|
-
allowNameResolution?: boolean;
|
|
20
|
-
config: _xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & Omit<_xyo_network_module_model.ArchivingModuleConfig & _xyo_network_module_model.ModuleConfigFields & _xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & {
|
|
21
|
-
archivist?: string;
|
|
22
|
-
} & {
|
|
23
|
-
schema: "network.xyo.node.config";
|
|
24
|
-
}, "schema"> & {
|
|
25
|
-
schema: string;
|
|
26
|
-
};
|
|
27
|
-
ephemeralQueryAccountEnabled?: boolean;
|
|
28
|
-
moduleIdentifierTransformers?: _xyo_network_module_model.ModuleIdentifierTransformer[];
|
|
29
|
-
}, _xyo_network_node_model.NodeModuleEventData>>;
|
|
30
|
-
static requiredQueries: string[];
|
|
31
|
-
protected _attached?: Address[];
|
|
32
|
-
protected _attachedMutex: Mutex;
|
|
33
|
-
attach(id: ModuleIdentifier, external?: boolean): Promise<Address | undefined>;
|
|
34
|
-
attachQuery(id: ModuleIdentifier, external?: boolean, account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>>;
|
|
35
|
-
attached(): Promise<Address[]>;
|
|
36
|
-
attachedQuery(account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>>;
|
|
37
|
-
certify(id: ModuleIdentifier): Promise<ChildCertificationFields | undefined>;
|
|
38
|
-
certifyQuery(id: ModuleIdentifier, account?: AccountInstance): Promise<ModuleQueryResult<ChildCertification>>;
|
|
39
|
-
detach(id: ModuleIdentifier): Promise<Address | undefined>;
|
|
40
|
-
detachQuery(id: ModuleIdentifier, account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>>;
|
|
41
|
-
manifest(maxDepth?: number): Promise<NodeManifestPayload>;
|
|
42
|
-
registered(): Promise<Address[]>;
|
|
43
|
-
registeredQuery(account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>>;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export { NodeWrapper };
|
|
1
|
+
export * from './NodeWrapper.ts';
|
|
2
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/NodeWrapper.ts"],"sourcesContent":["import type { Address } from '@xylabs/hex'\nimport type { AccountInstance } from '@xyo-network/account-model'\nimport type { NodeManifestPayload } from '@xyo-network/manifest-model'\nimport { NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport type {\n AddressPayload,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleQueryResult
|
|
1
|
+
{"version":3,"sources":["../../src/NodeWrapper.ts"],"sourcesContent":["import type { Address } from '@xylabs/hex'\nimport type { AccountInstance } from '@xyo-network/account-model'\nimport type { NodeManifestPayload } from '@xyo-network/manifest-model'\nimport { NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport type {\n AddressPayload,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport {\n AddressSchema,\n ModuleManifestQuerySchema,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport type {\n ChildCertification,\n ChildCertificationFields,\n NodeAttachedQuery,\n NodeAttachQuery,\n NodeCertifyQuery,\n NodeDetachQuery,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n} from '@xyo-network/node-model'\nimport {\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuerySchema,\n NodeAttachQuerySchema,\n NodeCertifyQuerySchema,\n NodeDetachQuerySchema,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport type { WithMeta } from '@xyo-network/payload-model'\nimport { isPayloadOfSchemaType } from '@xyo-network/payload-model'\nimport { Mutex } from 'async-mutex'\n\nconstructableModuleWrapper()\nexport class NodeWrapper<TWrappedModule extends NodeModule = NodeModule>\n extends ModuleWrapper<TWrappedModule>\n implements NodeInstance<TWrappedModule['params']> {\n static override instanceIdentityCheck: InstanceTypeCheck<NodeInstance> = isNodeInstance\n static override moduleIdentityCheck = isNodeModule\n static override requiredQueries = [NodeAttachQuerySchema, ...ModuleWrapper.requiredQueries]\n\n protected _attached?: Address[]\n protected _attachedMutex = new Mutex()\n\n async attach(id: ModuleIdentifier, external?: boolean): Promise<Address | undefined> {\n const queryPayload: NodeAttachQuery = {\n external, id, schema: NodeAttachQuerySchema,\n }\n const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType<WithMeta<AddressPayload>>(AddressSchema))\n return payloads.pop()?.address\n }\n\n async attachQuery(id: ModuleIdentifier, external?: boolean, account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>> {\n const queryPayload: NodeAttachQuery = {\n external, id, schema: NodeAttachQuerySchema,\n }\n return await this.sendQueryRaw(queryPayload, [], account)\n }\n\n async attached(): Promise<Address[]> {\n return await this._attachedMutex.runExclusive(async () => {\n if (this._attached === undefined) {\n const queryPayload: NodeAttachedQuery = { schema: NodeAttachedQuerySchema }\n const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType<WithMeta<AddressPayload>>(AddressSchema))\n this._attached = payloads.map(p => p.address)\n }\n return this._attached\n })\n }\n\n async attachedQuery(account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>> {\n const queryPayload: NodeAttachedQuery = { schema: NodeAttachedQuerySchema }\n return await this.sendQueryRaw(queryPayload, [], account)\n }\n\n async certify(id: ModuleIdentifier): Promise<ChildCertificationFields | undefined> {\n const queryPayload: NodeCertifyQuery = { id, schema: NodeCertifyQuerySchema }\n const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType<WithMeta<ChildCertification>>(ChildCertificationSchema))\n return payloads.pop()\n }\n\n async certifyQuery(id: ModuleIdentifier, account?: AccountInstance): Promise<ModuleQueryResult<ChildCertification>> {\n const queryPayload: NodeCertifyQuery = { id, schema: NodeCertifyQuerySchema }\n return await this.sendQueryRaw(queryPayload, [], account)\n }\n\n async detach(id: ModuleIdentifier): Promise<Address | undefined> {\n const queryPayload: NodeDetachQuery = { id, schema: NodeDetachQuerySchema }\n const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType<WithMeta<AddressPayload>>(AddressSchema))\n return payloads.pop()?.address\n }\n\n async detachQuery(id: ModuleIdentifier, account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>> {\n const queryPayload: NodeDetachQuery = { id, schema: NodeDetachQuerySchema }\n return await this.sendQueryRaw(queryPayload, [], account)\n }\n\n override async manifest(maxDepth?: number): Promise<NodeManifestPayload> {\n const queryPayload: ModuleManifestQuery = { schema: ModuleManifestQuerySchema, ...(maxDepth ? { maxDepth } : {}) }\n const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType<WithMeta<NodeManifestPayload>>(NodeManifestPayloadSchema))\n return payloads.pop() as NodeManifestPayload\n }\n\n async registered(): Promise<Address[]> {\n const queryPayload: NodeRegisteredQuery = { schema: NodeRegisteredQuerySchema }\n const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType<WithMeta<AddressPayload>>(AddressSchema))\n return payloads.map(p => p.address)\n }\n\n async registeredQuery(account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>> {\n const queryPayload: NodeRegisteredQuery = { schema: NodeRegisteredQuerySchema }\n return await this.sendQueryRaw(queryPayload, [], account)\n }\n}\n"],"mappings":";;;;AAGA,SAASA,iCAAiC;AAQ1C,SACEC,eACAC,iCACK;AACP,SAASC,4BAA4BC,qBAAqB;AAY1D,SACEC,0BACAC,gBACAC,cACAC,yBACAC,uBACAC,wBACAC,uBACAC,iCACK;AAEP,SAASC,6BAA6B;AACtC,SAASC,aAAa;AAEtBC,2BAAAA;AACO,IAAMC,cAAN,cACGC,cAAAA;EAxCV,OAwCUA;;;EAER,OAAgBC,wBAAyDC;EACzE,OAAgBC,sBAAsBC;EACtC,OAAgBC,kBAAkB;IAACC;OAA0BN,cAAcK;;EAEjEE;EACAC,iBAAiB,IAAIC,MAAAA;EAE/B,MAAMC,OAAOC,IAAsBC,UAAkD;AACnF,UAAMC,eAAgC;MACpCD;MAAUD;MAAIG,QAAQR;IACxB;AACA,UAAMS,YAAY,MAAM,KAAKC,UAAUH,YAAAA,GAAeI,OAAOC,sBAAgDC,aAAAA,CAAAA;AAC7G,WAAOJ,SAASK,IAAG,GAAIC;EACzB;EAEA,MAAMC,YAAYX,IAAsBC,UAAoBW,SAAuE;AACjI,UAAMV,eAAgC;MACpCD;MAAUD;MAAIG,QAAQR;IACxB;AACA,WAAO,MAAM,KAAKkB,aAAaX,cAAc,CAAA,GAAIU,OAAAA;EACnD;EAEA,MAAME,WAA+B;AACnC,WAAO,MAAM,KAAKjB,eAAekB,aAAa,YAAA;AAC5C,UAAI,KAAKnB,cAAcoB,QAAW;AAChC,cAAMd,eAAkC;UAAEC,QAAQc;QAAwB;AAC1E,cAAMb,YAAY,MAAM,KAAKC,UAAUH,YAAAA,GAAeI,OAAOC,sBAAgDC,aAAAA,CAAAA;AAC7G,aAAKZ,YAAYQ,SAASc,IAAIC,CAAAA,MAAKA,EAAET,OAAO;MAC9C;AACA,aAAO,KAAKd;IACd,CAAA;EACF;EAEA,MAAMwB,cAAcR,SAAuE;AACzF,UAAMV,eAAkC;MAAEC,QAAQc;IAAwB;AAC1E,WAAO,MAAM,KAAKJ,aAAaX,cAAc,CAAA,GAAIU,OAAAA;EACnD;EAEA,MAAMS,QAAQrB,IAAqE;AACjF,UAAME,eAAiC;MAAEF;MAAIG,QAAQmB;IAAuB;AAC5E,UAAMlB,YAAY,MAAM,KAAKC,UAAUH,YAAAA,GAAeI,OAAOC,sBAAoDgB,wBAAAA,CAAAA;AACjH,WAAOnB,SAASK,IAAG;EACrB;EAEA,MAAMe,aAAaxB,IAAsBY,SAA2E;AAClH,UAAMV,eAAiC;MAAEF;MAAIG,QAAQmB;IAAuB;AAC5E,WAAO,MAAM,KAAKT,aAAaX,cAAc,CAAA,GAAIU,OAAAA;EACnD;EAEA,MAAMa,OAAOzB,IAAoD;AAC/D,UAAME,eAAgC;MAAEF;MAAIG,QAAQuB;IAAsB;AAC1E,UAAMtB,YAAY,MAAM,KAAKC,UAAUH,YAAAA,GAAeI,OAAOC,sBAAgDC,aAAAA,CAAAA;AAC7G,WAAOJ,SAASK,IAAG,GAAIC;EACzB;EAEA,MAAMiB,YAAY3B,IAAsBY,SAAuE;AAC7G,UAAMV,eAAgC;MAAEF;MAAIG,QAAQuB;IAAsB;AAC1E,WAAO,MAAM,KAAKb,aAAaX,cAAc,CAAA,GAAIU,OAAAA;EACnD;EAEA,MAAegB,SAASC,UAAiD;AACvE,UAAM3B,eAAoC;MAAEC,QAAQ2B;MAA2B,GAAID,WAAW;QAAEA;MAAS,IAAI,CAAC;IAAG;AACjH,UAAMzB,YAAY,MAAM,KAAKC,UAAUH,YAAAA,GAAeI,OAAOC,sBAAqDwB,yBAAAA,CAAAA;AAClH,WAAO3B,SAASK,IAAG;EACrB;EAEA,MAAMuB,aAAiC;AACrC,UAAM9B,eAAoC;MAAEC,QAAQ8B;IAA0B;AAC9E,UAAM7B,YAAY,MAAM,KAAKC,UAAUH,YAAAA,GAAeI,OAAOC,sBAAgDC,aAAAA,CAAAA;AAC7G,WAAOJ,SAASc,IAAIC,CAAAA,MAAKA,EAAET,OAAO;EACpC;EAEA,MAAMwB,gBAAgBtB,SAAuE;AAC3F,UAAMV,eAAoC;MAAEC,QAAQ8B;IAA0B;AAC9E,WAAO,MAAM,KAAKpB,aAAaX,cAAc,CAAA,GAAIU,OAAAA;EACnD;AACF;","names":["NodeManifestPayloadSchema","AddressSchema","ModuleManifestQuerySchema","constructableModuleWrapper","ModuleWrapper","ChildCertificationSchema","isNodeInstance","isNodeModule","NodeAttachedQuerySchema","NodeAttachQuerySchema","NodeCertifyQuerySchema","NodeDetachQuerySchema","NodeRegisteredQuerySchema","isPayloadOfSchemaType","Mutex","constructableModuleWrapper","NodeWrapper","ModuleWrapper","instanceIdentityCheck","isNodeInstance","moduleIdentityCheck","isNodeModule","requiredQueries","NodeAttachQuerySchema","_attached","_attachedMutex","Mutex","attach","id","external","queryPayload","schema","payloads","sendQuery","filter","isPayloadOfSchemaType","AddressSchema","pop","address","attachQuery","account","sendQueryRaw","attached","runExclusive","undefined","NodeAttachedQuerySchema","map","p","attachedQuery","certify","NodeCertifyQuerySchema","ChildCertificationSchema","certifyQuery","detach","NodeDetachQuerySchema","detachQuery","manifest","maxDepth","ModuleManifestQuerySchema","NodeManifestPayloadSchema","registered","NodeRegisteredQuerySchema","registeredQuery"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/node-wrapper",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.8",
|
|
4
4
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
5
5
|
"homepage": "https://xyo.network",
|
|
6
6
|
"bugs": {
|
|
@@ -29,18 +29,18 @@
|
|
|
29
29
|
"module": "dist/neutral/index.mjs",
|
|
30
30
|
"types": "dist/neutral/index.d.ts",
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@xylabs/hex": "^4.0.
|
|
33
|
-
"@xyo-network/account-model": "^3.0.
|
|
34
|
-
"@xyo-network/manifest-model": "^3.0.
|
|
35
|
-
"@xyo-network/module-model": "^3.0.
|
|
36
|
-
"@xyo-network/module-wrapper": "^3.0.
|
|
37
|
-
"@xyo-network/node-model": "^3.0.
|
|
38
|
-
"@xyo-network/payload-model": "^3.0.
|
|
32
|
+
"@xylabs/hex": "^4.0.3",
|
|
33
|
+
"@xyo-network/account-model": "^3.0.8",
|
|
34
|
+
"@xyo-network/manifest-model": "^3.0.8",
|
|
35
|
+
"@xyo-network/module-model": "^3.0.8",
|
|
36
|
+
"@xyo-network/module-wrapper": "^3.0.8",
|
|
37
|
+
"@xyo-network/node-model": "^3.0.8",
|
|
38
|
+
"@xyo-network/payload-model": "^3.0.8",
|
|
39
39
|
"async-mutex": "^0.5.0"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@xylabs/ts-scripts-yarn3": "^4.0.
|
|
43
|
-
"@xylabs/tsconfig": "^4.0.
|
|
42
|
+
"@xylabs/ts-scripts-yarn3": "^4.0.7",
|
|
43
|
+
"@xylabs/tsconfig": "^4.0.7",
|
|
44
44
|
"typescript": "^5.5.4"
|
|
45
45
|
},
|
|
46
46
|
"publishConfig": {
|
package/src/NodeWrapper.ts
CHANGED
|
@@ -7,7 +7,8 @@ import type {
|
|
|
7
7
|
InstanceTypeCheck,
|
|
8
8
|
ModuleIdentifier,
|
|
9
9
|
ModuleManifestQuery,
|
|
10
|
-
ModuleQueryResult
|
|
10
|
+
ModuleQueryResult,
|
|
11
|
+
} from '@xyo-network/module-model'
|
|
11
12
|
import {
|
|
12
13
|
AddressSchema,
|
|
13
14
|
ModuleManifestQuerySchema,
|
|
@@ -22,7 +23,8 @@ import type {
|
|
|
22
23
|
NodeDetachQuery,
|
|
23
24
|
NodeInstance,
|
|
24
25
|
NodeModule,
|
|
25
|
-
NodeRegisteredQuery
|
|
26
|
+
NodeRegisteredQuery,
|
|
27
|
+
} from '@xyo-network/node-model'
|
|
26
28
|
import {
|
|
27
29
|
ChildCertificationSchema,
|
|
28
30
|
isNodeInstance,
|
|
@@ -49,13 +51,17 @@ export class NodeWrapper<TWrappedModule extends NodeModule = NodeModule>
|
|
|
49
51
|
protected _attachedMutex = new Mutex()
|
|
50
52
|
|
|
51
53
|
async attach(id: ModuleIdentifier, external?: boolean): Promise<Address | undefined> {
|
|
52
|
-
const queryPayload: NodeAttachQuery = {
|
|
54
|
+
const queryPayload: NodeAttachQuery = {
|
|
55
|
+
external, id, schema: NodeAttachQuerySchema,
|
|
56
|
+
}
|
|
53
57
|
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType<WithMeta<AddressPayload>>(AddressSchema))
|
|
54
58
|
return payloads.pop()?.address
|
|
55
59
|
}
|
|
56
60
|
|
|
57
61
|
async attachQuery(id: ModuleIdentifier, external?: boolean, account?: AccountInstance): Promise<ModuleQueryResult<AddressPayload>> {
|
|
58
|
-
const queryPayload: NodeAttachQuery = {
|
|
62
|
+
const queryPayload: NodeAttachQuery = {
|
|
63
|
+
external, id, schema: NodeAttachQuerySchema,
|
|
64
|
+
}
|
|
59
65
|
return await this.sendQueryRaw(queryPayload, [], account)
|
|
60
66
|
}
|
|
61
67
|
|