@xyo-network/module-abstract-mongodb 2.89.1 → 3.0.0

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 (210) hide show
  1. package/dist/browser/Databases.d.ts.map +1 -1
  2. package/dist/browser/IndexDescription.d.ts.map +1 -1
  3. package/dist/browser/Indexes/CollectionIndexFunction.d.ts +1 -1
  4. package/dist/browser/Indexes/CollectionIndexFunction.d.ts.map +1 -1
  5. package/dist/browser/Module.d.ts.map +1 -1
  6. package/dist/browser/config/getBaseMongoSdk.d.ts +3 -2
  7. package/dist/browser/config/getBaseMongoSdk.d.ts.map +1 -1
  8. package/dist/{neutral/index.js → browser/index.mjs} +1 -1
  9. package/dist/browser/index.mjs.map +1 -0
  10. package/dist/neutral/Databases.d.ts.map +1 -1
  11. package/dist/neutral/IndexDescription.d.ts.map +1 -1
  12. package/dist/neutral/Indexes/CollectionIndexFunction.d.ts +1 -1
  13. package/dist/neutral/Indexes/CollectionIndexFunction.d.ts.map +1 -1
  14. package/dist/neutral/Module.d.ts.map +1 -1
  15. package/dist/neutral/config/getBaseMongoSdk.d.ts +3 -2
  16. package/dist/neutral/config/getBaseMongoSdk.d.ts.map +1 -1
  17. package/dist/{browser/index.js → neutral/index.mjs} +1 -1
  18. package/dist/neutral/index.mjs.map +1 -0
  19. package/dist/node/Databases.d.ts.map +1 -1
  20. package/dist/node/IndexDescription.d.ts.map +1 -1
  21. package/dist/node/Indexes/CollectionIndexFunction.d.ts +1 -1
  22. package/dist/node/Indexes/CollectionIndexFunction.d.ts.map +1 -1
  23. package/dist/node/Module.d.ts.map +1 -1
  24. package/dist/node/config/getBaseMongoSdk.d.ts +3 -2
  25. package/dist/node/config/getBaseMongoSdk.d.ts.map +1 -1
  26. package/dist/node/{index.js → index.mjs} +11 -16
  27. package/dist/node/index.mjs.map +1 -0
  28. package/package.json +39 -48
  29. package/src/Databases.ts +1 -3
  30. package/src/IndexDescription.ts +2 -2
  31. package/src/Indexes/CollectionIndexFunction.ts +1 -1
  32. package/src/Module.ts +16 -8
  33. package/src/config/getBaseMongoSdk.ts +3 -2
  34. package/dist/browser/Collections.d.cts +0 -9
  35. package/dist/browser/Collections.d.cts.map +0 -1
  36. package/dist/browser/Collections.d.mts +0 -9
  37. package/dist/browser/Collections.d.mts.map +0 -1
  38. package/dist/browser/Databases.d.cts +0 -4
  39. package/dist/browser/Databases.d.cts.map +0 -1
  40. package/dist/browser/Databases.d.mts +0 -4
  41. package/dist/browser/Databases.d.mts.map +0 -1
  42. package/dist/browser/Defaults.d.cts +0 -5
  43. package/dist/browser/Defaults.d.cts.map +0 -1
  44. package/dist/browser/Defaults.d.mts +0 -5
  45. package/dist/browser/Defaults.d.mts.map +0 -1
  46. package/dist/browser/IndexDescription.d.cts +0 -9
  47. package/dist/browser/IndexDescription.d.cts.map +0 -1
  48. package/dist/browser/IndexDescription.d.mts +0 -9
  49. package/dist/browser/IndexDescription.d.mts.map +0 -1
  50. package/dist/browser/Indexes/CollectionIndexFunction.d.cts +0 -3
  51. package/dist/browser/Indexes/CollectionIndexFunction.d.cts.map +0 -1
  52. package/dist/browser/Indexes/CollectionIndexFunction.d.mts +0 -3
  53. package/dist/browser/Indexes/CollectionIndexFunction.d.mts.map +0 -1
  54. package/dist/browser/Indexes/index.d.cts +0 -2
  55. package/dist/browser/Indexes/index.d.cts.map +0 -1
  56. package/dist/browser/Indexes/index.d.mts +0 -2
  57. package/dist/browser/Indexes/index.d.mts.map +0 -1
  58. package/dist/browser/Module.d.cts +0 -59
  59. package/dist/browser/Module.d.cts.map +0 -1
  60. package/dist/browser/Module.d.mts +0 -59
  61. package/dist/browser/Module.d.mts.map +0 -1
  62. package/dist/browser/config/getBaseMongoSdk.d.cts +0 -5
  63. package/dist/browser/config/getBaseMongoSdk.d.cts.map +0 -1
  64. package/dist/browser/config/getBaseMongoSdk.d.mts +0 -5
  65. package/dist/browser/config/getBaseMongoSdk.d.mts.map +0 -1
  66. package/dist/browser/config/getMongoDBConfig.d.cts +0 -5
  67. package/dist/browser/config/getMongoDBConfig.d.cts.map +0 -1
  68. package/dist/browser/config/getMongoDBConfig.d.mts +0 -5
  69. package/dist/browser/config/getMongoDBConfig.d.mts.map +0 -1
  70. package/dist/browser/config/hasMongoDBConfig.d.cts +0 -2
  71. package/dist/browser/config/hasMongoDBConfig.d.cts.map +0 -1
  72. package/dist/browser/config/hasMongoDBConfig.d.mts +0 -2
  73. package/dist/browser/config/hasMongoDBConfig.d.mts.map +0 -1
  74. package/dist/browser/config/index.d.cts +0 -4
  75. package/dist/browser/config/index.d.cts.map +0 -1
  76. package/dist/browser/config/index.d.mts +0 -4
  77. package/dist/browser/config/index.d.mts.map +0 -1
  78. package/dist/browser/index.cjs +0 -205
  79. package/dist/browser/index.cjs.map +0 -1
  80. package/dist/browser/index.d.cts +0 -9
  81. package/dist/browser/index.d.cts.map +0 -1
  82. package/dist/browser/index.d.mts +0 -9
  83. package/dist/browser/index.d.mts.map +0 -1
  84. package/dist/browser/index.js.map +0 -1
  85. package/dist/browser/util/dbProperty.d.cts +0 -4
  86. package/dist/browser/util/dbProperty.d.cts.map +0 -1
  87. package/dist/browser/util/dbProperty.d.mts +0 -4
  88. package/dist/browser/util/dbProperty.d.mts.map +0 -1
  89. package/dist/browser/util/index.d.cts +0 -2
  90. package/dist/browser/util/index.d.cts.map +0 -1
  91. package/dist/browser/util/index.d.mts +0 -2
  92. package/dist/browser/util/index.d.mts.map +0 -1
  93. package/dist/neutral/Collections.d.cts +0 -9
  94. package/dist/neutral/Collections.d.cts.map +0 -1
  95. package/dist/neutral/Collections.d.mts +0 -9
  96. package/dist/neutral/Collections.d.mts.map +0 -1
  97. package/dist/neutral/Databases.d.cts +0 -4
  98. package/dist/neutral/Databases.d.cts.map +0 -1
  99. package/dist/neutral/Databases.d.mts +0 -4
  100. package/dist/neutral/Databases.d.mts.map +0 -1
  101. package/dist/neutral/Defaults.d.cts +0 -5
  102. package/dist/neutral/Defaults.d.cts.map +0 -1
  103. package/dist/neutral/Defaults.d.mts +0 -5
  104. package/dist/neutral/Defaults.d.mts.map +0 -1
  105. package/dist/neutral/IndexDescription.d.cts +0 -9
  106. package/dist/neutral/IndexDescription.d.cts.map +0 -1
  107. package/dist/neutral/IndexDescription.d.mts +0 -9
  108. package/dist/neutral/IndexDescription.d.mts.map +0 -1
  109. package/dist/neutral/Indexes/CollectionIndexFunction.d.cts +0 -3
  110. package/dist/neutral/Indexes/CollectionIndexFunction.d.cts.map +0 -1
  111. package/dist/neutral/Indexes/CollectionIndexFunction.d.mts +0 -3
  112. package/dist/neutral/Indexes/CollectionIndexFunction.d.mts.map +0 -1
  113. package/dist/neutral/Indexes/index.d.cts +0 -2
  114. package/dist/neutral/Indexes/index.d.cts.map +0 -1
  115. package/dist/neutral/Indexes/index.d.mts +0 -2
  116. package/dist/neutral/Indexes/index.d.mts.map +0 -1
  117. package/dist/neutral/Module.d.cts +0 -59
  118. package/dist/neutral/Module.d.cts.map +0 -1
  119. package/dist/neutral/Module.d.mts +0 -59
  120. package/dist/neutral/Module.d.mts.map +0 -1
  121. package/dist/neutral/config/getBaseMongoSdk.d.cts +0 -5
  122. package/dist/neutral/config/getBaseMongoSdk.d.cts.map +0 -1
  123. package/dist/neutral/config/getBaseMongoSdk.d.mts +0 -5
  124. package/dist/neutral/config/getBaseMongoSdk.d.mts.map +0 -1
  125. package/dist/neutral/config/getMongoDBConfig.d.cts +0 -5
  126. package/dist/neutral/config/getMongoDBConfig.d.cts.map +0 -1
  127. package/dist/neutral/config/getMongoDBConfig.d.mts +0 -5
  128. package/dist/neutral/config/getMongoDBConfig.d.mts.map +0 -1
  129. package/dist/neutral/config/hasMongoDBConfig.d.cts +0 -2
  130. package/dist/neutral/config/hasMongoDBConfig.d.cts.map +0 -1
  131. package/dist/neutral/config/hasMongoDBConfig.d.mts +0 -2
  132. package/dist/neutral/config/hasMongoDBConfig.d.mts.map +0 -1
  133. package/dist/neutral/config/index.d.cts +0 -4
  134. package/dist/neutral/config/index.d.cts.map +0 -1
  135. package/dist/neutral/config/index.d.mts +0 -4
  136. package/dist/neutral/config/index.d.mts.map +0 -1
  137. package/dist/neutral/index.cjs +0 -205
  138. package/dist/neutral/index.cjs.map +0 -1
  139. package/dist/neutral/index.d.cts +0 -9
  140. package/dist/neutral/index.d.cts.map +0 -1
  141. package/dist/neutral/index.d.mts +0 -9
  142. package/dist/neutral/index.d.mts.map +0 -1
  143. package/dist/neutral/index.js.map +0 -1
  144. package/dist/neutral/util/dbProperty.d.cts +0 -4
  145. package/dist/neutral/util/dbProperty.d.cts.map +0 -1
  146. package/dist/neutral/util/dbProperty.d.mts +0 -4
  147. package/dist/neutral/util/dbProperty.d.mts.map +0 -1
  148. package/dist/neutral/util/index.d.cts +0 -2
  149. package/dist/neutral/util/index.d.cts.map +0 -1
  150. package/dist/neutral/util/index.d.mts +0 -2
  151. package/dist/neutral/util/index.d.mts.map +0 -1
  152. package/dist/node/Collections.d.cts +0 -9
  153. package/dist/node/Collections.d.cts.map +0 -1
  154. package/dist/node/Collections.d.mts +0 -9
  155. package/dist/node/Collections.d.mts.map +0 -1
  156. package/dist/node/Databases.d.cts +0 -4
  157. package/dist/node/Databases.d.cts.map +0 -1
  158. package/dist/node/Databases.d.mts +0 -4
  159. package/dist/node/Databases.d.mts.map +0 -1
  160. package/dist/node/Defaults.d.cts +0 -5
  161. package/dist/node/Defaults.d.cts.map +0 -1
  162. package/dist/node/Defaults.d.mts +0 -5
  163. package/dist/node/Defaults.d.mts.map +0 -1
  164. package/dist/node/IndexDescription.d.cts +0 -9
  165. package/dist/node/IndexDescription.d.cts.map +0 -1
  166. package/dist/node/IndexDescription.d.mts +0 -9
  167. package/dist/node/IndexDescription.d.mts.map +0 -1
  168. package/dist/node/Indexes/CollectionIndexFunction.d.cts +0 -3
  169. package/dist/node/Indexes/CollectionIndexFunction.d.cts.map +0 -1
  170. package/dist/node/Indexes/CollectionIndexFunction.d.mts +0 -3
  171. package/dist/node/Indexes/CollectionIndexFunction.d.mts.map +0 -1
  172. package/dist/node/Indexes/index.d.cts +0 -2
  173. package/dist/node/Indexes/index.d.cts.map +0 -1
  174. package/dist/node/Indexes/index.d.mts +0 -2
  175. package/dist/node/Indexes/index.d.mts.map +0 -1
  176. package/dist/node/Module.d.cts +0 -59
  177. package/dist/node/Module.d.cts.map +0 -1
  178. package/dist/node/Module.d.mts +0 -59
  179. package/dist/node/Module.d.mts.map +0 -1
  180. package/dist/node/config/getBaseMongoSdk.d.cts +0 -5
  181. package/dist/node/config/getBaseMongoSdk.d.cts.map +0 -1
  182. package/dist/node/config/getBaseMongoSdk.d.mts +0 -5
  183. package/dist/node/config/getBaseMongoSdk.d.mts.map +0 -1
  184. package/dist/node/config/getMongoDBConfig.d.cts +0 -5
  185. package/dist/node/config/getMongoDBConfig.d.cts.map +0 -1
  186. package/dist/node/config/getMongoDBConfig.d.mts +0 -5
  187. package/dist/node/config/getMongoDBConfig.d.mts.map +0 -1
  188. package/dist/node/config/hasMongoDBConfig.d.cts +0 -2
  189. package/dist/node/config/hasMongoDBConfig.d.cts.map +0 -1
  190. package/dist/node/config/hasMongoDBConfig.d.mts +0 -2
  191. package/dist/node/config/hasMongoDBConfig.d.mts.map +0 -1
  192. package/dist/node/config/index.d.cts +0 -4
  193. package/dist/node/config/index.d.cts.map +0 -1
  194. package/dist/node/config/index.d.mts +0 -4
  195. package/dist/node/config/index.d.mts.map +0 -1
  196. package/dist/node/index.cjs +0 -227
  197. package/dist/node/index.cjs.map +0 -1
  198. package/dist/node/index.d.cts +0 -9
  199. package/dist/node/index.d.cts.map +0 -1
  200. package/dist/node/index.d.mts +0 -9
  201. package/dist/node/index.d.mts.map +0 -1
  202. package/dist/node/index.js.map +0 -1
  203. package/dist/node/util/dbProperty.d.cts +0 -4
  204. package/dist/node/util/dbProperty.d.cts.map +0 -1
  205. package/dist/node/util/dbProperty.d.mts +0 -4
  206. package/dist/node/util/dbProperty.d.mts.map +0 -1
  207. package/dist/node/util/index.d.cts +0 -2
  208. package/dist/node/util/index.d.cts.map +0 -1
  209. package/dist/node/util/index.d.mts +0 -2
  210. package/dist/node/util/index.d.mts.map +0 -1
