@xyflow/system 0.0.15 → 0.0.17

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 (44) hide show
  1. package/dist/esm/index.js +338 -139
  2. package/dist/esm/index.mjs +338 -139
  3. package/dist/esm/types/general.d.ts +6 -3
  4. package/dist/esm/types/general.d.ts.map +1 -1
  5. package/dist/esm/types/nodes.d.ts +3 -4
  6. package/dist/esm/types/nodes.d.ts.map +1 -1
  7. package/dist/esm/utils/connections.d.ts +3 -3
  8. package/dist/esm/utils/connections.d.ts.map +1 -1
  9. package/dist/esm/utils/dom.d.ts.map +1 -1
  10. package/dist/esm/utils/general.d.ts +1 -0
  11. package/dist/esm/utils/general.d.ts.map +1 -1
  12. package/dist/esm/utils/graph.d.ts +25 -6
  13. package/dist/esm/utils/graph.d.ts.map +1 -1
  14. package/dist/esm/utils/marker.d.ts +3 -1
  15. package/dist/esm/utils/marker.d.ts.map +1 -1
  16. package/dist/esm/xydrag/XYDrag.d.ts +5 -5
  17. package/dist/esm/xydrag/XYDrag.d.ts.map +1 -1
  18. package/dist/esm/xyhandle/XYHandle.d.ts.map +1 -1
  19. package/dist/esm/xyresizer/XYResizer.d.ts +7 -2
  20. package/dist/esm/xyresizer/XYResizer.d.ts.map +1 -1
  21. package/dist/esm/xyresizer/utils.d.ts +12 -13
  22. package/dist/esm/xyresizer/utils.d.ts.map +1 -1
  23. package/dist/umd/index.js +1 -1
  24. package/dist/umd/types/general.d.ts +6 -3
  25. package/dist/umd/types/general.d.ts.map +1 -1
  26. package/dist/umd/types/nodes.d.ts +3 -4
  27. package/dist/umd/types/nodes.d.ts.map +1 -1
  28. package/dist/umd/utils/connections.d.ts +3 -3
  29. package/dist/umd/utils/connections.d.ts.map +1 -1
  30. package/dist/umd/utils/dom.d.ts.map +1 -1
  31. package/dist/umd/utils/general.d.ts +1 -0
  32. package/dist/umd/utils/general.d.ts.map +1 -1
  33. package/dist/umd/utils/graph.d.ts +25 -6
  34. package/dist/umd/utils/graph.d.ts.map +1 -1
  35. package/dist/umd/utils/marker.d.ts +3 -1
  36. package/dist/umd/utils/marker.d.ts.map +1 -1
  37. package/dist/umd/xydrag/XYDrag.d.ts +5 -5
  38. package/dist/umd/xydrag/XYDrag.d.ts.map +1 -1
  39. package/dist/umd/xyhandle/XYHandle.d.ts.map +1 -1
  40. package/dist/umd/xyresizer/XYResizer.d.ts +7 -2
  41. package/dist/umd/xyresizer/XYResizer.d.ts.map +1 -1
  42. package/dist/umd/xyresizer/utils.d.ts +12 -13
  43. package/dist/umd/xyresizer/utils.d.ts.map +1 -1
  44. package/package.json +3 -3
