@ngroznykh/papirus 0.9.1 → 0.9.3

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.
@@ -18,6 +18,8 @@ export declare const ANCHOR_PORT_PREFIX = "anchor:";
18
18
  export declare const BEZIER_MAX_OFFSET = 100;
19
19
  /** Screen distance (px) within which edge endpoint snaps to shape outline when attachToOutline */
20
20
  export declare const OUTLINE_SNAP_SCREEN_TOLERANCE = 40;
21
+ /** Screen distance (px) to show/grab the floating outline connect handle */
22
+ export declare const OUTLINE_CONNECT_HANDLE_HIT_RADIUS = 4;
21
23
  export declare const SELECTION_RECT_MIN_SIZE = 1;
22
24
  export declare const DEFAULT_SELECTION_COLOR = "#3b82f6";
23
25
  export declare const DEFAULT_HOVER_COLOR = "#6366f1";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,eAAO,MAAM,WAAW,QAAc,CAAC;AAGvC,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAO/C,CAAC;AAGF,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAG9C,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAGtC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAGtC,eAAO,MAAM,kBAAkB,YAAY,CAAC;AAG5C,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,kGAAkG;AAClG,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAGhD,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,uBAAuB,YAAY,CAAC;AACjD,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAG7C,qDAAqD;AACrD,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,sHAAsH;AACtH,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAG5C,2FAA2F;AAC3F,eAAO,MAAM,sCAAsC,IAAI,CAAC;AACxD,sFAAsF;AACtF,eAAO,MAAM,iCAAiC,KAAK,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,eAAO,MAAM,WAAW,QAAc,CAAC;AAGvC,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAO/C,CAAC;AAGF,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAG9C,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAGtC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAGtC,eAAO,MAAM,kBAAkB,YAAY,CAAC;AAG5C,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,kGAAkG;AAClG,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAChD,4EAA4E;AAC5E,eAAO,MAAM,iCAAiC,IAAI,CAAC;AAGnD,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,uBAAuB,YAAY,CAAC;AACjD,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAG7C,qDAAqD;AACrD,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,sHAAsH;AACtH,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAG5C,2FAA2F;AAC3F,eAAO,MAAM,sCAAsC,IAAI,CAAC;AACxD,sFAAsF;AACtF,eAAO,MAAM,iCAAiC,KAAK,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ConnectionManager.d.ts","sourceRoot":"","sources":["../../src/core/ConnectionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConnectionManager.d.ts","sourceRoot":"","sources":["../../src/core/ConnectionManager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EdgeEndpointUpdater.d.ts","sourceRoot":"","sources":["../../src/core/EdgeEndpointUpdater.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAOrD,MAAM,WAAW,uBAAuB;IACtC,QAAQ,IAAI,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtC,QAAQ,IAAI,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtC,gBAAgB,IAAI,YAAY,EAAE,CAAC;CACpC;AAOD,qBAAa,mBAAmB;IAClB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,uBAAuB;IAE1D,aAAa,IAAI,IAAI;IAMrB,SAAS,IAAI,IAAI;IAIjB,OAAO,CAAC,MAAM;IA+Bd,OAAO,CAAC,kBAAkB;IA2D1B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA8C9B,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,WAAW;IAqBnB;;;;;;;;;OASG;IACH,OAAO,CAAC,qBAAqB;IA2C7B,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,mBAAmB;IAmB3B,OAAO,CAAC,mBAAmB;IAqB3B;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IA6B3B,OAAO,CAAC,uBAAuB;CAOhC"}
