@futdevpro/nts-dynamo 1.15.433 → 1.15.434
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/build/_collections/plaintext-field-migration.util.d.ts +29 -0
- package/build/_collections/plaintext-field-migration.util.d.ts.map +1 -0
- package/build/_collections/plaintext-field-migration.util.js +56 -0
- package/build/_collections/plaintext-field-migration.util.js.map +1 -0
- package/build/_models/interfaces/plaintext-field-migration-result.interface.d.ts +10 -0
- package/build/_models/interfaces/plaintext-field-migration-result.interface.d.ts.map +1 -0
- package/build/_models/interfaces/plaintext-field-migration-result.interface.js +3 -0
- package/build/_models/interfaces/plaintext-field-migration-result.interface.js.map +1 -0
- package/build/index.d.ts +2 -0
- package/build/index.d.ts.map +1 -1
- package/build/index.js +2 -0
- package/build/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { DyFM_Metadata } from '@futdevpro/fsm-dynamo';
|
|
2
|
+
import { DyNTS_PlaintextFieldMigrationResult_Interface } from '../_models/interfaces/plaintext-field-migration-result.interface';
|
|
3
|
+
import { DyNTS_DBService } from '../_services/base/db.service';
|
|
4
|
+
/**
|
|
5
|
+
* Encrypts the OLD plaintext values of a field that has just become `encrypt: true`.
|
|
6
|
+
*
|
|
7
|
+
* The field encryption (`DyNTS_FieldEncryption_Util`) encrypts NEW writes only; a value stored before stays plaintext and
|
|
8
|
+
* is returned unchanged on read (only `DYENC1:` envelopes are decrypted) — measured 2026-10-21 (fdp-templates J7). This
|
|
9
|
+
* idempotent migration (run at start-up, or once) rewrites them.
|
|
10
|
+
*
|
|
11
|
+
* - The search filters on the RAW value (not an envelope): after the read-side decryption the two look the same.
|
|
12
|
+
* - The write goes through the DB service's `updateOne` (its `encryptUpdate` encrypts), conditionally on the old value
|
|
13
|
+
* (`{ _id, <field>: <old value> }`, so a concurrent change is not overwritten); `__lastModified` is not touched.
|
|
14
|
+
* - It never throws for a single record — it counts (and logs) the failures.
|
|
15
|
+
*
|
|
16
|
+
* Lifted from `fdp-auth-service` `FAS_PlaintextFieldMigration_Util` (2026-10-13; the terms-acceptance and login-event IP
|
|
17
|
+
* addresses) — the ONE shared implementation (adventor and master-prompter carry their own at-rest migrations too).
|
|
18
|
+
*/
|
|
19
|
+
export declare class DyNTS_PlaintextFieldMigration_Util {
|
|
20
|
+
/**
|
|
21
|
+
* @param dbService the model's DB service (its data params must mark `field` as `encrypt: true`)
|
|
22
|
+
* @param field the top-level field to migrate
|
|
23
|
+
* @param issuer who runs the migration (the write's issuer)
|
|
24
|
+
* @throws `DyNTS-PFM-NOT-ENCRYPTED` when the model does not mark the field `encrypt: true` (the rewrite would store the
|
|
25
|
+
* plaintext again — a silent no-op that looks like a migration)
|
|
26
|
+
*/
|
|
27
|
+
static encryptPlaintext<T extends DyFM_Metadata>(dbService: DyNTS_DBService<T>, field: string, issuer: string): Promise<DyNTS_PlaintextFieldMigrationResult_Interface>;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=plaintext-field-migration.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plaintext-field-migration.util.d.ts","sourceRoot":"","sources":["../../src/_collections/plaintext-field-migration.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGlE,OAAO,EAAE,6CAA6C,EAAE,MAAM,kEAAkE,CAAC;AACjI,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D;;;;;;;;;;;;;;GAcG;AACH,qBAAa,kCAAkC;IAE7C;;;;;;OAMG;WACU,gBAAgB,CAAC,CAAC,SAAS,aAAa,EACnD,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAC3D,OAAO,CAAC,6CAA6C,CAAC;CAiC1D"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyNTS_PlaintextFieldMigration_Util = void 0;
|
|
4
|
+
const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
|
|
5
|
+
const crypto_1 = require("@futdevpro/fsm-dynamo/crypto");
|
|
6
|
+
/**
|
|
7
|
+
* Encrypts the OLD plaintext values of a field that has just become `encrypt: true`.
|
|
8
|
+
*
|
|
9
|
+
* The field encryption (`DyNTS_FieldEncryption_Util`) encrypts NEW writes only; a value stored before stays plaintext and
|
|
10
|
+
* is returned unchanged on read (only `DYENC1:` envelopes are decrypted) — measured 2026-10-21 (fdp-templates J7). This
|
|
11
|
+
* idempotent migration (run at start-up, or once) rewrites them.
|
|
12
|
+
*
|
|
13
|
+
* - The search filters on the RAW value (not an envelope): after the read-side decryption the two look the same.
|
|
14
|
+
* - The write goes through the DB service's `updateOne` (its `encryptUpdate` encrypts), conditionally on the old value
|
|
15
|
+
* (`{ _id, <field>: <old value> }`, so a concurrent change is not overwritten); `__lastModified` is not touched.
|
|
16
|
+
* - It never throws for a single record — it counts (and logs) the failures.
|
|
17
|
+
*
|
|
18
|
+
* Lifted from `fdp-auth-service` `FAS_PlaintextFieldMigration_Util` (2026-10-13; the terms-acceptance and login-event IP
|
|
19
|
+
* addresses) — the ONE shared implementation (adventor and master-prompter carry their own at-rest migrations too).
|
|
20
|
+
*/
|
|
21
|
+
class DyNTS_PlaintextFieldMigration_Util {
|
|
22
|
+
/**
|
|
23
|
+
* @param dbService the model's DB service (its data params must mark `field` as `encrypt: true`)
|
|
24
|
+
* @param field the top-level field to migrate
|
|
25
|
+
* @param issuer who runs the migration (the write's issuer)
|
|
26
|
+
* @throws `DyNTS-PFM-NOT-ENCRYPTED` when the model does not mark the field `encrypt: true` (the rewrite would store the
|
|
27
|
+
* plaintext again — a silent no-op that looks like a migration)
|
|
28
|
+
*/
|
|
29
|
+
static async encryptPlaintext(dbService, field, issuer) {
|
|
30
|
+
const property = Reflect.get(Object(dbService?.dataParams?.properties), field);
|
|
31
|
+
if (Reflect.get(Object(property), 'encrypt') !== true) {
|
|
32
|
+
throw new fsm_dynamo_1.DyFM_Error({
|
|
33
|
+
errorCode: 'DyNTS-PFM-NOT-ENCRYPTED',
|
|
34
|
+
message: `Plaintext-field migration: "${field}" is not \`encrypt: true\` on ` +
|
|
35
|
+
`"${dbService?.dataParams?.dataName}" — mark the field first, then migrate.`,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
const notEnvelope = new RegExp(`^${crypto_1.DyFM_Crypto.DB_ENC_PREFIX}`);
|
|
39
|
+
const rows = await dbService.find({ [field]: { $exists: true, $nin: [null, ''], $not: notEnvelope } }, false, { projection: { [field]: 1 } });
|
|
40
|
+
const result = { scanned: rows.length, migrated: 0, failed: 0 };
|
|
41
|
+
for (const row of rows) {
|
|
42
|
+
const value = Reflect.get(Object(row), field);
|
|
43
|
+
try {
|
|
44
|
+
await dbService.updateOne({ _id: row._id, [field]: value }, { [field]: value }, issuer, true);
|
|
45
|
+
result.migrated++;
|
|
46
|
+
}
|
|
47
|
+
catch (error) {
|
|
48
|
+
fsm_dynamo_1.DyFM_Error.logSimple(`[plaintext-field-migration] "${field}" could not be encrypted (record: ${row._id})`, error);
|
|
49
|
+
result.failed++;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return result;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
exports.DyNTS_PlaintextFieldMigration_Util = DyNTS_PlaintextFieldMigration_Util;
|
|
56
|
+
//# sourceMappingURL=plaintext-field-migration.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plaintext-field-migration.util.js","sourceRoot":"","sources":["../../src/_collections/plaintext-field-migration.util.ts"],"names":[],"mappings":";;;AAAA,sDAAkE;AAClE,yDAA2D;AAK3D;;;;;;;;;;;;;;GAcG;AACH,MAAa,kCAAkC;IAE7C;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,SAA6B,EAAE,KAAa,EAAE,MAAc;QAE5D,MAAM,QAAQ,GAAY,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;QAExF,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC;YACtD,MAAM,IAAI,uBAAU,CAAC;gBACnB,SAAS,EAAE,yBAAyB;gBACpC,OAAO,EAAE,+BAA+B,KAAK,gCAAgC;oBAC3E,IAAI,SAAS,EAAE,UAAU,EAAE,QAAQ,yCAAyC;aAC/E,CAAC,CAAC;QACL,CAAC;QAED,MAAM,WAAW,GAAW,IAAI,MAAM,CAAC,IAAI,oBAAW,CAAC,aAAa,EAAE,CAAC,CAAC;QACxE,MAAM,IAAI,GAAQ,MAAM,SAAS,CAAC,IAAI,CACpC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAE,IAAI,EAAE,EAAE,CAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAW,EAC9E,KAAK,EACL,EAAE,UAAU,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAW,CACxC,CAAC;QACF,MAAM,MAAM,GAAkD,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAE/G,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,KAAK,GAAY,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;YAEvD,IAAI,CAAC;gBACH,MAAM,SAAS,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAW,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBAChH,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,uBAAU,CAAC,SAAS,CAAC,gCAAgC,KAAK,qCAAqC,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC;gBAClH,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AA5CD,gFA4CC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** The counters of one plaintext-field migration (for the log line; never a field value). */
|
|
2
|
+
export interface DyNTS_PlaintextFieldMigrationResult_Interface {
|
|
3
|
+
/** Records found with a non-empty value that is not an encryption envelope yet. */
|
|
4
|
+
scanned: number;
|
|
5
|
+
/** Records rewritten (the value is now encrypted at rest). */
|
|
6
|
+
migrated: number;
|
|
7
|
+
/** Records that could not be rewritten (logged, never thrown). */
|
|
8
|
+
failed: number;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=plaintext-field-migration-result.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plaintext-field-migration-result.interface.d.ts","sourceRoot":"","sources":["../../../src/_models/interfaces/plaintext-field-migration-result.interface.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,MAAM,WAAW,6CAA6C;IAC5D,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IACjB,kEAAkE;IAClE,MAAM,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plaintext-field-migration-result.interface.js","sourceRoot":"","sources":["../../../src/_models/interfaces/plaintext-field-migration-result.interface.ts"],"names":[],"mappings":""}
|
package/build/index.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export * from './_enums/route-security.enum';
|
|
|
16
16
|
/** Interfaces describing global configuration and certificates. */
|
|
17
17
|
export * from './_models/interfaces/email-submission-receipt.interface';
|
|
18
18
|
export * from './_models/interfaces/operation-identity.interface';
|
|
19
|
+
export * from './_models/interfaces/plaintext-field-migration-result.interface';
|
|
19
20
|
export * from './_models/interfaces/bridgeable-endpoint.interface';
|
|
20
21
|
export * from './_models/interfaces/endpoint-bridge-call.interface';
|
|
21
22
|
export * from './_models/interfaces/endpoint-bridge-result.interface';
|
|
@@ -46,6 +47,7 @@ export * from './_collections/client-safe-error.util';
|
|
|
46
47
|
export * from './_collections/header-size.util';
|
|
47
48
|
export * from './_collections/client-ip.util';
|
|
48
49
|
export * from './_collections/field-encryption.util';
|
|
50
|
+
export * from './_collections/plaintext-field-migration.util';
|
|
49
51
|
export * from './_collections/raw-body.util';
|
|
50
52
|
export * from './_collections/error-status.util';
|
|
51
53
|
export * from './_collections/operation-rest.util';
|
package/build/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/build/index.js
CHANGED
|
@@ -45,6 +45,7 @@ tslib_1.__exportStar(require("./_enums/route-security.enum"), exports);
|
|
|
45
45
|
/** Interfaces describing global configuration and certificates. */
|
|
46
46
|
tslib_1.__exportStar(require("./_models/interfaces/email-submission-receipt.interface"), exports);
|
|
47
47
|
tslib_1.__exportStar(require("./_models/interfaces/operation-identity.interface"), exports);
|
|
48
|
+
tslib_1.__exportStar(require("./_models/interfaces/plaintext-field-migration-result.interface"), exports);
|
|
48
49
|
tslib_1.__exportStar(require("./_models/interfaces/bridgeable-endpoint.interface"), exports);
|
|
49
50
|
tslib_1.__exportStar(require("./_models/interfaces/endpoint-bridge-call.interface"), exports);
|
|
50
51
|
tslib_1.__exportStar(require("./_models/interfaces/endpoint-bridge-result.interface"), exports);
|
|
@@ -76,6 +77,7 @@ tslib_1.__exportStar(require("./_collections/header-size.util"), exports);
|
|
|
76
77
|
tslib_1.__exportStar(require("./_collections/client-ip.util"), exports);
|
|
77
78
|
// BFR-FDPAUTHSERVICE-043 — a consumer can test its own `encrypt: true` fields end to end (until now only the flag)
|
|
78
79
|
tslib_1.__exportStar(require("./_collections/field-encryption.util"), exports);
|
|
80
|
+
tslib_1.__exportStar(require("./_collections/plaintext-field-migration.util"), exports);
|
|
79
81
|
tslib_1.__exportStar(require("./_collections/raw-body.util"), exports);
|
|
80
82
|
tslib_1.__exportStar(require("./_collections/error-status.util"), exports);
|
|
81
83
|
tslib_1.__exportStar(require("./_collections/operation-rest.util"), exports);
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;IAsBI;;;AAEJ,cAAc;AACd,sEAA4C;AAC5C,+EAAqD;AACrD,8EAAoD;AACpD,wFAA8D;AAC9D,8FAAoE;AACpE,sFAA4D;AAC5D,mFAAyD;AACzD,uFAA6D;AAC7D,+EAAqD;AAGrD,QAAQ;AACR,iFAAuD;AACvD,wEAA8C;AAC9C,8EAAoD;AACpD,8EAAoD;AACpD,8EAAoD;AACpD,uEAA6C;AAG7C,6CAA6C;AAE7C,mEAAmE;AACnE,kGAAwE;AACxE,4FAAkE;AAClE,6FAAmE;AACnE,8FAAoE;AACpE,gGAAsE;AACtE,gGAAsE;AACtE,8FAAoE;AACpE,iGAAuE;AACvE,yFAA+D;AAC/D,iGAAuE;AACvE,kGAAwE;AACxE,gGAAsE;AACtE,uFAA6D;AAC7D,mGAAyE;AACzE,qGAA2E;AAC3E,oGAA0E;AAC1E,oGAA0E;AAC1E,0FAAgE;AAChE,6FAAmE;AACnE,wFAA8D;AAC9D,yFAA+D;AAC/D,oGAA0E;AAC1E,+EAAqD;AACrD,iFAAuD;AACvD,4EAAkD;AAClD,mFAAyD;AACzD,oFAA0D;AAC1D,yEAA+C;AAC/C,gFAAsD;AACtD,0EAAgD;AAChD,wEAA8C;AAC9C,mHAAmH;AACnH,+EAAqD;AACrD,uEAA6C;AAC7C,2EAAiD;AACjD,6EAAmD;AACnD,8EAAoD;AACpD,4EAAkD;AAClD,8FAAoE;AACpE,2FAAiE;AACjE,wEAA8C;AAC9C,mFAAyD;AACzD,8EAAoD;AACpD,4EAAkD;AAClD,4EAAkD;AAClD,+EAAqD;AACrD,oFAA0D;AAC1D,gFAAsD;AACtD,6EAAmD;AACnD,mFAAyD;AACzD,kFAAwD;AACxD,4EAAkD;AAClD,+EAAqD;AAErD,wBAAwB;AACxB,iGAAuE;AACvE,yGAA+E;AAC/E,4FAAkE;AAClE,qGAA2E;AAC3E,iGAAuE;AACvE,+FAAqE;AACrE,gGAAsE;AAEtE,eAAe;AACf,yEAA+C;AAE/C,qBAAqB;AACrB,4FAAkE;AAGlE,WAAW;AACX,gBAAgB;AAChB,uEAA6C;AAC7C,wEAA8C;AAE9C,yEAA+C;AAC/C,6FAAmE;AACnE,0EAAgD;AAChD,gFAAsD;AACtD,6FAAmE;AAEnE,sFAA4D;AAC5D,oFAA0D;AAC1D,6FAAmE;AAEnE,gBAAgB;AAChB,4EAAkD;AAClD,gFAAsD;AACtD,wEAA8C;AAC9C,sEAA4C;AAC5C,kFAAwD;AACxD,6EAAmD;AAEnD,kBAAkB;AAClB,wEAA8C;AAC9C,wFAA8D;AAC9D,kFAAwD;AAExD,iBAAiB;AACjB,+EAAqD;AACrD,mFAAyD;AAEzD,kBAAkB;AAClB,4EAAkD"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;IAsBI;;;AAEJ,cAAc;AACd,sEAA4C;AAC5C,+EAAqD;AACrD,8EAAoD;AACpD,wFAA8D;AAC9D,8FAAoE;AACpE,sFAA4D;AAC5D,mFAAyD;AACzD,uFAA6D;AAC7D,+EAAqD;AAGrD,QAAQ;AACR,iFAAuD;AACvD,wEAA8C;AAC9C,8EAAoD;AACpD,8EAAoD;AACpD,8EAAoD;AACpD,uEAA6C;AAG7C,6CAA6C;AAE7C,mEAAmE;AACnE,kGAAwE;AACxE,4FAAkE;AAClE,0GAAgF;AAChF,6FAAmE;AACnE,8FAAoE;AACpE,gGAAsE;AACtE,gGAAsE;AACtE,8FAAoE;AACpE,iGAAuE;AACvE,yFAA+D;AAC/D,iGAAuE;AACvE,kGAAwE;AACxE,gGAAsE;AACtE,uFAA6D;AAC7D,mGAAyE;AACzE,qGAA2E;AAC3E,oGAA0E;AAC1E,oGAA0E;AAC1E,0FAAgE;AAChE,6FAAmE;AACnE,wFAA8D;AAC9D,yFAA+D;AAC/D,oGAA0E;AAC1E,+EAAqD;AACrD,iFAAuD;AACvD,4EAAkD;AAClD,mFAAyD;AACzD,oFAA0D;AAC1D,yEAA+C;AAC/C,gFAAsD;AACtD,0EAAgD;AAChD,wEAA8C;AAC9C,mHAAmH;AACnH,+EAAqD;AACrD,wFAA8D;AAC9D,uEAA6C;AAC7C,2EAAiD;AACjD,6EAAmD;AACnD,8EAAoD;AACpD,4EAAkD;AAClD,8FAAoE;AACpE,2FAAiE;AACjE,wEAA8C;AAC9C,mFAAyD;AACzD,8EAAoD;AACpD,4EAAkD;AAClD,4EAAkD;AAClD,+EAAqD;AACrD,oFAA0D;AAC1D,gFAAsD;AACtD,6EAAmD;AACnD,mFAAyD;AACzD,kFAAwD;AACxD,4EAAkD;AAClD,+EAAqD;AAErD,wBAAwB;AACxB,iGAAuE;AACvE,yGAA+E;AAC/E,4FAAkE;AAClE,qGAA2E;AAC3E,iGAAuE;AACvE,+FAAqE;AACrE,gGAAsE;AAEtE,eAAe;AACf,yEAA+C;AAE/C,qBAAqB;AACrB,4FAAkE;AAGlE,WAAW;AACX,gBAAgB;AAChB,uEAA6C;AAC7C,wEAA8C;AAE9C,yEAA+C;AAC/C,6FAAmE;AACnE,0EAAgD;AAChD,gFAAsD;AACtD,6FAAmE;AAEnE,sFAA4D;AAC5D,oFAA0D;AAC1D,6FAAmE;AAEnE,gBAAgB;AAChB,4EAAkD;AAClD,gFAAsD;AACtD,wEAA8C;AAC9C,sEAA4C;AAC5C,kFAAwD;AACxD,6EAAmD;AAEnD,kBAAkB;AAClB,wEAA8C;AAC9C,wFAA8D;AAC9D,kFAAwD;AAExD,iBAAiB;AACjB,+EAAqD;AACrD,mFAAyD;AAEzD,kBAAkB;AAClB,4EAAkD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@futdevpro/nts-dynamo",
|
|
3
|
-
"version": "01.15.
|
|
3
|
+
"version": "01.15.434",
|
|
4
4
|
"description": "Dynamic NodeTS (NodeJS-Typescript), MongoDB Backend System Framework by Future Development Program Ltd.",
|
|
5
5
|
"DyBu_settings": {
|
|
6
6
|
"packageType": "server-package",
|
|
@@ -545,7 +545,7 @@
|
|
|
545
545
|
},
|
|
546
546
|
"devDependencies": {
|
|
547
547
|
"@futdevpro/fsm-dynamo": "1.20.135",
|
|
548
|
-
"@futdevpro/dynamo-eslint": "1.20.
|
|
548
|
+
"@futdevpro/dynamo-eslint": "1.20.74",
|
|
549
549
|
"@discordjs/opus": "^0.10.0",
|
|
550
550
|
"@discordjs/voice": "^0.18.0",
|
|
551
551
|
"@types/jasmine": "~4.3.5",
|