@rxap/ts-morph 1.1.0-dev.27 → 1.1.0-dev.29
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 +13 -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/src/lib/coerce-imports.js +10 -0
- package/src/lib/coerce-imports.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,19 @@
|
|
|
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.29](https://gitlab.com/rxap/packages/compare/@rxap/ts-morph@1.1.0-dev.28...@rxap/ts-morph@1.1.0-dev.29) (2024-04-12)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- support simple module imports ([941f726](https://gitlab.com/rxap/packages/commit/941f726b85df2cdcf6d1db00ebaba25d27bf1f0e))
|
|
11
|
+
|
|
12
|
+
# [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)
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
- support complex remove instructions ([960fac0](https://gitlab.com/rxap/packages/commit/960fac050bec4e2b017c2006fac615ccede09ab2))
|
|
17
|
+
- support search and add route by component ([6dd9f2e](https://gitlab.com/rxap/packages/commit/6dd9f2e7fedfe4cbd3af86f88be7b8221c3ae867))
|
|
18
|
+
|
|
6
19
|
# [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
20
|
|
|
8
21
|
### Bug Fixes
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.1.0-dev.
|
|
2
|
+
"version": "1.1.0-dev.29",
|
|
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": "e13d3880ec9119dcbb6b6a5ae8a1ee4d4c4500dc",
|
|
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"}
|
|
@@ -33,9 +33,19 @@ function CoerceImports(sourceFile, structures) {
|
|
|
33
33
|
if (defaultImport) {
|
|
34
34
|
coerceDefaultImport(sourceFile, moduleSpecifier, defaultImport);
|
|
35
35
|
}
|
|
36
|
+
if (!namedImports && !namespaceImport && !defaultImport) {
|
|
37
|
+
coerceModuleSpecifierImport(sourceFile, moduleSpecifier);
|
|
38
|
+
}
|
|
36
39
|
}
|
|
37
40
|
}
|
|
38
41
|
exports.CoerceImports = CoerceImports;
|
|
42
|
+
function coerceModuleSpecifierImport(sourceFile, moduleSpecifier) {
|
|
43
|
+
if (!sourceFile.getImportDeclaration(moduleSpecifier)) {
|
|
44
|
+
sourceFile.addImportDeclaration({
|
|
45
|
+
moduleSpecifier,
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}
|
|
39
49
|
/**
|
|
40
50
|
* This method is used to coerce the default import of a module in a source file. If the import declaration for the specified module exists, it checks for the existence of a default import. If a default import does not exist, it sets the default import to the provided value. If a default import exists and it does not match the provided value, it removes the existing default import and sets it to the provided value. If the import declaration for the specified module does not exist, it adds a new import declaration with the provided module specifier and default import.
|
|
41
51
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coerce-imports.js","sourceRoot":"","sources":["../../../../../packages/ts-morph/src/lib/coerce-imports.ts"],"names":[],"mappings":";;;AAAA,+CAA8C;AAS9C;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,aAAa,CAC3B,UAAsB,EACtB,UAAsG;IAGtG,KAAK,MAAM,SAAS,IAAI,IAAA,uBAAW,EAAC,UAAU,CAAC,EAAE;QAE/C,MAAM,EACJ,eAAe,EACf,YAAY,EACZ,eAAe,EACf,UAAU,EACV,aAAa,GACd,GAAG,SAAS,CAAC;QAEd,IAAI,YAAY,EAAE;YAChB,kBAAkB,CAAC,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;SAC3E;QAED,IAAI,eAAe,EAAE;YACnB,qBAAqB,CAAC,UAAU,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC;SACrE;QAED,IAAI,aAAa,EAAE;YACjB,mBAAmB,CAAC,UAAU,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC;SACjE;KAEF;AAEH,CAAC;
|
|
1
|
+
{"version":3,"file":"coerce-imports.js","sourceRoot":"","sources":["../../../../../packages/ts-morph/src/lib/coerce-imports.ts"],"names":[],"mappings":"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"}
|