@crewlethq/ui 0.9.0 → 0.11.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.
- package/README.md +32 -1
- package/dist/Accordion/index.js +3 -3
- package/dist/AppShell/index.js +2 -2
- package/dist/Avatar/Avatar.d.ts +45 -14
- package/dist/Avatar/AvatarStack.d.ts +1 -3
- package/dist/Avatar/index.d.ts +2 -2
- package/dist/Avatar/index.js +2 -2
- package/dist/{Avatar-JAU77SHZ.css → Avatar-QHYOFID3.css} +83 -25
- package/dist/AvatarPicker/AvatarPicker.d.ts +32 -0
- package/dist/AvatarPicker/index.d.ts +3 -0
- package/dist/AvatarPicker/index.js +14 -0
- package/dist/AvatarPicker-PREY36MG.css +54 -0
- package/dist/Canvas/index.js +3 -3
- package/dist/Card/index.js +2 -2
- package/dist/CharacterPicker/index.js +3 -2
- package/dist/CodeBlock/index.js +3 -3
- package/dist/Combobox/index.js +3 -3
- package/dist/CommandPalette/index.js +6 -6
- package/dist/Copyable/index.js +2 -2
- package/dist/DataTable/index.js +6 -6
- package/dist/DataView/index.js +11 -11
- package/dist/DateTimePicker/index.js +4 -4
- package/dist/Disclosure/index.js +3 -3
- package/dist/EntityChip/index.js +3 -3
- package/dist/FactList/FactList.d.ts +33 -0
- package/dist/FactList/index.d.ts +3 -0
- package/dist/FactList/index.js +6 -0
- package/dist/FactList-G2H73NFR.css +57 -0
- package/dist/HuePicker/index.js +4 -3
- package/dist/ImageUpload/index.js +3 -3
- package/dist/Input/FormField.d.ts +8 -1
- package/dist/Input/index.js +1 -1
- package/dist/{Input-DRFNI26F.css → Input-RAKNQJCV.css} +7 -0
- package/dist/ListInput/ListInput.d.ts +3 -1
- package/dist/ListInput/index.js +3 -3
- package/dist/Menu/index.js +3 -3
- package/dist/Modal/index.js +3 -3
- package/dist/OrgLabel/index.js +3 -3
- package/dist/OrgNode/index.js +4 -4
- package/dist/OrgTable/index.js +6 -6
- package/dist/SegmentedControl/index.js +3 -3
- package/dist/Tabs/Tabs.d.ts +18 -0
- package/dist/Tabs/index.d.ts +1 -1
- package/dist/Tabs/index.js +1 -1
- package/dist/{Tabs-BWFQSWY3.css → Tabs-5I5Q5KKM.css} +33 -0
- package/dist/TagsInput/index.js +2 -2
- package/dist/ThemeSwitcher/index.js +4 -4
- package/dist/TimeWindowPicker/index.js +5 -5
- package/dist/TreeCanvas/index.js +4 -4
- package/dist/TreeGrid/index.js +2 -2
- package/dist/chunk-3L5NHASN.js +1 -0
- package/dist/{chunk-OAH4IEQJ.js → chunk-3UK4VFSK.js} +2 -3
- package/dist/{chunk-L7THQMFB.js → chunk-5WEVLIB6.js} +1 -1
- package/dist/{chunk-J3IS2TOA.js → chunk-6OF2DBKY.js} +1 -1
- package/dist/{chunk-IGWPZZIB.js → chunk-6SDGRKQ7.js} +2 -2
- package/dist/{chunk-EUT7VBQG.js → chunk-CIOKUMVC.js} +6 -6
- package/dist/{chunk-Y2V3TSQC.js → chunk-DDTDN5L2.js} +1 -1
- package/dist/{chunk-LPHHDCN3.js → chunk-EBBAAQDY.js} +1 -1
- package/dist/{chunk-UYK72NOS.js → chunk-ELZKOVEC.js} +1 -1
- package/dist/chunk-EXHQ2QVW.js +1 -0
- package/dist/{chunk-ZGX2DP7F.js → chunk-FTEJPHBI.js} +8 -2
- package/dist/{chunk-RIAZM6L3.js → chunk-G2AVKPSL.js} +1 -1
- package/dist/chunk-HI6Q2UXQ.js +169 -0
- package/dist/{chunk-IZHN5I3H.js → chunk-HLBRPES3.js} +4 -4
- package/dist/chunk-HV6IZFBK.js +64 -0
- package/dist/{chunk-K7OS4O2U.js → chunk-IHGKPEEV.js} +1 -1
- package/dist/{chunk-HEOVQZL7.js → chunk-JHQUT4WJ.js} +6 -2
- package/dist/{chunk-26TXVHN2.js → chunk-K5Q2DK3P.js} +1 -2
- package/dist/{chunk-MORLKUGM.js → chunk-KGTQ5CVD.js} +1 -1
- package/dist/{chunk-E3HDS4F7.js → chunk-LAQK4V3Z.js} +1 -1
- package/dist/{chunk-6HXH57BL.js → chunk-LZP7FGT7.js} +4 -2
- package/dist/{chunk-CVB7O3SZ.js → chunk-R4ZJB5YX.js} +4 -4
- package/dist/{chunk-MICH6QSJ.js → chunk-S4RCG44T.js} +1 -1
- package/dist/{chunk-UI6HWAWE.js → chunk-UAQIUSSK.js} +1 -1
- package/dist/chunk-URYDN2KA.js +25 -0
- package/dist/{chunk-X6K6OZ47.js → chunk-WEIINZPA.js} +1 -1
- package/dist/{chunk-IKH3Y4MP.js → chunk-YXMCUKFI.js} +1 -2
- package/dist/{chunk-JB6AN4ZC.js → chunk-ZMJHK7DR.js} +2 -2
- package/dist/generated/index.d.ts +2 -0
- package/dist/generated/index.js +58 -54
- package/dist/index.js +58 -54
- package/dist/styles.css +245 -30
- package/dist/utils/index.js +1 -1
- package/package.json +3 -3
- package/dist/chunk-UDW3DAP5.js +0 -125
- package/dist/{chunk-VE6LD3KM.js → chunk-2PZBIHRV.js} +2 -2
- package/dist/{chunk-MPXI6FM6.js → chunk-7JGWSOLM.js} +1 -1
- package/dist/{chunk-OVLJEVQS.js → chunk-7LD6P32I.js} +1 -1
- package/dist/{chunk-CEOXFO3E.js → chunk-EG6NYWVK.js} +1 -1
- package/dist/{chunk-FZVJDJFN.js → chunk-ENJUPIND.js} +1 -1
- package/dist/{chunk-5I56UXBJ.js → chunk-JCNUQ3US.js} +2 -2
- package/dist/{chunk-SX2DFTQV.js → chunk-MCPKHYMC.js} +1 -1
- package/dist/{chunk-YPTC4TX5.js → chunk-PQLMLG5K.js} +0 -0
- package/dist/{chunk-BTHX2FS3.js → chunk-TEEJSTFG.js} +2 -2
- package/dist/{chunk-LSB3EHBW.js → chunk-TFH6SYWB.js} +2 -2
- package/dist/{chunk-26SCUACK.js → chunk-YACKC3K2.js} +1 -1
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { cx } from './chunk-ODEQTPFM.js';
|
|
2
|
+
import { useState, useEffect } from 'react';
|
|
3
|
+
import { CrewletCharacter } from '@crewlethq/icons/characters';
|
|
4
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
5
|
+
|
|
6
|
+
var AVATAR_STATUSES = ["working", "needs", "stopped"];
|
|
7
|
+
var AVATAR_STATUS_LABELS = {
|
|
8
|
+
working: "working",
|
|
9
|
+
needs: "needs you",
|
|
10
|
+
stopped: "stopped"
|
|
11
|
+
};
|
|
12
|
+
var AVATAR_SIZES = { xs: 20, sm: 26, md: 32, lg: 40 };
|
|
13
|
+
var AVATAR_CORNER_RATIO = 0.29;
|
|
14
|
+
var AVATAR_CHARACTER_FULL_DETAIL = 56;
|
|
15
|
+
var getInitials = (name) => {
|
|
16
|
+
if (!name) return "?";
|
|
17
|
+
const words = name.trim().split(/[\s\-_.]+/).filter(Boolean);
|
|
18
|
+
if (words.length === 0) return "?";
|
|
19
|
+
const first = (word2) => (Array.from(word2)[0] ?? "").toUpperCase();
|
|
20
|
+
if (words.length >= 2) return words.slice(0, 2).map(first).join("") || "?";
|
|
21
|
+
const word = words[0];
|
|
22
|
+
const humps = word.split(/(?<=\p{Ll})(?=\p{Lu})/u);
|
|
23
|
+
if (humps.length >= 2) return humps.slice(0, 2).map(first).join("");
|
|
24
|
+
return Array.from(word).slice(0, 2).map((character) => character.toUpperCase()).join("") || "?";
|
|
25
|
+
};
|
|
26
|
+
var TINT_COUNT = 10;
|
|
27
|
+
var avatarTint = (seed) => {
|
|
28
|
+
let hash = 0;
|
|
29
|
+
for (let i = 0; i < seed.length; i += 1) {
|
|
30
|
+
hash = hash * 31 + seed.charCodeAt(i) >>> 0;
|
|
31
|
+
}
|
|
32
|
+
return hash % TINT_COUNT;
|
|
33
|
+
};
|
|
34
|
+
function avatarPixels(size) {
|
|
35
|
+
return typeof size === "number" ? size : AVATAR_SIZES[size];
|
|
36
|
+
}
|
|
37
|
+
function avatarCorner(pixels) {
|
|
38
|
+
return pixels * AVATAR_CORNER_RATIO;
|
|
39
|
+
}
|
|
40
|
+
var Avatar = ({
|
|
41
|
+
src,
|
|
42
|
+
name,
|
|
43
|
+
size = "md",
|
|
44
|
+
kind = "agent",
|
|
45
|
+
tone = "neutral",
|
|
46
|
+
ring,
|
|
47
|
+
status,
|
|
48
|
+
decorative = false,
|
|
49
|
+
colorSeed,
|
|
50
|
+
character,
|
|
51
|
+
hue,
|
|
52
|
+
className,
|
|
53
|
+
style,
|
|
54
|
+
...rest
|
|
55
|
+
}) => {
|
|
56
|
+
const [imageFailed, setImageFailed] = useState(false);
|
|
57
|
+
useEffect(() => {
|
|
58
|
+
setImageFailed(false);
|
|
59
|
+
}, [src]);
|
|
60
|
+
const step = typeof size === "number" ? null : size;
|
|
61
|
+
const pixels = avatarPixels(size);
|
|
62
|
+
const measured = step === null ? {
|
|
63
|
+
"--crewlet-avatar-size": `${pixels}px`,
|
|
64
|
+
fontSize: Math.max(9, Math.round(pixels * 0.36))
|
|
65
|
+
} : {};
|
|
66
|
+
const seeded = tone === "seeded" ? avatarTint(colorSeed ?? name ?? "") : null;
|
|
67
|
+
const framed = status !== void 0;
|
|
68
|
+
const label = name ? `${name} avatar` : "Avatar";
|
|
69
|
+
const spoken = framed ? `${label}, ${AVATAR_STATUS_LABELS[status]}` : label;
|
|
70
|
+
const classes = cx(
|
|
71
|
+
"crewlet-avatar",
|
|
72
|
+
`crewlet-avatar--${kind}`,
|
|
73
|
+
step === null ? null : `crewlet-avatar--${step}`,
|
|
74
|
+
framed ? "crewlet-avatar--notched" : null,
|
|
75
|
+
ring === void 0 || framed ? null : `crewlet-avatar--ring-${ring}`,
|
|
76
|
+
framed ? null : className
|
|
77
|
+
);
|
|
78
|
+
const faceStyle = framed ? measured : { ...measured, ...style };
|
|
79
|
+
function drawFace() {
|
|
80
|
+
if (character !== void 0 && kind === "agent") {
|
|
81
|
+
return /* @__PURE__ */ jsx(
|
|
82
|
+
"span",
|
|
83
|
+
{
|
|
84
|
+
...rest,
|
|
85
|
+
className: cx(
|
|
86
|
+
classes,
|
|
87
|
+
"crewlet-avatar--character",
|
|
88
|
+
hue === void 0 ? "crewlet-avatar--neutral" : `crewlet-avatar--hue-${hue}`
|
|
89
|
+
),
|
|
90
|
+
style: faceStyle,
|
|
91
|
+
role: decorative ? void 0 : "img",
|
|
92
|
+
"aria-hidden": decorative ? true : void 0,
|
|
93
|
+
"aria-label": decorative ? void 0 : spoken,
|
|
94
|
+
children: /* @__PURE__ */ jsx(
|
|
95
|
+
CrewletCharacter,
|
|
96
|
+
{
|
|
97
|
+
className: "crewlet-avatar__character",
|
|
98
|
+
character,
|
|
99
|
+
detail: pixels >= AVATAR_CHARACTER_FULL_DETAIL ? "full" : "compact"
|
|
100
|
+
}
|
|
101
|
+
)
|
|
102
|
+
}
|
|
103
|
+
);
|
|
104
|
+
}
|
|
105
|
+
if (src && !imageFailed) {
|
|
106
|
+
return /* @__PURE__ */ jsx(
|
|
107
|
+
"img",
|
|
108
|
+
{
|
|
109
|
+
...rest,
|
|
110
|
+
className: cx(classes, "crewlet-avatar--image"),
|
|
111
|
+
style: faceStyle,
|
|
112
|
+
src,
|
|
113
|
+
alt: decorative ? "" : framed ? `${name ?? ""}, ${AVATAR_STATUS_LABELS[status]}` : name ?? "",
|
|
114
|
+
"aria-hidden": decorative ? true : void 0,
|
|
115
|
+
onError: () => setImageFailed(true)
|
|
116
|
+
}
|
|
117
|
+
);
|
|
118
|
+
}
|
|
119
|
+
return /* @__PURE__ */ jsx(
|
|
120
|
+
"span",
|
|
121
|
+
{
|
|
122
|
+
...rest,
|
|
123
|
+
className: cx(
|
|
124
|
+
classes,
|
|
125
|
+
"crewlet-avatar--fallback",
|
|
126
|
+
`crewlet-avatar--${tone}`,
|
|
127
|
+
seeded === null ? null : `crewlet-avatar--tint-${seeded}`
|
|
128
|
+
),
|
|
129
|
+
style: faceStyle,
|
|
130
|
+
role: decorative ? void 0 : "img",
|
|
131
|
+
"aria-hidden": decorative ? true : void 0,
|
|
132
|
+
"aria-label": decorative ? void 0 : spoken,
|
|
133
|
+
children: getInitials(name)
|
|
134
|
+
}
|
|
135
|
+
);
|
|
136
|
+
}
|
|
137
|
+
const face = drawFace();
|
|
138
|
+
if (!framed) return face;
|
|
139
|
+
return /* @__PURE__ */ jsxs(
|
|
140
|
+
"span",
|
|
141
|
+
{
|
|
142
|
+
className: cx("crewlet-avatar-frame", className),
|
|
143
|
+
style: { "--crewlet-avatar-size": `${pixels}px`, ...style },
|
|
144
|
+
children: [
|
|
145
|
+
face,
|
|
146
|
+
/* @__PURE__ */ jsx("span", { className: `crewlet-avatar__status crewlet-avatar__status--${status}`, "aria-hidden": "true", children: STATUS_GLYPHS[status] })
|
|
147
|
+
]
|
|
148
|
+
}
|
|
149
|
+
);
|
|
150
|
+
};
|
|
151
|
+
var STATUS_GLYPHS = {
|
|
152
|
+
working: /* @__PURE__ */ jsx("svg", { viewBox: "0 0 14 14", focusable: "false", children: /* @__PURE__ */ jsx("path", { d: "M5.4 3.9 10.2 7l-4.8 3.1z", fill: "currentColor" }) }),
|
|
153
|
+
needs: /* @__PURE__ */ jsxs("svg", { viewBox: "0 0 14 14", focusable: "false", children: [
|
|
154
|
+
/* @__PURE__ */ jsx(
|
|
155
|
+
"path",
|
|
156
|
+
{
|
|
157
|
+
d: "M5.1 5.3a1.9 1.9 0 1 1 2.7 1.7c-.55.27-.8.62-.8 1.15v.3",
|
|
158
|
+
fill: "none",
|
|
159
|
+
stroke: "currentColor",
|
|
160
|
+
strokeWidth: "1.5",
|
|
161
|
+
strokeLinecap: "round"
|
|
162
|
+
}
|
|
163
|
+
),
|
|
164
|
+
/* @__PURE__ */ jsx("circle", { cx: "7", cy: "10.45", r: ".85", fill: "currentColor" })
|
|
165
|
+
] }),
|
|
166
|
+
stopped: /* @__PURE__ */ jsx("svg", { viewBox: "0 0 14 14", focusable: "false", children: /* @__PURE__ */ jsx("rect", { x: "4.6", y: "4.6", width: "4.8", height: "4.8", rx: ".7", fill: "currentColor" }) })
|
|
167
|
+
};
|
|
168
|
+
|
|
169
|
+
export { AVATAR_CHARACTER_FULL_DETAIL, AVATAR_CORNER_RATIO, AVATAR_SIZES, AVATAR_STATUSES, AVATAR_STATUS_LABELS, Avatar, avatarCorner, avatarPixels, avatarTint, getInitials };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Select } from './chunk-SEFMO2EV.js';
|
|
2
|
-
import { Input } from './chunk-
|
|
3
|
-
import { Popover } from './chunk-PDUZO35I.js';
|
|
2
|
+
import { Input } from './chunk-FTEJPHBI.js';
|
|
4
3
|
import { today, shiftMonth, CalendarGrid, compareDays } from './chunk-GXQ3B46I.js';
|
|
5
|
-
import { isComposing } from './chunk-R25RGPUB.js';
|
|
6
|
-
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
7
4
|
import { Button } from './chunk-OG6CL3EB.js';
|
|
5
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
6
|
+
import { Popover } from './chunk-PDUZO35I.js';
|
|
7
|
+
import { isComposing } from './chunk-R25RGPUB.js';
|
|
8
8
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
9
9
|
import './TimeWindowPicker-GBF4JDFI.css';
|
|
10
10
|
import { useMemo, useState, useRef, useId, useEffect } from 'react';
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { HuePicker } from './chunk-K5Q2DK3P.js';
|
|
2
|
+
import { NODE_HUE_NAMES } from './chunk-AYKXMIOR.js';
|
|
3
|
+
import { Popover } from './chunk-PDUZO35I.js';
|
|
4
|
+
import { CharacterPicker } from './chunk-YXMCUKFI.js';
|
|
5
|
+
import { Avatar } from './chunk-HI6Q2UXQ.js';
|
|
6
|
+
import { cx } from './chunk-ODEQTPFM.js';
|
|
7
|
+
import './AvatarPicker-PREY36MG.css';
|
|
8
|
+
import { CREWLET_CHARACTER_GEOMETRY, CREWLET_CHARACTERS } from '@crewlethq/icons/characters';
|
|
9
|
+
import { PencilGlyph } from '@crewlethq/icons/glyphs';
|
|
10
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
11
|
+
|
|
12
|
+
function AvatarPicker({
|
|
13
|
+
value,
|
|
14
|
+
onChange,
|
|
15
|
+
name,
|
|
16
|
+
size = "lg",
|
|
17
|
+
characters = CREWLET_CHARACTERS,
|
|
18
|
+
disabled = false,
|
|
19
|
+
className
|
|
20
|
+
}) {
|
|
21
|
+
const badge = /* @__PURE__ */ jsx(Avatar, { kind: "agent", name, character: value.character, hue: value.hue, size, decorative: true });
|
|
22
|
+
if (disabled) return /* @__PURE__ */ jsx("span", { className: cx("crewlet-avatar-picker", className), children: badge });
|
|
23
|
+
const now = `${CREWLET_CHARACTER_GEOMETRY[value.character].name} in ${NODE_HUE_NAMES[value.hue]}`;
|
|
24
|
+
return /* @__PURE__ */ jsx(
|
|
25
|
+
Popover,
|
|
26
|
+
{
|
|
27
|
+
label: "Profile icon",
|
|
28
|
+
align: "start",
|
|
29
|
+
className: "crewlet-avatar-picker__panel",
|
|
30
|
+
trigger: (open, toggle) => /* @__PURE__ */ jsxs(
|
|
31
|
+
"button",
|
|
32
|
+
{
|
|
33
|
+
type: "button",
|
|
34
|
+
className: cx("crewlet-avatar-picker", className),
|
|
35
|
+
"aria-label": `Change ${name}'s profile icon, now ${now}`,
|
|
36
|
+
"aria-expanded": open,
|
|
37
|
+
"aria-haspopup": "dialog",
|
|
38
|
+
onClick: toggle,
|
|
39
|
+
children: [
|
|
40
|
+
badge,
|
|
41
|
+
/* @__PURE__ */ jsx("span", { className: "crewlet-avatar-picker__pip", "aria-hidden": "true", children: /* @__PURE__ */ jsx(PencilGlyph, { size: 9 }) })
|
|
42
|
+
]
|
|
43
|
+
}
|
|
44
|
+
),
|
|
45
|
+
children: /* @__PURE__ */ jsxs("div", { className: "crewlet-avatar-picker__body", children: [
|
|
46
|
+
/* @__PURE__ */ jsx("span", { className: "crewlet-avatar-picker__label", children: "Character" }),
|
|
47
|
+
/* @__PURE__ */ jsx(
|
|
48
|
+
CharacterPicker,
|
|
49
|
+
{
|
|
50
|
+
label: "Character",
|
|
51
|
+
value: value.character,
|
|
52
|
+
hue: value.hue,
|
|
53
|
+
characters,
|
|
54
|
+
onValueChange: (character) => onChange({ ...value, character })
|
|
55
|
+
}
|
|
56
|
+
),
|
|
57
|
+
/* @__PURE__ */ jsx("span", { className: "crewlet-avatar-picker__label", children: "Color" }),
|
|
58
|
+
/* @__PURE__ */ jsx(HuePicker, { label: "Color", size: "sm", value: value.hue, onValueChange: (hue) => onChange({ ...value, hue }) })
|
|
59
|
+
] })
|
|
60
|
+
}
|
|
61
|
+
);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export { AvatarPicker };
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { useRoving, tabStop } from './chunk-CBOICT64.js';
|
|
2
2
|
import { Count } from './chunk-BHHIIK3M.js';
|
|
3
|
+
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
3
4
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
4
|
-
import './Tabs-
|
|
5
|
+
import './Tabs-5I5Q5KKM.css';
|
|
5
6
|
import React, { useRef, useLayoutEffect } from 'react';
|
|
6
7
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
7
8
|
|
|
@@ -77,7 +78,10 @@ function Tabs({
|
|
|
77
78
|
const children = /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
78
79
|
item.icon ? /* @__PURE__ */ jsx("span", { className: "crewlet-tabs__icon", children: item.icon }) : null,
|
|
79
80
|
/* @__PURE__ */ jsx("span", { className: "crewlet-tabs__label", children: item.label }),
|
|
80
|
-
item.
|
|
81
|
+
item.marker ? item.marker.tone === "danger" ? /* @__PURE__ */ jsxs("span", { className: "crewlet-tabs__marker crewlet-tabs__marker--danger", children: [
|
|
82
|
+
/* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: item.marker.count }),
|
|
83
|
+
/* @__PURE__ */ jsx(VisuallyHidden, { children: item.marker.label })
|
|
84
|
+
] }) : /* @__PURE__ */ jsx("span", { className: `crewlet-tabs__marker crewlet-tabs__marker--${item.marker.tone}`, children: /* @__PURE__ */ jsx(VisuallyHidden, { children: item.marker.label }) }) : item.count != null ? /* @__PURE__ */ jsx(Count, { value: item.count }) : null
|
|
81
85
|
] });
|
|
82
86
|
const onSelect = () => {
|
|
83
87
|
if (item.disabled) return;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { NODE_HUES, NODE_HUE_NAMES } from './chunk-AYKXMIOR.js';
|
|
2
|
-
import { SegmentedControl } from './chunk-
|
|
2
|
+
import { SegmentedControl } from './chunk-EBBAAQDY.js';
|
|
3
3
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
4
|
-
import './HuePicker-5QIUR6L7.css';
|
|
5
4
|
import { jsx } from 'react/jsx-runtime';
|
|
6
5
|
|
|
7
6
|
var optionsFor = (disabled) => NODE_HUES.map((hue) => ({
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Kbd } from './chunk-SMBKXWML.js';
|
|
2
|
-
import { FormField, Textarea, Input } from './chunk-
|
|
2
|
+
import { FormField, Textarea, Input } from './chunk-FTEJPHBI.js';
|
|
3
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
3
4
|
import { announce } from './chunk-RSAQOKH3.js';
|
|
4
5
|
import { isComposing } from './chunk-R25RGPUB.js';
|
|
5
|
-
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
6
6
|
import './ListInput-O7LJKOIG.css';
|
|
7
7
|
import { useState, useRef, useLayoutEffect } from 'react';
|
|
8
8
|
import { ArrowUpGlyph, ArrowDownGlyph, XGlyph, PlusGlyph } from '@crewlethq/icons/glyphs';
|
|
@@ -18,6 +18,7 @@ function ListInput({
|
|
|
18
18
|
onChange,
|
|
19
19
|
multiline = false,
|
|
20
20
|
helper,
|
|
21
|
+
helperOnFocus,
|
|
21
22
|
error,
|
|
22
23
|
placeholder,
|
|
23
24
|
disabled = false,
|
|
@@ -155,6 +156,7 @@ function ListInput({
|
|
|
155
156
|
label,
|
|
156
157
|
optional,
|
|
157
158
|
helper,
|
|
159
|
+
helperOnFocus,
|
|
158
160
|
error,
|
|
159
161
|
className: "crewlet-list-input",
|
|
160
162
|
labelAction: /* @__PURE__ */ jsx(
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Menu } from './chunk-
|
|
1
|
+
import { Menu } from './chunk-TFH6SYWB.js';
|
|
2
2
|
import { EmptyValue } from './chunk-EUCC37WY.js';
|
|
3
|
-
import { Modal } from './chunk-
|
|
3
|
+
import { Modal } from './chunk-TEEJSTFG.js';
|
|
4
|
+
import { useClipboard } from './chunk-5VNUYO76.js';
|
|
5
|
+
import { Button } from './chunk-OG6CL3EB.js';
|
|
4
6
|
import { useCardHeaderSlot } from './chunk-AV2DXAEL.js';
|
|
5
7
|
import { Checkbox } from './chunk-YCTMKKRA.js';
|
|
6
|
-
import { useClipboard } from './chunk-5VNUYO76.js';
|
|
7
8
|
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
8
|
-
import { Button } from './chunk-OG6CL3EB.js';
|
|
9
9
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
10
10
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
11
11
|
import './DataTable-WZK3V62B.css';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import './Tabs-
|
|
1
|
+
import './Tabs-5I5Q5KKM.css';
|
|
2
2
|
import './SegmentedControl-76HODRBT.css';
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Tooltip } from './chunk-CQY5NTRS.js';
|
|
2
|
+
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
3
|
+
import { cx } from './chunk-ODEQTPFM.js';
|
|
4
|
+
import './FactList-G2H73NFR.css';
|
|
5
|
+
import { LockGlyph } from '@crewlethq/icons/glyphs';
|
|
6
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
7
|
+
|
|
8
|
+
function FactList({ items, label, className }) {
|
|
9
|
+
return /* @__PURE__ */ jsx("dl", { className: cx("crewlet-fact-list", className), "aria-label": label, children: items.map((item) => /* @__PURE__ */ jsx(FactRow, { item }, item.key)) });
|
|
10
|
+
}
|
|
11
|
+
function FactRow({ item }) {
|
|
12
|
+
const row = /* @__PURE__ */ jsxs("div", { className: cx("crewlet-fact-list__row", item.reason ? "is-locked" : null), children: [
|
|
13
|
+
/* @__PURE__ */ jsxs("dt", { className: "crewlet-fact-list__label", children: [
|
|
14
|
+
item.reason ? /* @__PURE__ */ jsx(LockGlyph, { size: "xs", className: "crewlet-fact-list__lock", "aria-hidden": "true" }) : null,
|
|
15
|
+
item.label
|
|
16
|
+
] }),
|
|
17
|
+
/* @__PURE__ */ jsxs("dd", { className: "crewlet-fact-list__value", children: [
|
|
18
|
+
item.value,
|
|
19
|
+
item.reason ? /* @__PURE__ */ jsx(VisuallyHidden, { children: `, ${item.reason}` }) : null
|
|
20
|
+
] })
|
|
21
|
+
] });
|
|
22
|
+
return item.reason ? /* @__PURE__ */ jsx(Tooltip, { content: item.reason, children: row }) : row;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export { FactList };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useThemePreference, useDensityPreference } from './chunk-K3OWD7BJ.js';
|
|
2
|
-
import { SegmentedControl } from './chunk-
|
|
2
|
+
import { SegmentedControl } from './chunk-EBBAAQDY.js';
|
|
3
3
|
import { SunGlyph, MonitorGlyph, MoonGlyph } from '@crewlethq/icons/glyphs';
|
|
4
4
|
import { jsx } from 'react/jsx-runtime';
|
|
5
5
|
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { useRoving, tabStop } from './chunk-CBOICT64.js';
|
|
2
|
-
import { Avatar } from './chunk-
|
|
2
|
+
import { Avatar } from './chunk-HI6Q2UXQ.js';
|
|
3
3
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
4
|
-
import './CharacterPicker-ZEYIKUNQ.css';
|
|
5
4
|
import { CREWLET_CHARACTERS, CREWLET_CHARACTER_GEOMETRY } from '@crewlethq/icons/characters';
|
|
6
5
|
import { jsx } from 'react/jsx-runtime';
|
|
7
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { TreeGrid } from './chunk-
|
|
1
|
+
import { TreeGrid } from './chunk-MCPKHYMC.js';
|
|
2
2
|
import { createTreeModel, treeParent } from './chunk-S3BCVWTU.js';
|
|
3
|
-
import { OrgLabel } from './chunk-
|
|
3
|
+
import { OrgLabel } from './chunk-6OF2DBKY.js';
|
|
4
4
|
import { AddPill } from './chunk-74WGARJE.js';
|
|
5
5
|
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
6
6
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
@@ -3,6 +3,7 @@ export * from '../AddPill/index.js';
|
|
|
3
3
|
export * from '../Announcer/index.js';
|
|
4
4
|
export * from '../AppShell/index.js';
|
|
5
5
|
export * from '../Avatar/index.js';
|
|
6
|
+
export * from '../AvatarPicker/index.js';
|
|
6
7
|
export * from '../BrandLockup/index.js';
|
|
7
8
|
export * from '../Button/index.js';
|
|
8
9
|
export * from '../CalendarGrid/index.js';
|
|
@@ -29,6 +30,7 @@ export * from '../EmptyValue/index.js';
|
|
|
29
30
|
export * from '../EntityChip/index.js';
|
|
30
31
|
export * from '../ErrorBoundary/index.js';
|
|
31
32
|
export * from '../Eyebrow/index.js';
|
|
33
|
+
export * from '../FactList/index.js';
|
|
32
34
|
export * from '../FilterChip/index.js';
|
|
33
35
|
export * from '../Fullscreen/index.js';
|
|
34
36
|
export * from '../HuePicker/index.js';
|
package/dist/generated/index.js
CHANGED
|
@@ -1,101 +1,105 @@
|
|
|
1
|
-
import '../chunk-
|
|
1
|
+
import '../chunk-PQLMLG5K.js';
|
|
2
|
+
export { TreeCanvas } from '../chunk-5WEVLIB6.js';
|
|
2
3
|
import '../chunk-AER7UDD4.js';
|
|
4
|
+
export { ThemeToggle } from '../chunk-ORNOOMVY.js';
|
|
5
|
+
export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-HLBRPES3.js';
|
|
3
6
|
export { Timeline, TimelineItem } from '../chunk-O67VF5MS.js';
|
|
4
7
|
export { ToastProvider, Toaster, useToast } from '../chunk-UG5ZMAXW.js';
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
8
|
+
export { Switch } from '../chunk-A722MUNR.js';
|
|
9
|
+
export { Table } from '../chunk-V2N3BMOT.js';
|
|
7
10
|
export { TagGroup } from '../chunk-E6UWRXNM.js';
|
|
8
|
-
export { TagsInput } from '../chunk-
|
|
11
|
+
export { TagsInput } from '../chunk-7JGWSOLM.js';
|
|
9
12
|
export { Text } from '../chunk-23DHIMJA.js';
|
|
10
|
-
export { DensitySwitcher, ThemeSwitcher } from '../chunk-
|
|
11
|
-
export { ThemeToggle } from '../chunk-ORNOOMVY.js';
|
|
13
|
+
export { DensitySwitcher, ThemeSwitcher } from '../chunk-WEIINZPA.js';
|
|
12
14
|
export { applyDensity, applyStoredPreferences, applyTheme, resolveTheme, useDensityPreference, useSystemTheme, useThemePreference } from '../chunk-K3OWD7BJ.js';
|
|
13
|
-
export {
|
|
15
|
+
export { Select } from '../chunk-SEFMO2EV.js';
|
|
16
|
+
export { matchesShortcut, useShortcut } from '../chunk-2FPENTCF.js';
|
|
14
17
|
export { NavGroup, NavItem, SidebarNav } from '../chunk-IVFJD7WY.js';
|
|
15
18
|
export { Skeleton } from '../chunk-W5J7R5EB.js';
|
|
16
19
|
export { StatCard } from '../chunk-IKB6HFGK.js';
|
|
17
20
|
export { StatGroup } from '../chunk-QVAFL2LE.js';
|
|
18
21
|
export { Stepper } from '../chunk-5QWIJSQM.js';
|
|
19
|
-
export {
|
|
20
|
-
export {
|
|
22
|
+
export { PricingCard } from '../chunk-UCYIRDND.js';
|
|
23
|
+
export { Tag } from '../chunk-LOECRMHA.js';
|
|
24
|
+
export { StatusDot } from '../chunk-WIATRXEJ.js';
|
|
21
25
|
export { Prose } from '../chunk-JCSA3XVH.js';
|
|
22
26
|
export { SearchTrigger } from '../chunk-6DRDCT22.js';
|
|
23
27
|
export { Section } from '../chunk-A2UXBCLO.js';
|
|
24
|
-
import '../chunk-
|
|
28
|
+
import '../chunk-UAQIUSSK.js';
|
|
25
29
|
export { SegmentedMeter, segmentedMeterLabel } from '../chunk-4AK52VHB.js';
|
|
26
|
-
export {
|
|
27
|
-
export { matchesShortcut, useShortcut } from '../chunk-2FPENTCF.js';
|
|
30
|
+
export { DEFAULT_METER_THRESHOLDS, METER_STATES, Meter, meterState, meterStateTone, meterTone, progressTone } from '../chunk-4PZ6FJKW.js';
|
|
28
31
|
export { NewItemsNotice } from '../chunk-PXU6HOZB.js';
|
|
29
|
-
export { OrgNodeDisclosure, OrgNodeLabel, OrgNodeLead } from '../chunk-
|
|
30
|
-
export { OrgTable, OrgTableActions, OrgTableAdd, OrgTableName } from '../chunk-
|
|
31
|
-
export { TreeGrid } from '../chunk-
|
|
32
|
+
export { OrgNodeDisclosure, OrgNodeLabel, OrgNodeLead } from '../chunk-IHGKPEEV.js';
|
|
33
|
+
export { OrgTable, OrgTableActions, OrgTableAdd, OrgTableName } from '../chunk-ZMJHK7DR.js';
|
|
34
|
+
export { TreeGrid } from '../chunk-MCPKHYMC.js';
|
|
32
35
|
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-S3BCVWTU.js';
|
|
33
|
-
export { OrgLabel } from '../chunk-
|
|
34
|
-
export { PricingCard } from '../chunk-UCYIRDND.js';
|
|
35
|
-
export { Tag } from '../chunk-LOECRMHA.js';
|
|
36
|
-
export { StatusDot } from '../chunk-WIATRXEJ.js';
|
|
36
|
+
export { OrgLabel } from '../chunk-6OF2DBKY.js';
|
|
37
37
|
export { AutoGrid, Inline, Spacer, Stack } from '../chunk-W4ENKCXJ.js';
|
|
38
38
|
export { Link } from '../chunk-ZPSOF6VL.js';
|
|
39
39
|
export { List, ListItem } from '../chunk-DS2C73RJ.js';
|
|
40
|
-
export { ListInput } from '../chunk-
|
|
41
|
-
export {
|
|
40
|
+
export { ListInput } from '../chunk-LZP7FGT7.js';
|
|
41
|
+
export { Eyebrow } from '../chunk-RK4XPHVG.js';
|
|
42
|
+
export { FactList } from '../chunk-URYDN2KA.js';
|
|
43
|
+
export { Tooltip } from '../chunk-CQY5NTRS.js';
|
|
42
44
|
export { FILTER_CHIP_ATTRIBUTE, FilterChip, FilterChipGroup } from '../chunk-5YLON2PW.js';
|
|
43
45
|
export { useFullscreen } from '../chunk-XDTYBF2F.js';
|
|
44
|
-
|
|
45
|
-
export {
|
|
46
|
-
export { SegmentedControl } from '../chunk-LPHHDCN3.js';
|
|
47
|
-
export { TabPanel, Tabs, tabId } from '../chunk-HEOVQZL7.js';
|
|
46
|
+
import '../chunk-EXHQ2QVW.js';
|
|
47
|
+
export { ImageUpload } from '../chunk-LAQK4V3Z.js';
|
|
48
48
|
export { InlineCode } from '../chunk-NN62JQLR.js';
|
|
49
|
-
export { ImageUpload } from '../chunk-E3HDS4F7.js';
|
|
50
49
|
export { DescriptionList, DescriptionListItem } from '../chunk-XN4JBAN3.js';
|
|
51
50
|
export { DIFF_LIST_LABELS, DiffList } from '../chunk-LFHCXZO5.js';
|
|
52
|
-
export { Disclosure } from '../chunk-
|
|
51
|
+
export { Disclosure } from '../chunk-S4RCG44T.js';
|
|
53
52
|
export { EmptyState } from '../chunk-RA2ULG6H.js';
|
|
54
|
-
export { EntityChip } from '../chunk-
|
|
53
|
+
export { EntityChip } from '../chunk-DDTDN5L2.js';
|
|
55
54
|
export { ErrorBoundary } from '../chunk-XX2VQE55.js';
|
|
56
|
-
export {
|
|
57
|
-
export { Combobox } from '../chunk-
|
|
58
|
-
export { CommandPalette } from '../chunk-
|
|
55
|
+
export { CodeBlock } from '../chunk-KGTQ5CVD.js';
|
|
56
|
+
export { Combobox } from '../chunk-ELZKOVEC.js';
|
|
57
|
+
export { CommandPalette } from '../chunk-6SDGRKQ7.js';
|
|
59
58
|
export { Container } from '../chunk-QVE4GJAT.js';
|
|
60
|
-
export {
|
|
59
|
+
export { CopyButton, Copyable } from '../chunk-YACKC3K2.js';
|
|
60
|
+
export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-CIOKUMVC.js';
|
|
61
61
|
export { Toolbar, ToolbarOverflow, ToolbarWide } from '../chunk-PGRPNDWM.js';
|
|
62
62
|
export { RelativeTime, currentNow, formatElapsed, formatExact, formatRelative, formatUntil, toISO, toInstant, useNow } from '../chunk-3CZ7XAVY.js';
|
|
63
63
|
export { PageHeader } from '../chunk-HOXGBLEY.js';
|
|
64
|
+
export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-JCNUQ3US.js';
|
|
64
65
|
export { Kbd, isApplePlatform, keyGlyph } from '../chunk-SMBKXWML.js';
|
|
66
|
+
export { FormField, FormRow, FormSection, Input, InputAffix, Label, ReadOnlyField, Textarea } from '../chunk-FTEJPHBI.js';
|
|
65
67
|
export { TYPE_AHEAD_WINDOW, useListbox, useOptionKeys } from '../chunk-6MU7HNB4.js';
|
|
66
|
-
export {
|
|
67
|
-
export {
|
|
68
|
-
export { Menu } from '../chunk-LSB3EHBW.js';
|
|
68
|
+
export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-R4ZJB5YX.js';
|
|
69
|
+
export { Menu } from '../chunk-TFH6SYWB.js';
|
|
69
70
|
export { EMPTY_VALUE, EmptyValue } from '../chunk-EUCC37WY.js';
|
|
70
|
-
export { ConfirmModal, Modal } from '../chunk-
|
|
71
|
-
export {
|
|
72
|
-
export { Popover } from '../chunk-PDUZO35I.js';
|
|
71
|
+
export { ConfirmModal, Modal } from '../chunk-TEEJSTFG.js';
|
|
72
|
+
export { useClipboard, writeClipboard } from '../chunk-5VNUYO76.js';
|
|
73
73
|
export { CalendarGrid, compareDays, daysInMonth, sameDay, shiftDay, shiftMonth, today } from '../chunk-GXQ3B46I.js';
|
|
74
74
|
export { Callout } from '../chunk-R6FBDTP3.js';
|
|
75
|
-
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-
|
|
75
|
+
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';
|
|
76
76
|
import '../chunk-53DVJCVW.js';
|
|
77
|
-
export {
|
|
77
|
+
export { Button, ButtonLink } from '../chunk-OG6CL3EB.js';
|
|
78
|
+
export { Card } from '../chunk-EG6NYWVK.js';
|
|
78
79
|
export { useCardHeaderSlot } from '../chunk-AV2DXAEL.js';
|
|
79
|
-
|
|
80
|
-
import '../chunk-CBOICT64.js';
|
|
80
|
+
import '../chunk-3L5NHASN.js';
|
|
81
81
|
export { ActivityStrip, BarList, ChartTooltip, DATA_COLORS, DATA_COLOR_OTHER, Legend, Sparkline, StackedBar, StackedColumns, TimeSeries, dataColor, niceScale, useChartHover } from '../chunk-4WNNEDKO.js';
|
|
82
82
|
export { Checkbox } from '../chunk-YCTMKKRA.js';
|
|
83
|
-
export {
|
|
84
|
-
export {
|
|
85
|
-
export { useClipboard, writeClipboard } from '../chunk-5VNUYO76.js';
|
|
86
|
-
export { Accordion, AccordionItem } from '../chunk-RIAZM6L3.js';
|
|
87
|
-
export { DisclosureAnatomy } from '../chunk-FZVJDJFN.js';
|
|
88
|
-
export { Count } from '../chunk-BHHIIK3M.js';
|
|
83
|
+
export { Accordion, AccordionItem } from '../chunk-G2AVKPSL.js';
|
|
84
|
+
export { DisclosureAnatomy } from '../chunk-ENJUPIND.js';
|
|
89
85
|
export { HeadingLevelProvider, headingTag, nextHeadingLevel, useHeadingLevel } from '../chunk-PQADV6P6.js';
|
|
90
86
|
export { ADD_PILL_MS, AddPill } from '../chunk-74WGARJE.js';
|
|
87
|
+
export { AppShell, AppShellRail, AppShellRailRow, AppShellToggle, AppShellTopbar, useAppShell } from '../chunk-7LD6P32I.js';
|
|
88
|
+
export { IconButton } from '../chunk-4FQT6ZAY.js';
|
|
91
89
|
export { Announcer, announce, useAnnouncer } from '../chunk-RSAQOKH3.js';
|
|
92
|
-
export {
|
|
90
|
+
export { AvatarStack, avatarStackLabel } from '../chunk-3UK4VFSK.js';
|
|
91
|
+
export { AvatarPicker } from '../chunk-HV6IZFBK.js';
|
|
92
|
+
export { HuePicker } from '../chunk-K5Q2DK3P.js';
|
|
93
|
+
export { NODE_HUES, NODE_HUE_NAMES, isNodeHue } from '../chunk-AYKXMIOR.js';
|
|
94
|
+
export { SegmentedControl } from '../chunk-EBBAAQDY.js';
|
|
95
|
+
export { TabPanel, Tabs, tabId } from '../chunk-JHQUT4WJ.js';
|
|
96
|
+
export { Popover } from '../chunk-PDUZO35I.js';
|
|
97
|
+
export { CHARACTER_PICKER_COLUMNS, CharacterPicker } from '../chunk-YXMCUKFI.js';
|
|
98
|
+
import '../chunk-CBOICT64.js';
|
|
99
|
+
export { Count } from '../chunk-BHHIIK3M.js';
|
|
93
100
|
export { LAYER_GAP, LAYER_REPOSITION_EVENT, LayerHost, outsideBounds, placePopup, useLayerContainer, viewportBounds } from '../chunk-7RPGY3JE.js';
|
|
94
101
|
export { focusables, isComposing, isModalLayerOpen, layerCount, useBodyScrollLock, useModalLayer, usePopupLayer } from '../chunk-R25RGPUB.js';
|
|
95
|
-
export { IconButton } from '../chunk-4FQT6ZAY.js';
|
|
96
|
-
export { AvatarStack, avatarStackLabel } from '../chunk-OAH4IEQJ.js';
|
|
97
|
-
export { AVATAR_CHARACTER_FULL_DETAIL, AVATAR_CORNER_RATIO, AVATAR_SIZES, Avatar, avatarCorner, avatarPixels, avatarTint, getInitials } from '../chunk-UDW3DAP5.js';
|
|
98
|
-
export { BrandLockup } from '../chunk-7KBNFFM3.js';
|
|
99
|
-
export { Button, ButtonLink } from '../chunk-OG6CL3EB.js';
|
|
100
102
|
export { VisuallyHidden } from '../chunk-BZFWDIV6.js';
|
|
103
|
+
export { AVATAR_CHARACTER_FULL_DETAIL, AVATAR_CORNER_RATIO, AVATAR_SIZES, AVATAR_STATUSES, AVATAR_STATUS_LABELS, Avatar, avatarCorner, avatarPixels, avatarTint, getInitials } from '../chunk-HI6Q2UXQ.js';
|
|
104
|
+
export { BrandLockup } from '../chunk-7KBNFFM3.js';
|
|
101
105
|
export { cx } from '../chunk-ODEQTPFM.js';
|