@likec4/core 1.48.0 → 1.50.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 (130) hide show
  1. package/dist/THIRD-PARTY-LICENSES.md +1034 -0
  2. package/dist/_chunks/Builder.view-element.mjs +2 -3284
  3. package/dist/_chunks/LikeC4Model.d.mts +21 -25
  4. package/dist/_chunks/_types.d.mts +1 -5
  5. package/dist/_chunks/_types2.d.mts +2 -4
  6. package/dist/_chunks/assignTagColors.mjs +1 -24
  7. package/dist/_chunks/geometry.mjs +1 -335
  8. package/dist/_chunks/index.d.mts +1995 -131
  9. package/dist/_chunks/index2.d.mts +153 -892
  10. package/dist/_chunks/index3.d.mts +15 -13
  11. package/dist/_chunks/index4.d.mts +229 -3
  12. package/dist/_chunks/index5.d.mts +392 -30
  13. package/dist/_chunks/libs/@mantine/colors-generator.mjs +2 -3403
  14. package/dist/_chunks/libs/@radix-ui/colors.mjs +1 -0
  15. package/dist/_chunks/libs/@ungap/structured-clone.mjs +1 -213
  16. package/dist/_chunks/libs/bail.mjs +1 -14
  17. package/dist/_chunks/libs/ccount.mjs +1 -25
  18. package/dist/_chunks/libs/character-entities-html4.mjs +1 -263
  19. package/dist/_chunks/libs/character-entities-legacy.mjs +1 -117
  20. package/dist/_chunks/libs/character-entities.mjs +2 -2136
  21. package/dist/_chunks/libs/comma-separated-tokens.mjs +1 -18
  22. package/dist/_chunks/libs/decode-named-character-reference.mjs +1 -21
  23. package/dist/_chunks/libs/defu.mjs +1 -42
  24. package/dist/_chunks/libs/devlop.mjs +1 -5
  25. package/dist/_chunks/libs/escape-string-regexp.mjs +1 -8
  26. package/dist/_chunks/libs/extend.mjs +1 -77
  27. package/dist/_chunks/libs/graphology-dag.mjs +1 -703
  28. package/dist/_chunks/libs/graphology.mjs +1 -4565
  29. package/dist/_chunks/libs/hast-util-sanitize.mjs +1 -863
  30. package/dist/_chunks/libs/hast-util-to-html.mjs +9 -2696
  31. package/dist/_chunks/libs/is-plain-obj.mjs +1 -9
  32. package/dist/_chunks/libs/longest-streak.mjs +1 -30
  33. package/dist/_chunks/libs/markdown-table.mjs +2 -290
  34. package/dist/_chunks/libs/mdast-util-find-and-replace.mjs +1 -653
  35. package/dist/_chunks/libs/mdast-util-from-markdown.mjs +3 -8522
  36. package/dist/_chunks/libs/mdast-util-gfm.mjs +15 -2393
  37. package/dist/_chunks/libs/mdast-util-to-hast.mjs +11 -1803
  38. package/dist/_chunks/libs/micromark-extension-gfm.mjs +1 -2243
  39. package/dist/_chunks/libs/mnemonist.d.mts +1 -91
  40. package/dist/_chunks/libs/mnemonist.mjs +1 -1978
  41. package/dist/_chunks/libs/natural-compare-lite.mjs +9 -42
  42. package/dist/_chunks/libs/ohash.mjs +1 -0
  43. package/dist/_chunks/libs/rehype-sanitize.mjs +1 -29
  44. package/dist/_chunks/libs/rehype-stringify.mjs +1 -34
  45. package/dist/_chunks/libs/remark-gfm.mjs +1 -36
  46. package/dist/_chunks/libs/remark-github-blockquote-alert.mjs +3 -100
  47. package/dist/_chunks/libs/remark-parse.mjs +1 -39
  48. package/dist/_chunks/libs/remark-rehype.mjs +1 -171
  49. package/dist/_chunks/libs/remeda.mjs +2 -702
  50. package/dist/_chunks/libs/trough.mjs +1 -158
  51. package/dist/_chunks/libs/unified.mjs +1 -2212
  52. package/dist/_chunks/manual-layout.mjs +1 -0
  53. package/dist/_chunks/model.mjs +4 -1898
  54. package/dist/_chunks/rolldown-runtime.mjs +1 -42
  55. package/dist/_chunks/types.mjs +1 -0
  56. package/dist/_chunks/utils.mjs +1 -483
  57. package/dist/builder/index.d.mts +3 -6
  58. package/dist/builder/index.mjs +1 -662
  59. package/dist/compute-view/index.d.mts +85 -13
  60. package/dist/compute-view/index.mjs +2 -262
  61. package/dist/geometry/index.d.mts +2 -2
  62. package/dist/geometry/index.mjs +1 -3
  63. package/dist/index.d.mts +7 -13
  64. package/dist/index.mjs +1 -27
  65. package/dist/model/index.d.mts +4 -11
  66. package/dist/model/index.mjs +1 -11
  67. package/dist/styles/index.d.mts +2 -7
  68. package/dist/styles/index.mjs +1 -30
  69. package/dist/types/index.d.mts +3 -9
  70. package/dist/types/index.mjs +1 -15
  71. package/dist/utils/graphology/index.d.mts +1 -1
  72. package/dist/utils/graphology/index.mjs +1 -3
  73. package/dist/utils/index.d.mts +5 -10
  74. package/dist/utils/index.mjs +1 -17
  75. package/package.json +14 -13
  76. package/dist/_chunks/LikeC4Styles.mjs +0 -691
  77. package/dist/_chunks/RichText.d.mts +0 -84
  78. package/dist/_chunks/RichText.mjs +0 -148
  79. package/dist/_chunks/_aux.d.mts +0 -289
  80. package/dist/_chunks/_aux.mjs +0 -18
  81. package/dist/_chunks/calcDriftsFromSnapshot.mjs +0 -379
  82. package/dist/_chunks/connection.mjs +0 -0
  83. package/dist/_chunks/const.d.mts +0 -43
  84. package/dist/_chunks/const.mjs +0 -33
  85. package/dist/_chunks/expression-model.d.mts +0 -192
  86. package/dist/_chunks/expression-model.mjs +0 -103
  87. package/dist/_chunks/expression.d.mts +0 -347
  88. package/dist/_chunks/expression.mjs +0 -107
  89. package/dist/_chunks/find.d.mts +0 -82
  90. package/dist/_chunks/find.mjs +0 -646
  91. package/dist/_chunks/find2.d.mts +0 -78
  92. package/dist/_chunks/find2.mjs +0 -287
  93. package/dist/_chunks/fqnRef.d.mts +0 -58
  94. package/dist/_chunks/fqnRef.mjs +0 -41
  95. package/dist/_chunks/index6.d.mts +0 -43
  96. package/dist/_chunks/index7.d.mts +0 -268
  97. package/dist/_chunks/index8.d.mts +0 -144
  98. package/dist/_chunks/invariant.mjs +0 -18
  99. package/dist/_chunks/iterable.mjs +0 -146
  100. package/dist/_chunks/libs/graphology-types.d.mts +0 -601
  101. package/dist/_chunks/libs/graphology.d.mts +0 -6
  102. package/dist/_chunks/mnemonist.mjs +0 -0
  103. package/dist/_chunks/model2.mjs +0 -0
  104. package/dist/_chunks/relationships-view.mjs +0 -132
  105. package/dist/_chunks/scalar.d.mts +0 -109
  106. package/dist/_chunks/scalar.mjs +0 -84
  107. package/dist/compute-view/relationships-view/index.d.mts +0 -16
  108. package/dist/compute-view/relationships-view/index.mjs +0 -7
  109. package/dist/model/connection/deployment/index.d.mts +0 -12
  110. package/dist/model/connection/deployment/index.mjs +0 -9
  111. package/dist/model/connection/index.d.mts +0 -14
  112. package/dist/model/connection/index.mjs +0 -10
  113. package/dist/model/connection/model/index.d.mts +0 -12
  114. package/dist/model/connection/model/index.mjs +0 -8
  115. package/dist/types/RichText.d.mts +0 -3
  116. package/dist/types/RichText.mjs +0 -7
  117. package/dist/types/_aux.d.mts +0 -3
  118. package/dist/types/_aux.mjs +0 -3
  119. package/dist/types/expression-model.d.mts +0 -6
  120. package/dist/types/expression-model.mjs +0 -7
  121. package/dist/types/expression.d.mts +0 -5
  122. package/dist/types/expression.mjs +0 -7
  123. package/dist/types/fqnRef.d.mts +0 -4
  124. package/dist/types/fqnRef.mjs +0 -7
  125. package/dist/types/scalar.d.mts +0 -2
  126. package/dist/types/scalar.mjs +0 -7
  127. package/dist/utils/iterable/index.d.mts +0 -9
  128. package/dist/utils/iterable/index.mjs +0 -3
  129. package/dist/utils/mnemonist.d.mts +0 -2
  130. package/dist/utils/mnemonist.mjs +0 -12
@@ -1,20 +1,12 @@
1
- import { ct as toComputed, ht as _type, mt as _stage, n as Any, o as AnyParsed, wt as NonEmptyArray } from "../_chunks/_aux.mjs";
2
- import "../_chunks/scalar.mjs";
3
- import "../_chunks/expression.mjs";
4
- import "../_chunks/fqnRef.mjs";
5
- import { t as ModelExpression } from "../_chunks/expression-model.mjs";
6
- import { $t as AnyIncludePredicate, J as ComputedEdge, Qt as AnyExcludePredicate, X as ComputedNode, c as ComputedLikeC4ModelData, d as ParsedLikeC4ModelData, h as ParsedView, on as ViewAutoLayout, p as ComputedView, rn as BaseViewProperties } from "../_chunks/index2.mjs";
7
- import "../_chunks/RichText.mjs";
1
+ import { Br as ElementId, Ji as _stage, On as ModelExpression, Pr as AnyParsed, S as ComputedView, Yi as _type, _ as ComputedLikeC4ModelData, at as ComputedNode, b as ParsedLikeC4ModelData, ci as ViewId, cn as AnyIncludePredicate, fn as BaseViewProperties, hn as ViewAutoLayout, ia as NonEmptyArray, ii as Unknown, jr as Any, pi as toComputed, rt as ComputedEdge, sn as AnyExcludePredicate, w as ParsedView } from "../_chunks/index.mjs";
2
+ import "../_chunks/index2.mjs";
8
3
  import "../_chunks/index3.mjs";
9
- import { n as LikeC4Model } from "../_chunks/LikeC4Model.mjs";
4
+ import "../_chunks/libs/mnemonist.mjs";
5
+ import "../_chunks/mnemonist.mjs";
6
+ import { C as ElementModel, T as RelationshipModel, n as LikeC4Model } from "../_chunks/LikeC4Model.mjs";
10
7
  import { B as ViewPredicate } from "../_chunks/_types.mjs";
11
- import "../_chunks/const.mjs";
12
- import "../_chunks/find.mjs";
13
- import "../_chunks/find2.mjs";
14
8
  import "../_chunks/index4.mjs";
15
- import "../_chunks/index5.mjs";
16
9
  import { a as LayoutedProjectNode, i as LayoutedProjectEdge, n as ComputedProjectNode, o as LayoutedProjectsView, r as ComputedProjectsView, t as ComputedProjectEdge } from "../_chunks/_types2.mjs";
17
- import { n as computeRelationshipsView, r as RelationshipsViewData, t as treeFromElements } from "../_chunks/index6.mjs";
18
10
 
19
11
  //#region src/compute-view/compute-view.d.ts
