@finos/legend-extension-dsl-diagram 8.1.195 → 8.1.196

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 (95) hide show
  1. package/lib/components/DiagramRenderer.d.ts +39 -2
  2. package/lib/components/DiagramRenderer.d.ts.map +1 -1
  3. package/lib/components/DiagramRenderer.js +83 -61
  4. package/lib/components/DiagramRenderer.js.map +1 -1
  5. package/lib/components/DiagramViewer.d.ts +39 -0
  6. package/lib/components/DiagramViewer.d.ts.map +1 -0
  7. package/lib/components/DiagramViewer.js +170 -0
  8. package/lib/components/DiagramViewer.js.map +1 -0
  9. package/lib/components/DiagramViewerState.d.ts +44 -0
  10. package/lib/components/DiagramViewerState.d.ts.map +1 -0
  11. package/lib/components/DiagramViewerState.js +136 -0
  12. package/lib/components/DiagramViewerState.js.map +1 -0
  13. package/lib/components/index.d.ts +4 -1
  14. package/lib/components/index.d.ts.map +1 -1
  15. package/lib/components/index.js +4 -1
  16. package/lib/components/index.js.map +1 -1
  17. package/lib/graph-manager/index.d.ts +3 -0
  18. package/lib/graph-manager/index.d.ts.map +1 -1
  19. package/lib/graph-manager/index.js +3 -0
  20. package/lib/graph-manager/index.js.map +1 -1
  21. package/lib/index.css +2 -2
  22. package/lib/index.css.map +1 -1
  23. package/lib/index.d.ts +0 -1
  24. package/lib/index.d.ts.map +1 -1
  25. package/lib/index.js +0 -1
  26. package/lib/index.js.map +1 -1
  27. package/lib/package.json +1 -2
  28. package/package.json +3 -4
  29. package/src/components/DiagramRenderer.ts +221 -103
  30. package/src/components/DiagramViewer.tsx +650 -0
  31. package/src/components/DiagramViewerState.ts +171 -0
  32. package/src/components/index.ts +4 -0
  33. package/src/graph-manager/index.ts +3 -0
  34. package/src/index.ts +0 -1
  35. package/tsconfig.json +2 -12
  36. package/lib/__lib__/studio/DSL_Diagram_LegendStudioApplicationNavigationContext.d.ts +0 -19
  37. package/lib/__lib__/studio/DSL_Diagram_LegendStudioApplicationNavigationContext.d.ts.map +0 -1
  38. package/lib/__lib__/studio/DSL_Diagram_LegendStudioApplicationNavigationContext.js +0 -20
  39. package/lib/__lib__/studio/DSL_Diagram_LegendStudioApplicationNavigationContext.js.map +0 -1
  40. package/lib/__lib__/studio/DSL_Diagram_LegendStudioCodeSnippet.d.ts +0 -20
  41. package/lib/__lib__/studio/DSL_Diagram_LegendStudioCodeSnippet.d.ts.map +0 -1
  42. package/lib/__lib__/studio/DSL_Diagram_LegendStudioCodeSnippet.js +0 -81
  43. package/lib/__lib__/studio/DSL_Diagram_LegendStudioCodeSnippet.js.map +0 -1
  44. package/lib/__lib__/studio/DSL_Diagram_LegendStudioCommand.d.ts +0 -28
  45. package/lib/__lib__/studio/DSL_Diagram_LegendStudioCommand.d.ts.map +0 -1
  46. package/lib/__lib__/studio/DSL_Diagram_LegendStudioCommand.js +0 -62
  47. package/lib/__lib__/studio/DSL_Diagram_LegendStudioCommand.js.map +0 -1
  48. package/lib/__lib__/studio/DSL_Diagram_LegendStudioDocumentation.d.ts +0 -20
  49. package/lib/__lib__/studio/DSL_Diagram_LegendStudioDocumentation.d.ts.map +0 -1
  50. package/lib/__lib__/studio/DSL_Diagram_LegendStudioDocumentation.js +0 -21
  51. package/lib/__lib__/studio/DSL_Diagram_LegendStudioDocumentation.js.map +0 -1
  52. package/lib/__lib__/studio/DSL_Diagram_LegendStudioTesting.d.ts +0 -20
  53. package/lib/__lib__/studio/DSL_Diagram_LegendStudioTesting.d.ts.map +0 -1
  54. package/lib/__lib__/studio/DSL_Diagram_LegendStudioTesting.js +0 -21
  55. package/lib/__lib__/studio/DSL_Diagram_LegendStudioTesting.js.map +0 -1
  56. package/lib/components/studio/ClassDiagramPreview.d.ts +0 -22
  57. package/lib/components/studio/ClassDiagramPreview.d.ts.map +0 -1
  58. package/lib/components/studio/ClassDiagramPreview.js +0 -64
  59. package/lib/components/studio/ClassDiagramPreview.js.map +0 -1
  60. package/lib/components/studio/DSL_Diagram_LegendStudioApplicationPlugin.d.ts +0 -42
  61. package/lib/components/studio/DSL_Diagram_LegendStudioApplicationPlugin.d.ts.map +0 -1
  62. package/lib/components/studio/DSL_Diagram_LegendStudioApplicationPlugin.js +0 -216
  63. package/lib/components/studio/DSL_Diagram_LegendStudioApplicationPlugin.js.map +0 -1
  64. package/lib/components/studio/DiagramEditor.d.ts +0 -19
  65. package/lib/components/studio/DiagramEditor.d.ts.map +0 -1
  66. package/lib/components/studio/DiagramEditor.js +0 -436
  67. package/lib/components/studio/DiagramEditor.js.map +0 -1
  68. package/lib/components/studio/InheritanceDiagramRenderer.d.ts +0 -22
  69. package/lib/components/studio/InheritanceDiagramRenderer.d.ts.map +0 -1
  70. package/lib/components/studio/InheritanceDiagramRenderer.js +0 -34
  71. package/lib/components/studio/InheritanceDiagramRenderer.js.map +0 -1
  72. package/lib/components/studio/index.d.ts +0 -18
  73. package/lib/components/studio/index.d.ts.map +0 -1
  74. package/lib/components/studio/index.js +0 -18
  75. package/lib/components/studio/index.js.map +0 -1
  76. package/lib/stores/studio/DSL_Diagram_GraphModifierHelper.d.ts +0 -57
  77. package/lib/stores/studio/DSL_Diagram_GraphModifierHelper.d.ts.map +0 -1
  78. package/lib/stores/studio/DSL_Diagram_GraphModifierHelper.js +0 -94
  79. package/lib/stores/studio/DSL_Diagram_GraphModifierHelper.js.map +0 -1
  80. package/lib/stores/studio/DiagramEditorState.d.ts +0 -88
  81. package/lib/stores/studio/DiagramEditorState.d.ts.map +0 -1
  82. package/lib/stores/studio/DiagramEditorState.js +0 -341
  83. package/lib/stores/studio/DiagramEditorState.js.map +0 -1
  84. package/src/__lib__/studio/DSL_Diagram_LegendStudioApplicationNavigationContext.ts +0 -19
  85. package/src/__lib__/studio/DSL_Diagram_LegendStudioCodeSnippet.ts +0 -88
  86. package/src/__lib__/studio/DSL_Diagram_LegendStudioCommand.ts +0 -64
  87. package/src/__lib__/studio/DSL_Diagram_LegendStudioDocumentation.ts +0 -20
  88. package/src/__lib__/studio/DSL_Diagram_LegendStudioTesting.ts +0 -20
  89. package/src/components/studio/ClassDiagramPreview.tsx +0 -83
  90. package/src/components/studio/DSL_Diagram_LegendStudioApplicationPlugin.tsx +0 -313
  91. package/src/components/studio/DiagramEditor.tsx +0 -1514
  92. package/src/components/studio/InheritanceDiagramRenderer.ts +0 -50
  93. package/src/components/studio/index.ts +0 -19
  94. package/src/stores/studio/DSL_Diagram_GraphModifierHelper.ts +0 -166
  95. package/src/stores/studio/DiagramEditorState.ts +0 -487
