@xyo-network/archivist-mongodb 2.83.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.
Files changed (100) hide show
  1. package/dist/browser/Archivist.d.cts +15 -26
  2. package/dist/browser/Archivist.d.cts.map +1 -1
  3. package/dist/browser/Archivist.d.mts +15 -26
  4. package/dist/browser/Archivist.d.mts.map +1 -1
  5. package/dist/browser/Archivist.d.ts +15 -26
  6. package/dist/browser/Archivist.d.ts.map +1 -1
  7. package/dist/browser/index.cjs +68 -54
  8. package/dist/browser/index.cjs.map +1 -1
  9. package/dist/browser/index.js +68 -54
  10. package/dist/browser/index.js.map +1 -1
  11. package/dist/browser/lib/index.d.cts +1 -2
  12. package/dist/browser/lib/index.d.cts.map +1 -1
  13. package/dist/browser/lib/index.d.mts +1 -2
  14. package/dist/browser/lib/index.d.mts.map +1 -1
  15. package/dist/browser/lib/index.d.ts +1 -2
  16. package/dist/browser/lib/index.d.ts.map +1 -1
  17. package/dist/browser/lib/toPayloadWithMongoMeta.d.cts +5 -0
  18. package/dist/browser/lib/toPayloadWithMongoMeta.d.cts.map +1 -0
  19. package/dist/browser/lib/toPayloadWithMongoMeta.d.mts +5 -0
  20. package/dist/browser/lib/toPayloadWithMongoMeta.d.mts.map +1 -0
  21. package/dist/browser/lib/toPayloadWithMongoMeta.d.ts +5 -0
  22. package/dist/browser/lib/toPayloadWithMongoMeta.d.ts.map +1 -0
  23. package/dist/browser/lib/toReturnValue.d.cts +1 -2
  24. package/dist/browser/lib/toReturnValue.d.cts.map +1 -1
  25. package/dist/browser/lib/toReturnValue.d.mts +1 -2
  26. package/dist/browser/lib/toReturnValue.d.mts.map +1 -1
  27. package/dist/browser/lib/toReturnValue.d.ts +1 -2
  28. package/dist/browser/lib/toReturnValue.d.ts.map +1 -1
  29. package/dist/browser/lib/validByType.d.cts +3 -7
  30. package/dist/browser/lib/validByType.d.cts.map +1 -1
  31. package/dist/browser/lib/validByType.d.mts +3 -7
  32. package/dist/browser/lib/validByType.d.mts.map +1 -1
  33. package/dist/browser/lib/validByType.d.ts +3 -7
  34. package/dist/browser/lib/validByType.d.ts.map +1 -1
  35. package/dist/node/Archivist.d.cts +15 -26
  36. package/dist/node/Archivist.d.cts.map +1 -1
  37. package/dist/node/Archivist.d.mts +15 -26
  38. package/dist/node/Archivist.d.mts.map +1 -1
  39. package/dist/node/Archivist.d.ts +15 -26
  40. package/dist/node/Archivist.d.ts.map +1 -1
  41. package/dist/node/index.cjs +68 -54
  42. package/dist/node/index.cjs.map +1 -1
  43. package/dist/node/index.js +68 -54
  44. package/dist/node/index.js.map +1 -1
  45. package/dist/node/lib/index.d.cts +1 -2
  46. package/dist/node/lib/index.d.cts.map +1 -1
  47. package/dist/node/lib/index.d.mts +1 -2
  48. package/dist/node/lib/index.d.mts.map +1 -1
  49. package/dist/node/lib/index.d.ts +1 -2
  50. package/dist/node/lib/index.d.ts.map +1 -1
  51. package/dist/node/lib/toPayloadWithMongoMeta.d.cts +5 -0
  52. package/dist/node/lib/toPayloadWithMongoMeta.d.cts.map +1 -0
  53. package/dist/node/lib/toPayloadWithMongoMeta.d.mts +5 -0
  54. package/dist/node/lib/toPayloadWithMongoMeta.d.mts.map +1 -0
  55. package/dist/node/lib/toPayloadWithMongoMeta.d.ts +5 -0
  56. package/dist/node/lib/toPayloadWithMongoMeta.d.ts.map +1 -0
  57. package/dist/node/lib/toReturnValue.d.cts +1 -2
  58. package/dist/node/lib/toReturnValue.d.cts.map +1 -1
  59. package/dist/node/lib/toReturnValue.d.mts +1 -2
  60. package/dist/node/lib/toReturnValue.d.mts.map +1 -1
  61. package/dist/node/lib/toReturnValue.d.ts +1 -2
  62. package/dist/node/lib/toReturnValue.d.ts.map +1 -1
  63. package/dist/node/lib/validByType.d.cts +3 -7
  64. package/dist/node/lib/validByType.d.cts.map +1 -1
  65. package/dist/node/lib/validByType.d.mts +3 -7
  66. package/dist/node/lib/validByType.d.mts.map +1 -1
  67. package/dist/node/lib/validByType.d.ts +3 -7
  68. package/dist/node/lib/validByType.d.ts.map +1 -1
  69. package/package.json +26 -23
  70. package/src/Archivist.ts +35 -19
  71. package/src/lib/index.ts +1 -2
  72. package/src/lib/toPayloadWithMongoMeta.ts +10 -0
  73. package/src/lib/toReturnValue.ts +3 -9
  74. package/src/lib/validByType.ts +10 -6
  75. package/dist/browser/lib/toBoundWitnessWithMeta.d.cts +0 -5
  76. package/dist/browser/lib/toBoundWitnessWithMeta.d.cts.map +0 -1
  77. package/dist/browser/lib/toBoundWitnessWithMeta.d.mts +0 -5
  78. package/dist/browser/lib/toBoundWitnessWithMeta.d.mts.map +0 -1
  79. package/dist/browser/lib/toBoundWitnessWithMeta.d.ts +0 -5
  80. package/dist/browser/lib/toBoundWitnessWithMeta.d.ts.map +0 -1
  81. package/dist/browser/lib/toPayloadWithMeta.d.cts +0 -4
  82. package/dist/browser/lib/toPayloadWithMeta.d.cts.map +0 -1
  83. package/dist/browser/lib/toPayloadWithMeta.d.mts +0 -4
  84. package/dist/browser/lib/toPayloadWithMeta.d.mts.map +0 -1
  85. package/dist/browser/lib/toPayloadWithMeta.d.ts +0 -4
  86. package/dist/browser/lib/toPayloadWithMeta.d.ts.map +0 -1
  87. package/dist/node/lib/toBoundWitnessWithMeta.d.cts +0 -5
  88. package/dist/node/lib/toBoundWitnessWithMeta.d.cts.map +0 -1
  89. package/dist/node/lib/toBoundWitnessWithMeta.d.mts +0 -5
  90. package/dist/node/lib/toBoundWitnessWithMeta.d.mts.map +0 -1
  91. package/dist/node/lib/toBoundWitnessWithMeta.d.ts +0 -5
  92. package/dist/node/lib/toBoundWitnessWithMeta.d.ts.map +0 -1
  93. package/dist/node/lib/toPayloadWithMeta.d.cts +0 -4
  94. package/dist/node/lib/toPayloadWithMeta.d.cts.map +0 -1
  95. package/dist/node/lib/toPayloadWithMeta.d.mts +0 -4
  96. package/dist/node/lib/toPayloadWithMeta.d.mts.map +0 -1
  97. package/dist/node/lib/toPayloadWithMeta.d.ts +0 -4
  98. package/dist/node/lib/toPayloadWithMeta.d.ts.map +0 -1
  99. package/src/lib/toBoundWitnessWithMeta.ts +0 -9
  100. package/src/lib/toPayloadWithMeta.ts +0 -6
