@soybeanjs/ui 0.0.1-beta.3 → 0.0.2-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/accordion/accordion.js +1 -0
- package/dist/components/accordion/accordion.vue.d.ts +48 -0
- package/dist/components/accordion/index.d.ts +4 -0
- package/dist/components/accordion/types.d.ts +32 -0
- package/dist/components/alert/alert.js +1 -0
- package/dist/components/alert/alert.vue.d.ts +34 -0
- package/dist/components/alert/index.d.ts +5 -0
- package/dist/components/alert/types.d.ts +26 -0
- package/dist/components/alert-dialog/alert-dialog-action.js +1 -0
- package/dist/components/alert-dialog/alert-dialog-action.vue.d.ts +22 -0
- package/dist/components/alert-dialog/alert-dialog-cancel.js +1 -0
- package/dist/components/alert-dialog/alert-dialog-cancel.vue.d.ts +25 -0
- package/dist/components/alert-dialog/alert-dialog.js +1 -0
- package/dist/components/alert-dialog/alert-dialog.vue.d.ts +45 -0
- package/dist/components/alert-dialog/index.d.ts +6 -0
- package/dist/components/alert-dialog/types.d.ts +30 -0
- package/dist/components/arrow/index.d.ts +2 -0
- package/dist/components/arrow/index.js +1 -0
- package/dist/components/aspect-ratio/index.d.ts +2 -0
- package/dist/components/aspect-ratio/index.js +1 -0
- package/dist/components/avatar/avatar.js +1 -0
- package/dist/components/avatar/avatar.vue.d.ts +27 -0
- package/dist/components/avatar/index.d.ts +4 -0
- package/dist/components/avatar/types.d.ts +15 -0
- package/dist/components/badge/badge.js +1 -0
- package/dist/components/badge/badge.vue.d.ts +26 -0
- package/dist/components/badge/index.d.ts +5 -0
- package/dist/components/badge/types.d.ts +17 -0
- package/dist/components/breadcrumb/breadcrumb.js +1 -0
- package/dist/components/breadcrumb/breadcrumb.vue.d.ts +49 -0
- package/dist/components/breadcrumb/index.d.ts +4 -0
- package/dist/components/breadcrumb/index.js +1 -0
- package/dist/components/breadcrumb/shared.js +1 -0
- package/dist/components/breadcrumb/types.d.ts +51 -0
- package/dist/components/button/button-group.js +1 -0
- package/dist/components/button/button-group.vue.d.ts +22 -0
- package/dist/components/button/button-icon.js +1 -0
- package/dist/components/button/button-icon.vue.d.ts +16 -0
- package/dist/components/button/button-link.js +1 -0
- package/dist/components/button/button-link.vue.d.ts +28 -0
- package/dist/components/button/button-loading.js +1 -0
- package/dist/components/button/button-loading.vue.d.ts +32 -0
- package/dist/components/button/button.js +1 -0
- package/dist/components/button/button.vue.d.ts +26 -0
- package/dist/components/button/context.js +1 -0
- package/dist/components/button/index.d.ts +7 -0
- package/dist/components/button/types.d.ts +80 -0
- package/dist/components/card/card.js +1 -0
- package/dist/components/card/card.vue.d.ts +28 -0
- package/dist/components/card/index.d.ts +4 -0
- package/dist/components/card/types.d.ts +37 -0
- package/dist/components/checkbox/checkbox-card-group.js +1 -0
- package/dist/components/checkbox/checkbox-card-group.vue.d.ts +20 -0
- package/dist/components/checkbox/checkbox-card.js +1 -0
- package/dist/components/checkbox/checkbox-card.vue.d.ts +29 -0
- package/dist/components/checkbox/checkbox-group.js +1 -0
- package/dist/components/checkbox/checkbox-group.vue.d.ts +20 -0
- package/dist/components/checkbox/checkbox.js +1 -0
- package/dist/components/checkbox/checkbox.vue.d.ts +34 -0
- package/dist/components/checkbox/index.d.ts +7 -0
- package/dist/components/checkbox/types.d.ts +53 -0
- package/dist/components/collapsible/collapsible.js +1 -0
- package/dist/components/collapsible/collapsible.vue.d.ts +28 -0
- package/dist/components/collapsible/index.d.ts +4 -0
- package/dist/components/collapsible/index.js +1 -0
- package/dist/components/collapsible/types.d.ts +12 -0
- package/dist/components/command/command-group-option.js +1 -0
- package/dist/components/command/command-option.js +1 -0
- package/dist/components/command/command-single-option.js +1 -0
- package/dist/components/command/command.js +1 -0
- package/dist/components/command/command.vue.d.ts +44 -0
- package/dist/components/command/context.js +1 -0
- package/dist/components/command/index.d.ts +2 -0
- package/dist/components/command/shared.js +1 -0
- package/dist/components/command/types.d.ts +94 -0
- package/dist/components/config-provider/config-provider.js +1 -0
- package/dist/components/config-provider/config-provider.vue.d.ts +26 -0
- package/dist/components/config-provider/context.d.ts +6 -0
- package/dist/components/config-provider/context.js +1 -0
- package/dist/components/config-provider/index.d.ts +3 -0
- package/dist/components/config-provider/shared.js +1 -0
- package/dist/components/config-provider/types.d.ts +29 -0
- package/dist/components/context-menu/context-menu-checkbox.js +1 -0
- package/dist/components/context-menu/context-menu-checkbox.vue.d.ts +37 -0
- package/dist/components/context-menu/context-menu-radio.js +1 -0
- package/dist/components/context-menu/context-menu-radio.vue.d.ts +37 -0
- package/dist/components/context-menu/context-menu-wrapper.js +1 -0
- package/dist/components/context-menu/context-menu-wrapper.vue.d.ts +41 -0
- package/dist/components/context-menu/context-menu.js +1 -0
- package/dist/components/context-menu/context-menu.vue.d.ts +37 -0
- package/dist/components/context-menu/index.d.ts +7 -0
- package/dist/components/context-menu/types.d.ts +25 -0
- package/dist/components/dialog/dialog-close.js +1 -0
- package/dist/components/dialog/dialog-close.vue.d.ts +18 -0
- package/dist/components/dialog/dialog-pure.js +1 -0
- package/dist/components/dialog/dialog-pure.vue.d.ts +47 -0
- package/dist/components/dialog/dialog.js +1 -0
- package/dist/components/dialog/dialog.vue.d.ts +62 -0
- package/dist/components/dialog/index.d.ts +6 -0
- package/dist/components/dialog/types.d.ts +35 -0
- package/dist/components/drawer/drawer-close.js +1 -0
- package/dist/components/drawer/drawer-close.vue.d.ts +18 -0
- package/dist/components/drawer/drawer.js +1 -0
- package/dist/components/drawer/drawer.vue.d.ts +63 -0
- package/dist/components/drawer/index.d.ts +3 -0
- package/dist/components/drawer/types.d.ts +16 -0
- package/dist/components/dropdown-menu/dropdown-menu-checkbox.js +1 -0
- package/dist/components/dropdown-menu/dropdown-menu-checkbox.vue.d.ts +37 -0
- package/dist/components/dropdown-menu/dropdown-menu-radio.js +1 -0
- package/dist/components/dropdown-menu/dropdown-menu-radio.vue.d.ts +37 -0
- package/dist/components/dropdown-menu/dropdown-menu-wrapper.js +1 -0
- package/dist/components/dropdown-menu/dropdown-menu-wrapper.vue.d.ts +42 -0
- package/dist/components/dropdown-menu/dropdown-menu.js +1 -0
- package/dist/components/dropdown-menu/dropdown-menu.vue.d.ts +37 -0
- package/dist/components/dropdown-menu/index.d.ts +7 -0
- package/dist/components/dropdown-menu/types.d.ts +25 -0
- package/dist/components/form/context.js +1 -0
- package/dist/components/form/form-field-array.js +1 -0
- package/dist/components/form/form-field-array.vue.d.ts +71 -0
- package/dist/components/form/form-field.js +1 -0
- package/dist/components/form/form-field.vue.d.ts +27 -0
- package/dist/components/form/form.js +1 -0
- package/dist/components/form/form.vue.d.ts +18 -0
- package/dist/components/form/index.d.ts +6 -0
- package/dist/components/form/types.d.ts +36 -0
- package/dist/components/icon/icon.js +1 -0
- package/dist/components/icon/icon.vue.d.ts +12 -0
- package/dist/components/icon/index.d.ts +2 -0
- package/dist/components/icon/types.d.ts +10 -0
- package/dist/components/input/index.d.ts +4 -0
- package/dist/components/input/input.js +1 -0
- package/dist/components/input/input.vue.d.ts +24 -0
- package/dist/components/input/types.d.ts +26 -0
- package/dist/components/kbd/index.d.ts +3 -0
- package/dist/components/kbd/kbd.js +1 -0
- package/dist/components/kbd/kbd.vue.d.ts +10 -0
- package/dist/components/kbd/types.d.ts +12 -0
- package/dist/components/label/index.d.ts +2 -0
- package/dist/components/label/label.js +1 -0
- package/dist/components/label/label.vue.d.ts +18 -0
- package/dist/components/label/types.d.ts +10 -0
- package/dist/components/layout/index.d.ts +5 -0
- package/dist/components/layout/layout-trigger.js +1 -0
- package/dist/components/layout/layout-trigger.vue.d.ts +18 -0
- package/dist/components/layout/layout.js +1 -0
- package/dist/components/layout/layout.vue.d.ts +35 -0
- package/dist/components/layout/types.d.ts +19 -0
- package/dist/components/link/index.d.ts +2 -0
- package/dist/components/link/link.js +1 -0
- package/dist/components/link/link.vue.d.ts +26 -0
- package/dist/components/link/types.d.ts +2 -0
- package/dist/components/list/index.d.ts +5 -0
- package/dist/components/list/list-item.js +1 -0
- package/dist/components/list/list-item.vue.d.ts +26 -0
- package/dist/components/list/list.js +1 -0
- package/dist/components/list/list.vue.d.ts +18 -0
- package/dist/components/list/types.d.ts +18 -0
- package/dist/components/menu/context.js +1 -0
- package/dist/components/menu/index.d.ts +7 -0
- package/dist/components/menu/menu-checkbox-options.js +1 -0
- package/dist/components/menu/menu-checkbox-options.vue.d.ts +26 -0
- package/dist/components/menu/menu-item-slot.js +1 -0
- package/dist/components/menu/menu-option.js +1 -0
- package/dist/components/menu/menu-option.vue.d.ts +46 -0
- package/dist/components/menu/menu-options.js +1 -0
- package/dist/components/menu/menu-options.vue.d.ts +46 -0
- package/dist/components/menu/menu-radio-options.js +1 -0
- package/dist/components/menu/menu-radio-options.vue.d.ts +26 -0
- package/dist/components/menu/shared.js +1 -0
- package/dist/components/menu/types.d.ts +92 -0
- package/dist/components/navigation-menu/context.js +1 -0
- package/dist/components/navigation-menu/index.d.ts +4 -0
- package/dist/components/navigation-menu/navigation-menu-item-slot.js +1 -0
- package/dist/components/navigation-menu/navigation-menu-option.js +1 -0
- package/dist/components/navigation-menu/navigation-menu-sub-option.js +1 -0
- package/dist/components/navigation-menu/navigation-menu.js +1 -0
- package/dist/components/navigation-menu/navigation-menu.vue.d.ts +55 -0
- package/dist/components/navigation-menu/shared.js +1 -0
- package/dist/components/navigation-menu/types.d.ts +62 -0
- package/dist/components/number-input/index.d.ts +2 -0
- package/dist/components/number-input/number-input.js +1 -0
- package/dist/components/number-input/number-input.vue.d.ts +28 -0
- package/dist/components/number-input/types.d.ts +29 -0
- package/dist/components/pagination/index.d.ts +4 -0
- package/dist/components/pagination/pagination.js +1 -0
- package/dist/components/pagination/pagination.vue.d.ts +32 -0
- package/dist/components/pagination/types.d.ts +37 -0
- package/dist/components/password/index.d.ts +2 -0
- package/dist/components/password/password.js +1 -0
- package/dist/components/password/password.vue.d.ts +33 -0
- package/dist/components/password/types.d.ts +30 -0
- package/dist/components/popover/index.d.ts +4 -0
- package/dist/components/popover/popover.js +1 -0
- package/dist/components/popover/popover.vue.d.ts +43 -0
- package/dist/components/popover/types.d.ts +19 -0
- package/dist/components/radio-group/index.d.ts +7 -0
- package/dist/components/radio-group/radio-card-group.js +1 -0
- package/dist/components/radio-group/radio-card-group.vue.d.ts +20 -0
- package/dist/components/radio-group/radio-card.js +1 -0
- package/dist/components/radio-group/radio-card.vue.d.ts +22 -0
- package/dist/components/radio-group/radio-group.js +1 -0
- package/dist/components/radio-group/radio-group.vue.d.ts +20 -0
- package/dist/components/radio-group/radio.js +1 -0
- package/dist/components/radio-group/radio.vue.d.ts +18 -0
- package/dist/components/radio-group/types.d.ts +47 -0
- package/dist/components/segment/index.d.ts +2 -0
- package/dist/components/segment/segment.js +1 -0
- package/dist/components/segment/segment.vue.d.ts +24 -0
- package/dist/components/segment/types.d.ts +26 -0
- package/dist/components/select/index.d.ts +4 -0
- package/dist/components/select/select-group-option.js +1 -0
- package/dist/components/select/select-option.js +1 -0
- package/dist/components/select/select-single-option.js +1 -0
- package/dist/components/select/select.js +1 -0
- package/dist/components/select/select.vue.d.ts +52 -0
- package/dist/components/select/shared.js +1 -0
- package/dist/components/select/types.d.ts +74 -0
- package/dist/components/separator/index.d.ts +4 -0
- package/dist/components/separator/separator.js +1 -0
- package/dist/components/separator/separator.vue.d.ts +11 -0
- package/dist/components/separator/types.d.ts +16 -0
- package/dist/components/switch/index.d.ts +5 -0
- package/dist/components/switch/switch.js +1 -0
- package/dist/components/switch/switch.vue.d.ts +645 -0
- package/dist/components/switch/types.d.ts +17 -0
- package/dist/components/tabs/index.d.ts +4 -0
- package/dist/components/tabs/tabs.js +1 -0
- package/dist/components/tabs/tabs.vue.d.ts +28 -0
- package/dist/components/tabs/types.d.ts +27 -0
- package/dist/components/tag/index.d.ts +3 -0
- package/dist/components/tag/tag.js +1 -0
- package/dist/components/tag/tag.vue.d.ts +32 -0
- package/dist/components/tag/types.d.ts +16 -0
- package/dist/components/textarea/index.d.ts +5 -0
- package/dist/components/textarea/textarea.js +1 -0
- package/dist/components/textarea/textarea.vue.d.ts +27 -0
- package/dist/components/textarea/types.d.ts +36 -0
- package/dist/components/tooltip/index.d.ts +4 -0
- package/dist/components/tooltip/tooltip.js +1 -0
- package/dist/components/tooltip/tooltip.vue.d.ts +33 -0
- package/dist/components/tooltip/types.d.ts +19 -0
- package/dist/components/tree/index.d.ts +5 -0
- package/dist/components/tree/index.js +1 -0
- package/dist/components/tree/tree-virtualizer.js +1 -0
- package/dist/components/tree/tree-virtualizer.vue.d.ts +31 -0
- package/dist/components/tree/tree.js +1 -0
- package/dist/components/tree/tree.vue.d.ts +32 -0
- package/dist/components/tree/types.d.ts +10 -0
- package/dist/components/tree-menu/context.js +1 -0
- package/dist/components/tree-menu/index.d.ts +3 -0
- package/dist/components/tree-menu/shared.js +1 -0
- package/dist/components/tree-menu/tree-menu-item-wrapper.js +1 -0
- package/dist/components/tree-menu/tree-menu-item-wrapper.vue.d.ts +17 -0
- package/dist/components/tree-menu/tree-menu-item.js +1 -0
- package/dist/components/tree-menu/tree-menu.js +1 -0
- package/dist/components/tree-menu/tree-menu.vue.d.ts +44 -0
- package/dist/components/tree-menu/types.d.ts +80 -0
- package/dist/components/virtualizer/index.d.ts +4 -0
- package/dist/components/virtualizer/index.js +1 -0
- package/dist/components/virtualizer/types.d.ts +9 -0
- package/dist/components/virtualizer/virtualizer.js +1 -0
- package/dist/components/virtualizer/virtualizer.vue.d.ts +24 -0
- package/dist/index.d.ts +169 -6003
- package/dist/index.js +1 -1
- package/dist/styles.css +1397 -0
- package/dist/theme/config.js +1 -0
- package/dist/theme/context.d.ts +1 -0
- package/dist/theme/context.js +1 -0
- package/dist/theme/index.d.ts +3 -0
- package/dist/theme/merge.d.ts +1 -0
- package/dist/theme/merge.js +1 -0
- package/dist/theme/shared.js +1 -0
- package/dist/theme/types.d.ts +5 -0
- package/dist/variants/accordion.js +1 -0
- package/dist/variants/alert.d.ts +300 -0
- package/dist/variants/alert.js +1 -0
- package/dist/variants/avatar.js +1 -0
- package/dist/variants/badge.d.ts +201 -0
- package/dist/variants/badge.js +1 -0
- package/dist/variants/breadcrumb.js +1 -0
- package/dist/variants/button.d.ts +146 -0
- package/dist/variants/button.js +1 -0
- package/dist/variants/card.js +1 -0
- package/dist/variants/checkbox.d.ts +252 -0
- package/dist/variants/checkbox.js +1 -0
- package/dist/variants/collapsible.js +1 -0
- package/dist/variants/command.js +1 -0
- package/dist/variants/dialog.js +1 -0
- package/dist/variants/drawer.js +1 -0
- package/dist/variants/form.js +1 -0
- package/dist/variants/input.js +1 -0
- package/dist/variants/kbd.d.ts +51 -0
- package/dist/variants/kbd.js +1 -0
- package/dist/variants/label.js +1 -0
- package/dist/variants/layout.js +1 -0
- package/dist/variants/link.js +1 -0
- package/dist/variants/list.js +1 -0
- package/dist/variants/menu.js +1 -0
- package/dist/variants/navigation-menu.js +1 -0
- package/dist/variants/number-input.js +1 -0
- package/dist/variants/pagination.d.ts +232 -0
- package/dist/variants/pagination.js +1 -0
- package/dist/variants/popover.js +1 -0
- package/dist/variants/radio-group.d.ts +276 -0
- package/dist/variants/radio-group.js +1 -0
- package/dist/variants/select.js +1 -0
- package/dist/variants/separator.d.ts +177 -0
- package/dist/variants/separator.js +1 -0
- package/dist/variants/switch.d.ts +210 -0
- package/dist/variants/switch.js +1 -0
- package/dist/variants/tabs.d.ts +229 -0
- package/dist/variants/tabs.js +1 -0
- package/dist/variants/tag.d.ts +103 -0
- package/dist/variants/tag.js +1 -0
- package/dist/variants/textarea.d.ts +183 -0
- package/dist/variants/textarea.js +1 -0
- package/dist/variants/tooltip.js +1 -0
- package/dist/variants/tree-menu.js +1 -0
- package/package.json +17 -14
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { SegmentOptionData, SegmentProps } from "./types.js";
|
|
2
|
+
import * as vue237 from "vue";
|
|
3
|
+
import { AcceptableValue } from "@soybeanjs/headless";
|
|
4
|
+
|
|
5
|
+
//#region src/components/segment/segment.vue.d.ts
|
|
6
|
+
declare const __VLS_export: <T extends AcceptableValue = AcceptableValue, S extends SegmentOptionData<NonNullable<T>> = SegmentOptionData<NonNullable<T>>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
7
|
+
props: __VLS_PrettifyLocal<SegmentProps<T, S> & {
|
|
8
|
+
"onUpdate:modelValue"?: ((payload: NonNullable<T>) => any) | undefined;
|
|
9
|
+
}> & vue237.PublicProps;
|
|
10
|
+
expose: (exposed: {}) => void;
|
|
11
|
+
attrs: any;
|
|
12
|
+
slots: {
|
|
13
|
+
item?: (props: S & {
|
|
14
|
+
active: boolean;
|
|
15
|
+
}) => any;
|
|
16
|
+
};
|
|
17
|
+
emit: (evt: "update:modelValue", payload: NonNullable<T>) => void;
|
|
18
|
+
}>) => vue237.VNode & {
|
|
19
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
20
|
+
};
|
|
21
|
+
declare const _default: typeof __VLS_export;
|
|
22
|
+
type __VLS_PrettifyLocal<T> = { [K in keyof T as K]: T[K] } & {};
|
|
23
|
+
//#endregion
|
|
24
|
+
export { _default };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { ThemeSize } from "../../theme/types.js";
|
|
2
|
+
import "../../theme/index.js";
|
|
3
|
+
import { TabsFill, TabsShape } from "../../variants/tabs.js";
|
|
4
|
+
import { TabsExtendedUi } from "../tabs/types.js";
|
|
5
|
+
import { AcceptableValue, DefinedValue, TabsIndicatorProps, TabsListProps, TabsRootProps, TabsTriggerProps } from "@soybeanjs/headless";
|
|
6
|
+
|
|
7
|
+
//#region src/components/segment/types.d.ts
|
|
8
|
+
interface SegmentOptionData<T extends DefinedValue = DefinedValue> {
|
|
9
|
+
value: T;
|
|
10
|
+
label: string;
|
|
11
|
+
disabled?: boolean;
|
|
12
|
+
}
|
|
13
|
+
type SegmentExtendedUi = TabsExtendedUi;
|
|
14
|
+
interface SegmentProps<T extends AcceptableValue, S extends SegmentOptionData<NonNullable<T>> = SegmentOptionData<NonNullable<T>>> extends TabsRootProps<T> {
|
|
15
|
+
ui?: Partial<SegmentExtendedUi>;
|
|
16
|
+
size?: ThemeSize;
|
|
17
|
+
shape?: TabsShape;
|
|
18
|
+
items: S[];
|
|
19
|
+
fill?: TabsFill;
|
|
20
|
+
enableIndicator?: boolean;
|
|
21
|
+
listProps?: TabsListProps;
|
|
22
|
+
triggerProps?: TabsTriggerProps;
|
|
23
|
+
indicatorProps?: TabsIndicatorProps;
|
|
24
|
+
}
|
|
25
|
+
//#endregion
|
|
26
|
+
export { SegmentExtendedUi, SegmentOptionData, SegmentProps };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { SelectEmits, SelectGroupOptionData, SelectGroupOptionEmits, SelectGroupOptionProps, SelectOptionData, SelectOptionEmits, SelectOptionProps, SelectProps, SelectSingleOptionData, SelectSingleOptionEmits, SelectSingleOptionProps } from "./types.js";
|
|
2
|
+
import { _default } from "./select.vue.js";
|
|
3
|
+
import { SelectArrowProps, SelectContentEmits, SelectContentProps, SelectGroupLabelProps, SelectGroupProps, SelectItemEmits, SelectItemEvent, SelectItemIndicatorProps, SelectItemProps, SelectItemTextProps, SelectPosition, SelectRootEmits, SelectRootProps, SelectScrollDownButtonProps, SelectScrollUpButtonProps, SelectSeparatorProps, SelectTriggerIconProps, SelectTriggerProps, SelectValueProps, SelectViewportProps } from "@soybeanjs/headless/select";
|
|
4
|
+
export { type SelectArrowProps, type SelectContentEmits, type SelectContentProps, type SelectGroupLabelProps, type SelectGroupProps, type SelectItemEmits, type SelectItemEvent, type SelectItemIndicatorProps, type SelectItemProps, type SelectItemTextProps, type SelectPosition, type SelectRootEmits, type SelectRootProps, type SelectScrollDownButtonProps, type SelectScrollUpButtonProps, type SelectSeparatorProps, type SelectTriggerIconProps, type SelectTriggerProps, type SelectValueProps, type SelectViewportProps };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"./select-single-option.js";import{Fragment as t,createBlock as n,createCommentVNode as r,createElementBlock as i,createTextVNode as a,createVNode as o,defineComponent as s,guardReactiveProps as c,mergeProps as l,normalizeProps as u,openBlock as d,renderList as f,renderSlot as p,toDisplayString as m,unref as h,withCtx as g}from"vue";import{SelectGroup as _,SelectGroupLabel as v,SelectSeparator as y}from"@soybeanjs/headless";var b=s({name:`SSelectGroupOption`,__name:`select-group-option`,props:{item:{},groupLabelProps:{},itemProps:{},itemTextProps:{},itemIndicatorProps:{},separatorProps:{}},emits:[`select`],setup(s,{emit:b}){let x=b;return(b,S)=>(d(),n(h(_),null,{default:g(()=>[o(h(v),u(c(s.groupLabelProps)),{default:g(()=>[p(b.$slots,`group-label`,{},()=>[a(m(s.item.label),1)])]),_:3},16),s.item.separator?(d(),n(h(y),u(l({key:0},s.separatorProps)),null,16)):r(`v-if`,!0),(d(!0),i(t,null,f(s.item.items,t=>(d(),n(e,l({key:String(t.value)},{ref_for:!0},s.itemProps,{item:t,value:t.value,"text-value":t.textValue,disabled:t.disabled,"item-text-props":s.itemTextProps,"item-indicator-props":s.itemIndicatorProps,"separator-props":s.separatorProps,onSelect:S[0]||=e=>x(`select`,e)}),{"item-leading":g(()=>[p(b.$slots,`item-leading`,{item:t})]),"item-text":g(()=>[p(b.$slots,`item-text`,{item:t})]),"item-trailing":g(()=>[p(b.$slots,`item-trailing`,{item:t})]),"item-indicator":g(()=>[p(b.$slots,`item-indicator`,{item:t})]),_:2},1040,[`item`,`value`,`text-value`,`disabled`,`item-text-props`,`item-indicator-props`,`separator-props`]))),128))]),_:3}))}});export{b as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"./select-single-option.js";import t from"./select-group-option.js";import{isGroupOption as n}from"./shared.js";import{Fragment as r,computed as i,createBlock as a,createElementBlock as o,createSlots as s,createTextVNode as c,defineComponent as l,guardReactiveProps as u,mergeProps as d,normalizeProps as f,openBlock as p,renderList as m,renderSlot as h,toDisplayString as g,unref as _,useSlots as v,withCtx as y}from"vue";var b=l({name:`SSelectOption`,__name:`select-option`,props:{item:{},groupProps:{},groupLabelProps:{},itemProps:{},itemTextProps:{},itemIndicatorProps:{},separatorProps:{}},emits:[`select`],setup(l,{emit:b}){let x=b,S=v(),C=i(()=>Object.keys(S).filter(e=>e!==`group-label`));return(i,v)=>_(n)(l.item)?(p(),a(t,d({key:0},l.groupProps,{item:l.item,"group-label-props":l.groupLabelProps,"item-props":l.itemProps,"item-text-props":l.itemTextProps,"item-indicator-props":l.itemIndicatorProps,"separator-props":l.separatorProps,onSelect:v[0]||=e=>x(`select`,e)}),s({"group-label":y(()=>[h(i.$slots,`group-label`,{item:l.item},()=>[c(g(l.item.label),1)])]),_:2},[m(C.value,e=>({name:e,fn:y(t=>[h(i.$slots,e,f(u(t)))])}))]),1040,[`item`,`group-label-props`,`item-props`,`item-text-props`,`item-indicator-props`,`separator-props`])):(p(),a(e,d({key:1},l.itemProps,{item:l.item,value:l.item.value,"text-value":l.item.textValue,disabled:l.item.disabled,"item-text-props":l.itemTextProps,"item-indicator-props":l.itemIndicatorProps,"separator-props":l.separatorProps,onSelect:v[1]||=e=>x(`select`,e)}),{default:y(()=>[(p(!0),o(r,null,m(C.value,e=>h(i.$slots,e,{key:e,item:l.item})),128))]),_:3},16,[`item`,`value`,`text-value`,`disabled`,`item-text-props`,`item-indicator-props`,`separator-props`]))}});export{b as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"../icon/icon.js";import{Fragment as t,createBlock as n,createCommentVNode as r,createElementBlock as i,createTextVNode as a,createVNode as o,defineComponent as s,guardReactiveProps as c,mergeProps as l,normalizeProps as u,openBlock as d,renderSlot as f,toDisplayString as p,unref as m,useAttrs as h,withCtx as g}from"vue";import{SelectItem as _,SelectItemIndicator as v,SelectItemText as y,SelectSeparator as b}from"@soybeanjs/headless";var x=s({name:`SSelectSingleOption`,inheritAttrs:!1,__name:`select-single-option`,props:{item:{},itemTextProps:{},itemIndicatorProps:{},separatorProps:{}},emits:[`select`],setup(s,{emit:x}){let S=x,C=h();return(h,x)=>(d(),i(t,null,[o(m(_),l(m(C),{value:s.item.value,"text-value":s.item.textValue,disabled:s.item.disabled,onSelect:x[0]||=e=>S(`select`,e)}),{default:g(()=>[f(h.$slots,`item-leading`,{},()=>[s.item.icon?(d(),n(e,{key:0,icon:s.item.icon},null,8,[`icon`])):r(`v-if`,!0)]),o(m(y),u(c(s.itemTextProps)),{default:g(()=>[f(h.$slots,`item-text`,{},()=>[a(p(s.item.label),1)])]),_:3},16),f(h.$slots,`item-trailing`),o(m(v),u(c(s.itemIndicatorProps)),{default:g(()=>[f(h.$slots,`item-indicator`,{},()=>[o(e,{icon:`lucide:check`})])]),_:3},16)]),_:3},16,[`value`,`text-value`,`disabled`]),s.item.separator?(d(),n(m(b),u(l({key:0},s.separatorProps)),null,16)):r(`v-if`,!0)],64))}});export{x as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{mergeSlotVariants as e}from"../../theme/shared.js";import t from"../icon/icon.js";import{selectVariants as n}from"../../variants/select.js";import{isGroupOption as r}from"./shared.js";import i from"./select-option.js";import{Fragment as a,computed as o,createBlock as s,createCommentVNode as c,createElementBlock as l,createSlots as u,createVNode as d,defineComponent as f,guardReactiveProps as p,mergeProps as m,normalizeProps as h,openBlock as g,renderList as _,renderSlot as v,toHandlers as y,unref as b,useSlots as x,withCtx as S}from"vue";import{useForwardListeners as C,useOmitProps as w}from"@soybeanjs/headless/composables";import{SelectArrow as T,SelectContent as E,SelectPortal as D,SelectRoot as O,SelectScrollDownButton as k,SelectScrollUpButton as A,SelectTrigger as j,SelectTriggerIcon as M,SelectValue as N,SelectViewport as P,provideSelectThemeContext as F}from"@soybeanjs/headless";var I=f({name:`SSelect`,inheritAttrs:!1,__name:`select`,props:{ui:{},size:{},items:{},showArrow:{type:Boolean},triggerProps:{},triggerIconProps:{},valueProps:{},portalProps:{},contentProps:{},viewportProps:{},scrollDownButtonProps:{},scrollUpButtonProps:{},groupProps:{},groupLabelProps:{},itemProps:{},itemTextProps:{},itemIndicatorProps:{},separatorProps:{},arrowProps:{},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean},dir:{},autocomplete:{},disabled:{type:Boolean},modelValue:{},defaultValue:{},multiple:{},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`update:open`,`closeAutoFocus`,`escapeKeyDown`,`pointerDownOutside`,`select`],setup(f,{emit:I}){let L=f,R=I,z=x(),B=o(()=>Object.keys(z).filter(e=>e.startsWith(`item-`)||e===`group-label`)),V=w(L,[`ui`,`size`,`items`,`triggerProps`,`triggerIconProps`,`valueProps`,`portalProps`,`contentProps`,`viewportProps`,`scrollDownButtonProps`,`scrollUpButtonProps`,`groupProps`,`groupLabelProps`,`itemProps`,`itemTextProps`,`itemIndicatorProps`,`separatorProps`,`arrowProps`]),H=C(R),U=e=>r(e)?`group-${e.label}`:e.value;return F({ui:o(()=>e(n({size:L.size}),L.ui))}),(e,n)=>(g(),s(b(O),m(b(V),{"onUpdate:modelValue":n[1]||=e=>R(`update:modelValue`,e)}),{default:S(()=>[d(b(j),h(p(f.triggerProps)),{default:S(()=>[v(e.$slots,`trigger-leading`),d(b(N),h(p(f.valueProps)),{default:S(t=>[v(e.$slots,`trigger-value`,h(p(t)))]),_:3},16),v(e.$slots,`trigger-trailing`),d(b(M),h(p(f.triggerIconProps)),{default:S(()=>[v(e.$slots,`trigger-icon`,{},()=>[d(t,{icon:`lucide:chevrons-up-down`})])]),_:3},16)]),_:3},16),d(b(D),h(p(f.portalProps)),{default:S(()=>[d(b(E),m(f.contentProps,y(b(H))),{default:S(()=>[d(b(A),h(p(f.scrollUpButtonProps)),{default:S(()=>[v(e.$slots,`scroll-up-button`,{},()=>[d(t,{icon:`lucide:chevron-up`})])]),_:3},16),d(b(P),h(p(f.viewportProps)),{default:S(()=>[(g(!0),l(a,null,_(f.items,t=>(g(),s(i,{key:U(t),item:t,"group-props":f.groupProps,"group-label-props":f.groupLabelProps,"item-props":f.itemProps,"item-text-props":f.itemTextProps,"item-indicator-props":f.itemIndicatorProps,"separator-props":f.separatorProps,onSelect:n[0]||=e=>R(`select`,e)},u({_:2},[_(B.value,t=>({name:t,fn:S(n=>[v(e.$slots,t,m({ref_for:!0},n))])}))]),1032,[`item`,`group-props`,`group-label-props`,`item-props`,`item-text-props`,`item-indicator-props`,`separator-props`]))),128))]),_:3},16),d(b(k),h(p(f.scrollDownButtonProps)),{default:S(()=>[v(e.$slots,`scroll-down-button`,{},()=>[d(t,{icon:`lucide:chevron-down`})])]),_:3},16),f.showArrow?(g(),s(b(T),h(m({key:0},f.arrowProps)),null,16)):c(`v-if`,!0)]),_:3},16)]),_:3},16)]),_:3},16))}});export{I as default};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { SelectOptionData, SelectProps } from "./types.js";
|
|
2
|
+
import * as vue246 from "vue";
|
|
3
|
+
import * as _soybeanjs_headless140 from "@soybeanjs/headless";
|
|
4
|
+
import { DefinedValue } from "@soybeanjs/headless";
|
|
5
|
+
|
|
6
|
+
//#region src/components/select/select.vue.d.ts
|
|
7
|
+
declare const __VLS_export: <T extends DefinedValue, M extends boolean = false, S extends SelectOptionData<T> = SelectOptionData<T>>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
8
|
+
props: __VLS_PrettifyLocal<SelectProps<T, M, S> & {
|
|
9
|
+
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
10
|
+
"onUpdate:modelValue"?: ((value: M extends true ? T[] : T) => any) | undefined;
|
|
11
|
+
onSelect?: ((event: _soybeanjs_headless140.SelectItemEvent<T>) => any) | undefined;
|
|
12
|
+
onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
|
|
13
|
+
onPointerDownOutside?: ((event: _soybeanjs_headless140.PointerDownOutsideEvent) => any) | undefined;
|
|
14
|
+
onCloseAutoFocus?: ((event: Event) => any) | undefined;
|
|
15
|
+
}> & vue246.PublicProps;
|
|
16
|
+
expose: (exposed: {}) => void;
|
|
17
|
+
attrs: any;
|
|
18
|
+
slots: {
|
|
19
|
+
'trigger-leading'?: () => any;
|
|
20
|
+
'trigger-value'?: (props: {
|
|
21
|
+
modelValue: SelectProps<T, M, S>["modelValue"];
|
|
22
|
+
selectedLabel: string[];
|
|
23
|
+
slotText: string;
|
|
24
|
+
}) => any;
|
|
25
|
+
'trigger-trailing'?: () => any;
|
|
26
|
+
'trigger-icon'?: () => any;
|
|
27
|
+
'scroll-up-button'?: () => any;
|
|
28
|
+
'scroll-down-button'?: () => any;
|
|
29
|
+
'group-label'?: (props: {
|
|
30
|
+
item: S;
|
|
31
|
+
}) => any;
|
|
32
|
+
'item-text'?: (props: {
|
|
33
|
+
item: S;
|
|
34
|
+
}) => any;
|
|
35
|
+
'item-leading'?: (props: {
|
|
36
|
+
item: S;
|
|
37
|
+
}) => any;
|
|
38
|
+
'item-trailing'?: (props: {
|
|
39
|
+
item: S;
|
|
40
|
+
}) => any;
|
|
41
|
+
'item-indicator'?: (props: {
|
|
42
|
+
item: S;
|
|
43
|
+
}) => any;
|
|
44
|
+
};
|
|
45
|
+
emit: ((evt: "update:open", value: boolean) => void) & ((evt: "update:modelValue", value: M extends true ? T[] : T) => void) & ((evt: "select", event: _soybeanjs_headless140.SelectItemEvent<T>) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: _soybeanjs_headless140.PointerDownOutsideEvent) => void) & ((evt: "closeAutoFocus", event: Event) => void);
|
|
46
|
+
}>) => vue246.VNode & {
|
|
47
|
+
__ctx?: Awaited<typeof __VLS_setup>;
|
|
48
|
+
};
|
|
49
|
+
declare const _default: typeof __VLS_export;
|
|
50
|
+
type __VLS_PrettifyLocal<T> = { [K in keyof T as K]: T[K] } & {};
|
|
51
|
+
//#endregion
|
|
52
|
+
export { _default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){return`items`in e}export{e as isGroupOption};
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { ThemeSize } from "../../theme/types.js";
|
|
2
|
+
import "../../theme/index.js";
|
|
3
|
+
import { IconValue } from "../icon/types.js";
|
|
4
|
+
import { HTMLAttributes } from "vue";
|
|
5
|
+
import { DefinedValue, SelectArrowProps, SelectContentEmits, SelectContentProps, SelectGroupLabelProps, SelectGroupProps, SelectItemEmits, SelectItemIndicatorProps, SelectItemProps, SelectItemTextProps, SelectPortalProps, SelectRootEmits, SelectRootProps, SelectScrollDownButtonProps, SelectScrollUpButtonProps, SelectSeparatorProps, SelectTriggerIconProps, SelectTriggerProps, SelectUi, SelectValueProps, SelectViewportProps } from "@soybeanjs/headless";
|
|
6
|
+
|
|
7
|
+
//#region src/components/select/types.d.ts
|
|
8
|
+
interface SelectSingleOptionData<T extends DefinedValue = DefinedValue> extends Pick<SelectItemProps, 'disabled' | 'textValue'> {
|
|
9
|
+
value: T;
|
|
10
|
+
/**
|
|
11
|
+
* The icon of the dropdown item.
|
|
12
|
+
*
|
|
13
|
+
* if it is a string, it will be used as the icon name of the iconify.
|
|
14
|
+
*/
|
|
15
|
+
icon?: IconValue;
|
|
16
|
+
/** The label to display in the dropdown. */
|
|
17
|
+
label: string;
|
|
18
|
+
/** whether to show a separator above this option */
|
|
19
|
+
separator?: boolean;
|
|
20
|
+
}
|
|
21
|
+
interface SelectGroupOptionData<T extends DefinedValue = DefinedValue> extends Pick<SelectSingleOptionData<T>, 'separator' | 'label'> {
|
|
22
|
+
items: SelectSingleOptionData<T>[];
|
|
23
|
+
}
|
|
24
|
+
type SelectOptionData<T extends DefinedValue = DefinedValue> = SelectSingleOptionData<T> | SelectGroupOptionData<T>;
|
|
25
|
+
interface SelectSingleOptionProps<T extends DefinedValue = DefinedValue> extends /** @vue-ignore */Omit<HTMLAttributes, 'onSelect'> {
|
|
26
|
+
item: SelectSingleOptionData<T>;
|
|
27
|
+
itemTextProps?: SelectItemTextProps;
|
|
28
|
+
itemIndicatorProps?: SelectItemIndicatorProps;
|
|
29
|
+
separatorProps?: SelectSeparatorProps;
|
|
30
|
+
}
|
|
31
|
+
type SelectSingleOptionEmits<T extends DefinedValue = DefinedValue> = SelectItemEmits<T>;
|
|
32
|
+
interface SelectGroupOptionProps<T extends DefinedValue = DefinedValue> extends SelectGroupProps {
|
|
33
|
+
item: SelectGroupOptionData<T>;
|
|
34
|
+
groupLabelProps?: SelectGroupLabelProps;
|
|
35
|
+
itemProps?: SelectItemProps;
|
|
36
|
+
itemTextProps?: SelectItemTextProps;
|
|
37
|
+
itemIndicatorProps?: SelectItemIndicatorProps;
|
|
38
|
+
separatorProps?: SelectSeparatorProps;
|
|
39
|
+
}
|
|
40
|
+
type SelectGroupOptionEmits<T extends DefinedValue = DefinedValue> = SelectItemEmits<T>;
|
|
41
|
+
interface SelectOptionProps<T extends DefinedValue = DefinedValue> extends /** @vue-ignore */Omit<HTMLAttributes, 'onSelect'> {
|
|
42
|
+
item: SelectOptionData<T>;
|
|
43
|
+
groupProps?: SelectGroupProps;
|
|
44
|
+
groupLabelProps?: SelectGroupLabelProps;
|
|
45
|
+
itemProps?: SelectItemProps;
|
|
46
|
+
itemTextProps?: SelectItemTextProps;
|
|
47
|
+
itemIndicatorProps?: SelectItemIndicatorProps;
|
|
48
|
+
separatorProps?: SelectSeparatorProps;
|
|
49
|
+
}
|
|
50
|
+
type SelectOptionEmits<T extends DefinedValue = DefinedValue> = SelectItemEmits<T>;
|
|
51
|
+
interface SelectProps<T extends DefinedValue = DefinedValue, M extends boolean = false, S extends SelectOptionData<T> = SelectOptionData<T>> extends SelectRootProps<T, M> {
|
|
52
|
+
ui?: Partial<SelectUi>;
|
|
53
|
+
size?: ThemeSize;
|
|
54
|
+
items: S[];
|
|
55
|
+
showArrow?: boolean;
|
|
56
|
+
triggerProps?: SelectTriggerProps;
|
|
57
|
+
triggerIconProps?: SelectTriggerIconProps;
|
|
58
|
+
valueProps?: SelectValueProps;
|
|
59
|
+
portalProps?: SelectPortalProps;
|
|
60
|
+
contentProps?: SelectContentProps;
|
|
61
|
+
viewportProps?: SelectViewportProps;
|
|
62
|
+
scrollDownButtonProps?: SelectScrollDownButtonProps;
|
|
63
|
+
scrollUpButtonProps?: SelectScrollUpButtonProps;
|
|
64
|
+
groupProps?: SelectGroupProps;
|
|
65
|
+
groupLabelProps?: SelectGroupLabelProps;
|
|
66
|
+
itemProps?: SelectItemProps;
|
|
67
|
+
itemTextProps?: SelectItemTextProps;
|
|
68
|
+
itemIndicatorProps?: SelectItemIndicatorProps;
|
|
69
|
+
separatorProps?: SelectSeparatorProps;
|
|
70
|
+
arrowProps?: SelectArrowProps;
|
|
71
|
+
}
|
|
72
|
+
type SelectEmits<T extends DefinedValue = DefinedValue, M extends boolean = false> = SelectRootEmits<T, M> & SelectContentEmits & SelectOptionEmits<T>;
|
|
73
|
+
//#endregion
|
|
74
|
+
export { SelectEmits, SelectGroupOptionData, SelectGroupOptionEmits, SelectGroupOptionProps, SelectOptionData, SelectOptionEmits, SelectOptionProps, SelectProps, SelectSingleOptionData, SelectSingleOptionEmits, SelectSingleOptionProps };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{mergeSlotVariants as e}from"../../theme/shared.js";import{separatorVariants as t}from"../../variants/separator.js";import{computed as n,createBlock as r,createCommentVNode as i,createTextVNode as a,defineComponent as o,guardReactiveProps as s,mergeProps as c,normalizeProps as l,openBlock as u,toDisplayString as d,unref as f,useSlots as p,withCtx as m}from"vue";import{useOmitProps as h}from"@soybeanjs/headless/composables";import{SeparatorLabel as g,SeparatorRoot as _,provideSeparatorThemeContext as v}from"@soybeanjs/headless";var y=o({name:`SSeparator`,__name:`separator`,props:{size:{},ui:{},align:{},border:{},label:{},labelProps:{},orientation:{default:`horizontal`},decorative:{type:Boolean}},setup(o){let y=o,b=p(),x=h(y,[`size`,`ui`,`align`,`border`,`label`,`labelProps`]),S=n(()=>y.orientation===`horizontal`&&(b.default||y.label));return v({ui:n(()=>e(t({size:y.size,orientation:y.orientation,align:y.align,border:y.border}),y.ui))}),(e,t)=>(u(),r(f(_),l(s(f(x))),{default:m(()=>[S.value?(u(),r(f(g),l(c({key:0},o.labelProps)),{default:m(()=>[a(d(o.label),1)]),_:1},16)):i(`v-if`,!0)]),_:1},16))}});export{y as default};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { SeparatorProps } from "./types.js";
|
|
2
|
+
import * as vue275 from "vue";
|
|
3
|
+
import * as _soybeanjs_headless155 from "@soybeanjs/headless";
|
|
4
|
+
|
|
5
|
+
//#region src/components/separator/separator.vue.d.ts
|
|
6
|
+
declare const __VLS_export: vue275.DefineComponent<SeparatorProps, {}, {}, {}, {}, vue275.ComponentOptionsMixin, vue275.ComponentOptionsMixin, {}, string, vue275.PublicProps, Readonly<SeparatorProps> & Readonly<{}>, {
|
|
7
|
+
orientation: _soybeanjs_headless155.DataOrientation;
|
|
8
|
+
}, {}, {}, {}, string, vue275.ComponentProvideOptions, false, {}, any>;
|
|
9
|
+
declare const _default: typeof __VLS_export;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { _default };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ThemeSize } from "../../theme/types.js";
|
|
2
|
+
import "../../theme/index.js";
|
|
3
|
+
import { SeparatorBorder } from "../../variants/separator.js";
|
|
4
|
+
import { Align, SeparatorLabelProps, SeparatorRootProps, SeparatorUi } from "@soybeanjs/headless";
|
|
5
|
+
|
|
6
|
+
//#region src/components/separator/types.d.ts
|
|
7
|
+
interface SeparatorProps extends SeparatorRootProps {
|
|
8
|
+
size?: ThemeSize;
|
|
9
|
+
ui?: Partial<SeparatorUi>;
|
|
10
|
+
align?: Align;
|
|
11
|
+
border?: SeparatorBorder;
|
|
12
|
+
label?: string;
|
|
13
|
+
labelProps?: SeparatorLabelProps;
|
|
14
|
+
}
|
|
15
|
+
//#endregion
|
|
16
|
+
export { SeparatorProps };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { SwitchShape } from "../../variants/switch.js";
|
|
2
|
+
import { SwitchEmits, SwitchProps } from "./types.js";
|
|
3
|
+
import { _default } from "./switch.vue.js";
|
|
4
|
+
import { SwitchControlProps, SwitchRootEmits, SwitchRootProps, SwitchThumbProps } from "@soybeanjs/headless/switch";
|
|
5
|
+
export { type SwitchControlProps, type SwitchRootEmits, type SwitchRootProps, type SwitchThumbProps };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{mergeSlotVariants as e}from"../../theme/shared.js";import{switchVariants as t}from"../../variants/switch.js";import{computed as n,createBlock as r,createVNode as i,defineComponent as a,guardReactiveProps as o,mergeProps as s,normalizeProps as c,openBlock as l,renderSlot as u,unref as d,useId as f,withCtx as p}from"vue";import{useOmitProps as m}from"@soybeanjs/headless/composables";import{SwitchControl as h,SwitchRoot as g,SwitchThumb as _,provideSwitchThemeContext as v}from"@soybeanjs/headless";var y=a({name:`SSwitch`,__name:`switch`,props:{ui:{},color:{},size:{},shape:{},controlProps:{},thumbProps:{},defaultValue:{},modelValue:{default:void 0},disabled:{type:Boolean},value:{},name:{},required:{type:Boolean},trueValue:{default:!0},falseValue:{default:!1}},emits:[`update:modelValue`],setup(a,{emit:y}){let b=a,x=y,S=m(b,[`ui`,`color`,`size`,`shape`,`controlProps`,`thumbProps`]),C=f(),w=n(()=>b.id||`switch-${C}`);return v({ui:n(()=>e(t({color:b.color,size:b.size,shape:b.shape}),b.ui))}),(e,t)=>(l(),r(d(g),s(d(S),{"onUpdate:modelValue":t[0]||=e=>x(`update:modelValue`,e)}),{default:p(t=>[u(e.$slots,`leading`,c(o(t))),i(d(h),s(a.controlProps,{id:w.value}),{default:p(()=>[i(d(_),c(o(a.thumbProps)),{default:p(()=>[u(e.$slots,`default`,c(o(t)))]),_:2},1040)]),_:2},1040,[`id`]),u(e.$slots,`trailing`,c(o(t)))]),_:3},16))}});export{y as default};
|