@digitaldefiance/node-express-suite 3.18.2 → 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
@@ -0,0 +1,234 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Mongoose/MongoDB database plugin.
4
+ * Extracts all Mongo-specific database lifecycle
5
+ * into a plugin that can be registered on any Application instance.
6
+ * @module plugins/mongo-database-plugin
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.MongoDatabasePlugin = void 0;
10
+ const suite_core_lib_1 = require("@digitaldefiance/suite-core-lib");
11
+ const mongoose_document_store_1 = require("../services/mongoose-document-store");
12
+ const mongo_authentication_provider_1 = require("../services/mongo-authentication-provider");
13
+ const database_initialization_1 = require("../services/database-initialization");
14
+ const no_op_database_1 = require("../utils/no-op-database");
15
+ /**
16
+ * Mongoose/MongoDB database plugin.
17
+ *
18
+ * Wraps a MongooseDocumentStore and exposes Mongoose-specific accessors
19
+ * (db, getModel, schemaMap, devDatabase) while conforming to the
20
+ * IDatabasePlugin contract for pluggable database backends.
21
+ *
22
+ * @template TID - Platform ID type
23
+ * @template TModelDocs - Record mapping model names to document types
24
+ * @template TInitResults - Database initialization result type
25
+ * @template TConstants - Application constants type
26
+ */
27
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
28
+ class MongoDatabasePlugin {
29
+ name = 'mongo-database';
30
+ version = '1.0.0';
31
+ _documentStore;
32
+ _environment;
33
+ _authProvider;
34
+ _application;
35
+ _lastInitResult;
36
+ constructor(options) {
37
+ const constants = options.constants ?? suite_core_lib_1.Constants;
38
+ this._documentStore = new mongoose_document_store_1.MongooseDocumentStore(options.schemaMapFactory, options.databaseInitFunction, options.initResultHashFunction, options.environment, constants);
39
+ this._environment = options.environment;
40
+ }
41
+ /**
42
+ * Construct from an existing IDocumentStore instance.
43
+ */
44
+ static fromDocumentStore(documentStore, environment) {
45
+ const plugin = Object.create(MongoDatabasePlugin.prototype);
46
+ Object.defineProperty(plugin, '_documentStore', {
47
+ value: documentStore,
48
+ writable: false,
49
+ });
50
+ Object.defineProperty(plugin, '_environment', {
51
+ value: environment,
52
+ writable: false,
53
+ });
54
+ Object.defineProperty(plugin, 'name', {
55
+ value: 'mongo-database',
56
+ writable: false,
57
+ });
58
+ Object.defineProperty(plugin, 'version', {
59
+ value: '1.0.0',
60
+ writable: false,
61
+ });
62
+ return plugin;
63
+ }
64
+ // ── IDatabasePlugin contract ──
65
+ /**
66
+ * The IDatabase instance. For Mongo, this is a no-op adapter since
67
+ * the document store manages its own connection lifecycle.
68
+ */
69
+ get database() {
70
+ return (0, no_op_database_1.createNoOpDatabase)();
71
+ }
72
+ get authenticationProvider() {
73
+ return this._authProvider;
74
+ }
75
+ async connect(uri) {
76
+ // Handle dev database setup
77
+ if (this._environment.devDatabase && !this._documentStore.devDatabase) {
78
+ if (this._documentStore.setupDevStore) {
79
+ const devUri = await this._documentStore.setupDevStore();
80
+ if (devUri) {
81
+ uri = devUri;
82
+ }
83
+ }
84
+ }
85
+ const resolvedUri = uri ?? this._environment.mongo?.uri;
86
+ await this._documentStore.connect(resolvedUri);
87
+ }
88
+ async disconnect() {
89
+ await this._documentStore.disconnect();
90
+ if (this._documentStore.devDatabase) {
91
+ await this._documentStore.devDatabase.stop();
92
+ }
93
+ }
94
+ isConnected() {
95
+ return this._documentStore.isConnected();
96
+ }
97
+ async setupDevStore() {
98
+ if (this._documentStore.setupDevStore) {
99
+ const uri = await this._documentStore.setupDevStore();
100
+ return uri ?? '';
101
+ }
102
+ return '';
103
+ }
104
+ async teardownDevStore() {
105
+ if (this._documentStore.devDatabase) {
106
+ await this._documentStore.devDatabase.stop();
107
+ }
108
+ }
109
+ async initializeDevStore() {
110
+ if (this._documentStore.initializeDevStore && this._application) {
111
+ const result = await this._documentStore.initializeDevStore(this._application);
112
+ database_initialization_1.DatabaseInitializationService.printServerInitResults(result, false);
113
+ this._lastInitResult = result;
114
+ return result;
115
+ }
116
+ return undefined;
117
+ }
118
+ /**
119
+ * Get the result of the last initializeDevStore call.
120
+ * Available after start() completes in dev mode.
121
+ */
122
+ get lastInitResult() {
123
+ return this._lastInitResult;
124
+ }
125
+ /**
126
+ * Get the IMongoApplication adapter created during init().
127
+ * This adapter delegates Mongo-specific accessors (db, getModel) to the plugin
128
+ * and everything else to the real application. Use this when constructing
129
+ * services that need IMongoApplication (e.g. UserService, RoleService).
130
+ * Available after init() has been called.
131
+ */
132
+ get mongoApplication() {
133
+ return this._application;
134
+ }
135
+ /**
136
+ * Called by PluginManager during Application.start().
137
+ * Wires up the Mongoose-backed authentication provider.
138
+ */
139
+ async init(app) {
140
+ // Wire up auth provider if the app exposes IMongoApplication-compatible interface
141
+ // We create a lightweight adapter that satisfies IMongoApplication
142
+ const mongoAppAdapter = this.createMongoAppAdapter(app);
143
+ // Store the adapter (not the raw app) so that initializeDevStore
144
+ // passes an IMongoApplication with getModel/db to the init function.
145
+ this._application = mongoAppAdapter;
146
+ this._authProvider = new mongo_authentication_provider_1.MongoAuthenticationProvider(mongoAppAdapter);
147
+ // Set the auth provider on the application
148
+ if ('authProvider' in app && app.authProvider === undefined) {
149
+ app.authProvider = this._authProvider;
150
+ }
151
+ }
152
+ async stop() {
153
+ await this.disconnect();
154
+ }
155
+ // ── Mongo-specific accessors ──
156
+ /**
157
+ * Get the Mongoose database instance.
158
+ */
159
+ get db() {
160
+ if (this._documentStore instanceof mongoose_document_store_1.MongooseDocumentStore) {
161
+ return this._documentStore.db;
162
+ }
163
+ throw new suite_core_lib_1.TranslatableSuiteError(suite_core_lib_1.SuiteCoreStringKey.Admin_Error_DatabaseNotConnectedYet);
164
+ }
165
+ /**
166
+ * Get the schema map for all models.
167
+ */
168
+ get schemaMap() {
169
+ const map = this._documentStore.schemaMap;
170
+ if (!map) {
171
+ throw new suite_core_lib_1.TranslatableSuiteError(suite_core_lib_1.SuiteCoreStringKey.Admin_Error_SchemaMapIsNotLoadedYet);
172
+ }
173
+ return map;
174
+ }
175
+ /**
176
+ * Get the in-memory MongoDB instance (if any).
177
+ */
178
+ get devDatabase() {
179
+ return this._documentStore.devDatabase;
180
+ }
181
+ /**
182
+ * Get the underlying document store.
183
+ */
184
+ get documentStore() {
185
+ return this._documentStore;
186
+ }
187
+ /**
188
+ * Get a Mongoose model by name.
189
+ */
190
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
191
+ getModel(modelName) {
192
+ return this._documentStore.getModel(modelName);
193
+ }
194
+ /**
195
+ * Creates a lightweight adapter that satisfies IMongoApplication
196
+ * by delegating to the plugin for Mongo-specific accessors and
197
+ * to the real app for everything else.
198
+ */
199
+ createMongoAppAdapter(app) {
200
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
201
+ const plugin = this;
202
+ return {
203
+ get environment() {
204
+ return app.environment;
205
+ },
206
+ get constants() {
207
+ return app.constants;
208
+ },
209
+ get ready() {
210
+ return app.ready;
211
+ },
212
+ get services() {
213
+ return app.services;
214
+ },
215
+ get plugins() {
216
+ return app.plugins;
217
+ },
218
+ get database() {
219
+ return app.database;
220
+ },
221
+ get authProvider() {
222
+ return app.authProvider;
223
+ },
224
+ start: () => app.start(),
225
+ get db() {
226
+ return plugin.db;
227
+ },
228
+ /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
229
+ getModel: (modelName) => plugin.getModel(modelName),
230
+ };
231
+ }
232
+ }
233
+ exports.MongoDatabasePlugin = MongoDatabasePlugin;
234
+ //# sourceMappingURL=mongo-database-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongo-database-plugin.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/plugins/mongo-database-plugin.ts"],"names":[],"mappings":"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"}
@@ -9,11 +9,11 @@ import { IBaseDocument } from '../documents/base';
9
9
  import { Environment } from '../environment';
