@likec4/core 1.38.1 → 1.39.1

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 (98) hide show
  1. package/dist/builder/index.d.mts +6 -3
  2. package/dist/builder/index.mjs +55 -111
  3. package/dist/compute-view/index.d.mts +6 -3
  4. package/dist/compute-view/index.mjs +33 -34
  5. package/dist/compute-view/relationships-view/index.d.mts +6 -3
  6. package/dist/compute-view/relationships-view/index.mjs +6 -6
  7. package/dist/index.d.mts +8 -5
  8. package/dist/index.mjs +15 -24
  9. package/dist/model/connection/deployment/index.d.mts +8 -5
  10. package/dist/model/connection/deployment/index.mjs +7 -9
  11. package/dist/model/connection/index.d.mts +10 -7
  12. package/dist/model/connection/index.mjs +10 -14
  13. package/dist/model/connection/model/index.d.mts +8 -5
  14. package/dist/model/connection/model/index.mjs +7 -10
  15. package/dist/model/index.d.mts +13 -10
  16. package/dist/model/index.mjs +17 -20
  17. package/dist/shared/core.20m8Um0g.d.mts +253 -0
  18. package/dist/shared/{core.CpwrZi3D.mjs → core.4u1dVmfX.mjs} +3 -5
  19. package/dist/shared/{core.Bp-IQmJR.mjs → core.BB6zA-UU.mjs} +9 -214
  20. package/dist/shared/{core.BH0VqY-7.mjs → core.BVNaR17u.mjs} +1 -1
  21. package/dist/shared/{core.BL_xjl90.mjs → core.Be1n9a0i.mjs} +4 -5
  22. package/dist/shared/{core.BoyJPEen.mjs → core.Be4Jy9Qx.mjs} +2 -2
  23. package/dist/shared/{core.H8NbNp2X.mjs → core.BqVo8LrH.mjs} +1 -1
  24. package/dist/shared/{core.DDoAFHHp.mjs → core.BuoXfSMj.mjs} +1 -1
  25. package/dist/shared/{core.DhDo8LAz.d.mts → core.C7pZp1nR.d.mts} +3 -3
  26. package/dist/shared/{core.BH9nN-_I.mjs → core.CCD1ID81.mjs} +3 -4
  27. package/dist/shared/{core.8KM0D6va.mjs → core.CNGyqkJh.mjs} +1 -9
  28. package/dist/shared/{core.B0oEIXqd.mjs → core.CUw_2J9j.mjs} +1 -1
  29. package/dist/shared/{core.C4Cn4Jy_.mjs → core.CWv15GLo.mjs} +11 -15
  30. package/dist/shared/{core.Bf5zKDK1.d.mts → core.CXCmvCws.d.mts} +2 -2
  31. package/dist/shared/core.CaT0SUUK.mjs +201 -0
  32. package/dist/shared/{core.Dtw1SBlz.d.mts → core.ClpXZ4Ib.d.mts} +3 -3
  33. package/dist/shared/{core.DC6zzxS0.mjs → core.CsbOakly.mjs} +13 -22
  34. package/dist/shared/{core.Btl47GOn.mjs → core.DLpidoWc.mjs} +2 -2
  35. package/dist/shared/{core.wwaSalox.d.mts → core.DM3vdkO_.d.mts} +1 -1
  36. package/dist/shared/core.DXhDWKFZ.d.mts +3 -0
  37. package/dist/shared/{core.O6FG0HF9.d.mts → core.DdzRtJ9d.d.mts} +1 -1
  38. package/dist/shared/{core.OUoo2ohq.mjs → core.DgttqsJc.mjs} +5 -9
  39. package/dist/shared/{core.Dhc0yIwT.mjs → core.DlG1xWt2.mjs} +3 -43
  40. package/dist/shared/core.DnRszv-l.mjs +11982 -0
  41. package/dist/shared/core.DoM6aM9N.mjs +7 -0
  42. package/dist/shared/{core.CzHQRs5x.mjs → core.DozSPE83.mjs} +43 -60
  43. package/dist/shared/{core.DsMrjY2q.mjs → core.GTgsmXS_.mjs} +2 -2
  44. package/dist/shared/core.ILwny7BV.mjs +38 -0
  45. package/dist/shared/core.PHwHXzkG.d.mts +213 -0
  46. package/dist/shared/core.T-eLZTW_.mjs +59 -0
  47. package/dist/shared/{core.CE_hG7EJ.d.mts → core.aWJgARyY.d.mts} +10 -486
  48. package/dist/shared/{core.BvlHvikl.d.mts → core.v1iEaXaR.d.mts} +5 -3
  49. package/dist/shared/core.yHe79zEl.mjs +98 -0
  50. package/dist/theme/index.d.mts +3 -126
  51. package/dist/theme/index.mjs +2 -3
  52. package/dist/types/_aux.d.mts +1 -1
  53. package/dist/types/expression-model.d.mts +191 -0
  54. package/dist/types/expression-model.mjs +112 -0
  55. package/dist/types/expression.d.mts +7 -0
  56. package/dist/types/expression.mjs +116 -0
  57. package/dist/types/fqnRef.d.mts +61 -0
  58. package/dist/types/fqnRef.mjs +46 -0
  59. package/dist/types/index.d.mts +6 -3
  60. package/dist/types/index.mjs +9 -9
  61. package/dist/types/scalar.mjs +2 -3
  62. package/dist/utils/index.d.mts +6 -428
  63. package/dist/utils/index.mjs +56 -15
  64. package/dist/utils/iterable/index.d.mts +2 -3
  65. package/dist/utils/iterable/index.mjs +9 -44
  66. package/package.json +8 -7
  67. package/src/index.ts +24 -1
  68. package/src/model/RelationModel.ts +1 -1
  69. package/src/model/index.ts +1 -1
  70. package/src/theme/element.ts +2 -2
  71. package/src/theme/relationships.ts +2 -2
  72. package/src/types/RichText.ts +1 -1
  73. package/src/types/expression-model.ts +3 -1
  74. package/src/types/expression.ts +3 -1
  75. package/src/types/fqnRef.ts +4 -1
  76. package/src/utils/guards.ts +0 -1
  77. package/src/utils/index.ts +0 -1
  78. package/dist/shared/core.BW8K1y6R.mjs +0 -278
  79. package/dist/shared/core.BgvIuGGU.mjs +0 -3
  80. package/dist/shared/core.BpJu1RrF.mjs +0 -5
  81. package/dist/shared/core.ByrmCl9I.mjs +0 -5
  82. package/dist/shared/core.CnIyafWn.mjs +0 -3
  83. package/dist/shared/core.DK6I-Nr7.mjs +0 -149
  84. package/dist/shared/core.DbRvwARP.mjs +0 -5
  85. package/dist/shared/core.Dw47t7nG.mjs +0 -5236
  86. package/dist/shared/core.zLlww-07.mjs +0 -3
  87. package/src/builder/__snapshots__/Builder-style1.spec.ts.snap +0 -425
  88. package/src/builder/__snapshots__/Builder-style2.compute-model.json5 +0 -318
  89. package/src/builder/__snapshots__/Builder-style2.spec.ts.snap +0 -221
  90. package/src/compute-view/deployment-view/__test__/TestHelper.ts +0 -249
  91. package/src/compute-view/deployment-view/__test__/fixture.ts +0 -238
  92. package/src/compute-view/dynamic-view/__test__/fixture.ts +0 -67
  93. package/src/compute-view/element-view/__test__/TestHelper.ts +0 -282
  94. package/src/compute-view/element-view/__test__/__snapshots__/legacy.spec.ts.snap +0 -458
  95. package/src/compute-view/element-view/__test__/fixture.ts +0 -749
  96. package/src/compute-view/utils/__snapshots__/sortNodes.spec.ts.snap +0 -113
  97. package/src/model/__test__/fixture.ts +0 -168
  98. package/src/theme/__test__/theme-index.ts +0 -29
