@rinzai/zen 0.11.0 → 0.13.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 +37 -7
- package/dist/accordion/index.d.ts +41 -0
- package/dist/accordion/index.d.ts.map +1 -0
- package/dist/accordion/index.js +81 -0
- package/dist/animated-number/index.d.ts +3 -2
- package/dist/animated-number/index.d.ts.map +1 -1
- package/dist/animated-number/index.js +40 -38
- package/dist/avatar/index.d.ts +7 -2
- package/dist/avatar/index.d.ts.map +1 -1
- package/dist/avatar/index.js +17 -11
- package/dist/backdrop/index.d.ts +4 -4
- package/dist/backdrop/index.d.ts.map +1 -1
- package/dist/backdrop/index.js +41 -39
- package/dist/badge/index.d.ts +4 -2
- package/dist/badge/index.d.ts.map +1 -1
- package/dist/badge/index.js +20 -11
- package/dist/base.css +4 -0
- package/dist/breadcrumbs/index.d.ts +1 -1
- package/dist/breadcrumbs/index.d.ts.map +1 -1
- package/dist/breadcrumbs/index.js +25 -24
- package/dist/button/index.d.ts +3 -3
- package/dist/button/index.d.ts.map +1 -1
- package/dist/button/index.js +16 -11
- package/dist/button-group/index.d.ts +13 -0
- package/dist/button-group/index.d.ts.map +1 -0
- package/dist/button-group/index.js +14 -0
- package/dist/calendar/index.d.ts +15 -8
- package/dist/calendar/index.d.ts.map +1 -1
- package/dist/calendar/index.js +97 -91
- package/dist/calendar-heatmap/index.d.ts +7 -5
- package/dist/calendar-heatmap/index.d.ts.map +1 -1
- package/dist/calendar-heatmap/index.js +32 -30
- package/dist/canvas/geometry.js +0 -1
- package/dist/canvas/index.d.ts +6 -6
- package/dist/canvas/index.d.ts.map +1 -1
- package/dist/canvas/index.js +135 -133
- package/dist/carousel/index.d.ts +27 -0
- package/dist/carousel/index.d.ts.map +1 -0
- package/dist/carousel/index.js +162 -0
- package/dist/chart/index.d.ts +5 -4
- package/dist/chart/index.d.ts.map +1 -1
- package/dist/chart/index.js +137 -135
- package/dist/chart/palette.js +0 -1
- package/dist/checkbox/index.d.ts +3 -3
- package/dist/checkbox/index.d.ts.map +1 -1
- package/dist/checkbox/index.js +33 -30
- package/dist/chip/index.js +1 -1
- package/dist/code-block/index.d.ts.map +1 -1
- package/dist/code-block/index.js +27 -25
- package/dist/code-input/index.d.ts.map +1 -1
- package/dist/code-input/index.js +30 -24
- package/dist/collapse/index.d.ts +4 -3
- package/dist/collapse/index.d.ts.map +1 -1
- package/dist/collapse/index.js +42 -39
- package/dist/color-picker/index.d.ts +14 -7
- package/dist/color-picker/index.d.ts.map +1 -1
- package/dist/color-picker/index.js +139 -128
- package/dist/combobox/index.d.ts +14 -6
- package/dist/combobox/index.d.ts.map +1 -1
- package/dist/combobox/index.js +158 -146
- package/dist/command-palette/index.d.ts +4 -3
- package/dist/command-palette/index.d.ts.map +1 -1
- package/dist/command-palette/index.js +60 -57
- package/dist/confirm-dialog/index.d.ts +6 -7
- package/dist/confirm-dialog/index.d.ts.map +1 -1
- package/dist/confirm-dialog/index.js +20 -16
- package/dist/date-picker/index.d.ts +23 -14
- package/dist/date-picker/index.d.ts.map +1 -1
- package/dist/date-picker/index.js +109 -93
- package/dist/dialog/index.d.ts +3 -4
- package/dist/dialog/index.d.ts.map +1 -1
- package/dist/dialog/index.js +58 -55
- package/dist/disclosure/index.d.ts +8 -0
- package/dist/disclosure/index.d.ts.map +1 -1
- package/dist/disclosure/index.js +31 -32
- package/dist/editable-cell/index.d.ts +4 -5
- package/dist/editable-cell/index.d.ts.map +1 -1
- package/dist/editable-cell/index.js +23 -22
- package/dist/field/index.d.ts +8 -8
- package/dist/field/index.d.ts.map +1 -1
- package/dist/field/index.js +20 -18
- package/dist/filter-bar/index.d.ts +2 -2
- package/dist/filter-bar/index.d.ts.map +1 -1
- package/dist/filter-bar/index.js +38 -36
- package/dist/header/index.d.ts +1 -1
- package/dist/header/index.d.ts.map +1 -1
- package/dist/header/index.js +13 -11
- package/dist/hover-card/index.d.ts +32 -0
- package/dist/hover-card/index.d.ts.map +1 -0
- package/dist/hover-card/index.js +84 -0
- package/dist/icon-picker/index.d.ts +16 -5
- package/dist/icon-picker/index.d.ts.map +1 -1
- package/dist/icon-picker/index.js +42 -47
- package/dist/icons/micro/plus.d.ts +3 -0
- package/dist/icons/micro/plus.d.ts.map +1 -0
- package/dist/icons/micro/plus.js +17 -0
- package/dist/index.d.ts +37 -24
- package/dist/index.d.ts.map +1 -1
- package/dist/input/index.d.ts +5 -1
- package/dist/input/index.d.ts.map +1 -1
- package/dist/input/index.js +9 -9
- package/dist/input-group/index.d.ts +4 -1
- package/dist/input-group/index.d.ts.map +1 -1
- package/dist/input-group/index.js +14 -14
- package/dist/keypad/index.d.ts +9 -7
- package/dist/keypad/index.d.ts.map +1 -1
- package/dist/keypad/index.js +22 -19
- package/dist/lib.js +112 -97
- package/dist/load-more/index.d.ts +4 -2
- package/dist/load-more/index.d.ts.map +1 -1
- package/dist/load-more/index.js +26 -23
- package/dist/locale-provider/index.d.ts +23 -0
- package/dist/locale-provider/index.d.ts.map +1 -0
- package/dist/locale-provider/index.js +35 -0
- package/dist/menu/index.d.ts +62 -9
- package/dist/menu/index.d.ts.map +1 -1
- package/dist/menu/index.js +371 -128
- package/dist/meter/index.d.ts +2 -2
- package/dist/meter/index.d.ts.map +1 -1
- package/dist/meter/index.js +4 -4
- package/dist/money-input/index.d.ts +20 -10
- package/dist/money-input/index.d.ts.map +1 -1
- package/dist/money-input/index.js +199 -190
- package/dist/month-picker/index.d.ts +17 -10
- package/dist/month-picker/index.d.ts.map +1 -1
- package/dist/month-picker/index.js +97 -86
- package/dist/navigation-menu/index.d.ts +42 -0
- package/dist/navigation-menu/index.d.ts.map +1 -0
- package/dist/navigation-menu/index.js +144 -0
- package/dist/number-field/index.d.ts +34 -0
- package/dist/number-field/index.d.ts.map +1 -0
- package/dist/number-field/index.js +119 -0
- package/dist/page-header/index.d.ts +4 -3
- package/dist/page-header/index.d.ts.map +1 -1
- package/dist/page-header/index.js +2 -1
- package/dist/pagination/index.d.ts +1 -1
- package/dist/pagination/index.d.ts.map +1 -1
- package/dist/pagination/index.js +35 -33
- package/dist/progress-ring/index.d.ts +4 -3
- package/dist/progress-ring/index.d.ts.map +1 -1
- package/dist/progress-ring/index.js +11 -10
- package/dist/radio-cards/index.d.ts +9 -5
- package/dist/radio-cards/index.d.ts.map +1 -1
- package/dist/radio-cards/index.js +26 -24
- package/dist/radio-group/index.d.ts +9 -8
- package/dist/radio-group/index.d.ts.map +1 -1
- package/dist/radio-group/index.js +35 -34
- package/dist/range-slider/index.d.ts +10 -4
- package/dist/range-slider/index.d.ts.map +1 -1
- package/dist/range-slider/index.js +43 -31
- package/dist/repeat-picker/index.d.ts +13 -6
- package/dist/repeat-picker/index.d.ts.map +1 -1
- package/dist/repeat-picker/index.js +73 -61
- package/dist/resizable/index.d.ts +29 -0
- package/dist/resizable/index.d.ts.map +1 -0
- package/dist/resizable/index.js +135 -0
- package/dist/segmented/index.d.ts +8 -5
- package/dist/segmented/index.d.ts.map +1 -1
- package/dist/segmented/index.js +36 -34
- package/dist/select/index.d.ts +9 -3
- package/dist/select/index.d.ts.map +1 -1
- package/dist/select/index.js +99 -96
- package/dist/separator/index.d.ts +14 -0
- package/dist/separator/index.d.ts.map +1 -0
- package/dist/separator/index.js +15 -0
- package/dist/side-nav/index.js +1 -1
- package/dist/skeleton/index.d.ts +4 -4
- package/dist/skeleton/index.d.ts.map +1 -1
- package/dist/skeleton/index.js +4 -3
- package/dist/slider/index.d.ts +6 -3
- package/dist/slider/index.d.ts.map +1 -1
- package/dist/slider/index.js +29 -23
- package/dist/sortable/index.d.ts +10 -20
- package/dist/sortable/index.d.ts.map +1 -1
- package/dist/sortable/index.js +72 -134
- package/dist/sortable/shared.d.ts +56 -0
- package/dist/sortable/shared.d.ts.map +1 -0
- package/dist/sortable/shared.js +104 -0
- package/dist/sortable/tree-model.d.ts +46 -0
- package/dist/sortable/tree-model.d.ts.map +1 -0
- package/dist/sortable/tree-model.js +87 -0
- package/dist/sortable/tree.d.ts +31 -0
- package/dist/sortable/tree.d.ts.map +1 -0
- package/dist/sortable/tree.js +150 -0
- package/dist/sparkline/index.d.ts +1 -1
- package/dist/sparkline/index.d.ts.map +1 -1
- package/dist/sparkline/index.js +26 -25
- package/dist/spinner/index.d.ts +4 -3
- package/dist/spinner/index.d.ts.map +1 -1
- package/dist/spinner/index.js +2 -1
- package/dist/status-pill/index.d.ts.map +1 -1
- package/dist/status-pill/index.js +1 -1
- package/dist/stepper/index.d.ts +1 -1
- package/dist/stepper/index.d.ts.map +1 -1
- package/dist/stepper/index.js +31 -30
- package/dist/tab-bar/index.js +1 -1
- package/dist/table/index.d.ts +5 -5
- package/dist/table/index.d.ts.map +1 -1
- package/dist/table/index.js +66 -64
- package/dist/table/selection.d.ts +2 -2
- package/dist/table/selection.d.ts.map +1 -1
- package/dist/table/selection.js +41 -38
- package/dist/table/swipe.d.ts +1 -1
- package/dist/table/swipe.d.ts.map +1 -1
- package/dist/table/swipe.js +1 -1
- package/dist/table-of-contents/index.d.ts +4 -2
- package/dist/table-of-contents/index.d.ts.map +1 -1
- package/dist/table-of-contents/index.js +27 -25
- package/dist/tabs/index.d.ts.map +1 -1
- package/dist/tabs/index.js +90 -88
- package/dist/tag-input/index.d.ts +3 -1
- package/dist/tag-input/index.d.ts.map +1 -1
- package/dist/tag-input/index.js +61 -52
- package/dist/theme-toggle/index.d.ts +9 -8
- package/dist/theme-toggle/index.d.ts.map +1 -1
- package/dist/theme-toggle/index.js +30 -28
- package/dist/theme.css +90 -12
- package/dist/time-field/index.d.ts +31 -0
- package/dist/time-field/index.d.ts.map +1 -0
- package/dist/time-field/index.js +175 -0
- package/dist/timeline/index.js +1 -1
- package/dist/toast/index.d.ts +1 -1
- package/dist/toast/index.d.ts.map +1 -1
- package/dist/toast/index.js +127 -125
- package/dist/toggle/index.d.ts +2 -2
- package/dist/toggle/index.d.ts.map +1 -1
- package/dist/toggle/index.js +8 -6
- package/dist/toggle-group/index.d.ts +35 -0
- package/dist/toggle-group/index.d.ts.map +1 -0
- package/dist/toggle-group/index.js +53 -0
- package/dist/toolbar/index.d.ts +19 -0
- package/dist/toolbar/index.d.ts.map +1 -0
- package/dist/toolbar/index.js +36 -0
- package/dist/tooltip/index.d.ts.map +1 -1
- package/dist/tooltip/index.js +40 -74
- package/dist/tree/index.d.ts.map +1 -1
- package/dist/tree/index.js +105 -102
- package/dist/trend/index.d.ts +2 -2
- package/dist/trend/index.d.ts.map +1 -1
- package/dist/trend/index.js +20 -19
- package/dist/utils/color.js +0 -1
- package/dist/utils/cva.js +0 -1
- package/dist/utils/cx.js +0 -1
- package/dist/utils/date.d.ts +6 -0
- package/dist/utils/date.d.ts.map +1 -1
- package/dist/utils/date.js +1 -2
- package/dist/utils/direction.d.ts +7 -0
- package/dist/utils/direction.d.ts.map +1 -0
- package/dist/utils/direction.js +6 -0
- package/dist/utils/form-value.d.ts +15 -0
- package/dist/utils/form-value.d.ts.map +1 -0
- package/dist/utils/form-value.js +29 -0
- package/dist/utils/fx.js +0 -1
- package/dist/utils/merge.js +0 -1
- package/dist/utils/messages.d.ts +137 -0
- package/dist/utils/messages.d.ts.map +1 -0
- package/dist/utils/messages.js +133 -0
- package/dist/utils/money.js +0 -1
- package/dist/utils/month.js +0 -1
- package/dist/utils/motion.js +0 -1
- package/dist/utils/refs.d.ts +6 -0
- package/dist/utils/refs.d.ts.map +1 -0
- package/dist/utils/refs.js +13 -0
- package/dist/utils/repeat.d.ts +3 -1
- package/dist/utils/repeat.d.ts.map +1 -1
- package/dist/utils/repeat.js +28 -25
- package/dist/utils/roving.d.ts +17 -0
- package/dist/utils/roving.d.ts.map +1 -0
- package/dist/utils/roving.js +35 -0
- package/dist/utils/section-link.js +0 -1
- package/dist/utils/slot.d.ts.map +1 -1
- package/dist/utils/slot.js +7 -11
- package/dist/utils/status-icons.js +7 -7
- package/dist/utils/styles.d.ts +9 -2
- package/dist/utils/styles.d.ts.map +1 -1
- package/dist/utils/styles.js +6 -3
- package/dist/utils/theme-wave.js +0 -1
- package/dist/utils/theme.js +0 -1
- package/dist/utils/useAnchoredPopup.d.ts +7 -4
- package/dist/utils/useAnchoredPopup.d.ts.map +1 -1
- package/dist/utils/useAnchoredPopup.js +18 -11
- package/dist/utils/useControllable.d.ts +9 -0
- package/dist/utils/useControllable.d.ts.map +1 -0
- package/dist/utils/useControllable.js +15 -0
- package/dist/utils/useHoverPopup.d.ts +39 -0
- package/dist/utils/useHoverPopup.d.ts.map +1 -0
- package/dist/utils/useHoverPopup.js +64 -0
- package/dist/zen.css +1 -1
- package/package.json +1 -1
package/dist/select/index.js
CHANGED
|
@@ -1,181 +1,184 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cx as e } from "../utils/cx.js";
|
|
3
3
|
import { useTypeahead as t } from "../utils/typeahead.js";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
4
|
+
import { useControllable as n } from "../utils/useControllable.js";
|
|
5
|
+
import { useAnchoredPopup as r } from "../utils/useAnchoredPopup.js";
|
|
6
|
+
import { useMessages as i } from "../locale-provider/index.js";
|
|
7
|
+
import { CheckIcon as a } from "../utils/status-icons.js";
|
|
8
|
+
import { useFieldProps as o } from "../field/index.js";
|
|
9
|
+
import { FIELD_SIZE as s, POPUP as c, TRIGGER as l } from "../utils/styles.js";
|
|
10
|
+
import { FormValue as u } from "../utils/form-value.js";
|
|
11
|
+
import { FieldChevron as d } from "../utils/field-chevron.js";
|
|
12
|
+
import { Children as f, Fragment as p, createContext as m, isValidElement as h, useCallback as ee, useContext as g, useEffect as _, useId as te, useLayoutEffect as v, useRef as y, useState as b } from "react";
|
|
13
|
+
import { Fragment as x, jsx as S, jsxs as C } from "react/jsx-runtime";
|
|
11
14
|
//#region packages/select/index.tsx
|
|
12
|
-
var
|
|
13
|
-
function
|
|
14
|
-
let
|
|
15
|
-
...
|
|
16
|
-
id:
|
|
17
|
-
}), [
|
|
15
|
+
var w = m(null);
|
|
16
|
+
function T({ value: a, defaultValue: f = null, onValueChange: p, placeholder: m, disabled: h = !1, size: g = "default", name: v, id: T, className: D, listClassName: O, children: k, style: A, onKeyDown: j, ...M }) {
|
|
17
|
+
let N = i(), P = m ?? N.selectPlaceholder, [F, I, L] = n(a, f, p), R = y(null), z = te(), B = T ?? z, ne = o({
|
|
18
|
+
...M,
|
|
19
|
+
id: T
|
|
20
|
+
}), [V, H] = b(null), U = t(), [W, G] = b(/* @__PURE__ */ new Map()), K = () => Array.from(R.current?.querySelectorAll("[role=\"option\"]") ?? []).map((e) => ({
|
|
18
21
|
value: e.dataset.value,
|
|
19
22
|
label: e.dataset.label ?? "",
|
|
20
23
|
disabled: e.getAttribute("aria-disabled") === "true"
|
|
21
|
-
})),
|
|
24
|
+
})), q = r({
|
|
22
25
|
matchWidth: !0,
|
|
23
26
|
onOpenChange: (e) => {
|
|
24
27
|
if (!e) return;
|
|
25
|
-
let t =
|
|
26
|
-
|
|
28
|
+
let t = K();
|
|
29
|
+
H(t.find((e) => e.value === F)?.value ?? t.find((e) => !e.disabled)?.value ?? null);
|
|
27
30
|
}
|
|
28
31
|
});
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}, [
|
|
32
|
-
let
|
|
33
|
-
|
|
34
|
-
},
|
|
32
|
+
_(() => {
|
|
33
|
+
q.open && R.current?.focus();
|
|
34
|
+
}, [q.open]);
|
|
35
|
+
let J = (e) => {
|
|
36
|
+
K().find((t) => t.value === e)?.disabled || (I(e), q.setOpen(!1));
|
|
37
|
+
}, Y = ee((e, t) => (G((n) => n.get(e) === t ? n : new Map(n).set(e, t)), () => G((t) => {
|
|
35
38
|
let n = new Map(t);
|
|
36
39
|
return n.delete(e), n;
|
|
37
|
-
})), []),
|
|
38
|
-
|
|
39
|
-
let
|
|
40
|
+
})), []), X = new Map(W);
|
|
41
|
+
E(k, X);
|
|
42
|
+
let Z = F === null ? void 0 : X.get(F), Q = (e, t, n = K()) => {
|
|
40
43
|
let r = e === null ? t === 1 ? -1 : n.length : n.findIndex((t) => t.value === e);
|
|
41
44
|
for (let e = 1; e <= n.length; e++) {
|
|
42
45
|
let i = (r + t * e + n.length * 2) % n.length;
|
|
43
46
|
if (!n[i].disabled) return n[i].value;
|
|
44
47
|
}
|
|
45
48
|
return e;
|
|
46
|
-
},
|
|
49
|
+
}, re = (e) => {
|
|
47
50
|
let t = {
|
|
48
|
-
ArrowDown: () =>
|
|
49
|
-
ArrowUp: () =>
|
|
50
|
-
Home: () =>
|
|
51
|
-
End: () =>
|
|
52
|
-
Enter: () =>
|
|
53
|
-
" ": () =>
|
|
54
|
-
Tab: () =>
|
|
51
|
+
ArrowDown: () => H((e) => Q(e, 1)),
|
|
52
|
+
ArrowUp: () => H((e) => Q(e, -1)),
|
|
53
|
+
Home: () => H(Q(null, 1)),
|
|
54
|
+
End: () => H(Q(null, -1)),
|
|
55
|
+
Enter: () => V !== null && J(V),
|
|
56
|
+
" ": () => V !== null && J(V),
|
|
57
|
+
Tab: () => q.setOpen(!1)
|
|
55
58
|
};
|
|
56
59
|
if (t[e.key]) {
|
|
57
60
|
e.key !== "Tab" && e.preventDefault(), t[e.key]();
|
|
58
61
|
return;
|
|
59
62
|
}
|
|
60
|
-
let n =
|
|
63
|
+
let n = U(e);
|
|
61
64
|
if (n) {
|
|
62
|
-
let e =
|
|
63
|
-
e &&
|
|
65
|
+
let e = K().find((e) => !e.disabled && e.label.toLowerCase().startsWith(n));
|
|
66
|
+
e && H(e.value);
|
|
64
67
|
}
|
|
65
|
-
},
|
|
66
|
-
return /* @__PURE__ */ x
|
|
67
|
-
/* @__PURE__ */
|
|
68
|
+
}, $ = (e) => `${q.id}-option-${e}`;
|
|
69
|
+
return /* @__PURE__ */ C(x, { children: [
|
|
70
|
+
/* @__PURE__ */ C("button", {
|
|
68
71
|
type: "button",
|
|
69
|
-
...O,
|
|
70
72
|
...M,
|
|
71
|
-
|
|
72
|
-
|
|
73
|
+
...ne,
|
|
74
|
+
id: B,
|
|
75
|
+
disabled: h,
|
|
73
76
|
"aria-haspopup": "listbox",
|
|
74
|
-
...
|
|
77
|
+
...q.triggerProps,
|
|
75
78
|
style: {
|
|
76
|
-
...
|
|
77
|
-
...
|
|
79
|
+
...q.triggerProps.style,
|
|
80
|
+
...A
|
|
78
81
|
},
|
|
79
82
|
onKeyDown: (e) => {
|
|
80
|
-
|
|
83
|
+
j?.(e), ["ArrowDown", "ArrowUp"].includes(e.key) && !q.open && (e.preventDefault(), q.setOpen(!0));
|
|
81
84
|
},
|
|
82
|
-
className: e("zen__select group",
|
|
83
|
-
children: [/* @__PURE__ */
|
|
84
|
-
className: e("truncate",
|
|
85
|
-
children:
|
|
86
|
-
}), /* @__PURE__ */
|
|
85
|
+
className: e("zen__select group", l, s[g], "w-full", q.open && "border-glow/60 [--glow-border-color:transparent] shadow-glow-focus", D),
|
|
86
|
+
children: [/* @__PURE__ */ S("span", {
|
|
87
|
+
className: e("truncate", Z === void 0 && "text-[color:oklch(var(--muted-foreground)/var(--zen-placeholder))]"),
|
|
88
|
+
children: Z ?? P
|
|
89
|
+
}), /* @__PURE__ */ S(d, { open: q.open })]
|
|
87
90
|
}),
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
91
|
+
/* @__PURE__ */ S(u, {
|
|
92
|
+
name: v,
|
|
93
|
+
value: F ?? "",
|
|
94
|
+
onReset: L
|
|
92
95
|
}),
|
|
93
|
-
/* @__PURE__ */
|
|
94
|
-
...
|
|
95
|
-
className: e("zen__popover",
|
|
96
|
-
children: /* @__PURE__ */
|
|
97
|
-
ref:
|
|
96
|
+
/* @__PURE__ */ S("div", {
|
|
97
|
+
...q.popupProps,
|
|
98
|
+
className: e("zen__popover", c, "overflow-visible py-1", O),
|
|
99
|
+
children: /* @__PURE__ */ S("div", {
|
|
100
|
+
ref: R,
|
|
98
101
|
role: "listbox",
|
|
99
102
|
tabIndex: -1,
|
|
100
|
-
"aria-label":
|
|
101
|
-
"aria-labelledby":
|
|
102
|
-
"aria-activedescendant":
|
|
103
|
-
onKeyDown:
|
|
103
|
+
"aria-label": M["aria-label"],
|
|
104
|
+
"aria-labelledby": M["aria-label"] ? void 0 : B,
|
|
105
|
+
"aria-activedescendant": V === null ? void 0 : $(V),
|
|
106
|
+
onKeyDown: re,
|
|
104
107
|
className: "max-h-72 overflow-y-auto outline-hidden",
|
|
105
|
-
children: /* @__PURE__ */
|
|
108
|
+
children: /* @__PURE__ */ S(w.Provider, {
|
|
106
109
|
value: {
|
|
107
|
-
value:
|
|
108
|
-
active:
|
|
109
|
-
setActive:
|
|
110
|
-
choose:
|
|
111
|
-
optionId:
|
|
112
|
-
register:
|
|
110
|
+
value: F,
|
|
111
|
+
active: V,
|
|
112
|
+
setActive: H,
|
|
113
|
+
choose: J,
|
|
114
|
+
optionId: $,
|
|
115
|
+
register: Y
|
|
113
116
|
},
|
|
114
|
-
children:
|
|
117
|
+
children: k
|
|
115
118
|
})
|
|
116
119
|
})
|
|
117
120
|
})
|
|
118
121
|
] });
|
|
119
122
|
}
|
|
120
|
-
function
|
|
121
|
-
|
|
122
|
-
if (!
|
|
123
|
+
function E(e, t) {
|
|
124
|
+
f.forEach(e, (e) => {
|
|
125
|
+
if (!h(e)) return;
|
|
123
126
|
let n = e;
|
|
124
|
-
if (n.type ===
|
|
125
|
-
let e = n.props.label ??
|
|
127
|
+
if (n.type === O && n.props.value !== void 0) {
|
|
128
|
+
let e = n.props.label ?? D(n.props.children);
|
|
126
129
|
e && t.set(n.props.value, e);
|
|
127
|
-
} else (n.type ===
|
|
130
|
+
} else (n.type === k || n.type === p) && E(n.props.children, t);
|
|
128
131
|
});
|
|
129
132
|
}
|
|
130
|
-
var
|
|
131
|
-
function
|
|
132
|
-
let s =
|
|
133
|
+
var D = (e) => typeof e == "string" || typeof e == "number" ? String(e) : Array.isArray(e) ? e.map(D).join("") : "";
|
|
134
|
+
function O({ value: t, label: n, disabled: r, className: i, children: o }) {
|
|
135
|
+
let s = g(w);
|
|
133
136
|
if (!s) throw Error("SelectItem must be inside a Select");
|
|
134
|
-
let c =
|
|
135
|
-
|
|
137
|
+
let c = y(null), l = n ?? D(o), u = s.register;
|
|
138
|
+
v(() => u(t, l || c.current?.textContent?.trim() || ""), [
|
|
136
139
|
u,
|
|
137
140
|
t,
|
|
138
141
|
l
|
|
139
142
|
]);
|
|
140
143
|
let d = s.value === t;
|
|
141
|
-
return /* @__PURE__ */
|
|
144
|
+
return /* @__PURE__ */ C("div", {
|
|
142
145
|
ref: c,
|
|
143
146
|
id: s.optionId(t),
|
|
144
147
|
role: "option",
|
|
145
148
|
"data-value": t,
|
|
146
149
|
"data-label": l || void 0,
|
|
147
150
|
"aria-selected": d,
|
|
148
|
-
"aria-disabled":
|
|
151
|
+
"aria-disabled": r || void 0,
|
|
149
152
|
"data-highlighted": s.active === t || void 0,
|
|
150
|
-
onMouseMove: () => !
|
|
153
|
+
onMouseMove: () => !r && s.setActive(t),
|
|
151
154
|
onClick: () => s.choose(t),
|
|
152
|
-
className: e("grid cursor-pointer grid-cols-[1rem_1fr] items-center gap-2 px-3 py-2 text-sm outline-hidden select-none", "data-highlighted:bg-muted aria-disabled:cursor-not-allowed aria-disabled:opacity-50",
|
|
153
|
-
children: [/* @__PURE__ */
|
|
155
|
+
className: e("grid cursor-pointer grid-cols-[1rem_1fr] items-center gap-2 px-3 py-2 text-sm outline-hidden select-none", "data-highlighted:bg-muted aria-disabled:cursor-not-allowed aria-disabled:opacity-50", i),
|
|
156
|
+
children: [/* @__PURE__ */ S("span", {
|
|
154
157
|
className: "text-primary col-start-1",
|
|
155
158
|
"aria-hidden": !0,
|
|
156
|
-
children: d && /* @__PURE__ */
|
|
157
|
-
}), /* @__PURE__ */
|
|
159
|
+
children: d && /* @__PURE__ */ S(a, {})
|
|
160
|
+
}), /* @__PURE__ */ S("span", {
|
|
158
161
|
className: "col-start-2 truncate",
|
|
159
162
|
children: o
|
|
160
163
|
})]
|
|
161
164
|
});
|
|
162
165
|
}
|
|
163
|
-
function
|
|
164
|
-
return /* @__PURE__ */
|
|
166
|
+
function k({ label: e, children: t }) {
|
|
167
|
+
return /* @__PURE__ */ C("div", {
|
|
165
168
|
role: "group",
|
|
166
169
|
"aria-label": typeof e == "string" ? e : void 0,
|
|
167
|
-
children: [/* @__PURE__ */
|
|
170
|
+
children: [/* @__PURE__ */ S("div", {
|
|
168
171
|
"aria-hidden": !0,
|
|
169
172
|
className: "text-muted-foreground px-3 pt-2 pb-1 text-xs font-medium",
|
|
170
173
|
children: e
|
|
171
174
|
}), t]
|
|
172
175
|
});
|
|
173
176
|
}
|
|
174
|
-
function
|
|
175
|
-
return /* @__PURE__ */
|
|
177
|
+
function A() {
|
|
178
|
+
return /* @__PURE__ */ S("div", {
|
|
176
179
|
role: "separator",
|
|
177
180
|
className: "bg-tint/[0.07] mx-2 my-1 h-px"
|
|
178
181
|
});
|
|
179
182
|
}
|
|
180
183
|
//#endregion
|
|
181
|
-
export {
|
|
184
|
+
export { k as SelectGroup, O as SelectItem, A as SelectSeparator, T as default };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ComponentProps } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* A hairline between groups of content, across (the default) or upright
|
|
4
|
+
* (`orientation="vertical"`, e.g. between toolbar buttons; it takes its
|
|
5
|
+
* container's height). Screen readers hear it only when it divides something
|
|
6
|
+
* meaningful: pass `decorative` for one that's just visual.
|
|
7
|
+
*/
|
|
8
|
+
export default function Separator({ orientation, decorative, className, ...rest }: SeparatorProps): import('react').JSX.Element;
|
|
9
|
+
export interface SeparatorProps extends ComponentProps<'div'> {
|
|
10
|
+
orientation?: 'horizontal' | 'vertical';
|
|
11
|
+
/** Only visual: hidden from screen readers. */
|
|
12
|
+
decorative?: boolean;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/separator/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAAE,WAA0B,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,+BAc/G;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc,CAAC,KAAK,CAAC;IACzD,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC,+CAA+C;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cx as e } from "../utils/cx.js";
|
|
3
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
4
|
+
//#region packages/separator/index.tsx
|
|
5
|
+
function n({ orientation: n = "horizontal", decorative: r, className: i, ...a }) {
|
|
6
|
+
return /* @__PURE__ */ t("div", {
|
|
7
|
+
role: r ? "none" : "separator",
|
|
8
|
+
"aria-orientation": r || n === "horizontal" ? void 0 : "vertical",
|
|
9
|
+
"data-orientation": n,
|
|
10
|
+
className: e("zen__separator bg-tint/[0.09] shrink-0", n === "horizontal" ? "h-px w-full" : "w-px self-stretch", i),
|
|
11
|
+
...a
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
export { n as default };
|
package/dist/side-nav/index.js
CHANGED
|
@@ -18,7 +18,7 @@ function a({ title: t, children: i, className: a }) {
|
|
|
18
18
|
}), i]
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
|
-
var o = e("rounded-lg px-3 py-1.5 text-sm outline-hidden transition-[background-color,color,box-shadow] duration-200", "text-muted-foreground hover:bg-tint/[0.05] hover:text-foreground focus-
|
|
21
|
+
var o = e("rounded-lg px-3 py-1.5 text-sm outline-hidden transition-[background-color,color,box-shadow] duration-200", "text-muted-foreground hover:bg-tint/[0.05] hover:text-foreground focus-ring", "aria-[current=page]:bg-primary/15 aria-[current=page]:text-foreground aria-[current=page]:shadow-[inset_0_0_0_1px_oklch(var(--primary)/0.25)]");
|
|
22
22
|
function s({ active: r, asChild: i, className: a, children: s, ...c }) {
|
|
23
23
|
let l = {
|
|
24
24
|
...c,
|
package/dist/skeleton/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { ReactElement } from 'react';
|
|
1
|
+
import { ComponentProps, ReactElement } from 'react';
|
|
2
2
|
/**
|
|
3
3
|
* Shimmering placeholder in the shape of content that's on its way. Size it with className.
|
|
4
4
|
*
|
|
5
5
|
* Give it the content as its child and `loading`: the placeholder shows while
|
|
6
6
|
* loading, then the content fades in where it was.
|
|
7
7
|
*/
|
|
8
|
-
export default function Skeleton({ className, loading, children }: SkeletonProps): import('react').JSX.Element;
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
export default function Skeleton({ className, loading, children, ...rest }: SkeletonProps): import('react').JSX.Element;
|
|
9
|
+
/** Other props (data-*, a style) go on the placeholder. */
|
|
10
|
+
export interface SkeletonProps extends Omit<ComponentProps<'span'>, 'children'> {
|
|
11
11
|
/** With children: show the placeholder instead of them while true. */
|
|
12
12
|
loading?: boolean;
|
|
13
13
|
/** The content this stands in for, a single element. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/skeleton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAY,MAAM,OAAO,CAAC;AAE/
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/skeleton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAY,MAAM,OAAO,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,aAAa,+BAKxF;AAED,2DAA2D;AAC3D,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;IAC3E,sEAAsE;IACtE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,YAAY,CAAC;CAC3B"}
|
package/dist/skeleton/index.js
CHANGED
|
@@ -4,13 +4,14 @@ import { Slot as t } from "../utils/slot.js";
|
|
|
4
4
|
import { useState as n } from "react";
|
|
5
5
|
import { jsx as r } from "react/jsx-runtime";
|
|
6
6
|
//#region packages/skeleton/index.tsx
|
|
7
|
-
function i({ className: i, loading: a, children: o }) {
|
|
8
|
-
let [
|
|
9
|
-
return a && !
|
|
7
|
+
function i({ className: i, loading: a, children: o, ...s }) {
|
|
8
|
+
let [c, l] = n(!!a);
|
|
9
|
+
return a && !c && l(!0), o && !a ? c ? /* @__PURE__ */ r(t, {
|
|
10
10
|
className: "zen__reveal",
|
|
11
11
|
children: o
|
|
12
12
|
}) : o : /* @__PURE__ */ r("span", {
|
|
13
13
|
"aria-hidden": !0,
|
|
14
|
+
...s,
|
|
14
15
|
className: e("zen__skeleton block rounded-md", i)
|
|
15
16
|
});
|
|
16
17
|
}
|
package/dist/slider/index.d.ts
CHANGED
|
@@ -5,11 +5,14 @@ import { ComponentProps } from 'react';
|
|
|
5
5
|
* the accent unless you give it your own `trackBackground` (e.g. a hue
|
|
6
6
|
* gradient), and a glowing thumb.
|
|
7
7
|
*/
|
|
8
|
-
export default function Slider({ value, min, max, step, onValueChange, onValueCommit, trackBackground, thumbColor, valueText, className, style, ...rest }: SliderProps): import('react').JSX.Element;
|
|
8
|
+
export default function Slider({ value: valueProp, defaultValue, min, max, step, onValueChange, onValueCommit, trackBackground, thumbColor, valueText, className, style, onChange, ...rest }: SliderProps): import('react').JSX.Element;
|
|
9
9
|
/** The glowing thumb, with its focus ring: Slider's and RangeSlider's. */
|
|
10
10
|
export declare const THUMB: string;
|
|
11
|
-
export interface SliderProps extends Omit<ComponentProps<'input'>, 'type' | 'value' | 'min' | 'max' | 'step' | '
|
|
12
|
-
value
|
|
11
|
+
export interface SliderProps extends Omit<ComponentProps<'input'>, 'type' | 'value' | 'min' | 'max' | 'step' | 'defaultValue'> {
|
|
12
|
+
/** The value, when you keep it. */
|
|
13
|
+
value?: number;
|
|
14
|
+
/** The first value, when the slider keeps its own (default `min`). */
|
|
15
|
+
defaultValue?: number;
|
|
13
16
|
min?: number;
|
|
14
17
|
max?: number;
|
|
15
18
|
step?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/slider/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/slider/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAoC,MAAM,OAAO,CAAC;AAEzE;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC3B,KAAK,EAAE,SAAS,EAChB,YAAY,EACZ,GAAO,EACP,GAAS,EACT,IAAQ,EACR,aAAa,EACb,aAAa,EACb,eAAe,EACf,UAAU,EACV,SAAS,EACT,SAAS,EACT,KAAK,EACL,QAAQ,EACR,GAAG,IAAI,EACV,EAAE,WAAW,+BAmDb;AAED,0EAA0E;AAC1E,eAAO,MAAM,KAAK,QAI+E,CAAC;AAElG,MAAM,WAAW,WAAY,SAAQ,IAAI,CACrC,cAAc,CAAC,OAAO,CAAC,EACvB,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,cAAc,CAC7D;IACG,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,iDAAiD;IACjD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,6DAA6D;IAC7D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sDAAsD;IACtD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACzC"}
|
package/dist/slider/index.js
CHANGED
|
@@ -1,35 +1,41 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cx as e } from "../utils/cx.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { useControllable as t } from "../utils/useControllable.js";
|
|
4
|
+
import { useFormReset as n } from "../utils/form-value.js";
|
|
5
|
+
import { useEffect as r, useRef as i } from "react";
|
|
6
|
+
import { jsx as a } from "react/jsx-runtime";
|
|
5
7
|
//#region packages/slider/index.tsx
|
|
6
|
-
function
|
|
7
|
-
let
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
function o({ value: o, defaultValue: c, min: l = 0, max: u = 100, step: d = 1, onValueChange: f, onValueCommit: p, trackBackground: m, thumbColor: h, valueText: g, className: _, style: v, onChange: y, ...b }) {
|
|
9
|
+
let [x, S, C] = t(o, c ?? l, f), w = i(null);
|
|
10
|
+
n(w, C);
|
|
11
|
+
let T = i(p);
|
|
12
|
+
T.current = p, r(() => {
|
|
13
|
+
let e = w.current;
|
|
10
14
|
if (!e) return;
|
|
11
|
-
let t = () =>
|
|
15
|
+
let t = () => T.current?.(Number(e.value));
|
|
12
16
|
return e.addEventListener("change", t), () => e.removeEventListener("change", t);
|
|
13
17
|
}, []);
|
|
14
|
-
let
|
|
15
|
-
return /* @__PURE__ */
|
|
16
|
-
ref:
|
|
18
|
+
let E = u > l ? (x - l) / (u - l) * 100 : 0, D = m ?? `linear-gradient(to var(--zen-end), oklch(var(--primary)) ${E}%, oklch(var(--muted)) ${E}%)`;
|
|
19
|
+
return /* @__PURE__ */ a("input", {
|
|
20
|
+
ref: w,
|
|
17
21
|
type: "range",
|
|
18
|
-
min:
|
|
19
|
-
max:
|
|
20
|
-
step:
|
|
21
|
-
value:
|
|
22
|
-
"aria-valuetext":
|
|
23
|
-
onChange: (e) =>
|
|
22
|
+
min: l,
|
|
23
|
+
max: u,
|
|
24
|
+
step: d,
|
|
25
|
+
value: x,
|
|
26
|
+
"aria-valuetext": g?.(x),
|
|
27
|
+
onChange: (e) => {
|
|
28
|
+
y?.(e), S(Number(e.target.value));
|
|
29
|
+
},
|
|
24
30
|
style: {
|
|
25
|
-
...
|
|
26
|
-
"--zen-track":
|
|
27
|
-
"--zen-thumb":
|
|
31
|
+
...v,
|
|
32
|
+
"--zen-track": D,
|
|
33
|
+
"--zen-thumb": h ?? "oklch(var(--primary))"
|
|
28
34
|
},
|
|
29
|
-
className: e("zen__slider h-5 w-full cursor-pointer appearance-none bg-transparent outline-hidden disabled:cursor-not-allowed disabled:opacity-50", "[&::-webkit-slider-runnable-track]:h-2.5 [&::-webkit-slider-runnable-track]:rounded-full [&::-webkit-slider-runnable-track]:[background:var(--zen-track)]", "[&::-moz-range-track]:h-2.5 [&::-moz-range-track]:rounded-full [&::-moz-range-track]:[background:var(--zen-track)]",
|
|
30
|
-
...
|
|
35
|
+
className: e("zen__slider h-5 w-full cursor-pointer [--zen-end:right] rtl:[--zen-end:left] appearance-none bg-transparent outline-hidden disabled:cursor-not-allowed disabled:opacity-50", "[&::-webkit-slider-runnable-track]:h-2.5 [&::-webkit-slider-runnable-track]:rounded-full [&::-webkit-slider-runnable-track]:[background:var(--zen-track)]", "[&::-moz-range-track]:h-2.5 [&::-moz-range-track]:rounded-full [&::-moz-range-track]:[background:var(--zen-track)]", s, _),
|
|
36
|
+
...b
|
|
31
37
|
});
|
|
32
38
|
}
|
|
33
|
-
var
|
|
39
|
+
var s = "[&::-webkit-slider-thumb]:-mt-[5px] [&::-webkit-slider-thumb]:size-5 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:border-2 [&::-webkit-slider-thumb]:border-white [&::-webkit-slider-thumb]:shadow-[0_0_0_1px_oklch(0_0_0/0.3),0_0_16px_oklch(var(--glow)/calc(0.8*var(--glow-k)))] [&::-webkit-slider-thumb]:[background:var(--zen-thumb)] [&::-moz-range-thumb]:size-5 [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:border-2 [&::-moz-range-thumb]:border-white [&::-moz-range-thumb]:shadow-[0_0_0_1px_oklch(0_0_0/0.3),0_0_16px_oklch(var(--glow)/calc(0.8*var(--glow-k)))] [&::-moz-range-thumb]:[background:var(--zen-thumb)] focus-visible:[&::-webkit-slider-thumb]:ring-ring/40 focus-visible:[&::-webkit-slider-thumb]:ring-4 focus-visible:[&::-moz-range-thumb]:ring-ring/40 focus-visible:[&::-moz-range-thumb]:ring-4";
|
|
34
40
|
//#endregion
|
|
35
|
-
export {
|
|
41
|
+
export { s as THUMB, o as default };
|
package/dist/sortable/index.d.ts
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { ComponentProps } from 'react';
|
|
2
|
+
export { SortableHandle, type SortableHandleProps, SortableItem, type SortableItemProps } from './shared';
|
|
3
|
+
export { default as SortableTree, type SortableTreeProps } from './tree';
|
|
4
|
+
export { flattenTree, type SortableNode, type SortableRow } from './tree-model';
|
|
2
5
|
/**
|
|
3
6
|
* A list put in order by dragging, e.g. budget categories: drag an item by its
|
|
4
7
|
* SortableHandle and the others make way (a phone taps lightly at each new
|
|
@@ -6,28 +9,15 @@ import { ComponentProps } from 'react';
|
|
|
6
9
|
* From the keyboard, Space or Enter on a handle picks the item up, the arrow
|
|
7
10
|
* keys move it, Space or Enter drops it and Escape puts it back; each step is
|
|
8
11
|
* announced. `value` is the ids in order; render a SortableItem for each.
|
|
12
|
+
* With `asChild` (and `asChild` on the items), your own elements instead: a
|
|
13
|
+
* TableBody of TableRows, say, one per group, each sorted on its own.
|
|
9
14
|
*/
|
|
10
|
-
export declare function SortableList({ value,
|
|
11
|
-
|
|
12
|
-
export declare function SortableItem({ id, className, ...rest }: SortableItemProps): import('react').JSX.Element;
|
|
13
|
-
/**
|
|
14
|
-
* What an item is dragged by: a grip button. `label` names the item ("Rent");
|
|
15
|
-
* the button reads "Reorder Rent". It takes no scroll gestures, so dragging it
|
|
16
|
-
* never scrolls the page.
|
|
17
|
-
*/
|
|
18
|
-
export declare function SortableHandle({ id, label, className, children, ...rest }: SortableHandleProps): import('react').JSX.Element;
|
|
19
|
-
export interface SortableListProps extends Omit<ComponentProps<'ul'>, 'onChange'> {
|
|
15
|
+
export declare function SortableList({ value, onValueChange, asChild, className, children, ref, ...rest }: SortableListProps): import('react').JSX.Element;
|
|
16
|
+
export interface SortableListProps extends ComponentProps<'ul'> {
|
|
20
17
|
/** The items' ids, in order. */
|
|
21
18
|
value: readonly string[];
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
id: string;
|
|
26
|
-
}
|
|
27
|
-
export interface SortableHandleProps extends Omit<ComponentProps<'button'>, 'id'> {
|
|
28
|
-
/** The item's id, as in the list's value. */
|
|
29
|
-
id: string;
|
|
30
|
-
/** The item's name, e.g. "Rent". */
|
|
31
|
-
label: string;
|
|
19
|
+
onValueChange: (value: string[]) => void;
|
|
20
|
+
/** Put the list's props on your own element (the single child, e.g. a TableBody) instead of a ul. */
|
|
21
|
+
asChild?: boolean;
|
|
32
22
|
}
|
|
33
23
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/sortable/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/sortable/index.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAA6E,MAAM,OAAO,CAAC;AAIlH,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC1G,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAUhF;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,iBAAiB,+BAkInH;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc,CAAC,IAAI,CAAC;IAC3D,gCAAgC;IAChC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACzC,qGAAqG;IACrG,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB"}
|