@likec4/diagram 1.57.0 → 1.58.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 (155) hide show
  1. package/dist/adhoc-editor/EditorPanel.d.ts +1 -1
  2. package/dist/adhoc-editor/ElementsTree.d.ts +1 -1
  3. package/dist/adhoc-editor/LikeC4AdHocViewEditor.d.ts +1 -1
  4. package/dist/adhoc-editor/components/Tree.d.ts +5 -5
  5. package/dist/adhoc-editor/state/ActorProvider.d.ts +1 -1
  6. package/dist/adhoc-editor/state/panel.d.ts +1 -1
  7. package/dist/adhoc-editor/viewrules/ViewRulesPanel.d.ts +1 -1
  8. package/dist/base/BaseXYFlow.d.ts +1 -1
  9. package/dist/base-primitives/Markdown.d.ts +1 -1
  10. package/dist/base-primitives/NodeHandles.d.ts +1 -1
  11. package/dist/base-primitives/compound/CompoundActionButton.d.ts +1 -1
  12. package/dist/base-primitives/compound/CompoundDetailsButton.d.ts +1 -1
  13. package/dist/base-primitives/compound/CompoundNodeContainer.d.ts +1 -1
  14. package/dist/base-primitives/compound/CompoundTitle.d.ts +1 -1
  15. package/dist/base-primitives/compound/actionbtns.css.d.ts +1 -1
  16. package/dist/base-primitives/edge/EdgeActionButton.d.ts +1 -1
  17. package/dist/base-primitives/edge/EdgeContainer.d.ts +1 -1
  18. package/dist/base-primitives/edge/EdgeLabelContainer.d.ts +1 -1
  19. package/dist/base-primitives/edge/EdgeMarkers.d.ts +8 -8
  20. package/dist/base-primitives/element/ElementActionButtons.d.ts +1 -1
  21. package/dist/base-primitives/element/ElementData.d.ts +2 -2
  22. package/dist/base-primitives/element/ElementDetailsButton.d.ts +1 -1
  23. package/dist/base-primitives/element/ElementShape.d.ts +1 -1
  24. package/dist/base-primitives/element/ElementTags.d.ts +1 -1
  25. package/dist/base-primitives/element/ElementTags.js +1 -3
  26. package/dist/components/ErrorFallback.d.ts +2 -2
  27. package/dist/components/NavigationPanel.d.ts +2 -2
  28. package/dist/components/PortalToContainer.d.ts +1 -1
  29. package/dist/components/RootContainer.d.ts +1 -1
  30. package/dist/components/SearchControl.d.ts +2 -2
  31. package/dist/components/ViewNotFound.d.ts +2 -2
  32. package/dist/context/CurrentViewModelProvider.d.ts +1 -1
  33. package/dist/context/DefaultMantineProvider.d.ts +1 -1
  34. package/dist/context/DiagramEventHandlers.d.ts +1 -1
  35. package/dist/context/EnsureMantine.d.ts +1 -1
  36. package/dist/context/FramerMotionConfig.d.ts +3 -3
  37. package/dist/context/FramerMotionConfig.js +2 -2
  38. package/dist/context/IconRenderer.d.ts +2 -2
  39. package/dist/context/IconRenderer.js +32 -12
  40. package/dist/context/LikeC4ModelContext.d.ts +1 -1
  41. package/dist/context/ShadowRootContext.d.ts +3 -0
  42. package/dist/context/ShadowRootContext.js +5 -0
  43. package/dist/context/TagStylesContext.d.ts +2 -1
  44. package/dist/context/TagStylesContext.js +5 -7
  45. package/dist/editor/LikeC4EditorProvider.d.ts +2 -2
  46. package/dist/editor/actor/actions.d.ts +74 -15
  47. package/dist/editor/actor/actions.js +91 -25
  48. package/dist/editor/actor/hotkey.d.ts +1 -1
  49. package/dist/editor/actor/hotkey.js +7 -0
  50. package/dist/editor/actor/machine.d.ts +1 -1
  51. package/dist/editor/actor/machine.js +1 -0
  52. package/dist/editor/actor/setup.d.ts +10 -3
  53. package/dist/editor/actor/setup.js +3 -2
  54. package/dist/editor/actor/state.editor.d.ts +64 -14
  55. package/dist/editor/actor/state.editor.js +12 -11
  56. package/dist/editor/actor/state.sync-queue.d.ts +283 -91
  57. package/dist/editor/actor/state.sync-queue.js +93 -56
  58. package/dist/editor/actor/types.d.ts +6 -1
  59. package/dist/editor/actor/types.js +1 -1
  60. package/dist/editor/useEditorActorLogic.js +14 -2
  61. package/dist/hooks/useEditorActor.d.ts +5 -0
  62. package/dist/hooks/useEditorActor.js +3 -2
  63. package/dist/index.d.ts +2 -0
  64. package/dist/index.js +3 -1
  65. package/dist/likec4diagram/DiagramUI.d.ts +1 -1
  66. package/dist/likec4diagram/DiagramXYFlow.js +15 -3
  67. package/dist/likec4diagram/custom/edges/EdgeDrifts.d.ts +1 -1
  68. package/dist/likec4diagram/custom/edges/RelationshipEdge.js +127 -14
  69. package/dist/likec4diagram/custom/edges/SequenceStepEdge.d.ts +1 -1
  70. package/dist/likec4diagram/custom/edges/edges.css.d.ts +1 -0
  71. package/dist/likec4diagram/custom/edges/edges.css.js +5 -1
  72. package/dist/likec4diagram/custom/nodes/CompoundActions.d.ts +1 -1
  73. package/dist/likec4diagram/custom/nodes/ElementActions.d.ts +2 -2
  74. package/dist/likec4diagram/custom/nodes/NodeDrifts.d.ts +1 -1
  75. package/dist/likec4diagram/custom/nodes/NodeNotes.d.ts +1 -1
  76. package/dist/likec4diagram/custom/nodes/SequenceActorNode.d.ts +2 -2
  77. package/dist/likec4diagram/custom/nodes/nodes.d.ts +7 -7
  78. package/dist/likec4diagram/custom/nodes/toolbar/ColorButton.d.ts +3 -3
  79. package/dist/likec4diagram/custom/nodes/toolbar/CompoundToolbar.d.ts +2 -2
  80. package/dist/likec4diagram/custom/nodes/toolbar/ElementToolbar.d.ts +2 -2
  81. package/dist/likec4diagram/custom/nodes/toolbar/Toolbar.d.ts +1 -1
  82. package/dist/likec4diagram/custom/nodes/toolbar/_shared.d.ts +3 -3
  83. package/dist/likec4diagram/relationship-popover/RelationshipPopover.d.ts +1 -1
  84. package/dist/likec4diagram/relationship-popover/components.d.ts +2 -2
  85. package/dist/likec4diagram/state/DiagramActorProvider.d.ts +1 -1
  86. package/dist/likec4diagram/state/createViewChange.js +1 -0
  87. package/dist/likec4diagram/state/machine.actions.js +3 -2
  88. package/dist/likec4diagram/types.d.ts +2 -0
  89. package/dist/likec4diagram/ui/LayoutDriftFrame.d.ts +1 -1
  90. package/dist/likec4diagram/ui/notation/NotationPanel.d.ts +1 -1
  91. package/dist/likec4diagram/xyflow-diagram/diagram-view.js +4 -2
  92. package/dist/likec4diagram/xyflow-sequence/sequence-layout.js +1 -0
  93. package/dist/navigationpanel/NavigationPanel.d.ts +1 -1
  94. package/dist/navigationpanel/NavigationPanelControls.d.ts +1 -1
  95. package/dist/navigationpanel/NavigationPanelDropdown.d.ts +1 -1
  96. package/dist/navigationpanel/NavigationPanelDropdown.js +2 -2
  97. package/dist/navigationpanel/_common.d.ts +2 -2
  98. package/dist/navigationpanel/comparepanel/CompareActionsMenu.d.ts +1 -1
  99. package/dist/navigationpanel/comparepanel/ComparePanel.d.ts +1 -1
  100. package/dist/navigationpanel/comparepanel/ComparePanelControls.d.ts +1 -1
  101. package/dist/navigationpanel/comparepanel/DriftsSummary.d.ts +1 -1
  102. package/dist/navigationpanel/comparepanel/LayoutTypeSwitcher.d.ts +1 -1
  103. package/dist/navigationpanel/controls/DetailsControls.d.ts +1 -1
  104. package/dist/navigationpanel/controls/LayoutWarning.d.ts +1 -1
  105. package/dist/navigationpanel/controls/LogoButton.d.ts +1 -1
  106. package/dist/navigationpanel/controls/NavigationButtons.d.ts +1 -1
  107. package/dist/navigationpanel/controls/OpenSource.d.ts +1 -1
  108. package/dist/navigationpanel/controls/SearchControl.d.ts +1 -1
  109. package/dist/navigationpanel/controls/ToggleReadonly.d.ts +1 -1
  110. package/dist/navigationpanel/editorpanel/CenterCamera.d.ts +1 -1
  111. package/dist/navigationpanel/editorpanel/ChangeAutoLayoutButton.d.ts +1 -1
  112. package/dist/navigationpanel/editorpanel/EditorPanel.d.ts +1 -1
  113. package/dist/navigationpanel/editorpanel/ManualLayoutToolsButton.d.ts +1 -1
  114. package/dist/navigationpanel/editorpanel/ToggleReadonly.d.ts +1 -1
  115. package/dist/navigationpanel/styles.css.d.ts +1 -1
  116. package/dist/navigationpanel/walkthrough/ActiveWalkthroughControls.d.ts +1 -1
  117. package/dist/navigationpanel/walkthrough/DynamicViewControls.d.ts +1 -1
  118. package/dist/navigationpanel/walkthrough/WalkthroughPanel.d.ts +1 -1
  119. package/dist/overlays/Overlays.d.ts +1 -1
  120. package/dist/overlays/element-details/ElementDetails.d.ts +1 -1
  121. package/dist/overlays/element-details/ElementDetailsCard.d.ts +1 -1
  122. package/dist/overlays/element-details/MetadataValue.d.ts +2 -2
  123. package/dist/overlays/element-details/TabPanelRelationships.d.ts +1 -1
  124. package/dist/overlays/element-details/TabPanelStructure.d.ts +2 -2
  125. package/dist/overlays/relationship-details/RelationshipDetails.d.ts +1 -1
  126. package/dist/overlays/relationship-details/SelectEdge.d.ts +1 -1
  127. package/dist/overlays/relationship-details/custom/ElementActions.d.ts +1 -1
  128. package/dist/overlays/relationship-details/custom/nodeTypes.d.ts +4 -4
  129. package/dist/overlays/relationships-browser/RelationshipsBrowser.d.ts +1 -1
  130. package/dist/overlays/relationships-browser/SelectElement.d.ts +1 -1
  131. package/dist/overlays/relationships-browser/custom/ElementActions.d.ts +1 -1
  132. package/dist/overlays/relationships-browser/custom/EmptyNode.d.ts +1 -1
  133. package/dist/overlays/relationships-browser/custom/nodeTypes.d.ts +4 -4
  134. package/dist/projects-overview/ProjectsOverview.d.ts +1 -1
  135. package/dist/projects-overview/custom/nodeTypes.d.ts +1 -1
  136. package/dist/projects-overview/panel/ProjectsOverviewPanel.d.ts +1 -1
  137. package/dist/search/Search.d.ts +1 -1
  138. package/dist/search/XStateSearchAdapter.d.ts +1 -1
  139. package/dist/search/components/ElementsColumn.d.ts +1 -1
  140. package/dist/search/components/PickView.d.ts +1 -1
  141. package/dist/search/components/SearchByTags.d.ts +1 -1
  142. package/dist/search/components/SearchInput.d.ts +1 -1
  143. package/dist/search/components/ViewsColum.d.ts +3 -3
  144. package/dist/search/components/_shared.css.d.ts +1 -1
  145. package/dist/shadowroot/ShadowRoot.d.ts +1 -2
  146. package/dist/shadowroot/ShadowRoot.js +27 -21
  147. package/dist/shadowroot/index.d.ts +1 -0
  148. package/dist/shadowroot/{styles.css.d.ts → styles.d.ts} +3 -2
  149. package/dist/shadowroot/{styles.css.js → styles.js} +9 -8
  150. package/dist/styles2.js +1 -1
  151. package/package.json +27 -28
  152. package/panda.buildinfo.json +4 -7
  153. package/styles-min.css +1 -1
  154. package/styles-xyflow.css +1 -1
  155. package/styles.css +1 -1
