@crewlethq/ui 0.33.0 → 0.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/README.md +18 -0
  2. package/dist/ArtifactBar/index.js +6 -4
  3. package/dist/ArtifactCard/ArtifactCard.d.ts +51 -11
  4. package/dist/ArtifactCard/index.d.ts +2 -2
  5. package/dist/ArtifactCard/index.js +3 -1
  6. package/dist/ArtifactCard-XHRLAL7C.css +289 -0
  7. package/dist/ArtifactCover/index.js +4 -2
  8. package/dist/ArtifactIcon/index.js +4 -2
  9. package/dist/ArtifactKindIllustration/ArtifactKindIllustration.d.ts +53 -0
  10. package/dist/ArtifactKindIllustration/index.d.ts +3 -0
  11. package/dist/ArtifactKindIllustration/index.js +3 -0
  12. package/dist/ArtifactKindIllustration-4NG6IE3C.css +211 -0
  13. package/dist/Canvas/index.js +2 -2
  14. package/dist/CanvasBoard/index.js +4 -4
  15. package/dist/CanvasToolbar/index.js +3 -3
  16. package/dist/ChangeMark/index.js +3 -3
  17. package/dist/FactList/index.js +2 -2
  18. package/dist/LivePreview/LivePreview.d.ts +83 -0
  19. package/dist/LivePreview/budget.d.ts +50 -0
  20. package/dist/LivePreview/index.d.ts +5 -0
  21. package/dist/LivePreview/index.js +2 -0
  22. package/dist/LivePreview-SRO7KHO4.css +65 -0
  23. package/dist/RichEditor/index.js +2 -2
  24. package/dist/SandboxedFrame/index.js +2 -2
  25. package/dist/Select/Select.d.ts +10 -0
  26. package/dist/Select/index.d.ts +1 -1
  27. package/dist/Select/index.js +1 -1
  28. package/dist/{Select-2P7AWUE4.css → Select-A54YS5EP.css} +29 -0
  29. package/dist/ShareDialog/index.js +2 -2
  30. package/dist/SheetGrid/SheetGrid.d.ts +4 -2
  31. package/dist/SheetGrid/index.js +4 -4
  32. package/dist/{SheetGrid-AKPUCK67.css → SheetGrid-GDPCCZ4V.css} +52 -11
  33. package/dist/SheetModel/index.js +1 -1
  34. package/dist/SheetModel/labels.d.ts +1 -1
  35. package/dist/Switcher/index.js +2 -2
  36. package/dist/TimeWindowPicker/index.js +2 -2
  37. package/dist/Tooltip/Tooltip.d.ts +12 -1
  38. package/dist/Tooltip/index.d.ts +1 -1
  39. package/dist/Tooltip/index.js +1 -1
  40. package/dist/TreeCanvas/index.js +3 -3
  41. package/dist/{chunk-22UEIXZE.js → chunk-3P4Y5RX6.js} +1 -1
  42. package/dist/{chunk-GLSOD5Z4.js → chunk-3Y56GQPM.js} +1 -1
  43. package/dist/{chunk-5FYPE5GL.js → chunk-6ZJ3N7QI.js} +5 -2
  44. package/dist/{chunk-2DHMVB5J.js → chunk-AORVEG5V.js} +1 -1
  45. package/dist/{chunk-UQGFHNDI.js → chunk-BQ7AKL2N.js} +3 -2
  46. package/dist/{chunk-ORT5IKHP.js → chunk-CCLNGVCM.js} +1 -1
  47. package/dist/{chunk-UNXLTJU7.js → chunk-CFAJP777.js} +1 -1
  48. package/dist/{chunk-G4ZW7A2W.js → chunk-EWAFN2IU.js} +33 -34
  49. package/dist/{chunk-7WHDPLVJ.js → chunk-HOIZ6MIS.js} +1 -1
  50. package/dist/{chunk-Z6GFMI2Z.js → chunk-IUD5VA2Z.js} +2 -2
  51. package/dist/chunk-KF6YGL4B.js +160 -0
  52. package/dist/{chunk-HH2GKAAE.js → chunk-PLDUNXAO.js} +1 -1
  53. package/dist/{chunk-ZNBLFCQS.js → chunk-SGHIAGPR.js} +2 -2
  54. package/dist/chunk-UDQW6UK7.js +129 -0
  55. package/dist/{chunk-4IJS5CPF.js → chunk-UHJQDFKQ.js} +1 -1
  56. package/dist/{chunk-J6ZSH3F5.js → chunk-VI5FWDZW.js} +2 -2
  57. package/dist/{chunk-MDNVHIB2.js → chunk-WPX6A5BV.js} +2 -2
  58. package/dist/chunk-XTOVADJU.js +170 -0
  59. package/dist/generated/index.d.ts +2 -0
  60. package/dist/generated/index.js +48 -46
  61. package/dist/index.js +48 -46
  62. package/dist/styles.css +544 -27
  63. package/package.json +3 -3
  64. package/dist/ArtifactCard-AS5Z4CVI.css +0 -124
  65. package/dist/chunk-DFZMYB5X.js +0 -108
  66. package/dist/{chunk-3U7S6ZUN.js → chunk-356JNSER.js} +1 -1
  67. package/dist/{chunk-MTMKIUWF.js → chunk-E4NNGC6X.js} +1 -1
  68. package/dist/{chunk-O37AQNLK.js → chunk-GMU6SQ6B.js} +1 -1
  69. /package/dist/{chunk-2JJIN6JN.js → chunk-YCARLYI6.js} +0 -0
