@uisatin/ui 0.3.0 → 0.5.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/CHANGELOG.md +19 -0
- package/{chunk-NQL6SIIB.js → chunk-2643HEXD.js} +1 -1
- package/{chunk-UZ4DXU6W.js → chunk-3VVO5MY5.js} +4 -4
- package/{chunk-EF5GT4OG.js → chunk-47DDBME3.js} +3 -3
- package/{chunk-JBKBRAC4.js → chunk-5663JVE5.js} +3 -3
- package/chunk-67CBFB6Y.js +99 -0
- package/{chunk-T6L32XXH.js → chunk-6DWLTGRQ.js} +30 -7
- package/{chunk-S7QHBVPX.js → chunk-6GNMUJQ4.js} +3 -3
- package/{chunk-Z7S2KQZS.js → chunk-6JTSZAGO.js} +1 -1
- package/chunk-6RLSRMB5.js +14 -0
- package/{chunk-GI2SMFZL.js → chunk-6Y6CY2DP.js} +1 -1
- package/{chunk-XUOSJMEJ.js → chunk-7NV53EL5.js} +1 -1
- package/{chunk-LFGUJHFF.js → chunk-7SVMERPH.js} +2 -2
- package/chunk-A52HUWVM.js +24 -0
- package/chunk-AKEZCWNW.js +29 -0
- package/{chunk-NH3EHMIL.js → chunk-APRVUOD6.js} +1 -1
- package/{chunk-DPYIBFQD.js → chunk-C435UD7V.js} +4 -3
- package/{chunk-5XTUFBZI.js → chunk-C6WRJ7DG.js} +1 -1
- package/{chunk-X66KTATQ.js → chunk-CQFAMWZI.js} +2 -2
- package/{chunk-YJK4MGSI.js → chunk-DAKVTPYZ.js} +4 -4
- package/{chunk-W472DBMT.js → chunk-DMZW4LGU.js} +3 -3
- package/chunk-EBZHGRM5.js +46 -0
- package/{chunk-O46O6LFQ.js → chunk-EHEXE2UV.js} +20 -1
- package/{chunk-UCCNXGLG.js → chunk-EQAFDIPE.js} +9 -7
- package/{chunk-LB37KTJH.js → chunk-EXKSKYG3.js} +2 -2
- package/chunk-FB6DG3LR.js +35 -0
- package/chunk-GH2DEOGO.js +67 -0
- package/{chunk-J7RMFN54.js → chunk-GKDMCY2S.js} +1 -1
- package/chunk-GTFUAA6H.js +42 -0
- package/{chunk-SAYNV7B3.js → chunk-HI6QIG55.js} +4 -4
- package/{chunk-SDOTDMYG.js → chunk-HZV7EXGU.js} +2 -2
- package/{chunk-RHQHDYTE.js → chunk-IKJIR6VL.js} +2 -2
- package/{chunk-ISYKZCPJ.js → chunk-INJWE2LD.js} +2 -2
- package/chunk-J5UQPROI.js +56 -0
- package/{chunk-5725MFGQ.js → chunk-JCR5TWTF.js} +4 -4
- package/chunk-JKOBDLP3.js +25 -0
- package/{chunk-FAJ3OVL4.js → chunk-JR3VVDV6.js} +1 -1
- package/{chunk-CVNRZ2YV.js → chunk-JYGCZWET.js} +1 -1
- package/{chunk-SPGUZMCC.js → chunk-K5G5OEV5.js} +2 -2
- package/{chunk-GMETYACH.js → chunk-KDU7AT2T.js} +2 -2
- package/chunk-KITXKIYW.js +104 -0
- package/{chunk-JYOZUQNU.js → chunk-KQNA22D3.js} +2 -2
- package/{chunk-OURZQM27.js → chunk-L5PPN42A.js} +11 -4
- package/{chunk-HK6WINL6.js → chunk-LAOE6Y57.js} +3 -3
- package/{chunk-ZBZ3ZQRB.js → chunk-LI5VYDLN.js} +4 -4
- package/{chunk-M2HEVFQ3.js → chunk-LKSFTNPF.js} +1 -1
- package/chunk-LLW3X4ZJ.js +39 -0
- package/{chunk-5KTBSMQU.js → chunk-LWRB4DED.js} +1 -1
- package/{chunk-LB7Z6BSK.js → chunk-M7RILZVW.js} +6 -6
- package/{chunk-674SRBZK.js → chunk-MOGWOUCN.js} +3 -3
- package/chunk-NCIRJ5V2.js +108 -0
- package/{chunk-SSOFFQ5T.js → chunk-NTSU44FY.js} +8 -1
- package/{chunk-BR2B4OIT.js → chunk-P36KBUYD.js} +3 -3
- package/{chunk-3DHJXU45.js → chunk-P6RHT2VM.js} +1 -1
- package/{chunk-WLQD5BN2.js → chunk-PD2KD5OR.js} +1 -1
- package/{chunk-OVKPPXK5.js → chunk-PP46SY7M.js} +2 -2
- package/{chunk-FB5HTCO2.js → chunk-PTK4QAOQ.js} +4 -4
- package/{chunk-IKO3GQFE.js → chunk-Q7KVC5B4.js} +3 -3
- package/{chunk-UUCVRIVP.js → chunk-R3DTMBDT.js} +3 -3
- package/{chunk-UGIVCXGN.js → chunk-R4KPFBMK.js} +1 -1
- package/{chunk-XH56JGYC.js → chunk-R5TQ3HNB.js} +1 -1
- package/chunk-RFSPJECL.js +84 -0
- package/chunk-RPL6FRVX.js +88 -0
- package/{chunk-SZJIVBOD.js → chunk-STYOBAC7.js} +3 -3
- package/{chunk-W4RDTP6W.js → chunk-SVUWR3HD.js} +3 -3
- package/{chunk-7Q76HLRQ.js → chunk-T7P3OEBP.js} +4 -4
- package/{chunk-TT2N5752.js → chunk-TB3ZRV3Y.js} +2 -2
- package/{chunk-BN7FDKCJ.js → chunk-TOY6YPTG.js} +2 -2
- package/{chunk-PHNR6ZQ7.js → chunk-U6X6ODDJ.js} +2 -2
- package/{chunk-6VKV36OK.js → chunk-UAJ6M34K.js} +4 -4
- package/{chunk-PD6YPFYN.js → chunk-W2EH6RY5.js} +1 -1
- package/{chunk-X2GNMNZQ.js → chunk-W2QQQWNE.js} +2 -2
- package/{chunk-JCXI7VQL.js → chunk-WALANB3V.js} +2 -2
- package/{chunk-NL574STL.js → chunk-WCUR44O6.js} +2 -2
- package/{chunk-PUWSL5XW.js → chunk-WJYJMX5S.js} +1 -1
- package/{chunk-AIMQNLPY.js → chunk-WZSLDYUU.js} +6 -29
- package/chunk-XU6JJDMZ.js +117 -0
- package/{chunk-57QEOCDZ.js → chunk-XWPH7C2W.js} +1 -1
- package/{chunk-73Z7NMQQ.js → chunk-YXWXSRXG.js} +5 -5
- package/{chunk-CGOH5IYX.js → chunk-YY236ZSJ.js} +3 -3
- package/components/accordion.js +2 -2
- package/components/action-button.d.ts +37 -0
- package/components/action-button.js +5 -0
- package/components/agent-loading.js +2 -2
- package/components/agent-picker.js +5 -4
- package/components/agent-suggestion.js +5 -5
- package/components/alert.d.ts +37 -0
- package/components/alert.js +5 -0
- package/components/announcement-bar.js +6 -5
- package/components/attachment.js +5 -4
- package/components/avatar.js +4 -4
- package/components/badge.js +2 -2
- package/components/banner.d.ts +3 -2
- package/components/banner.js +5 -3
- package/components/bar-chart.js +9 -9
- package/components/breadcrumb.js +5 -5
- package/components/button-group.d.ts +26 -0
- package/components/button-group.js +5 -0
- package/components/button.d.ts +13 -1
- package/components/button.js +4 -2
- package/components/card.js +5 -3
- package/components/channel-chart.js +9 -9
- package/components/chart.js +8 -8
- package/components/checkbox.js +2 -2
- package/components/chip.js +2 -2
- package/components/citations.js +4 -4
- package/components/code-block.js +5 -3
- package/components/combobox.js +10 -9
- package/components/command-menu.js +5 -5
- package/components/context-menu.js +5 -5
- package/components/cookie-consent.js +5 -3
- package/components/date-picker.js +9 -8
- package/components/decision-card.js +6 -5
- package/components/dialog.d.ts +2 -7
- package/components/dialog.js +6 -4
- package/components/donut-chart.js +9 -9
- package/components/dot.js +2 -2
- package/components/dropdown.js +4 -4
- package/components/empty-state.js +2 -2
- package/components/field-group.d.ts +27 -0
- package/components/field-group.js +3 -0
- package/components/file-upload.js +7 -6
- package/components/form-field.d.ts +38 -1
- package/components/form-field.js +2 -2
- package/components/form.d.ts +47 -0
- package/components/form.js +3 -0
- package/components/hover-card.js +2 -2
- package/components/input-group.d.ts +21 -0
- package/components/input-group.js +6 -0
- package/components/input-otp.js +7 -7
- package/components/input.d.ts +5 -1
- package/components/input.js +3 -3
- package/components/kbd.js +2 -2
- package/components/labels.d.ts +7 -0
- package/components/labels.js +1 -1
- package/components/line-chart.js +10 -10
- package/components/link.d.ts +20 -0
- package/components/link.js +3 -0
- package/components/list.d.ts +46 -0
- package/components/list.js +2 -0
- package/components/message-actions.js +5 -4
- package/components/message.js +8 -7
- package/components/number-input.js +7 -7
- package/components/pagination.js +5 -3
- package/components/password-input.d.ts +16 -0
- package/components/password-input.js +7 -0
- package/components/popover.js +3 -3
- package/components/progress.js +2 -2
- package/components/prompt-bar.js +6 -5
- package/components/radio.js +2 -2
- package/components/search-bar.js +3 -3
- package/components/segmented-control.js +2 -2
- package/components/select.d.ts +2 -1
- package/components/select.js +6 -6
- package/components/selectable-card.d.ts +37 -0
- package/components/selectable-card.js +2 -0
- package/components/selectable-checkbox.d.ts +14 -0
- package/components/selectable-checkbox.js +4 -0
- package/components/selectable-radio.d.ts +16 -0
- package/components/selectable-radio.js +3 -0
- package/components/separator.d.ts +18 -0
- package/components/separator.js +2 -0
- package/components/sheet.js +7 -5
- package/components/sidebar.js +2 -2
- package/components/skeleton.js +2 -2
- package/components/slider.js +7 -7
- package/components/spinner.d.ts +18 -0
- package/components/spinner.js +3 -0
- package/components/split-button.d.ts +24 -0
- package/components/split-button.js +8 -0
- package/components/streaming-text.js +2 -2
- package/components/switch.js +2 -2
- package/components/table.js +4 -4
- package/components/tabs.js +2 -2
- package/components/textarea.js +3 -3
- package/components/thinking.js +3 -3
- package/components/toast.js +5 -4
- package/components/toggle.js +2 -2
- package/components/tooltip.js +3 -3
- package/index.d.ts +16 -2
- package/index.js +80 -65
- package/lib/utils.js +1 -1
- package/package.json +1 -1
- package/styles.css +1 -1
- package/theme/create-theme.d.ts +2 -1
- package/theme/index.js +1 -1
- package/chunk-VUOAPWTF.js +0 -86
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { Button } from './chunk-6DWLTGRQ.js';
|
|
2
|
+
import { Spinner } from './chunk-AKEZCWNW.js';
|
|
3
|
+
import { useSatinLabels } from './chunk-NTSU44FY.js';
|
|
4
|
+
import { cn } from './chunk-EHEXE2UV.js';
|
|
5
|
+
import * as React from 'react';
|
|
6
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
7
|
+
|
|
8
|
+
var wait = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
9
|
+
function ActionButton({
|
|
10
|
+
onAction,
|
|
11
|
+
state: controlled,
|
|
12
|
+
onStateChange,
|
|
13
|
+
onError,
|
|
14
|
+
minLoading = 900,
|
|
15
|
+
resetAfter = 1800,
|
|
16
|
+
trailingIcon,
|
|
17
|
+
onClick,
|
|
18
|
+
children,
|
|
19
|
+
className,
|
|
20
|
+
...props
|
|
21
|
+
}) {
|
|
22
|
+
const labels = useSatinLabels();
|
|
23
|
+
const [own, setOwn] = React.useState("idle");
|
|
24
|
+
const state = controlled ?? own;
|
|
25
|
+
const alive = React.useRef(true);
|
|
26
|
+
const reset = React.useRef(void 0);
|
|
27
|
+
const busy = React.useRef(false);
|
|
28
|
+
const [round, setRound] = React.useState(0);
|
|
29
|
+
React.useEffect(() => {
|
|
30
|
+
alive.current = true;
|
|
31
|
+
return () => {
|
|
32
|
+
alive.current = false;
|
|
33
|
+
clearTimeout(reset.current);
|
|
34
|
+
};
|
|
35
|
+
}, []);
|
|
36
|
+
const set = (next) => {
|
|
37
|
+
if (!alive.current) return;
|
|
38
|
+
if (controlled === void 0) setOwn(next);
|
|
39
|
+
if (next === "success") setRound((r) => r + 1);
|
|
40
|
+
onStateChange?.(next);
|
|
41
|
+
};
|
|
42
|
+
React.useEffect(() => {
|
|
43
|
+
if (state === "idle") busy.current = false;
|
|
44
|
+
}, [state]);
|
|
45
|
+
React.useEffect(() => {
|
|
46
|
+
if (controlled === "success") setRound((r) => r + 1);
|
|
47
|
+
}, [controlled]);
|
|
48
|
+
const run = async (event) => {
|
|
49
|
+
onClick?.(event);
|
|
50
|
+
if (state !== "idle" || busy.current || event.defaultPrevented) return;
|
|
51
|
+
busy.current = true;
|
|
52
|
+
set("loading");
|
|
53
|
+
const started = Date.now();
|
|
54
|
+
try {
|
|
55
|
+
await onAction?.(event);
|
|
56
|
+
await wait(Math.max(0, minLoading - (Date.now() - started)));
|
|
57
|
+
set("success");
|
|
58
|
+
if (resetAfter !== null)
|
|
59
|
+
reset.current = setTimeout(() => {
|
|
60
|
+
busy.current = false;
|
|
61
|
+
set("idle");
|
|
62
|
+
}, resetAfter);
|
|
63
|
+
} catch (error) {
|
|
64
|
+
busy.current = false;
|
|
65
|
+
set("idle");
|
|
66
|
+
if (onError) onError(error);
|
|
67
|
+
else throw error;
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
const layer = "sa:transition-opacity sa:duration-(--sa-duration-fast) sa:ease-(--sa-ease-out)";
|
|
71
|
+
const icon = trailingIcon === void 0 ? (
|
|
72
|
+
// Iconoir's ArrowRight, drawn here so the button needs no icon package.
|
|
73
|
+
/* @__PURE__ */ jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", "aria-hidden": true, children: /* @__PURE__ */ jsx("path", { d: "M3 12H21M21 12L14 5M21 12L14 19", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round" }) })
|
|
74
|
+
) : trailingIcon;
|
|
75
|
+
const spinner = /* @__PURE__ */ jsx(Spinner, { size: props.size === "xs" ? "sm" : "md", label: null });
|
|
76
|
+
const check = round > 0 && /* @__PURE__ */ jsx("svg", { "data-slot": "action-button-check", width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", children: /* @__PURE__ */ jsx(
|
|
77
|
+
"path",
|
|
78
|
+
{
|
|
79
|
+
d: "M3.33333 8.66667L6 11.3333L12.6667 4.66667",
|
|
80
|
+
pathLength: 1,
|
|
81
|
+
stroke: "currentColor",
|
|
82
|
+
strokeLinecap: "round",
|
|
83
|
+
strokeLinejoin: "round",
|
|
84
|
+
style: { strokeWidth: 1.5 }
|
|
85
|
+
}
|
|
86
|
+
) }, round);
|
|
87
|
+
const show = (on) => cn("sa:grid sa:place-items-center", layer, !on && "sa:opacity-0");
|
|
88
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
89
|
+
/* @__PURE__ */ jsx(
|
|
90
|
+
Button,
|
|
91
|
+
{
|
|
92
|
+
...props,
|
|
93
|
+
"data-slot": "action-button",
|
|
94
|
+
"data-state": state,
|
|
95
|
+
"aria-busy": state === "loading" || void 0,
|
|
96
|
+
"aria-disabled": state !== "idle" || props["aria-disabled"] || void 0,
|
|
97
|
+
className: cn("sa:relative", state !== "idle" && "sa:cursor-default", className),
|
|
98
|
+
onClick: run,
|
|
99
|
+
children: icon !== null ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
100
|
+
children ?? labels.submit,
|
|
101
|
+
/* @__PURE__ */ jsxs("span", { "data-slot": "action-button-icon", className: "sa:grid sa:shrink-0 sa:place-items-center sa:*:col-start-1 sa:*:row-start-1", children: [
|
|
102
|
+
/* @__PURE__ */ jsx("span", { className: show(state === "idle"), children: icon }),
|
|
103
|
+
/* @__PURE__ */ jsx("span", { "aria-hidden": true, className: show(state === "loading"), children: spinner }),
|
|
104
|
+
/* @__PURE__ */ jsx("span", { "aria-hidden": true, className: show(state === "success"), children: check })
|
|
105
|
+
] })
|
|
106
|
+
] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
107
|
+
/* @__PURE__ */ jsx("span", { className: cn("sa:inline-flex sa:items-center", layer, state !== "idle" && "sa:opacity-0"), children: children ?? labels.submit }),
|
|
108
|
+
/* @__PURE__ */ jsx("span", { "aria-hidden": true, className: cn("sa:absolute sa:inset-0", show(state === "loading")), children: spinner }),
|
|
109
|
+
/* @__PURE__ */ jsx("span", { "aria-hidden": true, className: cn("sa:absolute sa:inset-0", show(state === "success")), children: check })
|
|
110
|
+
] })
|
|
111
|
+
}
|
|
112
|
+
),
|
|
113
|
+
/* @__PURE__ */ jsx("span", { className: "sa:sr-only", "aria-live": "polite", children: state === "success" ? labels.done : "" })
|
|
114
|
+
] });
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
export { ActionButton };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { FileIcon, Attachment } from './chunk-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { useSatinLabels } from './chunk-
|
|
5
|
-
import { cn } from './chunk-
|
|
1
|
+
import { FileIcon, Attachment } from './chunk-R3DTMBDT.js';
|
|
2
|
+
import { Button } from './chunk-6DWLTGRQ.js';
|
|
3
|
+
import { Progress } from './chunk-LKSFTNPF.js';
|
|
4
|
+
import { useSatinLabels } from './chunk-NTSU44FY.js';
|
|
5
|
+
import { cn } from './chunk-EHEXE2UV.js';
|
|
6
6
|
import * as React from 'react';
|
|
7
7
|
import { Page, WarningCircle, Xmark } from 'iconoir-react';
|
|
8
8
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Button } from './chunk-
|
|
2
|
-
import { useSatinLabels } from './chunk-
|
|
3
|
-
import { cn } from './chunk-
|
|
1
|
+
import { Button } from './chunk-6DWLTGRQ.js';
|
|
2
|
+
import { useSatinLabels } from './chunk-NTSU44FY.js';
|
|
3
|
+
import { cn } from './chunk-EHEXE2UV.js';
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import { Toast as Toast$1 } from 'radix-ui';
|
|
6
6
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
package/components/accordion.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use client';export { Accordion, AccordionItem } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
'use client';export { Accordion, AccordionItem } from '../chunk-6Y6CY2DP.js';
|
|
2
|
+
import '../chunk-EHEXE2UV.js';
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { type ButtonProps } from './button.js';
|
|
3
|
+
/**
|
|
4
|
+
* ActionButton: a Button that runs something and shows how it went, in place. Three states:
|
|
5
|
+
*
|
|
6
|
+
* 1. idle: the label ("Submit" by default) with an arrow on the right;
|
|
7
|
+
* 2. loading: from the click until `onAction`'s promise settles (at least `minLoading`, so a
|
|
8
|
+
* fast answer still reads as work), a Spinner in the arrow's place;
|
|
9
|
+
* 3. success: in the same place, a checkmark that draws itself in, held for `resetAfter` ms,
|
|
10
|
+
* then the arrow comes back.
|
|
11
|
+
*
|
|
12
|
+
* The label stays as it is; only the icon slot changes, its three layers stacked on one 16px
|
|
13
|
+
* cell and cross-fading (150ms), so the button never changes width. With `trailingIcon={null}`
|
|
14
|
+
* there is no slot: the spinner and checkmark take the middle and the label keeps its room. If the promise rejects, the button goes straight back to idle and the
|
|
15
|
+
* error is the app's to show (an Alert, a toast). While busy or done, clicks do nothing; focus
|
|
16
|
+
* stays on the button and screen readers hear `aria-busy`, then "Done" (`done` in SatinLabels).
|
|
17
|
+
*
|
|
18
|
+
* Pass `state` to drive it yourself (a form library's submitting flag, a server push) instead.
|
|
19
|
+
*/
|
|
20
|
+
export type ActionButtonState = 'idle' | 'loading' | 'success';
|
|
21
|
+
export interface ActionButtonProps extends Omit<ButtonProps, 'loading' | 'onClick' | 'iconOnly' | 'asChild'> {
|
|
22
|
+
/** Runs on click. The spinner stays until its promise settles. */
|
|
23
|
+
onAction?: (event: React.MouseEvent<HTMLButtonElement>) => Promise<unknown> | unknown;
|
|
24
|
+
/** Drive the state from outside instead. */
|
|
25
|
+
state?: ActionButtonState;
|
|
26
|
+
onStateChange?: (state: ActionButtonState) => void;
|
|
27
|
+
/** Shortest time the spinner shows, in ms. */
|
|
28
|
+
minLoading?: number;
|
|
29
|
+
/** How long the checkmark stays before the button is ready again, in ms; `null` keeps it. */
|
|
30
|
+
resetAfter?: number | null;
|
|
31
|
+
/** Called when `onAction` rejects; without it the error is rethrown. */
|
|
32
|
+
onError?: (error: unknown) => void;
|
|
33
|
+
/** The icon after the label; `null` for none. Defaults to an arrow. */
|
|
34
|
+
trailingIcon?: React.ReactNode;
|
|
35
|
+
onClick?: React.MouseEventHandler<HTMLButtonElement>;
|
|
36
|
+
}
|
|
37
|
+
export declare function ActionButton({ onAction, state: controlled, onStateChange, onError, minLoading, resetAfter, trailingIcon, onClick, children, className, ...props }: ActionButtonProps): React.JSX.Element;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use client';export { AgentLoading, FlappySprite, ShimmerLabel, TetrisLabel, TetrisMark, TetrisStill } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
'use client';export { AgentLoading, FlappySprite, ShimmerLabel, TetrisLabel, TetrisMark, TetrisStill } from '../chunk-R4KPFBMK.js';
|
|
2
|
+
import '../chunk-EHEXE2UV.js';
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
'use client';export { AgentAvatar, AgentMenuItem, AgentPicker, AgentPickerRow } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
1
|
+
'use client';export { AgentAvatar, AgentMenuItem, AgentPicker, AgentPickerRow } from '../chunk-DMZW4LGU.js';
|
|
2
|
+
import '../chunk-6DWLTGRQ.js';
|
|
3
|
+
import '../chunk-AKEZCWNW.js';
|
|
4
|
+
import '../chunk-NTSU44FY.js';
|
|
5
|
+
import '../chunk-EHEXE2UV.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
'use client';export { AgentSuggestion, AgentSuggestionChanges, AgentSuggestionDiff, AgentSuggestionMetric, AgentSuggestionQuote } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
1
|
+
'use client';export { AgentSuggestion, AgentSuggestionChanges, AgentSuggestionDiff, AgentSuggestionMetric, AgentSuggestionQuote } from '../chunk-T7P3OEBP.js';
|
|
2
|
+
import '../chunk-LKSFTNPF.js';
|
|
3
|
+
import '../chunk-7NV53EL5.js';
|
|
4
|
+
import '../chunk-NTSU44FY.js';
|
|
5
|
+
import '../chunk-EHEXE2UV.js';
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Alert: a message that stays on the page until it's dealt with (a toast is for what just
|
|
4
|
+
* happened and goes away; a banner promotes). Built on the uiKit `Alert` (475:27871) that
|
|
5
|
+
* DialogAlert draws inside dialogs, for anywhere on a page: above a form, at the top of a
|
|
6
|
+
* settings section, in an empty table.
|
|
7
|
+
*
|
|
8
|
+
* - `intent`: neutral, info, success, warning or error, the status colours from the theme.
|
|
9
|
+
* - `variant`: `soft` (default) fills it with the status background; `outline` is a card
|
|
10
|
+
* surface with a border, for an alert among other cards, where only the icon carries colour.
|
|
11
|
+
* - A 16px status icon on the first line (`icon={false}` hides it, or pass your own), a 14px
|
|
12
|
+
* medium title and a 13px muted description; either can be left out.
|
|
13
|
+
* - `action` holds a Button or a Link: on the right when there's only a title, under the
|
|
14
|
+
* description when there is one. `onDismiss` adds the close button.
|
|
15
|
+
* - Errors and warnings are `role="alert"` (read out when they appear), the rest `role="status"`.
|
|
16
|
+
*/
|
|
17
|
+
export type AlertIntent = 'neutral' | 'info' | 'success' | 'warning' | 'error';
|
|
18
|
+
export interface AlertProps extends Omit<React.ComponentProps<'div'>, 'title'> {
|
|
19
|
+
intent?: AlertIntent;
|
|
20
|
+
variant?: 'soft' | 'outline';
|
|
21
|
+
title?: React.ReactNode;
|
|
22
|
+
description?: React.ReactNode;
|
|
23
|
+
/** `false` hides the status icon; a node replaces it. */
|
|
24
|
+
icon?: boolean | React.ReactNode;
|
|
25
|
+
/** A Button or Link, or a few in a fragment. */
|
|
26
|
+
action?: React.ReactNode;
|
|
27
|
+
/** Shows the close button; called when it is pressed. */
|
|
28
|
+
onDismiss?: () => void;
|
|
29
|
+
}
|
|
30
|
+
export declare function Alert({ intent, variant, title, description, icon, action, onDismiss, className, children, ...props }: AlertProps): React.JSX.Element;
|
|
31
|
+
/** @internal The status glyphs from Figma (16px, 1.25 stroke), drawn in currentColor. Neutral uses the info glyph. */
|
|
32
|
+
export declare function StatusIcon({ intent }: {
|
|
33
|
+
intent: AlertIntent;
|
|
34
|
+
}): React.JSX.Element;
|
|
35
|
+
/** The X from Figma's close button (`icon` 16px, 1.25 stroke). */
|
|
36
|
+
/** @internal Shared by Satin's own components; not part of the public API and may change in any release. */
|
|
37
|
+
export declare function CloseIcon(): React.JSX.Element;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
'use client';export { AnnouncementBar } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
'use client';export { AnnouncementBar } from '../chunk-LAOE6Y57.js';
|
|
2
|
+
import '../chunk-HZV7EXGU.js';
|
|
3
3
|
import '../chunk-YYFAZQ25.js';
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
4
|
+
import '../chunk-6DWLTGRQ.js';
|
|
5
|
+
import '../chunk-AKEZCWNW.js';
|
|
6
|
+
import '../chunk-NTSU44FY.js';
|
|
7
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/attachment.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
'use client';export { Attachment, AttachmentGroup, AttachmentPreview, AttachmentPreviewPager, AttachmentPreviewSheets, FileIcon } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
1
|
+
'use client';export { Attachment, AttachmentGroup, AttachmentPreview, AttachmentPreviewPager, AttachmentPreviewSheets, FileIcon } from '../chunk-R3DTMBDT.js';
|
|
2
|
+
import '../chunk-6DWLTGRQ.js';
|
|
3
|
+
import '../chunk-AKEZCWNW.js';
|
|
4
|
+
import '../chunk-NTSU44FY.js';
|
|
5
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/avatar.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
'use client';export { AVATAR_TOOLTIP_DELAY, Avatar, AvatarGroup, avatarVariants } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
1
|
+
'use client';export { AVATAR_TOOLTIP_DELAY, Avatar, AvatarGroup, avatarVariants } from '../chunk-TOY6YPTG.js';
|
|
2
|
+
import '../chunk-KDU7AT2T.js';
|
|
3
|
+
import '../chunk-XWPH7C2W.js';
|
|
4
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/badge.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use client';export { Badge, badgeVariants } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
'use client';export { Badge, badgeVariants } from '../chunk-7NV53EL5.js';
|
|
2
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/banner.d.ts
CHANGED
|
@@ -9,8 +9,9 @@ import { type Mesh } from './banner-mesh.js';
|
|
|
9
9
|
* button sit on the right, 4px apart.
|
|
10
10
|
* - layout="sidebar": 222 wide (the navigation column's inner width), 12 padding, 12 gap; copy on
|
|
11
11
|
* top, the action stretched across the bottom, close pinned 3px from the top-right corner.
|
|
12
|
-
* - shape="rounded" is radius-xl (12). shape="pill"
|
|
13
|
-
* banner
|
|
12
|
+
* - shape="rounded" is radius-xl (12). shape="pill" takes the theme's pill corner on a one-line
|
|
13
|
+
* horizontal banner (12px at Satin's default corners, fully round at Large) and radius-3xl
|
|
14
|
+
* (20) wherever the banner is taller.
|
|
14
15
|
* - background="mesh" lays two pre-rendered glows over the card: a light one in Multiply (shows
|
|
15
16
|
* on white, gone on dark) and a dark one in Screen (glows on dark, gone on white), so it follows
|
|
16
17
|
* the theme without variables. Figma renders one pair per layout and line count; they are
|
package/components/banner.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
'use client';export { Banner, bannerVariants } from '../chunk-
|
|
1
|
+
'use client';export { Banner, bannerVariants } from '../chunk-HZV7EXGU.js';
|
|
2
2
|
export { bannerMesh } from '../chunk-YYFAZQ25.js';
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
3
|
+
import '../chunk-6DWLTGRQ.js';
|
|
4
|
+
import '../chunk-AKEZCWNW.js';
|
|
5
|
+
import '../chunk-NTSU44FY.js';
|
|
6
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/bar-chart.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
'use client';export { BarCard, niceMax } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
'use client';export { BarCard, niceMax } from '../chunk-INJWE2LD.js';
|
|
2
|
+
import '../chunk-LI5VYDLN.js';
|
|
3
3
|
import '../chunk-ZHFIWDGF.js';
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
7
|
-
import '../chunk-
|
|
8
|
-
import '../chunk-
|
|
9
|
-
import '../chunk-
|
|
10
|
-
import '../chunk-
|
|
4
|
+
import '../chunk-EQAFDIPE.js';
|
|
5
|
+
import '../chunk-KITXKIYW.js';
|
|
6
|
+
import '../chunk-P36KBUYD.js';
|
|
7
|
+
import '../chunk-XWPH7C2W.js';
|
|
8
|
+
import '../chunk-7NV53EL5.js';
|
|
9
|
+
import '../chunk-NTSU44FY.js';
|
|
10
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/breadcrumb.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
'use client';export { Breadcrumb } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
1
|
+
'use client';export { Breadcrumb } from '../chunk-Q7KVC5B4.js';
|
|
2
|
+
import '../chunk-P36KBUYD.js';
|
|
3
|
+
import '../chunk-XWPH7C2W.js';
|
|
4
|
+
import '../chunk-NTSU44FY.js';
|
|
5
|
+
import '../chunk-EHEXE2UV.js';
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { type ButtonDefaults } from './button.js';
|
|
3
|
+
/**
|
|
4
|
+
* Buttons that belong together: a toolbar, Prev / Next, a set of views, the two halves of a
|
|
5
|
+
* SplitButton.
|
|
6
|
+
*
|
|
7
|
+
* `attached` (the default) joins them into one block: the inner corners go square, the buttons
|
|
8
|
+
* touch, and the only line between two of them is the later one's 1px leading border (the
|
|
9
|
+
* outline colour on secondary). Each button's outer ring and shadow are clipped on the sides it
|
|
10
|
+
* shares, so they run unbroken along the top and bottom of the block, with no notch at a seam. The button under the
|
|
11
|
+
* pointer or with focus comes to the front, so its ring and focus ring are never cut by a
|
|
12
|
+
* neighbour. `attached={false}` keeps every button whole, 8px apart (4px at xs), for a looser
|
|
13
|
+
* toolbar; put a `ButtonGroupSeparator` between sets there.
|
|
14
|
+
*
|
|
15
|
+
* `variant`, `size` and `shape` are defaults for every Button inside (a button's own prop wins),
|
|
16
|
+
* so a group is set once instead of on each button. The group is `role="group"`: give it an
|
|
17
|
+
* `aria-label` that says what the buttons are for ("Text alignment").
|
|
18
|
+
*/
|
|
19
|
+
export interface ButtonGroupProps extends React.ComponentProps<'div'>, ButtonDefaults {
|
|
20
|
+
orientation?: 'horizontal' | 'vertical';
|
|
21
|
+
/** Join the buttons into one block. */
|
|
22
|
+
attached?: boolean;
|
|
23
|
+
}
|
|
24
|
+
export declare function ButtonGroup({ orientation, attached, variant, size, shape, className, children, ...props }: ButtonGroupProps): React.JSX.Element;
|
|
25
|
+
/** A thin rule between sets of buttons in a loose (`attached={false}`) group or a toolbar. */
|
|
26
|
+
export declare function ButtonGroupSeparator({ className, ...props }: React.ComponentProps<'div'>): React.JSX.Element;
|
package/components/button.d.ts
CHANGED
|
@@ -27,6 +27,18 @@ declare const buttonVariants: (props?: ({
|
|
|
27
27
|
export interface ButtonProps extends React.ComponentProps<'button'>, VariantProps<typeof buttonVariants> {
|
|
28
28
|
/** Render the child element (a link, say) with the button's styles instead of a `<button>`. */
|
|
29
29
|
asChild?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Busy: a Spinner takes the middle and the label and icons turn invisible but keep their room,
|
|
32
|
+
* so the button doesn't change width. Clicks (and Enter in a form) do nothing; the button
|
|
33
|
+
* keeps its focus and looks, with `aria-busy` and `aria-disabled` for screen readers.
|
|
34
|
+
*/
|
|
35
|
+
loading?: boolean;
|
|
30
36
|
}
|
|
31
|
-
|
|
37
|
+
/**
|
|
38
|
+
* What a ButtonGroup hands its buttons: the variant, size and shape they take unless they set
|
|
39
|
+
* their own. Lives here so Button reads it without importing the group.
|
|
40
|
+
*/
|
|
41
|
+
export type ButtonDefaults = Pick<VariantProps<typeof buttonVariants>, 'variant' | 'size' | 'shape'>;
|
|
42
|
+
export declare const ButtonDefaultsContext: React.Context<ButtonDefaults | null>;
|
|
43
|
+
export declare function Button({ className, variant, size, shape, iconOnly, asChild, loading, type, onClick, children, 'aria-disabled': ariaDisabled, ...props }: ButtonProps): React.JSX.Element;
|
|
32
44
|
export { buttonVariants };
|
package/components/button.js
CHANGED
|
@@ -1,2 +1,4 @@
|
|
|
1
|
-
'use client';export { Button, buttonVariants } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
'use client';export { Button, ButtonDefaultsContext, buttonVariants } from '../chunk-6DWLTGRQ.js';
|
|
2
|
+
import '../chunk-AKEZCWNW.js';
|
|
3
|
+
import '../chunk-NTSU44FY.js';
|
|
4
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/card.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
'use client';export { Card, cardVariants } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
'use client';export { Card, cardVariants } from '../chunk-U6X6ODDJ.js';
|
|
2
|
+
import '../chunk-6DWLTGRQ.js';
|
|
3
|
+
import '../chunk-AKEZCWNW.js';
|
|
4
|
+
import '../chunk-NTSU44FY.js';
|
|
5
|
+
import '../chunk-EHEXE2UV.js';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
'use client';export { ChannelCard } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
'use client';export { ChannelCard } from '../chunk-WALANB3V.js';
|
|
2
|
+
import '../chunk-LI5VYDLN.js';
|
|
3
3
|
import '../chunk-ZHFIWDGF.js';
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
7
|
-
import '../chunk-
|
|
8
|
-
import '../chunk-
|
|
9
|
-
import '../chunk-
|
|
10
|
-
import '../chunk-
|
|
4
|
+
import '../chunk-EQAFDIPE.js';
|
|
5
|
+
import '../chunk-KITXKIYW.js';
|
|
6
|
+
import '../chunk-P36KBUYD.js';
|
|
7
|
+
import '../chunk-XWPH7C2W.js';
|
|
8
|
+
import '../chunk-7NV53EL5.js';
|
|
9
|
+
import '../chunk-NTSU44FY.js';
|
|
10
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/chart.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
'use client';export { ChartCard, ChartLegendPill, ChartLegendRow, ChartTooltip, defaultFormat } from '../chunk-
|
|
1
|
+
'use client';export { ChartCard, ChartLegendPill, ChartLegendRow, ChartTooltip, defaultFormat } from '../chunk-LI5VYDLN.js';
|
|
2
2
|
import '../chunk-ZHFIWDGF.js';
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
7
|
-
import '../chunk-
|
|
8
|
-
import '../chunk-
|
|
9
|
-
import '../chunk-
|
|
3
|
+
import '../chunk-EQAFDIPE.js';
|
|
4
|
+
import '../chunk-KITXKIYW.js';
|
|
5
|
+
import '../chunk-P36KBUYD.js';
|
|
6
|
+
import '../chunk-XWPH7C2W.js';
|
|
7
|
+
import '../chunk-7NV53EL5.js';
|
|
8
|
+
import '../chunk-NTSU44FY.js';
|
|
9
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/checkbox.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use client';export { Checkbox } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
'use client';export { Checkbox } from '../chunk-W2QQQWNE.js';
|
|
2
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/chip.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
'use client';export { Chip, ChipAvatar, chipVariants } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
'use client';export { Chip, ChipAvatar, chipVariants } from '../chunk-6JTSZAGO.js';
|
|
2
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/citations.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
'use client';export { Citation, Sources } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
1
|
+
'use client';export { Citation, Sources } from '../chunk-47DDBME3.js';
|
|
2
|
+
import '../chunk-W2EH6RY5.js';
|
|
3
|
+
import '../chunk-NTSU44FY.js';
|
|
4
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/code-block.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
'use client';export { CodeBlock } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
'use client';export { CodeBlock } from '../chunk-IKJIR6VL.js';
|
|
2
|
+
import '../chunk-6DWLTGRQ.js';
|
|
3
|
+
import '../chunk-AKEZCWNW.js';
|
|
4
|
+
import '../chunk-NTSU44FY.js';
|
|
5
|
+
import '../chunk-EHEXE2UV.js';
|
package/components/combobox.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
'use client';export { Combobox } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
7
|
-
import '../chunk-
|
|
8
|
-
import '../chunk-
|
|
9
|
-
import '../chunk-
|
|
1
|
+
'use client';export { Combobox } from '../chunk-M7RILZVW.js';
|
|
2
|
+
import '../chunk-6JTSZAGO.js';
|
|
3
|
+
import '../chunk-EQAFDIPE.js';
|
|
4
|
+
import '../chunk-KITXKIYW.js';
|
|
5
|
+
import '../chunk-P36KBUYD.js';
|
|
6
|
+
import '../chunk-XWPH7C2W.js';
|
|
7
|
+
import '../chunk-6DWLTGRQ.js';
|
|
8
|
+
import '../chunk-AKEZCWNW.js';
|
|
9
|
+
import '../chunk-NTSU44FY.js';
|
|
10
|
+
import '../chunk-EHEXE2UV.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
'use client';export { CommandMenu } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
1
|
+
'use client';export { CommandMenu } from '../chunk-3VVO5MY5.js';
|
|
2
|
+
import '../chunk-P36KBUYD.js';
|
|
3
|
+
import '../chunk-XWPH7C2W.js';
|
|
4
|
+
import '../chunk-NTSU44FY.js';
|
|
5
|
+
import '../chunk-EHEXE2UV.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
'use client';export { ContextMenu, ContextMenuItem, ContextMenuSeparator, ContextMenuSub } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
1
|
+
'use client';export { ContextMenu, ContextMenuItem, ContextMenuSeparator, ContextMenuSub } from '../chunk-CQFAMWZI.js';
|
|
2
|
+
import '../chunk-P36KBUYD.js';
|
|
3
|
+
import '../chunk-XWPH7C2W.js';
|
|
4
|
+
import '../chunk-NTSU44FY.js';
|
|
5
|
+
import '../chunk-EHEXE2UV.js';
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
'use client';export { CookieConsent } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
'use client';export { CookieConsent } from '../chunk-KQNA22D3.js';
|
|
2
|
+
import '../chunk-6DWLTGRQ.js';
|
|
3
|
+
import '../chunk-AKEZCWNW.js';
|
|
4
|
+
import '../chunk-NTSU44FY.js';
|
|
5
|
+
import '../chunk-EHEXE2UV.js';
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
'use client';export { Calendar, DatePicker, DatePickerPanel, DateRangePicker, DateRangePickerPanel, formatDate, formatRange } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
7
|
-
import '../chunk-
|
|
8
|
-
import '../chunk-
|
|
1
|
+
'use client';export { Calendar, DatePicker, DatePickerPanel, DateRangePicker, DateRangePickerPanel, formatDate, formatRange } from '../chunk-UAJ6M34K.js';
|
|
2
|
+
import '../chunk-EQAFDIPE.js';
|
|
3
|
+
import '../chunk-KITXKIYW.js';
|
|
4
|
+
import '../chunk-P36KBUYD.js';
|
|
5
|
+
import '../chunk-XWPH7C2W.js';
|
|
6
|
+
import '../chunk-6DWLTGRQ.js';
|
|
7
|
+
import '../chunk-AKEZCWNW.js';
|
|
8
|
+
import '../chunk-NTSU44FY.js';
|
|
9
|
+
import '../chunk-EHEXE2UV.js';
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
'use client';export { DecisionCard, DecisionItemPreview } from '../chunk-
|
|
1
|
+
'use client';export { DecisionCard, DecisionItemPreview } from '../chunk-HI6QIG55.js';
|
|
2
2
|
import '../chunk-XETMIETJ.js';
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
3
|
+
import '../chunk-W2QQQWNE.js';
|
|
4
|
+
import '../chunk-6DWLTGRQ.js';
|
|
5
|
+
import '../chunk-AKEZCWNW.js';
|
|
6
|
+
import '../chunk-NTSU44FY.js';
|
|
7
|
+
import '../chunk-EHEXE2UV.js';
|