@crewlethq/ui 0.14.0 → 0.15.1

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.
Files changed (83) hide show
  1. package/README.md +30 -0
  2. package/dist/AddPill/index.js +1 -1
  3. package/dist/{AddPill-V4TQXJ53.css → AddPill-RYCY56P4.css} +3 -1
  4. package/dist/AppShell/AppShell.d.ts +76 -11
  5. package/dist/AppShell/index.d.ts +1 -1
  6. package/dist/AppShell/index.js +2 -2
  7. package/dist/{AppShell-CEVLW4QG.css → AppShell-6QUD7NWM.css} +74 -1
  8. package/dist/Avatar/index.js +1 -1
  9. package/dist/{Avatar-BPJ36QZR.css → Avatar-I4NFP3WQ.css} +3 -3
  10. package/dist/AvatarPicker/index.js +3 -3
  11. package/dist/Canvas/index.js +3 -3
  12. package/dist/Charts/StackedColumns.d.ts +30 -7
  13. package/dist/Charts/index.d.ts +1 -1
  14. package/dist/Charts/index.js +1 -1
  15. package/dist/{Charts-JUERFLAR.css → Charts-JYW4X5ZL.css} +18 -1
  16. package/dist/CommandPalette/index.js +3 -3
  17. package/dist/DataTable/index.js +4 -4
  18. package/dist/DataView/index.js +9 -9
  19. package/dist/DateTimePicker/index.js +4 -4
  20. package/dist/DescriptionList/DescriptionList.d.ts +9 -1
  21. package/dist/DescriptionList/index.js +1 -1
  22. package/dist/{DescriptionList-YYY3V3O6.css → DescriptionList-IXMRCSMK.css} +24 -0
  23. package/dist/EntityChip/index.js +1 -1
  24. package/dist/FactList/index.js +3 -3
  25. package/dist/ImageUpload/index.js +1 -1
  26. package/dist/Layer/index.js +1 -1
  27. package/dist/Layer-J222IFNX.css +33 -0
  28. package/dist/Layout/index.js +1 -1
  29. package/dist/{Layout-2ZCV3IGF.css → Layout-ZBEGLXAE.css} +18 -0
  30. package/dist/ListInput/index.js +1 -1
  31. package/dist/MarkdownEditor/index.js +1 -1
  32. package/dist/Menu/index.js +2 -2
  33. package/dist/Modal/index.js +2 -2
  34. package/dist/OrgLabel/index.js +2 -2
  35. package/dist/{OrgLabel-6WSKJQOT.css → OrgLabel-R5KY7C3W.css} +6 -1
  36. package/dist/OrgNode/index.js +3 -3
  37. package/dist/OrgTable/index.js +7 -7
  38. package/dist/Popover/index.js +2 -2
  39. package/dist/Select/index.js +2 -2
  40. package/dist/Shortcut/index.js +1 -1
  41. package/dist/Switcher/index.js +4 -4
  42. package/dist/TagsInput/index.js +1 -1
  43. package/dist/TimeWindowPicker/index.js +5 -5
  44. package/dist/Toaster/Toaster.d.ts +6 -1
  45. package/dist/Toaster/index.js +2 -2
  46. package/dist/{Toaster-VZKISP2S.css → Toaster-EOOOTSJT.css} +6 -4
  47. package/dist/Toolbar/index.js +1 -1
  48. package/dist/Tooltip/index.js +2 -2
  49. package/dist/TreeCanvas/index.js +4 -4
  50. package/dist/TreeGrid/index.js +3 -3
  51. package/dist/{chunk-6OF2DBKY.js → chunk-22M7OXKW.js} +1 -1
  52. package/dist/{chunk-RZ7RGECB.js → chunk-2OLCUNG7.js} +1 -1
  53. package/dist/{chunk-5IXMLWGW.js → chunk-4EOJR52M.js} +4 -4
  54. package/dist/{chunk-2PZBIHRV.js → chunk-AMH67MLM.js} +2 -2
  55. package/dist/{chunk-6LXMLQUM.js → chunk-B2Z2CDM5.js} +2 -2
  56. package/dist/{chunk-O2ZDZZS7.js → chunk-BWRGFKJP.js} +3 -2
  57. package/dist/{chunk-IFM63LAG.js → chunk-DY77H372.js} +3 -3
  58. package/dist/{chunk-4FFHJBEN.js → chunk-EFNHOVC2.js} +1 -1
  59. package/dist/{chunk-XN4JBAN3.js → chunk-F2XSYBKH.js} +8 -2
  60. package/dist/{chunk-IXUU5DLZ.js → chunk-FC4YTTFJ.js} +1 -1
  61. package/dist/{chunk-IHGKPEEV.js → chunk-FY2R4U4Q.js} +1 -1
  62. package/dist/{chunk-AXNQCAFC.js → chunk-GUHP5JHC.js} +2 -2
  63. package/dist/{chunk-L3CTFFLZ.js → chunk-H3XOMT7W.js} +53 -9
  64. package/dist/{chunk-7RPGY3JE.js → chunk-HMPFGIWM.js} +1 -1
  65. package/dist/{chunk-WYQOHFML.js → chunk-IYZZL3MZ.js} +1 -1
  66. package/dist/{chunk-URYDN2KA.js → chunk-JI5AVQLA.js} +1 -1
  67. package/dist/{chunk-TFMJH2E6.js → chunk-K4VORB64.js} +1 -1
  68. package/dist/{chunk-Y6NR7QJ3.js → chunk-LCF4WPYS.js} +2 -2
  69. package/dist/{chunk-4WNNEDKO.js → chunk-MLT2HBPN.js} +87 -74
  70. package/dist/{chunk-TFH6SYWB.js → chunk-NS7BVLL3.js} +1 -1
  71. package/dist/{chunk-CBZSSKH3.js → chunk-QH3AKP2N.js} +18 -5
  72. package/dist/{chunk-CQY5NTRS.js → chunk-QWOPX2MN.js} +1 -1
  73. package/dist/{chunk-3VVKJ7AZ.js → chunk-TK6YC5QT.js} +2 -2
  74. package/dist/{chunk-74WGARJE.js → chunk-TROLVEZY.js} +1 -1
  75. package/dist/{chunk-53DVJCVW.js → chunk-VYOKRN2I.js} +1 -1
  76. package/dist/{chunk-75WOCYGC.js → chunk-YYBD73OI.js} +3 -3
  77. package/dist/{chunk-W4ENKCXJ.js → chunk-ZAC7SKUN.js} +1 -1
  78. package/dist/{chunk-6NIZCQUM.js → chunk-ZPWUVVIB.js} +1 -1
  79. package/dist/generated/index.js +40 -40
  80. package/dist/index.js +40 -40
  81. package/dist/styles.css +172 -21
  82. package/package.json +3 -3
  83. package/dist/Layer-NAFSGCFA.css +0 -23