10
10
  import { IApplication } from '../interfaces/application';
11
11
  import { IConstants } from '../interfaces/constants';
12
- import { IDocumentStore } from '../interfaces/document-store';
12
+ import { IDocumentStore } from '../interfaces/mongoose-document-store';
13
13
  import { IFailableResult } from '../interfaces/failable-result';
14
14
  import { SchemaMap } from '../types';
15
15
  import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
16
- import type { MongoApplicationBase } from '../mongo-application-base';
16
+ import type { IMongoApplication } from '../interfaces/mongo-application';
17
17
  /**
18
18
  * Mongoose implementation of IDocumentStore.
19
19
  * Extracts and preserves the existing mongoose logic from BaseApplication.
@@ -55,7 +55,7 @@ export declare class MongooseDocumentStore<TID extends PlatformID, TModelDocs ex
55
55
  * Application constants
56
56
  */
57
57
  private readonly _constants;
58
- constructor(schemaMapFactory: (connection: mongoose.Connection) => SchemaMap<TID, TModelDocs>, databaseInitFunction: (application: MongoApplicationBase<TID, TModelDocs, TInitResults>) => Promise<IFailableResult<TInitResults>>, initResultHashFunction: (initResults: TInitResults) => string, environment: Environment<TID>, constants?: TConstants);
58
+ constructor(schemaMapFactory: (connection: mongoose.Connection) => SchemaMap<TID, TModelDocs>, databaseInitFunction: (application: IMongoApplication<TID>) => Promise<IFailableResult<TInitResults>>, initResultHashFunction: (initResults: TInitResults) => string, environment: Environment<TID>, constants?: TConstants);
59
59
  /**
60
60
  * Get the underlying mongoose instance (for backward compatibility).
61
61
  */
