@xyflow/system 0.0.13 → 0.0.15
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/LICENSE +1 -1
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +229 -11
- package/dist/esm/index.mjs +229 -11
- package/dist/esm/types/edges.d.ts +18 -0
- package/dist/esm/types/edges.d.ts.map +1 -1
- package/dist/esm/types/handles.d.ts +17 -0
- package/dist/esm/types/handles.d.ts.map +1 -1
- package/dist/esm/types/nodes.d.ts +36 -0
- package/dist/esm/types/nodes.d.ts.map +1 -1
- package/dist/esm/types/utils.d.ts.map +1 -1
- package/dist/esm/utils/edges/general.d.ts +2 -2
- package/dist/esm/utils/edges/general.d.ts.map +1 -1
- package/dist/esm/utils/graph.d.ts +3 -3
- package/dist/esm/utils/graph.d.ts.map +1 -1
- package/dist/esm/xyhandle/XYHandle.d.ts +2 -0
- package/dist/esm/xyhandle/XYHandle.d.ts.map +1 -1
- package/dist/esm/xyresizer/XYResizer.d.ts +46 -0
- package/dist/esm/xyresizer/XYResizer.d.ts.map +1 -0
- package/dist/esm/xyresizer/index.d.ts +3 -0
- package/dist/esm/xyresizer/index.d.ts.map +1 -0
- package/dist/esm/xyresizer/types.d.ts +26 -0
- package/dist/esm/xyresizer/types.d.ts.map +1 -0
- package/dist/esm/xyresizer/utils.d.ts +75 -0
- package/dist/esm/xyresizer/utils.d.ts.map +1 -0
- package/dist/umd/index.d.ts +1 -0
- package/dist/umd/index.d.ts.map +1 -1
- package/dist/umd/index.js +1 -1
- package/dist/umd/types/edges.d.ts +18 -0
- package/dist/umd/types/edges.d.ts.map +1 -1
- package/dist/umd/types/handles.d.ts +17 -0
- package/dist/umd/types/handles.d.ts.map +1 -1
- package/dist/umd/types/nodes.d.ts +36 -0
- package/dist/umd/types/nodes.d.ts.map +1 -1
- package/dist/umd/types/utils.d.ts.map +1 -1
- package/dist/umd/utils/edges/general.d.ts +2 -2
- package/dist/umd/utils/edges/general.d.ts.map +1 -1
- package/dist/umd/utils/graph.d.ts +3 -3
- package/dist/umd/utils/graph.d.ts.map +1 -1
- package/dist/umd/xyhandle/XYHandle.d.ts +2 -0
- package/dist/umd/xyhandle/XYHandle.d.ts.map +1 -1
- package/dist/umd/xyresizer/XYResizer.d.ts +46 -0
- package/dist/umd/xyresizer/XYResizer.d.ts.map +1 -0
- package/dist/umd/xyresizer/index.d.ts +3 -0
- package/dist/umd/xyresizer/index.d.ts.map +1 -0
- package/dist/umd/xyresizer/types.d.ts +26 -0
- package/dist/umd/xyresizer/types.d.ts.map +1 -0
- package/dist/umd/xyresizer/utils.d.ts +75 -0
- package/dist/umd/xyresizer/utils.d.ts.map +1 -0
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/types/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/types/utils.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAClB,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,MAAM,WAAW;CAClB;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG;IAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAErD,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG,UAAU,GAAG,UAAU,CAAC;AAE3C,MAAM,MAAM,GAAG,GAAG,UAAU,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjD,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC"}
|
|
@@ -30,7 +30,7 @@ export declare function isEdgeVisible({ sourceNode, targetNode, width, height, t
|
|
|
30
30
|
* @param edges - The array of all current edges
|
|
31
31
|
* @returns A new array of edges with the new edge added
|
|
32
32
|
*/
|
|
33
|
-
export declare const
|
|
33
|
+
export declare const addEdge: <EdgeType extends EdgeBase<any>>(edgeParams: Connection | EdgeType, edges: EdgeType[]) => EdgeType[];
|
|
34
34
|
export type UpdateEdgeOptions = {
|
|
35
35
|
shouldReplaceId?: boolean;
|
|
36
36
|
};
|
|
@@ -42,6 +42,6 @@ export type UpdateEdgeOptions = {
|
|
|
42
42
|
* @param options.shouldReplaceId - should the id of the old edge be replaced with the new connection id
|
|
43
43
|
* @returns the updated edges array
|
|
44
44
|
*/
|
|
45
|
-
export declare const
|
|
45
|
+
export declare const updateEdge: <EdgeType extends EdgeBase<any>>(oldEdge: EdgeType, newConnection: Connection, edges: EdgeType[], options?: UpdateEdgeOptions) => EdgeType[];
|
|
46
46
|
export {};
|
|
47
47
|
//# sourceMappingURL=general.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"general.d.ts","sourceRoot":"","sources":["../../../src/utils/edges/general.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAA8C,MAAM,OAAO,CAAC;AAC1F,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAIjD,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,OAAO,EACP,OAAO,EACP,OAAO,GACR,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAQnC;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,QAAQ,CAAC;IACrB,UAAU,EAAE,QAAQ,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,EACpC,UAAU,EACV,UAAU,EACV,QAAgB,EAChB,MAAU,EACV,eAAuB,GACxB,EAAE,mBAAmB,GAAG,MAAM,CAS9B;AAED,KAAK,mBAAmB,GAAG;IACzB,UAAU,EAAE,QAAQ,CAAC;IACrB,UAAU,EAAE,QAAQ,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,mBAAmB,GAAG,OAAO,CAmBhH;AAeD;;;;;;;GAOG;AACH,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"general.d.ts","sourceRoot":"","sources":["../../../src/utils/edges/general.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAA8C,MAAM,OAAO,CAAC;AAC1F,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAIjD,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,OAAO,EACP,OAAO,EACP,OAAO,GACR,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAQnC;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,QAAQ,CAAC;IACrB,UAAU,EAAE,QAAQ,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,EACpC,UAAU,EACV,UAAU,EACV,QAAgB,EAChB,MAAU,EACV,eAAuB,GACxB,EAAE,mBAAmB,GAAG,MAAM,CAS9B;AAED,KAAK,mBAAmB,GAAG;IACzB,UAAU,EAAE,QAAQ,CAAC;IACrB,UAAU,EAAE,QAAQ,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,wBAAgB,aAAa,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,mBAAmB,GAAG,OAAO,CAmBhH;AAeD;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,sGAiCnB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,qEAEN,UAAU,+BAEhB,iBAAiB,eA6B3B,CAAC"}
|
|
@@ -23,7 +23,7 @@ export declare const isNodeBase: <NodeType extends NodeBase<any, string | undefi
|
|
|
23
23
|
* @param edges - The array of all edges
|
|
24
24
|
* @returns An array of nodes that are connected over eges where the source is the given node
|
|
25
25
|
*/
|
|
26
|
-
export declare const
|
|
26
|
+
export declare const getOutgoers: <NodeType extends NodeBase<any, string | undefined> = NodeBase<any, string | undefined>, EdgeType extends EdgeBase<any> = EdgeBase<any>>(node: NodeType | {
|
|
27
27
|
id: string;
|
|
28
28
|
}, nodes: NodeType[], edges: EdgeType[]) => NodeType[];
|
|
29
29
|
/**
|
|
@@ -34,7 +34,7 @@ export declare const getOutgoersBase: <NodeType extends NodeBase<any, string | u
|
|
|
34
34
|
* @param edges - The array of all edges
|
|
35
35
|
* @returns An array of nodes that are connected over eges where the target is the given node
|
|
36
36
|
*/
|
|
37
|
-
export declare const
|
|
37
|
+
export declare const getIncomers: <NodeType extends NodeBase<any, string | undefined> = NodeBase<any, string | undefined>, EdgeType extends EdgeBase<any> = EdgeBase<any>>(node: NodeType | {
|
|
38
38
|
id: string;
|
|
39
39
|
}, nodes: NodeType[], edges: EdgeType[]) => NodeType[];
|
|
40
40
|
export declare const getNodePositionWithOrigin: (node: NodeBase | undefined, nodeOrigin?: NodeOrigin) => XYPosition & {
|
|
@@ -56,7 +56,7 @@ export declare const getNodesInside: <NodeType extends NodeBase<any, string | un
|
|
|
56
56
|
* @param edges - All edges
|
|
57
57
|
* @returns Array of edges that connect any of the given nodes with each other
|
|
58
58
|
*/
|
|
59
|
-
export declare const
|
|
59
|
+
export declare const getConnectedEdges: <NodeType extends NodeBase<any, string | undefined> = NodeBase<any, string | undefined>, EdgeType extends EdgeBase<any> = EdgeBase<any>>(nodes: NodeType[], edges: EdgeType[]) => EdgeType[];
|
|
60
60
|
export declare function fitView<Params extends FitViewParamsBase<NodeBase>, Options extends FitViewOptionsBase<NodeBase>>({ nodes, width, height, panZoom, minZoom, maxZoom, nodeOrigin }: Params, options?: Options): boolean;
|
|
61
61
|
export declare function calcNextPosition<NodeType extends NodeBase>(node: NodeDragItem | NodeType, nextPosition: XYPosition, nodes: NodeType[], nodeExtent?: CoordinateExtent, nodeOrigin?: NodeOrigin, onError?: OnError): {
|
|
62
62
|
position: XYPosition;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/utils/graph.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,IAAI,EACT,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,YAAY,EACZ,gBAAgB,EAChB,OAAO,EACP,cAAc,EACf,MAAM,UAAU,CAAC;AAGlB;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,4DAAmD,GAAG,wBACd,CAAC;AAEhE;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,oGAAmD,GAAG,wBACR,CAAC;AAEtE;;;;;;;GAOG;AACH,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/utils/graph.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,IAAI,EACT,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,YAAY,EACZ,gBAAgB,EAChB,OAAO,EACP,cAAc,EACf,MAAM,UAAU,CAAC;AAGlB;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,4DAAmD,GAAG,wBACd,CAAC;AAEhE;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,oGAAmD,GAAG,wBACR,CAAC;AAEtE;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW;QACC,MAAM;sDAgB9B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW;QACC,MAAM;sDAe9B,CAAC;AAEF,eAAO,MAAM,yBAAyB,SAC9B,QAAQ,GAAG,SAAS,8BAEzB,UAAU,GAAG;IAAE,gBAAgB,EAAE,UAAU,CAAA;CA6B7C,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,UAAW,QAAQ,EAAE,8BAAoC,IAsBnF,CAAC;AAEF,eAAO,MAAM,cAAc,gFAEnB,IAAI,gIAqCX,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,8LAU7B,CAAC;AAEF,wBAAgB,OAAO,CAAC,MAAM,SAAS,iBAAiB,CAAC,QAAQ,CAAC,EAAE,OAAO,SAAS,kBAAkB,CAAC,QAAQ,CAAC,EAC9G,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAmB,EAAE,EAAE,MAAM,EAChF,OAAO,CAAC,EAAE,OAAO,WA8BlB;AASD,wBAAgB,gBAAgB,CAAC,QAAQ,SAAS,QAAQ,EACxD,IAAI,EAAE,YAAY,GAAG,QAAQ,EAC7B,YAAY,EAAE,UAAU,EACxB,KAAK,EAAE,QAAQ,EAAE,EACjB,UAAU,CAAC,EAAE,gBAAgB,EAC7B,UAAU,GAAE,UAAmB,EAC/B,OAAO,CAAC,EAAE,OAAO,GAChB;IAAE,QAAQ,EAAE,UAAU,CAAC;IAAC,gBAAgB,EAAE,UAAU,CAAA;CAAE,CAoDxD;AAED;;;;;;;;;GASG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,SAAS,QAAQ,GAAG,QAAQ,EAAE,QAAQ,SAAS,QAAQ,GAAG,QAAQ,EAAE,EACpH,aAAkB,EAClB,aAAkB,EAClB,KAAK,EACL,KAAK,EACL,cAAc,GACf,EAAE;IACD,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;IACnC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;IACnC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC,GAAG,OAAO,CAAC;IACV,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB,CAAC,CA+CD"}
|
|
@@ -9,6 +9,7 @@ export type OnPointerDownParams = {
|
|
|
9
9
|
isTarget: boolean;
|
|
10
10
|
nodes: NodeBase[];
|
|
11
11
|
lib: string;
|
|
12
|
+
flowId: string | null;
|
|
12
13
|
edgeUpdaterType?: HandleType;
|
|
13
14
|
updateConnection: UpdateConnection;
|
|
14
15
|
panBy: PanBy;
|
|
@@ -29,6 +30,7 @@ export type IsValidParams = {
|
|
|
29
30
|
isValidConnection?: IsValidConnection;
|
|
30
31
|
doc: Document | ShadowRoot;
|
|
31
32
|
lib: string;
|
|
33
|
+
flowId: string | null;
|
|
32
34
|
};
|
|
33
35
|
export type XYHandleInstance = {
|
|
34
36
|
onPointerDown: (event: MouseEvent | TouchEvent, params: OnPointerDownParams) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XYHandle.d.ts","sourceRoot":"","sources":["../../src/xyhandle/XYHandle.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EACd,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,KAAK,EACV,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACtB,MAAM,UAAU,CAAC;AAIlB,MAAM,MAAM,mBAAmB,GAAG;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,KAAK,EAAE,KAAK,CAAC;IACb,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU,KAAK,IAAI,CAAC;IACzD,YAAY,EAAE,MAAM,SAAS,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,GAAG,IAAI,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC;IAChE,cAAc,EAAE,cAAc,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,UAAU,CAAC;IACrB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,GAAG,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"XYHandle.d.ts","sourceRoot":"","sources":["../../src/xyhandle/XYHandle.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EACd,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,KAAK,EACV,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACtB,MAAM,UAAU,CAAC;AAIlB,MAAM,MAAM,mBAAmB,GAAG;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,KAAK,EAAE,KAAK,CAAC;IACb,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU,KAAK,IAAI,CAAC;IACzD,YAAY,EAAE,MAAM,SAAS,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,GAAG,IAAI,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC;IAChE,cAAc,EAAE,cAAc,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,UAAU,CAAC;IACrB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,GAAG,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,EAAE,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACrF,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,EAAE,MAAM,EAAE,aAAa,KAAK,MAAM,CAAC;CAC5E,CAAC;AAEF,KAAK,MAAM,GAAG;IACZ,aAAa,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAC9B,SAAS,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACpC,CAAC;AAgQF,eAAO,MAAM,QAAQ,EAAE,gBAGtB,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { NodeLookup, Transform } from '../types';
|
|
2
|
+
import type { OnResize, OnResizeEnd, OnResizeStart, ShouldResize, ControlPosition } from './types';
|
|
3
|
+
declare const initChange: {
|
|
4
|
+
x: number;
|
|
5
|
+
y: number;
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
isXPosChange: boolean;
|
|
9
|
+
isYPosChange: boolean;
|
|
10
|
+
isWidthChange: boolean;
|
|
11
|
+
isHeightChange: boolean;
|
|
12
|
+
};
|
|
13
|
+
export type XYResizerChange = typeof initChange;
|
|
14
|
+
type XYResizerParams = {
|
|
15
|
+
domNode: HTMLDivElement;
|
|
16
|
+
nodeId: string;
|
|
17
|
+
getStoreItems: () => {
|
|
18
|
+
nodeLookup: NodeLookup;
|
|
19
|
+
transform: Transform;
|
|
20
|
+
snapGrid?: [number, number];
|
|
21
|
+
snapToGrid: boolean;
|
|
22
|
+
};
|
|
23
|
+
onChange: (changes: XYResizerChange) => void;
|
|
24
|
+
onEnd?: () => void;
|
|
25
|
+
};
|
|
26
|
+
type XYResizerUpdateParams = {
|
|
27
|
+
controlPosition: ControlPosition;
|
|
28
|
+
boundaries: {
|
|
29
|
+
minWidth: number;
|
|
30
|
+
minHeight: number;
|
|
31
|
+
maxWidth: number;
|
|
32
|
+
maxHeight: number;
|
|
33
|
+
};
|
|
34
|
+
keepAspectRatio: boolean;
|
|
35
|
+
onResizeStart: OnResizeStart | undefined;
|
|
36
|
+
onResize: OnResize | undefined;
|
|
37
|
+
onResizeEnd: OnResizeEnd | undefined;
|
|
38
|
+
shouldResize: ShouldResize | undefined;
|
|
39
|
+
};
|
|
40
|
+
export type XYResizerInstance = {
|
|
41
|
+
update: (params: XYResizerUpdateParams) => void;
|
|
42
|
+
destroy: () => void;
|
|
43
|
+
};
|
|
44
|
+
export declare function XYResizer({ domNode, nodeId, getStoreItems, onChange }: XYResizerParams): XYResizerInstance;
|
|
45
|
+
export {};
|
|
46
|
+
//# sourceMappingURL=XYResizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"XYResizer.d.ts","sourceRoot":"","sources":["../../src/xyresizer/XYResizer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAmB,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAWpH,QAAA,MAAM,UAAU;;;;;;;;;CASf,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,OAAO,UAAU,CAAC;AAEhD,KAAK,eAAe,GAAG;IACrB,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM;QACnB,UAAU,EAAE,UAAU,CAAC;QACvB,SAAS,EAAE,SAAS,CAAC;QACrB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC5B,UAAU,EAAE,OAAO,CAAC;KACrB,CAAC;IACF,QAAQ,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IAC7C,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC;AAEF,KAAK,qBAAqB,GAAG;IAC3B,eAAe,EAAE,eAAe,CAAC;IACjC,UAAU,EAAE;QACV,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;IACzC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC/B,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,YAAY,EAAE,YAAY,GAAG,SAAS,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAChD,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,wBAAgB,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,eAAe,GAAG,iBAAiB,CA6H1G"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/xyresizer/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { D3DragEvent, SubjectPosition } from 'd3-drag';
|
|
2
|
+
export type XYResizerParams = {
|
|
3
|
+
x: number;
|
|
4
|
+
y: number;
|
|
5
|
+
width: number;
|
|
6
|
+
height: number;
|
|
7
|
+
};
|
|
8
|
+
export type XYResizerParamsWithDirection = XYResizerParams & {
|
|
9
|
+
direction: number[];
|
|
10
|
+
};
|
|
11
|
+
export type ControlLinePosition = 'top' | 'bottom' | 'left' | 'right';
|
|
12
|
+
export type ControlPosition = ControlLinePosition | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
|
|
13
|
+
export declare enum ResizeControlVariant {
|
|
14
|
+
Line = "line",
|
|
15
|
+
Handle = "handle"
|
|
16
|
+
}
|
|
17
|
+
export declare const XY_RESIZER_HANDLE_POSITIONS: ControlPosition[];
|
|
18
|
+
export declare const XY_RESIZER_LINE_POSITIONS: ControlLinePosition[];
|
|
19
|
+
type OnResizeHandler<Params = XYResizerParams, Result = void> = (event: ResizeDragEvent, params: Params) => Result;
|
|
20
|
+
export type ResizeDragEvent = D3DragEvent<HTMLDivElement, null, SubjectPosition>;
|
|
21
|
+
export type ShouldResize = OnResizeHandler<XYResizerParamsWithDirection, boolean>;
|
|
22
|
+
export type OnResizeStart = OnResizeHandler;
|
|
23
|
+
export type OnResize = OnResizeHandler<XYResizerParamsWithDirection>;
|
|
24
|
+
export type OnResizeEnd = OnResizeHandler;
|
|
25
|
+
export {};
|
|
26
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/xyresizer/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE5D,MAAM,MAAM,eAAe,GAAG;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,eAAe,GAAG;IAC3D,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAEtE,MAAM,MAAM,eAAe,GAAG,mBAAmB,GAAG,UAAU,GAAG,WAAW,GAAG,aAAa,GAAG,cAAc,CAAC;AAE9G,oBAAY,oBAAoB;IAC9B,IAAI,SAAS;IACb,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,2BAA2B,EAAE,eAAe,EAA6D,CAAC;AACvH,eAAO,MAAM,yBAAyB,EAAE,mBAAmB,EAAuC,CAAC;AAEnG,KAAK,eAAe,CAAC,MAAM,GAAG,eAAe,EAAE,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;AACnH,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC,cAAc,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;AAEjF,MAAM,MAAM,YAAY,GAAG,eAAe,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;AAClF,MAAM,MAAM,aAAa,GAAG,eAAe,CAAC;AAC5C,MAAM,MAAM,QAAQ,GAAG,eAAe,CAAC,4BAA4B,CAAC,CAAC;AACrE,MAAM,MAAM,WAAW,GAAG,eAAe,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { getPointerPosition } from '../utils';
|
|
2
|
+
import { ControlPosition } from './types';
|
|
3
|
+
type GetResizeDirectionParams = {
|
|
4
|
+
width: number;
|
|
5
|
+
prevWidth: number;
|
|
6
|
+
height: number;
|
|
7
|
+
prevHeight: number;
|
|
8
|
+
affectsX: boolean;
|
|
9
|
+
affectsY: boolean;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Get all connecting edges for a given set of nodes
|
|
13
|
+
* @param width - new width of the node
|
|
14
|
+
* @param prevWidth - previous width of the node
|
|
15
|
+
* @param height - new height of the node
|
|
16
|
+
* @param prevHeight - previous height of the node
|
|
17
|
+
* @param affectsX - whether to invert the resize direction for the x axis
|
|
18
|
+
* @param affectsY - whether to invert the resize direction for the y axis
|
|
19
|
+
* @returns array of two numbers representing the direction of the resize for each axis, 0 = no change, 1 = increase, -1 = decrease
|
|
20
|
+
*/
|
|
21
|
+
export declare function getResizeDirection({ width, prevWidth, height, prevHeight, affectsX, affectsY, }: GetResizeDirectionParams): number[];
|
|
22
|
+
/**
|
|
23
|
+
* Parses the control position that is being dragged to dimensions that are being resized
|
|
24
|
+
* @param controlPosition - position of the control that is being dragged
|
|
25
|
+
* @returns isHorizontal, isVertical, affectsX, affectsY,
|
|
26
|
+
*/
|
|
27
|
+
export declare function getControlDirection(controlPosition: ControlPosition): {
|
|
28
|
+
isHorizontal: boolean;
|
|
29
|
+
isVertical: boolean;
|
|
30
|
+
affectsX: boolean;
|
|
31
|
+
affectsY: boolean;
|
|
32
|
+
};
|
|
33
|
+
type PrevValues = {
|
|
34
|
+
width: number;
|
|
35
|
+
height: number;
|
|
36
|
+
x: number;
|
|
37
|
+
y: number;
|
|
38
|
+
};
|
|
39
|
+
type StartValues = PrevValues & {
|
|
40
|
+
pointerX: number;
|
|
41
|
+
pointerY: number;
|
|
42
|
+
aspectRatio: number;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Calculates new width & height of node after resize based on pointer position
|
|
46
|
+
* @param startValues - starting values of resize
|
|
47
|
+
* @param controlDirection - dimensions affected by the resize
|
|
48
|
+
* @param pointerPosition - the current pointer position corrected for snapping
|
|
49
|
+
* @param boundaries - minimum and maximum dimensions of the node
|
|
50
|
+
* @param keepAspectRatio - prevent changes of asprect ratio
|
|
51
|
+
* @returns width: new width of node, height: new height of node
|
|
52
|
+
*/
|
|
53
|
+
export declare function getDimensionsAfterResize(startValues: StartValues, controlDirection: ReturnType<typeof getControlDirection>, pointerPosition: ReturnType<typeof getPointerPosition>, boundaries: {
|
|
54
|
+
minWidth: number;
|
|
55
|
+
maxWidth: number;
|
|
56
|
+
minHeight: number;
|
|
57
|
+
maxHeight: number;
|
|
58
|
+
}, keepAspectRatio: boolean): {
|
|
59
|
+
width: number;
|
|
60
|
+
height: number;
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* Determines new x & y position of node after resize based on new width & height
|
|
64
|
+
* @param startValues - starting values of resize
|
|
65
|
+
* @param controlDirection - dimensions affected by the resize
|
|
66
|
+
* @param width - new width of node
|
|
67
|
+
* @param height - new height of node
|
|
68
|
+
* @returns x: new x position of node, y: new y position of node
|
|
69
|
+
*/
|
|
70
|
+
export declare function getPositionAfterResize(startValues: StartValues, controlDirection: ReturnType<typeof getControlDirection>, width: number, height: number): {
|
|
71
|
+
x: number;
|
|
72
|
+
y: number;
|
|
73
|
+
};
|
|
74
|
+
export {};
|
|
75
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/xyresizer/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,kBAAkB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,KAAK,wBAAwB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,KAAK,EACL,SAAS,EACT,MAAM,EACN,UAAU,EACV,QAAQ,EACR,QAAQ,GACT,EAAE,wBAAwB,YAc1B;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,eAAe,EAAE,eAAe;;;;;EAYnE;AAED,KAAK,UAAU,GAAG;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,KAAK,WAAW,GAAG,UAAU,GAAG;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,EACxD,eAAe,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,EACtD,UAAU,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EACxF,eAAe,EAAE,OAAO;;;EA2CzB;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,EACxD,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM;;;EAMf"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyflow/system",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.15",
|
|
4
4
|
"description": "xyflow core system that powers React Flow and Svelte Flow.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"node-based UI",
|
|
@@ -47,9 +47,9 @@
|
|
|
47
47
|
"devDependencies": {
|
|
48
48
|
"@types/node": "^18.7.16",
|
|
49
49
|
"typescript": "5.1.3",
|
|
50
|
+
"@xyflow/tsconfig": "0.0.0",
|
|
50
51
|
"@xyflow/eslint-config": "0.0.0",
|
|
51
|
-
"@xyflow/rollup-config": "0.0.0"
|
|
52
|
-
"@xyflow/tsconfig": "0.0.0"
|
|
52
|
+
"@xyflow/rollup-config": "0.0.0"
|
|
53
53
|
},
|
|
54
54
|
"rollup": {
|
|
55
55
|
"globals": {
|