cdk-dia 0.5.0 → 0.6.0

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.
Files changed (30) hide show
  1. package/dist/src/cdk/cdk-tree.d.ts +8 -7
  2. package/dist/src/cdk/cdk-tree.js +28 -14
  3. package/dist/src/cdk/cdk-tree.js.map +1 -1
  4. package/dist/src/cdk/tests/cdk-tree.test.d.ts +1 -0
  5. package/dist/src/cdk/tests/cdk-tree.test.js +65 -0
  6. package/dist/src/cdk/tests/cdk-tree.test.js.map +1 -0
  7. package/dist/src/diagram/aws/aws-diagram-generator.js +31 -3
  8. package/dist/src/diagram/aws/aws-diagram-generator.js.map +1 -1
  9. package/dist/src/diagram/aws/aws-edge-resolver.d.ts +3 -2
  10. package/dist/src/diagram/aws/aws-edge-resolver.js +44 -28
  11. package/dist/src/diagram/aws/aws-edge-resolver.js.map +1 -1
  12. package/dist/src/diagram/aws/edge-target.d.ts +17 -0
  13. package/dist/src/diagram/aws/edge-target.js +45 -0
  14. package/dist/src/diagram/aws/edge-target.js.map +1 -0
  15. package/dist/src/diagram/aws/stack-exports-container.d.ts +8 -0
  16. package/dist/src/diagram/aws/stack-exports-container.js +35 -0
  17. package/dist/src/diagram/aws/stack-exports-container.js.map +1 -0
  18. package/dist/src/diagram/component/component.d.ts +3 -1
  19. package/dist/src/diagram/component/component.js +6 -1
  20. package/dist/src/diagram/component/component.js.map +1 -1
  21. package/dist/src/diagram/tests/aws-edge-resolver.test.js +75 -14
  22. package/dist/src/diagram/tests/aws-edge-resolver.test.js.map +1 -1
  23. package/dist/src/diagram/tests/stack-exports-container.test.d.ts +1 -0
  24. package/dist/src/diagram/tests/stack-exports-container.test.js +50 -0
  25. package/dist/src/diagram/tests/stack-exports-container.test.js.map +1 -0
  26. package/dist/src/render/cytoscape/tests/generator.test.js +1 -2
  27. package/dist/src/render/cytoscape/tests/generator.test.js.map +1 -1
  28. package/dist/src/test-fixtures/testCases.js +7 -1
  29. package/dist/src/test-fixtures/testCases.js.map +1 -1
  30. package/package.json +1 -1
@@ -3,14 +3,16 @@ export declare class Tree {
3
3
  tree: Node;
4
4
  static fromObject(object: Record<string, unknown>): Tree;
5
5
  }
6
+ export declare enum ConstructInfoFqnType {
7
+ STACK = 0,
8
+ STAGE = 1,
9
+ APP = 2,
10
+ CUSTOM_RESOURCE = 3
11
+ }
6
12
  export declare class ConstructInfoFqn {
7
- static STACK: ConstructInfoFqn;
8
- static STAGE: ConstructInfoFqn;
9
- static APP: ConstructInfoFqn;
10
- static CUSTOM_RESOURCE: ConstructInfoFqn;
11
13
  static of: (val: string) => ConstructInfoFqn | undefined;
12
- constructor(cdkVal: string);
13
- readonly cdkVal: string;
14
+ constructor(cdkType: ConstructInfoFqnType);
15
+ readonly typ: ConstructInfoFqnType;
14
16
  }
