@digitaldefiance/node-express-suite 3.18.3 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +37 -11
  8. package/src/application.d.ts.map +1 -1
  9. package/src/application.js +106 -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,27 @@ 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 no_op_database_1 = require("./utils/no-op-database");
25
+ /**
26
+ * Generic Express application class.
27
+ *
28
+ * Provides HTTP/HTTPS server, routing, middleware, and error handling.
29
+ * Database backends are plugged in via IDatabasePlugin rather than
30
+ * being baked into the class hierarchy.
31
+ *
32
+ * @template TID - Platform ID type (Buffer, ObjectId, etc.)
33
+ * @template TEnvironment - Environment type
34
+ * @template TConstants - Constants type
35
+ * @template TAppRouter - App router type
36
+ */
37
+ class Application extends base_application_1.BaseApplication {
25
38
  expressApp;
26
39
  server = null;
27
40
  _cspConfig;
@@ -30,14 +43,35 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
30
43
  _initMiddleware;
31
44
  _apiRouter;
32
45
  greenlockManager = null;
46
+ _databasePlugin = null;
33
47
  get environment() {
34
48
  return super.environment;
35
49
  }
50
+ /**
51
+ * Get the registered database plugin, if any.
52
+ */
53
+ get databasePlugin() {
54
+ return this._databasePlugin;
55
+ }
56
+ /**
57
+ * Register a database plugin. Must be called before start().
58
+ * The plugin will be initialized during start() and its database
59
+ * will be used as the application's primary database.
60
+ */
61
+ useDatabasePlugin(plugin) {
62
+ this._databasePlugin = plugin;
63
+ // Also register it as a regular plugin so it participates in the lifecycle
64
+ this.plugins.register(plugin);
65
+ return this;
66
+ }
67
+ /**
68
+ * Hook for subclasses to register services before the server starts.
69
+ * Called during the constructor.
70
+ */
36
71
  registerServices() {
37
- // Services will be registered by subclasses or ApiRouter
38
- // Base implementation does nothing
72
+ // Subclasses can override to register services
39
73
  }
40
- constructor(environment, apiRouterFactory, schemaMapFactory, databaseInitFunction, initResultHashFunction, cspConfig = {
74
+ constructor(environment, apiRouterFactory, cspConfig = {
41
75
  corsWhitelist: [],
42
76
  csp: {
43
77
  defaultSrc: [],
@@ -48,10 +82,8 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
48
82
  fontSrc: [],
49
83
  frameSrc: [],
50
84
  },
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);
85
+ }, constants = suite_core_lib_1.Constants, appRouterFactory = (apiRouter) => new app_1.AppRouter(apiRouter), customInitMiddleware = middleware_utils_1.initMiddleware, database) {
86
+ super(environment, database ?? (0, no_op_database_1.createNoOpDatabase)(), constants);
55
87
  this._apiRouterFactory = apiRouterFactory;
56
88
  this._appRouterFactory = appRouterFactory;
57
89
  this._initMiddleware = customInitMiddleware;
@@ -60,15 +92,56 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
60
92
  this._cspConfig = cspConfig;
61
93
  this.registerServices();
62
94
  }
63
- async start(mongoUri) {
95
+ async start(uri) {
64
96
  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);
97
+ // If a database plugin is registered, handle its lifecycle
98
+ if (this._databasePlugin) {
99
+ if (this._ready) {
100
+ console.error('Failed to start the application:', 'Application is already running');
101
+ const err = new Error('Application is already running');
102
+ if (process.env['NODE_ENV'] === 'test') {
103
+ throw err;
104
+ }
105
+ process.exit(1);
106
+ }
107
+ // Dev store setup
108
+ if (this.environment.devDatabase && this._databasePlugin.setupDevStore) {
109
+ const devUri = await this._databasePlugin.setupDevStore();
110
+ if (devUri) {
111
+ uri = devUri;
112
+ }
113
+ }
114
+ try {
115
+ // Connect the database plugin
116
+ await this._databasePlugin.connect(uri);
117
+ // Initialize all plugins (including the database plugin)
118
+ await this.plugins.initAll(this);
119
+ // Wire up auth provider from database plugin
120
+ if (this._databasePlugin.authenticationProvider && !this.authProvider) {
121
+ this.authProvider = this._databasePlugin.authenticationProvider;
122
+ }
123
+ // Dev store initialization (seeding)
124
+ if (this.environment.devDatabase &&
125
+ this._databasePlugin.initializeDevStore) {
126
+ await this._databasePlugin.initializeDevStore();
127
+ }
128
+ }
129
+ catch (err) {
130
+ const sanitizedErr = err instanceof Error
131
+ ? err.message.replace(/[\r\n]/g, ' ')
132
+ : String(err).replace(/[\r\n]/g, ' ');
133
+ console.error('Failed to start the application:', sanitizedErr);
134
+ if (process.env['NODE_ENV'] === 'test') {
135
+ throw err;
136
+ }
137
+ process.exit(1);
70
138
  }
71
139
  }
140
+ else {
141
+ // No database plugin — use BaseApplication's IDatabase path
142
+ await super.start(uri, true);
143
+ }
144
+ // Start Express server and routing
72
145
  try {
73
146
  this._apiRouter = this._apiRouterFactory(this);
74
147
  if ((0, flexible_csp_1.isFlexibleCSP)(this._cspConfig) || (0, interfaces_1.isCSPConfig)(this._cspConfig)) {
@@ -107,14 +180,13 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
107
180
  setImmediate(safeHandle);
108
181
  });
109
182
  const serversReady = [];
110
- serversReady.push(new Promise((resolve) => {
183
+ serversReady.push(new Promise((resolvePromise) => {
111
184
  this.server = this.expressApp.listen(this.environment.port, this.environment.host, () => {
112
185
  (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();
186
+ resolvePromise();
114
187
  });
115
188
  }));
116
189
  if (this.environment.letsEncrypt.enabled) {
117
- // Let's Encrypt mode: start GreenlockManager for HTTPS on 443 + redirect on 80
118
190
  this.greenlockManager = new greenlock_manager_1.GreenlockManager(this.environment.letsEncrypt);
119
191
  serversReady.push(this.greenlockManager.start(this.expressApp));
120
192
  }
@@ -135,10 +207,10 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
135
207
  // amazonq-ignore-next-line fixed above
136
208
  cert: (0, fs_1.readFileSync)(certPath),
137
209
  };
138
- serversReady.push(new Promise((resolve) => {
210
+ serversReady.push(new Promise((resolvePromise) => {
139
211
  (0, https_1.createServer)(options, this.expressApp).listen(this.environment.httpsDevPort, this.environment.host, () => {
140
212
  console.log(`[ ${engine.translateStringKey(suite_core_lib_1.SuiteCoreStringKey.Common_Ready)} ] https://${this.environment.host}:${this.environment.httpsDevPort}`);
141
- resolve();
213
+ resolvePromise();
142
214
  });
143
215
  }));
144
216
  }
@@ -165,21 +237,28 @@ class Application extends mongo_application_base_1.MongoApplicationBase {
165
237
  const engine = (0, suite_core_lib_1.getSuiteCoreI18nEngine)({ constants: this.constants });
166
238
  if (this.server) {
167
239
  (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) => {
240
+ await new Promise((resolvePromise, reject) => {
169
241
  this.server.closeAllConnections?.();
170
242
  this.server.close((err) => {
171
243
  if (err) {
172
244
  reject(err);
173
245
  }
174
246
  else {
175
- resolve();
247
+ resolvePromise();
176
248
  }
177
249
  });
178
250
  });
179
251
  this.server = null;
180
252
  }
181
- await super.stop();
182
- this._ready = false;
253
+ // Database plugin handles its own teardown via stop()
254
+ // which is called by PluginManager.stopAll() in super.stop()
255
+ if (this._databasePlugin) {
256
+ await this.plugins.stopAll();
257
+ this._ready = false;
258
+ }
259
+ else {
260
+ await super.stop();
261
+ }
183
262
  (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
263
  }
185
264
  }
@@ -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
@@ -1 +1 @@
1
- {"version":3,"file":"document-store.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/interfaces/document-store.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C;;;;;GAKG;AAEH,MAAM,WAAW,cAAc,CAC7B,GAAG,SAAS,UAAU,GAAG,MAAM,EAC/B,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,MAAM,CACjE,MAAM,EACN,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CACxB;IAED,8EAA8E;IAC9E,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErC,yCAAyC;IACzC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B,yEAAyE;IACzE,WAAW,IAAI,OAAO,CAAC;IAEvB,kDAAkD;IAClD,QAAQ,CAAC,CAAC,SAAS,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEzE,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,CAAC,EAAE;SAAG,CAAC,IAAI,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;KAAE,CAAC;IAE9E,+DAA+D;IAC/D,QAAQ,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAE1C,6EAA6E;IAC7E,aAAa,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEzC,yDAAyD;IACzD,kBAAkB,CAAC,CAAC,YAAY,EAC9B,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,GACrB,OAAO,CAAC,YAAY,CAAC,CAAC;CAC1B"}
1
+ {"version":3,"file":"document-store.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/interfaces/document-store.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,cAAc,2BAA2B,CAAC"}
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
2
4
  /**
3
- * @fileoverview Storage-agnostic interface for database operations.
4
- * Implementations wrap specific database technologies (mongoose, BrightChainDb, etc.).
5
+ * @fileoverview Backward-compatible re-export of IDocumentStore.
6
+ * @deprecated Import from './mongoose-document-store' instead.
5
7
  * @module interfaces/document-store
6
8
  */
7
- Object.defineProperty(exports, "__esModule", { value: true });
9
+ tslib_1.__exportStar(require("./mongoose-document-store"), exports);
8
10
  //# sourceMappingURL=document-store.js.map