@@ -0,0 +1,129 @@
1
+ import { VisuallyHidden } from './chunk-BZFWDIV6.js';
2
+ import { cx } from './chunk-ODEQTPFM.js';
3
+ import './ArtifactKindIllustration-4NG6IE3C.css';
4
+ import { useId } from 'react';
5
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
6
+
7
+ function ArtifactKindIllustration({ kind, className }) {
8
+ return /* @__PURE__ */ jsx(
9
+ "svg",
10
+ {
11
+ viewBox: "0 0 160 120",
12
+ "aria-hidden": "true",
13
+ focusable: "false",
14
+ className: cx("crewlet-kind-illustration", `crewlet-kind--${kind}`, className),
15
+ children: DRAWINGS[kind]
16
+ }
17
+ );
18
+ }
19
+ var DRAWINGS = {
20
+ doc: /* @__PURE__ */ jsxs(Fragment, { children: [
21
+ /* @__PURE__ */ jsx("rect", { className: "b", x: "52", y: "12", width: "56", height: "96", rx: "7" }),
22
+ /* @__PURE__ */ jsx("rect", { className: "m", x: "62", y: "24", width: "24", height: "6", rx: "3" }),
23
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "62", y: "38", width: "36", height: "4", rx: "2" }),
24
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "62", y: "46", width: "30", height: "4", rx: "2" }),
25
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "62", y: "54", width: "34", height: "4", rx: "2" }),
26
+ /* @__PURE__ */ jsx("circle", { className: "m", cx: "65", cy: "70", r: "3.5" }),
27
+ /* @__PURE__ */ jsx("path", { className: "c", d: "M63.2 70.1l1.3 1.3 2.4-2.6" }),
28
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "72", y: "68", width: "24", height: "4", rx: "2" }),
29
+ /* @__PURE__ */ jsx("circle", { className: "s", cx: "65", cy: "80", r: "3.5" }),
30
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "72", y: "78", width: "20", height: "4", rx: "2" }),
31
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "62", y: "92", width: "28", height: "4", rx: "2" })
32
+ ] }),
33
+ slides: /* @__PURE__ */ jsxs(Fragment, { children: [
34
+ /* @__PURE__ */ jsx("rect", { className: "b", x: "22", y: "24", width: "116", height: "72", rx: "8" }),
35
+ /* @__PURE__ */ jsx("rect", { className: "m", x: "34", y: "38", width: "50", height: "9", rx: "4.5" }),
36
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "34", y: "55", width: "42", height: "5", rx: "2.5" }),
37
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "34", y: "65", width: "34", height: "5", rx: "2.5" }),
38
+ /* @__PURE__ */ jsx("rect", { className: "s", x: "92", y: "50", width: "34", height: "32", rx: "6" })
39
+ ] }),
40
+ design: /* @__PURE__ */ jsxs(Fragment, { children: [
41
+ /* @__PURE__ */ jsx("rect", { className: "b", x: "58", y: "8", width: "44", height: "104", rx: "10" }),
42
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "72", y: "15", width: "16", height: "3.5", rx: "1.75" }),
43
+ /* @__PURE__ */ jsx("circle", { className: "s", cx: "69", cy: "33", r: "4.5" }),
44
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "77", y: "31", width: "17", height: "4", rx: "2" }),
45
+ /* @__PURE__ */ jsx("circle", { className: "s", cx: "69", cy: "46", r: "4.5" }),
46
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "77", y: "44", width: "13", height: "4", rx: "2" }),
47
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "65", y: "57", width: "30", height: "22", rx: "4" }),
48
+ /* @__PURE__ */ jsx("rect", { className: "s", x: "62", y: "94", width: "36", height: "14", rx: "6" }),
49
+ /* @__PURE__ */ jsx("circle", { className: "m", cx: "71", cy: "101", r: "2.2" }),
50
+ /* @__PURE__ */ jsx("circle", { className: "c c--fill", cx: "80", cy: "101", r: "2.2" }),
51
+ /* @__PURE__ */ jsx("circle", { className: "c c--fill", cx: "89", cy: "101", r: "2.2" })
52
+ ] }),
53
+ dashboard: /* @__PURE__ */ jsxs(Fragment, { children: [
54
+ /* @__PURE__ */ jsx("rect", { className: "b", x: "22", y: "24", width: "116", height: "72", rx: "8" }),
55
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "34", y: "34", width: "26", height: "4", rx: "2" }),
56
+ /* @__PURE__ */ jsx("rect", { className: "s", x: "40", y: "66", width: "13", height: "18", rx: "3.5" }),
57
+ /* @__PURE__ */ jsx("rect", { className: "s", x: "60", y: "56", width: "13", height: "28", rx: "3.5" }),
58
+ /* @__PURE__ */ jsx("rect", { className: "m", x: "80", y: "42", width: "13", height: "42", rx: "3.5" }),
59
+ /* @__PURE__ */ jsx("rect", { className: "s", x: "100", y: "60", width: "13", height: "24", rx: "3.5" })
60
+ ] }),
61
+ html: /* @__PURE__ */ jsxs(Fragment, { children: [
62
+ /* @__PURE__ */ jsx("rect", { className: "b", x: "22", y: "22", width: "116", height: "76", rx: "8" }),
63
+ /* @__PURE__ */ jsx("circle", { className: "l", cx: "33", cy: "32", r: "2.5" }),
64
+ /* @__PURE__ */ jsx("circle", { className: "l", cx: "41", cy: "32", r: "2.5" }),
65
+ /* @__PURE__ */ jsx("circle", { className: "l", cx: "49", cy: "32", r: "2.5" }),
66
+ /* @__PURE__ */ jsx("path", { className: "r", d: "M22.75 41h114.5" }),
67
+ /* @__PURE__ */ jsx("path", { className: "k", d: "M60 58l-11 9 11 9" }),
68
+ /* @__PURE__ */ jsx("path", { className: "k", d: "M100 58l11 9-11 9" }),
69
+ /* @__PURE__ */ jsx("path", { className: "k k--soft", d: "M86 54l-12 26" })
70
+ ] }),
71
+ sheet: /* @__PURE__ */ jsxs(Fragment, { children: [
72
+ /* @__PURE__ */ jsx("rect", { className: "b", x: "22", y: "22", width: "116", height: "76", rx: "8" }),
73
+ /* @__PURE__ */ jsx("path", { className: "r", d: "M22.75 40h114.5M22.75 54h114.5M22.75 68h114.5M22.75 82h114.5M60 22.75v74.5M100 22.75v74.5" }),
74
+ /* @__PURE__ */ jsx("rect", { className: "s", x: "30", y: "29", width: "22", height: "4.5", rx: "2.25" }),
75
+ /* @__PURE__ */ jsx("rect", { className: "s", x: "68", y: "29", width: "22", height: "4.5", rx: "2.25" }),
76
+ /* @__PURE__ */ jsx("rect", { className: "s", x: "108", y: "29", width: "22", height: "4.5", rx: "2.25" }),
77
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "30", y: "45", width: "18", height: "4", rx: "2" }),
78
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "68", y: "45", width: "24", height: "4", rx: "2" }),
79
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "108", y: "45", width: "16", height: "4", rx: "2" }),
80
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "30", y: "59", width: "22", height: "4", rx: "2" }),
81
+ /* @__PURE__ */ jsx("rect", { className: "m", x: "64", y: "57", width: "32", height: "8", rx: "2.5" }),
82
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "108", y: "59", width: "20", height: "4", rx: "2" }),
83
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "30", y: "73", width: "16", height: "4", rx: "2" }),
84
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "68", y: "73", width: "20", height: "4", rx: "2" }),
85
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "108", y: "73", width: "22", height: "4", rx: "2" }),
86
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "30", y: "87", width: "20", height: "4", rx: "2" }),
87
+ /* @__PURE__ */ jsx("rect", { className: "l", x: "68", y: "87", width: "14", height: "4", rx: "2" })
88
+ ] })
89
+ };
90
+ function ArtifactKindGround({
91
+ kind,
92
+ className,
93
+ children
94
+ }) {
95
+ return /* @__PURE__ */ jsx("span", { "aria-hidden": "true", className: cx("crewlet-kind-ground", `crewlet-kind--${kind}`, className), children: children ?? /* @__PURE__ */ jsx(ArtifactKindIllustration, { kind }) });
96
+ }
97
+ function ArtifactKindTile({ kind, label, href, badge, disabledReason, className }) {
98
+ const reasonId = useId();
99
+ const off = disabledReason !== void 0 || href === void 0;
100
+ const body = /* @__PURE__ */ jsxs(Fragment, { children: [
101
+ /* @__PURE__ */ jsx("span", { className: "crewlet-kind-tile__frame", children: /* @__PURE__ */ jsx(ArtifactKindGround, { kind, className: "crewlet-kind-tile__ground" }) }),
102
+ /* @__PURE__ */ jsxs("span", { className: "crewlet-kind-tile__label", children: [
103
+ /* @__PURE__ */ jsx("span", { className: "crewlet-kind-tile__name", children: label }),
104
+ badge ? /* @__PURE__ */ jsx("span", { className: "crewlet-kind-tile__badge", children: badge }) : null
105
+ ] })
106
+ ] });
107
+ const name = badge ? `${label}, ${badge}` : label;
108
+ if (off) {
109
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
110
+ /* @__PURE__ */ jsx(
111
+ "span",
112
+ {
113
+ role: "link",
114
+ tabIndex: 0,
115
+ "aria-label": name,
116
+ "aria-disabled": "true",
117
+ "aria-describedby": disabledReason ? reasonId : void 0,
118
+ title: disabledReason,
119
+ className: cx("crewlet-kind-tile", "crewlet-kind-tile--disabled", className),
120
+ children: body
121
+ }
122
+ ),
123
+ disabledReason ? /* @__PURE__ */ jsx(VisuallyHidden, { id: reasonId, children: disabledReason }) : null
124
+ ] });
125
+ }
126
+ return /* @__PURE__ */ jsx("a", { href, "aria-label": name, className: cx("crewlet-kind-tile", className), children: body });
127
+ }
128
+
129
+ export { ArtifactKindGround, ArtifactKindIllustration, ArtifactKindTile };
@@ -1,5 +1,5 @@
1
1
  import { useTreeState, useMeasuredSizes, layoutForest, treeAncestors, useLayoutAnchor, treeExpandable, layoutConnectors, treeItemAction, treeStep, treePosInSet, treeSetSize, treeLevel, placeGroups } from './chunk-MY374UUD.js';