15
17
  export declare class Node {
16
18
  id: string;
@@ -18,7 +20,6 @@ export declare class Node {
18
20
  children: Map<string, Node>;
19
21
  attributes: Map<string, string | Node | Record<string, string>>;
20
22
  constructInfoFqn: ConstructInfoFqn | undefined;
21
- pathParts: () => Array<string>;
22
23
  findInSubTree(predicate: (Node: any) => boolean): Node | null;
23
24
  static fromObject(object: Record<string, unknown | Record<string, string>>): Node;
24
25
  }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Node = exports.ConstructInfoFqn = exports.Tree = void 0;
3
+ exports.Node = exports.ConstructInfoFqn = exports.ConstructInfoFqnType = exports.Tree = void 0;
4
4
  class Tree {
5
5
  static fromObject(object) {
6
6
  const tree = new Tree();
@@ -10,26 +10,40 @@ class Tree {
10
10
  }
11
11
  }
12
12
  exports.Tree = Tree;
13
+ var ConstructInfoFqnType;
14
+ (function (ConstructInfoFqnType) {
15
+ ConstructInfoFqnType[ConstructInfoFqnType["STACK"] = 0] = "STACK";
16
+ ConstructInfoFqnType[ConstructInfoFqnType["STAGE"] = 1] = "STAGE";
17
+ ConstructInfoFqnType[ConstructInfoFqnType["APP"] = 2] = "APP";
18
+ ConstructInfoFqnType[ConstructInfoFqnType["CUSTOM_RESOURCE"] = 3] = "CUSTOM_RESOURCE";
19
+ })(ConstructInfoFqnType = exports.ConstructInfoFqnType || (exports.ConstructInfoFqnType = {}));
13
20
  class ConstructInfoFqn {
14
- constructor(cdkVal) {
15
- this.cdkVal = cdkVal;
21
+ constructor(cdkType) {
22
+ this.typ = cdkType;
16
23
  }
17
24
  }
18
25
  exports.ConstructInfoFqn = ConstructInfoFqn;
19
- ConstructInfoFqn.STACK = new ConstructInfoFqn("@aws-cdk/core.Stack");
20
- ConstructInfoFqn.STAGE = new ConstructInfoFqn("@aws-cdk/core.Stage");
21
- ConstructInfoFqn.APP = new ConstructInfoFqn("@aws-cdk/core.App");
22
- ConstructInfoFqn.CUSTOM_RESOURCE = new ConstructInfoFqn("@aws-cdk/core.CustomResource");
23
- ConstructInfoFqn.of = (val) => [
24
- ConstructInfoFqn.STACK,
25
- ConstructInfoFqn.STAGE,
26
- ConstructInfoFqn.APP,
27
- ConstructInfoFqn.CUSTOM_RESOURCE
28
- ].find(fqn => fqn.cdkVal === val);
26
+ ConstructInfoFqn.of = (val) => {
27
+ switch (val) {
28
+ case "@aws-cdk/core.Stack":
29
+ case "aws-cdk-lib.Stack":
30
+ return new ConstructInfoFqn(ConstructInfoFqnType.STACK);
31
+ case "@aws-cdk/core.Stage":
32
+ case "aws-cdk-lib.Stage":
33
+ return new ConstructInfoFqn(ConstructInfoFqnType.STAGE);
34
+ case "@aws-cdk/core.App":
35
+ case "aws-cdk-lib.App":
36
+ return new ConstructInfoFqn(ConstructInfoFqnType.APP);
37
+ case "@aws-cdk/core.CustomResource":
38
+ case "aws-cdk-lib.CustomResource":
39
+ return new ConstructInfoFqn(ConstructInfoFqnType.CUSTOM_RESOURCE);
40
+ default:
41
+ return undefined;
42
+ }
43
+ };
29
44
  class Node {
30
45
  constructor() {
31
46
  this.constructInfoFqn = undefined;
32
- this.pathParts = () => this.path.split("/");
33
47
  }
34
48
  findInSubTree(predicate) {
35
49
  if (predicate(this))
@@ -1 +1 @@
1
- {"version":3,"file":"cdk-tree.js","sourceRoot":"","sources":["../../../src/cdk/cdk-tree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cdk-tree.js","sourceRoot":"","sources":["../../../src/cdk/cdk-tree.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ const cdk = __importStar(require("../cdk-tree"));
26
+ const testCases_1 = require("../../test-fixtures/testCases");
27
+ const tree_json_loader_1 = require("../tree-json-loader");
28
+ const path_1 = __importDefault(require("path"));
29
+ if (global['jest-specific-init'] == undefined) {
30
+ global['jest-specific-init'] = true;
31
+ require("jest-specific-snapshot");
32
+ }
33
+ describe("cdk-tree parsing", () => {
34
+ testCases_1.testCases.forEach(test => {
35
+ it(`${test.cdkTreePath} - ${test.jsonTreeFile} - ${test.id}`, () => {
36
+ const cdkTree = tree_json_loader_1.TreeJsonLoader.load(`${test.cdkTreePath}${test.jsonTreeFile}.json`);
37
+ const pathToSnap = path_1.default.resolve(process.cwd(), `./snapshots/cdk-tree-parsing-as-expected-${test.jsonTreeFile}-${test.id}.snapshot`);
38
+ expect(cdkTree.tree).toMatchSpecificSnapshot(pathToSnap);
39
+ });
40
+ });
41
+ });
42
+ describe('cdk-tree', () => {
43
+ it('fromComponent() - parses exports', () => {
44
+ const exportsNode = cdk.Node.fromObject({
45
+ "id": "Exports",
46
+ "path": "stack-with-topic/Exports",
47
+ "children": {
48
+ "Output{\"Ref\":\"thetopic9E1A294D\"}": {
49
+ "id": "Output{\"Ref\":\"thetopic9E1A294D\"}",
50
+ "path": "stack-with-topic/Exports/Output{\"Ref\":\"thetopic9E1A294D\"}",
51
+ "constructInfo": {
52
+ "fqn": "aws-cdk-lib.CfnOutput",
53
+ "version": "2.0.0"
54
+ }
55
+ }
56
+ },
57
+ "constructInfo": {
58
+ "fqn": "constructs.Construct",
59
+ "version": "10.0.9"
60
+ }
61
+ });
62
+ expect(exportsNode.id).toEqual("Exports");
63
+ });
64
+ });
65
+ //# sourceMappingURL=cdk-tree.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cdk-tree.test.js","sourceRoot":"","sources":["../../../../src/cdk/tests/cdk-tree.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAkC;AAClC,6DAAuD;AACvD,0DAAkD;AAClD,gDAAuB;AAEvB,IAAI,MAAM,CAAC,oBAAoB,CAAC,IAAI,SAAS,EAAE;IAC3C,MAAM,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAA;IACnC,OAAO,CAAC,wBAAwB,CAAC,CAAA;CACpC;AAED,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC9B,qBAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAErB,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,MAAM,IAAI,CAAC,YAAY,MAAM,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE;YAC/D,MAAM,OAAO,GAAG,iCAAc,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,OAAO,CAAC,CAAA;YACnF,MAAM,UAAU,GAAG,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,4CAA4C,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;YAEpI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAA;QAC5D,CAAC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACtB,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QACxC,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,UAAU,CAAE;YACrC,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,0BAA0B;YAClC,UAAU,EAAE;gBACR,sCAAsC,EAAE;oBACpC,IAAI,EAAE,sCAAsC;oBAC5C,MAAM,EAAE,+DAA+D;oBACvE,eAAe,EAAE;wBACb,KAAK,EAAE,uBAAuB;wBAC9B,SAAS,EAAE,OAAO;qBACrB;iBACJ;aACJ;YACD,eAAe,EAAE;gBACb,KAAK,EAAE,sBAAsB;gBAC7B,SAAS,EAAE,QAAQ;aACtB;SACJ,CAAC,CAAA;QAEH,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC5C,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
@@ -1,9 +1,30 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
2
21
  Object.defineProperty(exports, "__esModule", { value: true });
3
22
  exports.AwsDiagramGenerator = void 0;
23
+ const cdk = __importStar(require("../../cdk"));
4
24
  const cdk_1 = require("../../cdk");
5
25
  const __1 = require("..");
6
26
  const customizable_attribute_1 = require("../component/customizable-attribute");
27
+ const stack_exports_container_1 = require("./stack-exports-container");
7
28
  class AwsDiagramGenerator extends __1.DiagramGenerator {
8
29
  constructor(edgeResolver, iconSupplier) {
9
30
  super();
@@ -63,10 +84,17 @@ class AwsDiagramGenerator extends __1.DiagramGenerator {
63
84
  return null;
64
85
  component = new __1.DiagramComponent(AwsDiagramGenerator.sanitizeComponentId(cdkNode.path), [cdkNode.id], parentComponent);
65
86
  }
66
- if (cdkNode.constructInfoFqn === cdk_1.ConstructInfoFqn.STACK) {
87
+ if (cdkNode.constructInfoFqn && cdkNode.constructInfoFqn.typ === cdk.ConstructInfoFqnType.STACK) {
67
88
  component.tags.set(__1.ComponentTags.isCdkStack, "true");
89
+ const exportsNode = cdkNode.children.get('Exports');
90
+ if (exportsNode) {
91
+ try {
92
+ component.stackExportsContainer = stack_exports_container_1.StackExportsContainer.fromComponent(exportsNode);
93
+ }
94
+ catch (e) { }
95
+ }
68
96
  }
69
- if (cdkNode.constructInfoFqn === cdk_1.ConstructInfoFqn.STAGE) {
97
+ if (cdkNode.constructInfoFqn && cdkNode.constructInfoFqn.typ === cdk.ConstructInfoFqnType.STAGE) {
70
98
  component.tags.set(__1.ComponentTags.isCdkStage, "true");
71
99
  }
72
100
  this.applyAttributeSetCustomizers(cdkNode, component);
@@ -140,7 +168,7 @@ class AwsDiagramGenerator extends __1.DiagramGenerator {
140
168
  if (cfnTypeAttr !== undefined) {
141
169
  return AwsDiagramGenerator.generateCfnProps(cfnTypeAttr);
142
170
  }
143
- if (tree.constructInfoFqn === cdk_1.ConstructInfoFqn.CUSTOM_RESOURCE) {
171
+ if (tree.constructInfoFqn && tree.constructInfoFqn.typ === cdk.ConstructInfoFqnType.CUSTOM_RESOURCE) {
144
172
  return AwsDiagramGenerator.generateCfnProps("AWS::CloudFormation::CustomResource");
145
173
  }
146
174
  return { cfnType: null, label: null };
@@ -1 +1 @@
1
- {"version":3,"file":"aws-diagram-generator.js","sourceRoot":"","sources":["../../../../src/diagram/aws/aws-diagram-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aws-diagram-generator.js","sourceRoot":"","sources":["../../../../src/diagram/aws/aws-diagram-generator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,+CAAgC;AAChC,mCAAgC;AAEhC,0BAAwH;AAExH,gFAAwF;AACxF,uEAA+D;AAK/D,MAAa,mBAAoB,SAAQ,oBAAgB;IAKrD,YAAY,YAA6B,EAAE,YAA6B;QACpE,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;IACpC,CAAC;IAED,QAAQ,CAAC,OAAiB,EAAE,QAAiB,EAAE,iBAAmC,KAAK;QAEnF,MAAM,OAAO,GAAG,IAAI,WAAO,EAAE,CAAA;QAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAA;QAG5B,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAA;QAGnD,IAAI,cAAc,KAAK,KAAK;YAAE,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAA;QAGrF,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAGhD,IAAI,QAAQ;YAAE,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAGtD,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAGlC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAGxD,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAExC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAElC,OAAO,OAAO,CAAA;IAClB,CAAC;IAEO,sBAAsB,CAAC,OAAiB;QAE5C,MAAM,IAAI,GAAG,IAAI,iBAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QAE1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAEnD,IAAI,SAAS,IAAI,IAAI,IAAI,KAAK,CAAC,gBAAgB,KAAK,SAAS,EAAE;gBAC3D,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;aACvD;YAED,IAAI,SAAS,IAAI,IAAI,EAAE;gBACnB,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;aAClC;QACL,CAAC,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACf,CAAC;IAEO,eAAe,CAAC,OAAiB,EAAE,eAA0B;QAEjE,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAC,eAAe,CAAC,CAAA;QAEjE,IAAI,SAAS,IAAI,IAAI;YAAE,OAAO,IAAI,CAAA;QAElC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;YAE7D,IAAI,cAAc,IAAI,IAAI;gBAAE,SAAS,CAAC,eAAe,CAAC,cAAc,CAAC,CAAA;QAC7E,CAAC,CAAC,CAAA;QAEF,OAAO,SAAS,CAAA;IACpB,CAAC;IAEO,iBAAiB,CAAC,OAAiB,EAAE,eAA0B;QAEnE,MAAM,EAAC,OAAO,EAAE,KAAK,EAAC,GAAG,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAE9D,IAAI,SAAoB,CAAA;QAExB,IAAI,OAAO,IAAI,IAAI,EAAE;YACjB,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,eAAe,CAAC,CAAA;SAClF;aAAM;YAEH,MAAM,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;gBAC9C,OAAO,mBAAmB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;YAChD,CAAC,CAAC,CAAA;YAEF,IAAI,YAAY,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAA;YAErC,SAAS,GAAG,IAAI,oBAAgB,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,CAAA;SACzH;QAED,IAAI,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,CAAC,GAAG,KAAK,GAAG,CAAC,oBAAoB,CAAC,KAAK,EAAE;YAC7F,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;YAEpD,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACnD,IAAI,WAAW,EAAE;gBACb,IAAI;oBACA,SAAS,CAAC,qBAAqB,GAAG,+CAAqB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;iBACrF;gBAAC,OAAO,CAAC,EAAE,GAAE;aACjB;SACJ;QAED,IAAI,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,CAAC,GAAG,KAAK,GAAG,CAAC,oBAAoB,CAAC,KAAK,EAAE;YAC7F,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;SACvD;QAED,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAErD,OAAO,SAAS,CAAA;IACpB,CAAC;IAEO,yBAAyB,CAAC,OAAgB,EAAE,gBAA0B;QAE1E,MAAM,cAAc,GAAgB,EAAE,CAAA;QACtC,MAAM,cAAc,GAAgB,EAAE,CAAA;QAEtC,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAE,CAAC,SAAoB,EAAE,EAAE;YAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;YACvC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAA;YAC/D,IAAI,OAAO,EAAC;gBACR,IAAI,CAAC,UAAU,EAAE;oBACb,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;iBACjC;qBAAM;oBACH,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;iBACjC;aACJ;QACL,CAAC,CAAC,CAAA;QAEF,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAE,CAAC,SAAoB,EAAE,EAAE;YAE7D,MAAM,eAAe,GAAG,cAAc,CAAC,IAAI,CAAE,aAAa,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,IAAI,IAAI,CAAA;YAC1G,MAAM,eAAe,GAAG,cAAc,CAAC,IAAI,CAAE,aAAa,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,IAAI,IAAI,CAAA;YAC1G,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;YACvC,MAAM,eAAe,GAAG,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;YAE1D,MAAM,qBAAqB,GAAG,SAAS,CAAC,oBAAoB,CAAE,YAAY,CAAC,EAAE;gBACzE,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAA;YACxF,CAAC,CAAC,CAAA;YAGF,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,IAAI,CAAC,qBAAqB,CAAC;gBAC/D,CAAC,OAAO,IAAI,CAAC,qBAAqB,IAAI,eAAe,CAAC,EACzD;gBACG,SAAS,CAAC,gBAAgB,EAAE,CAAA;aAC/B;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,OAAO,CAAC,SAAoB;QAChC,OAAO,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAa,CAAC,UAAU,CAAC,IAAI,MAAM,CAAA;IACjE,CAAC;IAEO,UAAU,CAAC,cAAwB,EAAE,SAAoB;QAC7D,OAAO,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAA;IAC1F,CAAC;IAEO,4BAA4B,CAAC,IAAc,EAAC,SAAoB;QACpE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAE,CAAC,KAAa,EAAE,GAAW,EAAE,EAAE;YAEpD,IAAI,GAAG,CAAC,UAAU,CAAC,YAAM,CAAC,UAAU,CAAC,EAAC;gBAClC,QAAQ,GAAG,CAAC,MAAM,CAAC,YAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAC;oBACzC,KAAK,8CAAqB,CAAC,IAAI;wBAC3B,8CAAqB,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;wBACpE,MAAM;oBACV;wBACI,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAA;iBACnD;aACJ;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,oBAAoB,CAAC,IAAc,EAAE,OAAe,EAAE,eAAuB,EAAE,MAAiB;QAEpG,MAAM,SAAS,GAAG,IAAI,oBAAgB,CAClC,mBAAmB,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAClD,mBAAmB,CAAC,UAAU,CAAC,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,EAC1D,MAAM,CAAC,CAAA;QAEX,MAAM,IAAI,GAAkB,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,8BAA8B,CAA2B,CAAC,CAAA;QAE/I,IAAI,IAAI,KAAK,IAAI,EAAE;YACf,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;SAC1B;aAAM;YAEH,SAAS,CAAC,KAAK,GAAG;gBACd,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,WAAW,EAAE,CAAA,CAAC,CAAC,CAAC;gBACtE,IAAI,CAAC,EAAE;aACN,CAAA;SACR;QAED,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAE,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,WAAW,EAAE,IAAI,UAAU,CAAA,CAAC,CAAC,CAAC,CAAA;QAE1F,OAAO,SAAS,CAAA;IACpB,CAAC;IAEO,MAAM,CAAC,QAAQ,CAAC,IAAc;QAElC,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAA;QAEtE,IAAI,WAAW,KAAK,SAAS,EAAE;YAC3B,OAAO,mBAAmB,CAAC,gBAAgB,CAAC,WAAqB,CAAC,CAAA;SACrE;QAGD,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,KAAK,GAAG,CAAC,oBAAoB,CAAC,eAAe,EAAE;YACjG,OAAO,mBAAmB,CAAC,gBAAgB,CAAC,qCAAqC,CAAC,CAAA;SACrF;QAED,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAC,CAAA;IACvC,CAAC;IAEO,MAAM,CAAC,gBAAgB,CAAC,OAAe;QAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACpD,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAC,CAAA;IAC3C,CAAC;IAEO,MAAM,CAAC,WAAW,CAAC,IAAc;QACrC,MAAM,EAAC,OAAO,EAAC,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACpD,OAAO,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAA;IACjE,CAAC;IAEO,qBAAqB,CAAC,IAAe;QAEzC,MAAM,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAa,CAAC,mBAAmB,CAAC,CAAA;QAEhF,MAAM,cAAc,GAAG,uBAAuB,KAAK,sCAAa,CAAC,cAAc,CAAA;QAC/E,MAAM,0BAA0B,GAAG,uBAAuB,KAAK,sCAAa,CAAC,4BAA4B,CAAA;QACzG,MAAM,iBAAiB,GAAG,0BAA0B,IAAI,uBAAuB,KAAK,sCAAa,CAAC,kBAAkB,CAAA;QAEpH,IAAI,cAAc,EAAC;YACf,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;SACnE;QAGD,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACjE,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,EAAE,CAAA;YAC9B,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,UAAU,CAAA;QAChD,CAAC,CAAC,CAAA;QAEF,IAAI,iBAAiB,KAAK,SAAS,IAAI,CAAC,iBAAiB,EAAE;YACvD,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;SAC7D;aAAM;YACH,IAAI,CAAC,0BAA0B,EAAE;gBAC7B,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBAC/B,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAA;gBACnC,CAAC,CAAC,CAAA;aACL;SACJ;IACL,CAAC;IAEO,qBAAqB,CAAC,MAAiB,EAAE,QAAmB;QAEhE,IAAI,MAAM,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI;YAAE,OAAM;QAE9C,MAAM,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAA;QAC3B,QAAQ,CAAC,gBAAgB,EAAE,CAAA;QAC3B,OAAO,QAAQ,CAAA;IACnB,CAAC;IAKO,eAAe,CAAC,IAAe;QAEnC,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC/B,MAAM,kBAAkB,GAAa,GAAG,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,GAAG,OAAO,eAAe,CAAC,EAAE,CAAA,CAAC,CAAC,CAAC,CAAA;YAC9G,IAAI,kBAAkB,CAAC,MAAM,IAAI,CAAC;gBAC9B,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA,CAAA,CAAC,CAAC,KAAK,SAAS;gBAC9E,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA,CAAA,CAAC,CAAC,KAAK,SAAS;gBAClF,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA,CAAA,CAAC,CAAC,KAAK,SAAS,EACrF;gBACG,GAAG,CAAC,gCAAgC,EAAE,CAAA;gBACtC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAA;aAC/B;iBAAM;gBACH,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;aAC5B;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,sBAAsB,CAAC,IAAe;QAE1C,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAE,SAAS,CAAC,EAAE;YACtC,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAA;YAC3D,IAAI,SAAS,KAAK,YAAY,EAAC;gBAC3B,IACI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAa,CAAC,UAAU,CAAC,KAAK,MAAM;oBACvD,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAa,CAAC,UAAU,CAAC,KAAK,MAAM,EAEzD;oBACE,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAC,YAAY,CAAC,CAAA;iBACnD;aACJ;QACL,CAAC,CAAC,CAAA;QAEF,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAA;QACvC,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,EAAE;YACxB,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;YAC5B,OAAO,MAAM,CAAA;SAChB;QACD,OAAO,IAAI,CAAA;IACf,CAAC;IAEO,qBAAqB,CAAC,OAAkB;QAE5C,IAAI,CAAC,OAAO,YAAY,oBAAgB,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAa,CAAC,UAAU,CAAC,IAAI,MAAM,EAAE;YAE/F,IAAI;gBACA,MAAM,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC,iBAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;gBAEpF,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;oBAE1D,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,eAAe,CAAC,EAAE;wBAC3D,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;wBAGzC,IAAI,eAAe,YAAY,oBAAgB,EAAE;4BACjD,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,mBAAmB,CAAC,iBAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAA;yBACtG;qBACJ;gBACL,CAAC,CAAC,CAAA;aACT;YAAC,OAAO,CAAC,EAAE;gBACR,OAAO,CAAC,GAAG,CAAC,iCAAiC,GAAG,CAAC,CAAC,CAAA;aACrD;SACJ;QAED,OAAO,CAAC,aAAa,EAAE,CAAC,OAAO,CAAE,GAAG,CAAC,EAAE;YACnC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,eAAe,CAAC,OAAkB;QACtC,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,OAAO,CAAE,IAAI,CAAC,EAAE;YAChD,IAAI,IAAI,IAAI,OAAO,EAAE;gBACjB,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;aACjC;QACL,CAAC,CAAC,CAAA;QAEF,OAAO,CAAC,aAAa,EAAE,CAAC,OAAO,CAAE,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;IAC1E,CAAC;;AAtVL,kDAiWC;AARU,uCAAmB,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;AAC3E,8BAAU,GAAG,CAAC,KAAe,EAAE,EAAE;IAE5C,IAAI,KAAK,CAAC,MAAM,GAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAE,CAAC,CAAC,IAAI,UAAU;QACtD,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAC,KAAK,CAAC,MAAM,GAAE,CAAC,CAAC,CAAA;IAEzC,OAAO,KAAK,CAAA;AAChB,CAAC,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import { Diagram } from "../diagram";
2
2
  import * as cdk from "../../cdk";
3
+ import { EdgeTarget } from "./edge-target";
3
4
  export declare class AwsEdgeResolver {
4
5
  resolveEdges(tree: cdk.Node, diagram: Diagram): void;
5
6
  private addEdges;
@@ -7,6 +8,6 @@ export declare class AwsEdgeResolver {
7
8
  private findTargetComponent;
8
9
  private findUniqueResourceId;
9
10
  private edgeTargets;
10
- scrapePossibleEdgeTargets(object: null | string | Record<string, unknown>): Set<string>;
11
- scrapeAllStrings(object: any): Set<string>;
11
+ scrapePossibleEdgeTargets(object: null | string | Record<string, unknown>): Array<EdgeTarget>;
12
+ scrapeAllStrings(object: any): Set<EdgeTarget>;
12
13
  }
@@ -24,6 +24,7 @@ const _ = __importStar(require("lodash"));
24
24
  const uniqueid_1 = require("@aws-cdk/core/lib/private/uniqueid");
25
25
  const component_1 = require("../component/component");
26
26
  const aws_diagram_generator_1 = require("./aws-diagram-generator");
27
+ const edge_target_1 = require("./edge-target");
27
28
  class AwsEdgeResolver {
28
29
  resolveEdges(tree, diagram) {
29
30
  this.addEdges(tree, diagram);
@@ -41,22 +42,36 @@ class AwsEdgeResolver {
41
42
  }
42
43
  addEdge(targetString, originComponent) {
43
44
  const cdkStackTree = originComponent.treeAncestorWithTag(component_1.ComponentTags.isCdkStack, "true");
44
- let targetComponent = this.findTargetComponent(cdkStackTree, targetString);
45
- if (targetComponent != null) {
46
- originComponent.links.addLink(targetComponent);
45
+ if (cdkStackTree) {
46
+ let targetComponent = this.findTargetComponent(cdkStackTree, targetString);
47
+ if (targetComponent != null) {
48
+ originComponent.links.addLink(targetComponent);
49
+ }
47
50
  }
48
51
  }
49
52
  findTargetComponent(cdkStackTree, targetString) {
50
- const perfectMatch = cdkStackTree.subTreeFindComponent((component) => {
51
- const uniqueResourceId = this.findUniqueResourceId(component);
52
- return targetString === uniqueResourceId;
53
- });
54
- if (perfectMatch != null)
55
- return perfectMatch;
56
- return cdkStackTree.subTreeFindComponent((component) => {
57
- const uniqueResourceId = this.findUniqueResourceId(component);
58
- return targetString.toLowerCase() === uniqueResourceId;
59
- });
53
+ if (targetString instanceof edge_target_1.EdgeTargetSimpleString) {
54
+ const perfectMatch = cdkStackTree.subTreeFindComponent((component) => {
55
+ const uniqueResourceId = this.findUniqueResourceId(component);
56
+ return targetString.value === uniqueResourceId;
57
+ });
58
+ if (perfectMatch != null)
59
+ return perfectMatch;
60
+ return cdkStackTree.subTreeFindComponent((component) => {
61
+ const uniqueResourceId = this.findUniqueResourceId(component);
62
+ return targetString.value.toLowerCase() === uniqueResourceId;
63
+ });
64
+ }
65
+ if (targetString instanceof edge_target_1.EdgeTargetStackExport) {
66
+ const treeRoot = cdkStackTree.treeRoot();
67
+ const exportingStack = treeRoot.subTreeFindComponent((component) => {
68
+ return component.tags.get(component_1.ComponentTags.isCdkStack) && component.id == targetString.stackId;
69
+ });
70
+ const targetComponentIdInTargetStack = exportingStack.stackExportsContainer.getExport(targetString);
71
+ return exportingStack.subTreeFindComponent(component => {
72
+ return this.findUniqueResourceId(component) == targetComponentIdInTargetStack;
73
+ });
74
+ }
60
75
  }
61
76
  findUniqueResourceId(component) {
62
77
  const stackDepth = component.treeAncestorWithTag(component_1.ComponentTags.isCdkStack, "true");
@@ -69,38 +84,39 @@ class AwsEdgeResolver {
69
84
  const props = node.attributes.get("aws:cdk:cloudformation:props");
70
85
  if (props == undefined)
71
86
  return Array();
72
- const targets = Array.from(this.scrapePossibleEdgeTargets(props));
73
- return targets.map(path => aws_diagram_generator_1.AwsDiagramGenerator.sanitizeComponentId(path));
87
+ return Array.from(this.scrapePossibleEdgeTargets(props));
74
88
  }
75
89
  scrapePossibleEdgeTargets(object) {
76
90
  if (object === null || typeof object === "string")
77
- return new Set();
78
- const edgeTargets = new Set();
91
+ return new Array();
92
+ const edgeTargets = new Array();
79
93
  for (const key in object) {
80
94
  if (key === "Fn::GetAtt" && object[key][0] !== undefined) {
81
95
  this.scrapeAllStrings(object[key]).forEach(it => {
82
- edgeTargets.add(it);
96
+ edgeTargets.push(it);
83
97
  });
84
98
  }
99
+ if (key === "Fn::ImportValue" && object[key] !== undefined) {
100
+ try {
101
+ edgeTargets.push(edge_target_1.EdgeTargetStackExport.fromFnImportValue(object[key]));
102
+ }
103
+ catch (e) { }
104
+ }
85
105
  if (key === "Ref" && (typeof object[key] === "string")) {
86
- this.scrapeAllStrings(object[key]).forEach(it => {
87
- edgeTargets.add(it);
88
- });
106
+ edgeTargets.push(new edge_target_1.EdgeTargetSimpleString(object[key]));
89
107
  }
90
108
  this.scrapePossibleEdgeTargets(object[key]).forEach(target => {
91
- edgeTargets.add(target);
109
+ edgeTargets.push(target);
92
110
  });
93
111
  }
94
- return edgeTargets;
112
+ return _.uniqWith(edgeTargets, ((a, b) => a.isEqual(b)));
95
113
  }
96
114
  scrapeAllStrings(object) {
97
115
  if (object === null || object === undefined) {
98
116
  return new Set();
99
117
  }
100
118
  if (typeof object === "string") {
101
- const set = new Set();
102
- set.add(object);
103
- return set;
119
+ return new Set([new edge_target_1.EdgeTargetSimpleString(object)]);
104
120
  }
105
121
  if (Array.isArray(object)) {
106
122
  const array = object.map(it => {
@@ -113,10 +129,10 @@ class AwsEdgeResolver {
113
129
  if (typeof object === "object") {
114
130
  for (const key in object) {
115
131
  if (key === "Fn::GetAtt" && object[key][0] !== undefined) {
116
- edgeTargets.add(object[key][0]);
132
+ edgeTargets.add(new edge_target_1.EdgeTargetSimpleString(object[key][0]));
117
133
  }
118
134
  if (key === "Ref" && (typeof object[key] === "string")) {
119
- edgeTargets.add(object[key]);
135
+ edgeTargets.add(new edge_target_1.EdgeTargetSimpleString(object[key]));
120
136
  }
121
137
  this.scrapePossibleEdgeTargets(object[key]).forEach(target => {
122
138
  edgeTargets.add(target);
@@ -1 +1 @@
1
- {"version":3,"file":"aws-edge-resolver.js","sourceRoot":"","sources":["../../../../src/diagram/aws/aws-edge-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aws-edge-resolver.js","sourceRoot":"","sources":["../../../../src/diagram/aws/aws-edge-resolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export declare abstract class EdgeTarget {
2
+ abstract isEqual(other: EdgeTarget): any;
3
+ }
4
+ export declare class EdgeTargetSimpleString extends EdgeTarget {
5
+ value: string;
6
+ constructor(value: string);
7
+ isEqual(other: EdgeTarget): any;
8
+ toString(): string;
9
+ }
10
+ export declare class EdgeTargetStackExport extends EdgeTarget {
11
+ stackId: string;
12
+ exportValue: string;
13
+ constructor(stackId: string, exportValue: string);
14
+ static fromFnImportValue(value: string): EdgeTargetStackExport;
15
+ isEqual(other: EdgeTarget): any;
16
+ toString(): string;
17
+ }
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EdgeTargetStackExport = exports.EdgeTargetSimpleString = exports.EdgeTarget = void 0;
4
+ const aws_diagram_generator_1 = require("./aws-diagram-generator");
5
+ class EdgeTarget {
6
+ }
7
+ exports.EdgeTarget = EdgeTarget;
8
+ class EdgeTargetSimpleString extends EdgeTarget {
9
+ constructor(value) {
10
+ super();
11
+ this.value = aws_diagram_generator_1.AwsDiagramGenerator.sanitizeComponentId(value);
12
+ }
13
+ isEqual(other) {
14
+ if (!(other instanceof EdgeTargetSimpleString))
15
+ return false;
16
+ return this.value == other.value;
17
+ }
18
+ toString() {
19
+ return `EdgeTargetSimpleString: ${this.value}`;
20
+ }
21
+ }
22
+ exports.EdgeTargetSimpleString = EdgeTargetSimpleString;
23
+ class EdgeTargetStackExport extends EdgeTarget {
24
+ constructor(stackId, exportValue) {
25
+ super();
26
+ this.stackId = stackId;
27
+ this.exportValue = exportValue;
28
+ }
29
+ static fromFnImportValue(value) {
30
+ const matches = value.match(/([^:]*):(.*)/);
31
+ if (!matches)
32
+ throw new Error(`FnImportValue not in expected form: ${value}`);
33
+ return new EdgeTargetStackExport(matches[1], matches[2]);
34
+ }
35
+ isEqual(other) {
36
+ if (!(other instanceof EdgeTargetStackExport))
37
+ return false;
38
+ return this.exportValue == other.exportValue && this.stackId == other.stackId;
39
+ }
40
+ toString() {
41
+ return `EdgeTargetStackExport: ${this.stackId} ${this.exportValue}`;
42
+ }
43
+ }
44
+ exports.EdgeTargetStackExport = EdgeTargetStackExport;
45
+ //# sourceMappingURL=edge-target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edge-target.js","sourceRoot":"","sources":["../../../../src/diagram/aws/edge-target.ts"],"names":[],"mappings":";;;AAAA,mEAA2D;AAE3D,MAAsB,UAAU;CAE/B;AAFD,gCAEC;AAED,MAAa,sBAAuB,SAAQ,UAAU;IAGlD,YAAY,KAAa;QACrB,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,KAAK,GAAG,2CAAmB,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAA;IAC/D,CAAC;IAED,OAAO,CAAC,KAAiB;QACrB,IAAI,CAAC,CAAC,KAAK,YAAa,sBAAsB,CAAC;YAAE,OAAO,KAAK,CAAA;QAE7D,OAAO,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAA;IACpC,CAAC;IAGD,QAAQ;QACJ,OAAO,2BAA2B,IAAI,CAAC,KAAK,EAAE,CAAA;IAClD,CAAC;CACJ;AAlBD,wDAkBC;AAED,MAAa,qBAAsB,SAAQ,UAAU;IAEjD,YAAmB,OAAe,EAAS,WAAmB;QAC1D,KAAK,EAAE,CAAA;QADQ,YAAO,GAAP,OAAO,CAAQ;QAAS,gBAAW,GAAX,WAAW,CAAQ;IAE9D,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,KAAa;QAClC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QAE3C,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,EAAE,CAAC,CAAA;QAE7E,OAAO,IAAI,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5D,CAAC;IAED,OAAO,CAAC,KAAiB;QACrB,IAAI,CAAC,CAAC,KAAK,YAAa,qBAAqB,CAAC;YAAE,OAAO,KAAK,CAAA;QAE5D,OAAO,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAA;IACjF,CAAC;IAED,QAAQ;QACJ,OAAO,0BAA0B,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,EAAE,CAAA;IACvE,CAAC;CACJ;AAvBD,sDAuBC"}
@@ -0,0 +1,8 @@
1
+ import * as cdk from "../../cdk";
2
+ import { EdgeTargetStackExport } from "./edge-target";
3
+ export declare class StackExportsContainer {
4
+ private readonly exports;
5
+ private constructor();
6
+ static fromComponent(exportsComponent: cdk.Node): StackExportsContainer;
7
+ getExport(edgeTargetStackExport: EdgeTargetStackExport): string | undefined;
8
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StackExportsContainer = void 0;
4
+ const uniqueid_1 = require("@aws-cdk/core/lib/private/uniqueid");
5
+ class StackExport {
6
+ constructor(targetId, fullId) {
7
+ this.targetId = targetId;
8
+ this.fullId = fullId;
9
+ }
10
+ }
11
+ class StackExportsContainer {
12
+ constructor() {
13
+ this.exports = [];
14
+ }
15
+ static fromComponent(exportsComponent) {
16
+ const container = new StackExportsContainer();
17
+ exportsComponent.children.forEach(exportNode => {
18
+ const matches = exportNode.id.match(new RegExp('Output\{"Ref":"(.*)"\}'));
19
+ if (matches) {
20
+ const refTargetId = matches[1];
21
+ container.exports.push(new StackExport(refTargetId, exportNode.id));
22
+ }
23
+ });
24
+ return container;
25
+ }
26
+ getExport(edgeTargetStackExport) {
27
+ const stackExport = this.exports.find(stackExport => {
28
+ const calculatedExportName = (0, uniqueid_1.makeUniqueId)(['Exports', stackExport.fullId]);
29
+ return calculatedExportName == edgeTargetStackExport.exportValue;
30
+ });
31
+ return stackExport ? stackExport.targetId : undefined;
32
+ }
33
+ }
34
+ exports.StackExportsContainer = StackExportsContainer;
35
+ //# sourceMappingURL=stack-exports-container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stack-exports-container.js","sourceRoot":"","sources":["../../../../src/diagram/aws/stack-exports-container.ts"],"names":[],"mappings":";;;AACA,iEAA+D;AAG/D,MAAM,WAAW;IACb,YACa,QAAgB,EAChB,MAAc;QADd,aAAQ,GAAR,QAAQ,CAAQ;QAChB,WAAM,GAAN,MAAM,CAAQ;IACxB,CAAC;CACP;AAED,MAAa,qBAAqB;IAI9B;QAFiB,YAAO,GAAkB,EAAE,CAAA;IAErB,CAAC;IAExB,MAAM,CAAC,aAAa,CAAC,gBAA0B;QAC3C,MAAM,SAAS,GAAG,IAAI,qBAAqB,EAAE,CAAA;QAE7C,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAE,UAAU,CAAC,EAAE;YAE5C,MAAM,OAAO,GAAG,UAAU,CAAC,EAAE,CAAC,KAAK,CAAE,IAAI,MAAM,CAAC,wBAAwB,CAAC,CAAC,CAAA;YAC1E,IAAI,OAAO,EAAC;gBACR,MAAM,WAAW,GAAW,OAAO,CAAC,CAAC,CAAC,CAAA;gBACtC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,CAAA;aACtE;QACL,CAAC,CAAC,CAAA;QACF,OAAO,SAAS,CAAA;IACpB,CAAC;IAED,SAAS,CAAC,qBAA4C;QAElD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAChD,MAAM,oBAAoB,GAAG,IAAA,uBAAY,EAAC,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;YAC1E,OAAO,oBAAoB,IAAI,qBAAqB,CAAC,WAAW,CAAA;QACpE,CAAC,CAAC,CAAA;QAEF,OAAO,WAAW,CAAA,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;IACxD,CAAC;CACJ;AA7BD,sDA6BC"}
@@ -2,6 +2,7 @@ import { ComponentLinks } from "../component-links";
2
2
  import { Link } from "./link";
3
3
  import { ComponentIcon } from "./icon";
4
4
  import { RootComponent } from "./root-component";
5
+ import { StackExportsContainer } from "../aws/stack-exports-container";
5
6
  export declare type ComponentId = string;
6
7
  export declare enum ComponentTags {
7
8
  isCdkStack = "isCdkStack",
@@ -11,6 +12,7 @@ export declare enum ComponentTags {
11
12
  export declare abstract class Component {
12
13
  protected constructor(id: ComponentId);
13
14
  private _id;
15
+ stackExportsContainer: StackExportsContainer;
14
16
  idPathParts: () => Array<string>;
15
17
  get id(): ComponentId;
16
18
  private setId;
@@ -46,6 +48,6 @@ export declare abstract class Component {
46
48
  private subTreeReverseLinksRec;
47
49
  subTreeLinks(): Array<Link>;
48
50
  private subTreeLinksRec;
49
- treeAncestorWithTag(tagKey: ComponentTags, tagVal: string): Component;
51
+ treeAncestorWithTag(tagKey: ComponentTags, tagVal: string): Component | undefined;
50
52
  isAncestor(possibleAncestor: Component): boolean;
51
53
  }
@@ -177,7 +177,12 @@ class Component {
177
177
  treeAncestorWithTag(tagKey, tagVal) {
178
178
  if (this.tags.get(tagKey) === tagVal)
179
179
  return this;
180
- return this.parent().treeAncestorWithTag(tagKey, tagVal);
180
+ try {
181
+ return this.parent().treeAncestorWithTag(tagKey, tagVal);
182
+ }
183
+ catch (e) {
184
+ return undefined;
185
+ }
181
186
  }
182
187
  isAncestor(possibleAncestor) {
183
188
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/diagram/component/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../../src/diagram/component/component.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const aws_edge_resolver_1 = require("../aws/aws-edge-resolver");
4
+ const edge_target_1 = require("../aws/edge-target");
4
5
  describe("candidate target edges are well scraped from any thing", () => {
5
6
  it(`sample no.1`, () => {
6
7
  const haystack = {
@@ -17,9 +18,12 @@ describe("candidate target edges are well scraped from any thing", () => {
17
18
  ]
18
19
  };
19
20
  const targets = new aws_edge_resolver_1.AwsEdgeResolver().scrapePossibleEdgeTargets(haystack);
20
- expect(targets.has("mayQueue111")).toBeTruthy();
21
- expect(targets.has("QueueName")).toBeTruthy();
22
- expect(targets.size).toEqual(2);
21
+ const expectedTargetValues = [
22
+ new edge_target_1.EdgeTargetSimpleString("mayQueue111"),
23
+ new edge_target_1.EdgeTargetSimpleString("QueueName")
24
+ ];
25
+ expectTargetValuesToBeInSet(targets, expectedTargetValues);
26
+ expect(targets.length).toEqual(2);
23
27
  });
24
28
  it(`sample no.2`, () => {
25
29
  const haystack = {
@@ -176,14 +180,22 @@ describe("candidate target edges are well scraped from any thing", () => {
176
180
  }
177
181
  };
178
182
  const targets = new aws_edge_resolver_1.AwsEdgeResolver().scrapePossibleEdgeTargets(haystack);
179
- expect(targets.has("queue333")).toBeTruthy();
180
- expect(targets.has("queue123")).toBeTruthy();
181
- expect(targets.has("topic123")).toBeTruthy();
182
- expect(targets.has("bkt1")).toBeTruthy();
183
- expect(targets.has("table123")).toBeTruthy();
184
- expect(targets.has("queue222")).toBeTruthy();
185
- expect(targets.size).toEqual(7);
183
+ const expectedTargetValues = [
184
+ new edge_target_1.EdgeTargetSimpleString("queue333"),
185
+ new edge_target_1.EdgeTargetSimpleString("queue123"),
186
+ new edge_target_1.EdgeTargetSimpleString("topic123"),
187
+ new edge_target_1.EdgeTargetSimpleString("bkt1"),
188
+ new edge_target_1.EdgeTargetSimpleString("table123"),
189
+ new edge_target_1.EdgeTargetSimpleString("queue222")
190
+ ];
191
+ expectTargetValuesToBeInSet(targets, expectedTargetValues);
192
+ expect(targets.length).toEqual(7);
186
193
  });
194
+ function expectTargetValuesToBeInSet(targets, expectedTargetInArray) {
195
+ expectedTargetInArray.forEach(targetValue => {
196
+ expect(targets).arrayToContainEdgeTarget(targetValue);
197
+ });
198
+ }
187
199
  it(`sample no.3`, () => {
188
200
  const haystack = {
189
201
  "policyDocument": {
@@ -213,10 +225,59 @@ describe("candidate target edges are well scraped from any thing", () => {
213
225
  }
214
226
  };
215
227
  const targets = new aws_edge_resolver_1.AwsEdgeResolver().scrapePossibleEdgeTargets(haystack);
216
- expect(targets.has("TopicX")).toBeTruthy();
217
- expect(targets.has("queueX2")).toBeTruthy();
218
- expect(targets.has("Arn")).toBeTruthy();
219
- expect(targets.size).toEqual(3);
228
+ const expectedTargetValues = [
229
+ new edge_target_1.EdgeTargetSimpleString("TopicX"),
230
+ new edge_target_1.EdgeTargetSimpleString("queueX2"),
231
+ new edge_target_1.EdgeTargetSimpleString("Arn")
232
+ ];
233
+ expectTargetValuesToBeInSet(targets, expectedTargetValues);
234
+ expect(targets.length).toEqual(3);
220
235
  });
236
+ it(`sample no.4 `, () => {
237
+ const haystack = {
238
+ "dimensions": [
239
+ {
240
+ "name": "QueueName",
241
+ "value": {
242
+ "Fn::GetAtt": [
243
+ "mayQueue111",
244
+ "QueueName"
245
+ ]
246
+ }
247
+ },
248
+ {
249
+ "name": "QueueName2",
250
+ "value": {
251
+ "Fn::ImportValue": "stack-name-here:export-name-here"
252
+ }
253
+ }
254
+ ]
255
+ };
256
+ const targets = new aws_edge_resolver_1.AwsEdgeResolver().scrapePossibleEdgeTargets(haystack);
257
+ const expectedTargetValues = [
258
+ new edge_target_1.EdgeTargetSimpleString("mayQueue111"),
259
+ new edge_target_1.EdgeTargetSimpleString("QueueName"),
260
+ new edge_target_1.EdgeTargetStackExport('stack-name-here', 'export-name-here')
261
+ ];
262
+ expectTargetValuesToBeInSet(targets, expectedTargetValues);
263
+ expect(targets.length).toEqual(3);
264
+ });
265
+ });
266
+ expect.extend({
267
+ arrayToContainEdgeTarget(array, expected) {
268
+ const foundTarget = array.find((target) => target.isEqual(expected));
269
+ if (foundTarget) {
270
+ return {
271
+ message: () => `Found ${expected} in array`,
272
+ pass: true
273
+ };
274
+ }
275
+ else {
276
+ return {
277
+ message: () => `array does not contain expected EdgeTarget:${expected}`,
278
+ pass: false
279
+ };
280
+ }
281
+ }
221
282
  });
222
283
  //# sourceMappingURL=aws-edge-resolver.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"aws-edge-resolver.test.js","sourceRoot":"","sources":["../../../../src/diagram/tests/aws-edge-resolver.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aws-edge-resolver.test.js","sourceRoot":"","sources":["../../../../src/diagram/tests/aws-edge-resolver.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ const cdk = __importStar(require("../../cdk"));
23
+ const stack_exports_container_1 = require("../aws/stack-exports-container");
24
+ const edge_target_1 = require("../aws/edge-target");
25
+ describe('stack-exports-container', () => {
26
+ it('fromComponent() - parses exports', () => {
27
+ const exportsNode = cdk.Node.fromObject({
28
+ "id": "Exports",
29
+ "path": "stack-with-topic/Exports",
30
+ "children": {
31
+ "Output{\"Ref\":\"thetopic9E1A294D\"}": {
32
+ "id": "Output{\"Ref\":\"thetopic9E1A294D\"}",
33
+ "path": "stack-with-topic/Exports/Output{\"Ref\":\"thetopic9E1A294D\"}",
34
+ "constructInfo": {
35
+ "fqn": "aws-cdk-lib.CfnOutput",
36
+ "version": "2.0.0"
37
+ }
38
+ }
39
+ },
40
+ "constructInfo": {
41
+ "fqn": "constructs.Construct",
42
+ "version": "10.0.9"
43
+ }
44
+ });
45
+ const container = stack_exports_container_1.StackExportsContainer.fromComponent(exportsNode);
46
+ const export1 = container.getExport(edge_target_1.EdgeTargetStackExport.fromFnImportValue('stack-with-topic:ExportsOutputRefthetopic9E1A294DCC1C73D6'));
47
+ expect(export1).toEqual('thetopic9E1A294D');
48
+ });
49
+ });
50
+ //# sourceMappingURL=stack-exports-container.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stack-exports-container.test.js","sourceRoot":"","sources":["../../../../src/diagram/tests/stack-exports-container.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,+CAAgC;AAChC,4EAAoE;AACpE,oDAAwD;AAExD,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QACxC,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,UAAU,CAAE;YACrC,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,0BAA0B;YAClC,UAAU,EAAE;gBACR,sCAAsC,EAAE;oBACpC,IAAI,EAAE,sCAAsC;oBAC5C,MAAM,EAAE,+DAA+D;oBACvE,eAAe,EAAE;wBACb,KAAK,EAAE,uBAAuB;wBAC9B,SAAS,EAAE,OAAO;qBACrB;iBACJ;aACJ;YACD,eAAe,EAAE;gBACb,KAAK,EAAE,sBAAsB;gBAC7B,SAAS,EAAE,QAAQ;aACtB;SACJ,CAAC,CAAA;QAEF,MAAM,SAAS,GAAG,+CAAqB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;QAElE,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,mCAAqB,CAAC,iBAAiB,CAAC,2DAA2D,CAAC,CAAC,CAAA;QACzI,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
@@ -23,7 +23,6 @@ const fs = __importStar(require("fs"));
23
23
  const testCases_1 = require("../../../test-fixtures/testCases");
24
24
  const generator_test_1 = require("../../../diagram/tests/generator.test");
25
25
  const cytoscape_1 = require("../cytoscape");
26
- jest.setTimeout(30000);
27
26
  const basePath = `${process.cwd()}/test-generated`;
28
27
  describe('Cytoscape static website generated as expected', () => {
29
28
  it.each(testCases_1.testCases)(`%# - %p`, async (testCase) => {
@@ -44,7 +43,7 @@ describe('Cytoscape static website generated as expected', () => {
44
43
  expect(JSON.parse(elementsJson.body).length).toBeGreaterThanOrEqual(2);
45
44
  const stylesJson = new File(`${filePath}/cy-styles.json`);
46
45
  expect(JSON.parse(stylesJson.body).length).toBeGreaterThanOrEqual(15);
47
- });
46
+ }, 100000);
48
47
  });
49
48
  class File {
50
49
  constructor(path) {
@@ -1 +1 @@
1
- {"version":3,"file":"generator.test.js","sourceRoot":"","sources":["../../../../../src/render/cytoscape/tests/generator.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,uCAAwB;AACxB,gEAA0D;AAC1D,0EAAkE;AAClE,4CAAsC;AAGtC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;AAEtB,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,iBAAiB,CAAA;AAElD,QAAQ,CAAC,gDAAgD,EAAE,GAAG,EAAE;IAE5D,EAAE,CAAC,IAAI,CAAC,qBAAS,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;QAE7C,MAAM,OAAO,GAAG,IAAA,6BAAY,EAAC,QAAQ,CAAC,CAAA;QAEtC,MAAM,QAAQ,GAAG,GAAG,QAAQ,IAAI,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAA;QAEtE,MAAM,IAAI,qBAAS,EAAE,CAAC,MAAM,CAAC;YACzB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,QAAQ;SACjB,CAAC,CAAA;QAEF,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,GAAG,QAAQ,aAAa,CAAC,CAAA;QAChD,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAA;QACpD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;QAEvC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,GAAG,QAAQ,QAAQ,CAAC,CAAA;QAC3C,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,UAAU,EAAE,CAAA;QAE9C,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,QAAQ,KAAK,CAAC,CAAA;QACrC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,UAAU,EAAE,CAAA;QAE3C,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,GAAG,QAAQ,mBAAmB,CAAC,CAAA;QAC7D,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAA;QAEtE,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,GAAG,QAAQ,iBAAiB,CAAC,CAAA;QACzD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAA;IACzE,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA;AAEF,MAAM,IAAI;IAIN,YAAY,IAAY;QACpB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE9B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE;YAC3B,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAA;SAC/C;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"generator.test.js","sourceRoot":"","sources":["../../../../../src/render/cytoscape/tests/generator.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,uCAAwB;AACxB,gEAA0D;AAC1D,0EAAkE;AAClE,4CAAsC;AAGtC,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,iBAAiB,CAAA;AAElD,QAAQ,CAAC,gDAAgD,EAAE,GAAG,EAAE;IAE5D,EAAE,CAAC,IAAI,CAAC,qBAAS,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;QAE7C,MAAM,OAAO,GAAG,IAAA,6BAAY,EAAC,QAAQ,CAAC,CAAA;QAEtC,MAAM,QAAQ,GAAG,GAAG,QAAQ,IAAI,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAA;QAEtE,MAAM,IAAI,qBAAS,EAAE,CAAC,MAAM,CAAC;YACzB,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,QAAQ;SACjB,CAAC,CAAA;QAEF,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,GAAG,QAAQ,aAAa,CAAC,CAAA;QAChD,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAA;QACpD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;QAEvC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,GAAG,QAAQ,QAAQ,CAAC,CAAA;QAC3C,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,UAAU,EAAE,CAAA;QAE9C,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,QAAQ,KAAK,CAAC,CAAA;QACrC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,UAAU,EAAE,CAAA;QAE3C,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,GAAG,QAAQ,mBAAmB,CAAC,CAAA;QAC7D,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAA;QAEtE,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,GAAG,QAAQ,iBAAiB,CAAC,CAAA;QACzD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAA;IACzE,CAAC,EAAE,MAAM,CAAC,CAAA;AACd,CAAC,CAAC,CAAA;AAEF,MAAM,IAAI;IAIN,YAAY,IAAY;QACpB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE9B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE;YAC3B,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAA;SAC/C;IACL,CAAC;CACJ"}
@@ -115,6 +115,12 @@ exports.testCases = [
115
115
  jsonTreeFile: "custom-resource",
116
116
  cdkTreePath: "src/test-fixtures/",
117
117
  collapsed: true
118
- }
118
+ },
119
+ {
120
+ id: `collapsed-dontRemoveCrossStackEdges`,
121
+ jsonTreeFile: "two-stack-with-a-relationship",
122
+ cdkTreePath: "src/test-fixtures/",
123
+ collapsed: false
124
+ },
119
125
  ];
120
126
  //# sourceMappingURL=testCases.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"testCases.js","sourceRoot":"","sources":["../../../src/test-fixtures/testCases.ts"],"names":[],"mappings":";;;AACa,QAAA,SAAS,GAAe;IACjC;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,yBAAyB;QACvC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,yBAAyB;QACvC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,6DAA6D;QAC3E,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,6DAA6D;QAC3E,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,oBAAoB;QAClC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,oBAAoB;QAClC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,qBAAqB;QACnC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,qBAAqB;QACnC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,oCAAoC;QAClD,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,oCAAoC;QAClD,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,0BAA0B;QACxC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,0BAA0B;QACxC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,6BAA6B;QAC3C,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,6BAA6B;QAC3C,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,qBAAqB;QACnC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,qBAAqB;QACnC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,qDAAqD;QACnE,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,iBAAiB;QAC/B,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,iBAAiB;QAC/B,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;CACJ,CAAA"}
1
+ {"version":3,"file":"testCases.js","sourceRoot":"","sources":["../../../src/test-fixtures/testCases.ts"],"names":[],"mappings":";;;AACa,QAAA,SAAS,GAAe;IACjC;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,yBAAyB;QACvC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,yBAAyB;QACvC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,6DAA6D;QAC3E,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,6DAA6D;QAC3E,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,oBAAoB;QAClC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,oBAAoB;QAClC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,qBAAqB;QACnC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,qBAAqB;QACnC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,oCAAoC;QAClD,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,oCAAoC;QAClD,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,0BAA0B;QACxC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,0BAA0B;QACxC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,6BAA6B;QAC3C,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,6BAA6B;QAC3C,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,qBAAqB;QACnC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,qBAAqB;QACnC,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,qDAAqD;QACnE,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,eAAe;QAClB,YAAY,EAAE,iBAAiB;QAC/B,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;IACD;QACI,EAAE,EAAC,WAAW;QACd,YAAY,EAAE,iBAAiB;QAC/B,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,IAAI;KAClB;IACD;QACI,EAAE,EAAC,qCAAqC;QACxC,YAAY,EAAE,+BAA+B;QAC7C,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,KAAK;KACnB;CACJ,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cdk-dia",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "🎡 Automated diagrams of CDK provisioned infrastructure",
5
5
  "scripts": {
6
6
  "build-watch": "tsc --watch",