@xyo-network/module-abstract-mongodb 2.87.2 → 2.88.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 (101) hide show
  1. package/dist/browser/Module.d.cts +5 -0
  2. package/dist/browser/Module.d.cts.map +1 -1
  3. package/dist/browser/Module.d.mts +5 -0
  4. package/dist/browser/Module.d.mts.map +1 -1
  5. package/dist/browser/Module.d.ts +5 -0
  6. package/dist/browser/Module.d.ts.map +1 -1
  7. package/dist/neutral/Collections.d.cts +9 -0
  8. package/dist/neutral/Collections.d.cts.map +1 -0
  9. package/dist/neutral/Collections.d.mts +9 -0
  10. package/dist/neutral/Collections.d.mts.map +1 -0
  11. package/dist/neutral/Collections.d.ts +9 -0
  12. package/dist/neutral/Collections.d.ts.map +1 -0
  13. package/dist/neutral/Databases.d.cts +4 -0
  14. package/dist/neutral/Databases.d.cts.map +1 -0
  15. package/dist/neutral/Databases.d.mts +4 -0
  16. package/dist/neutral/Databases.d.mts.map +1 -0
  17. package/dist/neutral/Databases.d.ts +4 -0
  18. package/dist/neutral/Databases.d.ts.map +1 -0
  19. package/dist/neutral/Defaults.d.cts +5 -0
  20. package/dist/neutral/Defaults.d.cts.map +1 -0
  21. package/dist/neutral/Defaults.d.mts +5 -0
  22. package/dist/neutral/Defaults.d.mts.map +1 -0
  23. package/dist/neutral/Defaults.d.ts +5 -0
  24. package/dist/neutral/Defaults.d.ts.map +1 -0
  25. package/dist/neutral/IndexDescription.d.cts +24 -0
  26. package/dist/neutral/IndexDescription.d.cts.map +1 -0
  27. package/dist/neutral/IndexDescription.d.mts +24 -0
  28. package/dist/neutral/IndexDescription.d.mts.map +1 -0
  29. package/dist/neutral/IndexDescription.d.ts +24 -0
  30. package/dist/neutral/IndexDescription.d.ts.map +1 -0
  31. package/dist/neutral/Indexes/CollectionIndexFunction.d.cts +3 -0
  32. package/dist/neutral/Indexes/CollectionIndexFunction.d.cts.map +1 -0
  33. package/dist/neutral/Indexes/CollectionIndexFunction.d.mts +3 -0
  34. package/dist/neutral/Indexes/CollectionIndexFunction.d.mts.map +1 -0
  35. package/dist/neutral/Indexes/CollectionIndexFunction.d.ts +3 -0
  36. package/dist/neutral/Indexes/CollectionIndexFunction.d.ts.map +1 -0
  37. package/dist/neutral/Indexes/index.d.cts +2 -0
  38. package/dist/neutral/Indexes/index.d.cts.map +1 -0
  39. package/dist/neutral/Indexes/index.d.mts +2 -0
  40. package/dist/neutral/Indexes/index.d.mts.map +1 -0
  41. package/dist/neutral/Indexes/index.d.ts +2 -0
  42. package/dist/neutral/Indexes/index.d.ts.map +1 -0
  43. package/dist/neutral/Module.d.cts +121 -0
  44. package/dist/neutral/Module.d.cts.map +1 -0
  45. package/dist/neutral/Module.d.mts +121 -0
  46. package/dist/neutral/Module.d.mts.map +1 -0
  47. package/dist/neutral/Module.d.ts +121 -0
  48. package/dist/neutral/Module.d.ts.map +1 -0
  49. package/dist/neutral/config/getBaseMongoSdk.d.cts +5 -0
  50. package/dist/neutral/config/getBaseMongoSdk.d.cts.map +1 -0
  51. package/dist/neutral/config/getBaseMongoSdk.d.mts +5 -0
  52. package/dist/neutral/config/getBaseMongoSdk.d.mts.map +1 -0
  53. package/dist/neutral/config/getBaseMongoSdk.d.ts +5 -0
  54. package/dist/neutral/config/getBaseMongoSdk.d.ts.map +1 -0
  55. package/dist/neutral/config/getMongoDBConfig.d.cts +5 -0
  56. package/dist/neutral/config/getMongoDBConfig.d.cts.map +1 -0
  57. package/dist/neutral/config/getMongoDBConfig.d.mts +5 -0
  58. package/dist/neutral/config/getMongoDBConfig.d.mts.map +1 -0
  59. package/dist/neutral/config/getMongoDBConfig.d.ts +5 -0
  60. package/dist/neutral/config/getMongoDBConfig.d.ts.map +1 -0
  61. package/dist/neutral/config/hasMongoDBConfig.d.cts +2 -0
  62. package/dist/neutral/config/hasMongoDBConfig.d.cts.map +1 -0
  63. package/dist/neutral/config/hasMongoDBConfig.d.mts +2 -0
  64. package/dist/neutral/config/hasMongoDBConfig.d.mts.map +1 -0
  65. package/dist/neutral/config/hasMongoDBConfig.d.ts +2 -0
  66. package/dist/neutral/config/hasMongoDBConfig.d.ts.map +1 -0
  67. package/dist/neutral/config/index.d.cts +4 -0
  68. package/dist/neutral/config/index.d.cts.map +1 -0
  69. package/dist/neutral/config/index.d.mts +4 -0
  70. package/dist/neutral/config/index.d.mts.map +1 -0
  71. package/dist/neutral/config/index.d.ts +4 -0
  72. package/dist/neutral/config/index.d.ts.map +1 -0
  73. package/dist/neutral/index.cjs +210 -0
  74. package/dist/neutral/index.cjs.map +1 -0
  75. package/dist/neutral/index.d.cts +9 -0
  76. package/dist/neutral/index.d.cts.map +1 -0
  77. package/dist/neutral/index.d.mts +9 -0
  78. package/dist/neutral/index.d.mts.map +1 -0
  79. package/dist/neutral/index.d.ts +9 -0
  80. package/dist/neutral/index.d.ts.map +1 -0
  81. package/dist/neutral/index.js +189 -0
  82. package/dist/neutral/index.js.map +1 -0
  83. package/dist/neutral/util/dbProperty.d.cts +4 -0
  84. package/dist/neutral/util/dbProperty.d.cts.map +1 -0
  85. package/dist/neutral/util/dbProperty.d.mts +4 -0
  86. package/dist/neutral/util/dbProperty.d.mts.map +1 -0
  87. package/dist/neutral/util/dbProperty.d.ts +4 -0
  88. package/dist/neutral/util/dbProperty.d.ts.map +1 -0
  89. package/dist/neutral/util/index.d.cts +2 -0
  90. package/dist/neutral/util/index.d.cts.map +1 -0
  91. package/dist/neutral/util/index.d.mts +2 -0
  92. package/dist/neutral/util/index.d.mts.map +1 -0
  93. package/dist/neutral/util/index.d.ts +2 -0
  94. package/dist/neutral/util/index.d.ts.map +1 -0
  95. package/dist/node/Module.d.cts +5 -0
  96. package/dist/node/Module.d.cts.map +1 -1
  97. package/dist/node/Module.d.mts +5 -0
  98. package/dist/node/Module.d.mts.map +1 -1
  99. package/dist/node/Module.d.ts +5 -0
  100. package/dist/node/Module.d.ts.map +1 -1
  101. package/package.json +12 -12
