@likec4/core 1.25.0 → 1.26.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 (49) hide show
  1. package/dist/builder/index.d.mts +4 -4
  2. package/dist/builder/index.d.ts +4 -4
  3. package/dist/builder/index.mjs +4 -4
  4. package/dist/compute-view/index.d.mts +5 -5
  5. package/dist/compute-view/index.d.ts +5 -5
  6. package/dist/compute-view/index.mjs +6 -6
  7. package/dist/index.d.mts +9 -8
  8. package/dist/index.d.ts +9 -8
  9. package/dist/index.mjs +6 -6
  10. package/dist/model/index.d.mts +7 -148
  11. package/dist/model/index.d.ts +7 -148
  12. package/dist/model/index.mjs +1 -1
  13. package/dist/shared/core.-qjOvsEL.d.ts +146 -0
  14. package/dist/shared/{core.Bhx0OGK8.d.mts → core.30yYKXcZ.d.mts} +2 -1
  15. package/dist/shared/{core.Bhx0OGK8.d.ts → core.30yYKXcZ.d.ts} +2 -1
  16. package/dist/shared/{core.DmBjVt1u.mjs → core.BBJd-FqJ.mjs} +1 -1
  17. package/dist/shared/{core.B4wY1NqR.d.mts → core.BH59D8Ji.d.ts} +8 -8
  18. package/dist/shared/{core.DQMSDiu8.mjs → core.BqezHsjR.mjs} +96 -96
  19. package/dist/shared/{core.D1_bU4dO.d.mts → core.Brmu7VBL.d.mts} +12 -12
  20. package/dist/shared/{core.BsAIrb_r.d.ts → core.CIbWBWW3.d.ts} +1 -1
  21. package/dist/shared/{core.CVZbbLy6.mjs → core.CcjDE4j7.mjs} +4 -4
  22. package/dist/shared/{core.B4fHpdUJ.d.ts → core.Cpd5mZgF.d.ts} +12 -12
  23. package/dist/shared/{core.Btj1m6H6.mjs → core.DRxv3HIl.mjs} +2 -1
  24. package/dist/shared/{core.C4dHhcrI.d.mts → core.Dd1nCiNx.d.mts} +2 -2
  25. package/dist/shared/{core.RiWsY3jz.d.mts → core.HKn0jlo_.d.mts} +1 -1
  26. package/dist/shared/{core.Dw2eQBtz.d.ts → core.mD0TIdz_.d.ts} +2 -2
  27. package/dist/shared/core.oI7caxVx.d.mts +146 -0
  28. package/dist/shared/{core.DCetokL7.mjs → core.yND74qFI.mjs} +1 -1
  29. package/dist/shared/{core.CWZqfEHX.d.ts → core.z6g06scf.d.mts} +8 -8
  30. package/dist/types/index.d.mts +4 -4
  31. package/dist/types/index.d.ts +4 -4
  32. package/dist/types/index.mjs +1 -1
  33. package/dist/utils/index.d.mts +56 -3
  34. package/dist/utils/index.d.ts +56 -3
  35. package/dist/utils/index.mjs +212 -4
  36. package/package.json +7 -7
  37. package/src/builder/_types.ts +2 -2
  38. package/src/compute-view/compute-view.ts +10 -10
  39. package/src/compute-view/utils/with-readable-edges.ts +2 -2
  40. package/src/errors/index.ts +4 -3
  41. package/src/index.ts +11 -1
  42. package/src/model/DeploymentModel.ts +2 -2
  43. package/src/model/LikeC4Model.ts +4 -4
  44. package/src/model/types.ts +7 -8
  45. package/src/types/_common.ts +2 -0
  46. package/src/types/index.ts +7 -6
  47. package/src/types/{model.ts → model-data.ts} +14 -14
  48. package/src/utils/index.ts +1 -0
  49. package/src/utils/mnemonist.ts +1 -0
@@ -1,7 +1,7 @@
1
1
  import { LastArrayElement, Split, Simplify, Writable, IfNever, TupleToUnion, Tagged, IsStringLiteral as IsStringLiteral$1, IsLiteral } from 'type-fest';
2
- import { L as LikeC4Model } from '../shared/core.D1_bU4dO.mjs';
3
- import { D as DeploymentElement, i as DeploymentRelation, ax as ModelRelation, ap as Participant, A as CustomElementExpr, B as CustomRelationExpr, bw as ViewRuleStyle, aX as AutoLayoutDirection, X as ExpressionV2, N as Expression, L as LikeC4View, b4 as DeploymentView, bh as ElementView, az as RelationshipArrowType, aC as RelationshipLineType, aB as RelationshipKindSpecification, g as DeploymentNodeKindSpecification, a9 as ParsedLikeC4Model } from '../shared/core.B4wY1NqR.mjs';
4
- import { F as Fqn, l as Element, N as NonEmptyArray, o as ElementShape, w as Color, k as BorderStyle, S as ShapeSize, J as SpacingSize, M as TextSize, m as ElementKindSpecification, K as KeysOf } from '../shared/core.Bhx0OGK8.mjs';
2
+ import { L as LikeC4Model } from '../shared/core.Brmu7VBL.mjs';
3
+ import { D as DeploymentElement, i as DeploymentRelation, ax as ModelRelation, ap as Participant, A as CustomElementExpr, B as CustomRelationExpr, bw as ViewRuleStyle, aX as AutoLayoutDirection, X as ExpressionV2, N as Expression, L as LikeC4View, b4 as DeploymentView, bh as ElementView, az as RelationshipArrowType, aC as RelationshipLineType, aB as RelationshipKindSpecification, g as DeploymentNodeKindSpecification, a9 as ParsedLikeC4ModelData } from '../shared/core.z6g06scf.mjs';
4
+ import { F as Fqn, m as Element, N as NonEmptyArray, p as ElementShape, x as Color, l as BorderStyle, S as ShapeSize, M as SpacingSize, O as TextSize, n as ElementKindSpecification, K as KeysOf } from '../shared/core.30yYKXcZ.mjs';
5
5
  import { IsStringLiteral } from 'type-fest/source/is-literal';
6
6
 
7
7
  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;
@@ -499,7 +499,7 @@ declare namespace Types {
499
499
  type AddFqn<T, Id extends string> = T extends TypesNested<infer P, any, any, any, any, any, any, any, any> ? TypesNested<P, T['ElementKind'], `${P}.${Id}` | T['Fqn'], T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], T['DeploymentFqn']> : T extends AnyTypes ? Types<T['ElementKind'], Id | T['Fqn'], T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], T['DeploymentFqn']> : never;
500
500
  type AddDeploymentFqn<T, Id extends string> = 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'], `${P}.${Id}` | T['DeploymentFqn']> : T extends AnyTypes ? Types<T['ElementKind'], T['Fqn'], T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], Id | T['DeploymentFqn']> : never;
501
501
  type AddView<T, Id extends string> = T extends TypesNested<infer P, any, any, any, any, any, any, any, any> ? TypesNested<P, T['ElementKind'], T['Fqn'], Id | T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], T['DeploymentFqn']> : T extends AnyTypes ? Types<T['ElementKind'], T['Fqn'], Id | T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], T['DeploymentFqn']> : never;
502
- type ToParsedLikeC4Model<T> = T extends AnyTypes ? ParsedLikeC4Model<T['ElementKind'], T['RelationshipKind'], T['Tag'], T['Fqn'], T['ViewId'], T['DeploymentFqn']> : never;
502
+ type ToParsedLikeC4Model<T> = T extends AnyTypes ? ParsedLikeC4ModelData<T['ElementKind'], T['RelationshipKind'], T['Tag'], T['Fqn'], T['ViewId'], T['DeploymentFqn']> : never;
503
503
  type ToLikeC4Model<T extends AnyTypes> = LikeC4Model.Computed<T['Fqn'], T['DeploymentFqn'], T['ViewId']>;
504
504
  type ToExpression<T> = T extends AnyTypes ? ExpressionV2<T['DeploymentFqn'], T['Fqn']> : never;
505
505
  type From<B> = B extends Builder<infer T> ? B['Types'] extends AnyTypes ? T : AnyTypes : never;
@@ -1,7 +1,7 @@
1
1
  import { LastArrayElement, Split, Simplify, Writable, IfNever, TupleToUnion, Tagged, IsStringLiteral as IsStringLiteral$1, IsLiteral } from 'type-fest';
2
- import { L as LikeC4Model } from '../shared/core.B4fHpdUJ.js';
3
- import { D as DeploymentElement, i as DeploymentRelation, ax as ModelRelation, ap as Participant, A as CustomElementExpr, B as CustomRelationExpr, bw as ViewRuleStyle, aX as AutoLayoutDirection, X as ExpressionV2, N as Expression, L as LikeC4View, b4 as DeploymentView, bh as ElementView, az as RelationshipArrowType, aC as RelationshipLineType, aB as RelationshipKindSpecification, g as DeploymentNodeKindSpecification, a9 as ParsedLikeC4Model } from '../shared/core.CWZqfEHX.js';
4
- import { F as Fqn, l as Element, N as NonEmptyArray, o as ElementShape, w as Color, k as BorderStyle, S as ShapeSize, J as SpacingSize, M as TextSize, m as ElementKindSpecification, K as KeysOf } from '../shared/core.Bhx0OGK8.js';
2
+ import { L as LikeC4Model } from '../shared/core.Cpd5mZgF.js';
3
+ import { D as DeploymentElement, i as DeploymentRelation, ax as ModelRelation, ap as Participant, A as CustomElementExpr, B as CustomRelationExpr, bw as ViewRuleStyle, aX as AutoLayoutDirection, X as ExpressionV2, N as Expression, L as LikeC4View, b4 as DeploymentView, bh as ElementView, az as RelationshipArrowType, aC as RelationshipLineType, aB as RelationshipKindSpecification, g as DeploymentNodeKindSpecification, a9 as ParsedLikeC4ModelData } from '../shared/core.BH59D8Ji.js';
4
+ import { F as Fqn, m as Element, N as NonEmptyArray, p as ElementShape, x as Color, l as BorderStyle, S as ShapeSize, M as SpacingSize, O as TextSize, n as ElementKindSpecification, K as KeysOf } from '../shared/core.30yYKXcZ.js';
5
5
  import { IsStringLiteral } from 'type-fest/source/is-literal';