2
- import { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, Canvas } from './chunk-22UEIXZE.js';
2
+ import { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, Canvas } from './chunk-3P4Y5RX6.js';
3
3
  import { focusables } from './chunk-R25RGPUB.js';
4
4
  import { cx } from './chunk-ODEQTPFM.js';
5
5
  import './TreeCanvas-L2XYONWL.css';
@@ -76,9 +76,9 @@ var SHEET_LABELS = {
76
76
  retry: "Retry",
77
77
  dismiss: "Dismiss",
78
78
  notSaved: (reason) => `Not saved: ${reason}`,
79
- rowActions: (row) => `Row actions for row ${row}`,
79
+ rowActions: (row) => `Actions for row ${row}`,
80
80
  deleteRow: "Delete row",
81
- rowActionsHelp: "Shift and F10 opens the actions of the row.",
81
+ rowActionsHelp: "Shift with F10 opens the actions of the row.",
82
82
  filter: "Filter options",
83
83
  noOptions: "No matching options",
84
84
  clear: "Clear",
@@ -1,6 +1,6 @@
1
1
  import { Note } from './chunk-5SZGKSGL.js';
2
- import { CanvasToolbar, toolForKey } from './chunk-GLSOD5Z4.js';
3
- import { IDENTITY_VIEW, Canvas } from './chunk-22UEIXZE.js';
2
+ import { CanvasToolbar, toolForKey } from './chunk-3Y56GQPM.js';
3
+ import { IDENTITY_VIEW, Canvas } from './chunk-3P4Y5RX6.js';
4
4
  import { IconButton } from './chunk-4FQT6ZAY.js';
5
5
  import { cx } from './chunk-ODEQTPFM.js';
6
6
  import './CanvasBoard-5NNSKY6A.css';
@@ -0,0 +1,170 @@
1
+ import { Skeleton } from './chunk-TEUQWOWZ.js';
2
+ import { PrincipalAvatar } from './chunk-CI3VPIJN.js';
3
+ import { RelativeTime } from './chunk-3CZ7XAVY.js';
4
+ import { Card } from './chunk-ACA27MZH.js';
5
+ import { AvatarStack } from './chunk-5AQBPHZD.js';
6
+ import { ArtifactKindGround } from './chunk-UDQW6UK7.js';
7
+ import { VisuallyHidden } from './chunk-BZFWDIV6.js';
8
+ import { cx } from './chunk-ODEQTPFM.js';
9
+ import './ArtifactCard-XHRLAL7C.css';
10
+ import { useId } from 'react';
11
+ import { TableGlyph, LayoutDashboardGlyph, PaletteGlyph, PresentationGlyph, FileTextGlyph, FileCodeGlyph, PinGlyph, BuildingComplexGlyph, UsersGlyph, LockGlyph } from '@crewlethq/icons/glyphs';
12
+ import { jsx, jsxs } from 'react/jsx-runtime';
13
+
14
+ var ARTIFACT_KINDS = ["html", "doc", "slides", "design", "dashboard", "sheet"];
15
+ var KIND_GLYPHS = {
16
+ html: FileCodeGlyph,
17
+ doc: FileTextGlyph,
18
+ slides: PresentationGlyph,
19
+ design: PaletteGlyph,
20
+ dashboard: LayoutDashboardGlyph,
21
+ sheet: TableGlyph
22
+ };
23
+ function ArtifactKindGlyph({ kind, size = "md" }) {
24
+ const Drawn = KIND_GLYPHS[kind];
25
+ return /* @__PURE__ */ jsx(Drawn, { size });
26
+ }
27
+ function ArtifactPreviewGlyph({ kind }) {
28
+ return /* @__PURE__ */ jsx(ArtifactKindGround, { kind });
29
+ }
30
+ var ACCESS_GLYPHS = {
31
+ private: LockGlyph,
32
+ shared: UsersGlyph,
33
+ company: BuildingComplexGlyph
34
+ };
35
+ var LABELS = {
36
+ kinds: { html: "HTML", doc: "Doc", slides: "Slides", design: "Design", dashboard: "Dashboard", sheet: "Sheet" },
37
+ pinned: "Pinned",
38
+ version: (version) => `v${version}`,
39
+ changes: (count) => count === 1 ? "1 change since you looked" : `${count} changes since you looked`,
40
+ present: (count) => count === 1 ? "1 here now" : `${count} here now`,
41
+ updated: "Edited",
42
+ by: (name) => `by ${name}`,
43
+ access: { private: "Private", shared: "Shared", company: "Shared with the company" }
44
+ };
45
+ function ArtifactCard({
46
+ title,
47
+ kind,
48
+ href,
49
+ preview,
50
+ owner,
51
+ updatedAt,
52
+ updatedBy,
53
+ presence,
54
+ changes,
55
+ pinned = false,
56
+ version,
57
+ project,
58
+ access,
59
+ actions,
60
+ trashed = false,
61
+ size = "card",
62
+ className,
63
+ now,
64
+ labels
65
+ }) {
66
+ const text = {
67
+ ...LABELS,
68
+ ...labels,
69
+ kinds: { ...LABELS.kinds, ...labels?.kinds },
70
+ access: { ...LABELS.access, ...labels?.access }
71
+ };
72
+ const titleId = useId();
73
+ const factsId = useId();
74
+ const present = presence && presence.length > 0 ? presence : null;
75
+ const changedBy = updatedBy && updatedBy !== owner?.name ? updatedBy : void 0;
76
+ const edited = /* @__PURE__ */ jsxs("span", { children: [
77
+ `${text.updated} `,
78
+ /* @__PURE__ */ jsx(RelativeTime, { value: updatedAt, now }),
79
+ changedBy ? ` ${text.by(changedBy)}` : null
80
+ ] });
81
+ const extra = present || changes !== void 0 && changes > 0 ? /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__line", children: [
82
+ present ? /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__presence", children: [
83
+ /* @__PURE__ */ jsx(AvatarStack, { members: present, max: 3, size: "xs", decorative: true }),
84
+ /* @__PURE__ */ jsx("span", { children: text.present(present.length) })
85
+ ] }) : null,
86
+ changes !== void 0 && changes > 0 ? /* @__PURE__ */ jsx("span", { className: "crewlet-artifact-card__changes", children: text.changes(changes) }) : null
87
+ ] }) : null;
88
+ if (size === "compact") {
89
+ return /* @__PURE__ */ jsxs(
90
+ Card,
91
+ {
92
+ href,
93
+ variant: "subtle",
94
+ padding: "none",
95
+ className: cx("crewlet-artifact-card", "crewlet-artifact-card--compact", className),
96
+ "aria-labelledby": titleId,
97
+ "aria-describedby": factsId,
98
+ children: [
99
+ /* @__PURE__ */ jsx("span", { className: "crewlet-artifact-card__glyph crewlet-artifact-card__glyph--compact", "aria-hidden": true, children: /* @__PURE__ */ jsx(ArtifactKindGlyph, { kind, size: "lg" }) }),
100
+ /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__body", children: [
101
+ /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__title-row", children: [
102
+ /* @__PURE__ */ jsx("span", { id: titleId, className: "crewlet-artifact-card__title", title, children: title }),
103
+ pinned ? /* @__PURE__ */ jsx("span", { className: "crewlet-artifact-card__pin", title: text.pinned, "aria-hidden": true, children: /* @__PURE__ */ jsx(PinGlyph, { size: "xs" }) }) : null
104
+ ] }),
105
+ /* @__PURE__ */ jsxs("span", { id: factsId, className: "crewlet-artifact-card__facts", children: [
106
+ /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__line", children: [
107
+ /* @__PURE__ */ jsx("span", { children: text.kinds[kind] }),
108
+ project ? /* @__PURE__ */ jsx("span", { children: project }) : null,
109
+ version !== void 0 ? /* @__PURE__ */ jsx("span", { children: text.version(version) }) : null,
110
+ pinned ? /* @__PURE__ */ jsx(VisuallyHidden, { children: text.pinned }) : null
111
+ ] }),
112
+ /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__line", children: [
113
+ owner ? /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__owner", children: [
114
+ /* @__PURE__ */ jsx(PrincipalAvatar, { principal: owner, size: "xs" }),
115
+ /* @__PURE__ */ jsx("span", { children: owner.name })
116
+ ] }) : null,
117
+ edited
118
+ ] }),
119
+ extra
120
+ ] })
121
+ ] })
122
+ ]
123
+ }
124
+ );
125
+ }
126
+ const Access = access ? ACCESS_GLYPHS[access] : null;
127
+ return /* @__PURE__ */ jsxs("div", { className: cx("crewlet-artifact-card", "crewlet-artifact-card--card", trashed && "crewlet-artifact-card--trashed", className), children: [
128
+ /* @__PURE__ */ jsxs("a", { href, className: "crewlet-artifact-card__link", "aria-labelledby": titleId, "aria-describedby": factsId, children: [
129
+ /* @__PURE__ */ jsx("span", { className: "crewlet-artifact-card__preview", "aria-hidden": true, children: preview ?? /* @__PURE__ */ jsx(ArtifactPreviewGlyph, { kind }) }),
130
+ /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__body", children: [
131
+ /* @__PURE__ */ jsx("span", { className: cx("crewlet-artifact-card__badge", `crewlet-kind--${kind}`), "aria-hidden": true, children: /* @__PURE__ */ jsx(ArtifactKindGlyph, { kind, size: "md" }) }),
132
+ /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__title-row", children: [
133
+ /* @__PURE__ */ jsx("span", { id: titleId, className: "crewlet-artifact-card__title", title, children: title }),
134
+ pinned ? /* @__PURE__ */ jsx("span", { className: "crewlet-artifact-card__pin", title: text.pinned, "aria-hidden": true, children: /* @__PURE__ */ jsx(PinGlyph, { size: "sm" }) }) : null
135
+ ] }),
136
+ /* @__PURE__ */ jsxs("span", { id: factsId, className: "crewlet-artifact-card__facts", children: [
137
+ /* @__PURE__ */ jsxs(VisuallyHidden, { children: [
138
+ text.kinds[kind],
139
+ pinned ? `, ${text.pinned}` : ""
140
+ ] }),
141
+ /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__line crewlet-artifact-card__meta", children: [
142
+ Access && access ? /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__access", title: text.access[access], children: [
143
+ /* @__PURE__ */ jsx(Access, { size: "sm" }),
144
+ /* @__PURE__ */ jsx(VisuallyHidden, { children: text.access[access] })
145
+ ] }) : null,
146
+ owner ? /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__owner", children: [
147
+ /* @__PURE__ */ jsx(PrincipalAvatar, { principal: owner, size: "xs" }),
148
+ /* @__PURE__ */ jsx("span", { className: "crewlet-artifact-card__owner-name", children: owner.name })
149
+ ] }) : null,
150
+ edited
151
+ ] }),
152
+ extra
153
+ ] })
154
+ ] })
155
+ ] }),
156
+ actions ? /* @__PURE__ */ jsx("span", { className: "crewlet-artifact-card__actions", children: actions }) : null
157
+ ] });
158
+ }
159
+ function ArtifactCardSkeleton({ className }) {
160
+ return /* @__PURE__ */ jsxs("div", { className: cx("crewlet-artifact-card", "crewlet-artifact-card--card", "crewlet-artifact-card--skeleton", className), "aria-hidden": true, children: [
161
+ /* @__PURE__ */ jsx("span", { className: "crewlet-artifact-card__preview", children: /* @__PURE__ */ jsx(Skeleton, { variant: "box", width: "100%", height: "100%", borderRadius: 0 }) }),
162
+ /* @__PURE__ */ jsxs("span", { className: "crewlet-artifact-card__body", children: [
163
+ /* @__PURE__ */ jsx("span", { className: "crewlet-artifact-card__badge" }),
164
+ /* @__PURE__ */ jsx(Skeleton, { variant: "box", width: "62%", height: 18, borderRadius: "var(--radius-sm)" }),
165
+ /* @__PURE__ */ jsx(Skeleton, { variant: "box", width: "38%", height: 12, borderRadius: "var(--radius-sm)", marginTop: 6 })
166
+ ] })
167
+ ] });
168
+ }
169
+
170
+ export { ARTIFACT_KINDS, ArtifactCard, ArtifactCardSkeleton, ArtifactKindGlyph, ArtifactPreviewGlyph };
@@ -12,6 +12,7 @@ export * from '../ArtifactBar/index.js';
12
12
  export * from '../ArtifactCard/index.js';
