@crewlethq/ui 0.6.3 → 0.8.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 +109 -0
- package/dist/AddPill/index.js +1 -1
- package/dist/{AddPill-IJQYCY6C.css → AddPill-V4TQXJ53.css} +23 -22
- package/dist/AppShell/index.js +2 -2
- package/dist/{AppShell-XARELGIH.css → AppShell-CEVLW4QG.css} +3 -1
- package/dist/Button/index.js +1 -1
- package/dist/{Button-EXU36DEH.css → Button-UWKBTKYD.css} +18 -0
- package/dist/Canvas/Canvas.d.ts +16 -1
- package/dist/Canvas/index.d.ts +1 -1
- package/dist/Canvas/index.js +3 -3
- package/dist/{Canvas-Q6JETCWR.css → Canvas-YVXHMWLN.css} +13 -0
- package/dist/Card/index.js +1 -1
- package/dist/{Card-GLP7SUV6.css → Card-KJOYHDTJ.css} +5 -1
- package/dist/Charts/BarList.d.ts +23 -0
- package/dist/Charts/index.d.ts +1 -1
- package/dist/Charts/index.js +1 -1
- package/dist/{Charts-B3YEF7R4.css → Charts-THPA5BWV.css} +40 -0
- package/dist/Checkbox/index.js +1 -1
- package/dist/{Checkbox-BOXQ747I.css → Checkbox-UE7TEPAM.css} +9 -1
- package/dist/CodeBlock/index.js +4 -4
- package/dist/Combobox/index.js +3 -3
- package/dist/CommandPalette/index.js +6 -6
- package/dist/Copyable/index.js +3 -3
- package/dist/DataTable/index.js +6 -6
- package/dist/{DataTable-OLHPF7D4.css → DataTable-WZK3V62B.css} +11 -0
- package/dist/DataView/index.js +11 -11
- package/dist/DateTimePicker/index.js +4 -4
- package/dist/{DateTimePicker-22VNXRWC.css → DateTimePicker-4AZBTODT.css} +11 -6
- package/dist/ErrorBoundary/index.js +2 -2
- package/dist/FilterChip/index.js +1 -1
- package/dist/{FilterChip-GTGLLOXE.css → FilterChip-EZ4QMW4E.css} +4 -1
- package/dist/IconButton/index.js +1 -1
- package/dist/{IconButton-TVEUWK6L.css → IconButton-VYWP6SGW.css} +15 -0
- package/dist/ImageUpload/index.js +1 -1
- package/dist/{ImageUpload-YCHJMUGX.css → ImageUpload-L2GE4JUM.css} +5 -1
- package/dist/Input/index.js +2 -2
- package/dist/{Input-2PU5CPKK.css → Input-DRFNI26F.css} +40 -10
- package/dist/Kbd/index.js +1 -1
- package/dist/{Kbd-JPLDVJIP.css → Kbd-MCWJTRTT.css} +11 -0
- package/dist/ListInput/index.js +4 -4
- package/dist/Menu/index.js +3 -3
- package/dist/Modal/index.js +3 -3
- package/dist/NewItemsNotice/index.js +1 -1
- package/dist/{NewItemsNotice-T4DSSPVV.css → NewItemsNotice-Q5ED73BQ.css} +3 -1
- package/dist/OrgLabel/OrgLabel.d.ts +12 -3
- package/dist/OrgLabel/index.js +1 -1
- package/dist/{OrgLabel-CR233G34.css → OrgLabel-6WSKJQOT.css} +38 -0
- package/dist/OrgNode/OrgNode.d.ts +7 -4
- package/dist/OrgNode/index.js +2 -2
- package/dist/{OrgNode-BT7T2Q2X.css → OrgNode-TCHJH5FO.css} +89 -45
- package/dist/OrgTable/index.js +5 -5
- package/dist/{OrgTable-VWMFC3TB.css → OrgTable-JZSYTUIK.css} +28 -4
- package/dist/Popover/index.js +1 -1
- package/dist/{Popover-WJGCF3ZQ.css → Popover-QCINR7WG.css} +5 -2
- package/dist/PricingCard/index.js +2 -2
- package/dist/{PricingCard-7EFXRSD2.css → PricingCard-HTAHG4ST.css} +5 -1
- package/dist/SearchTrigger/index.js +1 -1
- package/dist/{SearchTrigger-Z5D4AAY7.css → SearchTrigger-KIZLWBEH.css} +4 -1
- package/dist/SegmentedControl/SegmentedControl.d.ts +19 -1
- package/dist/SegmentedControl/index.d.ts +1 -1
- package/dist/SegmentedControl/index.js +2 -2
- package/dist/SegmentedControl-76HODRBT.css +160 -0
- package/dist/Select/index.js +1 -1
- package/dist/{Select-E24U5LBC.css → Select-4ANVLHUY.css} +4 -4
- package/dist/Switch/index.js +1 -1
- package/dist/{Switch-U4OWK4CL.css → Switch-66RAQCRE.css} +8 -5
- package/dist/Tabs/index.js +1 -1
- package/dist/{Tabs-XCNPHA7B.css → Tabs-BWFQSWY3.css} +12 -0
- package/dist/Tag/index.js +1 -1
- package/dist/{Tag-4OXGO2DU.css → Tag-4BRQS6GN.css} +28 -1
- package/dist/TagGroup/index.js +1 -1
- package/dist/{TagGroup-APC2EFH4.css → TagGroup-BCQZD7ZD.css} +4 -1
- package/dist/TagsInput/index.js +3 -3
- package/dist/{TagsInput-W4P36PRJ.css → TagsInput-P2HS5QL4.css} +2 -2
- package/dist/ThemeSwitcher/index.js +3 -3
- package/dist/ThemeToggle/index.js +2 -2
- package/dist/TimeWindowPicker/index.js +6 -6
- package/dist/{TimeWindowPicker-7I7KWCMU.css → TimeWindowPicker-GBF4JDFI.css} +21 -8
- package/dist/Tree/layout.d.ts +3 -3
- package/dist/TreeCanvas/TreeCanvas.d.ts +7 -5
- package/dist/TreeCanvas/index.js +4 -4
- package/dist/{TreeCanvas-HVOV4SQN.css → TreeCanvas-L2XYONWL.css} +80 -74
- package/dist/TreeGrid/index.js +2 -2
- package/dist/{chunk-SVNXOK25.js → chunk-26SCUACK.js} +2 -2
- package/dist/{chunk-4UQ7SMPK.js → chunk-4FQT6ZAY.js} +1 -1
- package/dist/{chunk-IBYO2IJN.js → chunk-5I56UXBJ.js} +4 -4
- package/dist/{chunk-ZFATEERP.js → chunk-5YLON2PW.js} +1 -1
- package/dist/{chunk-EFYPAJT3.js → chunk-6DRDCT22.js} +1 -1
- package/dist/{chunk-PQNILU27.js → chunk-6HXH57BL.js} +3 -3
- package/dist/{chunk-BNCCEER3.js → chunk-6SIG5I72.js} +22 -11
- package/dist/{chunk-RJM4QCGG.js → chunk-6VL4LGWC.js} +36 -13
- package/dist/{chunk-OM5E3TTK.js → chunk-74WGARJE.js} +5 -2
- package/dist/{chunk-EV6IMYJ6.js → chunk-A722MUNR.js} +1 -1
- package/dist/{chunk-WOFOMTGB.js → chunk-B47YUQGM.js} +6 -2
- package/dist/{chunk-MV2E3QZM.js → chunk-BTHX2FS3.js} +2 -2
- package/dist/{chunk-2QLOH454.js → chunk-BXPLX7YU.js} +3 -3
- package/dist/{chunk-V34H2YCY.js → chunk-CEOXFO3E.js} +1 -1
- package/dist/{chunk-KKLITCMF.js → chunk-CHG7VT2M.js} +8 -8
- package/dist/{chunk-QY7UU5ZB.js → chunk-DRHXRGB6.js} +1 -1
- package/dist/{chunk-V2XMNLMS.js → chunk-E6UWRXNM.js} +1 -1
- package/dist/{chunk-NQ2HQ6P5.js → chunk-HVPC2GHY.js} +6 -6
- package/dist/{chunk-FFKYL7Z3.js → chunk-L7THQMFB.js} +4 -2
- package/dist/{chunk-PAWGBSHU.js → chunk-LOECRMHA.js} +1 -1
- package/dist/{chunk-LSJZUA5V.js → chunk-LSB3EHBW.js} +2 -2
- package/dist/{chunk-ERHSECG2.js → chunk-MORLKUGM.js} +1 -1
- package/dist/{chunk-UWQWTGQH.js → chunk-MPXI6FM6.js} +3 -3
- package/dist/{chunk-DHPUMOTX.js → chunk-N5KCGFWI.js} +8 -4
- package/dist/{chunk-ZAO4HHXI.js → chunk-OG6CL3EB.js} +1 -1
- package/dist/{chunk-C5WJUZVR.js → chunk-ORNOOMVY.js} +1 -1
- package/dist/{chunk-WUVZDFHS.js → chunk-OVLJEVQS.js} +2 -2
- package/dist/{chunk-AUS5FNQE.js → chunk-PDUZO35I.js} +1 -1
- package/dist/{chunk-YLYOWZ4V.js → chunk-PXU6HOZB.js} +1 -1
- package/dist/{chunk-AGQ3YLA5.js → chunk-QJZ3Y6WW.js} +6 -6
- package/dist/{chunk-S7KW47IQ.js → chunk-RHHGLTXJ.js} +1 -1
- package/dist/{chunk-SJQ546ID.js → chunk-SEFMO2EV.js} +1 -1
- package/dist/{chunk-KJ34ZBBI.js → chunk-SMBKXWML.js} +1 -1
- package/dist/{chunk-FIFNP6PL.js → chunk-SX2DFTQV.js} +1 -1
- package/dist/{chunk-L6XZOCP4.js → chunk-UCYIRDND.js} +2 -2
- package/dist/{chunk-D6EVJUGU.js → chunk-UYK72NOS.js} +1 -1
- package/dist/{chunk-TIWAHZZ6.js → chunk-VCOELPCT.js} +2 -2
- package/dist/{chunk-2HY7I3NT.js → chunk-VE6LD3KM.js} +5 -3
- package/dist/{chunk-CAIHUYXV.js → chunk-W4GQWFRX.js} +1 -1
- package/dist/{chunk-BWIPKSWA.js → chunk-XX2VQE55.js} +1 -1
- package/dist/{chunk-UA7O3KKJ.js → chunk-YCTMKKRA.js} +1 -1
- package/dist/{chunk-DSUY5F4E.js → chunk-ZGX2DP7F.js} +2 -2
- package/dist/generated/index.js +44 -44
- package/dist/index.js +44 -44
- package/dist/styles.css +662 -223
- package/package.json +3 -3
- package/dist/SegmentedControl-X3BI3XU4.css +0 -68
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { TreeGrid } from './chunk-
|
|
2
|
-
import { createTreeModel } from './chunk-S3BCVWTU.js';
|
|
3
|
-
import { OrgLabel } from './chunk-
|
|
4
|
-
import { AddPill } from './chunk-
|
|
5
|
-
import { IconButton } from './chunk-
|
|
1
|
+
import { TreeGrid } from './chunk-SX2DFTQV.js';
|
|
2
|
+
import { createTreeModel, treeParent } from './chunk-S3BCVWTU.js';
|
|
3
|
+
import { OrgLabel } from './chunk-B47YUQGM.js';
|
|
4
|
+
import { AddPill } from './chunk-74WGARJE.js';
|
|
5
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
6
6
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
7
|
-
import './OrgTable-
|
|
7
|
+
import './OrgTable-JZSYTUIK.css';
|
|
8
8
|
import { useMemo, useRef, useImperativeHandle, useCallback } from 'react';
|
|
9
9
|
import { ChevronDownGlyph, ChevronUpGlyph } from '@crewlethq/icons/glyphs';
|
|
10
10
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
@@ -24,7 +24,7 @@ function OrgTable({
|
|
|
24
24
|
...rest
|
|
25
25
|
}) {
|
|
26
26
|
const text = { ...LABELS, ...labels };
|
|
27
|
-
const
|
|
27
|
+
const tree = useMemo(() => createTreeModel(rows), [rows]);
|
|
28
28
|
const grid = useRef(null);
|
|
29
29
|
useImperativeHandle(
|
|
30
30
|
ref,
|
|
@@ -38,20 +38,22 @@ function OrgTable({
|
|
|
38
38
|
const cell = useCallback(
|
|
39
39
|
(id, column, context) => {
|
|
40
40
|
if (column !== 1) return renderCell(id, column, context);
|
|
41
|
-
const depth =
|
|
41
|
+
const depth = tree.depth.get(id) ?? 0;
|
|
42
|
+
const open = context.expandable(id) && context.expanded(id);
|
|
42
43
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
43
44
|
/* @__PURE__ */ jsx(
|
|
44
45
|
OrgTableWire,
|
|
45
46
|
{
|
|
46
47
|
depth,
|
|
47
48
|
tone: tone?.(id),
|
|
48
|
-
trunk: depth > 0 ||
|
|
49
|
+
trunk: depth > 0 || open,
|
|
50
|
+
last: !open && lastUnderRoot(tree, id)
|
|
49
51
|
}
|
|
50
52
|
),
|
|
51
53
|
renderCell(id, column, context)
|
|
52
54
|
] });
|
|
53
55
|
},
|
|
54
|
-
[
|
|
56
|
+
[tree, renderCell, tone]
|
|
55
57
|
);
|
|
56
58
|
return /* @__PURE__ */ jsxs("div", { className: cx("crewlet-org-table", className), children: [
|
|
57
59
|
controls && /*
|
|
@@ -97,10 +99,18 @@ function OrgTable({
|
|
|
97
99
|
)
|
|
98
100
|
] });
|
|
99
101
|
}
|
|
102
|
+
function lastUnderRoot(tree, id) {
|
|
103
|
+
for (let at = id, up = treeParent(tree, id); up !== null; at = up, up = treeParent(tree, up)) {
|
|
104
|
+
const siblings = tree.children.get(up) ?? [];
|
|
105
|
+
if (siblings[siblings.length - 1] !== at) return false;
|
|
106
|
+
}
|
|
107
|
+
return true;
|
|
108
|
+
}
|
|
100
109
|
function OrgTableWire({
|
|
101
110
|
depth,
|
|
102
111
|
tone,
|
|
103
|
-
trunk
|
|
112
|
+
trunk,
|
|
113
|
+
last
|
|
104
114
|
}) {
|
|
105
115
|
return /* @__PURE__ */ jsx(
|
|
106
116
|
"span",
|
|
@@ -108,6 +118,7 @@ function OrgTableWire({
|
|
|
108
118
|
className: "crewlet-org-table__wire",
|
|
109
119
|
"aria-hidden": "true",
|
|
110
120
|
"data-trunk": trunk ? "" : void 0,
|
|
121
|
+
"data-last": last ? "" : void 0,
|
|
111
122
|
"data-root": depth === 0 ? "" : void 0,
|
|
112
123
|
"data-tone": tone,
|
|
113
124
|
style: { "--crewlet-org-table-depth": depth }
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
2
2
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
3
|
-
import './Charts-
|
|
3
|
+
import './Charts-THPA5BWV.css';
|
|
4
4
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
5
5
|
import { useState, useRef, useCallback, useId } from 'react';
|
|
6
6
|
|
|
@@ -61,15 +61,24 @@ function BarList({
|
|
|
61
61
|
/* @__PURE__ */ jsxs("ul", { role: "list", className: cx("crewlet-bar-list", `crewlet-bar-list--${layout}`, className), children: [
|
|
62
62
|
shown.map((datum, index) => {
|
|
63
63
|
const width = top > 0 && datum.value > 0 ? Math.max(1, datum.value / top * 100) : 0;
|
|
64
|
+
const parts = (datum.parts ?? []).map((part, at) => ({ ...part, color: part.color ?? dataColor(at) })).filter((part) => part.value > 0);
|
|
64
65
|
const bar = width > 0 ? /* @__PURE__ */ jsx(
|
|
65
66
|
"span",
|
|
66
67
|
{
|
|
67
|
-
className: "crewlet-bar-list__bar",
|
|
68
|
+
className: cx("crewlet-bar-list__bar", parts.length > 0 && "crewlet-bar-list__bar--parts"),
|
|
68
69
|
"aria-hidden": true,
|
|
69
|
-
style: {
|
|
70
|
+
style: parts.length > 0 ? { width: `${width}%` } : {
|
|
70
71
|
width: `${width}%`,
|
|
71
72
|
"--crewlet-bar-list-bar-color": datum.color ?? dataColor(index)
|
|
72
|
-
}
|
|
73
|
+
},
|
|
74
|
+
children: parts.map((part) => /* @__PURE__ */ jsx(
|
|
75
|
+
"span",
|
|
76
|
+
{
|
|
77
|
+
className: "crewlet-bar-list__part",
|
|
78
|
+
style: { flexGrow: part.value, "--crewlet-bar-list-part-color": part.color }
|
|
79
|
+
},
|
|
80
|
+
part.id
|
|
81
|
+
))
|
|
73
82
|
}
|
|
74
83
|
) : null;
|
|
75
84
|
const value = /* @__PURE__ */ jsx("span", { className: "crewlet-bar-list__value", children: datum.display ?? datum.value.toLocaleString() });
|
|
@@ -98,15 +107,29 @@ function BarList({
|
|
|
98
107
|
/* @__PURE__ */ jsx("span", { className: "crewlet-bar-list__sub", children: datum.sub })
|
|
99
108
|
] })
|
|
100
109
|
] });
|
|
101
|
-
return /* @__PURE__ */
|
|
102
|
-
"
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
+
return /* @__PURE__ */ jsxs("li", { className: "crewlet-bar-list__item", children: [
|
|
111
|
+
datum.href ? /* @__PURE__ */ jsx("a", { className: "crewlet-bar-list__row crewlet-bar-list__row--pressable", href: datum.href, children: body }) : datum.onSelect ? /* @__PURE__ */ jsx(
|
|
112
|
+
"button",
|
|
113
|
+
{
|
|
114
|
+
type: "button",
|
|
115
|
+
className: "crewlet-bar-list__row crewlet-bar-list__row--pressable",
|
|
116
|
+
onClick: datum.onSelect,
|
|
117
|
+
children: body
|
|
118
|
+
}
|
|
119
|
+
) : /* @__PURE__ */ jsx("span", { className: "crewlet-bar-list__row", children: body }),
|
|
120
|
+
parts.length > 0 && /* @__PURE__ */ jsx(
|
|
121
|
+
Legend,
|
|
122
|
+
{
|
|
123
|
+
className: "crewlet-bar-list__key",
|
|
124
|
+
items: parts.map((part) => ({
|
|
125
|
+
id: part.id,
|
|
126
|
+
label: part.label,
|
|
127
|
+
color: part.color,
|
|
128
|
+
value: part.display ?? part.value.toLocaleString()
|
|
129
|
+
}))
|
|
130
|
+
}
|
|
131
|
+
)
|
|
132
|
+
] }, datum.id);
|
|
110
133
|
}),
|
|
111
134
|
remaining > 0 && /* @__PURE__ */ jsx("li", { className: "crewlet-bar-list__more", children: moreLabel(remaining) })
|
|
112
135
|
] })
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
2
2
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
3
|
-
import './AddPill-
|
|
3
|
+
import './AddPill-V4TQXJ53.css';
|
|
4
4
|
import { useState, useId, useRef, useCallback, useEffect, Fragment } from 'react';
|
|
5
5
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
6
6
|
|
|
@@ -93,7 +93,10 @@ function AddPill({
|
|
|
93
93
|
onClick: press,
|
|
94
94
|
children: [
|
|
95
95
|
/* @__PURE__ */ jsx("span", { className: "crewlet-add-pill__disc", "aria-hidden": "true" }),
|
|
96
|
-
/* @__PURE__ */
|
|
96
|
+
/* @__PURE__ */ jsxs("svg", { viewBox: "0 0 16 16", "aria-hidden": "true", focusable: "false", children: [
|
|
97
|
+
/* @__PURE__ */ jsx("circle", { cx: "8", cy: "8", r: "7" }),
|
|
98
|
+
/* @__PURE__ */ jsx("path", { d: "M8 4.5v7M4.5 8h7" })
|
|
99
|
+
] })
|
|
97
100
|
]
|
|
98
101
|
}
|
|
99
102
|
),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Avatar } from './chunk-IA232OTU.js';
|
|
2
2
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
3
|
-
import './OrgLabel-
|
|
3
|
+
import './OrgLabel-6WSKJQOT.css';
|
|
4
4
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
5
5
|
|
|
6
6
|
function OrgLabel(props) {
|
|
@@ -8,7 +8,11 @@ function OrgLabel(props) {
|
|
|
8
8
|
const zone = props.avatar === void 0 ? /* @__PURE__ */ jsx(
|
|
9
9
|
"span",
|
|
10
10
|
{
|
|
11
|
-
className: cx(
|
|
11
|
+
className: cx(
|
|
12
|
+
"crewlet-org-label__icon",
|
|
13
|
+
props.iconSize === "lg" && "crewlet-org-label__icon--lg",
|
|
14
|
+
props.iconRing === true && "crewlet-org-label__icon--ring"
|
|
15
|
+
),
|
|
12
16
|
"aria-hidden": "true",
|
|
13
17
|
children: props.icon
|
|
14
18
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { HeadingLevelProvider } from './chunk-PQADV6P6.js';
|
|
2
2
|
import { useLayerContainer } from './chunk-7RPGY3JE.js';
|
|
3
3
|
import { focusables, useModalLayer, useBodyScrollLock } from './chunk-R25RGPUB.js';
|
|
4
|
-
import { IconButton } from './chunk-
|
|
5
|
-
import { Button } from './chunk-
|
|
4
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
5
|
+
import { Button } from './chunk-OG6CL3EB.js';
|
|
6
6
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
7
7
|
import './Modal-BNT3TDV2.css';
|
|
8
8
|
import { useId, useRef, useCallback } from 'react';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Kbd } from './chunk-
|
|
2
|
-
import { Modal } from './chunk-
|
|
1
|
+
import { Kbd } from './chunk-SMBKXWML.js';
|
|
2
|
+
import { Modal } from './chunk-BTHX2FS3.js';
|
|
3
3
|
import { useListbox } from './chunk-6MU7HNB4.js';
|
|
4
|
-
import { Input } from './chunk-
|
|
4
|
+
import { Input } from './chunk-ZGX2DP7F.js';
|
|
5
5
|
import { Count } from './chunk-BHHIIK3M.js';
|
|
6
6
|
import { isComposing } from './chunk-R25RGPUB.js';
|
|
7
7
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
@@ -2,7 +2,7 @@ import { CardHeaderSlotContext } from './chunk-AV2DXAEL.js';
|
|
|
2
2
|
import { Count } from './chunk-BHHIIK3M.js';
|
|
3
3
|
import { useHeadingLevel, HeadingLevelProvider, nextHeadingLevel, headingTag } from './chunk-PQADV6P6.js';
|
|
4
4
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
5
|
-
import './Card-
|
|
5
|
+
import './Card-KJOYHDTJ.css';
|
|
6
6
|
import { createContext, useId, useState, isValidElement, useRef, useCallback, useMemo, Children, cloneElement, useContext, useEffect, Fragment } from 'react';
|
|
7
7
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
8
8
|
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { Toolbar } from './chunk-PGRPNDWM.js';
|
|
2
2
|
import { PageHeader } from './chunk-HOXGBLEY.js';
|
|
3
3
|
import { RelativeTime } from './chunk-3CZ7XAVY.js';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
4
|
+
import { DateTimePicker } from './chunk-5I56UXBJ.js';
|
|
5
|
+
import { Popover } from './chunk-PDUZO35I.js';
|
|
6
|
+
import { DataTable } from './chunk-QJZ3Y6WW.js';
|
|
7
|
+
import { Menu } from './chunk-LSB3EHBW.js';
|
|
8
|
+
import { Kbd } from './chunk-SMBKXWML.js';
|
|
9
9
|
import { useListbox, useOptionKeys } from './chunk-6MU7HNB4.js';
|
|
10
|
-
import { Input } from './chunk-
|
|
10
|
+
import { Input } from './chunk-ZGX2DP7F.js';
|
|
11
11
|
import { Count } from './chunk-BHHIIK3M.js';
|
|
12
|
-
import { IconButton } from './chunk-
|
|
13
|
-
import { Button } from './chunk-
|
|
12
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
13
|
+
import { Button } from './chunk-OG6CL3EB.js';
|
|
14
14
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
15
15
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
16
16
|
import './DataView-N6JX464S.css';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Count } from './chunk-BHHIIK3M.js';
|
|
2
2
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
3
|
-
import './Tabs-
|
|
3
|
+
import './Tabs-BWFQSWY3.css';
|
|
4
4
|
import React, { useRef, useState, useLayoutEffect } from 'react';
|
|
5
5
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useAnnouncer } from './chunk-RSAQOKH3.js';
|
|
2
2
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
3
|
-
import './TagGroup-
|
|
3
|
+
import './TagGroup-BCQZD7ZD.css';
|
|
4
4
|
import { useState, useRef, Children } from 'react';
|
|
5
5
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
6
6
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { Select } from './chunk-
|
|
2
|
-
import { Popover } from './chunk-
|
|
1
|
+
import { Select } from './chunk-SEFMO2EV.js';
|
|
2
|
+
import { Popover } from './chunk-PDUZO35I.js';
|
|
3
3
|
import { today, shiftMonth, CalendarGrid, compareDays } from './chunk-GXQ3B46I.js';
|
|
4
|
-
import { Input } from './chunk-
|
|
4
|
+
import { Input } from './chunk-ZGX2DP7F.js';
|
|
5
5
|
import { isComposing } from './chunk-R25RGPUB.js';
|
|
6
|
-
import { IconButton } from './chunk-
|
|
7
|
-
import { Button } from './chunk-
|
|
6
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
7
|
+
import { Button } from './chunk-OG6CL3EB.js';
|
|
8
8
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
9
|
-
import './TimeWindowPicker-
|
|
9
|
+
import './TimeWindowPicker-GBF4JDFI.css';
|
|
10
10
|
import { useMemo, useState, useRef, useId, useEffect } from 'react';
|
|
11
11
|
import { ClockGlyph, ChevronDownGlyph, CheckGlyph, ChevronLeftGlyph, ChevronRightGlyph } from '@crewlethq/icons/glyphs';
|
|
12
12
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { useTreeState, useMeasuredSizes, layoutForest, treeAncestors, useLayoutAnchor, treeExpandable, layoutConnectors, treeItemAction, treeStep, treePosInSet, treeSetSize, treeLevel, placeGroups } from './chunk-S3BCVWTU.js';
|
|
2
|
-
import { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, Canvas } from './chunk-
|
|
2
|
+
import { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, Canvas } from './chunk-VE6LD3KM.js';
|
|
3
3
|
import { focusables } from './chunk-R25RGPUB.js';
|
|
4
4
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
5
|
-
import './TreeCanvas-
|
|
5
|
+
import './TreeCanvas-L2XYONWL.css';
|
|
6
6
|
import { useState, useRef, useMemo, useLayoutEffect, useCallback, useImperativeHandle, useId, useSyncExternalStore } from 'react';
|
|
7
7
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
8
8
|
|
|
@@ -133,6 +133,7 @@ function TreeCanvas({
|
|
|
133
133
|
controlsBelow,
|
|
134
134
|
hint,
|
|
135
135
|
dimmed = false,
|
|
136
|
+
ground,
|
|
136
137
|
composing = null,
|
|
137
138
|
labels,
|
|
138
139
|
ref,
|
|
@@ -461,6 +462,7 @@ function TreeCanvas({
|
|
|
461
462
|
controlsBelow,
|
|
462
463
|
hint,
|
|
463
464
|
dimmed,
|
|
465
|
+
ground,
|
|
464
466
|
largestItemWidth: widestCard,
|
|
465
467
|
labels,
|
|
466
468
|
children: [
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useLayerContainer, viewportBounds, LAYER_GAP, outsideBounds, placePopup, LAYER_REPOSITION_EVENT } from './chunk-7RPGY3JE.js';
|
|
2
2
|
import { usePopupLayer } from './chunk-R25RGPUB.js';
|
|
3
|
-
import { IconButton } from './chunk-
|
|
4
|
-
import { Button } from './chunk-
|
|
3
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
4
|
+
import { Button } from './chunk-OG6CL3EB.js';
|
|
5
5
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
6
6
|
import './Menu-BT5PMFJI.css';
|
|
7
7
|
import { useId, useState, useRef, useCallback, useLayoutEffect, useEffect } from 'react';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Tag } from './chunk-
|
|
1
|
+
import { Tag } from './chunk-LOECRMHA.js';
|
|
2
2
|
import { useListbox } from './chunk-6MU7HNB4.js';
|
|
3
3
|
import { announce } from './chunk-RSAQOKH3.js';
|
|
4
4
|
import { isComposing } from './chunk-R25RGPUB.js';
|
|
5
|
-
import { IconButton } from './chunk-
|
|
5
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
6
6
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
7
|
-
import './TagsInput-
|
|
7
|
+
import './TagsInput-P2HS5QL4.css';
|
|
8
8
|
import { forwardRef, useState, useRef, useId, useImperativeHandle, useEffect, useMemo, useLayoutEffect } from 'react';
|
|
9
9
|
import { CheckGlyph, ChevronLeftGlyph, ChevronRightGlyph } from '@crewlethq/icons/glyphs';
|
|
10
10
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { useRoving, tabStop, tabId } from './chunk-
|
|
1
|
+
import { useRoving, tabStop, tabId } from './chunk-DRHXRGB6.js';
|
|
2
2
|
import { Count } from './chunk-BHHIIK3M.js';
|
|
3
3
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
4
4
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
5
|
-
import './Tabs-
|
|
6
|
-
import './SegmentedControl-
|
|
5
|
+
import './Tabs-BWFQSWY3.css';
|
|
6
|
+
import './SegmentedControl-76HODRBT.css';
|
|
7
7
|
import { useId } from 'react';
|
|
8
8
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
9
9
|
|
|
@@ -14,6 +14,8 @@ function SegmentedControl({
|
|
|
14
14
|
value,
|
|
15
15
|
onValueChange,
|
|
16
16
|
size = "md",
|
|
17
|
+
layout = "pill",
|
|
18
|
+
trailing,
|
|
17
19
|
className = "",
|
|
18
20
|
semantics,
|
|
19
21
|
panelId,
|
|
@@ -49,10 +51,11 @@ function SegmentedControl({
|
|
|
49
51
|
* Tabs.css is bundled last), so the cards were drawn inside a pill
|
|
50
52
|
* bar sized to its content, which is what the mode exists to avoid.
|
|
51
53
|
*/
|
|
52
|
-
!cards && "crewlet-tabs--pill",
|
|
54
|
+
!cards && layout === "pill" && "crewlet-tabs--pill",
|
|
53
55
|
`crewlet-tabs--${size}`,
|
|
54
56
|
"crewlet-segmented",
|
|
55
57
|
cards && "crewlet-segmented--cards",
|
|
58
|
+
!cards && layout === "chips" && "crewlet-segmented--chips",
|
|
56
59
|
className
|
|
57
60
|
),
|
|
58
61
|
role: radio ? "radiogroup" : "tablist",
|
|
@@ -99,6 +102,7 @@ function SegmentedControl({
|
|
|
99
102
|
option.value
|
|
100
103
|
);
|
|
101
104
|
}),
|
|
105
|
+
trailing ? /* @__PURE__ */ jsx("span", { className: "crewlet-segmented__trailing", children: trailing }) : null,
|
|
102
106
|
hint ? /* @__PURE__ */ jsx(VisuallyHidden, { id: hintId, children: hint }) : null
|
|
103
107
|
]
|
|
104
108
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
2
2
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
3
|
-
import './Button-
|
|
3
|
+
import './Button-UWKBTKYD.css';
|
|
4
4
|
import { forwardRef, useId, Children, isValidElement, cloneElement } from 'react';
|
|
5
5
|
import { ExternalLinkGlyph } from '@crewlethq/icons/glyphs';
|
|
6
6
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useThemePreference, useSystemTheme, resolveTheme } from './chunk-K3OWD7BJ.js';
|
|
2
|
-
import { IconButton } from './chunk-
|
|
2
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
3
3
|
import { SunGlyph, MoonGlyph } from '@crewlethq/icons/glyphs';
|
|
4
4
|
import { jsx } from 'react/jsx-runtime';
|
|
5
5
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useModalLayer, focusables } from './chunk-R25RGPUB.js';
|
|
2
|
-
import { IconButton } from './chunk-
|
|
2
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
3
3
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
4
|
-
import './AppShell-
|
|
4
|
+
import './AppShell-CEVLW4QG.css';
|
|
5
5
|
import { createContext, useContext, useId, useState, useRef, useCallback, useEffect, useLayoutEffect, useSyncExternalStore } from 'react';
|
|
6
6
|
import { breakpoint } from '@crewlethq/tokens';
|
|
7
7
|
import { MenuGlyph } from '@crewlethq/icons/glyphs';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useLayerContainer, viewportBounds, LAYER_GAP, outsideBounds, placePopup, LAYER_REPOSITION_EVENT } from './chunk-7RPGY3JE.js';
|
|
2
2
|
import { usePopupLayer, focusables } from './chunk-R25RGPUB.js';
|
|
3
3
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
4
|
-
import './Popover-
|
|
4
|
+
import './Popover-QCINR7WG.css';
|
|
5
5
|
import { useId, useState, useRef, useCallback, useLayoutEffect, useEffect, cloneElement } from 'react';
|
|
6
6
|
import { createPortal } from 'react-dom';
|
|
7
7
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useAnnouncer } from './chunk-RSAQOKH3.js';
|
|
2
2
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
3
|
-
import './NewItemsNotice-
|
|
3
|
+
import './NewItemsNotice-Q5ED73BQ.css';
|
|
4
4
|
import { useRef, useEffect } from 'react';
|
|
5
5
|
import { jsx } from 'react/jsx-runtime';
|
|
6
6
|
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { Menu } from './chunk-
|
|
1
|
+
import { Menu } from './chunk-LSB3EHBW.js';
|
|
2
2
|
import { EmptyValue } from './chunk-EUCC37WY.js';
|
|
3
|
-
import {
|
|
3
|
+
import { Checkbox } from './chunk-YCTMKKRA.js';
|
|
4
4
|
import { useCardHeaderSlot } from './chunk-AV2DXAEL.js';
|
|
5
|
-
import { Checkbox } from './chunk-UA7O3KKJ.js';
|
|
6
5
|
import { useClipboard } from './chunk-5VNUYO76.js';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
6
|
+
import { Modal } from './chunk-BTHX2FS3.js';
|
|
7
|
+
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
|
-
import './DataTable-
|
|
11
|
+
import './DataTable-WZK3V62B.css';
|
|
12
12
|
import React, { useState, useCallback, useMemo, useRef, useLayoutEffect, useEffect, useId } from 'react';
|
|
13
13
|
import { createPortal } from 'react-dom';
|
|
14
14
|
import { CheckGlyph, CircleAlertGlyph, CopyGlyph, ChevronsLeftGlyph, ChevronLeftGlyph, ChevronRightGlyph, ChevronsRightGlyph, SettingsGlyph, GripVerticalGlyph, ChevronUpGlyph, ChevronDownGlyph, TrashGlyph, ArrowUpGlyph, ArrowDownGlyph, ChevronsUpDownGlyph, RotateCcwGlyph } from '@crewlethq/icons/glyphs';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useThemePreference, useDensityPreference } from './chunk-K3OWD7BJ.js';
|
|
2
|
-
import { SegmentedControl } from './chunk-
|
|
2
|
+
import { SegmentedControl } from './chunk-N5KCGFWI.js';
|
|
3
3
|
import { SunGlyph, MonitorGlyph, MoonGlyph } from '@crewlethq/icons/glyphs';
|
|
4
4
|
import { jsx } from 'react/jsx-runtime';
|
|
5
5
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useListbox, useOptionKeys } from './chunk-6MU7HNB4.js';
|
|
2
2
|
import { useLayerContainer, viewportBounds, outsideBounds, placePopup, LAYER_GAP, LAYER_REPOSITION_EVENT } from './chunk-7RPGY3JE.js';
|
|
3
3
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
4
|
-
import './Select-
|
|
4
|
+
import './Select-4ANVLHUY.css';
|
|
5
5
|
import { forwardRef, useId, useMemo, useState, useRef, useCallback, useEffect, useLayoutEffect } from 'react';
|
|
6
6
|
import { createPortal } from 'react-dom';
|
|
7
7
|
import { ChevronDownGlyph, CheckGlyph, SearchGlyph } from '@crewlethq/icons/glyphs';
|
|
@@ -2,7 +2,7 @@ import { useTreeState, treeExpandable, treeLevel, treePosInSet, treeSetSize, tre
|
|
|
2
2
|
import { LayerNodeBridge } from './chunk-53DVJCVW.js';
|
|
3
3
|
import { LayerHost, LAYER_REPOSITION_EVENT } from './chunk-7RPGY3JE.js';
|
|
4
4
|
import { focusables } from './chunk-R25RGPUB.js';
|
|
5
|
-
import { IconButton } from './chunk-
|
|
5
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
6
6
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
7
7
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
8
8
|
import './TreeGrid-NSW7VMOX.css';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useListbox } from './chunk-6MU7HNB4.js';
|
|
2
|
-
import { Input } from './chunk-
|
|
2
|
+
import { Input } from './chunk-ZGX2DP7F.js';
|
|
3
3
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
4
4
|
import './Combobox-4FUVYIE7.css';
|
|
5
5
|
import { forwardRef, useId, useMemo, useRef, useCallback } from 'react';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { OrgLabel } from './chunk-
|
|
1
|
+
import { OrgLabel } from './chunk-B47YUQGM.js';
|
|
2
2
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
3
|
-
import './OrgNode-
|
|
3
|
+
import './OrgNode-TCHJH5FO.css';
|
|
4
4
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
5
5
|
|
|
6
6
|
function OrgNodeLabel(props) {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { LayerNodeBridge } from './chunk-53DVJCVW.js';
|
|
2
2
|
import { LAYER_REPOSITION_EVENT, LayerHost } from './chunk-7RPGY3JE.js';
|
|
3
|
-
import { IconButton } from './chunk-
|
|
4
|
-
import { Button } from './chunk-
|
|
3
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
4
|
+
import { Button } from './chunk-OG6CL3EB.js';
|
|
5
5
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
6
6
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
7
|
-
import './Canvas-
|
|
7
|
+
import './Canvas-YVXHMWLN.css';
|
|
8
8
|
import { useId, useRef, useState, useCallback, useLayoutEffect, useImperativeHandle, useEffect } from 'react';
|
|
9
9
|
import { ZoomOutGlyph, ZoomInGlyph, FullscreenGlyph } from '@crewlethq/icons/glyphs';
|
|
10
10
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
@@ -164,6 +164,7 @@ function Canvas({
|
|
|
164
164
|
hint,
|
|
165
165
|
largestItemWidth,
|
|
166
166
|
dimmed = false,
|
|
167
|
+
ground = "plain",
|
|
167
168
|
touch = true,
|
|
168
169
|
labels,
|
|
169
170
|
onReady,
|
|
@@ -449,6 +450,7 @@ function Canvas({
|
|
|
449
450
|
className: cx("crewlet-canvas", className),
|
|
450
451
|
ref: root,
|
|
451
452
|
"data-dimmed": dimmed,
|
|
453
|
+
"data-ground": ground,
|
|
452
454
|
"data-ready": ready,
|
|
453
455
|
"data-animate": animate === false ? "false" : animate,
|
|
454
456
|
"data-panning": panning,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { avatarCorner, Avatar } from './chunk-IA232OTU.js';
|
|
2
|
-
import './ImageUpload-
|
|
2
|
+
import './ImageUpload-L2GE4JUM.css';
|
|
3
3
|
import { useRef } from 'react';
|
|
4
4
|
import { CameraGlyph, XGlyph } from '@crewlethq/icons/glyphs';
|
|
5
5
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { useHeadingLevel, headingTag, HeadingLevelProvider, nextHeadingLevel } from './chunk-PQADV6P6.js';
|
|
2
|
-
import { IconButton } from './chunk-
|
|
2
|
+
import { IconButton } from './chunk-4FQT6ZAY.js';
|
|
3
3
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
4
4
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
5
|
-
import './Input-
|
|
5
|
+
import './Input-DRFNI26F.css';
|
|
6
6
|
import { forwardRef, useRef, useState, useImperativeHandle, useEffect, useId } from 'react';
|
|
7
7
|
import { XGlyph } from '@crewlethq/icons/glyphs';
|
|
8
8
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|