@px-ui/ui 1.0.11 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{avatar-cLlUF5Lz.d.ts → avatar-BHChvx39.d.ts} +6 -6
- package/dist/{avatar-cLlUF5Lz.d.ts.map → avatar-BHChvx39.d.ts.map} +1 -1
- package/dist/{avatar-a40DzPi3.js → avatar-DnDnGmSj.js} +4 -4
- package/dist/{avatar-a40DzPi3.js.map → avatar-DnDnGmSj.js.map} +1 -1
- package/dist/{button-BJ727apo.d.ts → button-BhyEUVw7.d.ts} +6 -6
- package/dist/{button-BJ727apo.d.ts.map → button-BhyEUVw7.d.ts.map} +1 -1
- package/dist/{button-Cp2S1spE.js → button-DnHwqwy0.js} +2 -2
- package/dist/{button-Cp2S1spE.js.map → button-DnHwqwy0.js.map} +1 -1
- package/dist/checkbox-CwkX29tL.js +22 -0
- package/dist/checkbox-CwkX29tL.js.map +1 -0
- package/dist/collapsible-DsrYXIW5.js +28 -0
- package/dist/collapsible-DsrYXIW5.js.map +1 -0
- package/dist/{combobox-Di5naqIR.js → combobox-5IAivvXw.js} +9 -9
- package/dist/{combobox-Di5naqIR.js.map → combobox-5IAivvXw.js.map} +1 -1
- package/dist/{combobox-B73nb6Tq.d.ts → combobox-BMr1s-el.d.ts} +19 -19
- package/dist/combobox-BMr1s-el.d.ts.map +1 -0
- package/dist/components/accordion.d.ts +5 -5
- package/dist/components/accordion.d.ts.map +1 -1
- package/dist/components/accordion.js +2 -2
- package/dist/components/alert-dialog.d.ts +14 -14
- package/dist/components/alert-dialog.d.ts.map +1 -1
- package/dist/components/alert-dialog.js +3 -3
- package/dist/components/alert.d.ts +7 -7
- package/dist/components/alert.d.ts.map +1 -1
- package/dist/components/alert.js +2 -2
- package/dist/components/aspect-ratio.d.ts +2 -2
- package/dist/components/aspect-ratio.d.ts.map +1 -1
- package/dist/components/aspect-ratio.js +1 -1
- package/dist/components/attachment.d.ts +14 -14
- package/dist/components/attachment.d.ts.map +1 -1
- package/dist/components/attachment.js +3 -3
- package/dist/components/avatar-group.d.ts +4 -4
- package/dist/components/avatar-group.js +5 -5
- package/dist/components/avatar.d.ts +1 -1
- package/dist/components/avatar.js +3 -3
- package/dist/components/badge.d.ts +3 -3
- package/dist/components/badge.js +1 -1
- package/dist/components/breadcrumb.d.ts +7 -7
- package/dist/components/breadcrumb.js +2 -2
- package/dist/components/bubble.d.ts +7 -7
- package/dist/components/bubble.js +2 -2
- package/dist/components/button-group.d.ts +7 -7
- package/dist/components/button-group.d.ts.map +1 -1
- package/dist/components/button-group.js +2 -2
- package/dist/components/button.d.ts +1 -1
- package/dist/components/button.js +2 -2
- package/dist/components/calendar.d.ts +4 -4
- package/dist/components/calendar.d.ts.map +1 -1
- package/dist/components/calendar.js +3 -3
- package/dist/components/card.d.ts +8 -8
- package/dist/components/card.d.ts.map +1 -1
- package/dist/components/card.js +2 -2
- package/dist/components/carousel.d.ts +7 -7
- package/dist/components/carousel.js +3 -3
- package/dist/components/chart.d.ts +5 -5
- package/dist/components/chart.js +2 -2
- package/dist/components/checkbox.d.ts +2 -2
- package/dist/components/checkbox.js +3 -21
- package/dist/components/collapsible.d.ts +4 -4
- package/dist/components/collapsible.js +3 -27
- package/dist/components/combobox.d.ts +2 -2
- package/dist/components/combobox.js +11 -11
- package/dist/components/command.d.ts +11 -11
- package/dist/components/command.d.ts.map +1 -1
- package/dist/components/command.js +7 -7
- package/dist/components/context-menu.d.ts +16 -16
- package/dist/components/context-menu.d.ts.map +1 -1
- package/dist/components/context-menu.js +2 -2
- package/dist/components/currency-select-field.d.ts +4 -4
- package/dist/components/currency-select-field.js +12 -12
- package/dist/components/dialog.d.ts +11 -11
- package/dist/components/dialog.js +3 -3
- package/dist/components/direction.js +1 -1
- package/dist/components/drawer.d.ts +11 -11
- package/dist/components/drawer.js +2 -2
- package/dist/components/dropdown-menu.d.ts +1 -1
- package/dist/components/dropdown-menu.js +2 -2
- package/dist/components/editor-output.d.ts +87 -0
- package/dist/components/editor-output.d.ts.map +1 -0
- package/dist/components/editor-output.js +158 -0
- package/dist/components/editor-output.js.map +1 -0
- package/dist/components/empty.d.ts +9 -9
- package/dist/components/empty.d.ts.map +1 -1
- package/dist/components/empty.js +3 -61
- package/dist/components/field.d.ts +16 -16
- package/dist/components/field.d.ts.map +1 -1
- package/dist/components/field.js +4 -4
- package/dist/components/file-upload-field.d.ts +3 -3
- package/dist/components/file-upload-field.js +6 -6
- package/dist/components/file-upload.d.ts +3 -3
- package/dist/components/file-upload.js +4 -4
- package/dist/components/hover-card.d.ts +4 -4
- package/dist/components/hover-card.d.ts.map +1 -1
- package/dist/components/hover-card.js +1 -1
- package/dist/components/icon.d.ts +83 -0
- package/dist/components/icon.d.ts.map +1 -0
- package/dist/components/icon.js +188 -0
- package/dist/components/icon.js.map +1 -0
- package/dist/components/input-group.d.ts +11 -11
- package/dist/components/input-group.d.ts.map +1 -1
- package/dist/components/input-group.js +5 -5
- package/dist/components/input-otp.d.ts +6 -6
- package/dist/components/input-otp.d.ts.map +1 -1
- package/dist/components/input-otp.js +6 -6
- package/dist/components/input-otp.js.map +1 -1
- package/dist/components/input.d.ts +1 -1
- package/dist/components/input.js +2 -2
- package/dist/components/item.d.ts +15 -15
- package/dist/components/item.d.ts.map +1 -1
- package/dist/components/item.js +3 -3
- package/dist/components/kbd.d.ts +3 -3
- package/dist/components/kbd.d.ts.map +1 -1
- package/dist/components/kbd.js +1 -1
- package/dist/components/label.d.ts +1 -1
- package/dist/components/label.js +2 -2
- package/dist/components/marker.d.ts +4 -4
- package/dist/components/marker.js +2 -2
- package/dist/components/menubar.d.ts +18 -18
- package/dist/components/menubar.js +8 -8
- package/dist/components/menubar.js.map +1 -1
- package/dist/components/message-scroller.d.ts +8 -8
- package/dist/components/message-scroller.d.ts.map +1 -1
- package/dist/components/message-scroller.js +3 -3
- package/dist/components/message.d.ts +7 -7
- package/dist/components/message.d.ts.map +1 -1
- package/dist/components/message.js +2 -2
- package/dist/components/native-select.d.ts +4 -4
- package/dist/components/native-select.d.ts.map +1 -1
- package/dist/components/native-select.js +2 -2
- package/dist/components/navigation-menu.d.ts +11 -11
- package/dist/components/navigation-menu.d.ts.map +1 -1
- package/dist/components/navigation-menu.js +1 -1
- package/dist/components/pagination.d.ts +9 -9
- package/dist/components/pagination.js +3 -3
- package/dist/components/phone-input.d.ts +2 -2
- package/dist/components/phone-input.d.ts.map +1 -1
- package/dist/components/phone-input.js +2 -2
- package/dist/components/popover.d.ts +7 -7
- package/dist/components/popover.d.ts.map +1 -1
- package/dist/components/popover.js +2 -2
- package/dist/components/progress.d.ts +6 -6
- package/dist/components/progress.d.ts.map +1 -1
- package/dist/components/progress.js +1 -1
- package/dist/components/radio-group.d.ts +3 -3
- package/dist/components/radio-group.js +1 -1
- package/dist/components/resizable.d.ts +4 -4
- package/dist/components/resizable.js +1 -1
- package/dist/components/rich-text-editor.d.ts +204 -0
- package/dist/components/rich-text-editor.d.ts.map +1 -0
- package/dist/components/rich-text-editor.js +359 -0
- package/dist/components/rich-text-editor.js.map +1 -0
- package/dist/components/scroll-area.d.ts +13 -3
- package/dist/components/scroll-area.d.ts.map +1 -1
- package/dist/components/scroll-area.js +3 -38
- package/dist/components/select.d.ts +10 -10
- package/dist/components/select.js +2 -2
- package/dist/components/separator.d.ts +1 -1
- package/dist/components/separator.js +2 -2
- package/dist/components/sheet.d.ts +9 -9
- package/dist/components/sheet.js +3 -3
- package/dist/components/sidebar.d.ts +24 -24
- package/dist/components/sidebar.js +9 -9
- package/dist/components/skeleton.d.ts +2 -2
- package/dist/components/skeleton.js +2 -2
- package/dist/components/slider.d.ts +2 -2
- package/dist/components/slider.js +1 -1
- package/dist/components/sortable-list.d.ts +153 -0
- package/dist/components/sortable-list.d.ts.map +1 -0
- package/dist/components/sortable-list.js +191 -0
- package/dist/components/sortable-list.js.map +1 -0
- package/dist/components/spinner.d.ts +2 -2
- package/dist/components/spinner.js +2 -2
- package/dist/components/stepper.d.ts +171 -0
- package/dist/components/stepper.d.ts.map +1 -0
- package/dist/components/stepper.js +281 -0
- package/dist/components/stepper.js.map +1 -0
- package/dist/components/switch.d.ts +2 -2
- package/dist/components/switch.js +1 -1
- package/dist/components/table.d.ts +9 -9
- package/dist/components/table.js +2 -2
- package/dist/components/tabs.d.ts +8 -8
- package/dist/components/tabs.js +1 -1
- package/dist/components/textarea.d.ts +2 -2
- package/dist/components/textarea.js +2 -2
- package/dist/components/toast.d.ts +1 -1
- package/dist/components/toast.js +2 -2
- package/dist/components/toggle-group.d.ts +4 -4
- package/dist/components/toggle-group.js +3 -3
- package/dist/components/toggle.d.ts +1 -1
- package/dist/components/toggle.js +2 -2
- package/dist/components/tooltip.d.ts +1 -1
- package/dist/components/tooltip.js +2 -2
- package/dist/components/tree-select.d.ts +192 -0
- package/dist/components/tree-select.d.ts.map +1 -0
- package/dist/components/tree-select.js +421 -0
- package/dist/components/tree-select.js.map +1 -0
- package/dist/{dialog-B3HhbIdv.js → dialog-DuGJUPQl.js} +4 -4
- package/dist/{dialog-B3HhbIdv.js.map → dialog-DuGJUPQl.js.map} +1 -1
- package/dist/{dropdown-menu-vwX--mgm.js → dropdown-menu-BWEfcvmP.js} +20 -20
- package/dist/{dropdown-menu-vwX--mgm.js.map → dropdown-menu-BWEfcvmP.js.map} +1 -1
- package/dist/{dropdown-menu-C6n_oYre.d.ts → dropdown-menu-DGMTllRk.d.ts} +17 -17
- package/dist/{dropdown-menu-C6n_oYre.d.ts.map → dropdown-menu-DGMTllRk.d.ts.map} +1 -1
- package/dist/empty-U4zrLmFU.js +62 -0
- package/dist/empty-U4zrLmFU.js.map +1 -0
- package/dist/{file-upload-CGfXHKPZ.d.ts → file-upload-C4i5tbut.d.ts} +13 -13
- package/dist/{file-upload-CGfXHKPZ.d.ts.map → file-upload-C4i5tbut.d.ts.map} +1 -1
- package/dist/{file-upload-B0fHdUBL.js → file-upload-DU5FAkHm.js} +5 -5
- package/dist/{file-upload-B0fHdUBL.js.map → file-upload-DU5FAkHm.js.map} +1 -1
- package/dist/hooks/use-async-options.d.ts +1 -1
- package/dist/hooks/use-async-options.js +1 -1
- package/dist/hooks/use-debounce.js +1 -1
- package/dist/hooks/use-file-upload.d.ts +1 -1
- package/dist/hooks/use-file-upload.js +1 -1
- package/dist/hooks/use-infinite-scroll.d.ts +1 -1
- package/dist/hooks/use-infinite-scroll.js +2 -2
- package/dist/hooks/use-intersection-observer.d.ts +1 -1
- package/dist/hooks/use-intersection-observer.js +1 -1
- package/dist/hooks/use-mobile.js +1 -1
- package/dist/{input-group-C78_1dEy.js → input-group-B5PMRYld.js} +6 -6
- package/dist/{input-group-C78_1dEy.js.map → input-group-B5PMRYld.js.map} +1 -1
- package/dist/{input-B-RCmrtR.js → input-jIoNIdLQ.js} +3 -3
- package/dist/{input-B-RCmrtR.js.map → input-jIoNIdLQ.js.map} +1 -1
- package/dist/{input-BtI3FvrB.d.ts → input-zxE3Qo1O.d.ts} +3 -3
- package/dist/input-zxE3Qo1O.d.ts.map +1 -0
- package/dist/{label-Cmlhz-uF.js → label-DsRhOKY_.js} +3 -3
- package/dist/{label-Cmlhz-uF.js.map → label-DsRhOKY_.js.map} +1 -1
- package/dist/label-wB7C6-hQ.d.ts +11 -0
- package/dist/label-wB7C6-hQ.d.ts.map +1 -0
- package/dist/lib/utils.js +1 -1
- package/dist/{popover-CsTnnBvx.js → popover-BGkU46G7.js} +3 -3
- package/dist/{popover-CsTnnBvx.js.map → popover-BGkU46G7.js.map} +1 -1
- package/dist/providers/px-ui-provider.d.ts +4 -4
- package/dist/providers/px-ui-provider.d.ts.map +1 -1
- package/dist/providers/px-ui-provider.js +4 -4
- package/dist/scroll-area-mNVMQ0Of.js +40 -0
- package/dist/scroll-area-mNVMQ0Of.js.map +1 -0
- package/dist/{separator-BQBOLUMc.js → separator-D0bew2D_.js} +2 -2
- package/dist/{separator-BQBOLUMc.js.map → separator-D0bew2D_.js.map} +1 -1
- package/dist/{separator-pyhTqgkN.d.ts → separator-DMTEE-qR.d.ts} +3 -3
- package/dist/{separator-pyhTqgkN.d.ts.map → separator-DMTEE-qR.d.ts.map} +1 -1
- package/dist/{sheet-Chg_afex.js → sheet-BB23q6wd.js} +4 -4
- package/dist/{sheet-Chg_afex.js.map → sheet-BB23q6wd.js.map} +1 -1
- package/dist/{skeleton-J879XBBA.js → skeleton-knxLhbA5.js} +2 -2
- package/dist/{skeleton-J879XBBA.js.map → skeleton-knxLhbA5.js.map} +1 -1
- package/dist/{spinner-C7yzrK_s.js → spinner-9MdgLDTZ.js} +2 -2
- package/dist/{spinner-C7yzrK_s.js.map → spinner-9MdgLDTZ.js.map} +1 -1
- package/dist/{textarea-CaHmr0re.js → textarea-hZg0gA8u.js} +3 -3
- package/dist/{textarea-CaHmr0re.js.map → textarea-hZg0gA8u.js.map} +1 -1
- package/dist/{toast-CSU7vJkV.d.ts → toast-011e8XdI.d.ts} +5 -5
- package/dist/{toast-CSU7vJkV.d.ts.map → toast-011e8XdI.d.ts.map} +1 -1
- package/dist/{toast-BrPEQywl.js → toast-BdxoP8vz.js} +4 -4
- package/dist/{toast-BrPEQywl.js.map → toast-BdxoP8vz.js.map} +1 -1
- package/dist/{toggle-gjMAPmkg.d.ts → toggle-0BxcVVwi.d.ts} +5 -5
- package/dist/toggle-0BxcVVwi.d.ts.map +1 -0
- package/dist/{toggle-CA4KsgWs.js → toggle-BZXrLBLK.js} +2 -2
- package/dist/{toggle-CA4KsgWs.js.map → toggle-BZXrLBLK.js.map} +1 -1
- package/dist/{tooltip-7bptiThf.d.ts → tooltip-DWoVF4fx.d.ts} +6 -6
- package/dist/{tooltip-7bptiThf.d.ts.map → tooltip-DWoVF4fx.d.ts.map} +1 -1
- package/dist/{tooltip-BhxGE3Gb.js → tooltip-Dsfn_zZD.js} +2 -2
- package/dist/{tooltip-BhxGE3Gb.js.map → tooltip-Dsfn_zZD.js.map} +1 -1
- package/dist/{use-async-options-rNdyxIrQ.d.ts → use-async-options-DdyHJxHh.d.ts} +1 -1
- package/dist/{use-async-options-rNdyxIrQ.d.ts.map → use-async-options-DdyHJxHh.d.ts.map} +1 -1
- package/dist/{use-async-options-CtB4wZrr.js → use-async-options-tueAuVs_.js} +1 -1
- package/dist/{use-async-options-CtB4wZrr.js.map → use-async-options-tueAuVs_.js.map} +1 -1
- package/dist/{use-debounce--Lv1ABSa.js → use-debounce-7gIeOwla.js} +1 -1
- package/dist/{use-debounce--Lv1ABSa.js.map → use-debounce-7gIeOwla.js.map} +1 -1
- package/dist/{use-file-upload-Cbb_9kTw.d.ts → use-file-upload-Bc7CyQ7O.d.ts} +1 -1
- package/dist/{use-file-upload-Cbb_9kTw.d.ts.map → use-file-upload-Bc7CyQ7O.d.ts.map} +1 -1
- package/dist/{use-file-upload-BbERd3Nw.js → use-file-upload-DQD1vY_Z.js} +1 -1
- package/dist/{use-file-upload-BbERd3Nw.js.map → use-file-upload-DQD1vY_Z.js.map} +1 -1
- package/dist/{use-infinite-scroll-CC_Guyvn.js → use-infinite-scroll-HpeMA2MK.js} +2 -2
- package/dist/{use-infinite-scroll-CC_Guyvn.js.map → use-infinite-scroll-HpeMA2MK.js.map} +1 -1
- package/dist/{use-intersection-observer-CgAaXczI.d.ts → use-intersection-observer-DNPextJs.d.ts} +1 -1
- package/dist/{use-intersection-observer-CgAaXczI.d.ts.map → use-intersection-observer-DNPextJs.d.ts.map} +1 -1
- package/dist/{use-intersection-observer-S0wsPmhF.js → use-intersection-observer-rlKEjyL1.js} +1 -1
- package/dist/{use-intersection-observer-S0wsPmhF.js.map → use-intersection-observer-rlKEjyL1.js.map} +1 -1
- package/dist/{use-mobile--NaMWuCj.js → use-mobile-DUqQzj2D.js} +1 -1
- package/dist/{use-mobile--NaMWuCj.js.map → use-mobile-DUqQzj2D.js.map} +1 -1
- package/dist/{utils-DeIaBj75.js → utils-DUlptRpf.js} +1 -1
- package/dist/{utils-DeIaBj75.js.map → utils-DUlptRpf.js.map} +1 -1
- package/package.json +52 -2
- package/dist/combobox-B73nb6Tq.d.ts.map +0 -1
- package/dist/components/checkbox.js.map +0 -1
- package/dist/components/collapsible.js.map +0 -1
- package/dist/components/empty.js.map +0 -1
- package/dist/components/scroll-area.js.map +0 -1
- package/dist/input-BtI3FvrB.d.ts.map +0 -1
- package/dist/label-BnSHwOyi.d.ts +0 -11
- package/dist/label-BnSHwOyi.d.ts.map +0 -1
- package/dist/toggle-gjMAPmkg.d.ts.map +0 -1
- /package/dist/{direction-ZS2Hta3v.js → direction-DFPbwDSF.js} +0 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import * as react_jsx_runtime268 from "react/jsx-runtime";
|
|
2
|
+
import * as React$1 from "react";
|
|
3
|
+
import * as class_variance_authority_types17 from "class-variance-authority/types";
|
|
4
|
+
|
|
5
|
+
//#region src/components/stepper.d.ts
|
|
6
|
+
type StepStatus = "completed" | "active" | "upcoming";
|
|
7
|
+
type StepperOrientation = "horizontal" | "vertical";
|
|
8
|
+
/**
|
|
9
|
+
* A single step descriptor consumed by {@link Stepper}'s convenience `steps`
|
|
10
|
+
* prop. For full control, compose `StepperItem` children directly instead.
|
|
11
|
+
*/
|
|
12
|
+
interface StepperStep {
|
|
13
|
+
/** Primary label shown next to the step indicator. */
|
|
14
|
+
label: React$1.ReactNode;
|
|
15
|
+
/** Optional secondary line rendered beneath the label. */
|
|
16
|
+
description?: React$1.ReactNode;
|
|
17
|
+
/** Disable navigation to this step (interactive mode only). */
|
|
18
|
+
disabled?: boolean;
|
|
19
|
+
}
|
|
20
|
+
declare const stepperVariants: (props?: ({
|
|
21
|
+
orientation?: "horizontal" | "vertical" | null | undefined;
|
|
22
|
+
} & class_variance_authority_types17.ClassProp) | undefined) => string;
|
|
23
|
+
declare const stepperItemVariants: (props?: ({
|
|
24
|
+
orientation?: "horizontal" | "vertical" | null | undefined;
|
|
25
|
+
} & class_variance_authority_types17.ClassProp) | undefined) => string;
|
|
26
|
+
declare const stepperTriggerVariants: (props?: ({
|
|
27
|
+
orientation?: "horizontal" | "vertical" | null | undefined;
|
|
28
|
+
interactive?: boolean | null | undefined;
|
|
29
|
+
} & class_variance_authority_types17.ClassProp) | undefined) => string;
|
|
30
|
+
declare const stepperIndicatorVariants: (props?: ({
|
|
31
|
+
status?: "active" | "completed" | "upcoming" | null | undefined;
|
|
32
|
+
} & class_variance_authority_types17.ClassProp) | undefined) => string;
|
|
33
|
+
declare const stepperSeparatorVariants: (props?: ({
|
|
34
|
+
orientation?: "horizontal" | "vertical" | null | undefined;
|
|
35
|
+
active?: boolean | null | undefined;
|
|
36
|
+
} & class_variance_authority_types17.ClassProp) | undefined) => string;
|
|
37
|
+
declare const stepperLabelVariants: (props?: ({
|
|
38
|
+
status?: "active" | "completed" | "upcoming" | null | undefined;
|
|
39
|
+
} & class_variance_authority_types17.ClassProp) | undefined) => string;
|
|
40
|
+
interface StepperProps extends Omit<React$1.ComponentProps<"ol">, "onClick"> {
|
|
41
|
+
/**
|
|
42
|
+
* Zero-based index of the currently active step. Steps before this index are
|
|
43
|
+
* treated as completed; the step at this index is emphasized; later steps are
|
|
44
|
+
* upcoming.
|
|
45
|
+
*/
|
|
46
|
+
value: number;
|
|
47
|
+
/**
|
|
48
|
+
* Called with the step index when a step is activated. Providing this handler
|
|
49
|
+
* makes every step keyboard- and pointer-operable; omit it for a purely
|
|
50
|
+
* presentational indicator.
|
|
51
|
+
*/
|
|
52
|
+
onValueChange?: (value: number) => void;
|
|
53
|
+
/**
|
|
54
|
+
* Layout direction.
|
|
55
|
+
* @default "horizontal"
|
|
56
|
+
*/
|
|
57
|
+
orientation?: StepperOrientation;
|
|
58
|
+
/**
|
|
59
|
+
* Convenience: render steps from a data array instead of composing
|
|
60
|
+
* `StepperItem` children. Ignored when `children` are provided.
|
|
61
|
+
*/
|
|
62
|
+
steps?: StepperStep[];
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* A step indicator that visualizes progress through a multi-step flow.
|
|
66
|
+
*
|
|
67
|
+
* Compose `StepperItem` children for full control, or pass a `steps` array for
|
|
68
|
+
* the common case. Steps before `value` render as completed (checked), the step
|
|
69
|
+
* at `value` is emphasized, and later steps are upcoming. Supply `onValueChange`
|
|
70
|
+
* to make steps interactive (clickable + keyboard-operable); without it the
|
|
71
|
+
* stepper is purely presentational.
|
|
72
|
+
*
|
|
73
|
+
* @example Compound
|
|
74
|
+
* ```tsx
|
|
75
|
+
* <Stepper value={step} onValueChange={setStep}>
|
|
76
|
+
* <StepperItem step={0}>
|
|
77
|
+
* <StepperTrigger>
|
|
78
|
+
* <StepperIndicator />
|
|
79
|
+
* <div className="flex flex-col items-start">
|
|
80
|
+
* <StepperTitle>Details</StepperTitle>
|
|
81
|
+
* <StepperDescription>Basic info</StepperDescription>
|
|
82
|
+
* </div>
|
|
83
|
+
* </StepperTrigger>
|
|
84
|
+
* <StepperSeparator />
|
|
85
|
+
* </StepperItem>
|
|
86
|
+
* <StepperItem step={1}>
|
|
87
|
+
* <StepperTrigger>
|
|
88
|
+
* <StepperIndicator />
|
|
89
|
+
* <StepperTitle>Review</StepperTitle>
|
|
90
|
+
* </StepperTrigger>
|
|
91
|
+
* </StepperItem>
|
|
92
|
+
* </Stepper>
|
|
93
|
+
* ```
|
|
94
|
+
*
|
|
95
|
+
* @example Convenience (data-driven)
|
|
96
|
+
* ```tsx
|
|
97
|
+
* <Stepper
|
|
98
|
+
* value={step}
|
|
99
|
+
* onValueChange={setStep}
|
|
100
|
+
* steps={[{ label: "Details", description: "Basic info" }, { label: "Review" }]}
|
|
101
|
+
* />
|
|
102
|
+
* ```
|
|
103
|
+
*/
|
|
104
|
+
declare function Stepper({
|
|
105
|
+
value,
|
|
106
|
+
onValueChange,
|
|
107
|
+
orientation,
|
|
108
|
+
steps,
|
|
109
|
+
className,
|
|
110
|
+
children,
|
|
111
|
+
...props
|
|
112
|
+
}: StepperProps): react_jsx_runtime268.JSX.Element;
|
|
113
|
+
interface StepperItemProps extends React$1.ComponentProps<"li"> {
|
|
114
|
+
/** Zero-based index of this step. The item is active when it equals `value`. */
|
|
115
|
+
step: number;
|
|
116
|
+
/** Disable navigation to this step (interactive mode only). */
|
|
117
|
+
disabled?: boolean;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* A single step. Derives its status (completed / active / upcoming) by comparing
|
|
121
|
+
* `step` to the stepper's `value` and exposes it to descendants via context and
|
|
122
|
+
* a `data-status` attribute.
|
|
123
|
+
*/
|
|
124
|
+
declare function StepperItem({
|
|
125
|
+
step,
|
|
126
|
+
disabled,
|
|
127
|
+
className,
|
|
128
|
+
...props
|
|
129
|
+
}: StepperItemProps): react_jsx_runtime268.JSX.Element;
|
|
130
|
+
/**
|
|
131
|
+
* The clickable (or static) region grouping a step's indicator and label.
|
|
132
|
+
* Renders a `<button>` when the stepper is interactive, a `<span>` otherwise.
|
|
133
|
+
* Prepends a visually hidden status word so the step's state is announced.
|
|
134
|
+
*/
|
|
135
|
+
declare function StepperTrigger({
|
|
136
|
+
className,
|
|
137
|
+
children,
|
|
138
|
+
onClick,
|
|
139
|
+
...props
|
|
140
|
+
}: React$1.ComponentProps<"button">): react_jsx_runtime268.JSX.Element;
|
|
141
|
+
/**
|
|
142
|
+
* The numbered / checked circle for a step. Defaults to the one-based step
|
|
143
|
+
* number, or a check when completed; pass `children` to override (e.g. a custom
|
|
144
|
+
* icon for an error state).
|
|
145
|
+
*/
|
|
146
|
+
declare function StepperIndicator({
|
|
147
|
+
className,
|
|
148
|
+
children,
|
|
149
|
+
...props
|
|
150
|
+
}: React$1.ComponentProps<"span">): react_jsx_runtime268.JSX.Element;
|
|
151
|
+
/** The primary label for a step. Colored by status. */
|
|
152
|
+
declare function StepperTitle({
|
|
153
|
+
className,
|
|
154
|
+
...props
|
|
155
|
+
}: React$1.ComponentProps<"span">): react_jsx_runtime268.JSX.Element;
|
|
156
|
+
/** Optional secondary line beneath a step's label. */
|
|
157
|
+
declare function StepperDescription({
|
|
158
|
+
className,
|
|
159
|
+
...props
|
|
160
|
+
}: React$1.ComponentProps<"span">): react_jsx_runtime268.JSX.Element;
|
|
161
|
+
/**
|
|
162
|
+
* The line drawn from a step toward the next one. Fills with the primary color
|
|
163
|
+
* once the step it trails is completed.
|
|
164
|
+
*/
|
|
165
|
+
declare function StepperSeparator({
|
|
166
|
+
className,
|
|
167
|
+
...props
|
|
168
|
+
}: React$1.ComponentProps<"span">): react_jsx_runtime268.JSX.Element;
|
|
169
|
+
//#endregion
|
|
170
|
+
export { StepStatus, Stepper, StepperDescription, StepperIndicator, StepperItem, StepperItemProps, StepperOrientation, StepperProps, StepperSeparator, StepperStep, StepperTitle, StepperTrigger, stepperIndicatorVariants, stepperItemVariants, stepperLabelVariants, stepperSeparatorVariants, stepperTriggerVariants, stepperVariants };
|
|
171
|
+
//# sourceMappingURL=stepper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stepper.d.ts","names":[],"sources":["../../src/components/stepper.tsx"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { t as cn } from "../utils-DUlptRpf.js";
|
|
4
|
+
import { CheckIcon } from "lucide-react";
|
|
5
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import * as React$1 from "react";
|
|
7
|
+
import { cva } from "class-variance-authority";
|
|
8
|
+
|
|
9
|
+
//#region src/components/stepper.tsx
|
|
10
|
+
const StepperContext = React$1.createContext(null);
|
|
11
|
+
function useStepper() {
|
|
12
|
+
const context = React$1.useContext(StepperContext);
|
|
13
|
+
if (!context) throw new Error("useStepper must be used within a <Stepper />");
|
|
14
|
+
return context;
|
|
15
|
+
}
|
|
16
|
+
const StepperItemContext = React$1.createContext(null);
|
|
17
|
+
function useStepperItem() {
|
|
18
|
+
const context = React$1.useContext(StepperItemContext);
|
|
19
|
+
if (!context) throw new Error("Stepper parts (StepperTrigger, StepperIndicator, StepperTitle, StepperDescription, StepperSeparator) must be used within a <StepperItem />");
|
|
20
|
+
return context;
|
|
21
|
+
}
|
|
22
|
+
const stepperVariants = cva("flex w-full", {
|
|
23
|
+
variants: { orientation: {
|
|
24
|
+
horizontal: "flex-row items-center",
|
|
25
|
+
vertical: "flex-col items-stretch"
|
|
26
|
+
} },
|
|
27
|
+
defaultVariants: { orientation: "horizontal" }
|
|
28
|
+
});
|
|
29
|
+
const stepperItemVariants = cva("flex min-w-0", {
|
|
30
|
+
variants: { orientation: {
|
|
31
|
+
horizontal: "flex-row items-center gap-2 [&:not(:last-child)]:flex-1",
|
|
32
|
+
vertical: "flex-col items-stretch gap-1"
|
|
33
|
+
} },
|
|
34
|
+
defaultVariants: { orientation: "horizontal" }
|
|
35
|
+
});
|
|
36
|
+
const stepperTriggerVariants = cva("flex items-center data-disabled:opacity-50", {
|
|
37
|
+
variants: {
|
|
38
|
+
orientation: {
|
|
39
|
+
horizontal: "min-w-0 gap-2.5",
|
|
40
|
+
vertical: "w-full gap-3"
|
|
41
|
+
},
|
|
42
|
+
interactive: {
|
|
43
|
+
true: "group/stepper-trigger rounded-md text-start outline-none transition-opacity hover:opacity-80 focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50",
|
|
44
|
+
false: ""
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
defaultVariants: {
|
|
48
|
+
orientation: "horizontal",
|
|
49
|
+
interactive: false
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
const stepperIndicatorVariants = cva(cn("flex size-8 shrink-0 items-center justify-center rounded-full border text-sm font-medium transition-colors", "[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4"), {
|
|
53
|
+
variants: { status: {
|
|
54
|
+
completed: "border-transparent bg-primary text-primary-foreground",
|
|
55
|
+
active: "border-primary bg-background text-primary ring-3 ring-primary/20",
|
|
56
|
+
upcoming: "border-border bg-background text-muted-foreground"
|
|
57
|
+
} },
|
|
58
|
+
defaultVariants: { status: "upcoming" }
|
|
59
|
+
});
|
|
60
|
+
const stepperSeparatorVariants = cva("block shrink-0 bg-border transition-colors", {
|
|
61
|
+
variants: {
|
|
62
|
+
orientation: {
|
|
63
|
+
horizontal: "h-px min-w-6 flex-1",
|
|
64
|
+
vertical: "ms-4 w-px min-h-6 flex-1"
|
|
65
|
+
},
|
|
66
|
+
active: {
|
|
67
|
+
true: "bg-primary",
|
|
68
|
+
false: ""
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
defaultVariants: {
|
|
72
|
+
orientation: "horizontal",
|
|
73
|
+
active: false
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
const stepperLabelVariants = cva("truncate text-sm leading-tight font-medium transition-colors", {
|
|
77
|
+
variants: { status: {
|
|
78
|
+
completed: "text-foreground",
|
|
79
|
+
active: "text-foreground",
|
|
80
|
+
upcoming: "text-muted-foreground"
|
|
81
|
+
} },
|
|
82
|
+
defaultVariants: { status: "upcoming" }
|
|
83
|
+
});
|
|
84
|
+
/**
|
|
85
|
+
* A step indicator that visualizes progress through a multi-step flow.
|
|
86
|
+
*
|
|
87
|
+
* Compose `StepperItem` children for full control, or pass a `steps` array for
|
|
88
|
+
* the common case. Steps before `value` render as completed (checked), the step
|
|
89
|
+
* at `value` is emphasized, and later steps are upcoming. Supply `onValueChange`
|
|
90
|
+
* to make steps interactive (clickable + keyboard-operable); without it the
|
|
91
|
+
* stepper is purely presentational.
|
|
92
|
+
*
|
|
93
|
+
* @example Compound
|
|
94
|
+
* ```tsx
|
|
95
|
+
* <Stepper value={step} onValueChange={setStep}>
|
|
96
|
+
* <StepperItem step={0}>
|
|
97
|
+
* <StepperTrigger>
|
|
98
|
+
* <StepperIndicator />
|
|
99
|
+
* <div className="flex flex-col items-start">
|
|
100
|
+
* <StepperTitle>Details</StepperTitle>
|
|
101
|
+
* <StepperDescription>Basic info</StepperDescription>
|
|
102
|
+
* </div>
|
|
103
|
+
* </StepperTrigger>
|
|
104
|
+
* <StepperSeparator />
|
|
105
|
+
* </StepperItem>
|
|
106
|
+
* <StepperItem step={1}>
|
|
107
|
+
* <StepperTrigger>
|
|
108
|
+
* <StepperIndicator />
|
|
109
|
+
* <StepperTitle>Review</StepperTitle>
|
|
110
|
+
* </StepperTrigger>
|
|
111
|
+
* </StepperItem>
|
|
112
|
+
* </Stepper>
|
|
113
|
+
* ```
|
|
114
|
+
*
|
|
115
|
+
* @example Convenience (data-driven)
|
|
116
|
+
* ```tsx
|
|
117
|
+
* <Stepper
|
|
118
|
+
* value={step}
|
|
119
|
+
* onValueChange={setStep}
|
|
120
|
+
* steps={[{ label: "Details", description: "Basic info" }, { label: "Review" }]}
|
|
121
|
+
* />
|
|
122
|
+
* ```
|
|
123
|
+
*/
|
|
124
|
+
function Stepper({ value, onValueChange, orientation = "horizontal", steps, className, children, ...props }) {
|
|
125
|
+
const interactive = typeof onValueChange === "function";
|
|
126
|
+
const contextValue = React$1.useMemo(() => ({
|
|
127
|
+
value,
|
|
128
|
+
orientation,
|
|
129
|
+
interactive,
|
|
130
|
+
onValueChange
|
|
131
|
+
}), [
|
|
132
|
+
value,
|
|
133
|
+
orientation,
|
|
134
|
+
interactive,
|
|
135
|
+
onValueChange
|
|
136
|
+
]);
|
|
137
|
+
return /* @__PURE__ */ jsx(StepperContext.Provider, {
|
|
138
|
+
value: contextValue,
|
|
139
|
+
children: /* @__PURE__ */ jsx("ol", {
|
|
140
|
+
"data-slot": "stepper",
|
|
141
|
+
"data-orientation": orientation,
|
|
142
|
+
"aria-label": "Progress",
|
|
143
|
+
className: cn(stepperVariants({ orientation }), className),
|
|
144
|
+
...props,
|
|
145
|
+
children: steps ? steps.map((step, index) => /* @__PURE__ */ jsxs(StepperItem, {
|
|
146
|
+
step: index,
|
|
147
|
+
disabled: step.disabled,
|
|
148
|
+
children: [/* @__PURE__ */ jsxs(StepperTrigger, { children: [/* @__PURE__ */ jsx(StepperIndicator, {}), /* @__PURE__ */ jsxs("span", {
|
|
149
|
+
className: "flex min-w-0 flex-col items-start text-start",
|
|
150
|
+
children: [/* @__PURE__ */ jsx(StepperTitle, { children: step.label }), step.description != null ? /* @__PURE__ */ jsx(StepperDescription, { children: step.description }) : null]
|
|
151
|
+
})] }), index < steps.length - 1 ? /* @__PURE__ */ jsx(StepperSeparator, {}) : null]
|
|
152
|
+
}, index)) : children
|
|
153
|
+
})
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* A single step. Derives its status (completed / active / upcoming) by comparing
|
|
158
|
+
* `step` to the stepper's `value` and exposes it to descendants via context and
|
|
159
|
+
* a `data-status` attribute.
|
|
160
|
+
*/
|
|
161
|
+
function StepperItem({ step, disabled = false, className, ...props }) {
|
|
162
|
+
const { value, orientation } = useStepper();
|
|
163
|
+
const status = step < value ? "completed" : step === value ? "active" : "upcoming";
|
|
164
|
+
const contextValue = React$1.useMemo(() => ({
|
|
165
|
+
step,
|
|
166
|
+
status,
|
|
167
|
+
disabled
|
|
168
|
+
}), [
|
|
169
|
+
step,
|
|
170
|
+
status,
|
|
171
|
+
disabled
|
|
172
|
+
]);
|
|
173
|
+
return /* @__PURE__ */ jsx(StepperItemContext.Provider, {
|
|
174
|
+
value: contextValue,
|
|
175
|
+
children: /* @__PURE__ */ jsx("li", {
|
|
176
|
+
"data-slot": "stepper-item",
|
|
177
|
+
"data-status": status,
|
|
178
|
+
"data-orientation": orientation,
|
|
179
|
+
"data-disabled": disabled || void 0,
|
|
180
|
+
className: cn(stepperItemVariants({ orientation }), className),
|
|
181
|
+
...props
|
|
182
|
+
})
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* The clickable (or static) region grouping a step's indicator and label.
|
|
187
|
+
* Renders a `<button>` when the stepper is interactive, a `<span>` otherwise.
|
|
188
|
+
* Prepends a visually hidden status word so the step's state is announced.
|
|
189
|
+
*/
|
|
190
|
+
function StepperTrigger({ className, children, onClick, ...props }) {
|
|
191
|
+
const { interactive, orientation, onValueChange } = useStepper();
|
|
192
|
+
const { step, status, disabled } = useStepperItem();
|
|
193
|
+
const statusLabel = status === "completed" ? "Completed: " : status === "active" ? "Current step: " : "";
|
|
194
|
+
const triggerClassName = cn(stepperTriggerVariants({
|
|
195
|
+
orientation,
|
|
196
|
+
interactive
|
|
197
|
+
}), className);
|
|
198
|
+
const inner = /* @__PURE__ */ jsxs(Fragment, { children: [statusLabel ? /* @__PURE__ */ jsx("span", {
|
|
199
|
+
className: "sr-only",
|
|
200
|
+
children: statusLabel
|
|
201
|
+
}) : null, children] });
|
|
202
|
+
if (interactive) return /* @__PURE__ */ jsx("button", {
|
|
203
|
+
...props,
|
|
204
|
+
type: "button",
|
|
205
|
+
"data-slot": "stepper-trigger",
|
|
206
|
+
"data-status": status,
|
|
207
|
+
disabled,
|
|
208
|
+
"aria-current": status === "active" ? "step" : void 0,
|
|
209
|
+
className: triggerClassName,
|
|
210
|
+
onClick: (event) => {
|
|
211
|
+
onClick?.(event);
|
|
212
|
+
if (!event.defaultPrevented) onValueChange?.(step);
|
|
213
|
+
},
|
|
214
|
+
children: inner
|
|
215
|
+
});
|
|
216
|
+
return /* @__PURE__ */ jsx("span", {
|
|
217
|
+
...props,
|
|
218
|
+
"data-slot": "stepper-trigger",
|
|
219
|
+
"data-status": status,
|
|
220
|
+
"data-disabled": disabled || void 0,
|
|
221
|
+
"aria-current": status === "active" ? "step" : void 0,
|
|
222
|
+
className: triggerClassName,
|
|
223
|
+
children: inner
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* The numbered / checked circle for a step. Defaults to the one-based step
|
|
228
|
+
* number, or a check when completed; pass `children` to override (e.g. a custom
|
|
229
|
+
* icon for an error state).
|
|
230
|
+
*/
|
|
231
|
+
function StepperIndicator({ className, children, ...props }) {
|
|
232
|
+
const { step, status } = useStepperItem();
|
|
233
|
+
return /* @__PURE__ */ jsx("span", {
|
|
234
|
+
...props,
|
|
235
|
+
"data-slot": "stepper-indicator",
|
|
236
|
+
"data-status": status,
|
|
237
|
+
"aria-hidden": "true",
|
|
238
|
+
className: cn(stepperIndicatorVariants({ status }), className),
|
|
239
|
+
children: children ?? (status === "completed" ? /* @__PURE__ */ jsx(CheckIcon, {}) : step + 1)
|
|
240
|
+
});
|
|
241
|
+
}
|
|
242
|
+
/** The primary label for a step. Colored by status. */
|
|
243
|
+
function StepperTitle({ className, ...props }) {
|
|
244
|
+
const { status } = useStepperItem();
|
|
245
|
+
return /* @__PURE__ */ jsx("span", {
|
|
246
|
+
...props,
|
|
247
|
+
"data-slot": "stepper-title",
|
|
248
|
+
"data-status": status,
|
|
249
|
+
className: cn(stepperLabelVariants({ status }), className)
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
/** Optional secondary line beneath a step's label. */
|
|
253
|
+
function StepperDescription({ className, ...props }) {
|
|
254
|
+
return /* @__PURE__ */ jsx("span", {
|
|
255
|
+
...props,
|
|
256
|
+
"data-slot": "stepper-description",
|
|
257
|
+
className: cn("truncate text-xs leading-tight text-muted-foreground", className)
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* The line drawn from a step toward the next one. Fills with the primary color
|
|
262
|
+
* once the step it trails is completed.
|
|
263
|
+
*/
|
|
264
|
+
function StepperSeparator({ className, ...props }) {
|
|
265
|
+
const { orientation } = useStepper();
|
|
266
|
+
const { status } = useStepperItem();
|
|
267
|
+
return /* @__PURE__ */ jsx("span", {
|
|
268
|
+
...props,
|
|
269
|
+
"data-slot": "stepper-separator",
|
|
270
|
+
"data-orientation": orientation,
|
|
271
|
+
"aria-hidden": "true",
|
|
272
|
+
className: cn(stepperSeparatorVariants({
|
|
273
|
+
orientation,
|
|
274
|
+
active: status === "completed"
|
|
275
|
+
}), className)
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
//#endregion
|
|
280
|
+
export { Stepper, StepperDescription, StepperIndicator, StepperItem, StepperSeparator, StepperTitle, StepperTrigger, stepperIndicatorVariants, stepperItemVariants, stepperLabelVariants, stepperSeparatorVariants, stepperTriggerVariants, stepperVariants };
|
|
281
|
+
//# sourceMappingURL=stepper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stepper.js","names":["React","status: StepStatus"],"sources":["../../src/components/stepper.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { cva } from \"class-variance-authority\"\nimport { CheckIcon } from \"lucide-react\"\n\nimport { cn } from \"@px-ui/ui/lib/utils\"\n\n// ============================================================================\n// Types\n// ============================================================================\n\nexport type StepStatus = \"completed\" | \"active\" | \"upcoming\"\nexport type StepperOrientation = \"horizontal\" | \"vertical\"\n\n/**\n * A single step descriptor consumed by {@link Stepper}'s convenience `steps`\n * prop. For full control, compose `StepperItem` children directly instead.\n */\nexport interface StepperStep {\n /** Primary label shown next to the step indicator. */\n label: React.ReactNode\n /** Optional secondary line rendered beneath the label. */\n description?: React.ReactNode\n /** Disable navigation to this step (interactive mode only). */\n disabled?: boolean\n}\n\n// ============================================================================\n// Context\n// ============================================================================\n\ninterface StepperContextValue {\n /** Zero-based index of the active step. */\n value: number\n orientation: StepperOrientation\n /** True when `onValueChange` was supplied (steps become operable buttons). */\n interactive: boolean\n onValueChange?: (value: number) => void\n}\n\nconst StepperContext = React.createContext<StepperContextValue | null>(null)\n\nfunction useStepper() {\n const context = React.useContext(StepperContext)\n if (!context) {\n throw new Error(\"useStepper must be used within a <Stepper />\")\n }\n return context\n}\n\ninterface StepperItemContextValue {\n /** Zero-based index of this item. */\n step: number\n status: StepStatus\n disabled: boolean\n}\n\nconst StepperItemContext = React.createContext<StepperItemContextValue | null>(\n null\n)\n\nfunction useStepperItem() {\n const context = React.useContext(StepperItemContext)\n if (!context) {\n throw new Error(\n \"Stepper parts (StepperTrigger, StepperIndicator, StepperTitle, StepperDescription, StepperSeparator) must be used within a <StepperItem />\"\n )\n }\n return context\n}\n\n// ============================================================================\n// Variants — one cva table per visual part (single source of truth)\n// ============================================================================\n\nconst stepperVariants = cva(\"flex w-full\", {\n variants: {\n orientation: {\n horizontal: \"flex-row items-center\",\n vertical: \"flex-col items-stretch\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n },\n})\n\nconst stepperItemVariants = cva(\"flex min-w-0\", {\n variants: {\n orientation: {\n // gap-2 = spacing between the trigger and its trailing separator.\n horizontal: \"flex-row items-center gap-2 [&:not(:last-child)]:flex-1\",\n // gap-1 = vertical spacing between the trigger and its separator.\n vertical: \"flex-col items-stretch gap-1\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n },\n})\n\nconst stepperTriggerVariants = cva(\n // gap-* = spacing between the indicator and the label block.\n \"flex items-center data-disabled:opacity-50\",\n {\n variants: {\n orientation: {\n horizontal: \"min-w-0 gap-2.5\",\n vertical: \"w-full gap-3\",\n },\n interactive: {\n true: \"group/stepper-trigger rounded-md text-start outline-none transition-opacity hover:opacity-80 focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50\",\n false: \"\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n interactive: false,\n },\n }\n)\n\nconst stepperIndicatorVariants = cva(\n cn(\n \"flex size-8 shrink-0 items-center justify-center rounded-full border text-sm font-medium transition-colors\",\n \"[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4\"\n ),\n {\n variants: {\n status: {\n completed: \"border-transparent bg-primary text-primary-foreground\",\n active: \"border-primary bg-background text-primary ring-3 ring-primary/20\",\n upcoming: \"border-border bg-background text-muted-foreground\",\n },\n },\n defaultVariants: {\n status: \"upcoming\",\n },\n }\n)\n\nconst stepperSeparatorVariants = cva(\n \"block shrink-0 bg-border transition-colors\",\n {\n variants: {\n orientation: {\n horizontal: \"h-px min-w-6 flex-1\",\n // ms-4 = inset that centers the 1px line under the size-8 indicator\n // (16px = half of 32px). Cannot be a parent gap. min-h-6 guarantees a\n // visible line even when the column item collapses to auto height.\n vertical: \"ms-4 w-px min-h-6 flex-1\",\n },\n active: {\n true: \"bg-primary\",\n false: \"\",\n },\n },\n defaultVariants: {\n orientation: \"horizontal\",\n active: false,\n },\n }\n)\n\nconst stepperLabelVariants = cva(\n \"truncate text-sm leading-tight font-medium transition-colors\",\n {\n variants: {\n status: {\n completed: \"text-foreground\",\n active: \"text-foreground\",\n upcoming: \"text-muted-foreground\",\n },\n },\n defaultVariants: {\n status: \"upcoming\",\n },\n }\n)\n\n// ============================================================================\n// Root\n// ============================================================================\n\nexport interface StepperProps\n extends Omit<React.ComponentProps<\"ol\">, \"onClick\"> {\n /**\n * Zero-based index of the currently active step. Steps before this index are\n * treated as completed; the step at this index is emphasized; later steps are\n * upcoming.\n */\n value: number\n /**\n * Called with the step index when a step is activated. Providing this handler\n * makes every step keyboard- and pointer-operable; omit it for a purely\n * presentational indicator.\n */\n onValueChange?: (value: number) => void\n /**\n * Layout direction.\n * @default \"horizontal\"\n */\n orientation?: StepperOrientation\n /**\n * Convenience: render steps from a data array instead of composing\n * `StepperItem` children. Ignored when `children` are provided.\n */\n steps?: StepperStep[]\n}\n\n/**\n * A step indicator that visualizes progress through a multi-step flow.\n *\n * Compose `StepperItem` children for full control, or pass a `steps` array for\n * the common case. Steps before `value` render as completed (checked), the step\n * at `value` is emphasized, and later steps are upcoming. Supply `onValueChange`\n * to make steps interactive (clickable + keyboard-operable); without it the\n * stepper is purely presentational.\n *\n * @example Compound\n * ```tsx\n * <Stepper value={step} onValueChange={setStep}>\n * <StepperItem step={0}>\n * <StepperTrigger>\n * <StepperIndicator />\n * <div className=\"flex flex-col items-start\">\n * <StepperTitle>Details</StepperTitle>\n * <StepperDescription>Basic info</StepperDescription>\n * </div>\n * </StepperTrigger>\n * <StepperSeparator />\n * </StepperItem>\n * <StepperItem step={1}>\n * <StepperTrigger>\n * <StepperIndicator />\n * <StepperTitle>Review</StepperTitle>\n * </StepperTrigger>\n * </StepperItem>\n * </Stepper>\n * ```\n *\n * @example Convenience (data-driven)\n * ```tsx\n * <Stepper\n * value={step}\n * onValueChange={setStep}\n * steps={[{ label: \"Details\", description: \"Basic info\" }, { label: \"Review\" }]}\n * />\n * ```\n */\nfunction Stepper({\n value,\n onValueChange,\n orientation = \"horizontal\",\n steps,\n className,\n children,\n ...props\n}: StepperProps) {\n const interactive = typeof onValueChange === \"function\"\n\n const contextValue = React.useMemo<StepperContextValue>(\n () => ({ value, orientation, interactive, onValueChange }),\n [value, orientation, interactive, onValueChange]\n )\n\n return (\n <StepperContext.Provider value={contextValue}>\n <ol\n data-slot=\"stepper\"\n data-orientation={orientation}\n aria-label=\"Progress\"\n className={cn(stepperVariants({ orientation }), className)}\n {...props}\n >\n {steps\n ? steps.map((step, index) => (\n <StepperItem\n key={index}\n step={index}\n disabled={step.disabled}\n >\n <StepperTrigger>\n <StepperIndicator />\n <span className=\"flex min-w-0 flex-col items-start text-start\">\n <StepperTitle>{step.label}</StepperTitle>\n {step.description != null ? (\n <StepperDescription>\n {step.description}\n </StepperDescription>\n ) : null}\n </span>\n </StepperTrigger>\n {index < steps.length - 1 ? <StepperSeparator /> : null}\n </StepperItem>\n ))\n : children}\n </ol>\n </StepperContext.Provider>\n )\n}\n\n// ============================================================================\n// Parts\n// ============================================================================\n\nexport interface StepperItemProps extends React.ComponentProps<\"li\"> {\n /** Zero-based index of this step. The item is active when it equals `value`. */\n step: number\n /** Disable navigation to this step (interactive mode only). */\n disabled?: boolean\n}\n\n/**\n * A single step. Derives its status (completed / active / upcoming) by comparing\n * `step` to the stepper's `value` and exposes it to descendants via context and\n * a `data-status` attribute.\n */\nfunction StepperItem({\n step,\n disabled = false,\n className,\n ...props\n}: StepperItemProps) {\n const { value, orientation } = useStepper()\n\n const status: StepStatus =\n step < value ? \"completed\" : step === value ? \"active\" : \"upcoming\"\n\n const contextValue = React.useMemo<StepperItemContextValue>(\n () => ({ step, status, disabled }),\n [step, status, disabled]\n )\n\n return (\n <StepperItemContext.Provider value={contextValue}>\n <li\n data-slot=\"stepper-item\"\n data-status={status}\n data-orientation={orientation}\n data-disabled={disabled || undefined}\n className={cn(stepperItemVariants({ orientation }), className)}\n {...props}\n />\n </StepperItemContext.Provider>\n )\n}\n\n/**\n * The clickable (or static) region grouping a step's indicator and label.\n * Renders a `<button>` when the stepper is interactive, a `<span>` otherwise.\n * Prepends a visually hidden status word so the step's state is announced.\n */\nfunction StepperTrigger({\n className,\n children,\n onClick,\n ...props\n}: React.ComponentProps<\"button\">) {\n const { interactive, orientation, onValueChange } = useStepper()\n const { step, status, disabled } = useStepperItem()\n\n const statusLabel =\n status === \"completed\"\n ? \"Completed: \"\n : status === \"active\"\n ? \"Current step: \"\n : \"\"\n\n const triggerClassName = cn(\n stepperTriggerVariants({ orientation, interactive }),\n className\n )\n\n const inner = (\n <>\n {statusLabel ? <span className=\"sr-only\">{statusLabel}</span> : null}\n {children}\n </>\n )\n\n if (interactive) {\n return (\n <button\n {...props}\n type=\"button\"\n data-slot=\"stepper-trigger\"\n data-status={status}\n disabled={disabled}\n aria-current={status === \"active\" ? \"step\" : undefined}\n className={triggerClassName}\n onClick={(event) => {\n onClick?.(event)\n if (!event.defaultPrevented) onValueChange?.(step)\n }}\n >\n {inner}\n </button>\n )\n }\n\n return (\n <span\n {...(props as React.ComponentProps<\"span\">)}\n data-slot=\"stepper-trigger\"\n data-status={status}\n data-disabled={disabled || undefined}\n aria-current={status === \"active\" ? \"step\" : undefined}\n className={triggerClassName}\n >\n {inner}\n </span>\n )\n}\n\n/**\n * The numbered / checked circle for a step. Defaults to the one-based step\n * number, or a check when completed; pass `children` to override (e.g. a custom\n * icon for an error state).\n */\nfunction StepperIndicator({\n className,\n children,\n ...props\n}: React.ComponentProps<\"span\">) {\n const { step, status } = useStepperItem()\n\n return (\n <span\n {...props}\n data-slot=\"stepper-indicator\"\n data-status={status}\n aria-hidden=\"true\"\n className={cn(stepperIndicatorVariants({ status }), className)}\n >\n {children ?? (status === \"completed\" ? <CheckIcon /> : step + 1)}\n </span>\n )\n}\n\n/** The primary label for a step. Colored by status. */\nfunction StepperTitle({ className, ...props }: React.ComponentProps<\"span\">) {\n const { status } = useStepperItem()\n\n return (\n <span\n {...props}\n data-slot=\"stepper-title\"\n data-status={status}\n className={cn(stepperLabelVariants({ status }), className)}\n />\n )\n}\n\n/** Optional secondary line beneath a step's label. */\nfunction StepperDescription({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n return (\n <span\n {...props}\n data-slot=\"stepper-description\"\n className={cn(\n \"truncate text-xs leading-tight text-muted-foreground\",\n className\n )}\n />\n )\n}\n\n/**\n * The line drawn from a step toward the next one. Fills with the primary color\n * once the step it trails is completed.\n */\nfunction StepperSeparator({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n const { orientation } = useStepper()\n const { status } = useStepperItem()\n\n return (\n <span\n {...props}\n data-slot=\"stepper-separator\"\n data-orientation={orientation}\n aria-hidden=\"true\"\n className={cn(\n stepperSeparatorVariants({\n orientation,\n active: status === \"completed\",\n }),\n className\n )}\n />\n )\n}\n\nexport {\n Stepper,\n StepperItem,\n StepperTrigger,\n StepperIndicator,\n StepperTitle,\n StepperDescription,\n StepperSeparator,\n stepperVariants,\n stepperItemVariants,\n stepperTriggerVariants,\n stepperIndicatorVariants,\n stepperSeparatorVariants,\n stepperLabelVariants,\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime275 from "react/jsx-runtime";
|
|
2
2
|
import { Switch as Switch$1 } from "@base-ui/react/switch";
|
|
3
3
|
|
|
4
4
|
//#region src/components/switch.d.ts
|
|
@@ -8,7 +8,7 @@ declare function Switch({
|
|
|
8
8
|
...props
|
|
9
9
|
}: Switch$1.Root.Props & {
|
|
10
10
|
size?: "sm" | "default";
|
|
11
|
-
}):
|
|
11
|
+
}): react_jsx_runtime275.JSX.Element;
|
|
12
12
|
//#endregion
|
|
13
13
|
export { Switch };
|
|
14
14
|
//# sourceMappingURL=switch.d.ts.map
|
|
@@ -1,39 +1,39 @@
|
|
|
1
|
+
import * as react_jsx_runtime276 from "react/jsx-runtime";
|
|
1
2
|
import * as React$1 from "react";
|
|
2
|
-
import * as react_jsx_runtime305 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/components/table.d.ts
|
|
5
5
|
declare function Table({
|
|
6
6
|
className,
|
|
7
7
|
...props
|
|
8
|
-
}: React$1.ComponentProps<"table">):
|
|
8
|
+
}: React$1.ComponentProps<"table">): react_jsx_runtime276.JSX.Element;
|
|
9
9
|
declare function TableHeader({
|
|
10
10
|
className,
|
|
11
11
|
...props
|
|
12
|
-
}: React$1.ComponentProps<"thead">):
|
|
12
|
+
}: React$1.ComponentProps<"thead">): react_jsx_runtime276.JSX.Element;
|
|
13
13
|
declare function TableBody({
|
|
14
14
|
className,
|
|
15
15
|
...props
|
|
16
|
-
}: React$1.ComponentProps<"tbody">):
|
|
16
|
+
}: React$1.ComponentProps<"tbody">): react_jsx_runtime276.JSX.Element;
|
|
17
17
|
declare function TableFooter({
|
|
18
18
|
className,
|
|
19
19
|
...props
|
|
20
|
-
}: React$1.ComponentProps<"tfoot">):
|
|
20
|
+
}: React$1.ComponentProps<"tfoot">): react_jsx_runtime276.JSX.Element;
|
|
21
21
|
declare function TableRow({
|
|
22
22
|
className,
|
|
23
23
|
...props
|
|
24
|
-
}: React$1.ComponentProps<"tr">):
|
|
24
|
+
}: React$1.ComponentProps<"tr">): react_jsx_runtime276.JSX.Element;
|
|
25
25
|
declare function TableHead({
|
|
26
26
|
className,
|
|
27
27
|
...props
|
|
28
|
-
}: React$1.ComponentProps<"th">):
|
|
28
|
+
}: React$1.ComponentProps<"th">): react_jsx_runtime276.JSX.Element;
|
|
29
29
|
declare function TableCell({
|
|
30
30
|
className,
|
|
31
31
|
...props
|
|
32
|
-
}: React$1.ComponentProps<"td">):
|
|
32
|
+
}: React$1.ComponentProps<"td">): react_jsx_runtime276.JSX.Element;
|
|
33
33
|
declare function TableCaption({
|
|
34
34
|
className,
|
|
35
35
|
...props
|
|
36
|
-
}: React$1.ComponentProps<"caption">):
|
|
36
|
+
}: React$1.ComponentProps<"caption">): react_jsx_runtime276.JSX.Element;
|
|
37
37
|
//#endregion
|
|
38
38
|
export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow };
|
|
39
39
|
//# sourceMappingURL=table.d.ts.map
|
package/dist/components/table.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import { t as cn } from "../utils-
|
|
4
|
-
import "react";
|
|
3
|
+
import { t as cn } from "../utils-DUlptRpf.js";
|
|
5
4
|
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
import "react";
|
|
6
6
|
|
|
7
7
|
//#region src/components/table.tsx
|
|
8
8
|
function Table({ className, ...props }) {
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as react_jsx_runtime294 from "react/jsx-runtime";
|
|
2
2
|
import { VariantProps } from "class-variance-authority";
|
|
3
3
|
import { Tabs as Tabs$1 } from "@base-ui/react/tabs";
|
|
4
|
-
import * as
|
|
4
|
+
import * as class_variance_authority_types23 from "class-variance-authority/types";
|
|
5
5
|
|
|
6
6
|
//#region src/components/tabs.d.ts
|
|
7
7
|
declare function Tabs({
|
|
8
8
|
className,
|
|
9
9
|
orientation,
|
|
10
10
|
...props
|
|
11
|
-
}: Tabs$1.Root.Props):
|
|
11
|
+
}: Tabs$1.Root.Props): react_jsx_runtime294.JSX.Element;
|
|
12
12
|
declare const tabsListVariants: (props?: ({
|
|
13
|
-
variant?: "
|
|
14
|
-
} &
|
|
13
|
+
variant?: "line" | "default" | null | undefined;
|
|
14
|
+
} & class_variance_authority_types23.ClassProp) | undefined) => string;
|
|
15
15
|
declare function TabsList({
|
|
16
16
|
className,
|
|
17
17
|
variant,
|
|
18
18
|
children,
|
|
19
19
|
...props
|
|
20
|
-
}: Tabs$1.List.Props & VariantProps<typeof tabsListVariants>):
|
|
20
|
+
}: Tabs$1.List.Props & VariantProps<typeof tabsListVariants>): react_jsx_runtime294.JSX.Element;
|
|
21
21
|
declare function TabsTrigger({
|
|
22
22
|
className,
|
|
23
23
|
...props
|
|
24
|
-
}: Tabs$1.Tab.Props):
|
|
24
|
+
}: Tabs$1.Tab.Props): react_jsx_runtime294.JSX.Element;
|
|
25
25
|
declare function TabsContent({
|
|
26
26
|
className,
|
|
27
27
|
...props
|
|
28
|
-
}: Tabs$1.Panel.Props):
|
|
28
|
+
}: Tabs$1.Panel.Props): react_jsx_runtime294.JSX.Element;
|
|
29
29
|
//#endregion
|
|
30
30
|
export { Tabs, TabsContent, TabsList, TabsTrigger, tabsListVariants };
|
|
31
31
|
//# sourceMappingURL=tabs.d.ts.map
|
package/dist/components/tabs.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
+
import * as react_jsx_runtime298 from "react/jsx-runtime";
|
|
1
2
|
import * as React$1 from "react";
|
|
2
|
-
import * as react_jsx_runtime317 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/components/textarea.d.ts
|
|
5
5
|
declare function Textarea({
|
|
6
6
|
className,
|
|
7
7
|
...props
|
|
8
|
-
}: React$1.ComponentProps<"textarea">):
|
|
8
|
+
}: React$1.ComponentProps<"textarea">): react_jsx_runtime298.JSX.Element;
|
|
9
9
|
//#endregion
|
|
10
10
|
export { Textarea };
|
|
11
11
|
//# sourceMappingURL=textarea.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as ToasterPosition, c as anchoredToastManager, i as Toaster, l as toast, n as AnchoredToaster, o as ToasterProps, r as ToastOptions, s as anchoredToast, t as AnchoredToastOptions, u as toastManager } from "../toast-
|
|
1
|
+
import { a as ToasterPosition, c as anchoredToastManager, i as Toaster, l as toast, n as AnchoredToaster, o as ToasterProps, r as ToastOptions, s as anchoredToast, t as AnchoredToastOptions, u as toastManager } from "../toast-011e8XdI.js";
|
|
2
2
|
export { AnchoredToastOptions, AnchoredToaster, ToastOptions, Toaster, ToasterPosition, ToasterProps, anchoredToast, anchoredToastManager, toast, toastManager };
|