13
13
  export * from '../ArtifactCover/index.js';
14
14
  export * from '../ArtifactIcon/index.js';
15
+ export * from '../ArtifactKindIllustration/index.js';
15
16
  export * from '../ArtifactPanel/index.js';
16
17
  export * from '../AuthLayout/index.js';
17
18
  export * from '../Avatar/index.js';
@@ -85,6 +86,7 @@ export * from '../List/index.js';
85
86
  export * from '../ListInput/index.js';
86
87
  export * from '../Listbox/index.js';
87
88
  export * from '../LiveCursor/index.js';
89
+ export * from '../LivePreview/index.js';
88
90
  export * from '../Markdown/index.js';
89
91
  export * from '../MarkdownEditor/index.js';
90
92
  export * from '../MediaMatch/index.js';
@@ -1,53 +1,55 @@
1
- import '../chunk-2JJIN6JN.js';
2
- export { TreeCanvas } from '../chunk-4IJS5CPF.js';
1
+ import '../chunk-YCARLYI6.js';
2
+ export { ElementToPngError, elementToPng, serializeElement, toCsv } from '../chunk-UOR7TOAU.js';
3
+ export { TreeCanvas } from '../chunk-UHJQDFKQ.js';
3
4
  export { VERSION_COMPARE_LABELS, VERSION_COMPARE_LENSES, VersionCompare } from '../chunk-PLTCDSTU.js';