@@ -1,4 +1,4 @@
1
- import { type Transform, type XYPosition, type Rect, type NodeOrigin, type NodeBase, type EdgeBase, type FitViewParamsBase, type FitViewOptionsBase, NodeDragItem, CoordinateExtent, OnError, OnBeforeDelete } from '../types';
1
+ import { type Transform, type XYPosition, type Rect, type NodeOrigin, type NodeBase, type EdgeBase, type FitViewParamsBase, type FitViewOptionsBase, CoordinateExtent, OnError, OnBeforeDeleteBase, NodeLookup } from '../types';
2
2
  /**
3
3
  * Test whether an object is useable as an Edge
4
4
  * @public
@@ -37,18 +37,24 @@ export declare const getOutgoers: <NodeType extends NodeBase<any, string | undef
37
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
- export declare const getNodePositionWithOrigin: (node: NodeBase | undefined, nodeOrigin?: NodeOrigin) => XYPosition & {
40
+ export declare const getNodePositionWithOrigin: (node: NodeBase | undefined, nodeOrigin?: NodeOrigin) => {
41
+ position: XYPosition;
41
42
  positionAbsolute: XYPosition;
42
43
  };
44
+ export type GetNodesBoundsParams = {
45
+ nodeOrigin?: NodeOrigin;
46
+ useRelativePosition?: boolean;
47
+ };
43
48
  /**
44
49
  * Determines a bounding box that contains all given nodes in an array
45
50
  * @public
46
51
  * @remarks Useful when combined with {@link getViewportForBounds} to calculate the correct transform to fit the given nodes in a viewport.
47
52
  * @param nodes - Nodes to calculate the bounds for
48
- * @param nodeOrigin - Origin of the nodes: [0, 0] - top left, [0.5, 0.5] - center
53
+ * @param params.nodeOrigin - Origin of the nodes: [0, 0] - top left, [0.5, 0.5] - center
54
+ * @param params.useRelativePosition - Whether to use the relative or absolute node positions
49
55
  * @returns Bounding box enclosing all nodes
50
56
  */
51
- export declare const getNodesBounds: (nodes: NodeBase[], nodeOrigin?: NodeOrigin) => Rect;
57
+ export declare const getNodesBounds: (nodes: NodeBase[], params?: GetNodesBoundsParams) => Rect;
52
58
  export declare const getNodesInside: <NodeType extends NodeBase<any, string | undefined>>(nodes: NodeType[], rect: Rect, [tx, ty, tScale]?: Transform, partially?: boolean, excludeNonSelectableNodes?: boolean, nodeOrigin?: NodeOrigin) => NodeType[];
53
59
  /**
54
60
  * Get all connecting edges for a given set of nodes
@@ -58,7 +64,20 @@ export declare const getNodesInside: <NodeType extends NodeBase<any, string | un
58
64
  */
59
65
  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
66
  export declare function fitView<Params extends FitViewParamsBase<NodeBase>, Options extends FitViewOptionsBase<NodeBase>>({ nodes, width, height, panZoom, minZoom, maxZoom, nodeOrigin }: Params, options?: Options): boolean;