@@ -1,4 +1,4 @@
1
- import { Tooltip } from './chunk-CQY5NTRS.js';
1
+ import { Tooltip } from './chunk-QWOPX2MN.js';
2
2
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
3
3
  import { cx } from './chunk-ODEQTPFM.js';
4
4
  import './FactList-G2H73NFR.css';
@@ -1,7 +1,7 @@
1
1
  import { Button } from './chunk-OG6CL3EB.js';
2
2
  import { HeadingLevelProvider } from './chunk-PQADV6P6.js';
3
3
  import { IconButton } from './chunk-4FQT6ZAY.js';
4
- import { useLayerContainer } from './chunk-7RPGY3JE.js';
4
+ import { useLayerContainer } from './chunk-HMPFGIWM.js';
5
5
  import { focusables, useModalLayer, useBodyScrollLock } from './chunk-R25RGPUB.js';
6
6
  import { cx } from './chunk-ODEQTPFM.js';
7
7
  import './Modal-RQAYGG4L.css';
@@ -1,11 +1,11 @@
1
1
  import { Skeleton } from './chunk-W5J7R5EB.js';
2
- import { Modal } from './chunk-TFMJH2E6.js';
2
+ import { Modal } from './chunk-K4VORB64.js';
3
3
  import { useListbox, useOptionKeys } from './chunk-F73MC7EZ.js';
4
4
  import { Input } from './chunk-FTEJPHBI.js';
5
5
  import { KeyChip, highlightMatch } from './chunk-FYTIJM2T.js';
6
6
  import { announce } from './chunk-RSAQOKH3.js';
7
7
  import { useMediaMatch } from './chunk-IG75YMUN.js';
8
- import { Popover } from './chunk-O2ZDZZS7.js';
8
+ import { Popover } from './chunk-BWRGFKJP.js';
9
9
  import { focusables, isComposing } from './chunk-R25RGPUB.js';
10
10
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
11
11
  import { cx } from './chunk-ODEQTPFM.js';
@@ -1,6 +1,6 @@
1
1
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
2
2
  import { cx } from './chunk-ODEQTPFM.js';
3
- import './Charts-JUERFLAR.css';
3
+ import './Charts-JYW4X5ZL.css';
4
4
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
5
5
  import { useState, useRef, useCallback, useId } from 'react';
6
6
 
@@ -445,6 +445,7 @@ function niceScale(peak, steps = 4) {
445
445
  return { top, step: Number(step.toPrecision(12)) };
446
446
  }
447
447
  var COMPACT = new Intl.NumberFormat(void 0, { notation: "compact", maximumFractionDigits: 1 });
