@xihan-ui/vue 1.0.0-alpha.2 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2615 -0
- package/README.md +1 -1
- package/dist/backgrounds.d.ts.map +1 -1
- package/dist/backgrounds.js +1 -5
- package/dist/backgrounds.js.map +1 -1
- package/dist/behavior.d.ts +38 -0
- package/dist/behavior.d.ts.map +1 -0
- package/dist/behavior.js +74 -0
- package/dist/behavior.js.map +1 -0
- 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/context.js +2 -2
- package/dist/components/accordion/context.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/affix/context.js +1 -1
- package/dist/components/affix/context.js.map +1 -1
- package/dist/components/alert/context.js +1 -1
- package/dist/components/alert/context.js.map +1 -1
- package/dist/components/anchor/anchor.d.ts +1 -1
- package/dist/components/anchor/context.js +1 -1
- package/dist/components/anchor/context.js.map +1 -1
- package/dist/components/avatar/context.js +1 -1
- package/dist/components/avatar/context.js.map +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/avatar-group/context.js +1 -1
- package/dist/components/avatar-group/context.js.map +1 -1
- package/dist/components/back-top/back-top.d.ts +1 -1
- package/dist/components/back-top/context.js +1 -1
- package/dist/components/back-top/context.js.map +1 -1
- package/dist/components/badge/badge.d.ts +159 -11
- package/dist/components/badge/badge.d.ts.map +1 -1
- package/dist/components/badge/badge.js +68 -8
- package/dist/components/badge/badge.js.map +1 -1
- package/dist/components/badge/context.js +15 -0
- package/dist/components/badge/context.js.map +1 -0
- package/dist/components/breadcrumb/context.js +1 -1
- package/dist/components/breadcrumb/context.js.map +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/context.js +2 -2
- package/dist/components/calendar/context.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/card/context.js +1 -1
- package/dist/components/card/context.js.map +1 -1
- package/dist/components/carousel/context.js +1 -1
- package/dist/components/carousel/context.js.map +1 -1
- package/dist/components/cascader/cascader.d.ts +7 -4
- package/dist/components/cascader/cascader.d.ts.map +1 -1
- package/dist/components/cascader/cascader.js +28 -9
- package/dist/components/cascader/cascader.js.map +1 -1
- package/dist/components/cascader/context.js +2 -2
- package/dist/components/cascader/context.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 +15 -4
- 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/checkbox-group/context.js +2 -2
- package/dist/components/checkbox-group/context.js.map +1 -1
- package/dist/components/clipboard/context.js +1 -1
- package/dist/components/clipboard/context.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/context.js +1 -1
- package/dist/components/collapsible/context.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 +16 -4
- package/dist/components/color-picker/color-picker.d.ts.map +1 -1
- package/dist/components/color-picker/color-picker.js +21 -6
- package/dist/components/color-picker/color-picker.js.map +1 -1
- package/dist/components/color-picker/context.js +2 -2
- package/dist/components/color-picker/context.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 +14 -3
- 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 +26 -12
- package/dist/components/combobox/combobox.js.map +1 -1
- package/dist/components/combobox/context.js +3 -3
- package/dist/components/combobox/context.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 +15 -4
- package/dist/components/combobox/use-combobox.js.map +1 -1
- package/dist/components/composer/context.js +1 -1
- package/dist/components/composer/context.js.map +1 -1
- package/dist/components/context-menu/context-menu.d.ts +45 -4
- package/dist/components/context-menu/context-menu.d.ts.map +1 -1
- package/dist/components/context-menu/context-menu.js +63 -17
- package/dist/components/context-menu/context-menu.js.map +1 -1
- package/dist/components/context-menu/context.js +5 -5
- package/dist/components/context-menu/context.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 +15 -4
- package/dist/components/context-menu/use-context-menu.js.map +1 -1
- package/dist/components/date-field/context.js +1 -1
- package/dist/components/date-field/context.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 +17 -8
- package/dist/components/date-picker/context.js.map +1 -1
- package/dist/components/date-picker/date-picker.d.ts +291 -16
- package/dist/components/date-picker/date-picker.d.ts.map +1 -1
- package/dist/components/date-picker/date-picker.js +248 -36
- 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 +15 -4
- package/dist/components/date-picker/use-date-picker.js.map +1 -1
- package/dist/components/descriptions/context.js +1 -1
- package/dist/components/descriptions/context.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/context.js +1 -1
- package/dist/components/dialog/context.js.map +1 -1
- package/dist/components/dialog/dialog.d.ts +20 -3
- 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/context.js +1 -1
- package/dist/components/drawer/context.js.map +1 -1
- package/dist/components/drawer/drawer.d.ts +52 -4
- 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/context.js +2 -2
- package/dist/components/dynamic-input/context.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/editable/context.js +1 -1
- package/dist/components/editable/context.js.map +1 -1
- package/dist/components/ellipsis/ellipsis.d.ts +1 -1
- package/dist/components/empty-state/context.js +1 -1
- package/dist/components/empty-state/context.js.map +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/context.d.ts +9 -0
- package/dist/components/field/context.d.ts.map +1 -0
- package/dist/components/field/context.js +6 -2
- package/dist/components/field/context.js.map +1 -1
- package/dist/components/field/field.d.ts +35 -2
- package/dist/components/field/field.d.ts.map +1 -1
- package/dist/components/field/field.js +31 -4
- package/dist/components/field/field.js.map +1 -1
- package/dist/components/field/use-field-control.d.ts +41 -0
- package/dist/components/field/use-field-control.d.ts.map +1 -0
- package/dist/components/field/use-field-control.js +77 -0
- package/dist/components/field/use-field-control.js.map +1 -0
- 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/context.js +2 -2
- package/dist/components/file-upload/context.js.map +1 -1
- 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 +10 -1
- package/dist/components/flex/flex.d.ts.map +1 -1
- package/dist/components/flex/flex.js +4 -0
- package/dist/components/flex/flex.js.map +1 -1
- package/dist/components/float-button/context.js +1 -1
- package/dist/components/float-button/context.js.map +1 -1
- package/dist/components/float-button/float-button.d.ts +2 -2
- 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/context.js +2 -2
- package/dist/components/form/context.js.map +1 -1
- package/dist/components/form/form.d.ts +1 -1
- package/dist/components/grid/context.js +1 -1
- package/dist/components/grid/context.js.map +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 +89 -0
- package/dist/components/hotkeys/hotkeys.d.ts.map +1 -0
- package/dist/components/hotkeys/hotkeys.js +83 -0
- package/dist/components/hotkeys/hotkeys.js.map +1 -0
- package/dist/components/hotkeys/use-hotkeys.d.ts +31 -0
- package/dist/components/hotkeys/use-hotkeys.d.ts.map +1 -0
- package/dist/components/hotkeys/use-hotkeys.js +60 -0
- package/dist/components/hotkeys/use-hotkeys.js.map +1 -0
- package/dist/components/hover-card/context.js +1 -1
- package/dist/components/hover-card/context.js.map +1 -1
- 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 +27 -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 +15 -4
- package/dist/components/hover-card/use-hover-card.js.map +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.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/context.js +1 -1
- package/dist/components/image/context.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/context.js +1 -1
- package/dist/components/image-viewer/context.js.map +1 -1
- package/dist/components/image-viewer/image-viewer.d.ts +13 -5
- 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/context.js +1 -1
- package/dist/components/infinite-scroll/context.js.map +1 -1
- package/dist/components/json-viewer/json-viewer.d.ts +129 -0
- package/dist/components/json-viewer/json-viewer.d.ts.map +1 -0
- package/dist/components/json-viewer/json-viewer.js +132 -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/layout/context.js +1 -1
- package/dist/components/layout/context.js.map +1 -1
- package/dist/components/list/context.js +1 -1
- package/dist/components/list/context.js.map +1 -1
- package/dist/components/list/list.d.ts +1 -1
- 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/listbox/context.js +3 -3
- package/dist/components/listbox/context.js.map +1 -1
- package/dist/components/loading-bar/context.js +1 -1
- package/dist/components/loading-bar/context.js.map +1 -1
- package/dist/components/log/context.js +1 -1
- package/dist/components/log/context.js.map +1 -1
- package/dist/components/marquee/context.js +1 -1
- package/dist/components/marquee/context.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/context.js +2 -2
- package/dist/components/mention/context.js.map +1 -1
- 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 +18 -8
- 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 +14 -3
- 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 +13 -4
- 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 +80 -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 +15 -4
- 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 +23 -5
- package/dist/components/menubar/context.js.map +1 -1
- package/dist/components/menubar/menubar.d.ts +128 -1
- 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/context.js +1 -1
- package/dist/components/navigation-menu/context.js.map +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/notification/context.d.ts +23 -0
- package/dist/components/notification/context.d.ts.map +1 -0
- package/dist/components/notification/context.js +28 -0
- package/dist/components/notification/context.js.map +1 -0
- package/dist/components/notification/notification.d.ts +249 -0
- package/dist/components/notification/notification.d.ts.map +1 -0
- package/dist/components/notification/notification.js +179 -0
- package/dist/components/notification/notification.js.map +1 -0
- package/dist/components/notification/use-notification.d.ts +14 -0
- package/dist/components/notification/use-notification.d.ts.map +1 -0
- package/dist/components/notification/use-notification.js +42 -0
- package/dist/components/notification/use-notification.js.map +1 -0
- package/dist/components/number-animation/number-animation.d.ts +1 -1
- package/dist/components/number-field/context.js +1 -1
- package/dist/components/number-field/context.js.map +1 -1
- 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 +23 -2
- package/dist/components/number-field/number-field.js.map +1 -1
- package/dist/components/page-header/context.js +1 -1
- package/dist/components/page-header/context.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/context.js +1 -1
- package/dist/components/pagination/context.js.map +1 -1
- package/dist/components/pagination/pagination.d.ts +58 -4
- package/dist/components/pagination/pagination.d.ts.map +1 -1
- package/dist/components/pagination/pagination.js +85 -5
- package/dist/components/pagination/pagination.js.map +1 -1
- package/dist/components/pagination/use-pagination.d.ts +12 -2
- package/dist/components/pagination/use-pagination.d.ts.map +1 -1
- package/dist/components/pagination/use-pagination.js +50 -5
- package/dist/components/pagination/use-pagination.js.map +1 -1
- 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 +147 -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/context.js +1 -1
- package/dist/components/pin-input/context.js.map +1 -1
- package/dist/components/pin-input/pin-input.d.ts +9 -0
- 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/context.js +1 -1
- package/dist/components/popconfirm/context.js.map +1 -1
- package/dist/components/popconfirm/popconfirm.d.ts +11 -3
- 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/context.js +1 -1
- package/dist/components/popover/context.js.map +1 -1
- package/dist/components/popover/popover.d.ts +12 -4
- package/dist/components/popover/popover.d.ts.map +1 -1
- package/dist/components/popover/popover.js +27 -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 +15 -4
- package/dist/components/popover/use-popover.js.map +1 -1
- package/dist/components/popselect/context.js +2 -2
- package/dist/components/popselect/context.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 +51 -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 +24 -12
- package/dist/components/popselect/use-popselect.js.map +1 -1
- package/dist/components/progress/progress.d.ts +5 -2
- 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/qr-code/context.js +1 -1
- package/dist/components/qr-code/context.js.map +1 -1
- package/dist/components/radio-group/context.js +2 -2
- package/dist/components/radio-group/context.js.map +1 -1
- package/dist/components/radio-group/radio-group.d.ts +9 -0
- 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/context.js +1 -1
- package/dist/components/rating/context.js.map +1 -1
- package/dist/components/result/context.js +1 -1
- package/dist/components/result/context.js.map +1 -1
- 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/context.js +2 -2
- package/dist/components/scroll-area/context.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 +3 -3
- package/dist/components/select/context.js.map +1 -1
- package/dist/components/select/select.d.ts +26 -4
- package/dist/components/select/select.d.ts.map +1 -1
- package/dist/components/select/select.js +45 -17
- 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/context.js +2 -2
- package/dist/components/side-nav/context.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/skeleton/context.js +1 -1
- package/dist/components/skeleton/context.js.map +1 -1
- package/dist/components/slider/context.js +2 -2
- package/dist/components/slider/context.js.map +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 +75 -0
- package/dist/components/space/space.d.ts.map +1 -0
- package/dist/components/space/space.js +91 -0
- package/dist/components/space/space.js.map +1 -0
- package/dist/components/spinner/context.js +1 -1
- package/dist/components/spinner/context.js.map +1 -1
- package/dist/components/splitter/context.js +1 -1
- package/dist/components/splitter/context.js.map +1 -1
- package/dist/components/splitter/splitter.d.ts +1 -1
- package/dist/components/statistic/context.js +1 -1
- package/dist/components/statistic/context.js.map +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/context.js +2 -2
- package/dist/components/steps/context.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/context.js +4 -4
- package/dist/components/table/context.js.map +1 -1
- package/dist/components/table/table.d.ts +70 -2
- package/dist/components/table/table.d.ts.map +1 -1
- package/dist/components/table/table.js +40 -1
- package/dist/components/table/table.js.map +1 -1
- package/dist/components/table/use-table.d.ts +1 -1
- package/dist/components/table/use-table.d.ts.map +1 -1
- package/dist/components/table/use-table.js +3 -2
- package/dist/components/table/use-table.js.map +1 -1
- package/dist/components/tabs/context.js +1 -1
- package/dist/components/tabs/context.js.map +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 +28 -0
- package/dist/components/tag/use-tag.js.map +1 -0
- package/dist/components/tags-input/context.js +2 -2
- package/dist/components/tags-input/context.js.map +1 -1
- package/dist/components/tags-input/tags-input.d.ts +2 -2
- package/dist/components/tags-input/tags-input.d.ts.map +1 -1
- package/dist/components/tags-input/tags-input.js +7 -1
- package/dist/components/tags-input/tags-input.js.map +1 -1
- package/dist/components/text-field/context.js +1 -1
- package/dist/components/text-field/context.js.map +1 -1
- package/dist/components/text-field/text-field.d.ts +24 -3
- package/dist/components/text-field/text-field.d.ts.map +1 -1
- package/dist/components/text-field/text-field.js +23 -4
- package/dist/components/text-field/text-field.js.map +1 -1
- package/dist/components/thread/context.d.ts +7 -0
- package/dist/components/thread/context.d.ts.map +1 -0
- package/dist/components/thread/context.js +1 -1
- package/dist/components/thread/context.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/context.js +1 -1
- package/dist/components/time-field/context.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/context.js +2 -2
- package/dist/components/time-picker/context.js.map +1 -1
- package/dist/components/time-picker/time-picker.d.ts +93 -6
- package/dist/components/time-picker/time-picker.d.ts.map +1 -1
- package/dist/components/time-picker/time-picker.js +89 -9
- package/dist/components/time-picker/time-picker.js.map +1 -1
- package/dist/components/time-picker/use-time-picker.d.ts +5 -0
- package/dist/components/time-picker/use-time-picker.d.ts.map +1 -1
- package/dist/components/time-picker/use-time-picker.js +17 -3
- package/dist/components/time-picker/use-time-picker.js.map +1 -1
- package/dist/components/timeline/context.js +2 -2
- package/dist/components/timeline/context.js.map +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/toast/context.js +1 -1
- package/dist/components/toast/context.js.map +1 -1
- package/dist/components/toast/toast.d.ts +3 -15
- package/dist/components/toast/toast.d.ts.map +1 -1
- package/dist/components/toast/toast.js +1 -12
- package/dist/components/toast/toast.js.map +1 -1
- package/dist/components/toast/use-toast.d.ts.map +1 -1
- package/dist/components/toast/use-toast.js +1 -7
- package/dist/components/toast/use-toast.js.map +1 -1
- package/dist/components/toggle-group/context.js +1 -1
- package/dist/components/toggle-group/context.js.map +1 -1
- package/dist/components/toggle-group/toggle-group.d.ts +10 -1
- package/dist/components/toggle-group/toggle-group.d.ts.map +1 -1
- package/dist/components/toggle-group/toggle-group.js +4 -0
- package/dist/components/toggle-group/toggle-group.js.map +1 -1
- package/dist/components/toolbar/context.js +1 -1
- package/dist/components/toolbar/context.js.map +1 -1
- package/dist/components/tooltip/context.js +1 -1
- package/dist/components/tooltip/context.js.map +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/context.js +1 -1
- package/dist/components/tour/context.js.map +1 -1
- package/dist/components/tour/tour.d.ts +3 -3
- 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/context.js +3 -3
- package/dist/components/transfer/context.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/context.js +2 -2
- package/dist/components/tree/context.js.map +1 -1
- package/dist/components/tree/tree.d.ts +36 -10
- package/dist/components/tree/tree.d.ts.map +1 -1
- package/dist/components/tree/tree.js +31 -6
- package/dist/components/tree/tree.js.map +1 -1
- package/dist/components/tree-select/context.js +2 -2
- package/dist/components/tree-select/context.js.map +1 -1
- package/dist/components/tree-select/tree-select.d.ts +23 -3
- package/dist/components/tree-select/tree-select.d.ts.map +1 -1
- package/dist/components/tree-select/tree-select.js +60 -12
- 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 +15 -4
- package/dist/components/tree-select/use-tree-select.js.map +1 -1
- package/dist/components/typography/context.js +1 -1
- package/dist/components/typography/context.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/components/virtualizer/context.js +1 -1
- package/dist/components/virtualizer/context.js.map +1 -1
- package/dist/components/watermark/context.js +1 -1
- package/dist/components/watermark/context.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 +42 -15
- package/dist/config/config.js.map +1 -1
- package/dist/index.d.ts +75 -29
- package/dist/index.js +74 -28
- 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/runtime/use-scrollbars.js +66 -0
- package/dist/runtime/use-scrollbars.js.map +1 -0
- package/dist/services/dialog-service.d.ts +43 -8
- package/dist/services/dialog-service.d.ts.map +1 -1
- package/dist/services/dialog-service.js +47 -20
- package/dist/services/dialog-service.js.map +1 -1
- package/dist/services/glyph.js +93 -20
- package/dist/services/glyph.js.map +1 -1
- package/dist/services/loading-bar-service.d.ts +46 -0
- package/dist/services/loading-bar-service.d.ts.map +1 -0
- package/dist/services/loading-bar-service.js +70 -0
- package/dist/services/loading-bar-service.js.map +1 -0
- package/dist/services/mount-host.js +35 -0
- package/dist/services/mount-host.js.map +1 -0
- package/dist/services/notification-service.d.ts +46 -0
- package/dist/services/notification-service.d.ts.map +1 -0
- package/dist/services/notification-service.js +91 -0
- package/dist/services/notification-service.js.map +1 -0
- package/dist/services/service-config.js +16 -0
- package/dist/services/service-config.js.map +1 -0
- package/dist/services/toast-service.d.ts +23 -9
- package/dist/services/toast-service.d.ts.map +1 -1
- package/dist/services/toast-service.js +103 -48
- package/dist/services/toast-service.js.map +1 -1
- package/package.json +18 -14
- package/dist/components/toaster/context.js +0 -19
- package/dist/components/toaster/context.js.map +0 -1
- package/dist/components/toaster/toaster.d.ts +0 -135
- package/dist/components/toaster/toaster.d.ts.map +0 -1
- package/dist/components/toaster/toaster.js +0 -91
- package/dist/components/toaster/toaster.js.map +0 -1
- package/dist/components/toaster/use-toaster.d.ts +0 -15
- package/dist/components/toaster/use-toaster.d.ts.map +0 -1
- package/dist/components/toaster/use-toaster.js +0 -23
- package/dist/components/toaster/use-toaster.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/splitter/context.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\nimport type { SplitterContext } from './use-splitter'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<SplitterContext> = Symbol('xh-splitter')\n\nexport function provideSplitter(ctx: SplitterContext): void {\n provide(KEY, ctx)\n}\n\nexport function useSplitterContext(): SplitterContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Splitter 部件必须用在 XhSplitterRoot 内')\n return ctx\n}\n"],"mappings":";;AAIA,MAAM,MAAqC,OAAO,aAAa;
|
|
1
|
+
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/splitter/context.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\nimport type { SplitterContext } from './use-splitter'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<SplitterContext> = Symbol.for('xh-splitter')\n\nexport function provideSplitter(ctx: SplitterContext): void {\n provide(KEY, ctx)\n}\n\nexport function useSplitterContext(): SplitterContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Splitter 部件必须用在 XhSplitterRoot 内')\n return ctx\n}\n"],"mappings":";;AAIA,MAAM,MAAqC,OAAO,IAAI,aAAa;AAEnE,SAAgB,gBAAgB,KAA4B;CAC1D,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,qBAAsC;CACpD,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,uCAAuC;CACzD,OAAO;AACT"}
|
|
@@ -89,11 +89,11 @@ declare const XhSplitterRoot: import("vue").DefineComponent<import("vue").Extrac
|
|
|
89
89
|
orientation: Orientation;
|
|
90
90
|
dir: Direction;
|
|
91
91
|
disabled: boolean;
|
|
92
|
+
panels: SplitterPanelProps[];
|
|
92
93
|
step: number;
|
|
93
94
|
largeStep: number;
|
|
94
95
|
sizes: number[];
|
|
95
96
|
defaultSizes: number[];
|
|
96
|
-
panels: SplitterPanelProps[];
|
|
97
97
|
}, SlotsType<{
|
|
98
98
|
default?: (props: SplitterRootSlotProps) => VNode[];
|
|
99
99
|
}>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/statistic/context.ts"],"sourcesContent":["import type { StatisticApi } from '@xihan-ui/headless'\nimport type { ComputedRef, InjectionKey } from 'vue'\nimport { inject, provide } from 'vue'\n\nexport interface StatisticContext {\n api: ComputedRef<StatisticApi>\n}\n\nconst KEY: InjectionKey<StatisticContext> = Symbol('xh-statistic')\n\nexport function provideStatistic(ctx: StatisticContext): void {\n provide(KEY, ctx)\n}\n\nexport function useStatisticContext(): StatisticContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Statistic 部件必须用在 XhStatisticRoot 内')\n return ctx\n}\n"],"mappings":";;AAQA,MAAM,MAAsC,OAAO,cAAc;
|
|
1
|
+
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/statistic/context.ts"],"sourcesContent":["import type { StatisticApi } from '@xihan-ui/headless'\nimport type { ComputedRef, InjectionKey } from 'vue'\nimport { inject, provide } from 'vue'\n\nexport interface StatisticContext {\n api: ComputedRef<StatisticApi>\n}\n\nconst KEY: InjectionKey<StatisticContext> = Symbol.for('xh-statistic')\n\nexport function provideStatistic(ctx: StatisticContext): void {\n provide(KEY, ctx)\n}\n\nexport function useStatisticContext(): StatisticContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Statistic 部件必须用在 XhStatisticRoot 内')\n return ctx\n}\n"],"mappings":";;AAQA,MAAM,MAAsC,OAAO,IAAI,cAAc;AAErE,SAAgB,iBAAiB,KAA6B;CAC5D,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,sBAAwC;CACtD,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,yCAAyC;CAC3D,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statistic.d.ts","names":[],"sources":["../../../src/components/statistic/statistic.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"statistic.d.ts","names":[],"sources":["../../../src/components/statistic/statistic.ts"],"mappings":";;;cASa,+BAAe,8BAAA;;IAIA,MAAA,SAAS;;;;IACT,MAAA,SAAS;;;;;;;IADT,MAAA,SAAS;;;;IACT,MAAA,SAAS;;;;;;qCAOnC;cAGW,gCAAgB,wCAAA,oBAAA,4BAAA;;8BAM3B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAGW,gCAAgB,wCAAA,oBAAA,4BAAA;;8BAM3B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,iCAAiB,wCAAA,oBAAA,4BAAA;;8BAM5B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,iCAAiB,wCAAA,oBAAA,4BAAA;;8BAM5B,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 { provideStatistic, useStatisticContext } from "./context.js";
|
|
3
4
|
import { computed, defineComponent, h } from "vue";
|
|
4
5
|
import { connectStatistic } from "@xihan-ui/headless";
|
|
@@ -16,7 +17,7 @@ const XhStatisticRoot = defineComponent({
|
|
|
16
17
|
}
|
|
17
18
|
},
|
|
18
19
|
setup(props, { slots }) {
|
|
19
|
-
const api = computed(() => connectStatistic(props, vueNormalize));
|
|
20
|
+
const api = computed(() => connectStatistic(withXhConfig("statistic", props), vueNormalize));
|
|
20
21
|
provideStatistic({ api });
|
|
21
22
|
return () => h("div", api.value.getRootProps(), slots.default?.());
|
|
22
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statistic.js","names":[],"sources":["../../../src/components/statistic/statistic.ts"],"sourcesContent":["import type { StatisticProps } from '@xihan-ui/headless'\nimport type { Size, Tone } from '@xihan-ui/kernel'\nimport type { PropType } from 'vue'\nimport { connectStatistic } from '@xihan-ui/headless'\nimport { computed, defineComponent, h } from 'vue'\nimport { vueNormalize } from '../../runtime/normalize-props'\nimport { provideStatistic, useStatisticContext } from './context'\n\nexport const XhStatisticRoot = defineComponent({\n name: 'XhStatisticRoot',\n // 有 connect 兜底的 prop 一律 default: undefined\n props: {\n size: { type: String as PropType<Size>, default: undefined },\n tone: { type: String as PropType<Tone>, default: undefined },\n },\n setup(props, { slots }) {\n const api = computed(() => connectStatistic(props as StatisticProps, vueNormalize))\n provideStatistic({ api })\n return () => h('div', api.value.getRootProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\n// 标签渲染为 span 而不是 label:它不关联任何表单控件\nexport const XhStatisticLabel = defineComponent({\n name: 'XhStatisticLabel',\n setup(_, { slots }) {\n const ctx = useStatisticContext()\n return () => h('span', ctx.api.value.getLabelProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\n// 数值由作者格式化好再塞进来,组件只负责排版\nexport const XhStatisticValue = defineComponent({\n name: 'XhStatisticValue',\n setup(_, { slots }) {\n const ctx = useStatisticContext()\n return () => h('span', ctx.api.value.getValueProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhStatisticPrefix = defineComponent({\n name: 'XhStatisticPrefix',\n setup(_, { slots }) {\n const ctx = useStatisticContext()\n return () => h('span', ctx.api.value.getPrefixProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhStatisticSuffix = defineComponent({\n name: 'XhStatisticSuffix',\n setup(_, { slots }) {\n const ctx = useStatisticContext()\n return () => h('span', ctx.api.value.getSuffixProps() as Record<string, unknown>, slots.default?.())\n },\n})\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"statistic.js","names":[],"sources":["../../../src/components/statistic/statistic.ts"],"sourcesContent":["import type { StatisticProps } from '@xihan-ui/headless'\nimport type { Size, Tone } from '@xihan-ui/kernel'\nimport type { PropType } from 'vue'\nimport { connectStatistic } from '@xihan-ui/headless'\nimport { computed, defineComponent, h } from 'vue'\nimport { withXhConfig } from '../../config/config'\nimport { vueNormalize } from '../../runtime/normalize-props'\nimport { provideStatistic, useStatisticContext } from './context'\n\nexport const XhStatisticRoot = defineComponent({\n name: 'XhStatisticRoot',\n // 有 connect 兜底的 prop 一律 default: undefined\n props: {\n size: { type: String as PropType<Size>, default: undefined },\n tone: { type: String as PropType<Tone>, default: undefined },\n },\n setup(props, { slots }) {\n const api = computed(() => connectStatistic(withXhConfig('statistic', props) as StatisticProps, vueNormalize))\n provideStatistic({ api })\n return () => h('div', api.value.getRootProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\n// 标签渲染为 span 而不是 label:它不关联任何表单控件\nexport const XhStatisticLabel = defineComponent({\n name: 'XhStatisticLabel',\n setup(_, { slots }) {\n const ctx = useStatisticContext()\n return () => h('span', ctx.api.value.getLabelProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\n// 数值由作者格式化好再塞进来,组件只负责排版\nexport const XhStatisticValue = defineComponent({\n name: 'XhStatisticValue',\n setup(_, { slots }) {\n const ctx = useStatisticContext()\n return () => h('span', ctx.api.value.getValueProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhStatisticPrefix = defineComponent({\n name: 'XhStatisticPrefix',\n setup(_, { slots }) {\n const ctx = useStatisticContext()\n return () => h('span', ctx.api.value.getPrefixProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhStatisticSuffix = defineComponent({\n name: 'XhStatisticSuffix',\n setup(_, { slots }) {\n const ctx = useStatisticContext()\n return () => h('span', ctx.api.value.getSuffixProps() as Record<string, unknown>, slots.default?.())\n },\n})\n"],"mappings":";;;;;;AASA,MAAa,kBAAkB,gBAAgB;CAC7C,MAAM;CAEN,OAAO;EACL,MAAM;GAAE,MAAM;GAA0B,SAAS,KAAA;EAAU;EAC3D,MAAM;GAAE,MAAM;GAA0B,SAAS,KAAA;EAAU;CAC7D;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,eAAe,iBAAiB,aAAa,aAAa,KAAK,GAAqB,YAAY,CAAC;EAC7G,iBAAiB,EAAE,IAAI,CAAC;EACxB,aAAa,EAAE,OAAO,IAAI,MAAM,aAAa,GAA8B,MAAM,UAAU,CAAC;CAC9F;AACF,CAAC;AAGD,MAAa,mBAAmB,gBAAgB;CAC9C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,oBAAoB;EAChC,aAAa,EAAE,QAAQ,IAAI,IAAI,MAAM,cAAc,GAA8B,MAAM,UAAU,CAAC;CACpG;AACF,CAAC;AAGD,MAAa,mBAAmB,gBAAgB;CAC9C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,oBAAoB;EAChC,aAAa,EAAE,QAAQ,IAAI,IAAI,MAAM,cAAc,GAA8B,MAAM,UAAU,CAAC;CACpG;AACF,CAAC;AAED,MAAa,oBAAoB,gBAAgB;CAC/C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,oBAAoB;EAChC,aAAa,EAAE,QAAQ,IAAI,IAAI,MAAM,eAAe,GAA8B,MAAM,UAAU,CAAC;CACrG;AACF,CAAC;AAED,MAAa,oBAAoB,gBAAgB;CAC/C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,oBAAoB;EAChC,aAAa,EAAE,QAAQ,IAAI,IAAI,MAAM,eAAe,GAA8B,MAAM,UAAU,CAAC;CACrG;AACF,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { inject, provide } from "vue";
|
|
2
2
|
//#region src/components/steps/context.ts
|
|
3
|
-
const KEY = Symbol("xh-steps");
|
|
3
|
+
const KEY = Symbol.for("xh-steps");
|
|
4
4
|
/** 条目身份下传给 trigger/indicator/title/description/separator,用 getter 以跟随 value/disabled 变更。 */
|
|
5
|
-
const ITEM_KEY = Symbol("xh-steps-item");
|
|
5
|
+
const ITEM_KEY = Symbol.for("xh-steps-item");
|
|
6
6
|
function provideSteps(ctx) {
|
|
7
7
|
provide(KEY, ctx);
|
|
8
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/steps/context.ts"],"sourcesContent":["import type { StepsItemProps } from '@xihan-ui/headless'\nimport type { InjectionKey } from 'vue'\nimport type { StepsContext } from './use-steps'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<StepsContext> = Symbol('xh-steps')\n/** 条目身份下传给 trigger/indicator/title/description/separator,用 getter 以跟随 value/disabled 变更。 */\nconst ITEM_KEY: InjectionKey<() => StepsItemProps> = Symbol('xh-steps-item')\n\nexport function provideSteps(ctx: StepsContext): void {\n provide(KEY, ctx)\n}\n\nexport function useStepsContext(): StepsContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Steps 部件必须用在 XhStepsRoot 内')\n return ctx\n}\n\nexport function provideStepsItem(item: () => StepsItemProps): void {\n provide(ITEM_KEY, item)\n}\n\nexport function useStepsItem(): () => StepsItemProps {\n const item = inject(ITEM_KEY, null)\n if (!item)\n throw new Error('[xh] Steps 条目部件必须用在 XhStepsItem 内')\n return item\n}\n"],"mappings":";;AAKA,MAAM,MAAkC,OAAO,UAAU;;
|
|
1
|
+
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/steps/context.ts"],"sourcesContent":["import type { StepsItemProps } from '@xihan-ui/headless'\nimport type { InjectionKey } from 'vue'\nimport type { StepsContext } from './use-steps'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<StepsContext> = Symbol.for('xh-steps')\n/** 条目身份下传给 trigger/indicator/title/description/separator,用 getter 以跟随 value/disabled 变更。 */\nconst ITEM_KEY: InjectionKey<() => StepsItemProps> = Symbol.for('xh-steps-item')\n\nexport function provideSteps(ctx: StepsContext): void {\n provide(KEY, ctx)\n}\n\nexport function useStepsContext(): StepsContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Steps 部件必须用在 XhStepsRoot 内')\n return ctx\n}\n\nexport function provideStepsItem(item: () => StepsItemProps): void {\n provide(ITEM_KEY, item)\n}\n\nexport function useStepsItem(): () => StepsItemProps {\n const item = inject(ITEM_KEY, null)\n if (!item)\n throw new Error('[xh] Steps 条目部件必须用在 XhStepsItem 内')\n return item\n}\n"],"mappings":";;AAKA,MAAM,MAAkC,OAAO,IAAI,UAAU;;AAE7D,MAAM,WAA+C,OAAO,IAAI,eAAe;AAE/E,SAAgB,aAAa,KAAyB;CACpD,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,kBAAgC;CAC9C,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,iCAAiC;CACnD,OAAO;AACT;AAEA,SAAgB,iBAAiB,MAAkC;CACjE,QAAQ,UAAU,IAAI;AACxB;AAEA,SAAgB,eAAqC;CACnD,MAAM,OAAO,OAAO,UAAU,IAAI;CAClC,IAAI,CAAC,MACH,MAAM,IAAI,MAAM,mCAAmC;CACrD,OAAO;AACT"}
|
|
@@ -95,9 +95,9 @@ declare const XhStepsRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
95
95
|
size: Size;
|
|
96
96
|
disabled: boolean;
|
|
97
97
|
count: number;
|
|
98
|
-
linear: boolean;
|
|
99
98
|
step: number;
|
|
100
99
|
defaultStep: number;
|
|
100
|
+
linear: boolean;
|
|
101
101
|
}, SlotsType<{
|
|
102
102
|
default?: (props: StepsRootSlotProps) => VNode[];
|
|
103
103
|
}>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -11,6 +11,9 @@ declare const XhSwitch: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
11
11
|
};
|
|
12
12
|
defaultChecked: BooleanConstructor;
|
|
13
13
|
disabled: BooleanConstructor;
|
|
14
|
+
readOnly: BooleanConstructor;
|
|
15
|
+
invalid: BooleanConstructor;
|
|
16
|
+
required: BooleanConstructor;
|
|
14
17
|
loading: {
|
|
15
18
|
type: BooleanConstructor;
|
|
16
19
|
default: undefined;
|
|
@@ -38,6 +41,9 @@ declare const XhSwitch: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
38
41
|
};
|
|
39
42
|
defaultChecked: BooleanConstructor;
|
|
40
43
|
disabled: BooleanConstructor;
|
|
44
|
+
readOnly: BooleanConstructor;
|
|
45
|
+
invalid: BooleanConstructor;
|
|
46
|
+
required: BooleanConstructor;
|
|
41
47
|
loading: {
|
|
42
48
|
type: BooleanConstructor;
|
|
43
49
|
default: undefined;
|
|
@@ -57,10 +63,13 @@ declare const XhSwitch: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
57
63
|
"onChecked-change"?: ((_details: import("@xihan-ui/headless").SwitchCheckedChangeDetails) => any) | undefined;
|
|
58
64
|
"onUpdate:checked"?: ((_checked: boolean) => any) | undefined;
|
|
59
65
|
}>, {
|
|
66
|
+
required: boolean;
|
|
60
67
|
name: string;
|
|
68
|
+
invalid: boolean;
|
|
61
69
|
value: string;
|
|
62
70
|
disabled: boolean;
|
|
63
71
|
loading: boolean;
|
|
72
|
+
readOnly: boolean;
|
|
64
73
|
checked: boolean;
|
|
65
74
|
defaultChecked: boolean;
|
|
66
75
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch.d.ts","names":[],"sources":["../../../src/components/switch/switch.ts"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"switch.d.ts","names":[],"sources":["../../../src/components/switch/switch.ts"],"mappings":";;;;;KAQK,cAAc;cAEN,wBAAQ,8BAAA;;;;;;;;;;;;;;;;;;;;;;;EAaD,MAAA,SAAS;EACT,MAAA,SAAS;;;;EAII,mBAAA,UAAA,UAAU;EACV,mBAAA,UAAA,UAAU;;;;;;;;;;;;;;;;;;;;;;;;EANvB,MAAA,SAAS;EACT,MAAA,SAAS;;;;;;;;;;;;;;qCA8B3B"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { slotPaints } from "../../runtime/slot-content.js";
|
|
1
2
|
import { useSwitch } from "./use-switch.js";
|
|
2
3
|
import { defineComponent, h } from "vue";
|
|
3
4
|
//#region src/components/switch/switch.ts
|
|
@@ -10,6 +11,9 @@ const XhSwitch = defineComponent({
|
|
|
10
11
|
},
|
|
11
12
|
defaultChecked: Boolean,
|
|
12
13
|
disabled: Boolean,
|
|
14
|
+
readOnly: Boolean,
|
|
15
|
+
invalid: Boolean,
|
|
16
|
+
required: Boolean,
|
|
13
17
|
loading: {
|
|
14
18
|
type: Boolean,
|
|
15
19
|
default: void 0
|
|
@@ -30,13 +34,18 @@ const XhSwitch = defineComponent({
|
|
|
30
34
|
"checked-change": (_details) => true,
|
|
31
35
|
"update:checked": (_checked) => true
|
|
32
36
|
},
|
|
33
|
-
setup(props, { emit }) {
|
|
37
|
+
setup(props, { emit, slots }) {
|
|
34
38
|
const notify = (details) => {
|
|
35
39
|
emit("checked-change", details);
|
|
36
40
|
emit("update:checked", details.checked);
|
|
37
41
|
};
|
|
38
42
|
const { api } = useSwitch(props, notify);
|
|
39
|
-
return () =>
|
|
43
|
+
return () => {
|
|
44
|
+
const track = h("button", api.value.getRootProps(), [h("span", api.value.getThumbProps()), props.name === void 0 ? null : h("input", api.value.getHiddenInputProps())]);
|
|
45
|
+
const text = slots.default?.();
|
|
46
|
+
if (!slotPaints(text)) return track;
|
|
47
|
+
return h("label", api.value.getLabelProps(), [track, h("span", api.value.getTextProps(), text)]);
|
|
48
|
+
};
|
|
40
49
|
}
|
|
41
50
|
});
|
|
42
51
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch.js","names":[],"sources":["../../../src/components/switch/switch.ts"],"sourcesContent":["import type { SwitchSchema } from '@xihan-ui/headless'\nimport type { Size, Tone } from '@xihan-ui/kernel'\nimport type { PropType } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport { defineComponent, h } from 'vue'\nimport { useSwitch } from './use-switch'\n\ntype SwitchProps = SwitchSchema['props']\n\nexport const XhSwitch = defineComponent({\n name: 'XhSwitch',\n props: {\n checked: { type: Boolean, default: undefined },\n defaultChecked: Boolean,\n disabled: Boolean,\n loading: { type: Boolean, default: undefined },\n /** 表单字段名;给了 hidden-input 才带 name 并参与提交 */\n name: { type: String, default: undefined },\n value: { type: String, default: undefined },\n tone: String as PropType<Tone>,\n size: String as PropType<Size>,\n },\n // checked-change 携带 { checked },update:checked 携带裸布尔\n emits: {\n 'checked-change': (_details: PayloadOf<SwitchProps, 'onCheckedChange'>) => true,\n 'update:checked': (_checked: PayloadOf<SwitchProps, 'onCheckedChange'>['checked']) => true,\n },\n setup(props, { emit }) {\n const notify: SwitchProps['onCheckedChange'] = (details) => {\n emit('checked-change', details)\n emit('update:checked', details.checked)\n }\n const { api } = useSwitch(props as SwitchProps, notify)\n //
|
|
1
|
+
{"version":3,"file":"switch.js","names":[],"sources":["../../../src/components/switch/switch.ts"],"sourcesContent":["import type { SwitchSchema } from '@xihan-ui/headless'\nimport type { Size, Tone } from '@xihan-ui/kernel'\nimport type { PropType } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport { defineComponent, h } from 'vue'\nimport { slotPaints } from '../../runtime/slot-content'\nimport { useSwitch } from './use-switch'\n\ntype SwitchProps = SwitchSchema['props']\n\nexport const XhSwitch = defineComponent({\n name: 'XhSwitch',\n props: {\n checked: { type: Boolean, default: undefined },\n defaultChecked: Boolean,\n disabled: Boolean,\n readOnly: Boolean,\n invalid: Boolean,\n required: Boolean,\n loading: { type: Boolean, default: undefined },\n /** 表单字段名;给了 hidden-input 才带 name 并参与提交 */\n name: { type: String, default: undefined },\n value: { type: String, default: undefined },\n tone: String as PropType<Tone>,\n size: String as PropType<Size>,\n },\n // checked-change 携带 { checked },update:checked 携带裸布尔\n emits: {\n 'checked-change': (_details: PayloadOf<SwitchProps, 'onCheckedChange'>) => true,\n 'update:checked': (_checked: PayloadOf<SwitchProps, 'onCheckedChange'>['checked']) => true,\n },\n setup(props, { emit, slots }) {\n const notify: SwitchProps['onCheckedChange'] = (details) => {\n emit('checked-change', details)\n emit('update:checked', details.checked)\n }\n const { api } = useSwitch(props as SwitchProps, notify)\n // 表单影子由组件自己渲染:单体控件的轨道里没有子部件插槽,作者递不进来。\n // 给了 name 才有这个节点——type=hidden 不是交互内容,放进 button 里是合法的\n return () => {\n const track = h('button', api.value.getRootProps() as Record<string, unknown>, [\n h('span', api.value.getThumbProps() as Record<string, unknown>),\n props.name === undefined ? null : h('input', api.value.getHiddenInputProps() as Record<string, unknown>),\n ])\n // 默认插槽是轨道旁的文字:<label> 包住两者,点文字即切换。没给文字就只有轨道\n const text = slots.default?.()\n if (!slotPaints(text))\n return track\n return h('label', api.value.getLabelProps() as Record<string, unknown>, [\n track,\n h('span', api.value.getTextProps() as Record<string, unknown>, text),\n ])\n }\n },\n})\n"],"mappings":";;;;AAUA,MAAa,WAAW,gBAAgB;CACtC,MAAM;CACN,OAAO;EACL,SAAS;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC7C,gBAAgB;EAChB,UAAU;EACV,UAAU;EACV,SAAS;EACT,UAAU;EACV,SAAS;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;;EAE7C,MAAM;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EACzC,OAAO;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAC1C,MAAM;EACN,MAAM;CACR;CAEA,OAAO;EACL,mBAAmB,aAAwD;EAC3E,mBAAmB,aAAmE;CACxF;CACA,MAAM,OAAO,EAAE,MAAM,SAAS;EAC5B,MAAM,UAA0C,YAAY;GAC1D,KAAK,kBAAkB,OAAO;GAC9B,KAAK,kBAAkB,QAAQ,OAAO;EACxC;EACA,MAAM,EAAE,QAAQ,UAAU,OAAsB,MAAM;EAGtD,aAAa;GACX,MAAM,QAAQ,EAAE,UAAU,IAAI,MAAM,aAAa,GAA8B,CAC7E,EAAE,QAAQ,IAAI,MAAM,cAAc,CAA4B,GAC9D,MAAM,SAAS,KAAA,IAAY,OAAO,EAAE,SAAS,IAAI,MAAM,oBAAoB,CAA4B,CACzG,CAAC;GAED,MAAM,OAAO,MAAM,UAAU;GAC7B,IAAI,CAAC,WAAW,IAAI,GAClB,OAAO;GACT,OAAO,EAAE,SAAS,IAAI,MAAM,cAAc,GAA8B,CACtE,OACA,EAAE,QAAQ,IAAI,MAAM,aAAa,GAA8B,IAAI,CACrE,CAAC;EACH;CACF;AACF,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { inject, provide } from "vue";
|
|
2
2
|
//#region src/components/table/context.ts
|
|
3
|
-
const KEY = Symbol("xh-table");
|
|
4
|
-
const SECTION_KEY = Symbol("xh-table-section");
|
|
5
|
-
const ROW_KEY = Symbol("xh-table-row");
|
|
6
|
-
const COLUMN_KEY = Symbol("xh-table-column");
|
|
3
|
+
const KEY = Symbol.for("xh-table");
|
|
4
|
+
const SECTION_KEY = Symbol.for("xh-table-section");
|
|
5
|
+
const ROW_KEY = Symbol.for("xh-table-row");
|
|
6
|
+
const COLUMN_KEY = Symbol.for("xh-table-column");
|
|
7
7
|
function provideTable(ctx) {
|
|
8
8
|
provide(KEY, ctx);
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/table/context.ts"],"sourcesContent":["import type { TableColumnProps, TableRowProps } from '@xihan-ui/headless'\nimport type { ComputedRef, InjectionKey } from 'vue'\nimport type { TableContext } from './use-table'\nimport { inject, provide } from 'vue'\n\n/** 行所在的区段,决定同一个 row 部件渲染成表头行、数据行还是脚注行。 */\nexport type TableSection = 'header' | 'body' | 'footer'\n\n/** 行自报的值,供行内的把手与单元格复用同一份声明。 */\nexport interface TableRowContext {\n row: ComputedRef<TableRowProps>\n}\n\n/** 列自报的值,供列标题里的排序把手复用同一份声明。 */\nexport interface TableColumnContext {\n column: ComputedRef<TableColumnProps>\n}\n\nconst KEY: InjectionKey<TableContext> = Symbol('xh-table')\nconst SECTION_KEY: InjectionKey<TableSection> = Symbol('xh-table-section')\nconst ROW_KEY: InjectionKey<TableRowContext> = Symbol('xh-table-row')\nconst COLUMN_KEY: InjectionKey<TableColumnContext> = Symbol('xh-table-column')\n\nexport function provideTable(ctx: TableContext): void {\n provide(KEY, ctx)\n}\n\nexport function useTableContext(): TableContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Table 部件必须用在 XhTableRoot 内')\n return ctx\n}\n\nexport function provideTableSection(section: TableSection): void {\n provide(SECTION_KEY, section)\n}\n\n/** 取所在区段,无区段声明时按数据行处理。 */\nexport function useTableSection(): TableSection {\n return inject(SECTION_KEY, 'body')\n}\n\nexport function provideTableRow(ctx: TableRowContext): void {\n provide(ROW_KEY, ctx)\n}\n\nexport function useTableRowContext(): TableRowContext {\n const ctx = inject(ROW_KEY, null)\n if (!ctx)\n throw new Error('[xh] Table 行内部件必须用在 XhTableRow 或 XhTableExpandedRow 内')\n return ctx\n}\n\n/** 注入行上下文,表头与脚注单元格不在行内时返回 null。 */\nexport function useOptionalTableRowContext(): TableRowContext | null {\n return inject(ROW_KEY, null)\n}\n\nexport function provideTableColumn(ctx: TableColumnContext): void {\n provide(COLUMN_KEY, ctx)\n}\n\nexport function useTableColumnContext(): TableColumnContext {\n const ctx = inject(COLUMN_KEY, null)\n if (!ctx)\n throw new Error('[xh] Table 排序把手必须用在 XhTableColumnHeader 内')\n return ctx\n}\n"],"mappings":";;AAkBA,MAAM,MAAkC,OAAO,UAAU;
|
|
1
|
+
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/table/context.ts"],"sourcesContent":["import type { TableColumnProps, TableRowProps } from '@xihan-ui/headless'\nimport type { ComputedRef, InjectionKey } from 'vue'\nimport type { TableContext } from './use-table'\nimport { inject, provide } from 'vue'\n\n/** 行所在的区段,决定同一个 row 部件渲染成表头行、数据行还是脚注行。 */\nexport type TableSection = 'header' | 'body' | 'footer'\n\n/** 行自报的值,供行内的把手与单元格复用同一份声明。 */\nexport interface TableRowContext {\n row: ComputedRef<TableRowProps>\n}\n\n/** 列自报的值,供列标题里的排序把手复用同一份声明。 */\nexport interface TableColumnContext {\n column: ComputedRef<TableColumnProps>\n}\n\nconst KEY: InjectionKey<TableContext> = Symbol.for('xh-table')\nconst SECTION_KEY: InjectionKey<TableSection> = Symbol.for('xh-table-section')\nconst ROW_KEY: InjectionKey<TableRowContext> = Symbol.for('xh-table-row')\nconst COLUMN_KEY: InjectionKey<TableColumnContext> = Symbol.for('xh-table-column')\n\nexport function provideTable(ctx: TableContext): void {\n provide(KEY, ctx)\n}\n\nexport function useTableContext(): TableContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Table 部件必须用在 XhTableRoot 内')\n return ctx\n}\n\nexport function provideTableSection(section: TableSection): void {\n provide(SECTION_KEY, section)\n}\n\n/** 取所在区段,无区段声明时按数据行处理。 */\nexport function useTableSection(): TableSection {\n return inject(SECTION_KEY, 'body')\n}\n\nexport function provideTableRow(ctx: TableRowContext): void {\n provide(ROW_KEY, ctx)\n}\n\nexport function useTableRowContext(): TableRowContext {\n const ctx = inject(ROW_KEY, null)\n if (!ctx)\n throw new Error('[xh] Table 行内部件必须用在 XhTableRow 或 XhTableExpandedRow 内')\n return ctx\n}\n\n/** 注入行上下文,表头与脚注单元格不在行内时返回 null。 */\nexport function useOptionalTableRowContext(): TableRowContext | null {\n return inject(ROW_KEY, null)\n}\n\nexport function provideTableColumn(ctx: TableColumnContext): void {\n provide(COLUMN_KEY, ctx)\n}\n\nexport function useTableColumnContext(): TableColumnContext {\n const ctx = inject(COLUMN_KEY, null)\n if (!ctx)\n throw new Error('[xh] Table 排序把手必须用在 XhTableColumnHeader 内')\n return ctx\n}\n"],"mappings":";;AAkBA,MAAM,MAAkC,OAAO,IAAI,UAAU;AAC7D,MAAM,cAA0C,OAAO,IAAI,kBAAkB;AAC7E,MAAM,UAAyC,OAAO,IAAI,cAAc;AACxE,MAAM,aAA+C,OAAO,IAAI,iBAAiB;AAEjF,SAAgB,aAAa,KAAyB;CACpD,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,kBAAgC;CAC9C,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,iCAAiC;CACnD,OAAO;AACT;AAEA,SAAgB,oBAAoB,SAA6B;CAC/D,QAAQ,aAAa,OAAO;AAC9B;;AAGA,SAAgB,kBAAgC;CAC9C,OAAO,OAAO,aAAa,MAAM;AACnC;AAEA,SAAgB,gBAAgB,KAA4B;CAC1D,QAAQ,SAAS,GAAG;AACtB;AAEA,SAAgB,qBAAsC;CACpD,MAAM,MAAM,OAAO,SAAS,IAAI;CAChC,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,uDAAuD;CACzE,OAAO;AACT;;AAGA,SAAgB,6BAAqD;CACnE,OAAO,OAAO,SAAS,IAAI;AAC7B;AAEA,SAAgB,mBAAmB,KAA+B;CAChE,QAAQ,YAAY,GAAG;AACzB;AAEA,SAAgB,wBAA4C;CAC1D,MAAM,MAAM,OAAO,YAAY,IAAI;CACnC,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,2CAA2C;CAC7D,OAAO;AACT"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { PayloadOf } from "../../runtime/payload.js";
|
|
2
2
|
import { PropType, SlotsType, VNode } from "vue";
|
|
3
|
-
import { TableApi, TableColumnDef, TableRowDef, TableSchema, TableSelection, TableSelectionMode, TableSortDescriptor } from "@xihan-ui/headless";
|
|
3
|
+
import { TableApi, TableColumnDef, TableColumnKind, TableColumnPreference, TableRowDef, TableSchema, TableSelection, TableSelectionMode, TableSortDescriptor } from "@xihan-ui/headless";
|
|
4
4
|
import { Direction, Size } from "@xihan-ui/kernel";
|
|
5
5
|
//#region src/components/table/table.d.ts
|
|
6
6
|
type TableProps = TableSchema['props'];
|
|
7
7
|
/** 默认插槽的载荷:可见行与排序、选中、展开三态,以及逐行查询与改写它们的句柄。 */
|
|
8
|
-
type TableRootSlotProps = Pick<TableApi, 'visibleRows' | 'sort' | 'selection' | 'selectionState' | 'expandedValue' | 'focusedRow' | 'empty' | 'loading' | 'isSelected' | 'isExpanded' | 'sortDirection' | 'sortPriority' | 'toggleSort' | 'selectRow' | 'toggleSelectAll' | 'toggleExpandRow'>;
|
|
8
|
+
type TableRootSlotProps = Pick<TableApi, 'columns' | 'columnPreference' | 'setColumnHidden' | 'moveColumn' | 'setColumnWidth' | 'setColumnPreference' | 'rowNumber' | 'visibleRows' | 'sort' | 'selection' | 'selectionState' | 'expandedValue' | 'focusedRow' | 'empty' | 'loading' | 'isSelected' | 'isExpanded' | 'sortDirection' | 'sortPriority' | 'toggleSort' | 'selectRow' | 'toggleSelectAll' | 'toggleExpandRow'>;
|
|
9
9
|
declare const XhTableRoot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
10
10
|
columns: {
|
|
11
11
|
type: PropType<TableColumnDef[]>;
|
|
@@ -35,6 +35,29 @@ declare const XhTableRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
35
35
|
type: PropType<TableSelectionMode>;
|
|
36
36
|
default: undefined;
|
|
37
37
|
};
|
|
38
|
+
/** 要哪几列前缀列(序号 / 多选 / 展开),按给定顺序插在最前面并占住列号。 */
|
|
39
|
+
prefixColumns: {
|
|
40
|
+
type: PropType<TableColumnKind[]>;
|
|
41
|
+
default: undefined;
|
|
42
|
+
};
|
|
43
|
+
/** 当前页码与每页条数:只用来算序号,不参与切片。 */
|
|
44
|
+
/** 列偏好:给定即受控。持久化归使用者,库只负责把它算进生效列。 */
|
|
45
|
+
columnPreference: {
|
|
46
|
+
type: PropType<TableColumnPreference>;
|
|
47
|
+
default: undefined;
|
|
48
|
+
};
|
|
49
|
+
defaultColumnPreference: {
|
|
50
|
+
type: PropType<TableColumnPreference>;
|
|
51
|
+
default: undefined;
|
|
52
|
+
};
|
|
53
|
+
page: {
|
|
54
|
+
type: NumberConstructor;
|
|
55
|
+
default: undefined;
|
|
56
|
+
};
|
|
57
|
+
pageSize: {
|
|
58
|
+
type: NumberConstructor;
|
|
59
|
+
default: undefined;
|
|
60
|
+
};
|
|
38
61
|
expanded: {
|
|
39
62
|
type: PropType<string[]>;
|
|
40
63
|
default: undefined;
|
|
@@ -49,6 +72,9 @@ declare const XhTableRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
49
72
|
default: undefined;
|
|
50
73
|
};
|
|
51
74
|
stickyHeader: BooleanConstructor;
|
|
75
|
+
striped: BooleanConstructor;
|
|
76
|
+
borderless: BooleanConstructor;
|
|
77
|
+
ruled: BooleanConstructor;
|
|
52
78
|
footer: BooleanConstructor;
|
|
53
79
|
loop: {
|
|
54
80
|
type: BooleanConstructor;
|
|
@@ -65,6 +91,10 @@ declare const XhTableRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
65
91
|
}>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
66
92
|
[key: string]: any;
|
|
67
93
|
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
94
|
+
'column-preference-change': (_details: {
|
|
95
|
+
value: TableColumnPreference;
|
|
96
|
+
}) => true;
|
|
97
|
+
'update:columnPreference': (_value: TableColumnPreference) => true;
|
|
68
98
|
'sort-change': (_details: PayloadOf<TableProps, "onSortChange">) => true;
|
|
69
99
|
'update:sort': (_sort: PayloadOf<TableProps, "onSortChange">["value"]) => true;
|
|
70
100
|
'selection-change': (_details: PayloadOf<TableProps, "onSelectionChange">) => true;
|
|
@@ -100,6 +130,29 @@ declare const XhTableRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
100
130
|
type: PropType<TableSelectionMode>;
|
|
101
131
|
default: undefined;
|
|
102
132
|
};
|
|
133
|
+
/** 要哪几列前缀列(序号 / 多选 / 展开),按给定顺序插在最前面并占住列号。 */
|
|
134
|
+
prefixColumns: {
|
|
135
|
+
type: PropType<TableColumnKind[]>;
|
|
136
|
+
default: undefined;
|
|
137
|
+
};
|
|
138
|
+
/** 当前页码与每页条数:只用来算序号,不参与切片。 */
|
|
139
|
+
/** 列偏好:给定即受控。持久化归使用者,库只负责把它算进生效列。 */
|
|
140
|
+
columnPreference: {
|
|
141
|
+
type: PropType<TableColumnPreference>;
|
|
142
|
+
default: undefined;
|
|
143
|
+
};
|
|
144
|
+
defaultColumnPreference: {
|
|
145
|
+
type: PropType<TableColumnPreference>;
|
|
146
|
+
default: undefined;
|
|
147
|
+
};
|
|
148
|
+
page: {
|
|
149
|
+
type: NumberConstructor;
|
|
150
|
+
default: undefined;
|
|
151
|
+
};
|
|
152
|
+
pageSize: {
|
|
153
|
+
type: NumberConstructor;
|
|
154
|
+
default: undefined;
|
|
155
|
+
};
|
|
103
156
|
expanded: {
|
|
104
157
|
type: PropType<string[]>;
|
|
105
158
|
default: undefined;
|
|
@@ -114,6 +167,9 @@ declare const XhTableRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
114
167
|
default: undefined;
|
|
115
168
|
};
|
|
116
169
|
stickyHeader: BooleanConstructor;
|
|
170
|
+
striped: BooleanConstructor;
|
|
171
|
+
borderless: BooleanConstructor;
|
|
172
|
+
ruled: BooleanConstructor;
|
|
117
173
|
footer: BooleanConstructor;
|
|
118
174
|
loop: {
|
|
119
175
|
type: BooleanConstructor;
|
|
@@ -130,6 +186,10 @@ declare const XhTableRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
130
186
|
}>> & Readonly<{
|
|
131
187
|
"onExpanded-change"?: ((_details: import("@xihan-ui/headless").TableExpandedChangeDetails) => any) | undefined;
|
|
132
188
|
"onUpdate:expanded"?: ((_expanded: string[]) => any) | undefined;
|
|
189
|
+
"onColumn-preference-change"?: ((_details: {
|
|
190
|
+
value: TableColumnPreference;
|
|
191
|
+
}) => any) | undefined;
|
|
192
|
+
"onUpdate:columnPreference"?: ((_value: TableColumnPreference) => any) | undefined;
|
|
133
193
|
"onSort-change"?: ((_details: import("@xihan-ui/headless").TableSortChangeDetails) => any) | undefined;
|
|
134
194
|
"onUpdate:sort"?: ((_sort: TableSortDescriptor[]) => any) | undefined;
|
|
135
195
|
"onSelection-change"?: ((_details: import("@xihan-ui/headless").TableSelectionChangeDetails) => any) | undefined;
|
|
@@ -141,16 +201,24 @@ declare const XhTableRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
141
201
|
size: Size;
|
|
142
202
|
loading: boolean;
|
|
143
203
|
selectionMode: TableSelectionMode;
|
|
204
|
+
page: number;
|
|
144
205
|
loop: boolean;
|
|
145
206
|
empty: boolean;
|
|
146
207
|
columns: TableColumnDef[];
|
|
147
208
|
expanded: string[];
|
|
148
209
|
defaultExpanded: string[];
|
|
149
210
|
rows: TableRowDef[];
|
|
211
|
+
columnPreference: TableColumnPreference;
|
|
150
212
|
selection: TableSelection;
|
|
151
213
|
stickyHeader: boolean;
|
|
214
|
+
striped: boolean;
|
|
215
|
+
borderless: boolean;
|
|
216
|
+
ruled: boolean;
|
|
152
217
|
defaultSort: TableSortDescriptor[];
|
|
153
218
|
defaultSelection: TableSelection;
|
|
219
|
+
prefixColumns: TableColumnKind[];
|
|
220
|
+
defaultColumnPreference: TableColumnPreference;
|
|
221
|
+
pageSize: number;
|
|
154
222
|
}, SlotsType<{
|
|
155
223
|
default?: (props: TableRootSlotProps) => VNode[];
|
|
156
224
|
}>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","names":[],"sources":["../../../src/components/table/table.ts"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"table.d.ts","names":[],"sources":["../../../src/components/table/table.ts"],"mappings":";;;;;KA+BK,aAAa;;KAyBN,qBAAqB,KAC/B;cA0BW,2BAAW,8BAAA;;IAIM,MAAA,SAAS;;;;IACZ,MAAA,SAAS;;;;IACT,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;IACD,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;IACrB,MAAA,SAAS;;;;;IAEV,MAAA,SAAS;;;;;;IAGL,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;;;;;;;;;IAGzB,MAAA;;;;IACO,MAAA;;;;;;;;;;;;;;;;;;IASX,MAAA,SAAS;;;;IACR,MAAA,SAAS;;;;;;EAIM,6BAAA;IAAE,OAAO;;EACZ,4BAAA,QAAA;EACV,gBAAA,UAAA,UAAU;EACb,gBAAA,OAAA,UAAU;EACF,qBAAA,UAAA,UAAU;EACR,qBAAA,YAAA,UAAU;EACb,oBAAA,UAAA,UAAU;EACT,oBAAA,WAAA,UAAU;;;IArCf,MAAA,SAAS;;;;IACZ,MAAA,SAAS;;;;IACT,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;IACD,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;IACrB,MAAA,SAAS;;;;;IAEV,MAAA,SAAS;;;;;;IAGL,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;;;;;;;;;IAGzB,MAAA;;;;IACO,MAAA;;;;;;;;;;;;;;;;;;IASX,MAAA,SAAS;;;;IACR,MAAA,SAAS;;;;;;;IAIe,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUtC,WAAC,OAAO,uBAAuB;kCA+C3C;cAEW,8BAAc,0BAAA,oBAAA,4BAAA;;8BAMzB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,6BAAa,0BAAA,oBAAA,4BAAA;;8BAOxB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,2BAAW,0BAAA,oBAAA,4BAAA;;8BAQtB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,6BAAa,0BAAA,oBAAA,4BAAA;;8BAOxB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,0BAAU,8BAAA;;;;;;;;;;;;;;;;qCA6BrB;cAEW,mCAAmB,8BAAA;;;;;;;;;;;;MAe9B,oDAAA;cAEW,2BAAW,8BAAA;;;;;;;;IAMiB,MAAA;;;;;;;;;;;;;IAAA,MAAA;;;;;qCAgBvC;cAEW,uCAAuB,0BAAA,oBAAA,4BAAA;;8BAUlC,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,uCAAuB,0BAAA,oBAAA,4BAAA;;8BAWlC,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,kCAAkB,0BAAA,oBAAA,4BAAA;;8BAW7B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,oCAAoB,0BAAA,oBAAA,4BAAA;;8BAW/B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,kCAAkB,8BAAA;;;;;;;;;;;;;;MAgB7B,oDAAA;cAEW,4BAAY,0BAAA,oBAAA,4BAAA;;8BAMvB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,mCAAmB,0BAAA,oBAAA,4BAAA;;8BAM9B,qCAAA,iDAAA,aAAA,eAAA,oDAAA"}
|
|
@@ -50,6 +50,29 @@ const XhTableRoot = defineComponent({
|
|
|
50
50
|
type: String,
|
|
51
51
|
default: void 0
|
|
52
52
|
},
|
|
53
|
+
/** 要哪几列前缀列(序号 / 多选 / 展开),按给定顺序插在最前面并占住列号。 */
|
|
54
|
+
prefixColumns: {
|
|
55
|
+
type: Array,
|
|
56
|
+
default: void 0
|
|
57
|
+
},
|
|
58
|
+
/** 当前页码与每页条数:只用来算序号,不参与切片。 */
|
|
59
|
+
/** 列偏好:给定即受控。持久化归使用者,库只负责把它算进生效列。 */
|
|
60
|
+
columnPreference: {
|
|
61
|
+
type: Object,
|
|
62
|
+
default: void 0
|
|
63
|
+
},
|
|
64
|
+
defaultColumnPreference: {
|
|
65
|
+
type: Object,
|
|
66
|
+
default: void 0
|
|
67
|
+
},
|
|
68
|
+
page: {
|
|
69
|
+
type: Number,
|
|
70
|
+
default: void 0
|
|
71
|
+
},
|
|
72
|
+
pageSize: {
|
|
73
|
+
type: Number,
|
|
74
|
+
default: void 0
|
|
75
|
+
},
|
|
53
76
|
expanded: {
|
|
54
77
|
type: Array,
|
|
55
78
|
default: void 0
|
|
@@ -64,6 +87,9 @@ const XhTableRoot = defineComponent({
|
|
|
64
87
|
default: void 0
|
|
65
88
|
},
|
|
66
89
|
stickyHeader: Boolean,
|
|
90
|
+
striped: Boolean,
|
|
91
|
+
borderless: Boolean,
|
|
92
|
+
ruled: Boolean,
|
|
67
93
|
footer: Boolean,
|
|
68
94
|
loop: {
|
|
69
95
|
type: Boolean,
|
|
@@ -79,6 +105,8 @@ const XhTableRoot = defineComponent({
|
|
|
79
105
|
}
|
|
80
106
|
},
|
|
81
107
|
emits: {
|
|
108
|
+
"column-preference-change": (_details) => true,
|
|
109
|
+
"update:columnPreference": (_value) => true,
|
|
82
110
|
"sort-change": (_details) => true,
|
|
83
111
|
"update:sort": (_sort) => true,
|
|
84
112
|
"selection-change": (_details) => true,
|
|
@@ -88,6 +116,10 @@ const XhTableRoot = defineComponent({
|
|
|
88
116
|
},
|
|
89
117
|
slots: Object,
|
|
90
118
|
setup(props, { slots, emit }) {
|
|
119
|
+
const onColumnPreferenceChange = (details) => {
|
|
120
|
+
emit("column-preference-change", details);
|
|
121
|
+
emit("update:columnPreference", details.value);
|
|
122
|
+
};
|
|
91
123
|
const onSortChange = (details) => {
|
|
92
124
|
emit("sort-change", details);
|
|
93
125
|
emit("update:sort", details.value);
|
|
@@ -100,9 +132,16 @@ const XhTableRoot = defineComponent({
|
|
|
100
132
|
emit("expanded-change", details);
|
|
101
133
|
emit("update:expanded", details.value);
|
|
102
134
|
};
|
|
103
|
-
const ctx = useTable(props, onSortChange, onSelectionChange, onExpandedChange);
|
|
135
|
+
const ctx = useTable(props, onSortChange, onSelectionChange, onExpandedChange, onColumnPreferenceChange);
|
|
104
136
|
provideTable(ctx);
|
|
105
137
|
return () => h("div", ctx.api.value.getRootProps(), slots.default?.({
|
|
138
|
+
columns: ctx.api.value.columns,
|
|
139
|
+
columnPreference: ctx.api.value.columnPreference,
|
|
140
|
+
setColumnHidden: ctx.api.value.setColumnHidden,
|
|
141
|
+
moveColumn: ctx.api.value.moveColumn,
|
|
142
|
+
setColumnWidth: ctx.api.value.setColumnWidth,
|
|
143
|
+
setColumnPreference: ctx.api.value.setColumnPreference,
|
|
144
|
+
rowNumber: ctx.api.value.rowNumber,
|
|
106
145
|
visibleRows: ctx.api.value.visibleRows,
|
|
107
146
|
sort: ctx.api.value.sort,
|
|
108
147
|
selection: ctx.api.value.selection,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","names":[],"sources":["../../../src/components/table/table.ts"],"sourcesContent":["import type {\n TableApi,\n TableColumnDef,\n TableColumnProps,\n TableRowDef,\n TableRowProps,\n TableSchema,\n TableSelection,\n TableSelectionMode,\n TableSortDescriptor,\n} from '@xihan-ui/headless'\nimport type { Direction, Size } from '@xihan-ui/kernel'\nimport type { PropType, Ref, SlotsType, VNode } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport type { TableContext } from './use-table'\nimport { computed, defineComponent, h, onBeforeUnmount, ref, watch } from 'vue'\nimport {\n provideTable,\n provideTableColumn,\n provideTableRow,\n provideTableSection,\n useOptionalTableRowContext,\n useTableColumnContext,\n useTableContext,\n useTableRowContext,\n useTableSection,\n} from './context'\nimport { useTable } from './use-table'\n\ntype TableProps = TableSchema['props']\n\n/** 本行持有焦点时,value 变更重报焦点行,卸载时上报表体失焦 */\nfunction reportRowFocus(ctx: TableContext, el: Ref<HTMLElement | null>, value: () => string): void {\n watch(value, (next, prev) => {\n if (next === prev)\n return\n const { service } = ctx\n if (service.getStatus() !== 'Started')\n return\n if (el.value && service.scope.getActiveElement() === el.value)\n service.send({ type: 'ROW.FOCUS', value: next })\n })\n onBeforeUnmount(() => {\n const { service } = ctx\n // 整张表一起卸载时根部件先停机,此刻送事件会在 dev 下抛\n if (service.getStatus() !== 'Started')\n return\n // 按「本行当下正持有焦点」判定,不按 value 比对\n if (el.value && service.scope.getActiveElement() === el.value)\n service.send({ type: 'TABLE.BLUR' })\n })\n}\n\n/** 默认插槽的载荷:可见行与排序、选中、展开三态,以及逐行查询与改写它们的句柄。 */\nexport type TableRootSlotProps = Pick<\n TableApi,\n | 'visibleRows'\n | 'sort'\n | 'selection'\n | 'selectionState'\n | 'expandedValue'\n | 'focusedRow'\n | 'empty'\n | 'loading'\n | 'isSelected'\n | 'isExpanded'\n | 'sortDirection'\n | 'sortPriority'\n | 'toggleSort'\n | 'selectRow'\n | 'toggleSelectAll'\n | 'toggleExpandRow'\n>\n\nexport const XhTableRoot = defineComponent({\n name: 'XhTableRoot',\n // 有机器侧兜底的 prop 一律 default: undefined,缺省值由 connect 与机器决定\n props: {\n columns: { type: Array as PropType<TableColumnDef[]>, default: undefined },\n rows: { type: Array as PropType<TableRowDef[]>, default: undefined },\n sort: { type: Array as PropType<TableSortDescriptor[]>, default: undefined },\n defaultSort: { type: Array as PropType<TableSortDescriptor[]>, default: undefined },\n selection: { type: [Array, String] as PropType<TableSelection>, default: undefined },\n defaultSelection: { type: [Array, String] as PropType<TableSelection>, default: undefined },\n selectionMode: { type: String as PropType<TableSelectionMode>, default: undefined },\n expanded: { type: Array as PropType<string[]>, default: undefined },\n defaultExpanded: { type: Array as PropType<string[]>, default: undefined },\n loading: Boolean,\n empty: { type: Boolean, default: undefined },\n stickyHeader: Boolean,\n footer: Boolean,\n loop: { type: Boolean, default: undefined },\n dir: { type: String as PropType<Direction>, default: undefined },\n size: { type: String as PropType<Size>, default: undefined },\n },\n // *-change 携带 { value },update:* 携带裸值以支持 v-model\n emits: {\n 'sort-change': (_details: PayloadOf<TableProps, 'onSortChange'>) => true,\n 'update:sort': (_sort: PayloadOf<TableProps, 'onSortChange'>['value']) => true,\n 'selection-change': (_details: PayloadOf<TableProps, 'onSelectionChange'>) => true,\n 'update:selection': (_selection: PayloadOf<TableProps, 'onSelectionChange'>['value']) => true,\n 'expanded-change': (_details: PayloadOf<TableProps, 'onExpandedChange'>) => true,\n 'update:expanded': (_expanded: PayloadOf<TableProps, 'onExpandedChange'>['value']) => true,\n },\n slots: Object as SlotsType<{\n default?: (props: TableRootSlotProps) => VNode[]\n }>,\n setup(props, { slots, emit }) {\n const onSortChange: TableProps['onSortChange'] = (details) => {\n emit('sort-change', details)\n emit('update:sort', details.value)\n }\n const onSelectionChange: TableProps['onSelectionChange'] = (details) => {\n emit('selection-change', details)\n emit('update:selection', details.value)\n }\n const onExpandedChange: TableProps['onExpandedChange'] = (details) => {\n emit('expanded-change', details)\n emit('update:expanded', details.value)\n }\n const ctx = useTable(props as TableProps, onSortChange, onSelectionChange, onExpandedChange)\n provideTable(ctx)\n return () => h('div', ctx.api.value.getRootProps() as Record<string, unknown>, slots.default?.({\n visibleRows: ctx.api.value.visibleRows,\n sort: ctx.api.value.sort,\n selection: ctx.api.value.selection,\n selectionState: ctx.api.value.selectionState,\n expandedValue: ctx.api.value.expandedValue,\n focusedRow: ctx.api.value.focusedRow,\n empty: ctx.api.value.empty,\n loading: ctx.api.value.loading,\n isSelected: ctx.api.value.isSelected,\n isExpanded: ctx.api.value.isExpanded,\n sortDirection: ctx.api.value.sortDirection,\n sortPriority: ctx.api.value.sortPriority,\n toggleSort: ctx.api.value.toggleSort,\n selectRow: ctx.api.value.selectRow,\n toggleSelectAll: ctx.api.value.toggleSelectAll,\n toggleExpandRow: ctx.api.value.toggleExpandRow,\n }))\n },\n})\n\nexport const XhTableCaption = defineComponent({\n name: 'XhTableCaption',\n setup(_, { slots }) {\n const ctx = useTableContext()\n return () => h('div', ctx.api.value.getCaptionProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhTableHeader = defineComponent({\n name: 'XhTableHeader',\n setup(_, { slots }) {\n const ctx = useTableContext()\n provideTableSection('header')\n return () => h('div', ctx.api.value.getHeaderProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhTableBody = defineComponent({\n name: 'XhTableBody',\n setup(_, { slots }) {\n const ctx = useTableContext()\n provideTableSection('body')\n // 键盘与 roving 的兜底 Tab 位落在表体上,不在 root 上\n return () => h('div', ctx.api.value.getBodyProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhTableFooter = defineComponent({\n name: 'XhTableFooter',\n setup(_, { slots }) {\n const ctx = useTableContext()\n provideTableSection('footer')\n return () => h('div', ctx.api.value.getFooterProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhTableRow = defineComponent({\n name: 'XhTableRow',\n props: {\n /** 行 id:数据行必给,表头行与脚注行省略。 */\n value: { type: String, default: undefined },\n },\n setup(props, { slots }) {\n const ctx = useTableContext()\n const section = useTableSection()\n if (section !== 'body') {\n return () => h(\n 'div',\n (section === 'header'\n ? ctx.api.value.getHeaderRowProps()\n : ctx.api.value.getFooterRowProps()) as Record<string, unknown>,\n slots.default?.(),\n )\n }\n const row = computed<TableRowProps>(() => ({ value: props.value ?? '' }))\n // 供行内的把手与单元格读取行 id\n provideTableRow({ row })\n const el = ref<HTMLElement | null>(null)\n reportRowFocus(ctx, el, () => row.value.value)\n return () => h(\n 'div',\n { ...ctx.api.value.getRowProps(row.value) as Record<string, unknown>, ref: el },\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableColumnHeader = defineComponent({\n name: 'XhTableColumnHeader',\n props: {\n value: { type: String, required: true },\n },\n setup(props, { slots }) {\n const ctx = useTableContext()\n const column = computed<TableColumnProps>(() => ({ value: props.value }))\n provideTableColumn({ column })\n return () => h(\n 'div',\n ctx.api.value.getColumnHeaderProps(column.value) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableCell = defineComponent({\n name: 'XhTableCell',\n props: {\n /** 列 id。 */\n value: { type: String, required: true },\n /** 跨列数,从 value 那一列往后算。 */\n colspan: { type: [String, Number] as PropType<string | number>, default: undefined },\n },\n setup(props, { slots }) {\n const ctx = useTableContext()\n // 行上下文可选:脚注单元格不属于任何数据行\n const rowCtx = useOptionalTableRowContext()\n return () => h(\n 'div',\n ctx.api.value.getCellProps({\n value: props.value,\n row: rowCtx?.row.value.value,\n colSpan: props.colspan == null ? undefined : Number(props.colspan),\n }) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableSelectAllTrigger = defineComponent({\n name: 'XhTableSelectAllTrigger',\n setup(_, { slots }) {\n const ctx = useTableContext()\n return () => h(\n 'span',\n ctx.api.value.getSelectAllTriggerProps() as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableRowSelectTrigger = defineComponent({\n name: 'XhTableRowSelectTrigger',\n setup(_, { slots }) {\n const ctx = useTableContext()\n const { row } = useTableRowContext()\n return () => h(\n 'span',\n ctx.api.value.getRowSelectTriggerProps(row.value) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableSortTrigger = defineComponent({\n name: 'XhTableSortTrigger',\n setup(_, { slots }) {\n const ctx = useTableContext()\n const { column } = useTableColumnContext()\n return () => h(\n 'span',\n ctx.api.value.getSortTriggerProps(column.value) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableExpandTrigger = defineComponent({\n name: 'XhTableExpandTrigger',\n setup(_, { slots }) {\n const ctx = useTableContext()\n const { row } = useTableRowContext()\n return () => h(\n 'span',\n ctx.api.value.getExpandTriggerProps(row.value) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableExpandedRow = defineComponent({\n name: 'XhTableExpandedRow',\n props: {\n /** 所属数据行的 id。 */\n value: { type: String, required: true },\n },\n setup(props, { slots }) {\n const ctx = useTableContext()\n const row = computed<TableRowProps>(() => ({ value: props.value }))\n // 不 provide 行上下文;收起只加 hidden,不卸载内部节点\n return () => h(\n 'div',\n ctx.api.value.getExpandedRowProps(row.value) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableEmpty = defineComponent({\n name: 'XhTableEmpty',\n setup(_, { slots }) {\n const ctx = useTableContext()\n return () => h('div', ctx.api.value.getEmptyProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhTableLoadingState = defineComponent({\n name: 'XhTableLoadingState',\n setup(_, { slots }) {\n const ctx = useTableContext()\n return () => h('div', ctx.api.value.getLoadingStateProps() as Record<string, unknown>, slots.default?.())\n },\n})\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"table.js","names":[],"sources":["../../../src/components/table/table.ts"],"sourcesContent":["import type {\n TableApi,\n TableColumnDef,\n TableColumnKind,\n TableColumnPreference,\n TableColumnProps,\n TableRowDef,\n TableRowProps,\n TableSchema,\n TableSelection,\n TableSelectionMode,\n TableSortDescriptor,\n} from '@xihan-ui/headless'\nimport type { Direction, Size } from '@xihan-ui/kernel'\nimport type { PropType, Ref, SlotsType, VNode } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport type { TableContext } from './use-table'\nimport { computed, defineComponent, h, onBeforeUnmount, ref, watch } from 'vue'\nimport {\n provideTable,\n provideTableColumn,\n provideTableRow,\n provideTableSection,\n useOptionalTableRowContext,\n useTableColumnContext,\n useTableContext,\n useTableRowContext,\n useTableSection,\n} from './context'\nimport { useTable } from './use-table'\n\ntype TableProps = TableSchema['props']\n\n/** 本行持有焦点时,value 变更重报焦点行,卸载时上报表体失焦 */\nfunction reportRowFocus(ctx: TableContext, el: Ref<HTMLElement | null>, value: () => string): void {\n watch(value, (next, prev) => {\n if (next === prev)\n return\n const { service } = ctx\n if (service.getStatus() !== 'Started')\n return\n if (el.value && service.scope.getActiveElement() === el.value)\n service.send({ type: 'ROW.FOCUS', value: next })\n })\n onBeforeUnmount(() => {\n const { service } = ctx\n // 整张表一起卸载时根部件先停机,此刻送事件会在 dev 下抛\n if (service.getStatus() !== 'Started')\n return\n // 按「本行当下正持有焦点」判定,不按 value 比对\n if (el.value && service.scope.getActiveElement() === el.value)\n service.send({ type: 'TABLE.BLUR' })\n })\n}\n\n/** 默认插槽的载荷:可见行与排序、选中、展开三态,以及逐行查询与改写它们的句柄。 */\nexport type TableRootSlotProps = Pick<\n TableApi,\n | 'columns'\n | 'columnPreference'\n | 'setColumnHidden'\n | 'moveColumn'\n | 'setColumnWidth'\n | 'setColumnPreference'\n | 'rowNumber'\n | 'visibleRows'\n | 'sort'\n | 'selection'\n | 'selectionState'\n | 'expandedValue'\n | 'focusedRow'\n | 'empty'\n | 'loading'\n | 'isSelected'\n | 'isExpanded'\n | 'sortDirection'\n | 'sortPriority'\n | 'toggleSort'\n | 'selectRow'\n | 'toggleSelectAll'\n | 'toggleExpandRow'\n>\n\nexport const XhTableRoot = defineComponent({\n name: 'XhTableRoot',\n // 有机器侧兜底的 prop 一律 default: undefined,缺省值由 connect 与机器决定\n props: {\n columns: { type: Array as PropType<TableColumnDef[]>, default: undefined },\n rows: { type: Array as PropType<TableRowDef[]>, default: undefined },\n sort: { type: Array as PropType<TableSortDescriptor[]>, default: undefined },\n defaultSort: { type: Array as PropType<TableSortDescriptor[]>, default: undefined },\n selection: { type: [Array, String] as PropType<TableSelection>, default: undefined },\n defaultSelection: { type: [Array, String] as PropType<TableSelection>, default: undefined },\n selectionMode: { type: String as PropType<TableSelectionMode>, default: undefined },\n /** 要哪几列前缀列(序号 / 多选 / 展开),按给定顺序插在最前面并占住列号。 */\n prefixColumns: { type: Array as PropType<TableColumnKind[]>, default: undefined },\n /** 当前页码与每页条数:只用来算序号,不参与切片。 */\n /** 列偏好:给定即受控。持久化归使用者,库只负责把它算进生效列。 */\n columnPreference: { type: Object as PropType<TableColumnPreference>, default: undefined },\n defaultColumnPreference: { type: Object as PropType<TableColumnPreference>, default: undefined },\n page: { type: Number, default: undefined },\n pageSize: { type: Number, default: undefined },\n expanded: { type: Array as PropType<string[]>, default: undefined },\n defaultExpanded: { type: Array as PropType<string[]>, default: undefined },\n loading: Boolean,\n empty: { type: Boolean, default: undefined },\n stickyHeader: Boolean,\n striped: Boolean,\n borderless: Boolean,\n ruled: Boolean,\n footer: Boolean,\n loop: { type: Boolean, default: undefined },\n dir: { type: String as PropType<Direction>, default: undefined },\n size: { type: String as PropType<Size>, default: undefined },\n },\n // *-change 携带 { value },update:* 携带裸值以支持 v-model\n emits: {\n 'column-preference-change': (_details: { value: TableColumnPreference }) => true,\n 'update:columnPreference': (_value: TableColumnPreference) => true,\n 'sort-change': (_details: PayloadOf<TableProps, 'onSortChange'>) => true,\n 'update:sort': (_sort: PayloadOf<TableProps, 'onSortChange'>['value']) => true,\n 'selection-change': (_details: PayloadOf<TableProps, 'onSelectionChange'>) => true,\n 'update:selection': (_selection: PayloadOf<TableProps, 'onSelectionChange'>['value']) => true,\n 'expanded-change': (_details: PayloadOf<TableProps, 'onExpandedChange'>) => true,\n 'update:expanded': (_expanded: PayloadOf<TableProps, 'onExpandedChange'>['value']) => true,\n },\n slots: Object as SlotsType<{\n default?: (props: TableRootSlotProps) => VNode[]\n }>,\n setup(props, { slots, emit }) {\n const onColumnPreferenceChange: TableProps['onColumnPreferenceChange'] = (details) => {\n emit('column-preference-change', details)\n emit('update:columnPreference', details.value)\n }\n const onSortChange: TableProps['onSortChange'] = (details) => {\n emit('sort-change', details)\n emit('update:sort', details.value)\n }\n const onSelectionChange: TableProps['onSelectionChange'] = (details) => {\n emit('selection-change', details)\n emit('update:selection', details.value)\n }\n const onExpandedChange: TableProps['onExpandedChange'] = (details) => {\n emit('expanded-change', details)\n emit('update:expanded', details.value)\n }\n const ctx = useTable(props as TableProps, onSortChange, onSelectionChange, onExpandedChange, onColumnPreferenceChange)\n provideTable(ctx)\n return () => h('div', ctx.api.value.getRootProps() as Record<string, unknown>, slots.default?.({\n columns: ctx.api.value.columns,\n columnPreference: ctx.api.value.columnPreference,\n setColumnHidden: ctx.api.value.setColumnHidden,\n moveColumn: ctx.api.value.moveColumn,\n setColumnWidth: ctx.api.value.setColumnWidth,\n setColumnPreference: ctx.api.value.setColumnPreference,\n rowNumber: ctx.api.value.rowNumber,\n visibleRows: ctx.api.value.visibleRows,\n sort: ctx.api.value.sort,\n selection: ctx.api.value.selection,\n selectionState: ctx.api.value.selectionState,\n expandedValue: ctx.api.value.expandedValue,\n focusedRow: ctx.api.value.focusedRow,\n empty: ctx.api.value.empty,\n loading: ctx.api.value.loading,\n isSelected: ctx.api.value.isSelected,\n isExpanded: ctx.api.value.isExpanded,\n sortDirection: ctx.api.value.sortDirection,\n sortPriority: ctx.api.value.sortPriority,\n toggleSort: ctx.api.value.toggleSort,\n selectRow: ctx.api.value.selectRow,\n toggleSelectAll: ctx.api.value.toggleSelectAll,\n toggleExpandRow: ctx.api.value.toggleExpandRow,\n }))\n },\n})\n\nexport const XhTableCaption = defineComponent({\n name: 'XhTableCaption',\n setup(_, { slots }) {\n const ctx = useTableContext()\n return () => h('div', ctx.api.value.getCaptionProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhTableHeader = defineComponent({\n name: 'XhTableHeader',\n setup(_, { slots }) {\n const ctx = useTableContext()\n provideTableSection('header')\n return () => h('div', ctx.api.value.getHeaderProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhTableBody = defineComponent({\n name: 'XhTableBody',\n setup(_, { slots }) {\n const ctx = useTableContext()\n provideTableSection('body')\n // 键盘与 roving 的兜底 Tab 位落在表体上,不在 root 上\n return () => h('div', ctx.api.value.getBodyProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhTableFooter = defineComponent({\n name: 'XhTableFooter',\n setup(_, { slots }) {\n const ctx = useTableContext()\n provideTableSection('footer')\n return () => h('div', ctx.api.value.getFooterProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhTableRow = defineComponent({\n name: 'XhTableRow',\n props: {\n /** 行 id:数据行必给,表头行与脚注行省略。 */\n value: { type: String, default: undefined },\n },\n setup(props, { slots }) {\n const ctx = useTableContext()\n const section = useTableSection()\n if (section !== 'body') {\n return () => h(\n 'div',\n (section === 'header'\n ? ctx.api.value.getHeaderRowProps()\n : ctx.api.value.getFooterRowProps()) as Record<string, unknown>,\n slots.default?.(),\n )\n }\n const row = computed<TableRowProps>(() => ({ value: props.value ?? '' }))\n // 供行内的把手与单元格读取行 id\n provideTableRow({ row })\n const el = ref<HTMLElement | null>(null)\n reportRowFocus(ctx, el, () => row.value.value)\n return () => h(\n 'div',\n { ...ctx.api.value.getRowProps(row.value) as Record<string, unknown>, ref: el },\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableColumnHeader = defineComponent({\n name: 'XhTableColumnHeader',\n props: {\n value: { type: String, required: true },\n },\n setup(props, { slots }) {\n const ctx = useTableContext()\n const column = computed<TableColumnProps>(() => ({ value: props.value }))\n provideTableColumn({ column })\n return () => h(\n 'div',\n ctx.api.value.getColumnHeaderProps(column.value) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableCell = defineComponent({\n name: 'XhTableCell',\n props: {\n /** 列 id。 */\n value: { type: String, required: true },\n /** 跨列数,从 value 那一列往后算。 */\n colspan: { type: [String, Number] as PropType<string | number>, default: undefined },\n },\n setup(props, { slots }) {\n const ctx = useTableContext()\n // 行上下文可选:脚注单元格不属于任何数据行\n const rowCtx = useOptionalTableRowContext()\n return () => h(\n 'div',\n ctx.api.value.getCellProps({\n value: props.value,\n row: rowCtx?.row.value.value,\n colSpan: props.colspan == null ? undefined : Number(props.colspan),\n }) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableSelectAllTrigger = defineComponent({\n name: 'XhTableSelectAllTrigger',\n setup(_, { slots }) {\n const ctx = useTableContext()\n return () => h(\n 'span',\n ctx.api.value.getSelectAllTriggerProps() as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableRowSelectTrigger = defineComponent({\n name: 'XhTableRowSelectTrigger',\n setup(_, { slots }) {\n const ctx = useTableContext()\n const { row } = useTableRowContext()\n return () => h(\n 'span',\n ctx.api.value.getRowSelectTriggerProps(row.value) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableSortTrigger = defineComponent({\n name: 'XhTableSortTrigger',\n setup(_, { slots }) {\n const ctx = useTableContext()\n const { column } = useTableColumnContext()\n return () => h(\n 'span',\n ctx.api.value.getSortTriggerProps(column.value) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableExpandTrigger = defineComponent({\n name: 'XhTableExpandTrigger',\n setup(_, { slots }) {\n const ctx = useTableContext()\n const { row } = useTableRowContext()\n return () => h(\n 'span',\n ctx.api.value.getExpandTriggerProps(row.value) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableExpandedRow = defineComponent({\n name: 'XhTableExpandedRow',\n props: {\n /** 所属数据行的 id。 */\n value: { type: String, required: true },\n },\n setup(props, { slots }) {\n const ctx = useTableContext()\n const row = computed<TableRowProps>(() => ({ value: props.value }))\n // 不 provide 行上下文;收起只加 hidden,不卸载内部节点\n return () => h(\n 'div',\n ctx.api.value.getExpandedRowProps(row.value) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhTableEmpty = defineComponent({\n name: 'XhTableEmpty',\n setup(_, { slots }) {\n const ctx = useTableContext()\n return () => h('div', ctx.api.value.getEmptyProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhTableLoadingState = defineComponent({\n name: 'XhTableLoadingState',\n setup(_, { slots }) {\n const ctx = useTableContext()\n return () => h('div', ctx.api.value.getLoadingStateProps() as Record<string, unknown>, slots.default?.())\n },\n})\n"],"mappings":";;;;;AAkCA,SAAS,eAAe,KAAmB,IAA6B,OAA2B;CACjG,MAAM,QAAQ,MAAM,SAAS;EAC3B,IAAI,SAAS,MACX;EACF,MAAM,EAAE,YAAY;EACpB,IAAI,QAAQ,UAAU,MAAM,WAC1B;EACF,IAAI,GAAG,SAAS,QAAQ,MAAM,iBAAiB,MAAM,GAAG,OACtD,QAAQ,KAAK;GAAE,MAAM;GAAa,OAAO;EAAK,CAAC;CACnD,CAAC;CACD,sBAAsB;EACpB,MAAM,EAAE,YAAY;EAEpB,IAAI,QAAQ,UAAU,MAAM,WAC1B;EAEF,IAAI,GAAG,SAAS,QAAQ,MAAM,iBAAiB,MAAM,GAAG,OACtD,QAAQ,KAAK,EAAE,MAAM,aAAa,CAAC;CACvC,CAAC;AACH;AA8BA,MAAa,cAAc,gBAAgB;CACzC,MAAM;CAEN,OAAO;EACL,SAAS;GAAE,MAAM;GAAqC,SAAS,KAAA;EAAU;EACzE,MAAM;GAAE,MAAM;GAAkC,SAAS,KAAA;EAAU;EACnE,MAAM;GAAE,MAAM;GAA0C,SAAS,KAAA;EAAU;EAC3E,aAAa;GAAE,MAAM;GAA0C,SAAS,KAAA;EAAU;EAClF,WAAW;GAAE,MAAM,CAAC,OAAO,MAAM;GAA+B,SAAS,KAAA;EAAU;EACnF,kBAAkB;GAAE,MAAM,CAAC,OAAO,MAAM;GAA+B,SAAS,KAAA;EAAU;EAC1F,eAAe;GAAE,MAAM;GAAwC,SAAS,KAAA;EAAU;;EAElF,eAAe;GAAE,MAAM;GAAsC,SAAS,KAAA;EAAU;;;EAGhF,kBAAkB;GAAE,MAAM;GAA2C,SAAS,KAAA;EAAU;EACxF,yBAAyB;GAAE,MAAM;GAA2C,SAAS,KAAA;EAAU;EAC/F,MAAM;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EACzC,UAAU;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAC7C,UAAU;GAAE,MAAM;GAA6B,SAAS,KAAA;EAAU;EAClE,iBAAiB;GAAE,MAAM;GAA6B,SAAS,KAAA;EAAU;EACzE,SAAS;EACT,OAAO;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC3C,cAAc;EACd,SAAS;EACT,YAAY;EACZ,OAAO;EACP,QAAQ;EACR,MAAM;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC1C,KAAK;GAAE,MAAM;GAA+B,SAAS,KAAA;EAAU;EAC/D,MAAM;GAAE,MAAM;GAA0B,SAAS,KAAA;EAAU;CAC7D;CAEA,OAAO;EACL,6BAA6B,aAA+C;EAC5E,4BAA4B,WAAkC;EAC9D,gBAAgB,aAAoD;EACpE,gBAAgB,UAA0D;EAC1E,qBAAqB,aAAyD;EAC9E,qBAAqB,eAAoE;EACzF,oBAAoB,aAAwD;EAC5E,oBAAoB,cAAkE;CACxF;CACA,OAAO;CAGP,MAAM,OAAO,EAAE,OAAO,QAAQ;EAC5B,MAAM,4BAAoE,YAAY;GACpF,KAAK,4BAA4B,OAAO;GACxC,KAAK,2BAA2B,QAAQ,KAAK;EAC/C;EACA,MAAM,gBAA4C,YAAY;GAC5D,KAAK,eAAe,OAAO;GAC3B,KAAK,eAAe,QAAQ,KAAK;EACnC;EACA,MAAM,qBAAsD,YAAY;GACtE,KAAK,oBAAoB,OAAO;GAChC,KAAK,oBAAoB,QAAQ,KAAK;EACxC;EACA,MAAM,oBAAoD,YAAY;GACpE,KAAK,mBAAmB,OAAO;GAC/B,KAAK,mBAAmB,QAAQ,KAAK;EACvC;EACA,MAAM,MAAM,SAAS,OAAqB,cAAc,mBAAmB,kBAAkB,wBAAwB;EACrH,aAAa,GAAG;EAChB,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,aAAa,GAA8B,MAAM,UAAU;GAC7F,SAAS,IAAI,IAAI,MAAM;GACvB,kBAAkB,IAAI,IAAI,MAAM;GAChC,iBAAiB,IAAI,IAAI,MAAM;GAC/B,YAAY,IAAI,IAAI,MAAM;GAC1B,gBAAgB,IAAI,IAAI,MAAM;GAC9B,qBAAqB,IAAI,IAAI,MAAM;GACnC,WAAW,IAAI,IAAI,MAAM;GACzB,aAAa,IAAI,IAAI,MAAM;GAC3B,MAAM,IAAI,IAAI,MAAM;GACpB,WAAW,IAAI,IAAI,MAAM;GACzB,gBAAgB,IAAI,IAAI,MAAM;GAC9B,eAAe,IAAI,IAAI,MAAM;GAC7B,YAAY,IAAI,IAAI,MAAM;GAC1B,OAAO,IAAI,IAAI,MAAM;GACrB,SAAS,IAAI,IAAI,MAAM;GACvB,YAAY,IAAI,IAAI,MAAM;GAC1B,YAAY,IAAI,IAAI,MAAM;GAC1B,eAAe,IAAI,IAAI,MAAM;GAC7B,cAAc,IAAI,IAAI,MAAM;GAC5B,YAAY,IAAI,IAAI,MAAM;GAC1B,WAAW,IAAI,IAAI,MAAM;GACzB,iBAAiB,IAAI,IAAI,MAAM;GAC/B,iBAAiB,IAAI,IAAI,MAAM;EACjC,CAAC,CAAC;CACJ;AACF,CAAC;AAED,MAAa,iBAAiB,gBAAgB;CAC5C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,gBAAgB,GAA8B,MAAM,UAAU,CAAC;CACrG;AACF,CAAC;AAED,MAAa,gBAAgB,gBAAgB;CAC3C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,oBAAoB,QAAQ;EAC5B,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,eAAe,GAA8B,MAAM,UAAU,CAAC;CACpG;AACF,CAAC;AAED,MAAa,cAAc,gBAAgB;CACzC,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,oBAAoB,MAAM;EAE1B,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,aAAa,GAA8B,MAAM,UAAU,CAAC;CAClG;AACF,CAAC;AAED,MAAa,gBAAgB,gBAAgB;CAC3C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,oBAAoB,QAAQ;EAC5B,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,eAAe,GAA8B,MAAM,UAAU,CAAC;CACpG;AACF,CAAC;AAED,MAAa,aAAa,gBAAgB;CACxC,MAAM;CACN,OAAO;;AAEL,OAAO;EAAE,MAAM;EAAQ,SAAS,KAAA;CAAU,EAC5C;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,gBAAgB;EAC5B,MAAM,UAAU,gBAAgB;EAChC,IAAI,YAAY,QACd,aAAa,EACX,OACC,YAAY,WACT,IAAI,IAAI,MAAM,kBAAkB,IAChC,IAAI,IAAI,MAAM,kBAAkB,GACpC,MAAM,UAAU,CAClB;EAEF,MAAM,MAAM,gBAA+B,EAAE,OAAO,MAAM,SAAS,GAAG,EAAE;EAExE,gBAAgB,EAAE,IAAI,CAAC;EACvB,MAAM,KAAK,IAAwB,IAAI;EACvC,eAAe,KAAK,UAAU,IAAI,MAAM,KAAK;EAC7C,aAAa,EACX,OACA;GAAE,GAAG,IAAI,IAAI,MAAM,YAAY,IAAI,KAAK;GAA8B,KAAK;EAAG,GAC9E,MAAM,UAAU,CAClB;CACF;AACF,CAAC;AAED,MAAa,sBAAsB,gBAAgB;CACjD,MAAM;CACN,OAAO,EACL,OAAO;EAAE,MAAM;EAAQ,UAAU;CAAK,EACxC;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,gBAAgB;EAC5B,MAAM,SAAS,gBAAkC,EAAE,OAAO,MAAM,MAAM,EAAE;EACxE,mBAAmB,EAAE,OAAO,CAAC;EAC7B,aAAa,EACX,OACA,IAAI,IAAI,MAAM,qBAAqB,OAAO,KAAK,GAC/C,MAAM,UAAU,CAClB;CACF;AACF,CAAC;AAED,MAAa,cAAc,gBAAgB;CACzC,MAAM;CACN,OAAO;;EAEL,OAAO;GAAE,MAAM;GAAQ,UAAU;EAAK;;EAEtC,SAAS;GAAE,MAAM,CAAC,QAAQ,MAAM;GAAgC,SAAS,KAAA;EAAU;CACrF;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,gBAAgB;EAE5B,MAAM,SAAS,2BAA2B;EAC1C,aAAa,EACX,OACA,IAAI,IAAI,MAAM,aAAa;GACzB,OAAO,MAAM;GACb,KAAK,QAAQ,IAAI,MAAM;GACvB,SAAS,MAAM,WAAW,OAAO,KAAA,IAAY,OAAO,MAAM,OAAO;EACnE,CAAC,GACD,MAAM,UAAU,CAClB;CACF;AACF,CAAC;AAED,MAAa,0BAA0B,gBAAgB;CACrD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,aAAa,EACX,QACA,IAAI,IAAI,MAAM,yBAAyB,GACvC,MAAM,UAAU,CAClB;CACF;AACF,CAAC;AAED,MAAa,0BAA0B,gBAAgB;CACrD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,MAAM,EAAE,QAAQ,mBAAmB;EACnC,aAAa,EACX,QACA,IAAI,IAAI,MAAM,yBAAyB,IAAI,KAAK,GAChD,MAAM,UAAU,CAClB;CACF;AACF,CAAC;AAED,MAAa,qBAAqB,gBAAgB;CAChD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,MAAM,EAAE,WAAW,sBAAsB;EACzC,aAAa,EACX,QACA,IAAI,IAAI,MAAM,oBAAoB,OAAO,KAAK,GAC9C,MAAM,UAAU,CAClB;CACF;AACF,CAAC;AAED,MAAa,uBAAuB,gBAAgB;CAClD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,MAAM,EAAE,QAAQ,mBAAmB;EACnC,aAAa,EACX,QACA,IAAI,IAAI,MAAM,sBAAsB,IAAI,KAAK,GAC7C,MAAM,UAAU,CAClB;CACF;AACF,CAAC;AAED,MAAa,qBAAqB,gBAAgB;CAChD,MAAM;CACN,OAAO;;AAEL,OAAO;EAAE,MAAM;EAAQ,UAAU;CAAK,EACxC;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,gBAAgB;EAC5B,MAAM,MAAM,gBAA+B,EAAE,OAAO,MAAM,MAAM,EAAE;EAElE,aAAa,EACX,OACA,IAAI,IAAI,MAAM,oBAAoB,IAAI,KAAK,GAC3C,MAAM,UAAU,CAClB;CACF;AACF,CAAC;AAED,MAAa,eAAe,gBAAgB;CAC1C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,cAAc,GAA8B,MAAM,UAAU,CAAC;CACnG;AACF,CAAC;AAED,MAAa,sBAAsB,gBAAgB;CACjD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,qBAAqB,GAA8B,MAAM,UAAU,CAAC;CAC1G;AACF,CAAC"}
|
|
@@ -7,7 +7,7 @@ interface TableContext {
|
|
|
7
7
|
/** 机器实例,供部件上报 DOM 侧的事实(如行卸载带走了焦点)。 */
|
|
8
8
|
service: Service<TableSchema>;
|
|
9
9
|
}
|
|
10
|
-
declare function useTable(props: TableSchema['props'], onSortChange?: TableSchema['props']['onSortChange'], onSelectionChange?: TableSchema['props']['onSelectionChange'], onExpandedChange?: TableSchema['props']['onExpandedChange']): TableContext;
|
|
10
|
+
declare function useTable(props: TableSchema['props'], onSortChange?: TableSchema['props']['onSortChange'], onSelectionChange?: TableSchema['props']['onSelectionChange'], onExpandedChange?: TableSchema['props']['onExpandedChange'], onColumnPreferenceChange?: TableSchema['props']['onColumnPreferenceChange']): TableContext;
|
|
11
11
|
//#endregion
|
|
12
12
|
export { TableContext, useTable };
|
|
13
13
|
//# sourceMappingURL=use-table.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-table.d.ts","names":[],"sources":["../../../src/components/table/use-table.ts"],"mappings":";;;;UAUiB;EACf,KAAK,YAAY;;EAEjB,SAAS,QAAQ;;iBAGH,SACd,OAAO,sBACP,eAAe,sCACf,oBAAoB,2CACpB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"use-table.d.ts","names":[],"sources":["../../../src/components/table/use-table.ts"],"mappings":";;;;UAUiB;EACf,KAAK,YAAY;;EAEjB,SAAS,QAAQ;;iBAGH,SACd,OAAO,sBACP,eAAe,sCACf,oBAAoB,2CACpB,mBAAmB,0CACnB,2BAA2B,mDAC1B"}
|
|
@@ -5,12 +5,13 @@ import { computed } from "vue";
|
|
|
5
5
|
import { connectTable, tableMachine } from "@xihan-ui/headless";
|
|
6
6
|
import { createScope } from "@xihan-ui/kernel";
|
|
7
7
|
//#region src/components/table/use-table.ts
|
|
8
|
-
function useTable(props, onSortChange, onSelectionChange, onExpandedChange) {
|
|
8
|
+
function useTable(props, onSortChange, onSelectionChange, onExpandedChange, onColumnPreferenceChange) {
|
|
9
9
|
const service = useMachine(tableMachine, () => ({
|
|
10
10
|
...props,
|
|
11
11
|
onSortChange,
|
|
12
12
|
onSelectionChange,
|
|
13
|
-
onExpandedChange
|
|
13
|
+
onExpandedChange,
|
|
14
|
+
onColumnPreferenceChange
|
|
14
15
|
}), createScope(null, createVueIdGenerator()));
|
|
15
16
|
return {
|
|
16
17
|
api: computed(() => connectTable(service, vueNormalize)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-table.js","names":[],"sources":["../../../src/components/table/use-table.ts"],"sourcesContent":["import type { TableApi, TableSchema } from '@xihan-ui/headless'\nimport type { Service } from '@xihan-ui/machine'\nimport type { ComputedRef } from 'vue'\nimport { connectTable, tableMachine } 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 TableContext {\n api: ComputedRef<TableApi>\n /** 机器实例,供部件上报 DOM 侧的事实(如行卸载带走了焦点)。 */\n service: Service<TableSchema>\n}\n\nexport function useTable(\n props: TableSchema['props'],\n onSortChange?: TableSchema['props']['onSortChange'],\n onSelectionChange?: TableSchema['props']['onSelectionChange'],\n onExpandedChange?: TableSchema['props']['onExpandedChange'],\n): TableContext {\n const idGen = createVueIdGenerator()\n const scope = createScope(null, idGen)\n const service = useMachine(\n tableMachine,\n () => ({ ...props, onSortChange, onSelectionChange, onExpandedChange }),\n scope,\n )\n const api = computed(() => connectTable(service, vueNormalize))\n return { api, service }\n}\n"],"mappings":";;;;;;;AAgBA,SAAgB,SACd,OACA,cACA,mBACA,
|
|
1
|
+
{"version":3,"file":"use-table.js","names":[],"sources":["../../../src/components/table/use-table.ts"],"sourcesContent":["import type { TableApi, TableSchema } from '@xihan-ui/headless'\nimport type { Service } from '@xihan-ui/machine'\nimport type { ComputedRef } from 'vue'\nimport { connectTable, tableMachine } 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 TableContext {\n api: ComputedRef<TableApi>\n /** 机器实例,供部件上报 DOM 侧的事实(如行卸载带走了焦点)。 */\n service: Service<TableSchema>\n}\n\nexport function useTable(\n props: TableSchema['props'],\n onSortChange?: TableSchema['props']['onSortChange'],\n onSelectionChange?: TableSchema['props']['onSelectionChange'],\n onExpandedChange?: TableSchema['props']['onExpandedChange'],\n onColumnPreferenceChange?: TableSchema['props']['onColumnPreferenceChange'],\n): TableContext {\n const idGen = createVueIdGenerator()\n const scope = createScope(null, idGen)\n const service = useMachine(\n tableMachine,\n () => ({ ...props, onSortChange, onSelectionChange, onExpandedChange, onColumnPreferenceChange }),\n scope,\n )\n const api = computed(() => connectTable(service, vueNormalize))\n return { api, service }\n}\n"],"mappings":";;;;;;;AAgBA,SAAgB,SACd,OACA,cACA,mBACA,kBACA,0BACc;CAGd,MAAM,UAAU,WACd,qBACO;EAAE,GAAG;EAAO;EAAc;EAAmB;EAAkB;CAAyB,IAHnF,YAAY,MADZ,qBACsB,CAI9B,CACN;CAEA,OAAO;EAAE,KADG,eAAe,aAAa,SAAS,YAAY,CAClD;EAAG;CAAQ;AACxB"}
|