@@ -1,11 +1,14 @@
1
1
  import { LastArrayElement, Split, Simplify, IsLiteral, Writable, IfNever, IsNever, TupleToUnion, Tagged } from 'type-fest';
2
- import { g as LikeC4Model } from '../shared/core.BvlHvikl.mjs';
2
+ import { g as LikeC4Model } from '../shared/core.v1iEaXaR.mjs';
3
3
  import { D as DeploymentFqn, F as Fqn } from '../shared/core.DX-WYEPA.mjs';
4
- import { r as DeploymentElement, v as DeploymentRelationship, T as Element, _ as ModelRelation, a9 as Participant, M as ModelFqnExpr, d as ModelRelationExpr, aH as AnyViewRuleStyle, aM as AutoLayoutDirection, E as Expression, an as ParsedView, bb as ParsedDeploymentView, br as ParsedElementView, n as ParsedLikeC4ModelData, $ as ElementSpecification$1, a2 as RelationshipSpecification, a0 as TagSpecification } from '../shared/core.CE_hG7EJ.mjs';
4
+ import { l as DeploymentElement, p as DeploymentRelationship, F as Element, O as ModelRelation, ah as AnyViewRuleStyle, am as AutoLayoutDirection, Z as ParsedView, aN as ParsedDeploymentView, b1 as ParsedElementView, h as ParsedLikeC4ModelData, Q as ElementSpecification$1, V as RelationshipSpecification, T as TagSpecification } from '../shared/core.aWJgARyY.mjs';
5
+ import { c as Participant, E as Expression } from '../shared/core.20m8Um0g.mjs';
6
+ import { ModelFqnExpr, ModelRelationExpr } from '../types/expression-model.mjs';
5
7
  import { N as NonEmptyArray, K as KeysOf } from '../shared/core.DuSLYTG6.mjs';
6
- import { x as setProject, a as Aux, S as SpecAux, A as Any } from '../shared/core.O6FG0HF9.mjs';
8
+ import { y as setProject, a as Aux, S as SpecAux, A as Any } from '../shared/core.DdzRtJ9d.mjs';
7
9
  import { c as ElementShape, h as ThemeColor, b as BorderStyle, a as ShapeSize, S as SpacingSize, T as TextSize, f as RelationshipArrowType, R as RelationshipLineType } from '../shared/core.CzdwsPmY.mjs';
8
10
  import '../shared/core.CywrQs86.mjs';
11
+ import '../types/fqnRef.mjs';
9
12
 
10
13
  type ToNested$1<T, Id extends string> = T extends TypesNested<infer P, any, any, any, any, any, any, any, infer F> ? TypesNested<`${P}.${Id}`, T['ElementKind'], T['Fqn'], T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], `${P}.${Id}` | F> : T extends AnyTypes ? TypesNested<Id, T['ElementKind'], T['Fqn'], T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], Id | T['DeploymentFqn']> : never;
11
14
  type FromNested$1<T extends AnyTypes, N> = N extends TypesNested<any, any, any, any, any, any, any, any, infer F> ? T extends TypesNested<infer P, any, any, any, any, any, any, any, any> ? TypesNested<P, T['ElementKind'], T['Fqn'], T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], F> : T extends AnyTypes ? Types<T['ElementKind'], T['Fqn'], T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], F> : never : never;
@@ -1,20 +1,22 @@
1
- import { i, l, d, c as computeLikeC4Model } from '../shared/core.Dw47t7nG.mjs';
2
- import { m } from '../shared/core.ByrmCl9I.mjs';
3
- import { a as _type, n as n$1, _ as _stage, c as isDeployedInstance, F as FqnRef } from '../shared/core.DK6I-Nr7.mjs';
4
- import { t as t$2 } from '../shared/core.BH9nN-_I.mjs';
5
- import { l as l$1 } from '../shared/core.8KM0D6va.mjs';
6
- import { u } from '../shared/core.DbRvwARP.mjs';
7
- import { t as t$1 } from '../shared/core.CzHQRs5x.mjs';
8
- import { i as i$1 } from '../shared/core.CpwrZi3D.mjs';
9
- import { n as nameFromFqn, k as isSameHierarchy, p as parentFqn } from '../shared/core.OUoo2ohq.mjs';
10
- import { t } from '../shared/core.zLlww-07.mjs';
11
- import { s as o, M as ModelFqnExpr, f as isElementView } from '../shared/core.BW8K1y6R.mjs';
1
+ import defu from 'defu';
2
+ import { isArray, isString, map, entries, mapValues, fromEntries, mapToObj, isNullish, pickBy, isNonNullish, hasAtLeast, isFunction } from 'remeda';
3
+ import { c as computeLikeC4Model } from '../shared/core.DnRszv-l.mjs';
4
+ import { n as nameFromFqn, d as isSameHierarchy, p as parentFqn } from '../shared/core.DgttqsJc.mjs';
5
+ import { ModelFqnExpr } from '../types/expression-model.mjs';
6
+ import { a as _type, _ as _stage, c as isDeployedInstance } from '../shared/core.yHe79zEl.mjs';
12
7
  import { i as invariant } from '../shared/core.D4npX2q8.mjs';
13
- import { a as DefaultElementShape, D as DefaultThemeColor } from '../shared/core.H8NbNp2X.mjs';
14
- import '../shared/core.DC6zzxS0.mjs';
15
- import '../shared/core.BH0VqY-7.mjs';
16
- import '../shared/core.CnIyafWn.mjs';
17
- import '../shared/core.B0oEIXqd.mjs';
8
+ import { d as isElementView } from '../shared/core.T-eLZTW_.mjs';
9
+ import { FqnRef } from '../types/fqnRef.mjs';
10
+ import { D as DefaultThemeColor, a as DefaultElementShape } from '../shared/core.BqVo8LrH.mjs';
11
+ import '../shared/core.BB6zA-UU.mjs';
12
+ import '../shared/core.CaT0SUUK.mjs';
13
+ import 'events';
14
+ import '../shared/core.4u1dVmfX.mjs';
15
+ import '../shared/core.Be1n9a0i.mjs';
16
+ import '../types/expression.mjs';
17
+ import '../shared/core.CsbOakly.mjs';
18
+ import '../shared/core.BVNaR17u.mjs';
19
+ import '../shared/core.CUw_2J9j.mjs';
18
20
  import 'rehype-raw';
19
21
  import 'rehype-sanitize';
20
22
  import 'rehype-stringify';
@@ -24,77 +26,19 @@ import 'remark-rehype';
24
26
  import 'unified';
25
27
  import 'mdast-util-from-markdown';
26
28
  import 'mdast-util-to-string';
27
- import '../shared/core.C4Cn4Jy_.mjs';
28
- import '../shared/core.BgvIuGGU.mjs';
29
- import '../shared/core.BoyJPEen.mjs';
30
- import '../shared/core.Bp-IQmJR.mjs';
31
- import '../shared/core.BL_xjl90.mjs';
32
- import '../shared/core.BpJu1RrF.mjs';
33
- import '../shared/core.Btl47GOn.mjs';
34
- import '../shared/core.DDoAFHHp.mjs';
29
+ import '../shared/core.CWv15GLo.mjs';
30
+ import '../shared/core.Be4Jy9Qx.mjs';
31
+ import '../shared/core.CCD1ID81.mjs';
32
+ import '../shared/core.DLpidoWc.mjs';
33
+ import '../shared/core.BuoXfSMj.mjs';
34
+ import '../shared/core.DoM6aM9N.mjs';
35
+ import '../shared/core.DozSPE83.mjs';
35
36
  import '../shared/core.DcS-0zys.mjs';
