@canplot/react 0.5.11 → 0.5.13

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/canplot.mjs CHANGED
@@ -1,19 +1,19 @@
1
1
  var Be = Object.defineProperty;
2
2
  var ze = (e, t, n) => t in e ? Be(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
3
3
  var K = (e, t, n) => ze(e, typeof t != "symbol" ? t + "" : t, n);
4
- import { jsxs as pe, jsx as R, Fragment as Ne } from "react/jsx-runtime";
5
- import D, { version as $e, createContext as ye, forwardRef as je, useRef as A, useState as B, useMemo as Q, useLayoutEffect as $, useCallback as He, useContext as G, useEffect as Ae, useId as Ve } from "react";
6
- const re = (e, t, n) => Math.min(Math.max(e, t), n), At = (e) => e.reduce((t, n) => t + (n ?? 0), 0), Rt = (e, t) => {
4
+ import { jsxs as pe, jsx as A, Fragment as Ne } from "react/jsx-runtime";
5
+ import R, { version as $e, createContext as ye, forwardRef as je, useRef as k, useState as B, useMemo as Q, useLayoutEffect as $, useCallback as He, useContext as G, useEffect as ke, useId as Ve } from "react";
6
+ const re = (e, t, n) => Math.min(Math.max(e, t), n), kt = (e) => e.reduce((t, n) => t + (n ?? 0), 0), At = (e, t) => {
7
7
  let n = 0;
8
8
  for (let s = 0; s < e.length; s++)
9
9
  Math.abs(e[s] - t) < Math.abs(e[n] - t) && (n = s);
10
10
  return n;
11
- }, We = (e, t, n, s) => {
11
+ }, qe = (e, t, n, s) => {
12
12
  const o = F(e, n);
13
13
  if (!o)
14
14
  return null;
15
- const i = s === "canvas" ? e.chartAreaCanvasPX : e.chartAreaCSS, r = (o.origin === "x" ? i.width : i.height) / (o.max - o.min);
16
- return t / r;
15
+ const i = s === "canvas" ? e.chartAreaCanvasPX : e.chartAreaCSS, c = (o.origin === "x" ? i.width : i.height) / (o.max - o.min);
16
+ return t / c;
17
17
  }, F = (e, t) => e.scales.find((n) => n.id === t) ?? null, _ = (e, t) => {
18
18
  const n = window.devicePixelRatio || 1;
19
19
  e.lineCap = t?.lineCap ?? "butt", e.lineDashOffset = n * (t?.lineDashOffset ?? 0), e.lineJoin = t?.lineJoin ?? "miter", e.lineWidth = n * (t?.lineWidth ?? 1), e.miterLimit = n * (t?.miterLimit ?? 10), e.strokeStyle = t?.strokeStyle ?? "black", e.fillStyle = t?.fillStyle ?? e.strokeStyle, e.font = t?.font ?? `${10 * n}px sans-serif`, e.textAlign = t?.textAlign ?? "start", e.direction = t?.direction ?? "inherit", e.textBaseline = t?.textBaseline ?? "alphabetic", e.fontKerning = t?.fontKerning ?? "auto";
@@ -21,24 +21,24 @@ const re = (e, t, n) => Math.min(Math.max(e, t), n), At = (e) => e.reduce((t, n)
21
21
  const o = s === "canvas" ? e.chartAreaCanvasPX : e.chartAreaCSS, i = F(e, n);
22
22
  if (!i)
23
23
  return null;
24
- const r = (i.origin === "x" ? o.width : o.height) / (i.max - i.min);
25
- return t * r;
24
+ const c = (i.origin === "x" ? o.width : o.height) / (i.max - i.min);
25
+ return t * c;
26
26
  }, Z = (e, t, n, s) => {
27
27
  const o = F(e, n);
28
28
  if (!o)
29
29
  return null;
30
- const i = s === "canvas" ? e.chartAreaCanvasPX : e.chartAreaCSS, r = ge(
30
+ const i = s === "canvas" ? e.chartAreaCanvasPX : e.chartAreaCSS, c = ge(
31
31
  e,
32
32
  t - o.min,
33
33
  n,
34
34
  s
35
35
  );
36
- return r === null ? null : o.origin === "x" ? re(
37
- i.x + r,
36
+ return c === null ? null : o.origin === "x" ? re(
37
+ i.x + c,
38
38
  i.x - 10 * i.width,
39
39
  i.x + 11 * i.width
40
40
  ) : re(
41
- i.y + i.height - r,
41
+ i.y + i.height - c,
42
42
  i.y - 10 * i.height,
43
43
  i.y + 11 * i.height
44
44
  );
@@ -47,7 +47,7 @@ const re = (e, t, n) => Math.min(Math.max(e, t), n), At = (e) => e.reduce((t, n)
47
47
  return null;
48
48
  const s = n === "canvas" ? e.chartAreaCanvasPX : e.chartAreaCSS;
49
49
  return re(t, s.x, s.x + s.width);
50
- }, W = (e, t, n) => {
50
+ }, q = (e, t, n) => {
51
51
  if (t === null)
52
52
  return null;
53
53
  const s = n === "canvas" ? e.chartAreaCanvasPX : e.chartAreaCSS;
@@ -61,8 +61,8 @@ const re = (e, t, n) => Math.min(Math.max(e, t), n), At = (e) => e.reduce((t, n)
61
61
  const o = F(e, n);
62
62
  if (!o)
63
63
  return null;
64
- const i = s === "canvas" ? e.chartAreaCanvasPX : e.chartAreaCSS, r = o.origin === "x" ? (t - i.x) / i.width : (i.height - t + i.y) / i.height;
65
- return o.min + r * (o.max - o.min);
64
+ const i = s === "canvas" ? e.chartAreaCanvasPX : e.chartAreaCSS, c = o.origin === "x" ? (t - i.x) / i.width : (i.height - t + i.y) / i.height;
65
+ return o.min + c * (o.max - o.min);
66
66
  }, O = (e, t) => {
67
67
  if (e === t) return !0;
68
68
  if (e == null || t == null || typeof e != typeof t || typeof e != "object" || Array.isArray(e) !== Array.isArray(t)) return !1;
@@ -77,7 +77,7 @@ const re = (e, t, n) => Math.min(Math.max(e, t), n), At = (e) => e.reduce((t, n)
77
77
  for (const o of n)
78
78
  if (!Object.prototype.hasOwnProperty.call(t, o) || !O(e[o], t[o])) return !1;
79
79
  return !0;
80
- }, qe = (e) => {
80
+ }, We = (e) => {
81
81
  const { ctx: t, scales: n } = e;
82
82
  for (const s of n) {
83
83
  if (!s.axis) continue;
@@ -125,7 +125,7 @@ function me(e, t) {
125
125
  e && (e.current = t);
126
126
  }
127
127
  var Ze = parseInt($e.split(".")[0], 10) >= 19 ? Je : Ge;
128
- const Re = ye({
128
+ const Ae = ye({
129
129
  listeners: [],
130
130
  subscribe: () => () => {
131
131
  },
@@ -133,14 +133,14 @@ const Re = ye({
133
133
  }
134
134
  }), Qe = () => {
135
135
  const e = [];
136
- return { listeners: e, subscribe: (s, o) => (e.push([o, s]), e.sort((i, r) => i[0] - r[0]), () => {
137
- const i = e.findIndex(([, r]) => r === s);
136
+ return { listeners: e, subscribe: (s, o) => (e.push([o, s]), e.sort((i, c) => i[0] - c[0]), () => {
137
+ const i = e.findIndex(([, c]) => c === s);
138
138
  i !== -1 && e.splice(i, 1);
139
139
  }), notifyListeners: () => {
140
140
  for (const [, s] of e)
141
141
  s();
142
142
  } };
143
- }, ve = ye(null), De = ye(() => {
143
+ }, ve = ye(null), Re = ye(() => {
144
144
  }), Ie = {
145
145
  TOP: 400,
146
146
  MIDDLE: 300,
@@ -151,7 +151,7 @@ class Le {
151
151
  constructor() {
152
152
  K(this, "_frame", null);
153
153
  K(this, "clampXPosToChartArea", (t, n = "canvas") => V(this.frame, t, n));
154
- K(this, "clampYPosToChartArea", (t, n = "canvas") => W(this.frame, t, n));
154
+ K(this, "clampYPosToChartArea", (t, n = "canvas") => q(this.frame, t, n));
155
155
  K(this, "valToPos", (t, n, s = "canvas") => Z(this.frame, t, n, s));
156
156
  K(this, "valToPxDistance", (t, n, s = "canvas") => ge(this.frame, t, n, s));
157
157
  K(this, "valFits", (t, n) => de(this.frame, t, n));
@@ -169,19 +169,19 @@ class Le {
169
169
  return this.frame.ctx;
170
170
  }
171
171
  }
172
- const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
173
- const i = A(null), r = A(null), c = tt(r), [u, l] = B(null), p = Q(
174
- () => nt(e, c, u),
175
- [e, c, u]
172
+ const Rt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
173
+ const i = k(null), c = k(null), r = tt(c), [u, l] = B(null), y = Q(
174
+ () => nt(e, r, u),
175
+ [e, r, u]
176
176
  );
177
177
  $(() => {
178
178
  l(i.current?.getContext("2d") || null);
179
179
  }, [i]);
180
- const f = window.devicePixelRatio || 1;
180
+ const d = window.devicePixelRatio || 1;
181
181
  return /* @__PURE__ */ pe(
182
182
  "div",
183
183
  {
184
- ref: Ze([o, r]),
184
+ ref: Ze([o, c]),
185
185
  style: {
186
186
  position: "relative",
187
187
  overflow: "hidden",
@@ -190,21 +190,21 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
190
190
  "data-canplotroot": !0,
191
191
  ...s,
192
192
  children: [
193
- /* @__PURE__ */ R(
193
+ /* @__PURE__ */ A(
194
194
  "canvas",
195
195
  {
196
196
  ref: i,
197
- width: c.width * f,
198
- height: c.height * f,
197
+ width: r.width * d,
198
+ height: r.height * d,
199
199
  style: {
200
200
  inset: 0,
201
201
  position: "absolute",
202
- width: `${c.width}px`,
203
- height: `${c.height}px`
202
+ width: `${r.width}px`,
203
+ height: `${r.height}px`
204
204
  }
205
205
  }
206
206
  ),
207
- p && /* @__PURE__ */ R(et, { frame: p, children: t })
207
+ y && /* @__PURE__ */ A(et, { frame: y, children: t })
208
208
  ]
209
209
  }
210
210
  );
@@ -216,32 +216,32 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
216
216
  $(() => {
217
217
  e?.ctx.clearRect(0, 0, e.ctx.canvas.width, e.ctx.canvas.height);
218
218
  }, [e, s]);
219
- const i = A(null);
219
+ const i = k(null);
220
220
  i.current = e, $(() => {
221
221
  n.subscribe(() => {
222
- i.current && qe(i.current);
222
+ i.current && We(i.current);
223
223
  }, Ie.BOTTOM);
224
224
  }, [n]), $(() => {
225
- let c = null;
226
- return c = window.requestAnimationFrame(() => {
227
- c = null, n.notifyListeners();
225
+ let r = null;
226
+ return r = window.requestAnimationFrame(() => {
227
+ r = null, n.notifyListeners();
228
228
  }), () => {
229
- c && cancelAnimationFrame(c);
229
+ r && cancelAnimationFrame(r);
230
230
  };
231
231
  }, [s, e, n]);
232
- const r = He(() => {
233
- o((c) => c + 1);
232
+ const c = He(() => {
233
+ o((r) => r + 1);
234
234
  }, [o]);
235
- return /* @__PURE__ */ R(Re.Provider, { value: n, children: /* @__PURE__ */ R(De.Provider, { value: r, children: /* @__PURE__ */ R(ve.Provider, { value: e, children: t }) }) });
235
+ return /* @__PURE__ */ A(Ae.Provider, { value: n, children: /* @__PURE__ */ A(Re.Provider, { value: c, children: /* @__PURE__ */ A(ve.Provider, { value: e, children: t }) }) });
236
236
  }, tt = (e) => {
237
237
  const [t, n] = B({
238
238
  width: 0,
239
239
  height: 0
240
240
  }), [s] = B(() => new ResizeObserver((o) => {
241
241
  for (const i of o) {
242
- const r = Math.round(i.contentRect.width), c = Math.round(i.contentRect.height);
242
+ const c = Math.round(i.contentRect.width), r = Math.round(i.contentRect.height);
243
243
  n(
244
- (u) => u.width !== r || u.height !== c ? { ...u, width: r, height: c } : u
244
+ (u) => u.width !== c || u.height !== r ? { ...u, width: c, height: r } : u
245
245
  );
246
246
  }
247
247
  }));
@@ -249,7 +249,7 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
249
249
  if (!e.current) return;
250
250
  const o = e.current.clientWidth, i = e.current.clientHeight;
251
251
  return n(
252
- (r) => r.width !== o || r.height !== i ? { ...r, width: o, height: i } : r
252
+ (c) => c.width !== o || c.height !== i ? { ...c, width: o, height: i } : c
253
253
  ), s.observe(e.current, { box: "border-box" }), () => s.disconnect();
254
254
  }, [s, e]), t;
255
255
  }, nt = (e, t, n) => {
@@ -274,11 +274,11 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
274
274
  y: o.y * s,
275
275
  width: o.width * s,
276
276
  height: o.height * s
277
- }, r = [];
278
- let c = e.padding.left * s, u = t.width * s - e.padding.right * s, l = t.height * s - e.padding.bottom * s, p = e.padding.top * s;
277
+ }, c = [];
278
+ let r = e.padding.left * s, u = t.width * s - e.padding.right * s, l = t.height * s - e.padding.bottom * s, y = e.padding.top * s;
279
279
  for (const a of e.scales) {
280
280
  if (!a.axis) {
281
- r.push({ ...a, axis: null });
281
+ c.push({ ...a, axis: null });
282
282
  continue;
283
283
  }
284
284
  let g;
@@ -293,9 +293,9 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
293
293
  };
294
294
  break;
295
295
  case "top":
296
- p += a.axis.size * s, g = {
296
+ y += a.axis.size * s, g = {
297
297
  x: o.x,
298
- y: p / s - a.axis.size,
298
+ y: y / s - a.axis.size,
299
299
  width: o.width,
300
300
  height: a.axis.size
301
301
  };
@@ -307,8 +307,8 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
307
307
  else
308
308
  switch (a.axis.position) {
309
309
  case "left":
310
- c += a.axis.size * s, g = {
311
- x: c / s - a.axis.size,
310
+ r += a.axis.size * s, g = {
311
+ x: r / s - a.axis.size,
312
312
  y: o.y,
313
313
  width: a.axis.size,
314
314
  height: o.height
@@ -326,18 +326,18 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
326
326
  case "bottom":
327
327
  throw new Error("Invalid axis position for y origin");
328
328
  }
329
- const d = {
329
+ const h = {
330
330
  x: g.x * s,
331
331
  y: g.y * s,
332
332
  width: g.width * s,
333
333
  height: g.height * s
334
334
  };
335
- r.push({
335
+ c.push({
336
336
  ...a,
337
337
  axis: {
338
338
  ...a.axis,
339
339
  cssRect: g,
340
- canvasRect: d
340
+ canvasRect: h
341
341
  }
342
342
  });
343
343
  }
@@ -345,32 +345,32 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
345
345
  ctx: n,
346
346
  dpr: s,
347
347
  padding: e.padding,
348
- scales: r,
348
+ scales: c,
349
349
  chartAreaCSS: o,
350
350
  chartAreaCanvasPX: i
351
351
  };
352
352
  }, j = (e, t, n) => {
353
- const s = G(ve), o = G(De), i = G(Re);
353
+ const s = G(ve), o = G(Re), i = G(Ae);
354
354
  if (!s || !o)
355
355
  throw new Error("useFrame must be used within a CanPlot component");
356
- const [r] = B(() => new Le());
357
- r._updateFrame(s);
358
- const c = A(r);
359
- c.current = r;
360
- const u = A(t);
356
+ const [c] = B(() => new Le());
357
+ c._updateFrame(s);
358
+ const r = k(c);
359
+ r.current = c;
360
+ const u = k(t);
361
361
  u.current = t, $(() => {
362
362
  const l = i.subscribe(
363
363
  () => {
364
- u.current(r);
364
+ u.current(c);
365
365
  },
366
366
  typeof e == "number" ? e : Ie[e]
367
367
  );
368
368
  return () => {
369
369
  l();
370
370
  };
371
- }, [i, e, r]), $(() => {
371
+ }, [i, e, c]), $(() => {
372
372
  o();
373
- }, [o, ...n]), Ae(() => () => {
373
+ }, [o, ...n]), ke(() => () => {
374
374
  o();
375
375
  }, [o]);
376
376
  }, Ue = () => {
@@ -381,198 +381,201 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
381
381
  const t = new Le();
382
382
  return t._updateFrame(e), t;
383
383
  }, [e]);
384
- }, st = ({ layer: e = "MIDDLE", data: t, xScaleId: n, yScaleId: s, style: o, globalAlpha: i }) => (j(
384
+ }, st = ({ layer: e = "MIDDLE", data: t, xScaleId: n, yScaleId: s, style: o, globalAlpha: i, xGapWidth: c }) => (j(
385
385
  e,
386
- ({ ctx: r, clampXPosToChartArea: c, clampYPosToChartArea: u, valToPos: l }) => {
387
- r.save(), r.beginPath(), _(r, o), i !== void 0 && (r.globalAlpha = i);
388
- for (const p of t) {
389
- const f = c(l(p.x, n, "canvas")), a = u(l(p.y, s, "canvas"));
390
- f === null || a === null || r.lineTo(f, a);
386
+ ({ ctx: r, clampXPosToChartArea: u, clampYPosToChartArea: l, valToPos: y }) => {
387
+ r.save(), r.beginPath(), _(r, o);
388
+ const d = r.getLineDash();
389
+ o?.lineDash && r.setLineDash(o.lineDash), i !== void 0 && (r.globalAlpha = i);
390
+ let a = null;
391
+ for (const g of t) {
392
+ const h = u(y(g.x, n, "canvas")), p = l(y(g.y, s, "canvas"));
393
+ h === null || p === null || (a !== null && c !== void 0 && h - a > c ? r.moveTo(h, p) : r.lineTo(h, p), a = h);
391
394
  }
392
- r.stroke(), r.restore();
395
+ r.stroke(), d && r.setLineDash(d), r.restore();
393
396
  },
394
- [t, n, s, o, i]
395
- ), null), It = D.memo(st, O), ot = ({
397
+ [t, n, s, o, i, c]
398
+ ), null), It = R.memo(st, O), ot = ({
396
399
  layer: e = "MIDDLE",
397
400
  data: t,
398
401
  xScaleId: n,
399
402
  yScaleId: s,
400
403
  xStrategy: o = "clip",
401
404
  yStrategy: i = "clip",
402
- radius: r = 5,
403
- style: c,
405
+ radius: c = 5,
406
+ style: r,
404
407
  globalAlpha: u
405
408
  }) => (j(
406
409
  e,
407
410
  ({
408
411
  ctx: l,
409
- valToPos: p,
410
- valFits: f,
412
+ valToPos: y,
413
+ valFits: d,
411
414
  clampXPosToChartArea: a,
412
415
  clampYPosToChartArea: g
413
416
  }) => {
414
- l.save(), _(l, c), u !== void 0 && (l.globalAlpha = u);
415
- const d = [];
416
- for (const y of t) {
417
- let h = null, m = null;
418
- const v = p(y.x, n);
417
+ l.save(), _(l, r), u !== void 0 && (l.globalAlpha = u);
418
+ const h = [];
419
+ for (const p of t) {
420
+ let f = null, m = null;
421
+ const v = y(p.x, n);
419
422
  if (v === null) continue;
420
423
  if (o === "clip") {
421
- if (!f(y.x, n)) continue;
422
- h = v;
424
+ if (!d(p.x, n)) continue;
425
+ f = v;
423
426
  } else
424
- h = a(v, "canvas");
425
- const x = p(y.y, s);
426
- if (x !== null) {
427
+ f = a(v, "canvas");
428
+ const b = y(p.y, s);
429
+ if (b !== null) {
427
430
  if (i === "clip") {
428
- if (!f(y.y, s)) continue;
429
- m = x;
431
+ if (!d(p.y, s)) continue;
432
+ m = b;
430
433
  } else
431
- m = g(x, "canvas");
432
- h === null || m === null || d.push({ x: h, y: m });
434
+ m = g(b, "canvas");
435
+ f === null || m === null || h.push({ x: f, y: m });
433
436
  }
434
437
  }
435
- if (c?.fillStyle)
436
- for (const y of d)
437
- l.beginPath(), l.arc(y.x, y.y, r, 0, Math.PI * 2), l.fill();
438
- if (c?.strokeStyle) {
438
+ if (r?.fillStyle)
439
+ for (const p of h)
440
+ l.beginPath(), l.arc(p.x, p.y, c, 0, Math.PI * 2), l.fill();
441
+ if (r?.strokeStyle) {
439
442
  l.beginPath();
440
- for (const y of d)
441
- l.moveTo(y.x + r, y.y), l.arc(y.x, y.y, r, 0, Math.PI * 2);
443
+ for (const p of h)
444
+ l.moveTo(p.x + c, p.y), l.arc(p.x, p.y, c, 0, Math.PI * 2);
442
445
  l.stroke();
443
446
  }
444
447
  l.restore();
445
448
  },
446
- [t, n, s, r, c, u]
447
- ), null), Lt = D.memo(ot, O), it = ({
449
+ [t, n, s, c, r, u]
450
+ ), null), Lt = R.memo(ot, O), it = ({
448
451
  data: e,
449
452
  xScaleId: t,
450
453
  yScaleId: n,
451
454
  style: s,
452
455
  barWidth: o,
453
456
  xPositionOffset: i,
454
- globalAlpha: r,
455
- radius: c,
457
+ globalAlpha: c,
458
+ radius: r,
456
459
  layer: u = "MIDDLE"
457
460
  }) => (j(
458
461
  u,
459
462
  ({
460
463
  ctx: l,
461
- valToPxDistance: p,
462
- valToPos: f,
464
+ valToPxDistance: y,
465
+ valToPos: d,
463
466
  clampXPosToChartArea: a,
464
467
  clampYPosToChartArea: g
465
468
  }) => {
466
469
  if (e.length === 0) return;
467
- const d = g(
468
- f(0, n, "canvas"),
470
+ const h = g(
471
+ d(0, n, "canvas"),
469
472
  "canvas"
470
473
  );
471
- if (d === null)
474
+ if (h === null)
472
475
  return;
473
- const y = p(o, t, "canvas") ?? 0, h = [];
476
+ const p = y(o, t, "canvas") ?? 0, f = [];
474
477
  for (const m of e) {
475
- const v = f(m.x, t, "canvas");
478
+ const v = d(m.x, t, "canvas");
476
479
  if (v === null)
477
480
  continue;
478
- const x = v - y / 2 + i * y, T = g(
479
- f(m.y, n, "canvas"),
481
+ const b = v - p / 2 + i * p, T = g(
482
+ d(m.y, n, "canvas"),
480
483
  "canvas"
481
484
  );
482
485
  if (T === null)
483
486
  continue;
484
- const w = d - T, b = a(x, "canvas"), S = a(x + y, "canvas") - b;
485
- h.push({
486
- x: b,
487
+ const w = h - T, x = a(b, "canvas"), S = a(b + p, "canvas") - x;
488
+ f.push({
489
+ x,
487
490
  y: T,
488
491
  width: S,
489
492
  height: w
490
493
  });
491
494
  }
492
- if (l.save(), _(l, s), r !== void 0 && (l.globalAlpha = r), s?.fillStyle)
493
- for (const m of h)
494
- l.beginPath(), c ? l.roundRect(m.x, m.y, m.width, m.height, c) : l.rect(m.x, m.y, m.width, m.height), l.fill();
495
+ if (l.save(), _(l, s), c !== void 0 && (l.globalAlpha = c), s?.fillStyle)
496
+ for (const m of f)
497
+ l.beginPath(), r ? l.roundRect(m.x, m.y, m.width, m.height, r) : l.rect(m.x, m.y, m.width, m.height), l.fill();
495
498
  if (s?.strokeStyle) {
496
499
  l.beginPath();
497
- for (const m of h)
498
- c ? l.roundRect(m.x, m.y, m.width, m.height, c) : l.rect(m.x, m.y, m.width, m.height);
500
+ for (const m of f)
501
+ r ? l.roundRect(m.x, m.y, m.width, m.height, r) : l.rect(m.x, m.y, m.width, m.height);
499
502
  l.stroke();
500
503
  }
501
504
  l.restore();
502
505
  },
503
- [e, t, n, s, o, i, c, r]
504
- ), null), Ut = D.memo(it, O), rt = ({ layer: e = "MIDDLE", data: t, xScaleId: n, yScaleId: s, style: o }) => (j(
506
+ [e, t, n, s, o, i, r, c]
507
+ ), null), Ut = R.memo(it, O), rt = ({ layer: e = "MIDDLE", data: t, xScaleId: n, yScaleId: s, style: o }) => (j(
505
508
  e,
506
- ({ ctx: i, clampXPosToChartArea: r, clampYPosToChartArea: c, valToPos: u }) => {
509
+ ({ ctx: i, clampXPosToChartArea: c, clampYPosToChartArea: r, valToPos: u }) => {
507
510
  const l = [];
508
- for (const f of t) {
509
- const a = r(u(f.x, n));
511
+ for (const d of t) {
512
+ const a = c(u(d.x, n));
510
513
  if (a === null)
511
514
  continue;
512
- const g = c(u(f.y[0], s));
515
+ const g = r(u(d.y[0], s));
513
516
  if (g === null)
514
517
  continue;
515
- const d = c(u(f.y[1], s));
516
- d !== null && (l.push({ x: a, y: g }), l.unshift({ x: a, y: d }));
518
+ const h = r(u(d.y[1], s));
519
+ h !== null && (l.push({ x: a, y: g }), l.unshift({ x: a, y: h }));
517
520
  }
518
- const p = l[0];
519
- if (p) {
520
- i.save(), i.beginPath(), _(i, o), i.moveTo(p.x, p.y);
521
- for (const f of l)
522
- i.lineTo(f.x, f.y);
521
+ const y = l[0];
522
+ if (y) {
523
+ i.save(), i.beginPath(), _(i, o), i.moveTo(y.x, y.y);
524
+ for (const d of l)
525
+ i.lineTo(d.x, d.y);
523
526
  i.closePath(), i.fill(), i.restore();
524
527
  }
525
528
  },
526
529
  [t, n, s, o]
527
- ), null), _t = D.memo(rt, O), ct = ({ layer: e = "MIDDLE", data: t, stroked: n, xScaleId: s, yScaleId: o, style: i }) => (j(
530
+ ), null), _t = R.memo(rt, O), ct = ({ layer: e = "MIDDLE", data: t, stroked: n, xScaleId: s, yScaleId: o, style: i }) => (j(
528
531
  e,
529
- ({ ctx: r, clampXPosToChartArea: c, clampYPosToChartArea: u, valToPos: l }) => {
530
- const p = [];
531
- for (const d of t) {
532
- const y = c(l(d.x, s)), h = u(l(d.y, o));
533
- y === null || h === null || p.push({ x: y, y: h });
532
+ ({ ctx: c, clampXPosToChartArea: r, clampYPosToChartArea: u, valToPos: l }) => {
533
+ const y = [];
534
+ for (const h of t) {
535
+ const p = r(l(h.x, s)), f = u(l(h.y, o));
536
+ p === null || f === null || y.push({ x: p, y: f });
534
537
  }
535
- const f = p.at(0), a = p.at(-1);
536
- if (!f || !a)
538
+ const d = y.at(0), a = y.at(-1);
539
+ if (!d || !a)
537
540
  return;
538
541
  const g = u(l(0, o));
539
542
  if (g !== null) {
540
- r.save(), r.beginPath(), _(r, i), r.moveTo(f.x, g);
541
- for (const d of p)
542
- r.lineTo(d.x, d.y);
543
- if (r.lineTo(a.x, g), r.closePath(), r.fill(), n) {
544
- r.beginPath(), r.moveTo(f.x, f.y);
545
- for (const d of p)
546
- r.lineTo(d.x, d.y);
547
- r.stroke();
543
+ c.save(), c.beginPath(), _(c, i), c.moveTo(d.x, g);
544
+ for (const h of y)
545
+ c.lineTo(h.x, h.y);
546
+ if (c.lineTo(a.x, g), c.closePath(), c.fill(), n) {
547
+ c.beginPath(), c.moveTo(d.x, d.y);
548
+ for (const h of y)
549
+ c.lineTo(h.x, h.y);
550
+ c.stroke();
548
551
  }
549
- r.restore();
552
+ c.restore();
550
553
  }
551
554
  },
552
555
  [t, n, s, o, i]
553
- ), null), Xt = D.memo(ct, O), at = ({
556
+ ), null), Xt = R.memo(ct, O), at = ({
554
557
  layer: e = "BOTTOM",
555
558
  scaleId: t,
556
559
  tickStyle: n,
557
560
  labelStyle: s,
558
561
  labelGap: o,
559
562
  tickSize: i,
560
- ticks: r
563
+ ticks: c
561
564
  }) => (j(
562
565
  e,
563
- ({ ctx: c, valToPos: u, getScale: l, frame: p }) => {
564
- const f = l(t);
565
- if (!f || !f.axis || f.origin !== "x") return;
566
- const a = f.axis, g = a.position === "top" ? a.canvasRect.y + a.canvasRect.height : a.canvasRect.y, d = window.devicePixelRatio || 1, y = g, h = (i ?? 6) * d, m = a.position === "top" ? g - h : g + h, v = (o ?? 12) * d;
567
- c.save(), c.fontKerning = "auto", _(c, {
566
+ ({ ctx: r, valToPos: u, getScale: l, frame: y }) => {
567
+ const d = l(t);
568
+ if (!d || !d.axis || d.origin !== "x") return;
569
+ const a = d.axis, g = a.position === "top" ? a.canvasRect.y + a.canvasRect.height : a.canvasRect.y, h = window.devicePixelRatio || 1, p = g, f = (i ?? 6) * h, m = a.position === "top" ? g - f : g + f, v = (o ?? 12) * h;
570
+ r.save(), r.fontKerning = "auto", _(r, {
568
571
  ...n
569
- }), c.beginPath();
570
- const x = Array.isArray(r) ? r : r({ ...f, axis: a }, p);
571
- for (const { value: T } of x) {
572
+ }), r.beginPath();
573
+ const b = Array.isArray(c) ? c : c({ ...d, axis: a }, y);
574
+ for (const { value: T } of b) {
572
575
  const w = u(T, t, "canvas");
573
- w !== null && (c.moveTo(w, y), c.lineTo(w, m));
576
+ w !== null && (r.moveTo(w, p), r.lineTo(w, m));
574
577
  }
575
- c.stroke(), c.restore(), c.save(), _(c, {
578
+ r.stroke(), r.restore(), r.save(), _(r, {
576
579
  textBaseline: a.position === "top" ? "bottom" : "top",
577
580
  textAlign: "center",
578
581
  ...n,
@@ -580,38 +583,38 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
580
583
  // alter font size for DPR
581
584
  font: _e(s?.font ?? n?.font)
582
585
  });
583
- for (const { value: T, label: w } of x) {
584
- const b = u(T, t, "canvas");
585
- if (b === null)
586
+ for (const { value: T, label: w } of b) {
587
+ const x = u(T, t, "canvas");
588
+ if (x === null)
586
589
  continue;
587
590
  const S = w.split(`
588
591
  `);
589
592
  for (let E = 0; E < S.length; E++)
590
- c.fillText(S[E], b, m + d * 2 + E * v);
593
+ r.fillText(S[E], x, m + h * 2 + E * v);
591
594
  }
592
- c.restore();
595
+ r.restore();
593
596
  },
594
- [r, t, n, s]
595
- ), null), Ft = D.memo(at, O), lt = ({
597
+ [c, t, n, s]
598
+ ), null), Ft = R.memo(at, O), lt = ({
596
599
  layer: e = "BOTTOM",
597
600
  scaleId: t,
598
601
  tickStyle: n,
599
602
  labelStyle: s,
600
603
  labelGap: o,
601
604
  tickSize: i,
602
- ticks: r
605
+ ticks: c
603
606
  }) => (j(
604
607
  e,
605
- ({ ctx: c, valToPos: u, getScale: l, frame: p }) => {
606
- const f = l(t);
607
- if (!f || !f.axis || f.origin !== "y") return;
608
- const a = f.axis, g = a.position === "left" ? a.canvasRect.x + a.canvasRect.width : a.canvasRect.x, d = g, y = i ?? 6, h = a.position === "left" ? g - y : g + y, m = o ?? 12, v = Array.isArray(r) ? r : r({ ...f, axis: a }, p);
609
- c.save(), c.fontKerning = "auto", _(c, { ...n }), c.beginPath();
610
- for (const { value: x } of v) {
611
- const T = u(x, t, "canvas");
612
- T !== null && (c.moveTo(d, T), c.lineTo(h, T));
608
+ ({ ctx: r, valToPos: u, getScale: l, frame: y }) => {
609
+ const d = l(t);
610
+ if (!d || !d.axis || d.origin !== "y") return;
611
+ const a = d.axis, g = a.position === "left" ? a.canvasRect.x + a.canvasRect.width : a.canvasRect.x, h = g, p = i ?? 6, f = a.position === "left" ? g - p : g + p, m = o ?? 12, v = Array.isArray(c) ? c : c({ ...d, axis: a }, y);
612
+ r.save(), r.fontKerning = "auto", _(r, { ...n }), r.beginPath();
613
+ for (const { value: b } of v) {
614
+ const T = u(b, t, "canvas");
615
+ T !== null && (r.moveTo(h, T), r.lineTo(f, T));
613
616
  }
614
- c.stroke(), c.restore(), c.save(), _(c, {
617
+ r.stroke(), r.restore(), r.save(), _(r, {
615
618
  textBaseline: "middle",
616
619
  textAlign: a.position === "left" ? "right" : "left",
617
620
  ...n,
@@ -619,19 +622,19 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
619
622
  // alter font size for DPR
620
623
  font: _e(s?.font ?? n?.font)
621
624
  });
622
- for (const { value: x, label: T } of v) {
623
- const w = u(x, t, "canvas");
625
+ for (const { value: b, label: T } of v) {
626
+ const w = u(b, t, "canvas");
624
627
  if (w === null)
625
628
  continue;
626
- const b = T.split(`
629
+ const x = T.split(`
627
630
  `);
628
- for (let S = 0; S < b.length; S++)
629
- c.fillText(` ${b[S]} `, h, w + S * m);
631
+ for (let S = 0; S < x.length; S++)
632
+ r.fillText(` ${x[S]} `, f, w + S * m);
630
633
  }
631
- c.restore();
634
+ r.restore();
632
635
  },
633
- [r, t, n, s]
634
- ), null), Ot = D.memo(lt, O), _e = (e) => {
636
+ [c, t, n, s]
637
+ ), null), Ot = R.memo(lt, O), _e = (e) => {
635
638
  if (e)
636
639
  try {
637
640
  return e.replace(/(\d+)px/, (t, n) => `${parseInt(n) * window.devicePixelRatio || 1}px`);
@@ -665,35 +668,35 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
665
668
  pressandwheel: I(),
666
669
  sync_move: I()
667
670
  }, L = (e, t, n) => {
668
- const s = D.useRef(n);
669
- s.current = n, D.useEffect(() => M[e].addEventListener(
671
+ const s = R.useRef(n);
672
+ s.current = n, R.useEffect(() => M[e].addEventListener(
670
673
  t,
671
- (i, r) => {
672
- s.current(r, i);
674
+ (i, c) => {
675
+ s.current(c, i);
673
676
  }
674
677
  ), [t, e, s]);
675
- }, we = D.createContext(""), xe = (e, t) => {
676
- const n = D.useContext(we);
678
+ }, we = R.createContext(""), be = (e, t) => {
679
+ const n = R.useContext(we);
677
680
  return L(e, n, t);
678
681
  }, ut = (e, t, n, s, o) => {
679
682
  if (!t) return;
680
- const i = s ?? n.scales.find((f) => f.origin === "x")?.id, r = o ?? n.scales.find((f) => f.origin === "y")?.id, c = e.clientX - t.left, u = i ? {
683
+ const i = s ?? n.scales.find((d) => d.origin === "x")?.id, c = o ?? n.scales.find((d) => d.origin === "y")?.id, r = e.clientX - t.left, u = i ? {
681
684
  scaleId: i,
682
- value: X(n, c, i, "css")
683
- } : null, l = e.clientY - t.top, p = r ? {
684
- scaleId: r,
685
- value: X(n, l, r, "css")
685
+ value: X(n, r, i, "css")
686
+ } : null, l = e.clientY - t.top, y = c ? {
687
+ scaleId: c,
688
+ value: X(n, l, c, "css")
686
689
  } : null;
687
- return { pointerSyncPosition: { x: u, y: p }, cssX: c, cssY: l };
690
+ return { pointerSyncPosition: { x: u, y }, cssX: r, cssY: l };
688
691
  }, N = (e, t) => {
689
- const { x: n, y: s } = e, o = n && t.scales.some((r) => r.id === n.scaleId) ? Z(t, n.value, n.scaleId, "css") : null, i = s && t.scales.some((r) => r.id === s.scaleId) ? Z(t, s.value, s.scaleId, "css") : null;
692
+ const { x: n, y: s } = e, o = n && t.scales.some((c) => c.id === n.scaleId) ? Z(t, n.value, n.scaleId, "css") : null, i = s && t.scales.some((c) => c.id === s.scaleId) ? Z(t, s.value, s.scaleId, "css") : null;
690
693
  return {
691
694
  cssX: o,
692
695
  cssY: i,
693
696
  scaled: Object.fromEntries(
694
- t.scales.flatMap((r) => {
695
- const c = r.origin === "y" ? i : o;
696
- return c === null ? [] : [[r.id, X(t, c, r.id, "css")]];
697
+ t.scales.flatMap((c) => {
698
+ const r = c.origin === "y" ? i : o;
699
+ return r === null ? [] : [[c.id, X(t, r, c.id, "css")]];
697
700
  })
698
701
  )
699
702
  };
@@ -712,14 +715,14 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
712
715
  if (s === null || o === null)
713
716
  return null;
714
717
  const i = n.scales.flatMap(
715
- (r) => {
716
- if (r.origin !== e)
718
+ (c) => {
719
+ if (c.origin !== e)
717
720
  return [];
718
- const c = X(n, s, r.id, "css"), u = X(n, o, r.id, "css");
719
- return c === null || u === null ? [] : [
721
+ const r = X(n, s, c.id, "css"), u = X(n, o, c.id, "css");
722
+ return r === null || u === null ? [] : [
720
723
  {
721
- scaleId: r.id,
722
- from: c,
724
+ scaleId: c.id,
725
+ from: r,
723
726
  to: u
724
727
  }
725
728
  ];
@@ -737,62 +740,62 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
737
740
  onMouseMove: s,
738
741
  onMouseDown: o,
739
742
  onMouseUp: i,
740
- onDocumentMouseUp: r,
741
- onSpanSelect: c,
743
+ onDocumentMouseUp: c,
744
+ onSpanSelect: r,
742
745
  onContextMenu: u,
743
746
  className: l,
744
- style: p,
745
- sync: f,
747
+ style: y,
748
+ sync: d,
746
749
  innerChildren: a,
747
750
  children: g
748
751
  }) => {
749
- const d = Ve();
750
- return L("dblclick", d, (y) => {
751
- n?.(y);
752
- }), L("click", d, (y) => {
753
- t?.(y);
754
- }), L("move", d, (y) => {
755
- s?.(y);
756
- }), L("mousedown", d, (y) => {
757
- o?.(y);
758
- }), L("mouseup", d, (y) => {
759
- i?.(y);
760
- }), L("documentmouseup", d, (y) => {
761
- r?.(y);
762
- }), L("spanselect", d, (y) => {
763
- c?.(y);
764
- }), L("contextmenu", d, (y) => {
765
- u?.(y);
766
- }), /* @__PURE__ */ pe(we.Provider, { value: d, children: [
767
- /* @__PURE__ */ R(
752
+ const h = Ve();
753
+ return L("dblclick", h, (p) => {
754
+ n?.(p);
755
+ }), L("click", h, (p) => {
756
+ t?.(p);
757
+ }), L("move", h, (p) => {
758
+ s?.(p);
759
+ }), L("mousedown", h, (p) => {
760
+ o?.(p);
761
+ }), L("mouseup", h, (p) => {
762
+ i?.(p);
763
+ }), L("documentmouseup", h, (p) => {
764
+ c?.(p);
765
+ }), L("spanselect", h, (p) => {
766
+ r?.(p);
767
+ }), L("contextmenu", h, (p) => {
768
+ u?.(p);
769
+ }), /* @__PURE__ */ pe(we.Provider, { value: h, children: [
770
+ /* @__PURE__ */ A(
768
771
  ht,
769
772
  {
770
773
  id: e,
771
774
  className: l,
772
- style: p,
773
- sync: f,
775
+ style: y,
776
+ sync: d,
774
777
  children: a
775
778
  }
776
779
  ),
777
780
  g
778
781
  ] });
779
782
  }, ht = ({ id: e, className: t, style: n, sync: s, children: o }) => {
780
- const i = A(null), r = Ue().frame, c = A(r);
781
- c.current = r;
782
- const u = G(we), l = s?.key || u, p = A(null), f = A(null), a = A(null), g = () => {
783
- const h = i.current?.parentElement;
784
- if (h) {
785
- if (h.dataset.canplotroot === void 0)
783
+ const i = k(null), c = Ue().frame, r = k(c);
784
+ r.current = c;
785
+ const u = G(we), l = s?.key || u, y = k(null), d = k(null), a = k(null), g = () => {
786
+ const f = i.current?.parentElement;
787
+ if (f) {
788
+ if (f.dataset.canplotroot === void 0)
786
789
  throw new Error(
787
790
  "ChartAreaInteractions must be used within a CanPlot component"
788
791
  );
789
- return h.getBoundingClientRect();
792
+ return f.getBoundingClientRect();
790
793
  }
791
- }, d = (h, m) => {
794
+ }, h = (f, m) => {
792
795
  const v = ut(
793
- h,
796
+ f,
794
797
  g(),
795
- c.current,
798
+ r.current,
796
799
  s?.xViaScaleId,
797
800
  s?.yViaScaleId
798
801
  );
@@ -800,21 +803,21 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
800
803
  v.pointerSyncPosition,
801
804
  { cssX: v.cssX, cssY: v.cssY },
802
805
  {
803
- ctrlKey: h.ctrlKey,
804
- altKey: h.altKey,
805
- shiftKey: h.shiftKey,
806
- metaKey: h.metaKey
806
+ ctrlKey: f.ctrlKey,
807
+ altKey: f.altKey,
808
+ shiftKey: f.shiftKey,
809
+ metaKey: f.metaKey
807
810
  }
808
811
  );
809
- }, y = A(d);
810
- return y.current = d, Ae(() => {
811
- const h = (w) => {
812
- const b = f.current;
813
- b && M.spanselect.dispatchEvent(u, {
814
- ...b,
812
+ }, p = k(h);
813
+ return p.current = h, ke(() => {
814
+ const f = (w) => {
815
+ const x = d.current;
816
+ x && M.spanselect.dispatchEvent(u, {
817
+ ...x,
815
818
  completed: !0
816
819
  }), M.documentmouseup.dispatchEvent(u, {
817
- frame: c.current,
820
+ frame: r.current,
818
821
  keys: {
819
822
  ctrlKey: w.ctrlKey,
820
823
  altKey: w.altKey,
@@ -823,67 +826,67 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
823
826
  }
824
827
  });
825
828
  }, m = (w) => {
826
- const b = {
829
+ const x = {
827
830
  ctrlKey: w.ctrlKey,
828
831
  altKey: w.altKey,
829
832
  shiftKey: w.shiftKey,
830
833
  metaKey: w.metaKey
831
834
  }, S = a.current;
832
- if (S && Object.entries(b).some(
835
+ if (S && Object.entries(x).some(
833
836
  ([C, P]) => S.keys[C] !== P
834
837
  )) {
835
- const C = { ...S, keys: b };
838
+ const C = { ...S, keys: x };
836
839
  a.current = C, M.sync_move.dispatchEvent(l, C);
837
840
  }
838
- const E = f.current;
839
- if (E && Object.entries(b).some(
841
+ const E = d.current;
842
+ if (E && Object.entries(x).some(
840
843
  ([C, P]) => E.keys[C] !== P
841
844
  )) {
842
845
  w.stopPropagation(), w.preventDefault();
843
- const C = { ...E, keys: b };
844
- f.current = C, M.spanselect.dispatchEvent(u, C);
846
+ const C = { ...E, keys: x };
847
+ d.current = C, M.spanselect.dispatchEvent(u, C);
845
848
  }
846
849
  }, v = (w) => {
847
- y.current(
850
+ p.current(
848
851
  w,
849
- (b, { cssX: S, cssY: E }, C) => {
850
- const P = p.current;
851
- if (!P || !b.x || !b.y) return;
852
- const k = c.current, z = P.xRangeCss.start, ae = S, le = P.yRangeCss.start, ue = E, ee = F(k, b.x.scaleId);
852
+ (x, { cssX: S, cssY: E }, C) => {
853
+ const P = y.current;
854
+ if (!P || !x.x || !x.y) return;
855
+ const D = r.current, z = P.xRangeCss.start, ae = S, le = P.yRangeCss.start, ue = E, ee = F(D, x.x.scaleId);
853
856
  if (!ee) return;
854
- const te = F(k, b.y.scaleId);
857
+ const te = F(D, x.y.scaleId);
855
858
  if (!te) return;
856
- p.current = {
859
+ y.current = {
857
860
  xRangeCss: { start: z, end: ae },
858
861
  yRangeCss: { start: le, end: ue }
859
862
  };
860
- let q = "below_threshold";
863
+ let W = "below_threshold";
861
864
  const he = Math.abs(le - ue), fe = Math.abs(z - ae);
862
- he < 10 && fe < 10 ? q = "below_threshold" : he > 30 && fe > 30 ? q = "box" : he > fe ? q = "y" : q = "x";
865
+ he < 10 && fe < 10 ? W = "below_threshold" : he > 30 && fe > 30 ? W = "box" : he > fe ? W = "y" : W = "x";
863
866
  const Te = X(
864
- k,
865
- V(c.current, z, "css"),
867
+ D,
868
+ V(r.current, z, "css"),
866
869
  ee.id,
867
870
  "css"
868
871
  );
869
872
  if (Te === null) return;
870
873
  const Se = X(
871
- k,
872
- V(c.current, ae, "css"),
874
+ D,
875
+ V(r.current, ae, "css"),
873
876
  ee.id,
874
877
  "css"
875
878
  );
876
879
  if (Se === null) return;
877
880
  const Ce = X(
878
- k,
879
- W(c.current, le, "css"),
881
+ D,
882
+ q(r.current, le, "css"),
880
883
  te.id,
881
884
  "css"
882
885
  );
883
886
  if (Ce === null) return;
884
887
  const Pe = X(
885
- k,
886
- W(c.current, ue, "css"),
888
+ D,
889
+ q(r.current, ue, "css"),
887
890
  te.id,
888
891
  "css"
889
892
  );
@@ -891,14 +894,14 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
891
894
  const ne = Ee(
892
895
  "x",
893
896
  { scaleId: ee.id, from: Te, to: Se },
894
- c.current
897
+ r.current
895
898
  ), se = Ee(
896
899
  "y",
897
900
  { scaleId: te.id, from: Ce, to: Pe },
898
- c.current
901
+ r.current
899
902
  ), Ke = ne?.scaled, Ye = se?.scaled, Me = {
900
- mode: q,
901
- frame: c.current,
903
+ mode: W,
904
+ frame: r.current,
902
905
  completed: !1,
903
906
  x: {
904
907
  css: ne ? {
@@ -916,52 +919,52 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
916
919
  },
917
920
  keys: C
918
921
  };
919
- f.current = Me, M.spanselect.dispatchEvent(
922
+ d.current = Me, M.spanselect.dispatchEvent(
920
923
  u,
921
924
  Me
922
925
  );
923
926
  }
924
927
  );
925
- }, x = (w) => {
926
- y.current(w, (b, S, E) => {
928
+ }, b = (w) => {
929
+ p.current(w, (x, S, E) => {
927
930
  const C = N(
928
- b,
929
- c.current
931
+ x,
932
+ r.current
930
933
  );
931
934
  if (!C) return;
932
- if (Object.values(E).some((k) => k)) {
935
+ if (Object.values(E).some((D) => D)) {
933
936
  w.preventDefault();
934
- const k = Math.abs(w.deltaY) > Math.abs(w.deltaX) ? w.deltaY : w.deltaX;
937
+ const D = Math.abs(w.deltaY) > Math.abs(w.deltaX) ? w.deltaY : w.deltaX;
935
938
  M.pressandwheel.dispatchEvent(u, {
936
939
  pointer: C,
937
- frame: c.current,
940
+ frame: r.current,
938
941
  keys: E,
939
942
  deltaX: w.deltaX,
940
943
  deltaY: w.deltaY,
941
- deltaAbs: k
944
+ deltaAbs: D
942
945
  });
943
946
  }
944
947
  });
945
948
  };
946
- document.addEventListener("mouseup", h), document.addEventListener("keydown", m), document.addEventListener("keyup", m), document.addEventListener("mousemove", v);
949
+ document.addEventListener("mouseup", f), document.addEventListener("keydown", m), document.addEventListener("keyup", m), document.addEventListener("mousemove", v);
947
950
  const T = i.current;
948
- return T?.addEventListener("wheel", x, {
951
+ return T?.addEventListener("wheel", b, {
949
952
  passive: !1
950
953
  }), () => {
951
- document.removeEventListener("mouseup", h), document.removeEventListener("keydown", m), document.removeEventListener("keyup", m), document.removeEventListener("mousemove", v), T?.removeEventListener("wheel", x);
954
+ document.removeEventListener("mouseup", f), document.removeEventListener("keydown", m), document.removeEventListener("keyup", m), document.removeEventListener("mousemove", v), T?.removeEventListener("wheel", b);
952
955
  };
953
- }, [c, u, l, y]), L("sync_move", l, (h) => {
954
- const m = h.positions ? N(
955
- h.positions,
956
- c.current
956
+ }, [r, u, l, p]), L("sync_move", l, (f) => {
957
+ const m = f.positions ? N(
958
+ f.positions,
959
+ r.current
957
960
  ) : null;
958
- a.current = h, M.move.dispatchEvent(u, {
959
- frame: c.current,
961
+ a.current = f, M.move.dispatchEvent(u, {
962
+ frame: r.current,
960
963
  pointer: m ?? null,
961
- keys: h.keys,
962
- source: h.originInteractionsId === u ? "own" : "sync"
964
+ keys: f.keys,
965
+ source: f.originInteractionsId === u ? "own" : "sync"
963
966
  });
964
- }), /* @__PURE__ */ R(
967
+ }), /* @__PURE__ */ A(
965
968
  "div",
966
969
  {
967
970
  ref: i,
@@ -969,114 +972,114 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
969
972
  className: t,
970
973
  style: {
971
974
  position: "absolute",
972
- left: r.chartAreaCSS.x,
973
- top: r.chartAreaCSS.y,
974
- width: r.chartAreaCSS.width,
975
- height: r.chartAreaCSS.height,
975
+ left: c.chartAreaCSS.x,
976
+ top: c.chartAreaCSS.y,
977
+ width: c.chartAreaCSS.width,
978
+ height: c.chartAreaCSS.height,
976
979
  zIndex: 25,
977
980
  ...n
978
981
  },
979
- onDragStart: (h) => {
980
- h.preventDefault();
982
+ onDragStart: (f) => {
983
+ f.preventDefault();
981
984
  },
982
- onClick: (h) => {
983
- d(h, (m, v, x) => {
985
+ onClick: (f) => {
986
+ h(f, (m, v, b) => {
984
987
  const T = N(
985
988
  m,
986
- c.current
989
+ r.current
987
990
  );
988
991
  T && M.click.dispatchEvent(u, {
989
992
  pointer: T,
990
- frame: c.current,
991
- keys: x
993
+ frame: r.current,
994
+ keys: b
992
995
  });
993
996
  });
994
997
  },
995
- onMouseLeave: (h) => {
996
- d(h, (m, v, x) => {
998
+ onMouseLeave: (f) => {
999
+ h(f, (m, v, b) => {
997
1000
  M.sync_move.dispatchEvent(l, {
998
1001
  positions: null,
999
- keys: x,
1002
+ keys: b,
1000
1003
  originInteractionsId: u
1001
1004
  });
1002
1005
  });
1003
1006
  },
1004
- onMouseMove: (h) => {
1005
- d(h, (m, v, x) => {
1007
+ onMouseMove: (f) => {
1008
+ h(f, (m, v, b) => {
1006
1009
  M.sync_move.dispatchEvent(l, {
1007
1010
  positions: m,
1008
- keys: x,
1011
+ keys: b,
1009
1012
  originInteractionsId: u
1010
1013
  });
1011
1014
  });
1012
1015
  },
1013
- onMouseDown: (h) => {
1014
- d(h, (m, { cssX: v, cssY: x }, T) => {
1016
+ onMouseDown: (f) => {
1017
+ h(f, (m, { cssX: v, cssY: b }, T) => {
1015
1018
  const w = N(
1016
1019
  m,
1017
- c.current
1020
+ r.current
1018
1021
  );
1019
1022
  w && (M.mousedown.dispatchEvent(u, {
1020
1023
  pointer: w,
1021
- frame: c.current,
1024
+ frame: r.current,
1022
1025
  keys: T
1023
- }), p.current = {
1026
+ }), y.current = {
1024
1027
  xRangeCss: { start: v, end: v },
1025
- yRangeCss: { start: x, end: x }
1028
+ yRangeCss: { start: b, end: b }
1026
1029
  });
1027
1030
  });
1028
1031
  },
1029
- onMouseUp: (h) => {
1030
- d(h, (m, v, x) => {
1032
+ onMouseUp: (f) => {
1033
+ h(f, (m, v, b) => {
1031
1034
  const T = N(
1032
1035
  m,
1033
- c.current
1036
+ r.current
1034
1037
  );
1035
1038
  if (!T) return;
1036
1039
  M.mouseup.dispatchEvent(u, {
1037
- frame: c.current,
1040
+ frame: r.current,
1038
1041
  pointer: T,
1039
- keys: x
1042
+ keys: b
1040
1043
  });
1041
- const w = f.current;
1042
- f.current = null;
1043
- const b = p.current;
1044
- if (p.current = null, b && w) {
1044
+ const w = d.current;
1045
+ d.current = null;
1046
+ const x = y.current;
1047
+ if (y.current = null, x && w) {
1045
1048
  const S = {
1046
1049
  ...w,
1047
- keys: x,
1050
+ keys: b,
1048
1051
  completed: !0
1049
1052
  };
1050
- f.current = null, M.spanselect.dispatchEvent(
1053
+ d.current = null, M.spanselect.dispatchEvent(
1051
1054
  u,
1052
1055
  S
1053
1056
  );
1054
1057
  }
1055
1058
  });
1056
1059
  },
1057
- onContextMenu: (h) => {
1058
- h.preventDefault(), d(h, (m, v, x) => {
1060
+ onContextMenu: (f) => {
1061
+ f.preventDefault(), h(f, (m, v, b) => {
1059
1062
  const T = N(
1060
1063
  m,
1061
- c.current
1064
+ r.current
1062
1065
  );
1063
1066
  T && M.contextmenu.dispatchEvent(u, {
1064
- frame: c.current,
1067
+ frame: r.current,
1065
1068
  pointer: T,
1066
- keys: x
1069
+ keys: b
1067
1070
  });
1068
1071
  });
1069
1072
  },
1070
- onDoubleClick: (h) => {
1071
- d(h, (m, v, x) => {
1073
+ onDoubleClick: (f) => {
1074
+ h(f, (m, v, b) => {
1072
1075
  const T = N(
1073
1076
  m,
1074
- c.current
1077
+ r.current
1075
1078
  );
1076
1079
  T && M.dblclick.dispatchEvent(u, {
1077
- frame: c.current,
1080
+ frame: r.current,
1078
1081
  pointer: T,
1079
- keys: x
1082
+ keys: b
1080
1083
  });
1081
1084
  });
1082
1085
  },
@@ -1085,87 +1088,87 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
1085
1088
  );
1086
1089
  }, Yt = ({ data: e, renderTooltip: t, xScaleId: n }) => {
1087
1090
  const [s, o] = B(null);
1088
- xe("move", (r) => {
1089
- o(r);
1091
+ be("move", (c) => {
1092
+ o(c);
1090
1093
  });
1091
1094
  const i = Q(() => {
1092
1095
  if (!s)
1093
1096
  return null;
1094
- const { frame: r, pointer: c } = s, u = c?.scaled[n];
1095
- if (u === void 0 || !F(r, n))
1097
+ const { frame: c, pointer: r } = s, u = r?.scaled[n];
1098
+ if (u === void 0 || !F(c, n))
1096
1099
  return null;
1097
- const p = [];
1098
- let f = u;
1100
+ const y = [];
1101
+ let d = u;
1099
1102
  for (const a of e) {
1100
- let g = null, d = 1 / 0;
1103
+ let g = null, h = 1 / 0;
1101
1104
  for (const [m, v] of a.points.entries()) {
1102
- if (!de(r, v.x, n) || !de(r, v.y, a.yScaleId))
1105
+ if (!de(c, v.x, n) || !de(c, v.y, a.yScaleId))
1103
1106
  continue;
1104
- const x = Math.abs(v.x - u);
1105
- x < d && (d = x, g = m);
1107
+ const b = Math.abs(v.x - u);
1108
+ b < h && (h = b, g = m);
1106
1109
  }
1107
- const y = a.points[g ?? -1], h = ge(r, d, n, "css");
1108
- if (!y || h === null || h > 30) {
1109
- p.push({ seriesId: a.seriesId, y: null });
1110
+ const p = a.points[g ?? -1], f = ge(c, h, n, "css");
1111
+ if (!p || f === null || f > 30) {
1112
+ y.push({ seriesId: a.seriesId, y: null });
1110
1113
  continue;
1111
1114
  }
1112
- f = y.x, p.push({
1115
+ d = p.x, y.push({
1113
1116
  seriesId: a.seriesId,
1114
- y: y.y
1117
+ y: p.y
1115
1118
  });
1116
1119
  }
1117
1120
  return {
1118
- frame: r,
1119
- x: f,
1120
- points: p
1121
+ frame: c,
1122
+ x: d,
1123
+ points: y
1121
1124
  };
1122
1125
  }, [e, s, n]);
1123
1126
  return t(i);
1124
1127
  }, Bt = ({ makeXStyle: e, makeXClassName: t, makeYStyle: n, makeYClassName: s }) => {
1125
1128
  const [o, i] = B(null);
1126
- if (xe("move", (a) => {
1129
+ if (be("move", (a) => {
1127
1130
  i(a);
1128
1131
  }), !o)
1129
1132
  return null;
1130
- const { frame: r, pointer: c } = o, u = c?.cssX ?? null, l = c?.cssY ?? null, p = u ? V(r, u, "css") : 0, f = l ? W(r, l, "css") : 0;
1133
+ const { frame: c, pointer: r } = o, u = r?.cssX ?? null, l = r?.cssY ?? null, y = u ? V(c, u, "css") : 0, d = l ? q(c, l, "css") : 0;
1131
1134
  return /* @__PURE__ */ pe(Ne, { children: [
1132
- /* @__PURE__ */ R(
1135
+ /* @__PURE__ */ A(
1133
1136
  "div",
1134
1137
  {
1135
- "data-show": !!c,
1138
+ "data-show": !!r,
1136
1139
  className: t?.(o),
1137
1140
  style: {
1138
1141
  position: "absolute",
1139
1142
  left: 0,
1140
1143
  visibility: u === null ? "hidden" : "visible",
1141
- top: r.chartAreaCSS.y,
1142
- height: r.chartAreaCSS.height,
1144
+ top: c.chartAreaCSS.y,
1145
+ height: c.chartAreaCSS.height,
1143
1146
  borderColor: "red",
1144
1147
  borderLeftWidth: "1px",
1145
1148
  borderLeftStyle: "solid",
1146
1149
  pointerEvents: "none",
1147
- opacity: c ? 1 : 0,
1148
- transform: `translateX(${p}px)`,
1150
+ opacity: r ? 1 : 0,
1151
+ transform: `translateX(${y}px)`,
1149
1152
  ...e?.(o)
1150
1153
  }
1151
1154
  }
1152
1155
  ),
1153
- /* @__PURE__ */ R(
1156
+ /* @__PURE__ */ A(
1154
1157
  "div",
1155
1158
  {
1156
1159
  className: s?.(o),
1157
- "data-show": !!c,
1160
+ "data-show": !!r,
1158
1161
  style: {
1159
1162
  position: "absolute",
1160
1163
  visibility: l === null ? "hidden" : "visible",
1161
1164
  top: 0,
1162
1165
  height: 0,
1163
1166
  borderTop: "solid 1px red",
1164
- left: r.chartAreaCSS.x,
1165
- width: r.chartAreaCSS.width,
1167
+ left: c.chartAreaCSS.x,
1168
+ width: c.chartAreaCSS.width,
1166
1169
  pointerEvents: "none",
1167
- opacity: c ? 1 : 0,
1168
- transform: `translateY(${f}px)`,
1170
+ opacity: r ? 1 : 0,
1171
+ transform: `translateY(${d}px)`,
1169
1172
  ...n?.(o)
1170
1173
  }
1171
1174
  }
@@ -1173,7 +1176,7 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
1173
1176
  ] });
1174
1177
  }, zt = ({ makeClassName: e, makeStyle: t }) => {
1175
1178
  const [n, s] = B(null);
1176
- xe("spanselect", (i) => {
1179
+ be("spanselect", (i) => {
1177
1180
  s(
1178
1181
  i.mode === "below_threshold" || i.completed ? null : i
1179
1182
  );
@@ -1181,10 +1184,10 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
1181
1184
  const o = Q(() => {
1182
1185
  if (!n || n.mode === "below_threshold")
1183
1186
  return null;
1184
- const i = n.mode === "y" ? -1 / 0 : n.x.css?.from ?? -1 / 0, r = n.mode === "y" ? 1 / 0 : n.x.css?.to ?? 1 / 0, c = n.mode === "x" ? -1 / 0 : n.y.css?.from ?? -1 / 0, u = n.mode === "x" ? 1 / 0 : n.y.css?.to ?? 1 / 0, l = V(n.frame, i, "css"), p = V(n.frame, r, "css"), f = W(n.frame, c, "css"), a = W(n.frame, u, "css"), g = Math.min(l, p), d = Math.min(f, a), y = Math.abs(p - l), h = Math.abs(a - f);
1185
- return { leftPx: g, topPx: d, widthPx: y, heightPx: h };
1187
+ const i = n.mode === "y" ? -1 / 0 : n.x.css?.from ?? -1 / 0, c = n.mode === "y" ? 1 / 0 : n.x.css?.to ?? 1 / 0, r = n.mode === "x" ? -1 / 0 : n.y.css?.from ?? -1 / 0, u = n.mode === "x" ? 1 / 0 : n.y.css?.to ?? 1 / 0, l = V(n.frame, i, "css"), y = V(n.frame, c, "css"), d = q(n.frame, r, "css"), a = q(n.frame, u, "css"), g = Math.min(l, y), h = Math.min(d, a), p = Math.abs(y - l), f = Math.abs(a - d);
1188
+ return { leftPx: g, topPx: h, widthPx: p, heightPx: f };
1186
1189
  }, [n]);
1187
- return /* @__PURE__ */ R(
1190
+ return /* @__PURE__ */ A(
1188
1191
  "div",
1189
1192
  {
1190
1193
  className: n ? e?.(n) : void 0,
@@ -1202,7 +1205,7 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
1202
1205
  );
1203
1206
  }, Nt = ({ style: e, children: t, scaleId: n, ...s }) => {
1204
1207
  const o = Ue().getScale(n)?.axis;
1205
- return o ? /* @__PURE__ */ R(
1208
+ return o ? /* @__PURE__ */ A(
1206
1209
  "div",
1207
1210
  {
1208
1211
  style: {
@@ -1223,30 +1226,30 @@ const Dt = je(({ configuration: e, children: t, style: n, ...s }, o) => {
1223
1226
  formatter: t,
1224
1227
  acceptableIncrements: n
1225
1228
  } = {}) => (s, o) => {
1226
- const { min: i, max: r } = s, c = [], u = window.devicePixelRatio || 1, l = (e ?? (s.origin === "x" ? Xe : ft)) * u, p = We(
1229
+ const { min: i, max: c } = s, r = [], u = window.devicePixelRatio || 1, l = (e ?? (s.origin === "x" ? Xe : ft)) * u, y = qe(
1227
1230
  o,
1228
1231
  l,
1229
1232
  s.id,
1230
1233
  "canvas"
1231
1234
  );
1232
- if (p === null)
1235
+ if (y === null)
1233
1236
  return [];
1234
- const f = n ?? oe, a = f.find((d) => d > p) ?? f.at(-1) ?? 1;
1237
+ const d = n ?? oe, a = d.find((h) => h > y) ?? d.at(-1) ?? 1;
1235
1238
  let g = i;
1236
1239
  if (Math.abs(g % a) > Number.EPSILON) {
1237
- const d = (a - g % a) % a;
1238
- g += d;
1240
+ const h = (a - g % a) % a;
1241
+ g += h;
1239
1242
  }
1240
- for (; g <= r && c.length < 1e3; )
1241
- c.push(g), g += a;
1242
- return (t ?? mt)(c);
1243
+ for (; g <= c && r.length < 1e3; )
1244
+ r.push(g), g += a;
1245
+ return (t ?? mt)(r);
1243
1246
  }, mt = (e) => {
1244
1247
  const t = Math.max(0, Math.ceil(-Math.log10(e[1] - e[0])));
1245
1248
  return e.map((n) => ({ value: n, label: n.toFixed(t) }));
1246
1249
  }, oe = [];
1247
1250
  for (let e = -12; e <= 12; e++)
1248
1251
  oe.push(1 * 10 ** e), oe.push(2 * 10 ** e), oe.push(5 * 10 ** e);
1249
- const pt = 1, Oe = 1e3 * pt, be = 60 * Oe, J = 60 * be, ce = 24 * J, yt = 30 * ce, gt = 365 * ce, vt = [
1252
+ const pt = 1, Oe = 1e3 * pt, xe = 60 * Oe, J = 60 * xe, ce = 24 * J, yt = 30 * ce, gt = 365 * ce, vt = [
1250
1253
  // second divisors
1251
1254
  [1, "milliseconds"],
1252
1255
  [2, "milliseconds"],
@@ -1306,7 +1309,7 @@ const pt = 1, Oe = 1e3 * pt, be = 60 * Oe, J = 60 * be, ce = 24 * J, yt = 30 * c
1306
1309
  case "seconds":
1307
1310
  return t * Oe;
1308
1311
  case "minutes":
1309
- return t * be;
1312
+ return t * xe;
1310
1313
  case "hours":
1311
1314
  return t * J;
1312
1315
  case "days":
@@ -1319,10 +1322,10 @@ const pt = 1, Oe = 1e3 * pt, be = 60 * Oe, J = 60 * be, ce = 24 * J, yt = 30 * c
1319
1322
  }, wt = (e, t) => {
1320
1323
  const n = new Date(e);
1321
1324
  return n.setUTCMilliseconds(n.getUTCMilliseconds() + t), n.getTime();
1322
- }, xt = (e, t) => {
1325
+ }, bt = (e, t) => {
1323
1326
  const n = new Date(e);
1324
1327
  return n.setUTCSeconds(n.getUTCSeconds() + t), n.getTime();
1325
- }, bt = (e, t) => {
1328
+ }, xt = (e, t) => {
1326
1329
  const n = new Date(e);
1327
1330
  return n.setUTCMinutes(n.getUTCMinutes() + t), n.getTime();
1328
1331
  }, Tt = (e, t) => {
@@ -1331,7 +1334,7 @@ const pt = 1, Oe = 1e3 * pt, be = 60 * Oe, J = 60 * be, ce = 24 * J, yt = 30 * c
1331
1334
  }, St = (e, t) => {
1332
1335
  const n = new Date(e);
1333
1336
  return n.setUTCDate(n.getUTCDate() + t), n.getTime();
1334
- }, ke = (e, t) => {
1337
+ }, De = (e, t) => {
1335
1338
  const n = new Date(e);
1336
1339
  return n.setUTCMonth(n.getUTCMonth() + t), n.getTime();
1337
1340
  }, U = (e, t) => {
@@ -1340,17 +1343,17 @@ const pt = 1, Oe = 1e3 * pt, be = 60 * Oe, J = 60 * be, ce = 24 * J, yt = 30 * c
1340
1343
  case "milliseconds":
1341
1344
  return wt(e, n);
1342
1345
  case "seconds":
1343
- return xt(e, n);
1344
- case "minutes":
1345
1346
  return bt(e, n);
1347
+ case "minutes":
1348
+ return xt(e, n);
1346
1349
  case "hours":
1347
1350
  return Tt(e, n);
1348
1351
  case "days":
1349
1352
  return St(e, n);
1350
1353
  case "months":
1351
- return ke(e, n);
1354
+ return De(e, n);
1352
1355
  case "years":
1353
- return ke(e, n * 12);
1356
+ return De(e, n * 12);
1354
1357
  }
1355
1358
  };
1356
1359
  function H(e, t) {
@@ -1360,7 +1363,7 @@ function H(e, t) {
1360
1363
  const Ct = (e, t, n = "UTC") => {
1361
1364
  const [s, o] = t;
1362
1365
  let i = new Date(e);
1363
- const r = () => {
1366
+ const c = () => {
1364
1367
  i.setUTCHours(-H(i, n), 0, 0, 0);
1365
1368
  };
1366
1369
  switch (o) {
@@ -1377,17 +1380,17 @@ const Ct = (e, t, n = "UTC") => {
1377
1380
  break;
1378
1381
  case "minutes":
1379
1382
  i.setUTCMinutes(
1380
- Math.ceil(i.getTime() % J / be / s) * s,
1383
+ Math.ceil(i.getTime() % J / xe / s) * s,
1381
1384
  0,
1382
1385
  0
1383
1386
  );
1384
1387
  break;
1385
1388
  case "hours": {
1386
- const c = H(i, n);
1389
+ const r = H(i, n);
1387
1390
  i.setUTCHours(
1388
1391
  Math.ceil(
1389
- (i.getTime() + c * J) % ce / J / s
1390
- ) * s - c,
1392
+ (i.getTime() + r * J) % ce / J / s
1393
+ ) * s - r,
1391
1394
  0,
1392
1395
  0,
1393
1396
  0
@@ -1395,7 +1398,7 @@ const Ct = (e, t, n = "UTC") => {
1395
1398
  break;
1396
1399
  }
1397
1400
  case "days": {
1398
- for (r(), i.setUTCDate(
1401
+ for (c(), i.setUTCDate(
1399
1402
  1
1400
1403
  ); i.getTime() < e; )
1401
1404
  i = new Date(U(i, [s, o]));
@@ -1403,7 +1406,7 @@ const Ct = (e, t, n = "UTC") => {
1403
1406
  }
1404
1407
  case "months":
1405
1408
  case "years":
1406
- o === "months" ? i.setUTCDate(1) : o === "years" && i.setUTCMonth(0, 1), r(), i.getTime() < e && (i = new Date(U(i, [1, o])));
1409
+ o === "months" ? i.setUTCDate(1) : o === "years" && i.setUTCMonth(0, 1), c(), i.getTime() < e && (i = new Date(U(i, [1, o])));
1407
1410
  break;
1408
1411
  }
1409
1412
  return i.getTime();
@@ -1413,42 +1416,42 @@ const Ct = (e, t, n = "UTC") => {
1413
1416
  formatter: n,
1414
1417
  locale: s,
1415
1418
  showTimezone: o
1416
- } = {}) => (i, r) => {
1417
- const { min: c, max: u } = i;
1418
- if (!Number.isFinite(c) || !Number.isFinite(u))
1419
+ } = {}) => (i, c) => {
1420
+ const { min: r, max: u } = i;
1421
+ if (!Number.isFinite(r) || !Number.isFinite(u))
1419
1422
  return [];
1420
- const l = Math.floor(r.chartAreaCanvasPX.width / t) + 1, f = (u - c) / l, [a, g] = vt.find(
1421
- (v) => ie(v) >= f
1423
+ const l = Math.floor(c.chartAreaCanvasPX.width / t) + 1, d = (u - r) / l, [a, g] = vt.find(
1424
+ (v) => ie(v) >= d
1422
1425
  ) ?? [1, "milliseconds"];
1423
1426
  if (!a || !g)
1424
1427
  return [];
1425
- const d = Ct(c, [a, g], e), y = H(d, e), h = [d];
1428
+ const h = Ct(r, [a, g], e), p = H(h, e), f = [h];
1426
1429
  let m;
1427
1430
  for (; ; ) {
1428
- if (h.length > 100)
1431
+ if (f.length > 100)
1429
1432
  return [];
1430
1433
  switch (g) {
1431
1434
  case "milliseconds":
1432
1435
  case "seconds":
1433
1436
  case "minutes":
1434
1437
  case "hours": {
1435
- const v = U(d, [
1436
- h.length * a,
1438
+ const v = U(h, [
1439
+ f.length * a,
1437
1440
  g
1438
1441
  ]);
1439
1442
  m = U(v, [
1440
- y - H(v, e),
1443
+ p - H(v, e),
1441
1444
  "hours"
1442
1445
  ]);
1443
1446
  break;
1444
1447
  }
1445
1448
  case "days": {
1446
- const v = U(d, [
1447
- h.length * a,
1449
+ const v = U(h, [
1450
+ f.length * a,
1448
1451
  g
1449
1452
  ]);
1450
1453
  m = U(v, [
1451
- y - H(v, e),
1454
+ p - H(v, e),
1452
1455
  "hours"
1453
1456
  ]);
1454
1457
  break;
@@ -1456,14 +1459,14 @@ const Ct = (e, t, n = "UTC") => {
1456
1459
  case "months":
1457
1460
  case "years": {
1458
1461
  const v = U(
1459
- U(U(d, [y, "hours"]), [
1460
- h.length * a,
1462
+ U(U(h, [p, "hours"]), [
1463
+ f.length * a,
1461
1464
  g
1462
1465
  ]),
1463
- [-y, "hours"]
1466
+ [-p, "hours"]
1464
1467
  );
1465
1468
  m = U(v, [
1466
- y - H(v, e),
1469
+ p - H(v, e),
1467
1470
  "hours"
1468
1471
  ]);
1469
1472
  break;
@@ -1471,13 +1474,13 @@ const Ct = (e, t, n = "UTC") => {
1471
1474
  }
1472
1475
  if (m > u)
1473
1476
  break;
1474
- h[h.length - 1] !== m && h.push(m);
1477
+ f[f.length - 1] !== m && f.push(m);
1475
1478
  }
1476
1479
  return (n ?? Pt({
1477
1480
  locale: s,
1478
1481
  showTimezone: o,
1479
1482
  timeZone: e
1480
- }))(h);
1483
+ }))(f);
1481
1484
  }, Y = (e, t, n) => e.find((s) => s.type === n)?.value !== t.find((s) => s.type === n)?.value, Pt = ({
1482
1485
  timeZone: e = Fe,
1483
1486
  locale: t = dt,
@@ -1496,30 +1499,30 @@ const Ct = (e, t, n = "UTC") => {
1496
1499
  timeZone: e
1497
1500
  });
1498
1501
  return (o) => {
1499
- const i = o[1] - o[0], r = i < ie([1, "days"]), c = i < ie([1, "minutes"]), u = i < ie([1, "seconds"]);
1500
- return o.map((l) => ({ value: l, label: s.formatToParts(new Date(l)) })).map((l, p, f) => {
1501
- const a = f[p - 1], g = p === 0 || Y(l.label, a.label, "year"), d = p === 0 || Y(l.label, a.label, "day"), y = p === 0 || Y(l.label, a.label, "month"), h = p === 0 || Y(l.label, a.label, "hour"), m = p === 0 || Y(l.label, a.label, "timeZoneName"), v = p === 0 || Y(l.label, a.label, "minute"), x = p === 0 || Y(l.label, a.label, "second"), T = p === 0 || Y(l.label, a.label, "fractionalSecond"), w = [];
1502
- if (r && (h || v || m || x || T)) {
1503
- const b = l.label.find((P) => P.type === "hour")?.value, S = l.label.find((P) => P.type === "minute")?.value, E = l.label.find((P) => P.type === "timeZoneName")?.value;
1502
+ const i = o[1] - o[0], c = i < ie([1, "days"]), r = i < ie([1, "minutes"]), u = i < ie([1, "seconds"]);
1503
+ return o.map((l) => ({ value: l, label: s.formatToParts(new Date(l)) })).map((l, y, d) => {
1504
+ const a = d[y - 1], g = y === 0 || Y(l.label, a.label, "year"), h = y === 0 || Y(l.label, a.label, "day"), p = y === 0 || Y(l.label, a.label, "month"), f = y === 0 || Y(l.label, a.label, "hour"), m = y === 0 || Y(l.label, a.label, "timeZoneName"), v = y === 0 || Y(l.label, a.label, "minute"), b = y === 0 || Y(l.label, a.label, "second"), T = y === 0 || Y(l.label, a.label, "fractionalSecond"), w = [];
1505
+ if (c && (f || v || m || b || T)) {
1506
+ const x = l.label.find((P) => P.type === "hour")?.value, S = l.label.find((P) => P.type === "minute")?.value, E = l.label.find((P) => P.type === "timeZoneName")?.value;
1504
1507
  let C = "";
1505
- if (c) {
1506
- const P = l.label.find((z) => z.type === "second")?.value, k = l.label.find(
1508
+ if (r) {
1509
+ const P = l.label.find((z) => z.type === "second")?.value, D = l.label.find(
1507
1510
  (z) => z.type === "fractionalSecond"
1508
1511
  )?.value;
1509
- C = `:${P}` + (u ? `.${k}` : "");
1512
+ C = `:${P}` + (u ? `.${D}` : "");
1510
1513
  }
1511
1514
  w.push(
1512
- `${b}:${S}${C}` + (n && m ? ` ${E}` : "")
1515
+ `${x}:${S}${C}` + (n && m ? ` ${E}` : "")
1513
1516
  );
1514
1517
  }
1515
- return (d || y) && w.push(
1518
+ return (h || p) && w.push(
1516
1519
  [
1517
- l.label.find((b) => b.type === "month")?.value,
1518
- d && l.label.find((b) => b.type === "day")?.value
1520
+ l.label.find((x) => x.type === "month")?.value,
1521
+ h && l.label.find((x) => x.type === "day")?.value
1519
1522
  ].filter(Boolean).join(" ")
1520
- ), g && w.push(l.label.find((b) => b.type === "year")?.value), {
1523
+ ), g && w.push(l.label.find((x) => x.type === "year")?.value), {
1521
1524
  value: l.value,
1522
- label: w.filter((b) => b).join(`
1525
+ label: w.filter((x) => x).join(`
1523
1526
  `)
1524
1527
  };
1525
1528
  });
@@ -1530,7 +1533,7 @@ export {
1530
1533
  Nt as AxisOverlay,
1531
1534
  Ut as BarPlot,
1532
1535
  Ie as CANPLOT_LAYER,
1533
- Dt as CanPlot,
1536
+ Rt as CanPlot,
1534
1537
  Kt as ChartAreaInteractions,
1535
1538
  Bt as Crosshair,
1536
1539
  Le as FrameDrawer,
@@ -1544,20 +1547,20 @@ export {
1544
1547
  _ as applyStyles,
1545
1548
  re as clamp,
1546
1549
  V as clampXPosToChartArea,
1547
- W as clampYPosToChartArea,
1550
+ q as clampYPosToChartArea,
1548
1551
  O as deepEqual,
1549
1552
  mt as defaultNumericalTicksFormatter,
1550
- Rt as findClosestIndex,
1553
+ At as findClosestIndex,
1551
1554
  F as getScale,
1552
1555
  $t as makeLinearTicks,
1553
1556
  Pt as makeTimeTickFormat,
1554
1557
  jt as makeTimeTicks,
1555
1558
  X as posToVal,
1556
- We as pxToValDistance,
1557
- At as sum,
1559
+ qe as pxToValDistance,
1560
+ kt as sum,
1558
1561
  j as useDrawEffect,
1559
1562
  Ue as useFrameState,
1560
- xe as useInteractionsEvent,
1563
+ be as useInteractionsEvent,
1561
1564
  de as valFits,
1562
1565
  Z as valToPos,
1563
1566
  ge as valToPxDistance