@digitaldefiance/node-express-suite 3.18.3 → 4.0.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 (68) hide show
  1. package/README.md +230 -1
  2. package/package.json +1 -1
  3. package/src/__tests__/helpers/setup-test-env.d.ts +2 -1
  4. package/src/__tests__/helpers/setup-test-env.d.ts.map +1 -1
  5. package/src/__tests__/helpers/setup-test-env.js +55 -43
  6. package/src/__tests__/helpers/setup-test-env.js.map +1 -1
  7. package/src/application.d.ts +52 -11
  8. package/src/application.d.ts.map +1 -1
  9. package/src/application.js +131 -27
  10. package/src/application.js.map +1 -1
  11. package/src/{application-base.d.ts → base-application.d.ts} +4 -4
  12. package/src/{application-base.d.ts.map → base-application.d.ts.map} +1 -1
  13. package/src/{application-base.js → base-application.js} +4 -4
  14. package/src/{application-base.js.map → base-application.js.map} +1 -1
  15. package/src/builders/application-builder.d.ts +13 -8
  16. package/src/builders/application-builder.d.ts.map +1 -1
  17. package/src/builders/application-builder.js +18 -3
  18. package/src/builders/application-builder.js.map +1 -1
  19. package/src/index.d.ts +3 -3
  20. package/src/index.d.ts.map +1 -1
  21. package/src/index.js +5 -4
  22. package/src/index.js.map +1 -1
  23. package/src/interfaces/document-store.d.ts +3 -34
  24. package/src/interfaces/document-store.d.ts.map +1 -1
  25. package/src/interfaces/document-store.js +5 -3
  26. package/src/interfaces/document-store.js.map +1 -1
  27. package/src/interfaces/index.d.ts +1 -0
  28. package/src/interfaces/index.d.ts.map +1 -1
  29. package/src/interfaces/index.js +1 -0
  30. package/src/interfaces/index.js.map +1 -1
  31. package/src/interfaces/mongoose-document-store.d.ts +42 -0
  32. package/src/interfaces/mongoose-document-store.d.ts.map +1 -0
  33. package/src/interfaces/mongoose-document-store.js +10 -0
  34. package/src/interfaces/mongoose-document-store.js.map +1 -0
  35. package/src/{application-concrete.d.ts → mongo-application-concrete.d.ts} +12 -6
  36. package/src/mongo-application-concrete.d.ts.map +1 -0
  37. package/src/mongo-application-concrete.js +49 -0
  38. package/src/mongo-application-concrete.js.map +1 -0
  39. package/src/plugins/database-plugin.d.ts +66 -0
  40. package/src/plugins/database-plugin.d.ts.map +1 -0
  41. package/src/plugins/database-plugin.js +10 -0
  42. package/src/plugins/database-plugin.js.map +1 -0
  43. package/src/plugins/index.d.ts +2 -0
  44. package/src/plugins/index.d.ts.map +1 -1
  45. package/src/plugins/index.js +2 -0
  46. package/src/plugins/index.js.map +1 -1
  47. package/src/plugins/mongo-database-plugin.d.ts +115 -0
  48. package/src/plugins/mongo-database-plugin.d.ts.map +1 -0
  49. package/src/plugins/mongo-database-plugin.js +234 -0
  50. package/src/plugins/mongo-database-plugin.js.map +1 -0
  51. package/src/services/mongoose-document-store.d.ts +3 -3
  52. package/src/services/mongoose-document-store.d.ts.map +1 -1
  53. package/src/services/mongoose-document-store.js.map +1 -1
  54. package/src/utils/index.d.ts +2 -0
  55. package/src/utils/index.d.ts.map +1 -0
  56. package/src/utils/index.js +6 -0
  57. package/src/utils/index.js.map +1 -0
  58. package/src/utils/no-op-database.d.ts +8 -0
  59. package/src/utils/no-op-database.d.ts.map +1 -0
  60. package/src/utils/no-op-database.js +37 -0
  61. package/src/utils/no-op-database.js.map +1 -0
  62. package/src/application-concrete.d.ts.map +0 -1
  63. package/src/application-concrete.js +0 -34
  64. package/src/application-concrete.js.map +0 -1
  65. package/src/mongo-application-base.d.ts +0 -81
  66. package/src/mongo-application-base.d.ts.map +0 -1
  67. package/src/mongo-application-base.js +0 -216
  68. package/src/mongo-application-base.js.map +0 -1
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  /**
3
- * @fileoverview Main application class with Express server.
4
- * Extends MongoApplicationBase with HTTP/HTTPS server and routing.
3
+ * @fileoverview Generic Express application class.
4
+ * Extends BaseApplication with HTTP/HTTPS server, routing, and middleware.
5
+ * Database-agnostic — database backends are provided via IDatabasePlugin.
5
6
  * @module application
6
7
  */
7
8
  Object.defineProperty(exports, "__esModule", { value: true });
@@ -13,15 +14,28 @@ const express_1 = tslib_1.__importDefault(require("express"));
13
14
  const fs_1 = require("fs");
14
15
  const https_1 = require("https");
15
16
  const path_1 = require("path");
16
- const mongo_application_base_1 = require("./mongo-application-base");
17
+ const base_application_1 = require("./base-application");
17
18
  const interfaces_1 = require("./interfaces");
18
19
  const flexible_csp_1 = require("./interfaces/flexible-csp");
19
20
  const middleware_utils_1 = require("./middleware-utils");
20
21
  const app_1 = require("./routers/app");
21
- const services_1 = require("./services");
22
22
  const utils_1 = require("./utils");
23
23
  const greenlock_manager_1 = require("./greenlock-manager");
