@xyo-network/node-wrapper 2.107.3 → 2.107.5
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/browser/index.cjs +136 -1
- package/dist/browser/index.cjs.map +1 -1
- package/dist/browser/index.js +115 -1
- package/dist/browser/index.js.map +1 -1
- package/dist/neutral/index.cjs +136 -1
- package/dist/neutral/index.cjs.map +1 -1
- package/dist/neutral/index.js +115 -1
- package/dist/neutral/index.js.map +1 -1
- package/dist/node/index.cjs +143 -1
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.js +118 -1
- package/dist/node/index.js.map +1 -1
- package/package.json +9 -9
package/dist/browser/index.cjs
CHANGED
|
@@ -1,2 +1,137 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
|
|
21
|
+
// src/index.ts
|
|
22
|
+
var src_exports = {};
|
|
23
|
+
__export(src_exports, {
|
|
24
|
+
NodeWrapper: () => NodeWrapper
|
|
25
|
+
});
|
|
26
|
+
module.exports = __toCommonJS(src_exports);
|
|
27
|
+
|
|
28
|
+
// src/NodeWrapper.ts
|
|
29
|
+
var import_manifest_model = require("@xyo-network/manifest-model");
|
|
30
|
+
var import_module_model = require("@xyo-network/module-model");
|
|
31
|
+
var import_module_wrapper = require("@xyo-network/module-wrapper");
|
|
32
|
+
var import_node_model = require("@xyo-network/node-model");
|
|
33
|
+
var import_payload_model = require("@xyo-network/payload-model");
|
|
34
|
+
var import_async_mutex = require("async-mutex");
|
|
35
|
+
(0, import_module_wrapper.constructableModuleWrapper)();
|
|
36
|
+
var NodeWrapper = class extends import_module_wrapper.ModuleWrapper {
|
|
37
|
+
static {
|
|
38
|
+
__name(this, "NodeWrapper");
|
|
39
|
+
}
|
|
40
|
+
static instanceIdentityCheck = import_node_model.isNodeInstance;
|
|
41
|
+
static moduleIdentityCheck = import_node_model.isNodeModule;
|
|
42
|
+
static requiredQueries = [
|
|
43
|
+
import_node_model.NodeAttachQuerySchema,
|
|
44
|
+
...import_module_wrapper.ModuleWrapper.requiredQueries
|
|
45
|
+
];
|
|
46
|
+
_attached;
|
|
47
|
+
_attachedMutex = new import_async_mutex.Mutex();
|
|
48
|
+
async attach(id, external) {
|
|
49
|
+
const queryPayload = {
|
|
50
|
+
external,
|
|
51
|
+
id,
|
|
52
|
+
schema: import_node_model.NodeAttachQuerySchema
|
|
53
|
+
};
|
|
54
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
55
|
+
return payloads.pop()?.address;
|
|
56
|
+
}
|
|
57
|
+
async attachQuery(id, external, account) {
|
|
58
|
+
const queryPayload = {
|
|
59
|
+
external,
|
|
60
|
+
id,
|
|
61
|
+
schema: import_node_model.NodeAttachQuerySchema
|
|
62
|
+
};
|
|
63
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
64
|
+
}
|
|
65
|
+
async attached() {
|
|
66
|
+
return await this._attachedMutex.runExclusive(async () => {
|
|
67
|
+
if (this._attached === void 0) {
|
|
68
|
+
const queryPayload = {
|
|
69
|
+
schema: import_node_model.NodeAttachedQuerySchema
|
|
70
|
+
};
|
|
71
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
72
|
+
this._attached = payloads.map((p) => p.address);
|
|
73
|
+
}
|
|
74
|
+
return this._attached;
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
async attachedQuery(account) {
|
|
78
|
+
const queryPayload = {
|
|
79
|
+
schema: import_node_model.NodeAttachedQuerySchema
|
|
80
|
+
};
|
|
81
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
82
|
+
}
|
|
83
|
+
async certify(id) {
|
|
84
|
+
const queryPayload = {
|
|
85
|
+
id,
|
|
86
|
+
schema: import_node_model.NodeCertifyQuerySchema
|
|
87
|
+
};
|
|
88
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_node_model.ChildCertificationSchema));
|
|
89
|
+
return payloads.pop();
|
|
90
|
+
}
|
|
91
|
+
async certifyQuery(id, account) {
|
|
92
|
+
const queryPayload = {
|
|
93
|
+
id,
|
|
94
|
+
schema: import_node_model.NodeCertifyQuerySchema
|
|
95
|
+
};
|
|
96
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
97
|
+
}
|
|
98
|
+
async detach(id) {
|
|
99
|
+
const queryPayload = {
|
|
100
|
+
id,
|
|
101
|
+
schema: import_node_model.NodeDetachQuerySchema
|
|
102
|
+
};
|
|
103
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
104
|
+
return payloads.pop()?.address;
|
|
105
|
+
}
|
|
106
|
+
async detachQuery(id, account) {
|
|
107
|
+
const queryPayload = {
|
|
108
|
+
id,
|
|
109
|
+
schema: import_node_model.NodeDetachQuerySchema
|
|
110
|
+
};
|
|
111
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
112
|
+
}
|
|
113
|
+
async manifest(maxDepth) {
|
|
114
|
+
const queryPayload = {
|
|
115
|
+
schema: import_module_model.ModuleManifestQuerySchema,
|
|
116
|
+
...maxDepth ? {
|
|
117
|
+
maxDepth
|
|
118
|
+
} : {}
|
|
119
|
+
};
|
|
120
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_manifest_model.NodeManifestPayloadSchema));
|
|
121
|
+
return payloads.pop();
|
|
122
|
+
}
|
|
123
|
+
async registered() {
|
|
124
|
+
const queryPayload = {
|
|
125
|
+
schema: import_node_model.NodeRegisteredQuerySchema
|
|
126
|
+
};
|
|
127
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
128
|
+
return payloads.map((p) => p.address);
|
|
129
|
+
}
|
|
130
|
+
async registeredQuery(account) {
|
|
131
|
+
const queryPayload = {
|
|
132
|
+
schema: import_node_model.NodeRegisteredQuerySchema
|
|
133
|
+
};
|
|
134
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
135
|
+
}
|
|
136
|
+
};
|
|
2
137
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts","../../src/NodeWrapper.ts"],"sourcesContent":["export * from './NodeWrapper'\n","import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts","../../src/NodeWrapper.ts"],"sourcesContent":["export * from './NodeWrapper'\n","import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"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","names":["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/dist/browser/index.js
CHANGED
|
@@ -1,2 +1,116 @@
|
|
|
1
|
-
var
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
|
|
4
|
+
// src/NodeWrapper.ts
|
|
5
|
+
import { NodeManifestPayloadSchema } from "@xyo-network/manifest-model";
|
|
6
|
+
import { AddressSchema, ModuleManifestQuerySchema } from "@xyo-network/module-model";
|
|
7
|
+
import { constructableModuleWrapper, ModuleWrapper } from "@xyo-network/module-wrapper";
|
|
8
|
+
import { ChildCertificationSchema, isNodeInstance, isNodeModule, NodeAttachedQuerySchema, NodeAttachQuerySchema, NodeCertifyQuerySchema, NodeDetachQuerySchema, NodeRegisteredQuerySchema } from "@xyo-network/node-model";
|
|
9
|
+
import { isPayloadOfSchemaType } from "@xyo-network/payload-model";
|
|
10
|
+
import { Mutex } from "async-mutex";
|
|
11
|
+
constructableModuleWrapper();
|
|
12
|
+
var NodeWrapper = class extends ModuleWrapper {
|
|
13
|
+
static {
|
|
14
|
+
__name(this, "NodeWrapper");
|
|
15
|
+
}
|
|
16
|
+
static instanceIdentityCheck = isNodeInstance;
|
|
17
|
+
static moduleIdentityCheck = isNodeModule;
|
|
18
|
+
static requiredQueries = [
|
|
19
|
+
NodeAttachQuerySchema,
|
|
20
|
+
...ModuleWrapper.requiredQueries
|
|
21
|
+
];
|
|
22
|
+
_attached;
|
|
23
|
+
_attachedMutex = new Mutex();
|
|
24
|
+
async attach(id, external) {
|
|
25
|
+
const queryPayload = {
|
|
26
|
+
external,
|
|
27
|
+
id,
|
|
28
|
+
schema: NodeAttachQuerySchema
|
|
29
|
+
};
|
|
30
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
31
|
+
return payloads.pop()?.address;
|
|
32
|
+
}
|
|
33
|
+
async attachQuery(id, external, account) {
|
|
34
|
+
const queryPayload = {
|
|
35
|
+
external,
|
|
36
|
+
id,
|
|
37
|
+
schema: NodeAttachQuerySchema
|
|
38
|
+
};
|
|
39
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
40
|
+
}
|
|
41
|
+
async attached() {
|
|
42
|
+
return await this._attachedMutex.runExclusive(async () => {
|
|
43
|
+
if (this._attached === void 0) {
|
|
44
|
+
const queryPayload = {
|
|
45
|
+
schema: NodeAttachedQuerySchema
|
|
46
|
+
};
|
|
47
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
48
|
+
this._attached = payloads.map((p) => p.address);
|
|
49
|
+
}
|
|
50
|
+
return this._attached;
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
async attachedQuery(account) {
|
|
54
|
+
const queryPayload = {
|
|
55
|
+
schema: NodeAttachedQuerySchema
|
|
56
|
+
};
|
|
57
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
58
|
+
}
|
|
59
|
+
async certify(id) {
|
|
60
|
+
const queryPayload = {
|
|
61
|
+
id,
|
|
62
|
+
schema: NodeCertifyQuerySchema
|
|
63
|
+
};
|
|
64
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(ChildCertificationSchema));
|
|
65
|
+
return payloads.pop();
|
|
66
|
+
}
|
|
67
|
+
async certifyQuery(id, account) {
|
|
68
|
+
const queryPayload = {
|
|
69
|
+
id,
|
|
70
|
+
schema: NodeCertifyQuerySchema
|
|
71
|
+
};
|
|
72
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
73
|
+
}
|
|
74
|
+
async detach(id) {
|
|
75
|
+
const queryPayload = {
|
|
76
|
+
id,
|
|
77
|
+
schema: NodeDetachQuerySchema
|
|
78
|
+
};
|
|
79
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
80
|
+
return payloads.pop()?.address;
|
|
81
|
+
}
|
|
82
|
+
async detachQuery(id, account) {
|
|
83
|
+
const queryPayload = {
|
|
84
|
+
id,
|
|
85
|
+
schema: NodeDetachQuerySchema
|
|
86
|
+
};
|
|
87
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
88
|
+
}
|
|
89
|
+
async manifest(maxDepth) {
|
|
90
|
+
const queryPayload = {
|
|
91
|
+
schema: ModuleManifestQuerySchema,
|
|
92
|
+
...maxDepth ? {
|
|
93
|
+
maxDepth
|
|
94
|
+
} : {}
|
|
95
|
+
};
|
|
96
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(NodeManifestPayloadSchema));
|
|
97
|
+
return payloads.pop();
|
|
98
|
+
}
|
|
99
|
+
async registered() {
|
|
100
|
+
const queryPayload = {
|
|
101
|
+
schema: NodeRegisteredQuerySchema
|
|
102
|
+
};
|
|
103
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
104
|
+
return payloads.map((p) => p.address);
|
|
105
|
+
}
|
|
106
|
+
async registeredQuery(account) {
|
|
107
|
+
const queryPayload = {
|
|
108
|
+
schema: NodeRegisteredQuerySchema
|
|
109
|
+
};
|
|
110
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
export {
|
|
114
|
+
NodeWrapper
|
|
115
|
+
};
|
|
2
116
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/NodeWrapper.ts"],"sourcesContent":["import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"
|
|
1
|
+
{"version":3,"sources":["../../src/NodeWrapper.ts"],"sourcesContent":["import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"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","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/dist/neutral/index.cjs
CHANGED
|
@@ -1,2 +1,137 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
|
|
21
|
+
// src/index.ts
|
|
22
|
+
var src_exports = {};
|
|
23
|
+
__export(src_exports, {
|
|
24
|
+
NodeWrapper: () => NodeWrapper
|
|
25
|
+
});
|
|
26
|
+
module.exports = __toCommonJS(src_exports);
|
|
27
|
+
|
|
28
|
+
// src/NodeWrapper.ts
|
|
29
|
+
var import_manifest_model = require("@xyo-network/manifest-model");
|
|
30
|
+
var import_module_model = require("@xyo-network/module-model");
|
|
31
|
+
var import_module_wrapper = require("@xyo-network/module-wrapper");
|
|
32
|
+
var import_node_model = require("@xyo-network/node-model");
|
|
33
|
+
var import_payload_model = require("@xyo-network/payload-model");
|
|
34
|
+
var import_async_mutex = require("async-mutex");
|
|
35
|
+
(0, import_module_wrapper.constructableModuleWrapper)();
|
|
36
|
+
var NodeWrapper = class extends import_module_wrapper.ModuleWrapper {
|
|
37
|
+
static {
|
|
38
|
+
__name(this, "NodeWrapper");
|
|
39
|
+
}
|
|
40
|
+
static instanceIdentityCheck = import_node_model.isNodeInstance;
|
|
41
|
+
static moduleIdentityCheck = import_node_model.isNodeModule;
|
|
42
|
+
static requiredQueries = [
|
|
43
|
+
import_node_model.NodeAttachQuerySchema,
|
|
44
|
+
...import_module_wrapper.ModuleWrapper.requiredQueries
|
|
45
|
+
];
|
|
46
|
+
_attached;
|
|
47
|
+
_attachedMutex = new import_async_mutex.Mutex();
|
|
48
|
+
async attach(id, external) {
|
|
49
|
+
const queryPayload = {
|
|
50
|
+
external,
|
|
51
|
+
id,
|
|
52
|
+
schema: import_node_model.NodeAttachQuerySchema
|
|
53
|
+
};
|
|
54
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
55
|
+
return payloads.pop()?.address;
|
|
56
|
+
}
|
|
57
|
+
async attachQuery(id, external, account) {
|
|
58
|
+
const queryPayload = {
|
|
59
|
+
external,
|
|
60
|
+
id,
|
|
61
|
+
schema: import_node_model.NodeAttachQuerySchema
|
|
62
|
+
};
|
|
63
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
64
|
+
}
|
|
65
|
+
async attached() {
|
|
66
|
+
return await this._attachedMutex.runExclusive(async () => {
|
|
67
|
+
if (this._attached === void 0) {
|
|
68
|
+
const queryPayload = {
|
|
69
|
+
schema: import_node_model.NodeAttachedQuerySchema
|
|
70
|
+
};
|
|
71
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
72
|
+
this._attached = payloads.map((p) => p.address);
|
|
73
|
+
}
|
|
74
|
+
return this._attached;
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
async attachedQuery(account) {
|
|
78
|
+
const queryPayload = {
|
|
79
|
+
schema: import_node_model.NodeAttachedQuerySchema
|
|
80
|
+
};
|
|
81
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
82
|
+
}
|
|
83
|
+
async certify(id) {
|
|
84
|
+
const queryPayload = {
|
|
85
|
+
id,
|
|
86
|
+
schema: import_node_model.NodeCertifyQuerySchema
|
|
87
|
+
};
|
|
88
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_node_model.ChildCertificationSchema));
|
|
89
|
+
return payloads.pop();
|
|
90
|
+
}
|
|
91
|
+
async certifyQuery(id, account) {
|
|
92
|
+
const queryPayload = {
|
|
93
|
+
id,
|
|
94
|
+
schema: import_node_model.NodeCertifyQuerySchema
|
|
95
|
+
};
|
|
96
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
97
|
+
}
|
|
98
|
+
async detach(id) {
|
|
99
|
+
const queryPayload = {
|
|
100
|
+
id,
|
|
101
|
+
schema: import_node_model.NodeDetachQuerySchema
|
|
102
|
+
};
|
|
103
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
104
|
+
return payloads.pop()?.address;
|
|
105
|
+
}
|
|
106
|
+
async detachQuery(id, account) {
|
|
107
|
+
const queryPayload = {
|
|
108
|
+
id,
|
|
109
|
+
schema: import_node_model.NodeDetachQuerySchema
|
|
110
|
+
};
|
|
111
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
112
|
+
}
|
|
113
|
+
async manifest(maxDepth) {
|
|
114
|
+
const queryPayload = {
|
|
115
|
+
schema: import_module_model.ModuleManifestQuerySchema,
|
|
116
|
+
...maxDepth ? {
|
|
117
|
+
maxDepth
|
|
118
|
+
} : {}
|
|
119
|
+
};
|
|
120
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_manifest_model.NodeManifestPayloadSchema));
|
|
121
|
+
return payloads.pop();
|
|
122
|
+
}
|
|
123
|
+
async registered() {
|
|
124
|
+
const queryPayload = {
|
|
125
|
+
schema: import_node_model.NodeRegisteredQuerySchema
|
|
126
|
+
};
|
|
127
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
128
|
+
return payloads.map((p) => p.address);
|
|
129
|
+
}
|
|
130
|
+
async registeredQuery(account) {
|
|
131
|
+
const queryPayload = {
|
|
132
|
+
schema: import_node_model.NodeRegisteredQuerySchema
|
|
133
|
+
};
|
|
134
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
135
|
+
}
|
|
136
|
+
};
|
|
2
137
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts","../../src/NodeWrapper.ts"],"sourcesContent":["export * from './NodeWrapper'\n","import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts","../../src/NodeWrapper.ts"],"sourcesContent":["export * from './NodeWrapper'\n","import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"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","names":["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/dist/neutral/index.js
CHANGED
|
@@ -1,2 +1,116 @@
|
|
|
1
|
-
var
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
|
|
4
|
+
// src/NodeWrapper.ts
|
|
5
|
+
import { NodeManifestPayloadSchema } from "@xyo-network/manifest-model";
|
|
6
|
+
import { AddressSchema, ModuleManifestQuerySchema } from "@xyo-network/module-model";
|
|
7
|
+
import { constructableModuleWrapper, ModuleWrapper } from "@xyo-network/module-wrapper";
|
|
8
|
+
import { ChildCertificationSchema, isNodeInstance, isNodeModule, NodeAttachedQuerySchema, NodeAttachQuerySchema, NodeCertifyQuerySchema, NodeDetachQuerySchema, NodeRegisteredQuerySchema } from "@xyo-network/node-model";
|
|
9
|
+
import { isPayloadOfSchemaType } from "@xyo-network/payload-model";
|
|
10
|
+
import { Mutex } from "async-mutex";
|
|
11
|
+
constructableModuleWrapper();
|
|
12
|
+
var NodeWrapper = class extends ModuleWrapper {
|
|
13
|
+
static {
|
|
14
|
+
__name(this, "NodeWrapper");
|
|
15
|
+
}
|
|
16
|
+
static instanceIdentityCheck = isNodeInstance;
|
|
17
|
+
static moduleIdentityCheck = isNodeModule;
|
|
18
|
+
static requiredQueries = [
|
|
19
|
+
NodeAttachQuerySchema,
|
|
20
|
+
...ModuleWrapper.requiredQueries
|
|
21
|
+
];
|
|
22
|
+
_attached;
|
|
23
|
+
_attachedMutex = new Mutex();
|
|
24
|
+
async attach(id, external) {
|
|
25
|
+
const queryPayload = {
|
|
26
|
+
external,
|
|
27
|
+
id,
|
|
28
|
+
schema: NodeAttachQuerySchema
|
|
29
|
+
};
|
|
30
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
31
|
+
return payloads.pop()?.address;
|
|
32
|
+
}
|
|
33
|
+
async attachQuery(id, external, account) {
|
|
34
|
+
const queryPayload = {
|
|
35
|
+
external,
|
|
36
|
+
id,
|
|
37
|
+
schema: NodeAttachQuerySchema
|
|
38
|
+
};
|
|
39
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
40
|
+
}
|
|
41
|
+
async attached() {
|
|
42
|
+
return await this._attachedMutex.runExclusive(async () => {
|
|
43
|
+
if (this._attached === void 0) {
|
|
44
|
+
const queryPayload = {
|
|
45
|
+
schema: NodeAttachedQuerySchema
|
|
46
|
+
};
|
|
47
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
48
|
+
this._attached = payloads.map((p) => p.address);
|
|
49
|
+
}
|
|
50
|
+
return this._attached;
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
async attachedQuery(account) {
|
|
54
|
+
const queryPayload = {
|
|
55
|
+
schema: NodeAttachedQuerySchema
|
|
56
|
+
};
|
|
57
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
58
|
+
}
|
|
59
|
+
async certify(id) {
|
|
60
|
+
const queryPayload = {
|
|
61
|
+
id,
|
|
62
|
+
schema: NodeCertifyQuerySchema
|
|
63
|
+
};
|
|
64
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(ChildCertificationSchema));
|
|
65
|
+
return payloads.pop();
|
|
66
|
+
}
|
|
67
|
+
async certifyQuery(id, account) {
|
|
68
|
+
const queryPayload = {
|
|
69
|
+
id,
|
|
70
|
+
schema: NodeCertifyQuerySchema
|
|
71
|
+
};
|
|
72
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
73
|
+
}
|
|
74
|
+
async detach(id) {
|
|
75
|
+
const queryPayload = {
|
|
76
|
+
id,
|
|
77
|
+
schema: NodeDetachQuerySchema
|
|
78
|
+
};
|
|
79
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
80
|
+
return payloads.pop()?.address;
|
|
81
|
+
}
|
|
82
|
+
async detachQuery(id, account) {
|
|
83
|
+
const queryPayload = {
|
|
84
|
+
id,
|
|
85
|
+
schema: NodeDetachQuerySchema
|
|
86
|
+
};
|
|
87
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
88
|
+
}
|
|
89
|
+
async manifest(maxDepth) {
|
|
90
|
+
const queryPayload = {
|
|
91
|
+
schema: ModuleManifestQuerySchema,
|
|
92
|
+
...maxDepth ? {
|
|
93
|
+
maxDepth
|
|
94
|
+
} : {}
|
|
95
|
+
};
|
|
96
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(NodeManifestPayloadSchema));
|
|
97
|
+
return payloads.pop();
|
|
98
|
+
}
|
|
99
|
+
async registered() {
|
|
100
|
+
const queryPayload = {
|
|
101
|
+
schema: NodeRegisteredQuerySchema
|
|
102
|
+
};
|
|
103
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
104
|
+
return payloads.map((p) => p.address);
|
|
105
|
+
}
|
|
106
|
+
async registeredQuery(account) {
|
|
107
|
+
const queryPayload = {
|
|
108
|
+
schema: NodeRegisteredQuerySchema
|
|
109
|
+
};
|
|
110
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
export {
|
|
114
|
+
NodeWrapper
|
|
115
|
+
};
|
|
2
116
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/NodeWrapper.ts"],"sourcesContent":["import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"
|
|
1
|
+
{"version":3,"sources":["../../src/NodeWrapper.ts"],"sourcesContent":["import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"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","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/dist/node/index.cjs
CHANGED
|
@@ -1,2 +1,144 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
21
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
22
|
+
|
|
23
|
+
// src/index.ts
|
|
24
|
+
var src_exports = {};
|
|
25
|
+
__export(src_exports, {
|
|
26
|
+
NodeWrapper: () => NodeWrapper
|
|
27
|
+
});
|
|
28
|
+
module.exports = __toCommonJS(src_exports);
|
|
29
|
+
|
|
30
|
+
// src/NodeWrapper.ts
|
|
31
|
+
var import_manifest_model = require("@xyo-network/manifest-model");
|
|
32
|
+
var import_module_model = require("@xyo-network/module-model");
|
|
33
|
+
var import_module_wrapper = require("@xyo-network/module-wrapper");
|
|
34
|
+
var import_node_model = require("@xyo-network/node-model");
|
|
35
|
+
var import_payload_model = require("@xyo-network/payload-model");
|
|
36
|
+
var import_async_mutex = require("async-mutex");
|
|
37
|
+
(0, import_module_wrapper.constructableModuleWrapper)();
|
|
38
|
+
var _NodeWrapper = class _NodeWrapper extends import_module_wrapper.ModuleWrapper {
|
|
39
|
+
_attached;
|
|
40
|
+
_attachedMutex = new import_async_mutex.Mutex();
|
|
41
|
+
async attach(id, external) {
|
|
42
|
+
var _a;
|
|
43
|
+
const queryPayload = {
|
|
44
|
+
external,
|
|
45
|
+
id,
|
|
46
|
+
schema: import_node_model.NodeAttachQuerySchema
|
|
47
|
+
};
|
|
48
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
49
|
+
return (_a = payloads.pop()) == null ? void 0 : _a.address;
|
|
50
|
+
}
|
|
51
|
+
async attachQuery(id, external, account) {
|
|
52
|
+
const queryPayload = {
|
|
53
|
+
external,
|
|
54
|
+
id,
|
|
55
|
+
schema: import_node_model.NodeAttachQuerySchema
|
|
56
|
+
};
|
|
57
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
58
|
+
}
|
|
59
|
+
async attached() {
|
|
60
|
+
return await this._attachedMutex.runExclusive(async () => {
|
|
61
|
+
if (this._attached === void 0) {
|
|
62
|
+
const queryPayload = {
|
|
63
|
+
schema: import_node_model.NodeAttachedQuerySchema
|
|
64
|
+
};
|
|
65
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
66
|
+
this._attached = payloads.map((p) => p.address);
|
|
67
|
+
}
|
|
68
|
+
return this._attached;
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
async attachedQuery(account) {
|
|
72
|
+
const queryPayload = {
|
|
73
|
+
schema: import_node_model.NodeAttachedQuerySchema
|
|
74
|
+
};
|
|
75
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
76
|
+
}
|
|
77
|
+
async certify(id) {
|
|
78
|
+
const queryPayload = {
|
|
79
|
+
id,
|
|
80
|
+
schema: import_node_model.NodeCertifyQuerySchema
|
|
81
|
+
};
|
|
82
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_node_model.ChildCertificationSchema));
|
|
83
|
+
return payloads.pop();
|
|
84
|
+
}
|
|
85
|
+
async certifyQuery(id, account) {
|
|
86
|
+
const queryPayload = {
|
|
87
|
+
id,
|
|
88
|
+
schema: import_node_model.NodeCertifyQuerySchema
|
|
89
|
+
};
|
|
90
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
91
|
+
}
|
|
92
|
+
async detach(id) {
|
|
93
|
+
var _a;
|
|
94
|
+
const queryPayload = {
|
|
95
|
+
id,
|
|
96
|
+
schema: import_node_model.NodeDetachQuerySchema
|
|
97
|
+
};
|
|
98
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
99
|
+
return (_a = payloads.pop()) == null ? void 0 : _a.address;
|
|
100
|
+
}
|
|
101
|
+
async detachQuery(id, account) {
|
|
102
|
+
const queryPayload = {
|
|
103
|
+
id,
|
|
104
|
+
schema: import_node_model.NodeDetachQuerySchema
|
|
105
|
+
};
|
|
106
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
107
|
+
}
|
|
108
|
+
async manifest(maxDepth) {
|
|
109
|
+
const queryPayload = {
|
|
110
|
+
schema: import_module_model.ModuleManifestQuerySchema,
|
|
111
|
+
...maxDepth ? {
|
|
112
|
+
maxDepth
|
|
113
|
+
} : {}
|
|
114
|
+
};
|
|
115
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_manifest_model.NodeManifestPayloadSchema));
|
|
116
|
+
return payloads.pop();
|
|
117
|
+
}
|
|
118
|
+
async registered() {
|
|
119
|
+
const queryPayload = {
|
|
120
|
+
schema: import_node_model.NodeRegisteredQuerySchema
|
|
121
|
+
};
|
|
122
|
+
const payloads = (await this.sendQuery(queryPayload)).filter((0, import_payload_model.isPayloadOfSchemaType)(import_module_model.AddressSchema));
|
|
123
|
+
return payloads.map((p) => p.address);
|
|
124
|
+
}
|
|
125
|
+
async registeredQuery(account) {
|
|
126
|
+
const queryPayload = {
|
|
127
|
+
schema: import_node_model.NodeRegisteredQuerySchema
|
|
128
|
+
};
|
|
129
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
__name(_NodeWrapper, "NodeWrapper");
|
|
133
|
+
__publicField(_NodeWrapper, "instanceIdentityCheck", import_node_model.isNodeInstance);
|
|
134
|
+
__publicField(_NodeWrapper, "moduleIdentityCheck", import_node_model.isNodeModule);
|
|
135
|
+
__publicField(_NodeWrapper, "requiredQueries", [
|
|
136
|
+
import_node_model.NodeAttachQuerySchema,
|
|
137
|
+
...import_module_wrapper.ModuleWrapper.requiredQueries
|
|
138
|
+
]);
|
|
139
|
+
var NodeWrapper = _NodeWrapper;
|
|
140
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
141
|
+
0 && (module.exports = {
|
|
142
|
+
NodeWrapper
|
|
143
|
+
});
|
|
2
144
|
//# sourceMappingURL=index.cjs.map
|
package/dist/node/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts","../../src/NodeWrapper.ts"],"sourcesContent":["export * from './NodeWrapper'\n","import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts","../../src/NodeWrapper.ts"],"sourcesContent":["export * from './NodeWrapper'\n","import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"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","names":["constructableModuleWrapper","NodeWrapper","ModuleWrapper","_attached","_attachedMutex","Mutex","attach","id","external","queryPayload","schema","NodeAttachQuerySchema","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","instanceIdentityCheck","isNodeInstance","moduleIdentityCheck","isNodeModule","requiredQueries"]}
|
package/dist/node/index.js
CHANGED
|
@@ -1,2 +1,119 @@
|
|
|
1
|
-
var
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
4
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
+
|
|
6
|
+
// src/NodeWrapper.ts
|
|
7
|
+
import { NodeManifestPayloadSchema } from "@xyo-network/manifest-model";
|
|
8
|
+
import { AddressSchema, ModuleManifestQuerySchema } from "@xyo-network/module-model";
|
|
9
|
+
import { constructableModuleWrapper, ModuleWrapper } from "@xyo-network/module-wrapper";
|
|
10
|
+
import { ChildCertificationSchema, isNodeInstance, isNodeModule, NodeAttachedQuerySchema, NodeAttachQuerySchema, NodeCertifyQuerySchema, NodeDetachQuerySchema, NodeRegisteredQuerySchema } from "@xyo-network/node-model";
|
|
11
|
+
import { isPayloadOfSchemaType } from "@xyo-network/payload-model";
|
|
12
|
+
import { Mutex } from "async-mutex";
|
|
13
|
+
constructableModuleWrapper();
|
|
14
|
+
var _NodeWrapper = class _NodeWrapper extends ModuleWrapper {
|
|
15
|
+
_attached;
|
|
16
|
+
_attachedMutex = new Mutex();
|
|
17
|
+
async attach(id, external) {
|
|
18
|
+
var _a;
|
|
19
|
+
const queryPayload = {
|
|
20
|
+
external,
|
|
21
|
+
id,
|
|
22
|
+
schema: NodeAttachQuerySchema
|
|
23
|
+
};
|
|
24
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
25
|
+
return (_a = payloads.pop()) == null ? void 0 : _a.address;
|
|
26
|
+
}
|
|
27
|
+
async attachQuery(id, external, account) {
|
|
28
|
+
const queryPayload = {
|
|
29
|
+
external,
|
|
30
|
+
id,
|
|
31
|
+
schema: NodeAttachQuerySchema
|
|
32
|
+
};
|
|
33
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
34
|
+
}
|
|
35
|
+
async attached() {
|
|
36
|
+
return await this._attachedMutex.runExclusive(async () => {
|
|
37
|
+
if (this._attached === void 0) {
|
|
38
|
+
const queryPayload = {
|
|
39
|
+
schema: NodeAttachedQuerySchema
|
|
40
|
+
};
|
|
41
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
42
|
+
this._attached = payloads.map((p) => p.address);
|
|
43
|
+
}
|
|
44
|
+
return this._attached;
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
async attachedQuery(account) {
|
|
48
|
+
const queryPayload = {
|
|
49
|
+
schema: NodeAttachedQuerySchema
|
|
50
|
+
};
|
|
51
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
52
|
+
}
|
|
53
|
+
async certify(id) {
|
|
54
|
+
const queryPayload = {
|
|
55
|
+
id,
|
|
56
|
+
schema: NodeCertifyQuerySchema
|
|
57
|
+
};
|
|
58
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(ChildCertificationSchema));
|
|
59
|
+
return payloads.pop();
|
|
60
|
+
}
|
|
61
|
+
async certifyQuery(id, account) {
|
|
62
|
+
const queryPayload = {
|
|
63
|
+
id,
|
|
64
|
+
schema: NodeCertifyQuerySchema
|
|
65
|
+
};
|
|
66
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
67
|
+
}
|
|
68
|
+
async detach(id) {
|
|
69
|
+
var _a;
|
|
70
|
+
const queryPayload = {
|
|
71
|
+
id,
|
|
72
|
+
schema: NodeDetachQuerySchema
|
|
73
|
+
};
|
|
74
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
75
|
+
return (_a = payloads.pop()) == null ? void 0 : _a.address;
|
|
76
|
+
}
|
|
77
|
+
async detachQuery(id, account) {
|
|
78
|
+
const queryPayload = {
|
|
79
|
+
id,
|
|
80
|
+
schema: NodeDetachQuerySchema
|
|
81
|
+
};
|
|
82
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
83
|
+
}
|
|
84
|
+
async manifest(maxDepth) {
|
|
85
|
+
const queryPayload = {
|
|
86
|
+
schema: ModuleManifestQuerySchema,
|
|
87
|
+
...maxDepth ? {
|
|
88
|
+
maxDepth
|
|
89
|
+
} : {}
|
|
90
|
+
};
|
|
91
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(NodeManifestPayloadSchema));
|
|
92
|
+
return payloads.pop();
|
|
93
|
+
}
|
|
94
|
+
async registered() {
|
|
95
|
+
const queryPayload = {
|
|
96
|
+
schema: NodeRegisteredQuerySchema
|
|
97
|
+
};
|
|
98
|
+
const payloads = (await this.sendQuery(queryPayload)).filter(isPayloadOfSchemaType(AddressSchema));
|
|
99
|
+
return payloads.map((p) => p.address);
|
|
100
|
+
}
|
|
101
|
+
async registeredQuery(account) {
|
|
102
|
+
const queryPayload = {
|
|
103
|
+
schema: NodeRegisteredQuerySchema
|
|
104
|
+
};
|
|
105
|
+
return await this.sendQueryRaw(queryPayload, [], account);
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
__name(_NodeWrapper, "NodeWrapper");
|
|
109
|
+
__publicField(_NodeWrapper, "instanceIdentityCheck", isNodeInstance);
|
|
110
|
+
__publicField(_NodeWrapper, "moduleIdentityCheck", isNodeModule);
|
|
111
|
+
__publicField(_NodeWrapper, "requiredQueries", [
|
|
112
|
+
NodeAttachQuerySchema,
|
|
113
|
+
...ModuleWrapper.requiredQueries
|
|
114
|
+
]);
|
|
115
|
+
var NodeWrapper = _NodeWrapper;
|
|
116
|
+
export {
|
|
117
|
+
NodeWrapper
|
|
118
|
+
};
|
|
2
119
|
//# sourceMappingURL=index.js.map
|
package/dist/node/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/NodeWrapper.ts"],"sourcesContent":["import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"
|
|
1
|
+
{"version":3,"sources":["../../src/NodeWrapper.ts"],"sourcesContent":["import { Address } from '@xylabs/hex'\nimport { AccountInstance } from '@xyo-network/account-model'\nimport { NodeManifestPayload, NodeManifestPayloadSchema } from '@xyo-network/manifest-model'\nimport {\n AddressPayload,\n AddressSchema,\n InstanceTypeCheck,\n ModuleIdentifier,\n ModuleManifestQuery,\n ModuleManifestQuerySchema,\n ModuleQueryResult,\n} from '@xyo-network/module-model'\nimport { constructableModuleWrapper, ModuleWrapper } from '@xyo-network/module-wrapper'\nimport {\n ChildCertification,\n ChildCertificationFields,\n ChildCertificationSchema,\n isNodeInstance,\n isNodeModule,\n NodeAttachedQuery,\n NodeAttachedQuerySchema,\n NodeAttachQuery,\n NodeAttachQuerySchema,\n NodeCertifyQuery,\n NodeCertifyQuerySchema,\n NodeDetachQuery,\n NodeDetachQuerySchema,\n NodeInstance,\n NodeModule,\n NodeRegisteredQuery,\n NodeRegisteredQuerySchema,\n} from '@xyo-network/node-model'\nimport { isPayloadOfSchemaType, WithMeta } 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{\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 = { external, id, schema: NodeAttachQuerySchema }\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 = { external, id, schema: NodeAttachQuerySchema }\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":"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","names":["NodeManifestPayloadSchema","AddressSchema","ModuleManifestQuerySchema","constructableModuleWrapper","ModuleWrapper","ChildCertificationSchema","isNodeInstance","isNodeModule","NodeAttachedQuerySchema","NodeAttachQuerySchema","NodeCertifyQuerySchema","NodeDetachQuerySchema","NodeRegisteredQuerySchema","isPayloadOfSchemaType","Mutex","constructableModuleWrapper","NodeWrapper","ModuleWrapper","_attached","_attachedMutex","Mutex","attach","id","external","queryPayload","schema","NodeAttachQuerySchema","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","instanceIdentityCheck","isNodeInstance","moduleIdentityCheck","isNodeModule","requiredQueries"]}
|
package/package.json
CHANGED
|
@@ -11,17 +11,17 @@
|
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"@xylabs/hex": "^3.5.1",
|
|
14
|
-
"@xyo-network/account-model": "~2.107.
|
|
15
|
-
"@xyo-network/manifest-model": "~2.107.
|
|
16
|
-
"@xyo-network/module-model": "~2.107.
|
|
17
|
-
"@xyo-network/module-wrapper": "~2.107.
|
|
18
|
-
"@xyo-network/node-model": "~2.107.
|
|
19
|
-
"@xyo-network/payload-model": "~2.107.
|
|
14
|
+
"@xyo-network/account-model": "~2.107.5",
|
|
15
|
+
"@xyo-network/manifest-model": "~2.107.5",
|
|
16
|
+
"@xyo-network/module-model": "~2.107.5",
|
|
17
|
+
"@xyo-network/module-wrapper": "~2.107.5",
|
|
18
|
+
"@xyo-network/node-model": "~2.107.5",
|
|
19
|
+
"@xyo-network/payload-model": "~2.107.5",
|
|
20
20
|
"async-mutex": "^0.5.0"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
|
-
"@xylabs/ts-scripts-yarn3": "^3.11.
|
|
24
|
-
"@xylabs/tsconfig": "^3.11.
|
|
23
|
+
"@xylabs/ts-scripts-yarn3": "^3.11.10",
|
|
24
|
+
"@xylabs/tsconfig": "^3.11.10",
|
|
25
25
|
"typescript": "^5.5.2"
|
|
26
26
|
},
|
|
27
27
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
@@ -63,6 +63,6 @@
|
|
|
63
63
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
|
|
64
64
|
},
|
|
65
65
|
"sideEffects": false,
|
|
66
|
-
"version": "2.107.
|
|
66
|
+
"version": "2.107.5",
|
|
67
67
|
"type": "module"
|
|
68
68
|
}
|