orcasvn-react-diagrams 0.1.15 → 0.1.16
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/cjs/index.js +26 -2
- package/dist/cjs/types/components/paper.d.ts +5 -1
- package/dist/cjs/types/models/implementations/EditorContext.d.ts +5 -1
- package/dist/esm/index.js +26 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/components/paper.d.ts +5 -1
- package/dist/esm/types/models/implementations/EditorContext.d.ts +5 -1
- package/dist/index.d.ts +4 -0
- package/package.json +1 -1
package/dist/cjs/index.js
CHANGED
|
@@ -9648,9 +9648,12 @@ var Paper = function (props) {
|
|
|
9648
9648
|
//Listen text is selected
|
|
9649
9649
|
React$1.useEffect(function () {
|
|
9650
9650
|
var textSelectedListener = paperEventEmitter.onTextSelected(function (text) {
|
|
9651
|
+
var _a;
|
|
9651
9652
|
setSelectedElement(undefined);
|
|
9652
9653
|
setSelectedElementSVG(null);
|
|
9653
9654
|
setSelectedLink(undefined);
|
|
9655
|
+
//broadcast selected text to parent component
|
|
9656
|
+
(_a = props.onTextSelected) === null || _a === void 0 ? void 0 : _a.call(props, text);
|
|
9654
9657
|
});
|
|
9655
9658
|
return function () {
|
|
9656
9659
|
textSelectedListener.off();
|
|
@@ -9658,10 +9661,16 @@ var Paper = function (props) {
|
|
|
9658
9661
|
}, []);
|
|
9659
9662
|
//Listen port is selected
|
|
9660
9663
|
React$1.useEffect(function () {
|
|
9661
|
-
var portSelectedListener = paperEventEmitter.onPortSelected(function (port) {
|
|
9664
|
+
var portSelectedListener = paperEventEmitter.onPortSelected(function (port, elementId) {
|
|
9665
|
+
var _a;
|
|
9662
9666
|
setSelectedElement(undefined);
|
|
9663
9667
|
setSelectedElementSVG(null);
|
|
9664
9668
|
setSelectedLink(undefined);
|
|
9669
|
+
//broadcast selected port to parent component
|
|
9670
|
+
var element = elements.find(function (e) { return e.id === elementId; });
|
|
9671
|
+
if (element) {
|
|
9672
|
+
(_a = props.onPortSelected) === null || _a === void 0 ? void 0 : _a.call(props, port, element);
|
|
9673
|
+
}
|
|
9665
9674
|
});
|
|
9666
9675
|
return function () {
|
|
9667
9676
|
portSelectedListener.off();
|
|
@@ -9709,6 +9718,7 @@ var Paper = function (props) {
|
|
|
9709
9718
|
};
|
|
9710
9719
|
//Listen command delete selected for element
|
|
9711
9720
|
React$1.useEffect(function () {
|
|
9721
|
+
var _a;
|
|
9712
9722
|
var listener = paperEventEmitter.onCommandDeleteSelectedElement(function () {
|
|
9713
9723
|
if (selectedElement) {
|
|
9714
9724
|
var deletedChildElements = getDeletedChildElements(selectedElement);
|
|
@@ -9719,30 +9729,44 @@ var Paper = function (props) {
|
|
|
9719
9729
|
setSelectedElementSVG(null);
|
|
9720
9730
|
}
|
|
9721
9731
|
});
|
|
9732
|
+
//broadcast selected element to parent component
|
|
9733
|
+
if (selectedElement) {
|
|
9734
|
+
(_a = props.onElementSelected) === null || _a === void 0 ? void 0 : _a.call(props, selectedElement);
|
|
9735
|
+
}
|
|
9722
9736
|
return function () {
|
|
9723
9737
|
listener.off();
|
|
9724
9738
|
};
|
|
9725
9739
|
}, [selectedElement]);
|
|
9726
9740
|
//Listen command delete selected for link
|
|
9727
9741
|
React$1.useEffect(function () {
|
|
9742
|
+
var _a;
|
|
9728
9743
|
var listener = paperEventEmitter.onCommandDeleteSelectedLink(function () {
|
|
9729
9744
|
if (selectedLink) {
|
|
9730
9745
|
setLinks(function (prev) { return prev.filter(function (l) { return l.id !== selectedLink.id; }); });
|
|
9731
9746
|
setSelectedLink(undefined);
|
|
9732
9747
|
}
|
|
9733
9748
|
});
|
|
9749
|
+
//broadcast selected link to parent component
|
|
9750
|
+
if (selectedLink) {
|
|
9751
|
+
(_a = props.onLinkSelected) === null || _a === void 0 ? void 0 : _a.call(props, selectedLink);
|
|
9752
|
+
}
|
|
9734
9753
|
return function () {
|
|
9735
9754
|
listener.off();
|
|
9736
9755
|
};
|
|
9737
9756
|
}, [selectedLink]);
|
|
9738
9757
|
//Listen command delete selected for Text
|
|
9739
9758
|
React$1.useEffect(function () {
|
|
9759
|
+
var _a;
|
|
9740
9760
|
var listener = paperEventEmitter.onCommandDeleteSelectedText(function () {
|
|
9741
9761
|
if (selectedText) {
|
|
9742
9762
|
setTexts(function (prev) { return prev.filter(function (t) { return t.id !== selectedText.id; }); });
|
|
9743
9763
|
setSelectedText(undefined);
|
|
9744
9764
|
}
|
|
9745
9765
|
});
|
|
9766
|
+
//broadcast selected text to parent component
|
|
9767
|
+
if (selectedText) {
|
|
9768
|
+
(_a = props.onTextSelected) === null || _a === void 0 ? void 0 : _a.call(props, selectedText);
|
|
9769
|
+
}
|
|
9746
9770
|
return function () {
|
|
9747
9771
|
listener.off();
|
|
9748
9772
|
};
|
|
@@ -10202,7 +10226,7 @@ var Paper = function (props) {
|
|
|
10202
10226
|
function Editor(_a) {
|
|
10203
10227
|
var editorContext = _a.editorContext;
|
|
10204
10228
|
return (React$1.createElement(React$1.Fragment, null,
|
|
10205
|
-
React$1.createElement(Paper, { size: { width: 3000, height: 3000 }, elements: editorContext.elements, links: editorContext.links, texts: editorContext.texts, onPaperClicked: editorContext.onPaperClicked, onPortMoved: editorContext.onPortMoved, onElementContextMenu: editorContext.onElementContextMenu, onElementMoved: editorContext.onElementMoved, onElementResized: editorContext.onElementResized, onLinkValidation: editorContext.validateLink, onCreatingLink: editorContext.onCreatingLink, onCreatingPortByLinking: editorContext.onCreatingPortByLinking })));
|
|
10229
|
+
React$1.createElement(Paper, { size: { width: 3000, height: 3000 }, elements: editorContext.elements, links: editorContext.links, texts: editorContext.texts, onPaperClicked: editorContext.onPaperClicked, onPortMoved: editorContext.onPortMoved, onPortSelected: editorContext.onPortSelected, onElementContextMenu: editorContext.onElementContextMenu, onElementMoved: editorContext.onElementMoved, onElementResized: editorContext.onElementResized, onElementSelected: editorContext.onElementSelected, onLinkValidation: editorContext.validateLink, onCreatingLink: editorContext.onCreatingLink, onCreatingPortByLinking: editorContext.onCreatingPortByLinking, onLinkSelected: editorContext.onLinkSelected, onTextSelected: editorContext.onTextSelected })));
|
|
10206
10230
|
}
|
|
10207
10231
|
|
|
10208
10232
|
exports.CircleRC = Circle;
|
|
@@ -3,7 +3,7 @@ import IElement from '../models/IElement';
|
|
|
3
3
|
import IElementLink from '../models/IElementLink';
|
|
4
4
|
import IPosition from '../models/position';
|
|
5
5
|
import IPort from '../models/IPort';
|
|
6
|
-
import { IPaperText } from '../models/IText';
|
|
6
|
+
import IText, { IPaperText } from '../models/IText';
|
|
7
7
|
import ISize from '../models/size';
|
|
8
8
|
interface PaperProps {
|
|
9
9
|
size: {
|
|
@@ -15,10 +15,14 @@ interface PaperProps {
|
|
|
15
15
|
texts: IPaperText[];
|
|
16
16
|
onPaperClicked?: () => void;
|
|
17
17
|
onPortMoved?: (position: IPosition, port: IPort, element: IElement) => void;
|
|
18
|
+
onPortSelected?: (port: IPort, element: IElement) => void;
|
|
18
19
|
onElementContextMenu?: (element: IElement, mouseEvent: React.MouseEvent<SVGElement>) => void;
|
|
19
20
|
onElementMoved?: (position: IPosition, element: IElement, index: number) => void;
|
|
20
21
|
onElementResized?: (size: ISize, element: IElement, index: number) => void;
|
|
22
|
+
onElementSelected?: (element: IElement) => void;
|
|
21
23
|
onLinkValidation?: (sourcePort: IPort, sourceElement: IElement, targetPort: IPort, targetElement: IElement) => boolean;
|
|
24
|
+
onLinkSelected?: (link: IElementLink) => void;
|
|
25
|
+
onTextSelected?: (text: IText) => void;
|
|
22
26
|
onCreatingPortByLinking?: (sourceElement: IElement, sourcePort: IPort, targetElement: IElement, position: IPosition) => IPort | null;
|
|
23
27
|
onCreatingLink?: (sourcePort: IPort, sourceElement: IElement, targetPort: IPort, targetElement: IElement) => IElementLink | null;
|
|
24
28
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import IElement from "../IElement";
|
|
3
3
|
import IElementLink from "../IElementLink";
|
|
4
|
-
import { IPaperText } from "../IText";
|
|
4
|
+
import IText, { IPaperText } from "../IText";
|
|
5
5
|
import IPosition from "../position";
|
|
6
6
|
import IPort from "../IPort";
|
|
7
7
|
import ISize from "../size";
|
|
@@ -11,12 +11,16 @@ export declare class EditorContext {
|
|
|
11
11
|
private _texts;
|
|
12
12
|
onPaperClicked?: () => void;
|
|
13
13
|
onPortMoved?: (position: IPosition, port: IPort, element: IElement) => void;
|
|
14
|
+
onPortSelected?: (port: IPort, element: IElement) => void;
|
|
14
15
|
onElementContextMenu?: (element: IElement, mouseEvent: React.MouseEvent<SVGElement>) => void;
|
|
15
16
|
onElementMoved?: (position: IPosition, element: IElement, index: number) => void;
|
|
16
17
|
onElementResized?: (size: ISize, element: IElement, index: number) => void;
|
|
18
|
+
onElementSelected?: (element: IElement) => void;
|
|
17
19
|
validateLink?: (sourcePort: IPort, sourceElement: IElement, targetPort: IPort, targetElement: IElement) => boolean;
|
|
18
20
|
onCreatingPortByLinking?: (sourceElement: IElement, sourcePort: IPort, targetElement: IElement, position: IPosition) => IPort | null;
|
|
19
21
|
onCreatingLink?: (sourcePort: IPort, sourceElement: IElement, targetPort: IPort, targetElement: IElement) => IElementLink | null;
|
|
22
|
+
onLinkSelected?: (link: IElementLink) => void;
|
|
23
|
+
onTextSelected?: (text: IText) => void;
|
|
20
24
|
constructor(elements: IElement[], links: IElementLink[], texts: IPaperText[]);
|
|
21
25
|
get elements(): IElement[];
|
|
22
26
|
get links(): IElementLink[];
|
package/dist/esm/index.js
CHANGED
|
@@ -9644,9 +9644,12 @@ var Paper = function (props) {
|
|
|
9644
9644
|
//Listen text is selected
|
|
9645
9645
|
useEffect(function () {
|
|
9646
9646
|
var textSelectedListener = paperEventEmitter.onTextSelected(function (text) {
|
|
9647
|
+
var _a;
|
|
9647
9648
|
setSelectedElement(undefined);
|
|
9648
9649
|
setSelectedElementSVG(null);
|
|
9649
9650
|
setSelectedLink(undefined);
|
|
9651
|
+
//broadcast selected text to parent component
|
|
9652
|
+
(_a = props.onTextSelected) === null || _a === void 0 ? void 0 : _a.call(props, text);
|
|
9650
9653
|
});
|
|
9651
9654
|
return function () {
|
|
9652
9655
|
textSelectedListener.off();
|
|
@@ -9654,10 +9657,16 @@ var Paper = function (props) {
|
|
|
9654
9657
|
}, []);
|
|
9655
9658
|
//Listen port is selected
|
|
9656
9659
|
useEffect(function () {
|
|
9657
|
-
var portSelectedListener = paperEventEmitter.onPortSelected(function (port) {
|
|
9660
|
+
var portSelectedListener = paperEventEmitter.onPortSelected(function (port, elementId) {
|
|
9661
|
+
var _a;
|
|
9658
9662
|
setSelectedElement(undefined);
|
|
9659
9663
|
setSelectedElementSVG(null);
|
|
9660
9664
|
setSelectedLink(undefined);
|
|
9665
|
+
//broadcast selected port to parent component
|
|
9666
|
+
var element = elements.find(function (e) { return e.id === elementId; });
|
|
9667
|
+
if (element) {
|
|
9668
|
+
(_a = props.onPortSelected) === null || _a === void 0 ? void 0 : _a.call(props, port, element);
|
|
9669
|
+
}
|
|
9661
9670
|
});
|
|
9662
9671
|
return function () {
|
|
9663
9672
|
portSelectedListener.off();
|
|
@@ -9705,6 +9714,7 @@ var Paper = function (props) {
|
|
|
9705
9714
|
};
|
|
9706
9715
|
//Listen command delete selected for element
|
|
9707
9716
|
useEffect(function () {
|
|
9717
|
+
var _a;
|
|
9708
9718
|
var listener = paperEventEmitter.onCommandDeleteSelectedElement(function () {
|
|
9709
9719
|
if (selectedElement) {
|
|
9710
9720
|
var deletedChildElements = getDeletedChildElements(selectedElement);
|
|
@@ -9715,30 +9725,44 @@ var Paper = function (props) {
|
|
|
9715
9725
|
setSelectedElementSVG(null);
|
|
9716
9726
|
}
|
|
9717
9727
|
});
|
|
9728
|
+
//broadcast selected element to parent component
|
|
9729
|
+
if (selectedElement) {
|
|
9730
|
+
(_a = props.onElementSelected) === null || _a === void 0 ? void 0 : _a.call(props, selectedElement);
|
|
9731
|
+
}
|
|
9718
9732
|
return function () {
|
|
9719
9733
|
listener.off();
|
|
9720
9734
|
};
|
|
9721
9735
|
}, [selectedElement]);
|
|
9722
9736
|
//Listen command delete selected for link
|
|
9723
9737
|
useEffect(function () {
|
|
9738
|
+
var _a;
|
|
9724
9739
|
var listener = paperEventEmitter.onCommandDeleteSelectedLink(function () {
|
|
9725
9740
|
if (selectedLink) {
|
|
9726
9741
|
setLinks(function (prev) { return prev.filter(function (l) { return l.id !== selectedLink.id; }); });
|
|
9727
9742
|
setSelectedLink(undefined);
|
|
9728
9743
|
}
|
|
9729
9744
|
});
|
|
9745
|
+
//broadcast selected link to parent component
|
|
9746
|
+
if (selectedLink) {
|
|
9747
|
+
(_a = props.onLinkSelected) === null || _a === void 0 ? void 0 : _a.call(props, selectedLink);
|
|
9748
|
+
}
|
|
9730
9749
|
return function () {
|
|
9731
9750
|
listener.off();
|
|
9732
9751
|
};
|
|
9733
9752
|
}, [selectedLink]);
|
|
9734
9753
|
//Listen command delete selected for Text
|
|
9735
9754
|
useEffect(function () {
|
|
9755
|
+
var _a;
|
|
9736
9756
|
var listener = paperEventEmitter.onCommandDeleteSelectedText(function () {
|
|
9737
9757
|
if (selectedText) {
|
|
9738
9758
|
setTexts(function (prev) { return prev.filter(function (t) { return t.id !== selectedText.id; }); });
|
|
9739
9759
|
setSelectedText(undefined);
|
|
9740
9760
|
}
|
|
9741
9761
|
});
|
|
9762
|
+
//broadcast selected text to parent component
|
|
9763
|
+
if (selectedText) {
|
|
9764
|
+
(_a = props.onTextSelected) === null || _a === void 0 ? void 0 : _a.call(props, selectedText);
|
|
9765
|
+
}
|
|
9742
9766
|
return function () {
|
|
9743
9767
|
listener.off();
|
|
9744
9768
|
};
|
|
@@ -10198,7 +10222,7 @@ var Paper = function (props) {
|
|
|
10198
10222
|
function Editor(_a) {
|
|
10199
10223
|
var editorContext = _a.editorContext;
|
|
10200
10224
|
return (React$1.createElement(React$1.Fragment, null,
|
|
10201
|
-
React$1.createElement(Paper, { size: { width: 3000, height: 3000 }, elements: editorContext.elements, links: editorContext.links, texts: editorContext.texts, onPaperClicked: editorContext.onPaperClicked, onPortMoved: editorContext.onPortMoved, onElementContextMenu: editorContext.onElementContextMenu, onElementMoved: editorContext.onElementMoved, onElementResized: editorContext.onElementResized, onLinkValidation: editorContext.validateLink, onCreatingLink: editorContext.onCreatingLink, onCreatingPortByLinking: editorContext.onCreatingPortByLinking })));
|
|
10225
|
+
React$1.createElement(Paper, { size: { width: 3000, height: 3000 }, elements: editorContext.elements, links: editorContext.links, texts: editorContext.texts, onPaperClicked: editorContext.onPaperClicked, onPortMoved: editorContext.onPortMoved, onPortSelected: editorContext.onPortSelected, onElementContextMenu: editorContext.onElementContextMenu, onElementMoved: editorContext.onElementMoved, onElementResized: editorContext.onElementResized, onElementSelected: editorContext.onElementSelected, onLinkValidation: editorContext.validateLink, onCreatingLink: editorContext.onCreatingLink, onCreatingPortByLinking: editorContext.onCreatingPortByLinking, onLinkSelected: editorContext.onLinkSelected, onTextSelected: editorContext.onTextSelected })));
|
|
10202
10226
|
}
|
|
10203
10227
|
|
|
10204
10228
|
export { Circle as CircleRC, Crescent as CrescentRC, CustomPortFromJSXElement, CustomPortFromShape, CustomShape as CustomShapeRC, EditorContext, Element$1 as Element, ElementLink$1 as ElementLink, ElementLink as ElementLinkRC, Port$1 as Port, Port as PortRC, PositioningAnchor, Rectangle as RectangleRC, RectangularFrame as RectangularFrameRC, ResizingDirection, ShapeWrapper as ShapeWrapperRC, SubObjectDirection, Text$2 as Text, TextAlign, Text$1 as TextRC, Editor as default };
|