@@ -1,33 +1,14 @@
1
1
  import { AbstractArchivist } from '@xyo-network/archivist-abstract';
2
2
  import { Payload } from '@xyo-network/payload-model';
3
+ import { PayloadWithMongoMeta } from '@xyo-network/payload-mongodb';
3
4
  declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
4
- _boundWitnessSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
5
- _payloads?: (import("@xyo-network/payload-model").SchemaFields & object & Partial<import("@xyo-network/payload-mongodb").PayloadMetaBase> & {
6
- schema: string;
7
- })[] | undefined;
8
- _source_ip?: string | undefined;
9
- _user_agent?: string | undefined;
10
- } & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
11
- schema: "network.xyo.boundwitness";
12
- }> | undefined;
13
- _payloadSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
14
- schema: string;
15
- }> | undefined;
5
+ _boundWitnessSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-mongodb").BoundWitnessWithMongoMeta> | undefined;
6
+ _payloadSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<PayloadWithMongoMeta> | undefined;
16
7
  readonly boundWitnessSdkConfig: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkConfig;
17
- readonly boundWitnesses: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
18
- _payloads?: (import("@xyo-network/payload-model").SchemaFields & object & Partial<import("@xyo-network/payload-mongodb").PayloadMetaBase> & {
19
- schema: string;
20
- })[] | undefined;
21
- _source_ip?: string | undefined;
22
- _user_agent?: string | undefined;
23
- } & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
24
- schema: "network.xyo.boundwitness";
25
- }>;
8
+ readonly boundWitnesses: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-mongodb").BoundWitnessWithMongoMeta>;
26
9
  readonly jobQueue: import("@xyo-network/node-core-model").JobQueue;
27
10
  readonly payloadSdkConfig: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkConfig;
28
- readonly payloads: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
29
- schema: string;
30
- }>;
11
+ readonly payloads: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<PayloadWithMongoMeta>;
31
12
  ensureIndexes(): Promise<void>;