6
6
 
7
7
  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;
@@ -499,7 +499,7 @@ declare namespace Types {
499
499
  type AddFqn<T, Id extends string> = T extends TypesNested<infer P, any, any, any, any, any, any, any, any> ? TypesNested<P, T['ElementKind'], `${P}.${Id}` | T['Fqn'], T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], T['DeploymentFqn']> : T extends AnyTypes ? Types<T['ElementKind'], Id | T['Fqn'], T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], T['DeploymentFqn']> : never;
500
500
  type AddDeploymentFqn<T, Id extends string> = 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'], `${P}.${Id}` | T['DeploymentFqn']> : T extends AnyTypes ? Types<T['ElementKind'], T['Fqn'], T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], Id | T['DeploymentFqn']> : never;
501
501
  type AddView<T, Id extends string> = T extends TypesNested<infer P, any, any, any, any, any, any, any, any> ? TypesNested<P, T['ElementKind'], T['Fqn'], Id | T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], T['DeploymentFqn']> : T extends AnyTypes ? Types<T['ElementKind'], T['Fqn'], Id | T['ViewId'], T['RelationshipKind'], T['Tag'], T['MetadataKey'], T['DeploymentKind'], T['DeploymentFqn']> : never;
502
- type ToParsedLikeC4Model<T> = T extends AnyTypes ? ParsedLikeC4Model<T['ElementKind'], T['RelationshipKind'], T['Tag'], T['Fqn'], T['ViewId'], T['DeploymentFqn']> : never;
502
+ type ToParsedLikeC4Model<T> = T extends AnyTypes ? ParsedLikeC4ModelData<T['ElementKind'], T['RelationshipKind'], T['Tag'], T['Fqn'], T['ViewId'], T['DeploymentFqn']> : never;
503
503
  type ToLikeC4Model<T extends AnyTypes> = LikeC4Model.Computed<T['Fqn'], T['DeploymentFqn'], T['ViewId']>;
504
504
  type ToExpression<T> = T extends AnyTypes ? ExpressionV2<T['DeploymentFqn'], T['Fqn']> : never;
505
505
  type From<B> = B extends Builder<infer T> ? B['Types'] extends AnyTypes ? T : AnyTypes : never;
@@ -1,7 +1,7 @@
1
- import { i, l, d, L as LikeC4Model } from '../shared/core.CVZbbLy6.mjs';
2
- import { b as t, m, n as nameFromFqn, l as l$1, c as isSameHierarchy, p as parentFqn, a as i$1, d as t$1 } from '../shared/core.DQMSDiu8.mjs';
3
- import { o, b as isElementPredicateExpr, D as DefaultElementShape, c as DefaultThemeColor, n as n$1, d as DeploymentElement, e as isScopedElementView } from '../shared/core.DCetokL7.mjs';
4
- import { u, i as invariant } from '../shared/core.Btj1m6H6.mjs';
1
+ import { i, l, d, L as LikeC4Model } from '../shared/core.CcjDE4j7.mjs';
2
+ import { b as t, m, n as nameFromFqn, l as l$1, c as isSameHierarchy, p as parentFqn, a as i$1, d as t$1 } from '../shared/core.BqezHsjR.mjs';
3
+ import { o, b as isElementPredicateExpr, D as DefaultElementShape, c as DefaultThemeColor, n as n$1, d as DeploymentElement, e as isScopedElementView } from '../shared/core.yND74qFI.mjs';
4
+ import { u, i as invariant } from '../shared/core.DRxv3HIl.mjs';
5
5
 
6
6
  function n(...r){return u(Object.fromEntries,r)}
7
7
 
@@ -1,8 +1,8 @@
1
- export { C as ComputeViewResult, c as computeView, a as computeViews, u as unsafeComputeView } from '../shared/core.D1_bU4dO.mjs';
2
- export { c as computeRelationshipsView } from '../shared/core.C4dHhcrI.mjs';
3
- import { L as LikeC4View, C as ComputedLikeC4Model, a as ComputedView } from '../shared/core.B4wY1NqR.mjs';
1
+ export { C as ComputeViewResult, c as computeView, a as computeViews, u as unsafeComputeView } from '../shared/core.Brmu7VBL.mjs';
2
+ export { c as computeRelationshipsView } from '../shared/core.Dd1nCiNx.mjs';
3
+ import { L as LikeC4View, C as ComputedLikeC4ModelData, a as ComputedView } from '../shared/core.z6g06scf.mjs';
4
4
  import 'type-fest';
5
- import '../shared/core.Bhx0OGK8.mjs';
5
+ import '../shared/core.30yYKXcZ.mjs';
6
6
 
