@soybeanjs/ui 0.16.0 → 0.17.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/_virtual/_rolldown/runtime.js +1 -0
- package/dist/components/accordion/accordion.js +1 -1
- package/dist/components/accordion/accordion.vue.d.ts +1 -1
- package/dist/components/accordion/index.d.ts +1 -2
- package/dist/components/accordion/types.d.ts +17 -1
- package/dist/components/affix/affix.js +1 -1
- package/dist/components/affix/index.d.ts +2 -1
- package/dist/components/affix/types.d.ts +10 -1
- package/dist/components/alert/alert.js +1 -1
- package/dist/components/alert/index.d.ts +1 -2
- package/dist/components/alert/types.d.ts +25 -1
- package/dist/components/anchor/anchor.js +1 -1
- package/dist/components/anchor/anchor.vue.d.ts +1 -1
- package/dist/components/anchor/index.d.ts +2 -3
- package/dist/components/anchor/types.d.ts +30 -3
- package/dist/components/autocomplete/autocomplete.js +1 -1
- package/dist/components/autocomplete/autocomplete.vue.d.ts +2 -1
- package/dist/components/autocomplete/index.d.ts +2 -3
- package/dist/components/autocomplete/types.d.ts +18 -4
- package/dist/components/avatar/avatar.js +1 -1
- package/dist/components/avatar/index.d.ts +1 -2
- package/dist/components/avatar/types.d.ts +23 -1
- package/dist/components/backtop/backtop.vue.d.ts +3 -3
- package/dist/components/backtop/index.d.ts +2 -2
- package/dist/components/backtop/types.d.ts +28 -1
- package/dist/components/badge/badge.js +1 -1
- package/dist/components/badge/index.d.ts +1 -2
- package/dist/components/badge/types.d.ts +26 -1
- package/dist/components/bottom-sheet/bottom-sheet.js +1 -1
- package/dist/components/bottom-sheet/index.d.ts +2 -1
- package/dist/components/bottom-sheet/types.d.ts +17 -1
- package/dist/components/breadcrumb/breadcrumb.js +1 -1
- package/dist/components/breadcrumb/index.d.ts +3 -2
- package/dist/components/breadcrumb/types.d.ts +16 -1
- package/dist/components/button/button-group.js +1 -1
- package/dist/components/button/button-icon.vue.d.ts +1 -1
- package/dist/components/button/button-link.vue.d.ts +1 -1
- package/dist/components/button/button-loading.vue.d.ts +1 -1
- package/dist/components/button/button.js +1 -1
- package/dist/components/button/types.d.ts +40 -3
- package/dist/components/calendar/calendar.js +1 -1
- package/dist/components/calendar/index.d.ts +1 -2
- package/dist/components/calendar/types.d.ts +20 -1
- package/dist/components/card/card-collapsible-trigger.js +1 -1
- package/dist/components/card/card-collapsible-trigger.vue.d.ts +1 -1
- package/dist/components/card/card.js +1 -1
- package/dist/components/card/index.d.ts +1 -2
- package/dist/components/card/types.d.ts +11 -1
- package/dist/components/carousel/carousel-content.js +1 -1
- package/dist/components/carousel/carousel-content.vue.d.ts +1 -1
- package/dist/components/carousel/carousel-item.js +1 -1
- package/dist/components/carousel/carousel-item.vue.d.ts +1 -1
- package/dist/components/carousel/carousel-next.js +1 -1
- package/dist/components/carousel/carousel-next.vue.d.ts +2 -1
- package/dist/components/carousel/carousel-previous.js +1 -1
- package/dist/components/carousel/carousel-previous.vue.d.ts +2 -1
- package/dist/components/carousel/carousel.js +1 -1
- package/dist/components/carousel/index.d.ts +1 -2
- package/dist/components/carousel/types.d.ts +14 -1
- package/dist/components/checkbox/checkbox-card-group.js +1 -1
- package/dist/components/checkbox/checkbox-card.js +1 -1
- package/dist/components/checkbox/checkbox-group.js +1 -1
- package/dist/components/checkbox/checkbox.js +1 -1
- package/dist/components/checkbox/index.d.ts +2 -1
- package/dist/components/checkbox/types.d.ts +80 -1
- package/dist/components/clipboard/clipboard.js +1 -1
- package/dist/components/clipboard/index.d.ts +2 -1
- package/dist/components/clipboard/types.d.ts +22 -1
- package/dist/components/collapsible/collapsible.js +1 -1
- package/dist/components/collapsible/index.d.ts +3 -2
- package/dist/components/collapsible/types.d.ts +13 -1
- package/dist/components/color-area/color-area.vue.d.ts +2 -2
- package/dist/components/color-area/index.d.ts +1 -2
- package/dist/components/color-area/types.d.ts +23 -1
- package/dist/components/color-field/color-field.js +1 -1
- package/dist/components/color-field/index.d.ts +1 -2
- package/dist/components/color-field/types.d.ts +20 -1
- package/dist/components/color-picker/color-picker.vue.d.ts +8 -8
- package/dist/components/color-picker/index.d.ts +2 -1
- package/dist/components/color-picker/types.d.ts +96 -3
- package/dist/components/color-slider/color-slider.vue.d.ts +3 -3
- package/dist/components/color-slider/index.d.ts +1 -2
- package/dist/components/color-slider/types.d.ts +25 -1
- package/dist/components/color-swatch/index.d.ts +2 -4
- package/dist/components/color-swatch/types.d.ts +22 -1
- package/dist/components/color-swatch-picker/color-swatch-picker.js +1 -1
- package/dist/components/color-swatch-picker/color-swatch-picker.vue.d.ts +2 -2
- package/dist/components/color-swatch-picker/index.d.ts +1 -2
- package/dist/components/color-swatch-picker/types.d.ts +38 -1
- package/dist/components/combobox/combobox.js +1 -1
- package/dist/components/combobox/index.d.ts +1 -2
- package/dist/components/combobox/types.d.ts +19 -1
- package/dist/components/command/command.js +1 -1
- package/dist/components/command/command.vue.d.ts +4 -3
- package/dist/components/command/index.d.ts +2 -3
- package/dist/components/command/types.d.ts +18 -4
- package/dist/components/config-provider/config-provider.js +1 -1
- package/dist/components/config-provider/config-provider.vue.d.ts +7 -10
- package/dist/components/config-provider/index.d.ts +2 -1
- package/dist/components/config-provider/types.d.ts +22 -17
- package/dist/components/context-menu/context-menu-checkbox.js +1 -1
- package/dist/components/context-menu/context-menu-checkbox.vue.d.ts +1 -1
- package/dist/components/context-menu/context-menu-radio.js +1 -1
- package/dist/components/context-menu/context-menu-radio.vue.d.ts +1 -1
- package/dist/components/context-menu/context-menu-wrapper.js +1 -1
- package/dist/components/context-menu/context-menu.js +1 -1
- package/dist/components/context-menu/context-menu.vue.d.ts +1 -1
- package/dist/components/context-menu/index.d.ts +2 -1
- package/dist/components/context-menu/types.d.ts +35 -1
- package/dist/components/date-field/index.d.ts +1 -2
- package/dist/components/date-field/types.d.ts +16 -1
- package/dist/components/date-picker/date-picker.js +1 -1
- package/dist/components/date-picker/date-picker.vue.d.ts +3 -1
- package/dist/components/date-picker/index.d.ts +1 -2
- package/dist/components/date-picker/types.d.ts +23 -15
- package/dist/components/date-picker/variants.js +1 -1
- package/dist/components/date-range-field/index.d.ts +1 -2
- package/dist/components/date-range-field/types.d.ts +47 -2
- package/dist/components/date-range-picker/index.d.ts +1 -2
- package/dist/components/date-range-picker/types.d.ts +36 -2
- package/dist/components/dialog/dialog-provider.js +1 -1
- package/dist/components/dialog/dialog.js +1 -1
- package/dist/components/dialog/dialog.vue.d.ts +4 -4
- package/dist/components/dialog/index.d.ts +2 -1
- package/dist/components/dialog/index.js +1 -1
- package/dist/components/dialog/types.d.ts +17 -1
- package/dist/components/drawer/drawer.js +1 -1
- package/dist/components/drawer/drawer.vue.d.ts +4 -4
- package/dist/components/drawer/types.d.ts +13 -1
- package/dist/components/dropdown-menu/dropdown-menu-checkbox.js +1 -1
- package/dist/components/dropdown-menu/dropdown-menu-checkbox.vue.d.ts +1 -1
- package/dist/components/dropdown-menu/dropdown-menu-radio.js +1 -1
- package/dist/components/dropdown-menu/dropdown-menu-radio.vue.d.ts +1 -1
- package/dist/components/dropdown-menu/dropdown-menu-wrapper.js +1 -1
- package/dist/components/dropdown-menu/dropdown-menu.js +1 -1
- package/dist/components/dropdown-menu/dropdown-menu.vue.d.ts +1 -1
- package/dist/components/dropdown-menu/index.d.ts +2 -1
- package/dist/components/dropdown-menu/types.d.ts +35 -1
- package/dist/components/editable/editable.js +1 -1
- package/dist/components/editable/index.d.ts +2 -3
- package/dist/components/editable/types.d.ts +42 -2
- package/dist/components/empty/empty.js +1 -1
- package/dist/components/empty/index.d.ts +1 -2
- package/dist/components/empty/types.d.ts +38 -1
- package/dist/components/form/form-field-base.js +1 -1
- package/dist/components/form/index.d.ts +2 -3
- package/dist/components/form/types.d.ts +102 -8
- package/dist/components/form/use-form.d.ts +2 -1
- package/dist/components/form/use-form.js +1 -1
- package/dist/components/hover-card/hover-card.js +1 -1
- package/dist/components/hover-card/index.d.ts +1 -2
- package/dist/components/hover-card/types.d.ts +35 -1
- package/dist/components/icon/types.d.ts +7 -1
- package/dist/components/input/index.d.ts +1 -2
- package/dist/components/input/input.js +1 -1
- package/dist/components/input/types.d.ts +14 -1
- package/dist/components/input-number/index.d.ts +2 -1
- package/dist/components/input-number/input-number.js +1 -1
- package/dist/components/input-number/types.d.ts +26 -1
- package/dist/components/input-otp/index.d.ts +1 -2
- package/dist/components/input-otp/index.js +1 -1
- package/dist/components/input-otp/input-otp.js +1 -1
- package/dist/components/input-otp/input-otp.vue.d.ts +2 -2
- package/dist/components/input-otp/types.d.ts +19 -1
- package/dist/components/kbd/index.d.ts +4 -2
- package/dist/components/kbd/kbd.js +1 -1
- package/dist/components/kbd/types.d.ts +18 -2
- package/dist/components/label/label.js +1 -1
- package/dist/components/label/types.d.ts +11 -1
- package/dist/components/layout/index.d.ts +2 -1
- package/dist/components/layout/index.js +1 -1
- package/dist/components/layout/layout-classic.js +1 -1
- package/dist/components/layout/layout.js +1 -1
- package/dist/components/layout/types.d.ts +38 -1
- package/dist/components/link/index.d.ts +4 -2
- package/dist/components/link/link.js +1 -1
- package/dist/components/link/types.d.ts +8 -1
- package/dist/components/list/index.d.ts +3 -3
- package/dist/components/list/list-item.js +1 -1
- package/dist/components/list/list.js +1 -1
- package/dist/components/list/types.d.ts +32 -1
- package/dist/components/menu/context.js +1 -1
- package/dist/components/menu/index.d.ts +10 -2
- package/dist/components/menu/index.js +1 -1
- package/dist/components/menu/types.d.ts +14 -1
- package/dist/components/menubar/index.d.ts +2 -1
- package/dist/components/menubar/menubar.js +1 -1
- package/dist/components/menubar/menubar.vue.d.ts +1 -1
- package/dist/components/menubar/types.d.ts +20 -1
- package/dist/components/month-picker/index.d.ts +1 -2
- package/dist/components/month-picker/types.d.ts +44 -2
- package/dist/components/month-range-picker/index.d.ts +1 -2
- package/dist/components/month-range-picker/types.d.ts +44 -2
- package/dist/components/navigation-menu/index.d.ts +1 -2
- package/dist/components/navigation-menu/navigation-menu-option.js +1 -1
- package/dist/components/navigation-menu/navigation-menu-sub-option.js +1 -1
- package/dist/components/navigation-menu/navigation-menu.js +1 -1
- package/dist/components/navigation-menu/types.d.ts +85 -2
- package/dist/components/page-tabs/index.d.ts +2 -1
- package/dist/components/page-tabs/page-tabs.js +1 -1
- package/dist/components/page-tabs/page-tabs.vue.d.ts +1 -1
- package/dist/components/page-tabs/types.d.ts +79 -3
- package/dist/components/pagination/index.d.ts +1 -2
- package/dist/components/pagination/pagination.js +1 -1
- package/dist/components/pagination/types.d.ts +11 -1
- package/dist/components/password/password.js +1 -1
- package/dist/components/password/types.d.ts +20 -1
- package/dist/components/popconfirm/popconfirm-cancel.js +1 -1
- package/dist/components/popconfirm/popconfirm-confirm.js +1 -1
- package/dist/components/popconfirm/popconfirm.js +1 -1
- package/dist/components/popconfirm/types.d.ts +143 -4
- package/dist/components/popover/index.d.ts +1 -2
- package/dist/components/popover/popover.js +1 -1
- package/dist/components/popover/types.d.ts +39 -2
- package/dist/components/progress/index.d.ts +6 -6
- package/dist/components/progress/progress-circle.js +1 -1
- package/dist/components/progress/progress-provider.js +1 -1
- package/dist/components/progress/progress.js +1 -1
- package/dist/components/progress/types.d.ts +43 -1
- package/dist/components/radio-group/index.d.ts +2 -3
- package/dist/components/radio-group/radio-card-group.js +1 -1
- package/dist/components/radio-group/radio-card-group.vue.d.ts +1 -1
- package/dist/components/radio-group/radio-card.js +1 -1
- package/dist/components/radio-group/radio-group.js +1 -1
- package/dist/components/radio-group/radio-group.vue.d.ts +1 -1
- package/dist/components/radio-group/radio.js +1 -1
- package/dist/components/radio-group/types.d.ts +76 -1
- package/dist/components/range-calendar/index.d.ts +1 -2
- package/dist/components/range-calendar/types.d.ts +127 -1
- package/dist/components/scroll-area/index.d.ts +1 -2
- package/dist/components/scroll-area/scroll-area.js +1 -1
- package/dist/components/scroll-area/types.d.ts +29 -1
- package/dist/components/segment/index.d.ts +2 -1
- package/dist/components/segment/segment.js +1 -1
- package/dist/components/segment/types.d.ts +26 -1
- package/dist/components/select/index.d.ts +2 -3
- package/dist/components/select/select.js +1 -1
- package/dist/components/select/select.vue.d.ts +1 -1
- package/dist/components/select/types.d.ts +18 -3
- package/dist/components/separator/index.d.ts +1 -2
- package/dist/components/separator/separator.js +1 -1
- package/dist/components/separator/types.d.ts +26 -1
- package/dist/components/skeleton/skeleton.js +1 -1
- package/dist/components/skeleton/types.d.ts +14 -1
- package/dist/components/slider/index.d.ts +1 -2
- package/dist/components/slider/slider.js +1 -1
- package/dist/components/slider/types.d.ts +29 -1
- package/dist/components/spinner/types.d.ts +16 -1
- package/dist/components/splitter/index.d.ts +2 -3
- package/dist/components/splitter/splitter-group.js +1 -1
- package/dist/components/splitter/splitter-panel.js +1 -1
- package/dist/components/splitter/splitter-panel.vue.d.ts +2 -2
- package/dist/components/splitter/splitter-resize-handle.js +1 -1
- package/dist/components/splitter/splitter-resize-handle.vue.d.ts +1 -1
- package/dist/components/splitter/types.d.ts +43 -2
- package/dist/components/stepper/index.d.ts +1 -2
- package/dist/components/stepper/stepper.js +1 -1
- package/dist/components/stepper/types.d.ts +56 -1
- package/dist/components/switch/index.d.ts +1 -2
- package/dist/components/switch/switch.js +1 -1
- package/dist/components/switch/switch.vue.d.ts +4 -4
- package/dist/components/switch/types.d.ts +29 -1
- package/dist/components/table/hooks.js +1 -1
- package/dist/components/table/index.d.ts +2 -1
- package/dist/components/table/index.js +1 -1
- package/dist/components/table/table.js +1 -1
- package/dist/components/table/table.vue.d.ts +2 -2
- package/dist/components/table/types.d.ts +76 -1
- package/dist/components/tabs/index.d.ts +2 -3
- package/dist/components/tabs/tabs.js +1 -1
- package/dist/components/tabs/types.d.ts +19 -1
- package/dist/components/tag/tag.js +1 -1
- package/dist/components/tag/types.d.ts +26 -1
- package/dist/components/tags-input/index.d.ts +3 -2
- package/dist/components/tags-input/tags-input-item-delete.js +1 -1
- package/dist/components/tags-input/tags-input.js +1 -1
- package/dist/components/tags-input/tags-input.vue.d.ts +1 -1
- package/dist/components/tags-input/types.d.ts +17 -1
- package/dist/components/textarea/index.d.ts +1 -2
- package/dist/components/textarea/textarea.js +1 -1
- package/dist/components/textarea/types.d.ts +23 -1
- package/dist/components/time-field/index.d.ts +1 -2
- package/dist/components/time-field/types.d.ts +38 -2
- package/dist/components/time-picker/index.d.ts +1 -2
- package/dist/components/time-picker/types.d.ts +35 -2
- package/dist/components/time-range-field/index.d.ts +1 -2
- package/dist/components/time-range-field/types.d.ts +47 -2
- package/dist/components/time-range-picker/index.d.ts +1 -2
- package/dist/components/time-range-picker/types.d.ts +35 -2
- package/dist/components/toast/index.d.ts +3 -3
- package/dist/components/toast/toast-provider.js +1 -1
- package/dist/components/toast/types.d.ts +11 -2
- package/dist/components/toggle/toggle.js +1 -1
- package/dist/components/toggle/toggle.vue.d.ts +3 -3
- package/dist/components/toggle/types.d.ts +20 -1
- package/dist/components/toggle-group/index.d.ts +1 -2
- package/dist/components/toggle-group/toggle-group-item.js +1 -1
- package/dist/components/toggle-group/toggle-group-item.vue.d.ts +1 -1
- package/dist/components/toggle-group/toggle-group.js +1 -1
- package/dist/components/toggle-group/toggle-group.vue.d.ts +1 -1
- package/dist/components/toggle-group/types.d.ts +23 -1
- package/dist/components/toolbar/index.d.ts +3 -2
- package/dist/components/toolbar/toolbar.js +1 -1
- package/dist/components/toolbar/types.d.ts +11 -1
- package/dist/components/tooltip/index.d.ts +1 -2
- package/dist/components/tooltip/tooltip.js +1 -1
- package/dist/components/tooltip/types.d.ts +38 -1
- package/dist/components/tree/index.d.ts +3 -2
- package/dist/components/tree/tree-virtualizer.js +1 -1
- package/dist/components/tree/tree-virtualizer.vue.d.ts +2 -1
- package/dist/components/tree/tree.js +1 -1
- package/dist/components/tree/tree.vue.d.ts +2 -1
- package/dist/components/tree/types.d.ts +15 -1
- package/dist/components/tree-menu/index.d.ts +2 -1
- package/dist/components/tree-menu/tree-menu-option-slot.js +1 -1
- package/dist/components/tree-menu/tree-menu-option.js +1 -1
- package/dist/components/tree-menu/tree-menu-options.js +1 -1
- package/dist/components/tree-menu/tree-menu.js +1 -1
- package/dist/components/tree-menu/types.d.ts +111 -6
- package/dist/components/virtualizer/index.d.ts +3 -2
- package/dist/components/virtualizer/types.d.ts +10 -1
- package/dist/components/virtualizer/virtualizer.js +1 -1
- package/dist/components/year-picker/index.d.ts +1 -2
- package/dist/components/year-picker/types.d.ts +44 -2
- package/dist/components/year-range-picker/index.d.ts +1 -2
- package/dist/components/year-range-picker/types.d.ts +44 -2
- package/dist/index.d.ts +103 -73
- package/dist/index.js +1 -1
- package/dist/theme/merge.d.ts +1 -1
- package/dist/theme/shared.d.ts +1 -1
- package/package.json +7 -5
|
@@ -1,59 +1,153 @@
|
|
|
1
1
|
import { ThemeSize } from "../../theme/types.js";
|
|
2
2
|
import { ComponentOptionsMixin, CreateComponentPublicInstanceWithMixins, EmitsOptions, FormHTMLAttributes, PublicProps, SlotsType } from "vue";
|
|
3
|
-
import {
|
|
3
|
+
import { FormControlProps, FormDescriptionProps, FormErrorProps, FormFieldArrayStates, FormFieldProps, FormFieldState, FormFieldUi, FormLabelProps, FormRegisterOptions, FormValues } from "@soybeanjs/headless/form";
|
|
4
|
+
import { ClassValue, Path, PathValue, PropsToContext } from "@soybeanjs/headless/types";
|
|
4
5
|
|
|
5
6
|
//#region src/components/form/types.d.ts
|
|
7
|
+
/**
|
|
8
|
+
* Props for the form field base component.
|
|
9
|
+
*/
|
|
6
10
|
interface FormFieldBaseProps extends Omit<FormFieldProps, 'class'> {
|
|
11
|
+
/**
|
|
12
|
+
* Additional class names applied to the root element.
|
|
13
|
+
*/
|
|
7
14
|
class?: ClassValue;
|
|
15
|
+
/**
|
|
16
|
+
* Visual size of the component.
|
|
17
|
+
*/
|
|
8
18
|
size?: ThemeSize;
|
|
19
|
+
/**
|
|
20
|
+
* Per-slot class overrides for the component.
|
|
21
|
+
*/
|
|
9
22
|
ui?: Partial<FormFieldUi>;
|
|
10
23
|
/**
|
|
11
24
|
* Whether the label is inline with the control.
|
|
12
25
|
*/
|
|
13
26
|
inline?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Label text rendered by the component.
|
|
29
|
+
*/
|
|
14
30
|
label?: string;
|
|
31
|
+
/**
|
|
32
|
+
* Description text rendered by the component.
|
|
33
|
+
*/
|
|
15
34
|
description?: string;
|
|
35
|
+
/**
|
|
36
|
+
* Props forwarded to the label element.
|
|
37
|
+
*/
|
|
16
38
|
labelProps?: FormLabelProps;
|
|
39
|
+
/**
|
|
40
|
+
* Props forwarded to the control element.
|
|
41
|
+
*/
|
|
17
42
|
controlProps?: FormControlProps;
|
|
43
|
+
/**
|
|
44
|
+
* Props forwarded to the description element.
|
|
45
|
+
*/
|
|
18
46
|
descriptionProps?: FormDescriptionProps;
|
|
47
|
+
/**
|
|
48
|
+
* Props forwarded to the error element.
|
|
49
|
+
*/
|
|
19
50
|
errorProps?: FormErrorProps;
|
|
20
51
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
ariaInvalid: boolean;
|
|
25
|
-
}
|
|
52
|
+
/**
|
|
53
|
+
* Props for the form field component.
|
|
54
|
+
*/
|
|
26
55
|
interface FormFieldProps$1<Values extends FormValues, Name extends Path<Values>> extends Omit<FormFieldBaseProps, 'error' | 'fieldArray'>, FormRegisterOptions<PathValue<Values, Name>> {
|
|
56
|
+
/**
|
|
57
|
+
* Name.
|
|
58
|
+
*/
|
|
27
59
|
name: Name;
|
|
28
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Slots for the form field component.
|
|
63
|
+
*/
|
|
29
64
|
type FormFieldSlots<Values extends FormValues, Name extends Path<Values>> = SlotsType<{
|
|
65
|
+
/**
|
|
66
|
+
* Custom content for the default slot.
|
|
67
|
+
*/
|
|
30
68
|
default: (props: FormFieldState<Values, Name>) => any;
|
|
69
|
+
/**
|
|
70
|
+
* Custom content for the label slot.
|
|
71
|
+
*/
|
|
31
72
|
label: (props: FormFieldState<Values, Name>) => any;
|
|
73
|
+
/**
|
|
74
|
+
* Custom content for the description slot.
|
|
75
|
+
*/
|
|
32
76
|
description: (props: FormFieldState<Values, Name>) => any;
|
|
33
77
|
}>;
|
|
78
|
+
/**
|
|
79
|
+
* Type information for the form field component component.
|
|
80
|
+
*/
|
|
34
81
|
type FormFieldComponent<Values extends FormValues> = new <Name extends Path<Values>>(props: FormFieldProps$1<Values, Name> & PublicProps) => CreateComponentPublicInstanceWithMixins<FormFieldProps$1<Values, Name>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, EmitsOptions, PublicProps, {}, false, {}, FormFieldSlots<Values, Name>>;
|
|
82
|
+
/**
|
|
83
|
+
* Props for the form field array component.
|
|
84
|
+
*/
|
|
35
85
|
type FormFieldArrayProps<Values extends FormValues, Name extends Path<Values>> = FormFieldProps$1<Values, Name>;
|
|
86
|
+
/**
|
|
87
|
+
* Slots for the form field array component.
|
|
88
|
+
*/
|
|
36
89
|
type FormFieldArraySlots<Values extends FormValues, Name extends Path<Values>> = SlotsType<{
|
|
90
|
+
/**
|
|
91
|
+
* Custom content for the default slot.
|
|
92
|
+
*/
|
|
37
93
|
default: (props: FormFieldArrayStates<Values, Name>) => any;
|
|
94
|
+
/**
|
|
95
|
+
* Custom content for the label slot.
|
|
96
|
+
*/
|
|
38
97
|
label: (props: FormFieldArrayStates<Values, Name>) => any;
|
|
98
|
+
/**
|
|
99
|
+
* Custom content for the description slot.
|
|
100
|
+
*/
|
|
39
101
|
description: (props: FormFieldArrayStates<Values, Name>) => any;
|
|
40
102
|
}>;
|
|
103
|
+
/**
|
|
104
|
+
* Type information for the form field array component component.
|
|
105
|
+
*/
|
|
41
106
|
type FormFieldArrayComponent<Values extends FormValues> = new <Name extends Path<Values>>(props: FormFieldArrayProps<Values, Name> & PublicProps) => CreateComponentPublicInstanceWithMixins<FormFieldArrayProps<Values, Name>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, EmitsOptions, PublicProps, {}, false, {}, FormFieldArraySlots<Values, Name>>;
|
|
107
|
+
/**
|
|
108
|
+
* Props for the form component.
|
|
109
|
+
*/
|
|
42
110
|
interface FormProps extends /** @vue-ignore */FormHTMLAttributes {
|
|
111
|
+
/**
|
|
112
|
+
* Additional class names applied to the root element.
|
|
113
|
+
*/
|
|
43
114
|
class?: ClassValue;
|
|
115
|
+
/**
|
|
116
|
+
* Visual size of the component.
|
|
117
|
+
*/
|
|
44
118
|
size?: ThemeSize;
|
|
119
|
+
/**
|
|
120
|
+
* Per-slot class overrides for the component.
|
|
121
|
+
*/
|
|
45
122
|
ui?: Partial<FormFieldUi>;
|
|
46
123
|
/**
|
|
47
124
|
* Whether the label is inline with the control.
|
|
48
125
|
*/
|
|
49
126
|
inline?: boolean;
|
|
127
|
+
/**
|
|
128
|
+
* Props forwarded to the field element.
|
|
129
|
+
*/
|
|
50
130
|
fieldProps?: FormFieldBaseProps;
|
|
131
|
+
/**
|
|
132
|
+
* Props forwarded to the field array element.
|
|
133
|
+
*/
|
|
51
134
|
fieldArrayProps?: FormFieldBaseProps;
|
|
135
|
+
/**
|
|
136
|
+
* Props forwarded to the label element.
|
|
137
|
+
*/
|
|
52
138
|
labelProps?: FormLabelProps;
|
|
139
|
+
/**
|
|
140
|
+
* Props forwarded to the control element.
|
|
141
|
+
*/
|
|
53
142
|
controlProps?: FormControlProps;
|
|
143
|
+
/**
|
|
144
|
+
* Props forwarded to the description element.
|
|
145
|
+
*/
|
|
54
146
|
descriptionProps?: FormDescriptionProps;
|
|
147
|
+
/**
|
|
148
|
+
* Props forwarded to the error element.
|
|
149
|
+
*/
|
|
55
150
|
errorProps?: FormErrorProps;
|
|
56
151
|
}
|
|
57
|
-
interface FormContext extends PropsToContext<FormProps> {}
|
|
58
152
|
//#endregion
|
|
59
|
-
export {
|
|
153
|
+
export { FormFieldArrayComponent, FormFieldBaseProps, FormFieldComponent, FormProps };
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { FormFieldArrayComponent, FormFieldComponent } from "./types.js";
|
|
2
2
|
import * as _$vue from "vue";
|
|
3
|
+
import { FormValues, InferStandardSchemaInput, StandardSchemaV1, UseFormOptions } from "@soybeanjs/headless/form";
|
|
4
|
+
import { Path } from "@soybeanjs/headless/types";
|
|
3
5
|
import * as _$_soybeanjs_headless0 from "@soybeanjs/headless";
|
|
4
|
-
import { FormValues, InferStandardSchemaInput, Path, StandardSchemaV1, UseFormOptions } from "@soybeanjs/headless";
|
|
5
6
|
|
|
6
7
|
//#region src/components/form/use-form.d.ts
|
|
7
8
|
declare function useForm$1<S extends StandardSchemaV1<FormValues, FormValues>>(options: UseFormOptions<S>): {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"./form-field-base.js";import{defineComponent as t,h as n}from"vue";import{
|
|
1
|
+
import e from"./form-field-base.js";import{defineComponent as t,h as n}from"vue";import{useForm as r}from"@soybeanjs/headless/form";import{Slot as i}from"@soybeanjs/headless/slot";function a(a){let o=r(a),s=t((t,{slots:r})=>{let a=o.useField(t.name,{validate:t.validate,reset:t.reset});return()=>n(e,{error:a.value.meta.error,...t},{label:()=>r.label?.(a.value),description:r.description?()=>r.description(a.value):void 0,default:e=>n(i,{size:t.size,id:e.formFieldId,ariaDescribedBy:e.ariaDescribedBy,ariaInvalid:e.ariaInvalid,name:t.name,modelValue:a.value.value,"onUpdate:modelValue":e=>o.setFieldValue(t.name,e),onBlur:e=>a.value.onBlur(e,t.name),onChange:()=>a.value.onChange(),onInput:()=>a.value.onInput()},{default:()=>r.default?.(a.value)})})},{name:`SFormField`,props:[`name`]}),c=t((t,{slots:r})=>{let i=o.useFieldArray(t.name,{validate:t.validate,reset:t.reset});return()=>n(e,{error:i.value.meta.error,...t,isFieldArray:!0},{label:()=>r.label?.(i.value),description:r.description?()=>r.description(i.value):void 0,default:()=>r.default?.(i.value)})},{name:`SFormFieldArray`,props:[`name`]});return{...o,SFormField:s,SFormFieldArray:c}}export{a as useForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{hoverCardVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createVNode as a,defineComponent as o,guardReactiveProps as s,mergeProps as c,normalizeProps as l,openBlock as u,renderSlot as d,toHandlers as f,unref as p,withCtx as m}from"vue";import{useForwardListeners as h,useOmitProps as g}from"@soybeanjs/headless/composables";import{HoverCardArrow as _,HoverCardPopup as v,HoverCardPortal as y,HoverCardPositioner as b,HoverCardRoot as x,HoverCardTrigger as S,provideHoverCardUi as C}from"@soybeanjs/headless";const w=o({name:`SHoverCard`,__name:`hover-card`,props:{class:{},size:{},ui:{},placement:{},showArrow:{type:Boolean,default:!0},positionerProps:{},popupProps:{},triggerProps:{},portalProps:{},arrowProps:{},defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},openDelay:{},closeDelay:{}},emits:[`update:open`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`],setup(o,{emit:w}){let T=o,E=w,D=g(T,[`class`,`size`,`ui`,`placement`,`showArrow`,`positionerProps`,`popupProps`,`triggerProps`,`portalProps`,`arrowProps`]),O=h(E),k=n(()=>e(t({size:T.size}),T.ui,{popup:T.class})),A=n(()=>({...T.positionerProps,placement:T.placement??T.positionerProps?.placement}));return C(k),(e,t)=>(u(),r(p(x),c(p(D),{"onUpdate:open":t[0]||=e=>E(`update:open`,e)}),{default:m(()=>[a(p(S),c(o.triggerProps,{"as-child":``}),{default:m(()=>[d(e.$slots,`trigger`)]),_:3},16),a(p(y),l(s(o.portalProps)),{default:m(()=>[a(p(b),c(A.value,f(p(O))),{default:m(()=>[a(p(v),l(s(o.popupProps)),{default:m(()=>[d(e.$slots,`default`),o.showArrow?(u(),r(p(_),l(c({key:0},o.arrowProps)),null,16)):i(`v-if`,!0)]),_:3},16)]),_:3},16)]),_:3},16)]),_:3},16))}});export{w as default};
|
|
1
|
+
import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{hoverCardVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createVNode as a,defineComponent as o,guardReactiveProps as s,mergeProps as c,normalizeProps as l,openBlock as u,renderSlot as d,toHandlers as f,unref as p,withCtx as m}from"vue";import{useForwardListeners as h,useOmitProps as g}from"@soybeanjs/headless/composables";import{HoverCardArrow as _,HoverCardPopup as v,HoverCardPortal as y,HoverCardPositioner as b,HoverCardRoot as x,HoverCardTrigger as S,provideHoverCardUi as C}from"@soybeanjs/headless/hover-card";const w=o({name:`SHoverCard`,__name:`hover-card`,props:{class:{},size:{},ui:{},placement:{},showArrow:{type:Boolean,default:!0},positionerProps:{},popupProps:{},triggerProps:{},portalProps:{},arrowProps:{},defaultOpen:{type:Boolean,default:!1},open:{type:Boolean,default:void 0},openDelay:{},closeDelay:{}},emits:[`update:open`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`],setup(o,{emit:w}){let T=o,E=w,D=g(T,[`class`,`size`,`ui`,`placement`,`showArrow`,`positionerProps`,`popupProps`,`triggerProps`,`portalProps`,`arrowProps`]),O=h(E),k=n(()=>e(t({size:T.size}),T.ui,{popup:T.class})),A=n(()=>({...T.positionerProps,placement:T.placement??T.positionerProps?.placement}));return C(k),(e,t)=>(u(),r(p(x),c(p(D),{"onUpdate:open":t[0]||=e=>E(`update:open`,e)}),{default:m(()=>[a(p(S),c(o.triggerProps,{"as-child":``}),{default:m(()=>[d(e.$slots,`trigger`)]),_:3},16),a(p(y),l(s(o.portalProps)),{default:m(()=>[a(p(b),c(A.value,f(p(O))),{default:m(()=>[a(p(v),l(s(o.popupProps)),{default:m(()=>[d(e.$slots,`default`),o.showArrow?(u(),r(p(_),l(c({key:0},o.arrowProps)),null,16)):i(`v-if`,!0)]),_:3},16)]),_:3},16)]),_:3},16)]),_:3},16))}});export{w as default};
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import { HoverCardEmits, HoverCardProps } from "./types.js";
|
|
2
2
|
import { _default } from "./hover-card.vue.js";
|
|
3
|
-
|
|
4
|
-
export { type HoverCardArrowProps, type HoverCardPopupProps, type HoverCardPortalProps, type HoverCardPositionerEmits, type HoverCardPositionerProps, type HoverCardRootEmits, type HoverCardRootProps, type HoverCardTriggerProps, type HoverCardUi, type HoverCardUiSlot };
|
|
3
|
+
export * from "@soybeanjs/headless/hover-card";
|
|
@@ -1,22 +1,56 @@
|
|
|
1
1
|
import { ThemeSize } from "../../theme/types.js";
|
|
2
|
-
import {
|
|
2
|
+
import { HoverCardArrowProps, HoverCardPopupProps, HoverCardPortalProps, HoverCardPositionerEmits, HoverCardPositionerProps, HoverCardRootEmits, HoverCardRootProps, HoverCardTriggerProps, HoverCardUi } from "@soybeanjs/headless/hover-card";
|
|
3
|
+
import { ClassValue, Placement } from "@soybeanjs/headless/types";
|
|
3
4
|
|
|
4
5
|
//#region src/components/hover-card/types.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* Props for the hover card component.
|
|
8
|
+
*/
|
|
5
9
|
interface HoverCardProps extends HoverCardRootProps {
|
|
6
10
|
/**
|
|
7
11
|
* class of popup
|
|
8
12
|
*/
|
|
9
13
|
class?: ClassValue;
|
|
14
|
+
/**
|
|
15
|
+
* Visual size of the component.
|
|
16
|
+
*/
|
|
10
17
|
size?: ThemeSize;
|
|
18
|
+
/**
|
|
19
|
+
* Per-slot class overrides for the component.
|
|
20
|
+
*/
|
|
11
21
|
ui?: Partial<HoverCardUi>;
|
|
22
|
+
/**
|
|
23
|
+
* Placement.
|
|
24
|
+
*/
|
|
12
25
|
placement?: Placement;
|
|
26
|
+
/**
|
|
27
|
+
* Whether to show an arrow.
|
|
28
|
+
*/
|
|
13
29
|
showArrow?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Props forwarded to the positioner element.
|
|
32
|
+
*/
|
|
14
33
|
positionerProps?: HoverCardPositionerProps;
|
|
34
|
+
/**
|
|
35
|
+
* Props forwarded to the popup element.
|
|
36
|
+
*/
|
|
15
37
|
popupProps?: HoverCardPopupProps;
|
|
38
|
+
/**
|
|
39
|
+
* Props forwarded to the trigger element.
|
|
40
|
+
*/
|
|
16
41
|
triggerProps?: HoverCardTriggerProps;
|
|
42
|
+
/**
|
|
43
|
+
* Props forwarded to the portal element.
|
|
44
|
+
*/
|
|
17
45
|
portalProps?: HoverCardPortalProps;
|
|
46
|
+
/**
|
|
47
|
+
* Props forwarded to the arrow element.
|
|
48
|
+
*/
|
|
18
49
|
arrowProps?: HoverCardArrowProps;
|
|
19
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Emits for the hover card component.
|
|
53
|
+
*/
|
|
20
54
|
type HoverCardEmits = HoverCardRootEmits & HoverCardPositionerEmits;
|
|
21
55
|
//#endregion
|
|
22
56
|
export { HoverCardEmits, HoverCardProps };
|
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
import { IconValue } from "@soybeanjs/headless";
|
|
2
1
|
import { IconProps } from "@iconify/vue";
|
|
2
|
+
import { IconValue } from "@soybeanjs/headless/_icon";
|
|
3
3
|
|
|
4
4
|
//#region src/components/icon/types.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* Props for the icon component.
|
|
7
|
+
*/
|
|
5
8
|
interface IconProps$1 extends Omit<IconProps, 'icon'> {
|
|
9
|
+
/**
|
|
10
|
+
* Icon rendered by the component.
|
|
11
|
+
*/
|
|
6
12
|
icon: IconValue;
|
|
7
13
|
}
|
|
8
14
|
//#endregion
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import { InputEmits, InputProps } from "./types.js";
|
|
2
2
|
import { _default } from "./input.vue.js";
|
|
3
|
-
|
|
4
|
-
export { type InputControlProps, type InputRootEmits, type InputRootProps };
|
|
3
|
+
export * from "@soybeanjs/headless/input";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{inputVariants as n}from"./variants.js";import{computed as r,createBlock as i,createCommentVNode as a,createVNode as o,defineComponent as s,mergeProps as c,normalizeClass as l,openBlock as u,renderSlot as d,unref as f,useAttrs as p,withCtx as m}from"vue";import{useForwardElement as h,useOmitProps as g}from"@soybeanjs/headless/composables";import{InputControl as _,InputRoot as v,provideInputUi as y}from"@soybeanjs/headless";const b=s({name:`SInput`,inheritAttrs:!1,__name:`input`,props:{class:{},size:{},ui:{},clearable:{type:Boolean},inputRef:{type:Function},controlProps:{},defaultValue:{},modelValue:{},id:{},autofocus:{type:Boolean},disabled:{type:Boolean},maxlength:{},minlength:{},pattern:{},placeholder:{},readonly:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`],setup(s,{emit:b}){let x=s,S=b,C=p(),w=g(x,[`class`,`inputRef`,`size`,`ui`,`controlProps`,`clearable`]),[T,E]=h(e=>x.inputRef?.(e)),D=r(()=>e(n({size:x.size}),x.ui,{root:x.class}));return y(D),(e,n)=>(u(),i(f(v),c(f(w),{"onUpdate:modelValue":n[0]||=e=>S(`update:modelValue`,e)}),{default:m(({clear:n})=>[d(e.$slots,`leading`),o(f(_),c({...s.controlProps,...f(C)},{ref:f(E)}),null,16),s.clearable?(u(),i(t,{key:0,icon:`lucide:x`,class:l(D.value.clearable),onClick:n},null,8,[`class`,`onClick`])):a(`v-if`,!0),d(e.$slots,`trailing`)]),_:3},16))}});export{b as default};
|
|
1
|
+
import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{inputVariants as n}from"./variants.js";import{computed as r,createBlock as i,createCommentVNode as a,createVNode as o,defineComponent as s,mergeProps as c,normalizeClass as l,openBlock as u,renderSlot as d,unref as f,useAttrs as p,withCtx as m}from"vue";import{useForwardElement as h,useOmitProps as g}from"@soybeanjs/headless/composables";import{InputControl as _,InputRoot as v,provideInputUi as y}from"@soybeanjs/headless/input";const b=s({name:`SInput`,inheritAttrs:!1,__name:`input`,props:{class:{},size:{},ui:{},clearable:{type:Boolean},inputRef:{type:Function},controlProps:{},defaultValue:{},modelValue:{},id:{},autofocus:{type:Boolean},disabled:{type:Boolean},maxlength:{},minlength:{},pattern:{},placeholder:{},readonly:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`],setup(s,{emit:b}){let x=s,S=b,C=p(),w=g(x,[`class`,`inputRef`,`size`,`ui`,`controlProps`,`clearable`]),[T,E]=h(e=>x.inputRef?.(e)),D=r(()=>e(n({size:x.size}),x.ui,{root:x.class}));return y(D),(e,n)=>(u(),i(f(v),c(f(w),{"onUpdate:modelValue":n[0]||=e=>S(`update:modelValue`,e)}),{default:m(({clear:n})=>[d(e.$slots,`leading`),o(f(_),c({...s.controlProps,...f(C)},{ref:f(E)}),null,16),s.clearable?(u(),i(t,{key:0,icon:`lucide:x`,class:l(D.value.clearable),onClick:n},null,8,[`class`,`onClick`])):a(`v-if`,!0),d(e.$slots,`trailing`)]),_:3},16))}});export{b as default};
|
|
@@ -1,15 +1,25 @@
|
|
|
1
1
|
import { ThemeSize } from "../../theme/types.js";
|
|
2
|
-
import {
|
|
2
|
+
import { InputControlProps, InputRootEmits, InputRootProps, InputUi } from "@soybeanjs/headless/input";
|
|
3
|
+
import { ClassValue } from "@soybeanjs/headless/types";
|
|
3
4
|
|
|
4
5
|
//#region src/components/input/types.d.ts
|
|
5
6
|
type InputExtraUiSlot = 'clearable';
|
|
6
7
|
type InputExtendedUi = InputUi & Record<InputExtraUiSlot, ClassValue>;
|
|
8
|
+
/**
|
|
9
|
+
* Props for the input component.
|
|
10
|
+
*/
|
|
7
11
|
interface InputProps extends InputRootProps {
|
|
8
12
|
/**
|
|
9
13
|
* root class
|
|
10
14
|
*/
|
|
11
15
|
class?: ClassValue;
|
|
16
|
+
/**
|
|
17
|
+
* Visual size of the component.
|
|
18
|
+
*/
|
|
12
19
|
size?: ThemeSize;
|
|
20
|
+
/**
|
|
21
|
+
* Per-slot class overrides for the component.
|
|
22
|
+
*/
|
|
13
23
|
ui?: Partial<InputExtendedUi>;
|
|
14
24
|
/** Whether to show the clear icon */
|
|
15
25
|
clearable?: boolean;
|
|
@@ -24,6 +34,9 @@ interface InputProps extends InputRootProps {
|
|
|
24
34
|
*/
|
|
25
35
|
controlProps?: InputControlProps;
|
|
26
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Emits for the input component.
|
|
39
|
+
*/
|
|
27
40
|
type InputEmits = InputRootEmits;
|
|
28
41
|
//#endregion
|
|
29
42
|
export { InputEmits, InputProps };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{inputNumberVariants as n}from"./variants.js";import{computed as r,createBlock as i,createCommentVNode as a,createVNode as o,defineComponent as s,guardReactiveProps as c,mergeProps as l,normalizeClass as u,normalizeProps as d,openBlock as f,renderSlot as p,unref as m,withCtx as h}from"vue";import{useForwardElement as g,useOmitProps as _}from"@soybeanjs/headless/composables";import{InputNumberControl as v,InputNumberDecrement as y,InputNumberIncrement as b,InputNumberRoot as x,provideInputNumberUi as S}from"@soybeanjs/headless";const C=s({name:`SInputNumber`,__name:`input-number`,props:{class:{},size:{},ui:{},center:{type:Boolean},clearable:{type:Boolean},inputRef:{type:Function},controlProps:{},incrementProps:{},decrementProps:{},defaultValue:{},modelValue:{},min:{},max:{},step:{},stepSnapping:{type:Boolean},focusOnChange:{type:Boolean},formatOptions:{},locale:{},disableWheelChange:{type:Boolean},invertWheelChange:{type:Boolean},id:{},autofocus:{type:Boolean},disabled:{type:Boolean},maxlength:{},minlength:{},pattern:{},placeholder:{},readonly:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`],setup(s,{emit:C}){let w=s,T=C,[E,D]=g(e=>w.inputRef?.(e)),O=_(w,[`class`,`size`,`ui`,`center`,`clearable`,`inputRef`,`controlProps`,`incrementProps`,`decrementProps`]),k=r(()=>e(n({size:w.size,center:w.center}),w.ui,{root:w.class}));return S(k),(e,n)=>(f(),i(m(x),l(m(O),{"onUpdate:modelValue":n[0]||=e=>T(`update:modelValue`,e)}),{default:h(({clear:n})=>[p(e.$slots,`leading`),o(m(v),l(s.controlProps,{ref:m(D)}),null,16),s.clearable?(f(),i(t,{key:0,icon:`lucide:x`,class:u(k.value.clearable),onClick:n},null,8,[`class`,`onClick`])):a(`v-if`,!0),p(e.$slots,`trailing`),o(m(y),d(c(s.decrementProps)),{default:h(()=>[p(e.$slots,`decrement`,{},()=>[o(t,{icon:`lucide:minus`})])]),_:3},16),o(m(b),d(c(s.incrementProps)),{default:h(()=>[p(e.$slots,`increment`,{},()=>[o(t,{icon:`lucide:plus`})])]),_:3},16)]),_:3},16))}});export{C as default};
|
|
1
|
+
import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{inputNumberVariants as n}from"./variants.js";import{computed as r,createBlock as i,createCommentVNode as a,createVNode as o,defineComponent as s,guardReactiveProps as c,mergeProps as l,normalizeClass as u,normalizeProps as d,openBlock as f,renderSlot as p,unref as m,withCtx as h}from"vue";import{useForwardElement as g,useOmitProps as _}from"@soybeanjs/headless/composables";import{InputNumberControl as v,InputNumberDecrement as y,InputNumberIncrement as b,InputNumberRoot as x,provideInputNumberUi as S}from"@soybeanjs/headless/input-number";const C=s({name:`SInputNumber`,__name:`input-number`,props:{class:{},size:{},ui:{},center:{type:Boolean},clearable:{type:Boolean},inputRef:{type:Function},controlProps:{},incrementProps:{},decrementProps:{},defaultValue:{},modelValue:{},min:{},max:{},step:{},stepSnapping:{type:Boolean},focusOnChange:{type:Boolean},formatOptions:{},locale:{},disableWheelChange:{type:Boolean},invertWheelChange:{type:Boolean},id:{},autofocus:{type:Boolean},disabled:{type:Boolean},maxlength:{},minlength:{},pattern:{},placeholder:{},readonly:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`],setup(s,{emit:C}){let w=s,T=C,[E,D]=g(e=>w.inputRef?.(e)),O=_(w,[`class`,`size`,`ui`,`center`,`clearable`,`inputRef`,`controlProps`,`incrementProps`,`decrementProps`]),k=r(()=>e(n({size:w.size,center:w.center}),w.ui,{root:w.class}));return S(k),(e,n)=>(f(),i(m(x),l(m(O),{"onUpdate:modelValue":n[0]||=e=>T(`update:modelValue`,e)}),{default:h(({clear:n})=>[p(e.$slots,`leading`),o(m(v),l(s.controlProps,{ref:m(D)}),null,16),s.clearable?(f(),i(t,{key:0,icon:`lucide:x`,class:u(k.value.clearable),onClick:n},null,8,[`class`,`onClick`])):a(`v-if`,!0),p(e.$slots,`trailing`),o(m(y),d(c(s.decrementProps)),{default:h(()=>[p(e.$slots,`decrement`,{},()=>[o(t,{icon:`lucide:minus`})])]),_:3},16),o(m(b),d(c(s.incrementProps)),{default:h(()=>[p(e.$slots,`increment`,{},()=>[o(t,{icon:`lucide:plus`})])]),_:3},16)]),_:3},16))}});export{C as default};
|
|
@@ -1,10 +1,23 @@
|
|
|
1
1
|
import { ThemeSize } from "../../theme/types.js";
|
|
2
|
-
import {
|
|
2
|
+
import { InputNumberControlProps, InputNumberDecrementProps, InputNumberIncrementProps, InputNumberRootEmits, InputNumberRootProps, InputNumberUi } from "@soybeanjs/headless/input-number";
|
|
3
|
+
import { ClassValue } from "@soybeanjs/headless/types";
|
|
3
4
|
|
|
4
5
|
//#region src/components/input-number/types.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* Props for the input number component.
|
|
8
|
+
*/
|
|
5
9
|
interface InputNumberProps extends InputNumberRootProps {
|
|
10
|
+
/**
|
|
11
|
+
* Additional class names applied to the root element.
|
|
12
|
+
*/
|
|
6
13
|
class?: ClassValue;
|
|
14
|
+
/**
|
|
15
|
+
* Visual size of the component.
|
|
16
|
+
*/
|
|
7
17
|
size?: ThemeSize;
|
|
18
|
+
/**
|
|
19
|
+
* Per-slot class overrides for the component.
|
|
20
|
+
*/
|
|
8
21
|
ui?: Partial<InputNumberUi>;
|
|
9
22
|
/**
|
|
10
23
|
* Whether to center the input.
|
|
@@ -20,10 +33,22 @@ interface InputNumberProps extends InputNumberRootProps {
|
|
|
20
33
|
* @param el - The input element.
|
|
21
34
|
*/
|
|
22
35
|
inputRef?: (el: HTMLInputElement) => void;
|
|
36
|
+
/**
|
|
37
|
+
* Props forwarded to the control element.
|
|
38
|
+
*/
|
|
23
39
|
controlProps?: InputNumberControlProps;
|
|
40
|
+
/**
|
|
41
|
+
* Props forwarded to the increment element.
|
|
42
|
+
*/
|
|
24
43
|
incrementProps?: InputNumberIncrementProps;
|
|
44
|
+
/**
|
|
45
|
+
* Props forwarded to the decrement element.
|
|
46
|
+
*/
|
|
25
47
|
decrementProps?: InputNumberDecrementProps;
|
|
26
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* Emits for the input number component.
|
|
51
|
+
*/
|
|
27
52
|
type InputNumberEmits = InputNumberRootEmits;
|
|
28
53
|
//#endregion
|
|
29
54
|
export { InputNumberEmits, InputNumberProps };
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import { InputOtpEmits, InputOtpProps, InputOtpSlots } from "./types.js";
|
|
2
2
|
import { _default } from "./input-otp.vue.js";
|
|
3
|
-
|
|
4
|
-
export { type InputOtpCompactEmits$1 as InputOtpCompactEmits, type InputOtpCompactProps$1 as InputOtpCompactProps, type InputOtpCompactSlots$1 as InputOtpCompactSlots, type InputOtpInputMode, type InputOtpInputProps, type InputOtpPositionerProps, type InputOtpPushPasswordManagerStrategy, type InputOtpRootEmits, type InputOtpRootProps, type InputOtpRootSlotProps, type InputOtpSlotProps, type InputOtpUi$1 as InputOtpUi, type InputOtpUiSlot, REGEXP_ONLY_CHARS, REGEXP_ONLY_DIGITS, REGEXP_ONLY_DIGITS_AND_CHARS };
|
|
3
|
+
export * from "@soybeanjs/headless/input-otp";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./input-otp.js";
|
|
1
|
+
import"./input-otp.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{inputOtpVariants as t}from"./variants.js";import{computed as n,createBlock as r,defineComponent as i,guardReactiveProps as a,mergeProps as o,normalizeProps as s,openBlock as c,renderSlot as l,toHandlers as u,unref as d,withCtx as f}from"vue";import{useForwardListeners as p,useOmitProps as m}from"@soybeanjs/headless/composables";import{InputOtpCompact as h,provideInputOtpUi as g}from"@soybeanjs/headless";const _=i({name:`SInputOtp`,__name:`input-otp`,props:{class:{},size:{},align:{},ui:{},id:{},autocomplete:{},autofocus:{type:Boolean},disabled:{type:Boolean},minlength:{},placeholder:{},readonly:{type:Boolean},"aria-label":{},modelValue:{},defaultValue:{},maxlength:{},inputmode:{},pattern:{},pushPasswordManagerStrategy:{},pasteTransformer:{type:Function},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`complete`,`input`,`change`,`select`,`focus`,`blur`,`mouseover`,`mouseleave`,`paste`],setup(i,{emit:_}){let v=i,y=p(_),b=m(v,[`class`,`size`,`align`,`ui`]);return g(n(()=>e(t({size:v.size,align:v.align}),v.ui,{root:v.class}))),(e,t)=>(c(),r(d(h),o(d(b),u(d(y))),{default:f(t=>[l(e.$slots,`default`,s(a(t)))]),_:3},16))}});export{_ as default};
|
|
1
|
+
import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{inputOtpVariants as t}from"./variants.js";import{computed as n,createBlock as r,defineComponent as i,guardReactiveProps as a,mergeProps as o,normalizeProps as s,openBlock as c,renderSlot as l,toHandlers as u,unref as d,withCtx as f}from"vue";import{useForwardListeners as p,useOmitProps as m}from"@soybeanjs/headless/composables";import{InputOtpCompact as h,provideInputOtpUi as g}from"@soybeanjs/headless/input-otp";const _=i({name:`SInputOtp`,__name:`input-otp`,props:{class:{},size:{},align:{},ui:{},id:{},autocomplete:{},autofocus:{type:Boolean},disabled:{type:Boolean},minlength:{},placeholder:{},readonly:{type:Boolean},"aria-label":{},modelValue:{},defaultValue:{},maxlength:{},inputmode:{},pattern:{},pushPasswordManagerStrategy:{},pasteTransformer:{type:Function},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`complete`,`input`,`change`,`select`,`focus`,`blur`,`mouseover`,`mouseleave`,`paste`],setup(i,{emit:_}){let v=i,y=p(_),b=m(v,[`class`,`size`,`align`,`ui`]);return g(n(()=>e(t({size:v.size,align:v.align}),v.ui,{root:v.class}))),(e,t)=>(c(),r(d(h),o(d(b),u(d(y))),{default:f(t=>[l(e.$slots,`default`,s(a(t)))]),_:3},16))}});export{_ as default};
|
|
@@ -6,9 +6,9 @@ type __VLS_Slots = InputOtpSlots;
|
|
|
6
6
|
declare const __VLS_base: _$vue.DefineComponent<InputOtpProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
|
|
7
7
|
input: (value: string) => any;
|
|
8
8
|
select: (event: Event) => any;
|
|
9
|
-
change: (event: Event) => any;
|
|
10
9
|
"update:modelValue": (value: string) => any;
|
|
11
10
|
blur: (event: FocusEvent) => any;
|
|
11
|
+
change: (event: Event) => any;
|
|
12
12
|
focus: (event: FocusEvent) => any;
|
|
13
13
|
mouseleave: (event: MouseEvent) => any;
|
|
14
14
|
mouseover: (event: MouseEvent) => any;
|
|
@@ -17,9 +17,9 @@ declare const __VLS_base: _$vue.DefineComponent<InputOtpProps, {}, {}, {}, {}, _
|
|
|
17
17
|
}, string, _$vue.PublicProps, Readonly<InputOtpProps> & Readonly<{
|
|
18
18
|
onInput?: ((value: string) => any) | undefined;
|
|
19
19
|
onSelect?: ((event: Event) => any) | undefined;
|
|
20
|
-
onChange?: ((event: Event) => any) | undefined;
|
|
21
20
|
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
22
21
|
onBlur?: ((event: FocusEvent) => any) | undefined;
|
|
22
|
+
onChange?: ((event: Event) => any) | undefined;
|
|
23
23
|
onFocus?: ((event: FocusEvent) => any) | undefined;
|
|
24
24
|
onMouseleave?: ((event: MouseEvent) => any) | undefined;
|
|
25
25
|
onMouseover?: ((event: MouseEvent) => any) | undefined;
|
|
@@ -1,16 +1,34 @@
|
|
|
1
1
|
import { ThemeSize } from "../../theme/types.js";
|
|
2
|
-
import { Align, ClassValue } from "@soybeanjs/headless";
|
|
3
2
|
import { InputOtpCompactEmits, InputOtpCompactProps, InputOtpCompactSlots, InputOtpUi } from "@soybeanjs/headless/input-otp";
|
|
3
|
+
import { Align, ClassValue } from "@soybeanjs/headless/types";
|
|
4
4
|
|
|
5
5
|
//#region src/components/input-otp/types.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* Props for the input otp component.
|
|
8
|
+
*/
|
|
6
9
|
interface InputOtpProps extends InputOtpCompactProps {
|
|
7
10
|
/** Root class. */
|
|
8
11
|
class?: ClassValue;
|
|
12
|
+
/**
|
|
13
|
+
* Visual size of the component.
|
|
14
|
+
*/
|
|
9
15
|
size?: ThemeSize;
|
|
16
|
+
/**
|
|
17
|
+
* Align.
|
|
18
|
+
*/
|
|
10
19
|
align?: Align;
|
|
20
|
+
/**
|
|
21
|
+
* Per-slot class overrides for the component.
|
|
22
|
+
*/
|
|
11
23
|
ui?: Partial<InputOtpUi>;
|
|
12
24
|
}
|
|
25
|
+
/**
|
|
26
|
+
* Emits for the input otp component.
|
|
27
|
+
*/
|
|
13
28
|
type InputOtpEmits = InputOtpCompactEmits;
|
|
29
|
+
/**
|
|
30
|
+
* Slots for the input otp component.
|
|
31
|
+
*/
|
|
14
32
|
type InputOtpSlots = InputOtpCompactSlots;
|
|
15
33
|
//#endregion
|
|
16
34
|
export { InputOtpEmits, InputOtpProps, InputOtpSlots };
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import { KbdVariant } from "./variants.js";
|
|
2
|
-
import { KbdProps
|
|
3
|
-
import { _default } from "./kbd.vue.js";
|
|
2
|
+
import { KbdProps as KbdProps$1 } from "./types.js";
|
|
3
|
+
import { _default } from "./kbd.vue.js";
|
|
4
|
+
import { KbdValue } from "@soybeanjs/headless/kbd";
|
|
5
|
+
export { type KbdValue };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{cn as e}from"../../theme/merge.js";import"../../theme/index.js";import{kbdVariants as t}from"./variants.js";import{computed as n,createBlock as r,defineComponent as i,mergeProps as a,openBlock as o,unref as s}from"vue";import{useOmitProps as c}from"@soybeanjs/headless/composables";import{Kbd as l}from"@soybeanjs/headless";const u=i({name:`SKbd`,__name:`kbd`,props:{class:{},size:{},variant:{},raised:{type:Boolean,default:!0},value:{},symbolize:{type:Boolean,default:!0}},setup(i){let u=i,d=c(u,[`class`,`size`,`variant`,`raised`]),f=n(()=>e(t({size:u.size,variant:u.variant,raised:u.raised}),u.class));return(e,t)=>(o(),r(s(l),a(s(d),{class:f.value}),null,16,[`class`]))}});export{u as default};
|
|
1
|
+
import{cn as e}from"../../theme/merge.js";import"../../theme/index.js";import{kbdVariants as t}from"./variants.js";import{computed as n,createBlock as r,defineComponent as i,mergeProps as a,openBlock as o,unref as s}from"vue";import{useOmitProps as c}from"@soybeanjs/headless/composables";import{Kbd as l}from"@soybeanjs/headless/kbd";const u=i({name:`SKbd`,__name:`kbd`,props:{class:{},size:{},variant:{},raised:{type:Boolean,default:!0},value:{},symbolize:{type:Boolean,default:!0}},setup(i){let u=i,d=c(u,[`class`,`size`,`variant`,`raised`]),f=n(()=>e(t({size:u.size,variant:u.variant,raised:u.raised}),u.class));return(e,t)=>(o(),r(s(l),a(s(d),{class:f.value}),null,16,[`class`]))}});export{u as default};
|
|
@@ -1,13 +1,29 @@
|
|
|
1
1
|
import { ThemeSize } from "../../theme/types.js";
|
|
2
2
|
import { KbdVariant } from "./variants.js";
|
|
3
|
-
import {
|
|
3
|
+
import { KbdProps } from "@soybeanjs/headless/kbd";
|
|
4
|
+
import { ClassValue } from "@soybeanjs/headless/types";
|
|
4
5
|
|
|
5
6
|
//#region src/components/kbd/types.d.ts
|
|
7
|
+
/**
|
|
8
|
+
* Props for the kbd component.
|
|
9
|
+
*/
|
|
6
10
|
interface KbdProps$1 extends KbdProps {
|
|
11
|
+
/**
|
|
12
|
+
* Additional class names applied to the root element.
|
|
13
|
+
*/
|
|
7
14
|
class?: ClassValue;
|
|
15
|
+
/**
|
|
16
|
+
* Visual size of the component.
|
|
17
|
+
*/
|
|
8
18
|
size?: ThemeSize;
|
|
19
|
+
/**
|
|
20
|
+
* Visual variant of the component.
|
|
21
|
+
*/
|
|
9
22
|
variant?: KbdVariant;
|
|
23
|
+
/**
|
|
24
|
+
* Whether raised.
|
|
25
|
+
*/
|
|
10
26
|
raised?: boolean;
|
|
11
27
|
}
|
|
12
28
|
//#endregion
|
|
13
|
-
export { KbdProps$1 as KbdProps
|
|
29
|
+
export { KbdProps$1 as KbdProps };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{cn as e}from"../../theme/merge.js";import"../../theme/index.js";import{labelVariants as t}from"./variants.js";import{computed as n,createBlock as r,defineComponent as i,normalizeClass as a,openBlock as o,renderSlot as s,unref as c,withCtx as l}from"vue";import{Label as u}from"@soybeanjs/headless";const d=i({name:`SLabel`,__name:`label`,props:{class:{},size:{},for:{}},setup(i){let d=i,f=n(()=>e(t({size:d.size}),d.class));return(e,t)=>(o(),r(c(u),{for:d.for,class:a(f.value)},{default:l(()=>[s(e.$slots,`default`)]),_:3},8,[`for`,`class`]))}});export{d as default};
|
|
1
|
+
import{cn as e}from"../../theme/merge.js";import"../../theme/index.js";import{labelVariants as t}from"./variants.js";import{computed as n,createBlock as r,defineComponent as i,normalizeClass as a,openBlock as o,renderSlot as s,unref as c,withCtx as l}from"vue";import{Label as u}from"@soybeanjs/headless/label";const d=i({name:`SLabel`,__name:`label`,props:{class:{},size:{},for:{}},setup(i){let d=i,f=n(()=>e(t({size:d.size}),d.class));return(e,t)=>(o(),r(c(u),{for:d.for,class:a(f.value)},{default:l(()=>[s(e.$slots,`default`)]),_:3},8,[`for`,`class`]))}});export{d as default};
|
|
@@ -1,9 +1,19 @@
|
|
|
1
1
|
import { ThemeSize } from "../../theme/types.js";
|
|
2
|
-
import {
|
|
2
|
+
import { LabelProps } from "@soybeanjs/headless/label";
|
|
3
|
+
import { ClassValue } from "@soybeanjs/headless/types";
|
|
3
4
|
|
|
4
5
|
//#region src/components/label/types.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* Props for the label component.
|
|
8
|
+
*/
|
|
5
9
|
interface LabelProps$1 extends LabelProps {
|
|
10
|
+
/**
|
|
11
|
+
* Additional class names applied to the root element.
|
|
12
|
+
*/
|
|
6
13
|
class?: ClassValue;
|
|
14
|
+
/**
|
|
15
|
+
* Visual size of the component.
|
|
16
|
+
*/
|
|
7
17
|
size?: ThemeSize;
|
|
8
18
|
}
|
|
9
19
|
//#endregion
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { LayoutClassicEmits, LayoutClassicProps, LayoutClassicScrollBehavior, LayoutClassicSlots, LayoutCollapsible, LayoutEmits, LayoutProps, LayoutSide, LayoutSlots, LayoutVariant } from "./types.js";
|
|
2
2
|
import { _default } from "./layout.vue.js";
|
|
3
3
|
import { _default as _default$1 } from "./layout-classic.vue.js";
|
|
4
|
-
import { LayoutTrigger as SLayoutTrigger } from "@soybeanjs/headless";
|
|
4
|
+
import { LayoutTrigger as SLayoutTrigger } from "@soybeanjs/headless/layout";
|
|
5
|
+
export * from "@soybeanjs/headless/layout";
|
|
5
6
|
export { SLayoutTrigger };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./layout.js";import"./layout-classic.js";import{LayoutTrigger as e}from"@soybeanjs/headless";export{e as SLayoutTrigger};
|
|
1
|
+
import"./layout.js";import"./layout-classic.js";import{LayoutTrigger as e}from"@soybeanjs/headless/layout";export{e as SLayoutTrigger};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{mergeBaseVariants as e,mergeSlotVariants as t}from"../../theme/shared.js";import{themeSizeMap as n,themeSizeRatio as r}from"../../theme/config.js";import"../../theme/index.js";import{buttonVariants as i}from"../button/variants.js";import{drawerVariants as a}from"../drawer/variants.js";import{layoutClassicVariants as o}from"./variants.js";import{computed as s,createBlock as c,createSlots as l,defineComponent as u,guardReactiveProps as d,mergeProps as f,normalizeProps as p,openBlock as m,renderList as h,renderSlot as g,unref as _,useSlots as v,withCtx as y}from"vue";import{useOmitProps as b}from"@soybeanjs/headless/composables";import{
|
|
1
|
+
import{mergeBaseVariants as e,mergeSlotVariants as t}from"../../theme/shared.js";import{themeSizeMap as n,themeSizeRatio as r}from"../../theme/config.js";import"../../theme/index.js";import{buttonVariants as i}from"../button/variants.js";import{drawerVariants as a}from"../drawer/variants.js";import{layoutClassicVariants as o}from"./variants.js";import{computed as s,createBlock as c,createSlots as l,defineComponent as u,guardReactiveProps as d,mergeProps as f,normalizeProps as p,openBlock as m,renderList as h,renderSlot as g,unref as _,useSlots as v,withCtx as y}from"vue";import{useOmitProps as b}from"@soybeanjs/headless/composables";import{keysOf as x}from"@soybeanjs/utils";import{LayoutClassicCompact as S,provideLayoutClassicUi as C}from"@soybeanjs/headless/layout";const w=u({name:`SLayoutClassic`,__name:`layout-classic`,props:{class:{},size:{default:`md`},ui:{},orientation:{},scrollBehavior:{},scrollId:{},baseZIndex:{},fixedTop:{type:Boolean,default:!0},fixedFooter:{type:Boolean},stretchFooter:{type:Boolean,default:!0},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!0},side:{},sidebarVisible:{type:Boolean,default:!0},sidebarWidth:{},collapsedSidebarWidth:{},isMobile:{type:Boolean},mobileSidebarWidth:{},headerVisible:{type:Boolean,default:!0},headerHeight:{},tabVisible:{type:Boolean,default:!0},tabHeight:{},footerVisible:{type:Boolean,default:!0},footerHeight:{},fullContent:{type:Boolean},pxToRem:{},sidebarProps:{},railProps:{},mainProps:{},headerProps:{},tabProps:{},contentProps:{},footerProps:{},mobileProps:{}},emits:[`update:open`],setup(u,{emit:w}){let T=u,E=w,D=v(),O=b(T,[`class`,`size`,`ui`,`pxToRem`]),k=s(()=>x(D).filter(e=>e!==`sidebar`)),A=e=>T.pxToRem?T.pxToRem(e):e*r[T.size]/n.md;return C(s(()=>{let n=o({size:T.size,side:T.side,fullContent:T.fullContent}),r=a({size:T.size,side:T.side}),s=i({size:T.size,color:`accent`,variant:`ghost`,shape:`square`,fitContent:!0});return t(e(n,{mobileDrawer:r.popup(),trigger:s}),T.ui,{root:T.class})})),(e,t)=>(m(),c(_(S),f(_(O),{"px-to-rem":A,"onUpdate:open":t[0]||=e=>E(`update:open`,e)}),l({sidebar:y(t=>[g(e.$slots,`sidebar`,p(d(t)))]),_:2},[h(k.value,t=>({name:t,fn:y(()=>[g(e.$slots,t)])}))]),1040))}});export{w as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{mergeBaseVariants as e,mergeSlotVariants as t}from"../../theme/shared.js";import{themeSizeMap as n,themeSizeRatio as r}from"../../theme/config.js";import"../../theme/index.js";import{buttonVariants as i}from"../button/variants.js";import{drawerVariants as a}from"../drawer/variants.js";import{layoutVariants as o}from"./variants.js";import{computed as s,createBlock as c,createSlots as l,defineComponent as u,guardReactiveProps as d,mergeProps as f,normalizeProps as p,openBlock as m,renderList as h,renderSlot as g,unref as _,useSlots as v,withCtx as y}from"vue";import{useOmitProps as b}from"@soybeanjs/headless/composables";import{
|
|
1
|
+
import{mergeBaseVariants as e,mergeSlotVariants as t}from"../../theme/shared.js";import{themeSizeMap as n,themeSizeRatio as r}from"../../theme/config.js";import"../../theme/index.js";import{buttonVariants as i}from"../button/variants.js";import{drawerVariants as a}from"../drawer/variants.js";import{layoutVariants as o}from"./variants.js";import{computed as s,createBlock as c,createSlots as l,defineComponent as u,guardReactiveProps as d,mergeProps as f,normalizeProps as p,openBlock as m,renderList as h,renderSlot as g,unref as _,useSlots as v,withCtx as y}from"vue";import{useOmitProps as b}from"@soybeanjs/headless/composables";import{keysOf as x}from"@soybeanjs/utils";import{LayoutCompact as S,provideLayoutUi as C}from"@soybeanjs/headless/layout";const w=u({name:`SLayout`,__name:`layout`,props:{class:{},size:{default:`md`},ui:{},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!0},side:{},variant:{},collapsible:{},sidebarVisible:{type:Boolean,default:!0},sidebarWidth:{},collapsedSidebarWidth:{},isMobile:{type:Boolean},mobileSidebarWidth:{},headerVisible:{type:Boolean,default:!0},headerHeight:{},tabVisible:{type:Boolean,default:!0},tabHeight:{},footerVisible:{type:Boolean,default:!0},footerHeight:{},fullContent:{type:Boolean},pxToRem:{},sidebarProps:{},railProps:{},mainProps:{},headerProps:{},tabProps:{},contentProps:{},footerProps:{},mobileProps:{}},emits:[`update:open`],setup(u,{emit:w}){let T=u,E=w,D=v(),O=b(T,[`class`,`size`,`ui`,`pxToRem`]),k=s(()=>x(D).filter(e=>e!==`sidebar`)),A=e=>T.pxToRem?T.pxToRem(e):e*r[T.size]/n.md;return C(s(()=>{let n=o({size:T.size,variant:T.variant,side:T.side,collapsible:T.collapsible,fullContent:T.fullContent}),r=a({size:T.size,side:T.side}),s=i({size:T.size,color:`accent`,variant:`ghost`,shape:`square`,fitContent:!0});return t(e(n,{mobileDrawer:r.popup(),trigger:s}),T.ui,{root:T.class})})),(e,t)=>(m(),c(_(S),f(_(O),{"px-to-rem":A,"onUpdate:open":t[0]||=e=>E(`update:open`,e)}),l({sidebar:y(t=>[g(e.$slots,`sidebar`,p(d(t)))]),_:2},[h(k.value,t=>({name:t,fn:y(()=>[g(e.$slots,t)])}))]),1040))}});export{w as default};
|