4
5
  export { VersionTimeline } from '../chunk-VHZ3AXJD.js';
5
6
  export { WidgetFrame } from '../chunk-DFK5EQTU.js';
6
- export { ElementToPngError, elementToPng, serializeElement, toCsv } from '../chunk-UOR7TOAU.js';
7
+ export { ThemeGallery } from '../chunk-C2FRTWKO.js';
8
+ export { ThemeSwatch } from '../chunk-MNFU2RNT.js';
7
9
  export { DensitySwitcher, ThemeSwitcher } from '../chunk-2QEDJSJC.js';
8
10
  export { ThemeToggle } from '../chunk-NP2C4Y4E.js';
9
11
  export { applyStoredPreferences, resolveTheme, useDensityPreference, useSystemTheme, useThemePreference } from '../chunk-Z24ZUSTX.js';
10
- export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-2DHMVB5J.js';
12
+ export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-AORVEG5V.js';
11
13
  export { Timeline, TimelineItem } from '../chunk-AUQPBL4O.js';
12
14
  export { ToastProvider, Toaster, useToast } from '../chunk-AC22RZKC.js';
15
+ export { Switcher } from '../chunk-GMU6SQ6B.js';
16
+ export { Table } from '../chunk-V2N3BMOT.js';
13
17
  export { TABLE_TAGS_CELL_LABELS, TableDateCell, TableEntityCell, TableKeyCell, TableNumberCell, TableStatusCell, TableTagsCell, TableTextCell } from '../chunk-K4VP6ZKE.js';
14
18
  export { TagsInput } from '../chunk-2CQLNML5.js';
15
19
  export { Text } from '../chunk-IKBK4A5O.js';
16
- export { ThemeGallery } from '../chunk-C2FRTWKO.js';
17
- export { ThemeSwatch } from '../chunk-MNFU2RNT.js';
20
+ export { SlideGrid } from '../chunk-ILAEBSLJ.js';
18
21
  export { StatCard } from '../chunk-XO7PUL4F.js';
19
22
  export { StatGroup } from '../chunk-JXRI5YD2.js';
20
23
  export { Stepper } from '../chunk-5QWIJSQM.js';
21
- export { Switcher } from '../chunk-O37AQNLK.js';
22
- export { Table } from '../chunk-V2N3BMOT.js';
23
- export { NavGroup, NavItem, SidebarNav } from '../chunk-UCCC7YVZ.js';
24
+ export { ARTIFACT_ROLES, SHAREABLE_ROLES, ShareDialog, roleAtLeast } from '../chunk-CCLNGVCM.js';
25
+ export { CellDisplay, CellEditor, CheckboxCell, DateCell, LongTextCell, MultiSelectCell, NumberCell, PersonCell, RatingCell, SelectCell, SheetCell, SheetGrid, StatusCell, TextCell, UrlCell } from '../chunk-EWAFN2IU.js';
26
+ export { TagGroup } from '../chunk-O2EGEONV.js';
24
27
  export { matchesShortcut, useShortcut } from '../chunk-2FPENTCF.js';
28
+ export { NavGroup, NavItem, SidebarNav } from '../chunk-UCCC7YVZ.js';
25
29
  export { SLIDE_COMPARE_LABELS, SlideCompare } from '../chunk-LL5AFXU7.js';
26
30
  export { SlideFilmstrip } from '../chunk-XV32RKQZ.js';
27
- export { SlideGrid } from '../chunk-ILAEBSLJ.js';
28
- export { FRAME_HELLO_TIMEOUT_MS, FRAME_LOAD_GRACE_MS, SandboxedFrame, SandboxedFrameNotice, SandboxedFramePlaceholder } from '../chunk-3U7S6ZUN.js';
31
+ export { RichEditor, preloadRichEditor } from '../chunk-E4NNGC6X.js';
32
+ export { RICH_EDITOR_LABELS, richEditorLabels } from '../chunk-4B6LSFDS.js';
33
+ export { canonicalMarkdown, roundTripMarkdown } from '../chunk-TRQCHF2F.js';
34
+ import '../chunk-C7DKX453.js';
35
+ export { FRAME_HELLO_TIMEOUT_MS, FRAME_LOAD_GRACE_MS, SandboxedFrame, SandboxedFrameNotice, SandboxedFramePlaceholder } from '../chunk-356JNSER.js';
29
36
  export { SearchTrigger } from '../chunk-6DRDCT22.js';
30
37
  export { Section } from '../chunk-3TFDQLW3.js';
31
38
  export { SegmentedMeter, segmentedMeterLabel } from '../chunk-4AK52VHB.js';
32
- export { ARTIFACT_ROLES, SHAREABLE_ROLES, ShareDialog, roleAtLeast } from '../chunk-ORT5IKHP.js';
33
- export { Select } from '../chunk-UQGFHNDI.js';
34
- export { CellDisplay, CellEditor, CheckboxCell, DateCell, LongTextCell, MultiSelectCell, NumberCell, PersonCell, RatingCell, SelectCell, SheetCell, SheetGrid, StatusCell, TextCell, UrlCell } from '../chunk-G4ZW7A2W.js';
35
- export { TagGroup } from '../chunk-O2EGEONV.js';
39
+ export { Select } from '../chunk-BQ7AKL2N.js';
40
+ export { PricingCard } from '../chunk-DQSXWQMJ.js';
36
41
  export { PrincipalPicker } from '../chunk-AYB6AYNH.js';