7
7
  /**
8
8
  * Resolve rules of extended views
@@ -18,6 +18,6 @@ declare function withReadableEdges<T extends ComputedView>({ edges, nodes, ...vi
18
18
  nodeIds: string[];
19
19
  edgeIds: string[];
20
20
  };
21
- declare function viewsWithReadableEdges<M extends ComputedLikeC4Model>({ views, ...model }: M): M;
21
+ declare function viewsWithReadableEdges<M extends ComputedLikeC4ModelData>({ views, ...model }: M): M;
22
22
 
23
23
  export { resolveRulesExtendedViews, viewsWithReadableEdges, withReadableEdges };
@@ -1,8 +1,8 @@
1
- export { C as ComputeViewResult, c as computeView, a as computeViews, u as unsafeComputeView } from '../shared/core.B4fHpdUJ.js';
2
- export { c as computeRelationshipsView } from '../shared/core.Dw2eQBtz.js';
3
- import { L as LikeC4View, C as ComputedLikeC4Model, a as ComputedView } from '../shared/core.CWZqfEHX.js';
1
+ export { C as ComputeViewResult, c as computeView, a as computeViews, u as unsafeComputeView } from '../shared/core.Cpd5mZgF.js';
2
+ export { c as computeRelationshipsView } from '../shared/core.mD0TIdz_.js';
3
+ import { L as LikeC4View, C as ComputedLikeC4ModelData, a as ComputedView } from '../shared/core.BH59D8Ji.js';
4
4
  import 'type-fest';
5
- import '../shared/core.Bhx0OGK8.js';
5
+ import '../shared/core.30yYKXcZ.js';
6
6
 
7
7
  /**
8
8
  * Resolve rules of extended views
@@ -18,6 +18,6 @@ declare function withReadableEdges<T extends ComputedView>({ edges, nodes, ...vi
18
18
  nodeIds: string[];
19
19
  edgeIds: string[];
20
20
  };
21
- declare function viewsWithReadableEdges<M extends ComputedLikeC4Model>({ views, ...model }: M): M;
21
+ declare function viewsWithReadableEdges<M extends ComputedLikeC4ModelData>({ views, ...model }: M): M;
22
22
 
23
23
  export { resolveRulesExtendedViews, viewsWithReadableEdges, withReadableEdges };
@@ -1,9 +1,9 @@
1
- import { G as Graph, r, w as willCreateCycle, t as topologicalSortExports, i as i$1, l } from '../shared/core.CVZbbLy6.mjs';
2
- export { c as computeView, a as computeViews, u as unsafeComputeView } from '../shared/core.CVZbbLy6.mjs';
3
- export { c as computeRelationshipsView } from '../shared/core.DmBjVt1u.mjs';
4
- import { i as isExtendsElementView, a as isElementView } from '../shared/core.DCetokL7.mjs';
5
- import { a as i, m } from '../shared/core.DQMSDiu8.mjs';
6
- import { u } from '../shared/core.Btj1m6H6.mjs';
1
+ import { G as Graph, r, w as willCreateCycle, t as topologicalSortExports, i as i$1, l } from '../shared/core.CcjDE4j7.mjs';
2
+ export { c as computeView, a as computeViews, u as unsafeComputeView } from '../shared/core.CcjDE4j7.mjs';
3
+ export { c as computeRelationshipsView } from '../shared/core.BBJd-FqJ.mjs';
4
+ import { i as isExtendsElementView, a as isElementView } from '../shared/core.yND74qFI.mjs';
5
+ import { a as i, m } from '../shared/core.BqezHsjR.mjs';
6
+ import { u } from '../shared/core.DRxv3HIl.mjs';
7
7
 
8
8
  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}
9
9
 
package/dist/index.d.mts CHANGED
@@ -1,11 +1,12 @@
1
- import { H as HexColorLiteral, T as ThemeColorValues, L as LikeC4Theme } from './shared/core.Bhx0OGK8.mjs';
2
- export { A as AsFqn, k as BorderStyle, B as BorderStyles, w as Color, x as ColorLiteral, C as CustomColor, D as DefaultElementShape, e as DefaultPaddingSize, f as DefaultShapeSize, g as DefaultTextSize, h as DefaultThemeColor, l as Element, i as ElementKind, m as ElementKindSpecification, n as ElementKindSpecificationStyle, o as ElementShape, j as ElementShapes, p as ElementStyle, z as ElementThemeColorValues, y as ElementThemeColors, E as ExclusiveUnion, F as Fqn, I as IconUrl, a as IteratorLike, K as KeysOf, q as Link, c as NTuple, N as NonEmptyArray, b as NonEmptyReadonlyArray, P as Point, d as Predicate, G as RelationshipThemeColorValues, R as RelationshipThemeColors, S as ShapeSize, J as SpacingSize, r as Tag, s as TagSpec, M as TextSize, O as ThemeColor, v as ThemeColors, t as TypedElement, X as XYPoint, u as isThemeColor } from './shared/core.Bhx0OGK8.mjs';
3
- export { aw as AbstractRelation, ah as AllNever, ai as AndOperator, a5 as AnyParsedLikeC4Model, aX as AutoLayoutDirection, a_ as BBox, aY as BasicElementView, aZ as BasicView, a$ as ComputedDeploymentView, b0 as ComputedDynamicView, b1 as ComputedEdge, b2 as ComputedElementView, C as ComputedLikeC4Model, aD as ComputedNode, a as ComputedView, b3 as CustomColorDefinitions, A as CustomElementExpr, B as CustomRelationExpr, at as DefaultArrowType, au as DefaultLineStyle, av as DefaultRelationshipColor, b as DeployedInstance, D as DeploymentElement, c as DeploymentElementStyle, d as DeploymentNode, f as DeploymentNodeKind, g as DeploymentNodeKindSpecification, h as DeploymentRef, i as DeploymentRelation, b4 as DeploymentView, b5 as DeploymentViewRule, b6 as DeploymentViewRulePredicate, b7 as DeploymentViewRuleStyle, b8 as DiagramEdge, aE as DiagramNode, b9 as DiagramView, E as DirectRelationExpr, ba as DynamicView, bb as DynamicViewIncludeRule, bc as DynamicViewParallelSteps, bd as DynamicViewRule, be as DynamicViewStep, bf as DynamicViewStepOrParallel, bg as EdgeId, F as ElementExpression, G as ElementKindExpr, bA as ElementNotation, H as ElementPredicateExpression, I as ElementRefExpr, J as ElementTagExpr, bh as ElementView, K as ElementWhereExpr, aj as EqualOperator, M as ExpandedElementExpr, e as Expr, N as Expression, X as ExpressionV2, bi as ExtendsElementView, ak as Filterable, Y as FqnExpr, Z as FqnRef, a6 as GenericLikeC4Model, $ as GlobalDynamicPredicates, a0 as GlobalPredicateId, a1 as GlobalPredicates, a2 as GlobalStyleID, a3 as GlobalStyles, Q as InOutExpr, O as IncomingExpr, al as KindEqual, a7 as LayoutedLikeC4Model, a8 as LikeC4ModelDump, L as LikeC4View, a4 as ModelGlobals, ax as ModelRelation, bj as NodeId, R as NonWilcard, am as NotOperator, an as OperatorPredicate, ao as OrOperator, S as OutgoingExpr, a9 as ParsedLikeC4Model, ap as Participant, aq as ParticipantOperator, P as PredicateSelector, _ as RelationExpr, T as RelationExpression, ay as RelationId, U as RelationPredicateExpression, V as RelationWhereExpr, az as RelationshipArrowType, aA as RelationshipKind, aB as RelationshipKindSpecification, aC as RelationshipLineType, bk as ScopedElementView, bl as StepEdgeId, bm as StepEdgeIdLiteral, ar as TagEqual, bn as ViewAutoLayout, bo as ViewId, bp as ViewManualLayout, bq as ViewRule, br as ViewRuleAutoLayout, bs as ViewRuleGlobalPredicateRef, bt as ViewRuleGlobalStyle, bu as ViewRuleGroup, bv as ViewRulePredicate, bw as ViewRuleStyle, bx as ViewRuleStyleOrGlobalRef, by as ViewWithHash, bz as ViewWithNotation, as as WhereOperator, W as WildcardExpr, aF as extractStep, aG as getBBoxCenter, aH as getParallelStepsPrefix, aa as isAndOperator, aI as isAutoLayoutDirection, j as isCustomElement, k as isCustomRelationExpr, aJ as isDeploymentView, aK as isDynamicView, aL as isDynamicViewParallelSteps, l as isElement, m as isElementKindExpr, n as isElementPredicateExpr, o as isElementRef, p as isElementTagExpr, aM as isElementView, q as isElementWhere, r as isExpandedElementExpr, aN as isExtendsElementView, t as isInOut, s as isIncoming, ab as isKindEqual, ac as isNotOperator, ad as isOrOperator, u as isOutgoing, ae as isParticipantOperator, v as isRelation, w as isRelationExpression, x as isRelationPredicateExpr, y as isRelationWhere, aO as isScopedElementView, aP as isStepEdgeId, af as isTagEqual, aQ as isViewRuleAutoLayout, aR as isViewRuleGlobalPredicateRef, aS as isViewRuleGlobalStyle, aT as isViewRuleGroup, aU as isViewRulePredicate, aV as isViewRuleStyle, z as isWildcard, aW as stepEdgeId, ag as whereOperatorAsPredicate } from './shared/core.B4wY1NqR.mjs';
4
- export { DefaultMap, DefaultWeakMap, LinkedList, MultiMap, Queue, Stack, commonHead, compareNatural, compareRelations, delay, difference, equalsSet, getOrCreate, hasAtLeast, ifilter, ifind, iflat, imap, intersection, ireduce, isIterable, isNonEmptyArray, isString, isome, iunique, stringHash, symmetricDifference, toArray, toSet, union } from './utils/index.mjs';
5
- export { A as AnyAux, b as Aux, C as ComputeViewResult, d as LikeC4DeploymentModel, L as LikeC4Model, e as LikeC4ViewModel, c as computeView, a as computeViews, u as unsafeComputeView } from './shared/core.D1_bU4dO.mjs';
6
- export { c as computeRelationshipsView } from './shared/core.C4dHhcrI.mjs';
1
+ import { H as HexColorLiteral, T as ThemeColorValues, L as LikeC4Theme } from './shared/core.30yYKXcZ.mjs';
2
+ export { A as AsFqn, l as BorderStyle, B as BorderStyles, x as Color, y as ColorLiteral, C as CustomColor, D as DefaultElementShape, f as DefaultPaddingSize, g as DefaultShapeSize, h as DefaultTextSize, i as DefaultThemeColor, m as Element, j as ElementKind, n as ElementKindSpecification, o as ElementKindSpecificationStyle, p as ElementShape, k as ElementShapes, q as ElementStyle, G as ElementThemeColorValues, z as ElementThemeColors, E as ExclusiveUnion, F as Fqn, I as IconUrl, a as IteratorLike, K as KeysOf, r as Link, c as NTuple, N as NonEmptyArray, b as NonEmptyReadonlyArray, P as Point, d as Predicate, e as ProjectId, J as RelationshipThemeColorValues, R as RelationshipThemeColors, S as ShapeSize, M as SpacingSize, s as Tag, t as TagSpec, O as TextSize, Q as ThemeColor, w as ThemeColors, u as TypedElement, X as XYPoint, v as isThemeColor } from './shared/core.30yYKXcZ.mjs';
3
+ export { aw as AbstractRelation, ah as AllNever, ai as AndOperator, a5 as AnyParsedLikeC4ModelData, aX as AutoLayoutDirection, a_ as BBox, aY as BasicElementView, aZ as BasicView, a$ as ComputedDeploymentView, b0 as ComputedDynamicView, b1 as ComputedEdge, b2 as ComputedElementView, C as ComputedLikeC4ModelData, aD as ComputedNode, a as ComputedView, b3 as CustomColorDefinitions, A as CustomElementExpr, B as CustomRelationExpr, at as DefaultArrowType, au as DefaultLineStyle, av as DefaultRelationshipColor, b as DeployedInstance, D as DeploymentElement, c as DeploymentElementStyle, d as DeploymentNode, f as DeploymentNodeKind, g as DeploymentNodeKindSpecification, h as DeploymentRef, i as DeploymentRelation, b4 as DeploymentView, b5 as DeploymentViewRule, b6 as DeploymentViewRulePredicate, b7 as DeploymentViewRuleStyle, b8 as DiagramEdge, aE as DiagramNode, b9 as DiagramView, E as DirectRelationExpr, ba as DynamicView, bb as DynamicViewIncludeRule, bc as DynamicViewParallelSteps, bd as DynamicViewRule, be as DynamicViewStep, bf as DynamicViewStepOrParallel, bg as EdgeId, F as ElementExpression, G as ElementKindExpr, bA as ElementNotation, H as ElementPredicateExpression, I as ElementRefExpr, J as ElementTagExpr, bh as ElementView, K as ElementWhereExpr, aj as EqualOperator, M as ExpandedElementExpr, e as Expr, N as Expression, X as ExpressionV2, bi as ExtendsElementView, ak as Filterable, Y as FqnExpr, Z as FqnRef, a6 as GenericLikeC4ModelData, $ as GlobalDynamicPredicates, a0 as GlobalPredicateId, a1 as GlobalPredicates, a2 as GlobalStyleID, a3 as GlobalStyles, Q as InOutExpr, O as IncomingExpr, al as KindEqual, a7 as LayoutedLikeC4ModelData, a8 as LikeC4ModelDump, L as LikeC4View, a4 as ModelGlobals, ax as ModelRelation, bj as NodeId, R as NonWilcard, am as NotOperator, an as OperatorPredicate, ao as OrOperator, S as OutgoingExpr, a9 as ParsedLikeC4ModelData, ap as Participant, aq as ParticipantOperator, P as PredicateSelector, _ as RelationExpr, T as RelationExpression, ay as RelationId, U as RelationPredicateExpression, V as RelationWhereExpr, az as RelationshipArrowType, aA as RelationshipKind, aB as RelationshipKindSpecification, aC as RelationshipLineType, bk as ScopedElementView, bl as StepEdgeId, bm as StepEdgeIdLiteral, ar as TagEqual, bn as ViewAutoLayout, bo as ViewId, bp as ViewManualLayout, bq as ViewRule, br as ViewRuleAutoLayout, bs as ViewRuleGlobalPredicateRef, bt as ViewRuleGlobalStyle, bu as ViewRuleGroup, bv as ViewRulePredicate, bw as ViewRuleStyle, bx as ViewRuleStyleOrGlobalRef, by as ViewWithHash, bz as ViewWithNotation, as as WhereOperator, W as WildcardExpr, aF as extractStep, aG as getBBoxCenter, aH as getParallelStepsPrefix, aa as isAndOperator, aI as isAutoLayoutDirection, j as isCustomElement, k as isCustomRelationExpr, aJ as isDeploymentView, aK as isDynamicView, aL as isDynamicViewParallelSteps, l as isElement, m as isElementKindExpr, n as isElementPredicateExpr, o as isElementRef, p as isElementTagExpr, aM as isElementView, q as isElementWhere, r as isExpandedElementExpr, aN as isExtendsElementView, t as isInOut, s as isIncoming, ab as isKindEqual, ac as isNotOperator, ad as isOrOperator, u as isOutgoing, ae as isParticipantOperator, v as isRelation, w as isRelationExpression, x as isRelationPredicateExpr, y as isRelationWhere, aO as isScopedElementView, aP as isStepEdgeId, af as isTagEqual, aQ as isViewRuleAutoLayout, aR as isViewRuleGlobalPredicateRef, aS as isViewRuleGlobalStyle, aT as isViewRuleGroup, aU as isViewRulePredicate, aV as isViewRuleStyle, z as isWildcard, aW as stepEdgeId, ag as whereOperatorAsPredicate } from './shared/core.z6g06scf.mjs';
4
+ export { BiMap, DefaultMap, DefaultWeakMap, LinkedList, MultiMap, Queue, Stack, commonHead, compareNatural, compareRelations, delay, difference, equalsSet, getOrCreate, hasAtLeast, ifilter, ifind, iflat, imap, intersection, ireduce, isIterable, isNonEmptyArray, isString, isome, iunique, stringHash, symmetricDifference, toArray, toSet, union } from './utils/index.mjs';
5
+ export { A as AnyAux, b as Aux, C as ComputeViewResult, D as DeployedInstanceModel, d as DeploymentElementModel, e as DeploymentNodeModel, f as DeploymentRelationModel, g as EdgeModel, E as ElementModel, h as LikeC4DeploymentModel, L as LikeC4Model, i as LikeC4ViewModel, N as NodeModel, R as RelationshipModel, c as computeView, a as computeViews, u as unsafeComputeView } from './shared/core.Brmu7VBL.mjs';
6
+ export { C as Connection, a as ConnectionModel, D as DeploymentConnectionModel } from './shared/core.oI7caxVx.mjs';
7
+ export { c as computeRelationshipsView } from './shared/core.Dd1nCiNx.mjs';
7
8
  export { OverviewGraph, ViewChange } from './types/index.mjs';
8
- 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.RiWsY3jz.mjs';
9
+ 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.HKn0jlo_.mjs';
9
10
  export { default as objectHash } from '/home/runner/work/likec4/likec4/node_modules/.pnpm/@types+object-hash@3.0.6/node_modules/@types/object-hash/index.d.ts';
10
11
  import 'type-fest';
11
12
 
@@ -139,7 +140,7 @@ declare const RelationshipColors: {
139
140
  declare const defaultTheme: LikeC4Theme;
140
141
  declare function computeColorValues(color: HexColorLiteral): ThemeColorValues;
141
142
 
142
- declare function nonNullable<T>(value: T, message?: string): NonNullable<T>;
143
+ declare function nonNullable<T>(value: T, message?: string | (() => string)): NonNullable<T>;
143
144
  declare function invariant(condition: any, message?: string): asserts condition;
144
145
  declare function nonexhaustive(value: never): never;
145
146
 
package/dist/index.d.ts CHANGED
@@ -1,11 +1,12 @@
1
- import { H as HexColorLiteral, T as ThemeColorValues, L as LikeC4Theme } from './shared/core.Bhx0OGK8.js';
2
- export { A as AsFqn, k as BorderStyle, B as BorderStyles, w as Color, x as ColorLiteral, C as CustomColor, D as DefaultElementShape, e as DefaultPaddingSize, f as DefaultShapeSize, g as DefaultTextSize, h as DefaultThemeColor, l as Element, i as ElementKind, m as ElementKindSpecification, n as ElementKindSpecificationStyle, o as ElementShape, j as ElementShapes, p as ElementStyle, z as ElementThemeColorValues, y as ElementThemeColors, E as ExclusiveUnion, F as Fqn, I as IconUrl, a as IteratorLike, K as KeysOf, q as Link, c as NTuple, N as NonEmptyArray, b as NonEmptyReadonlyArray, P as Point, d as Predicate, G as RelationshipThemeColorValues, R as RelationshipThemeColors, S as ShapeSize, J as SpacingSize, r as Tag, s as TagSpec, M as TextSize, O as ThemeColor, v as ThemeColors, t as TypedElement, X as XYPoint, u as isThemeColor } from './shared/core.Bhx0OGK8.js';
3
- export { aw as AbstractRelation, ah as AllNever, ai as AndOperator, a5 as AnyParsedLikeC4Model, aX as AutoLayoutDirection, a_ as BBox, aY as BasicElementView, aZ as BasicView, a$ as ComputedDeploymentView, b0 as ComputedDynamicView, b1 as ComputedEdge, b2 as ComputedElementView, C as ComputedLikeC4Model, aD as ComputedNode, a as ComputedView, b3 as CustomColorDefinitions, A as CustomElementExpr, B as CustomRelationExpr, at as DefaultArrowType, au as DefaultLineStyle, av as DefaultRelationshipColor, b as DeployedInstance, D as DeploymentElement, c as DeploymentElementStyle, d as DeploymentNode, f as DeploymentNodeKind, g as DeploymentNodeKindSpecification, h as DeploymentRef, i as DeploymentRelation, b4 as DeploymentView, b5 as DeploymentViewRule, b6 as DeploymentViewRulePredicate, b7 as DeploymentViewRuleStyle, b8 as DiagramEdge, aE as DiagramNode, b9 as DiagramView, E as DirectRelationExpr, ba as DynamicView, bb as DynamicViewIncludeRule, bc as DynamicViewParallelSteps, bd as DynamicViewRule, be as DynamicViewStep, bf as DynamicViewStepOrParallel, bg as EdgeId, F as ElementExpression, G as ElementKindExpr, bA as ElementNotation, H as ElementPredicateExpression, I as ElementRefExpr, J as ElementTagExpr, bh as ElementView, K as ElementWhereExpr, aj as EqualOperator, M as ExpandedElementExpr, e as Expr, N as Expression, X as ExpressionV2, bi as ExtendsElementView, ak as Filterable, Y as FqnExpr, Z as FqnRef, a6 as GenericLikeC4Model, $ as GlobalDynamicPredicates, a0 as GlobalPredicateId, a1 as GlobalPredicates, a2 as GlobalStyleID, a3 as GlobalStyles, Q as InOutExpr, O as IncomingExpr, al as KindEqual, a7 as LayoutedLikeC4Model, a8 as LikeC4ModelDump, L as LikeC4View, a4 as ModelGlobals, ax as ModelRelation, bj as NodeId, R as NonWilcard, am as NotOperator, an as OperatorPredicate, ao as OrOperator, S as OutgoingExpr, a9 as ParsedLikeC4Model, ap as Participant, aq as ParticipantOperator, P as PredicateSelector, _ as RelationExpr, T as RelationExpression, ay as RelationId, U as RelationPredicateExpression, V as RelationWhereExpr, az as RelationshipArrowType, aA as RelationshipKind, aB as RelationshipKindSpecification, aC as RelationshipLineType, bk as ScopedElementView, bl as StepEdgeId, bm as StepEdgeIdLiteral, ar as TagEqual, bn as ViewAutoLayout, bo as ViewId, bp as ViewManualLayout, bq as ViewRule, br as ViewRuleAutoLayout, bs as ViewRuleGlobalPredicateRef, bt as ViewRuleGlobalStyle, bu as ViewRuleGroup, bv as ViewRulePredicate, bw as ViewRuleStyle, bx as ViewRuleStyleOrGlobalRef, by as ViewWithHash, bz as ViewWithNotation, as as WhereOperator, W as WildcardExpr, aF as extractStep, aG as getBBoxCenter, aH as getParallelStepsPrefix, aa as isAndOperator, aI as isAutoLayoutDirection, j as isCustomElement, k as isCustomRelationExpr, aJ as isDeploymentView, aK as isDynamicView, aL as isDynamicViewParallelSteps, l as isElement, m as isElementKindExpr, n as isElementPredicateExpr, o as isElementRef, p as isElementTagExpr, aM as isElementView, q as isElementWhere, r as isExpandedElementExpr, aN as isExtendsElementView, t as isInOut, s as isIncoming, ab as isKindEqual, ac as isNotOperator, ad as isOrOperator, u as isOutgoing, ae as isParticipantOperator, v as isRelation, w as isRelationExpression, x as isRelationPredicateExpr, y as isRelationWhere, aO as isScopedElementView, aP as isStepEdgeId, af as isTagEqual, aQ as isViewRuleAutoLayout, aR as isViewRuleGlobalPredicateRef, aS as isViewRuleGlobalStyle, aT as isViewRuleGroup, aU as isViewRulePredicate, aV as isViewRuleStyle, z as isWildcard, aW as stepEdgeId, ag as whereOperatorAsPredicate } from './shared/core.CWZqfEHX.js';
4
- export { DefaultMap, DefaultWeakMap, LinkedList, MultiMap, Queue, Stack, commonHead, compareNatural, compareRelations, delay, difference, equalsSet, getOrCreate, hasAtLeast, ifilter, ifind, iflat, imap, intersection, ireduce, isIterable, isNonEmptyArray, isString, isome, iunique, stringHash, symmetricDifference, toArray, toSet, union } from './utils/index.js';
5
- export { A as AnyAux, b as Aux, C as ComputeViewResult, d as LikeC4DeploymentModel, L as LikeC4Model, e as LikeC4ViewModel, c as computeView, a as computeViews, u as unsafeComputeView } from './shared/core.B4fHpdUJ.js';
6
- export { c as computeRelationshipsView } from './shared/core.Dw2eQBtz.js';
1
+ import { H as HexColorLiteral, T as ThemeColorValues, L as LikeC4Theme } from './shared/core.30yYKXcZ.js';
2
+ export { A as AsFqn, l as BorderStyle, B as BorderStyles, x as Color, y as ColorLiteral, C as CustomColor, D as DefaultElementShape, f as DefaultPaddingSize, g as DefaultShapeSize, h as DefaultTextSize, i as DefaultThemeColor, m as Element, j as ElementKind, n as ElementKindSpecification, o as ElementKindSpecificationStyle, p as ElementShape, k as ElementShapes, q as ElementStyle, G as ElementThemeColorValues, z as ElementThemeColors, E as ExclusiveUnion, F as Fqn, I as IconUrl, a as IteratorLike, K as KeysOf, r as Link, c as NTuple, N as NonEmptyArray, b as NonEmptyReadonlyArray, P as Point, d as Predicate, e as ProjectId, J as RelationshipThemeColorValues, R as RelationshipThemeColors, S as ShapeSize, M as SpacingSize, s as Tag, t as TagSpec, O as TextSize, Q as ThemeColor, w as ThemeColors, u as TypedElement, X as XYPoint, v as isThemeColor } from './shared/core.30yYKXcZ.js';
3
+ export { aw as AbstractRelation, ah as AllNever, ai as AndOperator, a5 as AnyParsedLikeC4ModelData, aX as AutoLayoutDirection, a_ as BBox, aY as BasicElementView, aZ as BasicView, a$ as ComputedDeploymentView, b0 as ComputedDynamicView, b1 as ComputedEdge, b2 as ComputedElementView, C as ComputedLikeC4ModelData, aD as ComputedNode, a as ComputedView, b3 as CustomColorDefinitions, A as CustomElementExpr, B as CustomRelationExpr, at as DefaultArrowType, au as DefaultLineStyle, av as DefaultRelationshipColor, b as DeployedInstance, D as DeploymentElement, c as DeploymentElementStyle, d as DeploymentNode, f as DeploymentNodeKind, g as DeploymentNodeKindSpecification, h as DeploymentRef, i as DeploymentRelation, b4 as DeploymentView, b5 as DeploymentViewRule, b6 as DeploymentViewRulePredicate, b7 as DeploymentViewRuleStyle, b8 as DiagramEdge, aE as DiagramNode, b9 as DiagramView, E as DirectRelationExpr, ba as DynamicView, bb as DynamicViewIncludeRule, bc as DynamicViewParallelSteps, bd as DynamicViewRule, be as DynamicViewStep, bf as DynamicViewStepOrParallel, bg as EdgeId, F as ElementExpression, G as ElementKindExpr, bA as ElementNotation, H as ElementPredicateExpression, I as ElementRefExpr, J as ElementTagExpr, bh as ElementView, K as ElementWhereExpr, aj as EqualOperator, M as ExpandedElementExpr, e as Expr, N as Expression, X as ExpressionV2, bi as ExtendsElementView, ak as Filterable, Y as FqnExpr, Z as FqnRef, a6 as GenericLikeC4ModelData, $ as GlobalDynamicPredicates, a0 as GlobalPredicateId, a1 as GlobalPredicates, a2 as GlobalStyleID, a3 as GlobalStyles, Q as InOutExpr, O as IncomingExpr, al as KindEqual, a7 as LayoutedLikeC4ModelData, a8 as LikeC4ModelDump, L as LikeC4View, a4 as ModelGlobals, ax as ModelRelation, bj as NodeId, R as NonWilcard, am as NotOperator, an as OperatorPredicate, ao as OrOperator, S as OutgoingExpr, a9 as ParsedLikeC4ModelData, ap as Participant, aq as ParticipantOperator, P as PredicateSelector, _ as RelationExpr, T as RelationExpression, ay as RelationId, U as RelationPredicateExpression, V as RelationWhereExpr, az as RelationshipArrowType, aA as RelationshipKind, aB as RelationshipKindSpecification, aC as RelationshipLineType, bk as ScopedElementView, bl as StepEdgeId, bm as StepEdgeIdLiteral, ar as TagEqual, bn as ViewAutoLayout, bo as ViewId, bp as ViewManualLayout, bq as ViewRule, br as ViewRuleAutoLayout, bs as ViewRuleGlobalPredicateRef, bt as ViewRuleGlobalStyle, bu as ViewRuleGroup, bv as ViewRulePredicate, bw as ViewRuleStyle, bx as ViewRuleStyleOrGlobalRef, by as ViewWithHash, bz as ViewWithNotation, as as WhereOperator, W as WildcardExpr, aF as extractStep, aG as getBBoxCenter, aH as getParallelStepsPrefix, aa as isAndOperator, aI as isAutoLayoutDirection, j as isCustomElement, k as isCustomRelationExpr, aJ as isDeploymentView, aK as isDynamicView, aL as isDynamicViewParallelSteps, l as isElement, m as isElementKindExpr, n as isElementPredicateExpr, o as isElementRef, p as isElementTagExpr, aM as isElementView, q as isElementWhere, r as isExpandedElementExpr, aN as isExtendsElementView, t as isInOut, s as isIncoming, ab as isKindEqual, ac as isNotOperator, ad as isOrOperator, u as isOutgoing, ae as isParticipantOperator, v as isRelation, w as isRelationExpression, x as isRelationPredicateExpr, y as isRelationWhere, aO as isScopedElementView, aP as isStepEdgeId, af as isTagEqual, aQ as isViewRuleAutoLayout, aR as isViewRuleGlobalPredicateRef, aS as isViewRuleGlobalStyle, aT as isViewRuleGroup, aU as isViewRulePredicate, aV as isViewRuleStyle, z as isWildcard, aW as stepEdgeId, ag as whereOperatorAsPredicate } from './shared/core.BH59D8Ji.js';
4
+ export { BiMap, DefaultMap, DefaultWeakMap, LinkedList, MultiMap, Queue, Stack, commonHead, compareNatural, compareRelations, delay, difference, equalsSet, getOrCreate, hasAtLeast, ifilter, ifind, iflat, imap, intersection, ireduce, isIterable, isNonEmptyArray, isString, isome, iunique, stringHash, symmetricDifference, toArray, toSet, union } from './utils/index.js';
5
+ export { A as AnyAux, b as Aux, C as ComputeViewResult, D as DeployedInstanceModel, d as DeploymentElementModel, e as DeploymentNodeModel, f as DeploymentRelationModel, g as EdgeModel, E as ElementModel, h as LikeC4DeploymentModel, L as LikeC4Model, i as LikeC4ViewModel, N as NodeModel, R as RelationshipModel, c as computeView, a as computeViews, u as unsafeComputeView } from './shared/core.Cpd5mZgF.js';
6
+ export { C as Connection, a as ConnectionModel, D as DeploymentConnectionModel } from './shared/core.-qjOvsEL.js';
7
+ export { c as computeRelationshipsView } from './shared/core.mD0TIdz_.js';
7
8
  export { OverviewGraph, ViewChange } from './types/index.js';
8
- 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.BsAIrb_r.js';
9
+ 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.CIbWBWW3.js';
9
10
  export { default as objectHash } from '/home/runner/work/likec4/likec4/node_modules/.pnpm/@types+object-hash@3.0.6/node_modules/@types/object-hash/index.d.ts';
10
11
  import 'type-fest';
11
12
 
@@ -139,7 +140,7 @@ declare const RelationshipColors: {
139
140
  declare const defaultTheme: LikeC4Theme;
140
141
  declare function computeColorValues(color: HexColorLiteral): ThemeColorValues;
141
142
 
142
- declare function nonNullable<T>(value: T, message?: string): NonNullable<T>;
143
+ declare function nonNullable<T>(value: T, message?: string | (() => string)): NonNullable<T>;
143
144
  declare function invariant(condition: any, message?: string): asserts condition;
144
145
  declare function nonexhaustive(value: never): never;
145
146
 
package/dist/index.mjs CHANGED
@@ -1,10 +1,10 @@
1
- export { i as invariant, a as nonNullable, n as nonexhaustive } from './shared/core.Btj1m6H6.mjs';
2
- export { A as AsFqn, B as BorderStyles, V as ComputedNode, W as ComputedView, S as DefaultArrowType, D as DefaultElementShape, T as DefaultLineStyle, g as DefaultPaddingSize, U as DefaultRelationshipColor, h as DefaultShapeSize, j as DefaultTextSize, c as DefaultThemeColor, d as DeploymentElement, X as DiagramNode, E as ElementKind, k as ElementShapes, f as Expr, H as ExpressionV2, I as FqnExpr, J as FqnRef, R as RelationExpr, Y as extractStep, Z as getBBoxCenter, _ as getParallelStepsPrefix, K as isAndOperator, $ as isAutoLayoutDirection, l as isCustomElement, m as isCustomRelationExpr, a0 as isDeploymentView, a1 as isDynamicView, a2 as isDynamicViewParallelSteps, p as isElement, q as isElementKindExpr, b as isElementPredicateExpr, r as isElementRef, s as isElementTagExpr, a as isElementView, t as isElementWhere, u as isExpandedElementExpr, i as isExtendsElementView, w as isInOut, v as isIncoming, L as isKindEqual, M as isNotOperator, N as isOrOperator, x as isOutgoing, O as isParticipantOperator, y as isRelation, z as isRelationExpression, C as isRelationPredicateExpr, F as isRelationWhere, e as isScopedElementView, a3 as isStepEdgeId, P as isTagEqual, a4 as isViewRuleAutoLayout, a5 as isViewRuleGlobalPredicateRef, a6 as isViewRuleGlobalStyle, a7 as isViewRuleGroup, a8 as isViewRulePredicate, a9 as isViewRuleStyle, G as isWildcard, aa as stepEdgeId, Q as whereOperatorAsPredicate } from './shared/core.DCetokL7.mjs';
3
- export { b as LikeC4DeploymentModel, L as LikeC4Model, e as LikeC4ViewModel, c as computeView, a as computeViews, u as unsafeComputeView } from './shared/core.CVZbbLy6.mjs';
4
- export { c as computeRelationshipsView } from './shared/core.DmBjVt1u.mjs';
1
+ export { i as invariant, a as nonNullable, n as nonexhaustive } from './shared/core.DRxv3HIl.mjs';
2
+ export { A as AsFqn, B as BorderStyles, V as ComputedNode, W as ComputedView, S as DefaultArrowType, D as DefaultElementShape, T as DefaultLineStyle, g as DefaultPaddingSize, U as DefaultRelationshipColor, h as DefaultShapeSize, j as DefaultTextSize, c as DefaultThemeColor, d as DeploymentElement, X as DiagramNode, E as ElementKind, k as ElementShapes, f as Expr, H as ExpressionV2, I as FqnExpr, J as FqnRef, R as RelationExpr, Y as extractStep, Z as getBBoxCenter, _ as getParallelStepsPrefix, K as isAndOperator, $ as isAutoLayoutDirection, l as isCustomElement, m as isCustomRelationExpr, a0 as isDeploymentView, a1 as isDynamicView, a2 as isDynamicViewParallelSteps, p as isElement, q as isElementKindExpr, b as isElementPredicateExpr, r as isElementRef, s as isElementTagExpr, a as isElementView, t as isElementWhere, u as isExpandedElementExpr, i as isExtendsElementView, w as isInOut, v as isIncoming, L as isKindEqual, M as isNotOperator, N as isOrOperator, x as isOutgoing, O as isParticipantOperator, y as isRelation, z as isRelationExpression, C as isRelationPredicateExpr, F as isRelationWhere, e as isScopedElementView, a3 as isStepEdgeId, P as isTagEqual, a4 as isViewRuleAutoLayout, a5 as isViewRuleGlobalPredicateRef, a6 as isViewRuleGlobalStyle, a7 as isViewRuleGroup, a8 as isViewRulePredicate, a9 as isViewRuleStyle, G as isWildcard, aa as stepEdgeId, Q as whereOperatorAsPredicate } from './shared/core.yND74qFI.mjs';
3
+ export { C as Connection, b as ConnectionModel, D as DeployedInstanceModel, e as DeploymentConnectionModel, f as DeploymentNodeModel, g as DeploymentRelationModel, E as EdgeModel, h as ElementModel, j as LikeC4DeploymentModel, L as LikeC4Model, k as LikeC4ViewModel, N as NodeModel, R as RelationshipModel, c as computeView, a as computeViews, u as unsafeComputeView } from './shared/core.CcjDE4j7.mjs';
4
+ export { c as computeRelationshipsView } from './shared/core.BBJd-FqJ.mjs';
5
5
  export { ThemeColors, isThemeColor } from './types/index.mjs';
6
- export { D as DefaultMap, S as Stack, g as ancestorsFqn, h as commonAncestor, e as commonHead, j as compareByFqnHierarchically, k as compareFqnHierarchically, f as compareNatural, I as difference, J as equalsSet, x as getOrCreate, a as hasAtLeast, o as hierarchyDistance, q as hierarchyLevel, A as ifilter, i as ifind, B as iflat, C as imap, K as intersection, r as isAncestor, s as isDescendantOf, E as isIterable, y as isNonEmptyArray, c as isSameHierarchy, z as isString, F as isome, G as iunique, n as nameFromFqn, O as objectHash, p as parentFqn, u as sortByFqnHierarchically, v as sortNaturalByFqn, w as sortParentsFirst, N as stringHash, L as symmetricDifference, H as toArray, t as toSet, M as union } from './shared/core.DQMSDiu8.mjs';
7
- export { DefaultWeakMap, LinkedList, MultiMap, Queue, compareRelations, delay, ireduce } from './utils/index.mjs';
6
+ export { BiMap, DefaultWeakMap, LinkedList, MultiMap, Queue, compareRelations, delay, ireduce } from './utils/index.mjs';
7
+ export { D as DefaultMap, S as Stack, g as ancestorsFqn, h as commonAncestor, e as commonHead, j as compareByFqnHierarchically, k as compareFqnHierarchically, f as compareNatural, I as difference, J as equalsSet, x as getOrCreate, a as hasAtLeast, o as hierarchyDistance, q as hierarchyLevel, A as ifilter, i as ifind, B as iflat, C as imap, K as intersection, r as isAncestor, s as isDescendantOf, E as isIterable, y as isNonEmptyArray, c as isSameHierarchy, z as isString, F as isome, G as iunique, n as nameFromFqn, O as objectHash, p as parentFqn, u as sortByFqnHierarchically, v as sortNaturalByFqn, w as sortParentsFirst, N as stringHash, L as symmetricDifference, H as toArray, t as toSet, M as union } from './shared/core.BqezHsjR.mjs';
8
8
 
9
9
  const { min: min$4, max: max$4 } = Math;
10
10
 
@@ -1,151 +1,10 @@
1
- import { E as ElementModel, D as DeploymentElementModel, A as AnyAux, f as DeploymentNodeModel, g as DeployedInstanceModel, h as RelationshipsAccum, R as RelationshipModel, i as DeploymentRelationModel } from '../shared/core.D1_bU4dO.mjs';
2
- export { b as Aux, j as EdgeModel, d as LikeC4DeploymentModel, L as LikeC4Model, e as LikeC4ViewModel, N as NodeModel } from '../shared/core.D1_bU4dO.mjs';
3
- import { F as Fqn, a as IteratorLike } from '../shared/core.Bhx0OGK8.mjs';
4
- import { I as IterableContainer, R as ReorderedArray } from '../shared/core.RiWsY3jz.mjs';
1
+ import { A as AnyAux, d as DeploymentElementModel, E as ElementModel, D as DeployedInstanceModel, e as DeploymentNodeModel } from '../shared/core.Brmu7VBL.mjs';
2
+ export { b as Aux, f as DeploymentRelationModel, g as EdgeModel, h as LikeC4DeploymentModel, L as LikeC4Model, i as LikeC4ViewModel, N as NodeModel, R as RelationshipModel } from '../shared/core.Brmu7VBL.mjs';
3
+ import { C as Connection, D as DeploymentConnectionModel, a as ConnectionModel } from '../shared/core.oI7caxVx.mjs';
4
+ import { I as IterableContainer, R as ReorderedArray } from '../shared/core.HKn0jlo_.mjs';
5
5
  import 'type-fest';
6
- import '../shared/core.B4wY1NqR.mjs';
7
-
8
- interface Connection<Elem = ElementModel | DeploymentElementModel, Id = string> {
9
- readonly id: Id;
10
- readonly source: Elem;
11
- readonly target: Elem;
12
- /**
13
- * Common ancestor of the source and target elements.
14
- * Represents the boundary of the connection.
15
- */
16
- readonly boundary: Elem | null;
17
- /**
18
- * Human readable expression of the connection
19
- * Mostly used for testing and debugging
20
- */
21
- readonly expression: string;
22
- mergeWith(this: Connection<Elem, Id>, other: typeof this): typeof this;
23
- nonEmpty(): boolean;
24
- difference(this: Connection<Elem, Id>, other: typeof this): typeof this;
25
- intersect(this: Connection<Elem, Id>, other: typeof this): typeof this;
26
- equals(other: Connection): boolean;
27
- }
28
- declare namespace Connection {
29
- type ConnectionPredicate = <C extends Connection<{
30
- id: string;
31
- }, any>>(connection: C) => boolean;
32
- type ElementId = Fqn | string;
33
- export const isInside: (fqn: ElementId) => ConnectionPredicate;
34
- export const isDirectedBetween: (source: ElementId, target: ElementId) => ConnectionPredicate;
35
- export const isAnyBetween: (source: ElementId, target: ElementId) => ConnectionPredicate;
36
- export const isIncoming: (target: ElementId) => ConnectionPredicate;
37
- export const isOutgoing: (source: ElementId) => ConnectionPredicate;
38
- export const isAnyInOut: (source: ElementId) => ConnectionPredicate;
39
- export { };
40
- }
41
-
42
- declare const customInspectSymbol: unique symbol;
43
-
44
- /**
45
- * Connection is ephemeral entity, result of a resolving relationships between source and target.
46
- * Includes direct relationships and/or between their nested elements.
47
- */
48
- declare class DeploymentConnectionModel<M extends AnyAux = AnyAux> implements Connection<DeploymentElementModel<M>, M['EdgeId']> {
49
- readonly source: DeploymentNodeModel<M> | DeployedInstanceModel<M>;
50
- readonly target: DeploymentNodeModel<M> | DeployedInstanceModel<M>;
51
- readonly relations: RelationshipsAccum<M>;
52
- constructor(source: DeploymentNodeModel<M> | DeployedInstanceModel<M>, target: DeploymentNodeModel<M> | DeployedInstanceModel<M>, relations: RelationshipsAccum<M>);
53
- readonly id: M['EdgeId'];
54
- /**
55
- * Human readable expression of the connection
56
- * Mostly used for testing and debugging
57
- */
58
- get expression(): string;
59
- private _boundary;
60
- /**
61
- * Common ancestor of the source and target elements.
62
- * Represents the boundary of the connection.
63
- */
64
- get boundary(): DeploymentNodeModel<M> | null;
65
- nonEmpty(): boolean;
66
- [customInspectSymbol](depth: any, inspectOptions: any, inspect: any): string;
67
- toString(): string;
68
- /**
69
- * Check if connection contains deployment relation,
70
- * that is directly connected to source or target.
71
- */
72
- hasDirectDeploymentRelation(): boolean;
73
- values(): IteratorLike<RelationshipModel<M> | DeploymentRelationModel<M>>;
74
- /**
75
- * Merge with another connections, if it has the same source and target.
76
- * Returns new connection with union of relationships.
77
- */
78
- mergeWith(others: DeploymentConnectionModel<M>[]): DeploymentConnectionModel<M>;
79
- /**
80
- * Merge with another connection, if it has the same source and target.
81
- * Returns new connection with union of relationships.
82
- */
83
- mergeWith(other: DeploymentConnectionModel<M>): DeploymentConnectionModel<M>;
84
- difference(other: DeploymentConnectionModel<M>): DeploymentConnectionModel<M>;
85
- intersect(other: DeploymentConnectionModel<M>): DeploymentConnectionModel<M>;
86
- equals(other: Connection): boolean;
87
- /**
88
- * Creates a clone of the current `DeploymentConnectionModel` instance with optional overrides.
89
- * if `null` is provided in overrides, the corresponding relation set will be empty.
90
- */
91
- update(overrides?: {
92
- model?: ReadonlySet<RelationshipModel<M>> | null;
93
- deployment?: ReadonlySet<DeploymentRelationModel<M>> | null;
94
- }): DeploymentConnectionModel<M>;
95
- }
96
-
97
- /**
98
- * Connection refers to any relationships between two elements,
99
- * both direct and implicit ones (between their nested elements).
100
- *
101
- * Merges relationships together to an single edge on the diagram.
102
- */
103
- declare class ConnectionModel<M extends AnyAux = AnyAux> implements Connection<ElementModel<M>, M['EdgeId']> {
104
- readonly source: ElementModel<M>;
105
- readonly target: ElementModel<M>;
106
- readonly relations: ReadonlySet<RelationshipModel<M>>;
107
- readonly id: M['EdgeId'];
108
- constructor(source: ElementModel<M>, target: ElementModel<M>, relations?: ReadonlySet<RelationshipModel<M>>);
109
- private _boundary;
110
- /**
111
- * Common ancestor of the source and target elements.
112
- * Represents the boundary of the connection.
113
- */
114
- get boundary(): ElementModel<M> | null;
115
- /**
116
- * Human readable expression of the connection
117
- * Mostly used for testing and debugging
118
- */
119
- get expression(): string;
120
- /**
121
- * Returns true if only includes relations between the source and target elements.
122
- */
123
- get isDirect(): boolean;
124
- /**
125
- * Returns true if includes relations between nested elements of the source and target elements.
126
- */
127
- get isImplicit(): boolean;
128
- get directRelations(): ReadonlySet<RelationshipModel<M>>;
129
- nonEmpty(): boolean;
130
- mergeWith(other: ConnectionModel<M>): ConnectionModel<M>;
131
- difference(other: ConnectionModel<M>): ConnectionModel<M>;
132
- intersect(other: ConnectionModel<M>): ConnectionModel<M>;
133
- equals(other: Connection): boolean;
134
- /**
135
- * Returns a new instance with the updated relations.
136
- *
137
- * @param relations - A readonly set of `RelationshipModel` instances representing the new relations.
138
- * @returns A new `ConnectionModel` instance with the updated relations.
139
- */
140
- update(relations: ReadonlySet<RelationshipModel<M>>): ConnectionModel<M>;
141
- [customInspectSymbol](depth: any, inspectOptions: any, inspect: any): string;
142
- toString(): string;
143
- /**
144
- * Creates a new connection with reversed direction (target becomes source and vice versa)
145
- * @param search - When true, attempts to find an existing connection between the reversed nodes
146
- */
147
- reversed(search?: boolean): ConnectionModel<M>;
148
- }
6
+ import '../shared/core.z6g06scf.mjs';
7
+ import '../shared/core.30yYKXcZ.mjs';
149
8
 
