@uisatin/ui 0.2.0 → 0.4.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 +27 -0
- package/README.md +10 -1
- package/{chunk-P4O6TGDR.js → chunk-3VVO5MY5.js} +28 -26
- package/chunk-47DDBME3.js +87 -0
- package/{chunk-SHDFUXYV.js → chunk-5663JVE5.js} +16 -18
- package/chunk-67CBFB6Y.js +99 -0
- package/chunk-6DWLTGRQ.js +130 -0
- package/chunk-6GNMUJQ4.js +45 -0
- package/chunk-6JTSZAGO.js +177 -0
- package/chunk-6RLSRMB5.js +14 -0
- package/chunk-6Y6CY2DP.js +55 -0
- package/{chunk-O7F3CIDV.js → chunk-7NV53EL5.js} +10 -12
- package/{chunk-BNZVTLHV.js → chunk-7SVMERPH.js} +25 -21
- package/chunk-A52HUWVM.js +24 -0
- package/chunk-AKEZCWNW.js +29 -0
- package/{chunk-SH6NG6VN.js → chunk-APRVUOD6.js} +6 -8
- package/{chunk-QUF2IPOZ.js → chunk-C435UD7V.js} +14 -15
- package/{chunk-B2K45IUR.js → chunk-C6WRJ7DG.js} +5 -7
- package/{chunk-PF3YBUKT.js → chunk-CQFAMWZI.js} +16 -15
- package/chunk-DAKVTPYZ.js +86 -0
- package/{chunk-VAGIAREV.js → chunk-DMZW4LGU.js} +29 -26
- package/chunk-EBZHGRM5.js +46 -0
- package/chunk-EHEXE2UV.js +44 -0
- package/{chunk-72OCFAPT.js → chunk-EQAFDIPE.js} +26 -23
- package/{chunk-LLHTVIM3.js → chunk-EXKSKYG3.js} +7 -9
- package/chunk-FB6DG3LR.js +35 -0
- package/chunk-GH2DEOGO.js +67 -0
- package/{chunk-YG7JOOLJ.js → chunk-GKDMCY2S.js} +5 -7
- package/chunk-GTFUAA6H.js +42 -0
- package/{chunk-TX3H3QMA.js → chunk-HI6QIG55.js} +71 -70
- package/{chunk-6QMSWITQ.js → chunk-HZV7EXGU.js} +24 -26
- package/{chunk-A5XEM3GF.js → chunk-IKJIR6VL.js} +34 -36
- package/{chunk-DO3TBNSC.js → chunk-INJWE2LD.js} +15 -17
- package/chunk-J5UQPROI.js +56 -0
- package/{chunk-6YXUBP27.js → chunk-JCR5TWTF.js} +72 -67
- package/chunk-JKOBDLP3.js +25 -0
- package/chunk-JR3VVDV6.js +37 -0
- package/chunk-JYGCZWET.js +112 -0
- package/{chunk-UGRSWP6U.js → chunk-K5G5OEV5.js} +10 -12
- package/{chunk-B6V4VSGH.js → chunk-KDU7AT2T.js} +14 -15
- package/chunk-KITXKIYW.js +104 -0
- package/{chunk-NN6PKJWS.js → chunk-KQNA22D3.js} +7 -9
- package/{chunk-YPNKBE5X.js → chunk-L5PPN42A.js} +14 -9
- package/chunk-LAOE6Y57.js +95 -0
- package/chunk-LI5VYDLN.js +195 -0
- package/{chunk-7TXHCRAG.js → chunk-LKSFTNPF.js} +8 -10
- package/chunk-LLW3X4ZJ.js +39 -0
- package/{chunk-RTJ76X5U.js → chunk-LWRB4DED.js} +2 -4
- package/{chunk-NSRTTYQ4.js → chunk-M7RILZVW.js} +42 -35
- package/{chunk-LW3TRU5W.js → chunk-MOGWOUCN.js} +28 -16
- package/chunk-NCIRJ5V2.js +108 -0
- package/chunk-NQL6SIIB.js +168 -0
- package/chunk-NTSU44FY.js +81 -0
- package/{chunk-3DINAQLL.js → chunk-P36KBUYD.js} +33 -29
- package/chunk-P6RHT2VM.js +147 -0
- package/{chunk-CL2II6BX.js → chunk-PD2KD5OR.js} +11 -13
- package/{chunk-XL75JRUA.js → chunk-PP46SY7M.js} +42 -22
- package/{chunk-L6NCCSIP.js → chunk-PTK4QAOQ.js} +36 -29
- package/{chunk-HL42K2NH.js → chunk-Q7KVC5B4.js} +17 -17
- package/{chunk-H4NU7NPO.js → chunk-R3DTMBDT.js} +62 -61
- package/{chunk-KNUWZNFV.js → chunk-R4KPFBMK.js} +4 -6
- package/chunk-R5TQ3HNB.js +71 -0
- package/chunk-RFSPJECL.js +84 -0
- package/chunk-RPL6FRVX.js +88 -0
- package/{chunk-AN2RNJLR.js → chunk-STYOBAC7.js} +16 -16
- package/{chunk-X3PQANZO.js → chunk-SVUWR3HD.js} +47 -46
- package/chunk-T7P3OEBP.js +128 -0
- package/{chunk-QS4N4MNP.js → chunk-TB3ZRV3Y.js} +18 -20
- package/{chunk-MYEZXZZC.js → chunk-TOY6YPTG.js} +23 -25
- package/{chunk-XILQ7GXE.js → chunk-U6X6ODDJ.js} +11 -13
- package/{chunk-XZNHT6MO.js → chunk-UAJ6M34K.js} +115 -61
- package/chunk-W2EH6RY5.js +42 -0
- package/{chunk-FDKIX4DC.js → chunk-W2QQQWNE.js} +7 -9
- package/{chunk-LZMKSFCF.js → chunk-WALANB3V.js} +10 -12
- package/chunk-WCUR44O6.js +88 -0
- package/{chunk-BNTPPZCK.js → chunk-WJYJMX5S.js} +37 -39
- package/chunk-WZSLDYUU.js +131 -0
- package/{chunk-J3NSDRVH.js → chunk-XETMIETJ.js} +0 -2
- package/chunk-XU6JJDMZ.js +117 -0
- package/{chunk-BKZBWPUH.js → chunk-XWPH7C2W.js} +9 -11
- package/{chunk-GICKPMJU.js → chunk-YXWXSRXG.js} +31 -31
- package/{chunk-2HKBZFIK.js → chunk-YY236ZSJ.js} +31 -31
- package/{chunk-YX5VNRJX.js → chunk-YYFAZQ25.js} +0 -2
- package/{chunk-Y5AYU7PK.js → chunk-ZHFIWDGF.js} +0 -2
- package/components/accordion.js +2 -4
- package/components/action-button.d.ts +37 -0
- package/components/action-button.js +5 -0
- package/components/agent-loading.d.ts +2 -0
- package/components/agent-loading.js +2 -4
- package/components/agent-picker.js +5 -5
- package/components/agent-suggestion.js +5 -6
- package/components/alert.d.ts +37 -0
- package/components/alert.js +5 -0
- package/components/announcement-bar.js +7 -7
- package/components/attachment.js +5 -5
- package/components/avatar.js +4 -6
- package/components/badge.js +2 -4
- package/components/banner-mesh.js +1 -3
- package/components/banner.js +6 -6
- package/components/bar-chart.js +10 -11
- package/components/breadcrumb.js +5 -6
- 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 -4
- package/components/card.js +5 -5
- package/components/channel-chart.js +10 -11
- package/components/chart.js +9 -10
- package/components/checkbox.js +2 -4
- package/components/chip.js +2 -4
- package/components/citations.d.ts +6 -4
- package/components/citations.js +4 -5
- package/components/code-block.js +5 -5
- package/components/combobox.d.ts +12 -3
- package/components/combobox.js +10 -10
- package/components/command-menu.d.ts +6 -2
- package/components/command-menu.js +5 -6
- package/components/context-menu.d.ts +12 -5
- package/components/context-menu.js +5 -6
- package/components/cookie-consent.js +5 -5
- package/components/date-picker.d.ts +26 -14
- package/components/date-picker.js +9 -9
- package/components/decision-card.js +7 -7
- package/components/dialog.d.ts +6 -8
- package/components/dialog.js +6 -5
- package/components/donut-chart.js +10 -11
- package/components/dot.js +2 -4
- package/components/dropdown.d.ts +6 -1
- package/components/dropdown.js +4 -5
- package/components/empty-state.js +2 -4
- package/components/field-group.d.ts +27 -0
- package/components/field-group.js +3 -0
- package/components/file-upload.js +7 -7
- package/components/floating.js +1 -3
- package/components/form-field.d.ts +38 -1
- package/components/form-field.js +2 -4
- package/components/form.d.ts +47 -0
- package/components/form.js +3 -0
- package/components/hover-card.d.ts +5 -2
- package/components/hover-card.js +2 -4
- package/components/input-group.d.ts +21 -0
- package/components/input-group.js +6 -0
- package/components/input-otp.d.ts +4 -2
- package/components/input-otp.js +7 -8
- package/components/input.d.ts +5 -1
- package/components/input.js +3 -5
- package/components/kbd.js +2 -4
- package/components/labels.d.ts +86 -0
- package/components/labels.js +1 -0
- package/components/line-chart.js +11 -12
- 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 -5
- package/components/message.js +8 -8
- package/components/number-input.d.ts +4 -2
- package/components/number-input.js +7 -8
- package/components/pagination.js +6 -6
- package/components/password-input.d.ts +16 -0
- package/components/password-input.js +7 -0
- package/components/popover.d.ts +11 -5
- package/components/popover.js +3 -4
- package/components/progress.js +2 -4
- package/components/prompt-bar.js +6 -6
- package/components/radio.js +2 -4
- package/components/search-bar.js +3 -5
- package/components/segmented-control.d.ts +4 -2
- package/components/segmented-control.js +3 -5
- package/components/select.d.ts +11 -2
- package/components/select.js +6 -7
- 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.d.ts +4 -2
- package/components/sheet.js +7 -6
- package/components/sidebar.js +2 -4
- package/components/skeleton.js +2 -4
- package/components/slider.d.ts +6 -2
- package/components/slider.js +7 -8
- package/components/sliding-indicator.js +1 -3
- 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 -4
- package/components/switch.js +2 -4
- package/components/table.d.ts +16 -5
- package/components/table.js +4 -5
- package/components/tabs.d.ts +4 -2
- package/components/tabs.js +3 -5
- package/components/textarea.js +3 -5
- package/components/thinking.js +3 -5
- package/components/toast.js +5 -5
- package/components/toggle.js +2 -4
- package/components/tooltip.d.ts +5 -2
- package/components/tooltip.js +3 -5
- package/index.d.ts +17 -2
- package/index.js +82 -231
- package/lib/utils.d.ts +8 -1
- package/lib/utils.js +1 -3
- package/package.json +11 -1
- package/styles.css +1 -1
- package/theme/create-theme.d.ts +6 -2
- package/theme/index.js +1 -0
- package/chunk-2HKBZFIK.js.map +0 -1
- package/chunk-3DINAQLL.js.map +0 -1
- package/chunk-3ERGAHKA.js +0 -179
- package/chunk-3ERGAHKA.js.map +0 -1
- package/chunk-6C7CGJX2.js +0 -86
- package/chunk-6C7CGJX2.js.map +0 -1
- package/chunk-6QMSWITQ.js.map +0 -1
- package/chunk-6YXUBP27.js.map +0 -1
- package/chunk-72OCFAPT.js.map +0 -1
- package/chunk-7TXHCRAG.js.map +0 -1
- package/chunk-A5XEM3GF.js.map +0 -1
- package/chunk-AN2RNJLR.js.map +0 -1
- package/chunk-B2K45IUR.js.map +0 -1
- package/chunk-B6V4VSGH.js.map +0 -1
- package/chunk-BKZBWPUH.js.map +0 -1
- package/chunk-BNTPPZCK.js.map +0 -1
- package/chunk-BNZVTLHV.js.map +0 -1
- package/chunk-CL2II6BX.js.map +0 -1
- package/chunk-D7RZNTFC.js +0 -95
- package/chunk-D7RZNTFC.js.map +0 -1
- package/chunk-DETGJAIC.js +0 -147
- package/chunk-DETGJAIC.js.map +0 -1
- package/chunk-DO3TBNSC.js.map +0 -1
- package/chunk-ESC5JCVQ.js +0 -90
- package/chunk-ESC5JCVQ.js.map +0 -1
- package/chunk-FDKIX4DC.js.map +0 -1
- package/chunk-GICKPMJU.js.map +0 -1
- package/chunk-GQA24FYG.js +0 -57
- package/chunk-GQA24FYG.js.map +0 -1
- package/chunk-H4NU7NPO.js.map +0 -1
- package/chunk-H63FYCMY.js +0 -11
- package/chunk-H63FYCMY.js.map +0 -1
- package/chunk-HL42K2NH.js.map +0 -1
- package/chunk-HNQUX43Z.js +0 -109
- package/chunk-HNQUX43Z.js.map +0 -1
- package/chunk-HRKPV66B.js +0 -32
- package/chunk-HRKPV66B.js.map +0 -1
- package/chunk-J3NSDRVH.js.map +0 -1
- package/chunk-JPNWHWAQ.js +0 -151
- package/chunk-JPNWHWAQ.js.map +0 -1
- package/chunk-KNUWZNFV.js.map +0 -1
- package/chunk-L6NCCSIP.js.map +0 -1
- package/chunk-LLHTVIM3.js.map +0 -1
- package/chunk-LW3TRU5W.js.map +0 -1
- package/chunk-LZMKSFCF.js.map +0 -1
- package/chunk-MR3JDI7E.js +0 -122
- package/chunk-MR3JDI7E.js.map +0 -1
- package/chunk-MYEZXZZC.js.map +0 -1
- package/chunk-NN6PKJWS.js.map +0 -1
- package/chunk-NSRTTYQ4.js.map +0 -1
- package/chunk-O7F3CIDV.js.map +0 -1
- package/chunk-P4O6TGDR.js.map +0 -1
- package/chunk-PF3YBUKT.js.map +0 -1
- package/chunk-PVOLDO4G.js +0 -47
- package/chunk-PVOLDO4G.js.map +0 -1
- package/chunk-QS4N4MNP.js.map +0 -1
- package/chunk-QUF2IPOZ.js.map +0 -1
- package/chunk-RTJ76X5U.js.map +0 -1
- package/chunk-SH6NG6VN.js.map +0 -1
- package/chunk-SHDFUXYV.js.map +0 -1
- package/chunk-TKO44NDI.js +0 -84
- package/chunk-TKO44NDI.js.map +0 -1
- package/chunk-TX3H3QMA.js.map +0 -1
- package/chunk-UBNHSZSE.js +0 -88
- package/chunk-UBNHSZSE.js.map +0 -1
- package/chunk-UC3ZJWOD.js +0 -73
- package/chunk-UC3ZJWOD.js.map +0 -1
- package/chunk-UGRSWP6U.js.map +0 -1
- package/chunk-VAGIAREV.js.map +0 -1
- package/chunk-WTMZT3IT.js +0 -105
- package/chunk-WTMZT3IT.js.map +0 -1
- package/chunk-WX6BP5ZP.js +0 -39
- package/chunk-WX6BP5ZP.js.map +0 -1
- package/chunk-X3PQANZO.js.map +0 -1
- package/chunk-XILQ7GXE.js.map +0 -1
- package/chunk-XL75JRUA.js.map +0 -1
- package/chunk-XZNHT6MO.js.map +0 -1
- package/chunk-Y5AYU7PK.js.map +0 -1
- package/chunk-YG7JOOLJ.js.map +0 -1
- package/chunk-YPJYW624.js +0 -195
- package/chunk-YPJYW624.js.map +0 -1
- package/chunk-YPNKBE5X.js.map +0 -1
- package/chunk-YX5VNRJX.js.map +0 -1
- package/components/accordion.js.map +0 -1
- package/components/agent-loading.js.map +0 -1
- package/components/agent-picker.js.map +0 -1
- package/components/agent-suggestion.js.map +0 -1
- package/components/announcement-bar.js.map +0 -1
- package/components/attachment.js.map +0 -1
- package/components/avatar.js.map +0 -1
- package/components/badge.js.map +0 -1
- package/components/banner-mesh.js.map +0 -1
- package/components/banner.js.map +0 -1
- package/components/bar-chart.js.map +0 -1
- package/components/breadcrumb.js.map +0 -1
- package/components/button.js.map +0 -1
- package/components/card.js.map +0 -1
- package/components/channel-chart.js.map +0 -1
- package/components/chart.js.map +0 -1
- package/components/checkbox.js.map +0 -1
- package/components/chip.js.map +0 -1
- package/components/citations.js.map +0 -1
- package/components/code-block.js.map +0 -1
- package/components/combobox.js.map +0 -1
- package/components/command-menu.js.map +0 -1
- package/components/context-menu.js.map +0 -1
- package/components/cookie-consent.js.map +0 -1
- package/components/date-picker.js.map +0 -1
- package/components/decision-card.js.map +0 -1
- package/components/dialog.js.map +0 -1
- package/components/donut-chart.js.map +0 -1
- package/components/dot.js.map +0 -1
- package/components/dropdown.js.map +0 -1
- package/components/empty-state.js.map +0 -1
- package/components/file-upload.js.map +0 -1
- package/components/floating.js.map +0 -1
- package/components/form-field.js.map +0 -1
- package/components/hover-card.js.map +0 -1
- package/components/input-otp.js.map +0 -1
- package/components/input.js.map +0 -1
- package/components/kbd.js.map +0 -1
- package/components/line-chart.js.map +0 -1
- package/components/message-actions.js.map +0 -1
- package/components/message.js.map +0 -1
- package/components/number-input.js.map +0 -1
- package/components/pagination.js.map +0 -1
- package/components/popover.js.map +0 -1
- package/components/progress.js.map +0 -1
- package/components/prompt-bar.js.map +0 -1
- package/components/radio.js.map +0 -1
- package/components/search-bar.js.map +0 -1
- package/components/segmented-control.js.map +0 -1
- package/components/select.js.map +0 -1
- package/components/sheet.js.map +0 -1
- package/components/sidebar.js.map +0 -1
- package/components/skeleton.js.map +0 -1
- package/components/slider.js.map +0 -1
- package/components/sliding-indicator.js.map +0 -1
- package/components/streaming-text.js.map +0 -1
- package/components/switch.js.map +0 -1
- package/components/table.js.map +0 -1
- package/components/tabs.js.map +0 -1
- package/components/textarea.js.map +0 -1
- package/components/thinking.js.map +0 -1
- package/components/toast.js.map +0 -1
- package/components/toggle.js.map +0 -1
- package/components/tooltip.js.map +0 -1
- package/index.js.map +0 -1
- package/lib/utils.js.map +0 -1
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { ButtonDefaultsContext } from './chunk-6DWLTGRQ.js';
|
|
2
|
+
import { cn } from './chunk-EHEXE2UV.js';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { jsx } from 'react/jsx-runtime';
|
|
5
|
+
|
|
6
|
+
function ButtonGroup({
|
|
7
|
+
orientation = "horizontal",
|
|
8
|
+
attached = true,
|
|
9
|
+
variant,
|
|
10
|
+
size,
|
|
11
|
+
shape,
|
|
12
|
+
className,
|
|
13
|
+
children,
|
|
14
|
+
...props
|
|
15
|
+
}) {
|
|
16
|
+
const defaults = React.useMemo(() => ({ variant, size, shape }), [variant, size, shape]);
|
|
17
|
+
const horizontal = orientation === "horizontal";
|
|
18
|
+
return /* @__PURE__ */ jsx(ButtonDefaultsContext.Provider, { value: defaults, children: /* @__PURE__ */ jsx(
|
|
19
|
+
"div",
|
|
20
|
+
{
|
|
21
|
+
role: "group",
|
|
22
|
+
"data-slot": "button-group",
|
|
23
|
+
"data-orientation": orientation,
|
|
24
|
+
"data-attached": attached || void 0,
|
|
25
|
+
className: cn(
|
|
26
|
+
"sa:inline-flex sa:w-fit",
|
|
27
|
+
horizontal ? "sa:flex-row sa:items-center" : "sa:flex-col sa:items-stretch",
|
|
28
|
+
attached ? [
|
|
29
|
+
"sa:[&>*]:relative sa:[&>*:hover]:z-10 sa:[&>*:focus-visible]:z-20 sa:[&>*:focus-visible]:[clip-path:none]!",
|
|
30
|
+
horizontal ? [
|
|
31
|
+
"sa:[&>*:not(:first-child)]:rounded-l-none sa:[&>*:not(:last-child)]:rounded-r-none sa:[&>*:not(:last-child)]:border-r-0",
|
|
32
|
+
"sa:[&>[data-variant=secondary]:not(:first-child)]:border-l-border-default",
|
|
33
|
+
"sa:[&>*:not(:last-child)]:[clip-path:inset(-12px_0_-12px_-12px)] sa:[&>*:not(:first-child)]:[clip-path:inset(-12px_-12px_-12px_0)]",
|
|
34
|
+
"sa:[&>*:not(:first-child):not(:last-child)]:[clip-path:inset(-12px_0)]"
|
|
35
|
+
] : [
|
|
36
|
+
"sa:[&>*:not(:first-child)]:rounded-t-none sa:[&>*:not(:last-child)]:rounded-b-none sa:[&>*:not(:last-child)]:border-b-0",
|
|
37
|
+
"sa:[&>[data-variant=secondary]:not(:first-child)]:border-t-border-default",
|
|
38
|
+
"sa:[&>*:not(:last-child)]:[clip-path:inset(-12px_-12px_0_-12px)] sa:[&>*:not(:first-child)]:[clip-path:inset(0_-12px_-12px_-12px)]",
|
|
39
|
+
"sa:[&>*:not(:first-child):not(:last-child)]:[clip-path:inset(0_-12px)]"
|
|
40
|
+
]
|
|
41
|
+
] : size === "xs" ? "sa:gap-1" : "sa:gap-2",
|
|
42
|
+
className
|
|
43
|
+
),
|
|
44
|
+
...props,
|
|
45
|
+
children
|
|
46
|
+
}
|
|
47
|
+
) });
|
|
48
|
+
}
|
|
49
|
+
function ButtonGroupSeparator({ className, ...props }) {
|
|
50
|
+
return /* @__PURE__ */ jsx(
|
|
51
|
+
"div",
|
|
52
|
+
{
|
|
53
|
+
role: "separator",
|
|
54
|
+
"aria-orientation": "vertical",
|
|
55
|
+
"data-slot": "button-group-separator",
|
|
56
|
+
className: cn(
|
|
57
|
+
"sa:shrink-0 sa:self-center sa:bg-border-default",
|
|
58
|
+
// Vertical in a row, horizontal in a column.
|
|
59
|
+
"sa:h-4 sa:w-px sa:[[data-orientation=vertical]>&]:h-px sa:[[data-orientation=vertical]>&]:w-full",
|
|
60
|
+
className
|
|
61
|
+
),
|
|
62
|
+
...props
|
|
63
|
+
}
|
|
64
|
+
);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export { ButtonGroup, ButtonGroupSeparator };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cn } from './chunk-
|
|
1
|
+
import { cn } from './chunk-EHEXE2UV.js';
|
|
2
2
|
import 'react';
|
|
3
3
|
import { jsx } from 'react/jsx-runtime';
|
|
4
4
|
|
|
@@ -11,10 +11,10 @@ function Skeleton({ shape = "text", animated = false, width, height, className,
|
|
|
11
11
|
"data-shape": shape,
|
|
12
12
|
"data-animated": animated || void 0,
|
|
13
13
|
className: cn(
|
|
14
|
-
"satin-skeleton relative shrink-0 overflow-hidden bg-bg-muted",
|
|
15
|
-
shape === "text" && "h-3 w-60 max-w-full rounded-sm",
|
|
16
|
-
shape === "circle" && "size-8 rounded-full",
|
|
17
|
-
shape === "rect" && "h-30 w-60 max-w-full rounded-lg",
|
|
14
|
+
"satin-skeleton sa:relative sa:shrink-0 sa:overflow-hidden sa:bg-bg-muted",
|
|
15
|
+
shape === "text" && "sa:h-3 sa:w-60 sa:max-w-full sa:rounded-sm",
|
|
16
|
+
shape === "circle" && "sa:size-8 sa:rounded-full",
|
|
17
|
+
shape === "rect" && "sa:h-30 sa:w-60 sa:max-w-full sa:rounded-lg",
|
|
18
18
|
className
|
|
19
19
|
),
|
|
20
20
|
style: { width, height, ...style },
|
|
@@ -24,5 +24,3 @@ function Skeleton({ shape = "text", animated = false, width, height, className,
|
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
export { Skeleton };
|
|
27
|
-
//# sourceMappingURL=chunk-YG7JOOLJ.js.map
|
|
28
|
-
//# sourceMappingURL=chunk-YG7JOOLJ.js.map
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Input } from './chunk-L5PPN42A.js';
|
|
2
|
+
import { Button } from './chunk-6DWLTGRQ.js';
|
|
3
|
+
import { useSatinLabels } from './chunk-NTSU44FY.js';
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import { EyeClosed, Eye } from 'iconoir-react';
|
|
6
|
+
import { jsx } from 'react/jsx-runtime';
|
|
7
|
+
|
|
8
|
+
function PasswordInput({ visible, onVisibleChange, autoComplete = "current-password", disabled, ...props }) {
|
|
9
|
+
const labels = useSatinLabels();
|
|
10
|
+
const [own, setOwn] = React.useState(false);
|
|
11
|
+
const shown = visible ?? own;
|
|
12
|
+
const toggle = () => {
|
|
13
|
+
if (visible === void 0) setOwn(!shown);
|
|
14
|
+
onVisibleChange?.(!shown);
|
|
15
|
+
};
|
|
16
|
+
return /* @__PURE__ */ jsx(
|
|
17
|
+
Input,
|
|
18
|
+
{
|
|
19
|
+
...props,
|
|
20
|
+
disabled,
|
|
21
|
+
type: shown ? "text" : "password",
|
|
22
|
+
autoComplete,
|
|
23
|
+
trailingIcon: /* @__PURE__ */ jsx(
|
|
24
|
+
Button,
|
|
25
|
+
{
|
|
26
|
+
variant: "tertiary",
|
|
27
|
+
size: "xs",
|
|
28
|
+
iconOnly: true,
|
|
29
|
+
disabled,
|
|
30
|
+
"aria-label": shown ? labels.hidePassword : labels.showPassword,
|
|
31
|
+
"aria-pressed": shown,
|
|
32
|
+
onMouseDown: (e) => e.preventDefault(),
|
|
33
|
+
onClick: toggle,
|
|
34
|
+
className: "sa:-m-1",
|
|
35
|
+
children: shown ? /* @__PURE__ */ jsx(EyeClosed, {}) : /* @__PURE__ */ jsx(Eye, {})
|
|
36
|
+
}
|
|
37
|
+
)
|
|
38
|
+
}
|
|
39
|
+
);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export { PasswordInput };
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { SLIDE_MS } from './chunk-
|
|
2
|
-
import { Checkbox } from './chunk-
|
|
3
|
-
import { Button } from './chunk-
|
|
4
|
-
import {
|
|
1
|
+
import { SLIDE_MS } from './chunk-XETMIETJ.js';
|
|
2
|
+
import { Checkbox } from './chunk-W2QQQWNE.js';
|
|
3
|
+
import { Button } from './chunk-6DWLTGRQ.js';
|
|
4
|
+
import { useSatinLabels } from './chunk-NTSU44FY.js';
|
|
5
|
+
import { cn } from './chunk-EHEXE2UV.js';
|
|
5
6
|
import * as React from 'react';
|
|
6
7
|
import { RadioGroup } from 'radix-ui';
|
|
7
8
|
import { Check, NavArrowLeft, NavArrowRight, EditPencil } from 'iconoir-react';
|
|
@@ -49,20 +50,20 @@ function DecisionCard({
|
|
|
49
50
|
const bodyRef = React.useRef(null);
|
|
50
51
|
useStepSlide(question, step, cardRef, [titleRef, bodyRef]);
|
|
51
52
|
const card = cn(
|
|
52
|
-
"flex w-[364px] max-w-full flex-col overflow-clip rounded-2xl border border-border-default bg-bg-popover",
|
|
53
|
-
"[box-shadow:0_1px_2px_0_var(--effect-shadow-xs)]",
|
|
53
|
+
"sa:flex sa:w-[364px] sa:max-w-full sa:flex-col sa:overflow-clip sa:rounded-2xl sa:border sa:border-border-default sa:bg-bg-popover",
|
|
54
|
+
"sa:[box-shadow:0_1px_2px_0_var(--effect-shadow-xs)]",
|
|
54
55
|
className
|
|
55
56
|
);
|
|
56
57
|
if (type === "summary") {
|
|
57
58
|
const values = asArray(value);
|
|
58
59
|
const labels = values.map((v) => options.find((o) => o.value === v)?.label ?? v);
|
|
59
|
-
return /* @__PURE__ */ jsx("div", { "data-slot": "decision-card", "data-type": "summary", className: card, ...props, children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2.5 py-2.5 pr-2.5 pl-3", children: [
|
|
60
|
-
/* @__PURE__ */ jsx("span", { className: "flex size-6 shrink-0 items-center justify-center rounded-full bg-action-primary-bg text-action-primary-fg", children: /* @__PURE__ */ jsx(Check, { "aria-hidden": true, className: "size-icon-size-sm [stroke-width:1.875]" }) }),
|
|
61
|
-
/* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
62
|
-
/* @__PURE__ */ jsx("span", { className: "truncate text-xs text-text-muted", children: title }),
|
|
63
|
-
/* @__PURE__ */ jsx("span", { className: "truncate text-sm font-medium text-text-default", children: labels.join(" \xB7 ") })
|
|
60
|
+
return /* @__PURE__ */ jsx("div", { "data-slot": "decision-card", "data-type": "summary", className: card, ...props, children: /* @__PURE__ */ jsxs("div", { className: "sa:flex sa:items-center sa:gap-2.5 sa:py-2.5 sa:pr-2.5 sa:pl-3", children: [
|
|
61
|
+
/* @__PURE__ */ jsx("span", { className: "sa:flex sa:size-6 sa:shrink-0 sa:items-center sa:justify-center sa:rounded-full sa:bg-action-primary-bg sa:text-action-primary-fg", children: /* @__PURE__ */ jsx(Check, { "aria-hidden": true, className: "sa:size-icon-size-sm sa:[stroke-width:1.875]" }) }),
|
|
62
|
+
/* @__PURE__ */ jsxs("div", { className: "sa:flex sa:min-w-0 sa:flex-1 sa:flex-col", children: [
|
|
63
|
+
/* @__PURE__ */ jsx("span", { className: "sa:truncate sa:text-xs sa:text-text-muted", children: title }),
|
|
64
|
+
/* @__PURE__ */ jsx("span", { className: "sa:truncate sa:text-sm sa:font-medium sa:text-text-default", children: labels.join(" \xB7 ") })
|
|
64
65
|
] }),
|
|
65
|
-
onEdit && /* @__PURE__ */ jsx(Button, { variant: "tertiary", onClick: onEdit, className: "text-text-muted", "aria-label": `Change ${title}`, children: "Change" })
|
|
66
|
+
onEdit && /* @__PURE__ */ jsx(Button, { variant: "tertiary", onClick: onEdit, className: "sa:text-text-muted", "aria-label": `Change ${title}`, children: "Change" })
|
|
66
67
|
] }) });
|
|
67
68
|
}
|
|
68
69
|
const empty = type === "radio" ? !value : type === "checkbox" || type === "chips" ? asArray(value).length === 0 : false;
|
|
@@ -89,18 +90,18 @@ function DecisionCard({
|
|
|
89
90
|
onNextStep
|
|
90
91
|
}
|
|
91
92
|
),
|
|
92
|
-
/* @__PURE__ */ jsx("div", { className: "relative", children: /* @__PURE__ */ jsxs("div", { ref: bodyRef, children: [
|
|
93
|
+
/* @__PURE__ */ jsx("div", { className: "sa:relative", children: /* @__PURE__ */ jsxs("div", { ref: bodyRef, children: [
|
|
93
94
|
type === "radio" && /* @__PURE__ */ jsx(
|
|
94
95
|
RadioGroup.Root,
|
|
95
96
|
{
|
|
96
97
|
"aria-labelledby": titleId,
|
|
97
98
|
value: typeof value === "string" ? value : "",
|
|
98
99
|
onValueChange: set,
|
|
99
|
-
className: "flex flex-col gap-0.5 px-2",
|
|
100
|
+
className: "sa:flex sa:flex-col sa:gap-0.5 sa:px-2",
|
|
100
101
|
children: options.map((option) => /* @__PURE__ */ jsx(DecisionItem, { children: /* @__PURE__ */ jsx(RadioRow, { option }) }, option.value))
|
|
101
102
|
}
|
|
102
103
|
),
|
|
103
|
-
type === "checkbox" && /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-0.5 px-2", children: options.map((option) => {
|
|
104
|
+
type === "checkbox" && /* @__PURE__ */ jsx("div", { className: "sa:flex sa:flex-col sa:gap-0.5 sa:px-2", children: options.map((option) => {
|
|
104
105
|
const checked = asArray(value).includes(option.value);
|
|
105
106
|
return /* @__PURE__ */ jsx(DecisionItem, { children: /* @__PURE__ */ jsx(
|
|
106
107
|
CheckboxRow,
|
|
@@ -111,7 +112,7 @@ function DecisionCard({
|
|
|
111
112
|
}
|
|
112
113
|
) }, option.value);
|
|
113
114
|
}) }),
|
|
114
|
-
type === "chips" && /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-1.5 px-3 pb-1", children: options.map((option) => {
|
|
115
|
+
type === "chips" && /* @__PURE__ */ jsx("div", { className: "sa:flex sa:flex-wrap sa:gap-1.5 sa:px-3 sa:pb-1", children: options.map((option) => {
|
|
115
116
|
const chosen = asArray(value);
|
|
116
117
|
const selected = chosen.includes(option.value);
|
|
117
118
|
const full = max !== void 0 && chosen.length >= max && !selected;
|
|
@@ -142,8 +143,8 @@ function DecisionCard({
|
|
|
142
143
|
question
|
|
143
144
|
)
|
|
144
145
|
] }) }),
|
|
145
|
-
type !== "draft" && /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-end gap-2 px-3 pt-4 pb-3", children: [
|
|
146
|
-
onSkip && /* @__PURE__ */ jsx(Button, { variant: "tertiary", onClick: onSkip, className: "text-text-muted", children: skipLabel }),
|
|
146
|
+
type !== "draft" && /* @__PURE__ */ jsxs("div", { className: "sa:flex sa:items-center sa:justify-end sa:gap-2 sa:px-3 sa:pt-4 sa:pb-3", children: [
|
|
147
|
+
onSkip && /* @__PURE__ */ jsx(Button, { variant: "tertiary", onClick: onSkip, className: "sa:text-text-muted", children: skipLabel }),
|
|
147
148
|
/* @__PURE__ */ jsx(Button, { onClick: () => onContinue?.(value), disabled: empty, children: continueLabel ?? "Continue" })
|
|
148
149
|
] })
|
|
149
150
|
]
|
|
@@ -159,12 +160,13 @@ function Header({
|
|
|
159
160
|
onPreviousStep,
|
|
160
161
|
onNextStep
|
|
161
162
|
}) {
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
163
|
+
const labels = useSatinLabels();
|
|
164
|
+
return /* @__PURE__ */ jsxs("div", { className: "sa:flex sa:items-start sa:gap-0.5 sa:py-3 sa:pr-px sa:pl-3", children: [
|
|
165
|
+
/* @__PURE__ */ jsx("div", { className: "sa:relative sa:min-w-0 sa:flex-1", children: /* @__PURE__ */ jsxs("div", { ref: titleRef, className: "sa:flex sa:flex-col sa:gap-0.5", children: [
|
|
166
|
+
/* @__PURE__ */ jsx("p", { id: titleId, className: "sa:text-base sa:leading-5 sa:font-medium sa:tracking-normal sa:text-text-default", children: title }),
|
|
167
|
+
hint && /* @__PURE__ */ jsx("p", { className: "sa:text-base sa:text-text-muted", children: hint })
|
|
166
168
|
] }) }),
|
|
167
|
-
step && /* @__PURE__ */ jsxs("div", { className: "flex h-[21px] shrink-0 items-center gap-1 pr-2", children: [
|
|
169
|
+
step && /* @__PURE__ */ jsxs("div", { className: "sa:flex sa:h-[21px] sa:shrink-0 sa:items-center sa:gap-1 sa:pr-2", children: [
|
|
168
170
|
/* @__PURE__ */ jsx(
|
|
169
171
|
Button,
|
|
170
172
|
{
|
|
@@ -172,13 +174,13 @@ function Header({
|
|
|
172
174
|
size: "xs",
|
|
173
175
|
shape: "rounded",
|
|
174
176
|
iconOnly: true,
|
|
175
|
-
"aria-label":
|
|
177
|
+
"aria-label": labels.previousQuestion,
|
|
176
178
|
disabled: !onPreviousStep,
|
|
177
179
|
onClick: onPreviousStep,
|
|
178
180
|
children: /* @__PURE__ */ jsx(NavArrowLeft, { "aria-hidden": true })
|
|
179
181
|
}
|
|
180
182
|
),
|
|
181
|
-
/* @__PURE__ */ jsx("span", { "aria-live": "polite", className: "text-sm whitespace-nowrap text-text-muted tabular-nums", children: step }),
|
|
183
|
+
/* @__PURE__ */ jsx("span", { "aria-live": "polite", className: "sa:text-sm sa:whitespace-nowrap sa:text-text-muted sa:tabular-nums", children: step }),
|
|
182
184
|
/* @__PURE__ */ jsx(
|
|
183
185
|
Button,
|
|
184
186
|
{
|
|
@@ -186,7 +188,7 @@ function Header({
|
|
|
186
188
|
size: "xs",
|
|
187
189
|
shape: "rounded",
|
|
188
190
|
iconOnly: true,
|
|
189
|
-
"aria-label":
|
|
191
|
+
"aria-label": labels.nextQuestion,
|
|
190
192
|
disabled: !onNextStep,
|
|
191
193
|
onClick: onNextStep,
|
|
192
194
|
children: /* @__PURE__ */ jsx(NavArrowRight, { "aria-hidden": true })
|
|
@@ -252,30 +254,30 @@ function DecisionItem({ children, "data-force": force }) {
|
|
|
252
254
|
"div",
|
|
253
255
|
{
|
|
254
256
|
"data-force": force,
|
|
255
|
-
className: "rounded-md p-1 transition-[background-color] duration-(--duration-fast) ease-(--ease-out) satin-hover:bg-action-secondary-bg",
|
|
257
|
+
className: "sa:rounded-md sa:p-1 sa:transition-[background-color] sa:duration-(--sa-duration-fast) sa:ease-(--sa-ease-out) sa:satin-hover:bg-action-secondary-bg",
|
|
256
258
|
children
|
|
257
259
|
}
|
|
258
260
|
);
|
|
259
261
|
}
|
|
260
262
|
function RadioRow({ option }) {
|
|
261
263
|
const id = React.useId();
|
|
262
|
-
return /* @__PURE__ */ jsxs("div", { className: "flex h-5 items-center gap-2", children: [
|
|
264
|
+
return /* @__PURE__ */ jsxs("div", { className: "sa:flex sa:h-5 sa:items-center sa:gap-2", children: [
|
|
263
265
|
/* @__PURE__ */ jsx(
|
|
264
266
|
RadioGroup.Item,
|
|
265
267
|
{
|
|
266
268
|
id,
|
|
267
269
|
value: option.value,
|
|
268
270
|
className: cn(
|
|
269
|
-
"flex size-4 shrink-0 items-center justify-center rounded-full border border-border-strong bg-bg-field outline-none",
|
|
270
|
-
"[box-shadow:0_1px_2px_0_var(--effect-shadow-xs)]",
|
|
271
|
-
"transition-[background-color,border-color,box-shadow] duration-(--duration-fast) ease-(--ease-out)",
|
|
272
|
-
"data-[state=checked]:border-action-primary-bg data-[state=checked]:bg-action-primary-bg data-[state=checked]:[box-shadow:none]",
|
|
273
|
-
"focus-visible:[box-shadow:0_0_0_2px_var(--action-focus-ring)] data-[state=checked]:focus-visible:[box-shadow:0_0_0_2px_var(--action-focus-ring)]"
|
|
271
|
+
"sa:flex sa:size-4 sa:shrink-0 sa:items-center sa:justify-center sa:rounded-full sa:border sa:border-border-strong sa:bg-bg-field sa:outline-none",
|
|
272
|
+
"sa:[box-shadow:0_1px_2px_0_var(--effect-shadow-xs)]",
|
|
273
|
+
"sa:transition-[background-color,border-color,box-shadow] sa:duration-(--sa-duration-fast) sa:ease-(--sa-ease-out)",
|
|
274
|
+
"sa:data-[state=checked]:border-action-primary-bg sa:data-[state=checked]:bg-action-primary-bg sa:data-[state=checked]:[box-shadow:none]",
|
|
275
|
+
"sa:focus-visible:[box-shadow:0_0_0_2px_var(--action-focus-ring)] sa:data-[state=checked]:focus-visible:[box-shadow:0_0_0_2px_var(--action-focus-ring)]"
|
|
274
276
|
),
|
|
275
|
-
children: /* @__PURE__ */ jsx(RadioGroup.Indicator, { className: "size-1.5 rounded-full bg-text-on-solid" })
|
|
277
|
+
children: /* @__PURE__ */ jsx(RadioGroup.Indicator, { className: "sa:size-1.5 sa:rounded-full sa:bg-text-on-solid" })
|
|
276
278
|
}
|
|
277
279
|
),
|
|
278
|
-
/* @__PURE__ */ jsx("label", { htmlFor: id, className: "min-w-0 flex-1 text-base text-text-default", children: option.label })
|
|
280
|
+
/* @__PURE__ */ jsx("label", { htmlFor: id, className: "sa:min-w-0 sa:flex-1 sa:text-base sa:text-text-default", children: option.label })
|
|
279
281
|
] });
|
|
280
282
|
}
|
|
281
283
|
function CheckboxRow({
|
|
@@ -284,9 +286,9 @@ function CheckboxRow({
|
|
|
284
286
|
onCheckedChange
|
|
285
287
|
}) {
|
|
286
288
|
const id = React.useId();
|
|
287
|
-
return /* @__PURE__ */ jsxs("div", { className: "flex h-5 items-center gap-2", children: [
|
|
289
|
+
return /* @__PURE__ */ jsxs("div", { className: "sa:flex sa:h-5 sa:items-center sa:gap-2", children: [
|
|
288
290
|
/* @__PURE__ */ jsx(Checkbox, { id, checked, onCheckedChange: (c) => onCheckedChange(c === true) }),
|
|
289
|
-
/* @__PURE__ */ jsx("label", { htmlFor: id, className: "min-w-0 flex-1 text-base text-text-default", children: option.label })
|
|
291
|
+
/* @__PURE__ */ jsx("label", { htmlFor: id, className: "sa:min-w-0 sa:flex-1 sa:text-base sa:text-text-default", children: option.label })
|
|
290
292
|
] });
|
|
291
293
|
}
|
|
292
294
|
function DecisionChip({
|
|
@@ -303,12 +305,12 @@ function DecisionChip({
|
|
|
303
305
|
disabled,
|
|
304
306
|
onClick: () => onPressedChange(!selected),
|
|
305
307
|
className: cn(
|
|
306
|
-
"inline-flex h-control-height shrink-0 items-center gap-1.5 rounded-pill border pr-2.5 pl-2 text-base font-medium outline-none select-none",
|
|
307
|
-
"transition-[background-color,border-color,color,box-shadow,transform] duration-(--duration-fast) ease-(--ease-out) active:scale-[0.97]",
|
|
308
|
-
"[&_svg]:size-icon-size-sm [&_svg]:shrink-0 [&_svg]:[stroke-width:1.875]",
|
|
309
|
-
"focus-visible:[box-shadow:0_0_0_2px_var(--action-focus-ring)]",
|
|
310
|
-
"disabled:pointer-events-none disabled:opacity-50",
|
|
311
|
-
selected ? "border-status-brand-fg bg-status-brand-bg text-status-brand-fg" : "border-border-default bg-bg-popover text-text-default hover:border-border-strong [&_svg]:text-text-muted"
|
|
308
|
+
"sa:inline-flex sa:h-control-height sa:shrink-0 sa:items-center sa:gap-1.5 sa:rounded-pill sa:border sa:pr-2.5 sa:pl-2 sa:text-base sa:font-medium sa:outline-none sa:select-none",
|
|
309
|
+
"sa:transition-[background-color,border-color,color,box-shadow,transform] sa:duration-(--sa-duration-fast) sa:ease-(--sa-ease-out) sa:active:scale-[0.97]",
|
|
310
|
+
"sa:[&_svg]:size-icon-size-sm sa:[&_svg]:shrink-0 sa:[&_svg]:[stroke-width:1.875]",
|
|
311
|
+
"sa:focus-visible:[box-shadow:0_0_0_2px_var(--action-focus-ring)]",
|
|
312
|
+
"sa:disabled:pointer-events-none sa:disabled:opacity-50",
|
|
313
|
+
selected ? "sa:border-status-brand-fg sa:bg-status-brand-bg sa:text-status-brand-fg" : "sa:border-border-default sa:bg-bg-popover sa:text-text-default sa:hover:border-border-strong sa:[&_svg]:text-text-muted"
|
|
312
314
|
),
|
|
313
315
|
children: [
|
|
314
316
|
option.icon,
|
|
@@ -372,8 +374,8 @@ function Ranking({
|
|
|
372
374
|
listRef.current?.children[to]?.focus();
|
|
373
375
|
}
|
|
374
376
|
};
|
|
375
|
-
return /* @__PURE__ */ jsxs("div", { className: "px-3 pb-1", children: [
|
|
376
|
-
/* @__PURE__ */ jsx("ol", { ref: listRef, "aria-labelledby": labelledBy, className: "flex flex-col gap-1.5", children: order.map((item, i) => {
|
|
377
|
+
return /* @__PURE__ */ jsxs("div", { className: "sa:px-3 sa:pb-1", children: [
|
|
378
|
+
/* @__PURE__ */ jsx("ol", { ref: listRef, "aria-labelledby": labelledBy, className: "sa:flex sa:flex-col sa:gap-1.5", children: order.map((item, i) => {
|
|
377
379
|
const lifted = dragging === item;
|
|
378
380
|
return /* @__PURE__ */ jsxs(
|
|
379
381
|
"li",
|
|
@@ -388,11 +390,11 @@ function Ranking({
|
|
|
388
390
|
onPointerCancel: onPointerUp,
|
|
389
391
|
onKeyDown: (e) => onKeyDown(e, i),
|
|
390
392
|
className: cn(
|
|
391
|
-
"group/rank flex cursor-grab touch-none items-center gap-2 rounded-lg border border-border-default bg-bg-popover py-2 pr-2.5 pl-2 outline-none select-none",
|
|
392
|
-
"transition-[border-color,box-shadow] duration-(--duration-fast) ease-(--ease-out)",
|
|
393
|
-
"hover:border-border-strong focus-visible:[box-shadow:0_0_0_2px_var(--action-focus-ring)]",
|
|
394
|
-
"data-dragging:cursor-grabbing data-dragging:border-border-strong",
|
|
395
|
-
"data-dragging:[box-shadow:0_4px_6px_-1px_var(--effect-shadow-sm),0_2px_4px_-2px_var(--effect-shadow-sm)]"
|
|
393
|
+
"sa:group/rank sa:flex sa:cursor-grab sa:touch-none sa:items-center sa:gap-2 sa:rounded-lg sa:border sa:border-border-default sa:bg-bg-popover sa:py-2 sa:pr-2.5 sa:pl-2 sa:outline-none sa:select-none",
|
|
394
|
+
"sa:transition-[border-color,box-shadow] sa:duration-(--sa-duration-fast) sa:ease-(--sa-ease-out)",
|
|
395
|
+
"sa:hover:border-border-strong sa:focus-visible:[box-shadow:0_0_0_2px_var(--action-focus-ring)]",
|
|
396
|
+
"sa:data-dragging:cursor-grabbing sa:data-dragging:border-border-strong",
|
|
397
|
+
"sa:data-dragging:[box-shadow:0_4px_6px_-1px_var(--effect-shadow-sm),0_2px_4px_-2px_var(--effect-shadow-sm)]"
|
|
396
398
|
),
|
|
397
399
|
children: [
|
|
398
400
|
/* @__PURE__ */ jsx(Grip, {}),
|
|
@@ -400,19 +402,19 @@ function Ranking({
|
|
|
400
402
|
"span",
|
|
401
403
|
{
|
|
402
404
|
className: cn(
|
|
403
|
-
"flex size-5 shrink-0 items-center justify-center rounded-full text-xs tabular-nums",
|
|
404
|
-
i === 0 ? "bg-action-primary-bg text-action-primary-fg" : "bg-bg-muted text-text-muted"
|
|
405
|
+
"sa:flex sa:size-5 sa:shrink-0 sa:items-center sa:justify-center sa:rounded-full sa:text-xs sa:tabular-nums",
|
|
406
|
+
i === 0 ? "sa:bg-action-primary-bg sa:text-action-primary-fg" : "sa:bg-bg-muted sa:text-text-muted"
|
|
405
407
|
),
|
|
406
408
|
children: i + 1
|
|
407
409
|
}
|
|
408
410
|
),
|
|
409
|
-
/* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1 text-base font-medium text-text-default", children: label(item) })
|
|
411
|
+
/* @__PURE__ */ jsx("span", { className: "sa:min-w-0 sa:flex-1 sa:text-base sa:font-medium sa:text-text-default", children: label(item) })
|
|
410
412
|
]
|
|
411
413
|
},
|
|
412
414
|
item
|
|
413
415
|
);
|
|
414
416
|
}) }),
|
|
415
|
-
/* @__PURE__ */ jsx("span", { "aria-live": "polite", className: "sr-only", children: announcement })
|
|
417
|
+
/* @__PURE__ */ jsx("span", { "aria-live": "polite", className: "sa:sr-only", children: announcement })
|
|
416
418
|
] });
|
|
417
419
|
}
|
|
418
420
|
function Grip() {
|
|
@@ -423,7 +425,7 @@ function Grip() {
|
|
|
423
425
|
height: "14",
|
|
424
426
|
viewBox: "0 0 8 14",
|
|
425
427
|
"aria-hidden": true,
|
|
426
|
-
className: "shrink-0 fill-current text-text-subtle group-data-dragging/rank:text-text-muted",
|
|
428
|
+
className: "sa:shrink-0 sa:fill-current sa:text-text-subtle sa:group-data-dragging/rank:text-text-muted",
|
|
427
429
|
children: [1.25, 6.75, 12.25].map((cy) => /* @__PURE__ */ jsxs(React.Fragment, { children: [
|
|
428
430
|
/* @__PURE__ */ jsx("circle", { cx: "1.25", cy, r: "1.25" }),
|
|
429
431
|
/* @__PURE__ */ jsx("circle", { cx: "6.25", cy, r: "1.25" })
|
|
@@ -441,6 +443,7 @@ function Draft({
|
|
|
441
443
|
continueLabel,
|
|
442
444
|
skipLabel
|
|
443
445
|
}) {
|
|
446
|
+
const labels = useSatinLabels();
|
|
444
447
|
const [editing, setEditing] = React.useState(false);
|
|
445
448
|
const areaRef = React.useRef(null);
|
|
446
449
|
React.useLayoutEffect(() => {
|
|
@@ -450,36 +453,36 @@ function Draft({
|
|
|
450
453
|
el.style.height = `${el.scrollHeight}px`;
|
|
451
454
|
}, [value, editing]);
|
|
452
455
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
453
|
-
/* @__PURE__ */ jsx("div", { className: "px-3 pb-1", children: /* @__PURE__ */ jsxs(
|
|
456
|
+
/* @__PURE__ */ jsx("div", { className: "sa:px-3 sa:pb-1", children: /* @__PURE__ */ jsxs(
|
|
454
457
|
"div",
|
|
455
458
|
{
|
|
456
459
|
className: cn(
|
|
457
|
-
"flex flex-col gap-2 rounded-2xl rounded-tl-[4px] border border-border-default bg-bg-popover px-3 py-2.5 text-base text-text-default",
|
|
458
|
-
"[box-shadow:0_1px_2px_0_var(--effect-shadow-xs)]",
|
|
459
|
-
"transition-[box-shadow,border-color] duration-(--duration-fast) ease-(--ease-out)",
|
|
460
|
-
"has-[textarea:focus-visible]:border-border-strong has-[textarea:focus-visible]:[box-shadow:0_0_0_2px_var(--action-focus-ring)]"
|
|
460
|
+
"sa:flex sa:flex-col sa:gap-2 sa:rounded-2xl sa:rounded-tl-[4px] sa:border sa:border-border-default sa:bg-bg-popover sa:px-3 sa:py-2.5 sa:text-base sa:text-text-default",
|
|
461
|
+
"sa:[box-shadow:0_1px_2px_0_var(--effect-shadow-xs)]",
|
|
462
|
+
"sa:transition-[box-shadow,border-color] sa:duration-(--sa-duration-fast) sa:ease-(--sa-ease-out)",
|
|
463
|
+
"sa:has-[textarea:focus-visible]:border-border-strong sa:has-[textarea:focus-visible]:[box-shadow:0_0_0_2px_var(--action-focus-ring)]"
|
|
461
464
|
),
|
|
462
465
|
children: [
|
|
463
|
-
title && /* @__PURE__ */ jsx("p", { className: "leading-[18px] font-medium", children: title }),
|
|
466
|
+
title && /* @__PURE__ */ jsx("p", { className: "sa:leading-[18px] sa:font-medium", children: title }),
|
|
464
467
|
editing ? /* @__PURE__ */ jsx(
|
|
465
468
|
"textarea",
|
|
466
469
|
{
|
|
467
470
|
ref: areaRef,
|
|
468
|
-
"aria-label":
|
|
471
|
+
"aria-label": labels.draft,
|
|
469
472
|
value,
|
|
470
473
|
onChange: (e) => onValueChange(e.target.value),
|
|
471
|
-
className: "w-full resize-none bg-transparent outline-none"
|
|
474
|
+
className: "sa:w-full sa:resize-none sa:bg-transparent sa:outline-none"
|
|
472
475
|
}
|
|
473
|
-
) : /* @__PURE__ */ jsx("p", { className: "whitespace-pre-wrap", children: value })
|
|
476
|
+
) : /* @__PURE__ */ jsx("p", { className: "sa:whitespace-pre-wrap", children: value })
|
|
474
477
|
]
|
|
475
478
|
}
|
|
476
479
|
) }),
|
|
477
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-2 px-3 pt-4 pb-3", children: [
|
|
480
|
+
/* @__PURE__ */ jsxs("div", { className: "sa:flex sa:items-center sa:justify-between sa:gap-2 sa:px-3 sa:pt-4 sa:pb-3", children: [
|
|
478
481
|
/* @__PURE__ */ jsxs(
|
|
479
482
|
Button,
|
|
480
483
|
{
|
|
481
484
|
variant: "tertiary",
|
|
482
|
-
className: "text-text-muted",
|
|
485
|
+
className: "sa:text-text-muted",
|
|
483
486
|
"aria-pressed": editing,
|
|
484
487
|
onClick: () => {
|
|
485
488
|
setEditing(true);
|
|
@@ -492,8 +495,8 @@ function Draft({
|
|
|
492
495
|
]
|
|
493
496
|
}
|
|
494
497
|
),
|
|
495
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
496
|
-
onSkip && /* @__PURE__ */ jsx(Button, { variant: "tertiary", onClick: onSkip, className: "text-text-muted", children: skipLabel }),
|
|
498
|
+
/* @__PURE__ */ jsxs("div", { className: "sa:flex sa:items-center sa:gap-2", children: [
|
|
499
|
+
onSkip && /* @__PURE__ */ jsx(Button, { variant: "tertiary", onClick: onSkip, className: "sa:text-text-muted", children: skipLabel }),
|
|
497
500
|
/* @__PURE__ */ jsx(Button, { onClick: onContinue, disabled: !value.trim(), children: continueLabel })
|
|
498
501
|
] })
|
|
499
502
|
] })
|
|
@@ -516,5 +519,3 @@ function toggle(list, item, on) {
|
|
|
516
519
|
}
|
|
517
520
|
|
|
518
521
|
export { DecisionCard, DecisionItemPreview };
|
|
519
|
-
//# sourceMappingURL=chunk-TX3H3QMA.js.map
|
|
520
|
-
//# sourceMappingURL=chunk-TX3H3QMA.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { bannerMesh } from './chunk-
|
|
2
|
-
import { Button } from './chunk-
|
|
3
|
-
import { cn } from './chunk-
|
|
1
|
+
import { bannerMesh } from './chunk-YYFAZQ25.js';
|
|
2
|
+
import { Button } from './chunk-6DWLTGRQ.js';
|
|
3
|
+
import { cn } from './chunk-EHEXE2UV.js';
|
|
4
4
|
import 'react';
|
|
5
5
|
import { cva } from 'class-variance-authority';
|
|
6
6
|
import { Xmark } from 'iconoir-react';
|
|
@@ -8,26 +8,26 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
|
8
8
|
|
|
9
9
|
var bannerVariants = cva(
|
|
10
10
|
[
|
|
11
|
-
"relative isolate flex max-w-full overflow-clip border border-border-default bg-bg-card",
|
|
12
|
-
"[box-shadow:0_2px_4px_-2px_var(--effect-shadow-sm),0_4px_6px_-1px_var(--effect-shadow-sm)]"
|
|
11
|
+
"sa:relative sa:isolate sa:flex sa:max-w-full sa:overflow-clip sa:border sa:border-border-default sa:bg-bg-card",
|
|
12
|
+
"sa:[box-shadow:0_2px_4px_-2px_var(--effect-shadow-sm),0_4px_6px_-1px_var(--effect-shadow-sm)]"
|
|
13
13
|
],
|
|
14
14
|
{
|
|
15
15
|
variants: {
|
|
16
16
|
layout: {
|
|
17
|
-
horizontal: "w-[450px] items-center gap-2.5 px-3 py-2",
|
|
18
|
-
sidebar: "w-[222px] flex-col items-start gap-3 p-3"
|
|
17
|
+
horizontal: "sa:w-[450px] sa:items-center sa:gap-2.5 sa:px-3 sa:py-2",
|
|
18
|
+
sidebar: "sa:w-[222px] sa:flex-col sa:items-start sa:gap-3 sa:p-3"
|
|
19
19
|
},
|
|
20
20
|
shape: {
|
|
21
|
-
rounded: "rounded-xl",
|
|
22
|
-
pill: "rounded-3xl"
|
|
21
|
+
rounded: "sa:rounded-xl",
|
|
22
|
+
pill: "sa:rounded-3xl"
|
|
23
23
|
},
|
|
24
24
|
lines: {
|
|
25
25
|
one: "",
|
|
26
26
|
two: ""
|
|
27
27
|
}
|
|
28
28
|
},
|
|
29
|
-
compoundVariants: [{ layout: "horizontal", shape: "pill", lines: "one", className: "rounded-pill" }],
|
|
30
|
-
defaultVariants: { layout: "horizontal", shape: "rounded", lines: "one" }
|
|
29
|
+
compoundVariants: [{ layout: "horizontal", shape: "pill", lines: "one", className: "sa:rounded-pill" }],
|
|
30
|
+
defaultVariants: { layout: "horizontal", shape: "sa:rounded", lines: "one" }
|
|
31
31
|
}
|
|
32
32
|
);
|
|
33
33
|
function Banner({
|
|
@@ -59,8 +59,8 @@ function Banner({
|
|
|
59
59
|
"aria-label": dismissLabel,
|
|
60
60
|
onClick: onDismiss,
|
|
61
61
|
className: cn(
|
|
62
|
-
sidebar && "absolute top-[3px] right-[3px] z-10",
|
|
63
|
-
primary && "text-action-primary-fg [&_svg]:text-action-primary-fg satin-hover:bg-action-primary-bg-hover"
|
|
62
|
+
sidebar && "sa:absolute sa:top-[3px] sa:right-[3px] sa:z-10",
|
|
63
|
+
primary && "sa:text-action-primary-fg sa:[&_svg]:text-action-primary-fg sa:satin-hover:bg-action-primary-bg-hover"
|
|
64
64
|
),
|
|
65
65
|
children: /* @__PURE__ */ jsx(Xmark, { "aria-hidden": true })
|
|
66
66
|
}
|
|
@@ -74,7 +74,7 @@ function Banner({
|
|
|
74
74
|
"data-tone": tone,
|
|
75
75
|
className: cn(
|
|
76
76
|
bannerVariants({ layout, shape, lines }),
|
|
77
|
-
primary && "border-action-primary-border bg-action-primary-bg",
|
|
77
|
+
primary && "sa:border-action-primary-border sa:bg-action-primary-bg",
|
|
78
78
|
shimmer && "satin-sheen",
|
|
79
79
|
className
|
|
80
80
|
),
|
|
@@ -86,7 +86,7 @@ function Banner({
|
|
|
86
86
|
src: glow.dark,
|
|
87
87
|
alt: "",
|
|
88
88
|
"aria-hidden": true,
|
|
89
|
-
className: "pointer-events-none absolute
|
|
89
|
+
className: "sa:pointer-events-none sa:absolute sa:-inset-px sa:-z-10 sa:size-[calc(100%+2px)] sa:max-w-none sa:object-cover sa:mix-blend-screen"
|
|
90
90
|
}
|
|
91
91
|
),
|
|
92
92
|
background === "mesh" && !primary && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
@@ -96,7 +96,7 @@ function Banner({
|
|
|
96
96
|
src: glow.light,
|
|
97
97
|
alt: "",
|
|
98
98
|
"aria-hidden": true,
|
|
99
|
-
className: "pointer-events-none absolute
|
|
99
|
+
className: "sa:pointer-events-none sa:absolute sa:-inset-px sa:-z-10 sa:size-[calc(100%+2px)] sa:max-w-none sa:object-cover sa:mix-blend-multiply"
|
|
100
100
|
}
|
|
101
101
|
),
|
|
102
102
|
/* @__PURE__ */ jsx(
|
|
@@ -105,7 +105,7 @@ function Banner({
|
|
|
105
105
|
src: glow.dark,
|
|
106
106
|
alt: "",
|
|
107
107
|
"aria-hidden": true,
|
|
108
|
-
className: "pointer-events-none absolute
|
|
108
|
+
className: "sa:pointer-events-none sa:absolute sa:-inset-px sa:-z-10 sa:size-[calc(100%+2px)] sa:max-w-none sa:object-cover sa:mix-blend-screen"
|
|
109
109
|
}
|
|
110
110
|
)
|
|
111
111
|
] }),
|
|
@@ -113,20 +113,20 @@ function Banner({
|
|
|
113
113
|
"div",
|
|
114
114
|
{
|
|
115
115
|
className: cn(
|
|
116
|
-
"flex min-w-0 flex-col justify-center text-sm",
|
|
117
|
-
sidebar ? "w-full" : "flex-1",
|
|
118
|
-
description && "gap-0.5"
|
|
116
|
+
"sa:flex sa:min-w-0 sa:flex-col sa:justify-center sa:text-sm",
|
|
117
|
+
sidebar ? "sa:w-full" : "sa:flex-1",
|
|
118
|
+
description && "sa:gap-0.5"
|
|
119
119
|
),
|
|
120
120
|
children: [
|
|
121
|
-
/* @__PURE__ */ jsx("p", { className: cn("truncate text-base leading-[18px] font-medium", primary ? "text-action-primary-fg" : "text-text-default"), children: title }),
|
|
122
|
-
description && /* @__PURE__ */ jsx("p", { className: cn("text-body", primary ? "text-action-primary-fg/80" : "text-text-muted", !sidebar && "truncate"), children: description })
|
|
121
|
+
/* @__PURE__ */ jsx("p", { className: cn("sa:truncate sa:text-base sa:leading-[18px] sa:font-medium", primary ? "sa:text-action-primary-fg" : "sa:text-text-default"), children: title }),
|
|
122
|
+
description && /* @__PURE__ */ jsx("p", { className: cn("sa:text-body", primary ? "sa:text-action-primary-fg/80" : "sa:text-text-muted", !sidebar && "sa:truncate"), children: description })
|
|
123
123
|
]
|
|
124
124
|
}
|
|
125
125
|
),
|
|
126
126
|
sidebar ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
127
|
-
action && /* @__PURE__ */ jsx("div", { className: "flex w-full items-center
|
|
127
|
+
action && /* @__PURE__ */ jsx("div", { className: "sa:flex sa:w-full sa:items-center sa:*:flex-1", children: action }),
|
|
128
128
|
close
|
|
129
|
-
] }) : (action || close) && /* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-1", children: [
|
|
129
|
+
] }) : (action || close) && /* @__PURE__ */ jsxs("div", { className: "sa:flex sa:shrink-0 sa:items-center sa:gap-1", children: [
|
|
130
130
|
action,
|
|
131
131
|
close
|
|
132
132
|
] })
|
|
@@ -136,5 +136,3 @@ function Banner({
|
|
|
136
136
|
}
|
|
137
137
|
|
|
138
138
|
export { Banner, bannerVariants };
|
|
139
|
-
//# sourceMappingURL=chunk-6QMSWITQ.js.map
|
|
140
|
-
//# sourceMappingURL=chunk-6QMSWITQ.js.map
|