@stocksharp/diagram 1.2.3 → 1.4.0

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.
@@ -285,6 +285,7 @@ export declare class LinkModel {
285
285
  };
286
286
  }
287
287
  export declare class Diagram {
288
+ private portOutline;
288
289
  private readonly host;
289
290
  private readonly canvas;
290
291
  private ctx;
@@ -488,6 +489,7 @@ export declare class Diagram {
488
489
  private toWorld;
489
490
  private feedTypes;
490
491
  private portFillType;
492
+ private linkColor;
491
493
  private portColor;
492
494
  private selectionColor;
493
495
  private linkHoverColor;
@@ -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":"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"}
@@ -9,4 +9,7 @@
9
9
  */
10
10
  export declare function luminance(color: string): number;
11
11
  export declare function readableTextOn(fill: string): string;
12
+ export declare function readableOutlineOn(surface: string): string;
13
+ export declare function legibleOn(color: string, background: string): string;
14
+ export declare function cappedLightness(color: string, maxLightness: number): string;
12
15
  //# sourceMappingURL=color.d.ts.map
@@ -1 +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"}
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;AAiBD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CASzD;AA8CD,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAiBnE;AASD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAU3E"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stocksharp/diagram",
3
- "version": "1.2.3",
3
+ "version": "1.4.0",
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": {
@@ -1,6 +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
+ import { cappedLightness, legibleOn, readableOutlineOn, readableTextOn } from './color.js';
4
4
  // Internal dependency-free canvas renderer used by StockSharpDiagram.
5
5
  //
6
6
  // Dependency-free, pure 2D canvas. Demonstrates the hard parts: typed
@@ -494,9 +494,7 @@ function hashHue(s: string): number {
494
494
  // wash out; a light theme passes a low ceiling to darken the links just enough to stay readable
495
495
  // while keeping each hue distinct. Non-hsl inputs are returned untouched.
496
496
  function clampLightness(color: string, maxL: number): string {
497
- const m = color.match(/^hsl\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%\s*\)$/i);
498
- if (m === null) return color;
499
- return `hsl(${m[1]}, ${m[2]}%, ${Math.min(+m[3], maxL * 100)}%)`;
497
+ return cappedLightness(color, maxL);
500
498
  }
501
499
 
502
500
  function colorLuminance(color: string | undefined): number {
@@ -518,6 +516,8 @@ function colorLuminance(color: string | undefined): number {
518
516
  }
519
517
 
520
518
  export class Diagram {
519
+ /// Outline every socket is edged with, refreshed from the background each draw.
520
+ private portOutline = readableOutlineOn('#1b1b1f');
521
521
  private readonly host: HTMLElement;
522
522
  private readonly canvas: HTMLCanvasElement;
523
523
  // Typed as the surface, not the context: the on-screen path still passes the browser's own
@@ -1911,6 +1911,16 @@ export class Diagram {
1911
1911
  return this.portFeed.get(p) ?? p.type;
1912
1912
  }
1913
1913
 
1914
+ /// A type's colour as a wire.
1915
+ ///
1916
+ /// The same colour a socket of that type is filled with, moved into the band the canvas
1917
+ /// leaves room for. A socket can afford the host's exact colour because it is a filled
1918
+ /// square with an outline; a wire is a thin line with nothing behind it, and one drawn in
1919
+ /// #000000 on a dark canvas is not there at all.
1920
+ private linkColor(type: string): string {
1921
+ return legibleOn(this.portColor(type), this.opts.background ?? '#1b1b1f');
1922
+ }
1923
+
1914
1924
  private portColor(type: string): string {
1915
1925
  const maxL = this.opts.linkMaxLightness;
1916
1926
  const light = maxL !== undefined && maxL < 0.5;
@@ -2799,8 +2809,12 @@ export class Diagram {
2799
2809
  private draw(options: DiagramRenderOptions = SCREEN_RENDER_OPTIONS): void {
2800
2810
  const ctx = this.ctx;
2801
2811
  ctx.clearRect(0, 0, this.width, this.height);
2802
- ctx.fillStyle = this.opts.background ?? '#1b1b1f';
2812
+ const background = this.opts.background ?? '#1b1b1f';
2813
+ ctx.fillStyle = background;
2803
2814
  ctx.fillRect(0, 0, this.width, this.height);
2815
+ // Read here rather than per socket: an export swaps the background for the duration of
2816
+ // one draw, so this is the only point that sees the colour the sockets land on.
2817
+ this.portOutline = readableOutlineOn(background);
2804
2818
  // Entrance animation — scheme rises from below + fades in over
2805
2819
  // the opaque background.
2806
2820
  let introDy = 0;
@@ -2830,7 +2844,7 @@ export class Diagram {
2830
2844
  if (a === null || b === null) continue;
2831
2845
  const fp = this.nodes.find((n) => n.id === l.from)?.outPorts.find((p) => p.id === l.fromPort);
2832
2846
  const baseColor = (this.opts.typedLinkColors ?? false) && fp !== undefined
2833
- ? this.portColor(fp.type)
2847
+ ? this.linkColor(fp.type)
2834
2848
  : this.portColor('');
2835
2849
  const state = options.selection && l === this.selectedLink
2836
2850
  ? 'sel'
@@ -3123,7 +3137,7 @@ export class Diagram {
3123
3137
  ctx.fillStyle = this.portColor(this.portFillType(p));
3124
3138
  ctx.fill();
3125
3139
  ctx.lineWidth = magnet ? 1.5 : 1;
3126
- ctx.strokeStyle = magnet ? '#ffffff' : 'rgba(12,12,16,0.55)';
3140
+ ctx.strokeStyle = magnet ? '#ffffff' : this.portOutline;
3127
3141
  ctx.stroke();
3128
3142
  const runtimeSelected = runtime?.selected === true || (options.selection && this.selectedPort?.port === p);
3129
3143
  const breakpoint = runtime?.breakpoint === true;
@@ -3288,7 +3302,7 @@ export class Diagram {
3288
3302
  }
3289
3303
  if (snapped !== null) excludedNodes.add(snapped.node.id);
3290
3304
  const points = this.routeLink(a, b, excludedNodes);
3291
- ctx.strokeStyle = this.portColor(colorType);
3305
+ ctx.strokeStyle = this.linkColor(colorType);
3292
3306
  if (snapped !== null) { ctx.setLineDash([]); ctx.lineWidth = 2.6; }
3293
3307
  else { ctx.setLineDash([5, 4]); ctx.lineWidth = 2; }
3294
3308
  ctx.beginPath();
package/src/color.ts CHANGED
@@ -123,3 +123,111 @@ export function readableTextOn(fill: string): string {
123
123
  ? LIGHT_TEXT
124
124
  : DARK_TEXT;
125
125
  }
126
+
127
+ // Opaque on purpose: a translucent edge takes part of its colour from the fill underneath, so
128
+ // two sockets side by side end up with visibly different edges and the one rule looks like two.
129
+ const DARK_OUTLINE = '#3a3d45';
130
+ const LIGHT_OUTLINE = '#c8ccd4';
131
+
132
+ /// Outline colour for a shape drawn on `surface`.
133
+ ///
134
+ /// A socket is filled with its type's colour, which comes from the host and spans the whole
135
+ /// range -- StockSharp sends #000000 for Any. What the outline has to separate the socket
136
+ /// from is the canvas, so it is measured against the canvas: one outline for every socket on
137
+ /// it, and none of them left without an edge. Choosing per fill instead would edge two
138
+ /// neighbouring sockets differently, which reads as a mistake rather than as a rule.
139
+ ///
140
+ /// A surface this cannot read keeps the dark outline, for the same reason the title stays
141
+ /// dark: the canvas shipped so far is dark, and a light outline on a light one would vanish.
142
+ export function readableOutlineOn(surface: string): string {
143
+ const background = relativeLuminance(surface);
144
+ if (background < 0)
145
+ return DARK_OUTLINE;
146
+
147
+ return contrast(background, relativeLuminance(LIGHT_OUTLINE))
148
+ > contrast(background, relativeLuminance(DARK_OUTLINE))
149
+ ? LIGHT_OUTLINE
150
+ : DARK_OUTLINE;
151
+ }
152
+
153
+ /// A colour's hue, saturation and lightness, or null when it cannot be read.
154
+ function toHsl(color: string): [number, number, number] | null {
155
+ const hsl = color.trim().match(/^hsl\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%\s*\)$/i);
156
+ if (hsl !== null)
157
+ return [+hsl[1], +hsl[2] / 100, +hsl[3] / 100];
158
+
159
+ const rgb = parseRgb(color);
160
+ if (rgb === null)
161
+ return null;
162
+
163
+ const [r, g, b] = rgb.map((channel) => channel / 255);
164
+ const max = Math.max(r, g, b);
165
+ const min = Math.min(r, g, b);
166
+ const lightness = (max + min) / 2;
167
+
168
+ if (max === min)
169
+ return [0, 0, lightness];
170
+
171
+ const span = max - min;
172
+ const saturation = lightness > 0.5 ? span / (2 - max - min) : span / (max + min);
173
+ const hue = max === r
174
+ ? ((g - b) / span + (g < b ? 6 : 0))
175
+ : max === g
176
+ ? (b - r) / span + 2
177
+ : (r - g) / span + 4;
178
+
179
+ return [hue * 60, saturation, lightness];
180
+ }
181
+
182
+ /// Lightest a colour may be drawn on a light canvas, and darkest on a dark one. Wide enough
183
+ /// that a hue is still itself, narrow enough that neither end of the palette disappears.
184
+ const DARK_CANVAS_FLOOR = 0.42;
185
+ const LIGHT_CANVAS_CEILING = 0.45;
186
+
187
+ /// The same colour, moved into the band the canvas leaves room for.
188
+ ///
189
+ /// A socket type's colour belongs to the host and spans the whole range -- StockSharp sends
190
+ /// #000000 for Any and near-white for Side. As a socket that is fine: it is a filled square
191
+ /// with an outline. As a wire it is a thin line with nothing behind it, so a colour at the
192
+ /// same end of the range as the canvas cannot be seen at all. Only the lightness moves; the
193
+ /// hue and saturation are the host's answer to which type this is, and are left alone.
194
+ ///
195
+ /// A colour that already sits in the band is returned exactly as it came, and one that cannot
196
+ /// be read is passed through: guessing at it would be worse than drawing what was asked for.
197
+ export function legibleOn(color: string, background: string): string {
198
+ const hsl = toHsl(color);
199
+ if (hsl === null)
200
+ return color;
201
+
202
+ const canvas = relativeLuminance(background);
203
+ const [hue, saturation, lightness] = hsl;
204
+ const moved = canvas < 0
205
+ ? lightness
206
+ : canvas > 0.18
207
+ ? Math.min(lightness, LIGHT_CANVAS_CEILING)
208
+ : Math.max(lightness, DARK_CANVAS_FLOOR);
209
+
210
+ if (moved === lightness && /^hsl/i.test(color.trim()))
211
+ return color;
212
+
213
+ return `hsl(${Math.round(hue * 10) / 10}, ${Math.round(saturation * 1000) / 10}%, ${Math.round(moved * 1000) / 10}%)`;
214
+ }
215
+
216
+ /// The same colour with its lightness capped at `maxLightness` (0..1), hue and saturation kept.
217
+ ///
218
+ /// Any colour, not only one already written as hsl(): a host's palette arrives as hex, and a
219
+ /// ceiling that only understood one notation left exactly those colours uncapped -- so a light
220
+ /// theme darkened the hues the control invents and left the ones it was given.
221
+ ///
222
+ /// A colour that cannot be read is returned untouched.
223
+ export function cappedLightness(color: string, maxLightness: number): string {
224
+ const hsl = toHsl(color);
225
+ if (hsl === null)
226
+ return color;
227
+
228
+ const [hue, saturation, lightness] = hsl;
229
+ if (lightness <= maxLightness)
230
+ return color;
231
+
232
+ return `hsl(${Math.round(hue * 10) / 10}, ${Math.round(saturation * 1000) / 10}%, ${Math.round(maxLightness * 1000) / 10}%)`;
233
+ }