1
+ {"version":3,"file":"EdgeEndpointUpdater.d.ts","sourceRoot":"","sources":["../../src/core/EdgeEndpointUpdater.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAMrD,MAAM,WAAW,uBAAuB;IACtC,QAAQ,IAAI,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtC,QAAQ,IAAI,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtC,gBAAgB,IAAI,YAAY,EAAE,CAAC;CACpC;AAOD,qBAAa,mBAAmB;IAClB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,uBAAuB;IAE1D,aAAa,IAAI,IAAI;IAMrB,SAAS,IAAI,IAAI;IAIjB,OAAO,CAAC,MAAM;IA+Bd,OAAO,CAAC,kBAAkB;IA2D1B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA8C9B,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,WAAW;IAqBnB;;;;;;;;;OASG;IACH,OAAO,CAAC,qBAAqB;IA2C7B,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,mBAAmB;IAmB3B,OAAO,CAAC,mBAAmB;IAqB3B;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IA4B3B,OAAO,CAAC,uBAAuB;CAOhC"}
@@ -4,6 +4,7 @@ import { TextLabel, TextLabelOptions } from './TextLabel';
4
4
  import { NodeImage, NodeImageOptions } from './NodeImage';
5
5
  import { StyleManager } from '../styles/StyleManager';
6
6
  import { Bounds, ContentInsetSides, NodeStyle, Point, Size } from '../types';
7
+ import { Direction } from '../utils/direction';
7
8
  import { ContentInsetScaleSides } from '../utils/resolveContentInset';
8
9
  /** Badge shown in top-left corner of node (e.g. interactive property indicator) */
9
10
  export interface NodeBadgeOption {
@@ -275,6 +276,15 @@ export declare abstract class Node extends Element {
275
276
  * Get point on outline at normalized param (0-1 along perimeter).
276
277
  * Base implementation uses rectangular outline. Override for non-rectangular shapes.
277
278
  */
279
+ /**
280
+ * Outward cardinal side at an outline param. Rectangles use AABB perimeter
281
+ * fractions; non-rectangular shapes override from the real outline point.
282
+ */
283
+ getOutlineDirection(param: number): Exclude<Direction, undefined>;
284
+ /**
285
+ * Outward side from node center toward a point on the outline.
286
+ */
287
+ protected outlineDirectionFromCenter(param: number): Exclude<Direction, undefined>;
278
288
  getConnectionPointAtOutlineParam(param: number): Point;
279
289
  /**
280
290
  * Get closest point on outline and its param (0-1).
@@ -1 +1 @@
1
- {"version":3,"file":"Node.d.ts","sourceRoot":"","sources":["../../src/elements/Node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Node.d.ts","sourceRoot":"","sources":["../../src/elements/Node.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export declare class CircleNode extends Node {
15
15
  */
16
16
  get radiusY(): number;
17
17
  hitTest(point: Point): boolean;
18
+ getOutlineDirection(param: number): 'top' | 'right' | 'bottom' | 'left';
18
19
  getConnectionPointAtOutlineParam(param: number): Point;
19
20
  getClosestPointOnOutline(target: Point): {
20
21
  point: Point;
@@ -1 +1 @@
1
- {"version":3,"file":"CircleNode.d.ts","sourceRoot":"","sources":["../../../src/elements/nodes/CircleNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAE7C;;GAEG;AACH,qBAAa,UAAW,SAAQ,IAAI;gBACtB,OAAO,EAAE,WAAW;IAIhC,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAEQ,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAY9B,gCAAgC,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK;IAYtD,wBAAwB,CAAC,MAAM,EAAE,KAAK,GAAG;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;cAc9D,qBAAqB,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK;cAkB3C,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAWlE,MAAM,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;CAuB5C"}
1
+ {"version":3,"file":"CircleNode.d.ts","sourceRoot":"","sources":["../../../src/elements/nodes/CircleNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAE7C;;GAEG;AACH,qBAAa,UAAW,SAAQ,IAAI;gBACtB,OAAO,EAAE,WAAW;IAIhC,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAEQ,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAY9B,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM;IAIvE,gCAAgC,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK;IAYtD,wBAAwB,CAAC,MAAM,EAAE,KAAK,GAAG;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;cAc9D,qBAAqB,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK;cAkB3C,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAWlE,MAAM,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;CAuB5C"}
@@ -43,6 +43,7 @@ export declare class CustomShapeNode extends Node {
43
43
  setSvgPath(value: string | ((width: number, height: number) => string) | undefined): void;
44
44
  private getOutlineSample;
45
45
  private localToWorld;
46
+ getOutlineDirection(param: number): 'top' | 'right' | 'bottom' | 'left';
46
47
  getConnectionPointAtOutlineParam(param: number): Point;
47
48
  getClosestPointOnOutline(target: Point): {
48
49
  point: Point;
@@ -1 +1 @@
1
- {"version":3,"file":"CustomShapeNode.d.ts","sourceRoot":"","sources":["../../../src/elements/nodes/CustomShapeNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIrC,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IACzD,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IAC3D;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,IAAI;IACvC,OAAO,CAAC,YAAY,CAA4C;IAChE,OAAO,CAAC,eAAe,CAA4D;IACnF,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,cAAc,CAA4E;gBAEtF,OAAO,EAAE,sBAAsB;IAsB3C,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;IAED,IAAI,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAKtC;IAED;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI;IAOxE;;OAEG;IACH,OAAO,IAAI,MAAM;IAcjB;;OAEG;IACH,UAAU,IAAI,MAAM,GAAG,IAAI;IAO3B;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,GAAG,IAAI;IAWzF,OAAO,CAAC,gBAAgB;IAkExB,OAAO,CAAC,YAAY;IAIX,gCAAgC,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK;IAuBtD,wBAAwB,CAAC,MAAM,EAAE,KAAK,GAAG;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;cAiD9D,qBAAqB,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK;IAqB9D,OAAO,CAAC,qBAAqB;IA6BpB,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAyBvC,MAAM,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;CAsB5C;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;IACzB;;OAEG;qBACc,MAAM,UAAU,MAAM,KAAG,MAAM;IAehD;;OAEG;2BACoB,MAAM,UAAU,MAAM,KAAG,MAAM;IAatD;;OAEG;sBACe,MAAM,UAAU,MAAM,KAAG,MAAM;IAgBjD;;OAEG;sBACe,MAAM,UAAU,MAAM,KAAG,MAAM;IAcjD;;OAEG;;qBAEY,MAAM,KAAK,MAAM,KAAG,MAAM;2BAEpB,MAAM,KAAK,MAAM,KAAG,MAAM;sBAI/B,MAAM,KAAK,MAAM,KAAG,MAAM;sBAK1B,MAAM,KAAK,MAAM,KAAG,MAAM;QAIxC,wCAAwC;uBACzB,MAAM,KAAK,MAAM,KAAG,MAAM;;CAK5C,CAAC"}
1
+ {"version":3,"file":"CustomShapeNode.d.ts","sourceRoot":"","sources":["../../../src/elements/nodes/CustomShapeNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIrC,MAAM,WAAW,sBAAuB,SAAQ,WAAW;IACzD,IAAI,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IAC3D;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,IAAI;IACvC,OAAO,CAAC,YAAY,CAA4C;IAChE,OAAO,CAAC,eAAe,CAA4D;IACnF,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,cAAc,CAA4E;gBAEtF,OAAO,EAAE,sBAAsB;IAsB3C,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;IAED,IAAI,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAKtC;IAED;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI;IAOxE;;OAEG;IACH,OAAO,IAAI,MAAM;IAcjB;;OAEG;IACH,UAAU,IAAI,MAAM,GAAG,IAAI;IAO3B;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,GAAG,IAAI;IAWzF,OAAO,CAAC,gBAAgB;IAkExB,OAAO,CAAC,YAAY;IAIX,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM;IAOvE,gCAAgC,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK;IAuBtD,wBAAwB,CAAC,MAAM,EAAE,KAAK,GAAG;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;cAiD9D,qBAAqB,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK;IAqB9D,OAAO,CAAC,qBAAqB;IA6BpB,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAyBvC,MAAM,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;CAsB5C;AAED;;GAEG;AACH,eAAO,MAAM,cAAc;IACzB;;OAEG;qBACc,MAAM,UAAU,MAAM,KAAG,MAAM;IAehD;;OAEG;2BACoB,MAAM,UAAU,MAAM,KAAG,MAAM;IAatD;;OAEG;sBACe,MAAM,UAAU,MAAM,KAAG,MAAM;IAgBjD;;OAEG;sBACe,MAAM,UAAU,MAAM,KAAG,MAAM;IAcjD;;OAEG;;qBAEY,MAAM,KAAK,MAAM,KAAG,MAAM;2BAEpB,MAAM,KAAK,MAAM,KAAG,MAAM;sBAI/B,MAAM,KAAK,MAAM,KAAG,MAAM;sBAK1B,MAAM,KAAK,MAAM,KAAG,MAAM;QAIxC,wCAAwC;uBACzB,MAAM,KAAK,MAAM,KAAG,MAAM;;CAK5C,CAAC"}
@@ -7,6 +7,7 @@ export declare class DiamondNode extends Node {
7
7
  constructor(options: NodeOptions);
8
8
  get typeName(): string;
9
9
  hitTest(point: Point): boolean;
10
+ getOutlineDirection(param: number): 'top' | 'right' | 'bottom' | 'left';
10
11
  getConnectionPointAtOutlineParam(param: number): Point;
11
12
  getClosestPointOnOutline(target: Point): {
12
13
  point: Point;
@@ -1 +1 @@
1
- {"version":3,"file":"DiamondNode.d.ts","sourceRoot":"","sources":["../../../src/elements/nodes/DiamondNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAE7C;;GAEG;AACH,qBAAa,WAAY,SAAQ,IAAI;gBACvB,OAAO,EAAE,WAAW;IAIhC,IAAI,QAAQ,IAAI,MAAM,CAErB;IAEQ,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAe9B,gCAAgC,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK;IA6BtD,wBAAwB,CAAC,MAAM,EAAE,KAAK,GAAG;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;cAuC9D,qBAAqB,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK;cAkB3C,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAWlE,MAAM,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;CA0B5C"}
1
+ {"version":3,"file":"DiamondNode.d.ts","sourceRoot":"","sources":["../../../src/elements/nodes/DiamondNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAE7C;;GAEG;AACH,qBAAa,WAAY,SAAQ,IAAI;gBACvB,OAAO,EAAE,WAAW;IAIhC,IAAI,QAAQ,IAAI,MAAM,CAErB;IAEQ,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAe9B,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM;IAIvE,gCAAgC,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK;IA6BtD,wBAAwB,CAAC,MAAM,EAAE,KAAK,GAAG;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;cAuC9D,qBAAqB,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK;cAkB3C,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAWlE,MAAM,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;CA0B5C"}
package/dist/papirus.js CHANGED
@@ -1698,6 +1698,11 @@ function getDirectionFromOutlineParam(param, bounds) {
1698
1698
  if (p < .75) return "bottom";
1699
1699
  return "left";
1700
1700
  }
1701
+ /** Snap a vector to a cardinal side (Y-down canvas). */
1702
+ function directionFromDelta(dx, dy) {
1703
+ if (Math.abs(dx) > Math.abs(dy)) return dx >= 0 ? "right" : "left";
1704
+ return dy >= 0 ? "bottom" : "top";
1705
+ }
1701
1706
  function isHorizontal(dir) {
1702
1707
  return dir === "left" || dir === "right";
1703
1708
  }
@@ -1978,6 +1983,7 @@ var ConnectionManager = class extends EventEmitter {
1978
1983
  this.startOutlineConnection(node, outlinePoint);
1979
1984
  return true;
1980
1985
  }
1986
+ if (this.attachToOutline) return false;
1981
1987
  const hover = this.getAnchorAtPoint(node, point);
1982
1988
  if (hover) {
1983
1989
  this.sourceNode = node;
@@ -2067,14 +2073,14 @@ var ConnectionManager = class extends EventEmitter {
2067
2073
  snappedPoint = bestResult.point;
2068
2074
  this.reconnectingOutlineParam = bestResult.param;
2069
2075
  this.reconnectingTargetNodeId = bestResult.node.id;
2070
- snappedDir = getDirectionFromOutlineParam(bestResult.param, bestResult.node.getBounds());
2076
+ snappedDir = bestResult.node.getOutlineDirection(bestResult.param);
2071
2077
  if (this.reconnectingEndpoint === "start" ? toNode : fromNode) {
2072
2078
  const alignRef = edge.isEditablePolyline() ? this.getNearestBendPointForAxisAlignment(edge, this.reconnectingEndpoint) : this.reconnectingEndpoint === "start" ? this.getTargetPointForReconnect(edge, toNode, "to", snappedPoint) : this.getTargetPointForReconnect(edge, fromNode, "from", snappedPoint);
2073
2079
  snappedPoint = this.applyAxisAlignmentToPoint(snappedPoint, alignRef);
2074
2080
  const reprojected = targetNode.getClosestPointOnOutline(snappedPoint);
2075
2081
  snappedPoint = reprojected.point;
2076
2082
  this.reconnectingOutlineParam = reprojected.param;
2077
- snappedDir = getDirectionFromOutlineParam(reprojected.param, targetNode.getBounds());
2083
+ snappedDir = targetNode.getOutlineDirection(reprojected.param);
2078
2084
  }
2079
2085
  } else {
2080
2086
  this.reconnectingOutlineParam = null;
@@ -2140,7 +2146,7 @@ var ConnectionManager = class extends EventEmitter {
2140
2146
  const ep = endpoint === "from" ? edge.from : edge.to;
2141
2147
  if (this.attachToOutline && ep.outlineParam !== void 0) {
2142
2148
  const node = ep.nodeId ? this.renderer.getNode(ep.nodeId) : void 0;
2143
- return getDirectionFromOutlineParam(ep.outlineParam, node?.getBounds());
2149
+ return node ? node.getOutlineDirection(ep.outlineParam) : getDirectionFromOutlineParam(ep.outlineParam);
2144
2150
  }
2145
2151
  return (ep.portId?.replace(ANCHOR_PORT_PREFIX, ""))?.split(":")[0];
2146
2152
  }
@@ -2457,8 +2463,8 @@ var ConnectionManager = class extends EventEmitter {
2457
2463
  ctx.stroke();
2458
2464
  } else {
2459
2465
  const previewTarget = this.previewTargetNodeId != null ? this.renderer.getNode(this.previewTargetNodeId) : void 0;
2460
- const fromDir = this.sourceOutlineParam !== null ? getDirectionFromOutlineParam(this.sourceOutlineParam, this.sourceNode?.getBounds()) : this.sourceAnchorId?.split(":")[0];
2461
- const toDir = this.previewTargetOutlineParam !== null ? getDirectionFromOutlineParam(this.previewTargetOutlineParam, previewTarget?.getBounds()) : this.previewTargetAnchorId?.split(":")[0];
2466
+ const fromDir = this.sourceOutlineParam !== null ? this.sourceNode ? this.sourceNode.getOutlineDirection(this.sourceOutlineParam) : getDirectionFromOutlineParam(this.sourceOutlineParam) : this.sourceAnchorId?.split(":")[0];
2467
+ const toDir = this.previewTargetOutlineParam !== null ? previewTarget ? previewTarget.getOutlineDirection(this.previewTargetOutlineParam) : getDirectionFromOutlineParam(this.previewTargetOutlineParam) : this.previewTargetAnchorId?.split(":")[0];
2462
2468
  this.drawBezierPreview(ctx, start, end, fromDir, toDir);
2463
2469
  }
2464
2470
  ctx.setLineDash([]);
@@ -2815,17 +2821,16 @@ var ConnectionManager = class extends EventEmitter {
2815
2821
  return 8 / Math.max(this.renderer.zoom, 1e-4);
2816
2822
  }
2817
2823
  outlineConnectHandleFor(node, pointer) {
2824
+ const { point: onOutline } = node.getClosestPointOnOutline(pointer);
2818
2825
  const prevSide = node.id === this.hoverNodeId ? this.hoverOutlineSide : null;
2819
- const geom = getOutlineConnectHandle(node.getBounds(), pointer, 0, prevSide, this.outlineHandleHysteresis());
2820
- const { point: onOutline } = node.getClosestPointOnOutline(geom.attach);
2821
2826
  return {
2822
2827
  attach: onOutline,
2823
2828
  handle: onOutline,
2824
- side: geom.side
2829
+ side: getOutlineConnectHandle(node.getBounds(), pointer, 0, prevSide, this.outlineHandleHysteresis()).side
2825
2830
  };
2826
2831
  }
2827
2832
  outlineHandleHitRadius() {
2828
- return 10 / Math.max(this.renderer.zoom, 1e-4);
2833
+ return 4 / Math.max(this.renderer.zoom, 1e-4);
2829
2834
  }
2830
2835
  findOutlineConnectHandleAt(point) {
2831
2836
  if (!this.attachToOutline) return null;
@@ -2834,6 +2839,7 @@ var ConnectionManager = class extends EventEmitter {
2834
2839
  for (let i = nodes.length - 1; i >= 0; i--) {
2835
2840
  const node = nodes[i];
2836
2841
  if (!node.visible || !this.isCompatibleTarget(node)) continue;
2842
+ if (node.hitTestResizeHandle(point)) continue;
2837
2843
  const { attach, handle } = this.outlineConnectHandleFor(node, point);
2838
2844
  const dx = point.x - handle.x;
2839
2845
  const dy = point.y - handle.y;
@@ -2846,7 +2852,7 @@ var ConnectionManager = class extends EventEmitter {
2846
2852
  return null;
2847
2853
  }
2848
2854
  renderOutlineConnectHandle(ctx) {
2849
- if (!this.hoverNodeId || !this.hoverPoint) return;
2855
+ if (!this.hoverOutlineHandle || !this.hoverNodeId || !this.hoverPoint) return;
2850
2856
  const node = this.renderer.getNode(this.hoverNodeId);
2851
2857
  if (!node) return;
2852
2858
  const { handle } = this.outlineConnectHandleFor(node, this.hoverPoint);
@@ -8740,7 +8746,7 @@ var EdgeEndpointUpdater = class {
8740
8746
  const fromPort = this.portSide(endpoint.portId);
8741
8747
  if (fromPort) return fromPort;
8742
8748
  if (endpoint.outlineParam === void 0) return void 0;
8743
- return getDirectionFromOutlineParam(endpoint.outlineParam, node.getBounds());
8749
+ return node.getOutlineDirection(endpoint.outlineParam);
8744
8750
  }
8745
8751
  nearestAnchorOnSide(node, side, toward) {
8746
8752
  const anchors = node.getAnchors().filter((a) => a.id.startsWith(`${side}:`));
@@ -8782,13 +8788,10 @@ var EdgeEndpointUpdater = class {
8782
8788
  direction: anchorId.split(":")[0]
8783
8789
  };
8784
8790
  }
8785
- if (isNodeEdgeEndpoint(endpoint) && endpoint.outlineParam !== void 0) {
8786
- const bounds = node.getBounds();
8787
- return {
8788
- point: node.getConnectionPointAtOutlineParam(endpoint.outlineParam),
8789
- direction: getDirectionFromOutlineParam(endpoint.outlineParam, bounds)
8790
- };
8791
- }
8791
+ if (isNodeEdgeEndpoint(endpoint) && endpoint.outlineParam !== void 0) return {
8792
+ point: node.getConnectionPointAtOutlineParam(endpoint.outlineParam),
8793
+ direction: node.getOutlineDirection(endpoint.outlineParam)
8794
+ };
8792
8795
  if (toward) return this.resolveFloatingEndpoint(node, toward);
8793
8796
  return { point: node.getCenter() };
8794
8797
  }
@@ -11258,6 +11261,21 @@ var Node = class extends Element {
11258
11261
  * Get point on outline at normalized param (0-1 along perimeter).
11259
11262
  * Base implementation uses rectangular outline. Override for non-rectangular shapes.
11260
11263
  */
11264
+ /**
11265
+ * Outward cardinal side at an outline param. Rectangles use AABB perimeter
11266
+ * fractions; non-rectangular shapes override from the real outline point.
11267
+ */
11268
+ getOutlineDirection(param) {
11269
+ return getDirectionFromOutlineParam(param, this.getBounds());
11270
+ }
11271
+ /**
11272
+ * Outward side from node center toward a point on the outline.
11273
+ */
11274
+ outlineDirectionFromCenter(param) {
11275
+ const point = this.getConnectionPointAtOutlineParam(param);
11276
+ const center = this.getCenter();
11277
+ return directionFromDelta(point.x - center.x, point.y - center.y);
11278
+ }
11261
11279
  getConnectionPointAtOutlineParam(param) {
11262
11280
  const { x, y, width: w, height: h } = this.getBounds();
11263
11281
  const perimeter = 2 * (w + h);
@@ -11781,6 +11799,9 @@ var CircleNode = class extends Node {
11781
11799
  const dy = point.y - center.y;
11782
11800
  return dx * dx / (rx * rx) + dy * dy / (ry * ry) <= 1;
11783
11801
  }
11802
+ getOutlineDirection(param) {
11803
+ return this.outlineDirectionFromCenter(param);
11804
+ }
11784
11805
  getConnectionPointAtOutlineParam(param) {
11785
11806
  const center = this.getCenter();
11786
11807
  const rx = this._width / 2;
@@ -11867,6 +11888,9 @@ var DiamondNode = class extends Node {
11867
11888
  const dy = Math.abs(point.y - center.y);
11868
11889
  return dx / hw + dy / hh <= 1;
11869
11890
  }
11891
+ getOutlineDirection(param) {
11892
+ return this.outlineDirectionFromCenter(param);
11893
+ }
11870
11894
  getConnectionPointAtOutlineParam(param) {
11871
11895
  const center = this.getCenter();
11872
11896
  const hw = this._width / 2;
@@ -12140,6 +12164,10 @@ var CustomShapeNode = class extends Node {
12140
12164
  y: p.y + this._y
12141
12165
  };
12142
12166
  }
12167
+ getOutlineDirection(param) {
12168
+ if (!this.getOutlineSample()) return super.getOutlineDirection(param);
12169
+ return this.outlineDirectionFromCenter(param);
12170
+ }
12143
12171
  getConnectionPointAtOutlineParam(param) {
12144
12172
  const sample = this.getOutlineSample();
12145
12173
  if (!sample) return super.getConnectionPointAtOutlineParam(param);