@likec4/diagram 1.0.0-next.2 → 1.0.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.
- package/dist/LikeC4Diagram.css.d.ts +0 -1
- package/dist/LikeC4Diagram.d.ts +1 -2
- package/dist/LikeC4Diagram.props.d.ts +24 -25
- package/dist/StaticLikeC4Diagram.d.ts +1 -2
- package/dist/globals.css.d.ts +1 -0
- package/dist/hooks/index.d.ts +2 -3
- package/dist/hooks/useSetState.d.ts +3 -0
- package/dist/hooks/useUpdateEffect.d.ts +4 -0
- package/dist/icons/Clipboard.d.ts +0 -1
- package/dist/icons/Link.d.ts +0 -1
- package/dist/icons/ZoomIn.d.ts +0 -1
- package/dist/icons/index.d.ts +0 -1
- package/dist/index.d.ts +1 -4
- package/dist/index.mjs +9388 -0
- package/dist/mantine/EnsureMantine.d.ts +2 -4
- package/dist/mantine/theme.d.ts +3 -0
- package/dist/mantine.css.d.ts +1 -0
- package/dist/state/DiagramContext.d.ts +386 -0
- package/dist/state/WhenInitialized.d.ts +3 -0
- package/dist/state/diagramStore.d.ts +428 -0
- package/dist/state/index.d.ts +4 -2
- package/dist/state/useDiagramStore.d.ts +387 -0
- package/dist/style.css +1212 -1
- package/dist/theme.css.d.ts +16 -2
- package/dist/ui/Camera.d.ts +0 -1
- package/dist/ui/KeepAspectRatio.css.d.ts +0 -1
- package/dist/ui/KeepAspectRatio.d.ts +0 -1
- package/dist/ui/OptionsPanel.css.d.ts +0 -1
- package/dist/ui/OptionsPanel.d.ts +0 -1
- package/dist/ui/index.d.ts +0 -1
- package/dist/ui/options/NodeOptions.d.ts +0 -1
- package/dist/xyflow/FitviewOnDiagramChange.d.ts +1 -5
- package/dist/xyflow/SyncWithDiagram.d.ts +5 -0
- package/dist/xyflow/XYFlowBackground.d.ts +0 -1
- package/dist/xyflow/XYFlowEvents.d.ts +5 -15
- package/dist/xyflow/XYFlowWrapper.d.ts +4 -5
- package/dist/xyflow/const.d.ts +1 -2
- package/dist/xyflow/diagram-to-xyflow.d.ts +4 -2
- package/dist/xyflow/edges/RelationshipEdge.d.ts +7 -7
- package/dist/xyflow/edges/edges.css.d.ts +2 -1
- package/dist/xyflow/edges/utils.d.ts +3 -4
- package/dist/xyflow/hooks/index.d.ts +2 -37
- package/dist/xyflow/hooks/{use-layout-/321/201onstraints.d.ts → useLayoutConstraints.d.ts} +2 -4
- package/dist/xyflow/hooks/useXYFlow.d.ts +266 -0
- package/dist/xyflow/nodes/compound/CompoundNode.css.d.ts +0 -1
- package/dist/xyflow/nodes/compound/CompoundNode.d.ts +0 -1
- package/dist/xyflow/nodes/compound/index.d.ts +0 -1
- package/dist/xyflow/nodes/element/ElementIcon.d.ts +1 -2
- package/dist/xyflow/nodes/element/ElementLink.css.d.ts +0 -1
- package/dist/xyflow/nodes/element/ElementLink.d.ts +1 -2
- package/dist/xyflow/nodes/element/ElementNode.d.ts +1 -3
- package/dist/xyflow/nodes/element/ElementShapeSvg.d.ts +2 -3
- package/dist/xyflow/nodes/element/element.css.d.ts +0 -1
- package/dist/xyflow/nodes/element/index.d.ts +1 -2
- package/dist/xyflow/nodes/shared/NavigateToBtn.d.ts +0 -1
- package/dist/xyflow/types.d.ts +20 -8
- package/dist/xyflow/utils.d.ts +0 -1
- package/package.json +36 -34
- package/src/LikeC4Diagram.css.ts +31 -0
- package/src/LikeC4Diagram.props.ts +154 -0
- package/src/LikeC4Diagram.tsx +119 -0
- package/src/StaticLikeC4Diagram.tsx +39 -0
- package/src/globals.css.ts +128 -0
- package/src/hooks/index.ts +2 -0
- package/src/hooks/useSetState.ts +19 -0
- package/src/hooks/useUpdateEffect.ts +28 -0
- package/src/icons/Clipboard.tsx +24 -0
- package/src/icons/Link.tsx +23 -0
- package/src/icons/ZoomIn.tsx +25 -0
- package/src/icons/index.ts +3 -0
- package/src/index.ts +11 -0
- package/src/mantine/EnsureMantine.tsx +14 -0
- package/src/mantine/theme.ts +19 -0
- package/src/mantine.css.ts +4 -0
- package/src/reset.d.ts +2 -0
- package/src/state/DiagramContext.tsx +42 -0
- package/src/state/WhenInitialized.tsx +24 -0
- package/src/state/diagramStore.ts +358 -0
- package/src/state/index.ts +4 -0
- package/src/state/useDiagramStore.ts +39 -0
- package/src/theme.css.ts +64 -0
- package/src/ui/Camera.tsx +174 -0
- package/src/ui/KeepAspectRatio.css.ts +7 -0
- package/src/ui/KeepAspectRatio.tsx +35 -0
- package/src/ui/OptionsPanel.css.ts +10 -0
- package/src/ui/OptionsPanel.tsx +65 -0
- package/src/ui/index.ts +3 -0
- package/src/ui/options/NodeOptions.tsx +253 -0
- package/src/xyflow/FitviewOnDiagramChange.tsx +93 -0
- package/src/xyflow/SyncWithDiagram.tsx +113 -0
- package/src/xyflow/XYFlowBackground.tsx +33 -0
- package/src/xyflow/XYFlowEvents.tsx +100 -0
- package/src/xyflow/XYFlowWrapper.tsx +166 -0
- package/src/xyflow/const.ts +7 -0
- package/src/xyflow/diagram-to-xyflow.ts +197 -0
- package/src/xyflow/edges/RelationshipEdge.tsx +288 -0
- package/src/xyflow/edges/edges.css.ts +124 -0
- package/src/xyflow/edges/utils.ts +110 -0
- package/src/xyflow/hooks/index.ts +2 -0
- package/src/xyflow/hooks/useLayoutConstraints.ts +289 -0
- package/src/xyflow/hooks/useXYFlow.ts +20 -0
- package/src/xyflow/nodes/compound/CompoundNode.css.ts +191 -0
- package/src/xyflow/nodes/compound/CompoundNode.tsx +105 -0
- package/src/xyflow/nodes/compound/index.ts +1 -0
- package/src/xyflow/nodes/element/ElementIcon.tsx +44 -0
- package/src/xyflow/nodes/element/ElementLink.css.ts +67 -0
- package/src/xyflow/nodes/element/ElementLink.tsx +94 -0
- package/src/xyflow/nodes/element/ElementNode.tsx +225 -0
- package/src/xyflow/nodes/element/ElementShapeSvg.tsx +181 -0
- package/src/xyflow/nodes/element/element.css.ts +261 -0
- package/src/xyflow/nodes/element/index.ts +1 -0
- package/src/xyflow/nodes/shared/NavigateToBtn.tsx +25 -0
- package/src/xyflow/types.ts +100 -0
- package/src/xyflow/utils.ts +12 -0
- package/dist/EmbeddedLikeC4Diagram.css.d.ts +0 -6
- package/dist/EmbeddedLikeC4Diagram.d.ts +0 -18
- package/dist/bundle.d.ts +0 -3
- package/dist/hooks/use-set-state.d.ts +0 -2
- package/dist/hooks/use-update-effect.d.ts +0 -4
- package/dist/index.css.d.ts +0 -2
- package/dist/index.js +0 -13043
- package/dist/mantine/index.d.ts +0 -3
- package/dist/state/DiagramState.d.ts +0 -162
- package/dist/xyflow/UpdateOnDiagramChange.d.ts +0 -10
package/dist/LikeC4Diagram.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { LikeC4DiagramEventHandlers, LikeC4DiagramProperties } from './LikeC4Diagram.props';
|
|
2
2
|
|
|
3
3
|
export type LikeC4DiagramProps = LikeC4DiagramProperties & LikeC4DiagramEventHandlers;
|
|
4
|
-
export declare function LikeC4Diagram({ view, className, fitView, fitViewPadding,
|
|
5
|
-
//# sourceMappingURL=LikeC4Diagram.d.ts.map
|
|
4
|
+
export declare function LikeC4Diagram({ view, className, fitView, fitViewPadding, readonly, pannable, zoomable, nodesSelectable, nodesDraggable, background, controls, showElementLinks, initialWidth, initialHeight, keepAspectRatio, onCanvasClick, onCanvasContextMenu, onCanvasDblClick, onEdgeClick, onChange, onEdgeContextMenu, onNavigateTo, onNodeClick, onNodeContextMenu }: LikeC4DiagramProps): JSX.Element;
|
|
@@ -1,28 +1,27 @@
|
|
|
1
1
|
import { XYBackgroundProps } from './xyflow/XYFlowBackground';
|
|
2
2
|
import { XYFlowEdge, XYFlowNode } from './xyflow/types';
|
|
3
3
|
import { SetRequired, Simplify } from 'type-fest';
|
|
4
|
-
import {
|
|
4
|
+
import { MouseEvent as ReactMouseEvent } from 'react';
|
|
5
|
+
import { DiagramEdge, DiagramNode, DiagramView, ElementShape, Fqn, NonEmptyArray, ThemeColor, ViewID } from '@likec4/core';
|
|
5
6
|
|
|
6
7
|
export type DiagramNodeWithNavigate = Simplify<SetRequired<DiagramNode, 'navigateTo'>>;
|
|
7
|
-
export type OnNavigateTo =
|
|
8
|
-
element: DiagramNodeWithNavigate;
|
|
9
|
-
|
|
10
|
-
event: React.MouseEvent;
|
|
11
|
-
}) => void;
|
|
8
|
+
export type OnNavigateTo = {
|
|
9
|
+
(to: ViewID, event: ReactMouseEvent, element: DiagramNodeWithNavigate, xynode: XYFlowNode): void;
|
|
10
|
+
};
|
|
12
11
|
export type OnNodeClick = (event: {
|
|
13
12
|
element: DiagramNode;
|
|
14
13
|
xynode: XYFlowNode;
|
|
15
|
-
event:
|
|
14
|
+
event: ReactMouseEvent;
|
|
16
15
|
}) => void;
|
|
17
16
|
export type OnEdgeClick = (event: {
|
|
18
17
|
relation: DiagramEdge;
|
|
19
18
|
xyedge: XYFlowEdge;
|
|
20
|
-
event:
|
|
19
|
+
event: ReactMouseEvent;
|
|
21
20
|
}) => void;
|
|
22
21
|
/**
|
|
23
22
|
* On pane/canvas click (not on any node or edge)
|
|
24
23
|
*/
|
|
25
|
-
export type OnCanvasClick = (event:
|
|
24
|
+
export type OnCanvasClick = (event: ReactMouseEvent) => void;
|
|
26
25
|
export declare namespace Changes {
|
|
27
26
|
interface ChangeColor {
|
|
28
27
|
op: 'change-color';
|
|
@@ -39,8 +38,10 @@ export type Change = Changes.ChangeColor | Changes.ChangeShape;
|
|
|
39
38
|
export type ChangeEvent = {
|
|
40
39
|
changes: NonEmptyArray<Change>;
|
|
41
40
|
};
|
|
42
|
-
export type OnChange =
|
|
43
|
-
|
|
41
|
+
export type OnChange = {
|
|
42
|
+
(event: ChangeEvent): void;
|
|
43
|
+
};
|
|
44
|
+
export type LikeC4ColorScheme = 'light' | 'dark';
|
|
44
45
|
export interface LikeC4DiagramProperties {
|
|
45
46
|
view: DiagramView;
|
|
46
47
|
className?: string | undefined;
|
|
@@ -50,7 +51,6 @@ export interface LikeC4DiagramProperties {
|
|
|
50
51
|
*
|
|
51
52
|
* @example 'light' | 'dark'
|
|
52
53
|
*/
|
|
53
|
-
colorMode?: LikeC4ColorMode | undefined;
|
|
54
54
|
/**
|
|
55
55
|
* Show/hide controls menu
|
|
56
56
|
* @default false
|
|
@@ -99,20 +99,19 @@ export interface LikeC4DiagramProperties {
|
|
|
99
99
|
*/
|
|
100
100
|
background?: 'transparent' | 'solid' | XYBackgroundProps | undefined;
|
|
101
101
|
/**
|
|
102
|
-
*
|
|
103
|
-
* @default
|
|
102
|
+
* Display hovercards with element links
|
|
103
|
+
* @default true
|
|
104
104
|
*/
|
|
105
|
-
|
|
105
|
+
showElementLinks?: boolean | undefined;
|
|
106
106
|
}
|
|
107
107
|
export interface LikeC4DiagramEventHandlers {
|
|
108
|
-
onChange?: OnChange | undefined;
|
|
109
|
-
onNavigateTo?: OnNavigateTo | undefined;
|
|
110
|
-
onNodeClick?: OnNodeClick | undefined;
|
|
111
|
-
onNodeContextMenu?: OnNodeClick | undefined;
|
|
112
|
-
onCanvasContextMenu?: OnCanvasClick | undefined;
|
|
113
|
-
onEdgeClick?: OnEdgeClick | undefined;
|
|
114
|
-
onEdgeContextMenu?: OnEdgeClick | undefined;
|
|
115
|
-
onCanvasClick?: OnCanvasClick | undefined;
|
|
116
|
-
onCanvasDblClick?: OnCanvasClick | undefined;
|
|
108
|
+
onChange?: OnChange | null | undefined;
|
|
109
|
+
onNavigateTo?: OnNavigateTo | null | undefined;
|
|
110
|
+
onNodeClick?: OnNodeClick | null | undefined;
|
|
111
|
+
onNodeContextMenu?: OnNodeClick | null | undefined;
|
|
112
|
+
onCanvasContextMenu?: OnCanvasClick | null | undefined;
|
|
113
|
+
onEdgeClick?: OnEdgeClick | null | undefined;
|
|
114
|
+
onEdgeContextMenu?: OnEdgeClick | null | undefined;
|
|
115
|
+
onCanvasClick?: OnCanvasClick | null | undefined;
|
|
116
|
+
onCanvasDblClick?: OnCanvasClick | null | undefined;
|
|
117
117
|
}
|
|
118
|
-
//# sourceMappingURL=LikeC4Diagram.props.d.ts.map
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { LikeC4DiagramProperties } from './LikeC4Diagram.props';
|
|
2
2
|
|
|
3
|
-
export type StaticLikeC4DiagramProps = Pick<LikeC4DiagramProperties, 'view' | 'keepAspectRatio' | 'className' | '
|
|
3
|
+
export type StaticLikeC4DiagramProps = Pick<LikeC4DiagramProperties, 'view' | 'keepAspectRatio' | 'className' | 'fitView' | 'fitViewPadding' | 'background' | 'initialWidth' | 'initialHeight'>;
|
|
4
4
|
export declare function StaticLikeC4Diagram({ view, fitView, fitViewPadding, background, ...rest }: StaticLikeC4DiagramProps): JSX.Element;
|
|
5
|
-
//# sourceMappingURL=StaticLikeC4Diagram.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const rootClassName = "likec4-diagram-root";
|
package/dist/hooks/index.d.ts
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
export * from './
|
|
2
|
-
export * from './
|
|
3
|
-
//# sourceMappingURL=index.d.ts.map
|
|
1
|
+
export * from './useSetState';
|
|
2
|
+
export * from './useUpdateEffect';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { DependencyList, EffectCallback } from 'react';
|
|
2
|
+
import { DependenciesComparator, EffectHook } from '@react-hookz/web';
|
|
3
|
+
|
|
4
|
+
export declare function useUpdateEffect<Callback extends EffectCallback = EffectCallback, Deps extends DependencyList = DependencyList>(callback: Callback, deps: Deps, equalityFn?: DependenciesComparator<Deps>, effectHook?: EffectHook<Callback, Deps>): void;
|
package/dist/icons/Link.d.ts
CHANGED
package/dist/icons/ZoomIn.d.ts
CHANGED
package/dist/icons/index.d.ts
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
export { EmbeddedLikeC4Diagram } from './EmbeddedLikeC4Diagram';
|
|
3
2
|
export { LikeC4Diagram } from './LikeC4Diagram';
|
|
4
3
|
export { StaticLikeC4Diagram } from './StaticLikeC4Diagram';
|
|
5
|
-
export
|
|
4
|
+
export * from './hooks';
|
|
6
5
|
export type * from './LikeC4Diagram';
|
|
7
6
|
export type * from './LikeC4Diagram.props';
|
|
8
7
|
export type * from './StaticLikeC4Diagram';
|
|
9
8
|
export type * from './xyflow/types';
|
|
10
|
-
export * from './bundle';
|
|
11
|
-
//# sourceMappingURL=index.d.ts.map
|