61
- export declare function calcNextPosition<NodeType extends NodeBase>(node: NodeDragItem | NodeType, nextPosition: XYPosition, nodes: NodeType[], nodeExtent?: CoordinateExtent, nodeOrigin?: NodeOrigin, onError?: OnError): {
67
+ /**
68
+ * This function calculates the next position of a node, taking into account the node's extent, parent node, and origin.
69
+ *
70
+ * @internal
71
+ * @returns position, positionAbsolute
72
+ */
73
+ export declare function calculateNodePosition<NodeType extends NodeBase>({ nodeId, nextPosition, nodeLookup, nodeOrigin, nodeExtent, onError, }: {
74
+ nodeId: string;
75
+ nextPosition: XYPosition;
76
+ nodeLookup: NodeLookup<NodeType>;
77
+ nodeOrigin?: NodeOrigin;
78
+ nodeExtent?: CoordinateExtent;
79
+ onError?: OnError;
80
+ }): {
62
81
  position: XYPosition;
63
82
  positionAbsolute: XYPosition;
64
83
  };
@@ -77,7 +96,7 @@ export declare function getElementsToRemove<NodeType extends NodeBase = NodeBase
77
96
  edgesToRemove: Partial<EdgeType>[];
78
97
  nodes: NodeType[];
79
98
  edges: EdgeType[];
80
- onBeforeDelete?: OnBeforeDelete;
99
+ onBeforeDelete?: OnBeforeDeleteBase<NodeType, EdgeType>;
81
100
  }): Promise<{
82
101
  nodes: NodeType[];
83
102
  edges: EdgeType[];
@@ -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,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"}
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,gBAAgB,EAChB,OAAO,EACP,kBAAkB,EAClB,UAAU,EACX,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;cAEb,UAAU;sBAAoB,UAAU;CA+BtD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,UAClB,QAAQ,EAAE,WACT,oBAAoB,KAC3B,IAqBF,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;AAoBD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,SAAS,QAAQ,EAAE,EAC/D,MAAM,EACN,YAAY,EACZ,UAAU,EACV,UAAmB,EACnB,UAAU,EACV,OAAO,GACR,EAAE;IACD,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG;IAAE,QAAQ,EAAE,UAAU,CAAC;IAAC,gBAAgB,EAAE,UAAU,CAAA;CAAE,CA8CzD;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,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;CACzD,GAAG,OAAO,CAAC;IACV,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB,CAAC,CA+CD"}
@@ -1,7 +1,9 @@
1
1
  import type { EdgeBase, EdgeMarkerType, MarkerProps } from '../types';
2
2
  export declare function getMarkerId(marker: EdgeMarkerType | undefined, id?: string | null): string;
3
- export declare function createMarkerIds(edges: EdgeBase[], { id, defaultColor }: {
3
+ export declare function createMarkerIds(edges: EdgeBase[], { id, defaultColor, defaultMarkerStart, defaultMarkerEnd, }: {
4
4
  id?: string | null;
5
5
  defaultColor?: string;
6
+ defaultMarkerStart?: EdgeMarkerType;
7
+ defaultMarkerEnd?: EdgeMarkerType;
6
8
  }): MarkerProps[];
7
9
  //# sourceMappingURL=marker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"marker.d.ts","sourceRoot":"","sources":["../../src/utils/marker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAc,cAAc,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAElF,wBAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAe1F;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,QAAQ,EAAE,EACjB,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,iBAkBpE"}
1
+ {"version":3,"file":"marker.d.ts","sourceRoot":"","sources":["../../src/utils/marker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAc,cAAc,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAElF,wBAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAe1F;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,QAAQ,EAAE,EACjB,EACE,EAAE,EACF,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,GACjB,EAAE;IACD,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,cAAc,CAAC;IACpC,gBAAgB,CAAC,EAAE,cAAc,CAAC;CACnC,iBAmBF"}
@@ -1,6 +1,6 @@
1
- import type { NodeBase, NodeDragItem, EdgeBase, CoordinateExtent, NodeOrigin, OnError, SnapGrid, Transform, PanBy, OnNodeDrag, OnSelectionDrag, UpdateNodePositions } from '../types';
1
+ import type { NodeBase, NodeDragItem, EdgeBase, CoordinateExtent, NodeOrigin, OnError, SnapGrid, Transform, PanBy, OnSelectionDrag, UpdateNodePositions } from '../types';
2
2
  export type OnDrag = (event: MouseEvent, dragItems: NodeDragItem[], node: NodeBase, nodes: NodeBase[]) => void;
3
- type StoreItems = {
3
+ type StoreItems<OnNodeDrag> = {
4
4
  nodes: NodeBase[];
5
5
  nodeLookup: Map<string, NodeBase>;
6
6
  edges: EdgeBase[];
@@ -29,9 +29,9 @@ type StoreItems = {
29
29
  onSelectionDragStop?: OnSelectionDrag;
30
30
  updateNodePositions: UpdateNodePositions;
31
31
  };
32
- export type XYDragParams = {
32
+ export type XYDragParams<OnNodeDrag> = {
33
33
  domNode: Element;
34
- getStoreItems: () => StoreItems;
34
+ getStoreItems: () => StoreItems<OnNodeDrag>;
35
35
  onDragStart?: OnDrag;
36
36
  onDrag?: OnDrag;
37
37
  onDragStop?: OnDrag;
@@ -48,6 +48,6 @@ export type DragUpdateParams = {
48
48
  nodeId?: string;
49
49
  domNode: Element;
50
50
  };
51
- export declare function XYDrag({ domNode, onNodeMouseDown, getStoreItems, onDragStart, onDrag, onDragStop, }: XYDragParams): XYDragInstance;
51
+ export declare function XYDrag<OnNodeDrag extends (e: any, nodes: any, node: any) => void | undefined>({ domNode, onNodeMouseDown, getStoreItems, onDragStart, onDrag, onDragStop, }: XYDragParams<OnNodeDrag>): XYDragInstance;
52
52
  export {};
53
53
  //# sourceMappingURL=XYDrag.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"XYDrag.d.ts","sourceRoot":"","sources":["../../src/xydrag/XYDrag.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EAGZ,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,OAAO,EACP,QAAQ,EACR,SAAS,EACT,KAAK,EACL,UAAU,EACV,eAAe,EACf,mBAAmB,EAEpB,MAAM,UAAU,CAAC;AAElB,MAAM,MAAM,MAAM,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;AAE/G,KAAK,UAAU,GAAG;IAChB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAClC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,UAAU,CAAC;IACvB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,KAAK,CAAC;IACb,qBAAqB,EAAE,CAAC,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAA;KAAE,KAAK,IAAI,CAAC;IACrF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,oBAAoB,CAAC,EAAE,eAAe,CAAC;IACvC,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,mBAAmB,CAAC,EAAE,eAAe,CAAC;IACtC,mBAAmB,EAAE,mBAAmB,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,UAAU,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC3C,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,wBAAgB,MAAM,CAAC,EACrB,OAAO,EACP,eAAe,EACf,aAAa,EACb,WAAW,EACX,MAAM,EACN,UAAU,GACX,EAAE,YAAY,GAAG,cAAc,CAmP/B"}
1
+ {"version":3,"file":"XYDrag.d.ts","sourceRoot":"","sources":["../../src/xydrag/XYDrag.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EAGZ,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,OAAO,EACP,QAAQ,EACR,SAAS,EACT,KAAK,EACL,eAAe,EACf,mBAAmB,EAEpB,MAAM,UAAU,CAAC;AAElB,MAAM,MAAM,MAAM,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;AAE/G,KAAK,UAAU,CAAC,UAAU,IAAI;IAC5B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAClC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,UAAU,CAAC;IACvB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,KAAK,CAAC;IACb,qBAAqB,EAAE,CAAC,MAAM,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAA;KAAE,KAAK,IAAI,CAAC;IACrF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,UAAU,CAAC;IAC7B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,oBAAoB,CAAC,EAAE,eAAe,CAAC;IACvC,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,mBAAmB,CAAC,EAAE,eAAe,CAAC;IACtC,mBAAmB,EAAE,mBAAmB,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,UAAU,IAAI;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC3C,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAGF,wBAAgB,MAAM,CAAC,UAAU,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,SAAS,EAAE,EAC7F,OAAO,EACP,eAAe,EACf,aAAa,EACb,WAAW,EACX,MAAM,EACN,UAAU,GACX,EAAE,YAAY,CAAC,UAAU,CAAC,GAAG,cAAc,CAyP3C"}
@@ -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,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"}
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;AAiQF,eAAO,MAAM,QAAQ,EAAE,gBAGtB,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { NodeLookup, Transform } from '../types';
1
+ import type { CoordinateExtent, NodeLookup, Transform, XYPosition } from '../types';
2
2
  import type { OnResize, OnResizeEnd, OnResizeStart, ShouldResize, ControlPosition } from './types';
3
3
  declare const initChange: {
4
4
  x: number;
@@ -11,6 +11,11 @@ declare const initChange: {
11
11
  isHeightChange: boolean;
12
12
  };
13
13
  export type XYResizerChange = typeof initChange;
14
+ export type XYResizerChildChange = {
15
+ id: string;
16
+ position: XYPosition;
17
+ extent?: 'parent' | CoordinateExtent;
18
+ };
14
19
  type XYResizerParams = {
15
20
  domNode: HTMLDivElement;
16
21
  nodeId: string;
@@ -20,7 +25,7 @@ type XYResizerParams = {
20
25
  snapGrid?: [number, number];
21
26
  snapToGrid: boolean;
22
27
  };
23
- onChange: (changes: XYResizerChange) => void;
28
+ onChange: (changes: XYResizerChange, childChanges: XYResizerChildChange[]) => void;
24
29
  onEnd?: () => void;
25
30
  };
26
31
  type XYResizerUpdateParams = {
@@ -1 +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"}
1
+ {"version":3,"file":"XYResizer.d.ts","sourceRoot":"","sources":["../../src/xyresizer/XYResizer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAY,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC9F,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,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,CAAC,EAAE,QAAQ,GAAG,gBAAgB,CAAC;CACtC,CAAC;AAEF,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,EAAE,YAAY,EAAE,oBAAoB,EAAE,KAAK,IAAI,CAAC;IACnF,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;AAmBF,wBAAgB,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,eAAe,GAAG,iBAAiB,CAkM1G"}
@@ -1,3 +1,4 @@
1
+ import { CoordinateExtent } from '../types';
1
2
  import { getPointerPosition } from '../utils';
2
3
  import { ControlPosition } from './types';
3
4
  type GetResizeDirectionParams = {
@@ -42,32 +43,30 @@ type StartValues = PrevValues & {
42
43
  aspectRatio: number;
43
44
  };
44
45
  /**
45
- * Calculates new width & height of node after resize based on pointer position
46
+ * Calculates new width & height and x & y of node after resize based on pointer position
47
+ * @description - Buckle up, this is a chunky one! If you want to determine the new dimensions of a node after a resize,
48
+ * you have to account for all possible restrictions: min/max width/height of the node, the maximum extent the node is allowed
49
+ * to move in (in this case: resize into) determined by the parent node, the minimal extent determined by child nodes
50
+ * with expandParent or extent: 'parent' set and oh yeah, these things also have to work with keepAspectRatio!
51
+ * The way this is done is by determining how much each of these restricting actually restricts the resize and then applying the
52
+ * strongest restriction. Because the resize affects x, y and width, height and width, height of a opposing side with keepAspectRatio,
53
+ * the resize amount is always kept in distX & distY amount (the distance in mouse movement)
54
+ * Instead of clamping each value, we first calculate the biggest 'clamp' (for the lack of a better name) and then apply it to all values.
46
55
  * @param startValues - starting values of resize
47
56
  * @param controlDirection - dimensions affected by the resize
48
57
  * @param pointerPosition - the current pointer position corrected for snapping
49
58
  * @param boundaries - minimum and maximum dimensions of the node
50
59
  * @param keepAspectRatio - prevent changes of asprect ratio
51
- * @returns width: new width of node, height: new height of node
60
+ * @returns x, y, width and height of the node after resize
52
61
  */
53
62
  export declare function getDimensionsAfterResize(startValues: StartValues, controlDirection: ReturnType<typeof getControlDirection>, pointerPosition: ReturnType<typeof getPointerPosition>, boundaries: {
54
63
  minWidth: number;
55
64
  maxWidth: number;
56
65
  minHeight: number;
57
66
  maxHeight: number;
58
- }, keepAspectRatio: boolean): {
67
+ }, keepAspectRatio: boolean, extent?: CoordinateExtent, childExtent?: CoordinateExtent): {
59
68
  width: number;
60
69
  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
70
  x: number;
72
71
  y: number;
73
72
  };
@@ -1 +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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/xyresizer/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,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;AAkBF;;;;;;;;;;;;;;;;GAgBG;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,EACxB,MAAM,CAAC,EAAE,gBAAgB,EACzB,WAAW,CAAC,EAAE,gBAAgB;;;;;EAoJ/B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xyflow/system",
3
- "version": "0.0.15",
3
+ "version": "0.0.17",
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",
51
50
  "@xyflow/eslint-config": "0.0.0",
52
- "@xyflow/rollup-config": "0.0.0"
51
+ "@xyflow/rollup-config": "0.0.0",
52
+ "@xyflow/tsconfig": "0.0.0"
53
53
  },
54
54
  "rollup": {
55
55
  "globals": {