@xihan-ui/vue 2.0.0 → 3.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 +1593 -0
- package/README.md +1 -1
- package/dist/components/accordion/accordion.d.ts +6 -0
- package/dist/components/accordion/accordion.d.ts.map +1 -1
- package/dist/components/accordion/accordion.js +4 -2
- package/dist/components/accordion/accordion.js.map +1 -1
- package/dist/components/alert/alert.d.ts +9 -0
- package/dist/components/alert/alert.d.ts.map +1 -1
- package/dist/components/alert/alert.js +4 -0
- package/dist/components/alert/alert.js.map +1 -1
- package/dist/components/anchor/anchor.d.ts +2 -2
- package/dist/components/anchor/anchor.d.ts.map +1 -1
- package/dist/components/anchor/anchor.js +2 -2
- package/dist/components/anchor/anchor.js.map +1 -1
- package/dist/components/anchor/use-anchor.d.ts +2 -2
- package/dist/components/anchor/use-anchor.js +3 -3
- package/dist/components/anchor/use-anchor.js.map +1 -1
- package/dist/components/approval/approval.d.ts +8 -1
- package/dist/components/approval/approval.d.ts.map +1 -1
- package/dist/components/approval/approval.js +10 -1
- package/dist/components/approval/approval.js.map +1 -1
- package/dist/components/avatar/avatar.d.ts +8 -0
- package/dist/components/avatar/avatar.d.ts.map +1 -1
- package/dist/components/avatar/avatar.js +3 -1
- package/dist/components/avatar/avatar.js.map +1 -1
- package/dist/components/avatar/use-avatar.d.ts.map +1 -1
- package/dist/components/avatar/use-avatar.js +3 -1
- package/dist/components/avatar/use-avatar.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/back-top/use-back-top.d.ts.map +1 -1
- package/dist/components/back-top/use-back-top.js +3 -1
- package/dist/components/back-top/use-back-top.js.map +1 -1
- package/dist/components/badge/badge.d.ts +22 -0
- package/dist/components/badge/badge.d.ts.map +1 -1
- package/dist/components/badge/badge.js +11 -2
- package/dist/components/badge/badge.js.map +1 -1
- package/dist/components/breadcrumb/breadcrumb.d.ts +11 -1
- package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -1
- package/dist/components/breadcrumb/breadcrumb.js +28 -9
- package/dist/components/breadcrumb/breadcrumb.js.map +1 -1
- package/dist/components/calendar-picker/calendar-picker.d.ts +16 -0
- package/dist/components/calendar-picker/calendar-picker.d.ts.map +1 -1
- package/dist/components/calendar-picker/calendar-picker.js +4 -0
- package/dist/components/calendar-picker/calendar-picker.js.map +1 -1
- package/dist/components/calendar-range-picker/calendar-range-picker.d.ts +16 -0
- package/dist/components/calendar-range-picker/calendar-range-picker.d.ts.map +1 -1
- package/dist/components/calendar-range-picker/calendar-range-picker.js +4 -0
- package/dist/components/calendar-range-picker/calendar-range-picker.js.map +1 -1
- package/dist/components/card/card.d.ts +37 -2
- package/dist/components/card/card.d.ts.map +1 -1
- package/dist/components/card/card.js +42 -3
- package/dist/components/card/card.js.map +1 -1
- package/dist/components/carousel/carousel.d.ts +7 -1
- package/dist/components/carousel/carousel.d.ts.map +1 -1
- package/dist/components/carousel/carousel.js +1 -0
- package/dist/components/carousel/carousel.js.map +1 -1
- package/dist/components/carousel/use-carousel.d.ts.map +1 -1
- package/dist/components/carousel/use-carousel.js +3 -1
- package/dist/components/carousel/use-carousel.js.map +1 -1
- package/dist/components/cartesian-chart/cartesian-chart.d.ts +262 -0
- package/dist/components/cartesian-chart/cartesian-chart.d.ts.map +1 -0
- package/dist/components/cartesian-chart/cartesian-chart.js +293 -0
- package/dist/components/cartesian-chart/cartesian-chart.js.map +1 -0
- package/dist/components/cartesian-chart/context.js +15 -0
- package/dist/components/cartesian-chart/context.js.map +1 -0
- package/dist/components/cartesian-chart/use-cartesian-chart.d.ts +21 -0
- package/dist/components/cartesian-chart/use-cartesian-chart.d.ts.map +1 -0
- package/dist/components/cartesian-chart/use-cartesian-chart.js +29 -0
- package/dist/components/cartesian-chart/use-cartesian-chart.js.map +1 -0
- package/dist/components/cascader/cascader.d.ts +72 -3
- package/dist/components/cascader/cascader.d.ts.map +1 -1
- package/dist/components/cascader/cascader.js +125 -7
- package/dist/components/cascader/cascader.js.map +1 -1
- package/dist/components/cascader/context.js +10 -1
- package/dist/components/cascader/context.js.map +1 -1
- package/dist/components/cascader/use-cascader.d.ts +2 -1
- package/dist/components/cascader/use-cascader.d.ts.map +1 -1
- package/dist/components/cascader/use-cascader.js +4 -1
- package/dist/components/cascader/use-cascader.js.map +1 -1
- package/dist/components/checkbox/checkbox.js +1 -1
- package/dist/components/checkbox-group/checkbox-group.d.ts +24 -3
- package/dist/components/checkbox-group/checkbox-group.d.ts.map +1 -1
- package/dist/components/checkbox-group/checkbox-group.js +20 -3
- package/dist/components/checkbox-group/checkbox-group.js.map +1 -1
- package/dist/components/citation/citation.d.ts +211 -0
- package/dist/components/citation/citation.d.ts.map +1 -0
- package/dist/components/citation/citation.js +222 -0
- package/dist/components/citation/citation.js.map +1 -0
- package/dist/components/citation/context.d.ts +11 -0
- package/dist/components/citation/context.d.ts.map +1 -0
- package/dist/components/citation/context.js +24 -0
- package/dist/components/citation/context.js.map +1 -0
- package/dist/components/citation/use-citation.d.ts +19 -0
- package/dist/components/citation/use-citation.d.ts.map +1 -0
- package/dist/components/citation/use-citation.js +51 -0
- package/dist/components/citation/use-citation.js.map +1 -0
- package/dist/components/code-view/code-view.d.ts +21 -0
- package/dist/components/code-view/code-view.d.ts.map +1 -1
- package/dist/components/code-view/code-view.js +23 -4
- package/dist/components/code-view/code-view.js.map +1 -1
- package/dist/components/collapsible/collapsible.d.ts +6 -0
- package/dist/components/collapsible/collapsible.d.ts.map +1 -1
- package/dist/components/collapsible/collapsible.js +4 -2
- package/dist/components/collapsible/collapsible.js.map +1 -1
- package/dist/components/color-field/color-field.d.ts +2 -2
- package/dist/components/color-field/color-field.js +1 -1
- package/dist/components/color-field/color-field.js.map +1 -1
- package/dist/components/color-picker/color-picker.d.ts +41 -3
- package/dist/components/color-picker/color-picker.d.ts.map +1 -1
- package/dist/components/color-picker/color-picker.js +33 -4
- package/dist/components/color-picker/color-picker.js.map +1 -1
- package/dist/components/color-picker/use-color-picker.d.ts +3 -1
- package/dist/components/color-picker/use-color-picker.d.ts.map +1 -1
- package/dist/components/color-picker/use-color-picker.js +8 -2
- package/dist/components/color-picker/use-color-picker.js.map +1 -1
- package/dist/components/color-slider/color-slider.d.ts +2 -2
- package/dist/components/color-slider/color-slider.js +1 -1
- package/dist/components/color-slider/color-slider.js.map +1 -1
- package/dist/components/combobox/combobox.d.ts +66 -4
- package/dist/components/combobox/combobox.d.ts.map +1 -1
- package/dist/components/combobox/combobox.js +107 -6
- package/dist/components/combobox/combobox.js.map +1 -1
- package/dist/components/combobox/context.js +10 -1
- package/dist/components/combobox/context.js.map +1 -1
- package/dist/components/command/command.d.ts +23 -2
- package/dist/components/command/command.d.ts.map +1 -1
- package/dist/components/command/command.js +48 -6
- package/dist/components/command/command.js.map +1 -1
- package/dist/components/command/use-command.d.ts.map +1 -1
- package/dist/components/command/use-command.js +9 -30
- package/dist/components/command/use-command.js.map +1 -1
- package/dist/components/context-menu/context-menu.d.ts +63 -18
- package/dist/components/context-menu/context-menu.d.ts.map +1 -1
- package/dist/components/context-menu/context-menu.js +141 -57
- package/dist/components/context-menu/context-menu.js.map +1 -1
- package/dist/components/context-menu/context.js +1 -1
- package/dist/components/context-menu/context.js.map +1 -1
- package/dist/components/context-menu/use-context-menu.d.ts +1 -1
- package/dist/components/context-menu/use-context-menu.d.ts.map +1 -1
- package/dist/components/context-menu/use-context-menu.js +4 -2
- package/dist/components/context-menu/use-context-menu.js.map +1 -1
- package/dist/components/date-field/date-field.d.ts +9 -1
- package/dist/components/date-field/date-field.d.ts.map +1 -1
- package/dist/components/date-field/date-field.js +2 -0
- package/dist/components/date-field/date-field.js.map +1 -1
- package/dist/components/date-picker/date-picker.d.ts +41 -1
- package/dist/components/date-picker/date-picker.d.ts.map +1 -1
- package/dist/components/date-picker/date-picker.js +16 -3
- package/dist/components/date-picker/date-picker.js.map +1 -1
- package/dist/components/date-range-picker/date-range-picker.d.ts +77 -2
- package/dist/components/date-range-picker/date-range-picker.d.ts.map +1 -1
- package/dist/components/date-range-picker/date-range-picker.js +102 -5
- package/dist/components/date-range-picker/date-range-picker.js.map +1 -1
- package/dist/components/date-range-picker/use-date-range-picker.d.ts +1 -1
- package/dist/components/date-range-picker/use-date-range-picker.js.map +1 -1
- package/dist/components/descriptions/descriptions.d.ts +38 -7
- package/dist/components/descriptions/descriptions.d.ts.map +1 -1
- package/dist/components/descriptions/descriptions.js +38 -4
- package/dist/components/descriptions/descriptions.js.map +1 -1
- package/dist/components/dialog/dialog.d.ts +16 -1
- package/dist/components/dialog/dialog.d.ts.map +1 -1
- package/dist/components/dialog/dialog.js +15 -2
- package/dist/components/dialog/dialog.js.map +1 -1
- package/dist/components/dialog/use-dialog.d.ts.map +1 -1
- package/dist/components/dialog/use-dialog.js +9 -27
- package/dist/components/dialog/use-dialog.js.map +1 -1
- package/dist/components/diff-view/diff-view.d.ts +22 -2
- package/dist/components/diff-view/diff-view.d.ts.map +1 -1
- package/dist/components/diff-view/diff-view.js +37 -14
- package/dist/components/diff-view/diff-view.js.map +1 -1
- package/dist/components/diff-view/use-diff-view.d.ts +7 -2
- package/dist/components/diff-view/use-diff-view.d.ts.map +1 -1
- package/dist/components/diff-view/use-diff-view.js +12 -5
- package/dist/components/diff-view/use-diff-view.js.map +1 -1
- package/dist/components/drawer/drawer.d.ts +46 -1
- package/dist/components/drawer/drawer.d.ts.map +1 -1
- package/dist/components/drawer/drawer.js +28 -4
- package/dist/components/drawer/drawer.js.map +1 -1
- package/dist/components/drawer/use-drawer.d.ts +1 -1
- package/dist/components/drawer/use-drawer.d.ts.map +1 -1
- package/dist/components/drawer/use-drawer.js +12 -29
- package/dist/components/drawer/use-drawer.js.map +1 -1
- package/dist/components/empty-state/empty-state.js +4 -1
- package/dist/components/empty-state/empty-state.js.map +1 -1
- package/dist/components/empty-state/use-empty-state.js +12 -3
- package/dist/components/empty-state/use-empty-state.js.map +1 -1
- package/dist/components/field/field.js +1 -1
- package/dist/components/field-array/field-array.d.ts +1 -1
- package/dist/components/field-array/field-array.d.ts.map +1 -1
- package/dist/components/field-array/field-array.js +5 -1
- package/dist/components/field-array/field-array.js.map +1 -1
- package/dist/components/field-array/use-field-array.d.ts +3 -1
- package/dist/components/field-array/use-field-array.d.ts.map +1 -1
- package/dist/components/field-array/use-field-array.js +5 -2
- package/dist/components/field-array/use-field-array.js.map +1 -1
- package/dist/components/file-upload/file-upload.d.ts +24 -1
- package/dist/components/file-upload/file-upload.d.ts.map +1 -1
- package/dist/components/file-upload/file-upload.js +12 -2
- package/dist/components/file-upload/file-upload.js.map +1 -1
- package/dist/components/file-upload/use-file-upload.d.ts +1 -1
- package/dist/components/file-upload/use-file-upload.d.ts.map +1 -1
- package/dist/components/file-upload/use-file-upload.js.map +1 -1
- package/dist/components/flex/flex.d.ts +1 -1
- package/dist/components/flex/flex.d.ts.map +1 -1
- package/dist/components/flex/flex.js +4 -4
- package/dist/components/flex/flex.js.map +1 -1
- package/dist/components/form/form.d.ts +18 -4
- package/dist/components/form/form.d.ts.map +1 -1
- package/dist/components/form/form.js +21 -7
- package/dist/components/form/form.js.map +1 -1
- package/dist/components/form/use-form.d.ts +6 -0
- package/dist/components/form/use-form.d.ts.map +1 -1
- package/dist/components/form/use-form.js +4 -0
- package/dist/components/form/use-form.js.map +1 -1
- package/dist/components/funnel-chart/context.js +15 -0
- package/dist/components/funnel-chart/context.js.map +1 -0
- package/dist/components/funnel-chart/funnel-chart.d.ts +175 -0
- package/dist/components/funnel-chart/funnel-chart.d.ts.map +1 -0
- package/dist/components/funnel-chart/funnel-chart.js +188 -0
- package/dist/components/funnel-chart/funnel-chart.js.map +1 -0
- package/dist/components/funnel-chart/use-funnel-chart.d.ts +19 -0
- package/dist/components/funnel-chart/use-funnel-chart.d.ts.map +1 -0
- package/dist/components/funnel-chart/use-funnel-chart.js +26 -0
- package/dist/components/funnel-chart/use-funnel-chart.js.map +1 -0
- package/dist/components/graph-chart/context.js +15 -0
- package/dist/components/graph-chart/context.js.map +1 -0
- package/dist/components/graph-chart/graph-chart.d.ts +194 -0
- package/dist/components/graph-chart/graph-chart.d.ts.map +1 -0
- package/dist/components/graph-chart/graph-chart.js +219 -0
- package/dist/components/graph-chart/graph-chart.js.map +1 -0
- package/dist/components/graph-chart/use-graph-chart.d.ts +19 -0
- package/dist/components/graph-chart/use-graph-chart.d.ts.map +1 -0
- package/dist/components/graph-chart/use-graph-chart.js +26 -0
- package/dist/components/graph-chart/use-graph-chart.js.map +1 -0
- package/dist/components/grid/grid.d.ts +7 -0
- package/dist/components/grid/grid.d.ts.map +1 -1
- package/dist/components/grid/grid.js +7 -1
- package/dist/components/grid/grid.js.map +1 -1
- package/dist/components/grid-list/context.d.ts +9 -0
- package/dist/components/grid-list/context.d.ts.map +1 -0
- package/dist/components/grid-list/context.js +24 -0
- package/dist/components/grid-list/context.js.map +1 -0
- package/dist/components/grid-list/grid-list.d.ts +149 -0
- package/dist/components/grid-list/grid-list.d.ts.map +1 -0
- package/dist/components/grid-list/grid-list.js +118 -0
- package/dist/components/grid-list/grid-list.js.map +1 -0
- package/dist/components/grid-list/use-grid-list.d.ts +12 -0
- package/dist/components/grid-list/use-grid-list.d.ts.map +1 -0
- package/dist/components/grid-list/use-grid-list.js +20 -0
- package/dist/components/grid-list/use-grid-list.js.map +1 -0
- package/dist/components/heatmap/heatmap.d.ts +45 -4
- package/dist/components/heatmap/heatmap.d.ts.map +1 -1
- package/dist/components/heatmap/heatmap.js +40 -14
- package/dist/components/heatmap/heatmap.js.map +1 -1
- package/dist/components/heatmap/use-heatmap.d.ts +4 -2
- package/dist/components/heatmap/use-heatmap.d.ts.map +1 -1
- package/dist/components/heatmap/use-heatmap.js +8 -4
- package/dist/components/heatmap/use-heatmap.js.map +1 -1
- package/dist/components/hierarchy-chart/context.js +15 -0
- package/dist/components/hierarchy-chart/context.js.map +1 -0
- package/dist/components/hierarchy-chart/hierarchy-chart.d.ts +201 -0
- package/dist/components/hierarchy-chart/hierarchy-chart.d.ts.map +1 -0
- package/dist/components/hierarchy-chart/hierarchy-chart.js +228 -0
- package/dist/components/hierarchy-chart/hierarchy-chart.js.map +1 -0
- package/dist/components/hierarchy-chart/use-hierarchy-chart.d.ts +19 -0
- package/dist/components/hierarchy-chart/use-hierarchy-chart.d.ts.map +1 -0
- package/dist/components/hierarchy-chart/use-hierarchy-chart.js +26 -0
- package/dist/components/hierarchy-chart/use-hierarchy-chart.js.map +1 -0
- package/dist/components/hover-card/hover-card.js +2 -2
- package/dist/components/icon/icon.d.ts +7 -1
- package/dist/components/icon/icon.d.ts.map +1 -1
- package/dist/components/icon/icon.js +1 -0
- package/dist/components/icon/icon.js.map +1 -1
- package/dist/components/image/use-image.d.ts.map +1 -1
- package/dist/components/image/use-image.js +3 -1
- package/dist/components/image/use-image.js.map +1 -1
- package/dist/components/image-cropper/image-cropper.d.ts +35 -4
- package/dist/components/image-cropper/image-cropper.d.ts.map +1 -1
- package/dist/components/image-cropper/image-cropper.js +34 -5
- package/dist/components/image-cropper/image-cropper.js.map +1 -1
- package/dist/components/image-cropper/use-image-cropper.d.ts +3 -1
- package/dist/components/image-cropper/use-image-cropper.d.ts.map +1 -1
- package/dist/components/image-cropper/use-image-cropper.js +4 -1
- package/dist/components/image-cropper/use-image-cropper.js.map +1 -1
- package/dist/components/image-viewer/image-viewer.js +1 -1
- package/dist/components/image-viewer/use-image-viewer.d.ts.map +1 -1
- package/dist/components/image-viewer/use-image-viewer.js +9 -27
- package/dist/components/image-viewer/use-image-viewer.js.map +1 -1
- package/dist/components/infinite-scroll/infinite-scroll.d.ts +9 -1
- package/dist/components/infinite-scroll/infinite-scroll.d.ts.map +1 -1
- package/dist/components/infinite-scroll/infinite-scroll.js +2 -0
- package/dist/components/infinite-scroll/infinite-scroll.js.map +1 -1
- package/dist/components/input-group/input-group.d.ts.map +1 -1
- package/dist/components/input-group/input-group.js +2 -1
- package/dist/components/input-group/input-group.js.map +1 -1
- package/dist/components/json-viewer/json-viewer.d.ts +17 -2
- package/dist/components/json-viewer/json-viewer.d.ts.map +1 -1
- package/dist/components/json-viewer/json-viewer.js +26 -8
- package/dist/components/json-viewer/json-viewer.js.map +1 -1
- package/dist/components/kbd/kbd.d.ts.map +1 -1
- package/dist/components/kbd/kbd.js +27 -10
- package/dist/components/kbd/kbd.js.map +1 -1
- package/dist/components/listbox/listbox.d.ts +25 -2
- package/dist/components/listbox/listbox.d.ts.map +1 -1
- package/dist/components/listbox/listbox.js +39 -4
- package/dist/components/listbox/listbox.js.map +1 -1
- package/dist/components/loading-bar/use-loading-bar.d.ts.map +1 -1
- package/dist/components/loading-bar/use-loading-bar.js +3 -1
- package/dist/components/loading-bar/use-loading-bar.js.map +1 -1
- package/dist/components/log/log.d.ts +41 -2
- package/dist/components/log/log.d.ts.map +1 -1
- package/dist/components/log/log.js +25 -3
- package/dist/components/log/log.js.map +1 -1
- package/dist/components/log/use-log.d.ts +1 -1
- package/dist/components/log/use-log.d.ts.map +1 -1
- package/dist/components/log/use-log.js +4 -1
- package/dist/components/log/use-log.js.map +1 -1
- package/dist/components/markdown-stream/markdown-stream.d.ts +22 -2
- package/dist/components/markdown-stream/markdown-stream.d.ts.map +1 -1
- package/dist/components/markdown-stream/markdown-stream.js +43 -4
- package/dist/components/markdown-stream/markdown-stream.js.map +1 -1
- package/dist/components/marquee/marquee.d.ts +68 -12
- package/dist/components/marquee/marquee.d.ts.map +1 -1
- package/dist/components/marquee/marquee.js +52 -7
- package/dist/components/marquee/marquee.js.map +1 -1
- package/dist/components/mention/mention.d.ts +43 -7
- package/dist/components/mention/mention.d.ts.map +1 -1
- package/dist/components/mention/mention.js +50 -8
- package/dist/components/mention/mention.js.map +1 -1
- package/dist/components/menu/context.js +1 -1
- package/dist/components/menu/context.js.map +1 -1
- package/dist/components/menu/menu.d.ts +92 -28
- package/dist/components/menu/menu.d.ts.map +1 -1
- package/dist/components/menu/menu.js +162 -54
- package/dist/components/menu/menu.js.map +1 -1
- package/dist/components/menu/use-menu.d.ts +1 -1
- package/dist/components/menu/use-menu.d.ts.map +1 -1
- package/dist/components/menu/use-menu.js +8 -6
- package/dist/components/menu/use-menu.js.map +1 -1
- package/dist/components/menubar/context.js +1 -1
- package/dist/components/menubar/context.js.map +1 -1
- package/dist/components/menubar/menubar.d.ts +52 -19
- package/dist/components/menubar/menubar.d.ts.map +1 -1
- package/dist/components/menubar/menubar.js +137 -56
- package/dist/components/menubar/menubar.js.map +1 -1
- package/dist/components/menubar/use-menubar.d.ts +1 -1
- package/dist/components/menubar/use-menubar.d.ts.map +1 -1
- package/dist/components/menubar/use-menubar.js +4 -2
- package/dist/components/menubar/use-menubar.js.map +1 -1
- package/dist/components/message-feed/message-feed.d.ts +13 -1
- package/dist/components/message-feed/message-feed.d.ts.map +1 -1
- package/dist/components/message-feed/message-feed.js +25 -1
- package/dist/components/message-feed/message-feed.js.map +1 -1
- package/dist/components/navigation-menu/navigation-menu.d.ts +58 -1
- package/dist/components/navigation-menu/navigation-menu.d.ts.map +1 -1
- package/dist/components/navigation-menu/navigation-menu.js +82 -10
- package/dist/components/navigation-menu/navigation-menu.js.map +1 -1
- package/dist/components/notification/context.d.ts +5 -1
- package/dist/components/notification/context.d.ts.map +1 -1
- package/dist/components/notification/context.js.map +1 -1
- package/dist/components/notification/notification.d.ts +39 -23
- package/dist/components/notification/notification.d.ts.map +1 -1
- package/dist/components/notification/notification.js +27 -9
- package/dist/components/notification/notification.js.map +1 -1
- package/dist/components/notification/use-item-exit.js +22 -0
- package/dist/components/notification/use-item-exit.js.map +1 -0
- package/dist/components/notification/use-notification.d.ts +3 -3
- package/dist/components/notification/use-notification.d.ts.map +1 -1
- package/dist/components/notification/use-notification.js +20 -5
- package/dist/components/notification/use-notification.js.map +1 -1
- package/dist/components/number-animation/number-animation.d.ts +14 -2
- package/dist/components/number-animation/number-animation.d.ts.map +1 -1
- package/dist/components/number-animation/number-animation.js +5 -1
- package/dist/components/number-animation/number-animation.js.map +1 -1
- package/dist/components/number-field/number-field.d.ts +16 -1
- package/dist/components/number-field/number-field.d.ts.map +1 -1
- package/dist/components/number-field/number-field.js +6 -0
- package/dist/components/number-field/number-field.js.map +1 -1
- package/dist/components/page-header/page-header.d.ts.map +1 -1
- package/dist/components/page-header/page-header.js +2 -1
- package/dist/components/page-header/page-header.js.map +1 -1
- package/dist/components/pagination/pagination.d.ts +22 -2
- package/dist/components/pagination/pagination.d.ts.map +1 -1
- package/dist/components/pagination/pagination.js +22 -1
- package/dist/components/pagination/pagination.js.map +1 -1
- package/dist/components/pagination/use-pagination.js +1 -0
- package/dist/components/pagination/use-pagination.js.map +1 -1
- package/dist/components/pie-chart/context.js +15 -0
- package/dist/components/pie-chart/context.js.map +1 -0
- package/dist/components/pie-chart/pie-chart.d.ts +203 -0
- package/dist/components/pie-chart/pie-chart.d.ts.map +1 -0
- package/dist/components/pie-chart/pie-chart.js +236 -0
- package/dist/components/pie-chart/pie-chart.js.map +1 -0
- package/dist/components/pie-chart/use-pie-chart.d.ts +19 -0
- package/dist/components/pie-chart/use-pie-chart.d.ts.map +1 -0
- package/dist/components/pie-chart/use-pie-chart.js +26 -0
- package/dist/components/pie-chart/use-pie-chart.js.map +1 -0
- package/dist/components/popconfirm/popconfirm.js +2 -2
- package/dist/components/popover/popover.d.ts +11 -0
- package/dist/components/popover/popover.d.ts.map +1 -1
- package/dist/components/popover/popover.js +7 -2
- package/dist/components/popover/popover.js.map +1 -1
- package/dist/components/progress/progress.d.ts +63 -3
- package/dist/components/progress/progress.d.ts.map +1 -1
- package/dist/components/progress/progress.js +55 -3
- package/dist/components/progress/progress.js.map +1 -1
- package/dist/components/question-flow/question-flow.d.ts +40 -1
- package/dist/components/question-flow/question-flow.d.ts.map +1 -1
- package/dist/components/question-flow/question-flow.js +37 -1
- package/dist/components/question-flow/question-flow.js.map +1 -1
- package/dist/components/radar-chart/context.js +15 -0
- package/dist/components/radar-chart/context.js.map +1 -0
- package/dist/components/radar-chart/radar-chart.d.ts +189 -0
- package/dist/components/radar-chart/radar-chart.d.ts.map +1 -0
- package/dist/components/radar-chart/radar-chart.js +220 -0
- package/dist/components/radar-chart/radar-chart.js.map +1 -0
- package/dist/components/radar-chart/use-radar-chart.d.ts +19 -0
- package/dist/components/radar-chart/use-radar-chart.d.ts.map +1 -0
- package/dist/components/radar-chart/use-radar-chart.js +26 -0
- package/dist/components/radar-chart/use-radar-chart.js.map +1 -0
- package/dist/components/radio-group/radio-group.d.ts +37 -2
- package/dist/components/radio-group/radio-group.d.ts.map +1 -1
- package/dist/components/radio-group/radio-group.js +54 -8
- package/dist/components/radio-group/radio-group.js.map +1 -1
- package/dist/components/radio-group/use-radio-group.d.ts +3 -1
- package/dist/components/radio-group/use-radio-group.d.ts.map +1 -1
- package/dist/components/radio-group/use-radio-group.js +7 -3
- package/dist/components/radio-group/use-radio-group.js.map +1 -1
- package/dist/components/reasoning/reasoning.d.ts.map +1 -1
- package/dist/components/reasoning/reasoning.js +1 -0
- package/dist/components/reasoning/reasoning.js.map +1 -1
- package/dist/components/sankey-chart/context.js +15 -0
- package/dist/components/sankey-chart/context.js.map +1 -0
- package/dist/components/sankey-chart/sankey-chart.d.ts +161 -0
- package/dist/components/sankey-chart/sankey-chart.d.ts.map +1 -0
- package/dist/components/sankey-chart/sankey-chart.js +208 -0
- package/dist/components/sankey-chart/sankey-chart.js.map +1 -0
- package/dist/components/sankey-chart/use-sankey-chart.d.ts +19 -0
- package/dist/components/sankey-chart/use-sankey-chart.d.ts.map +1 -0
- package/dist/components/sankey-chart/use-sankey-chart.js +26 -0
- package/dist/components/sankey-chart/use-sankey-chart.js.map +1 -0
- package/dist/components/scroll-area/scroll-area.d.ts +13 -5
- package/dist/components/scroll-area/scroll-area.d.ts.map +1 -1
- package/dist/components/scroll-area/scroll-area.js +17 -3
- package/dist/components/scroll-area/scroll-area.js.map +1 -1
- package/dist/components/select/select.d.ts +25 -2
- package/dist/components/select/select.d.ts.map +1 -1
- package/dist/components/select/select.js +48 -6
- package/dist/components/select/select.js.map +1 -1
- package/dist/components/select/use-select.js +2 -1
- package/dist/components/select/use-select.js.map +1 -1
- package/dist/components/side-nav/context.js +17 -1
- package/dist/components/side-nav/context.js.map +1 -1
- package/dist/components/side-nav/side-nav.d.ts +51 -7
- package/dist/components/side-nav/side-nav.d.ts.map +1 -1
- package/dist/components/side-nav/side-nav.js +152 -13
- package/dist/components/side-nav/side-nav.js.map +1 -1
- package/dist/components/side-nav/use-side-nav.d.ts +4 -2
- package/dist/components/side-nav/use-side-nav.d.ts.map +1 -1
- package/dist/components/side-nav/use-side-nav.js +5 -3
- package/dist/components/side-nav/use-side-nav.js.map +1 -1
- package/dist/components/signature-pad/signature-pad.d.ts +26 -4
- package/dist/components/signature-pad/signature-pad.d.ts.map +1 -1
- package/dist/components/signature-pad/signature-pad.js +32 -4
- package/dist/components/signature-pad/signature-pad.js.map +1 -1
- package/dist/components/signature-pad/use-signature-pad.d.ts +1 -1
- package/dist/components/signature-pad/use-signature-pad.d.ts.map +1 -1
- package/dist/components/signature-pad/use-signature-pad.js.map +1 -1
- package/dist/components/skeleton/use-skeleton.js +6 -2
- package/dist/components/skeleton/use-skeleton.js.map +1 -1
- package/dist/components/slider/slider.d.ts +27 -0
- package/dist/components/slider/slider.d.ts.map +1 -1
- package/dist/components/slider/slider.js +12 -0
- package/dist/components/slider/slider.js.map +1 -1
- package/dist/components/sortable/sortable.d.ts +18 -0
- package/dist/components/sortable/sortable.d.ts.map +1 -1
- package/dist/components/sortable/sortable.js +7 -2
- package/dist/components/sortable/sortable.js.map +1 -1
- package/dist/components/sortable/use-sortable.d.ts +1 -1
- package/dist/components/sortable/use-sortable.d.ts.map +1 -1
- package/dist/components/sortable/use-sortable.js +2 -1
- package/dist/components/sortable/use-sortable.js.map +1 -1
- package/dist/components/sparkline/sparkline.d.ts +101 -0
- package/dist/components/sparkline/sparkline.d.ts.map +1 -0
- package/dist/components/sparkline/sparkline.js +54 -0
- package/dist/components/sparkline/sparkline.js.map +1 -0
- package/dist/components/sparkline/use-sparkline.d.ts +15 -0
- package/dist/components/sparkline/use-sparkline.d.ts.map +1 -0
- package/dist/components/sparkline/use-sparkline.js +21 -0
- package/dist/components/sparkline/use-sparkline.js.map +1 -0
- package/dist/components/spinner/spinner.d.ts +8 -0
- package/dist/components/spinner/spinner.d.ts.map +1 -1
- package/dist/components/spinner/spinner.js +2 -0
- package/dist/components/spinner/spinner.js.map +1 -1
- package/dist/components/spinner/use-spinner.js +4 -2
- package/dist/components/spinner/use-spinner.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/steps.d.ts +28 -1
- package/dist/components/steps/steps.d.ts.map +1 -1
- package/dist/components/steps/steps.js +11 -2
- package/dist/components/steps/steps.js.map +1 -1
- package/dist/components/switch/switch.js +1 -1
- package/dist/components/table/context.js +9 -1
- package/dist/components/table/context.js.map +1 -1
- package/dist/components/table/table.d.ts +52 -3
- package/dist/components/table/table.d.ts.map +1 -1
- package/dist/components/table/table.js +40 -11
- package/dist/components/table/table.js.map +1 -1
- package/dist/components/table/use-table.d.ts +3 -1
- package/dist/components/table/use-table.d.ts.map +1 -1
- package/dist/components/table/use-table.js +5 -2
- package/dist/components/table/use-table.js.map +1 -1
- package/dist/components/tabs/tabs.d.ts +51 -3
- package/dist/components/tabs/tabs.d.ts.map +1 -1
- package/dist/components/tabs/tabs.js +60 -8
- package/dist/components/tabs/tabs.js.map +1 -1
- package/dist/components/tag/use-tag.d.ts.map +1 -1
- package/dist/components/tag/use-tag.js +3 -1
- package/dist/components/tag/use-tag.js.map +1 -1
- package/dist/components/tag-group/tag-group.js +1 -1
- package/dist/components/tag-group/tag-group.js.map +1 -1
- package/dist/components/tags-input/tags-input.d.ts +10 -2
- package/dist/components/tags-input/tags-input.d.ts.map +1 -1
- package/dist/components/tags-input/tags-input.js +11 -4
- package/dist/components/tags-input/tags-input.js.map +1 -1
- package/dist/components/tags-input/use-tags-input.d.ts +4 -2
- package/dist/components/tags-input/use-tags-input.d.ts.map +1 -1
- package/dist/components/tags-input/use-tags-input.js +5 -2
- package/dist/components/tags-input/use-tags-input.js.map +1 -1
- package/dist/components/time-picker/time-picker.d.ts +11 -7
- package/dist/components/time-picker/time-picker.d.ts.map +1 -1
- package/dist/components/time-picker/time-picker.js +4 -2
- package/dist/components/time-picker/time-picker.js.map +1 -1
- package/dist/components/time-range-picker/time-range-picker.d.ts +11 -7
- package/dist/components/time-range-picker/time-range-picker.d.ts.map +1 -1
- package/dist/components/time-range-picker/time-range-picker.js +4 -2
- package/dist/components/time-range-picker/time-range-picker.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/timestamp/timestamp.d.ts +20 -1
- package/dist/components/timestamp/timestamp.d.ts.map +1 -1
- package/dist/components/timestamp/timestamp.js +16 -5
- package/dist/components/timestamp/timestamp.js.map +1 -1
- package/dist/components/toolbar/toolbar.d.ts +17 -2
- package/dist/components/toolbar/toolbar.d.ts.map +1 -1
- package/dist/components/toolbar/toolbar.js +31 -4
- package/dist/components/toolbar/toolbar.js.map +1 -1
- package/dist/components/toolbar/use-toolbar.d.ts +4 -2
- package/dist/components/toolbar/use-toolbar.d.ts.map +1 -1
- package/dist/components/toolbar/use-toolbar.js +5 -2
- package/dist/components/toolbar/use-toolbar.js.map +1 -1
- package/dist/components/tooltip/context.d.ts +21 -0
- package/dist/components/tooltip/context.d.ts.map +1 -0
- package/dist/components/tooltip/context.js +10 -1
- package/dist/components/tooltip/context.js.map +1 -1
- package/dist/components/tooltip/tooltip.d.ts +53 -1
- package/dist/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/components/tooltip/tooltip.js +34 -3
- package/dist/components/tooltip/tooltip.js.map +1 -1
- package/dist/components/tooltip/use-tooltip.d.ts +3 -18
- package/dist/components/tooltip/use-tooltip.d.ts.map +1 -1
- package/dist/components/tooltip/use-tooltip.js +2 -0
- package/dist/components/tooltip/use-tooltip.js.map +1 -1
- package/dist/components/tour/tour.d.ts +8 -0
- package/dist/components/tour/tour.d.ts.map +1 -1
- package/dist/components/tour/tour.js +2 -0
- package/dist/components/tour/tour.js.map +1 -1
- package/dist/components/transfer/transfer.d.ts +30 -2
- package/dist/components/transfer/transfer.d.ts.map +1 -1
- package/dist/components/transfer/transfer.js +29 -3
- package/dist/components/transfer/transfer.js.map +1 -1
- package/dist/components/tree/tree.d.ts +43 -8
- package/dist/components/tree/tree.d.ts.map +1 -1
- package/dist/components/tree/tree.js +28 -15
- package/dist/components/tree/tree.js.map +1 -1
- package/dist/components/tree-select/context.js +10 -1
- package/dist/components/tree-select/context.js.map +1 -1
- package/dist/components/tree-select/tree-select.d.ts +78 -6
- package/dist/components/tree-select/tree-select.d.ts.map +1 -1
- package/dist/components/tree-select/tree-select.js +127 -12
- package/dist/components/tree-select/tree-select.js.map +1 -1
- package/dist/components/tree-select/use-tree-select.d.ts +3 -0
- package/dist/components/tree-select/use-tree-select.d.ts.map +1 -1
- package/dist/components/tree-select/use-tree-select.js +6 -1
- package/dist/components/tree-select/use-tree-select.js.map +1 -1
- package/dist/components/truncate/truncate.d.ts +25 -4
- package/dist/components/truncate/truncate.d.ts.map +1 -1
- package/dist/components/truncate/truncate.js +29 -14
- package/dist/components/truncate/truncate.js.map +1 -1
- package/dist/components/truncate/use-truncate.d.ts.map +1 -1
- package/dist/components/truncate/use-truncate.js +3 -1
- package/dist/components/truncate/use-truncate.js.map +1 -1
- package/dist/components/typography/typography.d.ts +35 -2
- package/dist/components/typography/typography.d.ts.map +1 -1
- package/dist/components/typography/typography.js +23 -4
- package/dist/components/typography/typography.js.map +1 -1
- package/dist/components/virtualizer/virtualizer.d.ts +26 -2
- package/dist/components/virtualizer/virtualizer.d.ts.map +1 -1
- package/dist/components/virtualizer/virtualizer.js +20 -3
- package/dist/components/virtualizer/virtualizer.js.map +1 -1
- package/dist/components/watermark/watermark.d.ts +14 -1
- package/dist/components/watermark/watermark.d.ts.map +1 -1
- package/dist/components/watermark/watermark.js +20 -5
- package/dist/components/watermark/watermark.js.map +1 -1
- package/dist/config/config.d.ts +1 -1
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js +2 -1
- package/dist/config/config.js.map +1 -1
- package/dist/index.d.ts +65 -50
- package/dist/index.js +59 -44
- package/dist/package.js +1 -1
- package/dist/runtime/as-child.js +3 -2
- package/dist/runtime/as-child.js.map +1 -1
- package/dist/runtime/hydration.js +14 -0
- package/dist/runtime/hydration.js.map +1 -0
- package/dist/runtime/use-machine.js +3 -2
- package/dist/runtime/use-machine.js.map +1 -1
- package/dist/runtime/use-overlay-exit.js +0 -1
- package/dist/runtime/use-overlay-exit.js.map +1 -1
- package/dist/runtime/use-scrollbars.js +3 -1
- package/dist/runtime/use-scrollbars.js.map +1 -1
- package/dist/services/notification-service.d.ts +26 -7
- package/dist/services/notification-service.d.ts.map +1 -1
- package/dist/services/notification-service.js +35 -8
- package/dist/services/notification-service.js.map +1 -1
- package/dist/sound.d.ts +6 -7
- package/dist/sound.d.ts.map +1 -1
- package/dist/sound.js +6 -6
- package/dist/sound.js.map +1 -1
- package/package.json +15 -14
- package/dist/components/gradient-text/gradient-text.d.ts +0 -36
- package/dist/components/gradient-text/gradient-text.d.ts.map +0 -1
- package/dist/components/gradient-text/gradient-text.js +0 -20
- package/dist/components/gradient-text/gradient-text.js.map +0 -1
- package/dist/components/icon-wrapper/icon-wrapper.d.ts +0 -29
- package/dist/components/icon-wrapper/icon-wrapper.d.ts.map +0 -1
- package/dist/components/icon-wrapper/icon-wrapper.js +0 -20
- package/dist/components/icon-wrapper/icon-wrapper.js.map +0 -1
- package/dist/components/segmented/context.d.ts +0 -13
- package/dist/components/segmented/context.d.ts.map +0 -1
- package/dist/components/segmented/context.js +0 -24
- package/dist/components/segmented/context.js.map +0 -1
- package/dist/components/segmented/segmented.d.ts +0 -161
- package/dist/components/segmented/segmented.d.ts.map +0 -1
- package/dist/components/segmented/segmented.js +0 -142
- package/dist/components/segmented/segmented.js.map +0 -1
- package/dist/components/segmented/use-segmented.d.ts +0 -15
- package/dist/components/segmented/use-segmented.d.ts.map +0 -1
- package/dist/components/segmented/use-segmented.js +0 -22
- package/dist/components/segmented/use-segmented.js.map +0 -1
- package/dist/components/toast/context.js +0 -15
- package/dist/components/toast/context.js.map +0 -1
- package/dist/components/toast/toast.d.ts +0 -123
- package/dist/components/toast/toast.d.ts.map +0 -1
- package/dist/components/toast/toast.js +0 -112
- package/dist/components/toast/toast.js.map +0 -1
- package/dist/components/toast/use-toast.d.ts +0 -10
- package/dist/components/toast/use-toast.d.ts.map +0 -1
- package/dist/components/toast/use-toast.js +0 -17
- package/dist/components/toast/use-toast.js.map +0 -1
- package/dist/services/toast-service.d.ts +0 -69
- package/dist/services/toast-service.d.ts.map +0 -1
- package/dist/services/toast-service.js +0 -161
- package/dist/services/toast-service.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spinner.js","names":[],"sources":["../../../src/components/spinner/spinner.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-Present XiHanFun and contributors.\n * Licensed under the MIT License. See LICENSE in the project root for license information.\n */\n\n// 提供 spinner 相关实现。\n\nimport type { Size, Tone } from '@xihan-ui/core'\nimport type { SpinnerProps, SpinnerTranslations, SpinnerVariant } from '@xihan-ui/headless'\nimport type { PropType } from 'vue'\nimport { defineComponent, h } from 'vue'\nimport { withXhConfig } from '../../config/config'\nimport { provideSpinner, useSpinnerContext } from './context'\nimport { useSpinner } from './use-spinner'\n\n/** 旋转图形由皮肤绘制在 root 的伪元素上,这里不生成任何子节点。 */\nexport const XhSpinner = defineComponent({\n name: 'XhSpinner',\n // 缺省值由 connect 给出;普通类型省略 default,Boolean 显式保留 undefined\n props: {\n label: { type: String },\n size: { type: String as PropType<Size> },\n variant: { type: String as PropType<SpinnerVariant> },\n tone: { type: String as PropType<Tone> },\n translations: { type: Object as PropType<Partial<SpinnerTranslations>> },\n },\n setup(props, { slots }) {\n const ctx = useSpinner(withXhConfig('spinner', props) as SpinnerProps)\n provideSpinner(ctx)\n return () => h('span', ctx.api.value.getRootProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\n/** 可见文案节点。作者未写内容时显示解析后的 label,屏幕上看到的与读屏朗读的因此是同一段文字。 */\nexport const XhSpinnerLabel = defineComponent({\n name: 'XhSpinnerLabel',\n setup(_, { slots }) {\n const ctx = useSpinnerContext()\n return () => h(\n 'span',\n ctx.api.value.getLabelProps() as Record<string, unknown>,\n slots.default?.() ?? ctx.api.value.label,\n )\n },\n})\n"],"mappings":";;;;;;AAgBA,MAAa,YAAY,gBAAgB;CACvC,MAAM;CAEN,OAAO;EACL,OAAO,EAAE,MAAM,OAAO;EACtB,MAAM,EAAE,MAAM,OAAyB;EACvC,SAAS,EAAE,MAAM,OAAmC;EACpD,MAAM,EAAE,MAAM,OAAyB;
|
|
1
|
+
{"version":3,"file":"spinner.js","names":[],"sources":["../../../src/components/spinner/spinner.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-Present XiHanFun and contributors.\n * Licensed under the MIT License. See LICENSE in the project root for license information.\n */\n\n// 提供 spinner 相关实现。\n\nimport type { Size, Tone } from '@xihan-ui/core'\nimport type { SpinnerProps, SpinnerTranslations, SpinnerVariant } from '@xihan-ui/headless'\nimport type { PropType } from 'vue'\nimport { defineComponent, h } from 'vue'\nimport { withXhConfig } from '../../config/config'\nimport { provideSpinner, useSpinnerContext } from './context'\nimport { useSpinner } from './use-spinner'\n\n/** 旋转图形由皮肤绘制在 root 的伪元素上,这里不生成任何子节点。 */\nexport const XhSpinner = defineComponent({\n name: 'XhSpinner',\n // 缺省值由 connect 给出;普通类型省略 default,Boolean 显式保留 undefined\n props: {\n label: { type: String },\n size: { type: String as PropType<Size> },\n variant: { type: String as PropType<SpinnerVariant> },\n tone: { type: String as PropType<Tone> },\n /** 挂载后等多少毫秒才露面,默认 0;加载在这之前结束时转圈从头到尾不出现。 */\n delay: { type: Number },\n translations: { type: Object as PropType<Partial<SpinnerTranslations>> },\n },\n setup(props, { slots }) {\n const ctx = useSpinner(withXhConfig('spinner', props) as SpinnerProps)\n provideSpinner(ctx)\n return () => h('span', ctx.api.value.getRootProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\n/** 可见文案节点。作者未写内容时显示解析后的 label,屏幕上看到的与读屏朗读的因此是同一段文字。 */\nexport const XhSpinnerLabel = defineComponent({\n name: 'XhSpinnerLabel',\n setup(_, { slots }) {\n const ctx = useSpinnerContext()\n return () => h(\n 'span',\n ctx.api.value.getLabelProps() as Record<string, unknown>,\n slots.default?.() ?? ctx.api.value.label,\n )\n },\n})\n"],"mappings":";;;;;;AAgBA,MAAa,YAAY,gBAAgB;CACvC,MAAM;CAEN,OAAO;EACL,OAAO,EAAE,MAAM,OAAO;EACtB,MAAM,EAAE,MAAM,OAAyB;EACvC,SAAS,EAAE,MAAM,OAAmC;EACpD,MAAM,EAAE,MAAM,OAAyB;;EAEvC,OAAO,EAAE,MAAM,OAAO;EACtB,cAAc,EAAE,MAAM,OAAiD;CACzE;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,WAAW,aAAa,WAAW,KAAK,CAAiB;EACrE,eAAe,GAAG;EAClB,aAAa,EAAE,QAAQ,IAAI,IAAI,MAAM,aAAa,GAA8B,MAAM,UAAU,CAAC;CACnG;AACF,CAAC;;AAGD,MAAa,iBAAiB,gBAAgB;CAC5C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,kBAAkB;EAC9B,aAAa,EACX,QACA,IAAI,IAAI,MAAM,cAAc,GAC5B,MAAM,UAAU,KAAK,IAAI,IAAI,MAAM,KACrC;CACF;AACF,CAAC"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { vueNormalize } from "../../runtime/normalize-props.js";
|
|
2
|
+
import { useMachine } from "../../runtime/use-machine.js";
|
|
2
3
|
import { computed } from "vue";
|
|
3
|
-
import { connectSpinner } from "@xihan-ui/headless";
|
|
4
|
+
import { connectSpinner, spinnerMachine } from "@xihan-ui/headless";
|
|
4
5
|
//#region src/components/spinner/use-spinner.ts
|
|
5
6
|
function useSpinner(props) {
|
|
6
|
-
|
|
7
|
+
const service = useMachine(spinnerMachine, () => ({ ...props }));
|
|
8
|
+
return { api: computed(() => connectSpinner(service, vueNormalize)) };
|
|
7
9
|
}
|
|
8
10
|
//#endregion
|
|
9
11
|
export { useSpinner };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-spinner.js","names":[],"sources":["../../../src/components/spinner/use-spinner.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-Present XiHanFun and contributors.\n * Licensed under the MIT License. See LICENSE in the project root for license information.\n */\n\n// 提供 use spinner 相关实现。\n\nimport type { SpinnerApi, SpinnerProps } from '@xihan-ui/headless'\nimport type { ComputedRef } from 'vue'\nimport { connectSpinner } from '@xihan-ui/headless'\nimport { computed } from 'vue'\nimport { vueNormalize } from '../../runtime/normalize-props'\n\nexport interface SpinnerContext {\n api: ComputedRef<SpinnerApi>\n}\n\n//
|
|
1
|
+
{"version":3,"file":"use-spinner.js","names":[],"sources":["../../../src/components/spinner/use-spinner.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-Present XiHanFun and contributors.\n * Licensed under the MIT License. See LICENSE in the project root for license information.\n */\n\n// 提供 use spinner 相关实现。\n\nimport type { SpinnerApi, SpinnerProps } from '@xihan-ui/headless'\nimport type { ComputedRef } from 'vue'\nimport { connectSpinner, spinnerMachine } from '@xihan-ui/headless'\nimport { computed } from 'vue'\nimport { vueNormalize } from '../../runtime/normalize-props'\nimport { useMachine } from '../../runtime/use-machine'\n\nexport interface SpinnerContext {\n api: ComputedRef<SpinnerApi>\n}\n\n// 状态机只管露面前的等待;props 每帧现展开,改了文案与轴 computed 照常重算\nexport function useSpinner(props: SpinnerProps): SpinnerContext {\n const service = useMachine(spinnerMachine, () => ({ ...props }))\n const api = computed(() => connectSpinner(service, vueNormalize))\n return { api }\n}\n"],"mappings":";;;;;AAmBA,SAAgB,WAAW,OAAqC;CAC9D,MAAM,UAAU,WAAW,uBAAuB,EAAE,GAAG,MAAM,EAAE;CAE/D,OAAO,EAAE,KADG,eAAe,eAAe,SAAS,YAAY,CACpD,EAAE;AACf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statistic.d.ts","names":[],"sources":["../../../src/components/statistic/statistic.ts"],"mappings":";;;;cAgBa,+BAAe,8BAAA;;IAIA,MAAA,SAAS;;;IACT,MAAA,SAAS;;;IACR,MAAA,SAAS;;;;;;IAFV,MAAA,SAAS;;;IACT,MAAA,SAAS;;;IACR,MAAA,SAAS;;
|
|
1
|
+
{"version":3,"file":"statistic.d.ts","names":[],"sources":["../../../src/components/statistic/statistic.ts"],"mappings":";;;;cAgBa,+BAAe,8BAAA;;IAIA,MAAA,SAAS;;;IACT,MAAA,SAAS;;;IACR,MAAA,SAAS;;;;;;IAFV,MAAA,SAAS;;;IACT,MAAA,SAAS;;;IACR,MAAA,SAAS;;MASpC,oDAAA;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;cAGW,gCAAgB,wCAAA,oBAAA,4BAAA;;8BAM3B,qCAAA,iDAAA,aAAA,eAAA,oDAAA"}
|
|
@@ -12,7 +12,8 @@ const XhStatisticRoot = defineComponent({
|
|
|
12
12
|
trend: { type: String }
|
|
13
13
|
},
|
|
14
14
|
setup(props, { slots }) {
|
|
15
|
-
const
|
|
15
|
+
const configured = withXhConfig("statistic", props);
|
|
16
|
+
const api = computed(() => connectStatistic(configured, vueNormalize));
|
|
16
17
|
provideStatistic({ api });
|
|
17
18
|
return () => h("div", api.value.getRootProps(), slots.default?.());
|
|
18
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statistic.js","names":[],"sources":["../../../src/components/statistic/statistic.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-Present XiHanFun and contributors.\n * Licensed under the MIT License. See LICENSE in the project root for license information.\n */\n\n// 提供 statistic 相关实现。\n\nimport type { Size, Tone } from '@xihan-ui/core'\nimport type { StatisticProps, StatisticTrend } from '@xihan-ui/headless'\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,Boolean 显式保留 undefined\n props: {\n size: { type: String as PropType<Size> },\n tone: { type: String as PropType<Tone> },\n trend: { type: String as PropType<StatisticTrend> },\n },\n setup(props, { slots }) {\n const api = computed(() => connectStatistic(
|
|
1
|
+
{"version":3,"file":"statistic.js","names":[],"sources":["../../../src/components/statistic/statistic.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-Present XiHanFun and contributors.\n * Licensed under the MIT License. See LICENSE in the project root for license information.\n */\n\n// 提供 statistic 相关实现。\n\nimport type { Size, Tone } from '@xihan-ui/core'\nimport type { StatisticProps, StatisticTrend } from '@xihan-ui/headless'\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,Boolean 显式保留 undefined\n props: {\n size: { type: String as PropType<Size> },\n tone: { type: String as PropType<Tone> },\n trend: { type: String as PropType<StatisticTrend> },\n },\n setup(props, { slots }) {\n // withXhConfig 只能在 setup 期调,连接层在渲染期读这份代理\n const configured = withXhConfig('statistic', props)\n const api = computed(() => connectStatistic(configured 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\n// 涨跌那一段:方向由 root 的 trend 给,箭头由皮肤画,比数(同比、环比)由作者写进来\nexport const XhStatisticTrend = defineComponent({\n name: 'XhStatisticTrend',\n setup(_, { slots }) {\n const ctx = useStatisticContext()\n return () => h('span', ctx.api.value.getTrendProps() as Record<string, unknown>, slots.default?.())\n },\n})\n"],"mappings":";;;;;;AAgBA,MAAa,kBAAkB,gBAAgB;CAC7C,MAAM;CAEN,OAAO;EACL,MAAM,EAAE,MAAM,OAAyB;EACvC,MAAM,EAAE,MAAM,OAAyB;EACvC,OAAO,EAAE,MAAM,OAAmC;CACpD;CACA,MAAM,OAAO,EAAE,SAAS;EAEtB,MAAM,aAAa,aAAa,aAAa,KAAK;EAClD,MAAM,MAAM,eAAe,iBAAiB,YAA8B,YAAY,CAAC;EACvF,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;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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PayloadOf } from "../../runtime/payload.js";
|
|
2
2
|
import { PropType, SlotsType, VNode } from "vue";
|
|
3
3
|
import { Direction, Orientation, Size, Tone } from "@xihan-ui/core";
|
|
4
|
-
import { StepNode, StepStatus, StepsApi, StepsSchema, StepsTranslations } from "@xihan-ui/headless";
|
|
4
|
+
import { StepNode, StepStatus, StepsApi, StepsSchema, StepsTranslations, StepsVariant } from "@xihan-ui/headless";
|
|
5
5
|
//#region src/components/steps/steps.d.ts
|
|
6
6
|
type StepsProps = StepsSchema['props'];
|
|
7
7
|
/** 默认插槽的载荷:当前步序、总步数、是否完成,以及跳步与前进后退的方法。 */
|
|
@@ -36,6 +36,11 @@ declare const XhStepsRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
36
36
|
type: BooleanConstructor;
|
|
37
37
|
default: undefined;
|
|
38
38
|
};
|
|
39
|
+
/** 只读展示:不可点、不可聚焦、不置灰,语义换成有序列表,trigger 渲染为 div。 */
|
|
40
|
+
readOnly: {
|
|
41
|
+
type: BooleanConstructor;
|
|
42
|
+
default: undefined;
|
|
43
|
+
};
|
|
39
44
|
loop: {
|
|
40
45
|
type: BooleanConstructor;
|
|
41
46
|
default: undefined;
|
|
@@ -52,6 +57,14 @@ declare const XhStepsRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
52
57
|
size: {
|
|
53
58
|
type: PropType<Size>;
|
|
54
59
|
};
|
|
60
|
+
/** 标记形态:number 序号圆点(缺省)/ dot 不盛内容的小圆点。 */
|
|
61
|
+
variant: {
|
|
62
|
+
type: PropType<StepsVariant>;
|
|
63
|
+
};
|
|
64
|
+
/** 当前这一步自己的完成比例(0–100):当前步的序号圆点外画一圈进度环。 */
|
|
65
|
+
percent: {
|
|
66
|
+
type: NumberConstructor;
|
|
67
|
+
};
|
|
55
68
|
}>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
56
69
|
[key: string]: any;
|
|
57
70
|
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
@@ -87,6 +100,11 @@ declare const XhStepsRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
87
100
|
type: BooleanConstructor;
|
|
88
101
|
default: undefined;
|
|
89
102
|
};
|
|
103
|
+
/** 只读展示:不可点、不可聚焦、不置灰,语义换成有序列表,trigger 渲染为 div。 */
|
|
104
|
+
readOnly: {
|
|
105
|
+
type: BooleanConstructor;
|
|
106
|
+
default: undefined;
|
|
107
|
+
};
|
|
90
108
|
loop: {
|
|
91
109
|
type: BooleanConstructor;
|
|
92
110
|
default: undefined;
|
|
@@ -103,12 +121,21 @@ declare const XhStepsRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
103
121
|
size: {
|
|
104
122
|
type: PropType<Size>;
|
|
105
123
|
};
|
|
124
|
+
/** 标记形态:number 序号圆点(缺省)/ dot 不盛内容的小圆点。 */
|
|
125
|
+
variant: {
|
|
126
|
+
type: PropType<StepsVariant>;
|
|
127
|
+
};
|
|
128
|
+
/** 当前这一步自己的完成比例(0–100):当前步的序号圆点外画一圈进度环。 */
|
|
129
|
+
percent: {
|
|
130
|
+
type: NumberConstructor;
|
|
131
|
+
};
|
|
106
132
|
}>> & Readonly<{
|
|
107
133
|
"onValue-change"?: ((_details: import("@xihan-ui/headless").StepsValueChangeDetails) => any) | undefined;
|
|
108
134
|
"onUpdate:value"?: ((_value: number) => any) | undefined;
|
|
109
135
|
}>, {
|
|
110
136
|
loop: boolean;
|
|
111
137
|
disabled: boolean;
|
|
138
|
+
readOnly: boolean;
|
|
112
139
|
linear: boolean;
|
|
113
140
|
}, SlotsType<{
|
|
114
141
|
default?: (props: StepsRootSlotProps) => VNode[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"steps.d.ts","names":[],"sources":["../../../src/components/steps/steps.ts"],"mappings":";;;;;KAgBK,aAAa;;KAGN,qBAAqB,KAC/B;cAIW,2BAAW,8BAAA;;;;;;;;;;;IAOS,MAAA,SAAS;;;IACV,MAAA,SAAS,eAAe;;;IAC3B,MAAA,SAAS,eAAe;;;IAClB,MAAA,SAAS
|
|
1
|
+
{"version":3,"file":"steps.d.ts","names":[],"sources":["../../../src/components/steps/steps.ts"],"mappings":";;;;;KAgBK,aAAa;;KAGN,qBAAqB,KAC/B;cAIW,2BAAW,8BAAA;;;;;;;;;;;IAOS,MAAA,SAAS;;;IACV,MAAA,SAAS,eAAe;;;IAC3B,MAAA,SAAS,eAAe;;;IAClB,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;IAMjB,MAAA,SAAS;;;IACA,MAAA,SAAS,QAAQ;;;IACzB,MAAA,SAAS;;;IACT,MAAA,SAAS;;;;IAEN,MAAA,SAAS;;;;;;;;;EAMT,iBAAA,UAAA,UAAU;EACZ,iBAAA,QAAA,UAAU;;;;;;;;;;;;IArBN,MAAA,SAAS;;;IACV,MAAA,SAAS,eAAe;;;IAC3B,MAAA,SAAS,eAAe;;;IAClB,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;IAMjB,MAAA,SAAS;;;IACA,MAAA,SAAS,QAAQ;;;IACzB,MAAA,SAAS;;;IACT,MAAA,SAAS;;;;IAEN,MAAA,SAAS;;;;;;;;;;;;;;;EAU1B,WAAC,OAAO,uBAAuB;kCAmB3C;cAEW,2BAAW,0BAAA,oBAAA,4BAAA;;8BAMtB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,2BAAW,8BAAA;;IAIe,MAAA;;;;;;;;IAAA,MAAA;;;;;;qCAYrC;cAEW,8BAAc,0BAAA,oBAAA,4BAAA;;8BA8BzB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,gCAAgB,0BAAA,oBAAA,4BAAA;;8BAO3B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,4BAAY,0BAAA,oBAAA,4BAAA;;8BAOvB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,kCAAkB,0BAAA,oBAAA,4BAAA;;8BAO7B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAGW,gCAAgB,0BAAA,oBAAA,4BAAA;;8BAO3B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;;cAGW,8BAAc,8BAAA;;IAGY,MAAA;;;;;;;IAAA,MAAA;;;MAUrC,oDAAA"}
|
|
@@ -21,6 +21,11 @@ const XhStepsRoot = defineComponent({
|
|
|
21
21
|
type: Boolean,
|
|
22
22
|
default: void 0
|
|
23
23
|
},
|
|
24
|
+
/** 只读展示:不可点、不可聚焦、不置灰,语义换成有序列表,trigger 渲染为 div。 */
|
|
25
|
+
readOnly: {
|
|
26
|
+
type: Boolean,
|
|
27
|
+
default: void 0
|
|
28
|
+
},
|
|
24
29
|
loop: {
|
|
25
30
|
type: Boolean,
|
|
26
31
|
default: void 0
|
|
@@ -28,7 +33,11 @@ const XhStepsRoot = defineComponent({
|
|
|
28
33
|
dir: { type: String },
|
|
29
34
|
translations: { type: Object },
|
|
30
35
|
tone: { type: String },
|
|
31
|
-
size: { type: String }
|
|
36
|
+
size: { type: String },
|
|
37
|
+
/** 标记形态:number 序号圆点(缺省)/ dot 不盛内容的小圆点。 */
|
|
38
|
+
variant: { type: String },
|
|
39
|
+
/** 当前这一步自己的完成比例(0–100):当前步的序号圆点外画一圈进度环。 */
|
|
40
|
+
percent: { type: Number }
|
|
32
41
|
},
|
|
33
42
|
emits: {
|
|
34
43
|
"value-change": (_details) => true,
|
|
@@ -99,7 +108,7 @@ const XhStepsTrigger = defineComponent({
|
|
|
99
108
|
if (ctx.service.getStatus() !== "Started") return;
|
|
100
109
|
if (itemEl.value && ctx.service.scope.getActiveElement() === itemEl.value) ctx.service.send({ type: "LIST.BLUR" });
|
|
101
110
|
});
|
|
102
|
-
return () => h("button", {
|
|
111
|
+
return () => h(ctx.api.value.readOnly ? "div" : "button", {
|
|
103
112
|
...ctx.api.value.getTriggerProps(item()),
|
|
104
113
|
ref: itemEl
|
|
105
114
|
}, slots.default?.());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"steps.js","names":[],"sources":["../../../src/components/steps/steps.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-Present XiHanFun and contributors.\n * Licensed under the MIT License. See LICENSE in the project root for license information.\n */\n\n// 提供 steps 相关实现。\n\nimport type { Direction, Orientation, Size, Tone } from '@xihan-ui/core'\nimport type { StepNode, StepsApi, StepsSchema, StepStatus, StepsTranslations } from '@xihan-ui/headless'\nimport type { PropType, SlotsType, VNode } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport { defineComponent, h, onBeforeUnmount, ref, watch } from 'vue'\nimport { withXhConfig } from '../../config/config'\nimport { provideSteps, provideStepsItem, useStepsContext, useStepsItem } from './context'\nimport { useSteps } from './use-steps'\n\ntype StepsProps = StepsSchema['props']\n\n/** 默认插槽的载荷:当前步序、总步数、是否完成,以及跳步与前进后退的方法。 */\nexport type StepsRootSlotProps = Pick<\n StepsApi,\n 'value' | 'count' | 'complete' | 'setValue' | 'goToNextStep' | 'goToPrevStep'\n>\n\nexport const XhStepsRoot = defineComponent({\n name: 'XhStepsRoot',\n // 缺省值由 connect 决定;普通类型省略 default,Boolean 显式保留 undefined\n props: {\n value: { type: Number },\n defaultValue: { type: Number },\n count: { type: Number },\n collection: { type: Array as PropType<StepNode[]> },\n statuses: { type: Object as PropType<Record<number, StepStatus>> },\n tones: { type: Object as PropType<Record<number, Tone>> },\n orientation: { type: String as PropType<Orientation> },\n linear: { type: Boolean, default: undefined },\n disabled: { type: Boolean, default: undefined },\n loop: { type: Boolean, default: undefined },\n dir: { type: String as PropType<Direction> },\n translations: { type: Object as PropType<Partial<StepsTranslations>> },\n tone: { type: String as PropType<Tone> },\n size: { type: String as PropType<Size> },\n },\n // value-change 携带 { value },update:value 携带裸下标\n emits: {\n 'value-change': (_details: PayloadOf<StepsProps, 'onValueChange'>) => true,\n 'update:value': (_value: PayloadOf<StepsProps, 'onValueChange'>['value']) => true,\n },\n slots: Object as SlotsType<{\n default?: (props: StepsRootSlotProps) => VNode[]\n }>,\n setup(props, { slots, emit }) {\n const notify: StepsProps['onValueChange'] = (details) => {\n emit('value-change', details)\n emit('update:value', details.value)\n }\n const ctx = useSteps(withXhConfig('steps', props) as StepsProps, notify)\n provideSteps(ctx)\n // 经插槽暴露状态与前进/后退方法,供步骤条外的按钮使用\n return () => h('div', ctx.api.value.getRootProps() as Record<string, unknown>, slots.default?.({\n value: ctx.api.value.value,\n count: ctx.api.value.count,\n complete: ctx.api.value.complete,\n setValue: ctx.api.value.setValue,\n goToNextStep: ctx.api.value.goToNextStep,\n goToPrevStep: ctx.api.value.goToPrevStep,\n }))\n },\n})\n\nexport const XhStepsList = defineComponent({\n name: 'XhStepsList',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n return () => h('div', ctx.api.value.getListProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhStepsItem = defineComponent({\n name: 'XhStepsItem',\n props: {\n // 步骤下标,兼收字符串以支持模板属性字面量与 WC 侧的 DOM 属性\n value: { type: [Number, String] as PropType<number | string>, required: true },\n disabled: Boolean,\n },\n setup(props, { slots }) {\n const ctx = useStepsContext()\n provideStepsItem(() => ({ index: Number(props.value), disabled: props.disabled }))\n return () => h(\n 'div',\n ctx.api.value.getItemProps({ index: Number(props.value), disabled: props.disabled }) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhStepsTrigger = defineComponent({\n name: 'XhStepsTrigger',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n const item = useStepsItem()\n // 本节点持有焦点时,下标变更重报焦点步骤,卸载时上报列表失焦\n const itemEl = ref<HTMLElement | null>(null)\n watch(() => item().index, (next, prev) => {\n if (next === prev)\n return\n const svc = ctx.service\n if (svc.getStatus() !== 'Started')\n return\n if (itemEl.value && svc.scope.getActiveElement() === itemEl.value)\n svc.send({ type: 'TRIGGER.FOCUS', step: next })\n })\n onBeforeUnmount(() => {\n if (ctx.service.getStatus() !== 'Started')\n return\n // 按「本节点当下正持有焦点」判定,不按下标比对\n if (itemEl.value && ctx.service.scope.getActiveElement() === itemEl.value)\n ctx.service.send({ type: 'LIST.BLUR' })\n })\n return () => h(\n 'button',\n { ...ctx.api.value.getTriggerProps(item()) as Record<string, unknown>, ref: itemEl },\n slots.default?.(),\n )\n },\n})\n\nexport const XhStepsIndicator = defineComponent({\n name: 'XhStepsIndicator',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n const item = useStepsItem()\n return () => h('span', ctx.api.value.getIndicatorProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhStepsTitle = defineComponent({\n name: 'XhStepsTitle',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n const item = useStepsItem()\n return () => h('span', ctx.api.value.getTitleProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhStepsDescription = defineComponent({\n name: 'XhStepsDescription',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n const item = useStepsItem()\n return () => h('span', ctx.api.value.getDescriptionProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\n// 连接线写在 item 之内,身份从 item 上下文取\nexport const XhStepsSeparator = defineComponent({\n name: 'XhStepsSeparator',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n const item = useStepsItem()\n return () => h('div', ctx.api.value.getSeparatorProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\n/** 面板挂在 list 之外,自带 value 与 trigger 配对;value 等于 count 的面板即完成页 */\nexport const XhStepsContent = defineComponent({\n name: 'XhStepsContent',\n props: {\n value: { type: [Number, String] as PropType<number | string>, required: true },\n },\n setup(props, { slots }) {\n const ctx = useStepsContext()\n return () => h(\n 'div',\n ctx.api.value.getContentProps({ index: Number(props.value) }) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n"],"mappings":";;;;;AAwBA,MAAa,cAAc,gBAAgB;CACzC,MAAM;CAEN,OAAO;EACL,OAAO,EAAE,MAAM,OAAO;EACtB,cAAc,EAAE,MAAM,OAAO;EAC7B,OAAO,EAAE,MAAM,OAAO;EACtB,YAAY,EAAE,MAAM,MAA8B;EAClD,UAAU,EAAE,MAAM,OAA+C;EACjE,OAAO,EAAE,MAAM,OAAyC;EACxD,aAAa,EAAE,MAAM,OAAgC;EACrD,QAAQ;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC5C,UAAU;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC9C,MAAM;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC1C,KAAK,EAAE,MAAM,OAA8B;EAC3C,cAAc,EAAE,MAAM,OAA+C;EACrE,MAAM,EAAE,MAAM,OAAyB;EACvC,MAAM,EAAE,MAAM,OAAyB;CACzC;CAEA,OAAO;EACL,iBAAiB,aAAqD;EACtE,iBAAiB,WAA4D;CAC/E;CACA,OAAO;CAGP,MAAM,OAAO,EAAE,OAAO,QAAQ;EAC5B,MAAM,UAAuC,YAAY;GACvD,KAAK,gBAAgB,OAAO;GAC5B,KAAK,gBAAgB,QAAQ,KAAK;EACpC;EACA,MAAM,MAAM,SAAS,aAAa,SAAS,KAAK,GAAiB,MAAM;EACvE,aAAa,GAAG;EAEhB,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,aAAa,GAA8B,MAAM,UAAU;GAC7F,OAAO,IAAI,IAAI,MAAM;GACrB,OAAO,IAAI,IAAI,MAAM;GACrB,UAAU,IAAI,IAAI,MAAM;GACxB,UAAU,IAAI,IAAI,MAAM;GACxB,cAAc,IAAI,IAAI,MAAM;GAC5B,cAAc,IAAI,IAAI,MAAM;EAC9B,CAAC,CAAC;CACJ;AACF,CAAC;AAED,MAAa,cAAc,gBAAgB;CACzC,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,aAAa,GAA8B,MAAM,UAAU,CAAC;CAClG;AACF,CAAC;AAED,MAAa,cAAc,gBAAgB;CACzC,MAAM;CACN,OAAO;EAEL,OAAO;GAAE,MAAM,CAAC,QAAQ,MAAM;GAAgC,UAAU;EAAK;EAC7E,UAAU;CACZ;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,gBAAgB;EAC5B,wBAAwB;GAAE,OAAO,OAAO,MAAM,KAAK;GAAG,UAAU,MAAM;EAAS,EAAE;EACjF,aAAa,EACX,OACA,IAAI,IAAI,MAAM,aAAa;GAAE,OAAO,OAAO,MAAM,KAAK;GAAG,UAAU,MAAM;EAAS,CAAC,GACnF,MAAM,UAAU,CAClB;CACF;AACF,CAAC;AAED,MAAa,iBAAiB,gBAAgB;CAC5C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,MAAM,OAAO,aAAa;EAE1B,MAAM,SAAS,IAAwB,IAAI;EAC3C,YAAY,KAAK,CAAC,CAAC,QAAQ,MAAM,SAAS;GACxC,IAAI,SAAS,MACX;GACF,MAAM,MAAM,IAAI;GAChB,IAAI,IAAI,UAAU,MAAM,WACtB;GACF,IAAI,OAAO,SAAS,IAAI,MAAM,iBAAiB,MAAM,OAAO,OAC1D,IAAI,KAAK;IAAE,MAAM;IAAiB,MAAM;GAAK,CAAC;EAClD,CAAC;EACD,sBAAsB;GACpB,IAAI,IAAI,QAAQ,UAAU,MAAM,WAC9B;GAEF,IAAI,OAAO,SAAS,IAAI,QAAQ,MAAM,iBAAiB,MAAM,OAAO,OAClE,IAAI,QAAQ,KAAK,EAAE,MAAM,YAAY,CAAC;EAC1C,CAAC;EACD,aAAa,EACX,UACA;GAAE,GAAG,IAAI,IAAI,MAAM,gBAAgB,KAAK,CAAC;GAA8B,KAAK;EAAO,GACnF,MAAM,UAAU,CAClB;CACF;AACF,CAAC;AAED,MAAa,mBAAmB,gBAAgB;CAC9C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,MAAM,OAAO,aAAa;EAC1B,aAAa,EAAE,QAAQ,IAAI,IAAI,MAAM,kBAAkB,KAAK,CAAC,GAA8B,MAAM,UAAU,CAAC;CAC9G;AACF,CAAC;AAED,MAAa,eAAe,gBAAgB;CAC1C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,MAAM,OAAO,aAAa;EAC1B,aAAa,EAAE,QAAQ,IAAI,IAAI,MAAM,cAAc,KAAK,CAAC,GAA8B,MAAM,UAAU,CAAC;CAC1G;AACF,CAAC;AAED,MAAa,qBAAqB,gBAAgB;CAChD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,MAAM,OAAO,aAAa;EAC1B,aAAa,EAAE,QAAQ,IAAI,IAAI,MAAM,oBAAoB,KAAK,CAAC,GAA8B,MAAM,UAAU,CAAC;CAChH;AACF,CAAC;AAGD,MAAa,mBAAmB,gBAAgB;CAC9C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,MAAM,OAAO,aAAa;EAC1B,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,kBAAkB,KAAK,CAAC,GAA8B,MAAM,UAAU,CAAC;CAC7G;AACF,CAAC;;AAGD,MAAa,iBAAiB,gBAAgB;CAC5C,MAAM;CACN,OAAO,EACL,OAAO;EAAE,MAAM,CAAC,QAAQ,MAAM;EAAgC,UAAU;CAAK,EAC/E;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,gBAAgB;EAC5B,aAAa,EACX,OACA,IAAI,IAAI,MAAM,gBAAgB,EAAE,OAAO,OAAO,MAAM,KAAK,EAAE,CAAC,GAC5D,MAAM,UAAU,CAClB;CACF;AACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"steps.js","names":[],"sources":["../../../src/components/steps/steps.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-Present XiHanFun and contributors.\n * Licensed under the MIT License. See LICENSE in the project root for license information.\n */\n\n// 提供 steps 相关实现。\n\nimport type { Direction, Orientation, Size, Tone } from '@xihan-ui/core'\nimport type { StepNode, StepsApi, StepsSchema, StepStatus, StepsTranslations, StepsVariant } from '@xihan-ui/headless'\nimport type { PropType, SlotsType, VNode } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport { defineComponent, h, onBeforeUnmount, ref, watch } from 'vue'\nimport { withXhConfig } from '../../config/config'\nimport { provideSteps, provideStepsItem, useStepsContext, useStepsItem } from './context'\nimport { useSteps } from './use-steps'\n\ntype StepsProps = StepsSchema['props']\n\n/** 默认插槽的载荷:当前步序、总步数、是否完成,以及跳步与前进后退的方法。 */\nexport type StepsRootSlotProps = Pick<\n StepsApi,\n 'value' | 'count' | 'complete' | 'setValue' | 'goToNextStep' | 'goToPrevStep'\n>\n\nexport const XhStepsRoot = defineComponent({\n name: 'XhStepsRoot',\n // 缺省值由 connect 决定;普通类型省略 default,Boolean 显式保留 undefined\n props: {\n value: { type: Number },\n defaultValue: { type: Number },\n count: { type: Number },\n collection: { type: Array as PropType<StepNode[]> },\n statuses: { type: Object as PropType<Record<number, StepStatus>> },\n tones: { type: Object as PropType<Record<number, Tone>> },\n orientation: { type: String as PropType<Orientation> },\n linear: { type: Boolean, default: undefined },\n disabled: { type: Boolean, default: undefined },\n /** 只读展示:不可点、不可聚焦、不置灰,语义换成有序列表,trigger 渲染为 div。 */\n readOnly: { type: Boolean, default: undefined },\n loop: { type: Boolean, default: undefined },\n dir: { type: String as PropType<Direction> },\n translations: { type: Object as PropType<Partial<StepsTranslations>> },\n tone: { type: String as PropType<Tone> },\n size: { type: String as PropType<Size> },\n /** 标记形态:number 序号圆点(缺省)/ dot 不盛内容的小圆点。 */\n variant: { type: String as PropType<StepsVariant> },\n /** 当前这一步自己的完成比例(0–100):当前步的序号圆点外画一圈进度环。 */\n percent: { type: Number },\n },\n // value-change 携带 { value },update:value 携带裸下标\n emits: {\n 'value-change': (_details: PayloadOf<StepsProps, 'onValueChange'>) => true,\n 'update:value': (_value: PayloadOf<StepsProps, 'onValueChange'>['value']) => true,\n },\n slots: Object as SlotsType<{\n default?: (props: StepsRootSlotProps) => VNode[]\n }>,\n setup(props, { slots, emit }) {\n const notify: StepsProps['onValueChange'] = (details) => {\n emit('value-change', details)\n emit('update:value', details.value)\n }\n const ctx = useSteps(withXhConfig('steps', props) as StepsProps, notify)\n provideSteps(ctx)\n // 经插槽暴露状态与前进/后退方法,供步骤条外的按钮使用\n return () => h('div', ctx.api.value.getRootProps() as Record<string, unknown>, slots.default?.({\n value: ctx.api.value.value,\n count: ctx.api.value.count,\n complete: ctx.api.value.complete,\n setValue: ctx.api.value.setValue,\n goToNextStep: ctx.api.value.goToNextStep,\n goToPrevStep: ctx.api.value.goToPrevStep,\n }))\n },\n})\n\nexport const XhStepsList = defineComponent({\n name: 'XhStepsList',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n return () => h('div', ctx.api.value.getListProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhStepsItem = defineComponent({\n name: 'XhStepsItem',\n props: {\n // 步骤下标,兼收字符串以支持模板属性字面量与 WC 侧的 DOM 属性\n value: { type: [Number, String] as PropType<number | string>, required: true },\n disabled: Boolean,\n },\n setup(props, { slots }) {\n const ctx = useStepsContext()\n provideStepsItem(() => ({ index: Number(props.value), disabled: props.disabled }))\n return () => h(\n 'div',\n ctx.api.value.getItemProps({ index: Number(props.value), disabled: props.disabled }) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n\nexport const XhStepsTrigger = defineComponent({\n name: 'XhStepsTrigger',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n const item = useStepsItem()\n // 本节点持有焦点时,下标变更重报焦点步骤,卸载时上报列表失焦\n const itemEl = ref<HTMLElement | null>(null)\n watch(() => item().index, (next, prev) => {\n if (next === prev)\n return\n const svc = ctx.service\n if (svc.getStatus() !== 'Started')\n return\n if (itemEl.value && svc.scope.getActiveElement() === itemEl.value)\n svc.send({ type: 'TRIGGER.FOCUS', step: next })\n })\n onBeforeUnmount(() => {\n if (ctx.service.getStatus() !== 'Started')\n return\n // 按「本节点当下正持有焦点」判定,不按下标比对\n if (itemEl.value && ctx.service.scope.getActiveElement() === itemEl.value)\n ctx.service.send({ type: 'LIST.BLUR' })\n })\n // 只读展示的 trigger 只排版,不是按钮\n return () => h(\n ctx.api.value.readOnly ? 'div' : 'button',\n { ...ctx.api.value.getTriggerProps(item()) as Record<string, unknown>, ref: itemEl },\n slots.default?.(),\n )\n },\n})\n\nexport const XhStepsIndicator = defineComponent({\n name: 'XhStepsIndicator',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n const item = useStepsItem()\n return () => h('span', ctx.api.value.getIndicatorProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhStepsTitle = defineComponent({\n name: 'XhStepsTitle',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n const item = useStepsItem()\n return () => h('span', ctx.api.value.getTitleProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhStepsDescription = defineComponent({\n name: 'XhStepsDescription',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n const item = useStepsItem()\n return () => h('span', ctx.api.value.getDescriptionProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\n// 连接线写在 item 之内,身份从 item 上下文取\nexport const XhStepsSeparator = defineComponent({\n name: 'XhStepsSeparator',\n setup(_, { slots }) {\n const ctx = useStepsContext()\n const item = useStepsItem()\n return () => h('div', ctx.api.value.getSeparatorProps(item()) as Record<string, unknown>, slots.default?.())\n },\n})\n\n/** 面板挂在 list 之外,自带 value 与 trigger 配对;value 等于 count 的面板即完成页 */\nexport const XhStepsContent = defineComponent({\n name: 'XhStepsContent',\n props: {\n value: { type: [Number, String] as PropType<number | string>, required: true },\n },\n setup(props, { slots }) {\n const ctx = useStepsContext()\n return () => h(\n 'div',\n ctx.api.value.getContentProps({ index: Number(props.value) }) as Record<string, unknown>,\n slots.default?.(),\n )\n },\n})\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { slotPaints } from "../../runtime/slot-content.js";
|
|
1
2
|
import { useFormControlProps } from "../form/use-form-control.js";
|
|
2
3
|
import { useFieldLabelWiring, useFieldStateWiring } from "../field/use-field-control.js";
|
|
3
|
-
import { slotPaints } from "../../runtime/slot-content.js";
|
|
4
4
|
import { useSwitch } from "./use-switch.js";
|
|
5
5
|
import { defineComponent, h, useId } from "vue";
|
|
6
6
|
//#region src/components/switch/switch.ts
|
|
@@ -4,6 +4,14 @@ const KEY = Symbol.for("xh-table");
|
|
|
4
4
|
const SECTION_KEY = Symbol.for("xh-table-section");
|
|
5
5
|
const ROW_KEY = Symbol.for("xh-table-row");
|
|
6
6
|
const COLUMN_KEY = Symbol.for("xh-table-column");
|
|
7
|
+
const HEADER_LEVEL_KEY = Symbol.for("xh-table-header-level");
|
|
8
|
+
/** 表头行写明的层号,供行里的列头定位自己在多级表头里的哪一格。 */
|
|
9
|
+
function provideTableHeaderLevel(level) {
|
|
10
|
+
provide(HEADER_LEVEL_KEY, level);
|
|
11
|
+
}
|
|
12
|
+
function useOptionalTableHeaderLevel() {
|
|
13
|
+
return inject(HEADER_LEVEL_KEY, null);
|
|
14
|
+
}
|
|
7
15
|
function provideTable(ctx) {
|
|
8
16
|
provide(KEY, ctx);
|
|
9
17
|
}
|
|
@@ -44,6 +52,6 @@ function useOptionalTableColumnContext() {
|
|
|
44
52
|
return inject(COLUMN_KEY, null);
|
|
45
53
|
}
|
|
46
54
|
//#endregion
|
|
47
|
-
export { provideTable, provideTableColumn, provideTableRow, provideTableSection, useOptionalTableColumnContext, useOptionalTableRowContext, useTableColumnContext, useTableContext, useTableRowContext, useTableSection };
|
|
55
|
+
export { provideTable, provideTableColumn, provideTableHeaderLevel, provideTableRow, provideTableSection, useOptionalTableColumnContext, useOptionalTableHeaderLevel, useOptionalTableRowContext, useTableColumnContext, useTableContext, useTableRowContext, useTableSection };
|
|
48
56
|
|
|
49
57
|
//# sourceMappingURL=context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/table/context.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-Present XiHanFun and contributors.\n * Licensed under the MIT License. See LICENSE in the project root for license information.\n */\n\n// 提供 context 相关实现。\n\nimport 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\n/** 注入列上下文,列设置区中的操作按钮不在列标题内时返回 null,列身份改由自己的 value 声明。 */\nexport function useOptionalTableColumnContext(): TableColumnContext | null {\n return inject(COLUMN_KEY, null)\n}\n"],"mappings":";;AAyBA,MAAM,MAAkC,OAAO,IAAI,UAAU;AAC7D,MAAM,cAA0C,OAAO,IAAI,kBAAkB;AAC7E,MAAM,UAAyC,OAAO,IAAI,cAAc;AACxE,MAAM,aAA+C,OAAO,IAAI,iBAAiB;
|
|
1
|
+
{"version":3,"file":"context.js","names":[],"sources":["../../../src/components/table/context.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-Present XiHanFun and contributors.\n * Licensed under the MIT License. See LICENSE in the project root for license information.\n */\n\n// 提供 context 相关实现。\n\nimport 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')\nconst HEADER_LEVEL_KEY: InjectionKey<ComputedRef<number | undefined>> = Symbol.for('xh-table-header-level')\n\n/** 表头行写明的层号,供行里的列头定位自己在多级表头里的哪一格。 */\nexport function provideTableHeaderLevel(level: ComputedRef<number | undefined>): void {\n provide(HEADER_LEVEL_KEY, level)\n}\n\nexport function useOptionalTableHeaderLevel(): ComputedRef<number | undefined> | null {\n return inject(HEADER_LEVEL_KEY, null)\n}\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\n/** 注入列上下文,列设置区中的操作按钮不在列标题内时返回 null,列身份改由自己的 value 声明。 */\nexport function useOptionalTableColumnContext(): TableColumnContext | null {\n return inject(COLUMN_KEY, null)\n}\n"],"mappings":";;AAyBA,MAAM,MAAkC,OAAO,IAAI,UAAU;AAC7D,MAAM,cAA0C,OAAO,IAAI,kBAAkB;AAC7E,MAAM,UAAyC,OAAO,IAAI,cAAc;AACxE,MAAM,aAA+C,OAAO,IAAI,iBAAiB;AACjF,MAAM,mBAAkE,OAAO,IAAI,uBAAuB;;AAG1G,SAAgB,wBAAwB,OAA8C;CACpF,QAAQ,kBAAkB,KAAK;AACjC;AAEA,SAAgB,8BAAsE;CACpF,OAAO,OAAO,kBAAkB,IAAI;AACtC;AAEA,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;;AAGA,SAAgB,gCAA2D;CACzE,OAAO,OAAO,YAAY,IAAI;AAChC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { PayloadOf } from "../../runtime/payload.js";
|
|
2
2
|
import { PropType, SlotsType, VNode } from "vue";
|
|
3
|
-
import { ControlVariant, Direction, Size } from "@xihan-ui/core";
|
|
3
|
+
import { CascadeStrategy, ControlVariant, Direction, Size } from "@xihan-ui/core";
|
|
4
4
|
import { TableApi, TableColumnDef, TableColumnKind, TableColumnPreference, TableRowDef, TableSchema, TableSelection, TableSelectionMode, TableSortDescriptor } from "@xihan-ui/headless";
|
|
5
5
|
//#region src/components/table/table.d.ts
|
|
6
6
|
type TableProps = TableSchema['props'];
|
|
7
7
|
/** 默认插槽的载荷:可见行与排序、选中、展开三态,以及逐行查询与改写它们的句柄。 */
|
|
8
|
-
type TableRootSlotProps = Pick<TableApi, 'columns' | 'columnPreference' | 'columnSettings' | 'setColumnSticky' | 'setColumnHidden' | 'moveColumn' | 'setColumnWidth' | 'setColumnPreference' | 'rowNumber' | 'visibleRows' | 'sort' | 'selection' | 'selectionState' | 'expandedValue' | 'focusedRow' | 'empty' | 'loading' | 'isSelected' | 'isExpanded' | 'sortDirection' | 'sortPriority' | 'toggleSort' | 'selectRow' | 'toggleSelectAll' | 'toggleExpandRow' | 'rowReorderDisabledReason'>;
|
|
8
|
+
type TableRootSlotProps = Pick<TableApi, 'columns' | 'columnPreference' | 'columnSettings' | 'setColumnSticky' | 'setColumnHidden' | 'moveColumn' | 'setColumnWidth' | 'setColumnPreference' | 'rowNumber' | 'visibleRows' | 'sort' | 'selection' | 'selectionState' | 'expandedValue' | 'focusedRow' | 'empty' | 'loading' | 'isSelected' | 'isExpanded' | 'sortDirection' | 'sortPriority' | 'toggleSort' | 'selectRow' | 'toggleSelectAll' | 'toggleExpandRow' | 'rowReorderDisabledReason' | 'headerRows' | 'headerRowCount' | 'cellSpanOf'>;
|
|
9
9
|
/**
|
|
10
10
|
* 工具条插槽的载荷:作用于整张表的项:列设置、排序链与整表状态。
|
|
11
11
|
* 逐行的内容(可见行、行号、逐行查询)不在其中:工具条放在表外,无法触及某一行。
|
|
@@ -33,6 +33,22 @@ declare const XhTableRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
33
33
|
selectionMode: {
|
|
34
34
|
type: PropType<TableSelectionMode>;
|
|
35
35
|
};
|
|
36
|
+
/** 单元格合并:逐格询问合并区的大小,与 antd 的 spanMethod 同一种写法。 */
|
|
37
|
+
cellSpan: {
|
|
38
|
+
type: PropType<TableProps["cellSpan"]>;
|
|
39
|
+
};
|
|
40
|
+
/** 与 Virtualizer 的正式接线口:传 Virtualizer 的 collectionVirtualizer,count 等于可见数据行的条数。 */
|
|
41
|
+
virtualizer: {
|
|
42
|
+
type: PropType<TableProps["virtualizer"]>;
|
|
43
|
+
};
|
|
44
|
+
/** 树形表在 multiple 下父子级联勾选,与 Tree 的 cascade 同义。 */
|
|
45
|
+
cascade: {
|
|
46
|
+
type: BooleanConstructor;
|
|
47
|
+
default: undefined;
|
|
48
|
+
};
|
|
49
|
+
checkedStrategy: {
|
|
50
|
+
type: PropType<CascadeStrategy>;
|
|
51
|
+
};
|
|
36
52
|
/** 需要哪几列前缀列(序号 / 多选 / 展开),按给定顺序插入最前面并占用列号。 */
|
|
37
53
|
prefixColumns: {
|
|
38
54
|
type: PropType<TableColumnKind[]>;
|
|
@@ -124,6 +140,22 @@ declare const XhTableRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
124
140
|
selectionMode: {
|
|
125
141
|
type: PropType<TableSelectionMode>;
|
|
126
142
|
};
|
|
143
|
+
/** 单元格合并:逐格询问合并区的大小,与 antd 的 spanMethod 同一种写法。 */
|
|
144
|
+
cellSpan: {
|
|
145
|
+
type: PropType<TableProps["cellSpan"]>;
|
|
146
|
+
};
|
|
147
|
+
/** 与 Virtualizer 的正式接线口:传 Virtualizer 的 collectionVirtualizer,count 等于可见数据行的条数。 */
|
|
148
|
+
virtualizer: {
|
|
149
|
+
type: PropType<TableProps["virtualizer"]>;
|
|
150
|
+
};
|
|
151
|
+
/** 树形表在 multiple 下父子级联勾选,与 Tree 的 cascade 同义。 */
|
|
152
|
+
cascade: {
|
|
153
|
+
type: BooleanConstructor;
|
|
154
|
+
default: undefined;
|
|
155
|
+
};
|
|
156
|
+
checkedStrategy: {
|
|
157
|
+
type: PropType<CascadeStrategy>;
|
|
158
|
+
};
|
|
127
159
|
/** 需要哪几列前缀列(序号 / 多选 / 展开),按给定顺序插入最前面并占用列号。 */
|
|
128
160
|
prefixColumns: {
|
|
129
161
|
type: PropType<TableColumnKind[]>;
|
|
@@ -196,8 +228,9 @@ declare const XhTableRoot: import("vue").DefineComponent<import("vue").ExtractPr
|
|
|
196
228
|
loop: boolean;
|
|
197
229
|
loading: boolean;
|
|
198
230
|
empty: boolean;
|
|
199
|
-
|
|
231
|
+
cascade: boolean;
|
|
200
232
|
striped: boolean;
|
|
233
|
+
stickyHeader: boolean;
|
|
201
234
|
ruled: boolean;
|
|
202
235
|
rowReorderable: boolean;
|
|
203
236
|
}, SlotsType<{
|
|
@@ -254,6 +287,10 @@ declare const XhTableRow: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
254
287
|
value: {
|
|
255
288
|
type: StringConstructor;
|
|
256
289
|
};
|
|
290
|
+
/** 多级表头下写明这是第几行表头(1 起算),行里的列头据此定位;单行表头省略。 */
|
|
291
|
+
level: {
|
|
292
|
+
type: NumberConstructor;
|
|
293
|
+
};
|
|
257
294
|
}>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
258
295
|
[key: string]: any;
|
|
259
296
|
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
@@ -261,12 +298,20 @@ declare const XhTableRow: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
261
298
|
value: {
|
|
262
299
|
type: StringConstructor;
|
|
263
300
|
};
|
|
301
|
+
/** 多级表头下写明这是第几行表头(1 起算),行里的列头据此定位;单行表头省略。 */
|
|
302
|
+
level: {
|
|
303
|
+
type: NumberConstructor;
|
|
304
|
+
};
|
|
264
305
|
}>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
265
306
|
declare const XhTableColumnHeader: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
266
307
|
value: {
|
|
267
308
|
type: StringConstructor;
|
|
268
309
|
required: true;
|
|
269
310
|
};
|
|
311
|
+
/** 多级表头里这一格所在的表头行;省略时取所在表头行写明的层号。 */
|
|
312
|
+
level: {
|
|
313
|
+
type: NumberConstructor;
|
|
314
|
+
};
|
|
270
315
|
}>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
271
316
|
[key: string]: any;
|
|
272
317
|
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
@@ -274,6 +319,10 @@ declare const XhTableColumnHeader: import("vue").DefineComponent<import("vue").E
|
|
|
274
319
|
type: StringConstructor;
|
|
275
320
|
required: true;
|
|
276
321
|
};
|
|
322
|
+
/** 多级表头里这一格所在的表头行;省略时取所在表头行写明的层号。 */
|
|
323
|
+
level: {
|
|
324
|
+
type: NumberConstructor;
|
|
325
|
+
};
|
|
277
326
|
}>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
278
327
|
/**
|
|
279
328
|
* 列名。列头里唯一可收窄的一格:列名太长时由它出省略号,排序钮、列宽把手与列拖拽把手都写在它之外、
|
|
@@ -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":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { withXhConfig } from "../../config/config.js";
|
|
2
|
-
import { provideTable, provideTableColumn, provideTableRow, provideTableSection, useOptionalTableColumnContext, useOptionalTableRowContext, useTableColumnContext, useTableContext, useTableRowContext, useTableSection } from "./context.js";
|
|
2
|
+
import { provideTable, provideTableColumn, provideTableHeaderLevel, provideTableRow, provideTableSection, useOptionalTableColumnContext, useOptionalTableHeaderLevel, useOptionalTableRowContext, useTableColumnContext, useTableContext, useTableRowContext, useTableSection } from "./context.js";
|
|
3
3
|
import { useTable } from "./use-table.js";
|
|
4
4
|
import { Fragment, computed, defineComponent, h, mergeProps, onBeforeUnmount, ref, watch } from "vue";
|
|
5
5
|
//#region src/components/table/table.ts
|
|
@@ -30,6 +30,16 @@ const XhTableRoot = /* @__PURE__ */ defineComponent({
|
|
|
30
30
|
selection: { type: [Array, String] },
|
|
31
31
|
defaultSelection: { type: [Array, String] },
|
|
32
32
|
selectionMode: { type: String },
|
|
33
|
+
/** 单元格合并:逐格询问合并区的大小,与 antd 的 spanMethod 同一种写法。 */
|
|
34
|
+
cellSpan: { type: Function },
|
|
35
|
+
/** 与 Virtualizer 的正式接线口:传 Virtualizer 的 collectionVirtualizer,count 等于可见数据行的条数。 */
|
|
36
|
+
virtualizer: { type: Object },
|
|
37
|
+
/** 树形表在 multiple 下父子级联勾选,与 Tree 的 cascade 同义。 */
|
|
38
|
+
cascade: {
|
|
39
|
+
type: Boolean,
|
|
40
|
+
default: void 0
|
|
41
|
+
},
|
|
42
|
+
checkedStrategy: { type: String },
|
|
33
43
|
/** 需要哪几列前缀列(序号 / 多选 / 展开),按给定顺序插入最前面并占用列号。 */
|
|
34
44
|
prefixColumns: { type: Array },
|
|
35
45
|
/** 当前页码与每页条数:只用于计算序号,不参与切片。 */
|
|
@@ -114,7 +124,9 @@ const XhTableRoot = /* @__PURE__ */ defineComponent({
|
|
|
114
124
|
empty: ctx.api.value.empty,
|
|
115
125
|
loading: ctx.api.value.loading
|
|
116
126
|
}) ?? null,
|
|
117
|
-
h("div", mergeProps(ctx.api.value.getRootProps(), attrs
|
|
127
|
+
h("div", mergeProps(ctx.api.value.getRootProps(), attrs, { ref: (el) => {
|
|
128
|
+
ctx.rootRef.value = el;
|
|
129
|
+
} }), slots.default?.({
|
|
118
130
|
columns: ctx.api.value.columns,
|
|
119
131
|
columnPreference: ctx.api.value.columnPreference,
|
|
120
132
|
columnSettings: ctx.api.value.columnSettings,
|
|
@@ -125,6 +137,9 @@ const XhTableRoot = /* @__PURE__ */ defineComponent({
|
|
|
125
137
|
setColumnPreference: ctx.api.value.setColumnPreference,
|
|
126
138
|
rowNumber: ctx.api.value.rowNumber,
|
|
127
139
|
visibleRows: ctx.api.value.visibleRows,
|
|
140
|
+
headerRows: ctx.api.value.headerRows,
|
|
141
|
+
headerRowCount: ctx.api.value.headerRowCount,
|
|
142
|
+
cellSpanOf: ctx.api.value.cellSpanOf,
|
|
128
143
|
sort: ctx.api.value.sort,
|
|
129
144
|
selection: ctx.api.value.selection,
|
|
130
145
|
selectionState: ctx.api.value.selectionState,
|
|
@@ -215,13 +230,19 @@ const XhTableFooter = /* @__PURE__ */ defineComponent({
|
|
|
215
230
|
});
|
|
216
231
|
const XhTableRow = /* @__PURE__ */ defineComponent({
|
|
217
232
|
name: "XhTableRow",
|
|
218
|
-
props: {
|
|
219
|
-
|
|
220
|
-
value: { type: String }
|
|
233
|
+
props: {
|
|
234
|
+
/** 行 id:数据行必须提供,表头行与脚注行省略。 */
|
|
235
|
+
value: { type: String },
|
|
236
|
+
/** 多级表头下写明这是第几行表头(1 起算),行里的列头据此定位;单行表头省略。 */
|
|
237
|
+
level: { type: Number }
|
|
238
|
+
},
|
|
221
239
|
setup(props, { slots }) {
|
|
222
240
|
const ctx = useTableContext();
|
|
223
241
|
const section = useTableSection();
|
|
224
|
-
if (section !== "body")
|
|
242
|
+
if (section !== "body") {
|
|
243
|
+
if (section === "header") provideTableHeaderLevel(computed(() => props.level));
|
|
244
|
+
return () => h("div", section === "header" ? ctx.api.value.getHeaderRowProps({ level: props.level }) : ctx.api.value.getFooterRowProps(), slots.default?.());
|
|
245
|
+
}
|
|
225
246
|
const row = computed(() => ({ value: props.value ?? "" }));
|
|
226
247
|
provideTableRow({ row });
|
|
227
248
|
const el = ref(null);
|
|
@@ -234,13 +255,21 @@ value: { type: String } },
|
|
|
234
255
|
});
|
|
235
256
|
const XhTableColumnHeader = /* @__PURE__ */ defineComponent({
|
|
236
257
|
name: "XhTableColumnHeader",
|
|
237
|
-
props: {
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
258
|
+
props: {
|
|
259
|
+
value: {
|
|
260
|
+
type: String,
|
|
261
|
+
required: true
|
|
262
|
+
},
|
|
263
|
+
/** 多级表头里这一格所在的表头行;省略时取所在表头行写明的层号。 */
|
|
264
|
+
level: { type: Number }
|
|
265
|
+
},
|
|
241
266
|
setup(props, { slots }) {
|
|
242
267
|
const ctx = useTableContext();
|
|
243
|
-
const
|
|
268
|
+
const headerLevel = useOptionalTableHeaderLevel();
|
|
269
|
+
const column = computed(() => ({
|
|
270
|
+
value: props.value,
|
|
271
|
+
level: props.level ?? headerLevel?.value
|
|
272
|
+
}));
|
|
244
273
|
provideTableColumn({ column });
|
|
245
274
|
return () => h("div", ctx.api.value.getColumnHeaderProps(column.value), slots.default?.());
|
|
246
275
|
}
|