@soybeanjs/headless 0.14.0 → 0.15.0-beta.2
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/README.md +72 -1
- package/README.zh-CN.md +73 -2
- package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/defineProperty.js +1 -0
- package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/toPrimitive.js +1 -0
- package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/toPropertyKey.js +1 -0
- package/dist/_virtual/_@oxc-project_runtime@0.126.0/helpers/typeof.js +1 -0
- package/dist/components/accordion/accordion-compact.js +1 -0
- package/dist/components/accordion/accordion-compact.vue.d.ts +21 -0
- package/dist/components/accordion/accordion-content.js +1 -1
- package/dist/components/accordion/accordion-content.vue.d.ts +2 -2
- package/dist/components/accordion/accordion-header.js +1 -1
- package/dist/components/accordion/accordion-item.js +1 -1
- package/dist/components/accordion/accordion-root.js +1 -1
- package/dist/components/accordion/accordion-trigger.js +1 -1
- package/dist/components/accordion/accordion-trigger.vue.d.ts +2 -2
- package/dist/components/accordion/context.js +1 -1
- package/dist/components/accordion/index.d.ts +8 -8
- package/dist/components/accordion/index.js +1 -1
- package/dist/components/accordion/types.d.ts +38 -2
- package/dist/components/affix/affix-content.js +1 -0
- package/dist/components/affix/affix-content.vue.d.ts +20 -0
- package/dist/components/affix/affix-placeholder.js +1 -0
- package/dist/components/affix/affix-placeholder.vue.d.ts +8 -0
- package/dist/components/affix/affix-root.js +1 -0
- package/dist/components/affix/affix-root.vue.d.ts +28 -0
- package/dist/components/affix/context.d.ts +8 -0
- package/dist/components/affix/context.js +1 -0
- package/dist/components/affix/index.d.ts +6 -0
- package/dist/components/affix/index.js +1 -0
- package/dist/components/affix/shared.js +1 -0
- package/dist/components/affix/types.d.ts +39 -0
- package/dist/components/alert-dialog/alert-dialog-content.vue.d.ts +2 -2
- package/dist/components/anchor/anchor-link.js +1 -0
- package/dist/components/{toast/toast-close.vue.d.ts → anchor/anchor-link.vue.d.ts} +3 -3
- package/dist/components/anchor/anchor-root.js +1 -0
- package/dist/components/anchor/anchor-root.vue.d.ts +38 -0
- package/dist/components/anchor/context.d.ts +8 -0
- package/dist/components/anchor/context.js +1 -0
- package/dist/components/anchor/index.d.ts +5 -0
- package/dist/components/anchor/index.js +1 -0
- package/dist/components/anchor/shared.js +1 -0
- package/dist/components/anchor/types.d.ts +32 -0
- package/dist/components/autocomplete/autocomplete-anchor.js +1 -0
- package/dist/components/autocomplete/autocomplete-anchor.vue.d.ts +21 -0
- package/dist/components/autocomplete/autocomplete-content.js +1 -0
- package/dist/components/autocomplete/autocomplete-content.vue.d.ts +24 -0
- package/dist/components/autocomplete/autocomplete-group-label.js +1 -0
- package/dist/components/autocomplete/autocomplete-group-label.vue.d.ts +18 -0
- package/dist/components/autocomplete/autocomplete-group.js +1 -0
- package/dist/components/autocomplete/autocomplete-group.vue.d.ts +18 -0
- package/dist/components/autocomplete/autocomplete-input.js +1 -0
- package/dist/components/autocomplete/autocomplete-input.vue.d.ts +28 -0
- package/dist/components/autocomplete/autocomplete-item-indicator.js +1 -0
- package/dist/components/autocomplete/autocomplete-item-indicator.vue.d.ts +18 -0
- package/dist/components/autocomplete/autocomplete-item.js +1 -0
- package/dist/components/autocomplete/autocomplete-item.vue.d.ts +26 -0
- package/dist/components/autocomplete/autocomplete-root.js +1 -0
- package/dist/components/autocomplete/autocomplete-root.vue.d.ts +35 -0
- package/dist/components/autocomplete/autocomplete-separator.js +1 -0
- package/dist/components/autocomplete/autocomplete-separator.vue.d.ts +18 -0
- package/dist/components/autocomplete/autocomplete-trigger.js +1 -0
- package/dist/components/autocomplete/autocomplete-trigger.vue.d.ts +21 -0
- package/dist/components/autocomplete/autocomplete-viewport.js +1 -0
- package/dist/components/autocomplete/autocomplete-viewport.vue.d.ts +18 -0
- package/dist/components/autocomplete/context.d.ts +8 -0
- package/dist/components/autocomplete/context.js +1 -0
- package/dist/components/autocomplete/index.d.ts +16 -0
- package/dist/components/autocomplete/index.js +1 -0
- package/dist/components/autocomplete/types.d.ts +57 -0
- package/dist/components/carousel/carousel-content.js +1 -0
- package/dist/components/carousel/carousel-content.vue.d.ts +18 -0
- package/dist/components/carousel/carousel-item.js +1 -0
- package/dist/components/carousel/carousel-item.vue.d.ts +18 -0
- package/dist/components/carousel/carousel-next.js +1 -0
- package/dist/components/carousel/carousel-next.vue.d.ts +28 -0
- package/dist/components/carousel/carousel-previous.js +1 -0
- package/dist/components/carousel/carousel-previous.vue.d.ts +28 -0
- package/dist/components/carousel/carousel-root.js +1 -0
- package/dist/components/carousel/carousel-root.vue.d.ts +15 -0
- package/dist/components/carousel/context.d.ts +8 -0
- package/dist/components/carousel/context.js +1 -0
- package/dist/components/carousel/index.d.ts +8 -0
- package/dist/components/carousel/index.js +1 -0
- package/dist/components/carousel/types.d.ts +26 -0
- package/dist/components/checkbox/checkbox-group-root.js +1 -1
- package/dist/components/checkbox/checkbox-root.vue.d.ts +1 -1
- package/dist/components/collapsible/collapsible-root.vue.d.ts +1 -1
- package/dist/components/color-area/color-area-area.js +1 -0
- package/dist/components/{toast/toast-viewport.vue.d.ts → color-area/color-area-area.vue.d.ts} +3 -5
- package/dist/components/color-area/color-area-root.js +1 -0
- package/dist/components/color-area/color-area-root.vue.d.ts +39 -0
- package/dist/components/color-area/color-area-thumb.js +1 -0
- package/dist/components/color-area/color-area-thumb.vue.d.ts +21 -0
- package/dist/components/color-area/context.d.ts +8 -0
- package/dist/components/color-area/context.js +1 -0
- package/dist/components/color-area/index.d.ts +6 -0
- package/dist/components/color-area/index.js +1 -0
- package/dist/components/color-area/shared.js +1 -0
- package/dist/components/color-area/types.d.ts +31 -0
- package/dist/components/color-field/color-field-input.js +1 -0
- package/dist/components/color-field/color-field-input.vue.d.ts +8 -0
- package/dist/components/color-field/color-field-root.js +1 -0
- package/dist/components/color-field/color-field-root.vue.d.ts +36 -0
- package/dist/components/color-field/context.d.ts +8 -0
- package/dist/components/color-field/context.js +1 -0
- package/dist/components/color-field/index.d.ts +5 -0
- package/dist/components/color-field/index.js +1 -0
- package/dist/components/color-field/types.d.ts +28 -0
- package/dist/components/color-picker/color-picker-root.js +1 -0
- package/dist/components/color-picker/color-picker-root.vue.d.ts +40 -0
- package/dist/components/color-picker/index.d.ts +3 -0
- package/dist/components/color-picker/index.js +1 -0
- package/dist/components/color-picker/types.d.ts +24 -0
- package/dist/components/color-slider/color-slider-root.js +1 -0
- package/dist/components/color-slider/color-slider-root.vue.d.ts +39 -0
- package/dist/components/color-slider/color-slider-thumb.js +1 -0
- package/dist/components/color-slider/color-slider-thumb.vue.d.ts +21 -0
- package/dist/components/color-slider/color-slider-track.js +1 -0
- package/dist/components/color-slider/color-slider-track.vue.d.ts +18 -0
- package/dist/components/color-slider/context.d.ts +8 -0
- package/dist/components/color-slider/context.js +1 -0
- package/dist/components/color-slider/index.d.ts +6 -0
- package/dist/components/color-slider/index.js +1 -0
- package/dist/components/color-slider/types.d.ts +31 -0
- package/dist/components/color-swatch/color-swatch.js +1 -0
- package/dist/components/color-swatch/color-swatch.vue.d.ts +26 -0
- package/dist/components/color-swatch/index.d.ts +3 -0
- package/dist/components/color-swatch/index.js +1 -0
- package/dist/components/color-swatch/types.d.ts +11 -0
- package/dist/components/color-swatch-picker/color-swatch-picker-item-indicator.js +1 -0
- package/dist/components/color-swatch-picker/color-swatch-picker-item-indicator.vue.d.ts +18 -0
- package/dist/components/color-swatch-picker/color-swatch-picker-item-swatch.js +1 -0
- package/dist/components/color-swatch-picker/color-swatch-picker-item-swatch.vue.d.ts +18 -0
- package/dist/components/color-swatch-picker/color-swatch-picker-item.js +1 -0
- package/dist/components/color-swatch-picker/color-swatch-picker-item.vue.d.ts +23 -0
- package/dist/components/color-swatch-picker/color-swatch-picker-root.js +1 -0
- package/dist/components/color-swatch-picker/color-swatch-picker-root.vue.d.ts +30 -0
- package/dist/components/color-swatch-picker/context.d.ts +8 -0
- package/dist/components/color-swatch-picker/context.js +1 -0
- package/dist/components/color-swatch-picker/index.d.ts +7 -0
- package/dist/components/color-swatch-picker/index.js +1 -0
- package/dist/components/color-swatch-picker/types.d.ts +18 -0
- package/dist/components/combobox/combobox-content.js +1 -0
- package/dist/components/combobox/combobox-content.vue.d.ts +36 -0
- package/dist/components/combobox/combobox-empty.js +1 -0
- package/dist/components/combobox/combobox-empty.vue.d.ts +18 -0
- package/dist/components/combobox/combobox-group-label.js +1 -0
- package/dist/components/combobox/combobox-group-label.vue.d.ts +18 -0
- package/dist/components/combobox/combobox-group.js +1 -0
- package/dist/components/combobox/combobox-group.vue.d.ts +18 -0
- package/dist/components/combobox/combobox-input.js +1 -0
- package/dist/components/combobox/combobox-input.vue.d.ts +28 -0
- package/dist/components/combobox/combobox-item-indicator.js +1 -0
- package/dist/components/combobox/combobox-item-indicator.vue.d.ts +21 -0
- package/dist/components/combobox/combobox-item.js +1 -0
- package/dist/components/combobox/combobox-item.vue.d.ts +23 -0
- package/dist/components/combobox/combobox-root.js +1 -0
- package/dist/components/combobox/combobox-root.vue.d.ts +32 -0
- package/dist/components/combobox/combobox-separator.js +1 -0
- package/dist/components/combobox/combobox-separator.vue.d.ts +18 -0
- package/dist/components/combobox/combobox-trigger.js +1 -0
- package/dist/components/combobox/combobox-trigger.vue.d.ts +24 -0
- package/dist/components/combobox/combobox-viewport.js +9 -0
- package/dist/components/combobox/combobox-viewport.vue.d.ts +18 -0
- package/dist/components/combobox/context.d.ts +8 -0
- package/dist/components/combobox/context.js +1 -0
- package/dist/components/combobox/index.d.ts +16 -0
- package/dist/components/combobox/index.js +1 -0
- package/dist/components/combobox/types.d.ts +49 -0
- package/dist/components/config-provider/config-provider.js +1 -1
- package/dist/components/config-provider/types.d.ts +8 -0
- package/dist/components/context-menu/context-menu-checkbox-compact.js +1 -0
- package/dist/components/context-menu/context-menu-checkbox-compact.vue.d.ts +33 -0
- package/dist/components/context-menu/context-menu-compact.js +1 -0
- package/dist/components/context-menu/context-menu-compact.vue.d.ts +32 -0
- package/dist/components/context-menu/context-menu-content.vue.d.ts +4 -4
- package/dist/components/context-menu/context-menu-radio-compact.js +1 -0
- package/dist/components/context-menu/context-menu-radio-compact.vue.d.ts +33 -0
- package/dist/components/context-menu/context-menu-trigger.js +1 -1
- package/dist/components/context-menu/context-menu-wrapper-compact.js +1 -0
- package/dist/components/context-menu/context-menu-wrapper-compact.vue.d.ts +41 -0
- package/dist/components/context-menu/index.d.ts +23 -19
- package/dist/components/context-menu/index.js +1 -1
- package/dist/components/context-menu/types.d.ts +30 -2
- package/dist/components/dialog/dialog-content.vue.d.ts +2 -2
- package/dist/components/dropdown-menu/dropdown-menu-checkbox-compact.js +1 -0
- package/dist/components/dropdown-menu/dropdown-menu-checkbox-compact.vue.d.ts +33 -0
- package/dist/components/dropdown-menu/dropdown-menu-compact.js +1 -0
- package/dist/components/dropdown-menu/dropdown-menu-compact.vue.d.ts +32 -0
- package/dist/components/dropdown-menu/dropdown-menu-content.vue.d.ts +7 -7
- package/dist/components/dropdown-menu/dropdown-menu-radio-compact.js +1 -0
- package/dist/components/dropdown-menu/dropdown-menu-radio-compact.vue.d.ts +33 -0
- package/dist/components/dropdown-menu/dropdown-menu-trigger.vue.d.ts +2 -2
- package/dist/components/dropdown-menu/dropdown-menu-wrapper-compact.js +1 -0
- package/dist/components/dropdown-menu/dropdown-menu-wrapper-compact.vue.d.ts +42 -0
- package/dist/components/dropdown-menu/index.d.ts +24 -20
- package/dist/components/dropdown-menu/index.js +1 -1
- package/dist/components/dropdown-menu/types.d.ts +33 -2
- package/dist/components/editable/context.d.ts +8 -0
- package/dist/components/editable/context.js +1 -0
- package/dist/components/editable/editable-area.js +1 -0
- package/dist/components/editable/editable-area.vue.d.ts +21 -0
- package/dist/components/editable/editable-cancel-trigger.js +1 -0
- package/dist/components/editable/editable-cancel-trigger.vue.d.ts +21 -0
- package/dist/components/editable/editable-edit-trigger.js +1 -0
- package/dist/components/editable/editable-edit-trigger.vue.d.ts +21 -0
- package/dist/components/editable/editable-input.js +1 -0
- package/dist/components/editable/editable-input.vue.d.ts +18 -0
- package/dist/components/editable/editable-preview.js +1 -0
- package/dist/components/editable/editable-preview.vue.d.ts +21 -0
- package/dist/components/editable/editable-root.js +1 -0
- package/dist/components/editable/editable-root.vue.d.ts +52 -0
- package/dist/components/editable/editable-submit-trigger.js +1 -0
- package/dist/components/editable/editable-submit-trigger.vue.d.ts +21 -0
- package/dist/components/editable/index.d.ts +10 -0
- package/dist/components/editable/index.js +1 -0
- package/dist/components/editable/types.d.ts +59 -0
- package/dist/components/empty/context.d.ts +8 -0
- package/dist/components/empty/context.js +1 -0
- package/dist/components/empty/empty-content.js +1 -0
- package/dist/components/empty/empty-content.vue.d.ts +18 -0
- package/dist/components/empty/empty-description.js +1 -0
- package/dist/components/{toast/toast-description.vue.d.ts → empty/empty-description.vue.d.ts} +3 -3
- package/dist/components/empty/empty-header.js +1 -0
- package/dist/components/empty/empty-header.vue.d.ts +18 -0
- package/dist/components/empty/empty-media.js +1 -0
- package/dist/components/{toast/toast-title.vue.d.ts → empty/empty-media.vue.d.ts} +3 -3
- package/dist/components/empty/empty-root.js +1 -0
- package/dist/components/empty/empty-root.vue.d.ts +18 -0
- package/dist/components/empty/empty-title.js +1 -0
- package/dist/components/empty/empty-title.vue.d.ts +18 -0
- package/dist/components/empty/index.d.ts +9 -0
- package/dist/components/empty/index.js +1 -0
- package/dist/components/empty/types.d.ts +14 -0
- package/dist/components/form/core/types.d.ts +3 -2
- package/dist/components/hover-card/context.js +1 -0
- package/dist/components/hover-card/hover-card-popup.js +1 -0
- package/dist/components/hover-card/hover-card-popup.vue.d.ts +18 -0
- package/dist/components/hover-card/hover-card-positioner-impl.js +1 -0
- package/dist/components/hover-card/hover-card-positioner.js +1 -0
- package/dist/components/hover-card/hover-card-positioner.vue.d.ts +29 -0
- package/dist/components/hover-card/hover-card-root.js +1 -0
- package/dist/components/hover-card/hover-card-root.vue.d.ts +29 -0
- package/dist/components/hover-card/hover-card-trigger.js +1 -0
- package/dist/components/hover-card/hover-card-trigger.vue.d.ts +21 -0
- package/dist/components/hover-card/index.d.ts +11 -0
- package/dist/components/hover-card/index.js +1 -0
- package/dist/components/hover-card/shared.js +1 -0
- package/dist/components/hover-card/types.d.ts +27 -0
- package/dist/components/icon/icon-render.js +1 -0
- package/dist/components/icon/icon-render.vue.d.ts +8 -0
- package/dist/components/icon/index.d.ts +3 -0
- package/dist/components/icon/index.js +1 -0
- package/dist/components/icon/types.d.ts +9 -0
- package/dist/components/input/input-control.js +1 -1
- package/dist/components/input-number/input-number-root.vue.d.ts +2 -2
- package/dist/components/kbd/kbd.js +1 -1
- package/dist/components/kbd/kbd.vue.d.ts +3 -1
- package/dist/components/layout/layout-root.vue.d.ts +1 -1
- package/dist/components/link/link.js +1 -1
- package/dist/components/link/link.vue.d.ts +1 -1
- package/dist/components/listbox/listbox-filter.js +1 -1
- package/dist/components/listbox/types.d.ts +1 -1
- package/dist/components/menu/context.js +1 -1
- package/dist/components/menu/hooks.js +1 -0
- package/dist/components/menu/index.d.ts +20 -16
- package/dist/components/menu/index.js +1 -1
- package/dist/components/menu/menu-checkbox-options-compact.js +1 -0
- package/dist/components/menu/menu-checkbox-options-compact.vue.d.ts +23 -0
- package/dist/components/menu/menu-content-impl.js +1 -1
- package/dist/components/menu/menu-content.vue.d.ts +4 -4
- package/dist/components/menu/menu-item-slot-compact.js +1 -0
- package/dist/components/menu/menu-option-compact.js +1 -0
- package/dist/components/menu/menu-option-compact.vue.d.ts +31 -0
- package/dist/components/menu/menu-options-compact.js +1 -0
- package/dist/components/menu/menu-options-compact.vue.d.ts +31 -0
- package/dist/components/menu/menu-radio-options-compact.js +1 -0
- package/dist/components/menu/menu-radio-options-compact.vue.d.ts +23 -0
- package/dist/components/menu/menu-root.js +1 -1
- package/dist/components/menu/menu-sub-content.js +1 -1
- package/dist/components/menu/menu-sub-content.vue.d.ts +4 -4
- package/dist/components/menu/menu-sub-trigger.js +1 -1
- package/dist/components/menu/shared.js +1 -1
- package/dist/components/menu/types.d.ts +119 -4
- package/dist/components/menubar/context.d.ts +8 -0
- package/dist/components/menubar/context.js +1 -0
- package/dist/components/menubar/index.d.ts +22 -0
- package/dist/components/menubar/index.js +1 -0
- package/dist/components/menubar/menubar-compact.js +1 -0
- package/dist/components/menubar/menubar-compact.vue.d.ts +33 -0
- package/dist/components/menubar/menubar-content.js +1 -0
- package/dist/components/menubar/menubar-content.vue.d.ts +38 -0
- package/dist/components/menubar/menubar-menu.js +1 -0
- package/dist/components/menubar/menubar-menu.vue.d.ts +22 -0
- package/dist/components/menubar/menubar-root.js +1 -0
- package/dist/components/menubar/menubar-root.vue.d.ts +29 -0
- package/dist/components/menubar/menubar-sub-content.js +1 -0
- package/dist/components/menubar/menubar-sub-content.vue.d.ts +35 -0
- package/dist/components/menubar/menubar-sub-trigger.js +1 -0
- package/dist/components/menubar/menubar-sub-trigger.vue.d.ts +18 -0
- package/dist/components/menubar/menubar-trigger.js +1 -0
- package/dist/components/menubar/menubar-trigger.vue.d.ts +21 -0
- package/dist/components/menubar/shared.js +1 -0
- package/dist/components/menubar/types.d.ts +54 -0
- package/dist/components/page-tabs/page-tabs-item.vue.d.ts +2 -2
- package/dist/components/popover/index.d.ts +2 -2
- package/dist/components/popover/popover-positioner.vue.d.ts +2 -2
- package/dist/components/popper/popper-positioner.vue.d.ts +3 -3
- package/dist/components/progress/context.d.ts +8 -0
- package/dist/components/progress/context.js +1 -0
- package/dist/components/progress/index.d.ts +6 -0
- package/dist/components/progress/index.js +1 -0
- package/dist/components/progress/progress-circle.js +1 -0
- package/dist/components/progress/progress-circle.vue.d.ts +25 -0
- package/dist/components/progress/progress-indicator.js +1 -0
- package/dist/components/progress/progress-indicator.vue.d.ts +21 -0
- package/dist/components/progress/progress-root.js +1 -0
- package/dist/components/progress/progress-root.vue.d.ts +33 -0
- package/dist/components/progress/shared.js +1 -0
- package/dist/components/progress/types.d.ts +34 -0
- package/dist/components/radio-group/radio-group-root.js +1 -1
- package/dist/components/roving-focus/roving-focus-group.vue.d.ts +1 -1
- package/dist/components/scroll-area/context.d.ts +8 -0
- package/dist/components/scroll-area/context.js +1 -0
- package/dist/components/scroll-area/index.d.ts +8 -0
- package/dist/components/scroll-area/index.js +1 -0
- package/dist/components/scroll-area/scroll-area-corner.js +1 -0
- package/dist/components/scroll-area/scroll-area-corner.vue.d.ts +21 -0
- package/dist/components/scroll-area/scroll-area-root.js +1 -0
- package/dist/components/scroll-area/scroll-area-root.vue.d.ts +23 -0
- package/dist/components/scroll-area/scroll-area-scrollbar.js +1 -0
- package/dist/components/scroll-area/scroll-area-scrollbar.vue.d.ts +22 -0
- package/dist/components/scroll-area/scroll-area-thumb.js +1 -0
- package/dist/components/scroll-area/scroll-area-thumb.vue.d.ts +21 -0
- package/dist/components/scroll-area/scroll-area-viewport.js +1 -0
- package/dist/components/scroll-area/scroll-area-viewport.vue.d.ts +21 -0
- package/dist/components/scroll-area/shared.js +1 -0
- package/dist/components/scroll-area/types.d.ts +31 -0
- package/dist/components/select/select-content.vue.d.ts +2 -2
- package/dist/components/select/select-viewport.js +1 -1
- package/dist/components/skeleton/index.d.ts +3 -0
- package/dist/components/skeleton/index.js +1 -0
- package/dist/components/skeleton/skeleton.js +1 -0
- package/dist/components/skeleton/skeleton.vue.d.ts +21 -0
- package/dist/components/skeleton/types.d.ts +7 -0
- package/dist/components/slider/context.d.ts +8 -0
- package/dist/components/slider/context.js +1 -0
- package/dist/components/slider/index.d.ts +7 -0
- package/dist/components/slider/index.js +1 -0
- package/dist/components/slider/shared.js +1 -0
- package/dist/components/slider/slider-range.js +1 -0
- package/dist/components/slider/slider-range.vue.d.ts +21 -0
- package/dist/components/slider/slider-root.js +1 -0
- package/dist/components/slider/slider-root.vue.d.ts +41 -0
- package/dist/components/slider/slider-thumb.js +1 -0
- package/dist/components/slider/slider-thumb.vue.d.ts +21 -0
- package/dist/components/slider/slider-track.js +1 -0
- package/dist/components/{toast/toast-action.vue.d.ts → slider/slider-track.vue.d.ts} +3 -3
- package/dist/components/slider/types.d.ts +69 -0
- package/dist/components/splitter/context.d.ts +8 -0
- package/dist/components/splitter/context.js +1 -0
- package/dist/components/splitter/index.d.ts +6 -0
- package/dist/components/splitter/index.js +1 -0
- package/dist/components/splitter/shared.js +1 -0
- package/dist/components/splitter/splitter-group.js +1 -0
- package/dist/components/splitter/splitter-group.vue.d.ts +32 -0
- package/dist/components/splitter/splitter-panel.js +1 -0
- package/dist/components/splitter/splitter-panel.vue.d.ts +51 -0
- package/dist/components/splitter/splitter-resize-handle.js +1 -0
- package/dist/components/splitter/splitter-resize-handle.vue.d.ts +30 -0
- package/dist/components/splitter/types.d.ts +127 -0
- package/dist/components/stepper/context.d.ts +8 -0
- package/dist/components/stepper/context.js +1 -0
- package/dist/components/stepper/index.d.ts +10 -0
- package/dist/components/stepper/index.js +1 -0
- package/dist/components/stepper/stepper-description.js +1 -0
- package/dist/components/stepper/stepper-description.vue.d.ts +21 -0
- package/dist/components/stepper/stepper-indicator.js +1 -0
- package/dist/components/stepper/stepper-indicator.vue.d.ts +23 -0
- package/dist/components/stepper/stepper-item.js +1 -0
- package/dist/components/stepper/stepper-item.vue.d.ts +25 -0
- package/dist/components/stepper/stepper-root.js +1 -0
- package/dist/components/stepper/stepper-root.vue.d.ts +56 -0
- package/dist/components/stepper/stepper-separator.js +1 -0
- package/dist/components/stepper/stepper-separator.vue.d.ts +20 -0
- package/dist/components/stepper/stepper-title.js +1 -0
- package/dist/components/stepper/stepper-title.vue.d.ts +21 -0
- package/dist/components/stepper/stepper-trigger.js +1 -0
- package/dist/components/stepper/stepper-trigger.vue.d.ts +21 -0
- package/dist/components/stepper/types.d.ts +55 -0
- package/dist/components/table/context.js +1 -1
- package/dist/components/table/hooks.js +1 -0
- package/dist/components/table/index.d.ts +10 -8
- package/dist/components/table/index.js +1 -1
- package/dist/components/table/shared.d.ts +39 -0
- package/dist/components/table/shared.js +1 -0
- package/dist/components/table/table-compact-cell.js +1 -0
- package/dist/components/table/table-compact-head.js +1 -0
- package/dist/components/table/table-compact-row.js +1 -0
- package/dist/components/table/table-compact.js +1 -0
- package/dist/components/table/table-compact.vue.d.ts +25 -0
- package/dist/components/table/table-content.js +1 -1
- package/dist/components/table/table-root.js +1 -1
- package/dist/components/table/table-virtual-spacer-row.js +1 -0
- package/dist/components/table/types.d.ts +315 -5
- package/dist/components/tags-input/context.d.ts +8 -0
- package/dist/components/tags-input/context.js +1 -0
- package/dist/components/tags-input/index.d.ts +9 -0
- package/dist/components/tags-input/index.js +1 -0
- package/dist/components/tags-input/tags-input-clear.js +1 -0
- package/dist/components/tags-input/tags-input-clear.vue.d.ts +21 -0
- package/dist/components/tags-input/tags-input-input.js +1 -0
- package/dist/components/tags-input/tags-input-input.vue.d.ts +21 -0
- package/dist/components/tags-input/tags-input-item-delete.js +1 -0
- package/dist/components/tags-input/tags-input-item-delete.vue.d.ts +21 -0
- package/dist/components/tags-input/tags-input-item-text.js +1 -0
- package/dist/components/tags-input/tags-input-item-text.vue.d.ts +21 -0
- package/dist/components/tags-input/tags-input-item.js +1 -0
- package/dist/components/tags-input/tags-input-item.vue.d.ts +21 -0
- package/dist/components/tags-input/tags-input-root.js +1 -0
- package/dist/components/tags-input/tags-input-root.vue.d.ts +28 -0
- package/dist/components/tags-input/types.d.ts +63 -0
- package/dist/components/toast/context.d.ts +3 -4
- package/dist/components/toast/context.js +1 -1
- package/dist/components/toast/hooks.js +1 -0
- package/dist/components/toast/index.d.ts +5 -12
- package/dist/components/toast/index.js +1 -1
- package/dist/components/toast/shared.js +1 -1
- package/dist/components/toast/state.d.ts +27 -0
- package/dist/components/toast/state.js +1 -0
- package/dist/components/toast/toast-render.js +1 -0
- package/dist/components/toast/toast.js +1 -0
- package/dist/components/toast/toaster.js +1 -0
- package/dist/components/toast/toaster.vue.d.ts +26 -0
- package/dist/components/toast/types.d.ts +98 -80
- package/dist/components/toggle/index.d.ts +3 -0
- package/dist/components/toggle/index.js +1 -0
- package/dist/components/toggle/toggle.js +1 -0
- package/dist/components/toggle/toggle.vue.d.ts +33 -0
- package/dist/components/toggle/types.d.ts +27 -0
- package/dist/components/toggle-group/context.d.ts +8 -0
- package/dist/components/toggle-group/context.js +1 -0
- package/dist/components/toggle-group/index.d.ts +5 -0
- package/dist/components/toggle-group/index.js +1 -0
- package/dist/components/toggle-group/toggle-group-item.js +1 -0
- package/dist/components/toggle-group/toggle-group-item.vue.d.ts +25 -0
- package/dist/components/toggle-group/toggle-group-root.js +1 -0
- package/dist/components/toggle-group/toggle-group-root.vue.d.ts +26 -0
- package/dist/components/toggle-group/types.d.ts +30 -0
- package/dist/components/toolbar/context.d.ts +8 -0
- package/dist/components/toolbar/context.js +1 -0
- package/dist/components/toolbar/index.d.ts +9 -0
- package/dist/components/toolbar/index.js +1 -0
- package/dist/components/toolbar/toolbar-button.js +1 -0
- package/dist/components/toolbar/toolbar-button.vue.d.ts +22 -0
- package/dist/components/toolbar/toolbar-link.js +1 -0
- package/dist/components/toolbar/toolbar-link.vue.d.ts +21 -0
- package/dist/components/toolbar/toolbar-root.js +1 -0
- package/dist/components/toolbar/toolbar-root.vue.d.ts +21 -0
- package/dist/components/toolbar/toolbar-separator.js +1 -0
- package/dist/components/toolbar/toolbar-separator.vue.d.ts +18 -0
- package/dist/components/toolbar/toolbar-toggle-group.js +1 -0
- package/dist/components/toolbar/toolbar-toggle-group.vue.d.ts +24 -0
- package/dist/components/toolbar/toolbar-toggle-item.js +1 -0
- package/dist/components/toolbar/toolbar-toggle-item.vue.d.ts +22 -0
- package/dist/components/toolbar/types.d.ts +36 -0
- package/dist/components/tooltip/tooltip-popup.js +1 -1
- package/dist/components/tree-menu/context.js +1 -1
- package/dist/components/tree-menu/tree-menu-collapsible.js +1 -1
- package/dist/components/tree-menu/types.d.ts +1 -1
- package/dist/components/visually-hidden/visually-hidden-input-bubble.js +1 -1
- package/dist/components/visually-hidden/visually-hidden-input.vue.d.ts +1 -1
- package/dist/composables/use-dismissable-layer.js +1 -1
- package/dist/composables/use-focus-scope.js +1 -1
- package/dist/constants/components.d.ts +25 -0
- package/dist/constants/components.js +1 -1
- package/dist/index.d.ts +399 -235
- package/dist/index.js +1 -1
- package/dist/namespaced/index.d.ts +732 -460
- package/dist/namespaced/index.js +1 -1
- package/dist/node_modules/.pnpm/@soybeanjs_utils@0.1.0/node_modules/@soybeanjs/utils/dist/index.js +1 -0
- package/dist/shared/color.d.ts +42 -0
- package/dist/shared/color.js +1 -0
- package/dist/shared/index.d.ts +3 -2
- package/dist/shared/index.js +1 -1
- package/dist/shared/value.d.ts +1 -1
- package/dist/shared/vue.d.ts +4 -2
- package/dist/shared/vue.js +1 -1
- package/dist/types/common.d.ts +2 -1
- package/dist/types/event.d.ts +1 -10
- package/dist/types/index.d.ts +2 -2
- package/package.json +11 -9
- package/dist/components/toast/toast-action.js +0 -1
- package/dist/components/toast/toast-announce.js +0 -1
- package/dist/components/toast/toast-close.js +0 -1
- package/dist/components/toast/toast-description.js +0 -1
- package/dist/components/toast/toast-focus-proxy.js +0 -1
- package/dist/components/toast/toast-provider.js +0 -1
- package/dist/components/toast/toast-provider.vue.d.ts +0 -24
- package/dist/components/toast/toast-root.js +0 -1
- package/dist/components/toast/toast-root.vue.d.ts +0 -46
- package/dist/components/toast/toast-title.js +0 -1
- package/dist/components/toast/toast-viewport.js +0 -1
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AsTag } from "../primitive/types.js";
|
|
2
|
+
import { ScrollAreaThumbProps } from "./types.js";
|
|
3
|
+
import * as _$vue from "vue";
|
|
4
|
+
|
|
5
|
+
//#region src/components/scroll-area/scroll-area-thumb.vue.d.ts
|
|
6
|
+
declare var __VLS_11: {};
|
|
7
|
+
type __VLS_Slots = {} & {
|
|
8
|
+
default?: (props: typeof __VLS_11) => any;
|
|
9
|
+
};
|
|
10
|
+
declare const __VLS_base: _$vue.DefineComponent<ScrollAreaThumbProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {}, string, _$vue.PublicProps, Readonly<ScrollAreaThumbProps> & Readonly<{}>, {
|
|
11
|
+
as: AsTag | _$vue.Component;
|
|
12
|
+
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
|
|
13
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
15
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
16
|
+
new (): {
|
|
17
|
+
$slots: S;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
//#endregion
|
|
21
|
+
export { _default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useForwardElement as e}from"../../composables/use-forward-element.js";import{useOmitProps as t}from"../../composables/use-props.js";import"../../composables/index.js";import{Primitive as n}from"../primitive/primitive.js";import"../primitive/index.js";import{useNonce as r}from"../config-provider/context.js";import{useScrollAreaRootContext as i,useScrollAreaUi as a}from"./context.js";import{Fragment as o,computed as s,createElementBlock as c,createElementVNode as l,createTextVNode as u,createVNode as d,defineComponent as f,mergeProps as p,normalizeStyle as m,openBlock as h,renderSlot as g,unref as _,useAttrs as v,withCtx as y}from"vue";const b=f({name:`ScrollAreaViewport`,inheritAttrs:!1,__name:`scroll-area-viewport`,props:{nonce:{},asChild:{type:Boolean},as:{default:`div`}},setup(f){let b=f,x=v(),S=r(()=>b.nonce),{scrollbarXEnabled:C,scrollbarYEnabled:w,onViewportChange:T,onContentChange:E}=i(`ScrollAreaViewport`),D=a(`viewport`),O=t(b,[`nonce`,`as`,`asChild`],x),k=s(()=>({...O.value,tabindex:O.value.tabindex??0})),[,A]=e(T),[,j]=e(E),M=s(()=>({overflowX:C.value?`scroll`:`hidden`,overflowY:w.value?`scroll`:`hidden`})),N=s(()=>({minWidth:C.value?`fit-content`:void 0}));return(e,t)=>(h(),c(o,null,[l(`div`,p({ref:_(A),"data-soybean-scroll-area-viewport":``},k.value,{class:_(D),style:M.value}),[d(_(n),{ref:_(j),as:f.as,"as-child":f.asChild,style:m(N.value)},{default:y(()=>[g(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`style`])],16),d(_(n),{as:`style`,nonce:_(S)},{default:y(()=>[...t[0]||(t[0]=[u(` [data-soybean-scroll-area-viewport] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-soybean-scroll-area-viewport]::-webkit-scrollbar { display: none; } `,-1)])]),_:1},8,[`nonce`])],64))}});export{b as default};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AsTag } from "../primitive/types.js";
|
|
2
|
+
import { ScrollAreaViewportProps } from "./types.js";
|
|
3
|
+
import * as _$vue from "vue";
|
|
4
|
+
|
|
5
|
+
//#region src/components/scroll-area/scroll-area-viewport.vue.d.ts
|
|
6
|
+
declare var __VLS_7: {};
|
|
7
|
+
type __VLS_Slots = {} & {
|
|
8
|
+
default?: (props: typeof __VLS_7) => any;
|
|
9
|
+
};
|
|
10
|
+
declare const __VLS_base: _$vue.DefineComponent<ScrollAreaViewportProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {}, string, _$vue.PublicProps, Readonly<ScrollAreaViewportProps> & Readonly<{}>, {
|
|
11
|
+
as: AsTag | _$vue.Component;
|
|
12
|
+
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
|
|
13
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
15
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
16
|
+
new (): {
|
|
17
|
+
$slots: S;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
//#endregion
|
|
21
|
+
export { _default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=new WeakMap;function t(e,t,n){return Math.min(Math.max(e,t),n)}function n(e,t){return e===`horizontal`?t.horizontal:t.vertical}function r(e,n,r){return e<=0||n<=0||r<=0?0:t(e/n*r,18,r)}function i(e,n,r,i,a){if(n<=0||r<=0)return 0;let o=t(e/n,0,1);return i===`horizontal`&&a===`rtl`?r-o*r:o*r}function a(t){let n=e.get(t);if(n)return n;let r=t.createElement(`div`),i=t.createElement(`div`);r.dir=`rtl`,r.style.width=`4px`,r.style.height=`1px`,r.style.position=`absolute`,r.style.top=`-1000px`,r.style.overflow=`scroll`,i.style.width=`8px`,i.style.height=`1px`,r.appendChild(i),t.body.appendChild(r);let a=r.scrollLeft>0?`default`:(r.scrollLeft=1,r.scrollLeft===0?`negative`:`reverse`);return t.body.removeChild(r),e.set(t,a),a}function o(e){let t=Math.max(e.scrollWidth-e.clientWidth,0);switch(a(e.ownerDocument)){case`negative`:return-e.scrollLeft;case`reverse`:return t-e.scrollLeft;default:return e.scrollLeft}}function s(e,t){let n=Math.max(e.scrollWidth-e.clientWidth,0);switch(a(e.ownerDocument)){case`negative`:e.scrollLeft=-t;break;case`reverse`:e.scrollLeft=n-t;break;default:e.scrollLeft=t;break}}function c(e,t,n){return t===`horizontal`&&n===`rtl`?o(e):t===`horizontal`?e.scrollLeft:e.scrollTop}function l(e,t,n,r){if(t===`horizontal`){if(r===`rtl`){s(e,n);return}e.scrollLeft=n;return}e.scrollTop=n}function u(e,t,r){let i=n(r,{horizontal:e.clientWidth,vertical:e.clientHeight}),a=n(r,{horizontal:Math.max(t.scrollWidth,t.offsetWidth),vertical:Math.max(t.scrollHeight,t.offsetHeight)});return{viewportSize:i,contentSize:a,maxScrollPosition:Math.max(a-i,0)}}export{t as clamp,c as getScrollPosition,u as getScrollSize,i as getThumbOffset,r as getThumbSize,l as setViewportScroll};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Direction, UiClass } from "../../types/common.js";
|
|
2
|
+
import { PrimitiveProps } from "../primitive/types.js";
|
|
3
|
+
import { CSSProperties, ComputedRef, HTMLAttributes, ShallowRef } from "vue";
|
|
4
|
+
|
|
5
|
+
//#region src/components/scroll-area/types.d.ts
|
|
6
|
+
type ScrollAreaType = 'auto' | 'always' | 'hover' | 'scroll' | 'glimpse';
|
|
7
|
+
type ScrollAreaOrientation = 'horizontal' | 'vertical';
|
|
8
|
+
type ScrollAreaState = 'hidden' | 'visible';
|
|
9
|
+
interface ScrollAreaRootProps extends PrimitiveProps, /** @vue-ignore */HTMLAttributes {
|
|
10
|
+
/** Controls scrollbar visibility behavior. */
|
|
11
|
+
type?: ScrollAreaType;
|
|
12
|
+
/** The reading direction of the scroll area. */
|
|
13
|
+
dir?: Direction;
|
|
14
|
+
/** Delay before transient scrollbars are hidden. */
|
|
15
|
+
scrollHideDelay?: number;
|
|
16
|
+
}
|
|
17
|
+
interface ScrollAreaViewportProps extends PrimitiveProps, /** @vue-ignore */HTMLAttributes {
|
|
18
|
+
/** Adds a nonce to the injected style tag. */
|
|
19
|
+
nonce?: string;
|
|
20
|
+
}
|
|
21
|
+
interface ScrollAreaScrollbarProps extends PrimitiveProps, /** @vue-ignore */HTMLAttributes {
|
|
22
|
+
/** The scrollbar orientation. */
|
|
23
|
+
orientation?: ScrollAreaOrientation;
|
|
24
|
+
}
|
|
25
|
+
interface ScrollAreaThumbProps extends PrimitiveProps, /** @vue-ignore */HTMLAttributes {}
|
|
26
|
+
interface ScrollAreaCornerProps extends PrimitiveProps, /** @vue-ignore */HTMLAttributes {}
|
|
27
|
+
type ScrollAreaRootEmits = {};
|
|
28
|
+
type ScrollAreaUiSlot = 'root' | 'viewport' | 'scrollbar' | 'thumb' | 'corner';
|
|
29
|
+
type ScrollAreaUi = UiClass<ScrollAreaUiSlot>;
|
|
30
|
+
//#endregion
|
|
31
|
+
export { ScrollAreaCornerProps, ScrollAreaOrientation, ScrollAreaRootEmits, ScrollAreaRootProps, ScrollAreaScrollbarProps, ScrollAreaState, ScrollAreaThumbProps, ScrollAreaType, ScrollAreaUi, ScrollAreaUiSlot, ScrollAreaViewportProps };
|
|
@@ -10,12 +10,12 @@ type __VLS_Slots = {} & {
|
|
|
10
10
|
default?: (props: typeof __VLS_22) => any;
|
|
11
11
|
};
|
|
12
12
|
declare const __VLS_base: _$vue.DefineComponent<SelectContentProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
|
|
13
|
-
escapeKeyDown: (event: KeyboardEvent) => any;
|
|
14
13
|
closeAutoFocus: (event: Event) => any;
|
|
14
|
+
escapeKeyDown: (event: KeyboardEvent) => any;
|
|
15
15
|
pointerDownOutside: (event: PointerDownOutsideEvent) => any;
|
|
16
16
|
}, string, _$vue.PublicProps, Readonly<SelectContentProps> & Readonly<{
|
|
17
|
-
onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
|
|
18
17
|
onCloseAutoFocus?: ((event: Event) => any) | undefined;
|
|
18
|
+
onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
|
|
19
19
|
onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
|
|
20
20
|
}>, {
|
|
21
21
|
position: SelectPosition;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{useForwardElement as e}from"../../composables/use-forward-element.js";import"../../composables/index.js";import{
|
|
1
|
+
import{useForwardElement as e}from"../../composables/use-forward-element.js";import"../../composables/index.js";import{Primitive as t}from"../primitive/primitive.js";import"../primitive/index.js";import{useNonce as n}from"../config-provider/context.js";import{useSelectContentContext as r,useSelectItemAlignedPositionContext as i,useSelectUi as a}from"./context.js";import"./shared.js";import{Fragment as o,createElementBlock as s,createElementVNode as c,createTextVNode as l,createVNode as u,defineComponent as d,mergeProps as f,openBlock as p,renderSlot as m,toDisplayString as h,unref as g,useAttrs as _,withCtx as v}from"vue";const y=d({name:`SelectViewport`,inheritAttrs:!1,__name:`select-viewport`,props:{nonce:{}},setup(d){let y=d,b=_(),{onViewportElementChange:x}=r(`SelectViewport`),[S,C]=e(x),w=i(),T=n(()=>y.nonce),E=a(`viewport`),D=0;function O(e){let t=e.currentTarget,{positionerElement:n,shouldExpandOnScroll:r}=w??{};if(!n?.value||!r?.value){D=t.scrollTop;return}let i=Math.abs(D-t.scrollTop);if(i<=0)return;let a=window.innerHeight-20,o=Number.parseFloat(n.value.style.minHeight),s=Number.parseFloat(n.value.style.height),c=Math.max(o,s);if(c<a){let e=c+i,r=Math.min(a,e),o=e-r;n.value.style.height=`${r}px`,n.value.style.bottom===`0px`&&(t.scrollTop=o>0?o:0,n.value.style.justifyContent=`flex-end`)}D=t.scrollTop}return(e,n)=>(p(),s(o,null,[c(`div`,f(g(b),{ref:g(C),class:g(E),"data-soybean-select-viewport":``,role:`presentation`,style:`position:relative;flex:1;overflow:hidden auto;`,onScroll:O}),[m(e.$slots,`default`)],16),u(g(t),{as:`style`,nonce:g(T)},{default:v(()=>[l(h(`
|
|
2
2
|
[data-soybean-select-viewport] {
|
|
3
3
|
scrollbar-width: none;
|
|
4
4
|
-ms-overflow-style: none;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e from"./skeleton.js";export{e as Skeleton};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Primitive as e}from"../primitive/primitive.js";import"../primitive/index.js";import{computed as t,createBlock as n,defineComponent as r,openBlock as i,renderSlot as a,unref as o,useAttrs as s,withCtx as c}from"vue";const l=r({name:`Skeleton`,__name:`skeleton`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(r){let l=s(),u=t(()=>l[`aria-hidden`]??!0);return(t,s)=>(i(),n(o(e),{as:r.as,"as-child":r.asChild,"aria-hidden":u.value},{default:c(()=>[a(t.$slots,`default`)]),_:3},8,[`as`,`as-child`,`aria-hidden`]))}});export{l as default};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AsTag } from "../primitive/types.js";
|
|
2
|
+
import { SkeletonProps } from "./types.js";
|
|
3
|
+
import * as _$vue from "vue";
|
|
4
|
+
|
|
5
|
+
//#region src/components/skeleton/skeleton.vue.d.ts
|
|
6
|
+
declare var __VLS_8: {};
|
|
7
|
+
type __VLS_Slots = {} & {
|
|
8
|
+
default?: (props: typeof __VLS_8) => any;
|
|
9
|
+
};
|
|
10
|
+
declare const __VLS_base: _$vue.DefineComponent<SkeletonProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {}, string, _$vue.PublicProps, Readonly<SkeletonProps> & Readonly<{}>, {
|
|
11
|
+
as: AsTag | _$vue.Component;
|
|
12
|
+
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
|
|
13
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
15
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
16
|
+
new (): {
|
|
17
|
+
$slots: S;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
//#endregion
|
|
21
|
+
export { _default };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { PrimitiveProps } from "../primitive/types.js";
|
|
2
|
+
import { HTMLAttributes } from "vue";
|
|
3
|
+
|
|
4
|
+
//#region src/components/skeleton/types.d.ts
|
|
5
|
+
interface SkeletonProps extends PrimitiveProps, /** @vue-ignore */HTMLAttributes {}
|
|
6
|
+
//#endregion
|
|
7
|
+
export { SkeletonProps };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ClassValue, UiClass } from "../../types/common.js";
|
|
2
|
+
import { SliderUiSlot } from "./types.js";
|
|
3
|
+
import * as _$vue from "vue";
|
|
4
|
+
|
|
5
|
+
//#region src/components/slider/context.d.ts
|
|
6
|
+
declare const provideSliderUi: (ui: _$vue.ComputedRef<Partial<UiClass<SliderUiSlot>>>) => _$vue.ComputedRef<Partial<UiClass<SliderUiSlot>>>, useSliderUi: <S extends SliderUiSlot | undefined = undefined>(slot?: S | undefined) => S extends SliderUiSlot ? _$vue.ComputedRef<ClassValue> : _$vue.ComputedRef<Partial<UiClass<SliderUiSlot>>>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { provideSliderUi };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useContext as e}from"../../composables/use-context.js";import{useUiContext as t}from"../../composables/use-ui-context.js";import"../../composables/index.js";const[n,r]=e(`SliderRoot`),[i,a]=t(`SliderUi`);export{n as provideSliderRootContext,i as provideSliderUi,r as useSliderRootContext,a as useSliderUi};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SliderRangeProps, SliderRootContext, SliderRootEmits, SliderRootProps, SliderSlideDirection, SliderThumbAlignment, SliderThumbProps, SliderTrackProps, SliderUi, SliderUiSlot } from "./types.js";
|
|
2
|
+
import { _default as _default$1 } from "./slider-root.vue.js";
|
|
3
|
+
import { _default as _default$3 } from "./slider-track.vue.js";
|
|
4
|
+
import { _default } from "./slider-range.vue.js";
|
|
5
|
+
import { _default as _default$2 } from "./slider-thumb.vue.js";
|
|
6
|
+
import { provideSliderUi } from "./context.js";
|
|
7
|
+
export { _default as SliderRange, type SliderRangeProps, _default$1 as SliderRoot, type SliderRootContext, type SliderRootEmits, type SliderRootProps, type SliderSlideDirection, _default$2 as SliderThumb, type SliderThumbAlignment, type SliderThumbProps, _default$3 as SliderTrack, type SliderTrackProps, type SliderUi, type SliderUiSlot, provideSliderUi };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{provideSliderUi as e}from"./context.js";import t from"./slider-root.js";import n from"./slider-track.js";import r from"./slider-range.js";import i from"./slider-thumb.js";export{r as SliderRange,t as SliderRoot,i as SliderThumb,n as SliderTrack,e as provideSliderUi};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{clamp as e,snapValueToStep as t}from"../../shared/value.js";import"../../shared/index.js";const n=[0],r=[`PageUp`,`PageDown`],i=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`],a={"from-left":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-right":[`Home`,`PageDown`,`ArrowDown`,`ArrowRight`],"from-bottom":[`Home`,`PageDown`,`ArrowDown`,`ArrowLeft`],"from-top":[`Home`,`PageUp`,`ArrowUp`,`ArrowLeft`]};function o(e){return typeof e==`number`&&!Number.isNaN(e)?e:0}function s(e,t){return typeof e==`number`&&!Number.isNaN(e)&&e>t?e:Math.max(100,t+1)}function c(e){return typeof e==`number`&&!Number.isNaN(e)&&e>0?e:1}function l(e){return typeof e==`number`&&!Number.isNaN(e)&&e>=0?Math.floor(e):0}function u(e,t){return Array.isArray(e)&&e.length>0?e:t?.length?t:n}function d(e,n){return[...u(e,n.defaultValue)].map(e=>t(e,n.min,n.max,n.step)).sort((e,t)=>e-t)}function f(e,t){return e===t?!0:!e||!t||e.length!==t.length?!1:e.every((e,n)=>e===t[n])}function p(e,t,n){let r=[...e];return r[n]=t,r.sort((e,t)=>e-t)}function m(e,t){if(e.length<=1)return 0;let n=e.map(e=>Math.abs(e-t)),r=Math.min(...n);return n.indexOf(r)}function h(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function g(e){return e.slice(0,-1).map((t,n)=>e[n+1]-t)}function _(e,t){if(t<=0)return!0;let n=g(e);return Math.min(...n)>=t}function v(t,n,r){let i=r-n;return i<=0?0:e((t-n)/i*100,0,100)}function y(e,t,n){let r=e/2;return(r-h([0,50],[0,r])(t)*n)*n}function b(e,t){if(t>2)return`Value ${e+1} of ${t}`;if(t===2)return[`Minimum`,`Maximum`][e]}function x(e,t,n){return e===`vertical`?n?{startEdge:`top`,endEdge:`bottom`,slideDirection:`from-top`}:{startEdge:`bottom`,endEdge:`top`,slideDirection:`from-bottom`}:t===`ltr`&&!n||t===`rtl`&&n?{startEdge:`left`,endEdge:`right`,slideDirection:`from-left`}:{startEdge:`right`,endEdge:`left`,slideDirection:`from-right`}}function S(t,n,r){let i=r.orientation===`horizontal`?n.width:n.height;if(i<=0)return r.min;let a=e((r.orientation===`horizontal`?r.startEdge===`left`?t.clientX-n.left:n.right-t.clientX:r.startEdge===`bottom`?n.bottom-t.clientY:t.clientY-n.top)/i,0,1);return r.min+a*(r.max-r.min)}export{i as ARROW_KEYS,a as BACK_KEYS,r as PAGE_KEYS,v as convertValueToPercentage,m as getClosestValueIndex,p as getNextSortedValues,x as getSliderSideState,S as getSliderValueFromPointer,y as getThumbInBoundsOffset,b as getThumbLabel,l as getValidMinStepsBetweenThumbs,s as getValidSliderMax,o as getValidSliderMin,c as getValidSliderStep,_ as hasMinStepsBetweenValues,f as isSliderValuesEqual,d as normalizeSliderValues};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Primitive as e}from"../primitive/primitive.js";import"../primitive/index.js";import{useSliderRootContext as t,useSliderUi as n}from"./context.js";import{computed as r,createBlock as i,defineComponent as a,normalizeClass as o,normalizeStyle as s,openBlock as c,renderSlot as l,unref as u,withCtx as d}from"vue";const f=a({name:`SliderRange`,__name:`slider-range`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(a){let f=n(`range`),{currentModelValue:p,disabled:m,orientation:h,startEdge:g,endEdge:_,getPercentage:v}=t(`SliderRange`),y=r(()=>p.value.map(e=>v(e))),b=r(()=>p.value.length>1?Math.min(...y.value):0),x=r(()=>100-Math.max(...y.value,0)),S=r(()=>({[g.value]:`${b.value}%`,[_.value]:`${x.value}%`}));return(t,n)=>(c(),i(u(e),{as:a.as,"as-child":a.asChild,class:o(u(f)),"data-disabled":u(m)?``:void 0,"data-orientation":u(h),style:s(S.value)},{default:d(()=>[l(t.$slots,`default`)]),_:3},8,[`as`,`as-child`,`class`,`data-disabled`,`data-orientation`,`style`]))}});export{f as default};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AsTag } from "../primitive/types.js";
|
|
2
|
+
import { SliderRangeProps } from "./types.js";
|
|
3
|
+
import * as _$vue from "vue";
|
|
4
|
+
|
|
5
|
+
//#region src/components/slider/slider-range.vue.d.ts
|
|
6
|
+
declare var __VLS_8: {};
|
|
7
|
+
type __VLS_Slots = {} & {
|
|
8
|
+
default?: (props: typeof __VLS_8) => any;
|
|
9
|
+
};
|
|
10
|
+
declare const __VLS_base: _$vue.DefineComponent<SliderRangeProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {}, string, _$vue.PublicProps, Readonly<SliderRangeProps> & Readonly<{}>, {
|
|
11
|
+
as: AsTag | _$vue.Component;
|
|
12
|
+
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
|
|
13
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
15
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
16
|
+
new (): {
|
|
17
|
+
$slots: S;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
//#endregion
|
|
21
|
+
export { _default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{snapValueToStep as e}from"../../shared/value.js";import{isFormControl as t}from"../../shared/vue.js";import"../../shared/index.js";import{useControllableState as n}from"../../composables/use-controllable-state.js";import{useForwardElement as r}from"../../composables/use-forward-element.js";import"../../composables/index.js";import{Primitive as i}from"../primitive/primitive.js";import"../primitive/index.js";import{useDirection as a}from"../config-provider/context.js";import o from"../visually-hidden/visually-hidden-input.js";import"../visually-hidden/index.js";import{provideSliderRootContext as ee,useSliderUi as te}from"./context.js";import{ARROW_KEYS as s,BACK_KEYS as ne,PAGE_KEYS as c,convertValueToPercentage as re,getClosestValueIndex as ie,getNextSortedValues as ae,getSliderSideState as oe,getSliderValueFromPointer as se,getThumbLabel as ce,getValidMinStepsBetweenThumbs as le,getValidSliderMax as ue,getValidSliderMin as de,getValidSliderStep as fe,hasMinStepsBetweenValues as pe,isSliderValuesEqual as l,normalizeSliderValues as me}from"./shared.js";import{computed as u,createBlock as d,createCommentVNode as he,defineComponent as f,nextTick as ge,normalizeClass as _e,onBeforeUnmount as ve,openBlock as p,renderSlot as ye,shallowRef as m,unref as h,watch as g,withCtx as be}from"vue";const _=f({name:`SliderRoot`,__name:`slider-root`,props:{modelValue:{default:void 0},defaultValue:{default:()=>[0]},disabled:{type:Boolean,default:!1},orientation:{default:`horizontal`},dir:{default:void 0},inverted:{type:Boolean,default:!1},min:{default:0},max:{default:100},step:{default:1},minStepsBetweenThumbs:{default:0},thumbAlignment:{default:`contain`},asChild:{type:Boolean},as:{default:`div`},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`valueCommit`],setup(f,{emit:_}){let v=f,y=_,[xe,Se]=r(),Ce=te(`root`),b=n(()=>v.modelValue,e=>{y(`update:modelValue`,e??[])},v.defaultValue),x=a(()=>v.dir),S=u(()=>v.disabled),we=u(()=>S.value?``:void 0),C=u(()=>v.orientation===`vertical`?`vertical`:`horizontal`),w=u(()=>v.inverted),T=u(()=>de(v.min)),E=u(()=>ue(v.max,T.value)),D=u(()=>fe(v.step)),O=u(()=>le(v.minStepsBetweenThumbs)),Te=u(()=>v.thumbAlignment===`overflow`?`overflow`:`contain`),k=u(()=>me(b.value,{defaultValue:v.defaultValue,min:T.value,max:E.value,step:D.value})),A=m(),j=u(()=>A.value??k.value),Ee=u(()=>t(xe.value)),De=u(()=>C.value===`horizontal`),M=u(()=>oe(C.value,x.value,w.value)),N=u(()=>M.value.startEdge),Oe=u(()=>M.value.endEdge),P=u(()=>M.value.slideDirection),F=m(0),I=m(),L=m([]),R=m(0),z=m(null),B=m(j.value);function ke(e){I.value!==e&&(I.value=e)}function Ae(e,t){if(L.value[e]===t)return;let n=[...L.value];n[e]=t,L.value=n}function je(e){return re(e,T.value,E.value)}function V(e){ge(()=>{L.value[e]?.focus()})}function H(e){return ie(j.value,e)}function U(e){return z.value===e}let W=null;function G(){W?.(),W=null}function K(e){G();let t=e=>{X(e)},n=e=>{Z(e.pointerId)};e.addEventListener(`pointermove`,t),e.addEventListener(`pointerup`,n),e.addEventListener(`pointercancel`,n),W=()=>{e.removeEventListener(`pointermove`,t),e.removeEventListener(`pointerup`,n),e.removeEventListener(`pointercancel`,n)}}function q(){let e=A.value??j.value;l(B.value,e)||y(`valueCommit`,[...e])}function J(t,n,r={}){let i=e(t,T.value,E.value,D.value),a=ae(j.value,i,n);if(!pe(a,O.value*D.value))return;let o=a.indexOf(i);if(F.value=o,l(a,j.value)){r.focus&&V(o),r.commit&&q();return}A.value=a,b.value=a,r.focus&&V(o),r.commit&&(y(`valueCommit`,[...a]),B.value=a,A.value=void 0)}function Y(e){return I.value?se(e,I.value.getBoundingClientRect(),{min:T.value,max:E.value,orientation:C.value,startEdge:N.value}):null}function Me(e){let t=Y(e);S.value||t===null||(z.value=e.pointerId,I.value?.ownerDocument&&K(I.value.ownerDocument),B.value=[...j.value],R.value=0,J(t,H(t),{focus:!0}))}function Ne(e,t){if(S.value)return;z.value=t.pointerId,I.value?.ownerDocument&&K(I.value.ownerDocument),B.value=[...j.value],F.value=e,V(e);let n=Y(t);R.value=n===null?0:j.value[e]-n}function X(e){let t=Y(e);S.value||t===null||!U(e.pointerId)||J(t+R.value,F.value)}function Z(e){if(S.value||typeof e==`number`&&!U(e))return;let t=A.value??j.value;z.value=null,G(),R.value=0,q(),B.value=[...t],A.value=void 0}function Q(e,t,n=1){let r=j.value[e];S.value||typeof r!=`number`||J(r+D.value*t*n,e,{commit:!0,focus:!0})}function $(e,t){J(t===`min`?T.value:E.value,e,{commit:!0,focus:!0})}function Pe(e){if(S.value||typeof F.value!=`number`)return;if(e.key===`Home`){e.preventDefault(),$(F.value,`min`);return}if(e.key===`End`){e.preventDefault(),$(F.value,`max`);return}if(!c.concat(s).includes(e.key))return;e.preventDefault();let t=ne[P.value].includes(e.key),n=c.includes(e.key)||e.shiftKey&&s.includes(e.key)?10:1;Q(F.value,t?-1:1,n)}return ee({modelValue:b,currentModelValue:j,disabled:S,orientation:C,dir:x,inverted:w,min:T,max:E,step:D,minStepsBetweenThumbs:O,thumbAlignment:Te,isHorizontal:De,startEdge:N,endEdge:Oe,slideDirection:P,activeThumbIndex:F,trackElement:I,thumbElements:L,setTrackElement:ke,setThumbElement:Ae,getPercentage:je,getClosestValueIndex:H,getThumbLabel:e=>ce(e,j.value.length),beginTrackDrag:Me,beginThumbDrag:Ne,moveDrag:X,endDrag:Z,stepValue:Q,setToLimit:$}),g(k,e=>{l(e,b.value)||(b.value=e),A.value&&l(e,A.value)&&(A.value=void 0)},{immediate:!0}),g(()=>j.value.length,e=>{L.value=L.value.slice(0,e)}),ve(()=>{G()}),(e,t)=>(p(),d(h(i),{ref:h(Se),as:f.as,"as-child":f.asChild,class:_e(h(Ce)),dir:h(x),"data-disabled":we.value,"data-orientation":C.value,onKeydown:Pe},{default:be(()=>[ye(e.$slots,`default`,{modelValue:j.value}),Ee.value&&f.name?(p(),d(h(o),{key:0,type:`number`,name:f.name,value:j.value,disabled:S.value,required:f.required},null,8,[`name`,`value`,`disabled`,`required`])):he(`v-if`,!0)]),_:3},8,[`as`,`as-child`,`class`,`dir`,`data-disabled`,`data-orientation`]))}});export{_ as default};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { DataOrientation, Direction } from "../../types/common.js";
|
|
2
|
+
import { AsTag } from "../primitive/types.js";
|
|
3
|
+
import { SliderRootProps, SliderThumbAlignment } from "./types.js";
|
|
4
|
+
import * as _$vue from "vue";
|
|
5
|
+
|
|
6
|
+
//#region src/components/slider/slider-root.vue.d.ts
|
|
7
|
+
declare var __VLS_10: {
|
|
8
|
+
modelValue: number[];
|
|
9
|
+
};
|
|
10
|
+
type __VLS_Slots = {} & {
|
|
11
|
+
default?: (props: typeof __VLS_10) => any;
|
|
12
|
+
};
|
|
13
|
+
declare const __VLS_base: _$vue.DefineComponent<SliderRootProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
|
|
14
|
+
"update:modelValue": (value: number[]) => any;
|
|
15
|
+
valueCommit: (value: number[]) => any;
|
|
16
|
+
}, string, _$vue.PublicProps, Readonly<SliderRootProps> & Readonly<{
|
|
17
|
+
"onUpdate:modelValue"?: ((value: number[]) => any) | undefined;
|
|
18
|
+
onValueCommit?: ((value: number[]) => any) | undefined;
|
|
19
|
+
}>, {
|
|
20
|
+
dir: Direction;
|
|
21
|
+
max: number;
|
|
22
|
+
min: number;
|
|
23
|
+
orientation: DataOrientation;
|
|
24
|
+
disabled: boolean;
|
|
25
|
+
modelValue: number[];
|
|
26
|
+
defaultValue: number[];
|
|
27
|
+
as: AsTag | _$vue.Component;
|
|
28
|
+
step: number;
|
|
29
|
+
inverted: boolean;
|
|
30
|
+
minStepsBetweenThumbs: number;
|
|
31
|
+
thumbAlignment: SliderThumbAlignment;
|
|
32
|
+
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
|
|
33
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
34
|
+
declare const _default: typeof __VLS_export;
|
|
35
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
36
|
+
new (): {
|
|
37
|
+
$slots: S;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
//#endregion
|
|
41
|
+
export { _default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useForwardElement as e}from"../../composables/use-forward-element.js";import"../../composables/index.js";import{Primitive as t}from"../primitive/primitive.js";import"../primitive/index.js";import{useSliderRootContext as n,useSliderUi as r}from"./context.js";import{getThumbInBoundsOffset as i}from"./shared.js";import{computed as a,createBlock as o,defineComponent as s,normalizeClass as c,normalizeStyle as l,openBlock as u,renderSlot as d,unref as f,useAttrs as p,withCtx as m}from"vue";import{useElementSize as h}from"@vueuse/core";const g=s({name:`SliderThumb`,__name:`slider-thumb`,props:{index:{},asChild:{type:Boolean},as:{default:`div`}},setup(s){let g=s,_=p(),v=r(`thumb`),{currentModelValue:y,disabled:b,orientation:x,min:S,max:C,startEdge:w,isHorizontal:T,thumbAlignment:E,activeThumbIndex:D,getPercentage:O,getThumbLabel:k,setThumbElement:A,beginThumbDrag:j}=n(`SliderThumb`),[M,N]=e(e=>{A(g.index,e)}),{width:P,height:F}=h(M),I=a(()=>y.value[g.index]),L=a(()=>O(I.value??S.value)),R=a(()=>k(g.index)),z=a(()=>{let e=_[`aria-label`];return typeof e==`string`?e:R.value});function B(e,t){return e?`${t===`right`&&E.value===`overflow`?`translateX(50%)`:`translateX(-50%)`} translateY(-50%)`:`translateX(-50%) ${t===`top`&&E.value===`overflow`?`translateY(-50%)`:`translateY(50%)`}`}let V=a(()=>{if(E.value===`overflow`)return 0;let e=T.value?P.value:F.value;if(!e)return 0;let t=T.value?w.value===`left`?1:-1:w.value===`bottom`?1:-1;return i(e,L.value,t)}),H=a(()=>{let e=B(T.value,w.value);return{position:`absolute`,...T.value?{top:`50%`}:{left:`50%`},[w.value]:`calc(${L.value}% + ${V.value}px)`,transform:e}});function U(e){b.value||(e.preventDefault(),e.stopPropagation(),e.currentTarget.focus(),j(g.index,e))}function W(){D.value=g.index}return(e,n)=>(u(),o(f(t),{ref:f(N),as:s.as,"as-child":s.asChild,class:c(f(v)),"data-disabled":f(b)?``:void 0,"data-orientation":f(x),"aria-disabled":f(b)||void 0,"aria-label":z.value,"aria-valuenow":I.value,"aria-valuemin":f(S),"aria-valuemax":f(C),"aria-orientation":f(x),tabindex:f(b)?void 0:0,role:`slider`,style:l(H.value),onFocus:W,onPointerdown:U},{default:m(()=>[d(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`class`,`data-disabled`,`data-orientation`,`aria-disabled`,`aria-label`,`aria-valuenow`,`aria-valuemin`,`aria-valuemax`,`aria-orientation`,`tabindex`,`style`]))}});export{g as default};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AsTag } from "../primitive/types.js";
|
|
2
|
+
import { SliderThumbProps } from "./types.js";
|
|
3
|
+
import * as _$vue from "vue";
|
|
4
|
+
|
|
5
|
+
//#region src/components/slider/slider-thumb.vue.d.ts
|
|
6
|
+
declare var __VLS_11: {};
|
|
7
|
+
type __VLS_Slots = {} & {
|
|
8
|
+
default?: (props: typeof __VLS_11) => any;
|
|
9
|
+
};
|
|
10
|
+
declare const __VLS_base: _$vue.DefineComponent<SliderThumbProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {}, string, _$vue.PublicProps, Readonly<SliderThumbProps> & Readonly<{}>, {
|
|
11
|
+
as: AsTag | _$vue.Component;
|
|
12
|
+
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
|
|
13
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
15
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
16
|
+
new (): {
|
|
17
|
+
$slots: S;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
//#endregion
|
|
21
|
+
export { _default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useForwardElement as e}from"../../composables/use-forward-element.js";import"../../composables/index.js";import{Primitive as t}from"../primitive/primitive.js";import"../primitive/index.js";import{useSliderRootContext as n,useSliderUi as r}from"./context.js";import{createBlock as i,defineComponent as a,normalizeClass as o,openBlock as s,renderSlot as c,unref as l,withCtx as u}from"vue";const d=a({name:`SliderTrack`,__name:`slider-track`,props:{asChild:{type:Boolean},as:{default:`div`}},setup(a){let d=r(`track`),{disabled:f,orientation:p,setTrackElement:m,beginTrackDrag:h}=n(`SliderTrack`),g=e(e=>{m(e)})[1];function _(e){f.value||(e.preventDefault(),h(e))}return(e,n)=>(s(),i(l(t),{ref:l(g),as:a.as,"as-child":a.asChild,class:o(l(d)),"data-disabled":l(f)?``:void 0,"data-orientation":l(p),onPointerdown:_},{default:u(()=>[c(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`class`,`data-disabled`,`data-orientation`]))}});export{d as default};
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { AsTag } from "../primitive/types.js";
|
|
2
|
-
import {
|
|
2
|
+
import { SliderTrackProps } from "./types.js";
|
|
3
3
|
import * as _$vue from "vue";
|
|
4
4
|
|
|
5
|
-
//#region src/components/
|
|
5
|
+
//#region src/components/slider/slider-track.vue.d.ts
|
|
6
6
|
declare var __VLS_10: {};
|
|
7
7
|
type __VLS_Slots = {} & {
|
|
8
8
|
default?: (props: typeof __VLS_10) => any;
|
|
9
9
|
};
|
|
10
|
-
declare const __VLS_base: _$vue.DefineComponent<
|
|
10
|
+
declare const __VLS_base: _$vue.DefineComponent<SliderTrackProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {}, string, _$vue.PublicProps, Readonly<SliderTrackProps> & Readonly<{}>, {
|
|
11
11
|
as: AsTag | _$vue.Component;
|
|
12
12
|
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
|
|
13
13
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { DataOrientation, Direction, Side, UiClass } from "../../types/common.js";
|
|
2
|
+
import { FormFieldCommonProps } from "../../types/component.js";
|
|
3
|
+
import { PropsToContext } from "../../types/vue.js";
|
|
4
|
+
import { PrimitiveProps } from "../primitive/types.js";
|
|
5
|
+
import { ComputedRef, HTMLAttributes, ShallowRef } from "vue";
|
|
6
|
+
|
|
7
|
+
//#region src/components/slider/types.d.ts
|
|
8
|
+
type SliderThumbAlignment = 'contain' | 'overflow';
|
|
9
|
+
interface SliderRootProps extends PrimitiveProps, FormFieldCommonProps, /** @vue-ignore */HTMLAttributes {
|
|
10
|
+
/** The controlled value of the slider. Can be bind as `v-model`. */
|
|
11
|
+
modelValue?: number[];
|
|
12
|
+
/** The initial value of the slider when uncontrolled. */
|
|
13
|
+
defaultValue?: number[];
|
|
14
|
+
/** Whether the slider is disabled. */
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
/** The orientation of the slider. */
|
|
17
|
+
orientation?: DataOrientation;
|
|
18
|
+
/** The reading direction of the slider. */
|
|
19
|
+
dir?: Direction;
|
|
20
|
+
/** Whether the slider value direction is inverted. */
|
|
21
|
+
inverted?: boolean;
|
|
22
|
+
/** The minimum value. */
|
|
23
|
+
min?: number;
|
|
24
|
+
/** The maximum value. */
|
|
25
|
+
max?: number;
|
|
26
|
+
/** The stepping interval. */
|
|
27
|
+
step?: number;
|
|
28
|
+
/** The minimum permitted steps between multiple thumbs. */
|
|
29
|
+
minStepsBetweenThumbs?: number;
|
|
30
|
+
/** Whether thumbs stay within the track bounds or may overflow it. */
|
|
31
|
+
thumbAlignment?: SliderThumbAlignment;
|
|
32
|
+
}
|
|
33
|
+
type SliderRootEmits = {
|
|
34
|
+
/** Event handler called when the slider value changes. */'update:modelValue': [value: number[]]; /** Event handler called when a slider interaction is committed. */
|
|
35
|
+
valueCommit: [value: number[]];
|
|
36
|
+
};
|
|
37
|
+
interface SliderTrackProps extends PrimitiveProps, /** @vue-ignore */HTMLAttributes {}
|
|
38
|
+
interface SliderRangeProps extends PrimitiveProps, /** @vue-ignore */HTMLAttributes {}
|
|
39
|
+
interface SliderThumbProps extends PrimitiveProps, /** @vue-ignore */HTMLAttributes {
|
|
40
|
+
/** The thumb index in the current slider value array. */
|
|
41
|
+
index: number;
|
|
42
|
+
}
|
|
43
|
+
type SliderSlideDirection = 'from-left' | 'from-right' | 'from-bottom' | 'from-top';
|
|
44
|
+
interface SliderRootContext extends PropsToContext<SliderRootProps, 'disabled' | 'orientation' | 'dir' | 'inverted' | 'min' | 'max' | 'step' | 'minStepsBetweenThumbs' | 'thumbAlignment'> {
|
|
45
|
+
modelValue: ShallowRef<number[] | undefined>;
|
|
46
|
+
currentModelValue: ComputedRef<number[]>;
|
|
47
|
+
isHorizontal: ComputedRef<boolean>;
|
|
48
|
+
startEdge: ComputedRef<Side>;
|
|
49
|
+
endEdge: ComputedRef<Side>;
|
|
50
|
+
slideDirection: ComputedRef<SliderSlideDirection>;
|
|
51
|
+
activeThumbIndex: ShallowRef<number>;
|
|
52
|
+
trackElement: ShallowRef<HTMLElement | undefined>;
|
|
53
|
+
thumbElements: ShallowRef<(HTMLElement | undefined)[]>;
|
|
54
|
+
setTrackElement: (el: HTMLElement) => void;
|
|
55
|
+
setThumbElement: (index: number, el: HTMLElement) => void;
|
|
56
|
+
getPercentage: (value: number) => number;
|
|
57
|
+
getClosestValueIndex: (value: number) => number;
|
|
58
|
+
getThumbLabel: (index: number) => string | undefined;
|
|
59
|
+
beginTrackDrag: (event: PointerEvent) => void;
|
|
60
|
+
beginThumbDrag: (index: number, event: PointerEvent) => void;
|
|
61
|
+
moveDrag: (event: PointerEvent) => void;
|
|
62
|
+
endDrag: (pointerId?: number) => void;
|
|
63
|
+
stepValue: (index: number, direction: number, multiplier?: number) => void;
|
|
64
|
+
setToLimit: (index: number, limit: 'min' | 'max') => void;
|
|
65
|
+
}
|
|
66
|
+
type SliderUiSlot = 'root' | 'track' | 'range' | 'thumb';
|
|
67
|
+
type SliderUi = UiClass<SliderUiSlot>;
|
|
68
|
+
//#endregion
|
|
69
|
+
export { SliderRangeProps, SliderRootContext, SliderRootEmits, SliderRootProps, SliderSlideDirection, SliderThumbAlignment, SliderThumbProps, SliderTrackProps, SliderUi, SliderUiSlot };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ClassValue, UiClass } from "../../types/common.js";
|
|
2
|
+
import { SplitterUiSlot } from "./types.js";
|
|
3
|
+
import * as _$vue from "vue";
|
|
4
|
+
|
|
5
|
+
//#region src/components/splitter/context.d.ts
|
|
6
|
+
declare const provideSplitterUi: (ui: _$vue.ComputedRef<Partial<UiClass<SplitterUiSlot>>>) => _$vue.ComputedRef<Partial<UiClass<SplitterUiSlot>>>, useSplitterUi: <S extends SplitterUiSlot | undefined = undefined>(slot?: S | undefined) => S extends SplitterUiSlot ? _$vue.ComputedRef<ClassValue> : _$vue.ComputedRef<Partial<UiClass<SplitterUiSlot>>>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { provideSplitterUi };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useContext as e}from"../../composables/use-context.js";import{useUiContext as t}from"../../composables/use-ui-context.js";import"../../composables/index.js";import{useDirection as n}from"../config-provider/context.js";const[r,i]=e(`SplitterGroup`,e=>{let t=n(()=>e.dir.value);return{...e,dir:t}}),[a,o]=t(`SplitterUi`);export{r as provideSplitterGroupContext,a as provideSplitterUi,i as useSplitterGroupContext,o as useSplitterUi};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { SplitterGroupContext, SplitterGroupEmits, SplitterGroupProps, SplitterPanelEmits, SplitterPanelProps, SplitterResizeHandleEmits, SplitterResizeHandleProps, SplitterUi, SplitterUiSlot } from "./types.js";
|
|
2
|
+
import { _default } from "./splitter-group.vue.js";
|
|
3
|
+
import { _default as _default$1 } from "./splitter-panel.vue.js";
|
|
4
|
+
import { _default as _default$2 } from "./splitter-resize-handle.vue.js";
|
|
5
|
+
import { provideSplitterUi } from "./context.js";
|
|
6
|
+
export { _default as SplitterGroup, type SplitterGroupContext, type SplitterGroupEmits, type SplitterGroupProps, _default$1 as SplitterPanel, type SplitterPanelEmits, type SplitterPanelProps, _default$2 as SplitterResizeHandle, type SplitterResizeHandleEmits, type SplitterResizeHandleProps, type SplitterUi, type SplitterUiSlot, provideSplitterUi };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{provideSplitterUi as e}from"./context.js";import t from"./splitter-group.js";import n from"./splitter-panel.js";import r from"./splitter-resize-handle.js";export{t as SplitterGroup,n as SplitterPanel,r as SplitterResizeHandle,e as provideSplitterUi};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{clamp as e}from"../../shared/value.js";import"../../shared/index.js";const t=.01;function n(e){return Number(e.toFixed(3))}function r(t){return e(t.minSize.value,0,100)}function i(t){return e(t.collapsedSize.value,0,100)}function a(t,n){return e(t.maxSize.value,n,100)}function o(e){return e.collapsible.value?Math.min(r(e),i(e)):r(e)}function s(o,s){if(!s.collapsible.value)return e(o,r(s),a(s,r(s)));let c=i(s),l=r(s),u=e(o,c,a(s,l));return u<=c+t?n(c):n(u<l?u<=c+(l-c)/2?c:l:u)}function c(e,i,o){if(Math.abs(o)<=t)return e;let s=[...e],c=o,l=0;for(;Math.abs(c)>t&&l<20;){l+=1;let e=s.map((e,n)=>{let o=i[n];if(!o)return null;let s=r(o),l=a(o,s),u=c>0?l-e:e-s;return u<=t?null:{index:n,room:u}}).filter(Boolean);if(e.length===0)break;for(let t=0;t<e.length;t+=1){let r=e[t];if(!r)continue;let i=e.length-t,a=c/i,o=c>0?Math.min(a,r.room):-Math.min(-a,r.room);s[r.index]=n(s[r.index]+o),c-=o}}if(Math.abs(c)>t){let e=s.findIndex((e,n)=>{let o=i[n];return o?c>0?a(o,r(o))-s[n]>t:s[n]-r(o)>t:!1});e>=0&&(s[e]=n(s[e]+c))}return s}function l(e,i){let o=[...e],s=n(100-o.reduce((e,t)=>e+t,0));if(Math.abs(s)<=t)return o.map(n);let c=o.findIndex((e,n)=>{let o=i[n];if(!o)return!1;let c=r(o),l=a(o,c),u=e+s;return u>=c-t&&u<=l+t});return c>=0&&(o[c]=n(o[c]+s)),o.map(n)}function u(e){return[...e].sort((e,t)=>{let n=e.order.value,r=t.order.value;return n==null&&r==null?e.registrationIndex-t.registrationIndex:n==null?-1:r==null?1:n===r?e.registrationIndex-t.registrationIndex:n-r})}function d(e,n){return e.length===n.length?e.every((e,r)=>Math.abs(e-(n[r]??0))<=t):!1}function f(e,r){if(e.length===0)return[];let i=e.map(e=>r?.get(e.id)??e.defaultSize.value),a=i.reduce((e,t)=>e+(t??0),0),o=i.filter(e=>e===void 0).length,s=o>0?Math.max(100-a,0)/o:0,c=i.map(e=>e??s),l=c.reduce((e,t)=>e+t,0);return l<=t?e.map(()=>n(100/e.length)):c.map(e=>n(e/l*100))}function p(t,i){if(i.length===0)return[];let o=t.map((t,o)=>{let s=i[o],c=r(s);return n(e(t,c,a(s,c)))}),s=o.reduce((e,t)=>e+t,0);return o=c(o,i,n(100-s)),l(o,i)}function m(t,i,c,l){let u=i[c],d=i[c+1];if(!u||!d)return t;let f=t[c]+t[c+1],p=o(u),m=o(d),h=Math.min(a(u,r(u)),f-m),g=Math.min(a(d,r(d)),f-p),_=s(t[c]+l,u);_=e(_,p,h);let v=s(f-_,d);v=e(v,m,g),_=e(f-v,p,h),_=s(_,u),v=n(f-_);let y=[...t];return y[c]=n(_),y[c+1]=n(v),y}function h(e,n){if(!(!n.collapsible.value||e===void 0))return e<=i(n)+t?`collapsed`:`expanded`}function g(e,t=100){let i=o(e),s=Math.min(a(e,r(e)),t);return{min:n(i),max:n(s)}}export{d as areLayoutsEqual,f as getDefaultLayout,g as getPanelBounds,h as getPanelState,p as normalizeLayout,m as resizeLayoutPair,u as sortPanels};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useForwardElement as e}from"../../composables/use-forward-element.js";import{useOmitProps as t}from"../../composables/use-props.js";import"../../composables/index.js";import{Primitive as n}from"../primitive/primitive.js";import"../primitive/index.js";import{provideSplitterGroupContext as r,useSplitterUi as i}from"./context.js";import{areLayoutsEqual as a,getDefaultLayout as o,getPanelBounds as s,getPanelState as c,normalizeLayout as l,resizeLayoutPair as u,sortPanels as d}from"./shared.js";import{computed as f,createBlock as p,defineComponent as m,mergeProps as h,openBlock as g,renderSlot as _,shallowRef as v,unref as y,useId as b,withCtx as x}from"vue";const S=m({name:`SplitterGroup`,__name:`splitter-group`,props:{direction:{default:`horizontal`},dir:{default:void 0},defaultLayout:{default:void 0},keyboardResizeBy:{default:10},asChild:{type:Boolean},as:{default:`div`}},emits:[`layout`],setup(m,{emit:S}){let C=m,w=S,[T,E]=e(),D=i(`root`),O=t(C,[`direction`,`dir`,`defaultLayout`,`keyboardResizeBy`]),k=v([]),A=v([]),j=v({}),M=v({}),N=v({}),P=0,F=f(()=>C.direction===`vertical`?`vertical`:`horizontal`),I=f(()=>C.dir),L=f(()=>Math.max(C.keyboardResizeBy,1)),R=f(()=>d(k.value)),z=`soybean-splitter-group-${b()}`;function B(){return new Map(R.value.map((e,t)=>[e.id,A.value[t]]))}function V(e){let t={...j.value},n={...M.value};R.value.forEach((r,i)=>{let a=e[i],o=j.value[r.id];r.onResize(a,o);let s=c(a,r)===`collapsed`,l=M.value[r.id];s!==l&&(s?r.onCollapse():l!==void 0&&r.onExpand()),s||(N.value={...N.value,[r.id]:a}),t[r.id]=a,n[r.id]=s}),j.value=t,M.value=n}function H(e){a(A.value,e)||(A.value=e,w(`layout`,e),V(e))}function U(){let e=A.value.length===R.value.length?B():void 0;H(l(C.defaultLayout?.length===R.value.length?C.defaultLayout:o(R.value,e),R.value))}function W(e){return R.value.findIndex(t=>t.id===e)}function G(){let e=T.value?.getBoundingClientRect();return e?F.value===`vertical`?e.height:e.width:0}function K(e,t){H(u(A.value,R.value,e,t))}function q(e){return R.value[e]}function J(e){let t=W(e),n=R.value[t];if(n)return s(n,t<R.value.length-1?(A.value[t]??0)+(A.value[t+1]??0):t>0?(A.value[t-1]??0)+(A.value[t]??0):100)}function Y(e,t){let n=W(e);if(!(n<0)){if(n<R.value.length-1){K(n,t-(A.value[n]??0));return}if(n>0){let e=A.value[n]??0,r=A.value[n-1]??0,i=e+r;K(n-1,i-t-r)}}}function X(e){let t=R.value.find(t=>t.id===e);if(!t?.collapsible.value)return;let n=Q(e);n!==void 0&&n>t.collapsedSize.value&&(N.value={...N.value,[e]:n}),Y(e,t.collapsedSize.value)}function Z(e){let t=R.value.find(t=>t.id===e);if(!t)return;let n=N.value[e]??t.defaultSize.value??t.minSize.value;Y(e,Math.max(n,t.minSize.value))}function Q(e){let t=W(e);if(!(t<0))return A.value[t]}function $(e){let t=R.value.find(t=>t.id===e),n=Q(e);return t?c(n,t)===`collapsed`:!1}function ee(e){return{flexBasis:`0px`,flexGrow:Q(e)??0,flexShrink:1,overflow:`hidden`}}function te(e){k.value=[...k.value,{...e,registrationIndex:P}],P+=1,U()}function ne(e){k.value=k.value.filter(t=>t.id!==e),U()}let{dir:re}=r({direction:F,dir:I,keyboardResizeBy:L,groupId:z,layout:A,rootElement:T,registerPanel:te,unregisterPanel:ne,refreshLayout:U,getPanelStyle:ee,getPanelSize:Q,isPanelCollapsed:$,collapsePanel:X,expandPanel:Z,resizePanel:Y,resizePanelPair:K,getPanelRecordByIndex:q,getPanelBounds:J,getGroupSize:G});return U(),(e,t)=>(g(),p(y(n),h(y(O),{ref:y(E),as:m.as,"as-child":m.asChild,class:y(D),dir:y(re),"data-orientation":F.value,"data-panel-group-direction":F.value,"data-splitter-group-id":z}),{default:x(()=>[_(e.$slots,`default`,{layout:A.value})]),_:3},16,[`as`,`as-child`,`class`,`dir`,`data-orientation`,`data-panel-group-direction`]))}});export{S as default};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { DataOrientation, Direction } from "../../types/common.js";
|
|
2
|
+
import { AsTag } from "../primitive/types.js";
|
|
3
|
+
import { SplitterGroupProps } from "./types.js";
|
|
4
|
+
import * as _$vue from "vue";
|
|
5
|
+
|
|
6
|
+
//#region src/components/splitter/splitter-group.vue.d.ts
|
|
7
|
+
declare var __VLS_8: {
|
|
8
|
+
layout: number[];
|
|
9
|
+
};
|
|
10
|
+
type __VLS_Slots = {} & {
|
|
11
|
+
default?: (props: typeof __VLS_8) => any;
|
|
12
|
+
};
|
|
13
|
+
declare const __VLS_base: _$vue.DefineComponent<SplitterGroupProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
|
|
14
|
+
layout: (value: number[]) => any;
|
|
15
|
+
}, string, _$vue.PublicProps, Readonly<SplitterGroupProps> & Readonly<{
|
|
16
|
+
onLayout?: ((value: number[]) => any) | undefined;
|
|
17
|
+
}>, {
|
|
18
|
+
dir: Direction;
|
|
19
|
+
direction: DataOrientation;
|
|
20
|
+
as: AsTag | _$vue.Component;
|
|
21
|
+
keyboardResizeBy: number;
|
|
22
|
+
defaultLayout: number[];
|
|
23
|
+
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
|
|
24
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
25
|
+
declare const _default: typeof __VLS_export;
|
|
26
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
27
|
+
new (): {
|
|
28
|
+
$slots: S;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
//#endregion
|
|
32
|
+
export { _default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{clamp as e}from"../../shared/value.js";import"../../shared/index.js";import{useOmitProps as t}from"../../composables/use-props.js";import"../../composables/index.js";import{Primitive as n}from"../primitive/primitive.js";import"../primitive/index.js";import{useSplitterGroupContext as r,useSplitterUi as i}from"./context.js";import{computed as a,createBlock as o,defineComponent as s,mergeProps as c,onMounted as l,onUnmounted as u,openBlock as d,renderSlot as f,unref as p,useId as m,watch as h,withCtx as g}from"vue";const _=s({name:`SplitterPanel`,__name:`splitter-panel`,props:{defaultSize:{default:void 0},collapsible:{type:Boolean,default:!1},collapsedSize:{default:0},maxSize:{default:100},minSize:{default:10},order:{default:void 0},asChild:{type:Boolean},as:{default:`div`}},emits:[`collapse`,`expand`,`resize`],setup(s,{expose:_,emit:v}){let y=s,b=v,x=i(`panel`),S=t(y,[`defaultSize`,`collapsible`,`collapsedSize`,`maxSize`,`minSize`,`order`]),C=`soybean-splitter-panel-${m()}`,{groupId:w,registerPanel:T,unregisterPanel:E,refreshLayout:D,getPanelStyle:O,getPanelSize:k,isPanelCollapsed:A,collapsePanel:j,expandPanel:M,resizePanel:N}=r(`SplitterPanel`),P=a(()=>y.defaultSize===void 0?void 0:e(y.defaultSize,0,100)),F=a(()=>e(y.collapsedSize,0,100)),I=a(()=>e(y.minSize,0,100)),L=a(()=>e(y.maxSize,I.value,100)),R=a(()=>y.collapsible),z=a(()=>y.order),B=a(()=>O(C)),V=a(()=>k(C)),H=a(()=>R.value?A(C)?`collapsed`:`expanded`:void 0),U=a(()=>A(C)),W=a(()=>!U.value);h([P,F,I,L,R,z],D),l(()=>{T({id:C,order:z,defaultSize:P,minSize:I,maxSize:L,collapsible:R,collapsedSize:F,onCollapse:()=>b(`collapse`),onExpand:()=>b(`expand`),onResize:(e,t)=>b(`resize`,e,t)})}),u(()=>{E(C)});function G(){j(C)}function K(){M(C)}function q(e){N(C,e)}return _({collapse:G,expand:K,getSize:()=>V.value,resize:q,isCollapsed:U,isExpanded:W}),(e,t)=>(d(),o(p(n),c(p(S),{id:C,as:s.as,"as-child":s.asChild,class:p(x),style:B.value,"data-panel":``,"data-panel-group-id":p(w),"data-panel-size":V.value,"data-panel-collapsible":R.value||void 0,"data-state":H.value}),{default:g(()=>[f(e.$slots,`default`,{isCollapsed:U.value,isExpanded:W.value,collapse:G,expand:K,resize:q})]),_:3},16,[`as`,`as-child`,`class`,`style`,`data-panel-group-id`,`data-panel-size`,`data-panel-collapsible`,`data-state`]))}});export{_ as default};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { AsTag } from "../primitive/types.js";
|
|
2
|
+
import { SplitterPanelProps } from "./types.js";
|
|
3
|
+
import * as _$vue from "vue";
|
|
4
|
+
|
|
5
|
+
//#region src/components/splitter/splitter-panel.vue.d.ts
|
|
6
|
+
declare function collapse(): void;
|
|
7
|
+
declare function expand(): void;
|
|
8
|
+
declare function resize(sizeValue: number): void;
|
|
9
|
+
declare var __VLS_8: {
|
|
10
|
+
isCollapsed: boolean;
|
|
11
|
+
isExpanded: boolean;
|
|
12
|
+
collapse: typeof collapse;
|
|
13
|
+
expand: typeof expand;
|
|
14
|
+
resize: typeof resize;
|
|
15
|
+
};
|
|
16
|
+
type __VLS_Slots = {} & {
|
|
17
|
+
default?: (props: typeof __VLS_8) => any;
|
|
18
|
+
};
|
|
19
|
+
declare const __VLS_base: _$vue.DefineComponent<SplitterPanelProps, {
|
|
20
|
+
collapse: typeof collapse;
|
|
21
|
+
expand: typeof expand;
|
|
22
|
+
getSize: () => number | undefined;
|
|
23
|
+
resize: typeof resize;
|
|
24
|
+
isCollapsed: _$vue.ComputedRef<boolean>;
|
|
25
|
+
isExpanded: _$vue.ComputedRef<boolean>;
|
|
26
|
+
}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
|
|
27
|
+
resize: (size: number, prevSize: number | undefined) => any;
|
|
28
|
+
expand: () => any;
|
|
29
|
+
collapse: () => any;
|
|
30
|
+
}, string, _$vue.PublicProps, Readonly<SplitterPanelProps> & Readonly<{
|
|
31
|
+
onResize?: ((size: number, prevSize: number | undefined) => any) | undefined;
|
|
32
|
+
onExpand?: (() => any) | undefined;
|
|
33
|
+
onCollapse?: (() => any) | undefined;
|
|
34
|
+
}>, {
|
|
35
|
+
collapsible: boolean;
|
|
36
|
+
order: number;
|
|
37
|
+
as: AsTag | _$vue.Component;
|
|
38
|
+
defaultSize: number;
|
|
39
|
+
minSize: number;
|
|
40
|
+
maxSize: number;
|
|
41
|
+
collapsedSize: number;
|
|
42
|
+
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
|
|
43
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
44
|
+
declare const _default: typeof __VLS_export;
|
|
45
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
46
|
+
new (): {
|
|
47
|
+
$slots: S;
|
|
48
|
+
};
|
|
49
|
+
};
|
|
50
|
+
//#endregion
|
|
51
|
+
export { _default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useForwardElement as e}from"../../composables/use-forward-element.js";import{useOmitProps as t}from"../../composables/use-props.js";import"../../composables/index.js";import{Primitive as n}from"../primitive/primitive.js";import"../primitive/index.js";import{useSplitterGroupContext as r,useSplitterUi as i}from"./context.js";import{computed as a,createBlock as o,defineComponent as s,mergeProps as c,onBeforeUnmount as l,openBlock as u,renderSlot as d,shallowRef as f,unref as p,withCtx as m}from"vue";const h=s({name:`SplitterResizeHandle`,__name:`splitter-resize-handle`,props:{disabled:{type:Boolean,default:!1},tabindex:{default:0},asChild:{type:Boolean},as:{default:`div`}},emits:[`dragging`],setup(s,{emit:h}){let g=s,_=h,[v,y]=e(),b=i(`resizeHandle`),x=t(g,[`disabled`,`tabindex`]),{direction:S,dir:C,groupId:w,keyboardResizeBy:T,layout:E,rootElement:D,collapsePanel:O,expandPanel:k,resizePanelPair:A,getPanelRecordByIndex:j,getPanelBounds:M,getGroupSize:N}=r(`SplitterResizeHandle`),P=f(`inactive`),F=f(!1),I=f(null),L=f(0),R=a(()=>!D.value||!v.value?-1:Array.from(D.value.querySelectorAll(`[data-panel-group-id="${w}"][data-splitter-resize-handle]`)).findIndex(e=>e===v.value)),z=a(()=>j(R.value)),B=a(()=>E.value[R.value]),V=a(()=>{let e=z.value;if(e)return M(e.id)}),H=a(()=>{if(B.value!==void 0)return String(Number(B.value.toFixed(1)))}),U=a(()=>{if(V.value)return String(V.value.min)}),W=a(()=>{if(V.value)return String(V.value.max)}),G=a(()=>z.value?.id);function K(e){return S.value===`vertical`?e.clientY:e.clientX}function q(e){let t=K(e),n=t-L.value;L.value=t;let r=N();if(r<=0)return 0;let i=n/r*100;return S.value===`horizontal`&&C.value===`rtl`&&(i*=-1),i}let J=null;function Y(){J?.(),J=null}function X(e){e!==void 0&&I.value!==e||(I.value=null,P.value=`hover`,Y(),_(`dragging`,!1))}function Z(e){if(g.disabled||R.value<0)return;e.preventDefault(),I.value=e.pointerId,L.value=K(e),P.value=`drag`,_(`dragging`,!0);let t=v.value?.ownerDocument;if(!t)return;let n=e=>{I.value===e.pointerId&&A(R.value,q(e))},r=e=>{X(e.pointerId)};t.addEventListener(`pointermove`,n),t.addEventListener(`pointerup`,r),t.addEventListener(`pointercancel`,r),J=()=>{t.removeEventListener(`pointermove`,n),t.removeEventListener(`pointerup`,r),t.removeEventListener(`pointercancel`,r)}}function Q(e){if(g.disabled||R.value<0)return;let t=z.value;if(!t)return;let n=T.value??10,r=0;if(e.key===`Enter`&&t.collapsible.value){e.preventDefault(),B.value!==void 0&&B.value<=t.collapsedSize.value+.1?k(t.id):O(t.id);return}if(e.key===`Home`){e.preventDefault(),A(R.value,(V.value?.min??0)-(B.value??0));return}if(e.key===`End`){e.preventDefault(),A(R.value,(V.value?.max??0)-(B.value??0));return}S.value===`vertical`?(e.key===`ArrowDown`&&(r=n),e.key===`ArrowUp`&&(r=-n)):C.value===`rtl`?(e.key===`ArrowLeft`&&(r=n),e.key===`ArrowRight`&&(r=-n)):(e.key===`ArrowRight`&&(r=n),e.key===`ArrowLeft`&&(r=-n)),r!==0&&(e.preventDefault(),A(R.value,r))}return l(()=>{Y()}),(e,t)=>(u(),o(p(n),c(p(x),{ref:p(y),as:s.as,"as-child":s.asChild,class:p(b),role:`separator`,"data-splitter-resize-handle":``,tabindex:s.disabled?void 0:s.tabindex,"data-panel-group-id":p(w),"data-state":P.value,"data-disabled":s.disabled?``:void 0,"data-orientation":p(S),"aria-controls":G.value,"aria-disabled":s.disabled?`true`:void 0,"aria-orientation":p(S),"aria-valuenow":H.value,"aria-valuemin":U.value,"aria-valuemax":W.value,onBlur:t[0]||(t[0]=e=>F.value=!1),onFocus:t[1]||(t[1]=e=>F.value=!0),onKeydown:Q,onMouseenter:t[2]||(t[2]=e=>P.value=I.value===null?`hover`:P.value),onMouseleave:t[3]||(t[3]=e=>P.value=I.value===null?`inactive`:P.value),onPointerdown:Z}),{default:m(()=>[d(e.$slots,`default`,{active:P.value===`drag`,focused:F.value})]),_:3},16,[`as`,`as-child`,`class`,`tabindex`,`data-panel-group-id`,`data-state`,`data-disabled`,`data-orientation`,`aria-controls`,`aria-disabled`,`aria-orientation`,`aria-valuenow`,`aria-valuemin`,`aria-valuemax`]))}});export{h as default};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { AsTag } from "../primitive/types.js";
|
|
2
|
+
import { SplitterResizeHandleProps } from "./types.js";
|
|
3
|
+
import * as _$vue from "vue";
|
|
4
|
+
|
|
5
|
+
//#region src/components/splitter/splitter-resize-handle.vue.d.ts
|
|
6
|
+
declare var __VLS_15: {
|
|
7
|
+
active: boolean;
|
|
8
|
+
focused: boolean;
|
|
9
|
+
};
|
|
10
|
+
type __VLS_Slots = {} & {
|
|
11
|
+
default?: (props: typeof __VLS_15) => any;
|
|
12
|
+
};
|
|
13
|
+
declare const __VLS_base: _$vue.DefineComponent<SplitterResizeHandleProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
|
|
14
|
+
dragging: (value: boolean) => any;
|
|
15
|
+
}, string, _$vue.PublicProps, Readonly<SplitterResizeHandleProps> & Readonly<{
|
|
16
|
+
onDragging?: ((value: boolean) => any) | undefined;
|
|
17
|
+
}>, {
|
|
18
|
+
tabindex: number;
|
|
19
|
+
disabled: boolean;
|
|
20
|
+
as: AsTag | _$vue.Component;
|
|
21
|
+
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
|
|
22
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
23
|
+
declare const _default: typeof __VLS_export;
|
|
24
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
25
|
+
new (): {
|
|
26
|
+
$slots: S;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
//#endregion
|
|
30
|
+
export { _default };
|