@@ -0,0 +1,170 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /**
3
+ * Copyright (c) 2025-present, Goldman Sachs
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { AnchorLinkIcon, CaretDownIcon, CenterFocusIcon, CircleIcon, CloseIcon, ContextMenu, CustomSelectorInput, DescriptionIcon, ControlledDropdownMenu, MenuContent, MenuContentDivider, MenuContentItem, MousePointerIcon, MoveIcon, ShapesIcon, ThinChevronDownIcon, ThinChevronLeftIcon, ThinChevronRightIcon, ThinChevronUpIcon, ZoomInIcon, ZoomOutIcon, clsx, useResizeDetector, createFilter, MarkdownTextViewer, } from '@finos/legend-art';
18
+ import { observer } from 'mobx-react-lite';
19
+ import { forwardRef, useEffect, useRef } from 'react';
20
+ import { DIAGRAM_INTERACTION_MODE, DIAGRAM_RELATIONSHIP_EDIT_MODE, DIAGRAM_ZOOM_LEVELS, DiagramRenderer, } from './DiagramRenderer.js';
21
+ import { at } from '@finos/legend-shared';
22
+ import { useCommands, } from '@finos/legend-application';
23
+ var DIAGRAM_VIEWER_MODES;
24
+ (function (DIAGRAM_VIEWER_MODES) {
25
+ DIAGRAM_VIEWER_MODES["DIAGRAM_VIEWER"] = "diagram-viewer";
26
+ DIAGRAM_VIEWER_MODES["MODELS_DOCUMENTATION"] = "models-documentation";
27
+ })(DIAGRAM_VIEWER_MODES || (DIAGRAM_VIEWER_MODES = {}));
28
+ const DiagramCanvas = observer(forwardRef(function DiagramCanvas(props, _ref) {
29
+ const { diagramViewerState, diagram, actions } = props;
30
+ const { onQueryClass, onViewClassDocumentation, hasClassDocumentation, onGenerateAnchorForActivity, onChangeZone, } = actions;
31
+ const ref = _ref;
32
+ const descriptionText = diagramViewerState.currentDiagram?.description;
33
+ const { width, height } = useResizeDetector({
34
+ refreshMode: 'debounce',
35
+ refreshRate: 50,
36
+ targetRef: ref,
37
+ });
38
+ useEffect(() => {
39
+ diagramViewerState.setExpandDescription(false);
40
+ }, [diagramViewerState, diagramViewerState.currentDiagram]);
41
+ useEffect(() => {
42
+ const renderer = new DiagramRenderer(ref.current, diagram);
43
+ diagramViewerState.setDiagramRenderer(renderer);
44
+ diagramViewerState.setupDiagramRenderer();
45
+ renderer.render({ initial: true });
46
+ }, [ref, diagramViewerState, diagram]);
47
+ useEffect(() => {
48
+ if (diagramViewerState.isDiagramRendererInitialized) {
49
+ diagramViewerState.diagramRenderer.refresh();
50
+ }
51
+ }, [diagramViewerState, width, height]);
52
+ const queryClass = () => {
53
+ if (onQueryClass && diagramViewerState.contextMenuClassView) {
54
+ onQueryClass(diagramViewerState.contextMenuClassView.class.value);
55
+ }
56
+ };
57
+ const viewClassDocumentation = () => {
58
+ if (diagramViewerState.contextMenuClassView &&
59
+ hasClassDocumentation(diagramViewerState.contextMenuClassView.class.value.path)) {
60
+ onViewClassDocumentation(diagramViewerState.contextMenuClassView.class.value.path);
61
+ onChangeZone(onGenerateAnchorForActivity(DIAGRAM_VIEWER_MODES.MODELS_DOCUMENTATION));
62
+ }
63
+ };
64
+ return (_jsxs(ContextMenu, { className: "data-space__viewer__diagram-viewer__canvas", content: _jsxs(MenuContent, { children: [_jsx(MenuContentItem, { onClick: queryClass, disabled: !diagramViewerState.contextMenuClassView, children: "Query" }), _jsx(MenuContentItem, { onClick: viewClassDocumentation, disabled: !diagramViewerState.contextMenuClassView ||
65
+ !hasClassDocumentation(diagramViewerState.contextMenuClassView.class.value.path), children: "See Model Documentation" })] }), disabled: !diagramViewerState.contextMenuClassView, menuProps: { elevation: 7 }, onClose: () => diagramViewerState.setContextMenuClassView(undefined), children: [diagramViewerState.showDescription && (_jsxs("div", { className: clsx('data-space__viewer__diagram-viewer__description', {
66
+ 'data-space__viewer__diagram-viewer__description--expanded': diagramViewerState.expandDescription,
67
+ }), children: [_jsx("button", { className: "data-space__viewer__diagram-viewer__description__close-btn", tabIndex: -1, title: "Hide Description", onClick: () => diagramViewerState.setShowDescription(false), children: _jsx(CloseIcon, {}) }), _jsx("div", { className: "data-space__viewer__diagram-viewer__description__title", children: diagramViewerState.currentDiagram?.title
68
+ ? diagramViewerState.currentDiagram.title
69
+ : 'Untitled' }), _jsx("div", { className: "data-space__viewer__diagram-viewer__description__content", children: descriptionText ? (_jsx(MarkdownTextViewer, { value: {
70
+ value: descriptionText,
71
+ } })) : (_jsx("div", { className: "data-space__viewer__diagram-viewer__description__content__placeholder", children: "(not specified)" })) }), _jsx("button", { className: "data-space__viewer__diagram-viewer__description__expand-btn", tabIndex: -1, title: diagramViewerState.expandDescription ? 'Collapse' : 'Expand', onClick: () => diagramViewerState.setExpandDescription(!diagramViewerState.expandDescription), children: diagramViewerState.expandDescription ? (_jsx(ThinChevronUpIcon, {})) : (_jsx(ThinChevronDownIcon, {})) })] })), _jsx("div", { ref: ref, className: clsx('diagram-canvas', diagramViewerState.diagramCursorClass), tabIndex: 0 })] }));
72
+ }));
73
+ const buildDiagramOption = (diagram) => ({
74
+ label: (_jsxs("div", { className: "data-space__viewer__diagram-viewer__header__navigation__selector__label", children: [_jsx(ShapesIcon, { className: "data-space__viewer__diagram-viewer__header__navigation__selector__icon" }), _jsx("div", { className: "data-space__viewer__diagram-viewer__header__navigation__selector__title", children: diagram.title ? diagram.title : 'Untitled' })] })),
75
+ value: diagram,
76
+ });
77
+ const DiagramViewerHeader = observer((props) => {
78
+ const { applicationStore, diagramViewerState, actions } = props;
79
+ const { onSyncZoneWithNavigation } = actions;
80
+ const diagramOptions = diagramViewerState.diagrams.map(buildDiagramOption);
81
+ const selectedDiagramOption = diagramViewerState.currentDiagram
82
+ ? buildDiagramOption(diagramViewerState.currentDiagram)
83
+ : null;
84
+ const onDiagramOptionChange = (option) => {
85
+ if (option.value !== diagramViewerState.currentDiagram) {
86
+ diagramViewerState.setCurrentDiagram(option.value);
87
+ }
88
+ };
89
+ const diagramFilterOption = createFilter({
90
+ ignoreCase: true,
91
+ ignoreAccents: false,
92
+ stringify: (option) => option.data.value.title,
93
+ });
94
+ const createModeSwitcher = (editMode, relationshipMode) => () => diagramViewerState.diagramRenderer.changeMode(editMode, relationshipMode);
95
+ const createCenterZoomer = (zoomLevel) => () => {
96
+ diagramViewerState.diagramRenderer.zoomCenter(zoomLevel / 100);
97
+ };
98
+ const zoomToFit = () => diagramViewerState.diagramRenderer.zoomToFit();
99
+ return (_jsxs("div", { className: "data-space__viewer__diagram-viewer__header", children: [_jsxs("div", { className: "data-space__viewer__diagram-viewer__header__navigation", children: [_jsx(CustomSelectorInput, { className: "data-space__viewer__diagram-viewer__header__navigation__selector", options: diagramOptions, onChange: onDiagramOptionChange, value: selectedDiagramOption, placeholder: "Search for a diagram", darkMode: !applicationStore.layoutService
100
+ .TEMPORARY__isLightColorThemeEnabled, filterOption: diagramFilterOption }), _jsx("div", { className: "data-space__viewer__diagram-viewer__header__navigation__pager", children: _jsx("input", { className: "data-space__viewer__diagram-viewer__header__navigation__pager__input input--dark", value: diagramViewerState.currentDiagramIndex, type: "number", onChange: (event) => {
101
+ const value = parseInt(event.target.value, 10);
102
+ if (isNaN(value) ||
103
+ value < 1 ||
104
+ value > diagramViewerState.diagrams.length) {
105
+ return;
106
+ }
107
+ diagramViewerState.setCurrentDiagram(at(diagramViewerState.diagrams, value - 1));
108
+ } }) }), _jsxs("div", { className: "data-space__viewer__diagram-viewer__header__navigation__pager__count", children: ["/", diagramViewerState.diagrams.length] })] }), _jsx("div", { className: "data-space__viewer__diagram-viewer__header__actions", children: diagramViewerState.isDiagramRendererInitialized && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "data-space__viewer__diagram-viewer__header__group", children: [_jsx("button", { className: "data-space__viewer__diagram-viewer__header__tool", tabIndex: -1, onClick: () => {
109
+ if (diagramViewerState.currentDiagram) {
110
+ onSyncZoneWithNavigation(diagramViewerState.currentDiagram);
111
+ }
112
+ }, title: "Copy Link", children: _jsx(AnchorLinkIcon, {}) }), _jsx("button", { className: "data-space__viewer__diagram-viewer__header__tool", tabIndex: -1, onClick: () => diagramViewerState.diagramRenderer.recenter(), title: "Recenter (R)", children: _jsx(CenterFocusIcon, { className: "data-space__viewer__diagram-viewer__icon--recenter" }) }), _jsx("button", { className: clsx('data-space__viewer__diagram-viewer__header__tool', {
113
+ 'data-space__viewer__diagram-viewer__header__tool--active': diagramViewerState.showDescription,
114
+ }), tabIndex: -1, onClick: () => diagramViewerState.setShowDescription(!diagramViewerState.showDescription), title: "Toggle Description (D)", children: _jsx(DescriptionIcon, { className: "data-space__viewer__diagram-viewer__icon--description" }) })] }), _jsx("div", { className: "data-space__viewer__diagram-viewer__header__group__separator" }), _jsxs("div", { className: "data-space__viewer__diagram-viewer__header__group", children: [_jsx("button", { className: clsx('data-space__viewer__diagram-viewer__header__tool', {
115
+ 'data-space__viewer__diagram-viewer__header__tool--active': diagramViewerState.diagramRenderer.interactionMode ===
116
+ DIAGRAM_INTERACTION_MODE.LAYOUT,
117
+ }), tabIndex: -1, onClick: createModeSwitcher(DIAGRAM_INTERACTION_MODE.LAYOUT, DIAGRAM_RELATIONSHIP_EDIT_MODE.NONE), title: "View Tool (V)", children: _jsx(MousePointerIcon, { className: "data-space__viewer__diagram-viewer__icon--layout" }) }), _jsx("button", { className: clsx('data-space__viewer__diagram-viewer__header__tool', {
118
+ 'data-space__viewer__diagram-viewer__header__tool--active': diagramViewerState.diagramRenderer.interactionMode ===
119
+ DIAGRAM_INTERACTION_MODE.PAN,
120
+ }), tabIndex: -1, onClick: createModeSwitcher(DIAGRAM_INTERACTION_MODE.PAN, DIAGRAM_RELATIONSHIP_EDIT_MODE.NONE), title: "Pan Tool (M)", children: _jsx(MoveIcon, { className: "data-space__viewer__diagram-viewer__icon--pan" }) }), _jsx("button", { className: clsx('data-space__viewer__diagram-viewer__header__tool', {
121
+ 'data-space__viewer__diagram-viewer__header__tool--active': diagramViewerState.diagramRenderer.interactionMode ===
122
+ DIAGRAM_INTERACTION_MODE.ZOOM_IN,
123
+ }), tabIndex: -1, title: "Zoom In (Z)", onClick: createModeSwitcher(DIAGRAM_INTERACTION_MODE.ZOOM_IN, DIAGRAM_RELATIONSHIP_EDIT_MODE.NONE), children: _jsx(ZoomInIcon, { className: "data-space__viewer__diagram-viewer__icon--zoom-in" }) }), _jsx("button", { className: clsx('data-space__viewer__diagram-viewer__header__tool', {
124
+ 'data-space__viewer__diagram-viewer__header__tool--active': diagramViewerState.diagramRenderer.interactionMode ===
125
+ DIAGRAM_INTERACTION_MODE.ZOOM_OUT,
126
+ }), tabIndex: -1, title: "Zoom Out (Z)", onClick: createModeSwitcher(DIAGRAM_INTERACTION_MODE.ZOOM_OUT, DIAGRAM_RELATIONSHIP_EDIT_MODE.NONE), children: _jsx(ZoomOutIcon, { className: "data-space__viewer__diagram-viewer__icon--zoom-out" }) })] }), _jsx("div", { className: "data-space__viewer__diagram-viewer__header__group__separator" }), _jsxs(ControlledDropdownMenu, { className: "data-space__viewer__diagram-viewer__header__group data-space__viewer__diagram-viewer__header__dropdown", title: "Zoom...", content: _jsxs(MenuContent, { children: [_jsx(MenuContentItem, { className: "data-space__viewer__diagram-viewer__header__zoomer__dropdown__menu__item", onClick: zoomToFit, children: "Fit" }), _jsx(MenuContentDivider, {}), DIAGRAM_ZOOM_LEVELS.map((zoomLevel) => (_jsxs(MenuContentItem, { className: "data-space__viewer__diagram-viewer__header__zoomer__dropdown__menu__item", onClick: createCenterZoomer(zoomLevel), children: [zoomLevel, "%"] }, zoomLevel)))] }), menuProps: {
127
+ anchorOrigin: { vertical: 'bottom', horizontal: 'right' },
128
+ transformOrigin: { vertical: 'top', horizontal: 'right' },
129
+ elevation: 7,
130
+ }, children: [_jsxs("div", { className: "data-space__viewer__diagram-viewer__header__dropdown__label data-space__viewer__diagram-viewer__header__zoomer__dropdown__label", children: [Math.round(diagramViewerState.diagramRenderer.zoom * 100), "%"] }), _jsx("div", { className: "data-space__viewer__diagram-viewer__header__dropdown__trigger data-space__viewer__diagram-viewer__header__zoomer__dropdown__trigger", children: _jsx(CaretDownIcon, {}) })] })] })) })] }));
131
+ });
132
+ export const DiagramPlaceholder = (props) => (_jsx("div", { className: "diagram-viewer__placeholder", children: props.message }));
133
+ export const DiagramViewer = observer((props) => {
134
+ const { diagramViewerState, applicationStore, actions } = props;
135
+ const { onSyncZoneWithNavigation, onGenerateAnchorForActivity, onSetWikiPageAnchor, onUnsetWikiPageAnchor, onChangeZone, } = actions;
136
+ const diagrams = diagramViewerState.diagrams;
137
+ const sectionRef = useRef(null);
138
+ const anchor = onGenerateAnchorForActivity(DIAGRAM_VIEWER_MODES.DIAGRAM_VIEWER);
139
+ useCommands(diagramViewerState);
140
+ useEffect(() => {
141
+ if (sectionRef.current) {
142
+ onSetWikiPageAnchor(anchor, sectionRef.current);
143
+ }
144
+ return () => onUnsetWikiPageAnchor(anchor);
145
+ }, [onSetWikiPageAnchor, onUnsetWikiPageAnchor, anchor]);
146
+ const diagramCanvasRef = useRef(null);
147
+ const previousDiagram = diagramViewerState.previousDiagram;
148
+ const nextDiagram = diagramViewerState.nextDiagram;
149
+ const showPreviousDiagram = () => {
150
+ if (previousDiagram) {
151
+ diagramViewerState.setCurrentDiagram(previousDiagram);
152
+ onSyncZoneWithNavigation(previousDiagram);
153
+ }
154
+ };
155
+ const showNextDiagram = () => {
156
+ if (nextDiagram) {
157
+ diagramViewerState.setCurrentDiagram(nextDiagram);
158
+ onSyncZoneWithNavigation(nextDiagram);
159
+ }
160
+ };
161
+ return (_jsxs("div", { ref: sectionRef, className: "data-space__viewer__wiki__section", children: [_jsx("div", { className: "data-space__viewer__wiki__section__header", children: _jsxs("div", { className: "data-space__viewer__wiki__section__header__label", children: ["Diagrams", _jsx("button", { className: "data-space__viewer__wiki__section__header__anchor", tabIndex: -1, onClick: () => onChangeZone(anchor, true), children: _jsx(AnchorLinkIcon, {}) })] }) }), _jsxs("div", { className: "data-space__viewer__wiki__section__content", children: [diagrams.length > 0 && (_jsxs("div", { className: "data-space__viewer__diagram-viewer", children: [_jsx(DiagramViewerHeader, { applicationStore: applicationStore, diagramViewerState: diagramViewerState, actions: actions }), _jsx("div", { className: "data-space__viewer__diagram-viewer__carousel", children: _jsxs("div", { className: "data-space__viewer__diagram-viewer__carousel__frame", children: [_jsx("div", { className: "data-space__viewer__diagram-viewer__carousel__frame__display", children: diagramViewerState.currentDiagram && (_jsx(DiagramCanvas, { diagramViewerState: diagramViewerState, diagram: diagramViewerState.currentDiagram.diagram, ref: diagramCanvasRef, actions: actions })) }), _jsx("button", { className: "data-space__viewer__diagram-viewer__carousel__frame__navigator data-space__viewer__diagram-viewer__carousel__frame__navigator--back", tabIndex: -1, title: `Previous - ${previousDiagram?.title
162
+ ? previousDiagram.title
163
+ : '(untitled)'} (⇦)`, disabled: !previousDiagram, onClick: showPreviousDiagram, children: _jsx(ThinChevronLeftIcon, {}) }), _jsx("button", { className: "data-space__viewer__diagram-viewer__carousel__frame__navigator data-space__viewer__diagram-viewer__carousel__frame__navigator--next", tabIndex: -1, title: `Next - ${nextDiagram?.title ? nextDiagram.title : '(untitled)'} (⇨)`, disabled: !nextDiagram, onClick: showNextDiagram, children: _jsx(ThinChevronRightIcon, {}) }), _jsx("div", { className: "data-space__viewer__diagram-viewer__carousel__frame__indicators", children: _jsx("div", { className: "data-space__viewer__diagram-viewer__carousel__frame__indicators__notch", children: diagrams.map((diagram) => (_jsx("button", { className: clsx('data-space__viewer__diagram-viewer__carousel__frame__indicator', {
164
+ 'data-space__viewer__diagram-viewer__carousel__frame__indicator--active': diagramViewerState.currentDiagram === diagram,
165
+ }), title: `View Diagram - ${diagram.title ? diagram.title : '(untitled)'}`, onClick: () => {
166
+ diagramViewerState.setCurrentDiagram(diagram);
167
+ onSyncZoneWithNavigation(diagram);
168
+ }, children: _jsx(CircleIcon, {}) }, diagram.uuid))) }) })] }) })] })), !diagrams.length && _jsx(DiagramPlaceholder, { message: "(not specified)" })] })] }));
169
+ });
170
+ //# sourceMappingURL=DiagramViewer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DiagramViewer.js","sourceRoot":"","sources":["../../src/components/DiagramViewer.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Copyright (c) 2025-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import type { ClassView } from '../graph/metamodel/pure/packageableElements/diagram/DSL_Diagram_ClassView.js';
17
+ import { type DiagramAnalysisResult, type DiagramRenderer } from './DiagramRenderer.js';
18
+ import type { CommandRegistrar } from '@finos/legend-application';
19
+ import type { Class } from '@finos/legend-graph';
20
+ export declare abstract class DiagramViewerState implements CommandRegistrar {
21
+ readonly diagrams: DiagramAnalysisResult[];
22
+ readonly queryClass?: ((_class: Class) => void) | undefined;
23
+ _renderer?: DiagramRenderer | undefined;
24
+ currentDiagram?: DiagramAnalysisResult | undefined;
25
+ contextMenuClassView?: ClassView | undefined;
26
+ showDescription: boolean;
27
+ expandDescription: boolean;
28
+ abstract registerCommands(): void;
29
+ abstract deregisterCommands(): void;
30
+ constructor(diagrams: DiagramAnalysisResult[], queryClass?: (_class: Class) => void);
31
+ get diagramRenderer(): DiagramRenderer;
32
+ get isDiagramRendererInitialized(): boolean;
33
+ get diagramCursorClass(): string;
34
+ get previousDiagram(): DiagramAnalysisResult | undefined;
35
+ get nextDiagram(): DiagramAnalysisResult | undefined;
36
+ get currentDiagramIndex(): number;
37
+ setDiagramRenderer(val: DiagramRenderer): void;
38
+ setCurrentDiagram(val: DiagramAnalysisResult): void;
39
+ setContextMenuClassView(val: ClassView | undefined): void;
40
+ setupDiagramRenderer(): void;
41
+ setShowDescription(val: boolean): void;
42
+ setExpandDescription(val: boolean): void;
43
+ }
44
+ //# sourceMappingURL=DiagramViewerState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DiagramViewerState.d.ts","sourceRoot":"","sources":["../../src/components/DiagramViewerState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8EAA8E,CAAC;AAC9G,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EAErB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAEjD,8BAAsB,kBAAmB,YAAW,gBAAgB;IAClE,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAE5D,SAAS,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACxC,cAAc,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IACnD,oBAAoB,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC7C,eAAe,UAAQ;IACvB,iBAAiB,UAAS;IAE1B,QAAQ,CAAC,gBAAgB,IAAI,IAAI;IACjC,QAAQ,CAAC,kBAAkB,IAAI,IAAI;gBAGjC,QAAQ,EAAE,qBAAqB,EAAE,EACjC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,KAAK,IAAI;IAuBtC,IAAI,eAAe,IAAI,eAAe,CAKrC;IAED,IAAI,4BAA4B,IAAI,OAAO,CAE1C;IAMD,IAAI,kBAAkB,IAAI,MAAM,CAyB/B;IAED,IAAI,eAAe,IAAI,qBAAqB,GAAG,SAAS,CASvD;IAED,IAAI,WAAW,IAAI,qBAAqB,GAAG,SAAS,CASnD;IAED,IAAI,mBAAmB,IAAI,MAAM,CAIhC;IAED,kBAAkB,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI;IAI9C,iBAAiB,CAAC,GAAG,EAAE,qBAAqB,GAAG,IAAI;IAInD,uBAAuB,CAAC,GAAG,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI;IAIzD,oBAAoB,IAAI,IAAI;IAe5B,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKtC,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;CAGzC"}
@@ -0,0 +1,136 @@
1
+ /**
2
+ * Copyright (c) 2025-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { guaranteeNonNullable } from '@finos/legend-shared';
17
+ import { action, computed, makeObservable, observable } from 'mobx';
18
+ import { DIAGRAM_INTERACTION_MODE, } from './DiagramRenderer.js';
19
+ export class DiagramViewerState {
20
+ diagrams;
21
+ queryClass;
22
+ _renderer;
23
+ currentDiagram;
24
+ contextMenuClassView;
25
+ showDescription = true;
26
+ expandDescription = false;
27
+ constructor(diagrams, queryClass) {
28
+ makeObservable(this, {
29
+ _renderer: observable,
30
+ currentDiagram: observable,
31
+ contextMenuClassView: observable,
32
+ showDescription: observable,
33
+ expandDescription: observable,
34
+ previousDiagram: computed,
35
+ nextDiagram: computed,
36
+ currentDiagramIndex: computed,
37
+ diagramRenderer: computed,
38
+ setDiagramRenderer: action,
39
+ setCurrentDiagram: action,
40
+ setContextMenuClassView: action,
41
+ setShowDescription: action,
42
+ setExpandDescription: action,
43
+ });
44
+ this.queryClass = queryClass;
45
+ this.diagrams = diagrams;
46
+ this.currentDiagram = diagrams[0];
47
+ }
48
+ get diagramRenderer() {
49
+ return guaranteeNonNullable(this._renderer, `Diagram renderer must be initialized (this is likely caused by calling this method at the wrong place)`);
50
+ }
51
+ get isDiagramRendererInitialized() {
52
+ return Boolean(this._renderer);
53
+ }
54
+ // NOTE: we have tried to use React to control the cursor and
55
+ // could not overcome the jank/lag problem, so we settle with CSS-based approach
56
+ // See https://css-tricks.com/using-css-cursors/
57
+ // See https://developer.mozilla.org/en-US/docs/Web/CSS/cursor
58
+ get diagramCursorClass() {
59
+ if (!this.isDiagramRendererInitialized) {
60
+ return '';
61
+ }
62
+ switch (this.diagramRenderer.interactionMode) {
63
+ case DIAGRAM_INTERACTION_MODE.PAN: {
64
+ return this.diagramRenderer.leftClick
65
+ ? 'data-space__viewer__diagram-viewer__cursor--grabbing'
66
+ : 'data-space__viewer__diagram-viewer__cursor--grab';
67
+ }
68
+ case DIAGRAM_INTERACTION_MODE.ZOOM_IN: {
69
+ return 'data-space__viewer__diagram-viewer__cursor--zoom-in';
70
+ }
71
+ case DIAGRAM_INTERACTION_MODE.ZOOM_OUT: {
72
+ return 'data-space__viewer__diagram-viewer__cursor--zoom-out';
73
+ }
74
+ case DIAGRAM_INTERACTION_MODE.LAYOUT: {
75
+ if (this.diagramRenderer.mouseOverClassView) {
76
+ return 'data-space__viewer__diagram-viewer__cursor--pointer';
77
+ }
78
+ return '';
79
+ }
80
+ default:
81
+ return '';
82
+ }
83
+ }
84
+ get previousDiagram() {
85
+ if (!this.currentDiagram) {
86
+ return undefined;
87
+ }
88
+ const idx = this.diagrams.indexOf(this.currentDiagram);
89
+ if (idx === 0 || idx === -1) {
90
+ return undefined;
91
+ }
92
+ return this.diagrams[idx - 1];
93
+ }
94
+ get nextDiagram() {
95
+ if (!this.currentDiagram) {
96
+ return undefined;
97
+ }
98
+ const idx = this.diagrams.indexOf(this.currentDiagram);
99
+ if (idx === this.diagrams.length - 1 || idx === -1) {
100
+ return undefined;
101
+ }
102
+ return this.diagrams[idx + 1];
103
+ }
104
+ get currentDiagramIndex() {
105
+ return this.currentDiagram
106
+ ? this.diagrams.indexOf(this.currentDiagram) + 1
107
+ : 0;
108
+ }
109
+ setDiagramRenderer(val) {
110
+ this._renderer = val;
111
+ }
112
+ setCurrentDiagram(val) {
113
+ this.currentDiagram = val;
114
+ }
115
+ setContextMenuClassView(val) {
116
+ this.contextMenuClassView = val;
117
+ }
118
+ setupDiagramRenderer() {
119
+ this.diagramRenderer.setIsReadOnly(true);
120
+ this.diagramRenderer.setEnableLayoutAutoAdjustment(true);
121
+ if (this.queryClass) {
122
+ this.diagramRenderer.onClassViewDoubleClick = (classView) => this.queryClass?.(classView.class.value);
123
+ }
124
+ this.diagramRenderer.onClassViewRightClick = (classView) => {
125
+ this.setContextMenuClassView(classView);
126
+ };
127
+ }
128
+ setShowDescription(val) {
129
+ this.showDescription = val;
130
+ this.setExpandDescription(false);
131
+ }
132
+ setExpandDescription(val) {
133
+ this.expandDescription = val;
134
+ }
135
+ }
136
+ //# sourceMappingURL=DiagramViewerState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DiagramViewerState.js","sourceRoot":"","sources":["../../src/components/DiagramViewerState.ts"],"names":[],"mappings":"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"}
@@ -13,5 +13,8 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- export { DiagramRenderer, DIAGRAM_ALIGNER_OPERATOR, DIAGRAM_ZOOM_LEVELS, DIAGRAM_INTERACTION_MODE, DIAGRAM_RELATIONSHIP_EDIT_MODE, } from './DiagramRenderer.js';
16
+ export { DiagramRenderer, DIAGRAM_ALIGNER_OPERATOR, DIAGRAM_ZOOM_LEVELS, DIAGRAM_INTERACTION_MODE, DIAGRAM_RELATIONSHIP_EDIT_MODE, DiagramAnalysisResult, } from './DiagramRenderer.js';
17
+ export * from './DiagramViewerState.js';
18
+ export * from './DiagramViewer.js';
19
+ export * from './DiagramRenderer.js';
17
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,8BAA8B,EAC9B,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
@@ -13,5 +13,8 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- export { DiagramRenderer, DIAGRAM_ALIGNER_OPERATOR, DIAGRAM_ZOOM_LEVELS, DIAGRAM_INTERACTION_MODE, DIAGRAM_RELATIONSHIP_EDIT_MODE, } from './DiagramRenderer.js';
16
+ export { DiagramRenderer, DIAGRAM_ALIGNER_OPERATOR, DIAGRAM_ZOOM_LEVELS, DIAGRAM_INTERACTION_MODE, DIAGRAM_RELATIONSHIP_EDIT_MODE, DiagramAnalysisResult, } from './DiagramRenderer.js';
17
+ export * from './DiagramViewerState.js';
18
+ export * from './DiagramViewer.js';
19
+ export * from './DiagramRenderer.js';
17
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,8BAA8B,EAC9B,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
@@ -24,10 +24,13 @@ export { GeneralizationView } from '../graph/metamodel/pure/packageableElements/
24
24
  export { Point } from '../graph/metamodel/pure/packageableElements/diagram/geometry/DSL_Diagram_Point.js';
25
25
  export { Rectangle } from '../graph/metamodel/pure/packageableElements/diagram/geometry/DSL_Diagram_Rectangle.js';
26
26
  export { PositionedRectangle } from '../graph/metamodel/pure/packageableElements/diagram/geometry/DSL_Diagram_PositionedRectangle.js';
27
+ export { RelationshipViewEnd } from '../graph/metamodel/pure/packageableElements/diagram/DSL_Diagram_RelationshipViewEnd.js';
28
+ export { ClassViewReference } from '../graph/metamodel/pure/packageableElements/diagram/DSL_Diagram_ClassViewReference.js';
27
29
  export * from '../graph/helpers/DSL_Diagram_Helper.js';
28
30
  export * from './DSL_Diagram_GraphManagerHelper.js';
29
31
  export { V1_DSL_Diagram_PackageableElementPointerType } from './protocol/pure/DSL_Diagram_PureProtocolProcessorPlugin.js';
30
32
  export { V1_resolveDiagram } from './protocol/pure/v1/transformation/pureGraph/V1_DSL_Diagram_GraphBuilderHelper.js';
31
33
  export { V1_transformDiagram } from './protocol/pure/v1/transformation/pureGraph/V1_DSL_Diagram_TransformerHelper.js';
32
34
  export * from './protocol/pure/v1/transformation/pureProtocol/V1_DSL_Diagram_ProtocolHelper.js';
35
+ export * from './action/changeDetection/DSL_Diagram_ObserverHelper.js';
33
36
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graph-manager/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,qCAAqC,CAAC;AAEpD,OAAO,EAAE,OAAO,EAAE,MAAM,4EAA4E,CAAC;AACrG,OAAO,EAAE,SAAS,EAAE,MAAM,8EAA8E,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qFAAqF,CAAC;AACvH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uFAAuF,CAAC;AAC3H,OAAO,EAAE,YAAY,EAAE,MAAM,iFAAiF,CAAC;AAC/G,OAAO,EAAE,eAAe,EAAE,MAAM,oFAAoF,CAAC;AACrH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uFAAuF,CAAC;AAC3H,OAAO,EAAE,KAAK,EAAE,MAAM,mFAAmF,CAAC;AAC1G,OAAO,EAAE,SAAS,EAAE,MAAM,uFAAuF,CAAC;AAClH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iGAAiG,CAAC;AAEtI,cAAc,wCAAwC,CAAC;AACvD,cAAc,qCAAqC,CAAC;AACpD,OAAO,EAAE,4CAA4C,EAAE,MAAM,4DAA4D,CAAC;AAC1H,OAAO,EAAE,iBAAiB,EAAE,MAAM,kFAAkF,CAAC;AACrH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iFAAiF,CAAC;AACtH,cAAc,iFAAiF,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graph-manager/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,qCAAqC,CAAC;AAEpD,OAAO,EAAE,OAAO,EAAE,MAAM,4EAA4E,CAAC;AACrG,OAAO,EAAE,SAAS,EAAE,MAAM,8EAA8E,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qFAAqF,CAAC;AACvH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uFAAuF,CAAC;AAC3H,OAAO,EAAE,YAAY,EAAE,MAAM,iFAAiF,CAAC;AAC/G,OAAO,EAAE,eAAe,EAAE,MAAM,oFAAoF,CAAC;AACrH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uFAAuF,CAAC;AAC3H,OAAO,EAAE,KAAK,EAAE,MAAM,mFAAmF,CAAC;AAC1G,OAAO,EAAE,SAAS,EAAE,MAAM,uFAAuF,CAAC;AAClH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iGAAiG,CAAC;AACtI,OAAO,EAAE,mBAAmB,EAAE,MAAM,wFAAwF,CAAC;AAC7H,OAAO,EAAE,kBAAkB,EAAE,MAAM,uFAAuF,CAAC;AAE3H,cAAc,wCAAwC,CAAC;AACvD,cAAc,qCAAqC,CAAC;AACpD,OAAO,EAAE,4CAA4C,EAAE,MAAM,4DAA4D,CAAC;AAC1H,OAAO,EAAE,iBAAiB,EAAE,MAAM,kFAAkF,CAAC;AACrH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iFAAiF,CAAC;AACtH,cAAc,iFAAiF,CAAC;AAChG,cAAc,wDAAwD,CAAC"}
@@ -24,10 +24,13 @@ export { GeneralizationView } from '../graph/metamodel/pure/packageableElements/
24
24
  export { Point } from '../graph/metamodel/pure/packageableElements/diagram/geometry/DSL_Diagram_Point.js';
25
25
  export { Rectangle } from '../graph/metamodel/pure/packageableElements/diagram/geometry/DSL_Diagram_Rectangle.js';
26
26
  export { PositionedRectangle } from '../graph/metamodel/pure/packageableElements/diagram/geometry/DSL_Diagram_PositionedRectangle.js';
27
+ export { RelationshipViewEnd } from '../graph/metamodel/pure/packageableElements/diagram/DSL_Diagram_RelationshipViewEnd.js';
28
+ export { ClassViewReference } from '../graph/metamodel/pure/packageableElements/diagram/DSL_Diagram_ClassViewReference.js';
27
29
  export * from '../graph/helpers/DSL_Diagram_Helper.js';
28
30
  export * from './DSL_Diagram_GraphManagerHelper.js';
29
31
  export { V1_DSL_Diagram_PackageableElementPointerType } from './protocol/pure/DSL_Diagram_PureProtocolProcessorPlugin.js';
30
32
  export { V1_resolveDiagram } from './protocol/pure/v1/transformation/pureGraph/V1_DSL_Diagram_GraphBuilderHelper.js';
31
33
  export { V1_transformDiagram } from './protocol/pure/v1/transformation/pureGraph/V1_DSL_Diagram_TransformerHelper.js';
32
34
  export * from './protocol/pure/v1/transformation/pureProtocol/V1_DSL_Diagram_ProtocolHelper.js';
35
+ export * from './action/changeDetection/DSL_Diagram_ObserverHelper.js';
33
36
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graph-manager/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,qCAAqC,CAAC;AAEpD,OAAO,EAAE,OAAO,EAAE,MAAM,4EAA4E,CAAC;AACrG,OAAO,EAAE,SAAS,EAAE,MAAM,8EAA8E,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qFAAqF,CAAC;AACvH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uFAAuF,CAAC;AAC3H,OAAO,EAAE,YAAY,EAAE,MAAM,iFAAiF,CAAC;AAC/G,OAAO,EAAE,eAAe,EAAE,MAAM,oFAAoF,CAAC;AACrH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uFAAuF,CAAC;AAC3H,OAAO,EAAE,KAAK,EAAE,MAAM,mFAAmF,CAAC;AAC1G,OAAO,EAAE,SAAS,EAAE,MAAM,uFAAuF,CAAC;AAClH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iGAAiG,CAAC;AAEtI,cAAc,wCAAwC,CAAC;AACvD,cAAc,qCAAqC,CAAC;AACpD,OAAO,EAAE,4CAA4C,EAAE,MAAM,4DAA4D,CAAC;AAC1H,OAAO,EAAE,iBAAiB,EAAE,MAAM,kFAAkF,CAAC;AACrH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iFAAiF,CAAC;AACtH,cAAc,iFAAiF,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graph-manager/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,qCAAqC,CAAC;AAEpD,OAAO,EAAE,OAAO,EAAE,MAAM,4EAA4E,CAAC;AACrG,OAAO,EAAE,SAAS,EAAE,MAAM,8EAA8E,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,MAAM,qFAAqF,CAAC;AACvH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uFAAuF,CAAC;AAC3H,OAAO,EAAE,YAAY,EAAE,MAAM,iFAAiF,CAAC;AAC/G,OAAO,EAAE,eAAe,EAAE,MAAM,oFAAoF,CAAC;AACrH,OAAO,EAAE,kBAAkB,EAAE,MAAM,uFAAuF,CAAC;AAC3H,OAAO,EAAE,KAAK,EAAE,MAAM,mFAAmF,CAAC;AAC1G,OAAO,EAAE,SAAS,EAAE,MAAM,uFAAuF,CAAC;AAClH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iGAAiG,CAAC;AACtI,OAAO,EAAE,mBAAmB,EAAE,MAAM,wFAAwF,CAAC;AAC7H,OAAO,EAAE,kBAAkB,EAAE,MAAM,uFAAuF,CAAC;AAE3H,cAAc,wCAAwC,CAAC;AACvD,cAAc,qCAAqC,CAAC;AACpD,OAAO,EAAE,4CAA4C,EAAE,MAAM,4DAA4D,CAAC;AAC1H,OAAO,EAAE,iBAAiB,EAAE,MAAM,kFAAkF,CAAC;AACrH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iFAAiF,CAAC;AACtH,cAAc,iFAAiF,CAAC;AAChG,cAAc,wDAAwD,CAAC"}
package/lib/index.css CHANGED
@@ -1,4 +1,4 @@
1
- /** @license @finos/legend-extension-dsl-diagram v8.1.195
1
+ /** @license @finos/legend-extension-dsl-diagram v8.1.196
2
2
  * Copyright (c) 2020-present, Goldman Sachs
3
3
  *
4
4
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -14,4 +14,4 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- .diagram-editor{height:100%;width:100%;display:flex;flex-direction:column;overflow:hidden}.diagram-editor__header{display:flex;align-items:center;justify-content:flex-end;height:2.8rem;background:var(--color-dark-grey-200);border:.1rem solid var(--color-dark-grey-85)}.diagram-editor__header__actions{display:flex;align-items:center;height:100%}.diagram-editor__header__action{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;height:2.8rem;width:2.8rem}.diagram-editor__header__action svg{color:var(--color-dark-grey-400)}.diagram-editor__header__action:hover svg,.diagram-editor__header__action--active svg{color:var(--color-light-grey-300)}.diagram-editor__header__action[disabled] svg,.diagram-editor__header__action[disabled]:hover svg{color:var(--color-dark-grey-300)}.diagram-editor__header__group{display:flex;align-items:center;height:100%;padding:0 .5rem}.diagram-editor__header__group__separator{height:1.6rem;border:.05rem solid var(--color-dark-shade-100)}.diagram-editor__header__group__action{width:2rem}.diagram-editor__header__dropdown{display:flex;align-items:center;margin-left:.3rem;height:1.8rem;border:.1rem solid var(--color-dark-grey-300)}.diagram-editor__header__dropdown__label{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;height:100%;color:var(--color-dark-grey-500);font-weight:500;font-size:1.2rem}.diagram-editor__header__dropdown__trigger{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;height:100%;cursor:pointer}.diagram-editor__header__dropdown__trigger svg{color:var(--color-dark-grey-500)}.diagram-editor__header__zoomer__dropdown__label{width:5rem}.diagram-editor__header__zoomer__dropdown__trigger{width:2rem}.diagram-editor__header__zoomer__dropdown__menu__item{display:flex;align-items:center;justify-content:center;width:7rem}.diagram-editor__content{height:calc(100% - 2.8rem);width:100%;display:flex;position:relative;overflow:hidden}.diagram-editor__stage{height:100%;width:100%;display:flex;position:relative}.diagram-editor__overlay{position:absolute;z-index:1;width:100%;height:100%;pointer-events:none}.diagram-editor__overlay__panel-resizer,.diagram-editor__overlay__panel{pointer-events:auto}.diagram-editor__tools{display:flex;align-items:center;flex-direction:column;width:4.4rem;height:100%;background:var(--color-dark-grey-200);padding:.5rem;border-left:.1rem solid var(--color-dark-grey-85)}.diagram-editor__tools__divider{flex-grow:0;flex-shrink:0;width:100%;border-radius:.1rem;height:.2rem;background:var(--color-dark-grey-300);margin:.5rem 0}.diagram-editor__tool{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;height:3.4rem;width:3.4rem;border-radius:.2rem}.diagram-editor__tool--active{border-radius:.2rem;background:var(--color-dark-grey-100);border:.1rem solid var(--color-blue-200)}.diagram-editor__tool:hover svg{color:var(--color-light-grey-100)}.diagram-editor__tool:hover[disabled] svg,.diagram-editor__tool[disabled] svg{color:var(--color-dark-grey-400)}.diagram-editor__tool svg{color:var(--color-light-grey-300)}.diagram-editor__icon--layout,.diagram-editor__icon--pan,.diagram-editor__icon--add-class,.diagram-editor__icon--sidebar,.diagram-editor__icon--zoom-in,.diagram-editor__icon--zoom-out{font-size:1.8rem}.diagram-editor__icon--aligner{font-size:1.4rem}.diagram-editor__icon--property{font-size:2.2rem;transform:rotate(135deg)}.diagram-editor__icon--association{font-size:2.2rem}.diagram-editor__icon--inheritance{font-size:1.8rem;transform:rotate(90deg)}.diagram-editor__icon--hotkey-info{font-size:2.2rem}.diagram-editor__canvas{width:calc(100% - 4.4rem)}.diagram-editor__cursor--crosshair{cursor:crosshair}.diagram-editor__cursor--text{cursor:text}.diagram-editor__cursor--pointer{cursor:pointer}.diagram-editor__cursor--resize{cursor:nwse-resize}.diagram-editor__cursor--add{cursor:cell}.diagram-editor__cursor--zoom-in{cursor:zoom-in}.diagram-editor__cursor--zoom-out{cursor:zoom-out}.diagram-editor__cursor--grab{cursor:grab}.diagram-editor__cursor--grabbing{cursor:grabbing}.diagram-editor__cursor--not-allowed{cursor:not-allowed}.diagram-editor__side-panel{background:var(--color-dark-grey-85);border-left:.1rem solid var(--color-dark-grey-85)}.diagram-editor__hotkeys__dialog .modal__body{padding:3rem}.diagram-editor__hotkey__groups__divider{flex-grow:0;flex-shrink:0;width:100%;height:.1rem;background:var(--color-dark-grey-100);margin:.7rem 0}.diagram-editor__hotkey__group{display:flex;align-items:center;padding:.5rem 0}.diagram-editor__hotkey__annotation{display:flex;align-content:center;justify-content:flex-end;padding-right:2rem;width:40rem;color:var(--color-dark-grey-500);font-weight:500}.diagram-editor__hotkey__keys .hotkey__key{color:var(--color-light-grey-400);background:var(--color-dark-grey-200)}.diagram-editor__hotkey__keys .hotkey__plus svg{color:var(--color-light-grey-400)}.diagram-editor__class-view-editor{height:100%;width:100%}.diagram-editor__class-view-editor__header{height:2.8rem;width:100%}.diagram-editor__class-view-editor__header__tabs{height:2.8rem;z-index:1;display:flex;overflow-x:auto;overflow-y:hidden}.diagram-editor__class-view-editor__header__tab{height:100%;display:inline-flex;align-items:center;justify-content:center;padding:0 1rem;border-right:.1rem solid var(--color-dark-grey-280);color:var(--color-light-grey-250);white-space:nowrap;cursor:pointer}.diagram-editor__class-view-editor__header__tab--active{position:relative}.diagram-editor__class-view-editor__header__tab--active::after{content:"";height:.4rem;width:100%;position:absolute;bottom:0;background:var(--color-yellow-200)}.diagram-editor__class-view-editor__content{position:relative;height:calc(100% - 2.8rem);width:100%}.diagram-editor__class-view-editor__content__form{padding:1rem}.diagram-editor__inline-property-editor{display:flex;align-items:center;height:2.8rem;width:23.9rem;padding:.3rem}.diagram-editor__inline-property-editor--with-type{width:39.2rem}.diagram-editor__inline-property-editor__name{flex-grow:0;flex-shrink:0;width:15rem;height:2.2rem;border:.1rem solid var(--color-dark-grey-300);margin-right:.3rem}.diagram-editor__inline-property-editor__type{flex-grow:0;flex-shrink:0;width:15rem;margin-right:.3rem}.diagram-editor__inline-property-editor__multiplicity-editor{display:flex;align-items:center;flex-grow:0;flex-shrink:0;width:8rem}.diagram-editor__inline-property-editor__multiplicity-editor__bound{flex-grow:0;flex-shrink:0;width:3rem;padding:0 .5rem;height:2.2rem;border:.1rem solid var(--color-dark-grey-300)}.diagram-editor__inline-property-editor__multiplicity-editor__range{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;width:2rem;padding:0 .3rem;font-size:2rem;font-weight:bold;height:2.2rem;color:var(--color-dark-grey-400);cursor:default}.diagram-editor__inline-property-editor__close-btn{display:none}.diagram-editor__inline-class-creator{display:flex;align-items:center;height:2.8rem;width:25.6rem;padding:.3rem}.diagram-editor__inline-class-creator__path{flex-grow:0;flex-shrink:0;width:25rem;height:2.2rem;border:.1rem solid var(--color-dark-grey-300)}.diagram-editor__inline-class-creator__close-btn{display:none}:root{--color-diagram: var(--color-magenta-100)}.color--diagram{color:var(--color-diagram)}.diagram-canvas{outline:none;width:100%;height:100%;position:relative;overflow:hidden}.class-editor__diagram-preview{width:100%;height:100%}/*# sourceMappingURL=index.css.map */
17
+ .diagram-editor{height:100%;width:100%;display:flex;flex-direction:column;overflow:hidden}.diagram-editor__header{display:flex;align-items:center;justify-content:flex-end;height:2.8rem;background:var(--color-dark-grey-200);border:.1rem solid var(--color-dark-grey-85)}.diagram-editor__header__actions{display:flex;align-items:center;height:100%}.diagram-editor__header__action{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;height:2.8rem;width:2.8rem}.diagram-editor__header__action svg{color:var(--color-dark-grey-400)}.diagram-editor__header__action:hover svg,.diagram-editor__header__action--active svg{color:var(--color-light-grey-300)}.diagram-editor__header__action[disabled] svg,.diagram-editor__header__action[disabled]:hover svg{color:var(--color-dark-grey-300)}.diagram-editor__header__group{display:flex;align-items:center;height:100%;padding:0 .5rem}.diagram-editor__header__group__separator{height:1.6rem;border:.05rem solid var(--color-dark-shade-100)}.diagram-editor__header__group__action{width:2rem}.diagram-editor__header__dropdown{display:flex;align-items:center;margin-left:.3rem;height:1.8rem;border:.1rem solid var(--color-dark-grey-300)}.diagram-editor__header__dropdown__label{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;height:100%;color:var(--color-dark-grey-500);font-weight:500;font-size:1.2rem}.diagram-editor__header__dropdown__trigger{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;height:100%;cursor:pointer}.diagram-editor__header__dropdown__trigger svg{color:var(--color-dark-grey-500)}.diagram-editor__header__zoomer__dropdown__label{width:5rem}.diagram-editor__header__zoomer__dropdown__trigger{width:2rem}.diagram-editor__header__zoomer__dropdown__menu__item{display:flex;align-items:center;justify-content:center;width:7rem}.diagram-editor__content{height:calc(100% - 2.8rem);width:100%;display:flex;position:relative;overflow:hidden}.diagram-editor__stage{height:100%;width:100%;display:flex;position:relative}.diagram-editor__overlay{position:absolute;z-index:1;width:100%;height:100%;pointer-events:none}.diagram-editor__overlay__panel-resizer,.diagram-editor__overlay__panel{pointer-events:auto}.diagram-editor__tools{display:flex;align-items:center;flex-direction:column;width:4.4rem;height:100%;background:var(--color-dark-grey-200);padding:.5rem;border-left:.1rem solid var(--color-dark-grey-85)}.diagram-editor__tools__divider{flex-grow:0;flex-shrink:0;width:100%;border-radius:.1rem;height:.2rem;background:var(--color-dark-grey-300);margin:.5rem 0}.diagram-editor__tool{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;height:3.4rem;width:3.4rem;border-radius:.2rem}.diagram-editor__tool--active{border-radius:.2rem;background:var(--color-dark-grey-100);border:.1rem solid var(--color-blue-200)}.diagram-editor__tool:hover svg{color:var(--color-light-grey-100)}.diagram-editor__tool:hover[disabled] svg,.diagram-editor__tool[disabled] svg{color:var(--color-dark-grey-400)}.diagram-editor__tool svg{color:var(--color-light-grey-300)}.diagram-editor__icon--layout,.diagram-editor__icon--pan,.diagram-editor__icon--add-class,.diagram-editor__icon--sidebar,.diagram-editor__icon--zoom-in,.diagram-editor__icon--zoom-out{font-size:1.8rem}.diagram-editor__icon--aligner{font-size:1.4rem}.diagram-editor__icon--property{font-size:2.2rem;transform:rotate(135deg)}.diagram-editor__icon--association{font-size:2.2rem}.diagram-editor__icon--inheritance{font-size:1.8rem;transform:rotate(90deg)}.diagram-editor__icon--hotkey-info{font-size:2.2rem}.diagram-editor__canvas{width:calc(100% - 4.4rem)}.diagram-editor__cursor--crosshair{cursor:crosshair}.diagram-editor__cursor--text{cursor:text}.diagram-editor__cursor--pointer{cursor:pointer}.diagram-editor__cursor--resize{cursor:nwse-resize}.diagram-editor__cursor--add{cursor:cell}.diagram-editor__cursor--zoom-in{cursor:zoom-in}.diagram-editor__cursor--zoom-out{cursor:zoom-out}.diagram-editor__cursor--grab{cursor:grab}.diagram-editor__cursor--grabbing{cursor:grabbing}.diagram-editor__cursor--not-allowed{cursor:not-allowed}.diagram-editor__side-panel{background:var(--color-dark-grey-85);border-left:.1rem solid var(--color-dark-grey-85)}.diagram-editor__hotkeys__dialog .modal__body{padding:3rem}.diagram-editor__hotkey__groups__divider{flex-grow:0;flex-shrink:0;width:100%;height:.1rem;background:var(--color-dark-grey-100);margin:.7rem 0}.diagram-editor__hotkey__group{display:flex;align-items:center;padding:.5rem 0}.diagram-editor__hotkey__annotation{display:flex;align-content:center;justify-content:flex-end;padding-right:2rem;width:40rem;color:var(--color-dark-grey-500);font-weight:500}.diagram-editor__hotkey__keys .hotkey__key{color:var(--color-light-grey-400);background:var(--color-dark-grey-200)}.diagram-editor__hotkey__keys .hotkey__plus svg{color:var(--color-light-grey-400)}.diagram-editor__class-view-editor{height:100%;width:100%}.diagram-editor__class-view-editor__header{height:2.8rem;width:100%}.diagram-editor__class-view-editor__header__tabs{height:2.8rem;z-index:1;display:flex;overflow-x:auto;overflow-y:hidden}.diagram-editor__class-view-editor__header__tab{height:100%;display:inline-flex;align-items:center;justify-content:center;padding:0 1rem;border-right:.1rem solid var(--color-dark-grey-280);color:var(--color-light-grey-250);white-space:nowrap;cursor:pointer}.diagram-editor__class-view-editor__header__tab--active{position:relative}.diagram-editor__class-view-editor__header__tab--active::after{content:"";height:.4rem;width:100%;position:absolute;bottom:0;background:var(--color-yellow-200)}.diagram-editor__class-view-editor__content{position:relative;height:calc(100% - 2.8rem);width:100%}.diagram-editor__class-view-editor__content__form{padding:1rem}.diagram-editor__inline-property-editor{display:flex;align-items:center;height:2.8rem;width:23.9rem;padding:.3rem}.diagram-editor__inline-property-editor--with-type{width:39.2rem}.diagram-editor__inline-property-editor__name{flex-grow:0;flex-shrink:0;width:15rem;height:2.2rem;border:.1rem solid var(--color-dark-grey-300);margin-right:.3rem}.diagram-editor__inline-property-editor__type{flex-grow:0;flex-shrink:0;width:15rem;margin-right:.3rem}.diagram-editor__inline-property-editor__multiplicity-editor{display:flex;align-items:center;flex-grow:0;flex-shrink:0;width:8rem}.diagram-editor__inline-property-editor__multiplicity-editor__bound{flex-grow:0;flex-shrink:0;width:3rem;padding:0 .5rem;height:2.2rem;border:.1rem solid var(--color-dark-grey-300)}.diagram-editor__inline-property-editor__multiplicity-editor__range{display:flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;width:2rem;padding:0 .3rem;font-size:2rem;font-weight:bold;height:2.2rem;color:var(--color-dark-grey-400);cursor:default}.diagram-editor__inline-property-editor__close-btn{display:none}.diagram-editor__inline-class-creator{display:flex;align-items:center;height:2.8rem;width:25.6rem;padding:.3rem}.diagram-editor__inline-class-creator__path{flex-grow:0;flex-shrink:0;width:25rem;height:2.2rem;border:.1rem solid var(--color-dark-grey-300)}.diagram-editor__inline-class-creator__close-btn{display:none}.diagram-viewer__placeholder{display:flex;align-items:center;justify-content:center;justify-content:flex-start;width:100%;border-radius:.2rem;color:var(--color-dark-grey-300);user-select:none;height:auto;background:rgba(0,0,0,0);font-style:italic}:root{--color-diagram: var(--color-magenta-100)}.color--diagram{color:var(--color-diagram)}.diagram-canvas{outline:none;width:100%;height:100%;position:relative;overflow:hidden}.class-editor__diagram-preview{width:100%;height:100%}/*# sourceMappingURL=index.css.map */
package/lib/index.css.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../style/_diagram-editor.scss","../../../node_modules/@finos/legend-art/scss/_mixins.scss","../style/index.scss"],"names":[],"mappings":"AAkBA,gBACE,YACA,WACA,aACA,sBACA,gBAEA,wBCKA,aACA,mBDHE,yBACA,cACA,sCACA,6CAGF,iCCJA,aACA,mBDME,YAGF,gCChBA,aACA,mBACA,uBA4BA,YACA,cDXE,cACA,aAEA,oCACE,iCAKA,sFACE,kCAMF,kGACE,iCAKN,+BCpCA,aACA,mBDsCE,YACA,gBAEA,0CACE,cACA,gDAGF,uCACE,WAIJ,kCCpDA,aACA,mBDsDE,kBACA,cACA,8CAEA,yCCjEF,aACA,mBACA,uBA4BA,YACA,cDsCI,YACA,iCACA,gBACA,iBAGF,2CC3EF,aACA,mBACA,uBA4BA,YACA,cDgDI,YACA,eAEA,+CACE,iCAMJ,iDACE,WAGF,mDACE,WAGF,sDCjGF,aACA,mBACA,uBDkGI,WAIJ,yBACE,2BACA,WACA,aACA,kBACA,gBAGF,uBACE,YACA,WACA,aACA,kBAGF,yBACE,kBACA,UACA,WACA,YACA,oBAGF,wEAEE,oBAGF,uBC9HA,aACA,mBDgIE,sBACA,aACA,YACA,sCACA,cACA,kDAEA,gCChHF,YACA,cDkHI,WACA,oBACA,aACA,sCACA,eAIJ,sBCzJA,aACA,mBACA,uBA4BA,YACA,cD8HE,cACA,aACA,oBAEA,8BACE,oBACA,sCACA,yCAIA,gCACE,kCAMF,8EACE,iCAIJ,0BACE,kCAKF,wLAME,iBAGF,+BACE,iBAGF,gCACE,iBACA,yBAGF,mCACE,iBAGF,mCACE,iBACA,wBAGF,mCACE,iBAIJ,wBACE,0BAIA,mCACE,iBAGF,8BACE,YAGF,iCACE,eAGF,gCACE,mBAGF,6BACE,YAGF,iCACE,eAGF,kCACE,gBAGF,8BACE,YAGF,kCACE,gBAGF,qCACE,mBAIJ,4BACE,qCACA,kDAGF,8CACE,aAGF,yCCnPA,YACA,cDqPE,WACA,aACA,sCACA,eAGF,+BCpRA,aACA,mBDsRE,gBAGF,oCACE,aACA,qBACA,yBACA,mBACA,YACA,iCACA,gBAKE,2CACE,kCACA,sCAGF,gDACE,kCAMR,mCACE,YACA,WAEA,2CACE,cACA,WAEA,iDACE,cACA,UACA,aACA,gBACA,kBAGF,gDACE,YACA,oBACA,mBACA,uBACA,eACA,oDACA,kCACA,mBACA,eAGF,wDACE,kBAGF,+DACE,WACA,aACA,WACA,kBACA,SACA,mCAIJ,4CACE,kBACA,2BACA,WAGF,kDACE,aAIJ,wCCvWE,aACA,mBDyWA,cACA,cACA,cAEA,mDACE,cAGF,8CC1VA,YACA,cD4VE,YACA,cACA,8CACA,mBAGF,8CCnWA,YACA,cDqWE,YACA,mBAGF,6DClYA,aACA,mBAuBA,YACA,cD6WE,WAEA,oEChXF,YACA,cDkXI,WACA,gBACA,cACA,8CAGF,oECvZF,aACA,mBACA,uBA4BA,YACA,cD4XI,WACA,gBACA,eACA,iBACA,cACA,iCACA,eAIJ,mDACE,aAIJ,sCCpaE,aACA,mBDsaA,cACA,cACA,cAEA,4CCnZA,YACA,cDqZE,YACA,cACA,8CAGF,iDACE,aEhcJ,MACE,0CAGF,gBACE,2BAGF,gBACE,aACA,WACA,YACA,kBACA,gBAGF,+BACE,WACA","file":"index.css"}
1
+ {"version":3,"sourceRoot":"","sources":["../style/_diagram-editor.scss","../../../node_modules/@finos/legend-art/scss/_mixins.scss","../style/index.scss"],"names":[],"mappings":"AAkBA,gBACE,YACA,WACA,aACA,sBACA,gBAEA,wBCKA,aACA,mBDHE,yBACA,cACA,sCACA,6CAGF,iCCJA,aACA,mBDME,YAGF,gCChBA,aACA,mBACA,uBA4BA,YACA,cDXE,cACA,aAEA,oCACE,iCAKA,sFACE,kCAMF,kGACE,iCAKN,+BCpCA,aACA,mBDsCE,YACA,gBAEA,0CACE,cACA,gDAGF,uCACE,WAIJ,kCCpDA,aACA,mBDsDE,kBACA,cACA,8CAEA,yCCjEF,aACA,mBACA,uBA4BA,YACA,cDsCI,YACA,iCACA,gBACA,iBAGF,2CC3EF,aACA,mBACA,uBA4BA,YACA,cDgDI,YACA,eAEA,+CACE,iCAMJ,iDACE,WAGF,mDACE,WAGF,sDCjGF,aACA,mBACA,uBDkGI,WAIJ,yBACE,2BACA,WACA,aACA,kBACA,gBAGF,uBACE,YACA,WACA,aACA,kBAGF,yBACE,kBACA,UACA,WACA,YACA,oBAGF,wEAEE,oBAGF,uBC9HA,aACA,mBDgIE,sBACA,aACA,YACA,sCACA,cACA,kDAEA,gCChHF,YACA,cDkHI,WACA,oBACA,aACA,sCACA,eAIJ,sBCzJA,aACA,mBACA,uBA4BA,YACA,cD8HE,cACA,aACA,oBAEA,8BACE,oBACA,sCACA,yCAIA,gCACE,kCAMF,8EACE,iCAIJ,0BACE,kCAKF,wLAME,iBAGF,+BACE,iBAGF,gCACE,iBACA,yBAGF,mCACE,iBAGF,mCACE,iBACA,wBAGF,mCACE,iBAIJ,wBACE,0BAIA,mCACE,iBAGF,8BACE,YAGF,iCACE,eAGF,gCACE,mBAGF,6BACE,YAGF,iCACE,eAGF,kCACE,gBAGF,8BACE,YAGF,kCACE,gBAGF,qCACE,mBAIJ,4BACE,qCACA,kDAGF,8CACE,aAGF,yCCnPA,YACA,cDqPE,WACA,aACA,sCACA,eAGF,+BCpRA,aACA,mBDsRE,gBAGF,oCACE,aACA,qBACA,yBACA,mBACA,YACA,iCACA,gBAKE,2CACE,kCACA,sCAGF,gDACE,kCAMR,mCACE,YACA,WAEA,2CACE,cACA,WAEA,iDACE,cACA,UACA,aACA,gBACA,kBAGF,gDACE,YACA,oBACA,mBACA,uBACA,eACA,oDACA,kCACA,mBACA,eAGF,wDACE,kBAGF,+DACE,WACA,aACA,WACA,kBACA,SACA,mCAIJ,4CACE,kBACA,2BACA,WAGF,kDACE,aAIJ,wCCvWE,aACA,mBDyWA,cACA,cACA,cAEA,mDACE,cAGF,8CC1VA,YACA,cD4VE,YACA,cACA,8CACA,mBAGF,8CCnWA,YACA,cDqWE,YACA,mBAGF,6DClYA,aACA,mBAuBA,YACA,cD6WE,WAEA,oEChXF,YACA,cDkXI,WACA,gBACA,cACA,8CAGF,oECvZF,aACA,mBACA,uBA4BA,YACA,cD4XI,WACA,gBACA,eACA,iBACA,cACA,iCACA,eAIJ,mDACE,aAIJ,sCCpaE,aACA,mBDsaA,cACA,cACA,cAEA,4CCnZA,YACA,cDqZE,YACA,cACA,8CAGF,iDACE,aAIJ,6BC9bE,aACA,mBACA,uBD+bA,2BACA,WACA,oBACA,iCACA,iBACA,YACA,yBACA,kBE9cF,MACE,0CAGF,gBACE,2BAGF,gBACE,aACA,WACA,YACA,kBACA,gBAGF,+BACE,WACA","file":"index.css"}
package/lib/index.d.ts CHANGED
@@ -15,5 +15,4 @@
15
15
  */
