@devalok/shilp-sutra 0.27.2 → 0.29.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/dist/_chunks/badge-group.js +299 -0
- package/dist/_chunks/framer.js +1915 -1980
- package/dist/_chunks/keybinding.js +4 -5
- package/dist/_chunks/primitives.js +3198 -3272
- package/dist/_chunks/sonner.js +29 -31
- package/dist/_chunks/stat-row.js +110 -131
- package/dist/_chunks/tiptap.js +42 -78
- package/dist/_chunks/tree-view.js +138 -149
- package/dist/_chunks/typing-indicator.js +565 -0
- package/dist/_chunks/use-calendar.js +416 -439
- package/dist/_chunks/vendor-client.js +977 -814
- package/dist/_chunks/vendor-utils.js +5 -5
- package/dist/ai/block-renderer.js +22 -22
- package/dist/ai/blocks/loading.d.ts.map +1 -1
- package/dist/ai/command-bar.d.ts.map +1 -1
- package/dist/ai/command-bar.js +241 -263
- package/dist/ai/conversation.d.ts.map +1 -1
- package/dist/ai/conversation.js +87 -107
- package/dist/composed/activity-feed.d.ts +2 -0
- package/dist/composed/activity-feed.d.ts.map +1 -1
- package/dist/composed/activity-feed.js +118 -90
- package/dist/composed/avatar-group.d.ts +1 -0
- package/dist/composed/avatar-group.d.ts.map +1 -1
- package/dist/composed/avatar-group.js +91 -67
- package/dist/composed/bulk-action-bar.d.ts.map +1 -1
- package/dist/composed/bulk-action-bar.js +29 -28
- package/dist/composed/command-palette.d.ts.map +1 -1
- package/dist/composed/command-palette.js +99 -113
- package/dist/composed/content-card.js +1 -1
- package/dist/composed/date-picker/calendar-grid.d.ts.map +1 -1
- package/dist/composed/date-picker/date-picker.d.ts.map +1 -1
- package/dist/composed/date-picker/date-range-picker.d.ts.map +1 -1
- package/dist/composed/date-picker/date-time-picker.d.ts.map +1 -1
- package/dist/composed/date-picker/time-picker.d.ts.map +1 -1
- package/dist/composed/deadline-indicator.d.ts.map +1 -1
- package/dist/composed/deadline-indicator.js +29 -28
- package/dist/composed/error-boundary.d.ts.map +1 -1
- package/dist/composed/error-boundary.js +30 -27
- package/dist/composed/extensions/file-attachment.d.ts.map +1 -1
- package/dist/composed/file-preview.d.ts.map +1 -1
- package/dist/composed/file-preview.js +261 -271
- package/dist/composed/filter-bar.d.ts.map +1 -1
- package/dist/composed/filter-bar.js +49 -48
- package/dist/composed/form-section.d.ts.map +1 -1
- package/dist/composed/form-section.js +12 -11
- package/dist/composed/global-loading.js +1 -1
- package/dist/composed/index.js +63 -63
- package/dist/composed/inline-edit.d.ts.map +1 -1
- package/dist/composed/inline-edit.js +55 -54
- package/dist/composed/markdown-viewer.d.ts.map +1 -1
- package/dist/composed/markdown-viewer.js +44 -43
- package/dist/composed/master-detail.d.ts.map +1 -1
- package/dist/composed/master-detail.js +35 -34
- package/dist/composed/multi-select-popover.d.ts.map +1 -1
- package/dist/composed/multi-select-popover.js +64 -64
- package/dist/composed/page-header.d.ts.map +1 -1
- package/dist/composed/page-header.js +31 -37
- package/dist/composed/priority-indicator.d.ts.map +1 -1
- package/dist/composed/priority-indicator.js +37 -36
- package/dist/composed/rich-text-editor.d.ts.map +1 -1
- package/dist/composed/rich-text-editor.js +287 -306
- package/dist/composed/schedule-view.js +62 -62
- package/dist/composed/status-badge.d.ts +4 -2
- package/dist/composed/status-badge.d.ts.map +1 -1
- package/dist/composed/status-badge.js +58 -45
- package/dist/shell/app-command-palette.d.ts.map +1 -1
- package/dist/shell/app-command-palette.js +93 -93
- package/dist/shell/bottom-navbar.d.ts.map +1 -1
- package/dist/shell/bottom-navbar.js +21 -20
- package/dist/shell/index.js +18 -18
- package/dist/shell/notification-center.d.ts.map +1 -1
- package/dist/shell/notification-center.js +96 -95
- package/dist/shell/notification-preferences.d.ts.map +1 -1
- package/dist/shell/notification-preferences.js +82 -85
- package/dist/shell/sidebar.js +59 -60
- package/dist/shell/top-bar.d.ts.map +1 -1
- package/dist/shell/top-bar.js +103 -103
- package/dist/tailwind/index.cjs +37 -4
- package/dist/tailwind/preset.d.ts.map +1 -1
- package/dist/tailwind/preset.js +38 -5
- package/dist/tokens/primitives.css +10 -0
- package/dist/tokens/semantic.css +70 -7
- package/dist/ui/accordion.d.ts +5 -2
- package/dist/ui/accordion.d.ts.map +1 -1
- package/dist/ui/accordion.js +44 -39
- package/dist/ui/alert-dialog.js +57 -57
- package/dist/ui/alert.d.ts +1 -1
- package/dist/ui/alert.d.ts.map +1 -1
- package/dist/ui/alert.js +30 -29
- package/dist/ui/aspect-ratio.js +4 -4
- package/dist/ui/autocomplete.js +56 -56
- package/dist/ui/avatar.js +2 -2
- package/dist/ui/badge-group.d.ts +22 -0
- package/dist/ui/badge-group.d.ts.map +1 -0
- package/dist/ui/badge-group.js +8 -0
- package/dist/ui/badge-indicator.d.ts +32 -0
- package/dist/ui/badge-indicator.d.ts.map +1 -0
- package/dist/ui/badge-indicator.js +54 -0
- package/dist/ui/badge.d.ts +27 -24
- package/dist/ui/badge.d.ts.map +1 -1
- package/dist/ui/badge.js +13 -129
- package/dist/ui/banner.d.ts +1 -1
- package/dist/ui/banner.d.ts.map +1 -1
- package/dist/ui/banner.js +27 -26
- package/dist/ui/breadcrumb.d.ts.map +1 -1
- package/dist/ui/breadcrumb.js +37 -36
- package/dist/ui/button-group.d.ts +12 -6
- package/dist/ui/button-group.d.ts.map +1 -1
- package/dist/ui/button-group.js +18 -18
- package/dist/ui/button-processing.d.ts +15 -0
- package/dist/ui/button-processing.d.ts.map +1 -0
- package/dist/ui/button-processing.js +77 -0
- package/dist/ui/button.d.ts +50 -25
- package/dist/ui/button.d.ts.map +1 -1
- package/dist/ui/button.js +243 -127
- package/dist/ui/card.js +20 -21
- package/dist/ui/charts/index.js +499 -508
- package/dist/ui/chat/date-separator.d.ts +12 -0
- package/dist/ui/chat/date-separator.d.ts.map +1 -0
- package/dist/ui/chat/index.d.ts +9 -0
- package/dist/ui/chat/index.d.ts.map +1 -0
- package/dist/ui/chat/index.js +12 -0
- package/dist/ui/chat/message-input.d.ts +16 -0
- package/dist/ui/chat/message-input.d.ts.map +1 -0
- package/dist/ui/chat/message-list.d.ts +24 -0
- package/dist/ui/chat/message-list.d.ts.map +1 -0
- package/dist/ui/chat/message.d.ts +108 -0
- package/dist/ui/chat/message.d.ts.map +1 -0
- package/dist/ui/chat/system-message.d.ts +11 -0
- package/dist/ui/chat/system-message.d.ts.map +1 -0
- package/dist/ui/chat/typing-indicator.d.ts +14 -0
- package/dist/ui/chat/typing-indicator.d.ts.map +1 -0
- package/dist/ui/chat/unread-separator.d.ts +12 -0
- package/dist/ui/chat/unread-separator.d.ts.map +1 -0
- package/dist/ui/checkbox.js +18 -18
- package/dist/ui/chip.d.ts +13 -62
- package/dist/ui/chip.d.ts.map +1 -1
- package/dist/ui/chip.js +10 -109
- package/dist/ui/collapsible.js +4 -4
- package/dist/ui/color-input.d.ts +19 -5
- package/dist/ui/color-input.d.ts.map +1 -1
- package/dist/ui/color-input.js +371 -79
- package/dist/ui/color-swatch.js +11 -11
- package/dist/ui/combobox.d.ts.map +1 -1
- package/dist/ui/combobox.js +74 -80
- package/dist/ui/context-menu.d.ts.map +1 -1
- package/dist/ui/context-menu.js +86 -85
- package/dist/ui/data-table-toolbar.d.ts.map +1 -1
- package/dist/ui/data-table-toolbar.js +51 -57
- package/dist/ui/data-table.d.ts.map +1 -1
- package/dist/ui/data-table.js +268 -296
- package/dist/ui/devalok-grain.d.ts +81 -0
- package/dist/ui/devalok-grain.d.ts.map +1 -0
- package/dist/ui/devalok-grain.js +69 -0
- package/dist/ui/dialog.d.ts.map +1 -1
- package/dist/ui/dialog.js +73 -72
- package/dist/ui/dropdown-menu.d.ts.map +1 -1
- package/dist/ui/dropdown-menu.js +93 -92
- package/dist/ui/file-upload.d.ts.map +1 -1
- package/dist/ui/file-upload.js +82 -82
- package/dist/ui/hover-card.js +29 -29
- package/dist/ui/icon-button.d.ts +7 -7
- package/dist/ui/icon-button.d.ts.map +1 -1
- package/dist/ui/icon-context.d.ts +15 -0
- package/dist/ui/icon-context.d.ts.map +1 -0
- package/dist/ui/icon-context.js +20 -0
- package/dist/ui/icon-group.d.ts +22 -0
- package/dist/ui/icon-group.d.ts.map +1 -0
- package/dist/ui/icon-group.js +32 -0
- package/dist/ui/icon.d.ts +57 -0
- package/dist/ui/icon.d.ts.map +1 -0
- package/dist/ui/icon.js +122 -0
- package/dist/ui/index.d.ts +8 -1
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +351 -329
- package/dist/ui/input-otp.d.ts.map +1 -1
- package/dist/ui/input-otp.js +21 -20
- package/dist/ui/input.d.ts +32 -11
- package/dist/ui/input.d.ts.map +1 -1
- package/dist/ui/input.js +149 -44
- package/dist/ui/label.js +1 -1
- package/dist/ui/lib/motion.d.ts +2 -0
- package/dist/ui/lib/motion.d.ts.map +1 -1
- package/dist/ui/lib/motion.js +13 -11
- package/dist/ui/lib/utils.js +1 -1
- package/dist/ui/menubar.d.ts.map +1 -1
- package/dist/ui/menubar.js +87 -86
- package/dist/ui/navigation-menu.d.ts.map +1 -1
- package/dist/ui/navigation-menu.js +23 -28
- package/dist/ui/number-input.d.ts.map +1 -1
- package/dist/ui/number-input.js +54 -53
- package/dist/ui/pagination.d.ts.map +1 -1
- package/dist/ui/pagination.js +45 -44
- package/dist/ui/popover.js +30 -30
- package/dist/ui/progress.d.ts +3 -1
- package/dist/ui/progress.d.ts.map +1 -1
- package/dist/ui/progress.js +43 -39
- package/dist/ui/radio.js +1 -1
- package/dist/ui/search-input.d.ts.map +1 -1
- package/dist/ui/search-input.js +47 -60
- package/dist/ui/segmented-control.js +1 -1
- package/dist/ui/select.d.ts.map +1 -1
- package/dist/ui/select.js +54 -53
- package/dist/ui/separator.js +5 -5
- package/dist/ui/sheet.d.ts.map +1 -1
- package/dist/ui/sheet.js +46 -45
- package/dist/ui/sidebar.d.ts.map +1 -1
- package/dist/ui/sidebar.js +196 -193
- package/dist/ui/skeleton.js +1 -1
- package/dist/ui/slider.js +1 -1
- package/dist/ui/spinner.js +74 -74
- package/dist/ui/stat-card.d.ts.map +1 -1
- package/dist/ui/stat-card.js +85 -86
- package/dist/ui/switch.d.ts +3 -0
- package/dist/ui/switch.d.ts.map +1 -1
- package/dist/ui/switch.js +40 -26
- package/dist/ui/tabs.js +43 -43
- package/dist/ui/text.js +1 -1
- package/dist/ui/textarea.js +10 -10
- package/dist/ui/toast.d.ts.map +1 -1
- package/dist/ui/toast.js +169 -169
- package/dist/ui/toggle-group.js +1 -1
- package/dist/ui/toggle.js +5 -5
- package/dist/ui/tooltip.js +41 -41
- package/dist/ui/tree-view/tree-item.d.ts.map +1 -1
- package/docs/components/_header.md +4 -4
- package/docs/components/composed/activity-feed.md +7 -0
- package/docs/components/composed/avatar-group.md +8 -5
- package/docs/components/composed/status-badge.md +14 -1
- package/docs/components/ui/accordion.md +5 -2
- package/docs/components/ui/badge-group.md +38 -0
- package/docs/components/ui/badge-indicator.md +40 -0
- package/docs/components/ui/badge.md +36 -5
- package/docs/components/ui/button-processing.md +15 -0
- package/docs/components/ui/button.md +40 -11
- package/docs/components/ui/chat.md +214 -0
- package/docs/components/ui/color-input.md +58 -4
- package/docs/components/ui/data-table.md +3 -0
- package/docs/components/ui/devalok-grain.md +55 -0
- package/docs/components/ui/icon-button.md +12 -5
- package/docs/components/ui/icon-context.md +38 -0
- package/docs/components/ui/icon-group.md +36 -0
- package/docs/components/ui/icon.md +47 -0
- package/docs/components/ui/input.md +32 -6
- package/docs/components/ui/progress.md +5 -0
- package/docs/components/ui/spinner.md +3 -0
- package/docs/components/ui/switch.md +13 -0
- package/llms-full.txt +724 -44
- package/llms.txt +38 -19
- package/package.json +8 -2
|
@@ -1,105 +1,106 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsxs as
|
|
3
|
-
import * as
|
|
4
|
-
import { useState as
|
|
5
|
-
import { cn as
|
|
6
|
-
import { IconChevronRight as
|
|
7
|
-
import {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
2
|
+
import { jsxs as A, jsx as i } from "react/jsx-runtime";
|
|
3
|
+
import * as l from "react";
|
|
4
|
+
import { useState as D, useCallback as I } from "react";
|
|
5
|
+
import { cn as E } from "../ui/lib/utils.js";
|
|
6
|
+
import { IconChevronRight as K } from "@tabler/icons-react";
|
|
7
|
+
import { Icon as j } from "../ui/icon.js";
|
|
8
|
+
import { Checkbox as L } from "../ui/checkbox.js";
|
|
9
|
+
function q(t = {}) {
|
|
10
|
+
const { defaultExpanded: x, defaultSelected: r, multiSelect: f, onSelect: v, onExpand: c } = t, [w, k] = D(
|
|
11
|
+
new Set(x ?? [])
|
|
12
|
+
), [y, C] = D(
|
|
12
13
|
new Set(r ?? [])
|
|
13
|
-
), s =
|
|
14
|
+
), s = I(
|
|
14
15
|
(n) => {
|
|
15
|
-
|
|
16
|
-
const p = new Set(
|
|
17
|
-
return p.has(n) ? p.delete(n) : p.add(n),
|
|
16
|
+
k((d) => {
|
|
17
|
+
const p = new Set(d);
|
|
18
|
+
return p.has(n) ? p.delete(n) : p.add(n), c?.(Array.from(p)), p;
|
|
18
19
|
});
|
|
19
20
|
},
|
|
20
|
-
[
|
|
21
|
-
),
|
|
22
|
-
(n,
|
|
23
|
-
|
|
21
|
+
[c]
|
|
22
|
+
), o = I(
|
|
23
|
+
(n, d) => {
|
|
24
|
+
C((p) => {
|
|
24
25
|
let m;
|
|
25
|
-
return f &&
|
|
26
|
+
return f && d?.ctrlKey ? (m = new Set(p), m.has(n) ? m.delete(n) : m.add(n)) : m = /* @__PURE__ */ new Set([n]), v?.(Array.from(m)), m;
|
|
26
27
|
});
|
|
27
28
|
},
|
|
28
|
-
[f,
|
|
29
|
+
[f, v]
|
|
29
30
|
);
|
|
30
31
|
return {
|
|
31
|
-
expanded:
|
|
32
|
-
selected:
|
|
32
|
+
expanded: w,
|
|
33
|
+
selected: y,
|
|
33
34
|
toggle: s,
|
|
34
|
-
select:
|
|
35
|
-
isExpanded: (n) =>
|
|
36
|
-
isSelected: (n) =>
|
|
37
|
-
expandAll: (n) =>
|
|
38
|
-
collapseAll: () =>
|
|
35
|
+
select: o,
|
|
36
|
+
isExpanded: (n) => w.has(n),
|
|
37
|
+
isSelected: (n) => y.has(n),
|
|
38
|
+
expandAll: (n) => k(new Set(n)),
|
|
39
|
+
collapseAll: () => k(/* @__PURE__ */ new Set())
|
|
39
40
|
};
|
|
40
41
|
}
|
|
41
|
-
const
|
|
42
|
+
const R = l.forwardRef(
|
|
42
43
|
({
|
|
43
44
|
itemId: t,
|
|
44
|
-
label:
|
|
45
|
+
label: x,
|
|
45
46
|
icon: r,
|
|
46
47
|
secondaryLabel: f,
|
|
47
|
-
actions:
|
|
48
|
-
disabled:
|
|
49
|
-
children:
|
|
50
|
-
depth:
|
|
51
|
-
className:
|
|
52
|
-
},
|
|
53
|
-
const s =
|
|
54
|
-
|
|
48
|
+
actions: v,
|
|
49
|
+
disabled: c = !1,
|
|
50
|
+
children: w,
|
|
51
|
+
depth: k = 0,
|
|
52
|
+
className: y
|
|
53
|
+
}, C) => {
|
|
54
|
+
const s = M(), o = l.Children.count(w) > 0, n = s.tree.isExpanded(t), d = s.tree.isSelected(t), p = (e) => {
|
|
55
|
+
c || s.tree.select(t, e);
|
|
55
56
|
}, m = (e) => {
|
|
56
|
-
e.stopPropagation(), !
|
|
57
|
-
},
|
|
58
|
-
|
|
59
|
-
},
|
|
60
|
-
if (!s.checkboxes || !
|
|
61
|
-
return { checked:
|
|
62
|
-
const e = [], u = (
|
|
63
|
-
|
|
64
|
-
|
|
57
|
+
e.stopPropagation(), !c && s.tree.toggle(t);
|
|
58
|
+
}, S = (e) => {
|
|
59
|
+
c || ((e.key === "Enter" || e.key === " ") && (e.preventDefault(), s.tree.select(t)), e.key === "ArrowRight" && o && !n && (e.preventDefault(), e.stopPropagation(), s.tree.toggle(t)), e.key === "ArrowLeft" && o && n && (e.preventDefault(), e.stopPropagation(), s.tree.toggle(t)));
|
|
60
|
+
}, g = l.useMemo(() => {
|
|
61
|
+
if (!s.checkboxes || !o)
|
|
62
|
+
return { checked: d, indeterminate: !1 };
|
|
63
|
+
const e = [], u = (a) => {
|
|
64
|
+
l.Children.forEach(a, (h) => {
|
|
65
|
+
l.isValidElement(h) && h.props.itemId && (e.push(h.props.itemId), h.props.children && u(h.props.children));
|
|
65
66
|
});
|
|
66
67
|
};
|
|
67
|
-
u(
|
|
68
|
+
u(w);
|
|
68
69
|
const b = e.filter(
|
|
69
|
-
(
|
|
70
|
+
(a) => s.tree.isSelected(a)
|
|
70
71
|
).length;
|
|
71
|
-
return b === 0 && !
|
|
72
|
-
}, [s.checkboxes,
|
|
73
|
-
return /* @__PURE__ */
|
|
72
|
+
return b === 0 && !d ? { checked: !1, indeterminate: !1 } : b === e.length ? { checked: !0, indeterminate: !1 } : { checked: !1, indeterminate: !0 };
|
|
73
|
+
}, [s.checkboxes, o, w, d, s.tree]);
|
|
74
|
+
return /* @__PURE__ */ A(
|
|
74
75
|
"li",
|
|
75
76
|
{
|
|
76
|
-
ref:
|
|
77
|
+
ref: C,
|
|
77
78
|
role: "treeitem",
|
|
78
|
-
"aria-expanded":
|
|
79
|
-
"aria-selected":
|
|
80
|
-
"aria-level":
|
|
81
|
-
"aria-disabled":
|
|
79
|
+
"aria-expanded": o ? n : void 0,
|
|
80
|
+
"aria-selected": d,
|
|
81
|
+
"aria-level": k + 1,
|
|
82
|
+
"aria-disabled": c || void 0,
|
|
82
83
|
className: "list-none",
|
|
83
84
|
children: [
|
|
84
|
-
/* @__PURE__ */
|
|
85
|
+
/* @__PURE__ */ A(
|
|
85
86
|
"div",
|
|
86
87
|
{
|
|
87
88
|
role: "presentation",
|
|
88
89
|
"data-tree-item": t,
|
|
89
|
-
tabIndex:
|
|
90
|
+
tabIndex: c ? -1 : 0,
|
|
90
91
|
onClick: p,
|
|
91
|
-
onKeyDown:
|
|
92
|
-
style: { paddingLeft:
|
|
93
|
-
className:
|
|
92
|
+
onKeyDown: S,
|
|
93
|
+
style: { paddingLeft: k * 20 + 8 },
|
|
94
|
+
className: E(
|
|
94
95
|
"flex items-center gap-ds-02 py-ds-02 px-ds-02 rounded-ds-md cursor-pointer transition-colors duration-fast-01",
|
|
95
96
|
"hover:bg-surface-raised",
|
|
96
97
|
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent-9",
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
98
|
+
d && "bg-accent-3 text-accent-11",
|
|
99
|
+
c && "opacity-action-disabled cursor-not-allowed pointer-events-none",
|
|
100
|
+
y
|
|
100
101
|
),
|
|
101
102
|
children: [
|
|
102
|
-
|
|
103
|
+
o ? /* @__PURE__ */ i(
|
|
103
104
|
"button",
|
|
104
105
|
{
|
|
105
106
|
type: "button",
|
|
@@ -107,57 +108,58 @@ const j = d.forwardRef(
|
|
|
107
108
|
"aria-hidden": "true",
|
|
108
109
|
onClick: m,
|
|
109
110
|
className: "flex shrink-0 items-center justify-center p-0 border-0 bg-transparent cursor-pointer",
|
|
110
|
-
children: /* @__PURE__ */
|
|
111
|
-
|
|
111
|
+
children: /* @__PURE__ */ i(
|
|
112
|
+
j,
|
|
112
113
|
{
|
|
113
|
-
|
|
114
|
-
|
|
114
|
+
icon: K,
|
|
115
|
+
size: "sm",
|
|
116
|
+
className: E(
|
|
115
117
|
"transition-transform duration-moderate-02",
|
|
116
118
|
n && "rotate-90"
|
|
117
119
|
)
|
|
118
120
|
}
|
|
119
121
|
)
|
|
120
122
|
}
|
|
121
|
-
) : /* @__PURE__ */
|
|
122
|
-
s.checkboxes && /* @__PURE__ */
|
|
123
|
-
|
|
123
|
+
) : /* @__PURE__ */ i("span", { className: "inline-block w-4 shrink-0", "aria-hidden": "true" }),
|
|
124
|
+
s.checkboxes && /* @__PURE__ */ i(
|
|
125
|
+
L,
|
|
124
126
|
{
|
|
125
|
-
checked:
|
|
126
|
-
indeterminate:
|
|
127
|
-
disabled:
|
|
127
|
+
checked: g.checked,
|
|
128
|
+
indeterminate: g.indeterminate,
|
|
129
|
+
disabled: c,
|
|
128
130
|
tabIndex: -1,
|
|
129
131
|
onClick: (e) => e.stopPropagation(),
|
|
130
132
|
onCheckedChange: () => {
|
|
131
|
-
|
|
133
|
+
c || s.tree.select(t);
|
|
132
134
|
},
|
|
133
135
|
className: "shrink-0"
|
|
134
136
|
}
|
|
135
137
|
),
|
|
136
|
-
r && /* @__PURE__ */
|
|
137
|
-
/* @__PURE__ */
|
|
138
|
-
f && /* @__PURE__ */
|
|
139
|
-
|
|
138
|
+
r && /* @__PURE__ */ i("span", { className: "flex shrink-0 items-center text-surface-fg-subtle", children: r }),
|
|
139
|
+
/* @__PURE__ */ i("span", { className: "truncate text-ds-sm", children: x }),
|
|
140
|
+
f && /* @__PURE__ */ i("span", { className: "ml-auto truncate text-ds-xs text-surface-fg-muted", children: f }),
|
|
141
|
+
v && /* @__PURE__ */ i(
|
|
140
142
|
"span",
|
|
141
143
|
{
|
|
142
144
|
className: "ml-auto flex shrink-0 items-center gap-ds-01",
|
|
143
145
|
onClick: (e) => e.stopPropagation(),
|
|
144
146
|
role: "presentation",
|
|
145
|
-
children:
|
|
147
|
+
children: v
|
|
146
148
|
}
|
|
147
149
|
)
|
|
148
150
|
]
|
|
149
151
|
}
|
|
150
152
|
),
|
|
151
|
-
|
|
153
|
+
o && /* @__PURE__ */ i(
|
|
152
154
|
"div",
|
|
153
155
|
{
|
|
154
156
|
role: "group",
|
|
155
|
-
className:
|
|
157
|
+
className: E(
|
|
156
158
|
"grid transition-[grid-template-rows] duration-moderate-02 ease-productive-standard",
|
|
157
159
|
n ? "grid-rows-[1fr]" : "grid-rows-[0fr]"
|
|
158
160
|
),
|
|
159
|
-
children: /* @__PURE__ */
|
|
160
|
-
depth:
|
|
161
|
+
children: /* @__PURE__ */ i("ul", { role: "group", className: "overflow-hidden m-0 p-0", children: l.Children.map(w, (e) => l.isValidElement(e) ? l.cloneElement(e, {
|
|
162
|
+
depth: k + 1
|
|
161
163
|
}) : e) })
|
|
162
164
|
}
|
|
163
165
|
)
|
|
@@ -166,33 +168,33 @@ const j = d.forwardRef(
|
|
|
166
168
|
);
|
|
167
169
|
}
|
|
168
170
|
);
|
|
169
|
-
|
|
170
|
-
const
|
|
171
|
-
function
|
|
172
|
-
const t =
|
|
171
|
+
R.displayName = "TreeItem";
|
|
172
|
+
const T = l.createContext(null);
|
|
173
|
+
function M() {
|
|
174
|
+
const t = l.useContext(T);
|
|
173
175
|
if (!t)
|
|
174
176
|
throw new Error("TreeItem must be used within a <TreeView>");
|
|
175
177
|
return t;
|
|
176
178
|
}
|
|
177
|
-
function
|
|
178
|
-
return t.map((r) => /* @__PURE__ */
|
|
179
|
-
|
|
179
|
+
function V(t, x = 0) {
|
|
180
|
+
return t.map((r) => /* @__PURE__ */ i(
|
|
181
|
+
R,
|
|
180
182
|
{
|
|
181
183
|
itemId: r.id,
|
|
182
184
|
label: r.label,
|
|
183
185
|
icon: r.icon,
|
|
184
186
|
disabled: r.disabled,
|
|
185
|
-
depth:
|
|
186
|
-
children: r.children && r.children.length > 0 ?
|
|
187
|
+
depth: x,
|
|
188
|
+
children: r.children && r.children.length > 0 ? V(r.children, x + 1) : void 0
|
|
187
189
|
},
|
|
188
190
|
r.id
|
|
189
191
|
));
|
|
190
192
|
}
|
|
191
|
-
function
|
|
193
|
+
function z(t) {
|
|
192
194
|
return Array.from(
|
|
193
195
|
t.querySelectorAll("[data-tree-item]")
|
|
194
|
-
).filter((
|
|
195
|
-
let r =
|
|
196
|
+
).filter((x) => {
|
|
197
|
+
let r = x.parentElement;
|
|
196
198
|
for (; r && r !== t; ) {
|
|
197
199
|
if (r.getAttribute("role") === "group") {
|
|
198
200
|
const f = r.parentElement;
|
|
@@ -204,103 +206,90 @@ function U(t) {
|
|
|
204
206
|
return !0;
|
|
205
207
|
});
|
|
206
208
|
}
|
|
207
|
-
const
|
|
209
|
+
const G = l.forwardRef(
|
|
208
210
|
({
|
|
209
211
|
items: t,
|
|
210
|
-
defaultExpanded:
|
|
212
|
+
defaultExpanded: x,
|
|
211
213
|
defaultSelected: r,
|
|
212
214
|
multiSelect: f = !1,
|
|
213
|
-
checkboxes:
|
|
214
|
-
onSelect:
|
|
215
|
-
onExpand:
|
|
216
|
-
className:
|
|
217
|
-
children:
|
|
218
|
-
...
|
|
215
|
+
checkboxes: v = !1,
|
|
216
|
+
onSelect: c,
|
|
217
|
+
onExpand: w,
|
|
218
|
+
className: k,
|
|
219
|
+
children: y,
|
|
220
|
+
...C
|
|
219
221
|
}, s) => {
|
|
220
|
-
const
|
|
221
|
-
defaultExpanded:
|
|
222
|
+
const o = q({
|
|
223
|
+
defaultExpanded: x,
|
|
222
224
|
defaultSelected: r,
|
|
223
225
|
multiSelect: f,
|
|
224
|
-
onSelect:
|
|
225
|
-
onExpand:
|
|
226
|
-
}), n =
|
|
227
|
-
|
|
228
|
-
const e = c.current;
|
|
226
|
+
onSelect: c,
|
|
227
|
+
onExpand: w
|
|
228
|
+
}), n = l.useRef(null), d = s ?? n, p = (g) => {
|
|
229
|
+
const e = d.current;
|
|
229
230
|
if (!e) return;
|
|
230
|
-
const u =
|
|
231
|
+
const u = z(e), b = u.findIndex(
|
|
231
232
|
(a) => a === document.activeElement
|
|
232
233
|
);
|
|
233
|
-
switch (
|
|
234
|
+
switch (g.key) {
|
|
234
235
|
case "ArrowDown": {
|
|
235
|
-
|
|
236
|
-
const a = u[b + 1];
|
|
237
|
-
a == null || a.focus();
|
|
236
|
+
g.preventDefault(), u[b + 1]?.focus();
|
|
238
237
|
break;
|
|
239
238
|
}
|
|
240
239
|
case "ArrowUp": {
|
|
241
|
-
|
|
242
|
-
const a = u[b - 1];
|
|
243
|
-
a == null || a.focus();
|
|
240
|
+
g.preventDefault(), u[b - 1]?.focus();
|
|
244
241
|
break;
|
|
245
242
|
}
|
|
246
243
|
case "ArrowRight": {
|
|
247
244
|
const a = u[b];
|
|
248
245
|
if (a) {
|
|
249
|
-
const
|
|
250
|
-
|
|
251
|
-
x.preventDefault();
|
|
252
|
-
const y = u[b + 1];
|
|
253
|
-
y == null || y.focus();
|
|
254
|
-
}
|
|
246
|
+
const h = a.getAttribute("data-tree-item");
|
|
247
|
+
h && o.isExpanded(h) && (g.preventDefault(), u[b + 1]?.focus());
|
|
255
248
|
}
|
|
256
249
|
break;
|
|
257
250
|
}
|
|
258
251
|
case "ArrowLeft": {
|
|
259
252
|
const a = u[b];
|
|
260
253
|
if (a) {
|
|
261
|
-
const
|
|
254
|
+
const h = a.getAttribute("data-tree-item"), N = a.closest('[role="treeitem"]')?.parentElement?.closest(
|
|
262
255
|
'[role="treeitem"]'
|
|
263
256
|
);
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
"[data-tree-item]"
|
|
268
|
-
);
|
|
269
|
-
T == null || T.focus();
|
|
270
|
-
}
|
|
257
|
+
h && !o.isExpanded(h) && N && (g.preventDefault(), N.querySelector(
|
|
258
|
+
"[data-tree-item]"
|
|
259
|
+
)?.focus());
|
|
271
260
|
}
|
|
272
261
|
break;
|
|
273
262
|
}
|
|
274
263
|
case "Home": {
|
|
275
|
-
|
|
264
|
+
g.preventDefault(), u[0]?.focus();
|
|
276
265
|
break;
|
|
277
266
|
}
|
|
278
267
|
case "End": {
|
|
279
|
-
|
|
268
|
+
g.preventDefault(), u[u.length - 1]?.focus();
|
|
280
269
|
break;
|
|
281
270
|
}
|
|
282
271
|
}
|
|
283
|
-
}, m =
|
|
284
|
-
() => ({ tree:
|
|
285
|
-
[
|
|
286
|
-
),
|
|
287
|
-
return /* @__PURE__ */
|
|
272
|
+
}, m = l.useMemo(
|
|
273
|
+
() => ({ tree: o, checkboxes: v }),
|
|
274
|
+
[o, v]
|
|
275
|
+
), S = t ? V(t) : y;
|
|
276
|
+
return /* @__PURE__ */ i(T.Provider, { value: m, children: /* @__PURE__ */ i(
|
|
288
277
|
"ul",
|
|
289
278
|
{
|
|
290
|
-
ref:
|
|
279
|
+
ref: d,
|
|
291
280
|
role: "tree",
|
|
292
281
|
"aria-multiselectable": f || void 0,
|
|
293
282
|
onKeyDown: p,
|
|
294
|
-
className:
|
|
295
|
-
...
|
|
296
|
-
children:
|
|
283
|
+
className: E("m-0 list-none p-0", k),
|
|
284
|
+
...C,
|
|
285
|
+
children: S
|
|
297
286
|
}
|
|
298
287
|
) });
|
|
299
288
|
}
|
|
300
289
|
);
|
|
301
|
-
|
|
290
|
+
G.displayName = "TreeView";
|
|
302
291
|
export {
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
292
|
+
R as T,
|
|
293
|
+
G as a,
|
|
294
|
+
q as u
|
|
306
295
|
};
|