@nxgt/shared-mongo 1.0.1 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map
CHANGED
|
@@ -62,9 +62,9 @@
|
|
|
62
62
|
"import { REGEX } from '@nxgt/shared/helpers';\nimport { isNil } from 'lodash';\nimport type { ValidateOpts } from 'mongoose';\nimport type { ValidatorOptions } from '../validation.types';\nimport { parseValidatorOptions } from '../validation.utils';\n\nexport function url(args: ValidatorOptions<{ domains?: string[] }>) {\n\tconst options = parseValidatorOptions(args);\n\n\treturn {\n\t\tmessage: options.message?.(\n\t\t\t{\n\t\t\t\tdomains: options.value.domains?.join(', '),\n\t\t\t\tnumberOfDomains: options.value.domains?.length ?? 0,\n\t\t\t},\n\t\t\t'validation.errors.url',\n\t\t),\n\t\tvalidator(value) {\n\t\t\treturn (\n\t\t\t\tisNil(value) ||\n\t\t\t\t(typeof value === 'string' &&\n\t\t\t\t\tREGEX.url.test(value) &&\n\t\t\t\t\t(options.value.domains?.length\n\t\t\t\t\t\t? options.value.domains.filter((domain) => value.includes(domain))\n\t\t\t\t\t\t\t\t.length === options.value.domains.length\n\t\t\t\t\t\t: true))\n\t\t\t);\n\t\t},\n\t} satisfies ValidateOpts<object, object>;\n}\n",
|
|
63
63
|
"import { REGEX } from '@nxgt/shared/helpers';\nimport { isNil } from 'lodash';\nimport type { ValidateOpts } from 'mongoose';\nimport type { ValidatorOptions } from '../validation.types';\nimport { parseValidatorOptions } from '../validation.utils';\n\nexport function uuid(args: ValidatorOptions<true>) {\n\tconst options = parseValidatorOptions(args);\n\n\treturn {\n\t\tmessage: options.message?.({}, 'validation.errors.uuid'),\n\t\tvalidator(value) {\n\t\t\treturn (\n\t\t\t\tisNil(value) || (typeof value === 'string' && REGEX.uuid.test(value))\n\t\t\t);\n\t\t},\n\t} satisfies ValidateOpts<object, object>;\n}\n",
|
|
64
64
|
"import { REGEX } from '@nxgt/shared/helpers';\nimport { isNil } from 'lodash';\nimport type { ValidateOpts } from 'mongoose';\nimport type { ValidatorOptions } from '../validation.types';\nimport { parseValidatorOptions } from '../validation.utils';\n\nexport function zipCode(args: ValidatorOptions<true>) {\n\tconst options = parseValidatorOptions(args);\n\n\treturn {\n\t\tmessage: options.message?.({}, 'validation.errors.zip-code'),\n\t\tvalidator(value) {\n\t\t\treturn (\n\t\t\t\tisNil(value) || (typeof value === 'string' && REGEX.zipCode.test(value))\n\t\t\t);\n\t\t},\n\t} satisfies ValidateOpts<object, object>;\n}\n",
|
|
65
|
-
"import type { LocaleKey } from '@nxgt/i18n';\nimport type { Principal } from '@nxgt/shared';\nimport { cleanObject } from '@nxgt/shared/helpers';\nimport { CustomException } from '@nxgt/shared-exceptions';\nimport type { Mutex } from 'async-mutex';\nimport type { HydratedDocument, Model, QueryFilter } from 'mongoose';\nimport { runWithChangesListening } from '../audit';\nimport { integrityRegistry } from '../integrity';\n\ntype InferDocType<D extends HydratedDocument<any>> =\n\tD extends HydratedDocument<infer T> ? T : D;\n\nexport abstract class MongoCrudService<\n\tD extends HydratedDocument<any>,\n\tCInput = any,\n\tUInput = any,\n> {\n\tprotected abstract model: Model<D>;\n\n\t/**\n\t * Additional models to watch in the change stream (e.g. child models\n\t * that are cascade-deleted alongside the parent).\n\t */\n\tprotected extraModels: Model<any>[] = [];\n\n\tprotected abstract mutex: Mutex;\n\n\tconstructor(readonly principal?:
|
|
65
|
+
"import type { LocaleKey } from '@nxgt/i18n';\nimport type { Principal, TokenPrincipal } from '@nxgt/shared';\nimport { cleanObject } from '@nxgt/shared/helpers';\nimport { CustomException } from '@nxgt/shared-exceptions';\nimport type { Mutex } from 'async-mutex';\nimport type { HydratedDocument, Model, QueryFilter } from 'mongoose';\nimport { runWithChangesListening } from '../audit';\nimport { integrityRegistry } from '../integrity';\n\ntype InferDocType<D extends HydratedDocument<any>> =\n\tD extends HydratedDocument<infer T> ? T : D;\n\n/**\n * Who the caller is, as far as this class is concerned. It only ever reads\n * `name`, which both principal shapes carry.\n *\n * `Principal` and `TokenPrincipal` describe the same caller from two sources —\n * the gateway's `X-User-*` headers and the access token — and they disagree on\n * the identifier: `id` on one, `uid`/`sub` on the other. A subclass that reads\n * more than `name` says which one it means through `P`.\n */\nexport type CrudPrincipal = Principal | TokenPrincipal;\n\nexport abstract class MongoCrudService<\n\tD extends HydratedDocument<any>,\n\tCInput = any,\n\tUInput = any,\n\tP extends CrudPrincipal = Principal,\n> {\n\tprotected abstract model: Model<D>;\n\n\t/**\n\t * Additional models to watch in the change stream (e.g. child models\n\t * that are cascade-deleted alongside the parent).\n\t */\n\tprotected extraModels: Model<any>[] = [];\n\n\tprotected abstract mutex: Mutex;\n\n\tconstructor(readonly principal?: P | null) {}\n\n\tprotected get changesOptions() {\n\t\treturn {\n\t\t\tmodels: [this.model, ...this.extraModels],\n\t\t\tauthor: this.principal?.name || 'system',\n\t\t\tmutex: this.mutex,\n\t\t};\n\t}\n\n\t// ─── Query ────────────────────────────────────────────────────────────────\n\n\tasync find(filter: QueryFilter<D> = {}): Promise<D[]> {\n\t\treturn this.model.find(filter).exec() as Promise<D[]>;\n\t}\n\n\t/**\n\t * Fetches one document by id.\n\t *\n\t * Overriding this to point at another model is fine — that is what the\n\t * hierarchical services do, and `update()` reads through\n\t * `findWritableById()` precisely so a read-only view can be used here.\n\t * Overriding it to reshape the result is not: `create()` returns what\n\t * this hands back, so anything but a hydrated document breaks writes on\n\t * that service. Strip or map fields at the serialization boundary\n\t * instead.\n\t */\n\tasync findById(id: string): Promise<D> {\n\t\tconst entity = await this.model.findById(id).exec();\n\t\tif (!entity) {\n\t\t\tthrow CustomException.notFound({\n\t\t\t\tmessage: `${this.model.collection.name}.errors.not-found`,\n\t\t\t});\n\t\t}\n\t\treturn entity as D;\n\t}\n\n\t// ─── Writes ───────────────────────────────────────────────────────────────\n\n\tasync create(input: CInput): Promise<D> {\n\t\tconst entity = await runWithChangesListening(async () => {\n\t\t\tawait this.beforeCreate(input);\n\n\t\t\tconst data = await this.buildCreateData(input);\n\n\t\t\treturn this.model.create({\n\t\t\t\t...data,\n\t\t\t\tcreatedBy: this.principal?.name,\n\t\t\t\tlastModifiedBy: this.principal?.name,\n\t\t\t} as any);\n\t\t}, this.changesOptions);\n\n\t\treturn this.findById((entity as any).id);\n\t}\n\n\t/**\n\t * The document `update()` mutates and saves.\n\t *\n\t * Deliberately not `findById()`: a service is free to point that at a\n\t * *view* (`HierarchicalDirectoryModel`, `HierarchicalTypologyModel`) to\n\t * get materialised `ancestors`, and Mongo refuses to save a document\n\t * loaded from one — \"Namespace x.y is a view, not a collection\". Writes\n\t * therefore go through `this.model`, which is the collection by\n\t * definition. For a service whose `findById` override only changes the\n\t * not-found message, this loads exactly the same document.\n\t */\n\tprotected async findWritableById(id: string): Promise<D> {\n\t\tconst entity = await this.model.findById(id).exec();\n\t\tif (!entity) {\n\t\t\tthrow CustomException.notFound({\n\t\t\t\tmessage: `${this.model.collection.name}.errors.not-found`,\n\t\t\t});\n\t\t}\n\t\treturn entity as D;\n\t}\n\n\tasync update(id: string, input: UInput): Promise<D> {\n\t\treturn runWithChangesListening(async () => {\n\t\t\tconst doc = await this.findWritableById(id);\n\t\t\tawait this.beforeUpdate(doc, input);\n\t\t\tconst data = await this.buildUpdateData(doc, input);\n\n\t\t\tObject.assign(\n\t\t\t\tdoc as any,\n\t\t\t\tcleanObject({\n\t\t\t\t\t...data,\n\t\t\t\t\tlastModifiedBy: this.principal?.name,\n\t\t\t\t}),\n\t\t\t);\n\t\t\tawait (doc as any).save();\n\n\t\t\t// Read back through `findById()`, exactly as `create()` does: the\n\t\t\t// document just saved came from the collection, so on a service\n\t\t\t// backed by a view it would answer without the fields the view\n\t\t\t// materialises.\n\t\t\treturn this.findById(id);\n\t\t}, this.changesOptions);\n\t}\n\n\t// ─── Deletion ─────────────────────────────────────────────────────────────\n\n\t/**\n\t * Deletion flow:\n\t * 1. `beforeDeleteMany` hook — custom pre-checks (outside transaction)\n\t * 2. `validateDeletion` — all integrity blockers in parallel (outside transaction)\n\t * 3. `runWithChangesListening`:\n\t * a. `runCascades` — registered cascade handlers (inside transaction)\n\t * b. `model.deleteMany` — parent documents deleted (inside transaction)\n\t */\n\tasync deleteMany(ids: string[]): Promise<void> {\n\t\tawait runWithChangesListening(async () => {\n\t\t\tawait this.beforeDeleteMany(ids);\n\t\t\tawait integrityRegistry.validateDeletion(this.model.modelName, ids);\n\n\t\t\tawait integrityRegistry.runCascades(this.model.modelName, ids);\n\t\t\treturn this.model.deleteMany({ _id: { $in: ids } }).exec();\n\t\t}, this.changesOptions);\n\t}\n\n\tasync delete(id: string): Promise<void> {\n\t\tawait this.model.ensureExists(\n\t\t\t{ _id: id },\n\t\t\t{\n\t\t\t\tmessage: `${this.model.collection.name}.errors.not-found` as LocaleKey,\n\t\t\t},\n\t\t);\n\t\tawait this.deleteMany([id]);\n\t}\n\n\t// ─── Hooks ────────────────────────────────────────────────────────────────\n\n\t/**\n\t * Override to customize the data passed to `model.create()`.\n\t * Default: spread input as-is.\n\t */\n\tprotected buildCreateData(\n\t\tinput: CInput,\n\t): Promise<Partial<InferDocType<D>>> | Partial<InferDocType<D>> {\n\t\treturn input as unknown as Partial<InferDocType<D>>;\n\t}\n\n\t/**\n\t * Override to customize the fields applied to the document during update.\n\t * Default: spread input as-is.\n\t */\n\tprotected buildUpdateData(\n\t\t_doc: D,\n\t\tinput: UInput,\n\t): Promise<Partial<InferDocType<D>>> | Partial<InferDocType<D>> {\n\t\treturn input as unknown as Partial<InferDocType<D>>;\n\t}\n\n\t/**\n\t * Called before integrity validation and the deletion transaction.\n\t * Override to add pre-delete checks (e.g. status guards).\n\t */\n\tprotected async beforeDeleteMany(_ids: string[]): Promise<void> {}\n\n\t/**\n\t * Called inside the create transaction, before `model.create()`.\n\t * Override to add pre-create guards (e.g. uniqueness or status checks).\n\t * The raw input is passed in case the check depends on it.\n\t */\n\tprotected async beforeCreate(_input: CInput): Promise<void> {}\n\n\t/**\n\t * Called inside the update transaction, after `findById`, before\n\t * `buildUpdateData`. Override to add pre-update guards (e.g. status locks).\n\t * Receives the already-fetched document — no extra DB round-trip needed.\n\t */\n\tprotected async beforeUpdate(_doc: D, _input: UInput): Promise<void> {}\n}\n"
|
|
66
66
|
],
|
|
67
|
-
"mappings": "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",
|
|
67
|
+
"mappings": "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",
|
|
68
68
|
"debugId": "1E0713C2F630D3AD64756E2164756E21",
|
|
69
69
|
"names": []
|
|
70
70
|
}
|
|
@@ -1,9 +1,19 @@
|
|
|
1
|
-
import type { Principal } from '@nxgt/shared';
|
|
1
|
+
import type { Principal, TokenPrincipal } from '@nxgt/shared';
|
|
2
2
|
import type { Mutex } from 'async-mutex';
|
|
3
3
|
import type { HydratedDocument, Model, QueryFilter } from 'mongoose';
|
|
4
4
|
type InferDocType<D extends HydratedDocument<any>> = D extends HydratedDocument<infer T> ? T : D;
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Who the caller is, as far as this class is concerned. It only ever reads
|
|
7
|
+
* `name`, which both principal shapes carry.
|
|
8
|
+
*
|
|
9
|
+
* `Principal` and `TokenPrincipal` describe the same caller from two sources —
|
|
10
|
+
* the gateway's `X-User-*` headers and the access token — and they disagree on
|
|
11
|
+
* the identifier: `id` on one, `uid`/`sub` on the other. A subclass that reads
|
|
12
|
+
* more than `name` says which one it means through `P`.
|
|
13
|
+
*/
|
|
14
|
+
export type CrudPrincipal = Principal | TokenPrincipal;
|
|
15
|
+
export declare abstract class MongoCrudService<D extends HydratedDocument<any>, CInput = any, UInput = any, P extends CrudPrincipal = Principal> {
|
|
16
|
+
readonly principal?: (P | null) | undefined;
|
|
7
17
|
protected abstract model: Model<D>;
|
|
8
18
|
/**
|
|
9
19
|
* Additional models to watch in the change stream (e.g. child models
|
|
@@ -11,7 +21,7 @@ export declare abstract class MongoCrudService<D extends HydratedDocument<any>,
|
|
|
11
21
|
*/
|
|
12
22
|
protected extraModels: Model<any>[];
|
|
13
23
|
protected abstract mutex: Mutex;
|
|
14
|
-
constructor(principal?: (
|
|
24
|
+
constructor(principal?: (P | null) | undefined);
|
|
15
25
|
protected get changesOptions(): {
|
|
16
26
|
models: (Model<any, {}, {}, {}, any, any, any> | Model<D, {}, {}, {}, import("mongoose").IfAny<D, any, import("mongoose").Document<unknown, {}, D, {}, import("mongoose").DefaultSchemaOptions> & import("mongoose").Require_id<D> & {
|
|
17
27
|
__v: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crud.service.d.ts","sourceRoot":"","sources":["../../src/services/crud.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"crud.service.d.ts","sourceRoot":"","sources":["../../src/services/crud.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAIrE,KAAK,YAAY,CAAC,CAAC,SAAS,gBAAgB,CAAC,GAAG,CAAC,IAChD,CAAC,SAAS,gBAAgB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE7C;;;;;;;;GAQG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,cAAc,CAAC;AAEvD,8BAAsB,gBAAgB,CACrC,CAAC,SAAS,gBAAgB,CAAC,GAAG,CAAC,EAC/B,MAAM,GAAG,GAAG,EACZ,MAAM,GAAG,GAAG,EACZ,CAAC,SAAS,aAAa,GAAG,SAAS;IAYvB,QAAQ,CAAC,SAAS,CAAC,GAAE,CAAC,GAAG,IAAI;IAVzC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC;;;OAGG;IACH,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAM;IAEzC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;gBAEX,SAAS,CAAC,GAAE,CAAC,GAAG,IAAI,aAAA;IAEzC,SAAS,KAAK,cAAc;;;;;;MAM3B;IAIK,IAAI,CAAC,MAAM,GAAE,WAAW,CAAC,CAAC,CAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAIrD;;;;;;;;;;OAUG;IACG,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAYhC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAgBvC;;;;;;;;;;OAUG;cACa,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAUlD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAyBnD;;;;;;;OAOG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAUxC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYvC;;;OAGG;IACH,SAAS,CAAC,eAAe,CACxB,KAAK,EAAE,MAAM,GACX,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAI/D;;;OAGG;IACH,SAAS,CAAC,eAAe,CACxB,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,MAAM,GACX,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAI/D;;;OAGG;cACa,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAE/D;;;;OAIG;cACa,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAE3D;;;;OAIG;cACa,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CACpE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nxgt/shared-mongo",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.1",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -44,10 +44,10 @@
|
|
|
44
44
|
]
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@nxgt/i18n": "1.0.0",
|
|
48
|
-
"@nxgt/shared": "1.0.0",
|
|
49
|
-
"@nxgt/shared-logging": "1.0.0",
|
|
50
|
-
"@nxgt/shared-exceptions": "1.0.0",
|
|
47
|
+
"@nxgt/i18n": "^1.0.0",
|
|
48
|
+
"@nxgt/shared": "^1.0.0",
|
|
49
|
+
"@nxgt/shared-logging": "^1.0.0",
|
|
50
|
+
"@nxgt/shared-exceptions": "^1.0.0",
|
|
51
51
|
"async-mutex": "^0.5.0",
|
|
52
52
|
"i18next": "^26.3.6",
|
|
53
53
|
"just-diff": "^6.0.2",
|