36
- import '../shared/core.DsMrjY2q.mjs';
37
-
38
- function n(...r){return u(Object.fromEntries,r)}
39
-
40
- function isPlainObject(value) {
41
- if (value === null || typeof value !== "object") {
42
- return false;
43
- }
44
- const prototype = Object.getPrototypeOf(value);
45
- if (prototype !== null && prototype !== Object.prototype && Object.getPrototypeOf(prototype) !== null) {
46
- return false;
47
- }
48
- if (Symbol.iterator in value) {
49
- return false;
50
- }
51
- if (Symbol.toStringTag in value) {
52
- return Object.prototype.toString.call(value) === "[object Module]";
53
- }
54
- return true;
55
- }
56
-
57
- function _defu(baseObject, defaults, namespace = ".", merger) {
58
- if (!isPlainObject(defaults)) {
59
- return _defu(baseObject, {}, namespace, merger);
60
- }
61
- const object = Object.assign({}, defaults);
62
- for (const key in baseObject) {
63
- if (key === "__proto__" || key === "constructor") {
64
- continue;
65
- }
66
- const value = baseObject[key];
67
- if (value === null || value === void 0) {
68
- continue;
69
- }
70
- if (merger && merger(object, key, value, namespace)) {
71
- continue;
72
- }
73
- if (Array.isArray(value) && Array.isArray(object[key])) {
74
- object[key] = [...value, ...object[key]];
75
- } else if (isPlainObject(value) && isPlainObject(object[key])) {
76
- object[key] = _defu(
77
- value,
78
- object[key],
79
- (namespace ? `${namespace}.` : "") + key.toString(),
80
- merger
81
- );
82
- } else {
83
- object[key] = value;
84
- }
85
- }
86
- return object;
87
- }
88
- function createDefu(merger) {
89
- return (...arguments_) => (
90
- // eslint-disable-next-line unicorn/no-array-reduce
91
- arguments_.reduce((p, c) => _defu(p, c, "", merger), {})
92
- );
93
- }
94
- const defu = createDefu();
37
+ import '../shared/core.GTgsmXS_.mjs';
38
+ import '../shared/core.CNGyqkJh.mjs';
95
39
 
