@xyo-network/archivist-mongodb 2.75.3 → 2.75.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/Archivist.js +72 -7
- package/dist/browser/Archivist.js.map +1 -1
- package/dist/browser/index.js +166 -1
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/lib/index.js +70 -4
- package/dist/browser/lib/index.js.map +1 -1
- package/dist/browser/lib/toBoundWitnessWithMeta.js +3 -1
- package/dist/browser/lib/toBoundWitnessWithMeta.js.map +1 -1
- package/dist/browser/lib/toPayloadWithMeta.js +3 -1
- package/dist/browser/lib/toPayloadWithMeta.js.map +1 -1
- package/dist/browser/lib/toReturnValue.js +3 -1
- package/dist/browser/lib/toReturnValue.js.map +1 -1
- package/dist/browser/lib/validByType.js +3 -1
- package/dist/browser/lib/validByType.js.map +1 -1
- package/dist/docs.json +11 -11
- package/package.json +17 -17
|
@@ -1,14 +1,79 @@
|
|
|
1
1
|
var __defProp = Object.defineProperty;
|
|
2
2
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
|
|
4
|
+
// src/Archivist.ts
|
|
3
5
|
import { exists } from "@xylabs/exists";
|
|
4
6
|
import { fulfilledValues } from "@xylabs/promise";
|
|
5
7
|
import { AbstractArchivist } from "@xyo-network/archivist-abstract";
|
|
6
8
|
import { ArchivistConfigSchema, ArchivistInsertQuerySchema } from "@xyo-network/archivist-model";
|
|
7
9
|
import { MongoDBArchivistConfigSchema } from "@xyo-network/archivist-model-mongodb";
|
|
8
10
|
import { MongoDBModuleMixin } from "@xyo-network/module-abstract-mongodb";
|
|
11
|
+
import { PayloadWrapper as PayloadWrapper3 } from "@xyo-network/payload-wrapper";
|
|
12
|
+
|
|
13
|
+
// src/lib/toBoundWitnessWithMeta.ts
|
|
14
|
+
var toBoundWitnessWithMeta = /* @__PURE__ */ __name(async (wrapper) => {
|
|
15
|
+
const bw = wrapper.boundwitness;
|
|
16
|
+
return {
|
|
17
|
+
...bw,
|
|
18
|
+
_hash: await wrapper.hashAsync(),
|
|
19
|
+
_timestamp: Date.now()
|
|
20
|
+
};
|
|
21
|
+
}, "toBoundWitnessWithMeta");
|
|
22
|
+
|
|
23
|
+
// src/lib/toPayloadWithMeta.ts
|
|
24
|
+
var toPayloadWithMeta = /* @__PURE__ */ __name(async (wrapper) => {
|
|
25
|
+
return {
|
|
26
|
+
...wrapper.payload(),
|
|
27
|
+
_hash: await wrapper.hashAsync(),
|
|
28
|
+
_timestamp: Date.now()
|
|
29
|
+
};
|
|
30
|
+
}, "toPayloadWithMeta");
|
|
31
|
+
|
|
32
|
+
// src/lib/toReturnValue.ts
|
|
9
33
|
import { PayloadWrapper } from "@xyo-network/payload-wrapper";
|
|
10
|
-
|
|
11
|
-
const
|
|
34
|
+
var toReturnValue = /* @__PURE__ */ __name((value) => {
|
|
35
|
+
const _signatures = value?._signatures;
|
|
36
|
+
if (_signatures) {
|
|
37
|
+
return {
|
|
38
|
+
...PayloadWrapper.wrap(value).body(),
|
|
39
|
+
_signatures
|
|
40
|
+
};
|
|
41
|
+
} else {
|
|
42
|
+
return {
|
|
43
|
+
...PayloadWrapper.wrap(value).body()
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
}, "toReturnValue");
|
|
47
|
+
|
|
48
|
+
// src/lib/validByType.ts
|
|
49
|
+
import { isQueryBoundWitness, QueryBoundWitnessWrapper } from "@xyo-network/boundwitness-builder";
|
|
50
|
+
import { isBoundWitness } from "@xyo-network/boundwitness-model";
|
|
51
|
+
import { BoundWitnessWrapper } from "@xyo-network/boundwitness-wrapper";
|
|
52
|
+
import { PayloadWrapper as PayloadWrapper2 } from "@xyo-network/payload-wrapper";
|
|
53
|
+
var validByType = /* @__PURE__ */ __name(async (payloads = []) => {
|
|
54
|
+
const results = [
|
|
55
|
+
[],
|
|
56
|
+
[]
|
|
57
|
+
];
|
|
58
|
+
await Promise.all(payloads.map(async (payload) => {
|
|
59
|
+
if (isBoundWitness(payload)) {
|
|
60
|
+
const wrapper = isQueryBoundWitness(payload) ? QueryBoundWitnessWrapper : BoundWitnessWrapper;
|
|
61
|
+
const bw = wrapper.parse(payload);
|
|
62
|
+
if (await bw.getValid()) {
|
|
63
|
+
results[0].push(bw);
|
|
64
|
+
}
|
|
65
|
+
} else {
|
|
66
|
+
const payloadWrapper = PayloadWrapper2.wrap(payload);
|
|
67
|
+
if (await payloadWrapper.getValid()) {
|
|
68
|
+
results[1].push(payloadWrapper);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}));
|
|
72
|
+
return results;
|
|
73
|
+
}, "validByType");
|
|
74
|
+
|
|
75
|
+
// src/Archivist.ts
|
|
76
|
+
var getBoundWitnessesIndexes = /* @__PURE__ */ __name((collectionName) => {
|
|
12
77
|
return [
|
|
13
78
|
{
|
|
14
79
|
// eslint-disable-next-line sort-keys-fix/sort-keys-fix
|
|
@@ -19,7 +84,7 @@ const getBoundWitnessesIndexes = /* @__PURE__ */ __name((collectionName) => {
|
|
|
19
84
|
}
|
|
20
85
|
];
|
|
21
86
|
}, "getBoundWitnessesIndexes");
|
|
22
|
-
|
|
87
|
+
var getPayloadsIndexes = /* @__PURE__ */ __name((collectionName) => {
|
|
23
88
|
return [
|
|
24
89
|
{
|
|
25
90
|
// eslint-disable-next-line sort-keys-fix/sort-keys-fix
|
|
@@ -30,8 +95,8 @@ const getPayloadsIndexes = /* @__PURE__ */ __name((collectionName) => {
|
|
|
30
95
|
}
|
|
31
96
|
];
|
|
32
97
|
}, "getPayloadsIndexes");
|
|
33
|
-
|
|
34
|
-
|
|
98
|
+
var MongoDBArchivistBase = MongoDBModuleMixin(AbstractArchivist);
|
|
99
|
+
var MongoDBArchivist = class extends MongoDBArchivistBase {
|
|
35
100
|
static {
|
|
36
101
|
__name(this, "MongoDBArchivist");
|
|
37
102
|
}
|
|
@@ -47,7 +112,7 @@ class MongoDBArchivist extends MongoDBArchivistBase {
|
|
|
47
112
|
const head = await (await this.payloads.find({})).sort({
|
|
48
113
|
_timestamp: -1
|
|
49
114
|
}).limit(1).toArray();
|
|
50
|
-
return head[0] ?
|
|
115
|
+
return head[0] ? PayloadWrapper3.wrap(head[0]).body() : void 0;
|
|
51
116
|
}
|
|
52
117
|
async getHandler(hashes) {
|
|
53
118
|
const payloads = hashes.map((_hash) => this.payloads.findOne({
|
|
@@ -93,7 +158,7 @@ class MongoDBArchivist extends MongoDBArchivistBase {
|
|
|
93
158
|
});
|
|
94
159
|
return true;
|
|
95
160
|
}
|
|
96
|
-
}
|
|
161
|
+
};
|
|
97
162
|
export {
|
|
98
163
|
MongoDBArchivist
|
|
99
164
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Archivist.ts"],"sourcesContent":["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 { CollectionIndexFunction, MongoDBModuleMixin } from '@xyo-network/module-abstract-mongodb'\nimport { PayloadWithPartialMeta } from '@xyo-network/node-core-model'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { IndexDescription } from 'mongodb'\n\nimport { toBoundWitnessWithMeta, toPayloadWithMeta, toReturnValue, validByType } from './lib'\n\nconst getBoundWitnessesIndexes: CollectionIndexFunction = (collectionName: string): IndexDescription[] => {\n return [\n {\n // eslint-disable-next-line sort-keys-fix/sort-keys-fix\n key: { _hash: 1 },\n name: `${collectionName}.IX__hash`,\n },\n ]\n}\n\nconst getPayloadsIndexes: CollectionIndexFunction = (collectionName: string): IndexDescription[] => {\n return [\n {\n // eslint-disable-next-line sort-keys-fix/sort-keys-fix\n key: { _hash: 1 },\n name: `${collectionName}.IX__hash`,\n },\n ]\n}\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 boundWitnesses = await Promise.all(bw.map((x) => toBoundWitnessWithMeta(x)))\n const payloadsWithMeta = await Promise.all(p.map((x) => toPayloadWithMeta(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 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 return payloads ?? []\n }\n\n protected override async startHandler() {\n await super.startHandler()\n await this.boundWitnesses.useCollection(async (collection) => {\n const { collectionName } = collection\n const indexes = getBoundWitnessesIndexes(collectionName)\n await collection.createIndexes(indexes)\n })\n await this.payloads.useCollection(async (collection) => {\n const { collectionName } = collection\n const indexes = getPayloadsIndexes(collectionName)\n await collection.createIndexes(indexes)\n })\n return true\n }\n}\n"],"mappings":"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","names":["exists","fulfilledValues","AbstractArchivist","ArchivistConfigSchema","ArchivistInsertQuerySchema","MongoDBArchivistConfigSchema","MongoDBModuleMixin","PayloadWrapper","toBoundWitnessWithMeta","toPayloadWithMeta","toReturnValue","validByType","getBoundWitnessesIndexes","collectionName","key","_hash","name","getPayloadsIndexes","MongoDBArchivistBase","MongoDBArchivist","configSchemas","queries","head","payloads","find","sort","_timestamp","limit","toArray","wrap","body","undefined","getHandler","hashes","map","findOne","bws","boundWitnesses","gets","Promise","allSettled","flat","succeeded","reduce","filter","insertHandler","bw","p","all","x","payloadsWithMeta","length","boundWitnessesResult","insertMany","acknowledged","insertedCount","Error","payloadsResult","startHandler","useCollection","collection","indexes","createIndexes"]}
|
|
1
|
+
{"version":3,"sources":["../../src/Archivist.ts","../../src/lib/toBoundWitnessWithMeta.ts","../../src/lib/toPayloadWithMeta.ts","../../src/lib/toReturnValue.ts","../../src/lib/validByType.ts"],"sourcesContent":["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 { CollectionIndexFunction, MongoDBModuleMixin } from '@xyo-network/module-abstract-mongodb'\nimport { PayloadWithPartialMeta } from '@xyo-network/node-core-model'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { IndexDescription } from 'mongodb'\n\nimport { toBoundWitnessWithMeta, toPayloadWithMeta, toReturnValue, validByType } from './lib'\n\nconst getBoundWitnessesIndexes: CollectionIndexFunction = (collectionName: string): IndexDescription[] => {\n return [\n {\n // eslint-disable-next-line sort-keys-fix/sort-keys-fix\n key: { _hash: 1 },\n name: `${collectionName}.IX__hash`,\n },\n ]\n}\n\nconst getPayloadsIndexes: CollectionIndexFunction = (collectionName: string): IndexDescription[] => {\n return [\n {\n // eslint-disable-next-line sort-keys-fix/sort-keys-fix\n key: { _hash: 1 },\n name: `${collectionName}.IX__hash`,\n },\n ]\n}\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 boundWitnesses = await Promise.all(bw.map((x) => toBoundWitnessWithMeta(x)))\n const payloadsWithMeta = await Promise.all(p.map((x) => toPayloadWithMeta(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 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 return payloads ?? []\n }\n\n protected override async startHandler() {\n await super.startHandler()\n await this.boundWitnesses.useCollection(async (collection) => {\n const { collectionName } = collection\n const indexes = getBoundWitnessesIndexes(collectionName)\n await collection.createIndexes(indexes)\n })\n await this.payloads.useCollection(async (collection) => {\n const { collectionName } = collection\n const indexes = getPayloadsIndexes(collectionName)\n await collection.createIndexes(indexes)\n })\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/node-core-model'\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/node-core-model'\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 { isQueryBoundWitness, QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-builder'\nimport { isBoundWitness } 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":["exists","fulfilledValues","AbstractArchivist","ArchivistConfigSchema","ArchivistInsertQuerySchema","MongoDBArchivistConfigSchema","MongoDBModuleMixin","PayloadWrapper","toBoundWitnessWithMeta","wrapper","bw","boundwitness","_hash","hashAsync","_timestamp","Date","now","toPayloadWithMeta","wrapper","payload","_hash","hashAsync","_timestamp","Date","now","PayloadWrapper","toReturnValue","value","_signatures","PayloadWrapper","wrap","body","isQueryBoundWitness","QueryBoundWitnessWrapper","isBoundWitness","BoundWitnessWrapper","PayloadWrapper","validByType","payloads","results","Promise","all","map","payload","isBoundWitness","wrapper","isQueryBoundWitness","QueryBoundWitnessWrapper","BoundWitnessWrapper","bw","parse","getValid","push","payloadWrapper","PayloadWrapper","wrap","getBoundWitnessesIndexes","collectionName","key","_hash","name","getPayloadsIndexes","MongoDBArchivistBase","MongoDBModuleMixin","AbstractArchivist","MongoDBArchivist","configSchemas","MongoDBArchivistConfigSchema","ArchivistConfigSchema","queries","ArchivistInsertQuerySchema","head","payloads","find","sort","_timestamp","limit","toArray","PayloadWrapper","wrap","body","undefined","getHandler","hashes","map","findOne","bws","boundWitnesses","gets","Promise","allSettled","flat","succeeded","reduce","fulfilledValues","filter","exists","toReturnValue","insertHandler","bw","p","validByType","all","x","toBoundWitnessWithMeta","payloadsWithMeta","toPayloadWithMeta","length","boundWitnessesResult","insertMany","acknowledged","insertedCount","Error","payloadsResult","startHandler","useCollection","collection","indexes","createIndexes"]}
|
package/dist/browser/index.js
CHANGED
|
@@ -1,3 +1,168 @@
|
|
|
1
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
|
|
4
|
+
// src/Archivist.ts
|
|
5
|
+
import { exists } from "@xylabs/exists";
|
|
6
|
+
import { fulfilledValues } from "@xylabs/promise";
|
|
7
|
+
import { AbstractArchivist } from "@xyo-network/archivist-abstract";
|
|
8
|
+
import { ArchivistConfigSchema, ArchivistInsertQuerySchema } from "@xyo-network/archivist-model";
|
|
9
|
+
import { MongoDBArchivistConfigSchema } from "@xyo-network/archivist-model-mongodb";
|
|
10
|
+
import { MongoDBModuleMixin } from "@xyo-network/module-abstract-mongodb";
|
|
11
|
+
import { PayloadWrapper as PayloadWrapper3 } from "@xyo-network/payload-wrapper";
|
|
12
|
+
|
|
13
|
+
// src/lib/toBoundWitnessWithMeta.ts
|
|
14
|
+
var toBoundWitnessWithMeta = /* @__PURE__ */ __name(async (wrapper) => {
|
|
15
|
+
const bw = wrapper.boundwitness;
|
|
16
|
+
return {
|
|
17
|
+
...bw,
|
|
18
|
+
_hash: await wrapper.hashAsync(),
|
|
19
|
+
_timestamp: Date.now()
|
|
20
|
+
};
|
|
21
|
+
}, "toBoundWitnessWithMeta");
|
|
22
|
+
|
|
23
|
+
// src/lib/toPayloadWithMeta.ts
|
|
24
|
+
var toPayloadWithMeta = /* @__PURE__ */ __name(async (wrapper) => {
|
|
25
|
+
return {
|
|
26
|
+
...wrapper.payload(),
|
|
27
|
+
_hash: await wrapper.hashAsync(),
|
|
28
|
+
_timestamp: Date.now()
|
|
29
|
+
};
|
|
30
|
+
}, "toPayloadWithMeta");
|
|
31
|
+
|
|
32
|
+
// src/lib/toReturnValue.ts
|
|
33
|
+
import { PayloadWrapper } from "@xyo-network/payload-wrapper";
|
|
34
|
+
var toReturnValue = /* @__PURE__ */ __name((value) => {
|
|
35
|
+
const _signatures = value?._signatures;
|
|
36
|
+
if (_signatures) {
|
|
37
|
+
return {
|
|
38
|
+
...PayloadWrapper.wrap(value).body(),
|
|
39
|
+
_signatures
|
|
40
|
+
};
|
|
41
|
+
} else {
|
|
42
|
+
return {
|
|
43
|
+
...PayloadWrapper.wrap(value).body()
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
}, "toReturnValue");
|
|
47
|
+
|
|
48
|
+
// src/lib/validByType.ts
|
|
49
|
+
import { isQueryBoundWitness, QueryBoundWitnessWrapper } from "@xyo-network/boundwitness-builder";
|
|
50
|
+
import { isBoundWitness } from "@xyo-network/boundwitness-model";
|
|
51
|
+
import { BoundWitnessWrapper } from "@xyo-network/boundwitness-wrapper";
|
|
52
|
+
import { PayloadWrapper as PayloadWrapper2 } from "@xyo-network/payload-wrapper";
|
|
53
|
+
var validByType = /* @__PURE__ */ __name(async (payloads = []) => {
|
|
54
|
+
const results = [
|
|
55
|
+
[],
|
|
56
|
+
[]
|
|
57
|
+
];
|
|
58
|
+
await Promise.all(payloads.map(async (payload) => {
|
|
59
|
+
if (isBoundWitness(payload)) {
|
|
60
|
+
const wrapper = isQueryBoundWitness(payload) ? QueryBoundWitnessWrapper : BoundWitnessWrapper;
|
|
61
|
+
const bw = wrapper.parse(payload);
|
|
62
|
+
if (await bw.getValid()) {
|
|
63
|
+
results[0].push(bw);
|
|
64
|
+
}
|
|
65
|
+
} else {
|
|
66
|
+
const payloadWrapper = PayloadWrapper2.wrap(payload);
|
|
67
|
+
if (await payloadWrapper.getValid()) {
|
|
68
|
+
results[1].push(payloadWrapper);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}));
|
|
72
|
+
return results;
|
|
73
|
+
}, "validByType");
|
|
74
|
+
|
|
75
|
+
// src/Archivist.ts
|
|
76
|
+
var getBoundWitnessesIndexes = /* @__PURE__ */ __name((collectionName) => {
|
|
77
|
+
return [
|
|
78
|
+
{
|
|
79
|
+
// eslint-disable-next-line sort-keys-fix/sort-keys-fix
|
|
80
|
+
key: {
|
|
81
|
+
_hash: 1
|
|
82
|
+
},
|
|
83
|
+
name: `${collectionName}.IX__hash`
|
|
84
|
+
}
|
|
85
|
+
];
|
|
86
|
+
}, "getBoundWitnessesIndexes");
|
|
87
|
+
var getPayloadsIndexes = /* @__PURE__ */ __name((collectionName) => {
|
|
88
|
+
return [
|
|
89
|
+
{
|
|
90
|
+
// eslint-disable-next-line sort-keys-fix/sort-keys-fix
|
|
91
|
+
key: {
|
|
92
|
+
_hash: 1
|
|
93
|
+
},
|
|
94
|
+
name: `${collectionName}.IX__hash`
|
|
95
|
+
}
|
|
96
|
+
];
|
|
97
|
+
}, "getPayloadsIndexes");
|
|
98
|
+
var MongoDBArchivistBase = MongoDBModuleMixin(AbstractArchivist);
|
|
99
|
+
var MongoDBArchivist = class extends MongoDBArchivistBase {
|
|
100
|
+
static {
|
|
101
|
+
__name(this, "MongoDBArchivist");
|
|
102
|
+
}
|
|
103
|
+
static configSchemas = [
|
|
104
|
+
MongoDBArchivistConfigSchema,
|
|
105
|
+
ArchivistConfigSchema
|
|
106
|
+
];
|
|
107
|
+
queries = [
|
|
108
|
+
ArchivistInsertQuerySchema,
|
|
109
|
+
...super.queries
|
|
110
|
+
];
|
|
111
|
+
async head() {
|
|
112
|
+
const head = await (await this.payloads.find({})).sort({
|
|
113
|
+
_timestamp: -1
|
|
114
|
+
}).limit(1).toArray();
|
|
115
|
+
return head[0] ? PayloadWrapper3.wrap(head[0]).body() : void 0;
|
|
116
|
+
}
|
|
117
|
+
async getHandler(hashes) {
|
|
118
|
+
const payloads = hashes.map((_hash) => this.payloads.findOne({
|
|
119
|
+
_hash
|
|
120
|
+
}));
|
|
121
|
+
const bws = hashes.map((_hash) => this.boundWitnesses.findOne({
|
|
122
|
+
_hash
|
|
123
|
+
}));
|
|
124
|
+
const gets = await Promise.allSettled([
|
|
125
|
+
payloads,
|
|
126
|
+
bws
|
|
127
|
+
].flat());
|
|
128
|
+
const succeeded = gets.reduce(fulfilledValues, []);
|
|
129
|
+
return succeeded.filter(exists).map(toReturnValue);
|
|
130
|
+
}
|
|
131
|
+
async insertHandler(payloads) {
|
|
132
|
+
const [bw, p] = await validByType(payloads);
|
|
133
|
+
const boundWitnesses = await Promise.all(bw.map((x) => toBoundWitnessWithMeta(x)));
|
|
134
|
+
const payloadsWithMeta = await Promise.all(p.map((x) => toPayloadWithMeta(x)));
|
|
135
|
+
if (boundWitnesses.length) {
|
|
136
|
+
const boundWitnessesResult = await this.boundWitnesses.insertMany(boundWitnesses);
|
|
137
|
+
if (!boundWitnessesResult.acknowledged || boundWitnessesResult.insertedCount !== boundWitnesses.length)
|
|
138
|
+
throw new Error("MongoDBDeterministicArchivist: Error inserting BoundWitnesses");
|
|
139
|
+
}
|
|
140
|
+
if (payloadsWithMeta.length) {
|
|
141
|
+
const payloadsResult = await this.payloads.insertMany(payloadsWithMeta);
|
|
142
|
+
if (!payloadsResult.acknowledged || payloadsResult.insertedCount !== payloadsWithMeta.length)
|
|
143
|
+
throw new Error("MongoDBDeterministicArchivist: Error inserting Payloads");
|
|
144
|
+
}
|
|
145
|
+
return payloads ?? [];
|
|
146
|
+
}
|
|
147
|
+
async startHandler() {
|
|
148
|
+
await super.startHandler();
|
|
149
|
+
await this.boundWitnesses.useCollection(async (collection) => {
|
|
150
|
+
const { collectionName } = collection;
|
|
151
|
+
const indexes = getBoundWitnessesIndexes(collectionName);
|
|
152
|
+
await collection.createIndexes(indexes);
|
|
153
|
+
});
|
|
154
|
+
await this.payloads.useCollection(async (collection) => {
|
|
155
|
+
const { collectionName } = collection;
|
|
156
|
+
const indexes = getPayloadsIndexes(collectionName);
|
|
157
|
+
await collection.createIndexes(indexes);
|
|
158
|
+
});
|
|
159
|
+
return true;
|
|
160
|
+
}
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
// src/index.ts
|
|
2
164
|
export * from "@xyo-network/archivist-model-mongodb";
|
|
165
|
+
export {
|
|
166
|
+
MongoDBArchivist
|
|
167
|
+
};
|
|
3
168
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts"],"sourcesContent":["export * from './Archivist'\nexport * from '@xyo-network/archivist-model-mongodb'\n"],"mappings":"AAAA,cAAc;AACd,cAAc;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/Archivist.ts","../../src/lib/toBoundWitnessWithMeta.ts","../../src/lib/toPayloadWithMeta.ts","../../src/lib/toReturnValue.ts","../../src/lib/validByType.ts","../../src/index.ts"],"sourcesContent":["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 { CollectionIndexFunction, MongoDBModuleMixin } from '@xyo-network/module-abstract-mongodb'\nimport { PayloadWithPartialMeta } from '@xyo-network/node-core-model'\nimport { Payload } from '@xyo-network/payload-model'\nimport { PayloadWrapper } from '@xyo-network/payload-wrapper'\nimport { IndexDescription } from 'mongodb'\n\nimport { toBoundWitnessWithMeta, toPayloadWithMeta, toReturnValue, validByType } from './lib'\n\nconst getBoundWitnessesIndexes: CollectionIndexFunction = (collectionName: string): IndexDescription[] => {\n return [\n {\n // eslint-disable-next-line sort-keys-fix/sort-keys-fix\n key: { _hash: 1 },\n name: `${collectionName}.IX__hash`,\n },\n ]\n}\n\nconst getPayloadsIndexes: CollectionIndexFunction = (collectionName: string): IndexDescription[] => {\n return [\n {\n // eslint-disable-next-line sort-keys-fix/sort-keys-fix\n key: { _hash: 1 },\n name: `${collectionName}.IX__hash`,\n },\n ]\n}\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 boundWitnesses = await Promise.all(bw.map((x) => toBoundWitnessWithMeta(x)))\n const payloadsWithMeta = await Promise.all(p.map((x) => toPayloadWithMeta(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 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 return payloads ?? []\n }\n\n protected override async startHandler() {\n await super.startHandler()\n await this.boundWitnesses.useCollection(async (collection) => {\n const { collectionName } = collection\n const indexes = getBoundWitnessesIndexes(collectionName)\n await collection.createIndexes(indexes)\n })\n await this.payloads.useCollection(async (collection) => {\n const { collectionName } = collection\n const indexes = getPayloadsIndexes(collectionName)\n await collection.createIndexes(indexes)\n })\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/node-core-model'\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/node-core-model'\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 { isQueryBoundWitness, QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-builder'\nimport { isBoundWitness } 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","export * from './Archivist'\nexport * from '@xyo-network/archivist-model-mongodb'\n"],"mappings":"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","names":["exists","fulfilledValues","AbstractArchivist","ArchivistConfigSchema","ArchivistInsertQuerySchema","MongoDBArchivistConfigSchema","MongoDBModuleMixin","PayloadWrapper","toBoundWitnessWithMeta","wrapper","bw","boundwitness","_hash","hashAsync","_timestamp","Date","now","toPayloadWithMeta","wrapper","payload","_hash","hashAsync","_timestamp","Date","now","PayloadWrapper","toReturnValue","value","_signatures","PayloadWrapper","wrap","body","isQueryBoundWitness","QueryBoundWitnessWrapper","isBoundWitness","BoundWitnessWrapper","PayloadWrapper","validByType","payloads","results","Promise","all","map","payload","isBoundWitness","wrapper","isQueryBoundWitness","QueryBoundWitnessWrapper","BoundWitnessWrapper","bw","parse","getValid","push","payloadWrapper","PayloadWrapper","wrap","getBoundWitnessesIndexes","collectionName","key","_hash","name","getPayloadsIndexes","MongoDBArchivistBase","MongoDBModuleMixin","AbstractArchivist","MongoDBArchivist","configSchemas","MongoDBArchivistConfigSchema","ArchivistConfigSchema","queries","ArchivistInsertQuerySchema","head","payloads","find","sort","_timestamp","limit","toArray","PayloadWrapper","wrap","body","undefined","getHandler","hashes","map","findOne","bws","boundWitnesses","gets","Promise","allSettled","flat","succeeded","reduce","fulfilledValues","filter","exists","toReturnValue","insertHandler","bw","p","validByType","all","x","toBoundWitnessWithMeta","payloadsWithMeta","toPayloadWithMeta","length","boundWitnessesResult","insertMany","acknowledged","insertedCount","Error","payloadsResult","startHandler","useCollection","collection","indexes","createIndexes"]}
|
|
@@ -1,5 +1,71 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
|
|
4
|
+
// src/lib/toBoundWitnessWithMeta.ts
|
|
5
|
+
var toBoundWitnessWithMeta = /* @__PURE__ */ __name(async (wrapper) => {
|
|
6
|
+
const bw = wrapper.boundwitness;
|
|
7
|
+
return {
|
|
8
|
+
...bw,
|
|
9
|
+
_hash: await wrapper.hashAsync(),
|
|
10
|
+
_timestamp: Date.now()
|
|
11
|
+
};
|
|
12
|
+
}, "toBoundWitnessWithMeta");
|
|
13
|
+
|
|
14
|
+
// src/lib/toPayloadWithMeta.ts
|
|
15
|
+
var toPayloadWithMeta = /* @__PURE__ */ __name(async (wrapper) => {
|
|
16
|
+
return {
|
|
17
|
+
...wrapper.payload(),
|
|
18
|
+
_hash: await wrapper.hashAsync(),
|
|
19
|
+
_timestamp: Date.now()
|
|
20
|
+
};
|
|
21
|
+
}, "toPayloadWithMeta");
|
|
22
|
+
|
|
23
|
+
// src/lib/toReturnValue.ts
|
|
24
|
+
import { PayloadWrapper } from "@xyo-network/payload-wrapper";
|
|
25
|
+
var toReturnValue = /* @__PURE__ */ __name((value) => {
|
|
26
|
+
const _signatures = value?._signatures;
|
|
27
|
+
if (_signatures) {
|
|
28
|
+
return {
|
|
29
|
+
...PayloadWrapper.wrap(value).body(),
|
|
30
|
+
_signatures
|
|
31
|
+
};
|
|
32
|
+
} else {
|
|
33
|
+
return {
|
|
34
|
+
...PayloadWrapper.wrap(value).body()
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
}, "toReturnValue");
|
|
38
|
+
|
|
39
|
+
// src/lib/validByType.ts
|
|
40
|
+
import { isQueryBoundWitness, QueryBoundWitnessWrapper } from "@xyo-network/boundwitness-builder";
|
|
41
|
+
import { isBoundWitness } from "@xyo-network/boundwitness-model";
|
|
42
|
+
import { BoundWitnessWrapper } from "@xyo-network/boundwitness-wrapper";
|
|
43
|
+
import { PayloadWrapper as PayloadWrapper2 } from "@xyo-network/payload-wrapper";
|
|
44
|
+
var validByType = /* @__PURE__ */ __name(async (payloads = []) => {
|
|
45
|
+
const results = [
|
|
46
|
+
[],
|
|
47
|
+
[]
|
|
48
|
+
];
|
|
49
|
+
await Promise.all(payloads.map(async (payload) => {
|
|
50
|
+
if (isBoundWitness(payload)) {
|
|
51
|
+
const wrapper = isQueryBoundWitness(payload) ? QueryBoundWitnessWrapper : BoundWitnessWrapper;
|
|
52
|
+
const bw = wrapper.parse(payload);
|
|
53
|
+
if (await bw.getValid()) {
|
|
54
|
+
results[0].push(bw);
|
|
55
|
+
}
|
|
56
|
+
} else {
|
|
57
|
+
const payloadWrapper = PayloadWrapper2.wrap(payload);
|
|
58
|
+
if (await payloadWrapper.getValid()) {
|
|
59
|
+
results[1].push(payloadWrapper);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}));
|
|
63
|
+
return results;
|
|
64
|
+
}, "validByType");
|
|
65
|
+
export {
|
|
66
|
+
toBoundWitnessWithMeta,
|
|
67
|
+
toPayloadWithMeta,
|
|
68
|
+
toReturnValue,
|
|
69
|
+
validByType
|
|
70
|
+
};
|
|
5
71
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/toBoundWitnessWithMeta.ts","../../../src/lib/toPayloadWithMeta.ts","../../../src/lib/toReturnValue.ts","../../../src/lib/validByType.ts"],"sourcesContent":["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/node-core-model'\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/node-core-model'\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 { isQueryBoundWitness, QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-builder'\nimport { isBoundWitness } 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":";;;;AAKO,IAAMA,yBAAyB,8BAAOC,YAAAA;AAC3C,QAAMC,KAAKD,QAAQE;AACnB,SAAO;IAAE,GAAGD;IAAIE,OAAO,MAAMH,QAAQI,UAAS;IAAIC,YAAYC,KAAKC,IAAG;EAAG;AAC3E,GAHsC;;;ACF/B,IAAMC,oBAAoB,8BAAOC,YAAAA;AACtC,SAAO;IAAE,GAAGA,QAAQC,QAAO;IAAIC,OAAO,MAAMF,QAAQG,UAAS;IAAIC,YAAYC,KAAKC,IAAG;EAAG;AAC1F,GAFiC;;;ACDjC,SAASC,sBAAsB;AAExB,IAAMC,gBAAgB,wBAACC,UAAAA;AAC5B,QAAMC,cAAeD,OAAwBC;AAC7C,MAAIA,aAAa;AACf,WAAO;MAAE,GAAGC,eAAeC,KAAKH,KAAAA,EAAOI,KAAI;MAAIH;IAAY;EAC7D,OAAO;AACL,WAAO;MAAE,GAAGC,eAAeC,KAAKH,KAAAA,EAAOI,KAAI;IAAG;EAChD;AACF,GAP6B;;;ACJ7B,SAASC,qBAAqBC,gCAAgC;AAC9D,SAASC,sBAAsB;AAC/B,SAASC,2BAA2B;AAEpC,SAASC,kBAAAA,uBAAsB;AAExB,IAAMC,cAAc,8BAAOC,WAAsB,CAAA,MAAE;AACxD,QAAMC,UAAqD;IAAC,CAAA;IAAI,CAAA;;AAChE,QAAMC,QAAQC,IACZH,SAASI,IAAI,OAAOC,YAAAA;AAClB,QAAIC,eAAeD,OAAAA,GAAU;AAC3B,YAAME,UAAUC,oBAAoBH,OAAAA,IAAWI,2BAA2BC;AAC1E,YAAMC,KAAKJ,QAAQK,MAAMP,OAAAA;AACzB,UAAI,MAAMM,GAAGE,SAAQ,GAAI;AACvBZ,gBAAQ,CAAA,EAAGa,KAAKH,EAAAA;MAClB;IACF,OAAO;AACL,YAAMI,iBAAiBC,gBAAeC,KAAKZ,OAAAA;AAC3C,UAAI,MAAMU,eAAeF,SAAQ,GAAI;AACnCZ,gBAAQ,CAAA,EAAGa,KAAKC,cAAAA;MAClB;IACF;EACF,CAAA,CAAA;AAEF,SAAOd;AACT,GAnB2B;","names":["toBoundWitnessWithMeta","wrapper","bw","boundwitness","_hash","hashAsync","_timestamp","Date","now","toPayloadWithMeta","wrapper","payload","_hash","hashAsync","_timestamp","Date","now","PayloadWrapper","toReturnValue","value","_signatures","PayloadWrapper","wrap","body","isQueryBoundWitness","QueryBoundWitnessWrapper","isBoundWitness","BoundWitnessWrapper","PayloadWrapper","validByType","payloads","results","Promise","all","map","payload","isBoundWitness","wrapper","isQueryBoundWitness","QueryBoundWitnessWrapper","BoundWitnessWrapper","bw","parse","getValid","push","payloadWrapper","PayloadWrapper","wrap"]}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
var __defProp = Object.defineProperty;
|
|
2
2
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
-
|
|
3
|
+
|
|
4
|
+
// src/lib/toBoundWitnessWithMeta.ts
|
|
5
|
+
var toBoundWitnessWithMeta = /* @__PURE__ */ __name(async (wrapper) => {
|
|
4
6
|
const bw = wrapper.boundwitness;
|
|
5
7
|
return {
|
|
6
8
|
...bw,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/toBoundWitnessWithMeta.ts"],"sourcesContent":["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/node-core-model'\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"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/toBoundWitnessWithMeta.ts"],"sourcesContent":["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/node-core-model'\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"],"mappings":";;;;AAKO,IAAMA,yBAAyB,8BAAOC,YAAAA;AAC3C,QAAMC,KAAKD,QAAQE;AACnB,SAAO;IAAE,GAAGD;IAAIE,OAAO,MAAMH,QAAQI,UAAS;IAAIC,YAAYC,KAAKC,IAAG;EAAG;AAC3E,GAHsC;","names":["toBoundWitnessWithMeta","wrapper","bw","boundwitness","_hash","hashAsync","_timestamp","Date","now"]}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
var __defProp = Object.defineProperty;
|
|
2
2
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
-
|
|
3
|
+
|
|
4
|
+
// src/lib/toPayloadWithMeta.ts
|
|
5
|
+
var toPayloadWithMeta = /* @__PURE__ */ __name(async (wrapper) => {
|
|
4
6
|
return {
|
|
5
7
|
...wrapper.payload(),
|
|
6
8
|
_hash: await wrapper.hashAsync(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/toPayloadWithMeta.ts"],"sourcesContent":["import { PayloadWithMeta } from '@xyo-network/node-core-model'\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"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/toPayloadWithMeta.ts"],"sourcesContent":["import { PayloadWithMeta } from '@xyo-network/node-core-model'\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"],"mappings":";;;;AAGO,IAAMA,oBAAoB,8BAAOC,YAAAA;AACtC,SAAO;IAAE,GAAGA,QAAQC,QAAO;IAAIC,OAAO,MAAMF,QAAQG,UAAS;IAAIC,YAAYC,KAAKC,IAAG;EAAG;AAC1F,GAFiC;","names":["toPayloadWithMeta","wrapper","payload","_hash","hashAsync","_timestamp","Date","now"]}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
var __defProp = Object.defineProperty;
|
|
2
2
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
|
|
4
|
+
// src/lib/toReturnValue.ts
|
|
3
5
|
import { PayloadWrapper } from "@xyo-network/payload-wrapper";
|
|
4
|
-
|
|
6
|
+
var toReturnValue = /* @__PURE__ */ __name((value) => {
|
|
5
7
|
const _signatures = value?._signatures;
|
|
6
8
|
if (_signatures) {
|
|
7
9
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/toReturnValue.ts"],"sourcesContent":["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"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/toReturnValue.ts"],"sourcesContent":["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"],"mappings":";;;;AAEA,SAASA,sBAAsB;AAExB,IAAMC,gBAAgB,wBAACC,UAAAA;AAC5B,QAAMC,cAAeD,OAAwBC;AAC7C,MAAIA,aAAa;AACf,WAAO;MAAE,GAAGC,eAAeC,KAAKH,KAAAA,EAAOI,KAAI;MAAIH;IAAY;EAC7D,OAAO;AACL,WAAO;MAAE,GAAGC,eAAeC,KAAKH,KAAAA,EAAOI,KAAI;IAAG;EAChD;AACF,GAP6B;","names":["PayloadWrapper","toReturnValue","value","_signatures","PayloadWrapper","wrap","body"]}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
var __defProp = Object.defineProperty;
|
|
2
2
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
|
|
4
|
+
// src/lib/validByType.ts
|
|
3
5
|
import { isQueryBoundWitness, QueryBoundWitnessWrapper } from "@xyo-network/boundwitness-builder";
|
|
4
6
|
import { isBoundWitness } from "@xyo-network/boundwitness-model";
|
|
5
7
|
import { BoundWitnessWrapper } from "@xyo-network/boundwitness-wrapper";
|
|
6
8
|
import { PayloadWrapper } from "@xyo-network/payload-wrapper";
|
|
7
|
-
|
|
9
|
+
var validByType = /* @__PURE__ */ __name(async (payloads = []) => {
|
|
8
10
|
const results = [
|
|
9
11
|
[],
|
|
10
12
|
[]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/validByType.ts"],"sourcesContent":["import { isQueryBoundWitness, QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-builder'\nimport { isBoundWitness } 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":"
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/validByType.ts"],"sourcesContent":["import { isQueryBoundWitness, QueryBoundWitnessWrapper } from '@xyo-network/boundwitness-builder'\nimport { isBoundWitness } 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":";;;;AAAA,SAASA,qBAAqBC,gCAAgC;AAC9D,SAASC,sBAAsB;AAC/B,SAASC,2BAA2B;AAEpC,SAASC,sBAAsB;AAExB,IAAMC,cAAc,8BAAOC,WAAsB,CAAA,MAAE;AACxD,QAAMC,UAAqD;IAAC,CAAA;IAAI,CAAA;;AAChE,QAAMC,QAAQC,IACZH,SAASI,IAAI,OAAOC,YAAAA;AAClB,QAAIC,eAAeD,OAAAA,GAAU;AAC3B,YAAME,UAAUC,oBAAoBH,OAAAA,IAAWI,2BAA2BC;AAC1E,YAAMC,KAAKJ,QAAQK,MAAMP,OAAAA;AACzB,UAAI,MAAMM,GAAGE,SAAQ,GAAI;AACvBZ,gBAAQ,CAAA,EAAGa,KAAKH,EAAAA;MAClB;IACF,OAAO;AACL,YAAMI,iBAAiBC,eAAeC,KAAKZ,OAAAA;AAC3C,UAAI,MAAMU,eAAeF,SAAQ,GAAI;AACnCZ,gBAAQ,CAAA,EAAGa,KAAKC,cAAAA;MAClB;IACF;EACF,CAAA,CAAA;AAEF,SAAOd;AACT,GAnB2B;","names":["isQueryBoundWitness","QueryBoundWitnessWrapper","isBoundWitness","BoundWitnessWrapper","PayloadWrapper","validByType","payloads","results","Promise","all","map","payload","isBoundWitness","wrapper","isQueryBoundWitness","QueryBoundWitnessWrapper","BoundWitnessWrapper","bw","parse","getValid","push","payloadWrapper","PayloadWrapper","wrap"]}
|
package/dist/docs.json
CHANGED
|
@@ -8805,7 +8805,7 @@
|
|
|
8805
8805
|
"fileName": "modules-mongo/packages/archivist/src/Archivist.ts",
|
|
8806
8806
|
"line": 39,
|
|
8807
8807
|
"character": 20,
|
|
8808
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
8808
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/2de3323eaedda/packages/modules-mongo/packages/archivist/src/Archivist.ts#L39"
|
|
8809
8809
|
}
|
|
8810
8810
|
],
|
|
8811
8811
|
"type": {
|
|
@@ -16194,7 +16194,7 @@
|
|
|
16194
16194
|
"fileName": "modules-mongo/packages/archivist/src/Archivist.ts",
|
|
16195
16195
|
"line": 37,
|
|
16196
16196
|
"character": 18,
|
|
16197
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
16197
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/2de3323eaedda/packages/modules-mongo/packages/archivist/src/Archivist.ts#L37"
|
|
16198
16198
|
}
|
|
16199
16199
|
],
|
|
16200
16200
|
"type": {
|
|
@@ -21496,7 +21496,7 @@
|
|
|
21496
21496
|
"fileName": "modules-mongo/packages/archivist/src/Archivist.ts",
|
|
21497
21497
|
"line": 46,
|
|
21498
21498
|
"character": 27,
|
|
21499
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
21499
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/2de3323eaedda/packages/modules-mongo/packages/archivist/src/Archivist.ts#L46"
|
|
21500
21500
|
}
|
|
21501
21501
|
],
|
|
21502
21502
|
"signatures": [
|
|
@@ -21511,7 +21511,7 @@
|
|
|
21511
21511
|
"fileName": "modules-mongo/packages/archivist/src/Archivist.ts",
|
|
21512
21512
|
"line": 46,
|
|
21513
21513
|
"character": 2,
|
|
21514
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
21514
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/2de3323eaedda/packages/modules-mongo/packages/archivist/src/Archivist.ts#L46"
|
|
21515
21515
|
}
|
|
21516
21516
|
],
|
|
21517
21517
|
"parameters": [
|
|
@@ -21776,7 +21776,7 @@
|
|
|
21776
21776
|
"fileName": "modules-mongo/packages/archivist/src/Archivist.ts",
|
|
21777
21777
|
"line": 41,
|
|
21778
21778
|
"character": 17,
|
|
21779
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
21779
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/2de3323eaedda/packages/modules-mongo/packages/archivist/src/Archivist.ts#L41"
|
|
21780
21780
|
}
|
|
21781
21781
|
],
|
|
21782
21782
|
"signatures": [
|
|
@@ -21791,7 +21791,7 @@
|
|
|
21791
21791
|
"fileName": "modules-mongo/packages/archivist/src/Archivist.ts",
|
|
21792
21792
|
"line": 41,
|
|
21793
21793
|
"character": 2,
|
|
21794
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
21794
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/2de3323eaedda/packages/modules-mongo/packages/archivist/src/Archivist.ts#L41"
|
|
21795
21795
|
}
|
|
21796
21796
|
],
|
|
21797
21797
|
"type": {
|
|
@@ -22140,7 +22140,7 @@
|
|
|
22140
22140
|
"fileName": "modules-mongo/packages/archivist/src/Archivist.ts",
|
|
22141
22141
|
"line": 54,
|
|
22142
22142
|
"character": 27,
|
|
22143
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
22143
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/2de3323eaedda/packages/modules-mongo/packages/archivist/src/Archivist.ts#L54"
|
|
22144
22144
|
}
|
|
22145
22145
|
],
|
|
22146
22146
|
"signatures": [
|
|
@@ -22155,7 +22155,7 @@
|
|
|
22155
22155
|
"fileName": "modules-mongo/packages/archivist/src/Archivist.ts",
|
|
22156
22156
|
"line": 54,
|
|
22157
22157
|
"character": 2,
|
|
22158
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
22158
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/2de3323eaedda/packages/modules-mongo/packages/archivist/src/Archivist.ts#L54"
|
|
22159
22159
|
}
|
|
22160
22160
|
],
|
|
22161
22161
|
"parameters": [
|
|
@@ -26350,7 +26350,7 @@
|
|
|
26350
26350
|
"fileName": "modules-mongo/packages/archivist/src/Archivist.ts",
|
|
26351
26351
|
"line": 71,
|
|
26352
26352
|
"character": 27,
|
|
26353
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
26353
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/2de3323eaedda/packages/modules-mongo/packages/archivist/src/Archivist.ts#L71"
|
|
26354
26354
|
}
|
|
26355
26355
|
],
|
|
26356
26356
|
"signatures": [
|
|
@@ -26365,7 +26365,7 @@
|
|
|
26365
26365
|
"fileName": "modules-mongo/packages/archivist/src/Archivist.ts",
|
|
26366
26366
|
"line": 71,
|
|
26367
26367
|
"character": 2,
|
|
26368
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
26368
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/2de3323eaedda/packages/modules-mongo/packages/archivist/src/Archivist.ts#L71"
|
|
26369
26369
|
}
|
|
26370
26370
|
],
|
|
26371
26371
|
"type": {
|
|
@@ -27995,7 +27995,7 @@
|
|
|
27995
27995
|
"fileName": "modules-mongo/packages/archivist/src/Archivist.ts",
|
|
27996
27996
|
"line": 36,
|
|
27997
27997
|
"character": 13,
|
|
27998
|
-
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/
|
|
27998
|
+
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/blob/2de3323eaedda/packages/modules-mongo/packages/archivist/src/Archivist.ts#L36"
|
|
27999
27999
|
}
|
|
28000
28000
|
],
|
|
28001
28001
|
"extendedTypes": [
|
package/package.json
CHANGED
|
@@ -10,22 +10,22 @@
|
|
|
10
10
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@xylabs/exists": "^2.12.
|
|
14
|
-
"@xylabs/promise": "^2.12.
|
|
15
|
-
"@xyo-network/archivist-abstract": "~2.75.
|
|
16
|
-
"@xyo-network/archivist-model": "~2.75.
|
|
17
|
-
"@xyo-network/archivist-model-mongodb": "~2.75.
|
|
18
|
-
"@xyo-network/boundwitness-builder": "~2.75.
|
|
19
|
-
"@xyo-network/boundwitness-model": "~2.75.
|
|
20
|
-
"@xyo-network/boundwitness-wrapper": "~2.75.
|
|
21
|
-
"@xyo-network/module-abstract-mongodb": "~2.75.
|
|
22
|
-
"@xyo-network/node-core-model": "~2.75.
|
|
23
|
-
"@xyo-network/payload-model": "~2.75.
|
|
24
|
-
"@xyo-network/payload-wrapper": "~2.75.
|
|
13
|
+
"@xylabs/exists": "^2.12.14",
|
|
14
|
+
"@xylabs/promise": "^2.12.14",
|
|
15
|
+
"@xyo-network/archivist-abstract": "~2.75.5",
|
|
16
|
+
"@xyo-network/archivist-model": "~2.75.5",
|
|
17
|
+
"@xyo-network/archivist-model-mongodb": "~2.75.5",
|
|
18
|
+
"@xyo-network/boundwitness-builder": "~2.75.5",
|
|
19
|
+
"@xyo-network/boundwitness-model": "~2.75.5",
|
|
20
|
+
"@xyo-network/boundwitness-wrapper": "~2.75.5",
|
|
21
|
+
"@xyo-network/module-abstract-mongodb": "~2.75.5",
|
|
22
|
+
"@xyo-network/node-core-model": "~2.75.5",
|
|
23
|
+
"@xyo-network/payload-model": "~2.75.5",
|
|
24
|
+
"@xyo-network/payload-wrapper": "~2.75.5",
|
|
25
25
|
"mongodb": "^6.1.0"
|
|
26
26
|
},
|
|
27
27
|
"peerDependencies": {
|
|
28
|
-
"@xyo-network/sdk-xyo-mongo-js": "~2.75.
|
|
28
|
+
"@xyo-network/sdk-xyo-mongo-js": "~2.75.5"
|
|
29
29
|
},
|
|
30
30
|
"peerDependenciesMeta": {
|
|
31
31
|
"@xyo-network/sdk-xyo-mongo-js": {
|
|
@@ -33,9 +33,9 @@
|
|
|
33
33
|
}
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
|
-
"@xylabs/ts-scripts-yarn3": "^3.0.
|
|
37
|
-
"@xylabs/tsconfig": "^3.0.
|
|
38
|
-
"@xyo-network/sdk-xyo-mongo-js": "~2.75.
|
|
36
|
+
"@xylabs/ts-scripts-yarn3": "^3.0.79",
|
|
37
|
+
"@xylabs/tsconfig": "^3.0.79",
|
|
38
|
+
"@xyo-network/sdk-xyo-mongo-js": "~2.75.5",
|
|
39
39
|
"fake-indexeddb": "^4.0.2",
|
|
40
40
|
"typescript": "^5.2.2"
|
|
41
41
|
},
|
|
@@ -82,5 +82,5 @@
|
|
|
82
82
|
"url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
|
|
83
83
|
},
|
|
84
84
|
"sideEffects": false,
|
|
85
|
-
"version": "2.75.
|
|
85
|
+
"version": "2.75.5"
|
|
86
86
|
}
|