@@ -1,4 +1,4 @@
1
1
  import { Types } from '../../types';
2
2
  type CompoundActionsProps = Types.NodeProps<'compound-deployment' | 'compound-element'>;
3
- export declare const CompoundActions: (props: CompoundActionsProps) => import("react/jsx-runtime").JSX.Element | null;
3
+ export declare const CompoundActions: (props: CompoundActionsProps) => import("react").JSX.Element | null;
4
4
  export {};
@@ -53,7 +53,7 @@ export type ElementActionsProps = SimplifyDeep<{
53
53
  * />
54
54
  * ```
55
55
  */
56
- export declare function ElementActions({ extraButtons, ...props }: ElementActionsProps): import("react/jsx-runtime").JSX.Element;
56
+ export declare function ElementActions({ extraButtons, ...props }: ElementActionsProps): import("react").JSX.Element;
57
57
  export type DeploymentElementActionsProps = SimplifyDeep<{
58
58
  selected?: boolean;
59
59
  data: Pick<Types.DeploymentElementNodeData, 'id' | 'modelFqn' | 'navigateTo'> & BaseNodeData;
@@ -83,5 +83,5 @@ export type DeploymentElementActionsProps = SimplifyDeep<{
83
83
  * />
84
84
  * ```
85
85
  */
86
- export declare const DeploymentElementActions: ({ extraButtons, ...props }: DeploymentElementActionsProps) => import("react/jsx-runtime").JSX.Element;
86
+ export declare const DeploymentElementActions: ({ extraButtons, ...props }: DeploymentElementActionsProps) => import("react").JSX.Element;
87
87
  export {};
@@ -2,4 +2,4 @@ import { Types } from '../../types';
2
2
  export type NodeDriftsProps = {
3
3
  nodeProps: Types.NodeProps;
4
4
  };
5
- export declare function NodeDrifts({ nodeProps: { data }, }: NodeDriftsProps): import("react/jsx-runtime").JSX.Element | null;
5
+ export declare function NodeDrifts({ nodeProps: { data }, }: NodeDriftsProps): import("react").JSX.Element | null;
@@ -2,5 +2,5 @@ import { BaseNodePropsWithData } from '../../../base/types';
2
2
  import { Types } from '../../types';
3
3
  type RequiredData = Pick<Types.NodeData, 'id' | 'notes' | 'width' | 'height' | 'x' | 'y'>;
4
4
  export type NodeNotesProps = BaseNodePropsWithData<RequiredData>;
5
- export declare function NodeNotes({ data }: NodeNotesProps): import("react/jsx-runtime").JSX.Element | null;
5
+ export declare function NodeNotes({ data }: NodeNotesProps): import("react").JSX.Element | null;
6
6
  export {};
@@ -1,3 +1,3 @@
1
1
  import { Types } from '../../types';
2
- export declare function SequenceActorNode(props: Types.NodeProps<'seq-actor'>): import("react/jsx-runtime").JSX.Element;
3
- export declare function SequenceParallelArea(props: Types.NodeProps<'seq-parallel'>): import("react/jsx-runtime").JSX.Element;
2
+ export declare function SequenceActorNode(props: Types.NodeProps<'seq-actor'>): import("react").JSX.Element;
3
+ export declare function SequenceParallelArea(props: Types.NodeProps<'seq-parallel'>): import("react").JSX.Element;
@@ -7,13 +7,13 @@ export declare function ElementDetailsButtonWithHandler(props: {
7
7
  data: BaseNodeData & {
8
8
  modelFqn?: Fqn | null | undefined;
9
9
  };
10
- }): import("react/jsx-runtime").JSX.Element | null;
11
- export declare function CompoundDetailsButtonWithHandler(props: Types.NodeProps<'compound-deployment' | 'compound-element'>): import("react/jsx-runtime").JSX.Element | null;
10
+ }): import("react").JSX.Element | null;
11
+ export declare function CompoundDetailsButtonWithHandler(props: Types.NodeProps<'compound-deployment' | 'compound-element'>): import("react").JSX.Element | null;
12
12
  /**
13
13
  * Renders an element node.
14
14
  */