20
12
  type ComputeViewResult<V> = {
@@ -62,6 +54,86 @@ declare function viewsWithReadableEdges<A extends Any>({
62
54
  */
63
55
  declare function computeProjectsView(likec4models: NonEmptyArray<LikeC4Model>): ComputedProjectsView;
64
56
  //#endregion
57
+ //#region src/compute-view/relationships-view/_types.d.ts
58
+ type RelationshipsViewData<M extends Any = Unknown> = {
59
+ incomers: ReadonlySet<ElementModel<M>>;
60
+ incoming: ReadonlySet<RelationshipModel<M>>;
61
+ subjects: ReadonlySet<ElementModel<M>>;
62
+ outgoing: ReadonlySet<RelationshipModel<M>>;
63
+ outgoers: ReadonlySet<ElementModel<M>>;
64
+ };
65
+ //#endregion
66
+ //#region src/compute-view/relationships-view/compute.d.ts
67
+ declare function computeRelationshipsView<M extends Any>(subjectId: ElementId<M>, likec4model: LikeC4Model<M>, scopeViewId: ViewId<M> | null, scope?: 'global' | 'view'): RelationshipsViewData<M>;
68
+ //#endregion
69
+ //#region src/compute-view/relationships-view/utils.d.ts
70
+ /**
71
+ * Builds a tree structure from a flat list of elements.
72
+ * @param elements - An iterable of ElementModel instances.
73
+ * @returns An object containing the sorted elements, a lookup by ID, root elements, parent and children accessors, and a flatten method.
74
+ * @example
75
+ * ```ts
76
+ * const elements = [
77
+ * { id: 'A' },
78
+ * { id: 'A.B' },
79
+ * { id: 'A.B.C' },
80
+ * { id: 'A.B.D' },
81
+ * { id: 'E' },
82
+ * ]
83
+ *
84
+ * const tree = treeFromElements(elements)
85
+ *
86
+ * tree.sorted.map(e => e.id) // ['A', 'A.B', 'A.B.C', 'A.B.D', 'E']
87
+ *
88
+ * tree.byId('A.B').id // 'A.B'
89
+ *
90
+ * [...tree.root].map(e => e.id) // ['A', 'E']
91
+ *
92
+ * tree.parent(tree.byId('A.B.C'))?.id // 'A.B'
93
+ *
94
+ * tree.children(tree.byId('A')).map(e => e.id) // ['A.B']
95
+ */
96
+ declare function treeFromElements<M extends Any>(elements: Iterable<ElementModel<M>>): Readonly<{
97
+ /**
98
+ * Elements sorted in a way that parents go before their descendants.
99
+ */
100
+ sorted: ReadonlyArray<ElementModel<M>>;
101
+ /**
102
+ * Get element by its id (FQN)
103
+ */
104
+ byId(id: ElementId<M>): ElementModel<M>;
105
+ /**
106
+ * Root elements (i.e. those without parents)
107
+ */
108
+ root: ReadonlySet<ElementModel<M>>;
109
+ /**
110
+ * Get parent element or null if it's a root
111
+ */
112
+ parent(el: ElementId<M> | ElementModel<M>): ElementModel<M> | null;
113
+ /**
114
+ * Get child elements (i.e. direct descendants)
115
+ */
116
+ children(el: ElementId<M> | ElementModel<M>): ReadonlyArray<ElementModel<M>>;
117
+ /**
118
+ * Flattens the tree structure by removing redundant hierarchy levels.
119
+ * @example
120
+ * A
121
+ * └── B
122
+ * ├── C
123
+ * │ └── D
124
+ * │ └── E
125
+ * └── F
126
+ * └── G
127
+ * becomes
128
+ * A
129
+ * ├── C
130
+ * │ └── E
131
+ * └── F
132
+ * └── G
133
+ */
134
+ flatten(): ReadonlySet<ElementModel<M>>;
135
+ }>;
136
+ //#endregion
65
137
  //#region src/compute-view/adhoc-view/compute.d.ts
66
138
  interface AdhocViewIncludePredicate<A extends Any> extends AnyIncludePredicate<ModelExpression<A>> {}
67
139
  interface AdhocViewExcludePredicate<A extends Any> extends AnyExcludePredicate<ModelExpression<A>> {}
@@ -1,262 +1,2 @@
1
- import { r as __toESM } from "../_chunks/rolldown-runtime.mjs";
2
- import { C as t$1, E as t$4, G as t$7, I as e, S as t$3, Y as t$5, Z as t$6, i as n, m as e$1, r as t, w as t$2, x as n$1, y as t$8 } from "../_chunks/libs/remeda.mjs";
3
- import { N as _stage, P as _type, _ as isExtendsElementView, g as isElementView } from "../_chunks/LikeC4Styles.mjs";
4
- import "../_chunks/libs/natural-compare-lite.mjs";
5
- import { N as isNonEmptyArray, r as stringHash } from "../_chunks/utils.mjs";
6
- import { n as nonNullable, t as invariant } from "../_chunks/invariant.mjs";
7
- import "../_chunks/libs/@mantine/colors-generator.mjs";
8
- import { n as require_topological_sort, t as require_will_create_cycle } from "../_chunks/libs/graphology-dag.mjs";
9
- import { n as import_default_map } from "../_chunks/libs/mnemonist.mjs";
10
- import "../_chunks/libs/defu.mjs";
11
- import "../_chunks/libs/extend.mjs";
12
- import { n as preferSummary } from "../_chunks/_aux.mjs";
13
- import { c as ProjectId, d as ViewId, i as GlobalFqn } from "../_chunks/scalar.mjs";
14
- import { a as unsafeComputeView, c as linkNodesWithEdges, i as computeView, n as computeLikeC4Model, o as computeElementView, r as computeParsedModelData, s as topologicalSort$1, t as $expr } from "../_chunks/Builder.view-element.mjs";
15
- import { t as Graph } from "../_chunks/libs/graphology.mjs";
16
- import { n as treeFromElements, t as computeRelationshipsView } from "../_chunks/relationships-view.mjs";
17
-
18
- //#region src/compute-view/utils/resolve-extended-views.ts
19
- var import_topological_sort = require_topological_sort();
20
- var import_will_create_cycle = /* @__PURE__ */ __toESM(require_will_create_cycle(), 1);
21
- /**
22
- * Resolve rules of extended views
23
- * (Removes invalid views)
24
- */
25
- function resolveRulesExtendedViews(unresolvedViews) {
26
- const g = new Graph({ type: "directed" });
27
- const extendedViews = [];
28
- for (const view of t(unresolvedViews)) {
29
- g.addNode(view.id, { view });
30
- if (isExtendsElementView(view)) extendedViews.push(view);
31
- }
32
- if (extendedViews.length === 0) return unresolvedViews;
33
- for (const view of extendedViews) {
34
- if (!g.hasNode(view.extends)) {
35
- console.warn(`View "${view.id}" extends from "${view.extends}" which does not exist`);
36
- continue;
37
- }
38
- if ((0, import_will_create_cycle.default)(g, view.id, view.extends)) {
39
- console.warn(`View "${view.id}" extends from "${view.extends}" which creates a cycle`);
40
- continue;
41
- }
42
- g.addDirectedEdge(view.id, view.extends);
43
- }
44
- return (0, import_topological_sort.topologicalSort)(g).reverse().reduce((acc, id) => {
45
- const view = g.getNodeAttribute(id, "view");
46
- if (!isExtendsElementView(view)) {
47
- acc[view.id] = view;
48
- return acc;
49
- }
50
- const extendsFrom = acc[view.extends];
51
- if (!extendsFrom || !isElementView(extendsFrom)) return acc;
52
- const tags = n([...extendsFrom.tags ?? [], ...view.tags ?? []]);
53
- const links = [...extendsFrom.links ?? [], ...view.links ?? []];
54
- acc[view.id] = {
55
- ...extendsFrom,
56
- ...view,
57
- title: view.title ?? extendsFrom.title ?? null,
58
- description: view.description ?? extendsFrom.description ?? null,
59
- tags,
60
- links: isNonEmptyArray(links) ? links : null,
61
- rules: [...extendsFrom.rules, ...view.rules]
62
- };
63
- return acc;
64
- }, {});
65
- }
66
-
67
- //#endregion
68
- //#region src/compute-view/utils/with-readable-edges.ts
69
- /**
70
- * Convert hashed edge ids to human-readable
71
- * Mostly for testing purposes
72
- */
73
- function withReadableEdges({ edges, nodes, ...view }, separator = ":") {
74
- const edgeids = t$1(edges, (e) => [e.id, `${e.source}${separator}${e.target}`]);
75
- return {
76
- ...view,
77
- edges: edges.map((e) => ({
78
- ...e,
79
- id: edgeids[e.id]
80
- })),
81
- nodes: nodes.map((n) => ({
82
- ...n,
83
- inEdges: t$2(n.inEdges, (e) => edgeids[e]),
84
- outEdges: t$2(n.outEdges, (e) => edgeids[e])
85
- })),
86
- nodeIds: nodes.map((n) => n.id),
87
- edgeIds: edges.map((e) => edgeids[e.id])
88
- };
89
- }
90
- function viewsWithReadableEdges({ views, ...model }) {
91
- return {
92
- ...model,
93
- views: t$3(views, (v) => n$1(withReadableEdges(v), ["nodeIds", "edgeIds"]))
94
- };
95
- }
96
-
97
- //#endregion
98
- //#region src/compute-view/projects-view/compute.ts
99
- const keysCount = (object) => t$4(object).length;
100
- const nodeId = (projectId) => stringHash(projectId);
101
- /**
102
- * Computes an overview of projects and their relationships
103
- */
104
- function computeProjectsView(likec4models) {
105
- const nodesMap = buildNodesForEachModel(likec4models);
106
- const key = (from, to) => `${from}->${to}`;
107
- const relationships = new import_default_map.default((key) => {
108
- const [from, to] = key.split("->");
109
- return {
110
- from,
111
- to,
112
- relationships: /* @__PURE__ */ new Set()
113
- };
114
- });
115
- const relationshipsFromTo = (from, to) => relationships.get(key(from, to)).relationships;
116
- const processImportedElement = (model, importedElement) => {
117
- const projectId = importedElement.projectId;
118
- invariant(projectId !== model.projectId, "Imported element must have a different project id");
119
- const incoming = relationshipsFromTo(model.projectId, projectId);
120
- for (const rel of importedElement.incoming("direct")) if (rel.source.projectId === model.projectId) incoming.add(rel);
121
- const outgoing = relationshipsFromTo(projectId, model.projectId);
122
- for (const rel of importedElement.outgoing("direct")) if (rel.target.projectId === model.projectId) outgoing.add(rel);
123
- };
124
- for (const model of likec4models) {
125
- if (e(model.$data.imports)) continue;
126
- for (const [projectId, imported] of t$5(model.$data.imports)) for (const importedElement of imported) {
127
- const fqn = GlobalFqn(projectId, importedElement.id);
128
- processImportedElement(model, nonNullable(model.findElement(fqn), `Element ${importedElement.id} from project ${projectId} not found in model ${model.projectId}`));
129
- }
130
- }
131
- const edges = Array.from(relationships.entries()).filter(([_, { relationships }]) => relationships.size > 0).map(([key, { from, to, relationships: relationshipsSet }]) => {
132
- const relationships = [...relationshipsSet];
133
- invariant(t$6(relationships, 1), "Relationships set must have at least one relationship");
134
- const edge = {
135
- id: stringHash(key),
136
- source: nodeId(from),
137
- target: nodeId(to),
138
- projectId: from,
139
- relations: t$2(relationships, e$1("id")),
140
- label: null,
141
- color: "gray",
142
- parent: null,
143
- line: "solid",
144
- tags: n(t$7(relationships, e$1("tags")))
145
- };
146
- const onlyOne = t$8(relationships);
147
- if (onlyOne) {
148
- edge.label = onlyOne.title;
149
- edge.description = /* @__PURE__ */ preferSummary(onlyOne.$relationship) ?? null;
150
- edge.technology = onlyOne.technology;
151
- edge.color = onlyOne.color;
152
- edge.line = onlyOne.line;
153
- if (onlyOne.kind) edge.kind = onlyOne.kind;
154
- if (onlyOne.$relationship.navigateTo) edge.navigateTo = onlyOne.$relationship.navigateTo;
155
- }
156
- return edge;
157
- });
158
- linkNodesWithEdges(nodesMap, edges);
159
- const sorted = topologicalSort$1({
160
- nodes: nodesMap,
161
- edges
162
- });
163
- return {
164
- id: "projects-view",
165
- [_type]: "projects",
166
- [_stage]: "computed",
167
- title: "Projects",
168
- description: { txt: "Overview of all projects and their relationships" },
169
- autoLayout: { direction: "TB" },
170
- ...sorted
171
- };
172
- }
173
- function buildNodesForEachModel(likec4models) {
174
- const nodesMap = /* @__PURE__ */ new Map();
175
- for (const model of likec4models) {
176
- const projectId = ProjectId(model.projectId);
177
- const node = {
178
- id: nodeId(projectId),
179
- kind: "@project",
180
- parent: null,
181
- projectId,
182
- title: model.project.title ?? model.project.id,
183
- description: { txt: [
184
- `Elements: ${keysCount(model.$data.elements)}`,
185
- `Relationships: ${keysCount(model.$data.relations)}`,
186
- `Views: ${keysCount(model.$data.views)}`
187
- ].join("\n") },
188
- shape: "rectangle",
189
- children: [],
190
- inEdges: [],
191
- outEdges: [],
192
- color: "primary",
193
- level: 0,
194
- style: {},
195
- tags: []
196
- };
197
- nodesMap.set(node.id, node);
198
- }
199
- return nodesMap;
200
- }
201
-
202
- //#endregion
203
- //#region src/compute-view/adhoc-view/compute.ts
204
- /**
205
- * Computes an adhoc view based on the given predicates.
206
- * Adhoc views are not defined in the model, but computed on demand.
207
- * Available for logical model only.
208
- *
209
- * @param predicates accepts the same predicates as element view.
210
- * @param likec4model The LikeC4 model to compute view.
211
- * @returns The computed adhoc view.
212
- */
213
- function computeAdhocView(likec4model, predicates) {
214
- return {
215
- ...computeElementView(likec4model, {
216
- id: ViewId("adhoc"),
217
- _stage: "parsed",
218
- _type: "element",
219
- rules: predicates,
220
- title: null,
221
- description: null
222
- }),
223
- _type: "adhoc",
224
- _stage: "computed"
225
- };
226
- }
227
-
228
- //#endregion
229
- //#region src/compute-view/adhoc-view/builder.ts
230
- /**
231
- * Allows you to define type-safe adhoc views using types from the model.
232
- */
233
- var AdhocView = class AdhocView {
234
- /**
235
- * Creates a new adhoc view builder.
236
- */
237
- static use(model) {
238
- return new AdhocView(model);
239
- }
240
- #predicates = [];
241
- constructor(model) {
242
- this.model = model;
243
- }
244
- /**
245
- * Used to cache the type of the predicates.
246
- */
247
- Expr;
248
- include(...predicates) {
249
- this.#predicates.push({ include: predicates.map((predicate) => $expr(predicate)) });
250
- return this;
251
- }
252
- exclude(...predicates) {
253
- this.#predicates.push({ exclude: predicates.map((predicate) => $expr(predicate)) });
254
- return this;
255
- }
256
- compute() {
257
- return computeAdhocView(this.model, this.#predicates);
258
- }
259
- };
260
-
261
- //#endregion
262
- export { AdhocView, computeAdhocView, computeLikeC4Model, computeParsedModelData, computeProjectsView, computeRelationshipsView, computeView, resolveRulesExtendedViews, treeFromElements, unsafeComputeView, viewsWithReadableEdges, withReadableEdges };
1
+ import{r as e}from"../_chunks/rolldown-runtime.mjs";import"../_chunks/libs/defu.mjs";import{$ as t,C as n,D as r,K as i,L as a,Q as o,S as s,T as c,X as l,Y as u,b as d,d as f,et as p,i as m,m as h,r as ee,w as te,y as ne}from"../_chunks/libs/remeda.mjs";import{Q as g,_,_t as v,bt as y,g as re,gt as ie,ot as ae,rt as b}from"../_chunks/types.mjs";import"../_chunks/geometry.mjs";import{$ as x,D as S,I as C,K as w,L as T,Q as E,U as D,_ as O,r as k,v as A,x as j}from"../_chunks/utils.mjs";import{n as M,t as N}from"../_chunks/libs/graphology-dag.mjs";import{t as P}from"../_chunks/libs/mnemonist.mjs";import"../_chunks/libs/natural-compare-lite.mjs";import"../_chunks/libs/ohash.mjs";import"../_chunks/libs/@ungap/structured-clone.mjs";import"../_chunks/libs/hast-util-sanitize.mjs";import"../_chunks/libs/rehype-sanitize.mjs";import"../_chunks/libs/hast-util-to-html.mjs";import"../_chunks/libs/character-entities-legacy.mjs";import"../_chunks/libs/character-entities-html4.mjs";import"../_chunks/libs/ccount.mjs";import"../_chunks/libs/comma-separated-tokens.mjs";import"../_chunks/libs/rehype-stringify.mjs";import"../_chunks/libs/devlop.mjs";import"../_chunks/libs/mdast-util-from-markdown.mjs";import"../_chunks/libs/escape-string-regexp.mjs";import"../_chunks/libs/mdast-util-find-and-replace.mjs";import"../_chunks/libs/mdast-util-gfm.mjs";import"../_chunks/libs/markdown-table.mjs";import"../_chunks/libs/longest-streak.mjs";import"../_chunks/libs/character-entities.mjs";import"../_chunks/libs/decode-named-character-reference.mjs";import"../_chunks/libs/micromark-extension-gfm.mjs";import"../_chunks/libs/remark-gfm.mjs";import"../_chunks/libs/remark-github-blockquote-alert.mjs";import"../_chunks/libs/remark-parse.mjs";import"../_chunks/libs/mdast-util-to-hast.mjs";import"../_chunks/libs/remark-rehype.mjs";import"../_chunks/libs/bail.mjs";import"../_chunks/libs/extend.mjs";import"../_chunks/libs/is-plain-obj.mjs";import"../_chunks/libs/trough.mjs";import"../_chunks/libs/unified.mjs";import"../_chunks/libs/@radix-ui/colors.mjs";import"../_chunks/libs/@mantine/colors-generator.mjs";import"../_chunks/model.mjs";import"../_chunks/manual-layout.mjs";import{a as F,c as I,i as L,n as R,o as z,r as B,s as V,t as H}from"../_chunks/Builder.view-element.mjs";import{t as U}from"../_chunks/libs/graphology.mjs";var W=M(),G=e(N(),1);function K(e){let t=new U({type:`directed`}),n=[];for(let r of ee(e))t.addNode(r.id,{view:r}),_(r)&&n.push(r);if(n.length===0)return e;for(let e of n){if(!t.hasNode(e.extends)){console.warn(`View "${e.id}" extends from "${e.extends}" which does not exist`);continue}if((0,G.default)(t,e.id,e.extends)){console.warn(`View "${e.id}" extends from "${e.extends}" which creates a cycle`);continue}t.addDirectedEdge(e.id,e.extends)}return(0,W.topologicalSort)(t).reverse().reduce((e,n)=>{let r=t.getNodeAttribute(n,`view`);if(!_(r))return e[r.id]=r,e;let i=e[r.extends];if(!i||!re(i))return e;let a=m([...i.tags??[],...r.tags??[]]),o=[...i.links??[],...r.links??[]];return e[r.id]={...i,...r,title:r.title??i.title??null,description:r.description??i.description??null,tags:a,links:w(o)?o:null,rules:[...i.rules,...r.rules]},e},{})}function q({edges:e,nodes:t,...n},r=`:`){let i=te(e,e=>[e.id,`${e.source}${r}${e.target}`]);return{...n,edges:e.map(e=>({...e,id:i[e.id]})),nodes:t.map(e=>({...e,inEdges:c(e.inEdges,e=>i[e]),outEdges:c(e.outEdges,e=>i[e])})),nodeIds:t.map(e=>e.id),edgeIds:e.map(e=>i[e.id])}}function oe({views:e,...t}){return{...t,views:n(e,e=>s(q(e),[`nodeIds`,`edgeIds`]))}}const J=e=>r(e).length,Y=e=>k(e);function se(e){let t=ce(e),n=(e,t)=>`${e}->${t}`,r=new P.default(e=>{let[t,n]=e.split(`->`);return{from:t,to:n,relationships:new Set}}),s=(e,t)=>r.get(n(e,t)).relationships,u=(e,t)=>{let n=t.projectId;E(n!==e.projectId,`Imported element must have a different project id`);let r=s(e.projectId,n);for(let n of t.incoming(`direct`))n.source.projectId===e.projectId&&r.add(n);let i=s(n,e.projectId);for(let n of t.outgoing(`direct`))n.target.projectId===e.projectId&&i.add(n)};for(let t of e)if(!a(t.$data.imports))for(let[e,n]of l(t.$data.imports))for(let r of n){let n=g(e,r.id);u(t,x(t.findElement(n),`Element ${r.id} from project ${e} not found in model ${t.projectId}`))}let d=Array.from(r.entries()).filter(([e,{relationships:t}])=>t.size>0).map(([e,{from:t,to:n,relationships:r}])=>{let a=[...r];E(o(a,1),`Relationships set must have at least one relationship`);let s={id:k(e),source:Y(t),target:Y(n),projectId:t,relations:c(a,h(`id`)),label:null,color:`gray`,parent:null,line:`solid`,tags:m(i(a,h(`tags`)))},l=ne(a);return l&&(s.label=l.title,s.description=y(l.$relationship)??null,s.technology=l.technology,s.color=l.color,s.line=l.line,l.kind&&(s.kind=l.kind),l.$relationship.navigateTo&&(s.navigateTo=l.$relationship.navigateTo)),s});I(t,d);let f=V({nodes:t,edges:d});return{id:`projects-view`,[v]:`projects`,[ie]:`computed`,title:`Projects`,description:{txt:`Overview of all projects and their relationships`},autoLayout:{direction:`TB`},...f}}function ce(e){let t=new Map;for(let n of e){let e=b(n.projectId),r={id:Y(e),kind:`@project`,parent:null,projectId:e,title:n.project.title??n.project.id,description:{txt:[`Elements: ${J(n.$data.elements)}`,`Relationships: ${J(n.$data.relations)}`,`Views: ${J(n.$data.views)}`].join(`
2
+ `)},shape:`rectangle`,children:[],inEdges:[],outEdges:[],color:`primary`,level:0,style:{},tags:[]};t.set(r.id,r)}return t}function X(e){let n=D([...e]),r=new Set(n),i=new Map,a=new P.default(()=>null),o=n.reduce((e,n,o,s)=>(i.set(n.id,n),e.set(n.id,p(s,t(o+1),u(T(n)),f((e,t)=>(r.delete(t),e.some(C(t))||(e.push(t),a.set(t.id,n)),e),[]))),e),new P.default(()=>[]));return{sorted:n,byId:e=>x(i.get(e),`Element not found by id: ${e}`),root:r,parent:e=>a.get(typeof e==`string`?e:e.id),children:e=>o.get(typeof e==`string`?e:e.id),flatten:d(()=>new Set([...r,...n.reduce((e,t)=>{let n=o.get(t.id);return n.length===0?(e.push(t),e):(n.length>1&&e.push(...n),e)},[])]))}}const Z=(e,t)=>e.size>2&&t.size!==e.size?new Set(D([...X(e).flatten(),...t])):e.size>1?new Set(D([...e])):e;function Q(e,t,n){let r=e=>t.has(e),i=new Set([e]),a={incomers:new Set,subjects:new Set([e]),outgoers:new Set},o=new Set(n.incoming.flatMap(t=>{if(a.subjects.add(t.target),a.incomers.add(t.source),i.add(t.target),t.target!==e){let n=t.target.parent;for(;n&&n!==e;)i.add(n),n=n.parent}let n=t.source,o=[];for(;o.push(n),!(r(n)||!n.parent);)n=n.parent;return o})),s=new Set(n.outgoing.flatMap(t=>{if(a.subjects.add(t.source),a.outgoers.add(t.target),i.add(t.source),t.source!==e){let n=t.source.parent;for(;n&&n!==e;)i.add(n),n=n.parent}let n=t.target,o=[];for(;o.push(n),!(r(n)||!n.parent);)n=n.parent;return o}));return{incomers:Z(o,a.incomers),incoming:new Set(n.incoming),subjects:Z(i,a.subjects),outgoing:new Set(n.outgoing),outgoers:Z(s,a.outgoers)}}function le(e,t,n,r=`global`){let i=n?t.findView(n):null;if(r===`view`)return E(i,`Scope view id is required when scope is "view"`),ue(e,i,t);let a=t.element(e);return Q(a,A(a.ascendingSiblings()),{incoming:[...a.incoming()],outgoing:[...a.outgoing()]})}function ue(e,t,n){let r=n.element(e),i={incoming:O(S(r.incoming(),e=>t.includesRelation(e.id))),outgoing:O(S(r.outgoing(),e=>t.includesRelation(e.id)))},a=T(r);return Q(r,new Set([...r.ascendingSiblings(),...p(t.elements(),j(e=>e.element),S(e=>e!==r&&a(e)))]),i)}function $(e,t){return{...z(e,{id:ae(`adhoc`),_stage:`parsed`,_type:`element`,rules:t,title:null,description:null}),_type:`adhoc`,_stage:`computed`}}var de=class e{static use(t){return new e(t)}#e=[];constructor(e){this.model=e}Expr;include(...e){return this.#e.push({include:e.map(e=>H(e))}),this}exclude(...e){return this.#e.push({exclude:e.map(e=>H(e))}),this}compute(){return $(this.model,this.#e)}};export{de as AdhocView,$ as computeAdhocView,R as computeLikeC4Model,B as computeParsedModelData,se as computeProjectsView,le as computeRelationshipsView,L as computeView,K as resolveRulesExtendedViews,X as treeFromElements,F as unsafeComputeView,oe as viewsWithReadableEdges,q as withReadableEdges};
@@ -1,2 +1,2 @@
1
- import { a as Point, i as BBox, n as VectorValue, o as RectBox, r as vector, s as XYPoint, t as Vector } from "../_chunks/index.mjs";
2
- export { BBox, Point, RectBox, Vector, VectorValue, XYPoint, vector };
1
+ import { a as RectBox, c as XYPoint, i as BBox, l as convertPoint, n as VectorValue, o as Dimensions, r as vector, s as Point, t as Vector, u as isPoint } from "../_chunks/index2.mjs";
2
+ export { BBox, Dimensions, Point, RectBox, Vector, VectorValue, XYPoint, convertPoint, isPoint, vector };
@@ -1,3 +1 @@
1
- import { i as RectBox, n as vector, r as BBox, t as Vector } from "../_chunks/geometry.mjs";
2
-
3
- export { BBox, RectBox, Vector, vector };
1
+ import"../_chunks/libs/defu.mjs";import"../_chunks/libs/remeda.mjs";import{a as e,i as t,n,o as r,r as i,t as a}from"../_chunks/geometry.mjs";import"../_chunks/utils.mjs";import"../_chunks/libs/graphology-dag.mjs";import"../_chunks/libs/mnemonist.mjs";import"../_chunks/libs/natural-compare-lite.mjs";import"../_chunks/libs/ohash.mjs";import"../_chunks/libs/@ungap/structured-clone.mjs";import"../_chunks/libs/hast-util-sanitize.mjs";import"../_chunks/libs/rehype-sanitize.mjs";import"../_chunks/libs/hast-util-to-html.mjs";import"../_chunks/libs/character-entities-legacy.mjs";import"../_chunks/libs/character-entities-html4.mjs";import"../_chunks/libs/ccount.mjs";import"../_chunks/libs/comma-separated-tokens.mjs";import"../_chunks/libs/rehype-stringify.mjs";import"../_chunks/libs/devlop.mjs";import"../_chunks/libs/mdast-util-from-markdown.mjs";import"../_chunks/libs/escape-string-regexp.mjs";import"../_chunks/libs/mdast-util-find-and-replace.mjs";import"../_chunks/libs/mdast-util-gfm.mjs";import"../_chunks/libs/markdown-table.mjs";import"../_chunks/libs/longest-streak.mjs";import"../_chunks/libs/character-entities.mjs";import"../_chunks/libs/decode-named-character-reference.mjs";import"../_chunks/libs/micromark-extension-gfm.mjs";import"../_chunks/libs/remark-gfm.mjs";import"../_chunks/libs/remark-github-blockquote-alert.mjs";import"../_chunks/libs/remark-parse.mjs";import"../_chunks/libs/mdast-util-to-hast.mjs";import"../_chunks/libs/remark-rehype.mjs";import"../_chunks/libs/bail.mjs";import"../_chunks/libs/extend.mjs";import"../_chunks/libs/is-plain-obj.mjs";import"../_chunks/libs/trough.mjs";import"../_chunks/libs/unified.mjs";export{i as BBox,t as RectBox,a as Vector,e as convertPoint,r as isPoint,n as vector};
package/dist/index.d.mts CHANGED
@@ -1,16 +1,10 @@
1
- import { Ct as NTuple, Dt as ReorderedArray, Et as Predicate, F as SpecAux, G as Unknown, J as UnknownParsed, K as UnknownComputed, Ot as exact, St as Link, Tt as NonEmptyReadonlyArray, _t as Coalesce, at as preferSummary, b as LooseLiteral, bt as IteratorLike, c as Aux, dt as ExtractOnStage, ft as ModelStage, gt as isOnStage, ht as _type, i as AnyLayouted, it as preferDescription, mt as _stage, n as Any, o as AnyParsed, pt as _layout, q as UnknownLayouted, r as AnyComputed, rt as _aux_d_exports, vt as ExclusiveUnion, wt as NonEmptyArray, xt as KeysOf, yt as IterableContainer } from "./_chunks/_aux.mjs";
2
- import { A as splitGlobalFqn, C as ViewId, D as isGroupElementKind, E as isGlobalFqn, O as isStepEdgeId, S as Tag, T as flattenMarkdownOrString, _ as RelationKind, a as EdgeId, b as StepEdgeIdLiteral, c as GlobalFqn, d as IconUrl, f as MarkdownOrString, g as RelationId, h as ProjectId, i as DeploymentKind, j as stepEdgeId, k as scalar_d_exports, l as GroupElementKind, m as NoneIcon, n as BuiltInIcon, o as ElementKind, p as NodeId, r as DeploymentFqn, s as Fqn, t as AnyFqn, u as Icon, v as RelationshipKind, w as extractStep, x as StepEdgeKind, y as StepEdgeId } from "./_chunks/scalar.mjs";
3
- import { a as Point, i as BBox, n as VectorValue, o as RectBox, r as vector, s as XYPoint, t as Vector } from "./_chunks/index.mjs";
4
- import { $ as ThemeColors, A as HexColor, B as ShapeSize, C as BorderStyle, D as CustomColorDefinitions, E as CustomColor, F as LikeC4Theme, G as ThemeColorValues, H as SpacingSize, I as RelationshipArrowType, J as BorderStyles, K as isCustomColor, L as RelationshipArrowTypes, M as IconSize, N as LikeC4StyleDefaults, O as ElementColorValues, P as LikeC4StylesConfig, Q as Sizes, R as RelationshipColorValues, S as whereOperatorAsPredicate, T as ColorLiteral, U as TextSize, V as Size, W as ThemeColor, X as ElementShapes, Z as IconPositions, _ as isKindEqual, a as AndOperator, b as isParticipantOperator, c as KindEqual, d as OrOperator, f as Participant, g as isAndOperator, h as WhereOperator, i as RelationExpr, j as IconPosition, k as ElementShape, l as NotOperator, m as TagEqual, n as FqnExpr, o as EqualOperator, p as ParticipantOperator, q as isThemeColor, r as PredicateSelector, s as Filterable, t as Expression, u as OperatorPredicate, v as isNotOperator, w as Color, x as isTagEqual, y as isOrOperator, z as RelationshipLineType } from "./_chunks/expression.mjs";
5
- import { t as FqnRef } from "./_chunks/fqnRef.mjs";
6
- import { n as ModelFqnExpr, r as ModelRelationExpr, t as ModelExpression } from "./_chunks/expression-model.mjs";
7
- import { $ as LikeC4Project, $t as AnyIncludePredicate, A as DeploymentViewExcludePredicate, At as DynamicStep, B as LayoutedDynamicView, Bt as isDynamicStepsParallel, C as isDiagramView, Ct as ensureSizes, D as isScopedElementView, Dt as GlobalStyleID, E as isExtendsElementView, Et as GlobalPredicates, F as ParsedDeploymentView, Ft as DynamicViewRule, G as ViewManualLayoutSnapshot, Gt as ElementViewRule, H as DiagramEdgeDriftReason, Ht as ElementViewExcludePredicate, I as DiagramEdge, It as DynamicViewStep, J as ComputedEdge, Jt as ElementViewRuleStyle, K as ComputedDeploymentView, Kt as ElementViewRuleGroup, L as DiagramNode, Lt as ParsedDynamicView, M as DeploymentViewPredicate, Mt as DynamicStepsSeries, N as DeploymentViewRule, Nt as DynamicViewDisplayVariant, O as isViewRulePredicate, Ot as GlobalStyles, P as DeploymentViewRuleStyle, Pt as DynamicViewIncludeRule, Q as ComputedRankConstraint, Qt as AnyExcludePredicate, R as LayoutType, Rt as getParallelStepsPrefix, S as isDeploymentView, St as Relationship, T as isElementView, Tt as GlobalPredicateId, U as DiagramNodeDriftReason, Ut as ElementViewIncludePredicate, V as LayoutedElementView, Vt as isDynamicStepsSeries, W as LayoutedViewDriftReason, Wt as ElementViewPredicate, X as ComputedNode, Xt as isViewRuleGroup, Y as ComputedElementView, Yt as ParsedElementView, Z as ComputedNodeStyle, Zt as isViewRuleRank, _ as ViewOnStage, _n as isViewRuleGlobalPredicateRef, _t as isDeploymentNode, a as SpecTypesFromDump, an as RankValue, at as ElementSpecification, b as ViewWithType, bt as ElementStyle, c as ComputedLikeC4ModelData, cn as ViewRuleAutoLayout, ct as TagSpecification, d as ParsedLikeC4ModelData, dn as ViewRuleRank, dt as DeploymentElement, en as AnyViewRuleStyle, et as LikeC4ProjectManualLayoutsConfig, f as AnyView, fn as ViewType, ft as DeploymentElementRef, g as ProcessedView, gn as isViewRuleAutoLayout, gt as isDeployedInstance, h as ParsedView, hn as isAutoLayoutDirection, ht as DeploymentRelationship, i as ProjectDump, in as NodeNotation, it as LikeC4ProjectTheme, j as DeploymentViewIncludePredicate, jt as DynamicStepsParallel, k as isViewRuleStyle, kt as ModelGlobals, l as LayoutedLikeC4ModelData, ln as ViewRuleGlobalPredicateRef, lt as isTagColorSpecified, m as LayoutedView, mn as ViewWithNotation, mt as DeploymentRelation, n as AuxFromDump, nn as BaseParsedViewProperties, nt as LikeC4ProjectStylesConfig, o as SpecificationDump, on as ViewAutoLayout, ot as RelationshipSpecification, p as ComputedView, pn as ViewWithHash, pt as DeploymentNode, q as ComputedDynamicView, qt as ElementViewRuleRank, r as LikeC4ModelDump, rn as BaseViewProperties, rt as LikeC4ProjectStylesCustomStylesheets, s as AuxFromLikeC4ModelData, sn as ViewManualLayout, st as Specification, t as ViewChange, tn as AutoLayoutDirection, tt as LikeC4ProjectStyleDefaults, u as LikeC4ModelData, un as ViewRuleGlobalStyle, ut as DeployedInstance, v as ViewRule, vn as isViewRuleGlobalStyle, vt as AbstractRelationship, w as isDynamicView, wt as GlobalDynamicPredicates, x as isComputedView, xt as ModelRelation, y as ViewRulePredicate, yt as Element, z as LayoutedDeploymentView, zt as isDynamicStep } from "./_chunks/index2.mjs";
8
- import { i as RichTextOrEmpty, n as RichTextEmpty, t as RichText } from "./_chunks/RichText.mjs";
9
- import { a as LikeC4Styles } from "./_chunks/index3.mjs";
10
- import { a as Queue, c as DefaultMap, i as MultiMap, n as BiMap, o as LinkedList, s as DefaultWeakMap } from "./_chunks/libs/mnemonist.mjs";
1
+ import { $ as LayoutedViewDriftReason, $i as IterableContainer, $n as FqnRef, $r as SpecAux, $t as ElementViewPredicate, A as isComputedView, Ai as RelationKind, An as ModelRelationExpr, Ar as ThemeColors, At as ModelRelation, B as DeploymentViewIncludePredicate, Bi as isGroupElementKind, Bn as OperatorPredicate, Bt as DynamicStepsParallel, C as LayoutedView, Ci as Icon, Cn as ViewWithNotation, Cr as isCustomColor, Ct as DeploymentRelation, D as ViewRule, Di as NoneIcon, Dn as isViewRuleGlobalStyle, Dr as ElementShapes, Dt as AbstractRelationship, E as ViewOnStage, Ei as NodeId, En as isViewRuleGlobalPredicateRef, Et as isDeploymentNode, F as isExtendsElementView, Fi as Tag, Fn as AndOperator, Fr as Aux, Ft as GlobalPredicates, G as DiagramEdge, Gi as ExtractOnStage, Gn as WhereOperator, Gr as LooseLiteral, Gt as DynamicViewStep, H as DeploymentViewRule, Hi as scalar_d_exports, Hn as Participant, Ht as DynamicViewDisplayVariant, I as isScopedElementView, Ii as ViewId, In as EqualOperator, It as GlobalStyleID, J as LayoutedDeploymentView, Ji as _stage, Jn as isNotOperator, Jt as isDynamicStep, K as DiagramNode, Ki as ModelStage, Kn as isAndOperator, Kt as ParsedDynamicView, L as isViewRulePredicate, Li as extractStep, Ln as Filterable, Lt as GlobalStyles, M as isDiagramView, Mi as StepEdgeId, Mn as FqnExpr, Mr as AnyComputed, Mt as ensureSizes, N as isDynamicView, Ni as StepEdgeIdLiteral, Nn as PredicateSelector, Nr as AnyLayouted, Nt as GlobalDynamicPredicates, O as ViewRulePredicate, Oi as ProjectId, On as ModelExpression, Or as IconPositions, Ot as Element, P as isElementView, Pi as StepEdgeKind, Pn as RelationExpr, Pr as AnyParsed, Pt as GlobalPredicateId, Q as DiagramNodeDriftReason, Qi as ExclusiveUnion, Qn as whereOperatorAsPredicate, Qt as ElementViewIncludePredicate, R as isViewRuleStyle, Ri as flattenMarkdownOrString, Rn as KindEqual, Rt as ModelGlobals, S as ComputedView, Si as GroupElementKind, Sn as ViewWithHash, Sr as ThemeColorValues, St as DeploymentNode, T as ProcessedView, Ti as MarkdownOrString, Tn as isViewRuleAutoLayout, Tr as BorderStyles, Tt as isDeployedInstance, U as DeploymentViewRuleStyle, Ui as splitGlobalFqn, Un as ParticipantOperator, Ut as DynamicViewIncludeRule, V as DeploymentViewPredicate, Vi as isStepEdgeId, Vn as OrOperator, Vt as DynamicStepsSeries, W as ParsedDeploymentView, Wi as stepEdgeId, Wn as TagEqual, Wt as DynamicViewRule, X as LayoutedElementView, Xi as isOnStage, Xn as isParticipantOperator, Xt as isDynamicStepsSeries, Y as LayoutedDynamicView, Yi as _type, Yn as isOrOperator, Yt as isDynamicStepsParallel, Z as DiagramEdgeDriftReason, Zi as Coalesce, Zn as isTagEqual, Zt as ElementViewExcludePredicate, _ as ComputedLikeC4ModelData, _i as DeploymentKind, _n as ViewRuleAutoLayout, _r as ShapeSize, _t as TagSpecification, a as isNonEmptyArray, aa as NonEmptyReadonlyArray, ai as UnknownComputed, an as isViewRuleGroup, ar as ElementColorValues, at as ComputedNode, b as ParsedLikeC4ModelData, bi as Fqn, bn as ViewRuleRank, br as TextSize, bt as DeploymentElement, c as RichTextEmpty, ca as exact, cn as AnyIncludePredicate, cr as IconPosition, ct as LikeC4Project, d as AuxFromDump, di as preferSummary, dn as BaseParsedViewProperties, dr as LikeC4StylesConfig, dt as LikeC4ProjectStylesConfig, ea as IteratorLike, en as ElementViewRule, er as BorderStyle, et as ViewManualLayoutSnapshot, f as LikeC4ModelDump, fn as BaseViewProperties, fr as LikeC4Theme, ft as LikeC4ProjectStylesCustomStylesheets, g as AuxFromLikeC4ModelData, gi as DeploymentFqn, gn as ViewManualLayout, gr as RelationshipLineType, gt as Specification, h as SpecificationDump, hi as BuiltInIcon, hn as ViewAutoLayout, hr as RelationshipColorValues, ht as RelationshipSpecification, i as isAnyOf, ia as NonEmptyArray, ii as Unknown, in as ParsedElementView, ir as CustomColorDefinitions, it as ComputedElementView, j as isDeploymentView, ji as RelationshipKind, jn as Expression, jr as Any, jt as Relationship, k as ViewWithType, ki as RelationId, kn as ModelFqnExpr, kr as Sizes, kt as ElementStyle, l as RichTextOrEmpty, li as _aux_d_exports, ln as AnyViewRuleStyle, lr as IconSize, lt as LikeC4ProjectManualLayoutsConfig, m as SpecTypesFromDump, mi as AnyFqn, mn as RankValue, mr as RelationshipArrowTypes, mt as ElementSpecification, n as GuardedBy, na as Link, nn as ElementViewRuleRank, nr as ColorLiteral, nt as ComputedDynamicView, o as isString, oa as Predicate, oi as UnknownLayouted, on as isViewRuleRank, or as ElementShape, ot as ComputedNodeStyle, p as ProjectDump, pn as NodeNotation, pr as RelationshipArrowType, pt as LikeC4ProjectTheme, q as LayoutType, qi as _layout, qn as isKindEqual, qt as getParallelStepsPrefix, r as hasProp, ra as NTuple, rn as ElementViewRuleStyle, rr as CustomColor, rt as ComputedEdge, s as RichText, sa as ReorderedArray, si as UnknownParsed, sn as AnyExcludePredicate, sr as HexColor, st as ComputedRankConstraint, t as Guard, ta as KeysOf, tn as ElementViewRuleGroup, tr as Color, tt as ComputedDeploymentView, u as ViewChange, ui as preferDescription, un as AutoLayoutDirection, ur as LikeC4StyleDefaults, ut as LikeC4ProjectStyleDefaults, v as LayoutedLikeC4ModelData, vi as EdgeId, vn as ViewRuleGlobalPredicateRef, vr as Size, vt as isTagColorSpecified, w as ParsedView, wi as IconUrl, wn as isAutoLayoutDirection, wr as isThemeColor, wt as DeploymentRelationship, x as AnyView, xi as GlobalFqn, xn as ViewType, xr as ThemeColor, xt as DeploymentElementRef, y as LikeC4ModelData, yi as ElementKind, yn as ViewRuleGlobalStyle, yr as SpacingSize, yt as DeployedInstance, z as DeploymentViewExcludePredicate, zi as isGlobalFqn, zn as NotOperator, zt as DynamicStep } from "./_chunks/index.mjs";
2
+ import { a as RectBox, c as XYPoint, i as BBox, l as convertPoint, n as VectorValue, o as Dimensions, r as vector, s as Point, t as Vector, u as isPoint } from "./_chunks/index2.mjs";
3
+ import { i as LikeC4Styles } from "./_chunks/index3.mjs";
4
+ import { a as DefaultWeakMap, i as LinkedList, n as MultiMap, o as DefaultMap, r as Queue } from "./_chunks/libs/mnemonist.mjs";
5
+ import "./_chunks/mnemonist.mjs";
11
6
  import { o as LayoutedProjectsView, r as ComputedProjectsView } from "./_chunks/_types2.mjs";
12
- import { A as parentFqn, D as isDescendantOf, E as isAncestor, L as invariant, M as sortNaturalByFqn, N as sortParentsFirst, O as isSameHierarchy, R as nonNullable, _ as isNonEmptyArray, b as ancestorsFqn, h as hasProp, k as nameFromFqn, m as memoizeProp, v as isString, z as nonexhaustive } from "./_chunks/index7.mjs";
13
- import { p as isIterable } from "./_chunks/index8.mjs";
7
+ import { D as isIterable, F as isAncestor, H as sortParentsFirst, I as isDescendantOf, J as nonNullable, L as isSameHierarchy, R as nameFromFqn, V as sortNaturalByFqn, Y as nonexhaustive, k as ancestorsFqn, m as memoizeProp, q as invariant, z as parentFqn } from "./_chunks/index5.mjs";
14
8
 
15
9
  //#region src/manual-layout/applyManualLayout.d.ts
16
10
  /**
@@ -31,4 +25,4 @@ declare function applyManualLayout<V extends LayoutedView>(autoLayouted: V, snap
31
25
  */
32
26
  declare function calcDriftsFromSnapshot<V extends LayoutedView>(autoLayouted: V, snapshot: ViewManualLayoutSnapshot): V;
33
27
  //#endregion
34
- export { AbstractRelationship, AndOperator, Any, Any as AnyAux, AnyComputed, AnyExcludePredicate, AnyFqn, AnyIncludePredicate, AnyLayouted, AnyParsed, AnyView, AnyViewRuleStyle, AutoLayoutDirection, Aux, AuxFromDump, AuxFromLikeC4ModelData, BBox, BaseParsedViewProperties, BaseViewProperties, BiMap, BorderStyle, BorderStyles, BuiltInIcon, Coalesce, Color, ColorLiteral, ComputedDeploymentView, ComputedDynamicView, ComputedEdge, ComputedElementView, ComputedLikeC4ModelData, ComputedNode, ComputedNodeStyle, type ComputedProjectsView, ComputedRankConstraint, ComputedView, CustomColor, CustomColorDefinitions, DefaultMap, DefaultWeakMap, DeployedInstance, DeploymentElement, DeploymentElementRef, DeploymentFqn, DeploymentKind, DeploymentNode, DeploymentRelation, DeploymentRelationship, DeploymentViewExcludePredicate, DeploymentViewIncludePredicate, DeploymentViewPredicate, DeploymentViewRule, DeploymentViewRuleStyle, DiagramEdge, DiagramEdgeDriftReason, DiagramNode, DiagramNodeDriftReason, LayoutedView as DiagramView, LayoutedView, DynamicStep, DynamicStepsParallel, DynamicStepsSeries, DynamicViewDisplayVariant, DynamicViewIncludeRule, DynamicViewRule, DynamicViewStep, EdgeId, Element, ElementColorValues, ElementKind, ElementShape, ElementShapes, ElementSpecification, ElementStyle, ElementViewExcludePredicate, ElementViewIncludePredicate, ElementViewPredicate, ElementViewRule, ElementViewRuleGroup, ElementViewRuleRank, ElementViewRuleStyle, EqualOperator, ExclusiveUnion, Expression, ExtractOnStage, Filterable, Fqn, FqnExpr, FqnRef, GlobalDynamicPredicates, GlobalFqn, GlobalPredicateId, GlobalPredicates, GlobalStyleID, GlobalStyles, GroupElementKind, HexColor, Icon, IconPosition, IconPositions, IconSize, IconUrl, IterableContainer, IteratorLike, KeysOf, KindEqual, LayoutType, LayoutedDeploymentView, LayoutedDynamicView, LayoutedElementView, LayoutedLikeC4ModelData, type LayoutedProjectsView, LayoutedViewDriftReason, LikeC4ModelData, LikeC4ModelDump, LikeC4Project, LikeC4ProjectManualLayoutsConfig, LikeC4ProjectStyleDefaults, LikeC4ProjectStylesConfig, LikeC4ProjectStylesCustomStylesheets, LikeC4ProjectTheme, type LikeC4StyleDefaults, LikeC4Styles, type LikeC4StylesConfig, type LikeC4Theme, ParsedView as LikeC4View, ParsedView, Link, LinkedList, LooseLiteral, MarkdownOrString, ModelExpression, ModelFqnExpr, ModelGlobals, ModelRelation, ModelRelationExpr, ModelStage, MultiMap, NTuple, NodeId, NodeNotation, NonEmptyArray, NonEmptyReadonlyArray, NoneIcon, NotOperator, OperatorPredicate, OrOperator, ParsedDeploymentView, ParsedDynamicView, ParsedElementView, ParsedLikeC4ModelData, Participant, ParticipantOperator, Point, Predicate, PredicateSelector, ProcessedView, ProjectDump, ProjectId, Queue, RankValue, RectBox, RelationExpr, RelationId, RelationKind, Relationship, RelationshipArrowType, RelationshipArrowTypes, RelationshipColorValues, RelationshipKind, RelationshipLineType, RelationshipSpecification, ReorderedArray, RichText, RichTextEmpty, RichTextOrEmpty, ShapeSize, Size, Sizes, SpacingSize, SpecAux, SpecTypesFromDump, Specification, SpecificationDump, StepEdgeId, StepEdgeIdLiteral, StepEdgeKind, Tag, TagEqual, TagSpecification, TextSize, ThemeColor, type ThemeColorValues, ThemeColors, Unknown, UnknownComputed, UnknownLayouted, UnknownParsed, Vector, VectorValue, ViewAutoLayout, ViewChange, ViewId, ViewManualLayout, ViewManualLayoutSnapshot, ViewOnStage, ViewRule, ViewRuleAutoLayout, ViewRuleGlobalPredicateRef, ViewRuleGlobalStyle, ViewRulePredicate, ViewRuleRank, ViewType, ViewWithHash, ViewWithNotation, ViewWithType, WhereOperator, XYPoint, _layout, _stage, _type, ancestorsFqn, applyManualLayout, _aux_d_exports as aux, calcDriftsFromSnapshot, ensureSizes, exact, extractStep, flattenMarkdownOrString, getParallelStepsPrefix, hasProp, invariant, isAncestor, isAndOperator, isAutoLayoutDirection, isComputedView, isCustomColor, isDeployedInstance, isDeploymentNode, isDeploymentView, isDescendantOf, isDiagramView, isDiagramView as isLayoutedView, isDynamicStep, isDynamicStepsParallel, isDynamicStepsSeries, isDynamicView, isElementView, isExtendsElementView, isGlobalFqn, isGroupElementKind, isIterable, isKindEqual, isNonEmptyArray, isNotOperator, isOnStage, isOrOperator, isParticipantOperator, isSameHierarchy, isScopedElementView, isStepEdgeId, isString, isTagColorSpecified, isTagEqual, isThemeColor, isViewRuleAutoLayout, isViewRuleGlobalPredicateRef, isViewRuleGlobalStyle, isViewRuleGroup, isViewRulePredicate, isViewRuleRank, isViewRuleStyle, memoizeProp, nameFromFqn, nonNullable, nonexhaustive, parentFqn, preferDescription, preferSummary, scalar_d_exports as scalar, sortNaturalByFqn, sortParentsFirst, splitGlobalFqn, stepEdgeId, vector, whereOperatorAsPredicate };
28
+ export { AbstractRelationship, AndOperator, Any, Any as AnyAux, AnyComputed, AnyExcludePredicate, AnyFqn, AnyIncludePredicate, AnyLayouted, AnyParsed, AnyView, AnyViewRuleStyle, AutoLayoutDirection, Aux, AuxFromDump, AuxFromLikeC4ModelData, BBox, BaseParsedViewProperties, BaseViewProperties, BorderStyle, BorderStyles, BuiltInIcon, Coalesce, Color, ColorLiteral, ComputedDeploymentView, ComputedDynamicView, ComputedEdge, ComputedElementView, ComputedLikeC4ModelData, ComputedNode, ComputedNodeStyle, type ComputedProjectsView, ComputedRankConstraint, ComputedView, CustomColor, CustomColorDefinitions, DefaultMap, DefaultWeakMap, DeployedInstance, DeploymentElement, DeploymentElementRef, DeploymentFqn, DeploymentKind, DeploymentNode, DeploymentRelation, DeploymentRelationship, DeploymentViewExcludePredicate, DeploymentViewIncludePredicate, DeploymentViewPredicate, DeploymentViewRule, DeploymentViewRuleStyle, DiagramEdge, DiagramEdgeDriftReason, DiagramNode, DiagramNodeDriftReason, LayoutedView as DiagramView, LayoutedView, Dimensions, DynamicStep, DynamicStepsParallel, DynamicStepsSeries, DynamicViewDisplayVariant, DynamicViewIncludeRule, DynamicViewRule, DynamicViewStep, EdgeId, Element, ElementColorValues, ElementKind, ElementShape, ElementShapes, ElementSpecification, ElementStyle, ElementViewExcludePredicate, ElementViewIncludePredicate, ElementViewPredicate, ElementViewRule, ElementViewRuleGroup, ElementViewRuleRank, ElementViewRuleStyle, EqualOperator, ExclusiveUnion, Expression, ExtractOnStage, Filterable, Fqn, FqnExpr, FqnRef, GlobalDynamicPredicates, GlobalFqn, GlobalPredicateId, GlobalPredicates, GlobalStyleID, GlobalStyles, GroupElementKind, Guard, GuardedBy, HexColor, Icon, IconPosition, IconPositions, IconSize, IconUrl, IterableContainer, IteratorLike, KeysOf, KindEqual, LayoutType, LayoutedDeploymentView, LayoutedDynamicView, LayoutedElementView, LayoutedLikeC4ModelData, type LayoutedProjectsView, LayoutedViewDriftReason, LikeC4ModelData, LikeC4ModelDump, LikeC4Project, LikeC4ProjectManualLayoutsConfig, LikeC4ProjectStyleDefaults, LikeC4ProjectStylesConfig, LikeC4ProjectStylesCustomStylesheets, LikeC4ProjectTheme, type LikeC4StyleDefaults, LikeC4Styles, type LikeC4StylesConfig, type LikeC4Theme, ParsedView as LikeC4View, ParsedView, Link, LinkedList, LooseLiteral, MarkdownOrString, ModelExpression, ModelFqnExpr, ModelGlobals, ModelRelation, ModelRelationExpr, ModelStage, MultiMap, NTuple, NodeId, NodeNotation, NonEmptyArray, NonEmptyReadonlyArray, NoneIcon, NotOperator, OperatorPredicate, OrOperator, ParsedDeploymentView, ParsedDynamicView, ParsedElementView, ParsedLikeC4ModelData, Participant, ParticipantOperator, Point, Predicate, PredicateSelector, ProcessedView, ProjectDump, ProjectId, Queue, RankValue, RectBox, RelationExpr, RelationId, RelationKind, Relationship, RelationshipArrowType, RelationshipArrowTypes, RelationshipColorValues, RelationshipKind, RelationshipLineType, RelationshipSpecification, ReorderedArray, RichText, RichTextEmpty, RichTextOrEmpty, ShapeSize, Size, Sizes, SpacingSize, SpecAux, SpecTypesFromDump, Specification, SpecificationDump, StepEdgeId, StepEdgeIdLiteral, StepEdgeKind, Tag, TagEqual, TagSpecification, TextSize, ThemeColor, type ThemeColorValues, ThemeColors, Unknown, UnknownComputed, UnknownLayouted, UnknownParsed, Vector, VectorValue, ViewAutoLayout, ViewChange, ViewId, ViewManualLayout, ViewManualLayoutSnapshot, ViewOnStage, ViewRule, ViewRuleAutoLayout, ViewRuleGlobalPredicateRef, ViewRuleGlobalStyle, ViewRulePredicate, ViewRuleRank, ViewType, ViewWithHash, ViewWithNotation, ViewWithType, WhereOperator, XYPoint, _layout, _stage, _type, ancestorsFqn, applyManualLayout, _aux_d_exports as aux, calcDriftsFromSnapshot, convertPoint, ensureSizes, exact, extractStep, flattenMarkdownOrString, getParallelStepsPrefix, hasProp, invariant, isAncestor, isAndOperator, isAnyOf, isAutoLayoutDirection, isComputedView, isCustomColor, isDeployedInstance, isDeploymentNode, isDeploymentView, isDescendantOf, isDiagramView, isDiagramView as isLayoutedView, isDynamicStep, isDynamicStepsParallel, isDynamicStepsSeries, isDynamicView, isElementView, isExtendsElementView, isGlobalFqn, isGroupElementKind, isIterable, isKindEqual, isNonEmptyArray, isNotOperator, isOnStage, isOrOperator, isParticipantOperator, isPoint, isSameHierarchy, isScopedElementView, isStepEdgeId, isString, isTagColorSpecified, isTagEqual, isThemeColor, isViewRuleAutoLayout, isViewRuleGlobalPredicateRef, isViewRuleGlobalStyle, isViewRuleGroup, isViewRulePredicate, isViewRuleRank, isViewRuleStyle, memoizeProp, nameFromFqn, nonNullable, nonexhaustive, parentFqn, preferDescription, preferSummary, scalar_d_exports as scalar, sortNaturalByFqn, sortParentsFirst, splitGlobalFqn, stepEdgeId, vector, whereOperatorAsPredicate };
package/dist/index.mjs CHANGED
@@ -1,27 +1 @@
1
- import { A as isDeployedInstance, C as isNotOperator, D as whereOperatorAsPredicate, E as isTagEqual, F as isOnStage, I as exact, M as _layout, N as _stage, O as isTagColorSpecified, P as _type, S as isKindEqual, T as isParticipantOperator, _ as isExtendsElementView, a as isDynamicStep, b as isViewRuleStyle, c as isAutoLayoutDirection, d as isViewRuleGlobalStyle, f as isComputedView, g as isElementView, h as isDynamicView, i as getParallelStepsPrefix, j as isDeploymentNode, k as ensureSizes, l as isViewRuleAutoLayout, m as isDiagramView, n as isViewRuleGroup, o as isDynamicStepsParallel, p as isDeploymentView, r as isViewRuleRank, s as isDynamicStepsSeries, t as LikeC4Styles, u as isViewRuleGlobalPredicateRef, v as isScopedElementView, w as isOrOperator, x as isAndOperator, y as isViewRulePredicate } from "./_chunks/LikeC4Styles.mjs";
2
- import "./_chunks/libs/natural-compare-lite.mjs";
3
- import { A as sortParentsFirst, C as isAncestor, D as parentFqn, E as nameFromFqn, N as isNonEmptyArray, P as isString, T as isSameHierarchy, _ as ancestorsFqn, h as memoizeProp, j as hasProp, k as sortNaturalByFqn, w as isDescendantOf } from "./_chunks/utils.mjs";
4
- import { n as nonNullable, r as nonexhaustive, t as invariant } from "./_chunks/invariant.mjs";
5
- import "./_chunks/libs/@mantine/colors-generator.mjs";
6
- import "./_chunks/libs/graphology-dag.mjs";
7
- import { i as import_linked_list, n as import_default_map, o as import_multi_map, r as import_default_weak_map, s as import_queue, t as import_bi_map } from "./_chunks/libs/mnemonist.mjs";
8
- import { p as isIterable } from "./_chunks/iterable.mjs";
9
- import "./_chunks/libs/defu.mjs";
10
- import "./_chunks/libs/extend.mjs";
11
- import { n as preferSummary, t as preferDescription } from "./_chunks/_aux.mjs";
12
- import { i as RectBox, n as vector, r as BBox, t as Vector } from "./_chunks/geometry.mjs";
13
- import { _ as scalar_exports, a as GroupElementKind, c as ProjectId, d as ViewId, f as extractStep, g as isStepEdgeId, h as isGroupElementKind, i as GlobalFqn, l as RelationId, m as isGlobalFqn, n as EdgeId, o as NodeId, p as flattenMarkdownOrString, r as Fqn, s as NoneIcon, t as DeploymentFqn, u as StepEdgeKind, v as splitGlobalFqn, y as stepEdgeId } from "./_chunks/scalar.mjs";
14
- import { t as FqnRef } from "./_chunks/fqnRef.mjs";
15
- import { n as FqnExpr, r as RelationExpr, t as Expression } from "./_chunks/expression.mjs";
16
- import { n as ModelFqnExpr, r as ModelRelationExpr, t as ModelExpression } from "./_chunks/expression-model.mjs";
17
- import { t as RichText } from "./_chunks/RichText.mjs";
18
- import "./styles/index.mjs";
19
- import { n as applyManualLayout, t as calcDriftsFromSnapshot } from "./_chunks/calcDriftsFromSnapshot.mjs";
20
-
21
- var BiMap = import_bi_map.default;
22
- var DefaultMap = import_default_map.default;
23
- var DefaultWeakMap = import_default_weak_map.default;
24
- var LinkedList = import_linked_list.default;
25
- var MultiMap = import_multi_map.default;
26
- var Queue = import_queue.default;
27
- export { BBox, BiMap, DefaultMap, DefaultWeakMap, DeploymentFqn, EdgeId, Expression, Fqn, FqnExpr, FqnRef, GlobalFqn, GroupElementKind, LikeC4Styles, LinkedList, ModelExpression, ModelFqnExpr, ModelRelationExpr, MultiMap, NodeId, NoneIcon, ProjectId, Queue, RectBox, RelationExpr, RelationId, RichText, StepEdgeKind, Vector, ViewId, _layout, _stage, _type, ancestorsFqn, applyManualLayout, calcDriftsFromSnapshot, ensureSizes, exact, extractStep, flattenMarkdownOrString, getParallelStepsPrefix, hasProp, invariant, isAncestor, isAndOperator, isAutoLayoutDirection, isComputedView, isDeployedInstance, isDeploymentNode, isDeploymentView, isDescendantOf, isDiagramView, isDiagramView as isLayoutedView, isDynamicStep, isDynamicStepsParallel, isDynamicStepsSeries, isDynamicView, isElementView, isExtendsElementView, isGlobalFqn, isGroupElementKind, isIterable, isKindEqual, isNonEmptyArray, isNotOperator, isOnStage, isOrOperator, isParticipantOperator, isSameHierarchy, isScopedElementView, isStepEdgeId, isString, isTagColorSpecified, isTagEqual, isViewRuleAutoLayout, isViewRuleGlobalPredicateRef, isViewRuleGlobalStyle, isViewRuleGroup, isViewRulePredicate, isViewRuleRank, isViewRuleStyle, memoizeProp, nameFromFqn, nonNullable, nonexhaustive, parentFqn, preferDescription, preferSummary, scalar_exports as scalar, sortNaturalByFqn, sortParentsFirst, splitGlobalFqn, stepEdgeId, vector, whereOperatorAsPredicate };
1
+ import"./_chunks/libs/defu.mjs";import"./_chunks/libs/remeda.mjs";import{$ as e,A as t,B as n,C as r,D as i,E as a,G as o,H as s,J as c,K as l,O as u,Q as d,S as f,T as p,U as m,V as h,W as g,X as _,Y as v,Z as y,_ as b,_t as x,a as S,at as C,b as w,bt as T,c as E,ct as D,d as O,dt as k,et as A,f as j,ft as M,g as N,gt as P,h as F,ht as I,i as L,it as R,k as z,l as B,lt as V,m as H,mt as U,n as W,nt as G,o as K,ot as q,p as J,pt as Y,q as ee,r as X,rt as Z,s as Q,st as $,t as te,tt as ne,u as re,ut as ie,v as ae,vt as oe,w as se,x as ce,xt as le,y as ue,yt as de}from"./_chunks/types.mjs";import{i as fe,r as pe}from"./_chunks/geometry.mjs";import{$ as me,A as he,B as ge,G as _e,H as ve,I as ye,K as be,L as xe,O as Se,Q as Ce,R as we,U as Te,W as Ee,et as De,h as Oe,q as ke,z as Ae}from"./_chunks/utils.mjs";import"./_chunks/libs/graphology-dag.mjs";import{a as je,n as Me,o as Ne,r as Pe,t as Fe}from"./_chunks/libs/mnemonist.mjs";import"./_chunks/libs/natural-compare-lite.mjs";import"./_chunks/libs/ohash.mjs";import"./_chunks/libs/@ungap/structured-clone.mjs";import"./_chunks/libs/hast-util-sanitize.mjs";import"./_chunks/libs/rehype-sanitize.mjs";import"./_chunks/libs/hast-util-to-html.mjs";import"./_chunks/libs/character-entities-legacy.mjs";import"./_chunks/libs/character-entities-html4.mjs";import"./_chunks/libs/ccount.mjs";import"./_chunks/libs/comma-separated-tokens.mjs";import"./_chunks/libs/rehype-stringify.mjs";import"./_chunks/libs/devlop.mjs";import"./_chunks/libs/mdast-util-from-markdown.mjs";import"./_chunks/libs/escape-string-regexp.mjs";import"./_chunks/libs/mdast-util-find-and-replace.mjs";import"./_chunks/libs/mdast-util-gfm.mjs";import"./_chunks/libs/markdown-table.mjs";import"./_chunks/libs/longest-streak.mjs";import"./_chunks/libs/character-entities.mjs";import"./_chunks/libs/decode-named-character-reference.mjs";import"./_chunks/libs/micromark-extension-gfm.mjs";import"./_chunks/libs/remark-gfm.mjs";import"./_chunks/libs/remark-github-blockquote-alert.mjs";import"./_chunks/libs/remark-parse.mjs";import"./_chunks/libs/mdast-util-to-hast.mjs";import"./_chunks/libs/remark-rehype.mjs";import"./_chunks/libs/bail.mjs";import"./_chunks/libs/extend.mjs";import"./_chunks/libs/is-plain-obj.mjs";import"./_chunks/libs/trough.mjs";import"./_chunks/libs/unified.mjs";import"./_chunks/libs/@radix-ui/colors.mjs";import"./_chunks/libs/@mantine/colors-generator.mjs";import{n as Ie,t as Le}from"./_chunks/manual-layout.mjs";import"./_chunks/assignTagColors.mjs";import"./styles/index.mjs";var Re=Fe.default,ze=Me.default,Be=Pe.default,Ve=je.default,He=Ne.default;export{pe as BBox,Re as DefaultMap,ze as DefaultWeakMap,v as DeploymentFqn,_ as EdgeId,o as Expression,y as Fqn,l as FqnExpr,c as FqnRef,d as GlobalFqn,e as GroupElementKind,t as LikeC4Styles,Be as LinkedList,A as MarkdownOrString,s as ModelExpression,m as ModelFqnExpr,g as ModelRelationExpr,Ve as MultiMap,ne as NodeId,G as NoneIcon,Z as ProjectId,He as Queue,fe as RectBox,ee as RelationExpr,R as RelationId,te as RichText,C as StepEdgeKind,q as ViewId,I as _layout,P as _stage,x as _type,he as ancestorsFqn,Ie as applyManualLayout,Le as calcDriftsFromSnapshot,z as ensureSizes,le as exact,$ as extractStep,D as flattenMarkdownOrString,L as getParallelStepsPrefix,Ee as hasProp,Ce as invariant,ye as isAncestor,ce as isAndOperator,_e as isAnyOf,E as isAutoLayoutDirection,j as isComputedView,n as isDeployedInstance,h as isDeploymentNode,J as isDeploymentView,xe as isDescendantOf,H as isDiagramView,H as isLayoutedView,S as isDynamicStep,K as isDynamicStepsParallel,Q as isDynamicStepsSeries,F as isDynamicView,N as isElementView,b as isExtendsElementView,V as isGlobalFqn,ie as isGroupElementKind,Se as isIterable,f as isKindEqual,be as isNonEmptyArray,r as isNotOperator,oe as isOnStage,se as isOrOperator,p as isParticipantOperator,we as isSameHierarchy,ae as isScopedElementView,k as isStepEdgeId,ke as isString,u as isTagColorSpecified,a as isTagEqual,B as isViewRuleAutoLayout,re as isViewRuleGlobalPredicateRef,O as isViewRuleGlobalStyle,W as isViewRuleGroup,ue as isViewRulePredicate,X as isViewRuleRank,w as isViewRuleStyle,Oe as memoizeProp,Ae as nameFromFqn,me as nonNullable,De as nonexhaustive,ge as parentFqn,de as preferDescription,T as preferSummary,M as scalar,ve as sortNaturalByFqn,Te as sortParentsFirst,Y as splitGlobalFqn,U as stepEdgeId,i as whereOperatorAsPredicate};
@@ -1,15 +1,8 @@
1
- import "../_chunks/_aux.mjs";
2
- import "../_chunks/scalar.mjs";
3
- import "../_chunks/expression.mjs";
4
- import "../_chunks/fqnRef.mjs";
5
- import "../_chunks/expression-model.mjs";
1
+ import "../_chunks/index.mjs";
6
2
  import "../_chunks/index2.mjs";
7
- import "../_chunks/RichText.mjs";
8
3
  import "../_chunks/index3.mjs";
4
+ import "../_chunks/libs/mnemonist.mjs";
5
+ import "../_chunks/mnemonist.mjs";
9
6
  import { C as ElementModel, S as NodeModel, T as RelationshipModel, _ as WithMetadata, a as DeploymentNodeModel, b as LikeC4ViewsFolder, d as DeploymentOrFqn, f as EdgeOrId, g as OutgoingFilter, h as NodeOrId, i as DeploymentElementModel, l as RelationshipsAccum, m as IncomingFilter, n as LikeC4Model, o as DeploymentRelationEndpoint, p as ElementOrFqn, r as DeployedInstanceModel, s as DeploymentRelationModel, t as AnyLikeC4Model, u as LikeC4DeploymentModel, v as WithTags, w as AnyRelationshipModel, x as EdgeModel, y as LikeC4ViewModel } from "../_chunks/LikeC4Model.mjs";
10
- import { n as Connection } from "../_chunks/const.mjs";
11
- import { a as DeploymentConnectionModel, i as find_d_exports } from "../_chunks/find.mjs";
12
- import { a as ConnectionModel, i as find_d_exports$1 } from "../_chunks/find2.mjs";
13
- import { a as hasSameSource, c as isAnyInOut, d as isOutgoing, f as mergeConnections, i as findDescendantConnections, l as isIncoming, m as sortDeepestFirst, n as findAscendingConnections, o as hasSameSourceTarget, p as sortConnectionsByBoundaryHierarchy, r as findDeepestNestedConnection, s as hasSameTarget, t as differenceConnections, u as isNestedConnection } from "../_chunks/index4.mjs";
14
- import { a as isDeployedInstanceModel, c as isDeploymentRelationModel, d as isLikeC4ViewModel, f as isNestedElementOfDeployedInstanceModel, i as normalizeViewPath, l as isEdgeModel, m as isRelationModel, n as extractViewTitleFromPath, o as isDeploymentElementModel, p as isNodeModel, r as getViewFolderPath, s as isDeploymentNodeModel, t as VIEW_FOLDERS_SEPARATOR, u as isElementModel } from "../_chunks/index5.mjs";
7
+ import { A as sortDeepestFirst, C as hasSameTarget, D as isOutgoing, E as isNestedConnection, M as DeploymentConnectionModel, N as Connection, O as mergeConnections, S as hasSameSourceTarget, T as isIncoming, _ as differenceConnections, a as isDeployedInstanceModel, b as findDescendantConnections, c as isDeploymentRelationModel, d as isLikeC4ViewModel, f as isNestedElementOfDeployedInstanceModel, g as find_d_exports, h as find_d_exports$1, i as normalizeViewPath, j as ConnectionModel, k as sortConnectionsByBoundaryHierarchy, l as isEdgeModel, m as isRelationModel, n as extractViewTitleFromPath, o as isDeploymentElementModel, p as isNodeModel, r as getViewFolderPath, s as isDeploymentNodeModel, t as VIEW_FOLDERS_SEPARATOR, u as isElementModel, v as findAscendingConnections, w as isAnyInOut, x as hasSameSource, y as findDeepestNestedConnection } from "../_chunks/index4.mjs";
15
8
  export { AnyLikeC4Model, AnyRelationshipModel, Connection, ConnectionModel, DeployedInstanceModel, DeploymentConnectionModel, DeploymentElementModel, DeploymentNodeModel, DeploymentOrFqn, DeploymentRelationEndpoint, DeploymentRelationModel, EdgeModel, EdgeOrId, ElementModel, ElementOrFqn, IncomingFilter, LikeC4DeploymentModel, LikeC4Model, LikeC4ViewModel, LikeC4ViewsFolder, NodeModel, NodeOrId, OutgoingFilter, RelationshipModel, RelationshipsAccum, VIEW_FOLDERS_SEPARATOR, WithMetadata, WithTags, find_d_exports as deploymentConnection, differenceConnections, extractViewTitleFromPath, findAscendingConnections, findDeepestNestedConnection, findDescendantConnections, getViewFolderPath, hasSameSource, hasSameSourceTarget, hasSameTarget, isAnyInOut, isDeployedInstanceModel, isDeploymentElementModel, isDeploymentNodeModel, isDeploymentRelationModel, isEdgeModel, isElementModel, isIncoming, isLikeC4ViewModel, isRelationModel as isModelRelation, isRelationModel, isRelationModel as isRelationshipModel, isNestedConnection, isNestedElementOfDeployedInstanceModel, isNodeModel, isOutgoing, mergeConnections, find_d_exports$1 as modelConnection, normalizeViewPath, sortConnectionsByBoundaryHierarchy, sortDeepestFirst };
@@ -1,11 +1 @@
1
- import "../_chunks/libs/natural-compare-lite.mjs";
2
- import "../_chunks/libs/@mantine/colors-generator.mjs";
3
- import "../_chunks/libs/graphology-dag.mjs";
4
- import "../_chunks/libs/defu.mjs";
5
- import "../_chunks/libs/extend.mjs";
6
- import { S as ElementModel, _ as LikeC4DeploymentModel, a as isEdgeModel, b as getViewFolderPath, c as isNestedElementOfDeployedInstanceModel, d as LikeC4Model, f as LikeC4ViewsFolder, g as RelationshipModel, h as EdgeModel, i as isDeploymentRelationModel, l as isNodeModel, m as NodeModel, n as isDeploymentElementModel, o as isElementModel, p as LikeC4ViewModel, r as isDeploymentNodeModel, s as isLikeC4ViewModel, t as isDeployedInstanceModel, u as isRelationModel, v as VIEW_FOLDERS_SEPARATOR, x as normalizeViewPath, y as extractViewTitleFromPath } from "../_chunks/model.mjs";
7
- import { a as DeploymentConnectionModel, c as DeploymentRelationModel, i as find_exports, o as DeployedInstanceModel, s as DeploymentNodeModel, u as RelationshipsAccum } from "../_chunks/find.mjs";
8
- import { n as Connection } from "../_chunks/const.mjs";
9
- import { _ as mergeConnections, a as ConnectionModel, c as findDeepestNestedConnection, d as hasSameSourceTarget, f as hasSameTarget, g as isOutgoing, h as isNestedConnection, i as find_exports$1, l as findDescendantConnections, m as isIncoming, o as differenceConnections, p as isAnyInOut, s as findAscendingConnections, u as hasSameSource, v as sortConnectionsByBoundaryHierarchy, y as sortDeepestFirst } from "../_chunks/find2.mjs";
10
-
11
- export { Connection, ConnectionModel, DeployedInstanceModel, DeploymentConnectionModel, DeploymentNodeModel, DeploymentRelationModel, EdgeModel, ElementModel, LikeC4DeploymentModel, LikeC4Model, LikeC4ViewModel, LikeC4ViewsFolder, NodeModel, RelationshipModel, RelationshipsAccum, VIEW_FOLDERS_SEPARATOR, find_exports as deploymentConnection, differenceConnections, extractViewTitleFromPath, findAscendingConnections, findDeepestNestedConnection, findDescendantConnections, getViewFolderPath, hasSameSource, hasSameSourceTarget, hasSameTarget, isAnyInOut, isDeployedInstanceModel, isDeploymentElementModel, isDeploymentNodeModel, isDeploymentRelationModel, isEdgeModel, isElementModel, isIncoming, isLikeC4ViewModel, isRelationModel as isModelRelation, isRelationModel, isRelationModel as isRelationshipModel, isNestedConnection, isNestedElementOfDeployedInstanceModel, isNodeModel, isOutgoing, mergeConnections, find_exports$1 as modelConnection, normalizeViewPath, sortConnectionsByBoundaryHierarchy, sortDeepestFirst };
1
+ import"../_chunks/libs/defu.mjs";import"../_chunks/libs/remeda.mjs";import"../_chunks/types.mjs";import"../_chunks/geometry.mjs";import"../_chunks/utils.mjs";import"../_chunks/libs/graphology-dag.mjs";import"../_chunks/libs/mnemonist.mjs";import"../_chunks/libs/natural-compare-lite.mjs";import"../_chunks/libs/ohash.mjs";import"../_chunks/libs/@ungap/structured-clone.mjs";import"../_chunks/libs/hast-util-sanitize.mjs";import"../_chunks/libs/rehype-sanitize.mjs";import"../_chunks/libs/hast-util-to-html.mjs";import"../_chunks/libs/character-entities-legacy.mjs";import"../_chunks/libs/character-entities-html4.mjs";import"../_chunks/libs/ccount.mjs";import"../_chunks/libs/comma-separated-tokens.mjs";import"../_chunks/libs/rehype-stringify.mjs";import"../_chunks/libs/devlop.mjs";import"../_chunks/libs/mdast-util-from-markdown.mjs";import"../_chunks/libs/escape-string-regexp.mjs";import"../_chunks/libs/mdast-util-find-and-replace.mjs";import"../_chunks/libs/mdast-util-gfm.mjs";import"../_chunks/libs/markdown-table.mjs";import"../_chunks/libs/longest-streak.mjs";import"../_chunks/libs/character-entities.mjs";import"../_chunks/libs/decode-named-character-reference.mjs";import"../_chunks/libs/micromark-extension-gfm.mjs";import"../_chunks/libs/remark-gfm.mjs";import"../_chunks/libs/remark-github-blockquote-alert.mjs";import"../_chunks/libs/remark-parse.mjs";import"../_chunks/libs/mdast-util-to-hast.mjs";import"../_chunks/libs/remark-rehype.mjs";import"../_chunks/libs/bail.mjs";import"../_chunks/libs/extend.mjs";import"../_chunks/libs/is-plain-obj.mjs";import"../_chunks/libs/trough.mjs";import"../_chunks/libs/unified.mjs";import"../_chunks/libs/@radix-ui/colors.mjs";import"../_chunks/libs/@mantine/colors-generator.mjs";import{A as e,B as t,C as n,D as r,E as i,F as a,G as o,H as s,I as c,J as l,K as u,L as d,M as f,N as p,O as m,P as h,R as g,S as _,T as v,U as y,V as b,W as x,_ as S,a as C,b as w,c as T,g as E,h as D,i as O,k,l as A,m as j,n as M,o as N,p as P,q as F,r as I,s as L,t as R,u as z,v as B,w as V,x as H,y as U,z as W}from"../_chunks/model.mjs";import"../_chunks/manual-layout.mjs";export{f as Connection,D as ConnectionModel,x as DeployedInstanceModel,e as DeploymentConnectionModel,o as DeploymentNodeModel,u as DeploymentRelationModel,d as EdgeModel,l as ElementModel,W as LikeC4DeploymentModel,p as LikeC4Model,a as LikeC4ViewModel,h as LikeC4ViewsFolder,c as NodeModel,g as RelationshipModel,F as RelationshipsAccum,t as VIEW_FOLDERS_SEPARATOR,j as deploymentConnection,E as differenceConnections,b as extractViewTitleFromPath,S as findAscendingConnections,B as findDeepestNestedConnection,U as findDescendantConnections,s as getViewFolderPath,w as hasSameSource,H as hasSameSourceTarget,_ as hasSameTarget,n as isAnyInOut,R as isDeployedInstanceModel,M as isDeploymentElementModel,I as isDeploymentNodeModel,O as isDeploymentRelationModel,C as isEdgeModel,N as isElementModel,V as isIncoming,L as isLikeC4ViewModel,z as isModelRelation,z as isRelationModel,z as isRelationshipModel,v as isNestedConnection,T as isNestedElementOfDeployedInstanceModel,A as isNodeModel,i as isOutgoing,r as mergeConnections,P as modelConnection,y as normalizeViewPath,m as sortConnectionsByBoundaryHierarchy,k as sortDeepestFirst};
@@ -1,9 +1,4 @@
1
- import "../_chunks/_aux.mjs";
2
- import "../_chunks/scalar.mjs";
3
- import { $ as ThemeColors, A as HexColor, B as ShapeSize, C as BorderStyle, D as CustomColorDefinitions, E as CustomColor, F as LikeC4Theme, G as ThemeColorValues, H as SpacingSize, I as RelationshipArrowType, J as BorderStyles, K as isCustomColor, L as RelationshipArrowTypes, M as IconSize, N as LikeC4StyleDefaults, O as ElementColorValues, P as LikeC4StylesConfig, Q as Sizes, R as RelationshipColorValues, T as ColorLiteral, U as TextSize, V as Size, W as ThemeColor, X as ElementShapes, Y as DefaultTagColors, Z as IconPositions, j as IconPosition, k as ElementShape, q as isThemeColor, w as Color, z as RelationshipLineType } from "../_chunks/expression.mjs";
4
- import "../_chunks/fqnRef.mjs";
5
- import "../_chunks/expression-model.mjs";
1
+ import { Ar as ThemeColors, Cr as isCustomColor, Dr as ElementShapes, Er as DefaultTagColors, Or as IconPositions, Sr as ThemeColorValues, Tr as BorderStyles, _r as ShapeSize, ar as ElementColorValues, br as TextSize, cr as IconPosition, dr as LikeC4StylesConfig, er as BorderStyle, fr as LikeC4Theme, gr as RelationshipLineType, hr as RelationshipColorValues, ir as CustomColorDefinitions, kr as Sizes, lr as IconSize, mr as RelationshipArrowTypes, nr as ColorLiteral, or as ElementShape, pr as RelationshipArrowType, rr as CustomColor, sr as HexColor, tr as Color, ur as LikeC4StyleDefaults, vr as Size, wr as isThemeColor, xr as ThemeColor, yr as SpacingSize } from "../_chunks/index.mjs";
6
2
  import "../_chunks/index2.mjs";
7
- import "../_chunks/RichText.mjs";
8
- import { a as LikeC4Styles, i as assignTagColors, n as styleDefaults, r as computeColorValues, t as defaultTheme } from "../_chunks/index3.mjs";
3
+ import { a as assignTagColors, i as LikeC4Styles, n as styleDefaults, r as computeColorValues, t as defaultTheme } from "../_chunks/index3.mjs";
9
4
  export { BorderStyle, BorderStyles, Color, ColorLiteral, CustomColor, CustomColorDefinitions, DefaultTagColors, ElementColorValues, ElementShape, ElementShapes, HexColor, IconPosition, IconPositions, IconSize, LikeC4StyleDefaults, LikeC4Styles, LikeC4StylesConfig, LikeC4Theme, RelationshipArrowType, RelationshipArrowTypes, RelationshipColorValues, RelationshipLineType, ShapeSize, Size, Sizes, SpacingSize, TextSize, ThemeColor, ThemeColorValues, ThemeColors, assignTagColors, computeColorValues, defaultTheme, isCustomColor, isThemeColor, styleDefaults };