150
9
  /**
151
10
  * Check if connection is nested inside another connection
@@ -256,4 +115,4 @@ declare namespace find {
256
115
  declare function isDeploymentNode(model: DeploymentElementModel): model is DeploymentNodeModel;
257
116
  declare function isDeployedInstance(model: DeploymentElementModel): model is DeployedInstanceModel;
258
117
 
259
- export { AnyAux, Connection, ConnectionModel, DeployedInstanceModel, DeploymentConnectionModel, DeploymentElementModel, DeploymentNodeModel, DeploymentRelationModel, ElementModel, RelationshipModel, find$1 as deploymentConnection, differenceConnections, findAscendingConnections, findDeepestNestedConnection, findDescendantConnections, hasSameSource, hasSameSourceTarget, hasSameTarget, isAnyInOut, isDeployedInstance, isDeploymentNode, isIncoming, isNestedConnection, isOutgoing, mergeConnections, find as modelConnection, sortConnectionsByBoundaryHierarchy, sortDeepestFirst };
118
+ export { AnyAux, Connection, ConnectionModel, DeployedInstanceModel, DeploymentConnectionModel, DeploymentElementModel, DeploymentNodeModel, ElementModel, find$1 as deploymentConnection, differenceConnections, findAscendingConnections, findDeepestNestedConnection, findDescendantConnections, hasSameSource, hasSameSourceTarget, hasSameTarget, isAnyInOut, isDeployedInstance, isDeploymentNode, isIncoming, isNestedConnection, isOutgoing, mergeConnections, find as modelConnection, sortConnectionsByBoundaryHierarchy, sortDeepestFirst };
@@ -1,151 +1,10 @@
1
- import { E as ElementModel, D as DeploymentElementModel, A as AnyAux, f as DeploymentNodeModel, g as DeployedInstanceModel, h as RelationshipsAccum, R as RelationshipModel, i as DeploymentRelationModel } from '../shared/core.B4fHpdUJ.js';
2
- export { b as Aux, j as EdgeModel, d as LikeC4DeploymentModel, L as LikeC4Model, e as LikeC4ViewModel, N as NodeModel } from '../shared/core.B4fHpdUJ.js';
3
- import { F as Fqn, a as IteratorLike } from '../shared/core.Bhx0OGK8.js';
4
- import { I as IterableContainer, R as ReorderedArray } from '../shared/core.BsAIrb_r.js';
1
+ import { A as AnyAux, d as DeploymentElementModel, E as ElementModel, D as DeployedInstanceModel, e as DeploymentNodeModel } from '../shared/core.Cpd5mZgF.js';
2
+ export { b as Aux, f as DeploymentRelationModel, g as EdgeModel, h as LikeC4DeploymentModel, L as LikeC4Model, i as LikeC4ViewModel, N as NodeModel, R as RelationshipModel } from '../shared/core.Cpd5mZgF.js';
3
+ import { C as Connection, D as DeploymentConnectionModel, a as ConnectionModel } from '../shared/core.-qjOvsEL.js';
4
+ import { I as IterableContainer, R as ReorderedArray } from '../shared/core.CIbWBWW3.js';
5
5
  import 'type-fest';
6
- import '../shared/core.CWZqfEHX.js';
7
-
8
- interface Connection<Elem = ElementModel | DeploymentElementModel, Id = string> {
9
- readonly id: Id;
10
- readonly source: Elem;
11
- readonly target: Elem;
12
- /**
13
- * Common ancestor of the source and target elements.
14
- * Represents the boundary of the connection.
15
- */
16
- readonly boundary: Elem | null;
17
- /**
18
- * Human readable expression of the connection
19
- * Mostly used for testing and debugging
20
- */
21
- readonly expression: string;
22
- mergeWith(this: Connection<Elem, Id>, other: typeof this): typeof this;
23
- nonEmpty(): boolean;
24
- difference(this: Connection<Elem, Id>, other: typeof this): typeof this;
25
- intersect(this: Connection<Elem, Id>, other: typeof this): typeof this;
26
- equals(other: Connection): boolean;
27
- }
28
- declare namespace Connection {
29
- type ConnectionPredicate = <C extends Connection<{
30
- id: string;
31
- }, any>>(connection: C) => boolean;
32
- type ElementId = Fqn | string;
33
- export const isInside: (fqn: ElementId) => ConnectionPredicate;
34
- export const isDirectedBetween: (source: ElementId, target: ElementId) => ConnectionPredicate;
35
- export const isAnyBetween: (source: ElementId, target: ElementId) => ConnectionPredicate;
36
- export const isIncoming: (target: ElementId) => ConnectionPredicate;
37
- export const isOutgoing: (source: ElementId) => ConnectionPredicate;
38
- export const isAnyInOut: (source: ElementId) => ConnectionPredicate;
39
- export { };
40
- }
41
-
42
- declare const customInspectSymbol: unique symbol;
43
-
44
- /**
45
- * Connection is ephemeral entity, result of a resolving relationships between source and target.
46
- * Includes direct relationships and/or between their nested elements.
47
- */
48
- declare class DeploymentConnectionModel<M extends AnyAux = AnyAux> implements Connection<DeploymentElementModel<M>, M['EdgeId']> {
49
- readonly source: DeploymentNodeModel<M> | DeployedInstanceModel<M>;
50
- readonly target: DeploymentNodeModel<M> | DeployedInstanceModel<M>;
51
- readonly relations: RelationshipsAccum<M>;
52
- constructor(source: DeploymentNodeModel<M> | DeployedInstanceModel<M>, target: DeploymentNodeModel<M> | DeployedInstanceModel<M>, relations: RelationshipsAccum<M>);
53
- readonly id: M['EdgeId'];
54
- /**
55
- * Human readable expression of the connection
56
- * Mostly used for testing and debugging
57
- */
58
- get expression(): string;
59
- private _boundary;
60
- /**
61
- * Common ancestor of the source and target elements.
62
- * Represents the boundary of the connection.
63
- */
64
- get boundary(): DeploymentNodeModel<M> | null;
65
- nonEmpty(): boolean;
66
- [customInspectSymbol](depth: any, inspectOptions: any, inspect: any): string;
67
- toString(): string;
68
- /**
69
- * Check if connection contains deployment relation,
70
- * that is directly connected to source or target.
71
- */
72
- hasDirectDeploymentRelation(): boolean;
73
- values(): IteratorLike<RelationshipModel<M> | DeploymentRelationModel<M>>;
74
- /**
75
- * Merge with another connections, if it has the same source and target.
76
- * Returns new connection with union of relationships.
77
- */
78
- mergeWith(others: DeploymentConnectionModel<M>[]): DeploymentConnectionModel<M>;
79
- /**
80
- * Merge with another connection, if it has the same source and target.
81
- * Returns new connection with union of relationships.
82
- */
83
- mergeWith(other: DeploymentConnectionModel<M>): DeploymentConnectionModel<M>;
84
- difference(other: DeploymentConnectionModel<M>): DeploymentConnectionModel<M>;
85
- intersect(other: DeploymentConnectionModel<M>): DeploymentConnectionModel<M>;
86
- equals(other: Connection): boolean;
87
- /**
88
- * Creates a clone of the current `DeploymentConnectionModel` instance with optional overrides.
89
- * if `null` is provided in overrides, the corresponding relation set will be empty.
90
- */
91
- update(overrides?: {
92
- model?: ReadonlySet<RelationshipModel<M>> | null;
93
- deployment?: ReadonlySet<DeploymentRelationModel<M>> | null;
94
- }): DeploymentConnectionModel<M>;
95
- }
96
-
97
- /**
98
- * Connection refers to any relationships between two elements,
99
- * both direct and implicit ones (between their nested elements).
100
- *
101
- * Merges relationships together to an single edge on the diagram.
102
- */
103
- declare class ConnectionModel<M extends AnyAux = AnyAux> implements Connection<ElementModel<M>, M['EdgeId']> {
104
- readonly source: ElementModel<M>;
105
- readonly target: ElementModel<M>;
106
- readonly relations: ReadonlySet<RelationshipModel<M>>;
107
- readonly id: M['EdgeId'];
108
- constructor(source: ElementModel<M>, target: ElementModel<M>, relations?: ReadonlySet<RelationshipModel<M>>);
109
- private _boundary;
110
- /**
111
- * Common ancestor of the source and target elements.
112
- * Represents the boundary of the connection.
113
- */
114
- get boundary(): ElementModel<M> | null;
115
- /**
116
- * Human readable expression of the connection
117
- * Mostly used for testing and debugging
118
- */
119
- get expression(): string;
120
- /**
121
- * Returns true if only includes relations between the source and target elements.
122
- */
123
- get isDirect(): boolean;
124
- /**
125
- * Returns true if includes relations between nested elements of the source and target elements.
126
- */
127
- get isImplicit(): boolean;
128
- get directRelations(): ReadonlySet<RelationshipModel<M>>;
129
- nonEmpty(): boolean;
130
- mergeWith(other: ConnectionModel<M>): ConnectionModel<M>;
131
- difference(other: ConnectionModel<M>): ConnectionModel<M>;
132
- intersect(other: ConnectionModel<M>): ConnectionModel<M>;
133
- equals(other: Connection): boolean;
134
- /**
135
- * Returns a new instance with the updated relations.
136
- *
137
- * @param relations - A readonly set of `RelationshipModel` instances representing the new relations.
138
- * @returns A new `ConnectionModel` instance with the updated relations.
139
- */
140
- update(relations: ReadonlySet<RelationshipModel<M>>): ConnectionModel<M>;
141
- [customInspectSymbol](depth: any, inspectOptions: any, inspect: any): string;
142
- toString(): string;
143
- /**
144
- * Creates a new connection with reversed direction (target becomes source and vice versa)
145
- * @param search - When true, attempts to find an existing connection between the reversed nodes
146
- */
147
- reversed(search?: boolean): ConnectionModel<M>;
148
- }
6
+ import '../shared/core.BH59D8Ji.js';
7
+ import '../shared/core.30yYKXcZ.js';
149
8
 
