@xihan-ui/vue 1.0.0-alpha.2 → 1.0.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +558 -0
- package/README.md +1 -1
- package/dist/components/accordion/accordion.d.ts +1 -1
- package/dist/components/accordion/accordion.d.ts.map +1 -1
- package/dist/components/accordion/accordion.js +15 -2
- package/dist/components/accordion/accordion.js.map +1 -1
- package/dist/components/accordion/use-accordion.d.ts +3 -0
- package/dist/components/accordion/use-accordion.d.ts.map +1 -1
- package/dist/components/accordion/use-accordion.js +14 -3
- package/dist/components/accordion/use-accordion.js.map +1 -1
- package/dist/components/anchor/anchor.d.ts +1 -1
- package/dist/components/avatar-group/avatar-group.d.ts.map +1 -1
- package/dist/components/avatar-group/avatar-group.js +2 -1
- package/dist/components/avatar-group/avatar-group.js.map +1 -1
- package/dist/components/back-top/back-top.d.ts +2 -2
- package/dist/components/badge/badge.d.ts +57 -1
- package/dist/components/badge/badge.d.ts.map +1 -1
- package/dist/components/badge/badge.js +32 -2
- package/dist/components/badge/badge.js.map +1 -1
- package/dist/components/breadcrumb/breadcrumb.d.ts +1 -1
- package/dist/components/button-group/button-group.d.ts +1 -1
- package/dist/components/button-group/button-group.d.ts.map +1 -1
- package/dist/components/button-group/button-group.js +2 -1
- package/dist/components/button-group/button-group.js.map +1 -1
- package/dist/components/button.d.ts +13 -6
- package/dist/components/button.d.ts.map +1 -1
- package/dist/components/button.js +11 -2
- package/dist/components/button.js.map +1 -1
- package/dist/components/calendar/calendar.d.ts +167 -7
- package/dist/components/calendar/calendar.d.ts.map +1 -1
- package/dist/components/calendar/calendar.js +125 -16
- package/dist/components/calendar/calendar.js.map +1 -1
- package/dist/components/calendar/use-calendar.d.ts +1 -1
- package/dist/components/calendar/use-calendar.d.ts.map +1 -1
- package/dist/components/calendar/use-calendar.js +3 -2
- package/dist/components/calendar/use-calendar.js.map +1 -1
- package/dist/components/card/card.d.ts +1 -1
- package/dist/components/card/card.d.ts.map +1 -1
- package/dist/components/card/card.js +2 -1
- package/dist/components/card/card.js.map +1 -1
- package/dist/components/cascader/cascader.d.ts +6 -3
- package/dist/components/cascader/cascader.d.ts.map +1 -1
- package/dist/components/cascader/cascader.js +15 -6
- package/dist/components/cascader/cascader.js.map +1 -1
- package/dist/components/cascader/use-cascader.d.ts +4 -0
- package/dist/components/cascader/use-cascader.d.ts.map +1 -1
- package/dist/components/cascader/use-cascader.js +14 -3
- package/dist/components/cascader/use-cascader.js.map +1 -1
- package/dist/components/checkbox/checkbox.d.ts +17 -3
- package/dist/components/checkbox/checkbox.d.ts.map +1 -1
- package/dist/components/checkbox/checkbox.js +12 -2
- package/dist/components/checkbox/checkbox.js.map +1 -1
- package/dist/components/code-block/code-block.d.ts +3 -0
- package/dist/components/code-block/code-block.d.ts.map +1 -1
- package/dist/components/code-block/code-block.js +2 -0
- package/dist/components/code-block/code-block.js.map +1 -1
- package/dist/components/collapsible/collapsible.d.ts +10 -2
- package/dist/components/collapsible/collapsible.d.ts.map +1 -1
- package/dist/components/collapsible/collapsible.js +21 -3
- package/dist/components/collapsible/collapsible.js.map +1 -1
- package/dist/components/collapsible/use-collapsible.d.ts +4 -1
- package/dist/components/collapsible/use-collapsible.d.ts.map +1 -1
- package/dist/components/collapsible/use-collapsible.js +22 -4
- package/dist/components/collapsible/use-collapsible.js.map +1 -1
- package/dist/components/color-picker/color-picker.d.ts +4 -1
- package/dist/components/color-picker/color-picker.d.ts.map +1 -1
- package/dist/components/color-picker/color-picker.js +15 -6
- package/dist/components/color-picker/color-picker.js.map +1 -1
- package/dist/components/color-picker/use-color-picker.d.ts +4 -0
- package/dist/components/color-picker/use-color-picker.d.ts.map +1 -1
- package/dist/components/color-picker/use-color-picker.js +13 -2
- package/dist/components/color-picker/use-color-picker.js.map +1 -1
- package/dist/components/combobox/combobox.d.ts +15 -1
- package/dist/components/combobox/combobox.d.ts.map +1 -1
- package/dist/components/combobox/combobox.js +17 -9
- package/dist/components/combobox/combobox.js.map +1 -1
- package/dist/components/combobox/use-combobox.d.ts +4 -0
- package/dist/components/combobox/use-combobox.d.ts.map +1 -1
- package/dist/components/combobox/use-combobox.js +14 -3
- package/dist/components/combobox/use-combobox.js.map +1 -1
- package/dist/components/context-menu/context-menu.d.ts +44 -3
- package/dist/components/context-menu/context-menu.d.ts.map +1 -1
- package/dist/components/context-menu/context-menu.js +61 -17
- package/dist/components/context-menu/context-menu.js.map +1 -1
- package/dist/components/context-menu/use-context-menu.d.ts +4 -0
- package/dist/components/context-menu/use-context-menu.d.ts.map +1 -1
- package/dist/components/context-menu/use-context-menu.js +14 -3
- package/dist/components/context-menu/use-context-menu.js.map +1 -1
- package/dist/components/date-field/date-field.d.ts +38 -10
- package/dist/components/date-field/date-field.d.ts.map +1 -1
- package/dist/components/date-field/date-field.js +35 -9
- package/dist/components/date-field/date-field.js.map +1 -1
- package/dist/components/date-picker/context.js +6 -6
- package/dist/components/date-picker/context.js.map +1 -1
- package/dist/components/date-picker/date-picker.d.ts +251 -12
- package/dist/components/date-picker/date-picker.d.ts.map +1 -1
- package/dist/components/date-picker/date-picker.js +204 -34
- package/dist/components/date-picker/date-picker.js.map +1 -1
- package/dist/components/date-picker/use-date-picker.d.ts +5 -1
- package/dist/components/date-picker/use-date-picker.d.ts.map +1 -1
- package/dist/components/date-picker/use-date-picker.js +14 -3
- package/dist/components/date-picker/use-date-picker.js.map +1 -1
- package/dist/components/descriptions/descriptions.d.ts.map +1 -1
- package/dist/components/descriptions/descriptions.js +6 -4
- package/dist/components/descriptions/descriptions.js.map +1 -1
- package/dist/components/dialog/dialog.d.ts +19 -2
- package/dist/components/dialog/dialog.d.ts.map +1 -1
- package/dist/components/dialog/dialog.js +23 -6
- package/dist/components/dialog/dialog.js.map +1 -1
- package/dist/components/dialog/use-dialog.d.ts +2 -0
- package/dist/components/dialog/use-dialog.d.ts.map +1 -1
- package/dist/components/dialog/use-dialog.js +9 -4
- package/dist/components/dialog/use-dialog.js.map +1 -1
- package/dist/components/download-trigger/download-trigger.d.ts +66 -0
- package/dist/components/download-trigger/download-trigger.d.ts.map +1 -0
- package/dist/components/download-trigger/download-trigger.js +56 -0
- package/dist/components/download-trigger/download-trigger.js.map +1 -0
- package/dist/components/download-trigger/use-download-trigger.d.ts +10 -0
- package/dist/components/download-trigger/use-download-trigger.d.ts.map +1 -0
- package/dist/components/download-trigger/use-download-trigger.js +16 -0
- package/dist/components/download-trigger/use-download-trigger.js.map +1 -0
- package/dist/components/drawer/drawer.d.ts +50 -2
- package/dist/components/drawer/drawer.d.ts.map +1 -1
- package/dist/components/drawer/drawer.js +39 -7
- package/dist/components/drawer/drawer.js.map +1 -1
- package/dist/components/drawer/use-drawer.d.ts +3 -1
- package/dist/components/drawer/use-drawer.d.ts.map +1 -1
- package/dist/components/drawer/use-drawer.js +11 -5
- package/dist/components/drawer/use-drawer.js.map +1 -1
- package/dist/components/dynamic-input/dynamic-input.d.ts +2 -2
- package/dist/components/dynamic-input/dynamic-input.d.ts.map +1 -1
- package/dist/components/dynamic-input/dynamic-input.js +4 -4
- package/dist/components/dynamic-input/dynamic-input.js.map +1 -1
- package/dist/components/ellipsis/ellipsis.d.ts +1 -1
- package/dist/components/empty-state/empty-state.d.ts.map +1 -1
- package/dist/components/empty-state/empty-state.js +2 -1
- package/dist/components/empty-state/empty-state.js.map +1 -1
- package/dist/components/field/field.d.ts +9 -0
- package/dist/components/field/field.d.ts.map +1 -1
- package/dist/components/field/field.js +17 -1
- package/dist/components/field/field.js.map +1 -1
- package/dist/components/fieldset/context.d.ts +6 -0
- package/dist/components/fieldset/context.d.ts.map +1 -0
- package/dist/components/fieldset/context.js +15 -0
- package/dist/components/fieldset/context.js.map +1 -0
- package/dist/components/fieldset/fieldset.d.ts +57 -0
- package/dist/components/fieldset/fieldset.d.ts.map +1 -0
- package/dist/components/fieldset/fieldset.js +56 -0
- package/dist/components/fieldset/fieldset.js.map +1 -0
- package/dist/components/fieldset/use-fieldset.d.ts +10 -0
- package/dist/components/fieldset/use-fieldset.d.ts.map +1 -0
- package/dist/components/fieldset/use-fieldset.js +14 -0
- package/dist/components/fieldset/use-fieldset.js.map +1 -0
- package/dist/components/file-upload/file-upload.d.ts +11 -3
- package/dist/components/file-upload/file-upload.d.ts.map +1 -1
- package/dist/components/file-upload/file-upload.js +15 -3
- package/dist/components/file-upload/file-upload.js.map +1 -1
- package/dist/components/flex/flex.d.ts +1 -1
- package/dist/components/floating-panel/context.d.ts +6 -0
- package/dist/components/floating-panel/context.d.ts.map +1 -0
- package/dist/components/floating-panel/context.js +15 -0
- package/dist/components/floating-panel/context.js.map +1 -0
- package/dist/components/floating-panel/floating-panel.d.ts +216 -0
- package/dist/components/floating-panel/floating-panel.d.ts.map +1 -0
- package/dist/components/floating-panel/floating-panel.js +202 -0
- package/dist/components/floating-panel/floating-panel.js.map +1 -0
- package/dist/components/floating-panel/use-floating-panel.d.ts +18 -0
- package/dist/components/floating-panel/use-floating-panel.d.ts.map +1 -0
- package/dist/components/floating-panel/use-floating-panel.js +28 -0
- package/dist/components/floating-panel/use-floating-panel.js.map +1 -0
- package/dist/components/form/form.d.ts +1 -1
- package/dist/components/heatmap/context.d.ts +7 -0
- package/dist/components/heatmap/context.d.ts.map +1 -0
- package/dist/components/heatmap/context.js +32 -0
- package/dist/components/heatmap/context.js.map +1 -0
- package/dist/components/heatmap/heatmap.d.ts +352 -0
- package/dist/components/heatmap/heatmap.d.ts.map +1 -0
- package/dist/components/heatmap/heatmap.js +374 -0
- package/dist/components/heatmap/heatmap.js.map +1 -0
- package/dist/components/heatmap/use-heatmap.d.ts +13 -0
- package/dist/components/heatmap/use-heatmap.d.ts.map +1 -0
- package/dist/components/heatmap/use-heatmap.js +20 -0
- package/dist/components/heatmap/use-heatmap.js.map +1 -0
- package/dist/components/hotkeys/hotkeys.d.ts +87 -0
- package/dist/components/hotkeys/hotkeys.d.ts.map +1 -0
- package/dist/components/hotkeys/hotkeys.js +101 -0
- package/dist/components/hotkeys/hotkeys.js.map +1 -0
- package/dist/components/hover-card/hover-card.d.ts +11 -3
- package/dist/components/hover-card/hover-card.d.ts.map +1 -1
- package/dist/components/hover-card/hover-card.js +25 -11
- package/dist/components/hover-card/hover-card.js.map +1 -1
- package/dist/components/hover-card/use-hover-card.d.ts +4 -0
- package/dist/components/hover-card/use-hover-card.d.ts.map +1 -1
- package/dist/components/hover-card/use-hover-card.js +14 -3
- package/dist/components/hover-card/use-hover-card.js.map +1 -1
- package/dist/components/icon/icon.d.ts +1 -1
- package/dist/components/icon/icon.d.ts.map +1 -1
- package/dist/components/icon/icon.js +2 -1
- package/dist/components/icon/icon.js.map +1 -1
- package/dist/components/icon-wrapper/icon-wrapper.d.ts +1 -1
- package/dist/components/icon-wrapper/icon-wrapper.d.ts.map +1 -1
- package/dist/components/icon-wrapper/icon-wrapper.js +2 -1
- package/dist/components/icon-wrapper/icon-wrapper.js.map +1 -1
- package/dist/components/image-cropper/context.d.ts +6 -0
- package/dist/components/image-cropper/context.d.ts.map +1 -0
- package/dist/components/image-cropper/context.js +15 -0
- package/dist/components/image-cropper/context.js.map +1 -0
- package/dist/components/image-cropper/image-cropper.d.ts +195 -0
- package/dist/components/image-cropper/image-cropper.d.ts.map +1 -0
- package/dist/components/image-cropper/image-cropper.js +165 -0
- package/dist/components/image-cropper/image-cropper.js.map +1 -0
- package/dist/components/image-cropper/use-image-cropper.d.ts +15 -0
- package/dist/components/image-cropper/use-image-cropper.d.ts.map +1 -0
- package/dist/components/image-cropper/use-image-cropper.js +22 -0
- package/dist/components/image-cropper/use-image-cropper.js.map +1 -0
- package/dist/components/image-viewer/image-viewer.d.ts +11 -3
- package/dist/components/image-viewer/image-viewer.d.ts.map +1 -1
- package/dist/components/image-viewer/image-viewer.js +29 -16
- package/dist/components/image-viewer/image-viewer.js.map +1 -1
- package/dist/components/image-viewer/use-image-viewer.d.ts +2 -0
- package/dist/components/image-viewer/use-image-viewer.d.ts.map +1 -1
- package/dist/components/image-viewer/use-image-viewer.js +9 -4
- package/dist/components/image-viewer/use-image-viewer.js.map +1 -1
- package/dist/components/infinite-scroll/infinite-scroll.d.ts +1 -1
- package/dist/components/json-viewer/json-viewer.d.ts +120 -0
- package/dist/components/json-viewer/json-viewer.d.ts.map +1 -0
- package/dist/components/json-viewer/json-viewer.js +111 -0
- package/dist/components/json-viewer/json-viewer.js.map +1 -0
- package/dist/components/json-viewer/use-json-viewer.d.ts +13 -0
- package/dist/components/json-viewer/use-json-viewer.d.ts.map +1 -0
- package/dist/components/json-viewer/use-json-viewer.js +19 -0
- package/dist/components/json-viewer/use-json-viewer.js.map +1 -0
- package/dist/components/list/list.d.ts.map +1 -1
- package/dist/components/list/list.js +6 -4
- package/dist/components/list/list.js.map +1 -1
- package/dist/components/masonry/masonry.d.ts +41 -0
- package/dist/components/masonry/masonry.d.ts.map +1 -0
- package/dist/components/masonry/masonry.js +159 -0
- package/dist/components/masonry/masonry.js.map +1 -0
- package/dist/components/mention/mention.d.ts +7 -1
- package/dist/components/mention/mention.d.ts.map +1 -1
- package/dist/components/mention/mention.js +9 -5
- package/dist/components/mention/mention.js.map +1 -1
- package/dist/components/mention/use-mention.d.ts +4 -0
- package/dist/components/mention/use-mention.d.ts.map +1 -1
- package/dist/components/mention/use-mention.js +13 -2
- package/dist/components/mention/use-mention.js.map +1 -1
- package/dist/components/menu/context.d.ts +9 -1
- package/dist/components/menu/context.d.ts.map +1 -1
- package/dist/components/menu/context.js +10 -1
- package/dist/components/menu/context.js.map +1 -1
- package/dist/components/menu/menu.d.ts +72 -4
- package/dist/components/menu/menu.d.ts.map +1 -1
- package/dist/components/menu/menu.js +78 -20
- package/dist/components/menu/menu.js.map +1 -1
- package/dist/components/menu/use-menu.d.ts +4 -0
- package/dist/components/menu/use-menu.d.ts.map +1 -1
- package/dist/components/menu/use-menu.js +14 -3
- package/dist/components/menu/use-menu.js.map +1 -1
- package/dist/components/menubar/context.d.ts +21 -0
- package/dist/components/menubar/context.d.ts.map +1 -0
- package/dist/components/menubar/context.js +19 -1
- package/dist/components/menubar/context.js.map +1 -1
- package/dist/components/menubar/menubar.d.ts +129 -2
- package/dist/components/menubar/menubar.d.ts.map +1 -1
- package/dist/components/menubar/menubar.js +152 -16
- package/dist/components/menubar/menubar.js.map +1 -1
- package/dist/components/menubar/use-menubar.d.ts +2 -0
- package/dist/components/menubar/use-menubar.d.ts.map +1 -1
- package/dist/components/menubar/use-menubar.js +9 -3
- package/dist/components/menubar/use-menubar.js.map +1 -1
- package/dist/components/navigation-menu/navigation-menu.d.ts +1 -1
- package/dist/components/navigation-menu/navigation-menu.d.ts.map +1 -1
- package/dist/components/navigation-menu/navigation-menu.js +22 -3
- package/dist/components/navigation-menu/navigation-menu.js.map +1 -1
- package/dist/components/navigation-menu/use-navigation-menu.d.ts +2 -0
- package/dist/components/navigation-menu/use-navigation-menu.d.ts.map +1 -1
- package/dist/components/navigation-menu/use-navigation-menu.js +22 -2
- package/dist/components/navigation-menu/use-navigation-menu.js.map +1 -1
- package/dist/components/number-animation/number-animation.d.ts +2 -2
- package/dist/components/number-field/number-field.d.ts +23 -2
- package/dist/components/number-field/number-field.d.ts.map +1 -1
- package/dist/components/number-field/number-field.js +16 -1
- package/dist/components/number-field/number-field.js.map +1 -1
- package/dist/components/page-header/page-header.d.ts.map +1 -1
- package/dist/components/page-header/page-header.js +2 -1
- package/dist/components/page-header/page-header.js.map +1 -1
- package/dist/components/pagination/pagination.d.ts +2 -2
- package/dist/components/password-input/context.d.ts +6 -0
- package/dist/components/password-input/context.d.ts.map +1 -0
- package/dist/components/password-input/context.js +15 -0
- package/dist/components/password-input/context.js.map +1 -0
- package/dist/components/password-input/password-input.d.ts +179 -0
- package/dist/components/password-input/password-input.d.ts.map +1 -0
- package/dist/components/password-input/password-input.js +141 -0
- package/dist/components/password-input/password-input.js.map +1 -0
- package/dist/components/password-input/use-password-input.d.ts +10 -0
- package/dist/components/password-input/use-password-input.d.ts.map +1 -0
- package/dist/components/password-input/use-password-input.js +18 -0
- package/dist/components/password-input/use-password-input.js.map +1 -0
- package/dist/components/pin-input/pin-input.d.ts +10 -1
- package/dist/components/pin-input/pin-input.d.ts.map +1 -1
- package/dist/components/pin-input/pin-input.js +4 -0
- package/dist/components/pin-input/pin-input.js.map +1 -1
- package/dist/components/popconfirm/popconfirm.d.ts +10 -2
- package/dist/components/popconfirm/popconfirm.d.ts.map +1 -1
- package/dist/components/popconfirm/popconfirm.js +25 -11
- package/dist/components/popconfirm/popconfirm.js.map +1 -1
- package/dist/components/popconfirm/use-popconfirm.d.ts +4 -0
- package/dist/components/popconfirm/use-popconfirm.d.ts.map +1 -1
- package/dist/components/popconfirm/use-popconfirm.js +14 -3
- package/dist/components/popconfirm/use-popconfirm.js.map +1 -1
- package/dist/components/popover/popover.d.ts +10 -2
- package/dist/components/popover/popover.d.ts.map +1 -1
- package/dist/components/popover/popover.js +25 -11
- package/dist/components/popover/popover.js.map +1 -1
- package/dist/components/popover/use-popover.d.ts +4 -0
- package/dist/components/popover/use-popover.d.ts.map +1 -1
- package/dist/components/popover/use-popover.js +14 -3
- package/dist/components/popover/use-popover.js.map +1 -1
- package/dist/components/popselect/popselect.d.ts +30 -5
- package/dist/components/popselect/popselect.d.ts.map +1 -1
- package/dist/components/popselect/popselect.js +49 -13
- package/dist/components/popselect/popselect.js.map +1 -1
- package/dist/components/popselect/use-popselect.d.ts +6 -1
- package/dist/components/popselect/use-popselect.d.ts.map +1 -1
- package/dist/components/popselect/use-popselect.js +23 -11
- package/dist/components/popselect/use-popselect.js.map +1 -1
- package/dist/components/progress/progress.d.ts +4 -1
- package/dist/components/progress/progress.d.ts.map +1 -1
- package/dist/components/progress/progress.js +4 -1
- package/dist/components/progress/progress.js.map +1 -1
- package/dist/components/radio-group/radio-group.d.ts +10 -1
- package/dist/components/radio-group/radio-group.d.ts.map +1 -1
- package/dist/components/radio-group/radio-group.js +3 -0
- package/dist/components/radio-group/radio-group.js.map +1 -1
- package/dist/components/rating/rating.d.ts +2 -2
- package/dist/components/result/result.d.ts.map +1 -1
- package/dist/components/result/result.js +3 -1
- package/dist/components/result/result.js.map +1 -1
- package/dist/components/scroll-area/scroll-area.d.ts +28 -9
- package/dist/components/scroll-area/scroll-area.d.ts.map +1 -1
- package/dist/components/scroll-area/scroll-area.js +24 -4
- package/dist/components/scroll-area/scroll-area.js.map +1 -1
- package/dist/components/scroll-area/use-scroll-area.d.ts +10 -8
- package/dist/components/scroll-area/use-scroll-area.d.ts.map +1 -1
- package/dist/components/scroll-area/use-scroll-area.js +24 -10
- package/dist/components/scroll-area/use-scroll-area.js.map +1 -1
- package/dist/components/scrollbar/context.d.ts +7 -0
- package/dist/components/scrollbar/context.d.ts.map +1 -0
- package/dist/components/scrollbar/context.js +15 -0
- package/dist/components/scrollbar/context.js.map +1 -0
- package/dist/components/scrollbar/scrollbar.d.ts +162 -0
- package/dist/components/scrollbar/scrollbar.d.ts.map +1 -0
- package/dist/components/scrollbar/scrollbar.js +129 -0
- package/dist/components/scrollbar/scrollbar.js.map +1 -0
- package/dist/components/scrollbar/use-scrollbar.d.ts +23 -0
- package/dist/components/scrollbar/use-scrollbar.d.ts.map +1 -0
- package/dist/components/scrollbar/use-scrollbar.js +43 -0
- package/dist/components/scrollbar/use-scrollbar.js.map +1 -0
- package/dist/components/segmented/context.d.ts +13 -0
- package/dist/components/segmented/context.d.ts.map +1 -0
- package/dist/components/segmented/context.js +24 -0
- package/dist/components/segmented/context.js.map +1 -0
- package/dist/components/segmented/segmented.d.ts +185 -0
- package/dist/components/segmented/segmented.d.ts.map +1 -0
- package/dist/components/segmented/segmented.js +165 -0
- package/dist/components/segmented/segmented.js.map +1 -0
- package/dist/components/segmented/use-segmented.d.ts +15 -0
- package/dist/components/segmented/use-segmented.d.ts.map +1 -0
- package/dist/components/segmented/use-segmented.js +22 -0
- package/dist/components/segmented/use-segmented.js.map +1 -0
- package/dist/components/select/context.js.map +1 -1
- package/dist/components/select/select.d.ts +25 -3
- package/dist/components/select/select.d.ts.map +1 -1
- package/dist/components/select/select.js +38 -14
- package/dist/components/select/select.js.map +1 -1
- package/dist/components/select/use-select.d.ts +4 -0
- package/dist/components/select/use-select.d.ts.map +1 -1
- package/dist/components/select/use-select.js +14 -3
- package/dist/components/select/use-select.js.map +1 -1
- package/dist/components/separator/separator.d.ts.map +1 -1
- package/dist/components/separator/separator.js +11 -2
- package/dist/components/separator/separator.js.map +1 -1
- package/dist/components/side-nav/side-nav.d.ts +6 -3
- package/dist/components/side-nav/side-nav.d.ts.map +1 -1
- package/dist/components/side-nav/side-nav.js +32 -4
- package/dist/components/side-nav/side-nav.js.map +1 -1
- package/dist/components/side-nav/use-side-nav.d.ts +5 -0
- package/dist/components/side-nav/use-side-nav.d.ts.map +1 -1
- package/dist/components/side-nav/use-side-nav.js +12 -1
- package/dist/components/side-nav/use-side-nav.js.map +1 -1
- package/dist/components/signature-pad/context.d.ts +6 -0
- package/dist/components/signature-pad/context.d.ts.map +1 -0
- package/dist/components/signature-pad/context.js +15 -0
- package/dist/components/signature-pad/context.js.map +1 -0
- package/dist/components/signature-pad/signature-pad.d.ts +108 -0
- package/dist/components/signature-pad/signature-pad.d.ts.map +1 -0
- package/dist/components/signature-pad/signature-pad.js +118 -0
- package/dist/components/signature-pad/signature-pad.js.map +1 -0
- package/dist/components/signature-pad/use-signature-pad.d.ts +14 -0
- package/dist/components/signature-pad/use-signature-pad.d.ts.map +1 -0
- package/dist/components/signature-pad/use-signature-pad.js +24 -0
- package/dist/components/signature-pad/use-signature-pad.js.map +1 -0
- package/dist/components/slider/slider.d.ts +1 -1
- package/dist/components/space/context.d.ts +10 -0
- package/dist/components/space/context.d.ts.map +1 -0
- package/dist/components/space/context.js +15 -0
- package/dist/components/space/context.js.map +1 -0
- package/dist/components/space/space.d.ts +66 -0
- package/dist/components/space/space.d.ts.map +1 -0
- package/dist/components/space/space.js +87 -0
- package/dist/components/space/space.js.map +1 -0
- package/dist/components/spinner/spinner.d.ts +1 -1
- package/dist/components/splitter/splitter.d.ts +1 -1
- package/dist/components/statistic/statistic.d.ts +1 -1
- package/dist/components/statistic/statistic.d.ts.map +1 -1
- package/dist/components/statistic/statistic.js +2 -1
- package/dist/components/statistic/statistic.js.map +1 -1
- package/dist/components/steps/steps.d.ts +1 -1
- package/dist/components/switch/switch.d.ts +9 -0
- package/dist/components/switch/switch.d.ts.map +1 -1
- package/dist/components/switch/switch.js +11 -2
- package/dist/components/switch/switch.js.map +1 -1
- package/dist/components/table/table.d.ts +10 -1
- package/dist/components/table/table.d.ts.map +1 -1
- package/dist/components/table/table.js +3 -0
- package/dist/components/table/table.js.map +1 -1
- package/dist/components/tabs/tabs.d.ts +1 -1
- package/dist/components/tag/context.d.ts +6 -0
- package/dist/components/tag/context.d.ts.map +1 -0
- package/dist/components/tag/context.js +15 -0
- package/dist/components/tag/context.js.map +1 -0
- package/dist/components/tag/tag.d.ts +71 -0
- package/dist/components/tag/tag.d.ts.map +1 -0
- package/dist/components/tag/tag.js +61 -0
- package/dist/components/tag/tag.js.map +1 -0
- package/dist/components/tag/use-tag.d.ts +10 -0
- package/dist/components/tag/use-tag.d.ts.map +1 -0
- package/dist/components/tag/use-tag.js +16 -0
- package/dist/components/tag/use-tag.js.map +1 -0
- package/dist/components/tags-input/tags-input.d.ts +2 -2
- package/dist/components/text-field/text-field.d.ts +25 -4
- package/dist/components/text-field/text-field.d.ts.map +1 -1
- package/dist/components/text-field/text-field.js +16 -1
- package/dist/components/text-field/text-field.js.map +1 -1
- package/dist/components/time/time.d.ts +4 -4
- package/dist/components/time/time.d.ts.map +1 -1
- package/dist/components/time/time.js.map +1 -1
- package/dist/components/time-field/time-field.d.ts +18 -3
- package/dist/components/time-field/time-field.d.ts.map +1 -1
- package/dist/components/time-field/time-field.js +20 -1
- package/dist/components/time-field/time-field.js.map +1 -1
- package/dist/components/time-picker/time-picker.d.ts +92 -5
- package/dist/components/time-picker/time-picker.d.ts.map +1 -1
- package/dist/components/time-picker/time-picker.js +79 -8
- package/dist/components/time-picker/time-picker.js.map +1 -1
- package/dist/components/time-picker/use-time-picker.d.ts +4 -0
- package/dist/components/time-picker/use-time-picker.d.ts.map +1 -1
- package/dist/components/time-picker/use-time-picker.js +14 -3
- package/dist/components/time-picker/use-time-picker.js.map +1 -1
- package/dist/components/timeline/timeline.d.ts +1 -1
- package/dist/components/timeline/timeline.d.ts.map +1 -1
- package/dist/components/timeline/timeline.js +2 -1
- package/dist/components/timeline/timeline.js.map +1 -1
- package/dist/components/timer/context.d.ts +6 -0
- package/dist/components/timer/context.d.ts.map +1 -0
- package/dist/components/timer/context.js +15 -0
- package/dist/components/timer/context.js.map +1 -0
- package/dist/components/timer/timer.d.ts +110 -0
- package/dist/components/timer/timer.d.ts.map +1 -0
- package/dist/components/timer/timer.js +139 -0
- package/dist/components/timer/timer.js.map +1 -0
- package/dist/components/timer/use-timer.d.ts +13 -0
- package/dist/components/timer/use-timer.d.ts.map +1 -0
- package/dist/components/timer/use-timer.js +19 -0
- package/dist/components/timer/use-timer.js.map +1 -0
- package/dist/components/toolbar/toolbar.d.ts +1 -1
- package/dist/components/tooltip/tooltip.d.ts +11 -3
- package/dist/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/components/tooltip/tooltip.js +31 -12
- package/dist/components/tooltip/tooltip.js.map +1 -1
- package/dist/components/tooltip/use-tooltip.d.ts +6 -0
- package/dist/components/tooltip/use-tooltip.d.ts.map +1 -1
- package/dist/components/tooltip/use-tooltip.js +36 -5
- package/dist/components/tooltip/use-tooltip.js.map +1 -1
- package/dist/components/tour/tour.d.ts +1 -1
- package/dist/components/tour/tour.d.ts.map +1 -1
- package/dist/components/tour/tour.js +20 -11
- package/dist/components/tour/tour.js.map +1 -1
- package/dist/components/tour/use-tour.d.ts +6 -0
- package/dist/components/tour/use-tour.d.ts.map +1 -1
- package/dist/components/tour/use-tour.js +18 -3
- package/dist/components/tour/use-tour.js.map +1 -1
- package/dist/components/transfer/transfer.d.ts +10 -10
- package/dist/components/transfer/transfer.d.ts.map +1 -1
- package/dist/components/transfer/transfer.js +8 -8
- package/dist/components/transfer/transfer.js.map +1 -1
- package/dist/components/tree/tree.d.ts +16 -10
- package/dist/components/tree/tree.d.ts.map +1 -1
- package/dist/components/tree/tree.js +22 -6
- package/dist/components/tree/tree.js.map +1 -1
- package/dist/components/tree-select/tree-select.d.ts +22 -2
- package/dist/components/tree-select/tree-select.d.ts.map +1 -1
- package/dist/components/tree-select/tree-select.js +47 -9
- package/dist/components/tree-select/tree-select.js.map +1 -1
- package/dist/components/tree-select/use-tree-select.d.ts +4 -0
- package/dist/components/tree-select/use-tree-select.d.ts.map +1 -1
- package/dist/components/tree-select/use-tree-select.js +14 -3
- package/dist/components/tree-select/use-tree-select.js.map +1 -1
- package/dist/components/typography/typography.d.ts.map +1 -1
- package/dist/components/typography/typography.js +2 -1
- package/dist/components/typography/typography.js.map +1 -1
- package/dist/config/config.d.ts +26 -10
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js +41 -14
- package/dist/config/config.js.map +1 -1
- package/dist/index.d.ts +60 -21
- package/dist/index.js +60 -21
- package/dist/package.js +6 -0
- package/dist/package.js.map +1 -0
- package/dist/runtime/as-child.js +66 -0
- package/dist/runtime/as-child.js.map +1 -0
- package/dist/runtime/config-defaults.js +19 -0
- package/dist/runtime/config-defaults.js.map +1 -0
- package/dist/runtime/normalize-props.d.ts.map +1 -1
- package/dist/runtime/normalize-props.js +5 -1
- package/dist/runtime/normalize-props.js.map +1 -1
- package/dist/runtime/use-machine.d.ts.map +1 -1
- package/dist/runtime/use-machine.js +17 -1
- package/dist/runtime/use-machine.js.map +1 -1
- package/dist/runtime/use-overlay-exit.js +40 -0
- package/dist/runtime/use-overlay-exit.js.map +1 -0
- package/dist/services/dialog-service.d.ts +12 -2
- package/dist/services/dialog-service.d.ts.map +1 -1
- package/dist/services/dialog-service.js +5 -2
- package/dist/services/dialog-service.js.map +1 -1
- package/dist/services/glyph.js +53 -20
- package/dist/services/glyph.js.map +1 -1
- package/dist/services/toast-service.d.ts +6 -0
- package/dist/services/toast-service.d.ts.map +1 -1
- package/dist/services/toast-service.js +4 -2
- package/dist/services/toast-service.js.map +1 -1
- package/package.json +14 -14
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { useOverlayExit } from "../../runtime/use-overlay-exit.js";
|
|
1
2
|
import { provideAccordion, provideAccordionItem, useAccordionContext, useAccordionItem } from "./context.js";
|
|
2
3
|
import { useAccordion } from "./use-accordion.js";
|
|
3
|
-
import { defineComponent, h } from "vue";
|
|
4
|
+
import { defineComponent, h, ref } from "vue";
|
|
4
5
|
//#region src/components/accordion/accordion.ts
|
|
5
6
|
const XhAccordionRoot = defineComponent({
|
|
6
7
|
name: "XhAccordionRoot",
|
|
@@ -95,7 +96,19 @@ const XhAccordionContent = defineComponent({
|
|
|
95
96
|
setup(_, { slots }) {
|
|
96
97
|
const ctx = useAccordionContext();
|
|
97
98
|
const item = useAccordionItem();
|
|
98
|
-
|
|
99
|
+
const contentRef = ref(null);
|
|
100
|
+
const visible = useOverlayExit({
|
|
101
|
+
config: ctx.config,
|
|
102
|
+
isOpen: () => ctx.api.value.isOpen(item().value),
|
|
103
|
+
contentRef
|
|
104
|
+
});
|
|
105
|
+
return () => h("div", {
|
|
106
|
+
...ctx.api.value.getContentProps(item()),
|
|
107
|
+
style: visible.value ? void 0 : { display: "none" },
|
|
108
|
+
ref: (el) => {
|
|
109
|
+
contentRef.value = el;
|
|
110
|
+
}
|
|
111
|
+
}, slots.default?.());
|
|
99
112
|
}
|
|
100
113
|
});
|
|
101
114
|
const XhAccordionIndicator = defineComponent({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accordion.js","names":[],"sources":["../../../src/components/accordion/accordion.ts"],"sourcesContent":["import type { AccordionNode, AccordionNodeMeta, AccordionSchema } from '@xihan-ui/headless'\nimport type { Direction, Orientation, Size, Tone } from '@xihan-ui/kernel'\nimport type { PropType, VNode } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport { defineComponent, h } from 'vue'\nimport { provideAccordion, provideAccordionItem, useAccordionContext, useAccordionItem } from './context'\nimport { useAccordion } from './use-accordion'\n\ntype AccordionProps = AccordionSchema['props']\n\nexport const XhAccordionRoot = defineComponent({\n name: 'XhAccordionRoot',\n props: {\n collection: { type: Array as PropType<AccordionNode[]>, default: undefined },\n value: { type: Array as PropType<string[]>, default: undefined },\n defaultValue: { type: Array as PropType<string[]>, default: undefined },\n multiple: Boolean,\n collapsible: Boolean,\n orientation: { type: String as PropType<Orientation>, default: undefined },\n // 只改水平轴上左右键的语义,不写进 DOM\n dir: { type: String as PropType<Direction>, default: undefined },\n tone: { type: String as PropType<Tone>, default: undefined },\n size: { type: String as PropType<Size>, default: undefined },\n },\n // value-change 携带 { value },update:value 携带裸数组\n emits: {\n 'value-change': (_details: PayloadOf<AccordionProps, 'onValueChange'>) => true,\n 'update:value': (_value: PayloadOf<AccordionProps, 'onValueChange'>['value']) => true,\n },\n setup(props, { slots, emit }) {\n const notify: AccordionProps['onValueChange'] = (details) => {\n emit('value-change', details)\n emit('update:value', details.value)\n }\n const ctx = useAccordion(props as AccordionProps, notify)\n provideAccordion(ctx)\n return () => h(\n 'div',\n ctx.api.value.getRootProps() as Record<string, unknown>,\n slots.default\n ? slots.default()\n : props.collection\n ? renderDefaultTree(ctx.api.value.collection, slots.content)\n : [],\n )\n },\n})\n\nexport const XhAccordionItem = defineComponent({\n name: 'XhAccordionItem',\n props: {\n value: { type: String, required: true },\n // 缺省交给 connect 回 collection 里查,写死 false 会盖掉数据里的禁用\n disabled: { type: Boolean, default: undefined },\n },\n setup(props, { slots }) {\n const ctx = useAccordionContext()\n provideAccordionItem(() => ({ value: props.value, disabled: props.disabled }))\n return () => h(\n 'div',\n ctx.api.value.getItemProps({ value: props.value, disabled: props.disabled }) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\n// 渲染为 h3,与 connect 给出的 aria-level 对齐\nexport const XhAccordionHeader = defineComponent({\n name: 'XhAccordionHeader',\n setup(_, { slots }) {\n const ctx = useAccordionContext()\n const item = useAccordionItem()\n return () => h('h3', ctx.api.value.getHeaderProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhAccordionTrigger = defineComponent({\n name: 'XhAccordionTrigger',\n setup(_, { slots }) {\n const ctx = useAccordionContext()\n const item = useAccordionItem()\n return () => h('button', ctx.api.value.getTriggerProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhAccordionContent = defineComponent({\n name: 'XhAccordionContent',\n setup(_, { slots }) {\n const ctx = useAccordionContext()\n const item = useAccordionItem()\n return () => h('div', ctx.api.value.getContentProps(item()) as Record<string, unknown
|
|
1
|
+
{"version":3,"file":"accordion.js","names":[],"sources":["../../../src/components/accordion/accordion.ts"],"sourcesContent":["import type { AccordionNode, AccordionNodeMeta, AccordionSchema } from '@xihan-ui/headless'\nimport type { Direction, Orientation, Size, Tone } from '@xihan-ui/kernel'\nimport type { PropType, VNode } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport { defineComponent, h, ref } from 'vue'\nimport { useOverlayExit } from '../../runtime/use-overlay-exit'\nimport { provideAccordion, provideAccordionItem, useAccordionContext, useAccordionItem } from './context'\nimport { useAccordion } from './use-accordion'\n\ntype AccordionProps = AccordionSchema['props']\n\nexport const XhAccordionRoot = defineComponent({\n name: 'XhAccordionRoot',\n props: {\n collection: { type: Array as PropType<AccordionNode[]>, default: undefined },\n value: { type: Array as PropType<string[]>, default: undefined },\n defaultValue: { type: Array as PropType<string[]>, default: undefined },\n multiple: Boolean,\n collapsible: Boolean,\n orientation: { type: String as PropType<Orientation>, default: undefined },\n // 只改水平轴上左右键的语义,不写进 DOM\n dir: { type: String as PropType<Direction>, default: undefined },\n tone: { type: String as PropType<Tone>, default: undefined },\n size: { type: String as PropType<Size>, default: undefined },\n },\n // value-change 携带 { value },update:value 携带裸数组\n emits: {\n 'value-change': (_details: PayloadOf<AccordionProps, 'onValueChange'>) => true,\n 'update:value': (_value: PayloadOf<AccordionProps, 'onValueChange'>['value']) => true,\n },\n setup(props, { slots, emit }) {\n const notify: AccordionProps['onValueChange'] = (details) => {\n emit('value-change', details)\n emit('update:value', details.value)\n }\n const ctx = useAccordion(props as AccordionProps, notify)\n provideAccordion(ctx)\n return () => h(\n 'div',\n ctx.api.value.getRootProps() as Record<string, unknown>,\n slots.default\n ? slots.default()\n : props.collection\n ? renderDefaultTree(ctx.api.value.collection, slots.content)\n : [],\n )\n },\n})\n\nexport const XhAccordionItem = defineComponent({\n name: 'XhAccordionItem',\n props: {\n value: { type: String, required: true },\n // 缺省交给 connect 回 collection 里查,写死 false 会盖掉数据里的禁用\n disabled: { type: Boolean, default: undefined },\n },\n setup(props, { slots }) {\n const ctx = useAccordionContext()\n provideAccordionItem(() => ({ value: props.value, disabled: props.disabled }))\n return () => h(\n 'div',\n ctx.api.value.getItemProps({ value: props.value, disabled: props.disabled }) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\n// 渲染为 h3,与 connect 给出的 aria-level 对齐\nexport const XhAccordionHeader = defineComponent({\n name: 'XhAccordionHeader',\n setup(_, { slots }) {\n const ctx = useAccordionContext()\n const item = useAccordionItem()\n return () => h('h3', ctx.api.value.getHeaderProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhAccordionTrigger = defineComponent({\n name: 'XhAccordionTrigger',\n setup(_, { slots }) {\n const ctx = useAccordionContext()\n const item = useAccordionItem()\n return () => h('button', ctx.api.value.getTriggerProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhAccordionContent = defineComponent({\n name: 'XhAccordionContent',\n setup(_, { slots }) {\n const ctx = useAccordionContext()\n const item = useAccordionItem()\n const contentRef = ref<HTMLElement | null>(null)\n // 闸门按面板各开一个:手风琴模式下切换项时,一个进场一个退场是同时发生的\n const visible = useOverlayExit({\n config: ctx.config,\n isOpen: () => ctx.api.value.isOpen(item().value),\n contentRef,\n })\n return () => h('div', {\n ...ctx.api.value.getContentProps(item()) as Record<string, unknown>,\n // 收起跟着退场闸门走:皮肤刻意没给 content 补 [hidden]{display:none}(补了退场\n // 就一帧都播不出来),所以真正的收起落成内联 display——节点始终留在原地\n style: visible.value ? undefined : { display: 'none' },\n ref: (el: unknown) => { contentRef.value = el as HTMLElement },\n }, slots.default?.())\n },\n})\n\nexport const XhAccordionIndicator = defineComponent({\n name: 'XhAccordionIndicator',\n setup(_, { slots }) {\n const ctx = useAccordionContext()\n const item = useAccordionItem()\n return () => h('span', ctx.api.value.getIndicatorProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\n/**\n * 没写默认插槽时按 collection 铺开的整套结构,作者只交数据。\n * 与手写部件产出的 DOM 完全一致,要改结构就写默认插槽,行为不变。\n * 正文默认取 node.content,写 content 插槽即由作者接管。\n */\nfunction renderDefaultTree(\n collection: readonly AccordionNodeMeta[],\n contentSlot?: (node: AccordionNodeMeta) => VNode[],\n): VNode[] {\n return collection.map(node => h(XhAccordionItem, { key: node.value, value: node.value }, () => [\n h(XhAccordionHeader, null, () => [\n h(XhAccordionTrigger, null, () => [\n h('span', null, node.label),\n h(XhAccordionIndicator),\n ]),\n ]),\n h(XhAccordionContent, null, () => contentSlot?.(node) ?? node.content ?? ''),\n ]))\n}\n"],"mappings":";;;;;AAWA,MAAa,kBAAkB,gBAAgB;CAC7C,MAAM;CACN,OAAO;EACL,YAAY;GAAE,MAAM;GAAoC,SAAS,KAAA;EAAU;EAC3E,OAAO;GAAE,MAAM;GAA6B,SAAS,KAAA;EAAU;EAC/D,cAAc;GAAE,MAAM;GAA6B,SAAS,KAAA;EAAU;EACtE,UAAU;EACV,aAAa;EACb,aAAa;GAAE,MAAM;GAAiC,SAAS,KAAA;EAAU;EAEzE,KAAK;GAAE,MAAM;GAA+B,SAAS,KAAA;EAAU;EAC/D,MAAM;GAAE,MAAM;GAA0B,SAAS,KAAA;EAAU;EAC3D,MAAM;GAAE,MAAM;GAA0B,SAAS,KAAA;EAAU;CAC7D;CAEA,OAAO;EACL,iBAAiB,aAAyD;EAC1E,iBAAiB,WAAgE;CACnF;CACA,MAAM,OAAO,EAAE,OAAO,QAAQ;EAC5B,MAAM,UAA2C,YAAY;GAC3D,KAAK,gBAAgB,OAAO;GAC5B,KAAK,gBAAgB,QAAQ,KAAK;EACpC;EACA,MAAM,MAAM,aAAa,OAAyB,MAAM;EACxD,iBAAiB,GAAG;EACpB,aAAa,EACX,OACA,IAAI,IAAI,MAAM,aAAa,GAC3B,MAAM,UACF,MAAM,QAAQ,IACd,MAAM,aACJ,kBAAkB,IAAI,IAAI,MAAM,YAAY,MAAM,OAAO,IACzD,CAAC,CACT;CACF;AACF,CAAC;AAED,MAAa,kBAAkB,gBAAgB;CAC7C,MAAM;CACN,OAAO;EACL,OAAO;GAAE,MAAM;GAAQ,UAAU;EAAK;EAEtC,UAAU;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;CAChD;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,oBAAoB;EAChC,4BAA4B;GAAE,OAAO,MAAM;GAAO,UAAU,MAAM;EAAS,EAAE;EAC7E,aAAa,EACX,OACA,IAAI,IAAI,MAAM,aAAa;GAAE,OAAO,MAAM;GAAO,UAAU,MAAM;EAAS,CAAC,GAC3E,MAAM,UAAU,CAClB;CACF;AACF,CAAC;AAGD,MAAa,oBAAoB,gBAAgB;CAC/C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,oBAAoB;EAChC,MAAM,OAAO,iBAAiB;EAC9B,aAAa,EAAE,MAAM,IAAI,IAAI,MAAM,eAAe,KAAK,CAAC,GAA8B,MAAM,UAAU,CAAC;CACzG;AACF,CAAC;AAED,MAAa,qBAAqB,gBAAgB;CAChD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,oBAAoB;EAChC,MAAM,OAAO,iBAAiB;EAC9B,aAAa,EAAE,UAAU,IAAI,IAAI,MAAM,gBAAgB,KAAK,CAAC,GAA8B,MAAM,UAAU,CAAC;CAC9G;AACF,CAAC;AAED,MAAa,qBAAqB,gBAAgB;CAChD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,oBAAoB;EAChC,MAAM,OAAO,iBAAiB;EAC9B,MAAM,aAAa,IAAwB,IAAI;EAE/C,MAAM,UAAU,eAAe;GAC7B,QAAQ,IAAI;GACZ,cAAc,IAAI,IAAI,MAAM,OAAO,KAAK,CAAC,CAAC,KAAK;GAC/C;EACF,CAAC;EACD,aAAa,EAAE,OAAO;GACpB,GAAG,IAAI,IAAI,MAAM,gBAAgB,KAAK,CAAC;GAGvC,OAAO,QAAQ,QAAQ,KAAA,IAAY,EAAE,SAAS,OAAO;GACrD,MAAM,OAAgB;IAAE,WAAW,QAAQ;GAAkB;EAC/D,GAAG,MAAM,UAAU,CAAC;CACtB;AACF,CAAC;AAED,MAAa,uBAAuB,gBAAgB;CAClD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,oBAAoB;EAChC,MAAM,OAAO,iBAAiB;EAC9B,aAAa,EAAE,QAAQ,IAAI,IAAI,MAAM,kBAAkB,KAAK,CAAC,GAA8B,MAAM,UAAU,CAAC;CAC9G;AACF,CAAC;;;;;;AAOD,SAAS,kBACP,YACA,aACS;CACT,OAAO,WAAW,KAAI,SAAQ,EAAE,iBAAiB;EAAE,KAAK,KAAK;EAAO,OAAO,KAAK;CAAM,SAAS,CAC7F,EAAE,mBAAmB,YAAY,CAC/B,EAAE,oBAAoB,YAAY,CAChC,EAAE,QAAQ,MAAM,KAAK,KAAK,GAC1B,EAAE,oBAAoB,CACxB,CAAC,CACH,CAAC,GACD,EAAE,oBAAoB,YAAY,cAAc,IAAI,KAAK,KAAK,WAAW,EAAE,CAC7E,CAAC,CAAC;AACJ"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { ComputedRef } from "vue";
|
|
2
2
|
import { AccordionApi, AccordionSchema } from "@xihan-ui/headless";
|
|
3
|
+
import { RuntimeConfig } from "@xihan-ui/kernel";
|
|
3
4
|
//#region src/components/accordion/use-accordion.d.ts
|
|
4
5
|
interface AccordionContext {
|
|
5
6
|
api: ComputedRef<AccordionApi>;
|
|
7
|
+
/** 每个面板各自开退场闸门,共用这一份运行期配置;服务端为 null,闸门退化成跟着展开态。 */
|
|
8
|
+
config: RuntimeConfig | null;
|
|
6
9
|
}
|
|
7
10
|
declare function useAccordion(props: AccordionSchema['props'], onValueChange?: AccordionSchema['props']['onValueChange']): AccordionContext;
|
|
8
11
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-accordion.d.ts","names":[],"sources":["../../../src/components/accordion/use-accordion.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-accordion.d.ts","names":[],"sources":["../../../src/components/accordion/use-accordion.ts"],"mappings":";;;;UAUiB;EACf,KAAK,YAAY;;EAEjB,QAAQ;;iBAGM,aACd,OAAO,0BACP,gBAAgB,4CACf"}
|
|
@@ -3,14 +3,25 @@ import { useMachine } from "../../runtime/use-machine.js";
|
|
|
3
3
|
import { createVueIdGenerator } from "../../runtime/vue-id.js";
|
|
4
4
|
import { computed } from "vue";
|
|
5
5
|
import { accordionMachine, connectAccordion } from "@xihan-ui/headless";
|
|
6
|
-
import { createScope } from "@xihan-ui/kernel";
|
|
6
|
+
import { createRuntimeConfig, createScope } from "@xihan-ui/kernel";
|
|
7
7
|
//#region src/components/accordion/use-accordion.ts
|
|
8
8
|
function useAccordion(props, onValueChange) {
|
|
9
|
+
const idGen = createVueIdGenerator();
|
|
10
|
+
const scope = createScope(null, idGen);
|
|
9
11
|
const service = useMachine(accordionMachine, () => ({
|
|
10
12
|
...props,
|
|
11
13
|
onValueChange
|
|
12
|
-
}),
|
|
13
|
-
|
|
14
|
+
}), scope);
|
|
15
|
+
const api = computed(() => connectAccordion(service, vueNormalize));
|
|
16
|
+
let config = null;
|
|
17
|
+
if (typeof document !== "undefined") config = createRuntimeConfig({
|
|
18
|
+
scope,
|
|
19
|
+
idGenerator: idGen
|
|
20
|
+
});
|
|
21
|
+
return {
|
|
22
|
+
api,
|
|
23
|
+
config
|
|
24
|
+
};
|
|
14
25
|
}
|
|
15
26
|
//#endregion
|
|
16
27
|
export { useAccordion };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-accordion.js","names":[],"sources":["../../../src/components/accordion/use-accordion.ts"],"sourcesContent":["import type { AccordionApi, AccordionSchema } from '@xihan-ui/headless'\nimport type { ComputedRef } from 'vue'\nimport { accordionMachine, connectAccordion } from '@xihan-ui/headless'\nimport { createScope } from '@xihan-ui/kernel'\nimport { computed } from 'vue'\nimport { vueNormalize } from '../../runtime/normalize-props'\nimport { useMachine } from '../../runtime/use-machine'\nimport { createVueIdGenerator } from '../../runtime/vue-id'\n\nexport interface AccordionContext {\n api: ComputedRef<AccordionApi>\n}\n\nexport function useAccordion(\n props: AccordionSchema['props'],\n onValueChange?: AccordionSchema['props']['onValueChange'],\n): AccordionContext {\n const idGen = createVueIdGenerator()\n const scope = createScope(null, idGen)\n const service = useMachine(accordionMachine, () => ({ ...props, onValueChange }), scope)\n const api = computed(() => connectAccordion(service, vueNormalize))\n return { api }\n}\n"],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"file":"use-accordion.js","names":[],"sources":["../../../src/components/accordion/use-accordion.ts"],"sourcesContent":["import type { AccordionApi, AccordionSchema } from '@xihan-ui/headless'\nimport type { RuntimeConfig } from '@xihan-ui/kernel'\nimport type { ComputedRef } from 'vue'\nimport { accordionMachine, connectAccordion } from '@xihan-ui/headless'\nimport { createRuntimeConfig, createScope } from '@xihan-ui/kernel'\nimport { computed } from 'vue'\nimport { vueNormalize } from '../../runtime/normalize-props'\nimport { useMachine } from '../../runtime/use-machine'\nimport { createVueIdGenerator } from '../../runtime/vue-id'\n\nexport interface AccordionContext {\n api: ComputedRef<AccordionApi>\n /** 每个面板各自开退场闸门,共用这一份运行期配置;服务端为 null,闸门退化成跟着展开态。 */\n config: RuntimeConfig | null\n}\n\nexport function useAccordion(\n props: AccordionSchema['props'],\n onValueChange?: AccordionSchema['props']['onValueChange'],\n): AccordionContext {\n const idGen = createVueIdGenerator()\n const scope = createScope(null, idGen)\n const service = useMachine(accordionMachine, () => ({ ...props, onValueChange }), scope)\n const api = computed(() => connectAccordion(service, vueNormalize))\n\n let config: RuntimeConfig | null = null\n if (typeof document !== 'undefined')\n config = createRuntimeConfig({ scope, idGenerator: idGen })\n\n return { api, config }\n}\n"],"mappings":";;;;;;;AAgBA,SAAgB,aACd,OACA,eACkB;CAClB,MAAM,QAAQ,qBAAqB;CACnC,MAAM,QAAQ,YAAY,MAAM,KAAK;CACrC,MAAM,UAAU,WAAW,yBAAyB;EAAE,GAAG;EAAO;CAAc,IAAI,KAAK;CACvF,MAAM,MAAM,eAAe,iBAAiB,SAAS,YAAY,CAAC;CAElE,IAAI,SAA+B;CACnC,IAAI,OAAO,aAAa,aACtB,SAAS,oBAAoB;EAAE;EAAO,aAAa;CAAM,CAAC;CAE5D,OAAO;EAAE;EAAK;CAAO;AACvB"}
|
|
@@ -106,12 +106,12 @@ declare const XhAnchorRoot: import("vue").DefineComponent<import("vue").ExtractP
|
|
|
106
106
|
"onValue-change"?: ((_details: import("@xihan-ui/headless").AnchorValueChangeDetails) => any) | undefined;
|
|
107
107
|
"onUpdate:value"?: ((_value: string | null) => any) | undefined;
|
|
108
108
|
}>, {
|
|
109
|
+
size: Size;
|
|
109
110
|
value: string | null;
|
|
110
111
|
defaultValue: string | null;
|
|
111
112
|
orientation: Orientation;
|
|
112
113
|
dir: Direction;
|
|
113
114
|
tone: Tone;
|
|
114
|
-
size: Size;
|
|
115
115
|
translations: Partial<AnchorTranslations>;
|
|
116
116
|
targets: readonly string[];
|
|
117
117
|
offset: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avatar-group.d.ts","names":[],"sources":["../../../src/components/avatar-group/avatar-group.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"avatar-group.d.ts","names":[],"sources":["../../../src/components/avatar-group/avatar-group.ts"],"mappings":";;;cASa,iCAAiB,8BAAA;;;;;;IAKF,MAAA,SAAS;;;;;;;;;;;IAAT,MAAA,SAAS;;;;;;qCAOnC;cAEW,qCAAqB,wCAAA,oBAAA,4BAAA;;8BAOhC,qCAAA,iDAAA,aAAA,eAAA,oDAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { vueNormalize } from "../../runtime/normalize-props.js";
|
|
2
|
+
import { withXhConfig } from "../../config/config.js";
|
|
2
3
|
import { provideAvatarGroup, useAvatarGroupContext } from "./context.js";
|
|
3
4
|
import { computed, defineComponent, h } from "vue";
|
|
4
5
|
import { connectAvatarGroup } from "@xihan-ui/headless";
|
|
@@ -16,7 +17,7 @@ const XhAvatarGroupRoot = defineComponent({
|
|
|
16
17
|
}
|
|
17
18
|
},
|
|
18
19
|
setup(props, { slots }) {
|
|
19
|
-
const api = computed(() => connectAvatarGroup(props, vueNormalize));
|
|
20
|
+
const api = computed(() => connectAvatarGroup(withXhConfig("avatar-group", props), vueNormalize));
|
|
20
21
|
provideAvatarGroup({ api });
|
|
21
22
|
return () => h("div", api.value.getRootProps(), slots.default?.());
|
|
22
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"avatar-group.js","names":[],"sources":["../../../src/components/avatar-group/avatar-group.ts"],"sourcesContent":["import type { AvatarGroupProps } from '@xihan-ui/headless'\nimport type { Size } from '@xihan-ui/kernel'\nimport type { PropType } from 'vue'\nimport { connectAvatarGroup } from '@xihan-ui/headless'\nimport { computed, defineComponent, h } from 'vue'\nimport { vueNormalize } from '../../runtime/normalize-props'\nimport { provideAvatarGroup, useAvatarGroupContext } from './context'\n\nexport const XhAvatarGroupRoot = defineComponent({\n name: 'XhAvatarGroupRoot',\n // 有 connect 兜底的 prop 一律 default: undefined\n props: {\n max: { type: Number, default: undefined },\n size: { type: String as PropType<Size>, default: undefined },\n },\n setup(props, { slots }) {\n const api = computed(() => connectAvatarGroup(props as AvatarGroupProps, vueNormalize))\n provideAvatarGroup({ api })\n return () => h('div', api.value.getRootProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhAvatarGroupOverflow = defineComponent({\n name: 'XhAvatarGroupOverflow',\n setup(_, { slots }) {\n const ctx = useAvatarGroupContext()\n // 「+N」的文本由作者写进插槽\n return () => h('span', ctx.api.value.getOverflowProps() as Record<string, unknown>, slots.default?.())\n },\n})\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"avatar-group.js","names":[],"sources":["../../../src/components/avatar-group/avatar-group.ts"],"sourcesContent":["import type { AvatarGroupProps } from '@xihan-ui/headless'\nimport type { Size } from '@xihan-ui/kernel'\nimport type { PropType } from 'vue'\nimport { connectAvatarGroup } from '@xihan-ui/headless'\nimport { computed, defineComponent, h } from 'vue'\nimport { withXhConfig } from '../../config/config'\nimport { vueNormalize } from '../../runtime/normalize-props'\nimport { provideAvatarGroup, useAvatarGroupContext } from './context'\n\nexport const XhAvatarGroupRoot = defineComponent({\n name: 'XhAvatarGroupRoot',\n // 有 connect 兜底的 prop 一律 default: undefined\n props: {\n max: { type: Number, default: undefined },\n size: { type: String as PropType<Size>, default: undefined },\n },\n setup(props, { slots }) {\n const api = computed(() => connectAvatarGroup(withXhConfig('avatar-group', props) as AvatarGroupProps, vueNormalize))\n provideAvatarGroup({ api })\n return () => h('div', api.value.getRootProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhAvatarGroupOverflow = defineComponent({\n name: 'XhAvatarGroupOverflow',\n setup(_, { slots }) {\n const ctx = useAvatarGroupContext()\n // 「+N」的文本由作者写进插槽\n return () => h('span', ctx.api.value.getOverflowProps() as Record<string, unknown>, slots.default?.())\n },\n})\n"],"mappings":";;;;;;AASA,MAAa,oBAAoB,gBAAgB;CAC/C,MAAM;CAEN,OAAO;EACL,KAAK;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EACxC,MAAM;GAAE,MAAM;GAA0B,SAAS,KAAA;EAAU;CAC7D;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,eAAe,mBAAmB,aAAa,gBAAgB,KAAK,GAAuB,YAAY,CAAC;EACpH,mBAAmB,EAAE,IAAI,CAAC;EAC1B,aAAa,EAAE,OAAO,IAAI,MAAM,aAAa,GAA8B,MAAM,UAAU,CAAC;CAC9F;AACF,CAAC;AAED,MAAa,wBAAwB,gBAAgB;CACnD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,sBAAsB;EAElC,aAAa,EAAE,QAAQ,IAAI,IAAI,MAAM,iBAAiB,GAA8B,MAAM,UAAU,CAAC;CACvG;AACF,CAAC"}
|
|
@@ -66,9 +66,9 @@ declare const XhBackTopRoot: import("vue").DefineComponent<import("vue").Extract
|
|
|
66
66
|
}>> & Readonly<{
|
|
67
67
|
"onVisible-change"?: ((_details: import("@xihan-ui/headless").BackTopVisibleChangeDetails) => any) | undefined;
|
|
68
68
|
}>, {
|
|
69
|
-
tone: Tone;
|
|
70
|
-
size: Size;
|
|
71
69
|
target: HTMLElement | null;
|
|
70
|
+
size: Size;
|
|
71
|
+
tone: Tone;
|
|
72
72
|
translations: Partial<BackTopTranslations>;
|
|
73
73
|
visibilityHeight: number;
|
|
74
74
|
behavior: BackTopBehavior;
|
|
@@ -6,13 +6,69 @@ declare const XhBadge: import("vue").DefineComponent<import("vue").ExtractPropTy
|
|
|
6
6
|
variant: PropType<BadgeVariant>;
|
|
7
7
|
tone: PropType<Tone>;
|
|
8
8
|
size: PropType<Size>;
|
|
9
|
+
/** 计数:给了它徽标就自己出数字,超过 max 写成「max+」。 */
|
|
10
|
+
count: {
|
|
11
|
+
type: NumberConstructor;
|
|
12
|
+
default: undefined;
|
|
13
|
+
};
|
|
14
|
+
/** 计数上限,默认 99。 */
|
|
15
|
+
max: {
|
|
16
|
+
type: NumberConstructor;
|
|
17
|
+
default: undefined;
|
|
18
|
+
};
|
|
19
|
+
/** 计数为 0 时是否照样显示,默认不显示。 */
|
|
20
|
+
showZero: {
|
|
21
|
+
type: BooleanConstructor;
|
|
22
|
+
default: undefined;
|
|
23
|
+
};
|
|
24
|
+
/** 只出一个点,不出数字。 */
|
|
25
|
+
dot: {
|
|
26
|
+
type: BooleanConstructor;
|
|
27
|
+
default: undefined;
|
|
28
|
+
};
|
|
29
|
+
/** 读屏怎么念这枚徽标,例如「3 条未读」。 */
|
|
30
|
+
label: {
|
|
31
|
+
type: StringConstructor;
|
|
32
|
+
default: undefined;
|
|
33
|
+
};
|
|
9
34
|
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
10
35
|
[key: string]: any;
|
|
11
36
|
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
12
37
|
variant: PropType<BadgeVariant>;
|
|
13
38
|
tone: PropType<Tone>;
|
|
14
39
|
size: PropType<Size>;
|
|
15
|
-
|
|
40
|
+
/** 计数:给了它徽标就自己出数字,超过 max 写成「max+」。 */
|
|
41
|
+
count: {
|
|
42
|
+
type: NumberConstructor;
|
|
43
|
+
default: undefined;
|
|
44
|
+
};
|
|
45
|
+
/** 计数上限,默认 99。 */
|
|
46
|
+
max: {
|
|
47
|
+
type: NumberConstructor;
|
|
48
|
+
default: undefined;
|
|
49
|
+
};
|
|
50
|
+
/** 计数为 0 时是否照样显示,默认不显示。 */
|
|
51
|
+
showZero: {
|
|
52
|
+
type: BooleanConstructor;
|
|
53
|
+
default: undefined;
|
|
54
|
+
};
|
|
55
|
+
/** 只出一个点,不出数字。 */
|
|
56
|
+
dot: {
|
|
57
|
+
type: BooleanConstructor;
|
|
58
|
+
default: undefined;
|
|
59
|
+
};
|
|
60
|
+
/** 读屏怎么念这枚徽标,例如「3 条未读」。 */
|
|
61
|
+
label: {
|
|
62
|
+
type: StringConstructor;
|
|
63
|
+
default: undefined;
|
|
64
|
+
};
|
|
65
|
+
}>> & Readonly<{}>, {
|
|
66
|
+
label: string;
|
|
67
|
+
max: number;
|
|
68
|
+
count: number;
|
|
69
|
+
showZero: boolean;
|
|
70
|
+
dot: boolean;
|
|
71
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
16
72
|
//#endregion
|
|
17
73
|
export { XhBadge };
|
|
18
74
|
//# sourceMappingURL=badge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"badge.d.ts","names":[],"sources":["../../../src/components/badge/badge.ts"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"badge.d.ts","names":[],"sources":["../../../src/components/badge/badge.ts"],"mappings":";;;;cAQa,uBAAO,8BAAA;EAGG,SAAA,SAAS;EACZ,MAAA,SAAS;EACT,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAFN,SAAA,SAAS;EACZ,MAAA,SAAS;EACT,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCAqB3B"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { vueNormalize } from "../../runtime/normalize-props.js";
|
|
2
|
+
import { withXhConfig } from "../../config/config.js";
|
|
2
3
|
import { defineComponent, h } from "vue";
|
|
3
4
|
import { connectBadge } from "@xihan-ui/headless";
|
|
4
5
|
//#region src/components/badge/badge.ts
|
|
@@ -7,10 +8,39 @@ const XhBadge = defineComponent({
|
|
|
7
8
|
props: {
|
|
8
9
|
variant: String,
|
|
9
10
|
tone: String,
|
|
10
|
-
size: String
|
|
11
|
+
size: String,
|
|
12
|
+
/** 计数:给了它徽标就自己出数字,超过 max 写成「max+」。 */
|
|
13
|
+
count: {
|
|
14
|
+
type: Number,
|
|
15
|
+
default: void 0
|
|
16
|
+
},
|
|
17
|
+
/** 计数上限,默认 99。 */
|
|
18
|
+
max: {
|
|
19
|
+
type: Number,
|
|
20
|
+
default: void 0
|
|
21
|
+
},
|
|
22
|
+
/** 计数为 0 时是否照样显示,默认不显示。 */
|
|
23
|
+
showZero: {
|
|
24
|
+
type: Boolean,
|
|
25
|
+
default: void 0
|
|
26
|
+
},
|
|
27
|
+
/** 只出一个点,不出数字。 */
|
|
28
|
+
dot: {
|
|
29
|
+
type: Boolean,
|
|
30
|
+
default: void 0
|
|
31
|
+
},
|
|
32
|
+
/** 读屏怎么念这枚徽标,例如「3 条未读」。 */
|
|
33
|
+
label: {
|
|
34
|
+
type: String,
|
|
35
|
+
default: void 0
|
|
36
|
+
}
|
|
11
37
|
},
|
|
12
38
|
setup(props, { slots }) {
|
|
13
|
-
|
|
39
|
+
const configured = withXhConfig("badge", props);
|
|
40
|
+
return () => {
|
|
41
|
+
const api = connectBadge(configured, vueNormalize);
|
|
42
|
+
return h("span", api.getRootProps(), slots.default?.() ?? api.text);
|
|
43
|
+
};
|
|
14
44
|
}
|
|
15
45
|
});
|
|
16
46
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"badge.js","names":[],"sources":["../../../src/components/badge/badge.ts"],"sourcesContent":["import type { BadgeProps, BadgeVariant } from '@xihan-ui/headless'\nimport type { Size, Tone } from '@xihan-ui/kernel'\nimport type { PropType } from 'vue'\nimport { connectBadge } from '@xihan-ui/headless'\nimport { defineComponent, h } from 'vue'\nimport { vueNormalize } from '../../runtime/normalize-props'\n\nexport const XhBadge = defineComponent({\n name: 'XhBadge',\n props: {\n variant: String as PropType<BadgeVariant>,\n tone: String as PropType<Tone>,\n size: String as PropType<Size>,\n },\n setup(props, { slots }) {\n
|
|
1
|
+
{"version":3,"file":"badge.js","names":[],"sources":["../../../src/components/badge/badge.ts"],"sourcesContent":["import type { BadgeProps, BadgeVariant } from '@xihan-ui/headless'\nimport type { Size, Tone } from '@xihan-ui/kernel'\nimport type { PropType } from 'vue'\nimport { connectBadge } from '@xihan-ui/headless'\nimport { defineComponent, h } from 'vue'\nimport { withXhConfig } from '../../config/config'\nimport { vueNormalize } from '../../runtime/normalize-props'\n\nexport const XhBadge = defineComponent({\n name: 'XhBadge',\n props: {\n variant: String as PropType<BadgeVariant>,\n tone: String as PropType<Tone>,\n size: String as PropType<Size>,\n /** 计数:给了它徽标就自己出数字,超过 max 写成「max+」。 */\n count: { type: Number, default: undefined },\n /** 计数上限,默认 99。 */\n max: { type: Number, default: undefined },\n /** 计数为 0 时是否照样显示,默认不显示。 */\n showZero: { type: Boolean, default: undefined },\n /** 只出一个点,不出数字。 */\n dot: { type: Boolean, default: undefined },\n /** 读屏怎么念这枚徽标,例如「3 条未读」。 */\n label: { type: String, default: undefined },\n },\n setup(props, { slots }) {\n // withXhConfig 只能在 setup 期调,连接层在渲染期读这份代理\n const configured = withXhConfig('badge', props)\n return () => {\n const api = connectBadge(configured as BadgeProps, vueNormalize)\n // 插槽有内容就以它为准,没有才用算好的计数文本\n return h('span', api.getRootProps() as Record<string, unknown>, slots.default?.() ?? api.text)\n }\n },\n})\n"],"mappings":";;;;;AAQA,MAAa,UAAU,gBAAgB;CACrC,MAAM;CACN,OAAO;EACL,SAAS;EACT,MAAM;EACN,MAAM;;EAEN,OAAO;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;;EAE1C,KAAK;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;;EAExC,UAAU;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;;EAE9C,KAAK;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;;EAEzC,OAAO;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;CAC5C;CACA,MAAM,OAAO,EAAE,SAAS;EAEtB,MAAM,aAAa,aAAa,SAAS,KAAK;EAC9C,aAAa;GACX,MAAM,MAAM,aAAa,YAA0B,YAAY;GAE/D,OAAO,EAAE,QAAQ,IAAI,aAAa,GAA8B,MAAM,UAAU,KAAK,IAAI,IAAI;EAC/F;CACF;AACF,CAAC"}
|
|
@@ -40,9 +40,9 @@ declare const XhBreadcrumbRoot: import("vue").DefineComponent<import("vue").Extr
|
|
|
40
40
|
default: undefined;
|
|
41
41
|
};
|
|
42
42
|
}>> & Readonly<{}>, {
|
|
43
|
+
size: Size;
|
|
43
44
|
dir: Direction;
|
|
44
45
|
tone: Tone;
|
|
45
|
-
size: Size;
|
|
46
46
|
translations: Partial<BreadcrumbTranslations>;
|
|
47
47
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
48
48
|
declare const XhBreadcrumbList: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
@@ -38,9 +38,9 @@ declare const XhButtonGroup: import("vue").DefineComponent<import("vue").Extract
|
|
|
38
38
|
default: undefined;
|
|
39
39
|
};
|
|
40
40
|
}>> & Readonly<{}>, {
|
|
41
|
+
size: Size;
|
|
41
42
|
orientation: "horizontal" | "vertical";
|
|
42
43
|
tone: Tone;
|
|
43
|
-
size: Size;
|
|
44
44
|
variant: ActionVariant;
|
|
45
45
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
46
46
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button-group.d.ts","names":[],"sources":["../../../src/components/button-group/button-group.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"button-group.d.ts","names":[],"sources":["../../../src/components/button-group/button-group.ts"],"mappings":";;;cAQa,6BAAa,8BAAA;;IAIS,MAAA;;;;IACJ,MAAA,SAAS;;;;IACZ,MAAA,SAAS;;;;IACT,MAAA,SAAS;;;;;;;IAHF,MAAA;;;;IACJ,MAAA,SAAS;;;;IACZ,MAAA,SAAS;;;;IACT,MAAA,SAAS;;;;;;;;qCAUnC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { vueNormalize } from "../../runtime/normalize-props.js";
|
|
2
|
+
import { withXhConfig } from "../../config/config.js";
|
|
2
3
|
import { defineComponent, h } from "vue";
|
|
3
4
|
import { connectButtonGroup } from "@xihan-ui/headless";
|
|
4
5
|
//#region src/components/button-group/button-group.ts
|
|
@@ -23,7 +24,7 @@ const XhButtonGroup = defineComponent({
|
|
|
23
24
|
}
|
|
24
25
|
},
|
|
25
26
|
setup(props, { slots }) {
|
|
26
|
-
return () => h("div", connectButtonGroup(props, vueNormalize).getRootProps(), slots.default?.());
|
|
27
|
+
return () => h("div", connectButtonGroup(withXhConfig("button-group", props), vueNormalize).getRootProps(), slots.default?.());
|
|
27
28
|
}
|
|
28
29
|
});
|
|
29
30
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button-group.js","names":[],"sources":["../../../src/components/button-group/button-group.ts"],"sourcesContent":["import type { ButtonGroupProps } from '@xihan-ui/headless'\nimport type { ActionVariant, Size, Tone } from '@xihan-ui/kernel'\nimport type { PropType } from 'vue'\nimport { connectButtonGroup } from '@xihan-ui/headless'\nimport { defineComponent, h } from 'vue'\nimport { vueNormalize } from '../../runtime/normalize-props'\n\nexport const XhButtonGroup = defineComponent({\n name: 'XhButtonGroup',\n // 有 connect 兜底的 prop 一律 default: undefined\n props: {\n orientation: { type: String as PropType<'horizontal' | 'vertical'>, default: undefined },\n variant: { type: String as PropType<ActionVariant>, default: undefined },\n tone: { type: String as PropType<Tone>, default: undefined },\n size: { type: String as PropType<Size>, default: undefined },\n },\n setup(props, { slots }) {\n // 组内每一段是作者放进插槽的按钮,直接当直接子节点摆\n return () => h(\n 'div',\n connectButtonGroup(props as ButtonGroupProps, vueNormalize).getRootProps() as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"button-group.js","names":[],"sources":["../../../src/components/button-group/button-group.ts"],"sourcesContent":["import type { ButtonGroupProps } from '@xihan-ui/headless'\nimport type { ActionVariant, Size, Tone } from '@xihan-ui/kernel'\nimport type { PropType } from 'vue'\nimport { connectButtonGroup } from '@xihan-ui/headless'\nimport { defineComponent, h } from 'vue'\nimport { withXhConfig } from '../../config/config'\nimport { vueNormalize } from '../../runtime/normalize-props'\n\nexport const XhButtonGroup = defineComponent({\n name: 'XhButtonGroup',\n // 有 connect 兜底的 prop 一律 default: undefined\n props: {\n orientation: { type: String as PropType<'horizontal' | 'vertical'>, default: undefined },\n variant: { type: String as PropType<ActionVariant>, default: undefined },\n tone: { type: String as PropType<Tone>, default: undefined },\n size: { type: String as PropType<Size>, default: undefined },\n },\n setup(props, { slots }) {\n // 组内每一段是作者放进插槽的按钮,直接当直接子节点摆\n return () => h(\n 'div',\n connectButtonGroup(withXhConfig('button-group', props) as ButtonGroupProps, vueNormalize).getRootProps() as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n"],"mappings":";;;;;AAQA,MAAa,gBAAgB,gBAAgB;CAC3C,MAAM;CAEN,OAAO;EACL,aAAa;GAAE,MAAM;GAA+C,SAAS,KAAA;EAAU;EACvF,SAAS;GAAE,MAAM;GAAmC,SAAS,KAAA;EAAU;EACvE,MAAM;GAAE,MAAM;GAA0B,SAAS,KAAA;EAAU;EAC3D,MAAM;GAAE,MAAM;GAA0B,SAAS,KAAA;EAAU;CAC7D;CACA,MAAM,OAAO,EAAE,SAAS;EAEtB,aAAa,EACX,OACA,mBAAmB,aAAa,gBAAgB,KAAK,GAAuB,YAAY,CAAC,CAAC,aAAa,GACvG,MAAM,UAAU,CAClB;CACF;AACF,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PropType } from "vue";
|
|
2
|
+
import { ButtonProps } from "@xihan-ui/headless";
|
|
2
3
|
//#region src/components/button.d.ts
|
|
3
4
|
declare const XhButton: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
4
5
|
type: {
|
|
@@ -7,9 +8,11 @@ declare const XhButton: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
7
8
|
};
|
|
8
9
|
disabled: BooleanConstructor;
|
|
9
10
|
loading: BooleanConstructor;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
iconOnly: BooleanConstructor;
|
|
12
|
+
fullWidth: BooleanConstructor;
|
|
13
|
+
variant: PropType<ButtonProps["variant"]>;
|
|
14
|
+
tone: PropType<ButtonProps["tone"]>;
|
|
15
|
+
size: PropType<ButtonProps["size"]>;
|
|
13
16
|
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
14
17
|
[key: string]: any;
|
|
15
18
|
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
@@ -19,13 +22,17 @@ declare const XhButton: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
19
22
|
};
|
|
20
23
|
disabled: BooleanConstructor;
|
|
21
24
|
loading: BooleanConstructor;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
+
iconOnly: BooleanConstructor;
|
|
26
|
+
fullWidth: BooleanConstructor;
|
|
27
|
+
variant: PropType<ButtonProps["variant"]>;
|
|
28
|
+
tone: PropType<ButtonProps["tone"]>;
|
|
29
|
+
size: PropType<ButtonProps["size"]>;
|
|
25
30
|
}>> & Readonly<{}>, {
|
|
26
31
|
type: "reset" | "submit" | "button";
|
|
27
32
|
disabled: boolean;
|
|
28
33
|
loading: boolean;
|
|
34
|
+
iconOnly: boolean;
|
|
35
|
+
fullWidth: boolean;
|
|
29
36
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
30
37
|
declare const XhButtonLabel: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
31
38
|
[key: string]: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.d.ts","names":[],"sources":["../../src/components/button.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"button.d.ts","names":[],"sources":["../../src/components/button.ts"],"mappings":";;;cAoBa,wBAAQ,8BAAA;;IAGO,MAAA;;;;;;;EAKL,SAAA,SAAS;EACZ,MAAA,SAAS;EACT,MAAA,SAAS;;;;;IAPD,MAAA;;;;;;;EAKL,SAAA,SAAS;EACZ,MAAA,SAAS;EACT,MAAA,SAAS;;;;;;;qCAe3B;cAEW,6BAAa,wCAAA,oBAAA,4BAAA;;8BAMxB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,8BAAc,wCAAA,oBAAA,4BAAA;;8BAMzB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,8BAAc,wCAAA,oBAAA,4BAAA;;8BAMzB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;;cAGW,iCAAiB,wCAAA,oBAAA,4BAAA;;8BAM5B,qCAAA,iDAAA,aAAA,eAAA,oDAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { vueNormalize } from "../runtime/normalize-props.js";
|
|
2
|
-
import {
|
|
2
|
+
import { withXhConfig } from "../config/config.js";
|
|
3
|
+
import { computed, defineComponent, h, inject, provide, useAttrs } from "vue";
|
|
3
4
|
import { connectButton } from "@xihan-ui/headless";
|
|
4
5
|
//#region src/components/button.ts
|
|
5
6
|
const ButtonKey = Symbol("XhButton");
|
|
@@ -17,12 +18,20 @@ const XhButton = defineComponent({
|
|
|
17
18
|
},
|
|
18
19
|
disabled: Boolean,
|
|
19
20
|
loading: Boolean,
|
|
21
|
+
iconOnly: Boolean,
|
|
22
|
+
fullWidth: Boolean,
|
|
20
23
|
variant: String,
|
|
21
24
|
tone: String,
|
|
22
25
|
size: String
|
|
23
26
|
},
|
|
24
27
|
setup(props, { slots }) {
|
|
25
|
-
const
|
|
28
|
+
const attrs = useAttrs();
|
|
29
|
+
const configured = withXhConfig("button", props);
|
|
30
|
+
const api = computed(() => connectButton({
|
|
31
|
+
...configured,
|
|
32
|
+
ariaLabel: attrs["aria-label"],
|
|
33
|
+
ariaLabelledby: attrs["aria-labelledby"]
|
|
34
|
+
}, vueNormalize));
|
|
26
35
|
provide(ButtonKey, api);
|
|
27
36
|
return () => h("button", api.value.getRootProps(), slots.default?.());
|
|
28
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.js","names":[],"sources":["../../src/components/button.ts"],"sourcesContent":["import type { ButtonProps } from '@xihan-ui/headless'\nimport type { PropTypes } from '@xihan-ui/kernel'\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport { connectButton } from '@xihan-ui/headless'\nimport { computed, defineComponent, h, inject, provide } from 'vue'\nimport { vueNormalize } from '../runtime/normalize-props'\n\n/** 从实际调用推出 api 形状,免得再写一遍 normalize 的类型参数。 */\ntype VueButtonApi = ReturnType<typeof connectButton<PropTypes>>\n\nconst ButtonKey: InjectionKey<Ref<VueButtonApi>> = Symbol('XhButton')\n\nfunction useButtonApi(): Ref<VueButtonApi> {\n const api = inject(ButtonKey, null)\n if (!api)\n throw new Error('[xh] XhButton 的子部件必须放在 XhButton 里')\n return api\n}\n\nexport const XhButton = defineComponent({\n name: 'XhButton',\n props: {\n type: { type: String as PropType<'button' | 'submit' | 'reset'>, default: 'button' },\n disabled: Boolean,\n loading: Boolean,\n variant: String
|
|
1
|
+
{"version":3,"file":"button.js","names":[],"sources":["../../src/components/button.ts"],"sourcesContent":["import type { ButtonProps } from '@xihan-ui/headless'\nimport type { PropTypes } from '@xihan-ui/kernel'\nimport type { InjectionKey, PropType, Ref } from 'vue'\nimport { connectButton } from '@xihan-ui/headless'\nimport { computed, defineComponent, h, inject, provide, useAttrs } from 'vue'\nimport { withXhConfig } from '../config/config'\nimport { vueNormalize } from '../runtime/normalize-props'\n\n/** 从实际调用推出 api 形状,免得再写一遍 normalize 的类型参数。 */\ntype VueButtonApi = ReturnType<typeof connectButton<PropTypes>>\n\nconst ButtonKey: InjectionKey<Ref<VueButtonApi>> = Symbol('XhButton')\n\nfunction useButtonApi(): Ref<VueButtonApi> {\n const api = inject(ButtonKey, null)\n if (!api)\n throw new Error('[xh] XhButton 的子部件必须放在 XhButton 里')\n return api\n}\n\nexport const XhButton = defineComponent({\n name: 'XhButton',\n props: {\n type: { type: String as PropType<'button' | 'submit' | 'reset'>, default: 'button' },\n disabled: Boolean,\n loading: Boolean,\n iconOnly: Boolean,\n fullWidth: Boolean,\n variant: String as PropType<ButtonProps['variant']>,\n tone: String as PropType<ButtonProps['tone']>,\n size: String as PropType<ButtonProps['size']>,\n },\n setup(props, { slots }) {\n const attrs = useAttrs()\n // withXhConfig 只能在 setup 期调,连接层在渲染期读这份代理\n const configured = withXhConfig('button', props as ButtonProps)\n // 作者写在根节点上的可及名转告连接层,图标按钮缺名时由它提醒\n const api = computed(() => connectButton({\n ...configured,\n ariaLabel: attrs['aria-label'] as string | undefined,\n ariaLabelledby: attrs['aria-labelledby'] as string | undefined,\n }, vueNormalize))\n provide(ButtonKey, api)\n return () => h('button', api.value.getRootProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhButtonLabel = defineComponent({\n name: 'XhButtonLabel',\n setup(_, { slots }) {\n const api = useButtonApi()\n return () => h('span', api.value.getLabelProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhButtonPrefix = defineComponent({\n name: 'XhButtonPrefix',\n setup(_, { slots }) {\n const api = useButtonApi()\n return () => h('span', api.value.getPrefixProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhButtonSuffix = defineComponent({\n name: 'XhButtonSuffix',\n setup(_, { slots }) {\n const api = useButtonApi()\n return () => h('span', api.value.getSuffixProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\n/** 载入态的转圈标记;皮肤给它挂了旋转动画,作者只需摆位置。 */\nexport const XhButtonIndicator = defineComponent({\n name: 'XhButtonIndicator',\n setup(_, { slots }) {\n const api = useButtonApi()\n return () => h('span', api.value.getIndicatorProps() as Record<string, unknown>, slots.default?.())\n },\n})\n"],"mappings":";;;;;AAWA,MAAM,YAA6C,OAAO,UAAU;AAEpE,SAAS,eAAkC;CACzC,MAAM,MAAM,OAAO,WAAW,IAAI;CAClC,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,mCAAmC;CACrD,OAAO;AACT;AAEA,MAAa,WAAW,gBAAgB;CACtC,MAAM;CACN,OAAO;EACL,MAAM;GAAE,MAAM;GAAmD,SAAS;EAAS;EACnF,UAAU;EACV,SAAS;EACT,UAAU;EACV,WAAW;EACX,SAAS;EACT,MAAM;EACN,MAAM;CACR;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,QAAQ,SAAS;EAEvB,MAAM,aAAa,aAAa,UAAU,KAAoB;EAE9D,MAAM,MAAM,eAAe,cAAc;GACvC,GAAG;GACH,WAAW,MAAM;GACjB,gBAAgB,MAAM;EACxB,GAAG,YAAY,CAAC;EAChB,QAAQ,WAAW,GAAG;EACtB,aAAa,EAAE,UAAU,IAAI,MAAM,aAAa,GAA8B,MAAM,UAAU,CAAC;CACjG;AACF,CAAC;AAED,MAAa,gBAAgB,gBAAgB;CAC3C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,aAAa;EACzB,aAAa,EAAE,QAAQ,IAAI,MAAM,cAAc,GAA8B,MAAM,UAAU,CAAC;CAChG;AACF,CAAC;AAED,MAAa,iBAAiB,gBAAgB;CAC5C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,aAAa;EACzB,aAAa,EAAE,QAAQ,IAAI,MAAM,eAAe,GAA8B,MAAM,UAAU,CAAC;CACjG;AACF,CAAC;AAED,MAAa,iBAAiB,gBAAgB;CAC5C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,aAAa;EACzB,aAAa,EAAE,QAAQ,IAAI,MAAM,eAAe,GAA8B,MAAM,UAAU,CAAC;CACjG;AACF,CAAC;;AAGD,MAAa,oBAAoB,gBAAgB;CAC/C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,aAAa;EACzB,aAAa,EAAE,QAAQ,IAAI,MAAM,kBAAkB,GAA8B,MAAM,UAAU,CAAC;CACpG;AACF,CAAC"}
|