@stocksharp/diagram 1.2.0 → 1.2.2
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/esm/canvas-renderer.js +113 -38
- package/dist/esm/canvas-renderer.js.map +1 -1
- package/dist/esm/color.js +109 -0
- package/dist/esm/color.js.map +1 -0
- package/dist/esm/diagram/context-menu.js +1 -1
- package/dist/esm/diagram/context-menu.js.map +1 -1
- package/dist/esm/diagram/stocksharp-diagram.js +10 -0
- package/dist/esm/diagram/stocksharp-diagram.js.map +1 -1
- package/dist/esm/embed.js +1 -51
- package/dist/esm/embed.js.map +1 -1
- package/dist/ssdiagram-headless.js +145 -29
- package/dist/ssdiagram-headless.js.map +4 -4
- package/dist/ssdiagram.js +163 -67
- package/dist/ssdiagram.js.map +4 -4
- package/dist/types/canvas-renderer.d.ts +5 -0
- package/dist/types/canvas-renderer.d.ts.map +1 -1
- package/dist/types/color.d.ts +12 -0
- package/dist/types/color.d.ts.map +1 -0
- package/dist/types/diagram/stocksharp-diagram.d.ts +8 -0
- package/dist/types/diagram/stocksharp-diagram.d.ts.map +1 -1
- package/dist/types/embed.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/canvas-renderer.ts +111 -35
- package/src/color.ts +125 -0
- package/src/diagram/context-menu.ts +1 -1
- package/src/diagram/stocksharp-diagram.ts +11 -0
- package/src/embed.ts +1 -56
|
@@ -330,6 +330,7 @@ export declare class Diagram {
|
|
|
330
330
|
private hoverPort;
|
|
331
331
|
private hoverNode;
|
|
332
332
|
private hoveredLink;
|
|
333
|
+
private portFeed;
|
|
333
334
|
private tipTimer;
|
|
334
335
|
private tipShow;
|
|
335
336
|
private tipTarget;
|
|
@@ -348,6 +349,7 @@ export declare class Diagram {
|
|
|
348
349
|
private validator;
|
|
349
350
|
private handlers;
|
|
350
351
|
constructor(opts: DiagramOptions);
|
|
352
|
+
private observeHostSize;
|
|
351
353
|
on<K extends EvName>(ev: K, h: (p: DiagramEvents[K]) => void): () => void;
|
|
352
354
|
private emit;
|
|
353
355
|
setLinkValidator(fn: LinkValidator | null): void;
|
|
@@ -484,6 +486,8 @@ export declare class Diagram {
|
|
|
484
486
|
private relayout;
|
|
485
487
|
private toScreen;
|
|
486
488
|
private toWorld;
|
|
489
|
+
private feedTypes;
|
|
490
|
+
private portFillType;
|
|
487
491
|
private portColor;
|
|
488
492
|
private selectionColor;
|
|
489
493
|
private linkHoverColor;
|
|
@@ -518,6 +522,7 @@ export declare class Diagram {
|
|
|
518
522
|
}): string[];
|
|
519
523
|
private clearHover;
|
|
520
524
|
private cancelLongPress;
|
|
525
|
+
private commitNodeDrag;
|
|
521
526
|
private fireContextMenu;
|
|
522
527
|
private listen;
|
|
523
528
|
private bind;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas-renderer.d.ts","sourceRoot":"","sources":["../../src/canvas-renderer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"canvas-renderer.d.ts","sourceRoot":"","sources":["../../src/canvas-renderer.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAER,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,UAAU,EAEV,eAAe,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EACR,sBAAsB,EACtB,6BAA6B,EAC7B,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EACnB,MAAM,iBAAiB,CAAC;AAUzB,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,KAAK,CAAC;AACzC,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,YAAY,CAAC;AAEzD,MAAM,WAAW,QAAQ;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,0EAA0E;AAC1E,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;IACtB,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,sEAAsE;IACtE,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,QAAQ;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,QAAQ,CAAC,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,MAAM,mBAAmB,GAAG,eAAe,GAC3C,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,GAC1F;IAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAAC,QAAQ,EAAE,QAAQ,EAAE,CAAA;CAAE,CAAC;AAEpD,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAI7B,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,MAAM,GAAG,UAAU,GAAG,IAAI,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;CAC/H;AAED,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8FAA8F;IAC9F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC;;6CAEyC;IACzC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wGAAwG;IACxG,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;iCAE6B;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG,SAAS,CAAC;AAE5D,MAAM,WAAW,wBAAwB;IACrC,+FAA+F;IAC/F,KAAK,CAAC,EAAE,sBAAsB,CAAC;IAC/B,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mFAAmF;IACnF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wBAAwB;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wEAAwE;IACxE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,2DAA2D;IAC3D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,0DAA0D;IAC1D,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,SAAS,CAAC;CACrB;AACD,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,iBAAiB,KAAK,OAAO,CAAC;AAEjE,MAAM,MAAM,oBAAoB,GAC1B,SAAS,GACT,cAAc,GACd,cAAc,GACd,cAAc,GACd,WAAW,GACX,mBAAmB,GACnB,mBAAmB,GACnB,gBAAgB,GAChB,cAAc,GACd,cAAc,GACd,eAAe,CAAC;AAEtB,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,oBAAoB,CAAC;CAChC;AAED,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,MAAM,CAAC;AAE/C,MAAM,WAAW,gBAAgB;IAC7B,yEAAyE;IACzE,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IAC/B,WAAW,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IACjC,SAAS,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IAC/B,WAAW,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IACjC,YAAY,EAAE;QAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IAC5D,SAAS,EAAE;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IAClD,SAAS,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IAC/B,WAAW,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IACjC,YAAY,EAAE;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,QAAQ,EAAE,QAAQ,GAAG;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACvE,YAAY,EAAE;QAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IAC5D,SAAS,EAAE;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IAClD,cAAc,EAAE;QACZ,QAAQ,EAAE,SAAS,CAAC;QACpB,IAAI,EAAE,SAAS,CAAC;QAChB,MAAM,EAAE,SAAS,CAAC;QAClB,EAAE,EAAE,SAAS,CAAC;QACd,OAAO,EAAE,OAAO,CAAC;QACjB,MAAM,EAAE,oBAAoB,CAAC;KAChC,CAAC;IACF,YAAY,EAAE;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IACnD,WAAW,EAAE;QACT,IAAI,EAAE,SAAS,CAAC;QAChB,IAAI,EAAE,SAAS,CAAC;QAChB,MAAM,EAAE,eAAe,CAAC;QACxB,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,OAAO,CAAC;QAChB,OAAO,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,SAAS,EAAE;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,IAAI,EAAE,SAAS,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IACnE,QAAQ,EAAE;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;IAC9B,YAAY,EAAE;QAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QAAC,KAAK,EAAE,SAAS,EAAE,CAAA;KAAE,CAAC;IACzD,WAAW,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/B,WAAW,EAAE,gBAAgB,CAAC;IAI9B,WAAW,EAAE;QACT,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;QACvB,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;QACvB,IAAI,EAAE;YAAE,IAAI,EAAE,SAAS,CAAC;YAAC,IAAI,EAAE,SAAS,CAAA;SAAE,GAAG,IAAI,CAAC;KACrD,CAAC;IAGF,gBAAgB,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IACzD,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,mBAAmB,EAAE;QAAE,KAAK,EAAE,mBAAmB,CAAA;KAAE,CAAC;CACvD;AAqBD,KAAK,MAAM,GAAG,MAAM,aAAa,CAAC;AAkDlC,qBAAa,SAAS;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,aAAa,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,eAAe,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,UAAU,CAAC;IAErB,EAAE,SAAK;IACP,EAAE,SAAK;gBACK,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,aAAa;IAc9C,MAAM,IAAI,QAAQ;CAcrB;AAED,qBAAa,SAAS;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,sBAAsB,EAAE,CAAC;IACrC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,QAAQ,EAAE,UAAU,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,SAAM;IAClB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IACtC,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,QAAQ,EAAE,SAAS,EAAE,CAAC;IAEtB,CAAC,SAAO;IACR,CAAC,SAAM;gBACK,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM;IAqB7C,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAIvC,MAAM,CAAC,mBAAmB,GAAE,OAAc,GAAG,eAAe,GAAG;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE;CAwBhF;AAED,qBAAa,SAAS;IAKP,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,MAAM;IAChB,EAAE,EAAE,MAAM;IACV,MAAM,EAAE,MAAM;IAGd,KAAK,EAAE,gBAAgB;IAVlC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;gBAGnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,EACrB,EAAE,GAAE,MAAW,EACf,QAAQ,CAAC,EAAE,UAAU,EACd,KAAK,GAAE,gBAA0B;IAK5C,GAAG,IAAI,MAAM;IAEb,MAAM,IAAI,QAAQ,GAAG;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE;CAWtC;AAwDD,qBAAa,OAAO;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAc;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAG3C,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IAEtC,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,YAAY,CAAoD;IACxE,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,qBAAqB,CAAuB;IAGpD,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,IAAI,CAAK;IAEjB,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,GAAG,CAAK;IAChB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,QAAQ,CAAS;IAGzB,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,aAAa,CAAwB;IAC7C,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,YAAY,CAAqD;IACzE,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,SAAS,CAAqD;IACtE,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,gBAAgB,CAAQ;IAChC,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,MAAM,CAAiE;IAC/E,OAAO,CAAC,IAAI,CAAgC;IAC5C,OAAO,CAAC,OAAO,CAAqD;IACpE,OAAO,CAAC,SAAS,CAAwD;IACzE,OAAO,CAAC,eAAe,CAKP;IAChB,OAAO,CAAC,QAAQ,CAAqD;IACrE,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,SAAS,CAAqD;IACtE,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,WAAW,CAA0B;IAE7C,OAAO,CAAC,QAAQ,CAA6C;IAC7D,OAAO,CAAC,QAAQ,CAA8C;IAC9D,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAAsC;IAEvD,OAAO,CAAC,OAAO,CAA8C;IAC7D,OAAO,CAAC,OAAO,CAAmE;IAClF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAO;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAK;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAyB;IACxD,OAAO,CAAC,SAAS,CAAS;IAG1B,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,eAAe,CACyD;IAChF,OAAO,CAAC,KAAK,CAAsG;IAEnH,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,QAAQ,CAA8C;gBAElD,IAAI,EAAE,cAAc;IAwChC,OAAO,CAAC,eAAe;IASvB,EAAE,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAMzE,OAAO,CAAC,IAAI;IAOZ,gBAAgB,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI;IAChD,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;IAMlD,WAAW,IAAI;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;IAIjD,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,UAAU;IAOlB,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM;IAa7C,OAAO,CAAC,SAAS;IASjB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAwCnC,OAAO,CAAC,YAAY;IAyBpB,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAahD,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO;IAkB/C,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO;IAiChC,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,SAAS;IAmBjB,UAAU,CAAC,IAAI,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAGnG,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,oBAAoB;IAgB5B,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,IAAI,OAAO;IAClB,OAAO,IAAI,OAAO;IAClB,IAAI,IAAI,IAAI;IACZ,IAAI,IAAI,IAAI;IACZ,YAAY,IAAI,IAAI;IASpB,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAGjD,OAAO,CAAC,MAAM;IAOd,eAAe,IAAI,IAAI;IAYvB,KAAK,IAAI,IAAI;IAmBb,MAAM,CACF,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,GAAG,QAAQ,CAAC,GAC5D,oBAAoB;IAkDvB,OAAO,CAAC,QAAQ;IAYhB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO;IAW1E,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAmB7E,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAI/F,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO;IAsChG,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,QAAQ,EAAE,EAAE,QAAQ,EAAE,SAAS,QAAQ,EAAE,GAAG,OAAO;IAsBlG,UAAU,CACN,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,YAAY,CAAC,CAAC,GAC9G,OAAO;IAWV,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO;IAOnF,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAKxC,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,iBAAiB;IA2BzB,OAAO,CAAC,qBAAqB;IAS7B,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI;IAkDvD,IAAI,IAAI,eAAe;IAevB,YAAY,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI;IAkBpD,YAAY,IAAI,eAAe;IAc/B,cAAc,IAAI,MAAM,GAAG,IAAI;IAC/B,YAAY,IAAI,gBAAgB;IAahC,eAAe,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;IAI7C,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAGvC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAO9E,YAAY,IAAI,gBAAgB;IAQhC;;;OAGG;IACH,yBAAyB,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI;IAIvF,YAAY,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI;IAY3C,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAC3C,aAAa,IAAI,IAAI;IACrB;;;;OAIG;IACH,cAAc,CAAC,OAAO,GAAE,wBAA6B,GAAG,iBAAiB;IAoFzE,OAAO,CAAC,YAAY;IAyBpB;;;;;;;;;OASG;IACH,OAAO,CAAC,OAAO,GAAE,wBAA6B,GAAG,MAAM;IAwEvD,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,2BAA2B;IAMnC,eAAe,IAAI,mBAAmB;IAGtC,eAAe,CAAC,KAAK,EAAE,mBAAmB,GAAG,IAAI;IA8BjD,iBAAiB,IAAI,IAAI;IAGzB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO;IAO7C,mBAAmB,CACf,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,CAAC,uBAAuB,CAAC,GACxC,OAAO;IAgBV,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,GAAE,sBAAkC,GAAG,IAAI;IAOtF,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO;IAwBlF,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO;IAkBzD,OAAO,CAAC,uBAAuB;IAI/B,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IACrD,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IACrD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAKvC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAc5B,SAAS,IAAI,IAAI;IAcjB,SAAS,IAAI,IAAI;IACjB,kBAAkB,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI;IAMpC,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI;IAK7D;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAO7B,QAAQ,CAAC,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;KACjC,GAAG,IAAI;IAWR,OAAO,CAAC,WAAW;IASnB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAWlC,yBAAyB,IAAI,6BAA6B;IAG1D,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC,6BAA6B,CAAC,GAAG,IAAI;IAY9E,mEAAmE;IACnE,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAOjC,OAAO,IAAI,IAAI;IAef,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,QAAQ;IAEhB,OAAO,CAAC,QAAQ;IAGhB,OAAO,CAAC,OAAO;IAKf,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,MAAM;IAcd,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,MAAM;IASd,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,SAAS;IAGjB,OAAO,CAAC,MAAM;IAed,OAAO,CAAC,QAAQ;IAWhB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,GAAG,QAAQ,CAAC,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,oBAAoB;IAUvH,OAAO,CAAC,kBAAkB;IAmC1B,OAAO,CAAC,uBAAuB;IAK/B,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,QAAQ;IA0ChB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,oBAAoB;IAI5B,aAAa,IAAI,IAAI;IAGrB,qBAAqB,IAAI,eAAe,GAAG,IAAI;IAW/C,YAAY,IAAI,OAAO;IAGvB,oBAAoB,IAAI,eAAe,GAAG,IAAI;IAG9C,oBAAoB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI;IAG5D,cAAc,IAAI,MAAM,EAAE;IAI1B,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,EAAE;IA4C5F,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,cAAc;IA8BtB,OAAO,CAAC,eAAe;IAgCvB,OAAO,CAAC,MAAM;IAsBd,OAAO,CAAC,IAAI;IA4bZ,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,IAAI;IA8EZ;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAyCvB,OAAO,CAAC,WAAW;IAuDnB,OAAO,CAAC,WAAW;IAenB,OAAO,CAAC,SAAS;IAkCjB,OAAO,CAAC,QAAQ;IAchB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,QAAQ;IAsDhB,OAAO,CAAC,QAAQ;IA6ChB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,WAAW;IA4DnB,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,yBAAyB;IAoBjC,OAAO,CAAC,eAAe;IAyDvB,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,YAAY;IAiDpB,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,eAAe;CAI1B;AAqQD,eAAO,MAAM,OAAO,UAAU,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Perceived brightness of a CSS colour, or -1 when it cannot be read.
|
|
3
|
+
*
|
|
4
|
+
* Six-digit hex was the only form understood, and everything else answered 0 -- black. A page
|
|
5
|
+
* writing --diagram-bg as #fff, white or rgb(255 255 255) therefore had its white canvas
|
|
6
|
+
* classified as dark and got the dark link palette: near-white wires on a near-white background.
|
|
7
|
+
* Unreadable is now -1 rather than 0, so the caller can keep its own default instead of being
|
|
8
|
+
* told the page is black.
|
|
9
|
+
*/
|
|
10
|
+
export declare function luminance(color: string): number;
|
|
11
|
+
export declare function readableTextOn(fill: string): string;
|
|
12
|
+
//# sourceMappingURL=color.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../src/color.ts"],"names":[],"mappings":"AA2DA;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAO/C;AAwCD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CASnD"}
|
|
@@ -156,6 +156,14 @@ export declare class StockSharpDiagram extends EventEmitter<DiagramEvents> {
|
|
|
156
156
|
*/
|
|
157
157
|
setContextMenuEnabled(enabled: boolean): void;
|
|
158
158
|
isContextMenuEnabled(): boolean;
|
|
159
|
+
/**
|
|
160
|
+
* Whether the built-in menu is on screen right now.
|
|
161
|
+
*
|
|
162
|
+
* The menu closes itself on Escape. A host that binds the same key - to leave a fullscreen
|
|
163
|
+
* layout, to close its own dialog - needs to know the key was already spoken for, or one
|
|
164
|
+
* press does both.
|
|
165
|
+
*/
|
|
166
|
+
isContextMenuOpen(): boolean;
|
|
159
167
|
getContextCommands(): ContextMenuItemState[];
|
|
160
168
|
executeContextCommand(command: ContextCommand): boolean;
|
|
161
169
|
clear(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stocksharp-diagram.d.ts","sourceRoot":"","sources":["../../../src/diagram/stocksharp-diagram.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stocksharp-diagram.d.ts","sourceRoot":"","sources":["../../../src/diagram/stocksharp-diagram.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../src/embed.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../src/embed.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,KAAK,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AA4B3F,MAAM,WAAW,sBAAsB;IAAG,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;CAAE;AAC3G,MAAM,WAAW,sBAAsB;IAAG,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;CAAE;AACvG,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,KAAK,EAAE,sBAAsB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,OAAO,IAAI,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IACnC,qBAAqB,CAAC,EAAE,CACvB,OAAO,EAAE,0BAA0B,EACnC,MAAM,EAAE,kBAAkB,KACtB,IAAI,CAAC;IACV;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CACnB,OAAO,EAAE,sBAAsB,EAC/B,MAAM,EAAE,kBAAkB,KACtB,IAAI,CAAC;IACV,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;CACnD;AAyOD,wBAAsB,YAAY,CACjC,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,kBAAkB,EAC1B,OAAO,GAAE,mBAAwB,GAC/B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAEpC;AAyKD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAGhE;AA8DD,wBAAsB,gBAAgB,CACrC,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,mBAAwB,GAC/B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CA2BpC;AAKD,wBAAsB,gBAAgB,CACrC,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,mBAAwB,GAC/B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAwBpC;AAKD,wBAAgB,SAAS,CAAC,IAAI,GAAE,UAAqB,EAAE,OAAO,GAAE,mBAAwB,GAAG,IAAI,CA6B9F"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stocksharp/diagram",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.2",
|
|
4
4
|
"description": "Browser strategy-diagram editor for StockSharp with typed ports, palette, canvas rendering, persistence, and a TypeScript API.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"author": {
|
package/src/canvas-renderer.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { DrawSurface } from './draw-surface.js';
|
|
2
2
|
import { SvgSurface } from './svg-surface.js';
|
|
3
|
+
import { readableTextOn } from './color.js';
|
|
3
4
|
// Internal dependency-free canvas renderer used by StockSharpDiagram.
|
|
4
5
|
//
|
|
5
6
|
// Dependency-free, pure 2D canvas. Demonstrates the hard parts: typed
|
|
@@ -296,6 +297,13 @@ function isWildcardPortType(type: string): boolean {
|
|
|
296
297
|
|| normalized.startsWith('system.object,');
|
|
297
298
|
}
|
|
298
299
|
|
|
300
|
+
// The empty socket a grow-on-connect input spawns its siblings from. The scheme records it
|
|
301
|
+
// first, but it accepts nothing until something is wired into it, so it belongs under the
|
|
302
|
+
// sockets that do carry data.
|
|
303
|
+
function isGrowAnchor(port: PortModel): boolean {
|
|
304
|
+
return port.isDynamic && !port.isSibling;
|
|
305
|
+
}
|
|
306
|
+
|
|
299
307
|
function arePortTypesCompatible(fromType: string, toType: string, availableTypes: readonly string[]): boolean {
|
|
300
308
|
if (isWildcardPortType(fromType) || isWildcardPortType(toType)) return true;
|
|
301
309
|
const normalizedFrom = normalizePortType(fromType);
|
|
@@ -568,6 +576,8 @@ export class Diagram {
|
|
|
568
576
|
private hoverPort: { node: NodeModel; port: PortModel } | null = null;
|
|
569
577
|
private hoverNode: NodeModel | null = null;
|
|
570
578
|
private hoveredLink: LinkModel | null = null;
|
|
579
|
+
// Type feeding each wired input, keyed by node and port, rebuilt for every frame.
|
|
580
|
+
private portFeed: ReadonlyMap<PortModel, string> = new Map();
|
|
571
581
|
private tipTimer: ReturnType<typeof setTimeout> | null = null;
|
|
572
582
|
private tipShow = false;
|
|
573
583
|
private tipTarget: PortModel | NodeModel | null = null;
|
|
@@ -622,9 +632,23 @@ export class Diagram {
|
|
|
622
632
|
if (ctx === null) throw new Error('ssdiagram: 2d context unavailable');
|
|
623
633
|
this.ctx = ctx;
|
|
624
634
|
this.resize(this.host.clientWidth || 800, this.host.clientHeight || 480);
|
|
635
|
+
this.observeHostSize();
|
|
625
636
|
this.bind();
|
|
626
637
|
}
|
|
627
638
|
|
|
639
|
+
/// The control creates the canvas, so it keeps it the size of the element it was mounted in.
|
|
640
|
+
/// A host that lays its panels out after construction - a docking shell, a tab that opens
|
|
641
|
+
/// hidden - measures nothing at that point, and the fallback size above would then outlive
|
|
642
|
+
/// the layout: a strip of the panel that draws nothing and answers no clicks. resize()
|
|
643
|
+
/// ignores anything smaller than two pixels, so a panel switched away from keeps its view.
|
|
644
|
+
private observeHostSize(): void {
|
|
645
|
+
if (typeof ResizeObserver === 'undefined') return;
|
|
646
|
+
|
|
647
|
+
const observer = new ResizeObserver(() => this.resize(this.host.clientWidth, this.host.clientHeight));
|
|
648
|
+
observer.observe(this.host);
|
|
649
|
+
this.domDisposables.push(() => observer.disconnect());
|
|
650
|
+
}
|
|
651
|
+
|
|
628
652
|
// ---- events -----------------------------------------------------
|
|
629
653
|
on<K extends EvName>(ev: K, h: (p: DiagramEvents[K]) => void): () => void {
|
|
630
654
|
let set = this.handlers.get(ev);
|
|
@@ -1848,8 +1872,11 @@ export class Diagram {
|
|
|
1848
1872
|
// node border).
|
|
1849
1873
|
const off = PORT_SQ / 2;
|
|
1850
1874
|
const place = (ports: PortModel[], x: number): void => {
|
|
1851
|
-
const
|
|
1852
|
-
|
|
1875
|
+
const stack = ports.some(isGrowAnchor)
|
|
1876
|
+
? [...ports.filter((p) => !isGrowAnchor(p)), ...ports.filter(isGrowAnchor)]
|
|
1877
|
+
: ports;
|
|
1878
|
+
const startY = n.y + (n.h - stack.length * PORT_ROW_H) / 2 + PORT_ROW_H / 2;
|
|
1879
|
+
stack.forEach((p, i) => { p.cx = x; p.cy = startY + i * PORT_ROW_H; });
|
|
1853
1880
|
};
|
|
1854
1881
|
place(n.inPorts, n.x - off);
|
|
1855
1882
|
place(n.outPorts, n.x + n.w + off);
|
|
@@ -1862,6 +1889,28 @@ export class Diagram {
|
|
|
1862
1889
|
private toWorld(sx: number, sy: number): [number, number] {
|
|
1863
1890
|
return [(sx - this.offX) / this.scale, (sy - this.offY) / this.scale];
|
|
1864
1891
|
}
|
|
1892
|
+
/// Type of the output wired into each connected input. First link wins, which is the one
|
|
1893
|
+
/// drawn first, so a socket accepting several links agrees with the wire on top.
|
|
1894
|
+
private feedTypes(): Map<PortModel, string> {
|
|
1895
|
+
const feed = new Map<PortModel, string>();
|
|
1896
|
+
for (const l of this.links) {
|
|
1897
|
+
const from = this.findNode(l.from)?.outPorts.find((p) => p.id === l.fromPort);
|
|
1898
|
+
if (from === undefined || isWildcardPortType(from.type)) continue;
|
|
1899
|
+
const to = this.findNode(l.to)?.inPorts.find((p) => p.id === l.toPort);
|
|
1900
|
+
if (to === undefined || feed.has(to)) continue;
|
|
1901
|
+
feed.set(to, from.type);
|
|
1902
|
+
}
|
|
1903
|
+
return feed;
|
|
1904
|
+
}
|
|
1905
|
+
|
|
1906
|
+
/// Colour type of a socket: its own, unless it is a wildcard input with something wired in.
|
|
1907
|
+
/// A wildcard promises to take whatever arrives, so once something has arrived the socket
|
|
1908
|
+
/// shows what that is. An untyped socket ('') promises nothing and keeps its neutral fill.
|
|
1909
|
+
private portFillType(p: PortModel): string {
|
|
1910
|
+
if (p.direction !== 'in' || p.type === '' || !isWildcardPortType(p.type)) return p.type;
|
|
1911
|
+
return this.portFeed.get(p) ?? p.type;
|
|
1912
|
+
}
|
|
1913
|
+
|
|
1865
1914
|
private portColor(type: string): string {
|
|
1866
1915
|
const maxL = this.opts.linkMaxLightness;
|
|
1867
1916
|
const light = maxL !== undefined && maxL < 0.5;
|
|
@@ -2207,10 +2256,42 @@ export class Diagram {
|
|
|
2207
2256
|
if (this.lpTimer !== null) { clearTimeout(this.lpTimer); this.lpTimer = null; }
|
|
2208
2257
|
this.lpStart = null;
|
|
2209
2258
|
}
|
|
2210
|
-
|
|
2211
|
-
|
|
2212
|
-
|
|
2259
|
+
/// Ends a node drag the way releasing the pointer does: the whole multi-node move becomes
|
|
2260
|
+
/// one undo step, and every node that actually moved is announced. Nodes are moved in place
|
|
2261
|
+
/// as the pointer travels, so a caller that clears the drag without coming through here
|
|
2262
|
+
/// leaves them where the drag put them with nothing in the history and the host unaware.
|
|
2263
|
+
private commitNodeDrag(): void {
|
|
2264
|
+
if (this.dragNode === null) return;
|
|
2265
|
+
|
|
2266
|
+
// Capture before/after positions so the whole multi-node
|
|
2267
|
+
// drag is ONE undo step. Skip the action if nothing
|
|
2268
|
+
// actually moved (a "click" that bypassed the threshold).
|
|
2269
|
+
const moves = this.dragStart
|
|
2270
|
+
.map((it) => ({ id: it.n.id, fromX: it.x, fromY: it.y, toX: it.n.x, toY: it.n.y }))
|
|
2271
|
+
.filter((m) => m.fromX !== m.toX || m.fromY !== m.toY);
|
|
2272
|
+
// Announce the same set the undo step records. Emitting for every node the drag
|
|
2273
|
+
// touched reported a move for a plain selection click -- one per selected node --
|
|
2274
|
+
// and a host doing dirty tracking marked the strategy modified for nothing.
|
|
2275
|
+
const moved = new Set(moves.map((m) => m.id));
|
|
2276
|
+
for (const it of this.dragStart) {
|
|
2277
|
+
if (moved.has(it.n.id)) this.emit('nodeMoved', { node: it.n });
|
|
2278
|
+
}
|
|
2279
|
+
this.dragNode = null;
|
|
2280
|
+
this.dragStart = [];
|
|
2281
|
+
if (moves.length > 0) {
|
|
2282
|
+
this.record({
|
|
2283
|
+
do: () => { for (const m of moves) this.doMoveNode(m.id, m.toX, m.toY); },
|
|
2284
|
+
undo: () => { for (const m of moves) this.doMoveNode(m.id, m.fromX, m.fromY); },
|
|
2285
|
+
label: 'drag',
|
|
2286
|
+
});
|
|
2287
|
+
}
|
|
2288
|
+
}
|
|
2289
|
+
|
|
2290
|
+
// Hit-test at screen coords and emit a contextMenu event. Ends whatever gesture was in
|
|
2291
|
+
// flight — once the menu opens we don't want a half-drag racing it — and a node drag ends
|
|
2292
|
+
// properly rather than being dropped, because its nodes have already moved.
|
|
2213
2293
|
private fireContextMenu(sx: number, sy: number, pageX: number, pageY: number): void {
|
|
2294
|
+
this.commitNodeDrag();
|
|
2214
2295
|
const [wx, wy] = this.toWorld(sx, sy);
|
|
2215
2296
|
const port = this.portAt(wx, wy);
|
|
2216
2297
|
const node = port?.node ?? this.nodeAt(wx, wy);
|
|
@@ -2227,7 +2308,13 @@ export class Diagram {
|
|
|
2227
2308
|
else if (link !== null && this.selectedLink !== link) this.selectLink(link);
|
|
2228
2309
|
}
|
|
2229
2310
|
this.dragNode = null; this.dragStart = []; this.rubber = null;
|
|
2230
|
-
this.
|
|
2311
|
+
this.linking = null; this.relinking = null; this.relinkCandidate = null; this.linkSnap = null;
|
|
2312
|
+
// A pan ends here too, and it ends settled: a host that persists the viewport on the
|
|
2313
|
+
// settled event would otherwise keep the position the pan started from.
|
|
2314
|
+
const viewportMoved = this.panning || this.ovDragging;
|
|
2315
|
+
this.panning = false;
|
|
2316
|
+
this.ovDragging = false;
|
|
2317
|
+
if (viewportMoved) this.emitViewChanged(false);
|
|
2231
2318
|
// A menu is about to cover this spot, and it opens under a cursor that has not moved --
|
|
2232
2319
|
// which fires no boundary event, so nothing else would end the hover. Without this the
|
|
2233
2320
|
// tooltip armed by the last pointermove appears 400ms later, through the open menu.
|
|
@@ -2509,30 +2596,7 @@ export class Diagram {
|
|
|
2509
2596
|
const finish = (e: MouseEvent | PointerEvent): void => {
|
|
2510
2597
|
this.cancelLongPress();
|
|
2511
2598
|
this.relinkCandidate = null;
|
|
2512
|
-
|
|
2513
|
-
// Capture before/after positions so the whole multi-node
|
|
2514
|
-
// drag is ONE undo step. Skip the action if nothing
|
|
2515
|
-
// actually moved (a "click" that bypassed the threshold).
|
|
2516
|
-
const moves = this.dragStart
|
|
2517
|
-
.map((it) => ({ id: it.n.id, fromX: it.x, fromY: it.y, toX: it.n.x, toY: it.n.y }))
|
|
2518
|
-
.filter((m) => m.fromX !== m.toX || m.fromY !== m.toY);
|
|
2519
|
-
// Announce the same set the undo step records. Emitting for every node the drag
|
|
2520
|
-
// touched reported a move for a plain selection click -- one per selected node --
|
|
2521
|
-
// and a host doing dirty tracking marked the strategy modified for nothing.
|
|
2522
|
-
const moved = new Set(moves.map((m) => m.id));
|
|
2523
|
-
for (const it of this.dragStart) {
|
|
2524
|
-
if (moved.has(it.n.id)) this.emit('nodeMoved', { node: it.n });
|
|
2525
|
-
}
|
|
2526
|
-
this.dragNode = null;
|
|
2527
|
-
this.dragStart = [];
|
|
2528
|
-
if (moves.length > 0) {
|
|
2529
|
-
this.record({
|
|
2530
|
-
do: () => { for (const m of moves) this.doMoveNode(m.id, m.toX, m.toY); },
|
|
2531
|
-
undo: () => { for (const m of moves) this.doMoveNode(m.id, m.fromX, m.fromY); },
|
|
2532
|
-
label: 'drag',
|
|
2533
|
-
});
|
|
2534
|
-
}
|
|
2535
|
-
}
|
|
2599
|
+
this.commitNodeDrag();
|
|
2536
2600
|
if (this.rubber !== null) {
|
|
2537
2601
|
const rx0 = Math.min(this.rubber.x0, this.rubber.x);
|
|
2538
2602
|
const ry0 = Math.min(this.rubber.y0, this.rubber.y);
|
|
@@ -2625,12 +2689,19 @@ export class Diagram {
|
|
|
2625
2689
|
this.zoomToFit();
|
|
2626
2690
|
});
|
|
2627
2691
|
// Desktop right-click → same contextMenu event as touch long-press.
|
|
2628
|
-
|
|
2692
|
+
const openContextMenu = (e: MouseEvent): void => {
|
|
2629
2693
|
e.preventDefault();
|
|
2630
2694
|
if (!this.permissions.inspect) return;
|
|
2631
2695
|
const [sx, sy] = localXY(e);
|
|
2632
2696
|
this.cancelLongPress();
|
|
2633
2697
|
this.fireContextMenu(sx, sy, e.clientX, e.clientY);
|
|
2698
|
+
};
|
|
2699
|
+
this.listen(this.canvas, 'contextmenu', openContextMenu);
|
|
2700
|
+
// The control is more than its canvas: its own buttons sit over the corners, and a
|
|
2701
|
+
// right-click on one of those stops at the button, so the browser drew its own menu
|
|
2702
|
+
// there. The canvas keeps its own handler, and this one skips what that already took.
|
|
2703
|
+
this.listen(this.host, 'contextmenu', (e) => {
|
|
2704
|
+
if (e.target !== this.canvas) openContextMenu(e);
|
|
2634
2705
|
});
|
|
2635
2706
|
// Two-finger pinch → uniform zoom around the initial midpoint
|
|
2636
2707
|
// between the fingers. Mobile analog of mouse wheel.
|
|
@@ -2780,6 +2851,7 @@ export class Diagram {
|
|
|
2780
2851
|
}
|
|
2781
2852
|
}
|
|
2782
2853
|
if (options.transient && (this.linking !== null || this.relinking !== null)) this.drawPendingLink();
|
|
2854
|
+
this.portFeed = this.feedTypes();
|
|
2783
2855
|
for (const n of this.nodes) this.drawNode(n, options.selection && this.selectedNodes.has(n), options);
|
|
2784
2856
|
if (options.selection && this.permissions.createLinks && this.relinking === null)
|
|
2785
2857
|
this.drawSelectedLinkEndpoints();
|
|
@@ -3016,10 +3088,14 @@ export class Diagram {
|
|
|
3016
3088
|
const img = this.getIcon(n.icon);
|
|
3017
3089
|
if (img) { try { ctx.drawImage(img, n.x + 8, n.y + (n.h - iconW) / 2, iconW, iconW); } catch { /* undecodable */ } }
|
|
3018
3090
|
}
|
|
3019
|
-
// Bold title centred on the
|
|
3020
|
-
//
|
|
3091
|
+
// Bold title centred on the body (nudged right when an icon shows so they
|
|
3092
|
+
// don't overlap); ports are bare colour squares on the edges. The title
|
|
3093
|
+
// takes its colour from the fill it sits on: that fill comes from the
|
|
3094
|
+
// scheme, so a node may well be darker than the title used to assume.
|
|
3021
3095
|
const titleShift = n.icon ? iconW + 4 : 0;
|
|
3022
|
-
ctx.fillStyle = hasLoadError
|
|
3096
|
+
ctx.fillStyle = hasLoadError
|
|
3097
|
+
? '#ffffff'
|
|
3098
|
+
: readableTextOn(active ? '#ffd1dc' : n.color);
|
|
3023
3099
|
ctx.font = '600 12px Segoe UI, Tahoma, sans-serif';
|
|
3024
3100
|
ctx.textAlign = 'center';
|
|
3025
3101
|
ctx.textBaseline = 'middle';
|
|
@@ -3044,7 +3120,7 @@ export class Diagram {
|
|
|
3044
3120
|
// Single rounded path filled + stroked (aligned, anti-aliased —
|
|
3045
3121
|
// no half-pixel double edge).
|
|
3046
3122
|
roundRect(ctx, x, y, s, s, r);
|
|
3047
|
-
ctx.fillStyle = this.portColor(p
|
|
3123
|
+
ctx.fillStyle = this.portColor(this.portFillType(p));
|
|
3048
3124
|
ctx.fill();
|
|
3049
3125
|
ctx.lineWidth = magnet ? 1.5 : 1;
|
|
3050
3126
|
ctx.strokeStyle = magnet ? '#ffffff' : 'rgba(12,12,16,0.55)';
|
package/src/color.ts
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
// Colour arithmetic shared by the parts that have to stay readable against a
|
|
2
|
+
// fill they do not choose: the embed host reading a page's background, and the
|
|
3
|
+
// renderer drawing a title on a node whose colour comes from the scheme.
|
|
4
|
+
|
|
5
|
+
const CSS_COLOR_KEYWORDS: Readonly<Record<string, [number, number, number]>> = {
|
|
6
|
+
white: [255, 255, 255],
|
|
7
|
+
black: [0, 0, 0],
|
|
8
|
+
transparent: [255, 255, 255],
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Channels of a CSS colour, or null when it cannot be read.
|
|
13
|
+
*
|
|
14
|
+
* Understands the keywords above, three-, six- and eight-digit hex (the alpha is
|
|
15
|
+
* ignored), and rgb()/rgba() in both the comma and the space syntax.
|
|
16
|
+
*/
|
|
17
|
+
function parseRgb(color: string): [number, number, number] | null {
|
|
18
|
+
const value = color.trim().toLowerCase();
|
|
19
|
+
if (value === '')
|
|
20
|
+
return null;
|
|
21
|
+
|
|
22
|
+
const keyword = CSS_COLOR_KEYWORDS[value];
|
|
23
|
+
if (keyword !== undefined)
|
|
24
|
+
return [...keyword];
|
|
25
|
+
|
|
26
|
+
const long = value.match(/^#?([0-9a-f]{6})$/);
|
|
27
|
+
if (long !== null) {
|
|
28
|
+
const n = parseInt(long[1], 16);
|
|
29
|
+
return [(n >> 16) & 255, (n >> 8) & 255, n & 255];
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// #abc is shorthand for #aabbcc, and the eight-digit forms carry an alpha we ignore.
|
|
33
|
+
const short = value.match(/^#?([0-9a-f]{3})([0-9a-f])?$/);
|
|
34
|
+
if (short !== null) {
|
|
35
|
+
const [r, g, b] = [...short[1]].map((digit) => parseInt(digit + digit, 16));
|
|
36
|
+
return [r, g, b];
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
const long8 = value.match(/^#?([0-9a-f]{6})[0-9a-f]{2}$/);
|
|
40
|
+
if (long8 !== null) {
|
|
41
|
+
const n = parseInt(long8[1], 16);
|
|
42
|
+
return [(n >> 16) & 255, (n >> 8) & 255, n & 255];
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
const rgb = value.match(/^rgba?\(([^)]+)\)$/);
|
|
46
|
+
if (rgb !== null) {
|
|
47
|
+
const parts = rgb[1].split(/[\s,/]+/).filter((part) => part !== '');
|
|
48
|
+
if (parts.length >= 3) {
|
|
49
|
+
const [r, g, b] = parts.slice(0, 3).map((part) => part.endsWith('%')
|
|
50
|
+
? (parseFloat(part) / 100) * 255
|
|
51
|
+
: parseFloat(part));
|
|
52
|
+
if ([r, g, b].every((channel) => Number.isFinite(channel)))
|
|
53
|
+
return [r, g, b];
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Perceived brightness of a CSS colour, or -1 when it cannot be read.
|
|
62
|
+
*
|
|
63
|
+
* Six-digit hex was the only form understood, and everything else answered 0 -- black. A page
|
|
64
|
+
* writing --diagram-bg as #fff, white or rgb(255 255 255) therefore had its white canvas
|
|
65
|
+
* classified as dark and got the dark link palette: near-white wires on a near-white background.
|
|
66
|
+
* Unreadable is now -1 rather than 0, so the caller can keep its own default instead of being
|
|
67
|
+
* told the page is black.
|
|
68
|
+
*/
|
|
69
|
+
export function luminance(color: string): number {
|
|
70
|
+
const rgb = parseRgb(color);
|
|
71
|
+
if (rgb === null)
|
|
72
|
+
return -1;
|
|
73
|
+
|
|
74
|
+
const [r, g, b] = rgb;
|
|
75
|
+
return 0.299 * r + 0.587 * g + 0.114 * b;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
const DARK_TEXT = '#1b1b1b';
|
|
79
|
+
const LIGHT_TEXT = '#f5f5f5';
|
|
80
|
+
|
|
81
|
+
/// One channel on the scale contrast is measured on, where equal steps look
|
|
82
|
+
/// equally different rather than merely being equal numbers.
|
|
83
|
+
function toLinear(channel: number): number {
|
|
84
|
+
const v = channel / 255;
|
|
85
|
+
return v <= 0.03928 ? v / 12.92 : Math.pow((v + 0.055) / 1.055, 2.4);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/// Relative luminance as WCAG defines it, or -1 for a colour that cannot be read.
|
|
89
|
+
function relativeLuminance(color: string): number {
|
|
90
|
+
const rgb = parseRgb(color);
|
|
91
|
+
if (rgb === null)
|
|
92
|
+
return -1;
|
|
93
|
+
|
|
94
|
+
const [r, g, b] = rgb;
|
|
95
|
+
return 0.2126 * toLinear(r) + 0.7152 * toLinear(g) + 0.0722 * toLinear(b);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/// WCAG contrast ratio between two relative luminances: 1 for identical, 21 for
|
|
99
|
+
/// black against white.
|
|
100
|
+
function contrast(a: number, b: number): number {
|
|
101
|
+
const [lighter, darker] = a > b ? [a, b] : [b, a];
|
|
102
|
+
return (lighter + 0.05) / (darker + 0.05);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/// Title colour for a body filled with `fill`.
|
|
106
|
+
///
|
|
107
|
+
/// A node's fill comes from the scheme rather than the theme, so it can be any
|
|
108
|
+
/// colour, and a title fixed to one shade disappears as soon as a node is filled
|
|
109
|
+
/// close to it. Rather than split the range at a brightness someone has to pick,
|
|
110
|
+
/// this measures both candidates against the fill and takes whichever stands out
|
|
111
|
+
/// more. That is also why a saturated orange keeps its dark title where a plain
|
|
112
|
+
/// brightness test, which reads such a colour as darker than it looks, flips it.
|
|
113
|
+
///
|
|
114
|
+
/// A fill this cannot read keeps the dark title: every node shipped so far is
|
|
115
|
+
/// light, so guessing light text would fail on more of them than it fixes.
|
|
116
|
+
export function readableTextOn(fill: string): string {
|
|
117
|
+
const background = relativeLuminance(fill);
|
|
118
|
+
if (background < 0)
|
|
119
|
+
return DARK_TEXT;
|
|
120
|
+
|
|
121
|
+
return contrast(background, relativeLuminance(LIGHT_TEXT))
|
|
122
|
+
> contrast(background, relativeLuminance(DARK_TEXT))
|
|
123
|
+
? LIGHT_TEXT
|
|
124
|
+
: DARK_TEXT;
|
|
125
|
+
}
|
|
@@ -128,7 +128,7 @@ export class ContextMenuView {
|
|
|
128
128
|
// through -- and the canvas listener that suppresses the native menu never sees it,
|
|
129
129
|
// because the menu is not a child of the canvas. Without this the browser drew its own
|
|
130
130
|
// menu on top of ours, leaving two stacked over each other.
|
|
131
|
-
this.on(root, 'contextmenu', (event) => { event.preventDefault(); });
|
|
131
|
+
this.on(root, 'contextmenu', (event) => { event.preventDefault(); event.stopPropagation(); });
|
|
132
132
|
|
|
133
133
|
this.container.appendChild(root);
|
|
134
134
|
this.root = root;
|
|
@@ -628,6 +628,17 @@ export class StockSharpDiagram extends EventEmitter<DiagramEvents> {
|
|
|
628
628
|
return this.contextMenu !== null;
|
|
629
629
|
}
|
|
630
630
|
|
|
631
|
+
/**
|
|
632
|
+
* Whether the built-in menu is on screen right now.
|
|
633
|
+
*
|
|
634
|
+
* The menu closes itself on Escape. A host that binds the same key - to leave a fullscreen
|
|
635
|
+
* layout, to close its own dialog - needs to know the key was already spoken for, or one
|
|
636
|
+
* press does both.
|
|
637
|
+
*/
|
|
638
|
+
isContextMenuOpen(): boolean {
|
|
639
|
+
return this.contextMenu?.isOpen ?? false;
|
|
640
|
+
}
|
|
641
|
+
|
|
631
642
|
getContextCommands(): ContextMenuItemState[] {
|
|
632
643
|
const context = this.contextActionContext();
|
|
633
644
|
const state = (command: ContextCommand): ContextCommandState => {
|