150
9
  /**
151
10
  * Check if connection is nested inside another connection
@@ -256,4 +115,4 @@ declare namespace find {
256
115
  declare function isDeploymentNode(model: DeploymentElementModel): model is DeploymentNodeModel;
257
116
  declare function isDeployedInstance(model: DeploymentElementModel): model is DeployedInstanceModel;
258
117
 
259
- export { AnyAux, Connection, ConnectionModel, DeployedInstanceModel, DeploymentConnectionModel, DeploymentElementModel, DeploymentNodeModel, DeploymentRelationModel, ElementModel, RelationshipModel, find$1 as deploymentConnection, differenceConnections, findAscendingConnections, findDeepestNestedConnection, findDescendantConnections, hasSameSource, hasSameSourceTarget, hasSameTarget, isAnyInOut, isDeployedInstance, isDeploymentNode, isIncoming, isNestedConnection, isOutgoing, mergeConnections, find as modelConnection, sortConnectionsByBoundaryHierarchy, sortDeepestFirst };
118
+ export { AnyAux, Connection, ConnectionModel, DeployedInstanceModel, DeploymentConnectionModel, DeploymentElementModel, DeploymentNodeModel, ElementModel, find$1 as deploymentConnection, differenceConnections, findAscendingConnections, findDeepestNestedConnection, findDescendantConnections, hasSameSource, hasSameSourceTarget, hasSameTarget, isAnyInOut, isDeployedInstance, isDeploymentNode, isIncoming, isNestedConnection, isOutgoing, mergeConnections, find as modelConnection, sortConnectionsByBoundaryHierarchy, sortDeepestFirst };
@@ -1 +1 @@
1
- export { C as Connection, f as ConnectionModel, F as DeployedInstanceModel, D as DeploymentConnectionModel, H as DeploymentNodeModel, I as DeploymentRelationModel, J as EdgeModel, E as ElementModel, b as LikeC4DeploymentModel, L as LikeC4Model, e as LikeC4ViewModel, N as NodeModel, R as RelationshipModel, g as deploymentConnection, h as differenceConnections, j as findAscendingConnections, k as findDeepestNestedConnection, m as findDescendantConnections, n as hasSameSource, o as hasSameSourceTarget, p as hasSameTarget, q as isAnyInOut, K as isDeployedInstance, M as isDeploymentNode, s as isIncoming, v as isNestedConnection, x as isOutgoing, y as mergeConnections, z as modelConnection, A as sortConnectionsByBoundaryHierarchy, B as sortDeepestFirst } from '../shared/core.CVZbbLy6.mjs';
1
+ export { C as Connection, b as ConnectionModel, D as DeployedInstanceModel, e as DeploymentConnectionModel, f as DeploymentNodeModel, g as DeploymentRelationModel, E as EdgeModel, h as ElementModel, j as LikeC4DeploymentModel, L as LikeC4Model, k as LikeC4ViewModel, N as NodeModel, R as RelationshipModel, m as deploymentConnection, n as differenceConnections, o as findAscendingConnections, p as findDeepestNestedConnection, q as findDescendantConnections, s as hasSameSource, v as hasSameSourceTarget, x as hasSameTarget, y as isAnyInOut, K as isDeployedInstance, M as isDeploymentNode, z as isIncoming, A as isNestedConnection, B as isOutgoing, F as mergeConnections, H as modelConnection, I as sortConnectionsByBoundaryHierarchy, J as sortDeepestFirst } from '../shared/core.CcjDE4j7.mjs';