@rxap/ts-morph 0.1.0-dev.12 → 0.1.0-dev.14
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/CHANGELOG.md +12 -0
- package/README.md +1 -1
- package/package.json +4 -4
- package/src/lib/add-provider-to-array.d.ts +1 -1
- package/src/lib/add-provider-to-array.js +4 -3
- package/src/lib/add-provider-to-array.js.map +1 -1
- package/src/lib/nest/coerce-nest-provider-to-array.d.ts +1 -1
- package/src/lib/nest/coerce-nest-provider-to-array.js +4 -3
- package/src/lib/nest/coerce-nest-provider-to-array.js.map +1 -1
- package/src/lib/nest/coerce-nest-throttler-module-import.js +4 -19
- package/src/lib/nest/coerce-nest-throttler-module-import.js.map +1 -1
- package/src/lib/nest/remove-nest-provider-to-array.d.ts +1 -1
- package/src/lib/nest/remove-nest-provider-to-array.js +1 -1
- package/src/lib/nest/remove-nest-provider-to-array.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [0.1.0-dev.14](https://gitlab.com/rxap/packages/compare/@rxap/ts-morph@0.1.0-dev.13...@rxap/ts-morph@0.1.0-dev.14) (2023-10-09)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- support overwrite array ([e528c87](https://gitlab.com/rxap/packages/commit/e528c87fd5fb49898583e0c08c191942e7e2f8e4))
|
|
11
|
+
|
|
12
|
+
# [0.1.0-dev.13](https://gitlab.com/rxap/packages/compare/@rxap/ts-morph@0.1.0-dev.12...@rxap/ts-morph@0.1.0-dev.13) (2023-10-02)
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
- move forRoot logic into detected loader classes ([01796e0](https://gitlab.com/rxap/packages/commit/01796e0898a3dee4e365278a73029dd023093136))
|
|
17
|
+
|
|
6
18
|
# [0.1.0-dev.12](https://gitlab.com/rxap/packages/compare/@rxap/ts-morph@0.1.0-dev.11...@rxap/ts-morph@0.1.0-dev.12) (2023-09-27)
|
|
7
19
|
|
|
8
20
|
**Note:** Version bump only for package @rxap/ts-morph
|
package/README.md
CHANGED
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "0.1.0-dev.
|
|
2
|
+
"version": "0.1.0-dev.14",
|
|
3
3
|
"name": "@rxap/ts-morph",
|
|
4
4
|
"license": "GPL-3.0-or-later",
|
|
5
5
|
"dependencies": {
|
|
6
6
|
"tslib": "2.6.2"
|
|
7
7
|
},
|
|
8
8
|
"peerDependencies": {
|
|
9
|
-
"@rxap/utilities": "^16.0.0-dev.
|
|
9
|
+
"@rxap/utilities": "^16.0.0-dev.19",
|
|
10
10
|
"ts-morph": "^18.0.0",
|
|
11
11
|
"tslib": "2.6.2"
|
|
12
12
|
},
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"packageGroup": [
|
|
29
29
|
{
|
|
30
30
|
"package": "@rxap/utilities",
|
|
31
|
-
"version": "16.0.0-dev.
|
|
31
|
+
"version": "16.0.0-dev.19"
|
|
32
32
|
}
|
|
33
33
|
]
|
|
34
34
|
},
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"directory": "packages/ts-morph"
|
|
43
43
|
},
|
|
44
44
|
"type": "commonjs",
|
|
45
|
-
"gitHead": "
|
|
45
|
+
"gitHead": "e74e74e04d2978364d8e781f5ec8a105f7c2443e",
|
|
46
46
|
"main": "./src/index.js",
|
|
47
47
|
"types": "./src/index.d.ts"
|
|
48
48
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ArrayLiteralExpression, Expression, ObjectLiteralExpression } from 'ts-morph';
|
|
2
2
|
import { ProviderObject } from './provider-object';
|
|
3
|
-
export declare function AddProviderToArray(providerObject: ProviderObject | string, providerArray: ArrayLiteralExpression, overwrite?: boolean, compare?: (ole: ObjectLiteralExpression, po: ProviderObject) => boolean): Expression;
|
|
3
|
+
export declare function AddProviderToArray(providerObject: ProviderObject | string, providerArray: ArrayLiteralExpression, overwrite?: boolean | string[], compare?: (ole: ObjectLiteralExpression, po: ProviderObject) => boolean): Expression;
|
|
@@ -35,16 +35,17 @@ function AddProviderToArray(providerObject, providerArray, overwrite = false, co
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
else {
|
|
38
|
-
|
|
38
|
+
let index = providerArray.getElements().findIndex(element => {
|
|
39
39
|
if (element instanceof ts_morph_1.ObjectLiteralExpression) {
|
|
40
40
|
return compare(element, providerObject);
|
|
41
41
|
}
|
|
42
42
|
return false;
|
|
43
43
|
});
|
|
44
|
-
if (overwrite && index !== -1) {
|
|
44
|
+
if ((overwrite === true || (Array.isArray(overwrite) && overwrite.includes('provider'))) && index !== -1) {
|
|
45
45
|
providerArray.removeElement(index);
|
|
46
|
+
index = -1;
|
|
46
47
|
}
|
|
47
|
-
if (
|
|
48
|
+
if (index === -1) {
|
|
48
49
|
expression = providerArray.addElement(ts_morph_1.Writers.object((0, utilities_1.DeleteUndefinedProperties)({
|
|
49
50
|
provide: providerObject.provide,
|
|
50
51
|
useClass: providerObject.useClass,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-provider-to-array.js","sourceRoot":"","sources":["../../../../../packages/ts-morph/src/lib/add-provider-to-array.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,uCAMkB;AAGlB,SAAgB,kBAAkB,CAChC,cAAuC,EACvC,aAAqC,EACrC,
|
|
1
|
+
{"version":3,"file":"add-provider-to-array.js","sourceRoot":"","sources":["../../../../../packages/ts-morph/src/lib/add-provider-to-array.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ArrayLiteralExpression } from 'ts-morph';
|
|
2
2
|
import { NestProviderObject } from './nest-provider-object';
|
|
3
|
-
export declare function CoerceNestProviderToArray(providerObject: NestProviderObject | string, providerArray: ArrayLiteralExpression, overwrite?: boolean): void;
|
|
3
|
+
export declare function CoerceNestProviderToArray(providerObject: NestProviderObject | string, providerArray: ArrayLiteralExpression, overwrite?: boolean | string[]): void;
|
|
@@ -10,7 +10,7 @@ function CoerceNestProviderToArray(providerObject, providerArray, overwrite = fa
|
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
else {
|
|
13
|
-
|
|
13
|
+
let index = providerArray.getElements().findIndex(element => {
|
|
14
14
|
var _a;
|
|
15
15
|
if (element instanceof ts_morph_1.ObjectLiteralExpression) {
|
|
16
16
|
const provideProperty = element.getProperty('provide');
|
|
@@ -20,10 +20,11 @@ function CoerceNestProviderToArray(providerObject, providerArray, overwrite = fa
|
|
|
20
20
|
}
|
|
21
21
|
return false;
|
|
22
22
|
});
|
|
23
|
-
if (overwrite && index !== -1) {
|
|
23
|
+
if ((overwrite === true || (Array.isArray(overwrite) && overwrite.includes('provider'))) && index !== -1) {
|
|
24
24
|
providerArray.removeElement(index);
|
|
25
|
+
index = -1;
|
|
25
26
|
}
|
|
26
|
-
if (
|
|
27
|
+
if (index === -1) {
|
|
27
28
|
providerArray.addElement(ts_morph_1.Writers.object((0, utilities_1.DeleteUndefinedProperties)({
|
|
28
29
|
provide: providerObject.provide,
|
|
29
30
|
useClass: providerObject.useClass,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coerce-nest-provider-to-array.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/nest/coerce-nest-provider-to-array.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,uCAKkB;AAGlB,SAAgB,yBAAyB,CACvC,cAA2C,EAC3C,aAAqC,EACrC,
|
|
1
|
+
{"version":3,"file":"coerce-nest-provider-to-array.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/nest/coerce-nest-provider-to-array.ts"],"names":[],"mappings":";;;AAAA,+CAA4D;AAC5D,uCAKkB;AAGlB,SAAgB,yBAAyB,CACvC,cAA2C,EAC3C,aAAqC,EACrC,YAAgC,KAAK;IAGrC,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;QAEtC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,cAAc,CAAC,EAAE;YACjG,aAAa,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;SAC1C;KAEF;SAAM;QAEL,IAAI,KAAK,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;;YAC1D,IAAI,OAAO,YAAY,kCAAuB,EAAE;gBAC9C,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBACvD,IAAI,eAAe,YAAY,6BAAkB,EAAE;oBACjD,OAAO,CAAA,MAAA,eAAe,CAAC,cAAc,EAAE,0CAAE,WAAW,GAAG,IAAI,EAAE,MAAK,cAAc,CAAC,OAAO,CAAC;iBAC1F;aACF;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,IAAI,CACE,SAAS,KAAK,IAAI,IAAI,CACV,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAC3D,CACZ,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YACrB,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACnC,KAAK,GAAG,CAAC,CAAC,CAAC;SACZ;QAED,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,aAAa,CAAC,UAAU,CAAC,kBAAO,CAAC,MAAM,CAAC,IAAA,qCAAyB,EAAC;gBAChE,OAAO,EAAE,cAAc,CAAC,OAAO;gBAC/B,QAAQ,EAAE,cAAc,CAAC,QAAQ;gBACjC,UAAU,EAAE,cAAc,CAAC,UAAU;gBACrC,WAAW,EAAE,cAAc,CAAC,WAAW;gBACvC,QAAQ,EAAE,cAAc,CAAC,QAAQ;gBACjC,KAAK,EAAE,cAAc,CAAC,KAAK;gBAC3B,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;oBAC7B,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAM,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAE,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;oBAC3G,SAAS;aACZ,CAAC,CAAC,CAAC,CAAC;SACN;KAEF;AAEH,CAAC;AAjDD,8DAiDC"}
|
|
@@ -10,28 +10,13 @@ function CoerceNestThrottlerModuleImport(sourceFile, options) {
|
|
|
10
10
|
namedImports: ['ThrottlerModule'],
|
|
11
11
|
},
|
|
12
12
|
{
|
|
13
|
-
moduleSpecifier: '@
|
|
14
|
-
namedImports: ['
|
|
15
|
-
}
|
|
13
|
+
moduleSpecifier: '@rxap/nest-utilities',
|
|
14
|
+
namedImports: ['ThrottlerModuleOptionsLoader'],
|
|
15
|
+
}
|
|
16
16
|
], importWriter: w => {
|
|
17
17
|
w.writeLine('ThrottlerModule.forRootAsync(');
|
|
18
18
|
ts_morph_1.Writers.object({
|
|
19
|
-
|
|
20
|
-
inject: '[ ConfigService ]',
|
|
21
|
-
useFactory: w => {
|
|
22
|
-
w.write('(config: ConfigService) => (');
|
|
23
|
-
ts_morph_1.Writers.object({
|
|
24
|
-
throttlers: w => {
|
|
25
|
-
w.write('[');
|
|
26
|
-
ts_morph_1.Writers.object({
|
|
27
|
-
ttl: 'config.getOrThrow(\'THROTTLER_TTL\')',
|
|
28
|
-
limit: 'config.getOrThrow(\'THROTTLER_LIMIT\')',
|
|
29
|
-
});
|
|
30
|
-
w.write(']');
|
|
31
|
-
},
|
|
32
|
-
})(w);
|
|
33
|
-
w.write(')');
|
|
34
|
-
},
|
|
19
|
+
useClass: 'ThrottlerModuleOptionsLoader',
|
|
35
20
|
})(w);
|
|
36
21
|
w.write(')');
|
|
37
22
|
} }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coerce-nest-throttler-module-import.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/nest/coerce-nest-throttler-module-import.ts"],"names":[],"mappings":";;;AAAA,uCAGkB;AAClB,2EAGqC;AAIrC,SAAgB,+BAA+B,CAC7C,UAAsB,EACtB,OAA+C;IAE/C,IAAA,kDAAsB,EACpB,UAAU,kCACL,OAAO,KACV,UAAU,EAAE,iBAAiB,EAC7B,UAAU,EAAE;YACV;gBACE,eAAe,EAAE,mBAAmB;gBACpC,YAAY,EAAE,CAAE,iBAAiB,CAAE;aACpC;YACD;gBACE,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"coerce-nest-throttler-module-import.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/nest/coerce-nest-throttler-module-import.ts"],"names":[],"mappings":";;;AAAA,uCAGkB;AAClB,2EAGqC;AAIrC,SAAgB,+BAA+B,CAC7C,UAAsB,EACtB,OAA+C;IAE/C,IAAA,kDAAsB,EACpB,UAAU,kCACL,OAAO,KACV,UAAU,EAAE,iBAAiB,EAC7B,UAAU,EAAE;YACV;gBACE,eAAe,EAAE,mBAAmB;gBACpC,YAAY,EAAE,CAAE,iBAAiB,CAAE;aACpC;YACD;gBACE,eAAe,EAAE,sBAAsB;gBACvC,YAAY,EAAE,CAAE,8BAA8B,CAAE;aACjD;SACF,EACD,YAAY,EAAE,CAAC,CAAC,EAAE;YAChB,CAAC,CAAC,SAAS,CAAC,+BAA+B,CAAC,CAAC;YAC7C,kBAAO,CAAC,MAAM,CAAC;gBACb,QAAQ,EAAE,8BAA8B;aACzC,CAAC,CAAC,CAAC,CAAC,CAAC;YACN,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACf,CAAC,IAEJ,CAAC;AACJ,CAAC;AA3BD,0EA2BC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ArrayLiteralExpression } from 'ts-morph';
|
|
2
2
|
import { NestProviderObject } from './nest-provider-object';
|
|
3
|
-
export declare function RemoveNestProviderToArray(providerObject: NestProviderObject | string, providerArray: ArrayLiteralExpression, overwrite?: boolean): void;
|
|
3
|
+
export declare function RemoveNestProviderToArray(providerObject: NestProviderObject | string, providerArray: ArrayLiteralExpression, overwrite?: boolean | string[]): void;
|
|
@@ -20,7 +20,7 @@ function RemoveNestProviderToArray(providerObject, providerArray, overwrite = fa
|
|
|
20
20
|
}
|
|
21
21
|
return false;
|
|
22
22
|
});
|
|
23
|
-
if (overwrite && index !== -1) {
|
|
23
|
+
if ((overwrite === true || (Array.isArray(overwrite) && overwrite.includes('provider'))) && index !== -1) {
|
|
24
24
|
providerArray.removeElement(index);
|
|
25
25
|
}
|
|
26
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove-nest-provider-to-array.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/nest/remove-nest-provider-to-array.ts"],"names":[],"mappings":";;;AAAA,uCAIkB;AAGlB,SAAgB,yBAAyB,CACvC,cAA2C,EAC3C,aAAqC,EACrC,
|
|
1
|
+
{"version":3,"file":"remove-nest-provider-to-array.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/nest/remove-nest-provider-to-array.ts"],"names":[],"mappings":";;;AAAA,uCAIkB;AAGlB,SAAgB,yBAAyB,CACvC,cAA2C,EAC3C,aAAqC,EACrC,YAAgC,KAAK;IAGrC,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;QAEtC,MAAM,OAAO,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,cAAc,CAAC,CAAC;QAC7G,IAAI,OAAO,EAAE;YACX,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;SACtD;KAEF;SAAM;QAEL,MAAM,KAAK,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;;YAC5D,IAAI,OAAO,YAAY,kCAAuB,EAAE;gBAC9C,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBACvD,IAAI,eAAe,YAAY,6BAAkB,EAAE;oBACjD,OAAO,CAAA,MAAA,eAAe,CAAC,cAAc,EAAE,0CAAE,WAAW,GAAG,IAAI,EAAE,MAAK,cAAc,CAAC,OAAO,CAAC;iBAC1F;aACF;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,IAAI,CACE,SAAS,KAAK,IAAI,IAAI,CACV,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAC3D,CACZ,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YACrB,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;SACpC;KAEF;AAEH,CAAC;AAnCD,8DAmCC"}
|