96
40
  function parseWhere(where) {
97
- if (t(where)) {
41
+ if (isString(where)) {
98
42
  const op = where;
99
43
  switch (true) {
100
44
  case op.startsWith("tag is not #"):
@@ -141,12 +85,12 @@ function parseWhere(where) {
141
85
  }
142
86
  if (where.and) {
143
87
  return {
144
- and: m(where.and, parseWhere)
88
+ and: map(where.and, parseWhere)
145
89
  };
146
90
  }
147
91
  if (where.or) {
148
92
  return {
149
- or: m(where.or, parseWhere)
93
+ or: map(where.or, parseWhere)
150
94
  };
151
95
  }
152
96
  if (where.not) {
@@ -211,7 +155,7 @@ function $exclude(...args) {
211
155
  }
212
156
  function $style(element, { notation, ...style }) {
213
157
  return (b) => b.style({
214
- targets: (o(element) ? element : [element]).map((e) => b.$expr(e)),
158
+ targets: (isArray(element) ? element : [element]).map((e) => b.$expr(e)),
215
159
  ...notation ? { notation } : {},
216
160
  style: {
217
161
  ...style
@@ -226,7 +170,7 @@ function $rules(...rules) {
226
170
  }
227
171
 
228
172
  function $deploymentExpr(expr) {
229
- if (!t(expr)) {
173
+ if (!isString(expr)) {
230
174
  return expr;
231
175
  }
232
176
  const asTypedDeploymentExpression = (expr2) => {
@@ -300,7 +244,7 @@ const asTypedExpr = (expr) => {
300
244
  return expr;
301
245
  };
302
246
  function $expr(expr) {
303
- if (!t(expr)) {
247
+ if (!isString(expr)) {
304
248
  return expr;
305
249
  }
306
250
  if (expr === "*") {
@@ -405,7 +349,7 @@ function mkViewBuilder(view) {
405
349
  }
406
350
 
407
351
  function validateSpec(specification) {
408
- for (const [kind, spec] of t$1(specification.elements)) {
352
+ for (const [kind, spec] of entries(specification.elements)) {
409
353
  if (spec.tags) {
410
354
  for (const tag of spec.tags) {
411
355
  invariant(specification.tags?.[tag], `Invalid specification for element kind "${kind}": tag "${tag}" not found`);
@@ -413,7 +357,7 @@ function validateSpec(specification) {
413
357
  }
414
358
  }
415
359
  if (specification.deployments) {
416
- for (const [kind, spec] of t$1(specification.deployments)) {
360
+ for (const [kind, spec] of entries(specification.deployments)) {
417
361
  if (spec.tags) {
418
362
  for (const tag of spec.tags) {
419
363
  invariant(
@@ -442,7 +386,7 @@ function builder(spec, _elements = /* @__PURE__ */ new Map(), _relations = [], _
442
386
  relationships: {
443
387
  ...structuredClone(spec.relationships)
444
388
  },
445
- tags: i(spec.tags ?? {}, (tagSpec) => ({
389
+ tags: mapValues(spec.tags ?? {}, (tagSpec) => ({
446
390
  color: DefaultThemeColor,
447
391
  ...tagSpec
448
392
  })),
@@ -451,13 +395,13 @@ function builder(spec, _elements = /* @__PURE__ */ new Map(), _relations = [], _
451
395
  };
452
396
  };
453
397
  const mapLinks = (links) => {
454
- if (!links || !i$1(links, 1)) {
398
+ if (!links || !hasAtLeast(links, 1)) {
455
399
  return null;
456
400
  }
457
- return m(links, (l) => typeof l === "string" ? { url: l } : l);
401
+ return map(links, (l) => typeof l === "string" ? { url: l } : l);
458
402
  };
459
403
  const createGenericView = (id, _props, builder2) => {
460
- if (t$2(_props)) {
404
+ if (isFunction(_props)) {
461
405
  builder2 = _props;
462
406
  _props = {};
463
407
  }
@@ -596,22 +540,22 @@ function builder(spec, _elements = /* @__PURE__ */ new Map(), _relations = [], _
596
540
  ...project
597
541
  },
598
542
  specification: toLikeC4Specification(),
599
- elements: n(
543
+ elements: fromEntries(
600
544
  structuredClone(
601
545
  Array.from(_elements.entries())
602
546
  )
603
547
  ),
604
- relations: l(_relations, (r) => [r.id, structuredClone(r)]),
548
+ relations: mapToObj(_relations, (r) => [r.id, structuredClone(r)]),
605
549
  globals: structuredClone(_globals),
606
550
  deployments: {
607
- elements: n(
551
+ elements: fromEntries(
608
552
  structuredClone(
609
553
  Array.from(_deployments.entries())
610
554
  )
611
555
  ),
612
- relations: l(_deploymentRelations, (r) => [r.id, structuredClone(r)])
556
+ relations: mapToObj(_deploymentRelations, (r) => [r.id, structuredClone(r)])
613
557
  },
614
- views: n(
558
+ views: fromEntries(
615
559
  structuredClone(
616
560
  Array.from(_views.entries())
617
561
  )
@@ -680,10 +624,10 @@ function builder(spec, _elements = /* @__PURE__ */ new Map(), _relations = [], _
680
624
  return b;
681
625
  };
682
626
  },
683
- ...i(
627
+ ...mapValues(
684
628
  spec.elements,
685
629
  ({ style: specStyle, ...spec2 }, kind) => (id, _props) => {
686
- const add = (b) => {
630
+ const add = ((b) => {
687
631
  const {
688
632
  links: _links,
689
633
  icon: _icon,
@@ -704,21 +648,21 @@ function builder(spec, _elements = /* @__PURE__ */ new Map(), _relations = [], _
704
648
  tags: [],
705
649
  color: specStyle?.color ?? DefaultThemeColor,
706
650
  shape: specStyle?.shape ?? DefaultElementShape,
707
- style: d({
651
+ style: pickBy({
708
652
  border: specStyle?.border,
709
653
  opacity: specStyle?.opacity,
710
654
  size: specStyle?.size,
711
655
  padding: specStyle?.padding,
712
656
  textSize: specStyle?.textSize,
713
657
  ...style
714
- }, l$1),
658
+ }, isNonNullish),
715
659
  links,
716
660
  ...icon && { icon },
717
661
  ...spec2,
718
662
  ...props
719
663
  });
720
664
  return b;
721
- };
665
+ });
722
666
  add.with = (...ops) => (b) => {
723
667
  add(b);
724
668
  const { __fqn, __addSourcelessRelation } = b;
@@ -836,7 +780,7 @@ function builder(spec, _elements = /* @__PURE__ */ new Map(), _relations = [], _
836
780
  },
837
781
  instanceOf: (id, target, _props) => {
838
782
  return (b) => {
839
- if (n$1(target)) {
783
+ if (isNullish(target)) {
840
784
  target = id;
841
785
  id = nameFromFqn(id);
842
786
  } else if (typeof target === "string") {
@@ -888,10 +832,10 @@ function builder(spec, _elements = /* @__PURE__ */ new Map(), _relations = [], _
888
832
  return b;
889
833
  };
890
834
  },
891
- ...i(
835
+ ...mapValues(
892
836
  spec.deployments ?? {},
893
837
  ({ style: specStyle, ...spec2 }, kind) => (id, _props) => {
894
- const add = (b) => {
838
+ const add = ((b) => {
895
839
  const {
896
840
  links,
897
841
  icon: _icon,
@@ -913,21 +857,21 @@ function builder(spec, _elements = /* @__PURE__ */ new Map(), _relations = [], _
913
857
  ...icon && { icon },
914
858
  color: specStyle?.color ?? DefaultThemeColor,
915
859
  shape: specStyle?.shape ?? DefaultElementShape,
916
- ...d({
860
+ ...pickBy({
917
861
  border: specStyle?.border,
918
862
  opacity: specStyle?.opacity,
919
863
  size: specStyle?.size,
920
864
  padding: specStyle?.padding,
921
865
  textSize: specStyle?.textSize,
922
866
  ...style
923
- }, l$1)
867
+ }, isNonNullish)
924
868
  },
925
869
  ...links && { links: mapLinks(links) },
926
870
  ...spec2,
927
871
  ...props
928
872
  });
929
873
  return b;
930
- };
874
+ });
931
875
  add.with = (...ops) => (b) => {
932
876
  add(b);
933
877
  const { __deploymentFqn } = b;
@@ -1,11 +1,14 @@
1
- import { A as Any } from '../shared/core.O6FG0HF9.mjs';
2
- import { g as LikeC4Model } from '../shared/core.BvlHvikl.mjs';
3
- import { n as ParsedLikeC4ModelData, C as ComputedLikeC4ModelData, an as ParsedView, aq as ComputedView } from '../shared/core.CE_hG7EJ.mjs';
1
+ import { A as Any } from '../shared/core.DdzRtJ9d.mjs';
2
+ import { g as LikeC4Model } from '../shared/core.v1iEaXaR.mjs';
3
+ import { h as ParsedLikeC4ModelData, C as ComputedLikeC4ModelData, Z as ParsedView, a0 as ComputedView } from '../shared/core.aWJgARyY.mjs';
4
4
  import 'type-fest';
5
5
  import '../shared/core.DuSLYTG6.mjs';
6
6
  import '../shared/core.DX-WYEPA.mjs';
7
7
  import '../shared/core.CywrQs86.mjs';
8
8
  import '../shared/core.CzdwsPmY.mjs';
9
+ import '../shared/core.20m8Um0g.mjs';
10
+ import '../types/fqnRef.mjs';
11
+ import '../types/expression-model.mjs';
9
12
 
10
13
  type ComputeViewResult<V> = {
11
14
  isSuccess: true;
@@ -1,26 +1,19 @@
1
- import { G as Graph, w as willCreateCycle, t as topologicalSortExports, i as i$2, l } from '../shared/core.Dw47t7nG.mjs';
2
- export { c as computeLikeC4Model, a as computeParsedModelData, b as computeView, u as unsafeComputeView } from '../shared/core.Dw47t7nG.mjs';
3
- import { i as i$1 } from '../shared/core.DC6zzxS0.mjs';
4
- import { r } from '../shared/core.CzHQRs5x.mjs';
5
- import { h as isExtendsElementView, f as isElementView } from '../shared/core.BW8K1y6R.mjs';
6
- import { o as isNonEmptyArray } from '../shared/core.OUoo2ohq.mjs';
7
- import { i } from '../shared/core.CpwrZi3D.mjs';
8
- import { u } from '../shared/core.DbRvwARP.mjs';
9
- import { m } from '../shared/core.ByrmCl9I.mjs';
10
- import '../shared/core.C4Cn4Jy_.mjs';
11
- import '../shared/core.BH0VqY-7.mjs';
12
- import '../shared/core.BgvIuGGU.mjs';
13
- import '../shared/core.BoyJPEen.mjs';
14
- import '../shared/core.BH9nN-_I.mjs';
1
+ import { G as Graph, w as willCreateCycle, t as topologicalSortExports } from '../shared/core.DnRszv-l.mjs';
2
+ export { c as computeLikeC4Model, a as computeParsedModelData, b as computeView, u as unsafeComputeView } from '../shared/core.DnRszv-l.mjs';
3
+ import { values, unique, mapValues, omit, mapToObj, map } from 'remeda';
4
+ import { f as isExtendsElementView, d as isElementView } from '../shared/core.T-eLZTW_.mjs';
5
+ import { c as isNonEmptyArray } from '../shared/core.DgttqsJc.mjs';
6
+ import '../shared/core.BB6zA-UU.mjs';
7
+ import '../shared/core.CaT0SUUK.mjs';
15
8
  import '../shared/core.D4npX2q8.mjs';
16
- import '../shared/core.Bp-IQmJR.mjs';
17
- import '../shared/core.8KM0D6va.mjs';
18
- import '../shared/core.CnIyafWn.mjs';
19
- import '../shared/core.DK6I-Nr7.mjs';
20
- import '../shared/core.zLlww-07.mjs';
21
- import '../shared/core.BL_xjl90.mjs';
22
- import '../shared/core.H8NbNp2X.mjs';
23
- import '../shared/core.B0oEIXqd.mjs';
9
+ import 'events';
10
+ import '../shared/core.4u1dVmfX.mjs';
11
+ import '../types/expression-model.mjs';
12
+ import '../types/fqnRef.mjs';
13
+ import '../shared/core.Be1n9a0i.mjs';
14
+ import '../shared/core.yHe79zEl.mjs';
15
+ import '../shared/core.BqVo8LrH.mjs';
16
+ import '../shared/core.CUw_2J9j.mjs';
24
17
  import 'rehype-raw';
25
18
  import 'rehype-sanitize';
26
19
  import 'rehype-stringify';
@@ -30,20 +23,26 @@ import 'remark-rehype';
30
23
  import 'unified';
31
24
  import 'mdast-util-from-markdown';
32
25
  import 'mdast-util-to-string';
33
- import '../shared/core.BpJu1RrF.mjs';
34
- import '../shared/core.Btl47GOn.mjs';
35
- import '../shared/core.DDoAFHHp.mjs';
26
+ import '../types/expression.mjs';
27
+ import '../shared/core.CsbOakly.mjs';
28
+ import '../shared/core.BVNaR17u.mjs';
29
+ import '../shared/core.CWv15GLo.mjs';
30
+ import '../shared/core.Be4Jy9Qx.mjs';
31
+ import '../shared/core.CCD1ID81.mjs';
32
+ import '../shared/core.DLpidoWc.mjs';
33
+ import '../shared/core.BuoXfSMj.mjs';
34
+ import '../shared/core.DoM6aM9N.mjs';
35
+ import '../shared/core.DozSPE83.mjs';
36
36
  import '../shared/core.DcS-0zys.mjs';
37
- import '../shared/core.DsMrjY2q.mjs';
38
-
39
- function y(...t){return u(f,t)}function f(t,e){if(!i(e,1))return {...t};if(!i(e,2)){let{[e[0]]:r,...m}=t;return m}let o={...t};for(let r of e)delete o[r];return o}
37
+ import '../shared/core.GTgsmXS_.mjs';
38
+ import '../shared/core.CNGyqkJh.mjs';
40
39
 
41
40
  function resolveRulesExtendedViews(unresolvedViews) {
42
41
  const g = new Graph({
43
42
  type: "directed"
44
43
  });
45
44
  const extendedViews = [];
46
- for (const view of r(unresolvedViews)) {
45
+ for (const view of values(unresolvedViews)) {
47
46
  g.addNode(view.id, { view });
48
47
  if (isExtendsElementView(view)) {
49
48
  extendedViews.push(view);
@@ -74,7 +73,7 @@ function resolveRulesExtendedViews(unresolvedViews) {
74
73
  if (!extendsFrom || !isElementView(extendsFrom)) {
75
74
  return acc;
76
75
  }
77
- const tags = i$1([
76
+ const tags = unique([
78
77
  ...extendsFrom.tags ?? [],
79
78
  ...view.tags ?? []
80
79
  ]);
@@ -96,7 +95,7 @@ function resolveRulesExtendedViews(unresolvedViews) {
96
95
  }
97
96
 
98
97
  function withReadableEdges({ edges, nodes, ...view }, separator = ":") {
99
- const edgeids = l(edges, (e) => [e.id, `${e.source}${separator}${e.target}`]);
98
+ const edgeids = mapToObj(edges, (e) => [e.id, `${e.source}${separator}${e.target}`]);
100
99
  return {
101
100
  ...view,
102
101
  edges: edges.map((e) => ({
@@ -105,8 +104,8 @@ function withReadableEdges({ edges, nodes, ...view }, separator = ":") {
105
104
  })),
106
105
  nodes: nodes.map((n) => ({
107
106
  ...n,
108
- inEdges: m(n.inEdges, (e) => edgeids[e]),
109
- outEdges: m(n.outEdges, (e) => edgeids[e])
107
+ inEdges: map(n.inEdges, (e) => edgeids[e]),
108
+ outEdges: map(n.outEdges, (e) => edgeids[e])
110
109
  })),
111
110
  nodeIds: nodes.map((n) => n.id),
112
111
  edgeIds: edges.map((e) => edgeids[e.id])
@@ -115,7 +114,7 @@ function withReadableEdges({ edges, nodes, ...view }, separator = ":") {
115
114
  function viewsWithReadableEdges({ views, ...model }) {
116
115
  return {
117
116
  ...model,
118
- views: i$2(views, (v) => y(withReadableEdges(v), ["nodeIds", "edgeIds"]))
117
+ views: mapValues(views, (v) => omit(withReadableEdges(v), ["nodeIds", "edgeIds"]))
119
118
  };
120
119
  }
121
120
 
@@ -1,10 +1,13 @@
1
- import { A as Any, U as Unknown, g as ElementId, V as ViewId } from '../../shared/core.O6FG0HF9.mjs';
2
- import { E as ElementModel, R as RelationshipModel, g as LikeC4Model } from '../../shared/core.BvlHvikl.mjs';
1
+ import { A as Any, U as Unknown, j as ElementId, V as ViewId } from '../../shared/core.DdzRtJ9d.mjs';
2
+ import { E as ElementModel, R as RelationshipModel, g as LikeC4Model } from '../../shared/core.v1iEaXaR.mjs';
3
3
  import 'type-fest';
4
4
  import '../../shared/core.DuSLYTG6.mjs';
5
5
  import '../../shared/core.DX-WYEPA.mjs';
6
6
  import '../../shared/core.CywrQs86.mjs';
7
- import '../../shared/core.CE_hG7EJ.mjs';
7
+ import '../../shared/core.aWJgARyY.mjs';
8
+ import '../../types/expression-model.mjs';
9
+ import '../../shared/core.20m8Um0g.mjs';
10
+ import '../../types/fqnRef.mjs';
8
11
  import '../../shared/core.CzdwsPmY.mjs';
9
12
 
10
13
  type RelationshipsViewData<M extends Any = Unknown> = {
@@ -1,9 +1,9 @@
1
- import { m as sortParentsFirst, j as isDescendantOf, i as isAncestor, C } from '../../shared/core.OUoo2ohq.mjs';
2
- import { D as DefaultMap } from '../../shared/core.DDoAFHHp.mjs';
1
+ import { pipe } from 'remeda';
2
+ import { f as sortParentsFirst, b as isDescendantOf, i as isAncestor } from '../../shared/core.DgttqsJc.mjs';
3
+ import { D as DefaultMap } from '../../shared/core.BuoXfSMj.mjs';
3
4
  import { a as nonNullable, i as invariant } from '../../shared/core.D4npX2q8.mjs';
4
- import { a as toSet, t as toArray, i as imap } from '../../shared/core.Btl47GOn.mjs';
5
- import { i as ifilter } from '../../shared/core.BH9nN-_I.mjs';
6
- import '../../shared/core.zLlww-07.mjs';
5
+ import { a as toSet, t as toArray, i as imap } from '../../shared/core.DLpidoWc.mjs';
6
+ import { i as ifilter } from '../../shared/core.CCD1ID81.mjs';
7
7
 
8
8
  function treeFromElements(elements) {
9
9
  const sorted = sortParentsFirst([...elements]);
@@ -169,7 +169,7 @@ function computeScopedRelationshipsView(subjectId, view, likec4model) {
169
169
  const isDescendant = isDescendantOf(subject);
170
170
  const others = /* @__PURE__ */ new Set([
171
171
  ...subject.ascendingSiblings(),
172
- ...C(
172
+ ...pipe(
173
173
  view.elements(),
174
174
  imap((e) => e.element),
175
175
  ifilter((e) => e !== subject && isDescendant(e))
package/dist/index.d.mts CHANGED
@@ -1,12 +1,15 @@
1
1
  export { ElementColors, RelationshipColors, computeColorValues, defaultTheme } from './theme/index.mjs';
2
- export { BiMap, DefaultWeakMap, LinkedList, MultiMap, Queue, Stack, commonHead, compareNatural, compareNaturalHierarchically, compareRelations, delay, difference, equalsSet, getOrCreate, hasAtLeast, intersection, invariant, isNonEmptyArray, isString, markdownToHtml, markdownToText, memoizeProp, nonNullable, nonexhaustive, objectHash, promiseNextTick, stringHash, symmetricDifference, union } from './utils/index.mjs';
2
+ export { B as BiMap, D as DefaultWeakMap, L as LinkedList, M as MultiMap, Q as Queue, i as invariant, a as isNonEmptyArray, b as isString, m as memoizeProp, c as nonNullable, n as nonexhaustive } from './shared/core.PHwHXzkG.mjs';
3
3
  export { D as DefaultMap } from './shared/core.CywrQs86.mjs';
4
- export { A as Any, A as AnyAux, a as Aux, E as ExtractOnStage, M as ModelStage, S as SpecAux, U as Unknown, b as UnknownComputed, c as UnknownLayouted, d as UnknownParsed, e as _stage, f as _type, _ as aux, i as isOnStage } from './shared/core.O6FG0HF9.mjs';
4
+ export { I as IterableContainer, a as ancestorsFqn, i as isAncestor, b as isDescendantOf, c as isSameHierarchy, n as nameFromFqn, p as parentFqn, s as sortNaturalByFqn, d as sortParentsFirst } from './shared/core.DM3vdkO_.mjs';
5
+ export { i as isIterable } from './shared/core.DXhDWKFZ.mjs';
6
+ export { A as Any, A as AnyAux, a as Aux, E as ExtractOnStage, M as ModelStage, S as SpecAux, U as Unknown, b as UnknownComputed, c as UnknownLayouted, d as UnknownParsed, e as _stage, f as _type, _ as aux, i as isOnStage } from './shared/core.DdzRtJ9d.mjs';
5
7
  export { A as AnyFqn, B as BuiltInIcon, D as DeploymentFqn, b as DeploymentKind, j as EdgeId, E as ElementKind, F as Fqn, e as GlobalFqn, G as GroupElementKind, I as Icon, a as IconUrl, M as MarkdownOrString, N as NodeId, P as ProjectId, d as RelationId, R as RelationKind, c as RelationshipKind, k as StepEdgeId, S as StepEdgeIdLiteral, m as StepEdgeKind, T as Tag, V as ViewId, o as extractStep, f as flattenMarkdownOrString, g as isGlobalFqn, i as isGroupElementKind, n as isStepEdgeId, s as scalar, h as splitGlobalFqn, l as stepEdgeId } from './shared/core.DX-WYEPA.mjs';
6
- export { Y as AbstractRelationship, ae as AndOperator, aG as AnyExcludePredicate, aF as AnyIncludePredicate, as as AnyView, aH as AnyViewRuleStyle, aM as AutoLayoutDirection, H as AuxFromDump, A as AuxFromLikeC4ModelData, B as BBox, aU as BaseParsedViewProperties, aT as BaseViewProperties, a$ as ComputedDeploymentView, b0 as ComputedDynamicView, aZ as ComputedEdge, a_ as ComputedElementView, C as ComputedLikeC4ModelData, aY as ComputedNode, aq as ComputedView, V as DefaultArrowType, J as DefaultElementShape, U as DefaultLineStyle, N as DefaultPaddingSize, W as DefaultRelationshipColor, K as DefaultShapeSize, O as DefaultTextSize, I as DefaultThemeColor, q as DeployedInstance, r as DeploymentElement, s as DeploymentElementRef, D as DeploymentElementStyle, p as DeploymentNode, w as DeploymentRelation, v as DeploymentRelationship, b7 as DeploymentViewExcludePredicate, b6 as DeploymentViewIncludePredicate, b8 as DeploymentViewPredicate, ba as DeploymentViewRule, b9 as DeploymentViewRuleStyle, b2 as DiagramEdge, b1 as DiagramNode, ao as DiagramView, bg as DynamicViewIncludeRule, bd as DynamicViewParallelSteps, bh as DynamicViewRule, bc as DynamicViewStep, bf as DynamicViewStepOrParallel, T as Element, $ as ElementSpecification, Q as ElementStyle, bl as ElementViewExcludePredicate, bk as ElementViewIncludePredicate, bm as ElementViewPredicate, bq as ElementViewRule, bn as ElementViewRuleGroup, bp as ElementViewRuleStyle, a4 as EqualOperator, E as Expression, aj as Filterable, F as FqnExpr, f as FqnRef, j as GlobalDynamicPredicates, G as GlobalPredicateId, i as GlobalPredicates, k as GlobalStyleID, l as GlobalStyles, a7 as KindEqual, b4 as LayoutedDeploymentView, b5 as LayoutedDynamicView, b3 as LayoutedElementView, L as LayoutedLikeC4ModelData, ao as LayoutedView, o as LikeC4ModelData, y as LikeC4ModelDump, am as LikeC4Project, an as LikeC4View, e as ModelExpression, M as ModelFqnExpr, m as ModelGlobals, _ as ModelRelation, d as ModelRelationExpr, aV as NodeNotation, ac as NotOperator, ak as OperatorPredicate, ag as OrOperator, bb as ParsedDeploymentView, bi as ParsedDynamicView, br as ParsedElementView, n as ParsedLikeC4ModelData, an as ParsedView, a9 as Participant, aa as ParticipantOperator, g as Point, P as PredicateSelector, ar as ProcessedView, z as ProjectDump, h as RectBox, c as RelationExpr, Z as Relationship, a2 as RelationshipSpecification, R as RichText, a as RichTextEmpty, b as RichTextOrEmpty, x as SpecTypesFromDump, a3 as Specification, S as SpecificationDump, a5 as TagEqual, a0 as TagSpecification, aQ as ViewAutoLayout, aR as ViewManualLayout, at as ViewOnStage, av as ViewRule, aO as ViewRuleAutoLayout, aK as ViewRuleGlobalPredicateRef, aI as ViewRuleGlobalStyle, aw as ViewRulePredicate, aS as ViewType, aX as ViewWithHash, aW as ViewWithNotation, au as ViewWithType, ai as WhereOperator, X as XYPoint, be as getParallelStepsPrefix, af as isAndOperator, aN as isAutoLayoutDirection, az as isComputedView, u as isDeployedInstance, t as isDeploymentNode, aD as isDeploymentView, ap as isDiagramView, aE as isDynamicView, bj as isDynamicViewParallelSteps, aA as isElementView, aC as isExtendsElementView, a8 as isKindEqual, ap as isLayoutedView, ad as isNotOperator, ah as isOrOperator, ab as isParticipantOperator, aB as isScopedElementView, a1 as isTagColorSpecified, a6 as isTagEqual, aP as isViewRuleAutoLayout, aL as isViewRuleGlobalPredicateRef, aJ as isViewRuleGlobalStyle, bo as isViewRuleGroup, ax as isViewRulePredicate, ay as isViewRuleStyle, al as whereOperatorAsPredicate } from './shared/core.CE_hG7EJ.mjs';
8
+ export { K as AbstractRelationship, ag as AnyExcludePredicate, af as AnyIncludePredicate, a2 as AnyView, ah as AnyViewRuleStyle, am as AutoLayoutDirection, u as AuxFromDump, A as AuxFromLikeC4ModelData, B as BBox, au as BaseParsedViewProperties, at as BaseViewProperties, aB as ComputedDeploymentView, aC as ComputedDynamicView, az as ComputedEdge, aA as ComputedElementView, C as ComputedLikeC4ModelData, ay as ComputedNode, a0 as ComputedView, I as DefaultArrowType, w as DefaultElementShape, H as DefaultLineStyle, y as DefaultPaddingSize, J as DefaultRelationshipColor, x as DefaultShapeSize, z as DefaultTextSize, v as DefaultThemeColor, k as DeployedInstance, l as DeploymentElement, m as DeploymentElementRef, D as DeploymentElementStyle, j as DeploymentNode, q as DeploymentRelation, p as DeploymentRelationship, aJ as DeploymentViewExcludePredicate, aI as DeploymentViewIncludePredicate, aK as DeploymentViewPredicate, aM as DeploymentViewRule, aL as DeploymentViewRuleStyle, aE as DiagramEdge, aD as DiagramNode, _ as DiagramView, aS as DynamicViewIncludeRule, aP as DynamicViewParallelSteps, aT as DynamicViewRule, aO as DynamicViewStep, aR as DynamicViewStepOrParallel, F as Element, Q as ElementSpecification, E as ElementStyle, aX as ElementViewExcludePredicate, aW as ElementViewIncludePredicate, aY as ElementViewPredicate, b0 as ElementViewRule, aZ as ElementViewRuleGroup, a$ as ElementViewRuleStyle, e as GlobalDynamicPredicates, G as GlobalPredicateId, d as GlobalPredicates, f as GlobalStyleID, g as GlobalStyles, aG as LayoutedDeploymentView, aH as LayoutedDynamicView, aF as LayoutedElementView, L as LayoutedLikeC4ModelData, _ as LayoutedView, i as LikeC4ModelData, s as LikeC4ModelDump, Y as LikeC4Project, Z as LikeC4View, M as ModelGlobals, O as ModelRelation, av as NodeNotation, aN as ParsedDeploymentView, aU as ParsedDynamicView, b1 as ParsedElementView, h as ParsedLikeC4ModelData, Z as ParsedView, P as Point, a1 as ProcessedView, t as ProjectDump, c as RectBox, N as Relationship, V as RelationshipSpecification, R as RichText, a as RichTextEmpty, b as RichTextOrEmpty, r as SpecTypesFromDump, W as Specification, S as SpecificationDump, T as TagSpecification, aq as ViewAutoLayout, ar as ViewManualLayout, a3 as ViewOnStage, a5 as ViewRule, ao as ViewRuleAutoLayout, ak as ViewRuleGlobalPredicateRef, ai as ViewRuleGlobalStyle, a6 as ViewRulePredicate, as as ViewType, ax as ViewWithHash, aw as ViewWithNotation, a4 as ViewWithType, X as XYPoint, aQ as getParallelStepsPrefix, an as isAutoLayoutDirection, a9 as isComputedView, o as isDeployedInstance, n as isDeploymentNode, ad as isDeploymentView, $ as isDiagramView, ae as isDynamicView, aV as isDynamicViewParallelSteps, aa as isElementView, ac as isExtendsElementView, $ as isLayoutedView, ab as isScopedElementView, U as isTagColorSpecified, ap as isViewRuleAutoLayout, al as isViewRuleGlobalPredicateRef, aj as isViewRuleGlobalStyle, a_ as isViewRuleGroup, a7 as isViewRulePredicate, a8 as isViewRuleStyle } from './shared/core.aWJgARyY.mjs';
7
9
  export { C as Coalesce, E as ExclusiveUnion, I as IteratorLike, K as KeysOf, L as Link, b as NTuple, N as NonEmptyArray, a as NonEmptyReadonlyArray, P as Predicate } from './shared/core.DuSLYTG6.mjs';
10
+ export { A as AndOperator, a as EqualOperator, E as Expression, j as Filterable, F as FqnExpr, K as KindEqual, N as NotOperator, k as OperatorPredicate, O as OrOperator, c as Participant, d as ParticipantOperator, P as PredicateSelector, R as RelationExpr, T as TagEqual, W as WhereOperator, g as isAndOperator, b as isKindEqual, f as isNotOperator, h as isOrOperator, e as isParticipantOperator, i as isTagEqual, w as whereOperatorAsPredicate } from './shared/core.20m8Um0g.mjs';
11
+ export { ModelExpression, ModelFqnExpr, ModelRelationExpr } from './types/expression-model.mjs';
12
+ export { FqnRef } from './types/fqnRef.mjs';
8
13
  export { b as BorderStyle, B as BorderStyles, i as Color, C as ColorLiteral, d as CustomColor, e as CustomColorDefinitions, c as ElementShape, E as ElementShapes, k as ElementThemeColorValues, l as ElementThemeColors, H as HexColor, L as LikeC4Theme, f as RelationshipArrowType, R as RelationshipLineType, m as RelationshipThemeColorValues, o as RelationshipThemeColors, a as ShapeSize, S as SpacingSize, T as TextSize, h as ThemeColor, n as ThemeColorValues, g as ThemeColors, j as isThemeColor } from './shared/core.CzdwsPmY.mjs';
9
14
  export { ViewChange } from './types/index.mjs';
10
- export { I as IterableContainer, R as ReorderedArray, a as ancestorsFqn, c as commonAncestor, b as compareByFqnHierarchically, d as compareFqnHierarchically, h as hierarchyDistance, e as hierarchyLevel, i as isAncestor, f as isDescendantOf, g as isSameHierarchy, n as nameFromFqn, p as parentFqn, s as sortByFqnHierarchically, j as sortNaturalByFqn, k as sortParentsFirst } from './shared/core.wwaSalox.mjs';
11
- export { ifilter, ifind, ifirst, iflat, ihead, imap, ireduce, isIterable, isome, iunique, toArray, toSet } from './utils/iterable/index.mjs';
12
15
  import 'type-fest';
package/dist/index.mjs CHANGED
@@ -1,32 +1,23 @@
1
1
  export { ElementColors, RelationshipColors, computeColorValues, defaultTheme } from './theme/index.mjs';
2
+ export { a as ancestorsFqn, i as isAncestor, b as isDescendantOf, c as isNonEmptyArray, d as isSameHierarchy, e as isString, n as nameFromFqn, p as parentFqn, s as sortNaturalByFqn, f as sortParentsFirst } from './shared/core.DgttqsJc.mjs';
3
+ export { b as BiMap, d as DefaultWeakMap, l as LinkedList, m as MultiMap, q as Queue } from './shared/core.DlG1xWt2.mjs';
4
+ export { D as DefaultMap } from './shared/core.BuoXfSMj.mjs';
5
+ export { i as invariant, a as nonNullable, n as nonexhaustive } from './shared/core.D4npX2q8.mjs';
6
+ export { i as isIterable } from './shared/core.DoM6aM9N.mjs';
7
+ export { m as memoizeProp } from './shared/core.CUw_2J9j.mjs';
2
8
  export { _ as aux } from './types/_aux.mjs';
3
- export { D as DeploymentFqn, E as EdgeId, F as Fqn, a as GlobalFqn, G as GroupElementKind, N as NodeId, P as ProjectId, R as RelationId, S as StepEdgeKind, V as ViewId, g as extractStep, f as flattenMarkdownOrString, b as isGlobalFqn, i as isGroupElementKind, e as isStepEdgeId, s as scalar, c as splitGlobalFqn, d as stepEdgeId } from './shared/core.BL_xjl90.mjs';
4
- export { f as DefaultArrowType, a as DefaultElementShape, e as DefaultLineStyle, c as DefaultPaddingSize, g as DefaultRelationshipColor, b as DefaultShapeSize, d as DefaultTextSize, D as DefaultThemeColor, R as RichText } from './shared/core.H8NbNp2X.mjs';
5
- export { F as FqnRef, _ as _stage, a as _type, h as isAndOperator, c as isDeployedInstance, b as isDeploymentNode, e as isKindEqual, g as isNotOperator, i as isOnStage, j as isOrOperator, f as isParticipantOperator, d as isTagEqual, w as whereOperatorAsPredicate } from './shared/core.DK6I-Nr7.mjs';
6
- export { E as Expression, F as FqnExpr, b as ModelExpression, M as ModelFqnExpr, a as ModelRelationExpr, R as RelationExpr, p as getParallelStepsPrefix, n as isAutoLayoutDirection, d as isComputedView, j as isDeploymentView, e as isDiagramView, k as isDynamicView, q as isDynamicViewParallelSteps, f as isElementView, h as isExtendsElementView, e as isLayoutedView, g as isScopedElementView, o as isViewRuleAutoLayout, m as isViewRuleGlobalPredicateRef, l as isViewRuleGlobalStyle, r as isViewRuleGroup, i as isViewRulePredicate, c as isViewRuleStyle } from './shared/core.BW8K1y6R.mjs';
9
+ export { D as DeploymentFqn, E as EdgeId, F as Fqn, a as GlobalFqn, G as GroupElementKind, N as NodeId, P as ProjectId, R as RelationId, S as StepEdgeKind, V as ViewId, g as extractStep, f as flattenMarkdownOrString, b as isGlobalFqn, i as isGroupElementKind, e as isStepEdgeId, s as scalar, c as splitGlobalFqn, d as stepEdgeId } from './shared/core.Be1n9a0i.mjs';
10
+ export { f as DefaultArrowType, a as DefaultElementShape, e as DefaultLineStyle, c as DefaultPaddingSize, g as DefaultRelationshipColor, b as DefaultShapeSize, d as DefaultTextSize, D as DefaultThemeColor, R as RichText } from './shared/core.BqVo8LrH.mjs';
11
+ export { _ as _stage, a as _type, h as isAndOperator, c as isDeployedInstance, b as isDeploymentNode, e as isKindEqual, g as isNotOperator, i as isOnStage, j as isOrOperator, f as isParticipantOperator, d as isTagEqual, w as whereOperatorAsPredicate } from './shared/core.yHe79zEl.mjs';
12
+ export { Expression, FqnExpr, RelationExpr } from './types/expression.mjs';
13
+ export { ModelExpression, ModelFqnExpr, ModelRelationExpr } from './types/expression-model.mjs';
14
+ export { FqnRef } from './types/fqnRef.mjs';
7
15
  export { B as BBox, a as BorderStyles, E as ElementShapes, R as RectBox, T as ThemeColors, i as isTagColorSpecified, b as isThemeColor } from './shared/core.CxGKeL-L.mjs';
8
- export { b as BiMap, d as DefaultWeakMap, l as LinkedList, m as MultiMap, q as Queue, c as compareRelations, a as delay, p as promiseNextTick } from './shared/core.Dhc0yIwT.mjs';
9
- export { D as DefaultMap } from './shared/core.DDoAFHHp.mjs';
10
- export { S as Stack, c as commonHead, o as objectHash } from './shared/core.Bp-IQmJR.mjs';
11
- export { i as invariant, a as nonNullable, n as nonexhaustive } from './shared/core.D4npX2q8.mjs';
12
- export { b as ancestorsFqn, d as commonAncestor, e as compareByFqnHierarchically, f as compareFqnHierarchically, c as compareNatural, a as compareNaturalHierarchically, h as hierarchyDistance, g as hierarchyLevel, i as isAncestor, j as isDescendantOf, o as isNonEmptyArray, k as isSameHierarchy, q as isString, n as nameFromFqn, p as parentFqn, s as sortByFqnHierarchically, l as sortNaturalByFqn, m as sortParentsFirst } from './shared/core.OUoo2ohq.mjs';
13
- export { g as getOrCreate } from './shared/core.DcS-0zys.mjs';
14
- export { d as difference, e as equalsSet, i as hasAtLeast, a as intersection, b as stringHash, s as symmetricDifference, u as union } from './shared/core.CpwrZi3D.mjs';
15
- export { i as ifilter } from './shared/core.BH9nN-_I.mjs';
16
- export { i as ifind, a as ihead } from './shared/core.DsMrjY2q.mjs';
17
- export { ifirst, ireduce } from './utils/iterable/index.mjs';
18
- export { i as iflat, a as isIterable, b as iunique } from './shared/core.8KM0D6va.mjs';
19
- export { i as imap, t as toArray, a as toSet } from './shared/core.Btl47GOn.mjs';
20
- export { i as isome } from './shared/core.BoyJPEen.mjs';
21
- export { a as markdownToHtml, b as markdownToText, m as memoizeProp } from './shared/core.B0oEIXqd.mjs';
16
+ export { n as getParallelStepsPrefix, l as isAutoLayoutDirection, b as isComputedView, g as isDeploymentView, c as isDiagramView, h as isDynamicView, o as isDynamicViewParallelSteps, d as isElementView, f as isExtendsElementView, c as isLayoutedView, e as isScopedElementView, m as isViewRuleAutoLayout, k as isViewRuleGlobalPredicateRef, j as isViewRuleGlobalStyle, p as isViewRuleGroup, i as isViewRulePredicate, a as isViewRuleStyle } from './shared/core.T-eLZTW_.mjs';
22
17
  import '@mantine/colors-generator';
23
18
  import 'chroma-js';
24
- import './shared/core.BpJu1RrF.mjs';
25
- import './shared/core.DbRvwARP.mjs';
26
- import './shared/core.CnIyafWn.mjs';
27
- import './shared/core.zLlww-07.mjs';
28
- import './shared/core.BgvIuGGU.mjs';
29
- import './shared/core.ByrmCl9I.mjs';
19
+ import 'remeda';
20
+ import './shared/core.CaT0SUUK.mjs';
30
21
  import 'rehype-raw';
31
22
  import 'rehype-sanitize';
32
23
  import 'rehype-stringify';
@@ -1,10 +1,13 @@
1
- export { C as Connection } from '../../../shared/core.Bf5zKDK1.mjs';
2
- export { D as DeploymentConnectionModel, a as findConnection, b as findConnectionsBetween, c as findConnectionsWithin } from '../../../shared/core.DhDo8LAz.mjs';
3
- import '../../../shared/core.BvlHvikl.mjs';
4
- import '../../../shared/core.O6FG0HF9.mjs';
1
+ export { C as Connection } from '../../../shared/core.CXCmvCws.mjs';
2
+ export { D as DeploymentConnectionModel, a as findConnection, b as findConnectionsBetween, c as findConnectionsWithin } from '../../../shared/core.C7pZp1nR.mjs';
3
+ import '../../../shared/core.v1iEaXaR.mjs';
4
+ import '../../../shared/core.DdzRtJ9d.mjs';
5
5
  import 'type-fest';
6
6
  import '../../../shared/core.DuSLYTG6.mjs';
7
7
  import '../../../shared/core.DX-WYEPA.mjs';
8
8
  import '../../../shared/core.CywrQs86.mjs';
9
- import '../../../shared/core.CE_hG7EJ.mjs';
9
+ import '../../../shared/core.aWJgARyY.mjs';
10
+ import '../../../types/expression-model.mjs';
11
+ import '../../../shared/core.20m8Um0g.mjs';
12
+ import '../../../types/fqnRef.mjs';
10
13
  import '../../../shared/core.CzdwsPmY.mjs';