32
13
  address: string;
33
14
  config: import("@xyo-network/payload-model").SchemaFields & object & Omit<{
@@ -37,6 +18,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
37
18
  readonly paging?: Record<string, {
38
19
  size?: number | undefined;
39
20
  }> | undefined;
21
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
40
22
  schema: "network.xyo.module.mongodb.config";
41
23
  readonly security?: {
42
24
  readonly allowAnonymous?: boolean | undefined;
@@ -53,6 +35,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
53
35
  readonly paging?: Record<string, {
54
36
  size?: number | undefined;
55
37
  }> | undefined;
38
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
56
39
  schema: "network.xyo.module.mongodb.config";
57
40
  readonly security?: {
58
41
  readonly allowAnonymous?: boolean | undefined;
@@ -70,7 +53,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
70
53
  schema: string;
71
54
  };
72
55
  id: string;
73
- params: import("@xyo-network/object").BaseParamsFields & {
56
+ params: import("@xylabs/object").BaseParamsFields & {
74
57
  account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
75
58
  config: import("@xyo-network/payload-model").SchemaFields & object & Omit<{
76
59
  readonly archivist?: string | undefined;
@@ -79,6 +62,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
79
62
  readonly paging?: Record<string, {
80
63
  size?: number | undefined;
81
64
  }> | undefined;
65
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
82
66
  schema: "network.xyo.module.mongodb.config";
83
67
  readonly security?: {
84
68
  readonly allowAnonymous?: boolean | undefined;
@@ -95,6 +79,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
95
79
  readonly paging?: Record<string, {
96
80
  size?: number | undefined;
97
81
  }> | undefined;
82
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
98
83
  schema: "network.xyo.module.mongodb.config";
99
84
  readonly security?: {
100
85
  readonly allowAnonymous?: boolean | undefined;
@@ -138,6 +123,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
138
123
  readonly paging?: Record<string, {
139
124
  size?: number | undefined;
140
125
  }> | undefined;
126
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
141
127
  schema: "network.xyo.module.config";
142
128
  readonly security?: {
143
129
  readonly allowAnonymous?: boolean | undefined;
@@ -154,6 +140,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
154
140
  readonly paging?: Record<string, {
155
141
  size?: number | undefined;
156
142
  }> | undefined;
143
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
157
144
  schema: "network.xyo.module.config";
158
145
  readonly security?: {
159
146
  readonly allowAnonymous?: boolean | undefined;
@@ -185,6 +172,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
185
172
  readonly paging?: Record<string, {
186
173
  size?: number | undefined;
187
174
  }> | undefined;
175
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
188
176
  schema: "network.xyo.module.config";
189
177
  readonly security?: {
190
178
  readonly allowAnonymous?: boolean | undefined;
@@ -201,6 +189,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
201
189
  readonly paging?: Record<string, {
202
190
  size?: number | undefined;
203
191
  }> | undefined;
192
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
204
193
  schema: "network.xyo.module.config";
205
194
  readonly security?: {
206
195
  readonly allowAnonymous?: boolean | undefined;
@@ -233,7 +222,7 @@ export declare class MongoDBArchivist extends MongoDBArchivistBase {
233
222
  readonly queries: string[];
234
223
  head(): Promise<Payload | undefined>;
235
224
  protected getHandler(hashes: string[]): Promise<Payload[]>;
236
- protected insertHandler(payloads?: Payload[]): Promise<Payload[]>;
225
+ protected insertHandler(payloads: Payload[]): Promise<Payload[]>;
237
226
  protected startHandler(): Promise<boolean>;
238
227
  }
239
228
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Archivist.d.ts","sourceRoot":"","sources":["../../src/Archivist.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAInE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAMpD,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAAwC,CAAA;AAElE,qBAAa,gBAAiB,SAAQ,oBAAoB;IACxD,OAAgB,aAAa,WAAwD;IAErF,SAAkB,OAAO,EAAE,MAAM,EAAE,CAAiD;IAErE,IAAI,IAAI,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;cAK1B,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAQhD,aAAa,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAiBvD,YAAY;CAKtC"}
1
+ {"version":3,"file":"Archivist.d.ts","sourceRoot":"","sources":["../../src/Archivist.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAInE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAKnE,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAAwC,CAAA;AAElE,qBAAa,gBAAiB,SAAQ,oBAAoB;IACxD,OAAgB,aAAa,WAAwD;IAErF,SAAkB,OAAO,EAAE,MAAM,EAAE,CAAiD;IAErE,IAAI,IAAI,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;cAK1B,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAuBhD,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAkBtD,YAAY;CAKtC"}
@@ -1,33 +1,14 @@
1
1
  import { AbstractArchivist } from '@xyo-network/archivist-abstract';
2
2
  import { Payload } from '@xyo-network/payload-model';
3
+ import { PayloadWithMongoMeta } from '@xyo-network/payload-mongodb';
3
4
  declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
4
- _boundWitnessSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
5
- _payloads?: (import("@xyo-network/payload-model").SchemaFields & object & Partial<import("@xyo-network/payload-mongodb").PayloadMetaBase> & {
6
- schema: string;
7
- })[] | undefined;
8
- _source_ip?: string | undefined;
9
- _user_agent?: string | undefined;
10
- } & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
11
- schema: "network.xyo.boundwitness";
12
- }> | undefined;
13
- _payloadSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
14
- schema: string;
15
- }> | undefined;
5
+ _boundWitnessSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-mongodb").BoundWitnessWithMongoMeta> | undefined;
6
+ _payloadSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<PayloadWithMongoMeta> | undefined;
16
7
  readonly boundWitnessSdkConfig: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkConfig;
17
- readonly boundWitnesses: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
18
- _payloads?: (import("@xyo-network/payload-model").SchemaFields & object & Partial<import("@xyo-network/payload-mongodb").PayloadMetaBase> & {
19
- schema: string;
20
- })[] | undefined;
21
- _source_ip?: string | undefined;
22
- _user_agent?: string | undefined;
23
- } & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
24
- schema: "network.xyo.boundwitness";
25
- }>;
8
+ readonly boundWitnesses: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-mongodb").BoundWitnessWithMongoMeta>;
26
9
  readonly jobQueue: import("@xyo-network/node-core-model").JobQueue;
27
10
  readonly payloadSdkConfig: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkConfig;
28
- readonly payloads: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
29
- schema: string;
30
- }>;
11
+ readonly payloads: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<PayloadWithMongoMeta>;
31
12
  ensureIndexes(): Promise<void>;
32
13
  address: string;
33
14
  config: import("@xyo-network/payload-model").SchemaFields & object & Omit<{
@@ -37,6 +18,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
37
18
  readonly paging?: Record<string, {
38
19
  size?: number | undefined;
39
20
  }> | undefined;
21
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
40
22
  schema: "network.xyo.module.mongodb.config";
41
23
  readonly security?: {
42
24
  readonly allowAnonymous?: boolean | undefined;
@@ -53,6 +35,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
53
35
  readonly paging?: Record<string, {
54
36
  size?: number | undefined;
55
37
  }> | undefined;
38
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
56
39
  schema: "network.xyo.module.mongodb.config";
57
40
  readonly security?: {
58
41
  readonly allowAnonymous?: boolean | undefined;
@@ -70,7 +53,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
70
53
  schema: string;
71
54
  };
72
55
  id: string;
73
- params: import("@xyo-network/object").BaseParamsFields & {
56
+ params: import("@xylabs/object").BaseParamsFields & {
74
57
  account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
75
58
  config: import("@xyo-network/payload-model").SchemaFields & object & Omit<{
76
59
  readonly archivist?: string | undefined;
@@ -79,6 +62,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
79
62
  readonly paging?: Record<string, {
80
63
  size?: number | undefined;
81
64
  }> | undefined;
65
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
82
66
  schema: "network.xyo.module.mongodb.config";
83
67
  readonly security?: {
84
68
  readonly allowAnonymous?: boolean | undefined;
@@ -95,6 +79,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
95
79
  readonly paging?: Record<string, {
96
80
  size?: number | undefined;
97
81
  }> | undefined;
82
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
98
83
  schema: "network.xyo.module.mongodb.config";
99
84
  readonly security?: {
100
85
  readonly allowAnonymous?: boolean | undefined;
@@ -138,6 +123,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
138
123
  readonly paging?: Record<string, {
139
124
  size?: number | undefined;
140
125
  }> | undefined;
126
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
141
127
  schema: "network.xyo.module.config";
142
128
  readonly security?: {
143
129
  readonly allowAnonymous?: boolean | undefined;
@@ -154,6 +140,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
154
140
  readonly paging?: Record<string, {
155
141
  size?: number | undefined;
156
142
  }> | undefined;
143
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
157
144
  schema: "network.xyo.module.config";
158
145
  readonly security?: {
159
146
  readonly allowAnonymous?: boolean | undefined;
@@ -185,6 +172,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
185
172
  readonly paging?: Record<string, {
186
173
  size?: number | undefined;
187
174
  }> | undefined;
175
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
188
176
  schema: "network.xyo.module.config";
189
177
  readonly security?: {
190
178
  readonly allowAnonymous?: boolean | undefined;
@@ -201,6 +189,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
201
189
  readonly paging?: Record<string, {
202
190
  size?: number | undefined;
203
191
  }> | undefined;
192
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
204
193
  schema: "network.xyo.module.config";
205
194
  readonly security?: {
206
195
  readonly allowAnonymous?: boolean | undefined;
@@ -233,7 +222,7 @@ export declare class MongoDBArchivist extends MongoDBArchivistBase {
233
222
  readonly queries: string[];
234
223
  head(): Promise<Payload | undefined>;
235
224
  protected getHandler(hashes: string[]): Promise<Payload[]>;
236
- protected insertHandler(payloads?: Payload[]): Promise<Payload[]>;
225
+ protected insertHandler(payloads: Payload[]): Promise<Payload[]>;
237
226
  protected startHandler(): Promise<boolean>;
238
227
  }
239
228
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Archivist.d.ts","sourceRoot":"","sources":["../../src/Archivist.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAInE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAMpD,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAAwC,CAAA;AAElE,qBAAa,gBAAiB,SAAQ,oBAAoB;IACxD,OAAgB,aAAa,WAAwD;IAErF,SAAkB,OAAO,EAAE,MAAM,EAAE,CAAiD;IAErE,IAAI,IAAI,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;cAK1B,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAQhD,aAAa,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAiBvD,YAAY;CAKtC"}
1
+ {"version":3,"file":"Archivist.d.ts","sourceRoot":"","sources":["../../src/Archivist.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAInE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAKnE,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAAwC,CAAA;AAElE,qBAAa,gBAAiB,SAAQ,oBAAoB;IACxD,OAAgB,aAAa,WAAwD;IAErF,SAAkB,OAAO,EAAE,MAAM,EAAE,CAAiD;IAErE,IAAI,IAAI,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;cAK1B,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAuBhD,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAkBtD,YAAY;CAKtC"}
@@ -1,33 +1,14 @@
1
1
  import { AbstractArchivist } from '@xyo-network/archivist-abstract';
2
2
  import { Payload } from '@xyo-network/payload-model';
3
+ import { PayloadWithMongoMeta } from '@xyo-network/payload-mongodb';
3
4
  declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
4
- _boundWitnessSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
5
- _payloads?: (import("@xyo-network/payload-model").SchemaFields & object & Partial<import("@xyo-network/payload-mongodb").PayloadMetaBase> & {
6
- schema: string;
7
- })[] | undefined;
8
- _source_ip?: string | undefined;
9
- _user_agent?: string | undefined;
10
- } & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
11
- schema: "network.xyo.boundwitness";
12
- }> | undefined;
13
- _payloadSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
14
- schema: string;
15
- }> | undefined;
5
+ _boundWitnessSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-mongodb").BoundWitnessWithMongoMeta> | undefined;
6
+ _payloadSdk: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<PayloadWithMongoMeta> | undefined;
16
7
  readonly boundWitnessSdkConfig: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkConfig;
17
- readonly boundWitnesses: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/boundwitness-model").BoundWitnessFields & {
18
- _payloads?: (import("@xyo-network/payload-model").SchemaFields & object & Partial<import("@xyo-network/payload-mongodb").PayloadMetaBase> & {
19
- schema: string;
20
- })[] | undefined;
21
- _source_ip?: string | undefined;
22
- _user_agent?: string | undefined;
23
- } & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
24
- schema: "network.xyo.boundwitness";
25
- }>;
8
+ readonly boundWitnesses: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-mongodb").BoundWitnessWithMongoMeta>;
26
9
  readonly jobQueue: import("@xyo-network/node-core-model").JobQueue;
27
10
  readonly payloadSdkConfig: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkConfig;
28
- readonly payloads: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<import("@xyo-network/payload-model").SchemaFields & object & import("@xyo-network/payload-mongodb").PayloadMetaBase & {
29
- schema: string;
30
- }>;
11
+ readonly payloads: import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdk<PayloadWithMongoMeta>;
31
12
  ensureIndexes(): Promise<void>;
32
13
  address: string;
33
14
  config: import("@xyo-network/payload-model").SchemaFields & object & Omit<{
@@ -37,6 +18,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
37
18
  readonly paging?: Record<string, {
38
19
  size?: number | undefined;
39
20
  }> | undefined;
21
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
40
22
  schema: "network.xyo.module.mongodb.config";
41
23
  readonly security?: {
42
24
  readonly allowAnonymous?: boolean | undefined;
@@ -53,6 +35,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
53
35
  readonly paging?: Record<string, {
54
36
  size?: number | undefined;
55
37
  }> | undefined;
38
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
56
39
  schema: "network.xyo.module.mongodb.config";
57
40
  readonly security?: {
58
41
  readonly allowAnonymous?: boolean | undefined;
@@ -70,7 +53,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
70
53
  schema: string;
71
54
  };
72
55
  id: string;
73
- params: import("@xyo-network/object").BaseParamsFields & {
56
+ params: import("@xylabs/object").BaseParamsFields & {
74
57
  account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
75
58
  config: import("@xyo-network/payload-model").SchemaFields & object & Omit<{
76
59
  readonly archivist?: string | undefined;
@@ -79,6 +62,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
79
62
  readonly paging?: Record<string, {
80
63
  size?: number | undefined;
81
64
  }> | undefined;
65
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
82
66
  schema: "network.xyo.module.mongodb.config";
83
67
  readonly security?: {
84
68
  readonly allowAnonymous?: boolean | undefined;
@@ -95,6 +79,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
95
79
  readonly paging?: Record<string, {
96
80
  size?: number | undefined;
97
81
  }> | undefined;
82
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
98
83
  schema: "network.xyo.module.mongodb.config";
99
84
  readonly security?: {
100
85
  readonly allowAnonymous?: boolean | undefined;
@@ -138,6 +123,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
138
123
  readonly paging?: Record<string, {
139
124
  size?: number | undefined;
140
125
  }> | undefined;
126
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
141
127
  schema: "network.xyo.module.config";
142
128
  readonly security?: {
143
129
  readonly allowAnonymous?: boolean | undefined;
@@ -154,6 +140,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
154
140
  readonly paging?: Record<string, {
155
141
  size?: number | undefined;
156
142
  }> | undefined;
143
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
157
144
  schema: "network.xyo.module.config";
158
145
  readonly security?: {
159
146
  readonly allowAnonymous?: boolean | undefined;
@@ -185,6 +172,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
185
172
  readonly paging?: Record<string, {
186
173
  size?: number | undefined;
187
174
  }> | undefined;
175
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
188
176
  schema: "network.xyo.module.config";
189
177
  readonly security?: {
190
178
  readonly allowAnonymous?: boolean | undefined;
@@ -201,6 +189,7 @@ declare const MongoDBArchivistBase: (abstract new (...args: any[]) => {
201
189
  readonly paging?: Record<string, {
202
190
  size?: number | undefined;
203
191
  }> | undefined;
192
+ readonly retry?: import("@xylabs/retry").RetryConfig | undefined;
204
193
  schema: "network.xyo.module.config";
205
194
  readonly security?: {
206
195
  readonly allowAnonymous?: boolean | undefined;
@@ -233,7 +222,7 @@ export declare class MongoDBArchivist extends MongoDBArchivistBase {
233
222
  readonly queries: string[];
234
223
  head(): Promise<Payload | undefined>;
235
224
  protected getHandler(hashes: string[]): Promise<Payload[]>;
236
- protected insertHandler(payloads?: Payload[]): Promise<Payload[]>;
225
+ protected insertHandler(payloads: Payload[]): Promise<Payload[]>;
237
226
  protected startHandler(): Promise<boolean>;
238
227
  }
239
228
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Archivist.d.ts","sourceRoot":"","sources":["../../src/Archivist.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAInE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAMpD,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAAwC,CAAA;AAElE,qBAAa,gBAAiB,SAAQ,oBAAoB;IACxD,OAAgB,aAAa,WAAwD;IAErF,SAAkB,OAAO,EAAE,MAAM,EAAE,CAAiD;IAErE,IAAI,IAAI,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;cAK1B,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAQhD,aAAa,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAiBvD,YAAY;CAKtC"}
1
+ {"version":3,"file":"Archivist.d.ts","sourceRoot":"","sources":["../../src/Archivist.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAInE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAKnE,QAAA,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAAwC,CAAA;AAElE,qBAAa,gBAAiB,SAAQ,oBAAoB;IACxD,OAAgB,aAAa,WAAwD;IAErF,SAAkB,OAAO,EAAE,MAAM,EAAE,CAAiD;IAErE,IAAI,IAAI,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;cAK1B,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAuBhD,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;cAkBtD,YAAY;CAKtC"}
@@ -28,53 +28,38 @@ module.exports = __toCommonJS(src_exports);
28
28
 
29
29
  // src/Archivist.ts
30
30
  var import_exists = require("@xylabs/exists");
31
- var import_promise = require("@xylabs/promise");
32
31
  var import_archivist_abstract = require("@xyo-network/archivist-abstract");
33
32
  var import_archivist_model = require("@xyo-network/archivist-model");
34
33
  var import_archivist_model_mongodb = require("@xyo-network/archivist-model-mongodb");
35
34
  var import_module_abstract_mongodb = require("@xyo-network/module-abstract-mongodb");
36
- var import_payload_wrapper3 = require("@xyo-network/payload-wrapper");
37
-
38
- // src/lib/toBoundWitnessWithMeta.ts
39
- var toBoundWitnessWithMeta = /* @__PURE__ */ __name(async (wrapper) => {
40
- const bw = wrapper.boundwitness;
41
- return {
42
- ...bw,
43
- _hash: await wrapper.hashAsync(),
44
- _timestamp: Date.now()
45
- };
46
- }, "toBoundWitnessWithMeta");
35
+ var import_payload_wrapper2 = require("@xyo-network/payload-wrapper");
47
36
 
48
- // src/lib/toPayloadWithMeta.ts
49
- var toPayloadWithMeta = /* @__PURE__ */ __name(async (wrapper) => {
37
+ // src/lib/toPayloadWithMongoMeta.ts
38
+ var import_payload_builder = require("@xyo-network/payload-builder");
39
+ var toPayloadWithMongoMeta = /* @__PURE__ */ __name(async (payload) => {
40
+ const built = await import_payload_builder.PayloadBuilder.build(payload);
41
+ const _hash = await import_payload_builder.PayloadBuilder.hash(built);
42
+ const { $hash, $meta, ...fields } = built;
50
43
  return {
51
- ...wrapper.payload(),
52
- _hash: await wrapper.hashAsync(),
44
+ ...fields,
45
+ _$hash: $hash,
46
+ _$meta: $meta,
47
+ _hash,
53
48
  _timestamp: Date.now()
54
49
  };
55
- }, "toPayloadWithMeta");
50
+ }, "toPayloadWithMongoMeta");
56
51
 
57
52
  // src/lib/toReturnValue.ts
58
- var import_payload_wrapper = require("@xyo-network/payload-wrapper");
53
+ var import_hash = require("@xyo-network/hash");
59
54
  var toReturnValue = /* @__PURE__ */ __name((value) => {
60
- const _signatures = value?._signatures;
61
- if (_signatures) {
62
- return {
63
- ...import_payload_wrapper.PayloadWrapper.wrap(value).body(),
64
- _signatures
65
- };
66
- } else {
67
- return {
68
- ...import_payload_wrapper.PayloadWrapper.wrap(value).body()
69
- };
70
- }
55
+ return (0, import_hash.deepOmitPrefixedFields)(value, "_");
71
56
  }, "toReturnValue");
72
57
 
73
58
  // src/lib/validByType.ts
74
59
  var import_boundwitness_builder = require("@xyo-network/boundwitness-builder");
75
60
  var import_boundwitness_model = require("@xyo-network/boundwitness-model");
76
61
  var import_boundwitness_wrapper = require("@xyo-network/boundwitness-wrapper");
77
- var import_payload_wrapper2 = require("@xyo-network/payload-wrapper");
62
+ var import_payload_wrapper = require("@xyo-network/payload-wrapper");
78
63
  var validByType = /* @__PURE__ */ __name(async (payloads = []) => {
79
64
  const results = [
80
65
  [],
@@ -83,16 +68,20 @@ var validByType = /* @__PURE__ */ __name(async (payloads = []) => {
83
68
  await Promise.all(payloads.map(async (payload) => {
84
69
  if ((0, import_boundwitness_model.isBoundWitness)(payload)) {
85
70
  const wrapper = (0, import_boundwitness_model.isQueryBoundWitness)(payload) ? import_boundwitness_builder.QueryBoundWitnessWrapper : import_boundwitness_wrapper.BoundWitnessWrapper;
86
- const bw = wrapper.parse(payload);
71
+ const bw = await wrapper.parse(payload);
87
72
  if (await bw.getValid()) {
88
- results[0].push(bw);
73
+ results[0].push(bw.jsonPayload());
74
+ } else {
75
+ const errors = await bw.getErrors();
76
+ console.log(`validByType.Error: ${JSON.stringify(errors, null, 2)}`);
89
77
  }
90
78
  } else {
91
- const payloadWrapper = import_payload_wrapper2.PayloadWrapper.wrap(payload);
79
+ const payloadWrapper = await import_payload_wrapper.PayloadWrapper.wrap(payload);
92
80
  if (await payloadWrapper.getValid()) {
93
- results[1].push(payloadWrapper);
81
+ results[1].push(payloadWrapper.jsonPayload());
94
82
  }
95
83
  }
84
+ return;
96
85
  }));
97
86
  return results;
98
87
  }, "validByType");
@@ -115,37 +104,62 @@ var MongoDBArchivist = class extends MongoDBArchivistBase {
115
104
  const head = await (await this.payloads.find({})).sort({
116
105
  _timestamp: -1
117
106
  }).limit(1).toArray();
118
- return head[0] ? import_payload_wrapper3.PayloadWrapper.wrap(head[0]).body() : void 0;
107
+ return head[0] ? (await import_payload_wrapper2.PayloadWrapper.wrap(head[0])).jsonPayload() : void 0;
119
108
  }
120
109
  async getHandler(hashes) {
121
- const payloads = hashes.map((_hash) => this.payloads.findOne({
110
+ let remainingHashes = [
111
+ ...hashes
112
+ ];
113
+ const dataPayloads = (await Promise.all(remainingHashes.map((_$hash) => this.payloads.findOne({
114
+ _$hash
115
+ })))).filter(import_exists.exists);
116
+ const dataPayloadsHashes = dataPayloads.map((payload) => payload._$hash);
117
+ remainingHashes = remainingHashes.filter((hash) => !dataPayloadsHashes.includes(hash));
118
+ const dataBws = (await Promise.all(remainingHashes.map((_$hash) => this.boundWitnesses.findOne({
119
+ _$hash
120
+ })))).filter(import_exists.exists);
121
+ const dataBwsHashes = dataBws.map((payload) => payload._$hash);
122
+ remainingHashes = remainingHashes.filter((hash) => !dataBwsHashes.includes(hash));
123
+ const payloads = (await Promise.all(remainingHashes.map((_hash) => this.payloads.findOne({
122
124
  _hash
123
- }));
124
- const bws = hashes.map((_hash) => this.boundWitnesses.findOne({
125
+ })))).filter(import_exists.exists);
126
+ const payloadsHashes = payloads.map((payload) => payload._hash);
127
+ remainingHashes = remainingHashes.filter((hash) => !payloadsHashes.includes(hash));
128
+ const bws = (await Promise.all(remainingHashes.map((_hash) => this.boundWitnesses.findOne({
125
129
  _hash
126
- }));
127
- const gets = await Promise.allSettled([
128
- payloads,
129
- bws
130
- ].flat());
131
- const succeeded = gets.reduce(import_promise.fulfilledValues, []);
132
- return succeeded.filter(import_exists.exists).map(toReturnValue);
130
+ })))).filter(import_exists.exists);
131
+ const bwsHashes = bws.map((payload) => payload._hash);
132
+ remainingHashes = remainingHashes.filter((hash) => !bwsHashes.includes(hash));
133
+ const foundPayloads = [
134
+ ...dataPayloads,
135
+ ...dataBws,
136
+ ...payloads,
137
+ ...bws
138
+ ];
139
+ return foundPayloads.map(({ _$hash, _$meta, ...other }) => ({
140
+ $hash: _$hash,
141
+ $meta: _$meta,
142
+ ...other
143
+ })).map(toReturnValue);
133
144
  }
134
145
  async insertHandler(payloads) {
135
146
  const [bw, p] = await validByType(payloads);
136
- const payloadsWithMeta = await Promise.all(p.map((x) => toPayloadWithMeta(x)));
137
- if (payloadsWithMeta.length) {
138
- const payloadsResult = await this.payloads.insertMany(payloadsWithMeta);
139
- if (!payloadsResult.acknowledged || payloadsResult.insertedCount !== payloadsWithMeta.length)
147
+ const payloadsWithExternalMeta = await Promise.all(p.map((x) => toPayloadWithMongoMeta(x)));
148
+ if (payloadsWithExternalMeta.length) {
149
+ const payloadsResult = await this.payloads.insertMany(payloadsWithExternalMeta);
150
+ if (!payloadsResult.acknowledged || payloadsResult.insertedCount !== payloadsWithExternalMeta.length)
140
151
  throw new Error("MongoDBDeterministicArchivist: Error inserting Payloads");
141
152
  }
142
- const boundWitnesses = await Promise.all(bw.map((x) => toBoundWitnessWithMeta(x)));
143
- if (boundWitnesses.length) {
144
- const boundWitnessesResult = await this.boundWitnesses.insertMany(boundWitnesses);
145
- if (!boundWitnessesResult.acknowledged || boundWitnessesResult.insertedCount !== boundWitnesses.length)
153
+ const boundWitnessesWithExternalMeta = await Promise.all(bw.map((x) => toPayloadWithMongoMeta(x)));
154
+ if (boundWitnessesWithExternalMeta.length) {
155
+ const boundWitnessesResult = await this.boundWitnesses.insertMany(boundWitnessesWithExternalMeta);
156
+ if (!boundWitnessesResult.acknowledged || boundWitnessesResult.insertedCount !== boundWitnessesWithExternalMeta.length)
146
157
  throw new Error("MongoDBDeterministicArchivist: Error inserting BoundWitnesses");
147
158
  }
148
- return payloads ?? [];
159
+ return [
160
+ ...boundWitnessesWithExternalMeta,
161
+ ...payloadsWithExternalMeta
162
+ ];
149
163
  }
150
164
  async startHandler() {
151
165
  await super.startHandler();
@@ -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","configSchemas","MongoDBArchivistConfigSchema","ArchivistConfigSchema","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"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/Archivist.ts","../../src/lib/toPayloadWithMongoMeta.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 { 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"],"mappings":"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","names":["import_payload_wrapper","toPayloadWithMongoMeta","payload","built","PayloadBuilder","build","_hash","hash","$hash","$meta","fields","_$hash","_$meta","_timestamp","Date","now","toReturnValue","value","deepOmitPrefixedFields","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","configSchemas","MongoDBArchivistConfigSchema","ArchivistConfigSchema","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"]}