15
- export declare function ElementNode(props: Types.NodeProps<'element'>): import("react/jsx-runtime").JSX.Element;
16
- export declare function DeploymentNode(props: Types.NodeProps<'deployment'>): import("react/jsx-runtime").JSX.Element;
17
- export declare function CompoundElementNode(props: Types.NodeProps<'compound-element'>): import("react/jsx-runtime").JSX.Element;
18
- export declare function CompoundDeploymentNode(props: Types.NodeProps<'compound-deployment'>): import("react/jsx-runtime").JSX.Element;
19
- export declare function ViewGroupNode(props: Types.NodeProps<'view-group'>): import("react/jsx-runtime").JSX.Element;
15
+ export declare function ElementNode(props: Types.NodeProps<'element'>): import("react").JSX.Element;
16
+ export declare function DeploymentNode(props: Types.NodeProps<'deployment'>): import("react").JSX.Element;
17
+ export declare function CompoundElementNode(props: Types.NodeProps<'compound-element'>): import("react").JSX.Element;
18
+ export declare function CompoundDeploymentNode(props: Types.NodeProps<'compound-deployment'>): import("react").JSX.Element;
19
+ export declare function ViewGroupNode(props: Types.NodeProps<'view-group'>): import("react").JSX.Element;
@@ -8,15 +8,15 @@ type ColorButtonProps = Omit<PopoverProps, 'onChange'> & {
8
8
  onColorPreview: (color: ThemeColor | null) => void;
9
9
  onChange: OnStyleChange;
10
10
  };
