@smartsoft001/mongo 2.153.0 → 2.155.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smartsoft001/mongo",
3
- "version": "2.153.0",
3
+ "version": "2.155.0",
4
4
  "type": "commonjs",
5
5
  "main": "./src/index.js",
6
6
  "typings": "./src/index.d.ts",
@@ -25,10 +25,10 @@
25
25
  "homepage": "https://github.com/emiljuchnikowski/smartsoft#readme",
26
26
  "peerDependencies": {
27
27
  "@nestjs/common": "^11.1.5",
28
- "@smartsoft001/domain-core": "2.153.0",
29
- "@smartsoft001/models": "2.153.0",
30
- "@smartsoft001/users": "2.153.0",
31
- "@smartsoft001/utils": "2.153.0",
28
+ "@smartsoft001/domain-core": "2.155.0",
29
+ "@smartsoft001/models": "2.155.0",
30
+ "@smartsoft001/users": "2.155.0",
31
+ "@smartsoft001/utils": "2.155.0",
32
32
  "mongodb": "^7.5.0",
33
33
  "rxjs": "^7.8.1"
34
34
  },
@@ -1,3 +1,8 @@
1
+ /**
2
+ * Connection settings, registered by the host application as a provider
3
+ * (`{ provide: MongoConfig, useValue: { ... } }`). The class is a DI token
4
+ * and a shape, never constructed with values, hence the definite assignment.
5
+ */
1
6
  export declare class MongoConfig {
2
7
  host?: string;
3
8
  port?: number;
@@ -1,6 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MongoConfig = void 0;
4
+ /**
5
+ * Connection settings, registered by the host application as a provider
6
+ * (`{ provide: MongoConfig, useValue: { ... } }`). The class is a DI token
7
+ * and a shape, never constructed with values, hence the definite assignment.
8
+ */
4
9
  class MongoConfig {
5
10
  host;
6
11
  port;
@@ -1 +1 @@
1
- {"version":3,"file":"mongo.config.js","sourceRoot":"","sources":["../../../../../../packages/shared/mongo/src/lib/mongo.config.ts"],"names":[],"mappings":";;;AAAA,MAAa,WAAW;IACtB,IAAI,CAAU;IACd,IAAI,CAAU;IACd,QAAQ,CAAS;IACjB,QAAQ,CAAU;IAClB,QAAQ,CAAU;IAClB,UAAU,CAAU;IACpB,GAAG,CAAU;IACb,IAAI,CAAO;CACZ;AATD,kCASC"}
1
+ {"version":3,"file":"mongo.config.js","sourceRoot":"","sources":["../../../../../../packages/shared/mongo/src/lib/mongo.config.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,MAAa,WAAW;IACtB,IAAI,CAAU;IACd,IAAI,CAAU;IACd,QAAQ,CAAU;IAClB,QAAQ,CAAU;IAClB,QAAQ,CAAU;IAClB,UAAU,CAAU;IACpB,GAAG,CAAU;IACb,IAAI,CAAO;CACZ;AATD,kCASC"}
@@ -2,6 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getMongoUrl = getMongoUrl;
4
4
  function getMongoUrl(config) {
5
+ if (!config.host) {
6
+ throw new Error('MongoConfig.host is required to build the connection url');
7
+ }
5
8
  let url;
6
9
  if (config.username && config.password)
7
10
  url = `mongodb://${config.username}:${config.password}@${config.host}:${config.port}`;
@@ -1 +1 @@
1
- {"version":3,"file":"mongo.utils.js","sourceRoot":"","sources":["../../../../../../packages/shared/mongo/src/lib/mongo.utils.ts"],"names":[],"mappings":";;AAEA,kCAcC;AAdD,SAAgB,WAAW,CAAC,MAAmB;IAC7C,IAAI,GAAG,CAAC;IACR,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ;QACpC,GAAG,GAAG,aAAa,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;;QACnF,GAAG,GAAG,aAAa,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;IAErD,GAAG,GAAG,GAAG,GAAG,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC;IAE7C,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACnD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAClD,GAAG,GAAG,GAAG,GAAG,WAAW,CAAC;IAC1B,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"mongo.utils.js","sourceRoot":"","sources":["../../../../../../packages/shared/mongo/src/lib/mongo.utils.ts"],"names":[],"mappings":";;AAEA,kCAkBC;AAlBD,SAAgB,WAAW,CAAC,MAAmB;IAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,GAAW,CAAC;IAChB,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ;QACpC,GAAG,GAAG,aAAa,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;;QACnF,GAAG,GAAG,aAAa,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;IAErD,GAAG,GAAG,GAAG,GAAG,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC;IAE7C,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACnD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAClD,GAAG,GAAG,GAAG,GAAG,WAAW,CAAC;IAC1B,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,3 +1,4 @@
1
+ import * as mongo from 'mongodb';
1
2
  import { IEntity, IAttachmentRepository } from '@smartsoft001/domain-core';
2
3
  import { Readable, Stream } from 'stream';
3
4
  import { MongoConfig } from '../mongo.config';
@@ -11,17 +12,17 @@ export declare class MongoAttachmentRepository<T extends IEntity<string>> extend
11
12
  mimeType: string;
12
13
  encoding: string;
13
14
  }, options?: {
14
- streamCallback?: (r: any) => void;
15
+ streamCallback?: (r: mongo.GridFSBucketWriteStream) => void;
15
16
  }): Promise<void>;
16
17
  getInfo(id: string): Promise<{
17
18
  fileName: string;
18
19
  contentType: string;
19
20
  length: number;
20
- }>;
21
- getStream(id: string, options: {
21
+ } | null>;
22
+ getStream(id: string, options?: {
22
23
  start: number;
23
- end: number;
24
- } | undefined): Promise<Readable>;
24
+ end?: number;
25
+ }): Promise<Readable>;
25
26
  delete(id: string): Promise<void>;
26
27
  private getUrl;
27
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"attachment.repository.js","sourceRoot":"","sources":["../../../../../../../packages/shared/mongo/src/lib/repositories/attachment.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attachment.repository.js","sourceRoot":"","sources":["../../../../../../../packages/shared/mongo/src/lib/repositories/attachment.repository.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { Observable } from 'rxjs';
3
3
  import { IEntity, IItemRepository, IItemRepositoryOptions, ISpecification } from '@smartsoft001/domain-core';
4
4
  import { IUser } from '@smartsoft001/users';
5
5
  import { MongoConfig } from '../mongo.config';
6
- import { ItemChangedData } from './interfaces';
6
+ import { ItemChangedData, ItemChangedDataType } from './interfaces';
7
7
  export declare class MongoItemRepository<T extends IEntity<string>> extends IItemRepository<T> {
8
8
  protected config: MongoConfig;
9
9
  constructor(config: MongoConfig);
@@ -17,7 +17,7 @@ export declare class MongoItemRepository<T extends IEntity<string>> extends IIte
17
17
  updatePartialManyByCriteria(criteria: any, set: Partial<T>, user: IUser, repoOptions?: IItemRepositoryOptions): Promise<void>;
18
18
  updatePartialManyBySpecification(spec: ISpecification, set: Partial<T>, user: IUser, repoOptions?: IItemRepositoryOptions): Promise<void>;
19
19
  delete(id: string, user: IUser, repoOptions?: IItemRepositoryOptions): Promise<void>;
20
- getById(id: string, repoOptions?: IItemRepositoryOptions): Promise<T>;
20
+ getById(id: string, repoOptions?: IItemRepositoryOptions): Promise<T | null>;
21
21
  getByCriteria(criteria: any, options?: any): Promise<{
22
22
  data: T[];
23
23
  totalCount: number;
@@ -35,17 +35,21 @@ export declare class MongoItemRepository<T extends IEntity<string>> extends IIte
35
35
  protected getCount(criteria: any, collection: any): Promise<any>;
36
36
  protected getInfo(id: string, collection: Collection<any>): Promise<any>;
37
37
  protected getModelToCreate(item: T, user: IUser): T;
38
- protected mapChangeType(dbType: string): any;
38
+ /** Other operation types (e.g. `replace`) have no item-change equivalent and map to `undefined`, as before. */
39
+ protected mapChangeType(dbType: string): ItemChangedDataType | undefined;
39
40
  protected getModelToUpdate(item: {
40
41
  id: string;
41
42
  }, user: IUser, info: any): {
42
43
  id: string;
43
44
  };
44
45
  protected getModelToResult(item: T): T;
46
+ protected getModelToResult(item: T | null | undefined): T | null;
45
47
  protected getUrl(): string;
46
48
  protected logChange(type: any, item: any, options: any, user: any, error: any): Promise<void>;
47
49
  protected generateSearch(criteria: any): void;
48
50
  protected convertIdInCriteria(criteria: any): void;
49
51
  protected convertRegex(val: string): string;
50
- protected collectionContext<T>(callback: (collection: Collection) => Promise<any>, repoOptions?: IItemRepositoryOptions): Promise<any>;
52
+ /** The collection is part of the connection config; a repository without one cannot address any document. */
53
+ protected getCollectionName(): string;
54
+ protected collectionContext<TResult>(callback: (collection: Collection) => Promise<TResult>, repoOptions?: IItemRepositoryOptions): Promise<TResult>;
51
55
  }
@@ -200,7 +200,7 @@ let MongoItemRepository = class MongoItemRepository extends domain_core_1.IItemR
200
200
  try {
201
201
  client = await mongodb_1.MongoClient.connect(this.getUrl());
202
202
  const db = client.db(this.config.database);
203
- const collection = db.collection(this.config.collection);
203
+ const collection = db.collection(this.getCollectionName());
204
204
  const pipeline = criteria.id
205
205
  ? [
206
206
  {
@@ -211,12 +211,18 @@ let MongoItemRepository = class MongoItemRepository extends domain_core_1.IItemR
211
211
  ]
212
212
  : [];
213
213
  stream = collection.watch(pipeline).on('change', (result) => {
214
+ // Only events about a document are item changes; collection-level
215
+ // events (drop, rename, invalidate) carry no documentKey.
216
+ if (!('documentKey' in result))
217
+ return;
214
218
  observer.next({
215
- id: result['documentKey']['_id'],
219
+ id: result.documentKey._id,
216
220
  type: this.mapChangeType(result.operationType),
217
221
  data: result.operationType === 'update'
218
- ? result['updateDescription']
219
- : this.getModelToResult(result['fullDocument']),
222
+ ? result.updateDescription
223
+ : this.getModelToResult('fullDocument' in result
224
+ ? result.fullDocument
225
+ : undefined),
220
226
  });
221
227
  });
222
228
  }
@@ -265,6 +271,7 @@ let MongoItemRepository = class MongoItemRepository extends domain_core_1.IItemR
265
271
  };
266
272
  return result;
267
273
  }
274
+ /** Other operation types (e.g. `replace`) have no item-change equivalent and map to `undefined`, as before. */
268
275
  mapChangeType(dbType) {
269
276
  const map = {
270
277
  insert: 'create',
@@ -287,6 +294,7 @@ let MongoItemRepository = class MongoItemRepository extends domain_core_1.IItemR
287
294
  return result;
288
295
  }
289
296
  getModelToResult(item) {
297
+ // No document (missing id, or a change event without one) maps to null.
290
298
  if (!item)
291
299
  return null;
292
300
  const result = utils_1.ObjectService.removeTypes(item);
@@ -362,21 +370,25 @@ let MongoItemRepository = class MongoItemRepository extends domain_core_1.IItemR
362
370
  convertRegex(val) {
363
371
  return val.toString().replace(/\*/g, '[*]');
364
372
  }
373
+ /** The collection is part of the connection config; a repository without one cannot address any document. */
374
+ getCollectionName() {
375
+ if (!this.config.collection) {
376
+ throw new Error('MongoConfig.collection is required by MongoItemRepository');
377
+ }
378
+ return this.config.collection;
379
+ }
365
380
  async collectionContext(callback, repoOptions) {
366
- const client = repoOptions?.transaction
367
- ?.connection
368
- ? repoOptions.transaction.connection
369
- : await mongodb_1.MongoClient.connect(this.getUrl());
381
+ // Inside a unit of work the transaction owns the connection and its lifetime.
382
+ const transaction = repoOptions?.transaction;
383
+ const client = transaction?.connection ?? (await mongodb_1.MongoClient.connect(this.getUrl()));
370
384
  const db = client.db(this.config.database);
371
- let result;
372
385
  try {
373
- result = await callback(db.collection(this.config.collection));
386
+ return await callback(db.collection(this.getCollectionName()));
374
387
  }
375
388
  finally {
376
- if (!repoOptions?.transaction)
389
+ if (!transaction)
377
390
  await client.close();
378
391
  }
379
- return result;
380
392
  }
381
393
  };
382
394
  exports.MongoItemRepository = MongoItemRepository;
@@ -1 +1 @@
1
- {"version":3,"file":"item.repository.js","sourceRoot":"","sources":["../../../../../../../packages/shared/mongo/src/lib/repositories/item.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"item.repository.js","sourceRoot":"","sources":["../../../../../../../packages/shared/mongo/src/lib/repositories/item.repository.ts"],"names":[],"mappings":"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"}