@@ -0,0 +1,121 @@
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 import("@xylabs/object").BaseParamsFields & {
7
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
8
+ addToResolvers?: boolean | undefined;
9
+ allowNameResolution?: boolean | undefined;
10
+ 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 & {
11
+ boundWitnessSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
12
+ payloadSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
13
+ schema: "network.xyo.module.mongodb.config";
14
+ }, "schema"> & {
15
+ schema: "network.xyo.module.mongodb.config";
16
+ }, "schema"> & {
17
+ schema: string;
18
+ };
19
+ ephemeralQueryAccountEnabled?: boolean | undefined;
20
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
21
+ } & {
22
+ boundWitnessSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
23
+ jobQueue?: import("@xyo-network/node-core-model").JobQueue | undefined;
24
+ payloadSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
25
+ } = import("@xylabs/object").BaseParamsFields & {
26
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
27
+ addToResolvers?: boolean | undefined;
28
+ allowNameResolution?: boolean | undefined;
29
+ 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 & {
30
+ boundWitnessSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
31
+ payloadSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
32
+ schema: "network.xyo.module.mongodb.config";
33
+ }, "schema"> & {
34
+ schema: "network.xyo.module.mongodb.config";
35
+ }, "schema"> & {
36
+ schema: string;
37
+ };
38
+ ephemeralQueryAccountEnabled?: boolean | undefined;
39
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
40
+ } & {
41
+ boundWitnessSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
42
+ jobQueue?: import("@xyo-network/node-core-model").JobQueue | undefined;
43
+ payloadSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
44
+ }, TModule extends AnyAbstractModule<TParams> = AnyAbstractModule<TParams>>(ModuleBase: TModule) => ((abstract new (...args: any[]) => {
45
+ _boundWitnessSdk: BaseMongoSdk<BoundWitnessWithMongoMeta> | undefined;
46
+ _payloadSdk: BaseMongoSdk<PayloadWithMongoMeta> | undefined;
47
+ readonly boundWitnessSdkConfig: BaseMongoSdkConfig;
48
+ readonly boundWitnesses: BaseMongoSdk<BoundWitnessWithMongoMeta>;
49
+ readonly jobQueue: import("@xyo-network/node-core-model").JobQueue;
50
+ readonly payloadSdkConfig: BaseMongoSdkConfig;
51
+ readonly payloads: BaseMongoSdk<PayloadWithMongoMeta>;
52
+ /**
53
+ * Ensures any indexes specified within the config are created. This method should be idempotent
54
+ * allowing for multiple calls without causing errors while ensuring the desired state.
55
+ */
56
+ ensureIndexes(): Promise<void>;
57
+ address: Lowercase<string>;
58
+ config: TParams["config"];
59
+ id: string;
60
+ modName?: string | undefined;
61
+ params: TParams;
62
+ previousHash: () => import("@xylabs/promise").Promisable<string | undefined>;
63
+ queries: string[];
64
+ query: <T extends import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/boundwitness-model").BoundWitnessFields & {
65
+ additional?: Lowercase<string>[] | undefined;
66
+ query: Lowercase<string>;
67
+ resultSet?: string | undefined;
68
+ schema: "network.xyo.boundwitness";
69
+ }, "schema"> & {
70
+ schema: "network.xyo.boundwitness";
71
+ } = import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/boundwitness-model").BoundWitnessFields & {
72
+ additional?: Lowercase<string>[] | undefined;
73
+ query: Lowercase<string>;
74
+ resultSet?: string | undefined;
75
+ schema: "network.xyo.boundwitness";
76
+ }, "schema"> & {
77
+ schema: "network.xyo.boundwitness";
78
+ }, TConf extends import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
79
+ schema: "network.xyo.module.config";
80
+ } = import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
81
+ schema: "network.xyo.module.config";
82
+ }>(query: T, payloads?: ({
83
+ schema: string;
84
+ } & import("@xyo-network/payload-model").PayloadFields)[] | undefined, queryConfig?: TConf | undefined) => import("@xylabs/promise").Promisable<import("@xyo-network/module-model").ModuleQueryResult>;
85
+ queryable: <T_1 extends import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/boundwitness-model").BoundWitnessFields & {
86
+ additional?: Lowercase<string>[] | undefined;
87
+ query: Lowercase<string>;
88
+ resultSet?: string | undefined;
89
+ schema: "network.xyo.boundwitness";
90
+ }, "schema"> & {
91
+ schema: "network.xyo.boundwitness";
92
+ } = import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/boundwitness-model").BoundWitnessFields & {
93
+ additional?: Lowercase<string>[] | undefined;
94
+ query: Lowercase<string>;
95
+ resultSet?: string | undefined;
96
+ schema: "network.xyo.boundwitness";
97
+ }, "schema"> & {
98
+ schema: "network.xyo.boundwitness";
99
+ }, TConf_1 extends import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
100
+ schema: "network.xyo.module.config";
101
+ } = import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
102
+ schema: "network.xyo.module.config";
103
+ }>(query: T_1, payloads?: ({
104
+ schema: string;
105
+ } & import("@xyo-network/payload-model").PayloadFields)[] | undefined, queryConfig?: TConf_1 | undefined) => import("@xylabs/promise").Promisable<boolean>;
106
+ start?: (() => import("@xylabs/promise").Promisable<boolean>) | undefined;
107
+ stop?: (() => import("@xylabs/promise").Promisable<boolean>) | undefined;
108
+ eventData: import("@xyo-network/module-model").ModuleEventData<object>;
109
+ clearListeners(eventNames: keyof import("@xyo-network/module-model").ModuleEventData<object> | (keyof import("@xyo-network/module-model").ModuleEventData<object>)[]): void;
110
+ emit<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName, eventArgs: import("@xyo-network/module-model").ModuleEventData<object>[TEventName]): Promise<void>;
111
+ emitSerial<TEventName_1 extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName_1, eventArgs: import("@xyo-network/module-model").ModuleEventData<object>[TEventName_1]): Promise<void>;
112
+ listenerCount(eventNames: keyof import("@xyo-network/module-model").ModuleEventData<object> | (keyof import("@xyo-network/module-model").ModuleEventData<object>)[]): number;
113
+ off<TEventName_2 extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventNames: TEventName_2 | TEventName_2[], listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName_2]>): void;
114
+ offAny(listener: Promise<void> | import("@xyo-network/module-events").EventAnyListener<import("@xyo-network/module-events").EventArgs>): void;
115
+ on<TEventName_3 extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventNames: TEventName_3 | TEventName_3[], listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName_3]>): import("@xyo-network/module-events").EventUnsubscribeFunction;
116
+ onAny(listener: import("@xyo-network/module-events").EventAnyListener<import("@xyo-network/module-events").EventArgs>): import("@xyo-network/module-events").EventUnsubscribeFunction;
117
+ once<TEventName_4 extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName_4, listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName_4]>): import("@xyo-network/module-events").EventUnsubscribeFunction;
118
+ }) & {
119
+ labels: MongoDBStorageClassLabels;
120
+ }) & TModule;
121
+ //# sourceMappingURL=Module.d.ts.map
@@ -0,0 +1 @@
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wFAIjB,OAAO,8BAN6F,GAAG,EAAE;sBAWjG,aAAa,yBAAyB,CAAC,GAAG,SAAS;iBACxD,aAAa,oBAAoB,CAAC,GAAG,SAAS;;;;;;IA8B3D;;;OAGG;qBACoB,QAAQ,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAOvC,CAAA"}
@@ -0,0 +1,121 @@
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 import("@xylabs/object").BaseParamsFields & {
7
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
8
+ addToResolvers?: boolean | undefined;
9
+ allowNameResolution?: boolean | undefined;
10
+ 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 & {
11
+ boundWitnessSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
12
+ payloadSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
13
+ schema: "network.xyo.module.mongodb.config";
14
+ }, "schema"> & {
15
+ schema: "network.xyo.module.mongodb.config";
16
+ }, "schema"> & {
17
+ schema: string;
18
+ };
19
+ ephemeralQueryAccountEnabled?: boolean | undefined;
20
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
21
+ } & {
22
+ boundWitnessSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
23
+ jobQueue?: import("@xyo-network/node-core-model").JobQueue | undefined;
24
+ payloadSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
25
+ } = import("@xylabs/object").BaseParamsFields & {
26
+ account?: import("@xyo-network/account-model").AccountInstance | "random" | undefined;
27
+ addToResolvers?: boolean | undefined;
28
+ allowNameResolution?: boolean | undefined;
29
+ 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 & {
30
+ boundWitnessSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
31
+ payloadSdkConfig?: Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig> | undefined;
32
+ schema: "network.xyo.module.mongodb.config";
33
+ }, "schema"> & {
34
+ schema: "network.xyo.module.mongodb.config";
35
+ }, "schema"> & {
36
+ schema: string;
37
+ };
38
+ ephemeralQueryAccountEnabled?: boolean | undefined;
39
+ moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[] | undefined;
40
+ } & {
41
+ boundWitnessSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
42
+ jobQueue?: import("@xyo-network/node-core-model").JobQueue | undefined;
43
+ payloadSdkConfig?: (import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPrivateConfig & Partial<import("@xyo-network/sdk-xyo-mongo-js").BaseMongoSdkPublicConfig>) | undefined;
44
+ }, TModule extends AnyAbstractModule<TParams> = AnyAbstractModule<TParams>>(ModuleBase: TModule) => ((abstract new (...args: any[]) => {
45
+ _boundWitnessSdk: BaseMongoSdk<BoundWitnessWithMongoMeta> | undefined;
46
+ _payloadSdk: BaseMongoSdk<PayloadWithMongoMeta> | undefined;
47
+ readonly boundWitnessSdkConfig: BaseMongoSdkConfig;
48
+ readonly boundWitnesses: BaseMongoSdk<BoundWitnessWithMongoMeta>;
49
+ readonly jobQueue: import("@xyo-network/node-core-model").JobQueue;
50
+ readonly payloadSdkConfig: BaseMongoSdkConfig;
51
+ readonly payloads: BaseMongoSdk<PayloadWithMongoMeta>;
52
+ /**
53
+ * Ensures any indexes specified within the config are created. This method should be idempotent
54
+ * allowing for multiple calls without causing errors while ensuring the desired state.
55
+ */
56
+ ensureIndexes(): Promise<void>;
57
+ address: Lowercase<string>;
58
+ config: TParams["config"];
59
+ id: string;
60
+ modName?: string | undefined;
61
+ params: TParams;
62
+ previousHash: () => import("@xylabs/promise").Promisable<string | undefined>;
63
+ queries: string[];
64
+ query: <T extends import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/boundwitness-model").BoundWitnessFields & {
65
+ additional?: Lowercase<string>[] | undefined;
66
+ query: Lowercase<string>;
67
+ resultSet?: string | undefined;
68
+ schema: "network.xyo.boundwitness";
69
+ }, "schema"> & {
70
+ schema: "network.xyo.boundwitness";
71
+ } = import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/boundwitness-model").BoundWitnessFields & {
72
+ additional?: Lowercase<string>[] | undefined;
73
+ query: Lowercase<string>;
74
+ resultSet?: string | undefined;
75
+ schema: "network.xyo.boundwitness";
76
+ }, "schema"> & {
77
+ schema: "network.xyo.boundwitness";
78
+ }, TConf extends import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
79
+ schema: "network.xyo.module.config";
80
+ } = import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
81
+ schema: "network.xyo.module.config";
82
+ }>(query: T, payloads?: ({
83
+ schema: string;
84
+ } & import("@xyo-network/payload-model").PayloadFields)[] | undefined, queryConfig?: TConf | undefined) => import("@xylabs/promise").Promisable<import("@xyo-network/module-model").ModuleQueryResult>;
85
+ queryable: <T_1 extends import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/boundwitness-model").BoundWitnessFields & {
86
+ additional?: Lowercase<string>[] | undefined;
87
+ query: Lowercase<string>;
88
+ resultSet?: string | undefined;
89
+ schema: "network.xyo.boundwitness";
90
+ }, "schema"> & {
91
+ schema: "network.xyo.boundwitness";
92
+ } = import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/boundwitness-model").BoundWitnessFields & {
93
+ additional?: Lowercase<string>[] | undefined;
94
+ query: Lowercase<string>;
95
+ resultSet?: string | undefined;
96
+ schema: "network.xyo.boundwitness";
97
+ }, "schema"> & {
98
+ schema: "network.xyo.boundwitness";
99
+ }, TConf_1 extends import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
100
+ schema: "network.xyo.module.config";
101
+ } = import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
102
+ schema: "network.xyo.module.config";
103
+ }>(query: T_1, payloads?: ({
104
+ schema: string;
105
+ } & import("@xyo-network/payload-model").PayloadFields)[] | undefined, queryConfig?: TConf_1 | undefined) => import("@xylabs/promise").Promisable<boolean>;
106
+ start?: (() => import("@xylabs/promise").Promisable<boolean>) | undefined;
107
+ stop?: (() => import("@xylabs/promise").Promisable<boolean>) | undefined;
108
+ eventData: import("@xyo-network/module-model").ModuleEventData<object>;
109
+ clearListeners(eventNames: keyof import("@xyo-network/module-model").ModuleEventData<object> | (keyof import("@xyo-network/module-model").ModuleEventData<object>)[]): void;
110
+ emit<TEventName extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName, eventArgs: import("@xyo-network/module-model").ModuleEventData<object>[TEventName]): Promise<void>;
111
+ emitSerial<TEventName_1 extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName_1, eventArgs: import("@xyo-network/module-model").ModuleEventData<object>[TEventName_1]): Promise<void>;
112
+ listenerCount(eventNames: keyof import("@xyo-network/module-model").ModuleEventData<object> | (keyof import("@xyo-network/module-model").ModuleEventData<object>)[]): number;
113
+ off<TEventName_2 extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventNames: TEventName_2 | TEventName_2[], listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName_2]>): void;
114
+ offAny(listener: Promise<void> | import("@xyo-network/module-events").EventAnyListener<import("@xyo-network/module-events").EventArgs>): void;
115
+ on<TEventName_3 extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventNames: TEventName_3 | TEventName_3[], listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName_3]>): import("@xyo-network/module-events").EventUnsubscribeFunction;
116
+ onAny(listener: import("@xyo-network/module-events").EventAnyListener<import("@xyo-network/module-events").EventArgs>): import("@xyo-network/module-events").EventUnsubscribeFunction;
117
+ once<TEventName_4 extends keyof import("@xyo-network/module-model").ModuleEventData<object>>(eventName: TEventName_4, listener: import("@xyo-network/module-events").EventListener<import("@xyo-network/module-model").ModuleEventData<object>[TEventName_4]>): import("@xyo-network/module-events").EventUnsubscribeFunction;
118
+ }) & {
119
+ labels: MongoDBStorageClassLabels;
120
+ }) & TModule;
121
+ //# sourceMappingURL=Module.d.ts.map
@@ -0,0 +1 @@
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wFAIjB,OAAO,8BAN6F,GAAG,EAAE;sBAWjG,aAAa,yBAAyB,CAAC,GAAG,SAAS;iBACxD,aAAa,oBAAoB,CAAC,GAAG,SAAS;;;;;;IA8B3D;;;OAGG;qBACoB,QAAQ,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAOvC,CAAA"}
@@ -0,0 +1,5 @@
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
@@ -0,0 +1 @@
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,mCAAoC,MAAM,oBAErE,CAAA"}
@@ -0,0 +1,5 @@
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
@@ -0,0 +1 @@
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,mCAAoC,MAAM,oBAErE,CAAA"}
@@ -0,0 +1,5 @@
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
@@ -0,0 +1 @@
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,mCAAoC,MAAM,oBAErE,CAAA"}
@@ -0,0 +1,5 @@
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
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,5 @@
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
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,5 @@
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
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,2 @@
1
+ export declare const hasMongoDBConfig: () => boolean;
2
+ //# sourceMappingURL=hasMongoDBConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasMongoDBConfig.d.ts","sourceRoot":"","sources":["../../../src/config/hasMongoDBConfig.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,gBAAgB,QAAO,OAInC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const hasMongoDBConfig: () => boolean;
2
+ //# sourceMappingURL=hasMongoDBConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasMongoDBConfig.d.ts","sourceRoot":"","sources":["../../../src/config/hasMongoDBConfig.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,gBAAgB,QAAO,OAInC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const hasMongoDBConfig: () => boolean;
2
+ //# sourceMappingURL=hasMongoDBConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasMongoDBConfig.d.ts","sourceRoot":"","sources":["../../../src/config/hasMongoDBConfig.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,gBAAgB,QAAO,OAInC,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './getBaseMongoSdk';
2
+ export * from './getMongoDBConfig';
3
+ export * from './hasMongoDBConfig';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './getBaseMongoSdk';
2
+ export * from './getMongoDBConfig';
3
+ export * from './hasMongoDBConfig';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './getBaseMongoSdk';
2
+ export * from './getMongoDBConfig';
3
+ export * from './hasMongoDBConfig';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA"}
@@ -0,0 +1,210 @@
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")
122
+ r = Reflect.decorate(decorators, target, key, desc);
123
+ else
124
+ for (var i = decorators.length - 1; i >= 0; i--)
125
+ if (d = decorators[i])
126
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
127
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
128
+ }
129
+ __name(_ts_decorate, "_ts_decorate");
130
+ var MongoDBModuleMixin = /* @__PURE__ */ __name((ModuleBase) => {
131
+ let MongoModuleBase = class MongoModuleBase extends ModuleBase {
132
+ static {
133
+ __name(this, "MongoModuleBase");
134
+ }
135
+ static labels = import_module_model_mongodb.MongoDBStorageClassLabels;
136
+ _boundWitnessSdk;
137
+ _payloadSdk;
138
+ get boundWitnessSdkConfig() {
139
+ const config = {
140
+ collection: COLLECTIONS.BoundWitnesses,
141
+ ...getBaseMongoSdkPrivateConfig()
142
+ };
143
+ return (0, import_lodash.merge)(config, this.params.boundWitnessSdkConfig, this.config.boundWitnessSdkConfig, {
144
+ collection: this.config.boundWitnessSdkConfig?.collection ?? this.params.boundWitnessSdkConfig?.collection ?? COLLECTIONS.BoundWitnesses
145
+ });
146
+ }
147
+ get boundWitnesses() {
148
+ this._boundWitnessSdk = this._boundWitnessSdk ?? new import_sdk_xyo_mongo_js2.BaseMongoSdk(this.boundWitnessSdkConfig);
149
+ return (0, import_assert2.assertEx)(this._boundWitnessSdk);
150
+ }
151
+ get jobQueue() {
152
+ return (0, import_assert2.assertEx)(this.params.jobQueue, () => "MongoDBModule Error: jobQueue required for this module but is not defined");
153
+ }
154
+ get payloadSdkConfig() {
155
+ const config = {
156
+ collection: COLLECTIONS.Payloads,
157
+ ...getBaseMongoSdkPrivateConfig()
158
+ };
159
+ return (0, import_lodash.merge)(config, this.params.payloadSdkConfig, this.config.payloadSdkConfig, {
160
+ collection: this.config.payloadSdkConfig?.collection ?? this.params.payloadSdkConfig?.collection ?? COLLECTIONS.Payloads
161
+ });
162
+ }
163
+ get payloads() {
164
+ this._payloadSdk = this._payloadSdk ?? new import_sdk_xyo_mongo_js2.BaseMongoSdk(this.payloadSdkConfig);
165
+ return (0, import_assert2.assertEx)(this._payloadSdk);
166
+ }
167
+ /**
168
+ * Ensures any indexes specified within the config are created. This method should be idempotent
169
+ * allowing for multiple calls without causing errors while ensuring the desired state.
170
+ */
171
+ async ensureIndexes() {
172
+ const configIndexes = this.config?.storage?.indexes ?? [];
173
+ await ensureIndexesExistOnCollection(this.boundWitnesses, configIndexes);
174
+ await ensureIndexesExistOnCollection(this.payloads, configIndexes);
175
+ }
176
+ };
177
+ MongoModuleBase = _ts_decorate([
178
+ (0, import_static_implements.staticImplements)()
179
+ ], MongoModuleBase);
180
+ return MongoModuleBase;
181
+ }, "MongoDBModuleMixin");
182
+ var ensureIndexesExistOnCollection = /* @__PURE__ */ __name(async (sdk, configIndexes) => {
183
+ await sdk.useCollection(async (collection) => {
184
+ const collectionName = collection.collectionName.toLowerCase();
185
+ const indexes = configIndexes.filter((ix) => ix?.name?.toLowerCase().startsWith(collectionName));
186
+ if (indexes.length === 0)
187
+ return;
188
+ for (const ix of indexes) {
189
+ try {
190
+ await collection.createIndexes([
191
+ ix
192
+ ]);
193
+ } catch (error) {
194
+ const mongoServerError = error;
195
+ const { codeName } = mongoServerError;
196
+ if (codeName === "IndexKeySpecsConflict" || codeName === "IndexOptionsConflict") {
197
+ continue;
198
+ }
199
+ console.error(`Error creating index ${ix.name} for collection ${collectionName}: ${error}`);
200
+ throw error;
201
+ }
202
+ }
203
+ });
204
+ }, "ensureIndexesExistOnCollection");
205
+
206
+ // src/util/dbProperty.ts
207
+ var escapeChar = "#";
208
+ var toDbProperty = /* @__PURE__ */ __name((value) => value.replaceAll(".", escapeChar), "toDbProperty");
209
+ var fromDbProperty = /* @__PURE__ */ __name((value) => value.replaceAll(escapeChar, "."), "fromDbProperty");
210
+ //# sourceMappingURL=index.cjs.map