11
- export declare function ColorButton({ elementColor, elementOpacity, onColorPreview, isOpacityEditable, onChange, ...props }: ColorButtonProps): import("react/jsx-runtime").JSX.Element;
11
+ export declare function ColorButton({ elementColor, elementOpacity, onColorPreview, isOpacityEditable, onChange, ...props }: ColorButtonProps): import("react").JSX.Element;
12
12
  export declare function ColorSwatches({ theme, elementColor, onColorPreview, onChange, }: {
13
13
  theme: LikeC4Theme;
14
14
  elementColor: ThemeColor;
15
15
  onColorPreview: (color: ThemeColor | null) => void;
16
16
  onChange: (color: ThemeColor) => void;
17
- }): import("react/jsx-runtime").JSX.Element;
17
+ }): import("react").JSX.Element;
18
18
  export declare function OpacityOption({ elementOpacity, onOpacityChange, }: {
19
19
  elementOpacity: number | undefined;
20
20
  onOpacityChange: (opacity: number) => void;
21
- }): import("react/jsx-runtime").JSX.Element;
21
+ }): import("react").JSX.Element;
22
22
  export {};
@@ -1,3 +1,3 @@
1
1
  import { Types } from '../../../types';
2
- export declare function CompoundElementToolbar(props: Types.NodeProps<'compound-element'>): import("react/jsx-runtime").JSX.Element;
3
- export declare function CompoundDeploymentToolbar(props: Types.NodeProps<'compound-deployment'>): import("react/jsx-runtime").JSX.Element;
2
+ export declare function CompoundElementToolbar(props: Types.NodeProps<'compound-element'>): import("react").JSX.Element;
3
+ export declare function CompoundDeploymentToolbar(props: Types.NodeProps<'compound-deployment'>): import("react").JSX.Element;
@@ -4,5 +4,5 @@ export declare function ElementToolbar(props: Types.NodeProps<'element' | 'seq-a
4
4
  data: {
5
5
  modelFqn: Fqn;
6
6
  };
7
- }): import("react/jsx-runtime").JSX.Element;
8
- export declare function DeploymentElementToolbar(props: Types.NodeProps<'deployment'>): import("react/jsx-runtime").JSX.Element;
7
+ }): import("react").JSX.Element;
8
+ export declare function DeploymentElementToolbar(props: Types.NodeProps<'deployment'>): import("react").JSX.Element;
@@ -5,4 +5,4 @@ export type ToolbarProps = Omit<NodeToolbarProps, 'title'> & {
5
5
  nodeProps: BaseNodeProps;
6
6
  title: ReactNode;
7
7
  };
8
- export declare function Toolbar({ title, children, nodeProps, ...props }: ToolbarProps): import("react/jsx-runtime").JSX.Element | null;
8
+ export declare function Toolbar({ title, children, nodeProps, ...props }: ToolbarProps): import("react").JSX.Element | null;
@@ -6,13 +6,13 @@ import { TooltipProps, PlaceholderPolymorphicProps } from '@mantine/core';
6
6
  export declare const Tooltip: NamedExoticComponent< TooltipProps & RefAttributes<HTMLDivElement> & PlaceholderPolymorphicProps>;
7
7
  export declare function BrowseRelationshipsButton({ fqn }: {
8
8
  fqn: Fqn;
9
- }): import("react/jsx-runtime").JSX.Element;
9
+ }): import("react").JSX.Element;
10
10
  export declare function GoToSourceButton(props: MergeExclusive<{
11
11
  elementId: Fqn;
12
12
  }, {
13
13
  deploymentId: DeploymentFqn;
14
- }>): import("react/jsx-runtime").JSX.Element | null;
14
+ }>): import("react").JSX.Element | null;
15
15
  export declare function BorderStyleOption({ elementBorderStyle, onChange, }: {
16
16
  elementBorderStyle: BorderStyle | undefined;
17
17
  onChange: OnStyleChange;
18
- }): import("react/jsx-runtime").JSX.Element;
18
+ }): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const RelationshipPopover: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element | null>;
2
+ export declare const RelationshipPopover: MemoExoticComponent<() => import("react").JSX.Element | null>;
@@ -1,7 +1,7 @@
1
1
  import { Color } from '@likec4/core/types';
2
2
  import { PropsWithChildren } from 'react';
3
- import { StyledComponent } from '@likec4/styles';
3
+ import { StyledComponent } from '../../../styled-system';
4
4
  export declare const Endpoint: ({ children, likec4color }: PropsWithChildren<{
5
5
  likec4color: Color;
6
- }>) => import("react/jsx-runtime").JSX.Element;
6
+ }>) => import("react").JSX.Element;
7
7
  export declare const RelationshipTitle: StyledComponent<"div", {}>;
