@finos/legend-extension-dsl-diagram 1.0.2 → 1.0.7
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +14 -0
- package/lib/DiagramRenderer.d.ts +6 -6
- package/lib/DiagramRenderer.d.ts.map +1 -1
- package/lib/DiagramRenderer.js +27 -16
- package/lib/DiagramRenderer.js.map +1 -1
- package/lib/components/studio/ClassDiagramPreview.d.ts +1 -0
- package/lib/components/studio/ClassDiagramPreview.d.ts.map +1 -1
- package/lib/components/studio/DSLDiagram_LegendStudioPlugin.d.ts +1 -3
- package/lib/components/studio/DSLDiagram_LegendStudioPlugin.d.ts.map +1 -1
- package/lib/components/studio/DSLDiagram_LegendStudioPlugin.js +1 -4
- package/lib/components/studio/DSLDiagram_LegendStudioPlugin.js.map +1 -1
- package/lib/components/studio/DiagramEditor.d.ts +1 -0
- package/lib/components/studio/DiagramEditor.d.ts.map +1 -1
- package/lib/components/studio/DiagramEditor.js +13 -15
- package/lib/components/studio/DiagramEditor.js.map +1 -1
- package/lib/components/studio/InheritanceDiagramRenderer.d.ts +1 -1
- package/lib/components/studio/InheritanceDiagramRenderer.d.ts.map +1 -1
- package/lib/components/studio/InheritanceDiagramRenderer.js +1 -1
- package/lib/components/studio/InheritanceDiagramRenderer.js.map +1 -1
- package/lib/graph/DSLDiagram_PureGraphPlugin.d.ts +1 -3
- package/lib/graph/DSLDiagram_PureGraphPlugin.d.ts.map +1 -1
- package/lib/graph/DSLDiagram_PureGraphPlugin.js +1 -4
- package/lib/graph/DSLDiagram_PureGraphPlugin.js.map +1 -1
- package/lib/graphManager/DSLDiagram_PureGraphManagerPlugin.d.ts +1 -3
- package/lib/graphManager/DSLDiagram_PureGraphManagerPlugin.d.ts.map +1 -1
- package/lib/graphManager/DSLDiagram_PureGraphManagerPlugin.js +1 -4
- package/lib/graphManager/DSLDiagram_PureGraphManagerPlugin.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/AssociationView.d.ts +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/AssociationView.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/AssociationView.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/ClassView.d.ts +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/ClassView.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/ClassView.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/ClassViewReference.d.ts +1 -2
- package/lib/models/metamodels/pure/packageableElements/diagram/ClassViewReference.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/ClassViewReference.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/Diagram.d.ts +2 -3
- package/lib/models/metamodels/pure/packageableElements/diagram/Diagram.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/Diagram.js +2 -2
- package/lib/models/metamodels/pure/packageableElements/diagram/Diagram.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/GeneralizationView.d.ts +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/GeneralizationView.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/GeneralizationView.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/PropertyHolderView.d.ts +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/PropertyHolderView.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/PropertyHolderView.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/PropertyView.d.ts +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/PropertyView.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/PropertyView.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/RelationshipView.d.ts +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/RelationshipView.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/RelationshipView.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/geometry/Point.d.ts +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/geometry/Point.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/geometry/Point.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/geometry/PositionedRectangle.d.ts +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/geometry/PositionedRectangle.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/geometry/PositionedRectangle.js.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/geometry/Rectangle.d.ts +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/geometry/Rectangle.d.ts.map +1 -1
- package/lib/models/metamodels/pure/packageableElements/diagram/geometry/Rectangle.js.map +1 -1
- package/lib/models/protocols/pure/DSLDiagram_PureProtocolProcessorPlugin.d.ts +1 -3
- package/lib/models/protocols/pure/DSLDiagram_PureProtocolProcessorPlugin.d.ts.map +1 -1
- package/lib/models/protocols/pure/DSLDiagram_PureProtocolProcessorPlugin.js +0 -3
- package/lib/models/protocols/pure/DSLDiagram_PureProtocolProcessorPlugin.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_ClassView.d.ts +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_ClassView.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_ClassView.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_Diagram.d.ts +2 -3
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_Diagram.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_Diagram.js +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_Diagram.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_GeneralizationView.d.ts +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_GeneralizationView.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_GeneralizationView.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_PropertyHolderView.d.ts +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_PropertyHolderView.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_PropertyHolderView.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_PropertyView.d.ts +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_PropertyView.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_PropertyView.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_RelationshipView.d.ts +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_RelationshipView.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/V1_RelationshipView.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_Point.d.ts +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_Point.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_Point.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_PositionedRectangle.d.ts +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_PositionedRectangle.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_PositionedRectangle.js.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_Rectangle.d.ts +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_Rectangle.d.ts.map +1 -1
- package/lib/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_Rectangle.js.map +1 -1
- package/lib/stores/studio/DiagramEditorState.d.ts +3 -4
- package/lib/stores/studio/DiagramEditorState.d.ts.map +1 -1
- package/lib/stores/studio/DiagramEditorState.js +5 -3
- package/lib/stores/studio/DiagramEditorState.js.map +1 -1
- package/package.json +20 -20
- package/src/DiagramRenderer.ts +54 -29
- package/src/components/studio/DSLDiagram_LegendStudioPlugin.tsx +15 -20
- package/src/components/studio/DiagramEditor.tsx +34 -34
- package/src/components/studio/InheritanceDiagramRenderer.ts +4 -2
- package/src/graph/DSLDiagram_PureGraphPlugin.ts +5 -10
- package/src/graphManager/DSLDiagram_PureGraphManagerPlugin.ts +4 -9
- package/src/models/metamodels/pure/packageableElements/diagram/AssociationView.ts +1 -2
- package/src/models/metamodels/pure/packageableElements/diagram/ClassView.ts +1 -2
- package/src/models/metamodels/pure/packageableElements/diagram/ClassViewReference.ts +2 -4
- package/src/models/metamodels/pure/packageableElements/diagram/Diagram.ts +10 -4
- package/src/models/metamodels/pure/packageableElements/diagram/GeneralizationView.ts +1 -2
- package/src/models/metamodels/pure/packageableElements/diagram/PropertyHolderView.ts +1 -2
- package/src/models/metamodels/pure/packageableElements/diagram/PropertyView.ts +1 -2
- package/src/models/metamodels/pure/packageableElements/diagram/RelationshipView.ts +1 -2
- package/src/models/metamodels/pure/packageableElements/diagram/geometry/Point.ts +1 -2
- package/src/models/metamodels/pure/packageableElements/diagram/geometry/PositionedRectangle.ts +1 -2
- package/src/models/metamodels/pure/packageableElements/diagram/geometry/Rectangle.ts +1 -2
- package/src/models/protocols/pure/DSLDiagram_PureProtocolProcessorPlugin.ts +9 -17
- package/src/models/protocols/pure/v1/model/packageableElements/diagram/V1_ClassView.ts +1 -2
- package/src/models/protocols/pure/v1/model/packageableElements/diagram/V1_Diagram.ts +5 -4
- package/src/models/protocols/pure/v1/model/packageableElements/diagram/V1_GeneralizationView.ts +1 -2
- package/src/models/protocols/pure/v1/model/packageableElements/diagram/V1_PropertyHolderView.ts +1 -2
- package/src/models/protocols/pure/v1/model/packageableElements/diagram/V1_PropertyView.ts +1 -2
- package/src/models/protocols/pure/v1/model/packageableElements/diagram/V1_RelationshipView.ts +1 -2
- package/src/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_Point.ts +1 -2
- package/src/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_PositionedRectangle.ts +1 -2
- package/src/models/protocols/pure/v1/model/packageableElements/diagram/geometry/V1_Rectangle.ts +1 -2
- package/src/stores/studio/DiagramEditorState.ts +15 -10
package/CHANGELOG.md
CHANGED
@@ -1,5 +1,19 @@
|
|
1
1
|
# @finos/legend-extension-dsl-diagram
|
2
2
|
|
3
|
+
## 1.0.7
|
4
|
+
|
5
|
+
## 1.0.6
|
6
|
+
|
7
|
+
### Patch Changes
|
8
|
+
|
9
|
+
- [#738](https://github.com/finos/legend-studio/pull/738) [`2f239197`](https://github.com/finos/legend-studio/commit/2f23919725f3b103ab2208f26bdbb482ef40186b) ([@akphi](https://github.com/akphi)) - Make the `onDoubleClick` event handlers optional: when they are not set, we nolonger call `noop()` but actually will ignore the events.
|
10
|
+
|
11
|
+
## 1.0.5
|
12
|
+
|
13
|
+
## 1.0.4
|
14
|
+
|
15
|
+
## 1.0.3
|
16
|
+
|
3
17
|
## 1.0.2
|
4
18
|
|
5
19
|
## 1.0.1
|
package/lib/DiagramRenderer.d.ts
CHANGED
@@ -13,8 +13,7 @@
|
|
13
13
|
* See the License for the specific language governing permissions and
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
|
-
import type
|
17
|
-
import { Class } from '@finos/legend-graph';
|
16
|
+
import { type AbstractProperty, Class } from '@finos/legend-graph';
|
18
17
|
import type { Diagram } from './models/metamodels/pure/packageableElements/diagram/Diagram';
|
19
18
|
import { Rectangle } from './models/metamodels/pure/packageableElements/diagram/geometry/Rectangle';
|
20
19
|
import { Point } from './models/metamodels/pure/packageableElements/diagram/geometry/Point';
|
@@ -22,7 +21,7 @@ import { PositionedRectangle } from './models/metamodels/pure/packageableElement
|
|
22
21
|
import { ClassView } from './models/metamodels/pure/packageableElements/diagram/ClassView';
|
23
22
|
import type { PropertyHolderView } from './models/metamodels/pure/packageableElements/diagram/PropertyHolderView';
|
24
23
|
import { GeneralizationView } from './models/metamodels/pure/packageableElements/diagram/GeneralizationView';
|
25
|
-
import type
|
24
|
+
import { type RelationshipView } from './models/metamodels/pure/packageableElements/diagram/RelationshipView';
|
26
25
|
export declare enum DIAGRAM_INTERACTION_MODE {
|
27
26
|
LAYOUT = 0,
|
28
27
|
PAN = 1,
|
@@ -145,9 +144,10 @@ export declare class DiagramRenderer {
|
|
145
144
|
positionBeforeLastMove: Point;
|
146
145
|
onAddClassViewClick: (point: Point) => void;
|
147
146
|
onClassViewRightClick: (classView: ClassView, point: Point) => void;
|
148
|
-
onBackgroundDoubleClick
|
149
|
-
onClassViewDoubleClick
|
150
|
-
onClassNameDoubleClick
|
147
|
+
onBackgroundDoubleClick?: ((point: Point) => void) | undefined;
|
148
|
+
onClassViewDoubleClick?: ((classView: ClassView, point: Point) => void) | undefined;
|
149
|
+
onClassNameDoubleClick?: ((classView: ClassView, point: Point) => void) | undefined;
|
150
|
+
onClassPropertyDoubleClick?: ((property: AbstractProperty, point: Point, propertyHolderView: PropertyHolderView | undefined) => void) | undefined;
|
151
151
|
handleEditClassView: (classView: ClassView) => void;
|
152
152
|
handleEditProperty: (property: AbstractProperty, point: Point, propertyHolderView: PropertyHolderView | undefined) => void;
|
153
153
|
handleAddSimpleProperty: (classView: ClassView) => void;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DiagramRenderer.d.ts","sourceRoot":"","sources":["../src/DiagramRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAYH,OAAO,KAAK,
|
1
|
+
{"version":3,"file":"DiagramRenderer.d.ts","sourceRoot":"","sources":["../src/DiagramRenderer.ts"],"names":[],"mappings":"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"}
|
package/lib/DiagramRenderer.js
CHANGED
@@ -21,7 +21,7 @@ import { Point } from './models/metamodels/pure/packageableElements/diagram/geom
|
|
21
21
|
import { PositionedRectangle } from './models/metamodels/pure/packageableElements/diagram/geometry/PositionedRectangle';
|
22
22
|
import { ClassView } from './models/metamodels/pure/packageableElements/diagram/ClassView';
|
23
23
|
import { GeneralizationView } from './models/metamodels/pure/packageableElements/diagram/GeneralizationView';
|
24
|
-
import { manageInsidePointsDynamically } from './models/metamodels/pure/packageableElements/diagram/RelationshipView';
|
24
|
+
import { manageInsidePointsDynamically, } from './models/metamodels/pure/packageableElements/diagram/RelationshipView';
|
25
25
|
import { PropertyView } from './models/metamodels/pure/packageableElements/diagram/PropertyView';
|
26
26
|
import { getElementPosition } from './helpers/DiagramHelper';
|
27
27
|
import { AssociationView } from './models/metamodels/pure/packageableElements/diagram/AssociationView';
|
@@ -168,9 +168,10 @@ export class DiagramRenderer {
|
|
168
168
|
// interactions
|
169
169
|
onAddClassViewClick = noop();
|
170
170
|
onClassViewRightClick = noop();
|
171
|
-
onBackgroundDoubleClick
|
172
|
-
onClassViewDoubleClick
|
173
|
-
onClassNameDoubleClick
|
171
|
+
onBackgroundDoubleClick;
|
172
|
+
onClassViewDoubleClick;
|
173
|
+
onClassNameDoubleClick;
|
174
|
+
onClassPropertyDoubleClick;
|
174
175
|
handleEditClassView = noop();
|
175
176
|
handleEditProperty = noop();
|
176
177
|
handleAddSimpleProperty = noop();
|
@@ -420,9 +421,9 @@ export class DiagramRenderer {
|
|
420
421
|
// Do not allow creating self-inheritance
|
421
422
|
startClassView.class.value !== targetClassView.class.value &&
|
422
423
|
// Avoid creating inhertance that already existed
|
423
|
-
!startClassView.class.value.
|
424
|
+
!startClassView.class.value.allSuperclasses.includes(targetClassView.class.value) &&
|
424
425
|
// Avoid loop (might be expensive)
|
425
|
-
!targetClassView.class.value.
|
426
|
+
!targetClassView.class.value.allSuperclasses.includes(startClassView.class.value)) {
|
426
427
|
startClassView.class.value.addSuperType(GenericTypeExplicitReference.create(new GenericType(targetClassView.class.value)));
|
427
428
|
}
|
428
429
|
// only add an inheritance relationship view if the start class
|
@@ -1522,7 +1523,7 @@ export class DiagramRenderer {
|
|
1522
1523
|
}
|
1523
1524
|
// Add subtypes of selected classes to the diagram
|
1524
1525
|
else if ('ArrowDown' === e.key) {
|
1525
|
-
const views = uniqBy(this.selectedClasses.flatMap((x) => x.class.value.
|
1526
|
+
const views = uniqBy(this.selectedClasses.flatMap((x) => x.class.value.subclasses.flatMap((c) => new ClassView(this.diagram, uuid(), PackageableElementExplicitReference.create(c)))), (cv) => cv.class.value);
|
1526
1527
|
if (views.length > 0) {
|
1527
1528
|
views.forEach((classView) => this.ensureClassViewMeetMinDimensions(classView));
|
1528
1529
|
const res = this.layoutTaxonomy([views, this.selectedClasses], this.diagram, false, false);
|
@@ -1637,27 +1638,37 @@ export class DiagramRenderer {
|
|
1637
1638
|
const eventPointInModelCoordinate = this.canvasCoordinateToModelCoordinate(this.eventCoordinateToCanvasCoordinate(new Point(e.x, e.y)));
|
1638
1639
|
// Check double click on class property
|
1639
1640
|
if (this.mouseOverClassProperty) {
|
1640
|
-
|
1641
|
-
|
1641
|
+
if (this.onClassPropertyDoubleClick) {
|
1642
|
+
this.onClassPropertyDoubleClick(this.mouseOverClassProperty, eventPointInModelCoordinate, undefined);
|
1643
|
+
return;
|
1644
|
+
}
|
1642
1645
|
}
|
1643
1646
|
// Check double click on class name
|
1644
1647
|
if (this.mouseOverClassName) {
|
1645
|
-
this.onClassNameDoubleClick
|
1646
|
-
|
1648
|
+
if (this.onClassNameDoubleClick) {
|
1649
|
+
this.onClassNameDoubleClick(this.mouseOverClassName, eventPointInModelCoordinate);
|
1650
|
+
return;
|
1651
|
+
}
|
1647
1652
|
}
|
1648
1653
|
// Check double click on class view
|
1649
1654
|
const selectedClass = this.diagram.classViews.find((classView) => classView.contains(eventPointInModelCoordinate.x, eventPointInModelCoordinate.y));
|
1650
1655
|
if (selectedClass) {
|
1651
|
-
this.onClassViewDoubleClick
|
1652
|
-
|
1656
|
+
if (this.onClassViewDoubleClick) {
|
1657
|
+
this.onClassViewDoubleClick(selectedClass, eventPointInModelCoordinate);
|
1658
|
+
return;
|
1659
|
+
}
|
1653
1660
|
}
|
1654
1661
|
// Check double click on line property label
|
1655
1662
|
if (this.mouseOverPropertyHolderViewLabel) {
|
1656
|
-
|
1657
|
-
|
1663
|
+
if (this.onClassPropertyDoubleClick) {
|
1664
|
+
this.onClassPropertyDoubleClick(this.mouseOverPropertyHolderViewLabel.property.value, eventPointInModelCoordinate, this.mouseOverPropertyHolderViewLabel);
|
1665
|
+
return;
|
1666
|
+
}
|
1658
1667
|
}
|
1659
1668
|
// Check double click on background
|
1660
|
-
this.onBackgroundDoubleClick
|
1669
|
+
if (this.onBackgroundDoubleClick) {
|
1670
|
+
this.onBackgroundDoubleClick(eventPointInModelCoordinate);
|
1671
|
+
}
|
1661
1672
|
return;
|
1662
1673
|
}
|
1663
1674
|
mousedown(e) {
|