37
42
  export { Prose } from '../chunk-JCSA3XVH.js';
38
43
  export { QR_DARK, QR_LIGHT, QR_QUIET_ZONE, QrCode, qrModulePath, qrModules } from '../chunk-Y56FM3K4.js';
39
44
  export { ReadingPane, ReadingPaneByline, ReadingPaneLead, ReadingPaneOutcome, ReadingPaneQuote, ReadingPaneReasoning, ReadingPaneSection, ReadingPaneTitle } from '../chunk-ZAJHGDAW.js';
40
- export { RichEditor, preloadRichEditor } from '../chunk-MTMKIUWF.js';
41
- export { RICH_EDITOR_LABELS, richEditorLabels } from '../chunk-4B6LSFDS.js';
42
- export { Skeleton } from '../chunk-TEUQWOWZ.js';
43
- export { canonicalMarkdown, roundTripMarkdown } from '../chunk-TRQCHF2F.js';
44
- import '../chunk-C7DKX453.js';
45
+ export { PEOPLE_RAIL_LABELS, PeopleRail, peopleRailKey } from '../chunk-GPWJCP3U.js';
45
46
  export { PinTile } from '../chunk-6MIXD6IW.js';
46
- export { PresenceStack } from '../chunk-3LYWD3BO.js';
47
47
  export { PresenterView, formatStopwatch } from '../chunk-THROPJZC.js';
48
48
  export { SLIDE_NAV_LABELS, SlideNav } from '../chunk-6VOS2GMB.js';
49
49
  export { SLIDE_HEIGHT, SLIDE_WIDTH, SlideStage, useSlideKeys } from '../chunk-LV4APO72.js';
50
- export { PricingCard } from '../chunk-DQSXWQMJ.js';
50
+ export { PresenceStack } from '../chunk-3LYWD3BO.js';
51
+ import '../chunk-CENOOTAV.js';
52
+ export { NewItemsNotice } from '../chunk-PXU6HOZB.js';
51
53
  export { FactLine, ObjectHeader, SetByLine } from '../chunk-VGE3G3T4.js';
52
54
  export { OrgNodeDisclosure, OrgNodeLabel, OrgNodeLead } from '../chunk-YA3AWELW.js';
53
55
  export { OrgTable, OrgTableActions, OrgTableAdd, OrgTableName } from '../chunk-JBUMD6DS.js';
@@ -55,24 +57,23 @@ export { TreeGrid } from '../chunk-QWNVSR6G.js';
55
57
  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';
56
58
  export { OrgLabel } from '../chunk-ONQKKHON.js';
57
59
  export { Outline, scrollToHeading, useActiveHeading } from '../chunk-A5YKNRG6.js';
58
- export { PEOPLE_RAIL_LABELS, PeopleRail, peopleRailKey } from '../chunk-GPWJCP3U.js';
59
- import '../chunk-CENOOTAV.js';
60
+ export { LIVE_CURSOR_HIDE_MS, LIVE_CURSOR_REST_MS, LiveCursor } from '../chunk-5XACKNYR.js';
61
+ export { LIVE_PREVIEW_DWELL_MS, LIVE_PREVIEW_MAX, LivePreview, LivePreviewBudgetProvider, PreviewScale, createLivePreviewBudget, immediately, perFrame, useLivePreview } from '../chunk-KF6YGL4B.js';
60
62
  export { MARKDOWN_CALLOUT_NAMES, MARKDOWN_CALLOUT_TONES, markdownBreaks, markdownClosesFence, markdownCodeText, markdownFenceOf, markdownHeadingOf, markdownInline, markdownLines, parseMarkdown, parseMarkdownSpans, safeHref } from '../chunk-KK5OYNAF.js';
61
63
  export { MARKDOWN_FORMATS, MarkdownEditor, formatMarkdown, insertMarkdown, markdownWords } from '../chunk-OOWPSBIS.js';
62
- export { MERGE_CONFLICTS_LABELS, MergeConflicts } from '../chunk-J6ON5SYE.js';
63
64
  export { DEFAULT_METER_THRESHOLDS, METER_STATES, Meter, meterState, meterStateTone, meterTone, progressTone } from '../chunk-UGNUUVRI.js';
64
- export { NewItemsNotice } from '../chunk-PXU6HOZB.js';
65
+ export { MERGE_CONFLICTS_LABELS, MergeConflicts } from '../chunk-J6ON5SYE.js';
65
66
  export { LAYERS_LIST_LABELS, LayersList } from '../chunk-ONL54WMH.js';
66
67
  export { AutoGrid, Inline, Spacer, Stack } from '../chunk-ZAC7SKUN.js';
67
68
  export { Link } from '../chunk-FBSEJO2C.js';
68
69
  export { LinkInterstitial, openExternal } from '../chunk-KD2IRYCT.js';
69
70
  export { List, ListItem } from '../chunk-DS2C73RJ.js';
70
71
  export { ListInput } from '../chunk-Z6VW6CXX.js';
71
- export { LIVE_CURSOR_HIDE_MS, LIVE_CURSOR_REST_MS, LiveCursor } from '../chunk-5XACKNYR.js';
72
72
  export { IconTile } from '../chunk-IXJHTFXG.js';
73
73
  export { ImageUpload } from '../chunk-FWYHRU7M.js';
74
74
  export { InboxGroup, InboxList, InboxMore, InboxRow, InboxToggle } from '../chunk-XYCADWZN.js';
75
- export { FactList } from '../chunk-7WHDPLVJ.js';
75
+ export { ErrorBoundary } from '../chunk-XX2VQE55.js';
76
+ export { FactList } from '../chunk-HOIZ6MIS.js';
76
77
  export { FILTER_CHIP_ATTRIBUTE, FilterChip, FilterChipGroup } from '../chunk-5YLON2PW.js';
77
78
  export { FollowBanner } from '../chunk-WGD2HX2A.js';
78
79
  export { DEFAULT_FRAME_THEME, EXTERNAL_URL_MAX, FRAME_BRIDGE, FRAME_MESSAGE, FRAME_ORIGIN_MODES, FRAME_SANDBOX_TOKENS, applyFrameTheme, checkFrameSandbox, externalUrl, frameFragment, frameOriginMatches, frameThemeMessage, httpOrigin, isFocusExit, isFrameNonce, negotiateBridge, parseFrameFragment, portTargetOrigin, readFrameHello, readFramePortMessage, readFrameTheme, readOpenLink } from '../chunk-F6V2PTN6.js';