448
+ var PLOT_HEIGHT = "11.5rem";
448
449
  function StackedColumns({
449
450
  series,
450
451
  buckets,
@@ -452,7 +453,8 @@ function StackedColumns({
452
453
  label,
453
454
  legend = "below",
454
455
  head,
455
- height = "11.5rem",
456
+ height = PLOT_HEIGHT,
457
+ minHeight = PLOT_HEIGHT,
456
458
  format = (value) => COMPACT.format(value),
457
459
  formatTime = (at) => new Date(at).toLocaleDateString(),
458
460
  summary,
@@ -493,81 +495,92 @@ function StackedColumns({
493
495
  }
494
496
  );
495
497
  const hasHead = head !== void 0 && head !== null && head !== false;
496
- return /* @__PURE__ */ jsxs("figure", { className: cx("crewlet-stacked-columns", className), children: [
497
- hasHead || legend === "head" ? /* @__PURE__ */ jsxs("div", { className: "crewlet-stacked-columns__head", children: [
498
- hasHead ? /* @__PURE__ */ jsx("div", { className: "crewlet-stacked-columns__heading", children: head }) : null,
499
- legend === "head" ? key : null
500
- ] }) : null,
501
- /* @__PURE__ */ jsx("div", { className: "crewlet-stacked-columns__axis", "aria-hidden": true, style: { height }, children: ticks.map((tick) => /* @__PURE__ */ jsx("span", { className: "crewlet-stacked-columns__tick", children: format(tick) }, tick)) }),
502
- /* @__PURE__ */ jsxs("div", { className: "crewlet-chart-frame", role: "group", "aria-label": label, ...hover.plotProps, children: [
503
- /* @__PURE__ */ jsxs(
504
- "div",
505
- {
506
- className: "crewlet-stacked-columns__plot",
507
- role: "img",
508
- "aria-label": sentence,
509
- style: { height },
510
- children: [
511
- /* @__PURE__ */ jsx("div", { className: "crewlet-stacked-columns__grid", "aria-hidden": true, children: ticks.map((tick) => /* @__PURE__ */ jsx("span", { className: "crewlet-stacked-columns__grid-line" }, tick)) }),
512
- buckets.map((bucket, index) => {
513
- const total = totals[index] ?? 0;
514
- const parts = shown.filter((one) => valueOf(bucket, one.id) > 0);
515
- return /* @__PURE__ */ jsx(
516
- "div",
517
- {
518
- className: cx("crewlet-stacked-columns__slot", hover.active === index && "is-active"),
519
- onPointerEnter: () => hover.point(index),
520
- children: /* @__PURE__ */ jsx(
498
+ const headed = hasHead || legend === "head";
499
+ const fill = height === "fill";
500
+ const rows = fill ? `${headed ? "auto " : ""}minmax(${minHeight}, 1fr) auto` : void 0;
501
+ const plotHeight = fill ? "100%" : height;
502
+ return /* @__PURE__ */ jsxs(
503
+ "figure",
504
+ {
505
+ className: cx("crewlet-stacked-columns", fill && "crewlet-stacked-columns--fill", className),
506
+ style: rows === void 0 ? void 0 : { gridTemplateRows: rows },
507
+ children: [
508
+ headed ? /* @__PURE__ */ jsxs("div", { className: "crewlet-stacked-columns__head", children: [
509
+ hasHead ? /* @__PURE__ */ jsx("div", { className: "crewlet-stacked-columns__heading", children: head }) : null,
510
+ legend === "head" ? key : null
511
+ ] }) : null,
512
+ /* @__PURE__ */ jsx("div", { className: "crewlet-stacked-columns__axis", "aria-hidden": true, style: { height: plotHeight }, children: ticks.map((tick) => /* @__PURE__ */ jsx("span", { className: "crewlet-stacked-columns__tick", children: format(tick) }, tick)) }),
513
+ /* @__PURE__ */ jsxs("div", { className: "crewlet-chart-frame", role: "group", "aria-label": label, ...hover.plotProps, children: [
514
+ /* @__PURE__ */ jsxs(
515
+ "div",
516
+ {
517
+ className: "crewlet-stacked-columns__plot",
518
+ role: "img",
519
+ "aria-label": sentence,
520
+ style: { height: plotHeight },
521
+ children: [
522
+ /* @__PURE__ */ jsx("div", { className: "crewlet-stacked-columns__grid", "aria-hidden": true, children: ticks.map((tick) => /* @__PURE__ */ jsx("span", { className: "crewlet-stacked-columns__grid-line" }, tick)) }),
523
+ buckets.map((bucket, index) => {
524
+ const total = totals[index] ?? 0;
525
+ const parts = shown.filter((one) => valueOf(bucket, one.id) > 0);
526
+ return /* @__PURE__ */ jsx(
521
527
  "div",
522
528
  {
523
- className: "crewlet-stacked-columns__column",
524
- style: { height: `${(total / top * 100).toFixed(3)}%` },
525
- children: parts.map((one) => /* @__PURE__ */ jsx(
526
- "span",
529
+ className: cx("crewlet-stacked-columns__slot", hover.active === index && "is-active"),
530
+ onPointerEnter: () => hover.point(index),
531
+ children: /* @__PURE__ */ jsx(
532
+ "div",
527
533
  {
528
- className: "crewlet-stacked-columns__segment",
529
- "data-series": one.id,
530
- style: {
531
- flexGrow: valueOf(bucket, one.id),
532
- "--crewlet-stacked-columns-segment-color": one.color
533
- }
534
- },
535
- one.id
536
- ))
537
- }
538
- )
539
- },
540
- bucket.t
541
- );
542
- })
543
- ]
544
- }
545
- ),
546
- /* @__PURE__ */ jsx(
547
- ChartTooltip,
548
- {
549
- open: active != null,
550
- anchor: hover.active == null ? void 0 : { start: hover.active / buckets.length, end: (hover.active + 1) / buckets.length },
551
- title: active == null ? void 0 : formatTime(active.t),
552
- rows: active == null ? [] : shown.map((one) => ({ id: one.id, name: one.name, value: format(valueOf(active, one.id)), color: one.color })),
553
- total: active == null || hover.active == null ? void 0 : { value: format(totals[hover.active] ?? 0) }
554
- }
555
- )
556
- ] }),
557
- /* @__PURE__ */ jsxs("figcaption", { className: "crewlet-stacked-columns__scale", children: [
558
- /* @__PURE__ */ jsx("span", { children: first == null ? "" : formatTime(first) }),
559
- middle != null && /* @__PURE__ */ jsx(
560
- "span",
561
- {
562
- className: "crewlet-stacked-columns__middle",
563
- style: { left: `${((centre + 0.5) / buckets.length * 100).toFixed(3)}%` },
564
- children: formatTime(middle)
565
- }
566
- ),
567
- /* @__PURE__ */ jsx("span", { children: last == null || last === first ? "" : formatTime(last) })
568
- ] }),
569
- legend === "below" ? key : null
570
- ] });
534
+ className: "crewlet-stacked-columns__column",
535
+ style: { height: `${(total / top * 100).toFixed(3)}%` },
536
+ children: parts.map((one) => /* @__PURE__ */ jsx(
537
+ "span",
538
+ {
539
+ className: "crewlet-stacked-columns__segment",
540
+ "data-series": one.id,
541
+ style: {
542
+ flexGrow: valueOf(bucket, one.id),
543
+ "--crewlet-stacked-columns-segment-color": one.color
544
+ }
545
+ },
546
+ one.id
547
+ ))
548
+ }
549
+ )
550
+ },
551
+ bucket.t
552
+ );
553
+ })
554
+ ]
555
+ }
556
+ ),
557
+ /* @__PURE__ */ jsx(
558
+ ChartTooltip,
559
+ {
560
+ open: active != null,
561
+ anchor: hover.active == null ? void 0 : { start: hover.active / buckets.length, end: (hover.active + 1) / buckets.length },
562
+ title: active == null ? void 0 : formatTime(active.t),
563
+ rows: active == null ? [] : shown.map((one) => ({ id: one.id, name: one.name, value: format(valueOf(active, one.id)), color: one.color })),
564
+ total: active == null || hover.active == null ? void 0 : { value: format(totals[hover.active] ?? 0) }
565
+ }
566
+ )
567
+ ] }),
568
+ /* @__PURE__ */ jsxs("figcaption", { className: "crewlet-stacked-columns__scale", children: [
569
+ /* @__PURE__ */ jsx("span", { children: first == null ? "" : formatTime(first) }),
570
+ middle != null && /* @__PURE__ */ jsx(
571
+ "span",
572
+ {
573
+ className: "crewlet-stacked-columns__middle",
574
+ style: { left: `${((centre + 0.5) / buckets.length * 100).toFixed(3)}%` },
575
+ children: formatTime(middle)
576
+ }
577
+ ),
578
+ /* @__PURE__ */ jsx("span", { children: last == null || last === first ? "" : formatTime(last) })
579
+ ] }),
580
+ legend === "below" ? key : null
581
+ ]
582
+ }
583
+ );
571
584
  }
572
585
 
573
586
  export { ActivityStrip, BarList, ChartTooltip, DATA_COLORS, DATA_COLOR_OTHER, Legend, Sparkline, StackedBar, StackedColumns, TimeSeries, dataColor, niceScale, useChartHover };
@@ -1,6 +1,6 @@
1
1
  import { Button } from './chunk-OG6CL3EB.js';
2
2
  import { IconButton } from './chunk-4FQT6ZAY.js';
3
- import { useLayerContainer, viewportBounds, LAYER_GAP, outsideBounds, placePopup, LAYER_REPOSITION_EVENT } from './chunk-7RPGY3JE.js';
3
+ import { useLayerContainer, viewportBounds, LAYER_GAP, outsideBounds, placePopup, LAYER_REPOSITION_EVENT } from './chunk-HMPFGIWM.js';
4
4
  import { usePopupLayer } from './chunk-R25RGPUB.js';
5
5
  import { cx } from './chunk-ODEQTPFM.js';
6
6
  import './Menu-BT5PMFJI.css';
@@ -1,7 +1,7 @@
1
- import { useLayerContainer } from './chunk-7RPGY3JE.js';
1
+ import { useLayerContainer } from './chunk-HMPFGIWM.js';
2
2
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
3
3
  import { cx } from './chunk-ODEQTPFM.js';
4
- import './Toaster-VZKISP2S.css';
4
+ import './Toaster-EOOOTSJT.css';
5
5
  import { createContext, useMemo, useState, useRef, useEffect, useContext, useCallback } from 'react';
6
6
  import { createPortal } from 'react-dom';
7
7
  import { XGlyph, CircleAlertGlyph, TriangleAlertGlyph, CircleCheckGlyph, InfoGlyph } from '@crewlethq/icons/glyphs';
@@ -27,6 +27,11 @@ var DURATIONS = {
27
27
  };
28
28
  var KNOWN = /* @__PURE__ */ new Set(["info", "success", "warning", "danger"]);
29
29
  var isKnown = (variant) => KNOWN.has(variant);
30
+ var durationOf = (toast) => {
31
+ const variant = toast.variant ?? "info";
32
+ return toast.duration ?? (isKnown(variant) ? DURATIONS[variant] : 0);
33
+ };
34
+ var isSticky = (toast) => durationOf(toast) <= 0;
30
35
  var politeness = (variant) => variant === "danger" || variant === "quota" ? "assertive" : "polite";
31
36
  var isToastAction = (value) => {
32
37
  if (!value || typeof value !== "object") return false;
@@ -50,7 +55,7 @@ function ToastItem({
50
55
  const variant = toast.variant ?? "info";
51
56
  const known = isKnown(variant);
52
57
  const { id, version } = toast;
53
- const duration = toast.duration ?? (known ? DURATIONS[variant] : 0);
58
+ const duration = durationOf(toast);
54
59
  const dismiss = useCallback(() => onDismiss(id), [onDismiss, id]);
55
60
  const [paused, setPaused] = useState(false);
56
61
  const remaining = useRef(duration);
@@ -215,6 +220,15 @@ var ToastContext = createContext(NONE);
215
220
  function useToast() {
216
221
  return useContext(ToastContext);
217
222
  }
223
+ function admit(held, toast, max) {
224
+ const stack = [...held.filter((one) => one.id !== toast.id), toast];
225
+ const over = stack.length - max;
226
+ if (over <= 0) return stack;
227
+ const evicted = new Set(
228
+ stack.slice(0, -1).filter((one) => !isSticky(one)).slice(0, over)
229
+ );
230
+ return stack.filter((one) => !evicted.has(one));
231
+ }
218
232
  function ToastProvider({ children, position = "bottom-right", renderAction, max = 4 }) {
219
233
  const [toasts, setToasts] = useState([]);
220
234
  const next = useRef(1);
@@ -225,9 +239,8 @@ function ToastProvider({ children, position = "bottom-right", renderAction, max
225
239
  (toast) => {
226
240
  const id = toast.id ?? `crewlet-toast-${next.current++}`;
227
241
  setToasts((current) => {
228
- const rest = current.filter((one) => one.id !== id);
229
242
  const version = (current.find((one) => one.id === id)?.version ?? 0) + 1;
230
- return [...rest, { ...toast, id, version }].slice(-max);
243
+ return admit(current, { ...toast, id, version }, max);
231
244
  });
232
245
  return id;
233
246
  },
@@ -1,4 +1,4 @@
1
- import { useLayerContainer, viewportBounds, LAYER_GAP, outsideBounds, placePopup, LAYER_REPOSITION_EVENT } from './chunk-7RPGY3JE.js';
1
+ import { useLayerContainer, viewportBounds, LAYER_GAP, outsideBounds, placePopup, LAYER_REPOSITION_EVENT } from './chunk-HMPFGIWM.js';
2
2
  import { usePopupLayer } from './chunk-R25RGPUB.js';
3
3
  import { cx } from './chunk-ODEQTPFM.js';
4
4
  import './Tooltip-LKQF7CE4.css';
@@ -1,8 +1,8 @@
1
- import { Menu } from './chunk-TFH6SYWB.js';
1
+ import { Menu } from './chunk-NS7BVLL3.js';
2
2
  import { EmptyValue } from './chunk-EUCC37WY.js';
3
3
  import { Checkbox } from './chunk-YCTMKKRA.js';
4
- import { Modal } from './chunk-TFMJH2E6.js';
5
4
  import { useClipboard } from './chunk-5VNUYO76.js';
5
+ import { Modal } from './chunk-K4VORB64.js';
6
6
  import { Button } from './chunk-OG6CL3EB.js';
7
7
  import { useCardHeaderSlot } from './chunk-AV2DXAEL.js';
8
8
  import { IconButton } from './chunk-4FQT6ZAY.js';
@@ -1,6 +1,6 @@
1
1
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
2
2
  import { cx } from './chunk-ODEQTPFM.js';
3
- import './AddPill-V4TQXJ53.css';
3
+ import './AddPill-RYCY56P4.css';
4
4
  import { useState, useId, useRef, useCallback, useEffect, Fragment } from 'react';
5
5
  import { jsxs, jsx } from 'react/jsx-runtime';
6
6
 
@@ -1,4 +1,4 @@
1
- import { useLayerContainer } from './chunk-7RPGY3JE.js';
1
+ import { useLayerContainer } from './chunk-HMPFGIWM.js';
2
2
  import { useRef, useLayoutEffect } from 'react';
3
3
 
4
4
  function LayerNodeBridge({ onNode }) {
@@ -1,7 +1,7 @@
1
- import { TreeGrid } from './chunk-6LXMLQUM.js';
1
+ import { TreeGrid } from './chunk-B2Z2CDM5.js';
2
2
  import { createTreeModel, treeParent } from './chunk-MY374UUD.js';
3
- import { OrgLabel } from './chunk-6OF2DBKY.js';
4
- import { AddPill } from './chunk-74WGARJE.js';
3
+ import { OrgLabel } from './chunk-22M7OXKW.js';
4
+ import { AddPill } from './chunk-TROLVEZY.js';
5
5
  import { IconButton } from './chunk-4FQT6ZAY.js';
6
6
  import { cx } from './chunk-ODEQTPFM.js';
7
7
  import './OrgTable-JZSYTUIK.css';
@@ -1,5 +1,5 @@
1
1
  import { cx } from './chunk-ODEQTPFM.js';
2
- import './Layout-2ZCV3IGF.css';
2
+ import './Layout-ZBEGLXAE.css';
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
 
5
5
  function gapClass(gap) {
@@ -1,6 +1,6 @@
1
1
  import { AVATAR_SIZES, Avatar } from './chunk-HI6Q2UXQ.js';
2
2
  import { cx } from './chunk-ODEQTPFM.js';
3
- import './Avatar-BPJ36QZR.css';
3
+ import './Avatar-I4NFP3WQ.css';
4
4
  import './AvatarStack-GEJBNV7E.css';
5
5
  import { jsxs, jsx } from 'react/jsx-runtime';
6
6
 
@@ -1,52 +1,52 @@
1
1
  import '../chunk-6AR2T5Y4.js';
2
2
  import '../chunk-AER7UDD4.js';
3
3
  export { Timeline, TimelineItem } from '../chunk-O67VF5MS.js';
4
- export { ToastProvider, Toaster, useToast } from '../chunk-CBZSSKH3.js';
5
- export { TreeCanvas } from '../chunk-RZ7RGECB.js';
4
+ export { ToastProvider, Toaster, useToast } from '../chunk-QH3AKP2N.js';
5
+ export { TreeCanvas } from '../chunk-2OLCUNG7.js';
6
6
  export { TagGroup } from '../chunk-E6UWRXNM.js';
7
7
  export { TagsInput } from '../chunk-JCO3SIST.js';
8
+ export { Text } from '../chunk-23DHIMJA.js';
8
9
  export { ThemeGallery } from '../chunk-KLIEPFEZ.js';
9
10
  export { ThemeSwatch } from '../chunk-MNFU2RNT.js';
10
- export { Text } from '../chunk-23DHIMJA.js';
11
11
  export { DensitySwitcher, ThemeSwitcher } from '../chunk-SBRE7IML.js';
12
12
  export { ThemeToggle } from '../chunk-6TSZCBID.js';
13
13
  export { applyDensity, applyStoredPreferences, applyTheme, resolveTheme, useDensityPreference, useSystemTheme, useThemePreference } from '../chunk-K3OWD7BJ.js';
14
- export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-IFM63LAG.js';
14
+ export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-DY77H372.js';
15
15
  export { StatGroup } from '../chunk-QVAFL2LE.js';
16
- export { Switch } from '../chunk-A722MUNR.js';
17
- export { Switcher } from '../chunk-Y6NR7QJ3.js';
18
16
  export { Stepper } from '../chunk-5QWIJSQM.js';
17
+ export { Switch } from '../chunk-A722MUNR.js';
18
+ export { Switcher } from '../chunk-LCF4WPYS.js';
19
19
  export { Table } from '../chunk-V2N3BMOT.js';
20
20
  export { Section } from '../chunk-A2UXBCLO.js';
21
21
  export { SegmentedMeter, segmentedMeterLabel } from '../chunk-4AK52VHB.js';
22
- export { Select } from '../chunk-IXUU5DLZ.js';
22
+ export { Select } from '../chunk-FC4YTTFJ.js';
23
23
  export { matchesShortcut, useShortcut } from '../chunk-2FPENTCF.js';
24
24
  export { NavGroup, NavItem, SidebarNav } from '../chunk-UCCC7YVZ.js';
25
25
  export { Skeleton } from '../chunk-W5J7R5EB.js';
26
26
  export { StatCard } from '../chunk-IKB6HFGK.js';
27
- export { OrgTable, OrgTableActions, OrgTableAdd, OrgTableName } from '../chunk-75WOCYGC.js';
28
- export { TreeGrid } from '../chunk-6LXMLQUM.js';
29
- export { SIZE_EPSILON, TYPE_AHEAD_RESET_MS, createTreeModel, isTypeAheadKey, layoutConnectors, layoutForest, placeGroups, treeAllExpandable, treeAncestors, treeCollapseOrAscend, treeExpandOrDescend, treeExpandTo, treeExpandable, treeFirst, treeFirstChild, treeItemAction, treeLast, treeLevel, treeNext, treeParent, treePosInSet, treePrevious, treeSetSize, treeStep, treeTypeAhead, treeVisible, typeAheadBuffer, useLayoutAnchor, useMeasuredSizes, useTreeState } from '../chunk-MY374UUD.js';
27
+ export { Outline, scrollToHeading, useActiveHeading } from '../chunk-A5YKNRG6.js';
30
28
  export { PricingCard } from '../chunk-UCYIRDND.js';
31
29
  export { Tag } from '../chunk-LOECRMHA.js';
32
30
  export { StatusDot } from '../chunk-WIATRXEJ.js';
33
- export { ReadingPane, ReadingPaneByline, ReadingPaneLead, ReadingPaneOutcome, ReadingPaneQuote, ReadingPaneReasoning, ReadingPaneSection, ReadingPaneTitle } from '../chunk-ZAJHGDAW.js';
34
31
  export { Prose } from '../chunk-JCSA3XVH.js';
32
+ export { ReadingPane, ReadingPaneByline, ReadingPaneLead, ReadingPaneOutcome, ReadingPaneQuote, ReadingPaneReasoning, ReadingPaneSection, ReadingPaneTitle } from '../chunk-ZAJHGDAW.js';
35
33
  export { SearchTrigger } from '../chunk-6DRDCT22.js';
36
34
  export { MARKDOWN_FORMATS, MarkdownEditor, formatMarkdown, insertMarkdown, markdownWords } from '../chunk-77IEHFY4.js';
37
35
  import '../chunk-VYY56AMX.js';
38
36
  export { DEFAULT_METER_THRESHOLDS, METER_STATES, Meter, meterState, meterStateTone, meterTone, progressTone } from '../chunk-4PZ6FJKW.js';
39
37
  export { NewItemsNotice } from '../chunk-PXU6HOZB.js';
40
- export { OrgNodeDisclosure, OrgNodeLabel, OrgNodeLead } from '../chunk-IHGKPEEV.js';
41
- export { OrgLabel } from '../chunk-6OF2DBKY.js';
42
- export { Outline, scrollToHeading, useActiveHeading } from '../chunk-A5YKNRG6.js';
43
- export { AutoGrid, Inline, Spacer, Stack } from '../chunk-W4ENKCXJ.js';
38
+ export { OrgNodeDisclosure, OrgNodeLabel, OrgNodeLead } from '../chunk-FY2R4U4Q.js';
39
+ export { OrgTable, OrgTableActions, OrgTableAdd, OrgTableName } from '../chunk-YYBD73OI.js';
40
+ export { TreeGrid } from '../chunk-B2Z2CDM5.js';
41
+ export { SIZE_EPSILON, TYPE_AHEAD_RESET_MS, createTreeModel, isTypeAheadKey, layoutConnectors, layoutForest, placeGroups, treeAllExpandable, treeAncestors, treeCollapseOrAscend, treeExpandOrDescend, treeExpandTo, treeExpandable, treeFirst, treeFirstChild, treeItemAction, treeLast, treeLevel, treeNext, treeParent, treePosInSet, treePrevious, treeSetSize, treeStep, treeTypeAhead, treeVisible, typeAheadBuffer, useLayoutAnchor, useMeasuredSizes, useTreeState } from '../chunk-MY374UUD.js';
42
+ export { OrgLabel } from '../chunk-22M7OXKW.js';
43
+ export { AutoGrid, Inline, Spacer, Stack } from '../chunk-ZAC7SKUN.js';
44
44
  export { Link } from '../chunk-FBSEJO2C.js';
45
45
  export { List, ListItem } from '../chunk-DS2C73RJ.js';
46
46
  export { ListInput } from '../chunk-GARACZAH.js';
47
+ export { useFullscreen } from '../chunk-XDTYBF2F.js';
47
48
  export { Highlight, highlightRanges, highlightTerms } from '../chunk-H6VKCIWV.js';
48
49
  import '../chunk-EXHQ2QVW.js';
49
- export { FILTER_CHIP_ATTRIBUTE, FilterChip, FilterChipGroup } from '../chunk-5YLON2PW.js';
50
50
  export { ImageUpload } from '../chunk-DJMLHCLD.js';
51
51
  export { InboxGroup, InboxList, InboxMore, InboxRow, InboxToggle } from '../chunk-XYCADWZN.js';
52
52
  export { InlineCode } from '../chunk-NN62JQLR.js';
@@ -54,65 +54,65 @@ export { Document, DocumentTitle } from '../chunk-WI6K5M5X.js';
54
54
  export { EmptyState } from '../chunk-RA2ULG6H.js';
55
55
  export { EntityChip } from '../chunk-DDTDN5L2.js';
56
56
  export { ErrorBoundary } from '../chunk-XX2VQE55.js';
57
- export { FactList } from '../chunk-URYDN2KA.js';
58
- export { Tooltip } from '../chunk-CQY5NTRS.js';
59
57
  export { Eyebrow } from '../chunk-RK4XPHVG.js';
60
- export { useFullscreen } from '../chunk-XDTYBF2F.js';
61
- export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-5IXMLWGW.js';
58
+ export { FactList } from '../chunk-JI5AVQLA.js';
59
+ export { Tooltip } from '../chunk-QWOPX2MN.js';
60
+ export { FILTER_CHIP_ATTRIBUTE, FilterChip, FilterChipGroup } from '../chunk-5YLON2PW.js';
61
+ export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-4EOJR52M.js';
62
62
  export { PageHeader } from '../chunk-HOXGBLEY.js';
63
63
  export { RelativeTime, currentNow, formatElapsed, formatExact, formatRelative, formatUntil, toISO, toInstant, useNow } from '../chunk-3CZ7XAVY.js';
64
64
  export { Toolbar, ToolbarOverflow, ToolbarWide } from '../chunk-PGRPNDWM.js';
65
- export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-3VVKJ7AZ.js';
66
- export { Menu } from '../chunk-TFH6SYWB.js';
65
+ export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-TK6YC5QT.js';
66
+ export { Menu } from '../chunk-NS7BVLL3.js';
67
67
  export { EMPTY_VALUE, EmptyValue } from '../chunk-EUCC37WY.js';
68
- export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-AXNQCAFC.js';
69
- export { DescriptionList, DescriptionListItem } from '../chunk-XN4JBAN3.js';
68
+ export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-GUHP5JHC.js';
69
+ export { DescriptionList, DescriptionListItem } from '../chunk-F2XSYBKH.js';
70
70
  export { DIFF_LIST_LABELS, DiffList } from '../chunk-LFHCXZO5.js';
71
71
  export { Disclosure } from '../chunk-S4RCG44T.js';
72
- export { ChoiceButtons } from '../chunk-YSJC7AZC.js';
73
72
  export { Checkbox } from '../chunk-YCTMKKRA.js';
73
+ export { ChoiceButtons } from '../chunk-YSJC7AZC.js';
74
74
  export { ChoiceList } from '../chunk-QBXZLGK2.js';
75
+ export { CodeBlock } from '../chunk-KGTQ5CVD.js';
76
+ export { CopyButton, Copyable } from '../chunk-YACKC3K2.js';
77
+ export { useClipboard, writeClipboard } from '../chunk-5VNUYO76.js';
75
78
  export { Combobox } from '../chunk-4Y7WKXAW.js';
76
- export { CommandPalette } from '../chunk-WYQOHFML.js';
77
- export { ConfirmModal, Modal } from '../chunk-TFMJH2E6.js';
79
+ export { CommandPalette } from '../chunk-IYZZL3MZ.js';
80
+ export { ConfirmModal, Modal } from '../chunk-K4VORB64.js';
78
81
  export { HIGHLIGHT_REST_MS, TYPE_AHEAD_WINDOW, useHighlightRest, useListbox, useOptionKeys } from '../chunk-F73MC7EZ.js';
79
82
  export { COMPOSER_COUNTER_AT, Composer } from '../chunk-QSLIN64M.js';
80
83
  export { Kbd, isApplePlatform, keyGlyph } from '../chunk-SMBKXWML.js';
81
84
  export { FormField, FormRow, FormSection, Input, InputAffix, Label, ReadOnlyField, Textarea } from '../chunk-FTEJPHBI.js';
82
- export { CodeBlock } from '../chunk-KGTQ5CVD.js';
83
- export { CopyButton, Copyable } from '../chunk-YACKC3K2.js';
84
- export { useClipboard, writeClipboard } from '../chunk-5VNUYO76.js';
85
85
  export { Container } from '../chunk-QVE4GJAT.js';
86
86
  export { Breadcrumb } from '../chunk-VWNC2L6W.js';
87
87
  export { KeyChip } from '../chunk-FYTIJM2T.js';
88
- export { CalendarGrid, compareDays, daysInMonth, sameDay, shiftDay, shiftMonth, today } from '../chunk-GXQ3B46I.js';
89
88
  export { Callout } from '../chunk-R6FBDTP3.js';
90
- export { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, CANVAS_FIT_PADDING, CANVAS_FOCUS_CONTEXT, CANVAS_MAX_ZOOM, CANVAS_MIN_ZOOM, CANVAS_PAN_MARGIN, CANVAS_PAN_STEP, CANVAS_REVEAL_PADDING, CANVAS_TAP_SLOP, CANVAS_WHEEL_LINE_PX, CANVAS_WHEEL_ZOOM_PER_PIXEL, CANVAS_ZOOM_CEILING, CANVAS_ZOOM_LIMITS, CANVAS_ZOOM_STEP, Canvas, IDENTITY_VIEW, anchorView, beyondSlop, clampPan, clampZoom, fitView, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from '../chunk-2PZBIHRV.js';
91
- import '../chunk-53DVJCVW.js';
89
+ export { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, CANVAS_FIT_PADDING, CANVAS_FOCUS_CONTEXT, CANVAS_MAX_ZOOM, CANVAS_MIN_ZOOM, CANVAS_PAN_MARGIN, CANVAS_PAN_STEP, CANVAS_REVEAL_PADDING, CANVAS_TAP_SLOP, CANVAS_WHEEL_LINE_PX, CANVAS_WHEEL_ZOOM_PER_PIXEL, CANVAS_ZOOM_CEILING, CANVAS_ZOOM_LIMITS, CANVAS_ZOOM_STEP, Canvas, IDENTITY_VIEW, anchorView, beyondSlop, clampPan, clampZoom, fitView, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from '../chunk-AMH67MLM.js';
90
+ import '../chunk-VYOKRN2I.js';
92
91
  export { Button, ButtonLink } from '../chunk-OG6CL3EB.js';
92
+ export { CalendarGrid, compareDays, daysInMonth, sameDay, shiftDay, shiftMonth, today } from '../chunk-GXQ3B46I.js';
93
93
  export { Card } from '../chunk-EG6NYWVK.js';
94
94
  export { useCardHeaderSlot } from '../chunk-AV2DXAEL.js';
95
95
  import '../chunk-3L5NHASN.js';
96
- export { ActivityStrip, BarList, ChartTooltip, DATA_COLORS, DATA_COLOR_OTHER, Legend, Sparkline, StackedBar, StackedColumns, TimeSeries, dataColor, niceScale, useChartHover } from '../chunk-4WNNEDKO.js';
96
+ export { ActivityStrip, BarList, ChartTooltip, DATA_COLORS, DATA_COLOR_OTHER, Legend, Sparkline, StackedBar, StackedColumns, TimeSeries, dataColor, niceScale, useChartHover } from '../chunk-MLT2HBPN.js';
97
97
  export { Accordion, AccordionItem } from '../chunk-G2AVKPSL.js';
98
98
  export { DisclosureAnatomy } from '../chunk-ENJUPIND.js';
99
99
  export { HeadingLevelProvider, headingTag, nextHeadingLevel, useHeadingLevel } from '../chunk-PQADV6P6.js';
100
- export { ADD_PILL_MS, AddPill } from '../chunk-74WGARJE.js';
100
+ export { ADD_PILL_MS, AddPill } from '../chunk-TROLVEZY.js';
101
101
  export { Announcer, announce, useAnnouncer } from '../chunk-RSAQOKH3.js';
102
- export { AppShell, AppShellRail, AppShellRailRow, AppShellToggle, AppShellTopbar, useAppShell } from '../chunk-L3CTFFLZ.js';
102
+ export { AppShell, AppShellRail, AppShellRailRow, AppShellToggle, AppShellTopbar, useAppShell } from '../chunk-H3XOMT7W.js';
103
103
  import '../chunk-IG75YMUN.js';
104
104
  export { IconButton } from '../chunk-4FQT6ZAY.js';
105
- export { AvatarStack, avatarStackLabel } from '../chunk-6NIZCQUM.js';
106
- export { AvatarPicker } from '../chunk-4FFHJBEN.js';
105
+ export { AvatarStack, avatarStackLabel } from '../chunk-ZPWUVVIB.js';
106
+ export { AvatarPicker } from '../chunk-EFNHOVC2.js';
107
107
  export { HuePicker } from '../chunk-NXDEPUVG.js';
108
108
  export { NODE_HUES, NODE_HUE_NAMES, isNodeHue } from '../chunk-AYKXMIOR.js';
109
109
  export { SegmentedControl } from '../chunk-26PEPONN.js';
110
110
  export { TabPanel, Tabs, tabId } from '../chunk-4LDTQWS7.js';
111
- export { Popover } from '../chunk-O2ZDZZS7.js';
111
+ export { Popover } from '../chunk-BWRGFKJP.js';
112
112
  export { CHARACTER_PICKER_COLUMNS, CharacterPicker } from '../chunk-YXMCUKFI.js';
113
113
  import '../chunk-CBOICT64.js';
114
114
  export { Count } from '../chunk-BHHIIK3M.js';
115
- export { LAYER_GAP, LAYER_REPOSITION_EVENT, LayerHost, outsideBounds, placePopup, useLayerContainer, viewportBounds } from '../chunk-7RPGY3JE.js';
115
+ export { LAYER_GAP, LAYER_REPOSITION_EVENT, LayerHost, outsideBounds, placePopup, useLayerContainer, viewportBounds } from '../chunk-HMPFGIWM.js';
116
116
  export { focusables, isComposing, isModalLayerOpen, layerCount, useBodyScrollLock, useModalLayer, usePopupLayer } from '../chunk-R25RGPUB.js';
117
117
  export { VisuallyHidden } from '../chunk-BZFWDIV6.js';
118
118
  export { AVATAR_CHARACTER_FULL_DETAIL, AVATAR_CORNER_RATIO, AVATAR_SIZES, AVATAR_STATUSES, AVATAR_STATUS_LABELS, Avatar, avatarCorner, avatarPixels, avatarTint, getInitials } from '../chunk-HI6Q2UXQ.js';