impact-nova 2.1.0-alpha.4 → 2.1.0-alpha.5
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/components/data/ag-grid-react/ag-grid-tooltip-overflow.d.ts +3 -0
- package/dist/components/data/ag-grid-react/ag-grid-tooltip-overflow.js +6 -0
- package/dist/components/data/ag-grid-react/ag-grid.types.d.ts +15 -21
- package/dist/components/data/ag-grid-react/cell-renderers/date-display-renderer.js +1 -1
- package/dist/components/data/ag-grid-react/cell-renderers/default-text-cell-renderer.d.ts +1 -2
- package/dist/components/data/ag-grid-react/cell-renderers/default-text-cell-renderer.js +12 -6
- package/dist/components/data/ag-grid-react/cell-renderers/editors/textarea-cell-editor.js +19 -19
- package/dist/components/data/ag-grid-react/cell-renderers/select-display-renderer.js +1 -1
- package/dist/components/data/ag-grid-react/cell-renderers/switch-display-renderer.js +15 -15
- package/dist/components/data/ag-grid-react/headers/advanced-filter/advanced-filter-dialog.js +1 -1
- package/dist/components/data/ag-grid-react/headers/advanced-filter/column-filter-section.js +33 -33
- package/dist/components/data/ag-grid-react/headers/components/header-info.js +66 -62
- package/dist/components/data/ag-grid-react/headers/components/info-modal.js +6 -6
- package/dist/components/data/ag-grid-react/headers/components/section-renderers.js +18 -18
- package/dist/components/data/ag-grid-react/headers/custom-header-group.js +40 -29
- package/dist/components/data/ag-grid-react/headers/custom-header.js +102 -98
- package/dist/components/data/ag-grid-react/index.d.ts +1 -1
- package/dist/components/data/ag-grid-react/index.js +156 -148
- package/dist/components/data/ag-grid-react/theme.js +3 -0
- package/dist/components/data/ag-grid-react/use-ag-grid-truncation-tooltip.d.ts +5 -0
- package/dist/components/data/ag-grid-react/use-ag-grid-truncation-tooltip.js +13 -0
- package/dist/components/data/ag-grid-react/useGridAutoSizeStrategyOnResize.js +8 -5
- package/dist/components/data/data-table/data-table-column-apply.d.ts +16 -0
- package/dist/components/data/data-table/data-table-column-apply.js +18 -0
- package/dist/components/data/data-table/data-table-column-list.d.ts +13 -3
- package/dist/components/data/data-table/data-table-column-list.js +198 -191
- package/dist/components/data/data-table/data-table-constants.d.ts +3 -4
- package/dist/components/data/data-table/data-table-context.d.ts +3 -6
- package/dist/components/data/data-table/data-table-context.js +21 -10
- package/dist/components/data/data-table/data-table-saved-views.js +26 -26
- package/dist/components/data/data-table/data-table-sheet-portal-store.d.ts +13 -0
- package/dist/components/data/data-table/data-table-sheet-portal-store.js +36 -0
- package/dist/components/data/data-table/data-table-sheet.d.ts +3 -6
- package/dist/components/data/data-table/data-table-sheet.js +1 -1
- package/dist/components/data/data-table/data-table-view-menu.js +40 -40
- package/dist/components/data/data-table/data-table.d.ts +8 -10
- package/dist/components/data/data-table/data-table.js +131 -113
- package/dist/components/data/data-table/data-table.types.d.ts +35 -0
- package/dist/components/data/data-table/index.js +28 -27
- package/dist/components/data/data-table/indicator-legend.js +6 -6
- package/dist/components/data/expandable-list-item/expandable-list-item-attributes.d.ts +8 -0
- package/dist/components/data/expandable-list-item/expandable-list-item-attributes.js +72 -0
- package/dist/components/data/expandable-list-item/expandable-list-item-context.d.ts +13 -0
- package/dist/components/data/expandable-list-item/expandable-list-item-context.js +25 -0
- package/dist/components/data/expandable-list-item/expandable-list-item-metrics.d.ts +6 -0
- package/dist/components/data/expandable-list-item/expandable-list-item-metrics.js +41 -0
- package/dist/components/data/expandable-list-item/expandable-list-item-parts.d.ts +31 -0
- package/dist/components/data/expandable-list-item/expandable-list-item-parts.js +233 -0
- package/dist/components/data/expandable-list-item/expandable-list-item-preset.d.ts +18 -0
- package/dist/components/data/expandable-list-item/expandable-list-item-preset.js +133 -0
- package/dist/components/data/expandable-list-item/expandable-list-item.d.ts +5 -0
- package/dist/components/data/{expandable-sku/expandable-sku.types.d.ts → expandable-list-item/expandable-list-item.types.d.ts} +7 -7
- package/dist/components/data/expandable-list-item/index.d.ts +5 -0
- package/dist/components/data/expandable-list-item/index.js +19 -0
- package/dist/components/data/nested-list/components/NestedListHeader.js +11 -11
- package/dist/components/data/nested-list/components/SortableItem.js +2 -2
- package/dist/components/data-display/avatar/avatar.types.d.ts +2 -0
- package/dist/components/data-display/badge/badge.types.d.ts +2 -0
- package/dist/components/data-display/calendar/calendar-day-picker-classnames.js +11 -11
- package/dist/components/data-display/calendar/calendar-month-picker-panel.js +7 -7
- package/dist/components/data-display/calendar/calendar-week-number-cell.js +31 -31
- package/dist/components/data-display/card/card.js +8 -8
- package/dist/components/data-display/chart/chart.types.d.ts +9 -0
- package/dist/components/data-display/skeleton/skeleton.js +6 -6
- package/dist/components/data-display/statistics-card/statistics-card.js +14 -14
- package/dist/components/feedback/alert-dialog/alert-dialog.js +19 -19
- package/dist/components/feedback/dialog/dialog.js +1 -1
- package/dist/components/feedback/drawer/drawer.js +18 -18
- package/dist/components/feedback/dropdown-menu/dropdown-menu.js +70 -57
- package/dist/components/feedback/popover/popover.js +1 -1
- package/dist/components/feedback/sheet/sheet.js +1 -1
- package/dist/components/feedback/tooltip/tooltip.js +22 -22
- package/dist/components/feedback/tooltip/tooltip.variants.js +1 -1
- package/dist/components/flows/command-palette/command-palette.js +104 -104
- package/dist/components/flows/command-palette/shortcut-settings.js +34 -34
- package/dist/components/flows/filter-strip/filter-tag-list.js +4 -4
- package/dist/components/flows/notification-panel/notification-list.js +17 -17
- package/dist/components/flows/notification-panel/notification-panel.js +4 -4
- package/dist/components/flows/notification-panel/notification-panel.types.d.ts +3 -0
- package/dist/components/flows/wizard/wizard.js +8 -8
- package/dist/components/forms/combobox/combobox.js +20 -20
- package/dist/components/forms/date-picker/date-picker.js +17 -17
- package/dist/components/forms/date-picker/date-range-picker.js +3 -3
- package/dist/components/forms/date-picker/month-picker.js +1 -1
- package/dist/components/forms/date-picker/month-range-picker.js +42 -42
- package/dist/components/forms/date-picker/week-picker.js +15 -15
- package/dist/components/forms/date-picker/week-range-picker.js +3 -3
- package/dist/components/forms/file-upload/file-upload.js +33 -33
- package/dist/components/forms/input/input.js +8 -8
- package/dist/components/forms/input/input.variants.js +3 -3
- package/dist/components/forms/select/components/SelectMenuPanel.d.ts +1 -2
- package/dist/components/forms/select/components/SelectMenuPanel.js +18 -20
- package/dist/components/forms/select/components/SelectTrigger.d.ts +9 -6
- package/dist/components/forms/select/components/SelectTrigger.js +120 -122
- package/dist/components/forms/select/components/Submenu.js +8 -8
- package/dist/components/forms/select/hooks/useSelectKeyboardHandlers.d.ts +1 -1
- package/dist/components/forms/select/select.js +86 -86
- package/dist/components/forms/select/select.variants.js +4 -4
- package/dist/components/layout/sidebar/sidebar.d.ts +7 -50
- package/dist/components/layout/sidebar/sidebar.js +12 -11
- package/dist/components/layout/sidebar/sidebar.types.d.ts +35 -1
- package/dist/components/primitives/button-group/button-group.js +32 -32
- package/dist/components/primitives/chips/chips.variants.js +5 -5
- package/dist/components/primitives/empty-container/empty-container.types.d.ts +3 -0
- package/dist/components/primitives/kbd/kbd.variants.js +3 -3
- package/dist/components/primitives/stepper/stepper.js +6 -6
- package/dist/impact-nova-components.css +97 -0
- package/dist/impact-nova-tokens.scss +2 -4
- package/dist/impact-nova.css +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +446 -413
- package/dist/lib/compose-refs.d.ts +8 -0
- package/dist/lib/compose-refs.js +14 -0
- package/dist/lib/primitives/field.types.d.ts +8 -2
- package/dist/lib/virtualized/index.d.ts +3 -0
- package/dist/lib/virtualized/index.js +33 -16
- package/dist/lib/virtualized/useVirtualizedList.d.ts +2 -0
- package/dist/lib/virtualized/useVirtualizedList.js +115 -109
- package/dist/lib/virtualized/virtualized-list-context.d.ts +12 -0
- package/dist/lib/virtualized/virtualized-list-context.js +21 -0
- package/dist/lib/virtualized/virtualized-list-parts.d.ts +51 -0
- package/dist/lib/virtualized/virtualized-list-parts.js +175 -0
- package/dist/lib/virtualized/virtualized-list-utils.d.ts +5 -0
- package/dist/lib/virtualized/virtualized-list-utils.js +6 -0
- package/dist/llms/rules/installation.js +1 -1
- package/dist/llms/rules/migration.js +1 -1
- package/dist/llms/rules/real-world-patterns.js +1 -1
- package/dist/llms/rules/requirements.js +1 -1
- package/package.json +24 -15
- package/tailwind.config.js +1 -0
- package/dist/components/data/ag-grid-react/headers/components/truncated-text.d.ts +0 -15
- package/dist/components/data/ag-grid-react/headers/components/truncated-text.js +0 -27
- package/dist/components/data/expandable-sku/expandable-sku.d.ts +0 -38
- package/dist/components/data/expandable-sku/expandable-sku.js +0 -245
- package/dist/components/data/expandable-sku/index.d.ts +0 -2
- package/dist/components/data/expandable-sku/index.js +0 -4
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
import { jsx as n, jsxs as v } from "react/jsx-runtime";
|
|
2
|
+
import * as i from "react";
|
|
3
|
+
import { ChevronRight as y } from "impact-nova-icons";
|
|
4
|
+
import { AccordionContent as R, Accordion as A, AccordionItem as k, AccordionTrigger as T } from "../../primitives/accordion/accordion.js";
|
|
5
|
+
import { Checkbox as P } from "../../forms/checkbox/checkbox.js";
|
|
6
|
+
import { createCompoundPart as I } from "../../../lib/primitives/create-compound.js";
|
|
7
|
+
import { cn as r } from "../../../lib/utils.js";
|
|
8
|
+
import { useExpandableListItemContext as x, ExpandableListItemProvider as E, EXPANDABLE_LIST_ITEM_ACCORDION_VALUE as c } from "./expandable-list-item-context.js";
|
|
9
|
+
function N(e, t) {
|
|
10
|
+
return r(
|
|
11
|
+
"rounded-xl transition-[background-color,border-color,box-shadow] duration-200",
|
|
12
|
+
e ? "border-stroke-accent/40 bg-canvas-accent shadow-sm" : "border-stroke bg-canvas-elevated",
|
|
13
|
+
t
|
|
14
|
+
);
|
|
15
|
+
}
|
|
16
|
+
function V(e) {
|
|
17
|
+
return i.isValidElement(e) && e.type.displayName === "ExpandableListItemContent";
|
|
18
|
+
}
|
|
19
|
+
const D = i.forwardRef(
|
|
20
|
+
({
|
|
21
|
+
className: e,
|
|
22
|
+
selected: t,
|
|
23
|
+
expanded: a,
|
|
24
|
+
defaultExpanded: o = !1,
|
|
25
|
+
onExpandedChange: s,
|
|
26
|
+
disabled: l,
|
|
27
|
+
expandAriaLabel: m = "Expand details",
|
|
28
|
+
collapseAriaLabel: b = "Collapse details",
|
|
29
|
+
children: p,
|
|
30
|
+
...f
|
|
31
|
+
}, h) => {
|
|
32
|
+
const d = !!t, L = i.Children.toArray(p).find(V) != null, u = i.useMemo(
|
|
33
|
+
() => ({
|
|
34
|
+
showSelectionChrome: d,
|
|
35
|
+
disabled: l,
|
|
36
|
+
expandAriaLabel: m,
|
|
37
|
+
collapseAriaLabel: b
|
|
38
|
+
}),
|
|
39
|
+
[d, l, m, b]
|
|
40
|
+
);
|
|
41
|
+
if (!L)
|
|
42
|
+
return /* @__PURE__ */ n(E, { value: u, children: /* @__PURE__ */ n(
|
|
43
|
+
"div",
|
|
44
|
+
{
|
|
45
|
+
ref: h,
|
|
46
|
+
"data-component": "expandable-list-item-row",
|
|
47
|
+
"data-expandable": "false",
|
|
48
|
+
"data-selected": t ? "" : void 0,
|
|
49
|
+
"data-selection-chrome": d ? "" : void 0,
|
|
50
|
+
className: N(d, e),
|
|
51
|
+
...f,
|
|
52
|
+
children: p
|
|
53
|
+
}
|
|
54
|
+
) });
|
|
55
|
+
const g = a !== void 0, C = g ? a ? c : "" : void 0;
|
|
56
|
+
return /* @__PURE__ */ n(E, { value: u, children: /* @__PURE__ */ n(
|
|
57
|
+
"div",
|
|
58
|
+
{
|
|
59
|
+
ref: h,
|
|
60
|
+
"data-component": "expandable-list-item",
|
|
61
|
+
"data-expandable": "true",
|
|
62
|
+
"data-expanded": a ?? void 0,
|
|
63
|
+
"data-selected": t ? "" : void 0,
|
|
64
|
+
"data-selection-chrome": d ? "" : void 0,
|
|
65
|
+
className: N(d, e),
|
|
66
|
+
...f,
|
|
67
|
+
children: /* @__PURE__ */ n(
|
|
68
|
+
A,
|
|
69
|
+
{
|
|
70
|
+
type: "single",
|
|
71
|
+
collapsible: !0,
|
|
72
|
+
disabled: l,
|
|
73
|
+
...g ? { value: C } : {
|
|
74
|
+
defaultValue: o ? c : void 0
|
|
75
|
+
},
|
|
76
|
+
onValueChange: (w) => s?.(w === c),
|
|
77
|
+
children: /* @__PURE__ */ n(
|
|
78
|
+
k,
|
|
79
|
+
{
|
|
80
|
+
value: c,
|
|
81
|
+
className: "overflow-visible rounded-none border-0 bg-transparent p-0 shadow-none",
|
|
82
|
+
children: p
|
|
83
|
+
}
|
|
84
|
+
)
|
|
85
|
+
}
|
|
86
|
+
)
|
|
87
|
+
}
|
|
88
|
+
) });
|
|
89
|
+
}
|
|
90
|
+
);
|
|
91
|
+
D.displayName = "ExpandableListItemRoot";
|
|
92
|
+
const W = I("expandable-list-item", {
|
|
93
|
+
part: "row",
|
|
94
|
+
displayName: "ExpandableListItemRow",
|
|
95
|
+
className: "flex items-start gap-3 px-3 py-3"
|
|
96
|
+
}), M = i.forwardRef(({ className: e, onCheckedChange: t, ...a }, o) => /* @__PURE__ */ n(
|
|
97
|
+
"div",
|
|
98
|
+
{
|
|
99
|
+
className: r("pt-0.5", e),
|
|
100
|
+
"data-component": "expandable-list-item-checkbox",
|
|
101
|
+
onClick: (s) => s.stopPropagation(),
|
|
102
|
+
onKeyDown: (s) => s.stopPropagation(),
|
|
103
|
+
children: /* @__PURE__ */ n(
|
|
104
|
+
P,
|
|
105
|
+
{
|
|
106
|
+
ref: o,
|
|
107
|
+
onCheckedChange: (s) => t?.(s === !0),
|
|
108
|
+
...a
|
|
109
|
+
}
|
|
110
|
+
)
|
|
111
|
+
}
|
|
112
|
+
));
|
|
113
|
+
M.displayName = "ExpandableListItemCheckbox";
|
|
114
|
+
const S = i.forwardRef(({ className: e, children: t, ...a }, o) => {
|
|
115
|
+
const { disabled: s, expandAriaLabel: l, collapseAriaLabel: m } = x();
|
|
116
|
+
return /* @__PURE__ */ v(
|
|
117
|
+
T,
|
|
118
|
+
{
|
|
119
|
+
ref: o,
|
|
120
|
+
variant: "plain",
|
|
121
|
+
"data-component": "expandable-list-item-trigger",
|
|
122
|
+
className: r(
|
|
123
|
+
"min-w-0 items-center gap-2 text-left",
|
|
124
|
+
s && "pointer-events-none opacity-50",
|
|
125
|
+
e
|
|
126
|
+
),
|
|
127
|
+
disabled: s,
|
|
128
|
+
...a,
|
|
129
|
+
children: [
|
|
130
|
+
t,
|
|
131
|
+
/* @__PURE__ */ n(
|
|
132
|
+
"span",
|
|
133
|
+
{
|
|
134
|
+
className: "mt-0.5 inline-flex shrink-0 text-content-icon transition-transform duration-200 motion-reduce:transition-none group-data-[state=open]:rotate-180",
|
|
135
|
+
"aria-hidden": !0,
|
|
136
|
+
children: /* @__PURE__ */ n(y, { className: "size-4 rotate-90" })
|
|
137
|
+
}
|
|
138
|
+
),
|
|
139
|
+
/* @__PURE__ */ v("span", { className: "sr-only", children: [
|
|
140
|
+
l,
|
|
141
|
+
" / ",
|
|
142
|
+
m
|
|
143
|
+
] })
|
|
144
|
+
]
|
|
145
|
+
}
|
|
146
|
+
);
|
|
147
|
+
});
|
|
148
|
+
S.displayName = "ExpandableListItemTrigger";
|
|
149
|
+
const _ = i.forwardRef(({ className: e, ...t }, a) => {
|
|
150
|
+
const { showSelectionChrome: o } = x();
|
|
151
|
+
return /* @__PURE__ */ n(
|
|
152
|
+
"span",
|
|
153
|
+
{
|
|
154
|
+
ref: a,
|
|
155
|
+
"data-component": "expandable-list-item-title",
|
|
156
|
+
className: r(
|
|
157
|
+
"text-sm font-semibold leading-6 text-content",
|
|
158
|
+
o && "tracking-tight",
|
|
159
|
+
e
|
|
160
|
+
),
|
|
161
|
+
...t
|
|
162
|
+
}
|
|
163
|
+
);
|
|
164
|
+
});
|
|
165
|
+
_.displayName = "ExpandableListItemTitle";
|
|
166
|
+
const j = i.forwardRef(({ className: e, ...t }, a) => /* @__PURE__ */ n(
|
|
167
|
+
"div",
|
|
168
|
+
{
|
|
169
|
+
ref: a,
|
|
170
|
+
"data-component": "expandable-list-item-description",
|
|
171
|
+
className: r("mt-0.5 text-xs font-medium leading-4 text-secondary-foreground", e),
|
|
172
|
+
...t
|
|
173
|
+
}
|
|
174
|
+
));
|
|
175
|
+
j.displayName = "ExpandableListItemDescription";
|
|
176
|
+
const B = i.forwardRef(({ className: e, ...t }, a) => /* @__PURE__ */ n(
|
|
177
|
+
"div",
|
|
178
|
+
{
|
|
179
|
+
ref: a,
|
|
180
|
+
"data-component": "expandable-list-item-media",
|
|
181
|
+
className: r("flex flex-wrap items-center gap-2", e),
|
|
182
|
+
...t
|
|
183
|
+
}
|
|
184
|
+
));
|
|
185
|
+
B.displayName = "ExpandableListItemMedia";
|
|
186
|
+
const F = i.forwardRef(({ className: e, ...t }, a) => {
|
|
187
|
+
const { disabled: o } = x();
|
|
188
|
+
return /* @__PURE__ */ n(
|
|
189
|
+
"div",
|
|
190
|
+
{
|
|
191
|
+
ref: a,
|
|
192
|
+
"data-component": "expandable-list-item-header",
|
|
193
|
+
className: r(
|
|
194
|
+
"min-w-0 flex-1",
|
|
195
|
+
o && "pointer-events-none opacity-50",
|
|
196
|
+
e
|
|
197
|
+
),
|
|
198
|
+
...t
|
|
199
|
+
}
|
|
200
|
+
);
|
|
201
|
+
});
|
|
202
|
+
F.displayName = "ExpandableListItemHeader";
|
|
203
|
+
const H = i.forwardRef(({ className: e, children: t, ...a }, o) => /* @__PURE__ */ n(R, { className: "border-0 bg-transparent p-0 pb-[0.01rem]", children: /* @__PURE__ */ n(
|
|
204
|
+
"div",
|
|
205
|
+
{
|
|
206
|
+
ref: o,
|
|
207
|
+
"data-component": "expandable-list-item-content",
|
|
208
|
+
className: r(
|
|
209
|
+
"mx-2 mb-2 overflow-hidden rounded-lg bg-canvas-subtle pt-2",
|
|
210
|
+
e
|
|
211
|
+
),
|
|
212
|
+
...a,
|
|
213
|
+
children: t
|
|
214
|
+
}
|
|
215
|
+
) }));
|
|
216
|
+
H.displayName = "ExpandableListItemContent";
|
|
217
|
+
const Y = I("expandable-list-item", {
|
|
218
|
+
part: "footer",
|
|
219
|
+
displayName: "ExpandableListItemFooter",
|
|
220
|
+
className: "px-4 py-3 sm:px-5"
|
|
221
|
+
});
|
|
222
|
+
export {
|
|
223
|
+
M as ExpandableListItemCheckbox,
|
|
224
|
+
H as ExpandableListItemContent,
|
|
225
|
+
j as ExpandableListItemDescription,
|
|
226
|
+
Y as ExpandableListItemFooter,
|
|
227
|
+
F as ExpandableListItemHeader,
|
|
228
|
+
B as ExpandableListItemMedia,
|
|
229
|
+
D as ExpandableListItemRoot,
|
|
230
|
+
W as ExpandableListItemRow,
|
|
231
|
+
_ as ExpandableListItemTitle,
|
|
232
|
+
S as ExpandableListItemTrigger
|
|
233
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ExpandableListItemSection, ExpandableListItemSelection } from './expandable-list-item.types';
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
export interface ExpandableListItemProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "children" | "onChange"> {
|
|
4
|
+
title: string;
|
|
5
|
+
description?: React.ReactNode;
|
|
6
|
+
badge?: React.ReactNode;
|
|
7
|
+
selection?: ExpandableListItemSelection;
|
|
8
|
+
selected?: boolean;
|
|
9
|
+
expanded?: boolean;
|
|
10
|
+
defaultExpanded?: boolean;
|
|
11
|
+
onExpandedChange?: (open: boolean) => void;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
sections?: ReadonlyArray<ExpandableListItemSection>;
|
|
14
|
+
panelFooter?: React.ReactNode;
|
|
15
|
+
expandAriaLabel?: string;
|
|
16
|
+
collapseAriaLabel?: string;
|
|
17
|
+
}
|
|
18
|
+
export declare const ExpandableListItem: React.ForwardRefExoticComponent<ExpandableListItemProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { jsx as l, jsxs as d } from "react/jsx-runtime";
|
|
2
|
+
import * as R from "react";
|
|
3
|
+
import { ExpandableListItemAttributes as T } from "./expandable-list-item-attributes.js";
|
|
4
|
+
import { ExpandableListItemMetrics as v } from "./expandable-list-item-metrics.js";
|
|
5
|
+
import { ExpandableListItemRoot as f, ExpandableListItemRow as o, ExpandableListItemCheckbox as C, ExpandableListItemHeader as E, ExpandableListItemMedia as I, ExpandableListItemTitle as k, ExpandableListItemDescription as L, ExpandableListItemTrigger as y, ExpandableListItemContent as j, ExpandableListItemFooter as M } from "./expandable-list-item-parts.js";
|
|
6
|
+
function O(e) {
|
|
7
|
+
switch (e.type) {
|
|
8
|
+
case "metrics":
|
|
9
|
+
return /* @__PURE__ */ l(
|
|
10
|
+
v,
|
|
11
|
+
{
|
|
12
|
+
sectionId: e.id,
|
|
13
|
+
columns: e.columns
|
|
14
|
+
},
|
|
15
|
+
e.id
|
|
16
|
+
);
|
|
17
|
+
case "attributes":
|
|
18
|
+
return /* @__PURE__ */ l(
|
|
19
|
+
T,
|
|
20
|
+
{
|
|
21
|
+
title: e.title,
|
|
22
|
+
tags: e.tags,
|
|
23
|
+
maxVisibleTags: e.maxVisibleTags,
|
|
24
|
+
formatOverflow: e.formatOverflow
|
|
25
|
+
},
|
|
26
|
+
e.id
|
|
27
|
+
);
|
|
28
|
+
case "custom":
|
|
29
|
+
return /* @__PURE__ */ l(V, { section: e }, e.id);
|
|
30
|
+
default:
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
function V({ section: e }) {
|
|
35
|
+
return /* @__PURE__ */ l("div", { className: "px-4 py-4 sm:px-5", children: e.content });
|
|
36
|
+
}
|
|
37
|
+
const $ = R.forwardRef(
|
|
38
|
+
({
|
|
39
|
+
className: e,
|
|
40
|
+
title: t,
|
|
41
|
+
description: n,
|
|
42
|
+
badge: m,
|
|
43
|
+
selection: a,
|
|
44
|
+
selected: g,
|
|
45
|
+
expanded: w,
|
|
46
|
+
defaultExpanded: S = !1,
|
|
47
|
+
onExpandedChange: P,
|
|
48
|
+
disabled: c,
|
|
49
|
+
sections: i,
|
|
50
|
+
panelFooter: h,
|
|
51
|
+
expandAriaLabel: s = "Expand details",
|
|
52
|
+
collapseAriaLabel: u = "Collapse details",
|
|
53
|
+
...b
|
|
54
|
+
}, p) => {
|
|
55
|
+
const x = !!(g || a?.checked);
|
|
56
|
+
return i != null && i.length > 0 || h != null ? /* @__PURE__ */ d(
|
|
57
|
+
f,
|
|
58
|
+
{
|
|
59
|
+
ref: p,
|
|
60
|
+
className: e,
|
|
61
|
+
selected: x,
|
|
62
|
+
expanded: w,
|
|
63
|
+
defaultExpanded: S,
|
|
64
|
+
onExpandedChange: P,
|
|
65
|
+
disabled: c,
|
|
66
|
+
expandAriaLabel: s,
|
|
67
|
+
collapseAriaLabel: u,
|
|
68
|
+
...b,
|
|
69
|
+
children: [
|
|
70
|
+
/* @__PURE__ */ d(o, { children: [
|
|
71
|
+
a ? /* @__PURE__ */ l(
|
|
72
|
+
C,
|
|
73
|
+
{
|
|
74
|
+
checked: a.checked,
|
|
75
|
+
disabled: a.disabled,
|
|
76
|
+
onCheckedChange: (r) => {
|
|
77
|
+
r !== a.checked && a.onCheckedChange(r);
|
|
78
|
+
},
|
|
79
|
+
"aria-label": a["aria-label"] ?? `Select ${t}`
|
|
80
|
+
}
|
|
81
|
+
) : null,
|
|
82
|
+
/* @__PURE__ */ l(y, { children: /* @__PURE__ */ d(E, { children: [
|
|
83
|
+
/* @__PURE__ */ d(I, { children: [
|
|
84
|
+
/* @__PURE__ */ l(k, { children: t }),
|
|
85
|
+
m
|
|
86
|
+
] }),
|
|
87
|
+
n ? /* @__PURE__ */ l(L, { children: n }) : null
|
|
88
|
+
] }) })
|
|
89
|
+
] }),
|
|
90
|
+
/* @__PURE__ */ d(j, { children: [
|
|
91
|
+
i?.map((r) => O(r)),
|
|
92
|
+
h ? /* @__PURE__ */ l(M, { children: h }) : null
|
|
93
|
+
] })
|
|
94
|
+
]
|
|
95
|
+
}
|
|
96
|
+
) : /* @__PURE__ */ l(
|
|
97
|
+
f,
|
|
98
|
+
{
|
|
99
|
+
ref: p,
|
|
100
|
+
className: e,
|
|
101
|
+
selected: x,
|
|
102
|
+
disabled: c,
|
|
103
|
+
expandAriaLabel: s,
|
|
104
|
+
collapseAriaLabel: u,
|
|
105
|
+
...b,
|
|
106
|
+
children: /* @__PURE__ */ d(o, { children: [
|
|
107
|
+
a ? /* @__PURE__ */ l(
|
|
108
|
+
C,
|
|
109
|
+
{
|
|
110
|
+
checked: a.checked,
|
|
111
|
+
disabled: a.disabled,
|
|
112
|
+
onCheckedChange: (r) => {
|
|
113
|
+
r !== a.checked && a.onCheckedChange(r);
|
|
114
|
+
},
|
|
115
|
+
"aria-label": a["aria-label"] ?? `Select ${t}`
|
|
116
|
+
}
|
|
117
|
+
) : null,
|
|
118
|
+
/* @__PURE__ */ d(E, { children: [
|
|
119
|
+
/* @__PURE__ */ d(I, { children: [
|
|
120
|
+
/* @__PURE__ */ l(k, { children: t }),
|
|
121
|
+
m
|
|
122
|
+
] }),
|
|
123
|
+
n ? /* @__PURE__ */ l(L, { children: n }) : null
|
|
124
|
+
] })
|
|
125
|
+
] })
|
|
126
|
+
}
|
|
127
|
+
);
|
|
128
|
+
}
|
|
129
|
+
);
|
|
130
|
+
$.displayName = "ExpandableListItem";
|
|
131
|
+
export {
|
|
132
|
+
$ as ExpandableListItem
|
|
133
|
+
};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { ExpandableListItem, type ExpandableListItemProps, } from './expandable-list-item-preset';
|
|
2
|
+
export { ExpandableListItemRoot, ExpandableListItemRow, ExpandableListItemCheckbox, ExpandableListItemTrigger, ExpandableListItemTitle, ExpandableListItemDescription, ExpandableListItemMedia, ExpandableListItemHeader, ExpandableListItemContent, ExpandableListItemFooter, type ExpandableListItemRootProps, type ExpandableListItemCheckboxProps, } from './expandable-list-item-parts';
|
|
3
|
+
export { ExpandableListItemMetrics, type ExpandableListItemMetricsProps } from './expandable-list-item-metrics';
|
|
4
|
+
export { ExpandableListItemAttributes, type ExpandableListItemAttributesProps, } from './expandable-list-item-attributes';
|
|
5
|
+
export type { ExpandableListItemAttributesSection, ExpandableListItemCustomSection, ExpandableListItemMetricColumn, ExpandableListItemMetricsSection, ExpandableListItemSelection, ExpandableListItemSection, } from './expandable-list-item.types';
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
-
export type
|
|
2
|
+
export type ExpandableListItemMetricColumn = {
|
|
3
3
|
label: string;
|
|
4
4
|
value: string;
|
|
5
5
|
};
|
|
6
6
|
/** Horizontal metrics row (any column count). */
|
|
7
|
-
export type
|
|
7
|
+
export type ExpandableListItemMetricsSection = {
|
|
8
8
|
id: string;
|
|
9
9
|
type: "metrics";
|
|
10
|
-
columns: ReadonlyArray<
|
|
10
|
+
columns: ReadonlyArray<ExpandableListItemMetricColumn>;
|
|
11
11
|
};
|
|
12
12
|
/** Tag pills with optional overflow summary (e.g. `+64`). */
|
|
13
|
-
export type
|
|
13
|
+
export type ExpandableListItemAttributesSection = {
|
|
14
14
|
id: string;
|
|
15
15
|
type: "attributes";
|
|
16
16
|
title?: string;
|
|
@@ -21,13 +21,13 @@ export type SkuRowAttributesSection = {
|
|
|
21
21
|
formatOverflow?: (hiddenCount: number) => string;
|
|
22
22
|
};
|
|
23
23
|
/** Arbitrary block inside the expanded panel. */
|
|
24
|
-
export type
|
|
24
|
+
export type ExpandableListItemCustomSection = {
|
|
25
25
|
id: string;
|
|
26
26
|
type: "custom";
|
|
27
27
|
content: ReactNode;
|
|
28
28
|
};
|
|
29
|
-
export type
|
|
30
|
-
export type
|
|
29
|
+
export type ExpandableListItemSection = ExpandableListItemMetricsSection | ExpandableListItemAttributesSection | ExpandableListItemCustomSection;
|
|
30
|
+
export type ExpandableListItemSelection = {
|
|
31
31
|
checked: boolean;
|
|
32
32
|
onCheckedChange: (checked: boolean) => void;
|
|
33
33
|
disabled?: boolean;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { ExpandableListItem, type ExpandableListItemProps, } from './expandable-list-item-preset';
|
|
2
|
+
export { ExpandableListItemRoot, ExpandableListItemRow, ExpandableListItemCheckbox, ExpandableListItemTrigger, ExpandableListItemTitle, ExpandableListItemDescription, ExpandableListItemMedia, ExpandableListItemHeader, ExpandableListItemContent, ExpandableListItemFooter, type ExpandableListItemRootProps, type ExpandableListItemCheckboxProps, } from './expandable-list-item-parts';
|
|
3
|
+
export { ExpandableListItemMetrics, type ExpandableListItemMetricsProps } from './expandable-list-item-metrics';
|
|
4
|
+
export { ExpandableListItemAttributes, type ExpandableListItemAttributesProps, } from './expandable-list-item-attributes';
|
|
5
|
+
export type { ExpandableListItemAttributesSection, ExpandableListItemCustomSection, ExpandableListItemMetricColumn, ExpandableListItemMetricsSection, ExpandableListItemSelection, ExpandableListItemSection, } from './expandable-list-item.types';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ExpandableListItem as a } from "./expandable-list-item-preset.js";
|
|
2
|
+
import { ExpandableListItemCheckbox as p, ExpandableListItemContent as x, ExpandableListItemDescription as m, ExpandableListItemFooter as n, ExpandableListItemHeader as o, ExpandableListItemMedia as s, ExpandableListItemRoot as b, ExpandableListItemRow as d, ExpandableListItemTitle as r, ExpandableListItemTrigger as l } from "./expandable-list-item-parts.js";
|
|
3
|
+
import { ExpandableListItemMetrics as I } from "./expandable-list-item-metrics.js";
|
|
4
|
+
import { ExpandableListItemAttributes as f } from "./expandable-list-item-attributes.js";
|
|
5
|
+
export {
|
|
6
|
+
a as ExpandableListItem,
|
|
7
|
+
f as ExpandableListItemAttributes,
|
|
8
|
+
p as ExpandableListItemCheckbox,
|
|
9
|
+
x as ExpandableListItemContent,
|
|
10
|
+
m as ExpandableListItemDescription,
|
|
11
|
+
n as ExpandableListItemFooter,
|
|
12
|
+
o as ExpandableListItemHeader,
|
|
13
|
+
s as ExpandableListItemMedia,
|
|
14
|
+
I as ExpandableListItemMetrics,
|
|
15
|
+
b as ExpandableListItemRoot,
|
|
16
|
+
d as ExpandableListItemRow,
|
|
17
|
+
r as ExpandableListItemTitle,
|
|
18
|
+
l as ExpandableListItemTrigger
|
|
19
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as t, jsxs as o } from "react/jsx-runtime";
|
|
2
2
|
import "react";
|
|
3
|
-
import { Checkbox as
|
|
4
|
-
import { Input as
|
|
3
|
+
import { Checkbox as v } from "../../../forms/checkbox/checkbox.js";
|
|
4
|
+
import { Input as N } from "../../../forms/input/input.js";
|
|
5
5
|
import { ChevronRight as k, Search as g } from "impact-nova-icons";
|
|
6
6
|
import { cn as C } from "../../../../lib/utils.js";
|
|
7
7
|
import { useImpactNovaI18n as z } from "../../../../i18n/use-impact-nova-i18n.js";
|
|
@@ -12,8 +12,8 @@ const E = ({
|
|
|
12
12
|
enableSearch: n,
|
|
13
13
|
enableSelectAll: e,
|
|
14
14
|
groupLabel: i,
|
|
15
|
-
allChecked:
|
|
16
|
-
isIndeterminate:
|
|
15
|
+
allChecked: a,
|
|
16
|
+
isIndeterminate: m = !1,
|
|
17
17
|
onSelectAll: d,
|
|
18
18
|
searchText: x,
|
|
19
19
|
onSearchChange: l,
|
|
@@ -28,7 +28,7 @@ const E = ({
|
|
|
28
28
|
{
|
|
29
29
|
type: "button",
|
|
30
30
|
onClick: y,
|
|
31
|
-
className: "p-1 hover:bg-muted rounded-full transition-colors flex items-center text-content-icon hover:text-brand",
|
|
31
|
+
className: "p-1 hover:bg-canvas-muted rounded-full transition-colors flex items-center text-content-icon hover:text-brand",
|
|
32
32
|
"aria-label": u(c ? "nestedList.expandAll" : "nestedList.collapseAll"),
|
|
33
33
|
children: /* @__PURE__ */ t(
|
|
34
34
|
k,
|
|
@@ -46,14 +46,14 @@ const E = ({
|
|
|
46
46
|
] }),
|
|
47
47
|
/* @__PURE__ */ o("div", { className: "flex items-center gap-1", children: [
|
|
48
48
|
e && /* @__PURE__ */ t(
|
|
49
|
-
|
|
49
|
+
v,
|
|
50
50
|
{
|
|
51
|
-
checked:
|
|
51
|
+
checked: m ? "indeterminate" : a,
|
|
52
52
|
onCheckedChange: d
|
|
53
53
|
}
|
|
54
54
|
),
|
|
55
55
|
n ? /* @__PURE__ */ t("div", { className: "flex-1 ml-auto", children: /* @__PURE__ */ t(
|
|
56
|
-
|
|
56
|
+
N,
|
|
57
57
|
{
|
|
58
58
|
type: "text",
|
|
59
59
|
placeholder: p,
|
|
@@ -66,14 +66,14 @@ const E = ({
|
|
|
66
66
|
] }) : /* @__PURE__ */ o("div", { className: "flex items-center gap-1 mb-3", children: [
|
|
67
67
|
s && r && h,
|
|
68
68
|
e && /* @__PURE__ */ t(
|
|
69
|
-
|
|
69
|
+
v,
|
|
70
70
|
{
|
|
71
|
-
checked:
|
|
71
|
+
checked: m ? "indeterminate" : a,
|
|
72
72
|
onCheckedChange: d
|
|
73
73
|
}
|
|
74
74
|
),
|
|
75
75
|
n ? /* @__PURE__ */ t("div", { className: "flex-1 ml-auto", children: /* @__PURE__ */ t(
|
|
76
|
-
|
|
76
|
+
N,
|
|
77
77
|
{
|
|
78
78
|
type: "text",
|
|
79
79
|
placeholder: p,
|
|
@@ -102,7 +102,7 @@ const E = (e, r) => {
|
|
|
102
102
|
d.stopPropagation(), i(e.id);
|
|
103
103
|
},
|
|
104
104
|
onMouseDown: (d) => d.stopPropagation(),
|
|
105
|
-
className: "flex h-4 w-4 items-center justify-center rounded-full p-0 hover:bg-muted transition-colors text-content-icon hover:text-brand",
|
|
105
|
+
className: "flex h-4 w-4 items-center justify-center rounded-full p-0 hover:bg-canvas-muted transition-colors text-content-icon hover:text-brand",
|
|
106
106
|
"aria-label": h(a ? "nestedList.expand" : "nestedList.collapse"),
|
|
107
107
|
children: /* @__PURE__ */ t(
|
|
108
108
|
P,
|
|
@@ -130,7 +130,7 @@ const E = (e, r) => {
|
|
|
130
130
|
...C,
|
|
131
131
|
...I,
|
|
132
132
|
"aria-label": `${h("aria.dragHandle")}: ${e.label}`,
|
|
133
|
-
className: "shrink-0 mt-0.5 cursor-grab active:cursor-grabbing p-0 hover:bg-muted rounded flex items-center h-4",
|
|
133
|
+
className: "shrink-0 mt-0.5 cursor-grab active:cursor-grabbing p-0 hover:bg-canvas-muted rounded flex items-center h-4",
|
|
134
134
|
style: {
|
|
135
135
|
pointerEvents: "auto",
|
|
136
136
|
position: "relative",
|
|
@@ -3,5 +3,7 @@ import { avatarVariants } from './avatar.variants';
|
|
|
3
3
|
import type * as React from "react";
|
|
4
4
|
import type * as AvatarPrimitive from "@radix-ui/react-avatar";
|
|
5
5
|
export type AvatarProps = React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Root> & VariantProps<typeof avatarVariants>;
|
|
6
|
+
/** Image slot — Radix `Avatar.Image`. Cross-fades to `AvatarFallback` on load failure. */
|
|
6
7
|
export type AvatarImageProps = React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Image>;
|
|
8
|
+
/** Shown when the image is loading or failed. Use 1–2 initials or an icon. */
|
|
7
9
|
export type AvatarFallbackProps = React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Fallback>;
|
|
@@ -2,6 +2,8 @@ import { VariantProps } from 'class-variance-authority';
|
|
|
2
2
|
import { badgeVariants } from './badge.variants';
|
|
3
3
|
import type * as React from "react";
|
|
4
4
|
export interface BadgeProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "color">, Omit<VariantProps<typeof badgeVariants>, "layout"> {
|
|
5
|
+
/** Optional leading icon (16px). Omit `children` for icon-only badge (`data-layout="iconOnly"`). */
|
|
5
6
|
icon?: React.ReactNode;
|
|
7
|
+
/** Inactive visual — `pointer-events-none` and disabled token colors. */
|
|
6
8
|
disabled?: boolean;
|
|
7
9
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "react-day-picker";
|
|
2
2
|
import { cn as e } from "../../../lib/utils.js";
|
|
3
3
|
function s(o) {
|
|
4
|
-
const { defaultClassNames: t, pickerType:
|
|
4
|
+
const { defaultClassNames: t, pickerType: r, calendarType: l, showOutsideDays: a, classNames: n } = o;
|
|
5
5
|
return {
|
|
6
6
|
root: e("w-fit", t.root),
|
|
7
7
|
months: e("relative", t.months),
|
|
@@ -33,39 +33,39 @@ function s(o) {
|
|
|
33
33
|
),
|
|
34
34
|
weekday: e(
|
|
35
35
|
"flex-1 select-none rounded-md font-normal text-center",
|
|
36
|
-
"text-[11px] text-
|
|
36
|
+
"text-[11px] text-secondary-foreground pb-2",
|
|
37
37
|
"[&:nth-child(2)]:pl-2",
|
|
38
38
|
t.weekday
|
|
39
39
|
),
|
|
40
40
|
week: e("mt-1 flex w-full items-stretch group/week", t.week),
|
|
41
41
|
week_number_header: e(
|
|
42
42
|
"select-none font-normal text-center h-[30px] flex items-center justify-center",
|
|
43
|
-
"text-[11px] text-
|
|
43
|
+
"text-[11px] text-secondary-foreground w-[30px] flex-shrink-0",
|
|
44
44
|
t.week_number_header
|
|
45
45
|
),
|
|
46
46
|
week_number: e(
|
|
47
47
|
"select-none flex items-center justify-center h-[30px]",
|
|
48
|
-
"text-[11px] text-
|
|
49
|
-
|
|
48
|
+
"text-[11px] text-secondary-foreground w-[30px] flex-shrink-0 transition-colors",
|
|
49
|
+
r === "week" && "group-hover/week:bg-accent group-hover/week:rounded-l-lg",
|
|
50
50
|
t.week_number
|
|
51
51
|
),
|
|
52
52
|
day: e(
|
|
53
53
|
"group/day relative select-none p-0 text-center flex-1 h-[30px] flex items-center justify-center [&:nth-child(2)]:pl-2 rdp-day",
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
r === "week" && "group-hover/week:bg-accent [&:nth-child(2)]:group-hover/week:rounded-l-full [&:nth-child(8)]:group-hover/week:rounded-r-full",
|
|
55
|
+
r === "week" && "[&.rdp-selected:nth-child(2)]:rounded-l-full [&.rdp-selected:nth-child(8)]:rounded-r-full",
|
|
56
|
+
n?.day
|
|
57
57
|
),
|
|
58
58
|
range_start: e("bg-accent rounded-l-full", t.range_start),
|
|
59
59
|
range_middle: e("bg-accent rounded-none", t.range_middle),
|
|
60
60
|
range_end: e("bg-accent rounded-r-full", t.range_end),
|
|
61
61
|
today: e("text-brand", t.today),
|
|
62
62
|
outside: e(
|
|
63
|
-
l === "fiscal" || a ? "text-
|
|
63
|
+
l === "fiscal" || a ? "text-secondary-foreground opacity-50" : "invisible",
|
|
64
64
|
t.outside
|
|
65
65
|
),
|
|
66
|
-
disabled: e("text-
|
|
66
|
+
disabled: e("text-secondary-foreground opacity-50", t.disabled),
|
|
67
67
|
hidden: e("invisible", t.hidden),
|
|
68
|
-
...
|
|
68
|
+
...n
|
|
69
69
|
};
|
|
70
70
|
}
|
|
71
71
|
export {
|
|
@@ -7,7 +7,7 @@ import { isMonthRangeSelection as q } from "../../forms/date-picker/calendar-sel
|
|
|
7
7
|
function K({
|
|
8
8
|
yearOffset: s = 0,
|
|
9
9
|
displayYear: e,
|
|
10
|
-
monthMode:
|
|
10
|
+
monthMode: h,
|
|
11
11
|
monthsShort: N,
|
|
12
12
|
showFooter: p,
|
|
13
13
|
pendingMonthSelection: w,
|
|
@@ -15,7 +15,7 @@ function K({
|
|
|
15
15
|
resolvedStartYear: S,
|
|
16
16
|
resolvedEndYear: j,
|
|
17
17
|
yearOptions: k,
|
|
18
|
-
previousYearLabel:
|
|
18
|
+
previousYearLabel: u,
|
|
19
19
|
nextYearLabel: g,
|
|
20
20
|
isMonthSelected: z,
|
|
21
21
|
getMonthRangeProps: R,
|
|
@@ -33,8 +33,8 @@ function K({
|
|
|
33
33
|
variant: "ghost",
|
|
34
34
|
size: "icon",
|
|
35
35
|
className: "h-7 w-7 shrink-0",
|
|
36
|
-
"aria-label":
|
|
37
|
-
title:
|
|
36
|
+
"aria-label": u,
|
|
37
|
+
title: u,
|
|
38
38
|
disabled: e <= S,
|
|
39
39
|
onClick: () => P(e),
|
|
40
40
|
children: /* @__PURE__ */ t(v, { size: 16, className: "rotate-180" })
|
|
@@ -54,7 +54,7 @@ function K({
|
|
|
54
54
|
menuWidth: "140px"
|
|
55
55
|
}
|
|
56
56
|
) }),
|
|
57
|
-
(
|
|
57
|
+
(h === "single" || s === 1) && /* @__PURE__ */ t(
|
|
58
58
|
m,
|
|
59
59
|
{
|
|
60
60
|
variant: "ghost",
|
|
@@ -69,7 +69,7 @@ function K({
|
|
|
69
69
|
)
|
|
70
70
|
] }),
|
|
71
71
|
/* @__PURE__ */ t("div", { className: "grid grid-cols-4 gap-x-0 gap-y-4", children: N.map((r, o) => {
|
|
72
|
-
const f = z(e, o), { isStart: l, isEnd: i, isMiddle: a } = R(e, o), c =
|
|
72
|
+
const f = z(e, o), { isStart: l, isEnd: i, isMiddle: a } = R(e, o), c = h === "range", b = p ? w : C, I = q(b) && !!b.to, n = M(e, o);
|
|
73
73
|
return /* @__PURE__ */ d("div", { className: "group relative flex h-10 w-full items-center justify-center", children: [
|
|
74
74
|
c && I && (a || l || i) && !n && /* @__PURE__ */ t(
|
|
75
75
|
"div",
|
|
@@ -95,7 +95,7 @@ function K({
|
|
|
95
95
|
c && (l || i) && !n && "rounded-lg bg-brand text-brand-foreground hover:bg-brand/90 hover:text-brand-foreground",
|
|
96
96
|
!f && !n && "border border-transparent hover:border-brand hover:bg-accent hover:text-accent-foreground",
|
|
97
97
|
a && !n && "text-accent-foreground",
|
|
98
|
-
n && "cursor-not-allowed text-content-
|
|
98
|
+
n && "cursor-not-allowed text-content-placeholder opacity-50"
|
|
99
99
|
),
|
|
100
100
|
children: r
|
|
101
101
|
}
|