@@ -1,5 +0,0 @@
1
- export declare const DefaultAggregateTimeoutMs = 10000;
2
- export declare const DefaultLimit = 20;
3
- export declare const DefaultMaxTimeMS = 2000;
4
- export declare const DefaultOrder = "desc";
5
- //# sourceMappingURL=Defaults.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Defaults.d.ts","sourceRoot":"","sources":["../../src/Defaults.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,yBAAyB,QAAS,CAAA;AAC/C,eAAO,MAAM,YAAY,KAAK,CAAA;AAC9B,eAAO,MAAM,gBAAgB,OAAO,CAAA;AACpC,eAAO,MAAM,YAAY,SAAS,CAAA"}
@@ -1,9 +0,0 @@
1
- export type IndexDirection = -1 | 1;
2
- export type IndexDescription = {
3
- key: {
4
- [key: string]: IndexDirection;
5
- } | Map<string, IndexDirection>;
6
- name?: string;
7
- unique?: boolean;
8
- };
9
- //# sourceMappingURL=IndexDescription.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IndexDescription.d.ts","sourceRoot":"","sources":["../../src/IndexDescription.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;AAKnC,MAAM,MAAM,gBAAgB,GAAG;IAI7B,GAAG,EACC;QACE,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAA;KAC9B,GACD,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IAI/B,IAAI,CAAC,EAAE,MAAM,CAAA;IAIb,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA"}
@@ -1,9 +0,0 @@
1
- export type IndexDirection = -1 | 1;
2
- export type IndexDescription = {
3
- key: {
4
- [key: string]: IndexDirection;
5
- } | Map<string, IndexDirection>;
6
- name?: string;
7
- unique?: boolean;
8
- };
9
- //# sourceMappingURL=IndexDescription.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IndexDescription.d.ts","sourceRoot":"","sources":["../../src/IndexDescription.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;AAKnC,MAAM,MAAM,gBAAgB,GAAG;IAI7B,GAAG,EACC;QACE,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAA;KAC9B,GACD,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IAI/B,IAAI,CAAC,EAAE,MAAM,CAAA;IAIb,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA"}
@@ -1,3 +0,0 @@
1
- import { IndexDescription } from 'mongodb';
2
- export type CollectionIndexFunction = (collectionName: string) => IndexDescription[];
3
- //# sourceMappingURL=CollectionIndexFunction.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CollectionIndexFunction.d.ts","sourceRoot":"","sources":["../../../src/Indexes/CollectionIndexFunction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE1C,MAAM,MAAM,uBAAuB,GAAG,CAAC,cAAc,EAAE,MAAM,KAAK,gBAAgB,EAAE,CAAA"}
@@ -1,3 +0,0 @@
1
- import { IndexDescription } from 'mongodb';
2
- export type CollectionIndexFunction = (collectionName: string) => IndexDescription[];
3
- //# sourceMappingURL=CollectionIndexFunction.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CollectionIndexFunction.d.ts","sourceRoot":"","sources":["../../../src/Indexes/CollectionIndexFunction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE1C,MAAM,MAAM,uBAAuB,GAAG,CAAC,cAAc,EAAE,MAAM,KAAK,gBAAgB,EAAE,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from './CollectionIndexFunction.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Indexes/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAA"}
@@ -1,2 +0,0 @@
1
- export * from './CollectionIndexFunction.js';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Indexes/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAA"}
@@ -1,59 +0,0 @@
1
- import { Module } from '@xyo-network/module-model';
2
- import { MongoDBModuleParams, MongoDBStorageClassLabels } from '@xyo-network/module-model-mongodb';
3
- import { BoundWitnessWithMongoMeta, PayloadWithMongoMeta } from '@xyo-network/payload-mongodb';
4
- import { BaseMongoSdk, BaseMongoSdkConfig } from '@xyo-network/sdk-xyo-mongo-js';
5
- export type AnyAbstractModule<TParams extends MongoDBModuleParams = MongoDBModuleParams> = abstract new (...args: any[]) => Module<TParams>;
6
- export declare const MongoDBModuleMixin: <TParams extends MongoDBModuleParams = import("@xylabs/object").BaseParamsFields & {
7
- account?: import("@xyo-network/account-model").AccountInstance | "random";
8
- addToResolvers?: boolean;
9
- additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
10
- allowNameResolution?: boolean;
11
- config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
12
- boundWitnessSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
13
- payloadSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
14
- schema: import("@xyo-network/module-model-mongodb").MongoDBModuleConfigSchema;
15
- }, "schema"> & {
16
- schema: "network.xyo.module.mongodb.config";
17
- }, "schema"> & {
18
- schema: string;
19
- };
20
- ephemeralQueryAccountEnabled?: boolean;
21
- moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
22
- } & {
23
- boundWitnessSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
24
- jobQueue?: import("@xyo-network/node-core-model").JobQueue;
25
- payloadSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
26
- }, TModule extends AnyAbstractModule<TParams> = AnyAbstractModule<TParams>>(ModuleBase: TModule) => ((abstract new (...args: any[]) => {
27
- _boundWitnessSdk: BaseMongoSdk<BoundWitnessWithMongoMeta> | undefined;
28
- _payloadSdk: BaseMongoSdk<PayloadWithMongoMeta> | undefined;
29
- readonly boundWitnessSdkConfig: BaseMongoSdkConfig;
30
- readonly boundWitnesses: BaseMongoSdk<BoundWitnessWithMongoMeta>;
31
- readonly jobQueue: import("@xyo-network/node-core-model").JobQueue;
32
- readonly payloadSdkConfig: BaseMongoSdkConfig;
33
- readonly payloads: BaseMongoSdk<PayloadWithMongoMeta>;
34
- ensureIndexes(): Promise<void>;
35
- address: import("@xylabs/hex").Address;
36
- config: TParams["config"];
37
- id: string;
38
- modName?: import("@xyo-network/module-model").ModuleName;
39
- params: TParams;
40
- previousHash: () => import("@xylabs/promise").Promisable<string | undefined>;
41
- queries: string[];
42
- query: <T extends import("@xyo-network/boundwitness-model").QueryBoundWitness = import("@xyo-network/boundwitness-model").QueryBoundWitness, TConf extends import("@xyo-network/module-model").ModuleConfig = import("@xyo-network/module-model").ModuleConfig>(query: T, payloads?: import("@xyo-network/payload-model").Payload[], queryConfig?: TConf) => import("@xylabs/promise").Promisable<import("@xyo-network/module-model").ModuleQueryResult>;
43
- queryable: <T extends import("@xyo-network/boundwitness-model").QueryBoundWitness = import("@xyo-network/boundwitness-model").QueryBoundWitness, TConf_1 extends import("@xyo-network/module-model").ModuleConfig = import("@xyo-network/module-model").ModuleConfig>(query: T, payloads?: import("@xyo-network/payload-model").Payload[], queryConfig?: TConf_1) => import("@xylabs/promise").Promisable<boolean>;
44
- start?: () => import("@xylabs/promise").Promisable<boolean>;
45
- stop?: () => import("@xylabs/promise").Promisable<boolean>;
46
- eventData: import("@xyo-network/module-model").ModuleEventData<object>;
47
- clearListeners(eventNames: keyof import("@xyo-network/module-model").ModuleEventData<object> | (keyof import("@xyo-network/module-model").ModuleEventData<object>)[]): void;
48
- emit<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName, eventArgs: import("@xyo-network/module-model").ModuleEventData<object>[TEventName]): Promise<void>;
49
- emitSerial<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName, eventArgs: import("@xyo-network/module-model").ModuleEventData<object>[TEventName]): Promise<void>;
50
- listenerCount(eventNames: keyof import("@xyo-network/module-model").ModuleEventData<object> | (keyof import("@xyo-network/module-model").ModuleEventData<object>)[]): number;
51
- off<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventNames: TEventName | TEventName[], listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName]>): void;
52
- offAny(listener: import("@xyo-network/module-events").EventAnyListener | Promise<void>): void;
53
- on<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventNames: TEventName | TEventName[], listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName]>): import("@xyo-network/module-events").EventUnsubscribeFunction;
54
- onAny(listener: import("@xyo-network/module-events").EventAnyListener): import("@xyo-network/module-events").EventUnsubscribeFunction;
55
- once<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName, listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName]>): import("@xyo-network/module-events").EventUnsubscribeFunction;
56
- }) & {
57
- labels: MongoDBStorageClassLabels;
58
- }) & TModule;
59
- //# sourceMappingURL=Module.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Module.d.ts","sourceRoot":"","sources":["../../src/Module.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAClD,OAAO,EAAiB,mBAAmB,EAAuB,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AACtI,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAC9F,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAQhF,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,IAAI,QAAQ,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,OAAO,CAAC,CAAA;AAE3I,eAAO,MAAM,kBAAkB,GAC7B,OAAO,SAAS,mBAAmB;;;;;;;;;;;;;;;;;;;;GACnC,OAAO,SAAS,iBAAiB,CAAC,OAAO,CAAC,2CAE9B,OAAO,8BAN6F,GAAG,EAAE;sBAWjG,YAAY,CAAC,yBAAyB,CAAC,GAAG,SAAS;iBACxD,YAAY,CAAC,oBAAoB,CAAC,GAAG,SAAS;;;;;;qBAkCpC,OAAO,CAAC,IAAI,CAAC;;;;;;;;sRA9CF,CAAA,6DAAwB,CAAC;4RAGR,CAAC,6DACrC,CAAC;;;;;;;;;;;;;;;YAiDnB,CAAA"}
@@ -1,59 +0,0 @@
1
- import { Module } from '@xyo-network/module-model';
2
- import { MongoDBModuleParams, MongoDBStorageClassLabels } from '@xyo-network/module-model-mongodb';
3
- import { BoundWitnessWithMongoMeta, PayloadWithMongoMeta } from '@xyo-network/payload-mongodb';
4
- import { BaseMongoSdk, BaseMongoSdkConfig } from '@xyo-network/sdk-xyo-mongo-js';
5
- export type AnyAbstractModule<TParams extends MongoDBModuleParams = MongoDBModuleParams> = abstract new (...args: any[]) => Module<TParams>;
6
- export declare const MongoDBModuleMixin: <TParams extends MongoDBModuleParams = import("@xylabs/object").BaseParamsFields & {
7
- account?: import("@xyo-network/account-model").AccountInstance | "random";
8
- addToResolvers?: boolean;
9
- additionalSigners?: import("@xyo-network/account-model").AccountInstance[];
10
- allowNameResolution?: boolean;
11
- config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
12
- boundWitnessSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
13
- payloadSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
14
- schema: import("@xyo-network/module-model-mongodb").MongoDBModuleConfigSchema;
15
- }, "schema"> & {
16
- schema: "network.xyo.module.mongodb.config";
17
- }, "schema"> & {
18
- schema: string;
19
- };
20
- ephemeralQueryAccountEnabled?: boolean;
21
- moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
22
- } & {
23
- boundWitnessSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
24
- jobQueue?: import("@xyo-network/node-core-model").JobQueue;
25
- payloadSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
26
- }, TModule extends AnyAbstractModule<TParams> = AnyAbstractModule<TParams>>(ModuleBase: TModule) => ((abstract new (...args: any[]) => {
27
- _boundWitnessSdk: BaseMongoSdk<BoundWitnessWithMongoMeta> | undefined;
28
- _payloadSdk: BaseMongoSdk<PayloadWithMongoMeta> | undefined;
29
- readonly boundWitnessSdkConfig: BaseMongoSdkConfig;
30
- readonly boundWitnesses: BaseMongoSdk<BoundWitnessWithMongoMeta>;
31
- readonly jobQueue: import("@xyo-network/node-core-model").JobQueue;
32
- readonly payloadSdkConfig: BaseMongoSdkConfig;
33
- readonly payloads: BaseMongoSdk<PayloadWithMongoMeta>;
34
- ensureIndexes(): Promise<void>;
35
- address: import("@xylabs/hex").Address;
36
- config: TParams["config"];
37
- id: string;
38
- modName?: import("@xyo-network/module-model").ModuleName;
39
- params: TParams;
40
- previousHash: () => import("@xylabs/promise").Promisable<string | undefined>;
41
- queries: string[];
42
- query: <T extends import("@xyo-network/boundwitness-model").QueryBoundWitness = import("@xyo-network/boundwitness-model").QueryBoundWitness, TConf extends import("@xyo-network/module-model").ModuleConfig = import("@xyo-network/module-model").ModuleConfig>(query: T, payloads?: import("@xyo-network/payload-model").Payload[], queryConfig?: TConf) => import("@xylabs/promise").Promisable<import("@xyo-network/module-model").ModuleQueryResult>;
43
- queryable: <T extends import("@xyo-network/boundwitness-model").QueryBoundWitness = import("@xyo-network/boundwitness-model").QueryBoundWitness, TConf_1 extends import("@xyo-network/module-model").ModuleConfig = import("@xyo-network/module-model").ModuleConfig>(query: T, payloads?: import("@xyo-network/payload-model").Payload[], queryConfig?: TConf_1) => import("@xylabs/promise").Promisable<boolean>;
44
- start?: () => import("@xylabs/promise").Promisable<boolean>;
45
- stop?: () => import("@xylabs/promise").Promisable<boolean>;
46
- eventData: import("@xyo-network/module-model").ModuleEventData<object>;
47
- clearListeners(eventNames: keyof import("@xyo-network/module-model").ModuleEventData<object> | (keyof import("@xyo-network/module-model").ModuleEventData<object>)[]): void;
48
- emit<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName, eventArgs: import("@xyo-network/module-model").ModuleEventData<object>[TEventName]): Promise<void>;
49
- emitSerial<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName, eventArgs: import("@xyo-network/module-model").ModuleEventData<object>[TEventName]): Promise<void>;
50
- listenerCount(eventNames: keyof import("@xyo-network/module-model").ModuleEventData<object> | (keyof import("@xyo-network/module-model").ModuleEventData<object>)[]): number;
51
- off<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventNames: TEventName | TEventName[], listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName]>): void;
52
- offAny(listener: import("@xyo-network/module-events").EventAnyListener | Promise<void>): void;
53
- on<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventNames: TEventName | TEventName[], listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName]>): import("@xyo-network/module-events").EventUnsubscribeFunction;
54
- onAny(listener: import("@xyo-network/module-events").EventAnyListener): import("@xyo-network/module-events").EventUnsubscribeFunction;
55
- once<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName, listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName]>): import("@xyo-network/module-events").EventUnsubscribeFunction;
56
- }) & {
57
- labels: MongoDBStorageClassLabels;
58
- }) & TModule;
59
- //# sourceMappingURL=Module.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Module.d.ts","sourceRoot":"","sources":["../../src/Module.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAClD,OAAO,EAAiB,mBAAmB,EAAuB,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AACtI,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAC9F,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAQhF,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,IAAI,QAAQ,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,OAAO,CAAC,CAAA;AAE3I,eAAO,MAAM,kBAAkB,GAC7B,OAAO,SAAS,mBAAmB;;;;;;;;;;;;;;;;;;;;GACnC,OAAO,SAAS,iBAAiB,CAAC,OAAO,CAAC,2CAE9B,OAAO,8BAN6F,GAAG,EAAE;sBAWjG,YAAY,CAAC,yBAAyB,CAAC,GAAG,SAAS;iBACxD,YAAY,CAAC,oBAAoB,CAAC,GAAG,SAAS;;;;;;qBAkCpC,OAAO,CAAC,IAAI,CAAC;;;;;;;;sRA9CF,CAAA,6DAAwB,CAAC;4RAGR,CAAC,6DACrC,CAAC;;;;;;;;;;;;;;;YAiDnB,CAAA"}
@@ -1,5 +0,0 @@
1
- import { BaseMongoSdk, BaseMongoSdkPrivateConfig } from '@xyo-network/sdk-xyo-mongo-js';
2
- import { Document } from 'mongodb';
3
- export declare const getBaseMongoSdkPrivateConfig: () => BaseMongoSdkPrivateConfig;
4
- export declare const getBaseMongoSdk: <T extends Document>(collection: string) => BaseMongoSdk<T>;
5
- //# sourceMappingURL=getBaseMongoSdk.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getBaseMongoSdk.d.ts","sourceRoot":"","sources":["../../../src/config/getBaseMongoSdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AACvF,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAIlC,eAAO,MAAM,4BAA4B,QAAO,yBAS/C,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,QAAQ,cAAc,MAAM,oBAErE,CAAA"}
@@ -1,5 +0,0 @@
1
- import { BaseMongoSdk, BaseMongoSdkPrivateConfig } from '@xyo-network/sdk-xyo-mongo-js';
2
- import { Document } from 'mongodb';
3
- export declare const getBaseMongoSdkPrivateConfig: () => BaseMongoSdkPrivateConfig;
4
- export declare const getBaseMongoSdk: <T extends Document>(collection: string) => BaseMongoSdk<T>;
5
- //# sourceMappingURL=getBaseMongoSdk.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getBaseMongoSdk.d.ts","sourceRoot":"","sources":["../../../src/config/getBaseMongoSdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AACvF,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAIlC,eAAO,MAAM,4BAA4B,QAAO,yBAS/C,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,QAAQ,cAAc,MAAM,oBAErE,CAAA"}
@@ -1,5 +0,0 @@
1
- export type MongoDbConnectionStringEnvVar = 'MONGO_CONNECTION_STRING';
2
- export type MongoDbEnvVars = 'MONGO_DATABASE' | 'MONGO_DOMAIN' | 'MONGO_PASSWORD' | 'MONGO_USERNAME';
3
- export type MongoEnv = Record<MongoDbEnvVars | MongoDbConnectionStringEnvVar, string | undefined>;
4
- export declare const getMongoDBConfig: () => MongoEnv;
5
- //# sourceMappingURL=getMongoDBConfig.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getMongoDBConfig.d.ts","sourceRoot":"","sources":["../../../src/config/getMongoDBConfig.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,6BAA6B,GAAG,yBAAyB,CAAA;AACrE,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG,cAAc,GAAG,gBAAgB,GAAG,gBAAgB,CAAA;AAEpG,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,GAAG,6BAA6B,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;AAEjG,eAAO,MAAM,gBAAgB,QAAO,QAYnC,CAAA"}
@@ -1,5 +0,0 @@
1
- export type MongoDbConnectionStringEnvVar = 'MONGO_CONNECTION_STRING';
2
- export type MongoDbEnvVars = 'MONGO_DATABASE' | 'MONGO_DOMAIN' | 'MONGO_PASSWORD' | 'MONGO_USERNAME';
3
- export type MongoEnv = Record<MongoDbEnvVars | MongoDbConnectionStringEnvVar, string | undefined>;
4
- export declare const getMongoDBConfig: () => MongoEnv;
5
- //# sourceMappingURL=getMongoDBConfig.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getMongoDBConfig.d.ts","sourceRoot":"","sources":["../../../src/config/getMongoDBConfig.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,6BAA6B,GAAG,yBAAyB,CAAA;AACrE,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG,cAAc,GAAG,gBAAgB,GAAG,gBAAgB,CAAA;AAEpG,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,GAAG,6BAA6B,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;AAEjG,eAAO,MAAM,gBAAgB,QAAO,QAYnC,CAAA"}
@@ -1,2 +0,0 @@
1
- export declare const hasMongoDBConfig: () => boolean;
2
- //# sourceMappingURL=hasMongoDBConfig.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hasMongoDBConfig.d.ts","sourceRoot":"","sources":["../../../src/config/hasMongoDBConfig.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,gBAAgB,QAAO,OAInC,CAAA"}
@@ -1,2 +0,0 @@
1
- export declare const hasMongoDBConfig: () => boolean;
2
- //# sourceMappingURL=hasMongoDBConfig.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hasMongoDBConfig.d.ts","sourceRoot":"","sources":["../../../src/config/hasMongoDBConfig.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,gBAAgB,QAAO,OAInC,CAAA"}
@@ -1,4 +0,0 @@
1
- export * from './getBaseMongoSdk.js';
2
- export * from './getMongoDBConfig.js';
3
- export * from './hasMongoDBConfig.js';
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA"}
@@ -1,4 +0,0 @@
1
- export * from './getBaseMongoSdk.js';
2
- export * from './getMongoDBConfig.js';
3
- export * from './hasMongoDBConfig.js';
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,uBAAuB,CAAA"}
@@ -1,205 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
-
21
- // src/index.ts
22
- var src_exports = {};
23
- __export(src_exports, {
24
- COLLECTIONS: () => COLLECTIONS,
25
- DATABASES: () => DATABASES,
26
- DefaultAggregateTimeoutMs: () => DefaultAggregateTimeoutMs,
27
- DefaultLimit: () => DefaultLimit,
28
- DefaultMaxTimeMS: () => DefaultMaxTimeMS,
29
- DefaultOrder: () => DefaultOrder,
30
- MongoDBModuleMixin: () => MongoDBModuleMixin,
31
- escapeChar: () => escapeChar,
32
- fromDbProperty: () => fromDbProperty,
33
- getBaseMongoSdk: () => getBaseMongoSdk,
34
- getBaseMongoSdkPrivateConfig: () => getBaseMongoSdkPrivateConfig,
35
- getMongoDBConfig: () => getMongoDBConfig,
36
- hasMongoDBConfig: () => hasMongoDBConfig,
37
- toDbProperty: () => toDbProperty
38
- });
39
- module.exports = __toCommonJS(src_exports);
40
-
41
- // src/Collections.ts
42
- var COLLECTIONS = {
43
- AddressInfo: "address_info",
44
- ArchivistStats: "archivist_stats",
45
- BoundWitnesses: "bound_witnesses",
46
- Payloads: "payloads",
47
- Thumbnails: "thumbnails",
48
- Users: "users"
49
- };
50
-
51
- // src/config/getBaseMongoSdk.ts
52
- var import_assert = require("@xylabs/assert");
53
- var import_sdk_xyo_mongo_js = require("@xyo-network/sdk-xyo-mongo-js");
54
-
55
- // src/config/getMongoDBConfig.ts
56
- var getMongoDBConfig = /* @__PURE__ */ __name(() => {
57
- const env = {};
58
- if (process.env.MONGO_CONNECTION_STRING) {
59
- env.MONGO_CONNECTION_STRING = process.env.MONGO_CONNECTION_STRING;
60
- }
61
- if (process.env.MONGO_DOMAIN) {
62
- env.MONGO_DATABASE = process.env.MONGO_DATABASE;
63
- env.MONGO_DOMAIN = process.env.MONGO_DOMAIN;
64
- env.MONGO_PASSWORD = process.env.MONGO_PASSWORD;
65
- env.MONGO_USERNAME = process.env.MONGO_USERNAME;
66
- }
67
- return env;
68
- }, "getMongoDBConfig");
69
-
70
- // src/config/getBaseMongoSdk.ts
71
- var getBaseMongoSdkPrivateConfig = /* @__PURE__ */ __name(() => {
72
- const env = getMongoDBConfig();
73
- return {
74
- dbConnectionString: env.MONGO_CONNECTION_STRING,
75
- dbDomain: (0, import_assert.assertEx)(env.MONGO_DOMAIN, () => "Missing Mongo Domain"),
76
- dbName: (0, import_assert.assertEx)(env.MONGO_DATABASE, () => "Missing Mongo Database"),
77
- dbPassword: (0, import_assert.assertEx)(env.MONGO_PASSWORD, () => "Missing Mongo Password"),
78
- dbUserName: (0, import_assert.assertEx)(env.MONGO_USERNAME, () => "Missing Mongo Username")
79
- };
80
- }, "getBaseMongoSdkPrivateConfig");
81
- var getBaseMongoSdk = /* @__PURE__ */ __name((collection) => {
82
- return new import_sdk_xyo_mongo_js.BaseMongoSdk({
83
- ...getBaseMongoSdkPrivateConfig(),
84
- collection
85
- });
86
- }, "getBaseMongoSdk");
87
-
88
- // src/config/hasMongoDBConfig.ts
89
- var import_exists = require("@xylabs/exists");
90
- var hasMongoDBConfig = /* @__PURE__ */ __name(() => {
91
- const env = getMongoDBConfig();
92
- const requiredValues = [
93
- env.MONGO_CONNECTION_STRING,
94
- env.MONGO_DATABASE,
95
- env.MONGO_DOMAIN,
96
- env.MONGO_PASSWORD,
97
- env.MONGO_USERNAME
98
- ];
99
- return requiredValues.every(import_exists.exists);
100
- }, "hasMongoDBConfig");
101
-
102
- // src/Databases.ts
103
- var DATABASES = {
104
- Archivist: "archivist"
105
- };
106
-
107
- // src/Defaults.ts
108
- var DefaultAggregateTimeoutMs = 1e4;
109
- var DefaultLimit = 20;
110
- var DefaultMaxTimeMS = 2e3;
111
- var DefaultOrder = "desc";
112
-
113
- // src/Module.ts
114
- var import_assert2 = require("@xylabs/assert");
115
- var import_lodash = require("@xylabs/lodash");
116
- var import_static_implements = require("@xylabs/static-implements");
117
- var import_module_model_mongodb = require("@xyo-network/module-model-mongodb");
118
- var import_sdk_xyo_mongo_js2 = require("@xyo-network/sdk-xyo-mongo-js");
119
- function _ts_decorate(decorators, target, key, desc) {
120
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
121
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
122
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
123
- return c > 3 && r && Object.defineProperty(target, key, r), r;
124
- }
125
- __name(_ts_decorate, "_ts_decorate");
126
- var MongoDBModuleMixin = /* @__PURE__ */ __name((ModuleBase) => {
127
- let MongoModuleBase = class MongoModuleBase extends ModuleBase {
128
- static {
129
- __name(this, "MongoModuleBase");
130
- }
131
- static labels = import_module_model_mongodb.MongoDBStorageClassLabels;
132
- _boundWitnessSdk;
133
- _payloadSdk;
134
- get boundWitnessSdkConfig() {
135
- const config = {
136
- collection: COLLECTIONS.BoundWitnesses,
137
- ...getBaseMongoSdkPrivateConfig()
138
- };
139
- return (0, import_lodash.merge)(config, this.params.boundWitnessSdkConfig, this.config.boundWitnessSdkConfig, {
140
- collection: this.config.boundWitnessSdkConfig?.collection ?? this.params.boundWitnessSdkConfig?.collection ?? COLLECTIONS.BoundWitnesses
141
- });
142
- }
143
- get boundWitnesses() {
144
- this._boundWitnessSdk = this._boundWitnessSdk ?? new import_sdk_xyo_mongo_js2.BaseMongoSdk(this.boundWitnessSdkConfig);
145
- return (0, import_assert2.assertEx)(this._boundWitnessSdk);
146
- }
147
- get jobQueue() {
148
- return (0, import_assert2.assertEx)(this.params.jobQueue, () => "MongoDBModule Error: jobQueue required for this module but is not defined");
149
- }
150
- get payloadSdkConfig() {
151
- const config = {
152
- collection: COLLECTIONS.Payloads,
153
- ...getBaseMongoSdkPrivateConfig()
154
- };
155
- return (0, import_lodash.merge)(config, this.params.payloadSdkConfig, this.config.payloadSdkConfig, {
156
- collection: this.config.payloadSdkConfig?.collection ?? this.params.payloadSdkConfig?.collection ?? COLLECTIONS.Payloads
157
- });
158
- }
159
- get payloads() {
160
- this._payloadSdk = this._payloadSdk ?? new import_sdk_xyo_mongo_js2.BaseMongoSdk(this.payloadSdkConfig);
161
- return (0, import_assert2.assertEx)(this._payloadSdk);
162
- }
163
- /**
164
- * Ensures any indexes specified within the config are created. This method should be idempotent
165
- * allowing for multiple calls without causing errors while ensuring the desired state.
166
- */
167
- async ensureIndexes() {
168
- const configIndexes = this.config?.storage?.indexes ?? [];
169
- await ensureIndexesExistOnCollection(this.boundWitnesses, configIndexes);
170
- await ensureIndexesExistOnCollection(this.payloads, configIndexes);
171
- }
172
- };
173
- MongoModuleBase = _ts_decorate([
174
- (0, import_static_implements.staticImplements)()
175
- ], MongoModuleBase);
176
- return MongoModuleBase;
177
- }, "MongoDBModuleMixin");
178
- var ensureIndexesExistOnCollection = /* @__PURE__ */ __name(async (sdk, configIndexes) => {
179
- await sdk.useCollection(async (collection) => {
180
- const collectionName = collection.collectionName.toLowerCase();
181
- const indexes = configIndexes.filter((ix) => ix?.name?.toLowerCase().startsWith(collectionName));
182
- if (indexes.length === 0) return;
183
- for (const ix of indexes) {
184
- try {
185
- await collection.createIndexes([
186
- ix
187
- ]);
188
- } catch (error) {
189
- const mongoServerError = error;
190
- const { codeName } = mongoServerError;
191
- if (codeName === "IndexKeySpecsConflict" || codeName === "IndexOptionsConflict") {
192
- continue;
193
- }
194
- console.error(`Error creating index ${ix.name} for collection ${collectionName}: ${error}`);
195
- throw error;
196
- }
197
- }
198
- });
199
- }, "ensureIndexesExistOnCollection");
200
-
201
- // src/util/dbProperty.ts
202
- var escapeChar = "#";
203
- var toDbProperty = /* @__PURE__ */ __name((value) => value.replaceAll(".", escapeChar), "toDbProperty");
204
- var fromDbProperty = /* @__PURE__ */ __name((value) => value.replaceAll(escapeChar, "."), "fromDbProperty");
205
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/Collections.ts","../../src/config/getBaseMongoSdk.ts","../../src/config/getMongoDBConfig.ts","../../src/config/hasMongoDBConfig.ts","../../src/Databases.ts","../../src/Defaults.ts","../../src/Module.ts","../../src/util/dbProperty.ts"],"sourcesContent":["export * from './Collections.js'\nexport * from './config/index.js'\nexport * from './Databases.js'\nexport * from './Defaults.js'\nexport * from './IndexDescription.js'\nexport * from './Indexes/index.js'\nexport * from './Module.js'\nexport * from './util/index.js'\n","// TODO: By DB\nexport const COLLECTIONS = {\n AddressInfo: 'address_info' as const,\n ArchivistStats: 'archivist_stats' as const,\n BoundWitnesses: 'bound_witnesses' as const,\n Payloads: 'payloads' as const,\n Thumbnails: 'thumbnails' as const,\n Users: 'users' as const,\n}\n","import { assertEx } from '@xylabs/assert'\nimport { BaseMongoSdk, BaseMongoSdkPrivateConfig } from '@xyo-network/sdk-xyo-mongo-js'\nimport { Document } from 'mongodb'\n\nimport { getMongoDBConfig } from './getMongoDBConfig.js'\n\nexport const getBaseMongoSdkPrivateConfig = (): BaseMongoSdkPrivateConfig => {\n const env = getMongoDBConfig()\n return {\n dbConnectionString: env.MONGO_CONNECTION_STRING,\n dbDomain: assertEx(env.MONGO_DOMAIN, () => 'Missing Mongo Domain'),\n dbName: assertEx(env.MONGO_DATABASE, () => 'Missing Mongo Database'),\n dbPassword: assertEx(env.MONGO_PASSWORD, () => 'Missing Mongo Password'),\n dbUserName: assertEx(env.MONGO_USERNAME, () => 'Missing Mongo Username'),\n }\n}\n\nexport const getBaseMongoSdk = <T extends Document>(collection: string) => {\n return new BaseMongoSdk<T>({ ...getBaseMongoSdkPrivateConfig(), collection })\n}\n","export type MongoDbConnectionStringEnvVar = 'MONGO_CONNECTION_STRING'\nexport type MongoDbEnvVars = 'MONGO_DATABASE' | 'MONGO_DOMAIN' | 'MONGO_PASSWORD' | 'MONGO_USERNAME'\n\nexport type MongoEnv = Record<MongoDbEnvVars | MongoDbConnectionStringEnvVar, string | undefined>\n\nexport const getMongoDBConfig = (): MongoEnv => {\n const env: MongoEnv = {} as MongoEnv\n if (process.env.MONGO_CONNECTION_STRING) {\n env.MONGO_CONNECTION_STRING = process.env.MONGO_CONNECTION_STRING\n }\n if (process.env.MONGO_DOMAIN) {\n env.MONGO_DATABASE = process.env.MONGO_DATABASE\n env.MONGO_DOMAIN = process.env.MONGO_DOMAIN\n env.MONGO_PASSWORD = process.env.MONGO_PASSWORD\n env.MONGO_USERNAME = process.env.MONGO_USERNAME\n }\n return env\n}\n","import { exists } from '@xylabs/exists'\n\nimport { getMongoDBConfig } from './getMongoDBConfig.js'\n\nexport const hasMongoDBConfig = (): boolean => {\n const env = getMongoDBConfig()\n const requiredValues = [env.MONGO_CONNECTION_STRING, env.MONGO_DATABASE, env.MONGO_DOMAIN, env.MONGO_PASSWORD, env.MONGO_USERNAME]\n return requiredValues.every(exists)\n}\n","export const DATABASES = {\n Archivist: 'archivist' as const,\n}\n","export const DefaultAggregateTimeoutMs = 10_000\nexport const DefaultLimit = 20\nexport const DefaultMaxTimeMS = 2000\nexport const DefaultOrder = 'desc'\n","import { assertEx } from '@xylabs/assert'\nimport { merge } from '@xylabs/lodash'\nimport { staticImplements } from '@xylabs/static-implements'\nimport { Module } from '@xyo-network/module-model'\nimport { MongoDBModule, MongoDBModuleParams, MongoDBModuleStatic, MongoDBStorageClassLabels } from '@xyo-network/module-model-mongodb'\nimport { BoundWitnessWithMongoMeta, PayloadWithMongoMeta } from '@xyo-network/payload-mongodb'\nimport { BaseMongoSdk, BaseMongoSdkConfig } from '@xyo-network/sdk-xyo-mongo-js'\nimport { MongoServerError } from 'mongodb'\n\nimport { COLLECTIONS } from './Collections.js'\nimport { getBaseMongoSdkPrivateConfig } from './config/index.js'\nimport { IndexDescription } from './IndexDescription.js'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type AnyAbstractModule<TParams extends MongoDBModuleParams = MongoDBModuleParams> = abstract new (...args: any[]) => Module<TParams>\n\nexport const MongoDBModuleMixin = <\n TParams extends MongoDBModuleParams = MongoDBModuleParams,\n TModule extends AnyAbstractModule<TParams> = AnyAbstractModule<TParams>,\n>(\n ModuleBase: TModule,\n) => {\n @staticImplements<MongoDBModuleStatic>()\n abstract class MongoModuleBase extends ModuleBase implements MongoDBModule {\n static labels = MongoDBStorageClassLabels\n _boundWitnessSdk: BaseMongoSdk<BoundWitnessWithMongoMeta> | undefined\n _payloadSdk: BaseMongoSdk<PayloadWithMongoMeta> | undefined\n\n get boundWitnessSdkConfig(): BaseMongoSdkConfig {\n const config = { collection: COLLECTIONS.BoundWitnesses, ...getBaseMongoSdkPrivateConfig() }\n return merge(config, this.params.boundWitnessSdkConfig, this.config.boundWitnessSdkConfig, {\n collection: this.config.boundWitnessSdkConfig?.collection ?? this.params.boundWitnessSdkConfig?.collection ?? COLLECTIONS.BoundWitnesses,\n })\n }\n\n get boundWitnesses() {\n this._boundWitnessSdk = this._boundWitnessSdk ?? new BaseMongoSdk<BoundWitnessWithMongoMeta>(this.boundWitnessSdkConfig)\n return assertEx(this._boundWitnessSdk)\n }\n\n get jobQueue() {\n return assertEx(this.params.jobQueue, () => 'MongoDBModule Error: jobQueue required for this module but is not defined')\n }\n\n get payloadSdkConfig(): BaseMongoSdkConfig {\n const config = { collection: COLLECTIONS.Payloads, ...getBaseMongoSdkPrivateConfig() }\n return merge(config, this.params.payloadSdkConfig, this.config.payloadSdkConfig, {\n collection: this.config.payloadSdkConfig?.collection ?? this.params.payloadSdkConfig?.collection ?? COLLECTIONS.Payloads,\n })\n }\n\n get payloads() {\n this._payloadSdk = this._payloadSdk ?? new BaseMongoSdk<PayloadWithMongoMeta>(this.payloadSdkConfig)\n return assertEx(this._payloadSdk)\n }\n\n /**\n * Ensures any indexes specified within the config are created. This method should be idempotent\n * allowing for multiple calls without causing errors while ensuring the desired state.\n */\n async ensureIndexes(): Promise<void> {\n const configIndexes = (this.config as { storage?: { indexes?: IndexDescription[] } })?.storage?.indexes ?? []\n await ensureIndexesExistOnCollection(this.boundWitnesses, configIndexes)\n await ensureIndexesExistOnCollection(this.payloads, configIndexes)\n }\n }\n return MongoModuleBase\n}\n\n/**\n * Ensures the specified indexes exist on the collection\n * @param sdk The sdk to use for the collection\n * @param configIndexes The indexes to ensure exist on the collection\n */\nconst ensureIndexesExistOnCollection = async (\n sdk: BaseMongoSdk<PayloadWithMongoMeta> | BaseMongoSdk<BoundWitnessWithMongoMeta>,\n configIndexes: IndexDescription[],\n) => {\n await sdk.useCollection(async (collection) => {\n const collectionName = collection.collectionName.toLowerCase()\n const indexes = configIndexes.filter((ix) => ix?.name?.toLowerCase().startsWith(collectionName))\n if (indexes.length === 0) return\n for (const ix of indexes) {\n try {\n await collection.createIndexes([ix])\n } catch (error) {\n const mongoServerError = error as MongoServerError\n const { codeName } = mongoServerError\n if (codeName === 'IndexKeySpecsConflict' || codeName === 'IndexOptionsConflict') {\n // Index already exists which is fine OR index exists with another name which is fine\n // TODO: For the latter case (IndexOptionsConflict) we could get into this case\n // if we change the TTL an existing index. We currently don't support TTLs so\n // we'll need to revisit this assumption if we do.\n continue\n }\n console.error(`Error creating index ${ix.name} for collection ${collectionName}: ${error}`)\n throw error\n }\n }\n })\n}\n","export const escapeChar = '#'\n\nexport const toDbProperty = (value: string) => value.replaceAll('.', escapeChar)\n\nexport const fromDbProperty = (value: string) => value.replaceAll(escapeChar, '.')\n"],"mappings":"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","names":["COLLECTIONS","AddressInfo","ArchivistStats","BoundWitnesses","Payloads","Thumbnails","Users","getMongoDBConfig","env","process","MONGO_CONNECTION_STRING","MONGO_DOMAIN","MONGO_DATABASE","MONGO_PASSWORD","MONGO_USERNAME","getBaseMongoSdkPrivateConfig","env","getMongoDBConfig","dbConnectionString","MONGO_CONNECTION_STRING","dbDomain","assertEx","MONGO_DOMAIN","dbName","MONGO_DATABASE","dbPassword","MONGO_PASSWORD","dbUserName","MONGO_USERNAME","getBaseMongoSdk","collection","BaseMongoSdk","hasMongoDBConfig","env","getMongoDBConfig","requiredValues","MONGO_CONNECTION_STRING","MONGO_DATABASE","MONGO_DOMAIN","MONGO_PASSWORD","MONGO_USERNAME","every","exists","DATABASES","Archivist","DefaultAggregateTimeoutMs","DefaultLimit","DefaultMaxTimeMS","DefaultOrder","import_assert","import_sdk_xyo_mongo_js","MongoDBModuleMixin","ModuleBase","MongoModuleBase","labels","MongoDBStorageClassLabels","_boundWitnessSdk","_payloadSdk","boundWitnessSdkConfig","config","collection","COLLECTIONS","BoundWitnesses","getBaseMongoSdkPrivateConfig","merge","params","boundWitnesses","BaseMongoSdk","assertEx","jobQueue","payloadSdkConfig","Payloads","payloads","ensureIndexes","configIndexes","storage","indexes","ensureIndexesExistOnCollection","sdk","useCollection","collectionName","toLowerCase","filter","ix","name","startsWith","length","createIndexes","error","mongoServerError","codeName","console","escapeChar","toDbProperty","value","replaceAll","fromDbProperty"]}
@@ -1,9 +0,0 @@
1
- export * from './Collections.js';
2
- export * from './config/index.js';
3
- export * from './Databases.js';
4
- export * from './Defaults.js';
5
- export * from './IndexDescription.js';
6
- export * from './Indexes/index.js';
7
- export * from './Module.js';
8
- export * from './util/index.js';
9
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA"}
@@ -1,9 +0,0 @@
1
- export * from './Collections.js';
2
- export * from './config/index.js';
3
- export * from './Databases.js';
4
- export * from './Defaults.js';
5
- export * from './IndexDescription.js';
6
- export * from './Indexes/index.js';
7
- export * from './Module.js';
8
- export * from './util/index.js';
9
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/Collections.ts","../../src/config/getBaseMongoSdk.ts","../../src/config/getMongoDBConfig.ts","../../src/config/hasMongoDBConfig.ts","../../src/Databases.ts","../../src/Defaults.ts","../../src/Module.ts","../../src/util/dbProperty.ts"],"sourcesContent":["// TODO: By DB\nexport const COLLECTIONS = {\n AddressInfo: 'address_info' as const,\n ArchivistStats: 'archivist_stats' as const,\n BoundWitnesses: 'bound_witnesses' as const,\n Payloads: 'payloads' as const,\n Thumbnails: 'thumbnails' as const,\n Users: 'users' as const,\n}\n","import { assertEx } from '@xylabs/assert'\nimport { BaseMongoSdk, BaseMongoSdkPrivateConfig } from '@xyo-network/sdk-xyo-mongo-js'\nimport { Document } from 'mongodb'\n\nimport { getMongoDBConfig } from './getMongoDBConfig.js'\n\nexport const getBaseMongoSdkPrivateConfig = (): BaseMongoSdkPrivateConfig => {\n const env = getMongoDBConfig()\n return {\n dbConnectionString: env.MONGO_CONNECTION_STRING,\n dbDomain: assertEx(env.MONGO_DOMAIN, () => 'Missing Mongo Domain'),\n dbName: assertEx(env.MONGO_DATABASE, () => 'Missing Mongo Database'),\n dbPassword: assertEx(env.MONGO_PASSWORD, () => 'Missing Mongo Password'),\n dbUserName: assertEx(env.MONGO_USERNAME, () => 'Missing Mongo Username'),\n }\n}\n\nexport const getBaseMongoSdk = <T extends Document>(collection: string) => {\n return new BaseMongoSdk<T>({ ...getBaseMongoSdkPrivateConfig(), collection })\n}\n","export type MongoDbConnectionStringEnvVar = 'MONGO_CONNECTION_STRING'\nexport type MongoDbEnvVars = 'MONGO_DATABASE' | 'MONGO_DOMAIN' | 'MONGO_PASSWORD' | 'MONGO_USERNAME'\n\nexport type MongoEnv = Record<MongoDbEnvVars | MongoDbConnectionStringEnvVar, string | undefined>\n\nexport const getMongoDBConfig = (): MongoEnv => {\n const env: MongoEnv = {} as MongoEnv\n if (process.env.MONGO_CONNECTION_STRING) {\n env.MONGO_CONNECTION_STRING = process.env.MONGO_CONNECTION_STRING\n }\n if (process.env.MONGO_DOMAIN) {\n env.MONGO_DATABASE = process.env.MONGO_DATABASE\n env.MONGO_DOMAIN = process.env.MONGO_DOMAIN\n env.MONGO_PASSWORD = process.env.MONGO_PASSWORD\n env.MONGO_USERNAME = process.env.MONGO_USERNAME\n }\n return env\n}\n","import { exists } from '@xylabs/exists'\n\nimport { getMongoDBConfig } from './getMongoDBConfig.js'\n\nexport const hasMongoDBConfig = (): boolean => {\n const env = getMongoDBConfig()\n const requiredValues = [env.MONGO_CONNECTION_STRING, env.MONGO_DATABASE, env.MONGO_DOMAIN, env.MONGO_PASSWORD, env.MONGO_USERNAME]\n return requiredValues.every(exists)\n}\n","export const DATABASES = {\n Archivist: 'archivist' as const,\n}\n","export const DefaultAggregateTimeoutMs = 10_000\nexport const DefaultLimit = 20\nexport const DefaultMaxTimeMS = 2000\nexport const DefaultOrder = 'desc'\n","import { assertEx } from '@xylabs/assert'\nimport { merge } from '@xylabs/lodash'\nimport { staticImplements } from '@xylabs/static-implements'\nimport { Module } from '@xyo-network/module-model'\nimport { MongoDBModule, MongoDBModuleParams, MongoDBModuleStatic, MongoDBStorageClassLabels } from '@xyo-network/module-model-mongodb'\nimport { BoundWitnessWithMongoMeta, PayloadWithMongoMeta } from '@xyo-network/payload-mongodb'\nimport { BaseMongoSdk, BaseMongoSdkConfig } from '@xyo-network/sdk-xyo-mongo-js'\nimport { MongoServerError } from 'mongodb'\n\nimport { COLLECTIONS } from './Collections.js'\nimport { getBaseMongoSdkPrivateConfig } from './config/index.js'\nimport { IndexDescription } from './IndexDescription.js'\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type AnyAbstractModule<TParams extends MongoDBModuleParams = MongoDBModuleParams> = abstract new (...args: any[]) => Module<TParams>\n\nexport const MongoDBModuleMixin = <\n TParams extends MongoDBModuleParams = MongoDBModuleParams,\n TModule extends AnyAbstractModule<TParams> = AnyAbstractModule<TParams>,\n>(\n ModuleBase: TModule,\n) => {\n @staticImplements<MongoDBModuleStatic>()\n abstract class MongoModuleBase extends ModuleBase implements MongoDBModule {\n static labels = MongoDBStorageClassLabels\n _boundWitnessSdk: BaseMongoSdk<BoundWitnessWithMongoMeta> | undefined\n _payloadSdk: BaseMongoSdk<PayloadWithMongoMeta> | undefined\n\n get boundWitnessSdkConfig(): BaseMongoSdkConfig {\n const config = { collection: COLLECTIONS.BoundWitnesses, ...getBaseMongoSdkPrivateConfig() }\n return merge(config, this.params.boundWitnessSdkConfig, this.config.boundWitnessSdkConfig, {\n collection: this.config.boundWitnessSdkConfig?.collection ?? this.params.boundWitnessSdkConfig?.collection ?? COLLECTIONS.BoundWitnesses,\n })\n }\n\n get boundWitnesses() {\n this._boundWitnessSdk = this._boundWitnessSdk ?? new BaseMongoSdk<BoundWitnessWithMongoMeta>(this.boundWitnessSdkConfig)\n return assertEx(this._boundWitnessSdk)\n }\n\n get jobQueue() {\n return assertEx(this.params.jobQueue, () => 'MongoDBModule Error: jobQueue required for this module but is not defined')\n }\n\n get payloadSdkConfig(): BaseMongoSdkConfig {\n const config = { collection: COLLECTIONS.Payloads, ...getBaseMongoSdkPrivateConfig() }\n return merge(config, this.params.payloadSdkConfig, this.config.payloadSdkConfig, {\n collection: this.config.payloadSdkConfig?.collection ?? this.params.payloadSdkConfig?.collection ?? COLLECTIONS.Payloads,\n })\n }\n\n get payloads() {\n this._payloadSdk = this._payloadSdk ?? new BaseMongoSdk<PayloadWithMongoMeta>(this.payloadSdkConfig)\n return assertEx(this._payloadSdk)\n }\n\n /**\n * Ensures any indexes specified within the config are created. This method should be idempotent\n * allowing for multiple calls without causing errors while ensuring the desired state.\n */\n async ensureIndexes(): Promise<void> {\n const configIndexes = (this.config as { storage?: { indexes?: IndexDescription[] } })?.storage?.indexes ?? []\n await ensureIndexesExistOnCollection(this.boundWitnesses, configIndexes)\n await ensureIndexesExistOnCollection(this.payloads, configIndexes)\n }\n }\n return MongoModuleBase\n}\n\n/**\n * Ensures the specified indexes exist on the collection\n * @param sdk The sdk to use for the collection\n * @param configIndexes The indexes to ensure exist on the collection\n */\nconst ensureIndexesExistOnCollection = async (\n sdk: BaseMongoSdk<PayloadWithMongoMeta> | BaseMongoSdk<BoundWitnessWithMongoMeta>,\n configIndexes: IndexDescription[],\n) => {\n await sdk.useCollection(async (collection) => {\n const collectionName = collection.collectionName.toLowerCase()\n const indexes = configIndexes.filter((ix) => ix?.name?.toLowerCase().startsWith(collectionName))\n if (indexes.length === 0) return\n for (const ix of indexes) {\n try {\n await collection.createIndexes([ix])\n } catch (error) {\n const mongoServerError = error as MongoServerError\n const { codeName } = mongoServerError\n if (codeName === 'IndexKeySpecsConflict' || codeName === 'IndexOptionsConflict') {\n // Index already exists which is fine OR index exists with another name which is fine\n // TODO: For the latter case (IndexOptionsConflict) we could get into this case\n // if we change the TTL an existing index. We currently don't support TTLs so\n // we'll need to revisit this assumption if we do.\n continue\n }\n console.error(`Error creating index ${ix.name} for collection ${collectionName}: ${error}`)\n throw error\n }\n }\n })\n}\n","export const escapeChar = '#'\n\nexport const toDbProperty = (value: string) => value.replaceAll('.', escapeChar)\n\nexport const fromDbProperty = (value: string) => value.replaceAll(escapeChar, '.')\n"],"mappings":"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","names":["COLLECTIONS","AddressInfo","ArchivistStats","BoundWitnesses","Payloads","Thumbnails","Users","assertEx","BaseMongoSdk","getMongoDBConfig","env","process","MONGO_CONNECTION_STRING","MONGO_DOMAIN","MONGO_DATABASE","MONGO_PASSWORD","MONGO_USERNAME","getBaseMongoSdkPrivateConfig","env","getMongoDBConfig","dbConnectionString","MONGO_CONNECTION_STRING","dbDomain","assertEx","MONGO_DOMAIN","dbName","MONGO_DATABASE","dbPassword","MONGO_PASSWORD","dbUserName","MONGO_USERNAME","getBaseMongoSdk","collection","BaseMongoSdk","exists","hasMongoDBConfig","env","getMongoDBConfig","requiredValues","MONGO_CONNECTION_STRING","MONGO_DATABASE","MONGO_DOMAIN","MONGO_PASSWORD","MONGO_USERNAME","every","exists","DATABASES","Archivist","DefaultAggregateTimeoutMs","DefaultLimit","DefaultMaxTimeMS","DefaultOrder","assertEx","merge","staticImplements","MongoDBStorageClassLabels","BaseMongoSdk","MongoDBModuleMixin","ModuleBase","MongoModuleBase","labels","MongoDBStorageClassLabels","_boundWitnessSdk","_payloadSdk","boundWitnessSdkConfig","config","collection","COLLECTIONS","BoundWitnesses","getBaseMongoSdkPrivateConfig","merge","params","boundWitnesses","BaseMongoSdk","assertEx","jobQueue","payloadSdkConfig","Payloads","payloads","ensureIndexes","configIndexes","storage","indexes","ensureIndexesExistOnCollection","sdk","useCollection","collectionName","toLowerCase","filter","ix","name","startsWith","length","createIndexes","error","mongoServerError","codeName","console","escapeChar","toDbProperty","value","replaceAll","fromDbProperty"]}
@@ -1,4 +0,0 @@
1
- export declare const escapeChar = "#";
2
- export declare const toDbProperty: (value: string) => string;
3
- export declare const fromDbProperty: (value: string) => string;
4
- //# sourceMappingURL=dbProperty.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dbProperty.d.ts","sourceRoot":"","sources":["../../../src/util/dbProperty.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,MAAM,CAAA;AAE7B,eAAO,MAAM,YAAY,UAAW,MAAM,WAAsC,CAAA;AAEhF,eAAO,MAAM,cAAc,UAAW,MAAM,WAAsC,CAAA"}
@@ -1,4 +0,0 @@
1
- export declare const escapeChar = "#";
2
- export declare const toDbProperty: (value: string) => string;
3
- export declare const fromDbProperty: (value: string) => string;
4
- //# sourceMappingURL=dbProperty.d.ts.map