16
16
  export * from './graph-manager/index.js';
17
17
  export * from './components/index.js';
18
- export * from './components/studio/index.js';
19
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC"}
package/lib/index.js CHANGED
@@ -15,5 +15,4 @@
15
15
  */
16
16
  export * from './graph-manager/index.js';
17
17
  export * from './components/index.js';
18
- export * from './components/studio/index.js';
19
18
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC"}
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-extension-dsl-diagram",
3
- "version": "8.1.195",
3
+ "version": "8.1.196",
4
4
  "description": "Legend extension for Diagram DSL",
5
5
  "keywords": [
6
6
  "legend",
@@ -47,7 +47,6 @@
47
47
  },
48
48
  "dependencies": {
49
49
  "@finos/legend-application": "workspace:*",
50
- "@finos/legend-application-studio": "workspace:*",
51
50
  "@finos/legend-art": "workspace:*",
52
51
  "@finos/legend-code-editor": "workspace:*",
53
52
  "@finos/legend-graph": "workspace:*",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-extension-dsl-diagram",
3
- "version": "8.1.195",
3
+ "version": "8.1.196",
4
4
  "description": "Legend extension for Diagram DSL",
5
5
  "keywords": [
6
6
  "legend",
@@ -47,10 +47,9 @@
47
47
  },
48
48
  "dependencies": {
49
49
  "@finos/legend-application": "16.0.82",
50
- "@finos/legend-application-studio": "28.19.70",
51
50
  "@finos/legend-art": "7.1.132",
52
- "@finos/legend-code-editor": "2.0.136",
53
- "@finos/legend-graph": "32.3.17",
51
+ "@finos/legend-code-editor": "2.0.137",
52
+ "@finos/legend-graph": "32.3.18",
54
53
  "@finos/legend-shared": "11.0.21",
55
54
  "@finos/legend-storage": "3.0.140",
56
55
  "@types/react": "19.0.10",