@rxap/ts-morph 1.1.0-dev.27 → 1.1.0-dev.28
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 +7 -0
- package/package.json +2 -2
- package/src/lib/angular/add-route.d.ts +9 -1
- package/src/lib/angular/add-route.js +15 -5
- package/src/lib/angular/add-route.js.map +1 -1
- package/src/lib/angular/coerce-route-guard.js +1 -1
- package/src/lib/angular/coerce-route-guard.js.map +1 -1
- package/src/lib/angular/coerce-routes.d.ts +2 -5
- package/src/lib/angular/coerce-routes.js +2 -2
- package/src/lib/angular/coerce-routes.js.map +1 -1
- package/src/lib/angular/find-parent-route.d.ts +4 -2
- package/src/lib/angular/find-parent-route.js +36 -21
- package/src/lib/angular/find-parent-route.js.map +1 -1
- package/src/lib/angular/remove-route.d.ts +4 -1
- package/src/lib/angular/remove-route.js +9 -1
- package/src/lib/angular/remove-route.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,13 @@
|
|
|
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
|
+
# [1.1.0-dev.28](https://gitlab.com/rxap/packages/compare/@rxap/ts-morph@1.1.0-dev.27...@rxap/ts-morph@1.1.0-dev.28) (2024-04-10)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- support complex remove instructions ([960fac0](https://gitlab.com/rxap/packages/commit/960fac050bec4e2b017c2006fac615ccede09ab2))
|
|
11
|
+
- support search and add route by component ([6dd9f2e](https://gitlab.com/rxap/packages/commit/6dd9f2e7fedfe4cbd3af86f88be7b8221c3ae867))
|
|
12
|
+
|
|
6
13
|
# [1.1.0-dev.27](https://gitlab.com/rxap/packages/compare/@rxap/ts-morph@1.1.0-dev.26...@rxap/ts-morph@1.1.0-dev.27) (2024-04-10)
|
|
7
14
|
|
|
8
15
|
### Bug Fixes
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.1.0-dev.
|
|
2
|
+
"version": "1.1.0-dev.28",
|
|
3
3
|
"name": "@rxap/ts-morph",
|
|
4
4
|
"license": "GPL-3.0-or-later",
|
|
5
5
|
"dependencies": {
|
|
@@ -45,6 +45,6 @@
|
|
|
45
45
|
"directory": "packages/ts-morph"
|
|
46
46
|
},
|
|
47
47
|
"type": "commonjs",
|
|
48
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "26c9b004b6836964712ac9c2cf60e99613b034b2",
|
|
49
49
|
"main": "./src/index.js"
|
|
50
50
|
}
|
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
import { ArrayLiteralExpression, SourceFile } from 'ts-morph';
|
|
2
2
|
import { AngularRoute } from './build-route-object';
|
|
3
|
+
import 'colors';
|
|
3
4
|
export declare function DefaultInsertAtFactory(route: AngularRoute): (array: ArrayLiteralExpression) => number;
|
|
4
|
-
export
|
|
5
|
+
export interface AddRouteOptions {
|
|
6
|
+
route: AngularRoute;
|
|
7
|
+
path?: string[];
|
|
8
|
+
component?: string;
|
|
9
|
+
name?: string;
|
|
10
|
+
insertAt?: (array: ArrayLiteralExpression) => number;
|
|
11
|
+
}
|
|
12
|
+
export declare function AddRoute(sourceFile: SourceFile, options: AddRouteOptions): void;
|
|
@@ -5,6 +5,7 @@ const ts_morph_1 = require("ts-morph");
|
|
|
5
5
|
const coerce_array_element_1 = require("../coerce-array-element");
|
|
6
6
|
const build_route_object_1 = require("./build-route-object");
|
|
7
7
|
const find_parent_route_1 = require("./find-parent-route");
|
|
8
|
+
require("colors");
|
|
8
9
|
function DefaultInsertAtFactory(route) {
|
|
9
10
|
return (array) => {
|
|
10
11
|
var _a, _b;
|
|
@@ -45,22 +46,31 @@ function DefaultInsertAtFactory(route) {
|
|
|
45
46
|
};
|
|
46
47
|
}
|
|
47
48
|
exports.DefaultInsertAtFactory = DefaultInsertAtFactory;
|
|
48
|
-
function AddRoute(sourceFile,
|
|
49
|
+
function AddRoute(sourceFile, options) {
|
|
50
|
+
const { component, route, path, name = 'ROUTES', insertAt = DefaultInsertAtFactory(route) } = options;
|
|
49
51
|
const routes = sourceFile.getVariableDeclaration(name);
|
|
50
52
|
if (routes) {
|
|
51
53
|
let initializer = routes.getInitializerIfKindOrThrow(ts_morph_1.SyntaxKind.ArrayLiteralExpression);
|
|
52
54
|
if (path === null || path === void 0 ? void 0 : path.length) {
|
|
53
|
-
initializer = (0, find_parent_route_1.
|
|
55
|
+
initializer = (0, find_parent_route_1.FindParentRouteChildrenArrayByPath)(initializer, path);
|
|
54
56
|
}
|
|
55
57
|
if (initializer) {
|
|
56
|
-
|
|
58
|
+
if (component) {
|
|
59
|
+
initializer = (0, find_parent_route_1.FindParentRouteChildrenArrayByComponent)(initializer, component);
|
|
60
|
+
}
|
|
61
|
+
if (initializer) {
|
|
62
|
+
(0, coerce_array_element_1.CoerceArrayElement)(initializer, (0, build_route_object_1.BuildRouteObject)(route), (0, coerce_array_element_1.FindArrayElementByObjectProperty)('path', route.path), insertAt);
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
console.log(`Could not find parent route by component for '${component}'`.yellow);
|
|
66
|
+
}
|
|
57
67
|
}
|
|
58
68
|
else {
|
|
59
|
-
console.
|
|
69
|
+
console.log(`Could not find parent route by path for '${path}'`.yellow);
|
|
60
70
|
}
|
|
61
71
|
}
|
|
62
72
|
else {
|
|
63
|
-
console.
|
|
73
|
+
console.log(`${name} variable not found`.red);
|
|
64
74
|
}
|
|
65
75
|
}
|
|
66
76
|
exports.AddRoute = AddRoute;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-route.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/add-route.ts"],"names":[],"mappings":";;;AAAA,uCAIkB;AAClB,kEAGiC;AACjC,6DAG8B;AAC9B,
|
|
1
|
+
{"version":3,"file":"add-route.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/add-route.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ function CoerceRouteGuard(sourceFile, path, guard, options = {}) {
|
|
|
8
8
|
const { routeArrayName = 'ROUTES', type = 'canActivate' } = options;
|
|
9
9
|
const routes = sourceFile.getVariableDeclaration(routeArrayName);
|
|
10
10
|
if (routes) {
|
|
11
|
-
const initializer = (0, ts_morph_1.
|
|
11
|
+
const initializer = (0, ts_morph_1.FindParentRouteByPath)(routes.getInitializerIfKindOrThrow(ts_morph_2.SyntaxKind.ArrayLiteralExpression), path);
|
|
12
12
|
if (initializer) {
|
|
13
13
|
const guardArray = (_a = initializer.getProperty(type)) !== null && _a !== void 0 ? _a : initializer.addPropertyAssignment({
|
|
14
14
|
name: type,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coerce-route-guard.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-route-guard.ts"],"names":[],"mappings":";;;AAAA,6CAGwB;AACxB,uCAIkB;AAOlB,SAAgB,gBAAgB,CAAC,UAAsB,EAAE,IAAc,EAAE,KAAa,EAAE,UAAmC,EAAE;;IAC3H,MAAM,EAAE,cAAc,GAAG,QAAQ,EAAE,IAAI,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC;IACpE,MAAM,MAAM,GAAG,UAAU,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;IACjE,IAAI,MAAM,EAAE;QACV,MAAM,WAAW,GAAG,IAAA,
|
|
1
|
+
{"version":3,"file":"coerce-route-guard.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-route-guard.ts"],"names":[],"mappings":";;;AAAA,6CAGwB;AACxB,uCAIkB;AAOlB,SAAgB,gBAAgB,CAAC,UAAsB,EAAE,IAAc,EAAE,KAAa,EAAE,UAAmC,EAAE;;IAC3H,MAAM,EAAE,cAAc,GAAG,QAAQ,EAAE,IAAI,GAAG,aAAa,EAAE,GAAG,OAAO,CAAC;IACpE,MAAM,MAAM,GAAG,UAAU,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;IACjE,IAAI,MAAM,EAAE;QACV,MAAM,WAAW,GAAG,IAAA,gCAAqB,EAAC,MAAM,CAAC,2BAA2B,CAAC,qBAAU,CAAC,sBAAsB,CAAC,EAAE,IAAI,CAAC,CAAC;QACvH,IAAI,WAAW,EAAE;YACf,MAAM,UAAU,GAAG,MAAA,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,mCAAI,WAAW,CAAC,qBAAqB,CAAC;gBACpF,IAAI,EAAE,IAAI;gBACV,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YACH,IAAI,UAAU,YAAY,6BAAkB,EAAE;gBAC5C,MAAM,qBAAqB,GAAG,UAAU,CAAC,2BAA2B,CAAC,qBAAU,CAAC,sBAAsB,CAAC,CAAC;gBACxG,IAAA,6BAAkB,EAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;aAClD;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;aAC5D;SACF;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;SACvC;KACF;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,GAAG,cAAc,qBAAqB,CAAC,CAAC;KACzD;AACH,CAAC;AAtBD,4CAsBC"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
import { SourceFile, WriterFunction } from 'ts-morph';
|
|
2
|
-
import {
|
|
2
|
+
import { AddRouteOptions } from './add-route';
|
|
3
3
|
export interface CoerceRoutesOptions {
|
|
4
4
|
name?: string;
|
|
5
5
|
initializer?: string | WriterFunction;
|
|
6
|
-
itemList?: Array<
|
|
7
|
-
route: AngularRoute;
|
|
8
|
-
path?: string[];
|
|
9
|
-
}>;
|
|
6
|
+
itemList?: Array<Omit<AddRouteOptions, 'name'>>;
|
|
10
7
|
}
|
|
11
8
|
export declare function CoerceRoutes(sourceFile: SourceFile, options?: CoerceRoutesOptions): import("ts-morph").VariableDeclaration;
|
|
@@ -34,8 +34,8 @@ function CoerceRoutes(sourceFile, options = {}) {
|
|
|
34
34
|
},
|
|
35
35
|
]);
|
|
36
36
|
}
|
|
37
|
-
for (const
|
|
38
|
-
(0, add_route_1.AddRoute)(sourceFile,
|
|
37
|
+
for (const item of (_b = options.itemList) !== null && _b !== void 0 ? _b : []) {
|
|
38
|
+
(0, add_route_1.AddRoute)(sourceFile, Object.assign(Object.assign({}, item), { name }));
|
|
39
39
|
}
|
|
40
40
|
return variableDeclaration;
|
|
41
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coerce-routes.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-routes.ts"],"names":[],"mappings":";;;AAAA,uCAIkB;AAClB,oEAA+D;AAC/D,sDAAkD;AAClD,gFAA2E;AAC3E,
|
|
1
|
+
{"version":3,"file":"coerce-routes.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-routes.ts"],"names":[],"mappings":";;;AAAA,uCAIkB;AAClB,oEAA+D;AAC/D,sDAAkD;AAClD,gFAA2E;AAC3E,2CAGqB;AAQrB,SAAgB,YAAY,CAAC,UAAsB,EAAE,UAA+B,EAAE;;IAEpF,MAAM,EACJ,IAAI,GAAG,QAAQ,EACf,WAAW,GAAG,kCAAkC,EACjD,GAAG,OAAO,CAAC;IAEZ,0GAA0G;IAC1G,IAAI,mBAAmB,GAAG,IAAA,uDAAyB,EAAC,UAAU,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAC9G,IAAI,mBAAmB,CAAC,2BAA2B,CAAC,qBAAU,CAAC,sBAAsB,CAAC,CAAC,WAAW,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;QACjH,mBAAmB,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,CAAC;KAC5D;IACD,YAAY;IACZ,mBAAmB,GAAG,IAAA,uDAAyB,EAAC,UAAU,EAAE,IAAI,EAAE;QAChE,WAAW;QACX,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;IACH,IAAA,2CAAmB,EAAC,mBAAmB,CAAC,CAAC;IACzC,IAAA,8BAAa,EAAC,UAAU,EAAE;QACxB;YACE,YAAY,EAAE,CAAE,OAAO,CAAE;YACzB,eAAe,EAAE,iBAAiB;SACnC;KACF,CAAC,CAAC;IACH,IAAI,MAAA,OAAO,CAAC,QAAQ,0CAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE;QAC/D,IAAA,8BAAa,EAAC,UAAU,EAAE;YACxB;gBACE,YAAY,EAAE,CAAE,kBAAkB,CAAE;gBACpC,eAAe,EAAE,gBAAgB;aAClC;SACF,CAAC,CAAC;KACJ;IAED,KAAK,MAAM,IAAI,IAAI,MAAA,OAAO,CAAC,QAAQ,mCAAI,EAAE,EAAE;QACzC,IAAA,oBAAQ,EAAC,UAAU,kCAAO,IAAI,KAAE,IAAI,IAAG,CAAC;KACzC;IAED,OAAO,mBAAmB,CAAC;AAE7B,CAAC;AAvCD,oCAuCC"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { ArrayLiteralExpression, ObjectLiteralExpression } from 'ts-morph';
|
|
2
2
|
export declare function GetRouteChildrenArray(e: ObjectLiteralExpression): ArrayLiteralExpression;
|
|
3
|
-
export declare function
|
|
4
|
-
export declare function
|
|
3
|
+
export declare function FindParentRouteByPath(ale: ArrayLiteralExpression, path: string[]): ObjectLiteralExpression | null;
|
|
4
|
+
export declare function FindParentRouteByComponent(ale: ArrayLiteralExpression, component: string): ObjectLiteralExpression | null;
|
|
5
|
+
export declare function FindParentRouteChildrenArrayByPath(ale: ArrayLiteralExpression, path: string[]): ArrayLiteralExpression | null;
|
|
6
|
+
export declare function FindParentRouteChildrenArrayByComponent(ale: ArrayLiteralExpression, component: string): ArrayLiteralExpression | null;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.FindParentRouteChildrenArrayByComponent = exports.FindParentRouteChildrenArrayByPath = exports.FindParentRouteByComponent = exports.FindParentRouteByPath = exports.GetRouteChildrenArray = void 0;
|
|
4
4
|
const ts_morph_1 = require("ts-morph");
|
|
5
5
|
function GetRouteChildrenArray(e) {
|
|
6
6
|
var _a;
|
|
@@ -15,31 +15,26 @@ function GetRouteChildrenArray(e) {
|
|
|
15
15
|
throw new Error('Children property is not a PropertyAssignment');
|
|
16
16
|
}
|
|
17
17
|
exports.GetRouteChildrenArray = GetRouteChildrenArray;
|
|
18
|
-
function
|
|
18
|
+
function FindParentRouteByPath(ale, path) {
|
|
19
19
|
const fragment = path.pop();
|
|
20
20
|
for (const e of ale.getElements()) {
|
|
21
|
-
if (e
|
|
21
|
+
if (e.isKind(ts_morph_1.SyntaxKind.ObjectLiteralExpression)) {
|
|
22
22
|
const pathProperty = e.getProperty('path');
|
|
23
|
-
if (pathProperty
|
|
23
|
+
if (pathProperty === null || pathProperty === void 0 ? void 0 : pathProperty.isKind(ts_morph_1.SyntaxKind.PropertyAssignment)) {
|
|
24
24
|
const initializer = pathProperty.getInitializerIfKind(ts_morph_1.SyntaxKind.StringLiteral);
|
|
25
|
-
if (initializer) {
|
|
26
|
-
if (
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
return FindParentRoute(children, path);
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
// console.log('Found parent route');
|
|
34
|
-
return e;
|
|
35
|
-
}
|
|
25
|
+
if ((initializer === null || initializer === void 0 ? void 0 : initializer.getLiteralText()) === fragment) {
|
|
26
|
+
if (path.length) {
|
|
27
|
+
const children = GetRouteChildrenArray(e);
|
|
28
|
+
// console.log('Continue search for parent route');
|
|
29
|
+
return FindParentRouteByPath(children, path);
|
|
36
30
|
}
|
|
37
31
|
else {
|
|
38
|
-
// console.log('
|
|
32
|
+
// console.log('Found parent route');
|
|
33
|
+
return e;
|
|
39
34
|
}
|
|
40
35
|
}
|
|
41
36
|
else {
|
|
42
|
-
// console.log('Path property
|
|
37
|
+
// console.log('Path property does not match', initializer.getLiteralText(), fragment);
|
|
43
38
|
}
|
|
44
39
|
}
|
|
45
40
|
else {
|
|
@@ -52,10 +47,30 @@ function FindParentRoute(ale, path) {
|
|
|
52
47
|
}
|
|
53
48
|
return null;
|
|
54
49
|
}
|
|
55
|
-
exports.
|
|
56
|
-
function
|
|
57
|
-
const
|
|
50
|
+
exports.FindParentRouteByPath = FindParentRouteByPath;
|
|
51
|
+
function FindParentRouteByComponent(ale, component) {
|
|
52
|
+
for (const e of ale.getElements()) {
|
|
53
|
+
if (e.isKind(ts_morph_1.SyntaxKind.ObjectLiteralExpression)) {
|
|
54
|
+
const componentProperty = e.getProperty('component');
|
|
55
|
+
if (componentProperty === null || componentProperty === void 0 ? void 0 : componentProperty.isKind(ts_morph_1.SyntaxKind.PropertyAssignment)) {
|
|
56
|
+
const initializer = componentProperty.getInitializer();
|
|
57
|
+
if ((initializer === null || initializer === void 0 ? void 0 : initializer.getText()) === component) {
|
|
58
|
+
return e;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return null;
|
|
64
|
+
}
|
|
65
|
+
exports.FindParentRouteByComponent = FindParentRouteByComponent;
|
|
66
|
+
function FindParentRouteChildrenArrayByPath(ale, path) {
|
|
67
|
+
const parent = FindParentRouteByPath(ale, path);
|
|
68
|
+
return parent ? GetRouteChildrenArray(parent) : null;
|
|
69
|
+
}
|
|
70
|
+
exports.FindParentRouteChildrenArrayByPath = FindParentRouteChildrenArrayByPath;
|
|
71
|
+
function FindParentRouteChildrenArrayByComponent(ale, component) {
|
|
72
|
+
const parent = FindParentRouteByComponent(ale, component);
|
|
58
73
|
return parent ? GetRouteChildrenArray(parent) : null;
|
|
59
74
|
}
|
|
60
|
-
exports.
|
|
75
|
+
exports.FindParentRouteChildrenArrayByComponent = FindParentRouteChildrenArrayByComponent;
|
|
61
76
|
//# sourceMappingURL=find-parent-route.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find-parent-route.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/find-parent-route.ts"],"names":[],"mappings":";;;AAAA,uCAMkB;AAElB,SAAgB,qBAAqB,CAAC,CAA0B;;IAC9D,MAAM,gBAAgB,GAAG,MAAA,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,mCAAI,CAAC,CAAC,WAAW,CAAC;QAClE,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,wBAAa,CAAC,kBAAkB;KACvC,CAAC,CAAC;IACH,IAAI,gBAAgB,YAAY,6BAAkB,EAAE;QAClD,OAAO,gBAAgB,CAAC,2BAA2B,CAAC,qBAAU,CAAC,sBAAsB,CAAC,CAAC;KACxF;IACD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;AACnE,CAAC;AAVD,sDAUC;AAED,SAAgB,
|
|
1
|
+
{"version":3,"file":"find-parent-route.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/find-parent-route.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ const ts_morph_1 = require("@rxap/ts-morph");
|
|
|
5
5
|
const ts_morph_2 = require("ts-morph");
|
|
6
6
|
require("colors");
|
|
7
7
|
function RemoveRoute(sourceFile, options) {
|
|
8
|
+
var _a;
|
|
8
9
|
const { path, component, index, loadRemoteModule, name = 'ROUTES' } = options;
|
|
9
10
|
if (!path && !component && index === undefined && !loadRemoteModule) {
|
|
10
11
|
throw new Error('You must provide a path or a component or a index or a loadRemoteModule to remove a route');
|
|
@@ -36,7 +37,14 @@ function RemoveRoute(sourceFile, options) {
|
|
|
36
37
|
const loadChildrenProperty = obj.getProperty('loadChildren');
|
|
37
38
|
if (loadChildrenProperty) {
|
|
38
39
|
const value = loadChildrenProperty.asKindOrThrow(ts_morph_2.SyntaxKind.PropertyAssignment).getInitializer();
|
|
39
|
-
|
|
40
|
+
let regex;
|
|
41
|
+
if (typeof loadRemoteModule === 'string') {
|
|
42
|
+
regex = new RegExp(`^\\(\\) =>[\\s\\S]+loadRemoteModule\\('${loadRemoteModule}'`);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
regex = new RegExp(`^\\(\\) =>[\\s\\S]+loadRemoteModule\\('${loadRemoteModule.name}',\\s*'${(_a = loadRemoteModule.entry) !== null && _a !== void 0 ? _a : './routes'}'\\)`);
|
|
46
|
+
}
|
|
47
|
+
if (value.getText().match(regex)) {
|
|
40
48
|
arrayLiteralExpression.removeElement(item);
|
|
41
49
|
return;
|
|
42
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove-route.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/remove-route.ts"],"names":[],"mappings":";;;AAAA,6CAA2D;AAC3D,uCAGkB;AAClB,kBAAgB;AAUhB,SAAgB,WAAW,CAAC,UAAsB,EAAE,OAA2B
|
|
1
|
+
{"version":3,"file":"remove-route.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/remove-route.ts"],"names":[],"mappings":";;;AAAA,6CAA2D;AAC3D,uCAGkB;AAClB,kBAAgB;AAUhB,SAAgB,WAAW,CAAC,UAAsB,EAAE,OAA2B;;IAE7E,MAAM,EACJ,IAAI,EACJ,SAAS,EACT,KAAK,EACL,gBAAgB,EAChB,IAAI,GAAG,QAAQ,EAChB,GAAG,OAAO,CAAC;IAEZ,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,gBAAgB,EAAE;QACnE,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAC;KAC9G;IAED,IAAI,IAAI,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;KACpC;IAED,MAAM,mBAAmB,GAAG,IAAA,oCAAyB,EAAC,UAAU,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAEhH,MAAM,sBAAsB,GAAG,mBAAmB,CAAC,2BAA2B,CAAC,qBAAU,CAAC,sBAAsB,CAAC,CAAC;IAElH,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,sBAAsB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC5C,OAAO;KACR;IAED,MAAM,KAAK,GAAG,sBAAsB,CAAC,WAAW,EAAE,CAAC;IAEnD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,IAAI,IAAI,CAAC,MAAM,CAAC,qBAAU,CAAC,uBAAuB,CAAC,EAAE;YACnD,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,qBAAU,CAAC,uBAAuB,CAAC,CAAC;YACnE,IAAI,SAAS,EAAE;gBACb,MAAM,iBAAiB,GAAG,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;gBACvD,IAAI,iBAAiB,EAAE;oBACrB,MAAM,KAAK,GAAG,iBAAiB,CAAC,aAAa,CAAC,qBAAU,CAAC,kBAAkB,CAAC,CAAC,cAAc,EAAG,CAAC;oBAC/F,IAAI,KAAK,CAAC,OAAO,EAAE,KAAK,SAAS,EAAE;wBACjC,sBAAsB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;wBAC3C,OAAO;qBACR;iBACF;aACF;YACD,IAAI,gBAAgB,EAAE;gBACpB,MAAM,oBAAoB,GAAG,GAAG,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;gBAC7D,IAAI,oBAAoB,EAAE;oBACxB,MAAM,KAAK,GAAG,oBAAoB,CAAC,aAAa,CAAC,qBAAU,CAAC,kBAAkB,CAAC,CAAC,cAAc,EAAG,CAAC;oBAClG,IAAI,KAAa,CAAC;oBAClB,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE;wBACxC,KAAK,GAAG,IAAI,MAAM,CAAC,0CAA0C,gBAAgB,GAAG,CAAC,CAAC;qBACnF;yBAAM;wBACL,KAAK,GAAG,IAAI,MAAM,CAAC,0CAA0C,gBAAgB,CAAC,IAAI,UAAU,MAAA,gBAAgB,CAAC,KAAK,mCAAI,UAAU,MAAM,CAAC,CAAC;qBACzI;oBACD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;wBAChC,sBAAsB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;wBAC3C,OAAO;qBACR;iBACF;aACF;SACF;KACF;IAED,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;AAGjD,CAAC;AAhED,kCAgEC"}
|