@xyo-network/archivist-mongodb 2.82.0 → 2.84.0-rc.1
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/Archivist.d.cts +50 -61
- package/dist/browser/Archivist.d.cts.map +1 -1
- package/dist/browser/Archivist.d.mts +50 -61
- package/dist/browser/Archivist.d.mts.map +1 -1
- package/dist/browser/Archivist.d.ts +50 -61
- package/dist/browser/Archivist.d.ts.map +1 -1
- package/dist/browser/index.cjs +68 -54
- package/dist/browser/index.cjs.map +1 -1
- package/dist/browser/index.js +68 -54
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/lib/index.d.cts +1 -2
- package/dist/browser/lib/index.d.cts.map +1 -1
- package/dist/browser/lib/index.d.mts +1 -2
- package/dist/browser/lib/index.d.mts.map +1 -1
- package/dist/browser/lib/index.d.ts +1 -2
- package/dist/browser/lib/index.d.ts.map +1 -1
- package/dist/browser/lib/toPayloadWithMongoMeta.d.cts +5 -0
- package/dist/browser/lib/toPayloadWithMongoMeta.d.cts.map +1 -0
- package/dist/browser/lib/toPayloadWithMongoMeta.d.mts +5 -0
- package/dist/browser/lib/toPayloadWithMongoMeta.d.mts.map +1 -0
- package/dist/browser/lib/toPayloadWithMongoMeta.d.ts +5 -0
- package/dist/browser/lib/toPayloadWithMongoMeta.d.ts.map +1 -0
- package/dist/browser/lib/toReturnValue.d.cts +1 -2
- package/dist/browser/lib/toReturnValue.d.cts.map +1 -1
- package/dist/browser/lib/toReturnValue.d.mts +1 -2
- package/dist/browser/lib/toReturnValue.d.mts.map +1 -1
- package/dist/browser/lib/toReturnValue.d.ts +1 -2
- package/dist/browser/lib/toReturnValue.d.ts.map +1 -1
- package/dist/browser/lib/validByType.d.cts +3 -7
- package/dist/browser/lib/validByType.d.cts.map +1 -1
- package/dist/browser/lib/validByType.d.mts +3 -7
- package/dist/browser/lib/validByType.d.mts.map +1 -1
- package/dist/browser/lib/validByType.d.ts +3 -7
- package/dist/browser/lib/validByType.d.ts.map +1 -1
- package/dist/node/Archivist.d.cts +50 -61
- package/dist/node/Archivist.d.cts.map +1 -1
- package/dist/node/Archivist.d.mts +50 -61
- package/dist/node/Archivist.d.mts.map +1 -1
- package/dist/node/Archivist.d.ts +50 -61
- package/dist/node/Archivist.d.ts.map +1 -1
- package/dist/node/index.cjs +182 -0
- package/dist/node/index.cjs.map +1 -0
- package/dist/node/index.js +86 -99
- package/dist/node/index.js.map +1 -1
- package/dist/node/lib/index.d.cts +1 -2
- package/dist/node/lib/index.d.cts.map +1 -1
- package/dist/node/lib/index.d.mts +1 -2
- package/dist/node/lib/index.d.mts.map +1 -1
- package/dist/node/lib/index.d.ts +1 -2
- package/dist/node/lib/index.d.ts.map +1 -1
- package/dist/node/lib/toPayloadWithMongoMeta.d.cts +5 -0
- package/dist/node/lib/toPayloadWithMongoMeta.d.cts.map +1 -0
- package/dist/node/lib/toPayloadWithMongoMeta.d.mts +5 -0
- package/dist/node/lib/toPayloadWithMongoMeta.d.mts.map +1 -0
- package/dist/node/lib/toPayloadWithMongoMeta.d.ts +5 -0
- package/dist/node/lib/toPayloadWithMongoMeta.d.ts.map +1 -0
- package/dist/node/lib/toReturnValue.d.cts +1 -2
- package/dist/node/lib/toReturnValue.d.cts.map +1 -1
- package/dist/node/lib/toReturnValue.d.mts +1 -2
- package/dist/node/lib/toReturnValue.d.mts.map +1 -1
- package/dist/node/lib/toReturnValue.d.ts +1 -2
- package/dist/node/lib/toReturnValue.d.ts.map +1 -1
- package/dist/node/lib/validByType.d.cts +3 -7
- package/dist/node/lib/validByType.d.cts.map +1 -1
- package/dist/node/lib/validByType.d.mts +3 -7
- package/dist/node/lib/validByType.d.mts.map +1 -1
- package/dist/node/lib/validByType.d.ts +3 -7
- package/dist/node/lib/validByType.d.ts.map +1 -1
- package/package.json +32 -30
- package/src/Archivist.ts +35 -19
- package/src/lib/index.ts +1 -2
- package/src/lib/toPayloadWithMongoMeta.ts +10 -0
- package/src/lib/toReturnValue.ts +3 -9
- package/src/lib/validByType.ts +10 -6
- package/dist/browser/lib/toBoundWitnessWithMeta.d.cts +0 -5
- package/dist/browser/lib/toBoundWitnessWithMeta.d.cts.map +0 -1
- package/dist/browser/lib/toBoundWitnessWithMeta.d.mts +0 -5
- package/dist/browser/lib/toBoundWitnessWithMeta.d.mts.map +0 -1
- package/dist/browser/lib/toBoundWitnessWithMeta.d.ts +0 -5
- package/dist/browser/lib/toBoundWitnessWithMeta.d.ts.map +0 -1
- package/dist/browser/lib/toPayloadWithMeta.d.cts +0 -4
- package/dist/browser/lib/toPayloadWithMeta.d.cts.map +0 -1
- package/dist/browser/lib/toPayloadWithMeta.d.mts +0 -4
- package/dist/browser/lib/toPayloadWithMeta.d.mts.map +0 -1
- package/dist/browser/lib/toPayloadWithMeta.d.ts +0 -4
- package/dist/browser/lib/toPayloadWithMeta.d.ts.map +0 -1
- package/dist/node/index.mjs +0 -141
- package/dist/node/index.mjs.map +0 -1
- package/dist/node/lib/toBoundWitnessWithMeta.d.cts +0 -5
- package/dist/node/lib/toBoundWitnessWithMeta.d.cts.map +0 -1
- package/dist/node/lib/toBoundWitnessWithMeta.d.mts +0 -5
- package/dist/node/lib/toBoundWitnessWithMeta.d.mts.map +0 -1
- package/dist/node/lib/toBoundWitnessWithMeta.d.ts +0 -5
- package/dist/node/lib/toBoundWitnessWithMeta.d.ts.map +0 -1
- package/dist/node/lib/toPayloadWithMeta.d.cts +0 -4
- package/dist/node/lib/toPayloadWithMeta.d.cts.map +0 -1
- package/dist/node/lib/toPayloadWithMeta.d.mts +0 -4
- package/dist/node/lib/toPayloadWithMeta.d.mts.map +0 -1
- package/dist/node/lib/toPayloadWithMeta.d.ts +0 -4
- package/dist/node/lib/toPayloadWithMeta.d.ts.map +0 -1
- package/src/lib/toBoundWitnessWithMeta.ts +0 -9
- package/src/lib/toPayloadWithMeta.ts +0 -6
package/dist/node/index.js
CHANGED
|
@@ -1,149 +1,138 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
2
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
7
3
|
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 __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
21
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
22
4
|
var __publicField = (obj, key, value) => {
|
|
23
5
|
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
24
6
|
return value;
|
|
25
7
|
};
|
|
26
8
|
|
|
27
|
-
// src/index.ts
|
|
28
|
-
var src_exports = {};
|
|
29
|
-
__export(src_exports, {
|
|
30
|
-
MongoDBArchivist: () => MongoDBArchivist
|
|
31
|
-
});
|
|
32
|
-
module.exports = __toCommonJS(src_exports);
|
|
33
|
-
|
|
34
9
|
// src/Archivist.ts
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
var import_payload_wrapper3 = require("@xyo-network/payload-wrapper");
|
|
10
|
+
import { exists } from "@xylabs/exists";
|
|
11
|
+
import { AbstractArchivist } from "@xyo-network/archivist-abstract";
|
|
12
|
+
import { ArchivistConfigSchema, ArchivistInsertQuerySchema } from "@xyo-network/archivist-model";
|
|
13
|
+
import { MongoDBArchivistConfigSchema } from "@xyo-network/archivist-model-mongodb";
|
|
14
|
+
import { MongoDBModuleMixin } from "@xyo-network/module-abstract-mongodb";
|
|
15
|
+
import { PayloadWrapper as PayloadWrapper2 } from "@xyo-network/payload-wrapper";
|
|
42
16
|
|
|
43
|
-
// src/lib/
|
|
44
|
-
|
|
45
|
-
|
|
17
|
+
// src/lib/toPayloadWithMongoMeta.ts
|
|
18
|
+
import { PayloadBuilder } from "@xyo-network/payload-builder";
|
|
19
|
+
var toPayloadWithMongoMeta = /* @__PURE__ */ __name(async (payload) => {
|
|
20
|
+
const built = await PayloadBuilder.build(payload);
|
|
21
|
+
const _hash = await PayloadBuilder.hash(built);
|
|
22
|
+
const { $hash, $meta, ...fields } = built;
|
|
46
23
|
return {
|
|
47
|
-
...
|
|
48
|
-
|
|
24
|
+
...fields,
|
|
25
|
+
_$hash: $hash,
|
|
26
|
+
_$meta: $meta,
|
|
27
|
+
_hash,
|
|
49
28
|
_timestamp: Date.now()
|
|
50
29
|
};
|
|
51
|
-
}, "
|
|
52
|
-
|
|
53
|
-
// src/lib/toPayloadWithMeta.ts
|
|
54
|
-
var toPayloadWithMeta = /* @__PURE__ */ __name(async (wrapper) => {
|
|
55
|
-
return {
|
|
56
|
-
...wrapper.payload(),
|
|
57
|
-
_hash: await wrapper.hashAsync(),
|
|
58
|
-
_timestamp: Date.now()
|
|
59
|
-
};
|
|
60
|
-
}, "toPayloadWithMeta");
|
|
30
|
+
}, "toPayloadWithMongoMeta");
|
|
61
31
|
|
|
62
32
|
// src/lib/toReturnValue.ts
|
|
63
|
-
|
|
33
|
+
import { deepOmitPrefixedFields } from "@xyo-network/hash";
|
|
64
34
|
var toReturnValue = /* @__PURE__ */ __name((value) => {
|
|
65
|
-
|
|
66
|
-
if (_signatures) {
|
|
67
|
-
return {
|
|
68
|
-
...import_payload_wrapper.PayloadWrapper.wrap(value).body(),
|
|
69
|
-
_signatures
|
|
70
|
-
};
|
|
71
|
-
} else {
|
|
72
|
-
return {
|
|
73
|
-
...import_payload_wrapper.PayloadWrapper.wrap(value).body()
|
|
74
|
-
};
|
|
75
|
-
}
|
|
35
|
+
return deepOmitPrefixedFields(value, "_");
|
|
76
36
|
}, "toReturnValue");
|
|
77
37
|
|
|
78
38
|
// src/lib/validByType.ts
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
39
|
+
import { QueryBoundWitnessWrapper } from "@xyo-network/boundwitness-builder";
|
|
40
|
+
import { isBoundWitness, isQueryBoundWitness } from "@xyo-network/boundwitness-model";
|
|
41
|
+
import { BoundWitnessWrapper } from "@xyo-network/boundwitness-wrapper";
|
|
42
|
+
import { PayloadWrapper } from "@xyo-network/payload-wrapper";
|
|
83
43
|
var validByType = /* @__PURE__ */ __name(async (payloads = []) => {
|
|
84
44
|
const results = [
|
|
85
45
|
[],
|
|
86
46
|
[]
|
|
87
47
|
];
|
|
88
48
|
await Promise.all(payloads.map(async (payload) => {
|
|
89
|
-
if (
|
|
90
|
-
const wrapper =
|
|
91
|
-
const bw = wrapper.parse(payload);
|
|
49
|
+
if (isBoundWitness(payload)) {
|
|
50
|
+
const wrapper = isQueryBoundWitness(payload) ? QueryBoundWitnessWrapper : BoundWitnessWrapper;
|
|
51
|
+
const bw = await wrapper.parse(payload);
|
|
92
52
|
if (await bw.getValid()) {
|
|
93
|
-
results[0].push(bw);
|
|
53
|
+
results[0].push(bw.jsonPayload());
|
|
54
|
+
} else {
|
|
55
|
+
const errors = await bw.getErrors();
|
|
56
|
+
console.log(`validByType.Error: ${JSON.stringify(errors, null, 2)}`);
|
|
94
57
|
}
|
|
95
58
|
} else {
|
|
96
|
-
const payloadWrapper =
|
|
59
|
+
const payloadWrapper = await PayloadWrapper.wrap(payload);
|
|
97
60
|
if (await payloadWrapper.getValid()) {
|
|
98
|
-
results[1].push(payloadWrapper);
|
|
61
|
+
results[1].push(payloadWrapper.jsonPayload());
|
|
99
62
|
}
|
|
100
63
|
}
|
|
64
|
+
return;
|
|
101
65
|
}));
|
|
102
66
|
return results;
|
|
103
67
|
}, "validByType");
|
|
104
68
|
|
|
105
69
|
// src/Archivist.ts
|
|
106
|
-
var MongoDBArchivistBase =
|
|
70
|
+
var MongoDBArchivistBase = MongoDBModuleMixin(AbstractArchivist);
|
|
107
71
|
var _MongoDBArchivist = class _MongoDBArchivist extends MongoDBArchivistBase {
|
|
108
72
|
queries = [
|
|
109
|
-
|
|
73
|
+
ArchivistInsertQuerySchema,
|
|
110
74
|
...super.queries
|
|
111
75
|
];
|
|
112
76
|
async head() {
|
|
113
77
|
const head = await (await this.payloads.find({})).sort({
|
|
114
78
|
_timestamp: -1
|
|
115
79
|
}).limit(1).toArray();
|
|
116
|
-
return head[0] ?
|
|
80
|
+
return head[0] ? (await PayloadWrapper2.wrap(head[0])).jsonPayload() : void 0;
|
|
117
81
|
}
|
|
118
82
|
async getHandler(hashes) {
|
|
119
|
-
|
|
83
|
+
let remainingHashes = [
|
|
84
|
+
...hashes
|
|
85
|
+
];
|
|
86
|
+
const dataPayloads = (await Promise.all(remainingHashes.map((_$hash) => this.payloads.findOne({
|
|
87
|
+
_$hash
|
|
88
|
+
})))).filter(exists);
|
|
89
|
+
const dataPayloadsHashes = dataPayloads.map((payload) => payload._$hash);
|
|
90
|
+
remainingHashes = remainingHashes.filter((hash) => !dataPayloadsHashes.includes(hash));
|
|
91
|
+
const dataBws = (await Promise.all(remainingHashes.map((_$hash) => this.boundWitnesses.findOne({
|
|
92
|
+
_$hash
|
|
93
|
+
})))).filter(exists);
|
|
94
|
+
const dataBwsHashes = dataBws.map((payload) => payload._$hash);
|
|
95
|
+
remainingHashes = remainingHashes.filter((hash) => !dataBwsHashes.includes(hash));
|
|
96
|
+
const payloads = (await Promise.all(remainingHashes.map((_hash) => this.payloads.findOne({
|
|
120
97
|
_hash
|
|
121
|
-
}));
|
|
122
|
-
const
|
|
98
|
+
})))).filter(exists);
|
|
99
|
+
const payloadsHashes = payloads.map((payload) => payload._hash);
|
|
100
|
+
remainingHashes = remainingHashes.filter((hash) => !payloadsHashes.includes(hash));
|
|
101
|
+
const bws = (await Promise.all(remainingHashes.map((_hash) => this.boundWitnesses.findOne({
|
|
123
102
|
_hash
|
|
124
|
-
}));
|
|
125
|
-
const
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
103
|
+
})))).filter(exists);
|
|
104
|
+
const bwsHashes = bws.map((payload) => payload._hash);
|
|
105
|
+
remainingHashes = remainingHashes.filter((hash) => !bwsHashes.includes(hash));
|
|
106
|
+
const foundPayloads = [
|
|
107
|
+
...dataPayloads,
|
|
108
|
+
...dataBws,
|
|
109
|
+
...payloads,
|
|
110
|
+
...bws
|
|
111
|
+
];
|
|
112
|
+
return foundPayloads.map(({ _$hash, _$meta, ...other }) => ({
|
|
113
|
+
$hash: _$hash,
|
|
114
|
+
$meta: _$meta,
|
|
115
|
+
...other
|
|
116
|
+
})).map(toReturnValue);
|
|
131
117
|
}
|
|
132
118
|
async insertHandler(payloads) {
|
|
133
119
|
const [bw, p] = await validByType(payloads);
|
|
134
|
-
const
|
|
135
|
-
if (
|
|
136
|
-
const payloadsResult = await this.payloads.insertMany(
|
|
137
|
-
if (!payloadsResult.acknowledged || payloadsResult.insertedCount !==
|
|
120
|
+
const payloadsWithExternalMeta = await Promise.all(p.map((x) => toPayloadWithMongoMeta(x)));
|
|
121
|
+
if (payloadsWithExternalMeta.length) {
|
|
122
|
+
const payloadsResult = await this.payloads.insertMany(payloadsWithExternalMeta);
|
|
123
|
+
if (!payloadsResult.acknowledged || payloadsResult.insertedCount !== payloadsWithExternalMeta.length)
|
|
138
124
|
throw new Error("MongoDBDeterministicArchivist: Error inserting Payloads");
|
|
139
125
|
}
|
|
140
|
-
const
|
|
141
|
-
if (
|
|
142
|
-
const boundWitnessesResult = await this.boundWitnesses.insertMany(
|
|
143
|
-
if (!boundWitnessesResult.acknowledged || boundWitnessesResult.insertedCount !==
|
|
126
|
+
const boundWitnessesWithExternalMeta = await Promise.all(bw.map((x) => toPayloadWithMongoMeta(x)));
|
|
127
|
+
if (boundWitnessesWithExternalMeta.length) {
|
|
128
|
+
const boundWitnessesResult = await this.boundWitnesses.insertMany(boundWitnessesWithExternalMeta);
|
|
129
|
+
if (!boundWitnessesResult.acknowledged || boundWitnessesResult.insertedCount !== boundWitnessesWithExternalMeta.length)
|
|
144
130
|
throw new Error("MongoDBDeterministicArchivist: Error inserting BoundWitnesses");
|
|
145
131
|
}
|
|
146
|
-
return
|
|
132
|
+
return [
|
|
133
|
+
...boundWitnessesWithExternalMeta,
|
|
134
|
+
...payloadsWithExternalMeta
|
|
135
|
+
];
|
|
147
136
|
}
|
|
148
137
|
async startHandler() {
|
|
149
138
|
await super.startHandler();
|
|
@@ -153,16 +142,14 @@ var _MongoDBArchivist = class _MongoDBArchivist extends MongoDBArchivistBase {
|
|
|
153
142
|
};
|
|
154
143
|
__name(_MongoDBArchivist, "MongoDBArchivist");
|
|
155
144
|
__publicField(_MongoDBArchivist, "configSchemas", [
|
|
156
|
-
|
|
157
|
-
|
|
145
|
+
MongoDBArchivistConfigSchema,
|
|
146
|
+
ArchivistConfigSchema
|
|
158
147
|
]);
|
|
159
148
|
var MongoDBArchivist = _MongoDBArchivist;
|
|
160
149
|
|
|
161
150
|
// src/index.ts
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
...require("@xyo-network/archivist-model-mongodb")
|
|
167
|
-
});
|
|
151
|
+
export * from "@xyo-network/archivist-model-mongodb";
|
|
152
|
+
export {
|
|
153
|
+
MongoDBArchivist
|
|
154
|
+
};
|
|
168
155
|
//# sourceMappingURL=index.js.map
|
package/dist/node/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts","../../src/Archivist.ts","../../src/lib/toBoundWitnessWithMeta.ts","../../src/lib/toPayloadWithMeta.ts","../../src/lib/toReturnValue.ts","../../src/lib/validByType.ts"],"sourcesContent":["export * from './Archivist'\nexport * from '@xyo-network/archivist-model-mongodb'\n","import { exists } from '@xylabs/exists'\nimport { fulfilledValues } from '@xylabs/promise'\nimport { AbstractArchivist } from '@xyo-network/archivist-abstract'\nimport { ArchivistConfigSchema, ArchivistInsertQuerySchema } from '@xyo-network/archivist-model'\nimport { MongoDBArchivistConfigSchema } from '@xyo-network/archivist-model-mongodb'\nimport { MongoDBModuleMixin } from '@xyo-network/module-abstract-mongodb'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadWithPartialMeta } from '@xyo-network/payload-mongodb'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\n\nimport { toBoundWitnessWithMeta, toPayloadWithMeta, toReturnValue, validByType } from './lib'\n\nconst MongoDBArchivistBase = MongoDBModuleMixin(AbstractArchivist)\n\nexport class MongoDBArchivist extends MongoDBArchivistBase {\n static override configSchemas = [MongoDBArchivistConfigSchema, ArchivistConfigSchema]\n\n override readonly queries: string[] = [ArchivistInsertQuerySchema, ...super.queries]\n\n override async head(): Promise<Payload | undefined> {\n const head = await (await this.payloads.find({})).sort({ _timestamp: -1 }).limit(1).toArray()\n return head[0] ? PayloadWrapper.wrap(head[0]).body() : undefined\n }\n\n protected override async getHandler(hashes: string[]): Promise<Payload[]> {\n const payloads = hashes.map((_hash) => this.payloads.findOne({ _hash }))\n const bws = hashes.map((_hash) => this.boundWitnesses.findOne({ _hash }))\n const gets = await Promise.allSettled([payloads, bws].flat())\n const succeeded = gets.reduce<(PayloadWithPartialMeta | null)[]>(fulfilledValues, []) as Payload[]\n return succeeded.filter(exists).map(toReturnValue)\n }\n\n protected override async insertHandler(payloads?: Payload[]): Promise<Payload[]> {\n const [bw, p] = await validByType(payloads)\n const payloadsWithMeta = await Promise.all(p.map((x) => toPayloadWithMeta(x)))\n if (payloadsWithMeta.length) {\n const payloadsResult = await this.payloads.insertMany(payloadsWithMeta)\n if (!payloadsResult.acknowledged || payloadsResult.insertedCount !== payloadsWithMeta.length)\n throw new Error('MongoDBDeterministicArchivist: Error inserting Payloads')\n }\n const boundWitnesses = await Promise.all(bw.map((x) => toBoundWitnessWithMeta(x)))\n if (boundWitnesses.length) {\n const boundWitnessesResult = await this.boundWitnesses.insertMany(boundWitnesses)\n if (!boundWitnessesResult.acknowledged || boundWitnessesResult.insertedCount !== boundWitnesses.length)\n throw new Error('MongoDBDeterministicArchivist: Error inserting BoundWitnesses')\n }\n return payloads ?? []\n }\n\n protected override async startHandler() {\n await super.startHandler()\n await this.ensureIndexes()\n return true\n }\n}\n","import { QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-builder'\nimport { BoundWitness } from '@xyo-network/boundwitness-model'\nimport { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'\nimport { BoundWitnessWithMeta } from '@xyo-network/payload-mongodb'\n\nexport const toBoundWitnessWithMeta = async (wrapper: BoundWitnessWrapper | QueryBoundWitnessWrapper): Promise<BoundWitnessWithMeta> => {\n const bw = wrapper.boundwitness as BoundWitness\n return { ...bw, _hash: await wrapper.hashAsync(), _timestamp: Date.now() }\n}\n","import { PayloadWithMeta } from '@xyo-network/payload-mongodb'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\n\nexport const toPayloadWithMeta = async (wrapper: PayloadWrapper): Promise<PayloadWithMeta> => {\n return { ...wrapper.payload(), _hash: await wrapper.hashAsync(), _timestamp: Date.now() }\n}\n","import { BoundWitness } from '@xyo-network/boundwitness-model'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\n\nexport const toReturnValue = (value: Payload | BoundWitness): Payload => {\n const _signatures = (value as BoundWitness)?._signatures\n if (_signatures) {\n return { ...PayloadWrapper.wrap(value).body(), _signatures } as BoundWitness\n } else {\n return { ...PayloadWrapper.wrap(value).body() }\n }\n}\n","import { QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-builder'\nimport { isBoundWitness, isQueryBoundWitness } from '@xyo-network/boundwitness-model'\nimport { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\n\nexport const validByType = async (payloads: Payload[] = []) => {\n const results: [BoundWitnessWrapper[], PayloadWrapper[]] = [[], []]\n await Promise.all(\n payloads.map(async (payload) => {\n if (isBoundWitness(payload)) {\n const wrapper = isQueryBoundWitness(payload) ? QueryBoundWitnessWrapper : BoundWitnessWrapper\n const bw = wrapper.parse(payload)\n if (await bw.getValid()) {\n results[0].push(bw)\n }\n } else {\n const payloadWrapper = PayloadWrapper.wrap(payload)\n if (await payloadWrapper.getValid()) {\n results[1].push(payloadWrapper)\n }\n }\n }),\n )\n return results\n}\n"],"mappings":"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","names":["import_payload_wrapper","toBoundWitnessWithMeta","wrapper","bw","boundwitness","_hash","hashAsync","_timestamp","Date","now","toPayloadWithMeta","wrapper","payload","_hash","hashAsync","_timestamp","Date","now","toReturnValue","value","_signatures","PayloadWrapper","wrap","body","import_payload_wrapper","validByType","payloads","results","Promise","all","map","payload","isBoundWitness","wrapper","isQueryBoundWitness","QueryBoundWitnessWrapper","BoundWitnessWrapper","bw","parse","getValid","push","payloadWrapper","PayloadWrapper","wrap","MongoDBArchivistBase","MongoDBModuleMixin","AbstractArchivist","MongoDBArchivist","queries","ArchivistInsertQuerySchema","head","payloads","find","sort","_timestamp","limit","toArray","PayloadWrapper","wrap","body","undefined","getHandler","hashes","map","_hash","findOne","bws","boundWitnesses","gets","Promise","allSettled","flat","succeeded","reduce","fulfilledValues","filter","exists","toReturnValue","insertHandler","bw","p","validByType","payloadsWithMeta","all","x","toPayloadWithMeta","length","payloadsResult","insertMany","acknowledged","insertedCount","Error","toBoundWitnessWithMeta","boundWitnessesResult","startHandler","ensureIndexes","configSchemas","MongoDBArchivistConfigSchema","ArchivistConfigSchema"]}
|
|
1
|
+
{"version":3,"sources":["../../src/Archivist.ts","../../src/lib/toPayloadWithMongoMeta.ts","../../src/lib/toReturnValue.ts","../../src/lib/validByType.ts","../../src/index.ts"],"sourcesContent":["import { exists } from '@xylabs/exists'\nimport { Hash } from '@xylabs/hex'\nimport { AbstractArchivist } from '@xyo-network/archivist-abstract'\nimport { ArchivistConfigSchema, ArchivistInsertQuerySchema } from '@xyo-network/archivist-model'\nimport { MongoDBArchivistConfigSchema } from '@xyo-network/archivist-model-mongodb'\nimport { MongoDBModuleMixin } from '@xyo-network/module-abstract-mongodb'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadWithMongoMeta } from '@xyo-network/payload-mongodb'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\n\nimport { toPayloadWithMongoMeta, toReturnValue, validByType } from './lib'\n\nconst MongoDBArchivistBase = MongoDBModuleMixin(AbstractArchivist)\n\nexport class MongoDBArchivist extends MongoDBArchivistBase {\n static override configSchemas = [MongoDBArchivistConfigSchema, ArchivistConfigSchema]\n\n override readonly queries: string[] = [ArchivistInsertQuerySchema, ...super.queries]\n\n override async head(): Promise<Payload | undefined> {\n const head = await (await this.payloads.find({})).sort({ _timestamp: -1 }).limit(1).toArray()\n return head[0] ? (await PayloadWrapper.wrap(head[0])).jsonPayload() : undefined\n }\n\n protected override async getHandler(hashes: string[]): Promise<Payload[]> {\n let remainingHashes = [...hashes]\n\n const dataPayloads = (await Promise.all(remainingHashes.map((_$hash) => this.payloads.findOne({ _$hash })))).filter(exists)\n const dataPayloadsHashes = dataPayloads.map((payload) => payload._$hash)\n remainingHashes = remainingHashes.filter((hash) => !dataPayloadsHashes.includes(hash))\n\n const dataBws = (await Promise.all(remainingHashes.map((_$hash) => this.boundWitnesses.findOne({ _$hash })))).filter(exists)\n const dataBwsHashes = dataBws.map((payload) => payload._$hash)\n remainingHashes = remainingHashes.filter((hash) => !dataBwsHashes.includes(hash))\n\n const payloads = (await Promise.all(remainingHashes.map((_hash) => this.payloads.findOne({ _hash })))).filter(exists)\n const payloadsHashes = payloads.map((payload) => payload._hash)\n remainingHashes = remainingHashes.filter((hash) => !payloadsHashes.includes(hash))\n\n const bws = (await Promise.all(remainingHashes.map((_hash) => this.boundWitnesses.findOne({ _hash })))).filter(exists)\n const bwsHashes = bws.map((payload) => payload._hash)\n remainingHashes = remainingHashes.filter((hash) => !bwsHashes.includes(hash))\n\n const foundPayloads = [...dataPayloads, ...dataBws, ...payloads, ...bws] as PayloadWithMongoMeta<Payload & { _$hash: Hash; _$meta?: unknown }>[]\n return foundPayloads.map(({ _$hash, _$meta, ...other }) => ({ $hash: _$hash, $meta: _$meta, ...other })).map(toReturnValue)\n }\n\n protected override async insertHandler(payloads: Payload[]): Promise<Payload[]> {\n const [bw, p] = await validByType(payloads)\n const payloadsWithExternalMeta = await Promise.all(p.map((x) => toPayloadWithMongoMeta(x)))\n if (payloadsWithExternalMeta.length) {\n const payloadsResult = await this.payloads.insertMany(payloadsWithExternalMeta)\n if (!payloadsResult.acknowledged || payloadsResult.insertedCount !== payloadsWithExternalMeta.length)\n throw new Error('MongoDBDeterministicArchivist: Error inserting Payloads')\n }\n const boundWitnessesWithExternalMeta = await Promise.all(bw.map((x) => toPayloadWithMongoMeta(x)))\n if (boundWitnessesWithExternalMeta.length) {\n const boundWitnessesResult = await this.boundWitnesses.insertMany(boundWitnessesWithExternalMeta)\n if (!boundWitnessesResult.acknowledged || boundWitnessesResult.insertedCount !== boundWitnessesWithExternalMeta.length)\n throw new Error('MongoDBDeterministicArchivist: Error inserting BoundWitnesses')\n }\n\n return [...boundWitnessesWithExternalMeta, ...payloadsWithExternalMeta]\n }\n\n protected override async startHandler() {\n await super.startHandler()\n await this.ensureIndexes()\n return true\n }\n}\n","import { PayloadBuilder } from '@xyo-network/payload-builder'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadWithMongoMeta } from '@xyo-network/payload-mongodb'\n\nexport const toPayloadWithMongoMeta = async <T extends Payload>(payload: T): Promise<PayloadWithMongoMeta<T>> => {\n const built = await PayloadBuilder.build(payload)\n const _hash = await PayloadBuilder.hash(built)\n const { $hash, $meta, ...fields } = built\n return { ...fields, _$hash: $hash, _$meta: $meta, _hash, _timestamp: Date.now() } as PayloadWithMongoMeta<T>\n}\n","import { deepOmitPrefixedFields } from '@xyo-network/hash'\nimport { Payload } from '@xyo-network/payload-model'\n\nexport const toReturnValue = (value: Payload): Payload => {\n return deepOmitPrefixedFields(value, '_')\n}\n","import { QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-builder'\nimport { BoundWitness, isBoundWitness, isQueryBoundWitness } from '@xyo-network/boundwitness-model'\nimport { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\n\nexport const validByType = async (payloads: Payload[] = []) => {\n const results: [BoundWitness[], Payload[]] = [[], []]\n await Promise.all(\n payloads.map(async (payload) => {\n if (isBoundWitness(payload)) {\n const wrapper = isQueryBoundWitness(payload) ? QueryBoundWitnessWrapper : BoundWitnessWrapper\n const bw = await wrapper.parse(payload)\n if (await bw.getValid()) {\n results[0].push(bw.jsonPayload())\n } else {\n const errors = await bw.getErrors()\n console.log(`validByType.Error: ${JSON.stringify(errors, null, 2)}`)\n }\n } else {\n const payloadWrapper = await PayloadWrapper.wrap(payload)\n if (await payloadWrapper.getValid()) {\n results[1].push(payloadWrapper.jsonPayload())\n }\n }\n return\n }),\n )\n return results\n}\n","export * from './Archivist'\nexport * from '@xyo-network/archivist-model-mongodb'\n"],"mappings":"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","names":["exists","AbstractArchivist","ArchivistConfigSchema","ArchivistInsertQuerySchema","MongoDBArchivistConfigSchema","MongoDBModuleMixin","PayloadWrapper","PayloadBuilder","toPayloadWithMongoMeta","payload","built","PayloadBuilder","build","_hash","hash","$hash","$meta","fields","_$hash","_$meta","_timestamp","Date","now","deepOmitPrefixedFields","toReturnValue","value","deepOmitPrefixedFields","QueryBoundWitnessWrapper","isBoundWitness","isQueryBoundWitness","BoundWitnessWrapper","PayloadWrapper","validByType","payloads","results","Promise","all","map","payload","isBoundWitness","wrapper","isQueryBoundWitness","QueryBoundWitnessWrapper","BoundWitnessWrapper","bw","parse","getValid","push","jsonPayload","errors","getErrors","console","log","JSON","stringify","payloadWrapper","PayloadWrapper","wrap","MongoDBArchivistBase","MongoDBModuleMixin","AbstractArchivist","MongoDBArchivist","queries","ArchivistInsertQuerySchema","head","payloads","find","sort","_timestamp","limit","toArray","PayloadWrapper","wrap","jsonPayload","undefined","getHandler","hashes","remainingHashes","dataPayloads","Promise","all","map","_$hash","findOne","filter","exists","dataPayloadsHashes","payload","hash","includes","dataBws","boundWitnesses","dataBwsHashes","_hash","payloadsHashes","bws","bwsHashes","foundPayloads","_$meta","other","$hash","$meta","toReturnValue","insertHandler","bw","p","validByType","payloadsWithExternalMeta","x","toPayloadWithMongoMeta","length","payloadsResult","insertMany","acknowledged","insertedCount","Error","boundWitnessesWithExternalMeta","boundWitnessesResult","startHandler","ensureIndexes","configSchemas","MongoDBArchivistConfigSchema","ArchivistConfigSchema"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA"}
|
package/dist/node/lib/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA;AACxC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toPayloadWithMongoMeta.d.ts","sourceRoot":"","sources":["../../../src/lib/toPayloadWithMongoMeta.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAEnE,eAAO,MAAM,sBAAsB;;2DAKlC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toPayloadWithMongoMeta.d.ts","sourceRoot":"","sources":["../../../src/lib/toPayloadWithMongoMeta.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAEnE,eAAO,MAAM,sBAAsB;;2DAKlC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toPayloadWithMongoMeta.d.ts","sourceRoot":"","sources":["../../../src/lib/toPayloadWithMongoMeta.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAEnE,eAAO,MAAM,sBAAsB;;2DAKlC,CAAA"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { BoundWitness } from '@xyo-network/boundwitness-model';
|
|
2
1
|
import { Payload } from '@xyo-network/payload-model';
|
|
3
|
-
export declare const toReturnValue: (value: Payload
|
|
2
|
+
export declare const toReturnValue: (value: Payload) => Payload;
|
|
4
3
|
//# sourceMappingURL=toReturnValue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toReturnValue.d.ts","sourceRoot":"","sources":["../../../src/lib/toReturnValue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toReturnValue.d.ts","sourceRoot":"","sources":["../../../src/lib/toReturnValue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,OAE9C,CAAA"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { BoundWitness } from '@xyo-network/boundwitness-model';
|
|
2
1
|
import { Payload } from '@xyo-network/payload-model';
|
|
3
|
-
export declare const toReturnValue: (value: Payload
|
|
2
|
+
export declare const toReturnValue: (value: Payload) => Payload;
|
|
4
3
|
//# sourceMappingURL=toReturnValue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toReturnValue.d.ts","sourceRoot":"","sources":["../../../src/lib/toReturnValue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toReturnValue.d.ts","sourceRoot":"","sources":["../../../src/lib/toReturnValue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,OAE9C,CAAA"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { BoundWitness } from '@xyo-network/boundwitness-model';
|
|
2
1
|
import { Payload } from '@xyo-network/payload-model';
|
|
3
|
-
export declare const toReturnValue: (value: Payload
|
|
2
|
+
export declare const toReturnValue: (value: Payload) => Payload;
|
|
4
3
|
//# sourceMappingURL=toReturnValue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toReturnValue.d.ts","sourceRoot":"","sources":["../../../src/lib/toReturnValue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toReturnValue.d.ts","sourceRoot":"","sources":["../../../src/lib/toReturnValue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,OAE9C,CAAA"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper';
|
|
2
1
|
import { Payload } from '@xyo-network/payload-model';
|
|
3
|
-
|
|
4
|
-
export declare const validByType: (payloads?: Payload[]) => Promise<[BoundWitnessWrapper<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
|
|
2
|
+
export declare const validByType: (payloads?: Payload[]) => Promise<[(import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
|
|
5
3
|
schema: "network.xyo.boundwitness";
|
|
6
|
-
}, {
|
|
4
|
+
})[], ({
|
|
7
5
|
schema: string;
|
|
8
|
-
}
|
|
9
|
-
schema: string;
|
|
10
|
-
}>[]]>;
|
|
6
|
+
} & object)[]]>;
|
|
11
7
|
//# sourceMappingURL=validByType.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validByType.d.ts","sourceRoot":"","sources":["../../../src/lib/validByType.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"validByType.d.ts","sourceRoot":"","sources":["../../../src/lib/validByType.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAGpD,eAAO,MAAM,WAAW,cAAoB,OAAO,EAAE;;;;eAuBpD,CAAA"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper';
|
|
2
1
|
import { Payload } from '@xyo-network/payload-model';
|
|
3
|
-
|
|
4
|
-
export declare const validByType: (payloads?: Payload[]) => Promise<[BoundWitnessWrapper<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
|
|
2
|
+
export declare const validByType: (payloads?: Payload[]) => Promise<[(import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
|
|
5
3
|
schema: "network.xyo.boundwitness";
|
|
6
|
-
}, {
|
|
4
|
+
})[], ({
|
|
7
5
|
schema: string;
|
|
8
|
-
}
|
|
9
|
-
schema: string;
|
|
10
|
-
}>[]]>;
|
|
6
|
+
} & object)[]]>;
|
|
11
7
|
//# sourceMappingURL=validByType.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validByType.d.ts","sourceRoot":"","sources":["../../../src/lib/validByType.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"validByType.d.ts","sourceRoot":"","sources":["../../../src/lib/validByType.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAGpD,eAAO,MAAM,WAAW,cAAoB,OAAO,EAAE;;;;eAuBpD,CAAA"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import { BoundWitnessWrapper } from '@xyo-network/boundwitness-wrapper';
|
|
2
1
|
import { Payload } from '@xyo-network/payload-model';
|
|
3
|
-
|
|
4
|
-
export declare const validByType: (payloads?: Payload[]) => Promise<[BoundWitnessWrapper<import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
|
|
2
|
+
export declare const validByType: (payloads?: Payload[]) => Promise<[(import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
|
|
5
3
|
schema: "network.xyo.boundwitness";
|
|
6
|
-
}, {
|
|
4
|
+
})[], ({
|
|
7
5
|
schema: string;
|
|
8
|
-
}
|
|
9
|
-
schema: string;
|
|
10
|
-
}>[]]>;
|
|
6
|
+
} & object)[]]>;
|
|
11
7
|
//# sourceMappingURL=validByType.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validByType.d.ts","sourceRoot":"","sources":["../../../src/lib/validByType.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"validByType.d.ts","sourceRoot":"","sources":["../../../src/lib/validByType.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAGpD,eAAO,MAAM,WAAW,cAAoB,OAAO,EAAE;;;;eAuBpD,CAAA"}
|
package/package.json
CHANGED
|
@@ -10,36 +10,36 @@
|
|
|
10
10
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@xylabs/exists": "^2.
|
|
14
|
-
"@xylabs/
|
|
15
|
-
"@xyo-network/archivist-abstract": "^2.
|
|
16
|
-
"@xyo-network/archivist-model": "^2.
|
|
17
|
-
"@xyo-network/archivist-model-mongodb": "~2.
|
|
18
|
-
"@xyo-network/boundwitness-builder": "^2.
|
|
19
|
-
"@xyo-network/boundwitness-model": "^2.
|
|
20
|
-
"@xyo-network/boundwitness-wrapper": "^2.
|
|
21
|
-
"@xyo-network/
|
|
22
|
-
"@xyo-network/
|
|
23
|
-
"@xyo-network/payload-
|
|
24
|
-
"@xyo-network/payload-
|
|
25
|
-
"@xyo-network/
|
|
13
|
+
"@xylabs/exists": "^2.14.0",
|
|
14
|
+
"@xylabs/hex": "^2.14.0",
|
|
15
|
+
"@xyo-network/archivist-abstract": "^2.89.0-rc.12",
|
|
16
|
+
"@xyo-network/archivist-model": "^2.89.0-rc.12",
|
|
17
|
+
"@xyo-network/archivist-model-mongodb": "~2.84.0-rc.1",
|
|
18
|
+
"@xyo-network/boundwitness-builder": "^2.89.0-rc.12",
|
|
19
|
+
"@xyo-network/boundwitness-model": "^2.89.0-rc.12",
|
|
20
|
+
"@xyo-network/boundwitness-wrapper": "^2.89.0-rc.12",
|
|
21
|
+
"@xyo-network/hash": "^2.89.0-rc.12",
|
|
22
|
+
"@xyo-network/module-abstract-mongodb": "~2.84.0-rc.1",
|
|
23
|
+
"@xyo-network/payload-builder": "^2.89.0-rc.12",
|
|
24
|
+
"@xyo-network/payload-model": "^2.89.0-rc.12",
|
|
25
|
+
"@xyo-network/payload-mongodb": "~2.84.0-rc.1",
|
|
26
|
+
"@xyo-network/payload-wrapper": "^2.89.0-rc.12"
|
|
26
27
|
},
|
|
27
28
|
"devDependencies": {
|
|
28
|
-
"@xylabs/
|
|
29
|
-
"@xylabs/
|
|
30
|
-
"@xylabs/
|
|
31
|
-
"@
|
|
32
|
-
"@xyo-network/account
|
|
33
|
-
"@xyo-network/
|
|
34
|
-
"@xyo-network/
|
|
35
|
-
"@xyo-network/payload-builder": "^2.
|
|
36
|
-
"@xyo-network/sdk-xyo-mongo-js": "~2.
|
|
29
|
+
"@xylabs/arraybuffer": "^2.14.0",
|
|
30
|
+
"@xylabs/jest-helpers": "^2.14.0",
|
|
31
|
+
"@xylabs/ts-scripts-yarn3": "^3.2.42",
|
|
32
|
+
"@xylabs/tsconfig": "^3.2.42",
|
|
33
|
+
"@xyo-network/account": "^2.89.0-rc.12",
|
|
34
|
+
"@xyo-network/account-model": "^2.89.0-rc.12",
|
|
35
|
+
"@xyo-network/archivist-wrapper": "^2.89.0-rc.12",
|
|
36
|
+
"@xyo-network/payload-builder": "^2.89.0-rc.12",
|
|
37
|
+
"@xyo-network/sdk-xyo-mongo-js": "~2.84.0-rc.1",
|
|
37
38
|
"fake-indexeddb": "^4.0.2",
|
|
38
39
|
"jest": "^29.7.0",
|
|
39
|
-
"typescript": "^5.3.
|
|
40
|
+
"typescript": "^5.3.3"
|
|
40
41
|
},
|
|
41
42
|
"description": "Primary SDK for using XYO Protocol 2.0",
|
|
42
|
-
"docs": "dist/docs.json",
|
|
43
43
|
"types": "dist/node/index.d.ts",
|
|
44
44
|
"exports": {
|
|
45
45
|
".": {
|
|
@@ -55,19 +55,19 @@
|
|
|
55
55
|
},
|
|
56
56
|
"node": {
|
|
57
57
|
"require": {
|
|
58
|
-
"types": "./dist/node/index.d.
|
|
59
|
-
"default": "./dist/node/index.
|
|
58
|
+
"types": "./dist/node/index.d.cts",
|
|
59
|
+
"default": "./dist/node/index.cjs"
|
|
60
60
|
},
|
|
61
61
|
"import": {
|
|
62
62
|
"types": "./dist/node/index.d.mts",
|
|
63
|
-
"default": "./dist/node/index.
|
|
63
|
+
"default": "./dist/node/index.js"
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
},
|
|
67
67
|
"./package.json": "./package.json"
|
|
68
68
|
},
|
|
69
|
-
"main": "dist/node/index.
|
|
70
|
-
"module": "dist/node/index.
|
|
69
|
+
"main": "dist/node/index.cjs",
|
|
70
|
+
"module": "dist/node/index.js",
|
|
71
71
|
"homepage": "https://xyo.network",
|
|
72
72
|
"license": "LGPL-3.0-only",
|
|
73
73
|
"publishConfig": {
|
|
@@ -78,5 +78,7 @@
|
|
|
78
78
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
|
|
79
79
|
},
|
|
80
80
|
"sideEffects": false,
|
|
81
|
-
"version": "2.
|
|
81
|
+
"version": "2.84.0-rc.1",
|
|
82
|
+
"type": "module",
|
|
83
|
+
"stableVersion": "2.83.0"
|
|
82
84
|
}
|