@@ -11,4 +11,4 @@ export declare function DiagramActorProvider({ id, view, zoomable, pannable, nod
11
11
  fitViewPadding: ViewPaddings;
12
12
  where?: WhereOperator | null;
13
13
  dynamicViewVariant?: DynamicViewDisplayVariant | undefined;
14
- }>): import("react/jsx-runtime").JSX.Element;
14
+ }>): import("react").JSX.Element;
@@ -50,6 +50,7 @@ function createViewChange(parentContext) {
50
50
  height: Math.round(data.labelBBox.height)
51
51
  };
52
52
  else _updated.labelBBox = null;
53
+ if (data.isLabelCustomized !== void 0) _updated.isLabelCustomized = data.isLabelCustomized;
53
54
  if (hasAtLeast(controlPoints, 1)) _updated.controlPoints = map(controlPoints, (v) => ({
54
55
  x: Math.round(v.x),
55
56
  y: Math.round(v.y)
@@ -207,8 +207,9 @@ var emitEdgeClick = () => machine.emit(({ context, event }) => {
207
207
  };
208
208
  });
209
209
  var triggerChange = (viewChange) => machine.enqueueActions(({ event, enqueue }) => {
210
- let change = viewChange;
211
- if (!change) {
210
+ let change;
211
+ if (viewChange) change = { ...viewChange };
212
+ else {
212
213
  assertEvent(event, "trigger.change");
213
214
  change = event.change;
214
215
  }
@@ -113,12 +113,14 @@ export declare namespace Types {
113
113
  type RelationshipEdgeData = Simplify<BaseEdgeData & NonOptional<Pick<DiagramEdge, 'id' | 'label' | 'labelBBox' | 'technology' | 'points' | 'dir' | 'color' | 'line' | 'head' | 'tail' | 'navigateTo' | 'astPath' | 'drifts'>> & {
114
114
  notes: MarkdownOrString | null;
115
115
  labelXY: XYPosition | null;
116
+ isLabelCustomized?: boolean | undefined;
116
117
  controlPoints: XYPosition[] | undefined | null;
117
118
  }>;
118
119
  type SequenceStepEdgeData = Simplify<BaseEdgeData & NonOptional<Pick<DiagramEdge, 'id' | 'label' | 'technology' | 'points' | 'dir' | 'color' | 'line' | 'head' | 'tail' | 'navigateTo' | 'astPath' | 'drifts'>> & {
119
120
  notes: MarkdownOrString | null;
120
121
  labelXY: XYPosition | null;
121
122
  labelBBox: BBox;
123
+ isLabelCustomized?: boolean | undefined;
122
124
  controlPoints: XYPosition[] | undefined | null;
123
125
  }>;
124
126
  type RelationshipEdge = BaseEdge<RelationshipEdgeData, 'relationship'>;
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const LayoutDriftFrame: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const LayoutDriftFrame: MemoExoticComponent<() => import("react").JSX.Element>;
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const NotationPanel: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element | null>;
2
+ export declare const NotationPanel: MemoExoticComponent<() => import("react").JSX.Element | null>;
@@ -17,6 +17,7 @@ function diagramToXY(opts) {
17
17
  const xyedges = [];
18
18
  const nodeLookup = /* @__PURE__ */ new Map();
19
19
  const viewLayoutDir = view.autoLayout?.direction ?? "TB";
20
+ const deletable = view._type !== "dynamic";
20
21
  const queue = Queue.from(view.nodes.reduce((acc, node) => {
21
22
  nodeLookup.set(node.id, node);
22
23
  if (!node.parent) acc.push({
@@ -56,7 +57,7 @@ function diagramToXY(opts) {
56
57
  }
57
58
  const base = {
58
59
  id: ns + node.id,
59
- deletable: false,
60
+ deletable,
60
61
  position,
61
62
  zIndex: isCompound ? ZIndexes.Compound : ZIndexes.Element,
62
63
  style: {
@@ -188,7 +189,7 @@ function diagramToXY(opts) {
188
189
  target: ns + target,
189
190
  zIndex: ZIndexes.Edge,
190
191
  hidden: !visiblePredicate(edge),
191
- deletable: false,
192
+ deletable,
192
193
  data: {
193
194
  id: edge.id,
194
195
  label: edge.label,
@@ -197,6 +198,7 @@ function diagramToXY(opts) {
197
198
  navigateTo: edge.navigateTo,
198
199
  controlPoints: edge.controlPoints ?? null,
199
200
  labelBBox: edge.labelBBox ?? null,
201
+ isLabelCustomized: edge.isLabelCustomized ?? false,
200
202
  labelXY: null,
201
203
  points: edge.points,
202
204
  color: edge.color ?? "gray",
@@ -174,6 +174,7 @@ function toSeqStepEdge({ id, labelBBox, sourceHandle, targetHandle }, edge, curr
174
174
  astPath: edge.astPath,
175
175
  drifts: edge.drifts ?? null
176
176
  },
177
+ deletable: false,
177
178
  selectable: true,
178
179
  focusable: false,
179
180
  zIndex: 20,
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const NavigationPanel: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const NavigationPanel: MemoExoticComponent<() => import("react").JSX.Element>;
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const NavigationPanelControls: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const NavigationPanelControls: MemoExoticComponent<() => import("react").JSX.Element>;
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const NavigationPanelDropdown: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const NavigationPanelDropdown: MemoExoticComponent<() => import("react").JSX.Element>;
@@ -12,7 +12,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
12
12
  import { useMountEffect } from "@react-hookz/web";
13
13
  import { deepEqual, shallowEqual } from "fast-equals";
14
14
  import { isArray, isEmpty, pipe, sort } from "remeda";
15
- import { Breadcrumbs, Button, Divider, Highlight, Input, PopoverDropdown, ScrollAreaAutosize, UnstyledButton, createScopedKeydownHandler, rem } from "@mantine/core";
15
+ import { Breadcrumbs, Button, Divider, Highlight, Input, PopoverDropdown, ScrollAreaAutosize, UnstyledButton, createScopedKeydownHandler } from "@mantine/core";
16
16
  import { compareNaturalHierarchically, ifilter, ifirst, nonexhaustive, toArray } from "@likec4/core/utils";
17
17
  import { useSelector } from "@xstate/react";
18
18
  import { useThrottledCallback, useUncontrolled } from "@mantine/hooks";
@@ -342,7 +342,7 @@ function SearchInput(props) {
342
342
  size: "xs",
343
343
  placeholder: "Search by title or id",
344
344
  variant: "unstyled",
345
- height: rem(26),
345
+ height: 26,
346
346
  value: _value,
347
347
  onKeyDown: scopedKeydownHandler,
348
348
  onChange: (e) => handleChange(e.currentTarget.value),
@@ -1,9 +1,9 @@
1
- import { NavigationPanelActionIconVariant } from '@likec4/styles/recipes';
1
+ import { NavigationPanelActionIconVariant } from '../../styled-system/recipes';
2
2
  import { ActionIconProps, TooltipProps, PlaceholderPolymorphicProps, BreadcrumbsProps } from '@mantine/core';
3
3
  import { HTMLMotionProps } from 'motion/react';
4
4
  import { NamedExoticComponent, RefAttributes, ForwardRefExoticComponent } from 'react';
5
5
  export declare const Tooltip: NamedExoticComponent< TooltipProps & RefAttributes<HTMLDivElement> & PlaceholderPolymorphicProps>;
6
- export declare const BreadcrumbsSeparator: () => import("react/jsx-runtime").JSX.Element;
6
+ export declare const BreadcrumbsSeparator: () => import("react").JSX.Element;
7
7
  export declare const Breadcrumbs: NamedExoticComponent< BreadcrumbsProps & RefAttributes<HTMLDivElement> & PlaceholderPolymorphicProps>;
8
8
  export type PanelActionIconProps = Partial<NavigationPanelActionIconVariant> & Omit<ActionIconProps, keyof NavigationPanelActionIconVariant> & Omit<HTMLMotionProps<'button'>, keyof NavigationPanelActionIconVariant>;
9
9
  export declare const PanelActionIcon: ForwardRefExoticComponent<Omit<PanelActionIconProps, "ref"> & RefAttributes<HTMLButtonElement>>;
@@ -2,4 +2,4 @@ export declare function CompareActionsMenu({ disabled, onApplyLatestToManual, on
2
2
  disabled?: boolean;
3
3
  onApplyLatestToManual?: undefined | (() => void);
4
4
  onResetManualLayout: () => void;
5
- }): import("react/jsx-runtime").JSX.Element;
5
+ }): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const ComparePanel: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const ComparePanel: MemoExoticComponent<() => import("react").JSX.Element>;
@@ -1 +1 @@
1
- export declare function ComparePanelControls(): import("react/jsx-runtime").JSX.Element;
1
+ export declare function ComparePanelControls(): import("react").JSX.Element;
@@ -1 +1 @@
1
- export declare function DriftsSummary(): import("react/jsx-runtime").JSX.Element | null;
1
+ export declare function DriftsSummary(): import("react").JSX.Element | null;
@@ -2,4 +2,4 @@ import { LayoutType } from '@likec4/core';
2
2
  export declare function LayoutTypeSwitcher({ value, onChange, }: {
3
3
  value: LayoutType;
4
4
  onChange: (layout: LayoutType) => void;
5
- }): import("react/jsx-runtime").JSX.Element;
5
+ }): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { PopoverProps } from '@mantine/core';
2
- export declare const DetailsControls: (props: PopoverProps) => import("react/jsx-runtime").JSX.Element;
2
+ export declare const DetailsControls: (props: PopoverProps) => import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const LayoutWarning: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const LayoutWarning: MemoExoticComponent<() => import("react").JSX.Element>;
@@ -1 +1 @@
1
- export declare const LogoButton: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const LogoButton: () => import("react").JSX.Element;
@@ -1 +1 @@
1
- export declare const NavigationButtons: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const NavigationButtons: () => import("react").JSX.Element;
@@ -1 +1 @@
1
- export declare const OpenSource: () => import("react/jsx-runtime").JSX.Element | null;
1
+ export declare const OpenSource: () => import("react").JSX.Element | null;
@@ -1 +1 @@
1
- export declare function SearchControl(): import("react/jsx-runtime").JSX.Element;
1
+ export declare function SearchControl(): import("react").JSX.Element;
@@ -1 +1 @@
1
- export declare const ToggleReadonly: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const ToggleReadonly: () => import("react").JSX.Element;
@@ -1 +1 @@
1
- export declare const CenterCamera: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const CenterCamera: () => import("react").JSX.Element;
@@ -1 +1 @@
1
- export declare const ChangeAutoLayoutButton: () => import("react/jsx-runtime").JSX.Element | null;
1
+ export declare const ChangeAutoLayoutButton: () => import("react").JSX.Element | null;
@@ -1 +1 @@
1
- export declare function EditorPanel(): import("react/jsx-runtime").JSX.Element;
1
+ export declare function EditorPanel(): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const ManualLayoutToolsButton: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const ManualLayoutToolsButton: MemoExoticComponent<() => import("react").JSX.Element>;
@@ -1 +1 @@
1
- export declare const ToggleReadonly: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const ToggleReadonly: () => import("react").JSX.Element;
@@ -1,4 +1,4 @@
1
- import { RecipeRuntimeFn } from '@likec4/styles';
1
+ import { RecipeRuntimeFn } from '../../styled-system';
2
2
  export declare const breadcrumbTitle: RecipeRuntimeFn<{
3
3
  truncate: {
4
4
  true: {
@@ -1 +1 @@
1
- export declare function ActiveWalkthroughControls(): import("react/jsx-runtime").JSX.Element;
1
+ export declare function ActiveWalkthroughControls(): import("react").JSX.Element;
@@ -289,4 +289,4 @@ export declare const TriggerWalkthroughButton: ForwardRefExoticComponent<Omit<Bu
289
289
  formNoValidate?: boolean | undefined;
290
290
  formTarget?: string | undefined;
291
291
  } & MotionProps, "ref"> & RefAttributes<HTMLButtonElement>>;
292
- export declare function DynamicViewControls(): import("react/jsx-runtime").JSX.Element;
292
+ export declare function DynamicViewControls(): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const WalkthroughPanel: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const WalkthroughPanel: MemoExoticComponent<() => import("react").JSX.Element>;
@@ -1,4 +1,4 @@
1
1
  import { OverlaysActorRef } from './overlaysActor';
2
2
  export declare function Overlays({ overlaysActorRef }: {
3
3
  overlaysActorRef: OverlaysActorRef;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): import("react").JSX.Element;
@@ -3,4 +3,4 @@ export type ElementDetailsProps = {
3
3
  actorRef: ElementDetailsActorRef;
4
4
  onClose: () => void;
5
5
  };
6
- export declare function ElementDetails({ actorRef, onClose, }: ElementDetailsProps): import("react/jsx-runtime").JSX.Element;
6
+ export declare function ElementDetails({ actorRef, onClose, }: ElementDetailsProps): import("react").JSX.Element;
@@ -7,5 +7,5 @@ type ElementDetailsCardProps = {
7
7
  onClose: () => void;
8
8
  fqn: Fqn;
9
9
  };
10
- export declare function ElementDetailsCard({ viewId, fromNode, rectFromNode, fqn, onClose, }: ElementDetailsCardProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function ElementDetailsCard({ viewId, fromNode, rectFromNode, fqn, onClose, }: ElementDetailsCardProps): import("react").JSX.Element;
11
11
  export {};
@@ -1,10 +1,10 @@
1
1
  import { ReactNode } from 'react';
2
2
  export declare function MetadataProvider({ children }: {
3
3
  children: ReactNode;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): import("react").JSX.Element;
5
5
  interface MetadataValueProps {
6
6
  label: string;
7
7
  value: string | string[];
8
8
  }
9
- export declare function MetadataValue({ label, value }: MetadataValueProps): import("react/jsx-runtime").JSX.Element;
9
+ export declare function MetadataValue({ label, value }: MetadataValueProps): import("react").JSX.Element;
10
10
  export {};
@@ -3,5 +3,5 @@ type RelationshipsTabPanelProps = {
3
3
  node: LikeC4Model.Node | null;
4
4
  element: LikeC4Model.Element;
5
5
  };
6
- export declare function TabPanelRelationships({ node, element, }: RelationshipsTabPanelProps): import("react/jsx-runtime").JSX.Element;
6
+ export declare function TabPanelRelationships({ node, element, }: RelationshipsTabPanelProps): import("react").JSX.Element;
7
7
  export {};
@@ -20,6 +20,6 @@ type TabPanelStructureProps = {
20
20
  export declare const ElementLabel: ({ element, }: {
21
21
  element: LikeC4Model.Element;
22
22
  type: "ancestor" | "current" | "descedant";
23
- }) => import("react/jsx-runtime").JSX.Element;
24
- export declare function TabPanelStructure({ element, }: TabPanelStructureProps): import("react/jsx-runtime").JSX.Element;
23
+ }) => import("react").JSX.Element;
24
+ export declare function TabPanelStructure({ element, }: TabPanelStructureProps): import("react").JSX.Element;
25
25
  export {};
@@ -2,4 +2,4 @@ import { RelationshipDetailsActorRef } from './actor';
2
2
  export type RelationshipDetailsProps = {
3
3
  actorRef: RelationshipDetailsActorRef;
4
4
  };
5
- export declare function RelationshipDetails({ actorRef }: RelationshipDetailsProps): import("react/jsx-runtime").JSX.Element;
5
+ export declare function RelationshipDetails({ actorRef }: RelationshipDetailsProps): import("react").JSX.Element;
@@ -2,4 +2,4 @@ import { DiagramEdge, DiagramView } from '@likec4/core';
2
2
  export declare const SelectEdge: ({ edge, view, }: {
3
3
  edge: DiagramEdge;
4
4
  view: DiagramView;
5
- }) => import("react/jsx-runtime").JSX.Element | null;
5
+ }) => import("react").JSX.Element | null;
@@ -1,2 +1,2 @@
1
1
  import { RelationshipDetailsTypes as Types } from '../_types';
2
- export declare const ElementActions: (props: Types.NodeProps<"element">) => import("react/jsx-runtime").JSX.Element;
2
+ export declare const ElementActions: (props: Types.NodeProps<"element">) => import("react").JSX.Element;
@@ -1,9 +1,9 @@
1
1
  import { BaseNodePropsWithData } from '../../../base';
2
2
  import { RelationshipDetailsTypes } from '../_types';
3
- export declare function ElementNode(props: RelationshipDetailsTypes.NodeProps<'element'>): import("react/jsx-runtime").JSX.Element;
4
- export declare function CompoundNode(props: RelationshipDetailsTypes.NodeProps<'compound'>): import("react/jsx-runtime").JSX.Element;
3
+ export declare function ElementNode(props: RelationshipDetailsTypes.NodeProps<'element'>): import("react").JSX.Element;
4
+ export declare function CompoundNode(props: RelationshipDetailsTypes.NodeProps<'compound'>): import("react").JSX.Element;
5
5
  type ElementPortsProps = BaseNodePropsWithData<Pick<RelationshipDetailsTypes.ElementNodeData, 'ports' | 'height'>>;
6
- export declare function ElementPorts({ data: { ports, height: h } }: ElementPortsProps): import("react/jsx-runtime").JSX.Element;
6
+ export declare function ElementPorts({ data: { ports, height: h } }: ElementPortsProps): import("react").JSX.Element;
7
7
  type CompoundPortsProps = BaseNodePropsWithData<Pick<RelationshipDetailsTypes.CompoundNodeData, 'ports'>>;
8
- export declare function CompoundPorts({ data }: CompoundPortsProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function CompoundPorts({ data }: CompoundPortsProps): import("react").JSX.Element;
9
9
  export {};
@@ -2,4 +2,4 @@ import { RelationshipsBrowserActorRef } from './actor';
2
2
  export type RelationshipsBrowserProps = {
3
3
  actorRef: RelationshipsBrowserActorRef;
4
4
  };
5
- export declare function RelationshipsBrowser({ actorRef }: RelationshipsBrowserProps): import("react/jsx-runtime").JSX.Element;
5
+ export declare function RelationshipsBrowser({ actorRef }: RelationshipsBrowserProps): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const SelectElement: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const SelectElement: MemoExoticComponent<() => import("react").JSX.Element>;
@@ -1,2 +1,2 @@
1
1
  import { RelationshipsBrowserTypes as Types } from '../_types';
2
- export declare const ElementActions: (props: Types.NodeProps<"element">) => import("react/jsx-runtime").JSX.Element;
2
+ export declare const ElementActions: (props: Types.NodeProps<"element">) => import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { RelationshipsBrowserTypes } from '../_types';
2
- export declare function EmptyNode({ data: { column, }, }: RelationshipsBrowserTypes.NodeProps<'empty'>): import("react/jsx-runtime").JSX.Element;
2
+ export declare function EmptyNode({ data: { column, }, }: RelationshipsBrowserTypes.NodeProps<'empty'>): import("react").JSX.Element;
@@ -1,9 +1,9 @@
1
1
  import { BaseNodePropsWithData } from '../../../base';
2
2
  import { RelationshipsBrowserTypes } from '../_types';
3
- export declare function ElementNode(props: RelationshipsBrowserTypes.NodeProps<'element'>): import("react/jsx-runtime").JSX.Element;
4
- export declare function CompoundNode(props: RelationshipsBrowserTypes.NodeProps<'compound'>): import("react/jsx-runtime").JSX.Element;
3
+ export declare function ElementNode(props: RelationshipsBrowserTypes.NodeProps<'element'>): import("react").JSX.Element;
4
+ export declare function CompoundNode(props: RelationshipsBrowserTypes.NodeProps<'compound'>): import("react").JSX.Element;
5
5
  type ElementPortsProps = BaseNodePropsWithData<Pick<RelationshipsBrowserTypes.ElementNodeData, 'ports' | 'height'>>;
6
- export declare const ElementPorts: ({ data: { ports, height: h } }: ElementPortsProps) => import("react/jsx-runtime").JSX.Element;
6
+ export declare const ElementPorts: ({ data: { ports, height: h } }: ElementPortsProps) => import("react").JSX.Element;
7
7
  type CompoundPortsProps = BaseNodePropsWithData<Pick<RelationshipsBrowserTypes.CompoundNodeData, 'ports'>>;
8
- export declare const CompoundPorts: ({ data }: CompoundPortsProps) => import("react/jsx-runtime").JSX.Element;
8
+ export declare const CompoundPorts: ({ data }: CompoundPortsProps) => import("react").JSX.Element;
9
9
  export {};
@@ -10,4 +10,4 @@ export type ProjectsOverviewProps = {
10
10
  onNavigateToProject?: undefined | ((projectId: ProjectId) => void);
11
11
  fitViewPadding?: ViewPadding | undefined;
12
12
  } & ProjectsOverviewXYProps;
13
- export declare function ProjectsOverview({ view, onNavigateToProject, fitViewPadding, ...props }: ProjectsOverviewProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function ProjectsOverview({ view, onNavigateToProject, fitViewPadding, ...props }: ProjectsOverviewProps): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { ProjectsOverviewTypes } from '../_types';
2
- export declare function ProjectNode(props: ProjectsOverviewTypes.NodeProps<'project'>): import("react/jsx-runtime").JSX.Element;
2
+ export declare function ProjectNode(props: ProjectsOverviewTypes.NodeProps<'project'>): import("react").JSX.Element;
@@ -1 +1 @@
1
- export declare const ProjectsOverviewPanel: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const ProjectsOverviewPanel: () => import("react").JSX.Element;
@@ -5,7 +5,7 @@ export declare const bodyCss: string;
5
5
  export declare const scrollAreaCss: string;
6
6
  export declare const Search: MemoExoticComponent<({ searchActorRef }: {
7
7
  searchActorRef: SearchActorRef;
8
- }) => import("react/jsx-runtime").JSX.Element>;
8
+ }) => import("react").JSX.Element>;
9
9
  /**
10
10
  * The shared search panel content used by both diagram and overview search.
11
11
  * Must be rendered inside a SearchContext.Provider.
@@ -2,4 +2,4 @@ import { PropsWithChildren } from 'react';
2
2
  import { SearchActorRef } from './searchActor';
3
3
  export declare function XStateSearchAdapter({ searchActorRef, children, }: PropsWithChildren<{
4
4
  searchActorRef: SearchActorRef;
5
- }>): import("react/jsx-runtime").JSX.Element;
5
+ }>): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { MemoExoticComponent } from 'react';
2
- export declare const ElementsColumn: MemoExoticComponent<() => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const ElementsColumn: MemoExoticComponent<() => import("react").JSX.Element>;
@@ -1,4 +1,4 @@
1
1
  import { Fqn } from '@likec4/core/types';
2
2
  export declare function PickView({ elementFqn, }: {
3
3
  elementFqn: Fqn;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): import("react").JSX.Element;
@@ -1 +1 @@
1
- export declare function SearchByTags(): import("react/jsx-runtime").JSX.Element | null;
1
+ export declare function SearchByTags(): import("react").JSX.Element | null;