24
- class Application extends mongo_application_base_1.MongoApplicationBase {
24
+ const mongo_database_plugin_1 = require("./plugins/mongo-database-plugin");
25
+ const no_op_database_1 = require("./utils/no-op-database");
26
+ /**
27
+ * Generic Express application class.
28
+ *
29
+ * Provides HTTP/HTTPS server, routing, middleware, and error handling.
30
+ * Database backends are plugged in via IDatabasePlugin rather than
31
+ * being baked into the class hierarchy.
32
+ *
33
+ * @template TID - Platform ID type (Buffer, ObjectId, etc.)
34
+ * @template TEnvironment - Environment type
35
+ * @template TConstants - Constants type
36
+ * @template TAppRouter - App router type
37
+ */
38
+ class Application extends base_application_1.BaseApplication {
25
39
  expressApp;
26
40
  server = null;
27
41
  _cspConfig;
@@ -30,14 +44,59 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
30
44
  _initMiddleware;
31
45
  _apiRouter;
32
46
  greenlockManager = null;
47
+ _databasePlugin = null;
33
48
  get environment() {
34
49
  return super.environment;
35
50
  }
51
+ /**
52
+ * Get the registered database plugin, if any.
53
+ */
54
+ get databasePlugin() {
55
+ return this._databasePlugin;
56
+ }
57
+ /**
58
+ * Get the Mongoose database instance.
59
+ * Delegates to the MongoDatabasePlugin when registered.
60
+ * This allows the Application to satisfy IMongoApplication
61
+ * when a MongoDatabasePlugin is in use.
62
+ */
63
+ get db() {
64
+ if (this._databasePlugin &&
65
+ this._databasePlugin instanceof mongo_database_plugin_1.MongoDatabasePlugin) {
66
+ return this._databasePlugin.db;
67
+ }
68
+ throw new Error('No MongoDatabasePlugin registered. The db accessor requires a MongoDatabasePlugin.');
69
+ }
70
+ /**
71
+ * Get a Mongoose model by name.
72
+ * Delegates to the MongoDatabasePlugin when registered.
73
+ */
74
+ getModel(modelName) {
75
+ if (this._databasePlugin &&
76
+ this._databasePlugin instanceof mongo_database_plugin_1.MongoDatabasePlugin) {
77
+ return this._databasePlugin.getModel(modelName);
78
+ }
79
+ throw new Error('No MongoDatabasePlugin registered. The getModel accessor requires a MongoDatabasePlugin.');
80
+ }
81
+ /**
82
+ * Register a database plugin. Must be called before start().
83
+ * The plugin will be initialized during start() and its database
84
+ * will be used as the application's primary database.
85
+ */
86
+ useDatabasePlugin(plugin) {
87
+ this._databasePlugin = plugin;
88
+ // Also register it as a regular plugin so it participates in the lifecycle
89
+ this.plugins.register(plugin);
90
+ return this;
91
+ }
92
+ /**
93
+ * Hook for subclasses to register services before the server starts.
94
+ * Called during the constructor.
95
+ */
36
96
  registerServices() {
37
- // Services will be registered by subclasses or ApiRouter
38
- // Base implementation does nothing
97
+ // Subclasses can override to register services
39
98
  }
40
- constructor(environment, apiRouterFactory, schemaMapFactory, databaseInitFunction, initResultHashFunction, cspConfig = {
99
+ constructor(environment, apiRouterFactory, cspConfig = {
41
100
  corsWhitelist: [],
42
101
  csp: {
43
102
  defaultSrc: [],
@@ -48,10 +107,8 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
48
107
  fontSrc: [],
49
108
  frameSrc: [],
50
109
  },
51
- }, constants = suite_core_lib_1.Constants, appRouterFactory = (apiRouter) => new app_1.AppRouter(apiRouter), customInitMiddleware = middleware_utils_1.initMiddleware, documentStore) {
52
- const store = documentStore ??
53
- new services_1.MongooseDocumentStore(schemaMapFactory, databaseInitFunction, initResultHashFunction, environment, constants);
54
- super(environment, store, constants);
110
+ }, constants = suite_core_lib_1.Constants, appRouterFactory = (apiRouter) => new app_1.AppRouter(apiRouter), customInitMiddleware = middleware_utils_1.initMiddleware, database) {
111
+ super(environment, database ?? (0, no_op_database_1.createNoOpDatabase)(), constants);
55
112
  this._apiRouterFactory = apiRouterFactory;
56
113
  this._appRouterFactory = appRouterFactory;
57
114
  this._initMiddleware = customInitMiddleware;
@@ -60,15 +117,56 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
60
117
  this._cspConfig = cspConfig;
61
118
  this.registerServices();
62
119
  }
63
- async start(mongoUri) {
120
+ async start(uri) {
64
121
  const engine = (0, suite_core_lib_1.getSuiteCoreI18nEngine)({ constants: this.constants });
65
- await super.start(mongoUri, true);
66
- if (this.devDatabase) {
67
- if (this._documentStore?.initializeDevStore) {
68
- const result = await this._documentStore.initializeDevStore(this);
69
- services_1.DatabaseInitializationService.printServerInitResults(result, false);
122
+ // If a database plugin is registered, handle its lifecycle
123
+ if (this._databasePlugin) {
124
+ if (this._ready) {
125
+ console.error('Failed to start the application:', 'Application is already running');
126
+ const err = new Error('Application is already running');
127
+ if (process.env['NODE_ENV'] === 'test') {
128
+ throw err;
129
+ }
130
+ process.exit(1);
70
131
  }
132
+ // Dev store setup
133
+ if (this.environment.devDatabase && this._databasePlugin.setupDevStore) {
134
+ const devUri = await this._databasePlugin.setupDevStore();
135
+ if (devUri) {
136
+ uri = devUri;
137
+ }
138
+ }
139
+ try {
140
+ // Connect the database plugin
141
+ await this._databasePlugin.connect(uri);
142
+ // Initialize all plugins (including the database plugin)
143
+ await this.plugins.initAll(this);
144
+ // Wire up auth provider from database plugin
145
+ if (this._databasePlugin.authenticationProvider && !this.authProvider) {
146
+ this.authProvider = this._databasePlugin.authenticationProvider;
147
+ }
148
+ // Dev store initialization (seeding)
149
+ if (this.environment.devDatabase &&
150
+ this._databasePlugin.initializeDevStore) {
151
+ await this._databasePlugin.initializeDevStore();
152
+ }
153
+ }
154
+ catch (err) {
155
+ const sanitizedErr = err instanceof Error
156
+ ? err.message.replace(/[\r\n]/g, ' ')
157
+ : String(err).replace(/[\r\n]/g, ' ');
158
+ console.error('Failed to start the application:', sanitizedErr);
159
+ if (process.env['NODE_ENV'] === 'test') {
160
+ throw err;
161
+ }
162
+ process.exit(1);
163
+ }
164
+ }
165
+ else {
166
+ // No database plugin — use BaseApplication's IDatabase path
167
+ await super.start(uri, true);
71
168
  }
169
+ // Start Express server and routing
72
170
  try {
73
171
  this._apiRouter = this._apiRouterFactory(this);
74
172
  if ((0, flexible_csp_1.isFlexibleCSP)(this._cspConfig) || (0, interfaces_1.isCSPConfig)(this._cspConfig)) {
@@ -107,14 +205,13 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
107
205
  setImmediate(safeHandle);
108
206
  });
109
207
  const serversReady = [];
110
- serversReady.push(new Promise((resolve) => {
208
+ serversReady.push(new Promise((resolvePromise) => {
111
209
  this.server = this.expressApp.listen(this.environment.port, this.environment.host, () => {
112
210
  (0, utils_1.debugLog)(this.environment.debug, 'log', `[ ${engine.translateStringKey(suite_core_lib_1.SuiteCoreStringKey.Common_Ready)} ] http://${this.environment.host}:${this.environment.port}`);
113
- resolve();
211
+ resolvePromise();
114
212
  });
115
213
  }));
116
214
  if (this.environment.letsEncrypt.enabled) {
117
- // Let's Encrypt mode: start GreenlockManager for HTTPS on 443 + redirect on 80
118
215
  this.greenlockManager = new greenlock_manager_1.GreenlockManager(this.environment.letsEncrypt);
119
216
  serversReady.push(this.greenlockManager.start(this.expressApp));
120
217
  }
@@ -135,10 +232,10 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
135
232
  // amazonq-ignore-next-line fixed above
136
233
  cert: (0, fs_1.readFileSync)(certPath),
137
234
  };
138
- serversReady.push(new Promise((resolve) => {
235
+ serversReady.push(new Promise((resolvePromise) => {
139
236
  (0, https_1.createServer)(options, this.expressApp).listen(this.environment.httpsDevPort, this.environment.host, () => {
140
237
  console.log(`[ ${engine.translateStringKey(suite_core_lib_1.SuiteCoreStringKey.Common_Ready)} ] https://${this.environment.host}:${this.environment.httpsDevPort}`);
141
- resolve();
238
+ resolvePromise();
142
239
  });
143
240
  }));
144
241
  }
@@ -165,21 +262,28 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
165
262
  const engine = (0, suite_core_lib_1.getSuiteCoreI18nEngine)({ constants: this.constants });
166
263
  if (this.server) {
167
264
  (0, utils_1.debugLog)(this.environment.debug, 'log', `[ ${engine.translateStringKey(suite_core_lib_1.SuiteCoreStringKey.Common_Stopping)} ] ${engine.translateStringKey(suite_core_lib_1.SuiteCoreStringKey.Common_ApplicationAndDatabase)}`);
168
- await new Promise((resolve, reject) => {
265
+ await new Promise((resolvePromise, reject) => {
169
266
  this.server.closeAllConnections?.();
170
267
  this.server.close((err) => {
171
268
  if (err) {
172
269
  reject(err);
173
270
  }
174
271
  else {
175
- resolve();
272
+ resolvePromise();
176
273
  }
177
274
  });
178
275
  });
179
276
  this.server = null;
180
277
  }
181
- await super.stop();
182
- this._ready = false;
278
+ // Database plugin handles its own teardown via stop()
279
+ // which is called by PluginManager.stopAll() in super.stop()
280
+ if (this._databasePlugin) {
281
+ await this.plugins.stopAll();
282
+ this._ready = false;
283
+ }
284
+ else {
285
+ await super.stop();
286
+ }
183
287
  (0, utils_1.debugLog)(this.environment.debug, 'log', `[ ${engine.translateStringKey(suite_core_lib_1.SuiteCoreStringKey.Common_Stopped)} ] ${engine.translateStringKey(suite_core_lib_1.SuiteCoreStringKey.Common_ApplicationAndDatabase)}`);
184
288
  }
185
289
  }
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/application.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * @fileoverview Database-agnostic base application class.
3
3
  * Delegates database operations to an IDatabase instance.
4
- * For MongoDB/Mongoose-specific functionality, see MongoApplicationBase.
5
- * @module application-base
4
+ * For MongoDB/Mongoose-specific functionality, see MongoDatabasePlugin.
5
+ * @module base-application
6
6
  */
7
7
  import type { BsonDocument, ICollection, IDatabase, IDatabaseLifecycleHooks } from './interfaces/storage';
8
8
  import { ServiceContainer } from './container';
@@ -18,7 +18,7 @@ import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
18
18
  * for dev store provisioning, URI validation, and database initialization.
19
19
  *
20
20
  * For MongoDB/Mongoose-specific functionality (IDocumentStore, schemaMap,
21
- * getModel, db), use MongoApplicationBase which extends this class.
21
+ * getModel, db), use MongoDatabasePlugin which plugs into Application.
22
22
  */
23
23
  export declare class BaseApplication<TID extends PlatformID, TInitResults = unknown, TConstants extends IConstants = IConstants> implements IApplication<TID> {
24
24
  /**
@@ -99,4 +99,4 @@ export declare class BaseApplication<TID extends PlatformID, TInitResults = unkn
99
99
  */
100
100
  getCollection<T extends BsonDocument>(name: string): ICollection<T>;
101
101
  }
102
- //# sourceMappingURL=application-base.d.ts.map
102
+ //# sourceMappingURL=base-application.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"application-base.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/application-base.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,SAAS,EACT,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAQ9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE;;;;;;;GAOG;AACH,qBAAa,eAAe,CAC1B,GAAG,SAAS,UAAU,EACtB,YAAY,GAAG,OAAO,EACtB,UAAU,SAAS,UAAU,GAAG,UAAU,CAC1C,YAAW,YAAY,CAAC,GAAG,CAAC;IAC5B;;OAEG;IACH,OAAO,CAAC,YAAY,CAAmB;IAEvC;;OAEG;IACH,OAAO,CAAC,UAAU,CAAa;IAE/B;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAExC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,eAAe,EAC9B,uBAAuB,CAAC,YAAY,CAAC,GACrC,SAAS,CAAC;IAEd;;OAEG;IACH,SAAS,CAAC,oBAAoB,UAAS;IAEvC;;OAEG;IACH,IAAW,WAAW,IAAI,WAAW,CAAC,GAAG,CAAC,CAEzC;IAED,IAAW,SAAS,IAAI,UAAU,CAEjC;IAED;;OAEG;IACI,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,UAAO,GAAG,IAAI;IAI9D;;OAEG;IACH,WAAkB,OAAO,IAAI,MAAM,CAIlC;IAED;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAE3C;;OAEG;IACH,SAAgB,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;IAE5C;;OAEG;IACH,IAAW,QAAQ,IAAI,SAAS,CAE/B;IAED;;;OAGG;IACH,OAAO,CAAC,aAAa,CAA2C;IAEhE,IAAW,YAAY,IAAI,uBAAuB,CAAC,GAAG,CAAC,GAAG,SAAS,CAElE;IAED,IAAW,YAAY,CAAC,QAAQ,EAAE,uBAAuB,CAAC,GAAG,CAAC,GAAG,SAAS,EAEzE;IAED;;OAEG;IACH,IAAW,KAAK,IAAI,OAAO,CAE1B;gBAGC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,EAC7B,QAAQ,EAAE,SAAS,EACnB,SAAS,GAAE,UAAoC,EAC/C,cAAc,CAAC,EAAE,uBAAuB,CAAC,YAAY,CAAC;IAWxD;;;OAGG;IACU,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAiGrE;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBlC;;;;OAIG;IACI,aAAa,CAAC,CAAC,SAAS,YAAY,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;CAG3E"}
1
+ {"version":3,"file":"base-application.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/base-application.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,SAAS,EACT,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAQ9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE;;;;;;;GAOG;AACH,qBAAa,eAAe,CAC1B,GAAG,SAAS,UAAU,EACtB,YAAY,GAAG,OAAO,EACtB,UAAU,SAAS,UAAU,GAAG,UAAU,CAC1C,YAAW,YAAY,CAAC,GAAG,CAAC;IAC5B;;OAEG;IACH,OAAO,CAAC,YAAY,CAAmB;IAEvC;;OAEG;IACH,OAAO,CAAC,UAAU,CAAa;IAE/B;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAExC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,eAAe,EAC9B,uBAAuB,CAAC,YAAY,CAAC,GACrC,SAAS,CAAC;IAEd;;OAEG;IACH,SAAS,CAAC,oBAAoB,UAAS;IAEvC;;OAEG;IACH,IAAW,WAAW,IAAI,WAAW,CAAC,GAAG,CAAC,CAEzC;IAED,IAAW,SAAS,IAAI,UAAU,CAEjC;IAED;;OAEG;IACI,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,UAAO,GAAG,IAAI;IAI9D;;OAEG;IACH,WAAkB,OAAO,IAAI,MAAM,CAIlC;IAED;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAE3C;;OAEG;IACH,SAAgB,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;IAE5C;;OAEG;IACH,IAAW,QAAQ,IAAI,SAAS,CAE/B;IAED;;;OAGG;IACH,OAAO,CAAC,aAAa,CAA2C;IAEhE,IAAW,YAAY,IAAI,uBAAuB,CAAC,GAAG,CAAC,GAAG,SAAS,CAElE;IAED,IAAW,YAAY,CAAC,QAAQ,EAAE,uBAAuB,CAAC,GAAG,CAAC,GAAG,SAAS,EAEzE;IAED;;OAEG;IACH,IAAW,KAAK,IAAI,OAAO,CAE1B;gBAGC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,EAC7B,QAAQ,EAAE,SAAS,EACnB,SAAS,GAAE,UAAoC,EAC/C,cAAc,CAAC,EAAE,uBAAuB,CAAC,YAAY,CAAC;IAWxD;;;OAGG;IACU,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAiGrE;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBlC;;;;OAIG;IACI,aAAa,CAAC,CAAC,SAAS,YAAY,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;CAG3E"}
@@ -2,8 +2,8 @@
2
2
  /**
3
3
  * @fileoverview Database-agnostic base application class.
4
4
  * Delegates database operations to an IDatabase instance.
5
- * For MongoDB/Mongoose-specific functionality, see MongoApplicationBase.
6
- * @module application-base
5
+ * For MongoDB/Mongoose-specific functionality, see MongoDatabasePlugin.
6
+ * @module base-application
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.BaseApplication = void 0;
@@ -19,7 +19,7 @@ const utils_1 = require("./utils");
19
19
  * for dev store provisioning, URI validation, and database initialization.
20
20
  *
21
21
  * For MongoDB/Mongoose-specific functionality (IDocumentStore, schemaMap,
22
- * getModel, db), use MongoApplicationBase which extends this class.
22
+ * getModel, db), use MongoDatabasePlugin which plugs into Application.
23
23
  */
24
24
  class BaseApplication {
25
25
  /**
@@ -213,4 +213,4 @@ class BaseApplication {
213
213
  }
214
214
  }
215
215
  exports.BaseApplication = BaseApplication;
216
- //# sourceMappingURL=application-base.js.map
216
+ //# sourceMappingURL=base-application.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"application-base.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/application-base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-application.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/base-application.ts"],"names":[],"mappings":"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"}
@@ -1,30 +1,31 @@
1
1
  /**
2
2
  * @fileoverview Application builder for fluent application construction.
3
- * Provides builder pattern for creating Application instances.
3
+ * Provides builder pattern for creating Application instances with MongoDatabasePlugin.
4
4
  * @module builders/application-builder
5
5
  */
6
6
  import mongoose from '@digitaldefiance/mongoose-types';
7
7
  import { HelmetOptions } from 'helmet';
8
8
  import { Application } from '../application';
9
- import { MongoApplicationBase } from '../mongo-application-base';
10
9
  import { IBaseDocument } from '../documents';
11
10
  import { Environment } from '../environment';
12
- import { ICSPConfig, IFailableResult, IServerInitResult } from '../interfaces';
11
+ import { IApplication, ICSPConfig, IFailableResult, IServerInitResult } from '../interfaces';
13
12
  import { IConstants } from '../interfaces/constants';
14
13
  import { IFlexibleCSP } from '../interfaces/flexible-csp';
14
+ import { IMongoApplication } from '../interfaces/mongo-application';
15
15
  import { initMiddleware } from '../middleware-utils';
16
16
  import { AppRouter } from '../routers/app';
17
17
  import { BaseRouter } from '../routers/base';
18
18
  import { SchemaMap } from '../types';
19
19
  import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
20
20
  /**
21
- * Builder for constructing Application instances with fluent API.
21
+ * Builder for constructing Application instances with MongoDatabasePlugin using a fluent API.
22
+ *
22
23
  * @template TID - Platform ID type
23
24
  * @template TModelDocs - Model documents type
24
25
  * @template TInitResults - Initialization results type
25
26
  * @template TConstants - Constants type (defaults to IConstants)
26
27
  */
27
- export declare class ApplicationBuilder<TID extends PlatformID, TModelDocs extends Record<string, IBaseDocument<any, TID>>, TInitResults extends IServerInitResult<TID>, TConstants extends IConstants = IConstants> {
28
+ export declare class ApplicationBuilder<TID extends PlatformID, TModelDocs extends Record<string, IBaseDocument<never, TID>>, TInitResults extends IServerInitResult<TID>, TConstants extends IConstants = IConstants> {
28
29
  private environment?;
29
30
  private apiRouterFactory?;
30
31
  private appRouterFactory?;
@@ -35,13 +36,17 @@ export declare class ApplicationBuilder<TID extends PlatformID, TModelDocs exten
35
36
  private constants?;
36
37
  private customInitMiddleware?;
37
38
  withEnvironment(env: Environment<TID>): this;
38
- withApiRouter(factory: (app: any) => BaseRouter<TID>): this;
39
+ withApiRouter(factory: (app: IApplication<TID>) => BaseRouter<TID>): this;
39
40
  withAppRouter(factory: (apiRouter: BaseRouter<TID>) => AppRouter<TID>): this;
40
41
  withSchemaMap(factory: (connection: mongoose.Connection) => SchemaMap<TID, TModelDocs>): this;
41
- withDatabaseInit(initFn: (app: MongoApplicationBase<TID, TModelDocs, TInitResults>) => Promise<IFailableResult<TInitResults>>, hashFn: (results: TInitResults) => string): this;
42
+ withDatabaseInit(initFn: (app: IMongoApplication<TID>) => Promise<IFailableResult<TInitResults>>, hashFn: (results: TInitResults) => string): this;
42
43
  withCSP(config: ICSPConfig | HelmetOptions | IFlexibleCSP): this;
43
44
  withConstants(constants: TConstants): this;
44
45
  withMiddleware(middleware: typeof initMiddleware): this;
45
- build(): Application<TInitResults, TModelDocs, TID, Environment<TID>, TConstants, AppRouter<TID>>;
46
+ /**
47
+ * Build an Application with a MongoDatabasePlugin pre-registered.
48
+ * Returns the Application instance with the plugin already wired up.
49
+ */
50
+ build(): Application<TID, Environment<TID>, TConstants, AppRouter<TID>>;
46
51
  }
47
52
  //# sourceMappingURL=application-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"application-builder.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/builders/application-builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AAKvD,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAEL,UAAU,EACV,eAAe,EACf,iBAAiB,EAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE;;;;;;GAMG;AACH,qBAAa,kBAAkB,CAC7B,GAAG,SAAS,UAAU,EACtB,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAC1D,YAAY,SAAS,iBAAiB,CAAC,GAAG,CAAC,EAC3C,UAAU,SAAS,UAAU,GAAG,UAAU;IAE1C,OAAO,CAAC,WAAW,CAAC,CAAmB;IACvC,OAAO,CAAC,gBAAgB,CAAC,CAA8C;IACvE,OAAO,CAAC,gBAAgB,CAAC,CAAiD;IAC1E,OAAO,CAAC,gBAAgB,CAAC,CAEO;IAChC,OAAO,CAAC,oBAAoB,CAAC,CAEe;IAC5C,OAAO,CAAC,sBAAsB,CAAC,CAAoC;IACnE,OAAO,CAAC,SAAS,CAAC,CAA4C;IAC9D,OAAO,CAAC,SAAS,CAAC,CAAa;IAC/B,OAAO,CAAC,oBAAoB,CAAC,CAAwB;IAErD,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI;IAK5C,aAAa,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI;IAK3D,aAAa,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI;IAK5E,aAAa,CACX,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,GACvE,IAAI;IAKP,gBAAgB,CACd,MAAM,EAAE,CACN,GAAG,EAAE,oBAAoB,CAAC,GAAG,EAAE,UAAU,EAAE,YAAY,CAAC,KACrD,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,EAC3C,MAAM,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,MAAM,GACxC,IAAI;IAMP,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,aAAa,GAAG,YAAY,GAAG,IAAI;IAKhE,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;IAK1C,cAAc,CAAC,UAAU,EAAE,OAAO,cAAc,GAAG,IAAI;IAKvD,KAAK,IAAI,WAAW,CAClB,YAAY,EACZ,UAAU,EACV,GAAG,EACH,WAAW,CAAC,GAAG,CAAC,EAChB,UAAU,EACV,SAAS,CAAC,GAAG,CAAC,CACf;CAkCF"}
1
+ {"version":3,"file":"application-builder.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/builders/application-builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AAKvD,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,YAAY,EACZ,UAAU,EACV,eAAe,EACf,iBAAiB,EAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE;;;;;;;GAOG;AACH,qBAAa,kBAAkB,CAC7B,GAAG,SAAS,UAAU,EACtB,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,EAC5D,YAAY,SAAS,iBAAiB,CAAC,GAAG,CAAC,EAC3C,UAAU,SAAS,UAAU,GAAG,UAAU;IAE1C,OAAO,CAAC,WAAW,CAAC,CAAmB;IACvC,OAAO,CAAC,gBAAgB,CAAC,CAA8C;IACvE,OAAO,CAAC,gBAAgB,CAAC,CAAiD;IAC1E,OAAO,CAAC,gBAAgB,CAAC,CAEO;IAChC,OAAO,CAAC,oBAAoB,CAAC,CAEe;IAC5C,OAAO,CAAC,sBAAsB,CAAC,CAAoC;IACnE,OAAO,CAAC,SAAS,CAAC,CAA4C;IAC9D,OAAO,CAAC,SAAS,CAAC,CAAa;IAC/B,OAAO,CAAC,oBAAoB,CAAC,CAAwB;IAErD,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI;IAK5C,aAAa,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI;IAKzE,aAAa,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI;IAK5E,aAAa,CACX,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,GACvE,IAAI;IAKP,gBAAgB,CACd,MAAM,EAAE,CACN,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,KACxB,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,EAC3C,MAAM,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,MAAM,GACxC,IAAI;IAMP,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,aAAa,GAAG,YAAY,GAAG,IAAI;IAKhE,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;IAK1C,cAAc,CAAC,UAAU,EAAE,OAAO,cAAc,GAAG,IAAI;IAKvD;;;OAGG;IACH,KAAK,IAAI,WAAW,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;CAqDxE"}
@@ -1,15 +1,17 @@
1
1
  "use strict";
2
2
  /**
3
3
  * @fileoverview Application builder for fluent application construction.
4
- * Provides builder pattern for creating Application instances.
4
+ * Provides builder pattern for creating Application instances with MongoDatabasePlugin.
5
5
  * @module builders/application-builder
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
8
  exports.ApplicationBuilder = void 0;
9
9
  const suite_core_lib_1 = require("@digitaldefiance/suite-core-lib");
10
10
  const application_1 = require("../application");
11
+ const mongo_database_plugin_1 = require("../plugins/mongo-database-plugin");
11
12
  /**
12
- * Builder for constructing Application instances with fluent API.
13
+ * Builder for constructing Application instances with MongoDatabasePlugin using a fluent API.
14
+ *
13
15
  * @template TID - Platform ID type
14
16
  * @template TModelDocs - Model documents type
15
17
  * @template TInitResults - Initialization results type
@@ -58,6 +60,10 @@ class ApplicationBuilder {
58
60
  this.customInitMiddleware = middleware;
59
61
  return this;
60
62
  }
63
+ /**
64
+ * Build an Application with a MongoDatabasePlugin pre-registered.
65
+ * Returns the Application instance with the plugin already wired up.
66
+ */
61
67
  build() {
62
68
  if (!this.environment)
63
69
  throw new suite_core_lib_1.TranslatableSuiteError(suite_core_lib_1.SuiteCoreStringKey.Error_EnvironmentIsRequired);
@@ -69,7 +75,16 @@ class ApplicationBuilder {
69
75
  throw new suite_core_lib_1.TranslatableSuiteError(suite_core_lib_1.SuiteCoreStringKey.Error_DatabaseInitFunctionIsRequired);
70
76
  if (!this.initResultHashFunction)
71
77
  throw new suite_core_lib_1.TranslatableSuiteError(suite_core_lib_1.SuiteCoreStringKey.Error_InitResultHashFunctionIsRequired);
72
- return new application_1.Application(this.environment, this.apiRouterFactory, this.schemaMapFactory, this.databaseInitFunction, this.initResultHashFunction, this.cspConfig, this.constants, this.appRouterFactory, this.customInitMiddleware);
78
+ const app = new application_1.Application(this.environment, this.apiRouterFactory, this.cspConfig, this.constants, this.appRouterFactory, this.customInitMiddleware);
79
+ const mongoPlugin = new mongo_database_plugin_1.MongoDatabasePlugin({
80
+ schemaMapFactory: this.schemaMapFactory,
81
+ databaseInitFunction: this.databaseInitFunction,
82
+ initResultHashFunction: this.initResultHashFunction,
83
+ environment: this.environment,
84
+ constants: this.constants,
85
+ });
86
+ app.useDatabasePlugin(mongoPlugin);
87
+ return app;
73
88
  }
74
89
  }
75
90
  exports.ApplicationBuilder = ApplicationBuilder;
@@ -1 +1 @@
1
- {"version":3,"file":"application-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/builders/application-builder.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAGH,oEAGyC;AAEzC,gDAA6C;AAkB7C;;;;;;GAMG;AACH,MAAa,kBAAkB;IAMrB,WAAW,CAAoB;IAC/B,gBAAgB,CAA+C;IAC/D,gBAAgB,CAAkD;IAClE,gBAAgB,CAEQ;IACxB,oBAAoB,CAEgB;IACpC,sBAAsB,CAAqC;IAC3D,SAAS,CAA6C;IACtD,SAAS,CAAc;IACvB,oBAAoB,CAAyB;IAErD,eAAe,CAAC,GAAqB;QACnC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,OAAsC;QAClD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,OAAuD;QACnE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CACX,OAAwE;QAExE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB,CACd,MAE2C,EAC3C,MAAyC;QAEzC,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC;QACnC,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,MAAiD;QACvD,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,SAAqB;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,UAAiC;QAC9C,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QAQH,IAAI,CAAC,IAAI,CAAC,WAAW;YACnB,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,2BAA2B,CAC/C,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,gBAAgB;YACxB,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,gCAAgC,CACpD,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,gBAAgB;YACxB,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,gCAAgC,CACpD,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,oBAAoB;YAC5B,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,oCAAoC,CACxD,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,sBAAsB;YAC9B,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,sCAAsC,CAC1D,CAAC;QAEJ,OAAO,IAAI,yBAAW,CACpB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,sBAAsB,EAC3B,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;IACJ,CAAC;CACF;AA7GD,gDA6GC"}
1
+ {"version":3,"file":"application-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/builders/application-builder.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAGH,oEAGyC;AAEzC,gDAA6C;AAe7C,4EAAuE;AAIvE;;;;;;;GAOG;AACH,MAAa,kBAAkB;IAMrB,WAAW,CAAoB;IAC/B,gBAAgB,CAA+C;IAC/D,gBAAgB,CAAkD;IAClE,gBAAgB,CAEQ;IACxB,oBAAoB,CAEgB;IACpC,sBAAsB,CAAqC;IAC3D,SAAS,CAA6C;IACtD,SAAS,CAAc;IACvB,oBAAoB,CAAyB;IAErD,eAAe,CAAC,GAAqB;QACnC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,OAAoD;QAChE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,OAAuD;QACnE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CACX,OAAwE;QAExE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB,CACd,MAE2C,EAC3C,MAAyC;QAEzC,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC;QACnC,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,MAAiD;QACvD,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,SAAqB;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,UAAiC;QAC9C,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,WAAW;YACnB,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,2BAA2B,CAC/C,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,gBAAgB;YACxB,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,gCAAgC,CACpD,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,gBAAgB;YACxB,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,gCAAgC,CACpD,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,oBAAoB;YAC5B,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,oCAAoC,CACxD,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,sBAAsB;YAC9B,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,sCAAsC,CAC1D,CAAC;QAEJ,MAAM,GAAG,GAAG,IAAI,yBAAW,CAMzB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;QAEF,MAAM,WAAW,GAAG,IAAI,2CAAmB,CAKzC;YACA,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;QAEH,GAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAEnC,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AA7HD,gDA6HC"}
package/src/index.d.ts CHANGED
@@ -1,8 +1,7 @@
1
1
  import 'reflect-metadata';
2
2
  export * from './application';
3
- export * from './application-base';
4
- export * from './application-concrete';
5
- export * from './mongo-application-base';
3
+ export * from './base-application';
4
+ export * from './mongo-application-concrete';
6
5
  export * from './backup-code';
7
6
  export * from './builders';
8
7
  export * from './constants';
@@ -40,4 +39,5 @@ export type { TransactionOptions as UtilsTransactionOptions } from './utils';
40
39
  export * from './validation';
41
40
  export * from './branded-responses';
42
41
  export { defaultMongoUriValidator } from './utils/default-mongo-uri-validator';
42
+ export { createNoOpDatabase } from './utils/no-op-database';
43
43
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,OAAO,EACL,KAAK,UAAU,EACf,QAAQ,EACR,SAAS,EACT,cAAc,EACd,8BAA8B,EAC9B,2BAA2B,EAC3B,gCAAgC,EAChC,6BAA6B,EAC7B,qBAAqB,IAAI,eAAe,EACxC,sBAAsB,EACtB,2BAA2B,EAC3B,wCAAwC,EACxC,KAAK,kBAAkB,EACvB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,qCAAqC,EACrC,mCAAmC,EACnC,mBAAmB,EACnB,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACvB,eAAe,EACf,IAAI,EACJ,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,KAAK,EACL,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,8BAA8B,EAC9B,8BAA8B,EAC9B,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,kBAAkB,IAAI,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAC7E,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,OAAO,EACL,KAAK,UAAU,EACf,QAAQ,EACR,SAAS,EACT,cAAc,EACd,8BAA8B,EAC9B,2BAA2B,EAC3B,gCAAgC,EAChC,6BAA6B,EAC7B,qBAAqB,IAAI,eAAe,EACxC,sBAAsB,EACtB,2BAA2B,EAC3B,wCAAwC,EACxC,KAAK,kBAAkB,EACvB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,qCAAqC,EACrC,mCAAmC,EACnC,mBAAmB,EACnB,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACvB,eAAe,EACf,IAAI,EACJ,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,KAAK,EACL,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,8BAA8B,EAC9B,8BAA8B,EAC9B,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,kBAAkB,IAAI,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAC7E,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC"}
package/src/index.js CHANGED
@@ -1,12 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defaultMongoUriValidator = exports.parseHostnames = exports.isValidHostname = exports.parseBackupCodes = exports.getLengthForLengthType = exports.getLengthEncodingTypeFromValue = exports.getLengthEncodingTypeForLength = exports.concatUint8Arrays = exports.arraysEqual = exports.randomBytes = exports.uint8ArrayToString = exports.stringToUint8Array = exports.crc16 = exports.hexToUint8Array = exports.uint8ArrayToHex = exports.base64ToUint8Array = exports.uint8ArrayToBase64 = exports.validateEnumCollection = exports.omit = exports.isValidTimezone = exports.decodeLengthEncodedData = exports.lengthEncodeData = exports.locatePEMRoot = exports.handleError = exports.sendRawJsonResponse = exports.sendApiMongoValidationErrorResponse = exports.sendApiExpressValidationErrorResponse = exports.sendApiErrorResponse = exports.sendApiMessageResponse = exports.withTransaction = exports.getDefaultBaseDelay = exports.DEFAULT_TRANSACTION_LOCK_REQUEST_TIMEOUT = exports.DEFAULT_TRANSACTION_TIMEOUT = exports.DEFAULT_RETRY_ATTEMPTS = exports.isValidStringId = exports.requireValidatedFieldsOrThrow = exports.requireOneOfValidatedFieldsAsync = exports.requireValidatedFieldsAsync = exports.mapZodIssuesToValidationErrors = exports.getValueAtPath = exports.directLog = exports.debugLog = exports.RouteBuilder = void 0;
3
+ exports.createNoOpDatabase = exports.defaultMongoUriValidator = exports.parseHostnames = exports.isValidHostname = exports.parseBackupCodes = exports.getLengthForLengthType = exports.getLengthEncodingTypeFromValue = exports.getLengthEncodingTypeForLength = exports.concatUint8Arrays = exports.arraysEqual = exports.randomBytes = exports.uint8ArrayToString = exports.stringToUint8Array = exports.crc16 = exports.hexToUint8Array = exports.uint8ArrayToHex = exports.base64ToUint8Array = exports.uint8ArrayToBase64 = exports.validateEnumCollection = exports.omit = exports.isValidTimezone = exports.decodeLengthEncodedData = exports.lengthEncodeData = exports.locatePEMRoot = exports.handleError = exports.sendRawJsonResponse = exports.sendApiMongoValidationErrorResponse = exports.sendApiExpressValidationErrorResponse = exports.sendApiErrorResponse = exports.sendApiMessageResponse = exports.withTransaction = exports.getDefaultBaseDelay = exports.DEFAULT_TRANSACTION_LOCK_REQUEST_TIMEOUT = exports.DEFAULT_TRANSACTION_TIMEOUT = exports.DEFAULT_RETRY_ATTEMPTS = exports.isValidStringId = exports.requireValidatedFieldsOrThrow = exports.requireOneOfValidatedFieldsAsync = exports.requireValidatedFieldsAsync = exports.mapZodIssuesToValidationErrors = exports.getValueAtPath = exports.directLog = exports.debugLog = exports.RouteBuilder = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  require("reflect-metadata");
6
6
  tslib_1.__exportStar(require("./application"), exports);
7
- tslib_1.__exportStar(require("./application-base"), exports);
8
- tslib_1.__exportStar(require("./application-concrete"), exports);
9
- tslib_1.__exportStar(require("./mongo-application-base"), exports);
7
+ tslib_1.__exportStar(require("./base-application"), exports);
8
+ tslib_1.__exportStar(require("./mongo-application-concrete"), exports);
10
9
  tslib_1.__exportStar(require("./backup-code"), exports);
11
10
  tslib_1.__exportStar(require("./builders"), exports);
12
11
  tslib_1.__exportStar(require("./constants"), exports);
@@ -85,4 +84,6 @@ tslib_1.__exportStar(require("./validation"), exports);
85
84
  tslib_1.__exportStar(require("./branded-responses"), exports);
86
85
  var default_mongo_uri_validator_1 = require("./utils/default-mongo-uri-validator");
87
86
  Object.defineProperty(exports, "defaultMongoUriValidator", { enumerable: true, get: function () { return default_mongo_uri_validator_1.defaultMongoUriValidator; } });
87
+ var no_op_database_1 = require("./utils/no-op-database");
88
+ Object.defineProperty(exports, "createNoOpDatabase", { enumerable: true, get: function () { return no_op_database_1.createNoOpDatabase; } });
88
89
  //# sourceMappingURL=index.js.map
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/index.ts"],"names":[],"mappings":";;;;AAAA,4BAA0B;AAE1B,wDAA8B;AAC9B,6DAAmC;AACnC,iEAAuC;AACvC,mEAAyC;AACzC,wDAA8B;AAC9B,qDAA2B;AAC3B,sDAA4B;AAC5B,sDAA4B;AAC5B,wDAA8B;AAC9B,qDAA2B;AAC3B,uDAA6B;AAC7B,qDAA2B;AAC3B,sDAA4B;AAC5B,yDAA+B;AAC/B,wDAA8B;AAC9B,mDAAyB;AACzB,yDAA+B;AAC/B,8DAAoC;AACpC,yDAA+B;AAC/B,uDAA6B;AAC7B,wDAA8B;AAC9B,6DAAmC;AACnC,2DAAiC;AACjC,mDAAyB;AACzB,qDAA2B;AAC3B,oDAA0B;AAC1B,qDAA2B;AAC3B,sDAA4B;AAC5B,oDAA0B;AAC1B,qCAAyC;AAAhC,uGAAA,YAAY,OAAA;AAErB,oDAA0B;AAC1B,qDAA2B;AAC3B,yDAA+B;AAC/B,kDAAwB;AACxB,oDAA0B;AAC1B,iCA4CiB;AA1Cf,iGAAA,QAAQ,OAAA;AACR,kGAAA,SAAS,OAAA;AACT,uGAAA,cAAc,OAAA;AACd,uHAAA,8BAA8B,OAAA;AAC9B,oHAAA,2BAA2B,OAAA;AAC3B,yHAAA,gCAAgC,OAAA;AAChC,sHAAA,6BAA6B,OAAA;AAC7B,wGAAA,qBAAqB,OAAmB;AACxC,+GAAA,sBAAsB,OAAA;AACtB,oHAAA,2BAA2B,OAAA;AAC3B,iIAAA,wCAAwC,OAAA;AAExC,4GAAA,mBAAmB,OAAA;AACnB,wGAAA,eAAe,OAAA;AACf,+GAAA,sBAAsB,OAAA;AACtB,6GAAA,oBAAoB,OAAA;AACpB,8HAAA,qCAAqC,OAAA;AACrC,4HAAA,mCAAmC,OAAA;AACnC,4GAAA,mBAAmB,OAAA;AACnB,oGAAA,WAAW,OAAA;AACX,sGAAA,aAAa,OAAA;AACb,yGAAA,gBAAgB,OAAA;AAChB,gHAAA,uBAAuB,OAAA;AACvB,wGAAA,eAAe,OAAA;AACf,6FAAA,IAAI,OAAA;AACJ,+GAAA,sBAAsB,OAAA;AACtB,2GAAA,kBAAkB,OAAA;AAClB,2GAAA,kBAAkB,OAAA;AAClB,wGAAA,eAAe,OAAA;AACf,wGAAA,eAAe,OAAA;AACf,8FAAA,KAAK,OAAA;AACL,2GAAA,kBAAkB,OAAA;AAClB,2GAAA,kBAAkB,OAAA;AAClB,oGAAA,WAAW,OAAA;AACX,oGAAA,WAAW,OAAA;AACX,0GAAA,iBAAiB,OAAA;AACjB,uHAAA,8BAA8B,OAAA;AAC9B,uHAAA,8BAA8B,OAAA;AAC9B,+GAAA,sBAAsB,OAAA;AACtB,yGAAA,gBAAgB,OAAA;AAChB,wGAAA,eAAe,OAAA;AACf,uGAAA,cAAc,OAAA;AAGhB,uDAA6B;AAC7B,8DAAoC;AACpC,mFAA+E;AAAtE,uIAAA,wBAAwB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/index.ts"],"names":[],"mappings":";;;;AAAA,4BAA0B;AAE1B,wDAA8B;AAC9B,6DAAmC;AACnC,uEAA6C;AAC7C,wDAA8B;AAC9B,qDAA2B;AAC3B,sDAA4B;AAC5B,sDAA4B;AAC5B,wDAA8B;AAC9B,qDAA2B;AAC3B,uDAA6B;AAC7B,qDAA2B;AAC3B,sDAA4B;AAC5B,yDAA+B;AAC/B,wDAA8B;AAC9B,mDAAyB;AACzB,yDAA+B;AAC/B,8DAAoC;AACpC,yDAA+B;AAC/B,uDAA6B;AAC7B,wDAA8B;AAC9B,6DAAmC;AACnC,2DAAiC;AACjC,mDAAyB;AACzB,qDAA2B;AAC3B,oDAA0B;AAC1B,qDAA2B;AAC3B,sDAA4B;AAC5B,oDAA0B;AAC1B,qCAAyC;AAAhC,uGAAA,YAAY,OAAA;AAErB,oDAA0B;AAC1B,qDAA2B;AAC3B,yDAA+B;AAC/B,kDAAwB;AACxB,oDAA0B;AAC1B,iCA4CiB;AA1Cf,iGAAA,QAAQ,OAAA;AACR,kGAAA,SAAS,OAAA;AACT,uGAAA,cAAc,OAAA;AACd,uHAAA,8BAA8B,OAAA;AAC9B,oHAAA,2BAA2B,OAAA;AAC3B,yHAAA,gCAAgC,OAAA;AAChC,sHAAA,6BAA6B,OAAA;AAC7B,wGAAA,qBAAqB,OAAmB;AACxC,+GAAA,sBAAsB,OAAA;AACtB,oHAAA,2BAA2B,OAAA;AAC3B,iIAAA,wCAAwC,OAAA;AAExC,4GAAA,mBAAmB,OAAA;AACnB,wGAAA,eAAe,OAAA;AACf,+GAAA,sBAAsB,OAAA;AACtB,6GAAA,oBAAoB,OAAA;AACpB,8HAAA,qCAAqC,OAAA;AACrC,4HAAA,mCAAmC,OAAA;AACnC,4GAAA,mBAAmB,OAAA;AACnB,oGAAA,WAAW,OAAA;AACX,sGAAA,aAAa,OAAA;AACb,yGAAA,gBAAgB,OAAA;AAChB,gHAAA,uBAAuB,OAAA;AACvB,wGAAA,eAAe,OAAA;AACf,6FAAA,IAAI,OAAA;AACJ,+GAAA,sBAAsB,OAAA;AACtB,2GAAA,kBAAkB,OAAA;AAClB,2GAAA,kBAAkB,OAAA;AAClB,wGAAA,eAAe,OAAA;AACf,wGAAA,eAAe,OAAA;AACf,8FAAA,KAAK,OAAA;AACL,2GAAA,kBAAkB,OAAA;AAClB,2GAAA,kBAAkB,OAAA;AAClB,oGAAA,WAAW,OAAA;AACX,oGAAA,WAAW,OAAA;AACX,0GAAA,iBAAiB,OAAA;AACjB,uHAAA,8BAA8B,OAAA;AAC9B,uHAAA,8BAA8B,OAAA;AAC9B,+GAAA,sBAAsB,OAAA;AACtB,yGAAA,gBAAgB,OAAA;AAChB,wGAAA,eAAe,OAAA;AACf,uGAAA,cAAc,OAAA;AAGhB,uDAA6B;AAC7B,8DAAoC;AACpC,mFAA+E;AAAtE,uIAAA,wBAAwB,OAAA;AACjC,yDAA4D;AAAnD,oHAAA,kBAAkB,OAAA"}
@@ -1,38 +1,7 @@
1
1
  /**
2
- * @fileoverview Storage-agnostic interface for database operations.
3
- * Implementations wrap specific database technologies (mongoose, BrightChainDb, etc.).
2
+ * @fileoverview Backward-compatible re-export of IDocumentStore.
3
+ * @deprecated Import from './mongoose-document-store' instead.
4
4
  * @module interfaces/document-store
5
5
  */
6
- import { Model } from '@digitaldefiance/mongoose-types';
7
- import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
8
- import { MongoMemoryReplSet } from 'mongodb-memory-server';
9
- import { IBaseDocument } from '../documents/base';
10
- import { ISchema } from './schema';
11
- import { IApplication } from './application';
12
- /**
13
- * Storage-agnostic interface for database operations.
14
- * Implementations wrap specific database technologies (mongoose, BrightChainDb, etc.).
15
- * @template TID - Platform-specific ID type extending PlatformID
16
- * @template TModelDocs - Record mapping model names to their document types
17
- */
18
- export interface IDocumentStore<TID extends PlatformID = Buffer, TModelDocs extends Record<string, IBaseDocument<any, TID>> = Record<string, IBaseDocument<any, TID>>> {
19
- /** Connect to the backing store. URI may be ignored by non-network stores. */
20
- connect(uri?: string): Promise<void>;
21
- /** Disconnect from the backing store. */
22
- disconnect(): Promise<void>;
23
- /** Whether the store is currently connected and ready for operations. */
24
- isConnected(): boolean;
25
- /** Retrieve a model/collection handle by name. */
26
- getModel<T extends IBaseDocument<any, TID>>(modelName: string): Model<T>;
27
- /** The schema map, if available (populated after connect). */
28
- readonly schemaMap?: {
29
- [K in keyof TModelDocs]: ISchema<TID, TModelDocs[K]>;
30
- };
31
- /** The dev database instance, if any (for cleanup on stop). */
32
- readonly devDatabase?: MongoMemoryReplSet;
33
- /** Optional: provision a dev/test database, returning its connection URI. */
34
- setupDevStore?(): Promise<string | void>;
35
- /** Optional: seed the dev database with initial data. */
36
- initializeDevStore?<TInitResults>(app: IApplication<TID>): Promise<TInitResults>;
37
- }
6
+ export * from './mongoose-document-store';
38
7
  //# sourceMappingURL=document-store.d.ts.map