@@ -80,31 +81,31 @@ export { DENSITY_PREFERENCES, PALETTE_ID, THEME_PREFERENCES, applyDensity, apply
80
81
  export { IDLE_AFTER_MS, useFullscreen, useIdle } from '../chunk-W5XCNEZC.js';
81
82
  export { Highlight, highlightRanges, highlightTerms } from '../chunk-H6VKCIWV.js';
82
83
  import '../chunk-FFMCMSJB.js';
84
+ export { DOC_TABS_EDITOR_LABELS, DocTabsEditor } from '../chunk-YZFLH463.js';
83
85
  export { DownloadButton } from '../chunk-BEHFTRMZ.js';
84
86
  export { downloadBlob, downloadText, safeFilename, useDownload } from '../chunk-IW55G7XG.js';
85
87
  export { EditingStatus } from '../chunk-TC7DJTXI.js';
86
88
  export { EntityChip } from '../chunk-OSKJZNBT.js';
87
- export { ErrorBoundary } from '../chunk-XX2VQE55.js';
88
89
  export { Eyebrow } from '../chunk-RK4XPHVG.js';
90
+ export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-7Q7WDXHG.js';
91
+ export { PageHeader } from '../chunk-HOXGBLEY.js';
89
92
  export { DATASET_SOURCE_KINDS, DatasetSource, DatasetSourceList } from '../chunk-ZB5O3ELS.js';
90
93
  export { Tag } from '../chunk-GFV4LJHH.js';
91
94
  export { StatusDot } from '../chunk-WIATRXEJ.js';
95
+ export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-BY4N65PM.js';
92
96
  export { DescriptionList, DescriptionListItem } from '../chunk-F2XSYBKH.js';
93
97
  export { DIFF_LIST_LABELS, DiffList } from '../chunk-LFHCXZO5.js';
94
98
  export { DIFF_SUMMARY_LABELS, DIFF_VIEW_LABELS, DiffSummary, DiffView, MAX_DIFF_LINES, collapseDiff, diffLines, diffStat, firstChangedLines, splitLines } from '../chunk-BVWSLXTY.js';
95
99
  export { Disclosure } from '../chunk-MICH6QSJ.js';
96
100
  export { Divider } from '../chunk-6KWNXIDE.js';
97
- export { DOC_TABS_EDITOR_LABELS, DocTabsEditor } from '../chunk-YZFLH463.js';
98
101
  export { ConfirmField, confirmMatches } from '../chunk-FGYET26P.js';
99
102
  export { InlineCode } from '../chunk-5CLW2CXT.js';
100
103
  export { CONFLICT_NOTE_LABELS, ConflictNote } from '../chunk-UO7JZVCO.js';
101
104
  export { Container } from '../chunk-HJO4WCH6.js';
102
105
  export { CursorFlag } from '../chunk-3BYIWOTV.js';
103
106
  export { PresenceRing, presenceHueClass } from '../chunk-I6POAB4V.js';
104
- export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-7Q7WDXHG.js';
105
- export { PageHeader } from '../chunk-HOXGBLEY.js';
106
- export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-BY4N65PM.js';
107
107
  export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-UXXJDIYE.js';
108
+ export { ActivityStrip, BarList, ChartEmpty, ChartTooltip, DATA_COLORS, DATA_COLOR_OTHER, Legend, Sparkline, StackedBar, StackedColumns, TimeSeries, dataColor, niceScale, useChartHover } from '../chunk-HG5VF3TZ.js';
108
109
  export { ChoiceButtons } from '../chunk-YSJC7AZC.js';
109
110
  export { ChoiceList } from '../chunk-QBXZLGK2.js';
110
111
  export { CodeBlock } from '../chunk-GDDE4UM7.js';
@@ -117,18 +118,19 @@ export { ConfirmModal, Modal } from '../chunk-XEGZHHRH.js';
117
118
  export { HIGHLIGHT_REST_MS, TYPE_AHEAD_WINDOW, useHighlightRest, useListbox, useOptionKeys } from '../chunk-F73MC7EZ.js';
118
119
  export { COMMENT_THREAD_LABELS, CommentThread } from '../chunk-IYO2N5ZH.js';
119
120
  export { COMPOSER_COUNTER_AT, Composer } from '../chunk-7DZDSSJS.js';
120
- export { BOARD_TITLE_MIN_WIDTH, CANVAS_BOARD_MAX_LIVE, CANVAS_BOARD_MIN_LIVE_WIDTH, CANVAS_BOARD_MIN_ZOOM, CANVAS_NOTE_COLORS, CanvasBoard, TITLE_GLYPH_EM, boardRoom, liveBoards, titleSize } from '../chunk-MDNVHIB2.js';
121
+ export { Callout } from '../chunk-SZZRIHGT.js';
122
+ export { BOARD_TITLE_MIN_WIDTH, CANVAS_BOARD_MAX_LIVE, CANVAS_BOARD_MIN_LIVE_WIDTH, CANVAS_BOARD_MIN_ZOOM, CANVAS_NOTE_COLORS, CanvasBoard, TITLE_GLYPH_EM, boardRoom, liveBoards, titleSize } from '../chunk-WPX6A5BV.js';
121
123
  export { Note } from '../chunk-5SZGKSGL.js';
122
124
  export { CanvasSchematic } from '../chunk-NBWNLYWZ.js';
123
- export { CanvasToolbar, toolForKey } from '../chunk-GLSOD5Z4.js';
125
+ export { CanvasToolbar, toolForKey } from '../chunk-3Y56GQPM.js';
124
126
  export { Toolbar, ToolbarOverflow, ToolbarWide } from '../chunk-PGRPNDWM.js';
125
- 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, ShortcutTip, anchorView, beyondSlop, clampPan, clampZoom, fitView, gridOf, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from '../chunk-22UEIXZE.js';
127
+ 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, ShortcutTip, anchorView, beyondSlop, clampPan, clampZoom, fitView, gridOf, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from '../chunk-3P4Y5RX6.js';
126
128
  import '../chunk-LM3ISVJA.js';
127
- export { ChangeMark } from '../chunk-ZNBLFCQS.js';
128
- export { LONGTEXT_MAX_DEFAULT, RATING_MAX_CEILING, RATING_MAX_DEFAULT, SHEET_COLUMN_BOUNDS, SHEET_COLUMN_TYPES, SHEET_COLUMN_WIDTHS, SHEET_FIT_SAMPLES, SHEET_LABELS, SHEET_ROW_HEIGHT, SHEET_ROW_NUMBER_WIDTH, SheetPendingEdits, TEXT_MAX_DEFAULT, URL_MAX, cellDescription, cellKey, cellSpeech, changeText, changeTime, checkValue, columnOffsets, columnWidth, compareValues, displayText, drawnColumns, editText, editorSide, findOption, findPerson, fitSamples, fittedWidth, flagText, hasPrevious, inRange, isEmptyValue, isMod, isMultiCell, isSheetColumnType, isTypingKey, liveOptions, moveFrom, nextSort, normalizeValue, optionHue, parseOptionList, parseTSV, parseText, planClear, planPaste, presenceByCell, presenceByColumn, presenceByRow, rangeOf, ratingMax, refusalText, rowName, sameValue, scrollToRow, sheetLabels, sortRows, spokenText, statusTone, textMax, toTSV, visibleRows } from '../chunk-J6ZSH3F5.js';
129
+ export { ChangeMark } from '../chunk-SGHIAGPR.js';
130
+ export { LONGTEXT_MAX_DEFAULT, RATING_MAX_CEILING, RATING_MAX_DEFAULT, SHEET_COLUMN_BOUNDS, SHEET_COLUMN_TYPES, SHEET_COLUMN_WIDTHS, SHEET_FIT_SAMPLES, SHEET_LABELS, SHEET_ROW_HEIGHT, SHEET_ROW_NUMBER_WIDTH, SheetPendingEdits, TEXT_MAX_DEFAULT, URL_MAX, cellDescription, cellKey, cellSpeech, changeText, changeTime, checkValue, columnOffsets, columnWidth, compareValues, displayText, drawnColumns, editText, editorSide, findOption, findPerson, fitSamples, fittedWidth, flagText, hasPrevious, inRange, isEmptyValue, isMod, isMultiCell, isSheetColumnType, isTypingKey, liveOptions, moveFrom, nextSort, normalizeValue, optionHue, parseOptionList, parseTSV, parseText, planClear, planPaste, presenceByCell, presenceByColumn, presenceByRow, rangeOf, ratingMax, refusalText, rowName, sameValue, scrollToRow, sheetLabels, sortRows, spokenText, statusTone, textMax, toTSV, visibleRows } from '../chunk-VI5FWDZW.js';
129
131
  export { PRESENCE_ACTIVITIES, PRESENCE_HUES, PRESENCE_LABELS, assignPresenceHues, collapseSessions, joinNames, presenceLabels, presenceOrder } from '../chunk-Z7JYG5TF.js';
130
132
  import '../chunk-3L5NHASN.js';
131
- export { ActivityStrip, BarList, ChartEmpty, ChartTooltip, DATA_COLORS, DATA_COLOR_OTHER, Legend, Sparkline, StackedBar, StackedColumns, TimeSeries, dataColor, niceScale, useChartHover } from '../chunk-HG5VF3TZ.js';
133
+ export { ARTIFACT_PANEL_LABELS, ArtifactPanel, ArtifactWorkspace } from '../chunk-HUVG2FFT.js';
132
134
  export { AuthLayout } from '../chunk-VDPJGP4Q.js';
133
135
  export { AvatarPicker } from '../chunk-EBCHVFCS.js';
134
136
  export { HuePicker } from '../chunk-GPHWCK7M.js';
@@ -139,7 +141,6 @@ export { BrandLockup } from '../chunk-7KBNFFM3.js';
139
141
  export { Breadcrumb } from '../chunk-VWNC2L6W.js';
140
142
  export { KeyChip } from '../chunk-FYTIJM2T.js';
141
143
  export { CalendarGrid, compareDays, daysInMonth, sameDay, shiftDay, shiftMonth, today } from '../chunk-GXQ3B46I.js';
142
- export { Callout } from '../chunk-SZZRIHGT.js';
143
144
  export { ArrangeGrid } from '../chunk-QBA5B2Z5.js';
144
145
  export { ArrangeGroup } from '../chunk-M5KZX5JE.js';
145
146
  export { ArrangeList, DEFAULT_ARRANGE_LABELS } from '../chunk-V43UVX4H.js';
@@ -147,17 +148,18 @@ export { Switch } from '../chunk-A722MUNR.js';
147
148
  export { DEFAULT_REORDER_LABELS, moveKey, useReorder, useReorderLists } from '../chunk-XJ2QEBMM.js';
148
149
  export { Checkbox, CheckboxGroup } from '../chunk-CPEPST4S.js';
149
150
  export { FormField, FormRow, FormSection, Input, InputAffix, Label, ReadOnlyField, Textarea } from '../chunk-6QFAK2WV.js';
150
- export { ARTIFACT_BAR_LABELS, ArtifactBar, ArtifactVersionChip } from '../chunk-Z6GFMI2Z.js';
151
+ export { ARTIFACT_BAR_LABELS, ArtifactBar, ArtifactVersionChip } from '../chunk-IUD5VA2Z.js';
151
152
  import '../chunk-WKEPORNM.js';
152
153
  export { Kbd, isApplePlatform, keyGlyph } from '../chunk-SMBKXWML.js';
153
- export { Tooltip } from '../chunk-5FYPE5GL.js';
154
+ export { Tooltip } from '../chunk-6ZJ3N7QI.js';
154
155
  export { SegmentedControl } from '../chunk-CCAXYHQS.js';
155
156
  export { TabPanel, Tabs, tabId } from '../chunk-VL6CUNSX.js';
156
157
  import '../chunk-RKKO7QHH.js';
157
- export { DashboardCover, DocCover, SHEET_COVER_COLUMNS, SHEET_COVER_ROWS, SheetCover } from '../chunk-UNXLTJU7.js';
158
+ export { DashboardCover, DocCover, SHEET_COVER_COLUMNS, SHEET_COVER_ROWS, SheetCover } from '../chunk-CFAJP777.js';
158
159
  export { Document, DocumentTitle, DocumentTitleField } from '../chunk-TYKQ33CL.js';
159
- export { ARTIFACT_ICON_WORDS, ArtifactIcon, artifactIconGlyph } from '../chunk-HH2GKAAE.js';
160
- export { ARTIFACT_KINDS, ArtifactCard, ArtifactKindGlyph, ArtifactPreviewGlyph } from '../chunk-DFZMYB5X.js';
160
+ export { ARTIFACT_ICON_WORDS, ArtifactIcon, artifactIconGlyph } from '../chunk-PLDUNXAO.js';
161
+ export { ARTIFACT_KINDS, ArtifactCard, ArtifactCardSkeleton, ArtifactKindGlyph, ArtifactPreviewGlyph } from '../chunk-XTOVADJU.js';
162
+ export { Skeleton } from '../chunk-TEUQWOWZ.js';
161
163
  export { PRINCIPAL_KINDS, PrincipalAvatar } from '../chunk-CI3VPIJN.js';
162
164
  export { RelativeTime, currentNow, formatElapsed, formatExact, formatRelative, formatUntil, toISO, toInstant, useNow } from '../chunk-3CZ7XAVY.js';
163
165
  export { EMPTY_VALUE, EmptyValue } from '../chunk-EUCC37WY.js';
@@ -165,7 +167,7 @@ export { Card } from '../chunk-ACA27MZH.js';
165
167
  export { useCardHeaderSlot } from '../chunk-AV2DXAEL.js';
166
168
  export { AvatarStack, avatarStackLabel } from '../chunk-5AQBPHZD.js';
167
169
  export { AVATAR_CHARACTER_FULL_DETAIL, AVATAR_CORNER_RATIO, AVATAR_SIZES, AVATAR_STATUSES, AVATAR_STATUS_LABELS, Avatar, avatarCorner, avatarInitialsName, avatarPixels, avatarTint, getInitials } from '../chunk-PZKHBB7D.js';
168
- export { ARTIFACT_PANEL_LABELS, ArtifactPanel, ArtifactWorkspace } from '../chunk-HUVG2FFT.js';
170
+ export { ArtifactKindGround, ArtifactKindIllustration, ArtifactKindTile } from '../chunk-UDQW6UK7.js';
169
171
  export { ACCESS_DENIED_REASONS, AccessDeniedCard } from '../chunk-KV3ODJXH.js';
170
172
  export { EmptyState } from '../chunk-RA2ULG6H.js';
171
173
  export { Accordion, AccordionItem } from '../chunk-RIAZM6L3.js';