@umriss-ui/schedule 0.1.5 → 0.1.6

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/CHANGELOG.md CHANGED
@@ -15,6 +15,16 @@ moves from here under the rule above.
15
15
 
16
16
  ---
17
17
 
18
+ ## 0.1.6 – Core 0.7.0 (Sep. 2026)
19
+
20
+ ### Changed
21
+
22
+ - **A finding in the tooltip reads core's `--u-color-danger-text`** - lighter in
23
+ the dark theme, 4.5:1 on its surface. The peer range moves to
24
+ `@umriss-ui/core` `^0.7.0`.
25
+
26
+ ---
27
+
18
28
  ## 0.1.5 – Core 0.6.0 (Sep. 2026)
19
29
 
20
30
  ### Changed
package/dist/schedule.css CHANGED
@@ -1 +1 @@
1
- @layer umriss.tokens,umriss.base,umriss.components;@layer umriss.base{._text_1hv7a_23{font-family:var(--u-font-sans);font-size:var(--u-text-md);line-height:var(--u-leading-normal);color:var(--u-color-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}._field_1hv7a_34{caret-color:var(--u-color-accent)}._scroll_1hv7a_40{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--u-color-text) 25%,transparent) transparent}._scroll_1hv7a_40::-webkit-scrollbar{width:10px;height:10px}._scroll_1hv7a_40::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--u-color-text) 22%,transparent);border-radius:var(--u-radius-full);border:3px solid transparent;background-clip:content-box}._scroll_1hv7a_40::-webkit-scrollbar-track{background:transparent}}@layer umriss.components{._ring_1hv7a_65:focus-visible{outline:none;box-shadow:var(--u-focus-ring)}@media(pointer:coarse){._field_1hv7a_34._field_1hv7a_34{font-size:16px}}._field_1hv7a_34:-webkit-autofill,._field_1hv7a_34:-webkit-autofill:hover,._field_1hv7a_34:-webkit-autofill:focus{-webkit-box-shadow:inset 0 0 0 1000px var(--u-color-surface),0 0 0 1px var(--u-edge-color-strong);-webkit-text-fill-color:var(--u-color-text);caret-color:var(--u-color-accent)}}@layer umriss.tokens,umriss.base,umriss.components;@layer umriss.components{._root_ekx9o_4,._root_ekx9o_4:before,._root_ekx9o_4:after{box-sizing:border-box}._corner_ekx9o_18,._corner_ekx9o_18:before,._corner_ekx9o_18:after{box-sizing:border-box}._dayBand_ekx9o_22,._dayBand_ekx9o_22:before,._dayBand_ekx9o_22:after{box-sizing:border-box}._tickBand_ekx9o_23,._tickBand_ekx9o_23:before,._tickBand_ekx9o_23:after{box-sizing:border-box}._day_ekx9o_22,._day_ekx9o_22:before,._day_ekx9o_22:after{box-sizing:border-box}._dayLabel_ekx9o_46,._dayLabel_ekx9o_46:before,._dayLabel_ekx9o_46:after{box-sizing:border-box}._tick_ekx9o_23,._tick_ekx9o_23:before,._tick_ekx9o_23:after{box-sizing:border-box}._tickLabel_ekx9o_64,._tickLabel_ekx9o_64:before,._tickLabel_ekx9o_64:after{box-sizing:border-box}._headers_ekx9o_72,._headers_ekx9o_72:before,._headers_ekx9o_72:after{box-sizing:border-box}._header_ekx9o_72,._header_ekx9o_72:before,._header_ekx9o_72:after{box-sizing:border-box}._headerLabel_ekx9o_90,._headerLabel_ekx9o_90:before,._headerLabel_ekx9o_90:after{box-sizing:border-box}._headerCount_ekx9o_103,._headerCount_ekx9o_103:before,._headerCount_ekx9o_103:after{box-sizing:border-box}._chevron_ekx9o_112,._chevron_ekx9o_112:before,._chevron_ekx9o_112:after{box-sizing:border-box}._plot_ekx9o_160,._plot_ekx9o_160:before,._plot_ekx9o_160:after{box-sizing:border-box}._layer_ekx9o_166,._layer_ekx9o_166:before,._layer_ekx9o_166:after{box-sizing:border-box}._grip_ekx9o_175,._grip_ekx9o_175:before,._grip_ekx9o_175:after{box-sizing:border-box}._ghostLabel_ekx9o_185,._ghostLabel_ekx9o_185:before,._ghostLabel_ekx9o_185:after{box-sizing:border-box}._finding_ekx9o_198,._finding_ekx9o_198:before,._finding_ekx9o_198:after{box-sizing:border-box}._refusal_ekx9o_206,._refusal_ekx9o_206:before,._refusal_ekx9o_206:after{box-sizing:border-box}._tooltip_ekx9o_210,._tooltip_ekx9o_210:before,._tooltip_ekx9o_210:after{box-sizing:border-box}._tooltipHead_ekx9o_228,._tooltipHead_ekx9o_228:before,._tooltipHead_ekx9o_228:after{box-sizing:border-box}._tooltipTimes_ekx9o_233,._tooltipTimes_ekx9o_233:before,._tooltipTimes_ekx9o_233:after{box-sizing:border-box}._now_ekx9o_242,._now_ekx9o_242:before,._now_ekx9o_242:after{box-sizing:border-box}._barLabel_ekx9o_256,._barLabel_ekx9o_256:before,._barLabel_ekx9o_256:after{box-sizing:border-box}._barLabelText_ekx9o_269,._barLabelText_ekx9o_269:before,._barLabelText_ekx9o_269:after{box-sizing:border-box}._root_ekx9o_4{display:grid;grid-template-rows:28px minmax(0,1fr) 28px;width:100%;font-size:var(--u-text-sm);background:var(--u-color-surface);box-shadow:var(--u-edge);border-radius:var(--u-radius-md);corner-shape:squircle;overflow:hidden;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}._corner_ekx9o_18{background:var(--u-color-surface)}._dayBand_ekx9o_22,._tickBand_ekx9o_23{position:relative;overflow:hidden;color:var(--u-color-text-muted);font-size:var(--u-text-xs)}._dayBand_ekx9o_22{border-bottom:1px solid var(--u-hairline-strong)}._tickBand_ekx9o_23{border-top:1px solid var(--u-hairline-strong)}._day_ekx9o_22{position:absolute;top:0;bottom:0;border-left:1px solid var(--u-hairline-strong);overflow:hidden}._dayLabel_ekx9o_46{position:absolute;left:var(--u-space-2);top:50%;transform:translateY(-50%);white-space:nowrap;color:var(--u-color-text);font-weight:var(--u-weight-medium)}._tick_ekx9o_23{position:absolute;top:0;bottom:0;width:1px;background:var(--u-hairline)}._tickLabel_ekx9o_64{position:absolute;top:50%;left:0;transform:translate(-50%,-50%);white-space:nowrap}._headers_ekx9o_72{position:relative;overflow:hidden;border-right:1px solid var(--u-hairline-strong)}._header_ekx9o_72{display:flex;align-items:center;gap:var(--u-space-2);padding-right:var(--u-space-3);border-bottom:1px solid var(--u-hairline);overflow:hidden;white-space:nowrap}._headerLabel_ekx9o_90{min-width:0;overflow:hidden;text-overflow:ellipsis}._header_ekx9o_72[data-row=groupHead],._header_ekx9o_72[data-row=miniature]{font-weight:var(--u-weight-medium)}._headerCount_ekx9o_103{flex:none;color:var(--u-color-text-muted);font-size:var(--u-text-xs);font-variant-numeric:tabular-nums}._chevron_ekx9o_112{flex:none;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:var(--u-radius-xs);corner-shape:squircle;background:transparent;color:var(--u-color-text-secondary);cursor:pointer}._chevron_ekx9o_112:hover{color:var(--u-color-text)}._chevron_ekx9o_112:focus-visible{outline:none;box-shadow:var(--u-focus-ring);color:var(--u-color-text)}._chevron_ekx9o_112 svg{box-sizing:border-box}._chevron_ekx9o_112 svg{transition:transform var(--u-duration-fast) var(--u-ease-standard)}._chevron_ekx9o_112 svg[data-open]{box-sizing:border-box}._chevron_ekx9o_112 svg[data-open]{transform:rotate(90deg)}@media(prefers-reduced-motion:reduce){._chevron_ekx9o_112 svg{transition:none}}._header_ekx9o_72[data-refused]{color:var(--u-color-text-muted)}._plot_ekx9o_160{position:relative;overflow:hidden;touch-action:none}._layer_ekx9o_166{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;pointer-events:none}._grip_ekx9o_175{position:absolute;width:9px;margin-left:-4px;border-radius:var(--u-radius-xs);corner-shape:squircle;background:var(--u-color-surface);box-shadow:inset 0 0 0 1.5px var(--u-color-text);cursor:ew-resize}._ghostLabel_ekx9o_185{position:absolute;display:inline-flex;gap:var(--u-space-2);padding:1px var(--u-space-2);border-radius:var(--u-radius-sm);corner-shape:squircle;background:var(--u-color-text);color:var(--u-color-surface);font-size:var(--u-text-xs);white-space:nowrap;pointer-events:none}._finding_ekx9o_198{font-weight:var(--u-weight-semibold);color:var(--u-color-danger-subtle)}._refusal_ekx9o_206{font-weight:var(--u-weight-semibold)}._tooltip_ekx9o_210{position:absolute;z-index:1;display:flex;flex-direction:column;gap:1px;max-width:260px;padding:var(--u-space-2) var(--u-space-3);border-radius:var(--u-radius-sm);corner-shape:squircle;background:var(--u-color-surface);box-shadow:var(--u-shadow-overlay);color:var(--u-color-text-secondary);font-size:var(--u-text-xs);line-height:var(--u-leading-tight);pointer-events:none;white-space:nowrap}._tooltipHead_ekx9o_228{color:var(--u-color-text);font-weight:var(--u-weight-semibold)}._tooltipTimes_ekx9o_233{color:var(--u-color-text)}._tooltip_ekx9o_210 ._finding_ekx9o_198{color:var(--u-color-danger)}._now_ekx9o_242{position:absolute;top:0;width:0;height:0;margin-left:-4px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--u-color-accent)}._barLabel_ekx9o_256{position:absolute;display:flex;align-items:center;padding:0 var(--u-space-1);overflow:hidden;font-size:var(--u-text-xs);line-height:var(--u-leading-tight);pointer-events:none}._barLabelText_ekx9o_269{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}._barLabel_ekx9o_256[data-on=dark]{color:var(--u-color-on-accent)}._barLabel_ekx9o_256[data-on=light]{color:var(--u-color-text)}}
1
+ @layer umriss.tokens,umriss.base,umriss.components;@layer umriss.base{._text_1hv7a_23{font-family:var(--u-font-sans);font-size:var(--u-text-md);line-height:var(--u-leading-normal);color:var(--u-color-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}._field_1hv7a_34{caret-color:var(--u-color-accent)}._scroll_1hv7a_40{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--u-color-text) 25%,transparent) transparent}._scroll_1hv7a_40::-webkit-scrollbar{width:10px;height:10px}._scroll_1hv7a_40::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--u-color-text) 22%,transparent);border-radius:var(--u-radius-full);border:3px solid transparent;background-clip:content-box}._scroll_1hv7a_40::-webkit-scrollbar-track{background:transparent}}@layer umriss.components{._ring_1hv7a_65:focus-visible{outline:none;box-shadow:var(--u-focus-ring)}@media(pointer:coarse){._field_1hv7a_34._field_1hv7a_34{font-size:16px}}._field_1hv7a_34:-webkit-autofill,._field_1hv7a_34:-webkit-autofill:hover,._field_1hv7a_34:-webkit-autofill:focus{-webkit-box-shadow:inset 0 0 0 1000px var(--u-color-surface),0 0 0 1px var(--u-edge-color-strong);-webkit-text-fill-color:var(--u-color-text);caret-color:var(--u-color-accent)}}@layer umriss.tokens,umriss.base,umriss.components;@layer umriss.components{._root_1lk8e_4,._root_1lk8e_4:before,._root_1lk8e_4:after{box-sizing:border-box}._corner_1lk8e_18,._corner_1lk8e_18:before,._corner_1lk8e_18:after{box-sizing:border-box}._dayBand_1lk8e_22,._dayBand_1lk8e_22:before,._dayBand_1lk8e_22:after{box-sizing:border-box}._tickBand_1lk8e_23,._tickBand_1lk8e_23:before,._tickBand_1lk8e_23:after{box-sizing:border-box}._day_1lk8e_22,._day_1lk8e_22:before,._day_1lk8e_22:after{box-sizing:border-box}._dayLabel_1lk8e_46,._dayLabel_1lk8e_46:before,._dayLabel_1lk8e_46:after{box-sizing:border-box}._tick_1lk8e_23,._tick_1lk8e_23:before,._tick_1lk8e_23:after{box-sizing:border-box}._tickLabel_1lk8e_64,._tickLabel_1lk8e_64:before,._tickLabel_1lk8e_64:after{box-sizing:border-box}._headers_1lk8e_72,._headers_1lk8e_72:before,._headers_1lk8e_72:after{box-sizing:border-box}._header_1lk8e_72,._header_1lk8e_72:before,._header_1lk8e_72:after{box-sizing:border-box}._headerLabel_1lk8e_90,._headerLabel_1lk8e_90:before,._headerLabel_1lk8e_90:after{box-sizing:border-box}._headerCount_1lk8e_103,._headerCount_1lk8e_103:before,._headerCount_1lk8e_103:after{box-sizing:border-box}._chevron_1lk8e_112,._chevron_1lk8e_112:before,._chevron_1lk8e_112:after{box-sizing:border-box}._plot_1lk8e_160,._plot_1lk8e_160:before,._plot_1lk8e_160:after{box-sizing:border-box}._layer_1lk8e_166,._layer_1lk8e_166:before,._layer_1lk8e_166:after{box-sizing:border-box}._grip_1lk8e_175,._grip_1lk8e_175:before,._grip_1lk8e_175:after{box-sizing:border-box}._ghostLabel_1lk8e_185,._ghostLabel_1lk8e_185:before,._ghostLabel_1lk8e_185:after{box-sizing:border-box}._finding_1lk8e_198,._finding_1lk8e_198:before,._finding_1lk8e_198:after{box-sizing:border-box}._refusal_1lk8e_206,._refusal_1lk8e_206:before,._refusal_1lk8e_206:after{box-sizing:border-box}._tooltip_1lk8e_210,._tooltip_1lk8e_210:before,._tooltip_1lk8e_210:after{box-sizing:border-box}._tooltipHead_1lk8e_228,._tooltipHead_1lk8e_228:before,._tooltipHead_1lk8e_228:after{box-sizing:border-box}._tooltipTimes_1lk8e_233,._tooltipTimes_1lk8e_233:before,._tooltipTimes_1lk8e_233:after{box-sizing:border-box}._now_1lk8e_242,._now_1lk8e_242:before,._now_1lk8e_242:after{box-sizing:border-box}._barLabel_1lk8e_256,._barLabel_1lk8e_256:before,._barLabel_1lk8e_256:after{box-sizing:border-box}._barLabelText_1lk8e_269,._barLabelText_1lk8e_269:before,._barLabelText_1lk8e_269:after{box-sizing:border-box}._root_1lk8e_4{display:grid;grid-template-rows:28px minmax(0,1fr) 28px;width:100%;font-size:var(--u-text-sm);background:var(--u-color-surface);box-shadow:var(--u-edge);border-radius:var(--u-radius-md);corner-shape:squircle;overflow:hidden;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}._corner_1lk8e_18{background:var(--u-color-surface)}._dayBand_1lk8e_22,._tickBand_1lk8e_23{position:relative;overflow:hidden;color:var(--u-color-text-muted);font-size:var(--u-text-xs)}._dayBand_1lk8e_22{border-bottom:1px solid var(--u-hairline-strong)}._tickBand_1lk8e_23{border-top:1px solid var(--u-hairline-strong)}._day_1lk8e_22{position:absolute;top:0;bottom:0;border-left:1px solid var(--u-hairline-strong);overflow:hidden}._dayLabel_1lk8e_46{position:absolute;left:var(--u-space-2);top:50%;transform:translateY(-50%);white-space:nowrap;color:var(--u-color-text);font-weight:var(--u-weight-medium)}._tick_1lk8e_23{position:absolute;top:0;bottom:0;width:1px;background:var(--u-hairline)}._tickLabel_1lk8e_64{position:absolute;top:50%;left:0;transform:translate(-50%,-50%);white-space:nowrap}._headers_1lk8e_72{position:relative;overflow:hidden;border-right:1px solid var(--u-hairline-strong)}._header_1lk8e_72{display:flex;align-items:center;gap:var(--u-space-2);padding-right:var(--u-space-3);border-bottom:1px solid var(--u-hairline);overflow:hidden;white-space:nowrap}._headerLabel_1lk8e_90{min-width:0;overflow:hidden;text-overflow:ellipsis}._header_1lk8e_72[data-row=groupHead],._header_1lk8e_72[data-row=miniature]{font-weight:var(--u-weight-medium)}._headerCount_1lk8e_103{flex:none;color:var(--u-color-text-muted);font-size:var(--u-text-xs);font-variant-numeric:tabular-nums}._chevron_1lk8e_112{flex:none;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:var(--u-radius-xs);corner-shape:squircle;background:transparent;color:var(--u-color-text-secondary);cursor:pointer}._chevron_1lk8e_112:hover{color:var(--u-color-text)}._chevron_1lk8e_112:focus-visible{outline:none;box-shadow:var(--u-focus-ring);color:var(--u-color-text)}._chevron_1lk8e_112 svg{box-sizing:border-box}._chevron_1lk8e_112 svg{transition:transform var(--u-duration-fast) var(--u-ease-standard)}._chevron_1lk8e_112 svg[data-open]{box-sizing:border-box}._chevron_1lk8e_112 svg[data-open]{transform:rotate(90deg)}@media(prefers-reduced-motion:reduce){._chevron_1lk8e_112 svg{transition:none}}._header_1lk8e_72[data-refused]{color:var(--u-color-text-muted)}._plot_1lk8e_160{position:relative;overflow:hidden;touch-action:none}._layer_1lk8e_166{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;pointer-events:none}._grip_1lk8e_175{position:absolute;width:9px;margin-left:-4px;border-radius:var(--u-radius-xs);corner-shape:squircle;background:var(--u-color-surface);box-shadow:inset 0 0 0 1.5px var(--u-color-text);cursor:ew-resize}._ghostLabel_1lk8e_185{position:absolute;display:inline-flex;gap:var(--u-space-2);padding:1px var(--u-space-2);border-radius:var(--u-radius-sm);corner-shape:squircle;background:var(--u-color-text);color:var(--u-color-surface);font-size:var(--u-text-xs);white-space:nowrap;pointer-events:none}._finding_1lk8e_198{font-weight:var(--u-weight-semibold);color:var(--u-color-danger-subtle)}._refusal_1lk8e_206{font-weight:var(--u-weight-semibold)}._tooltip_1lk8e_210{position:absolute;z-index:1;display:flex;flex-direction:column;gap:1px;max-width:260px;padding:var(--u-space-2) var(--u-space-3);border-radius:var(--u-radius-sm);corner-shape:squircle;background:var(--u-color-surface);box-shadow:var(--u-shadow-overlay);color:var(--u-color-text-secondary);font-size:var(--u-text-xs);line-height:var(--u-leading-tight);pointer-events:none;white-space:nowrap}._tooltipHead_1lk8e_228{color:var(--u-color-text);font-weight:var(--u-weight-semibold)}._tooltipTimes_1lk8e_233{color:var(--u-color-text)}._tooltip_1lk8e_210 ._finding_1lk8e_198{color:var(--u-color-danger-text)}._now_1lk8e_242{position:absolute;top:0;width:0;height:0;margin-left:-4px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--u-color-accent)}._barLabel_1lk8e_256{position:absolute;display:flex;align-items:center;padding:0 var(--u-space-1);overflow:hidden;font-size:var(--u-text-xs);line-height:var(--u-leading-tight);pointer-events:none}._barLabelText_1lk8e_269{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}._barLabel_1lk8e_256[data-on=dark]{color:var(--u-color-on-accent)}._barLabel_1lk8e_256[data-on=light]{color:var(--u-color-text)}}
package/dist/schedule.js CHANGED
@@ -3,7 +3,7 @@ var He = Object.defineProperty;
3
3
  var Ye = (n, t, e) => t in n ? He(n, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[t] = e;
4
4
  var f = (n, t, e) => Ye(n, typeof t != "symbol" ? t + "" : t, e);
5
5
  import { jsxs as Y, Fragment as zt, jsx as w } from "react/jsx-runtime";
6
- import { useContext as fe, createContext as pe, useRef as $, useEffect as B, forwardRef as Xe, useState as it, useId as Ke, useLayoutEffect as vt, useImperativeHandle as Ue, useSyncExternalStore as We, useMemo as z } from "react";
6
+ import { useContext as fe, createContext as pe, useRef as x, useEffect as B, forwardRef as Xe, useState as it, useId as Ke, useLayoutEffect as vt, useImperativeHandle as Ue, useSyncExternalStore as We, useMemo as z } from "react";
7
7
  import { toOperatingTimeClamped as O, resolveColours as ze, removedIntervals as qe, localOffset as me, MINUTE as q, calendarFrom as j, toWallClock as U, DAY as st, timeStep as je, operatingTimeTicks as Ve, HOUR as Tt, LinearScale as Ze, subscribeTheme as Je } from "@umriss-ui/charts";
8
8
  import { useFormats as ge, useWording as ke } from "@umriss-ui/core";
9
9
  const we = pe(null), ve = pe(null);
@@ -17,7 +17,7 @@ function Qe(n) {
17
17
  return t;
18
18
  }
19
19
  function Ct(n, t, e, s, o) {
20
- const i = Qe(n), r = $(null);
20
+ const i = Qe(n), r = x(null);
21
21
  B(() => (r.current = e(i, t), () => {
22
22
  r.current !== null && o(i, r.current), r.current = null;
23
23
  }), [i]), B(() => {
@@ -63,12 +63,12 @@ function qt(n) {
63
63
  if (g === null) return;
64
64
  const { row: m, lanes: C } = g, L = l[m], E = Math.max(L.height, C.length * ns + 2 * yt);
65
65
  l[m] = { ...L, height: E }, b += E - L.height;
66
- const F = E - 2 * yt, G = Math.max(os, Math.floor(F / C.length));
66
+ const F = E - 2 * yt, R = Math.max(os, Math.floor(F / C.length));
67
67
  C.forEach((V, ot) => {
68
68
  const W = c.get(V) ?? [];
69
69
  d.set(V, {
70
- top: L.top + yt + ot * G,
71
- height: G,
70
+ top: L.top + yt + ot * R,
71
+ height: R,
72
72
  miniature: !0,
73
73
  group: W[W.length - 1]
74
74
  });
@@ -81,7 +81,7 @@ function qt(n) {
81
81
  continue;
82
82
  }
83
83
  S();
84
- const E = C.filter((F, G) => p[G] === F).length;
84
+ const E = C.filter((F, R) => p[R] === F).length;
85
85
  p = p.slice(0, E);
86
86
  for (const F of C.slice(E)) {
87
87
  if (p.push(F), F === L) break;
@@ -96,7 +96,7 @@ function qt(n) {
96
96
  });
97
97
  }
98
98
  if (L !== void 0) {
99
- const F = C.indexOf(L), G = I({
99
+ const F = C.indexOf(L), R = I({
100
100
  kind: "miniature",
101
101
  lane: void 0,
102
102
  group: L,
@@ -105,7 +105,7 @@ function qt(n) {
105
105
  lanes: (a.get(L) ?? []).length,
106
106
  height: o
107
107
  });
108
- g = { group: L, row: G, lanes: [m.id] };
108
+ g = { group: L, row: R, lanes: [m.id] };
109
109
  continue;
110
110
  }
111
111
  I({ kind: "lane", lane: m.id, group: C[C.length - 1], depth: C.length, within: C, lanes: 1, height: o }), d.set(m.id, {
@@ -181,7 +181,7 @@ function An(n, t) {
181
181
  };
182
182
  }
183
183
  const as = 6, Me = 3, et = 2, Vt = 3, Zt = 3;
184
- function P(n, t) {
184
+ function N(n, t) {
185
185
  return Math.round(n.scale.toPx(O(t, n.calendar)));
186
186
  }
187
187
  function ct(n, t) {
@@ -200,10 +200,10 @@ function Te(n, t, e, s, o) {
200
200
  depth: o,
201
201
  y: u + (s.miniature ? 0 : Math.min(o, Zt) * Vt),
202
202
  height: a,
203
- outerFrom: P(n, c.from),
204
- mainFrom: P(n, t.from),
205
- mainTo: P(n, t.to),
206
- outerTo: P(n, c.to)
203
+ outerFrom: N(n, c.from),
204
+ mainFrom: N(n, t.from),
205
+ mainTo: N(n, t.to),
206
+ outerTo: N(n, c.to)
207
207
  };
208
208
  }
209
209
  function Ce(n, t, e) {
@@ -231,7 +231,7 @@ function Qt(n, t, e) {
231
231
  return n === "centre" || e.y === t.y ? s : Math.round(e.y > t.y ? t.y + t.height - 1 : t.y + 1);
232
232
  }
233
233
  function bt(n, t, e, s, o) {
234
- const i = t.route ?? o.route, r = t.attach ?? o.attach, a = t.ends ?? o.ends, u = P(n, St(t, e.subtask)), c = P(n, It(t, s.subtask)), l = Qt(r, e, s), d = Qt(r, s, e);
234
+ const i = t.route ?? o.route, r = t.attach ?? o.attach, a = t.ends ?? o.ends, u = N(n, St(t, e.subtask)), c = N(n, It(t, s.subtask)), l = Qt(r, e, s), d = Qt(r, s, e);
235
235
  if (i === "straight")
236
236
  return { transport: t, kind: i, ends: a, x1: u, y1: l, x2: c, y2: d, c1x: u, c2x: c, points: [u, l, c, d] };
237
237
  if (i === "orthogonal") {
@@ -463,7 +463,7 @@ function ks(n, t) {
463
463
  for (const a of s.boxes) r.has(a.subtask) && Ie(n, t, a, 1);
464
464
  }
465
465
  for (const i of e.overlaps) Ae(n, t, o, i);
466
- Fs(n, t, o), Ds(n, t);
466
+ Fs(n, t, o), Ps(n, t);
467
467
  }
468
468
  function ws(n, t) {
469
469
  const { view: e, hover: s } = t, o = e.viewport();
@@ -634,7 +634,7 @@ function Fs(n, t, e) {
634
634
  if (a === null || !a.miniature) continue;
635
635
  const u = nt(e.rows, a.top + e.scrollY);
636
636
  if (u === null) continue;
637
- const c = P(e, o.arrival), l = Math.max(c + 2, P(e, o.arrival + o.shortBy));
637
+ const c = N(e, o.arrival), l = Math.max(c + 2, N(e, o.arrival + o.shortBy));
638
638
  n.fillRect(c, u.top - e.scrollY + 1, l - c, 3);
639
639
  }
640
640
  }
@@ -642,7 +642,7 @@ function Fs(n, t, e) {
642
642
  function Ae(n, t, e, s) {
643
643
  const o = ct(e, s.lane);
644
644
  if (o === null) return;
645
- const i = P(e, s.from), r = Math.max(i + 2, P(e, s.to));
645
+ const i = N(e, s.from), r = Math.max(i + 2, N(e, s.to));
646
646
  if (n.fillStyle = t.colours.alarm, n.globalAlpha = 0.14, n.fillRect(i, o.top + 1, r - i, Math.max(1, o.height - 2)), n.globalAlpha = 1, n.fillRect(i, o.top + 1, r - i, Math.min(3, Math.max(1, o.height - 1))), o.miniature) {
647
647
  const a = nt(e.rows, o.top + e.scrollY);
648
648
  a !== null && n.fillRect(i, a.top - e.scrollY + 1, r - i, 3);
@@ -650,10 +650,10 @@ function Ae(n, t, e, s) {
650
650
  }
651
651
  function Es(n, t, e) {
652
652
  const { colours: s } = t, o = ht(e.subtask.appearance), i = Ft(o, s.tasks.get(e.subtask.task) ?? s.muted, s);
653
- n.globalAlpha = xs, n.fillStyle = i.onDark ? s.onAccent : s.text, n.fillRect(e.outerFrom, e.y, Math.max(1, e.outerTo - e.outerFrom), e.height), n.globalAlpha = 1;
653
+ n.globalAlpha = Ds, n.fillStyle = i.onDark ? s.onAccent : s.text, n.fillRect(e.outerFrom, e.y, Math.max(1, e.outerTo - e.outerFrom), e.height), n.globalAlpha = 1;
654
654
  }
655
- const xs = 0.2;
656
- function Ds(n, t) {
655
+ const Ds = 0.2;
656
+ function Ps(n, t) {
657
657
  const e = t.selectedTask;
658
658
  if (e !== null) {
659
659
  n.strokeStyle = t.colours.text;
@@ -666,22 +666,22 @@ function Ds(n, t) {
666
666
  }
667
667
  }
668
668
  }
669
- const rt = 32, Ps = 18;
669
+ const rt = 32, Ns = 18;
670
670
  function ie(n, t) {
671
671
  if (!(t > 2 * rt)) return 0;
672
672
  const e = rt - n, s = n - (t - rt), o = Math.max(e, s);
673
673
  if (o <= 0) return 0;
674
- const i = Math.min(1, o / rt), r = Ps * i * i;
674
+ const i = Math.min(1, o / rt), r = Ns * i * i;
675
675
  return e > 0 ? -r : r;
676
676
  }
677
- function Ns(n, t, e, s) {
677
+ function Gs(n, t, e, s) {
678
678
  const o = /* @__PURE__ */ new Set();
679
679
  if (s === void 0) return o;
680
680
  for (const i of n)
681
681
  i !== e && (s(t, i) || o.add(i));
682
682
  return o;
683
683
  }
684
- function Gs(n, t) {
684
+ function Rs(n, t) {
685
685
  const { step: e, offset: s } = typeof t == "number" ? { step: t, offset: 0 } : t;
686
686
  if (!(e > 0) || !Number.isFinite(n)) return n;
687
687
  const o = me(n) + s;
@@ -700,7 +700,7 @@ function le(n) {
700
700
  return "nothing";
701
701
  }
702
702
  }
703
- const he = 3, Rs = 10, $s = 600;
703
+ const he = 3, $s = 10, xs = 600;
704
704
  class Bs {
705
705
  constructor(t) {
706
706
  f(this, "gesture", { kind: "none" });
@@ -807,7 +807,7 @@ class Bs {
807
807
  group: s,
808
808
  timer: setTimeout(() => {
809
809
  this.resting = null, e.openForGesture = /* @__PURE__ */ new Set([...e.openForGesture, s]), this.host.viewChanged();
810
- }, $s)
810
+ }, xs)
811
811
  }));
812
812
  }
813
813
  stopResting() {
@@ -838,7 +838,7 @@ class Bs {
838
838
  askRefused(t, e) {
839
839
  if (!this.host.view.options.intents.includes(e === null ? "place" : "lane")) return ae;
840
840
  const s = this.host.data.lanes.map((o) => o.id);
841
- return Ns(s, t, e, this.host.handlers().canMoveTo);
841
+ return Gs(s, t, e, this.host.handlers().canMoveTo);
842
842
  }
843
843
  /** What a press at a point would start, given the intents the caller handles. */
844
844
  modeAt(t, e) {
@@ -863,7 +863,7 @@ class Bs {
863
863
  }
864
864
  const o = this.gesture;
865
865
  if (o.kind === "pending" && o.pointerId === t.pointerId) {
866
- if (Math.hypot(e - o.x0, s - o.y0) < (t.pointerType === "touch" ? Rs : he)) return;
866
+ if (Math.hypot(e - o.x0, s - o.y0) < (t.pointerType === "touch" ? $s : he)) return;
867
867
  if (o.mode === "pan" || o.subtask === null)
868
868
  this.gesture = { kind: "pan", pointerId: o.pointerId, lastX: o.x0, lastY: o.y0 }, this.setCursor("grabbing");
869
869
  else {
@@ -1132,7 +1132,7 @@ class Bs {
1132
1132
  on to the seam, where time counts again. An intent never asks for a time
1133
1133
  the plant does not run. */
1134
1134
  snapInside(t, e) {
1135
- const s = Gs(t, e), o = j(this.host.view.options.calendar);
1135
+ const s = Rs(t, e), o = j(this.host.view.options.calendar);
1136
1136
  return o.intervals.length === 0 ? s : U(O(s, o), o);
1137
1137
  }
1138
1138
  intentsOf(t, e, s) {
@@ -1612,7 +1612,7 @@ class zs {
1612
1612
  const s = (a = this.plot) == null ? void 0 : a.getBoundingClientRect();
1613
1613
  if (s === void 0) return null;
1614
1614
  const o = this.view.viewport(), i = e === void 0 ? null : ct(o, e), r = i === null ? 0 : i.top + i.height / 2;
1615
- return { x: s.left + P(o, t), y: s.top + r };
1615
+ return { x: s.left + N(o, t), y: s.top + r };
1616
1616
  }
1617
1617
  requestDraw() {
1618
1618
  this.frame !== 0 || this.dataCanvas === null || typeof requestAnimationFrame != "function" || (this.frame = requestAnimationFrame(() => {
@@ -1637,7 +1637,7 @@ class zs {
1637
1637
  ks(s, i), ws(o, i);
1638
1638
  }
1639
1639
  }
1640
- const qs = "_root_ekx9o_4 _text_1hv7a_23", js = "_corner_ekx9o_18", Vs = "_dayBand_ekx9o_22", Zs = "_tickBand_ekx9o_23", Js = "_day_ekx9o_22", Qs = "_dayLabel_ekx9o_46", tn = "_tick_ekx9o_23", en = "_tickLabel_ekx9o_64", sn = "_headers_ekx9o_72", nn = "_header_ekx9o_72", on = "_headerLabel_ekx9o_90", rn = "_headerCount_ekx9o_103", an = "_chevron_ekx9o_112", ln = "_plot_ekx9o_160", hn = "_layer_ekx9o_166", un = "_grip_ekx9o_175", cn = "_ghostLabel_ekx9o_185", dn = "_finding_ekx9o_198", fn = "_refusal_ekx9o_206", pn = "_tooltip_ekx9o_210", mn = "_tooltipHead_ekx9o_228", gn = "_tooltipTimes_ekx9o_233", kn = "_now_ekx9o_242", wn = "_barLabel_ekx9o_256", vn = "_barLabelText_ekx9o_269", v = {
1640
+ const qs = "_root_1lk8e_4 _text_1hv7a_23", js = "_corner_1lk8e_18", Vs = "_dayBand_1lk8e_22", Zs = "_tickBand_1lk8e_23", Js = "_day_1lk8e_22", Qs = "_dayLabel_1lk8e_46", tn = "_tick_1lk8e_23", en = "_tickLabel_1lk8e_64", sn = "_headers_1lk8e_72", nn = "_header_1lk8e_72", on = "_headerLabel_1lk8e_90", rn = "_headerCount_1lk8e_103", an = "_chevron_1lk8e_112", ln = "_plot_1lk8e_160", hn = "_layer_1lk8e_166", un = "_grip_1lk8e_175", cn = "_ghostLabel_1lk8e_185", dn = "_finding_1lk8e_198", fn = "_refusal_1lk8e_206", pn = "_tooltip_1lk8e_210", mn = "_tooltipHead_1lk8e_228", gn = "_tooltipTimes_1lk8e_233", kn = "_now_1lk8e_242", wn = "_barLabel_1lk8e_256", vn = "_barLabelText_1lk8e_269", v = {
1641
1641
  root: qs,
1642
1642
  corner: js,
1643
1643
  dayBand: Vs,
@@ -1711,35 +1711,35 @@ const bn = [], ce = { min: Tt, max: 28 * st }, Mn = [], de = 20, Fn = Xe(functio
1711
1711
  onDomainChange: L,
1712
1712
  placing: E,
1713
1713
  route: F = "curve",
1714
- attach: G = "centre",
1714
+ attach: R = "centre",
1715
1715
  ends: V = "dot",
1716
1716
  label: ot,
1717
1717
  tooltip: W,
1718
1718
  now: Z,
1719
1719
  className: Et,
1720
1720
  style: Ee,
1721
- children: xe
1722
- } = t, [k] = it(() => new zs()), xt = Ke(), Dt = $(null), Pt = $(null), Nt = $(null), Gt = $(null), X = ge(), K = ke(), [dt, ft] = o, Rt = (c == null ? void 0 : c.min) ?? ce.min, $t = (c == null ? void 0 : c.max) ?? ce.max, Bt = $(null), Ot = typeof l == "object" ? l.step : null, Ht = typeof l == "object" ? l.offset : null, Yt = typeof l == "object" ? null : l, [De, Pe] = it(() => Date.now());
1721
+ children: De
1722
+ } = t, [k] = it(() => new zs()), Dt = Ke(), Pt = x(null), Nt = x(null), Gt = x(null), Rt = x(null), X = ge(), K = ke(), [dt, ft] = o, $t = (c == null ? void 0 : c.min) ?? ce.min, xt = (c == null ? void 0 : c.max) ?? ce.max, Bt = x(null), Ot = typeof l == "object" ? l.step : null, Ht = typeof l == "object" ? l.offset : null, Yt = typeof l == "object" ? null : l, [Pe, Ne] = it(() => Date.now());
1723
1723
  B(() => {
1724
1724
  if (Z !== !0) return;
1725
- const h = setInterval(() => Pe(Date.now()), q);
1725
+ const h = setInterval(() => Ne(Date.now()), q);
1726
1726
  return () => clearInterval(h);
1727
1727
  }, [Z]);
1728
- const Xt = Z === !0 ? De : typeof Z == "number" ? Z : null;
1728
+ const Xt = Z === !0 ? Pe : typeof Z == "number" ? Z : null;
1729
1729
  vt(() => {
1730
1730
  const h = `${dt}|${ft}`, y = Bt.current !== h;
1731
1731
  Bt.current = h;
1732
1732
  const A = Yt ?? { step: Ot ?? 0, offset: Ht ?? 0 };
1733
1733
  k.setOptions(
1734
- { laneHeight: r, calendar: u, zoomLimits: { min: Rt, max: $t }, snap: A, intents: d, now: Xt, route: F, attach: G, ends: V },
1734
+ { laneHeight: r, calendar: u, zoomLimits: { min: $t, max: xt }, snap: A, intents: d, now: Xt, route: F, attach: R, ends: V },
1735
1735
  y ? [dt, ft] : null
1736
1736
  );
1737
- }, [k, dt, ft, r, u, Rt, $t, Yt, Ot, Ht, d, Xt, F, G, V]), B(() => {
1737
+ }, [k, dt, ft, r, u, $t, xt, Yt, Ot, Ht, d, Xt, F, R, V]), B(() => {
1738
1738
  k.setHandlers({ onIntent: p, canMoveTo: g, onInteraction: b, onSelectedTaskChange: _, onCollapsedGroupsChange: C, onDomainChange: L });
1739
1739
  }, [k, p, g, b, _, C, L]);
1740
- const Ne = $(m);
1740
+ const Ge = x(m);
1741
1741
  B(() => {
1742
- const h = Ne.current;
1742
+ const h = Ge.current;
1743
1743
  h !== void 0 && k.setDefaultCollapsedGroups(h);
1744
1744
  }, [k]), B(() => {
1745
1745
  k.setCollapsedGroups(S);
@@ -1756,64 +1756,64 @@ const bn = [], ce = { min: Tt, max: 28 * st }, Mn = [], de = 20, Fn = Xe(functio
1756
1756
  }, [k, I]), B(() => {
1757
1757
  k.setPlacing(E ?? null);
1758
1758
  }, [k, E]), B(() => {
1759
- const h = Dt.current, y = Pt.current, A = Nt.current, R = Gt.current;
1760
- if (!h || !y || !A || !R) return;
1761
- k.bind(h, y, A, R);
1762
- const x = y.getBoundingClientRect();
1763
- k.resize(x.width, x.height);
1764
- const D = new ResizeObserver((N) => {
1759
+ const h = Pt.current, y = Nt.current, A = Gt.current, $ = Rt.current;
1760
+ if (!h || !y || !A || !$) return;
1761
+ k.bind(h, y, A, $);
1762
+ const D = y.getBoundingClientRect();
1763
+ k.resize(D.width, D.height);
1764
+ const P = new ResizeObserver((G) => {
1765
1765
  var Wt;
1766
- const tt = (Wt = N[N.length - 1]) == null ? void 0 : Wt.contentRect;
1766
+ const tt = (Wt = G[G.length - 1]) == null ? void 0 : Wt.contentRect;
1767
1767
  tt !== void 0 && k.resize(tt.width, tt.height);
1768
1768
  });
1769
- D.observe(y);
1770
- const J = (N) => k.wheel(N);
1769
+ P.observe(y);
1770
+ const J = (G) => k.wheel(G);
1771
1771
  h.addEventListener("wheel", J, { passive: !1 });
1772
- const Q = (N) => {
1773
- N.key === "Escape" && k.cancelEdit() && N.preventDefault();
1772
+ const Q = (G) => {
1773
+ G.key === "Escape" && k.cancelEdit() && G.preventDefault();
1774
1774
  };
1775
1775
  return window.addEventListener("keydown", Q), () => {
1776
- window.removeEventListener("keydown", Q), h.removeEventListener("wheel", J), D.disconnect(), k.unbind();
1776
+ window.removeEventListener("keydown", Q), h.removeEventListener("wheel", J), P.disconnect(), k.unbind();
1777
1777
  };
1778
1778
  }, [k]);
1779
- const T = We(k.subscribe, k.getSnapshot, k.getServerSnapshot), Ge = (h, y) => {
1779
+ const T = We(k.subscribe, k.getSnapshot, k.getServerSnapshot), Re = (h, y) => {
1780
1780
  const A = new Date(h);
1781
1781
  return y >= 200 ? X.dateLong(A) : y >= 84 ? X.date(A) : y >= 44 ? X.dateShort(A) : "";
1782
- }, M = T.ghost, pt = (h) => `${xt}-row-${encodeURIComponent(h.key)}`, Re = z(() => {
1782
+ }, M = T.ghost, pt = (h) => `${Dt}-row-${encodeURIComponent(h.key)}`, $e = z(() => {
1783
1783
  const h = /* @__PURE__ */ new Map();
1784
1784
  for (const y of T.headers)
1785
1785
  for (const A of y.within)
1786
1786
  y.kind === "groupHead" && A === y.group || h.set(A, [...h.get(A) ?? [], pt(y)]);
1787
1787
  return h;
1788
- }, [T.headers, xt]), $e = z(() => new Set((M == null ? void 0 : M.refusedLanes) ?? []), [M == null ? void 0 : M.refusedLanes]), Kt = $(null), [mt, Be] = it({ x: 0, y: 0, at: "" }), gt = M === null ? "" : `${M.x}:${M.y}:${M.from}:${M.to}:${M.overlap}:${M.late}`;
1788
+ }, [T.headers, Dt]), xe = z(() => new Set((M == null ? void 0 : M.refusedLanes) ?? []), [M == null ? void 0 : M.refusedLanes]), Kt = x(null), [mt, Be] = it({ x: 0, y: 0, at: "" }), gt = M === null ? "" : `${M.x}:${M.y}:${M.from}:${M.to}:${M.overlap}:${M.late}`;
1789
1789
  vt(() => {
1790
1790
  const h = Kt.current;
1791
1791
  if (M === null || h === null) return;
1792
- const y = 4, A = M.y - h.offsetHeight - y, R = M.y + M.height + y, x = {
1792
+ const y = 4, A = M.y - h.offsetHeight - y, $ = M.y + M.height + y, D = {
1793
1793
  x: Math.max(2, Math.min(M.x, T.width - h.offsetWidth - 2)),
1794
- y: A >= 2 ? A : Math.min(R, T.height - h.offsetHeight - 2),
1794
+ y: A >= 2 ? A : Math.min($, T.height - h.offsetHeight - 2),
1795
1795
  at: gt
1796
1796
  };
1797
- Be((D) => D.x === x.x && D.y === x.y && D.at === x.at ? D : x);
1797
+ Be((P) => P.x === D.x && P.y === D.y && P.at === D.at ? P : D);
1798
1798
  }, [M, gt, T.width, T.height]);
1799
- const Ut = $(null), [kt, Oe] = it({ x: 0, y: 0, at: "" }), H = T.tooltip, wt = H === null ? "" : `${H.x}:${H.y}:${H.target.kind}`;
1799
+ const Ut = x(null), [kt, Oe] = it({ x: 0, y: 0, at: "" }), H = T.tooltip, wt = H === null ? "" : `${H.x}:${H.y}:${H.target.kind}`;
1800
1800
  return vt(() => {
1801
1801
  const h = Ut.current;
1802
1802
  if (H === null || h === null) return;
1803
- const y = 12, A = (x, D, J) => {
1804
- const Q = x + y, N = x - y - D, tt = Q + D <= J - 4 || N < 4 ? Q : N;
1805
- return Math.max(4, Math.min(tt, J - D - 4));
1806
- }, R = {
1803
+ const y = 12, A = (D, P, J) => {
1804
+ const Q = D + y, G = D - y - P, tt = Q + P <= J - 4 || G < 4 ? Q : G;
1805
+ return Math.max(4, Math.min(tt, J - P - 4));
1806
+ }, $ = {
1807
1807
  x: A(H.x, h.offsetWidth, T.width),
1808
1808
  y: A(H.y, h.offsetHeight, T.height),
1809
1809
  at: wt
1810
1810
  };
1811
- Oe((x) => x.x === R.x && x.y === R.y && x.at === R.at ? x : R);
1811
+ Oe((D) => D.x === $.x && D.y === $.y && D.at === $.at ? D : $);
1812
1812
  }, [H, wt, T.width, T.height]), /* @__PURE__ */ Y(we.Provider, { value: k, children: [
1813
1813
  /* @__PURE__ */ Y(
1814
1814
  "div",
1815
1815
  {
1816
- ref: Dt,
1816
+ ref: Pt,
1817
1817
  role: "figure",
1818
1818
  "aria-label": s,
1819
1819
  className: Et ? `${v.root} ${Et}` : v.root,
@@ -1822,7 +1822,7 @@ const bn = [], ce = { min: Tt, max: 28 * st }, Mn = [], de = 20, Fn = Xe(functio
1822
1822
  /* @__PURE__ */ w("div", { className: v.corner }),
1823
1823
  /* @__PURE__ */ w("div", { className: v.dayBand, "aria-hidden": "true", "data-schedule-days": "", "data-schedule-clip": "day band", children: T.days.map((h) => {
1824
1824
  const y = Math.max(0, -h.x), A = Math.min(h.x + h.width, T.width) - Math.max(h.x, 0);
1825
- return /* @__PURE__ */ w("span", { className: v.day, style: { left: `${h.x}px`, width: `${h.width}px` }, children: /* @__PURE__ */ w("span", { className: v.dayLabel, "data-schedule-overlay": "day label", style: { marginLeft: `${y}px` }, children: Ge(h.start, A) }) }, h.start);
1825
+ return /* @__PURE__ */ w("span", { className: v.day, style: { left: `${h.x}px`, width: `${h.width}px` }, children: /* @__PURE__ */ w("span", { className: v.dayLabel, "data-schedule-overlay": "day label", style: { marginLeft: `${y}px` }, children: Re(h.start, A) }) }, h.start);
1826
1826
  }) }),
1827
1827
  /* @__PURE__ */ w("div", { className: v.headers, "data-schedule-headers": "", children: /* @__PURE__ */ w("div", { className: v.headerRun, style: { transform: `translateY(${-T.scrollY}px)` }, children: T.headers.map((h) => /* @__PURE__ */ Y(
1828
1828
  "div",
@@ -1834,7 +1834,7 @@ const bn = [], ce = { min: Tt, max: 28 * st }, Mn = [], de = 20, Fn = Xe(functio
1834
1834
  "data-group": h.group,
1835
1835
  "data-row": h.kind,
1836
1836
  "data-schedule-clip": `header ${h.kind}`,
1837
- "data-refused": h.lane !== void 0 && $e.has(h.lane) ? "" : void 0,
1837
+ "data-refused": h.lane !== void 0 && xe.has(h.lane) ? "" : void 0,
1838
1838
  children: [
1839
1839
  h.kind !== "lane" && h.group !== void 0 && /* @__PURE__ */ w(
1840
1840
  "button",
@@ -1843,7 +1843,7 @@ const bn = [], ce = { min: Tt, max: 28 * st }, Mn = [], de = 20, Fn = Xe(functio
1843
1843
  className: v.chevron,
1844
1844
  "data-schedule-overlay": "fold control",
1845
1845
  "aria-expanded": h.collapsed === !1,
1846
- "aria-controls": (Re.get(h.group) ?? [pt(h)]).join(" "),
1846
+ "aria-controls": ($e.get(h.group) ?? [pt(h)]).join(" "),
1847
1847
  "aria-label": `${h.collapsed === !0 ? K.scheduleUnfoldGroup : K.scheduleFoldGroup}: ${typeof h.label == "string" ? h.label : h.group}`,
1848
1848
  onClick: () => k.toggleGroup(h.group),
1849
1849
  children: /* @__PURE__ */ w("svg", { viewBox: "0 0 10 10", width: "9", height: "9", "aria-hidden": "true", "data-open": h.collapsed === !1 ? "" : void 0, children: /* @__PURE__ */ w("path", { d: "M3.5 1.5 7 5l-3.5 3.5", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }) })
@@ -1858,7 +1858,7 @@ const bn = [], ce = { min: Tt, max: 28 * st }, Mn = [], de = 20, Fn = Xe(functio
1858
1858
  /* @__PURE__ */ Y(
1859
1859
  "div",
1860
1860
  {
1861
- ref: Pt,
1861
+ ref: Nt,
1862
1862
  className: v.plot,
1863
1863
  "data-schedule-plot": "",
1864
1864
  "data-schedule-clip": "plot",
@@ -1876,8 +1876,8 @@ const bn = [], ce = { min: Tt, max: 28 * st }, Mn = [], de = 20, Fn = Xe(functio
1876
1876
  (!(y instanceof Node) || !h.currentTarget.contains(y)) && k.dragLeave();
1877
1877
  },
1878
1878
  children: [
1879
- /* @__PURE__ */ w("canvas", { ref: Nt, className: v.layer, "aria-hidden": "true" }),
1880
1879
  /* @__PURE__ */ w("canvas", { ref: Gt, className: v.layer, "aria-hidden": "true" }),
1880
+ /* @__PURE__ */ w("canvas", { ref: Rt, className: v.layer, "aria-hidden": "true" }),
1881
1881
  T.grips.map((h) => /* @__PURE__ */ w(
1882
1882
  "span",
1883
1883
  {
@@ -1951,26 +1951,26 @@ const bn = [], ce = { min: Tt, max: 28 * st }, Mn = [], de = 20, Fn = Xe(functio
1951
1951
  ]
1952
1952
  }
1953
1953
  ),
1954
- xe
1954
+ De
1955
1955
  ] });
1956
1956
  });
1957
1957
  function En({ id: n, label: t }) {
1958
1958
  const e = ye(), s = z(() => ({ id: n, label: t ?? n, ...e === null ? {} : { parent: e } }), [n, t, e]);
1959
1959
  return ts(s), null;
1960
1960
  }
1961
- function xn({ id: n, label: t, children: e }) {
1961
+ function Dn({ id: n, label: t, children: e }) {
1962
1962
  const s = ye(), o = z(() => ({ id: n, label: t ?? n, ...s === null ? {} : { parent: s } }), [n, t, s]);
1963
1963
  return es(o), /* @__PURE__ */ w(ve.Provider, { value: n, children: e });
1964
1964
  }
1965
- function Dn({ data: n, tasks: t }) {
1965
+ function Pn({ data: n, tasks: t }) {
1966
1966
  const e = z(() => ({ kind: "subtasks", data: n, tasks: t }), [n, t]);
1967
1967
  return be("Subtasks", e), null;
1968
1968
  }
1969
- function Pn({ data: n }) {
1969
+ function Nn({ data: n }) {
1970
1970
  const t = z(() => ({ kind: "transports", data: n }), [n]);
1971
1971
  return be("Transports", t), null;
1972
1972
  }
1973
- function Nn(n, t, e) {
1973
+ function Gn(n, t, e) {
1974
1974
  if (e.kind === "place") return [];
1975
1975
  const s = new Map(n.map((u) => [u.id, jt(u, e)])), o = /* @__PURE__ */ new Map();
1976
1976
  for (const u of t) {
@@ -1994,15 +1994,15 @@ function Nn(n, t, e) {
1994
1994
  }
1995
1995
  return [...i.values()];
1996
1996
  }
1997
- function Gn(n, t, e) {
1997
+ function Rn(n, t, e) {
1998
1998
  return e === 0 || !Number.isFinite(e) ? [] : n.filter((s) => s.task === t).map((s) => ({ kind: "move", subtask: s.id, from: s.from + e, to: s.to + e }));
1999
1999
  }
2000
2000
  export {
2001
2001
  En as Lane,
2002
- xn as LaneGroup,
2002
+ Dn as LaneGroup,
2003
2003
  Fn as Schedule,
2004
- Dn as Subtasks,
2005
- Pn as Transports,
2004
+ Pn as Subtasks,
2005
+ Nn as Transports,
2006
2006
  jt as applyIntent,
2007
2007
  It as arrival,
2008
2008
  St as departure,
@@ -2011,8 +2011,8 @@ export {
2011
2011
  ut as occupied,
2012
2012
  At as overlaps,
2013
2013
  ht as resolveAppearance,
2014
- Nn as ripple,
2015
- Gn as shiftTask,
2016
- Gs as snapTime,
2014
+ Gn as ripple,
2015
+ Rn as shiftTask,
2016
+ Rs as snapTime,
2017
2017
  An as subtaskFromPlace
2018
2018
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@umriss-ui/schedule",
3
- "version": "0.1.5",
3
+ "version": "0.1.6",
4
4
  "description": "The umriss schedule - subtasks on lanes over time, with transports, findings and controlled editing.",
5
5
  "license": "MIT",
6
6
  "author": "Roman Händler",
@@ -44,8 +44,8 @@
44
44
  "peerDependencies": {
45
45
  "react": ">=18",
46
46
  "react-dom": ">=18",
47
- "@umriss-ui/charts": "^0.4.0",
48
- "@umriss-ui/core": "^0.6.0"
47
+ "@umriss-ui/charts": "^0.4.1",
48
+ "@umriss-ui/core": "^0.7.0"
49
49
  },
50
50
  "devDependencies": {
51
51
  "@fontsource/geist-mono": "^5.3.0",
@@ -59,9 +59,9 @@
59
59
  "typescript": "^5.6.3",
60
60
  "vite": "^6.0.0",
61
61
  "vite-plugin-dts": "^4.3.0",
62
- "@umriss-ui/charts": "0.4.0",
62
+ "@umriss-ui/charts": "0.4.1",
63
63
  "@umriss-ui/demo": "0.0.0",
64
- "@umriss-ui/core": "0.6.0"
64
+ "@umriss-ui/core": "0.7.0"
65
65
  },
66
66
  "scripts": {
67
67
  "props": "node --disable-warning=ExperimentalWarning --experimental-strip-types demo/props.ts",