@@ -1 +1 @@
1
- {"version":3,"file":"mongoose-document-store.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/mongoose-document-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mongoose-document-store.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/mongoose-document-store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mongoose-document-store.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/mongoose-document-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mongoose-document-store.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/mongoose-document-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { createNoOpDatabase } from './no-op-database';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createNoOpDatabase = void 0;
4
+ var no_op_database_1 = require("./no-op-database");
5
+ Object.defineProperty(exports, "createNoOpDatabase", { enumerable: true, get: function () { return no_op_database_1.createNoOpDatabase; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/utils/index.ts"],"names":[],"mappings":";;;AAAA,mDAAsD;AAA7C,oHAAA,kBAAkB,OAAA"}
@@ -0,0 +1,8 @@
1
+ import type { IDatabase } from '../interfaces/storage';
2
+ /**
3
+ * Creates a no-op IDatabase instance.
4
+ * Used when no database plugin is registered or when the plugin
5
+ * manages its own connection lifecycle (e.g., MongoDatabasePlugin).
6
+ */
7
+ export declare function createNoOpDatabase(): IDatabase;
8
+ //# sourceMappingURL=no-op-database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-op-database.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/utils/no-op-database.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,SAAS,CA2B9C"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createNoOpDatabase = createNoOpDatabase;
4
+ /**
5
+ * Creates a no-op IDatabase instance.
6
+ * Used when no database plugin is registered or when the plugin
7
+ * manages its own connection lifecycle (e.g., MongoDatabasePlugin).
8
+ */
9
+ function createNoOpDatabase() {
10
+ return {
11
+ collection() {
12
+ throw new Error('No database plugin registered');
13
+ },
14
+ startSession() {
15
+ throw new Error('No database plugin registered');
16
+ },
17
+ withTransaction() {
18
+ throw new Error('No database plugin registered');
19
+ },
20
+ listCollections() {
21
+ return [];
22
+ },
23
+ async dropCollection() {
24
+ return false;
25
+ },
26
+ async connect() {
27
+ // no-op
28
+ },
29
+ async disconnect() {
30
+ // no-op
31
+ },
32
+ isConnected() {
33
+ return false;
34
+ },
35
+ };
36
+ }
37
+ //# sourceMappingURL=no-op-database.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-op-database.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/utils/no-op-database.ts"],"names":[],"mappings":";;AAOA,gDA2BC;AAhCD;;;;GAIG;AACH,SAAgB,kBAAkB;IAChC,OAAO;QACL,UAAU;YACR,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,YAAY;YACV,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,eAAe;YACb,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,eAAe;YACb,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,KAAK,CAAC,cAAc;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK,CAAC,OAAO;YACX,QAAQ;QACV,CAAC;QACD,KAAK,CAAC,UAAU;YACd,QAAQ;QACV,CAAC;QACD,WAAW;YACT,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"application-concrete.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/application-concrete.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAE7D,OAAO,EAAa,SAAS,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,aAAa,EAAgB,MAAM,WAAW,CAAC;AAIxD;;;;;GAKG;AACH,qBAAa,mBAAmB,CAC9B,GAAG,SAAS,UAAU,GAAG,MAAM,CAC/B,SAAQ,WAAW,CACnB,iBAAiB,CAAC,GAAG,CAAC,EACtB,aAAa,EACb,GAAG,EACH,WAAW,CAAC,GAAG,CAAC,EAChB,UAAU,EACV,SAAS,CAAC,GAAG,CAAC,CACf;IACC;;;;;OAKG;gBAED,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,EAC7B,SAAS,GAAE,UAA+B;CAqB7C"}
@@ -1,34 +0,0 @@
1
- "use strict";
2
- /**
3
- * @fileoverview Concrete implementation of the Application class for testing and development.
4
- * @module application-concrete
5
- */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.ApplicationConcrete = void 0;
8
- const application_1 = require("./application");
9
- const constants_1 = require("./constants");
10
- const registry_1 = require("./registry");
11
- const routers_1 = require("./routers");
12
- const schemas_1 = require("./schemas");
13
- const services_1 = require("./services");
14
- const dummy_email_service_1 = require("./services/dummy-email-service");
15
- /**
16
- * Concrete implementation of the Application class for testing and development purposes.
17
- * Provides a ready-to-use application instance with default configuration and dummy email service.
18
- *
19
- * @template TID - Platform ID type (Buffer, ObjectId, etc.)
20
- */
21
- class ApplicationConcrete extends application_1.Application {
22
- /**
23
- * Creates a new concrete application instance.
24
- *
25
- * @param environment - Application environment configuration
26
- * @param constants - Application constants (defaults to LocalhostConstants)
27
- */
28
- constructor(environment, constants = constants_1.LocalhostConstants) {
29
- super(environment, () => new routers_1.ApiRouter(this), schemas_1.getSchemaMap, services_1.DatabaseInitializationService.initUserDb.bind(services_1.DatabaseInitializationService), services_1.DatabaseInitializationService.serverInitResultHash.bind(services_1.DatabaseInitializationService), undefined, constants, (apiRouter) => new routers_1.AppRouter(apiRouter), undefined);
30
- registry_1.emailServiceRegistry.setService(new dummy_email_service_1.DummyEmailService(this));
31
- }
32
- }
33
- exports.ApplicationConcrete = ApplicationConcrete;
34
- //# sourceMappingURL=application-concrete.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"application-concrete.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/application-concrete.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,+CAA4C;AAC5C,2CAAiD;AAGjD,yCAAkD;AAClD,uCAAiD;AACjD,uCAAwD;AACxD,yCAA2D;AAC3D,wEAAmE;AAEnE;;;;;GAKG;AACH,MAAa,mBAEX,SAAQ,yBAOT;IACC;;;;;OAKG;IACH,YACE,WAA6B,EAC7B,YAAwB,8BAAkB;QAE1C,KAAK,CACH,WAAW,EACX,GAAG,EAAE,CAAC,IAAI,mBAAS,CAAC,IAAI,CAAC,EACzB,sBAAY,EACZ,wCAA6B,CAAC,UAAU,CAAC,IAAI,CAC3C,wCAA6B,CAC9B,EACD,wCAA6B,CAAC,oBAAoB,CAAC,IAAI,CACrD,wCAA6B,CAC9B,EACD,SAAS,EACT,SAAS,EACT,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,mBAAS,CAAC,SAAS,CAAC,EACvC,SAAS,CACV,CAAC;QACF,+BAAoB,CAAC,UAAU,CAC7B,IAAI,uCAAiB,CAAmB,IAAI,CAAC,CAC9C,CAAC;IACJ,CAAC;CACF;AAvCD,kDAuCC"}
@@ -1,81 +0,0 @@
1
- /**
2
- * @fileoverview MongoDB/Mongoose-specific application base class.
3
- * Extends BaseApplication with IDocumentStore support, Mongoose model access,
4
- * schema maps, and dev database management.
5
- * @module mongo-application-base
6
- */
7
- import type { IDatabase } from './interfaces/storage';
8
- import { Model } from '@digitaldefiance/mongoose-types';
9
- import mongoose from '@digitaldefiance/mongoose-types';
10
- import { MongoMemoryReplSet } from 'mongodb-memory-server';
11
- import { BaseApplication } from './application-base';
12
- import { IBaseDocument } from './documents/base';
13
- import { Environment } from './environment';
14
- import { IMongoApplication } from './interfaces/mongo-application';
15
- import { IConstants } from './interfaces/constants';
16
- import { IDocumentStore } from './interfaces/document-store';
17
- import { SchemaMap } from './types';
18
- import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
19
- /**
20
- * MongoDB/Mongoose-specific application base class.
21
- * Extends BaseApplication with legacy IDocumentStore support for backward
22
- * compatibility. Provides Mongoose-specific accessors: db, schemaMap,
23
- * devDatabase, getModel().
24
- *
25
- * Accepts either an IDatabase or an IDocumentStore in the constructor.
26
- * When an IDocumentStore is provided, a no-op IDatabase adapter is used
27
- * for the parent class, and the document store handles all database operations.
28
- */
29
- export declare class MongoApplicationBase<TID extends PlatformID, TModelDocs extends Record<string, IBaseDocument<any, TID>>, TInitResults, TConstants extends IConstants = IConstants> extends BaseApplication<TID, TInitResults, TConstants> implements IMongoApplication<TID> {
30
- /**
31
- * The injected document store handling all database operations.
32
- * Set when a legacy IDocumentStore is passed to the constructor.
33
- * @deprecated Prefer IDatabase for new code.
34
- */
35
- protected readonly _documentStore: IDocumentStore<TID, TModelDocs> | undefined;
36
- /**
37
- * Whether the constructor received an IDocumentStore (legacy path).
38
- */
39
- protected readonly _isLegacyDocumentStore: boolean;
40
- /**
41
- * Schema map for all models, delegated to the document store.
42
- * Only available when a legacy IDocumentStore is used.
43
- */
44
- get schemaMap(): SchemaMap<TID, TModelDocs>;
45
- /**
46
- * Get the connected MongoDB database instance.
47
- * @deprecated Use database (IDatabase) or getCollection instead for storage-agnostic access.
48
- */
49
- get db(): typeof mongoose;
50
- /**
51
- * Get the injected document store.
52
- * @deprecated Prefer database (IDatabase) for new code.
53
- */
54
- get documentStore(): IDocumentStore<TID, TModelDocs> | undefined;
55
- /**
56
- * Get the in-memory MongoDB instance (if any), delegated to the document store.
57
- * Only available when a legacy IDocumentStore is used.
58
- */
59
- get devDatabase(): MongoMemoryReplSet | undefined;
60
- constructor(environment: Environment<TID>, databaseOrStore: IDatabase | IDocumentStore<TID, TModelDocs>, constants?: TConstants);
61
- /**
62
- * Start the application.
63
- * When using a legacy IDocumentStore, handles dev database setup and
64
- * delegates connection to the document store.
65
- * When using IDatabase, delegates to the parent class.
66
- */
67
- start(mongoUri?: string, delayReady?: boolean): Promise<void>;
68
- /**
69
- * Stop the application.
70
- * When using a legacy IDocumentStore, delegates disconnection to the store.
71
- * When using IDatabase, delegates to the parent class.
72
- */
73
- stop(): Promise<void>;
74
- /**
75
- * Get a model by name, delegated to the legacy document store.
76
- * @deprecated Use getCollection<T>(name) with IDatabase instead.
77
- * @param modelName Name of the model
78
- */
79
- getModel<T extends IBaseDocument<any, TID>>(modelName: string): Model<T>;
80
- }
81
- //# sourceMappingURL=mongo-application-base.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mongo-application-base.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-express-suite/src/mongo-application-base.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AAMvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAiBlE;;;;;;;;;GASG;AACH,qBAAa,oBAAoB,CAC/B,GAAG,SAAS,UAAU,EAEtB,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAC1D,YAAY,EACZ,UAAU,SAAS,UAAU,GAAG,UAAU,CAE1C,SAAQ,eAAe,CAAC,GAAG,EAAE,YAAY,EAAE,UAAU,CACrD,YAAW,iBAAiB,CAAC,GAAG,CAAC;IAEjC;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,cAAc,EAC7B,cAAc,CAAC,GAAG,EAAE,UAAU,CAAC,GAC/B,SAAS,CAAC;IAEd;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,OAAO,CAAC;IAEnD;;;OAGG;IACH,IAAW,SAAS,IAAI,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAajD;IAED;;;OAGG;IACH,IAAW,EAAE,IAAI,OAAO,QAAQ,CAO/B;IAED;;;OAGG;IACH,IAAW,aAAa,IAAI,cAAc,CAAC,GAAG,EAAE,UAAU,CAAC,GAAG,SAAS,CAEtE;IAED;;;OAGG;IACH,IAAW,WAAW,IAAI,kBAAkB,GAAG,SAAS,CAEvD;gBAGC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,EAC7B,eAAe,EAAE,SAAS,GAAG,cAAc,CAAC,GAAG,EAAE,UAAU,CAAC,EAC5D,SAAS,GAAE,UAAoC;IAgBjD;;;;;OAKG;IACmB,KAAK,CACzB,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,OAAO,GACnB,OAAO,CAAC,IAAI,CAAC;IAqDhB;;;;OAIG;IACmB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3C;;;;OAIG;IAEI,QAAQ,CAAC,CAAC,SAAS,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAC/C,SAAS,EAAE,MAAM,GAChB,KAAK,CAAC,CAAC,CAAC;CAQZ"}