@opentinyvue/vue-docs 3.22.0 → 3.22.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/demos/apis/breadcrumb.js +2 -2
- package/demos/apis/button-group.js +1 -1
- package/demos/apis/calendar-view.js +1 -1
- package/demos/apis/card.js +4 -4
- package/demos/apis/dialog-box.js +2 -2
- package/demos/apis/grid.js +255 -260
- package/demos/apis/guide.js +11 -0
- package/demos/apis/image.js +16 -15
- package/demos/apis/input.js +5 -5
- package/demos/apis/nav-menu.js +11 -0
- package/demos/apis/numeric.js +2 -2
- package/demos/apis/pager.js +1 -1
- package/demos/apis/pop-upload.js +1 -1
- package/demos/apis/popeditor.js +1 -1
- package/demos/apis/select.js +26 -1
- package/demos/apis/skeleton.js +40 -20
- package/demos/apis/tag.js +14 -0
- package/demos/mobile-first/app/file-upload/webdoc/file-upload.js +2 -2
- package/demos/mobile-first/app/input/mask.vue +0 -4
- package/demos/mobile-first/app/skeleton/animation.vue +36 -0
- package/demos/mobile-first/app/skeleton/avatar.vue +15 -0
- package/demos/mobile-first/app/skeleton/base.vue +15 -0
- package/demos/mobile-first/app/skeleton/custom-layout.vue +40 -0
- package/demos/mobile-first/app/skeleton/custom-rows.vue +15 -0
- package/demos/mobile-first/app/skeleton/image-item-slot.vue +24 -0
- package/demos/mobile-first/app/skeleton/loaded.vue +36 -0
- package/demos/mobile-first/app/skeleton/rows-width.vue +15 -0
- package/demos/mobile-first/app/skeleton/shape.vue +24 -0
- package/demos/mobile-first/app/skeleton/size.vue +23 -0
- package/demos/mobile-first/app/skeleton/webdoc/skeleton.cn.md +9 -0
- package/demos/mobile-first/app/skeleton/webdoc/skeleton.en.md +9 -0
- package/demos/mobile-first/app/skeleton/webdoc/skeleton.js +135 -0
- package/demos/mobile-first/menus.js +2 -2
- package/demos/pc/app/action-menu/icon-composition-api.vue +5 -5
- package/demos/pc/app/action-menu/icon.vue +5 -5
- package/demos/pc/app/action-menu/popper-class-composition-api.vue +1 -1
- package/demos/pc/app/action-menu/popper-class.spec.ts +1 -1
- package/demos/pc/app/action-menu/popper-class.vue +1 -1
- package/demos/pc/app/action-menu/slot-item-composition-api.vue +1 -1
- package/demos/pc/app/action-menu/slot-item.vue +1 -1
- package/demos/pc/app/action-menu/webdoc/action-menu.js +147 -0
- package/demos/pc/app/alert/custom-class-composition-api.vue +1 -1
- package/demos/pc/app/alert/custom-class.spec.ts +1 -1
- package/demos/pc/app/alert/custom-class.vue +1 -1
- package/demos/pc/app/alert/webdoc/alert.js +135 -0
- package/demos/pc/app/anchor/webdoc/anchor.js +82 -0
- package/demos/pc/app/autocomplete/slot-composition-api.vue +4 -0
- package/demos/pc/app/autocomplete/slot.vue +4 -0
- package/demos/pc/app/autocomplete/webdoc/autocomplete.js +200 -0
- package/demos/pc/app/badge/offset-composition-api.vue +1 -1
- package/demos/pc/app/badge/offset.vue +1 -1
- package/demos/pc/app/badge/webdoc/badge.js +109 -0
- package/demos/pc/app/base-select/multiple-mix-composition-api.vue +4 -1
- package/demos/pc/app/base-select/multiple-mix.vue +4 -1
- package/demos/pc/app/base-select/popup-style-position-composition-api.vue +1 -1
- package/demos/pc/app/base-select/popup-style-position.spec.ts +1 -1
- package/demos/pc/app/base-select/popup-style-position.vue +1 -1
- package/demos/pc/app/base-select/searchable-composition-api.vue +3 -3
- package/demos/pc/app/base-select/searchable.vue +3 -3
- package/demos/pc/app/base-select/slot-empty-composition-api.vue +2 -4
- package/demos/pc/app/base-select/slot-empty.vue +3 -4
- package/demos/pc/app/base-select/slot-footer-composition-api.vue +3 -2
- package/demos/pc/app/base-select/slot-footer.vue +3 -2
- package/demos/pc/app/base-select/slot-reference-composition-api.vue +8 -0
- package/demos/pc/app/base-select/slot-reference.vue +8 -0
- package/demos/pc/app/base-select/webdoc/base-select.js +69 -0
- package/demos/pc/app/breadcrumb/webdoc/breadcrumb.js +69 -0
- package/demos/pc/app/bulletin-board/webdoc/bulletin-board.js +121 -0
- package/demos/pc/app/button/dynamic-disabled.spec.ts +1 -1
- package/demos/pc/app/button/ghost-composition-api.vue +1 -1
- package/demos/pc/app/button/ghost.vue +1 -1
- package/demos/pc/app/button/loading-composition-api.vue +3 -0
- package/demos/pc/app/button/loading.vue +3 -0
- package/demos/pc/app/button/webdoc/button.js +140 -0
- package/demos/pc/app/button-group/webdoc/button-group.js +149 -0
- package/demos/pc/app/calendar/calendar-year-month-composition-api.vue +7 -0
- package/demos/pc/app/calendar/calendar-year-month.spec.ts +16 -0
- package/demos/pc/app/calendar/calendar-year-month.vue +13 -0
- package/demos/pc/app/calendar/webdoc/calendar.js +108 -0
- package/demos/pc/app/calendar-view/calendar-disabled-day.spec.ts +6 -3
- package/demos/pc/app/calendar-view/webdoc/calendar-view.js +201 -0
- package/demos/pc/app/card/basic-usage-composition-api.vue +0 -1
- package/demos/pc/app/card/basic-usage.vue +0 -1
- package/demos/pc/app/card/card-disabled-composition-api.vue +0 -1
- package/demos/pc/app/card/card-disabled.vue +0 -1
- package/demos/pc/app/card/card-events-composition-api.vue +0 -1
- package/demos/pc/app/card/card-events.vue +0 -1
- package/demos/pc/app/card/card-group-composition-api.vue +0 -1
- package/demos/pc/app/card/card-group.vue +0 -1
- package/demos/pc/app/card/card-select-composition-api.vue +0 -1
- package/demos/pc/app/card/card-select.vue +0 -1
- package/demos/pc/app/card/card-size-composition-api.vue +0 -1
- package/demos/pc/app/card/card-size.vue +0 -1
- package/demos/pc/app/card/card-status-composition-api.vue +0 -1
- package/demos/pc/app/card/card-status.vue +0 -1
- package/demos/pc/app/card/card-type-composition-api.vue +0 -1
- package/demos/pc/app/card/card-type.vue +0 -1
- package/demos/pc/app/card/check-mode-composition-api.vue +0 -1
- package/demos/pc/app/card/check-mode.vue +0 -1
- package/demos/pc/app/card/check-type-checkbox-composition-api.vue +0 -1
- package/demos/pc/app/card/check-type-checkbox.vue +0 -1
- package/demos/pc/app/card/check-type-radio-composition-api.vue +0 -1
- package/demos/pc/app/card/check-type-radio.vue +0 -1
- package/demos/pc/app/card/custom-class-composition-api.vue +1 -1
- package/demos/pc/app/card/custom-class.vue +1 -1
- package/demos/pc/app/card/operate-bar-composition-api.vue +0 -1
- package/demos/pc/app/card/operate-bar.vue +0 -1
- package/demos/pc/app/card/slot-composition-api.vue +0 -1
- package/demos/pc/app/card/slot.vue +0 -1
- package/demos/pc/app/card/webdoc/card.js +56 -0
- package/demos/pc/app/carousel/autoplay-composition-api.vue +3 -3
- package/demos/pc/app/carousel/autoplay.vue +3 -3
- package/demos/pc/app/carousel/basic-usage-composition-api.vue +3 -3
- package/demos/pc/app/carousel/basic-usage.vue +3 -3
- package/demos/pc/app/carousel/card-mode-composition-api.vue +3 -3
- package/demos/pc/app/carousel/card-mode.vue +3 -3
- package/demos/pc/app/carousel/card-show-composition-api.vue +5 -5
- package/demos/pc/app/carousel/card-show.vue +5 -5
- package/demos/pc/app/carousel/carousel-arrow-always-composition-api.vue +3 -3
- package/demos/pc/app/carousel/carousel-arrow-always.vue +3 -3
- package/demos/pc/app/carousel/carousel-arrow-hover-composition-api.vue +3 -3
- package/demos/pc/app/carousel/carousel-arrow-hover.vue +3 -3
- package/demos/pc/app/carousel/carousel-arrow-never-composition-api.vue +3 -3
- package/demos/pc/app/carousel/carousel-arrow-never.vue +3 -3
- package/demos/pc/app/carousel/carousel-events-composition-api.vue +3 -7
- package/demos/pc/app/carousel/carousel-events.vue +3 -3
- package/demos/pc/app/carousel/close-loop-composition-api.vue +3 -3
- package/demos/pc/app/carousel/close-loop.vue +3 -3
- package/demos/pc/app/carousel/custom-height-composition-api.vue +6 -7
- package/demos/pc/app/carousel/custom-height.vue +6 -7
- package/demos/pc/app/carousel/dialog-show-composition-api.vue +3 -3
- package/demos/pc/app/carousel/dialog-show.vue +3 -3
- package/demos/pc/app/carousel/indicator-trigger-composition-api.vue +3 -3
- package/demos/pc/app/carousel/indicator-trigger.vue +3 -3
- package/demos/pc/app/carousel/initial-index-composition-api.vue +3 -3
- package/demos/pc/app/carousel/initial-index.vue +11 -2
- package/demos/pc/app/carousel/manual-play-composition-api.vue +3 -3
- package/demos/pc/app/carousel/manual-play.vue +3 -3
- package/demos/pc/app/carousel/play-interval-composition-api.vue +3 -3
- package/demos/pc/app/carousel/play-interval.vue +3 -3
- package/demos/pc/app/carousel/show-title-composition-api.vue +3 -3
- package/demos/pc/app/carousel/show-title.vue +3 -3
- package/demos/pc/app/carousel/swipeable-composition-api.vue +3 -3
- package/demos/pc/app/carousel/swipeable.vue +3 -3
- package/demos/pc/app/carousel/up-down-carousel-composition-api.vue +3 -3
- package/demos/pc/app/carousel/up-down-carousel.vue +3 -3
- package/demos/pc/app/carousel/webdoc/carousel.js +69 -0
- package/demos/pc/app/cascader/filterable-composition-api.vue +1 -1
- package/demos/pc/app/cascader/filterable.vue +1 -1
- package/demos/pc/app/cascader/webdoc/cascader.js +121 -0
- package/demos/pc/app/cascader-panel/webdoc/cascader-panel.js +82 -0
- package/demos/pc/app/chart/webdoc/chart-docs.cn.md +6 -6
- package/demos/pc/app/chart/webdoc/chart-docs.en.md +5 -5
- package/demos/pc/app/checkbox/basic-usage.spec.ts +2 -3
- package/demos/pc/app/checkbox/webdoc/checkbox.js +212 -0
- package/demos/pc/app/collapse/title-composition-api.vue +1 -0
- package/demos/pc/app/collapse/title.vue +1 -0
- package/demos/pc/app/collapse/webdoc/collapse.js +69 -0
- package/demos/pc/app/color-picker/webdoc/color-picker.js +95 -0
- package/demos/pc/app/color-select-panel/webdoc/color-select-panel.js +69 -0
- package/demos/pc/app/config-provider/webdoc/config-provider.js +30 -0
- package/demos/pc/app/container/basic-usage-composition-api.vue +13 -12
- package/demos/pc/app/container/basic-usage.vue +12 -12
- package/demos/pc/app/container/custom-with-height-composition-api.vue +12 -12
- package/demos/pc/app/container/custom-with-height.vue +12 -12
- package/demos/pc/app/container/webdoc/container.js +30 -0
- package/demos/pc/app/crop/webdoc/crop.js +69 -0
- package/demos/pc/app/date-picker/custom-suffix-icon-composition-api.vue +1 -1
- package/demos/pc/app/date-picker/custom-suffix-icon.vue +1 -1
- package/demos/pc/app/date-picker/webdoc/date-picker.js +69 -0
- package/demos/pc/app/dialog-box/basic-usage-composition-api.vue +2 -2
- package/demos/pc/app/dialog-box/basic-usage.spec.ts +6 -5
- package/demos/pc/app/dialog-box/basic-usage.vue +2 -2
- package/demos/pc/app/dialog-box/center.spec.ts +5 -4
- package/demos/pc/app/dialog-box/close-on-click-modal.spec.ts +4 -3
- package/demos/pc/app/dialog-box/close-on-press-escape.spec.ts +3 -2
- package/demos/pc/app/dialog-box/custom-dialog-content-composition-api.vue +2 -2
- package/demos/pc/app/dialog-box/custom-dialog-content.spec.ts +5 -4
- package/demos/pc/app/dialog-box/custom-dialog-content.vue +3 -4
- package/demos/pc/app/dialog-box/custom-dialog-footer-composition-api.vue +1 -1
- package/demos/pc/app/dialog-box/custom-dialog-footer.spec.ts +4 -3
- package/demos/pc/app/dialog-box/custom-dialog-footer.vue +1 -1
- package/demos/pc/app/dialog-box/custom-dialog-title-composition-api.vue +1 -1
- package/demos/pc/app/dialog-box/custom-dialog-title.spec.ts +4 -3
- package/demos/pc/app/dialog-box/custom-dialog-title.vue +1 -1
- package/demos/pc/app/dialog-box/destroy-on-close-composition-api.vue +1 -1
- package/demos/pc/app/dialog-box/destroy-on-close.spec.ts +3 -3
- package/demos/pc/app/dialog-box/destroy-on-close.vue +1 -1
- package/demos/pc/app/dialog-box/dialog-top-height.spec.ts +5 -4
- package/demos/pc/app/dialog-box/dialog-width.spec.ts +5 -4
- package/demos/pc/app/dialog-box/double-dialog-height-composition-api.vue +3 -3
- package/demos/pc/app/dialog-box/double-dialog-height.vue +3 -3
- package/demos/pc/app/dialog-box/draggable-composition-api.vue +1 -1
- package/demos/pc/app/dialog-box/draggable.spec.ts +3 -2
- package/demos/pc/app/dialog-box/draggable.vue +1 -1
- package/demos/pc/app/dialog-box/form-in-dialog.spec.ts +8 -7
- package/demos/pc/app/dialog-box/fullscreen.spec.ts +3 -2
- package/demos/pc/app/dialog-box/hidden-header.spec.ts +3 -3
- package/demos/pc/app/dialog-box/lock-scroll.spec.ts +4 -3
- package/demos/pc/app/dialog-box/open-close-events-composition-api.vue +2 -2
- package/demos/pc/app/dialog-box/open-close-events.spec.ts +1 -1
- package/demos/pc/app/dialog-box/open-close-events.vue +2 -2
- package/demos/pc/app/dialog-box/right-dialog-composition-api.vue +2 -2
- package/demos/pc/app/dialog-box/right-dialog.spec.ts +2 -2
- package/demos/pc/app/dialog-box/right-dialog.vue +2 -2
- package/demos/pc/app/dialog-box/secondary-dialog-composition-api.vue +1 -1
- package/demos/pc/app/dialog-box/secondary-dialog.spec.ts +3 -3
- package/demos/pc/app/dialog-box/secondary-dialog.vue +1 -1
- package/demos/pc/app/dialog-box/transition-effect-composition-api.vue +2 -2
- package/demos/pc/app/dialog-box/transition-effect.spec.ts +5 -4
- package/demos/pc/app/dialog-box/transition-effect.vue +2 -2
- package/demos/pc/app/dialog-box/webdoc/dialog-box.js +69 -0
- package/demos/pc/app/dialog-select/webdoc/dialog-select.js +82 -0
- package/demos/pc/app/divider/basic-usage.spec.ts +3 -2
- package/demos/pc/app/divider/content-position.spec.ts +2 -1
- package/demos/pc/app/divider/custom-style.spec.ts +4 -3
- package/demos/pc/app/divider/direction.spec.ts +3 -2
- package/demos/pc/app/divider/divider-type.spec.ts +2 -1
- package/demos/pc/app/divider/status.spec.ts +2 -1
- package/demos/pc/app/divider/webdoc/divider.js +69 -0
- package/demos/pc/app/drawer/before-close.spec.ts +7 -6
- package/demos/pc/app/drawer/dragable.spec.ts +4 -4
- package/demos/pc/app/drawer/events.spec.ts +15 -11
- package/demos/pc/app/drawer/footer-slot.spec.ts +3 -3
- package/demos/pc/app/drawer/header-right-slot.spec.ts +3 -3
- package/demos/pc/app/drawer/header-slot.spec.ts +3 -3
- package/demos/pc/app/drawer/mask-closable.spec.ts +4 -4
- package/demos/pc/app/drawer/placement.spec.ts +2 -2
- package/demos/pc/app/drawer/show-footer.spec.ts +3 -4
- package/demos/pc/app/drawer/use-through-method-composition-api.vue +3 -5
- package/demos/pc/app/drawer/use-through-method.spec.ts +6 -8
- package/demos/pc/app/drawer/use-through-method.vue +3 -5
- package/demos/pc/app/drawer/webdoc/drawer.js +187 -0
- package/demos/pc/app/drawer/width.spec.ts +2 -1
- package/demos/pc/app/drawer/z-index.spec.ts +2 -2
- package/demos/pc/app/drop-times/webdoc/drop-times.js +43 -0
- package/demos/pc/app/dropdown/inherit-width-composition-api.vue +2 -2
- package/demos/pc/app/dropdown/inherit-width.vue +2 -2
- package/demos/pc/app/dropdown/show-icon-composition-api.vue +12 -6
- package/demos/pc/app/dropdown/show-icon.vue +12 -6
- package/demos/pc/app/dropdown/size-composition-api.vue +4 -4
- package/demos/pc/app/dropdown/size.vue +4 -4
- package/demos/pc/app/dropdown/split-button.spec.ts +18 -17
- package/demos/pc/app/dropdown/webdoc/dropdown.js +69 -14
- package/demos/pc/app/file-upload/upload-user-head-composition-api.vue +2 -2
- package/demos/pc/app/file-upload/upload-user-head.vue +2 -2
- package/demos/pc/app/file-upload/webdoc/file-upload.js +71 -2
- package/demos/pc/app/filter-panel/webdoc/filter-panel.js +71 -0
- package/demos/pc/app/floatbar/custom-style-composition-api.vue +2 -2
- package/demos/pc/app/floatbar/custom-style.spec.ts +2 -2
- package/demos/pc/app/floatbar/custom-style.vue +2 -2
- package/demos/pc/app/floatbar/webdoc/floatbar.js +56 -0
- package/demos/pc/app/flowchart/webdoc/flowchart.js +69 -0
- package/demos/pc/app/fluent-editor/basic-usage.spec.ts +15 -0
- package/demos/pc/app/fluent-editor/before-editor-init.spec.ts +21 -0
- package/demos/pc/app/fluent-editor/data-switch.spec.ts +12 -0
- package/demos/pc/app/fluent-editor/disabled.spec.ts +9 -0
- package/demos/pc/app/fluent-editor/image-upload.spec.ts +7 -0
- package/demos/pc/app/fluent-editor/options.spec.ts +9 -0
- package/demos/pc/app/fluent-editor/webdoc/fluent-editor.js +82 -0
- package/demos/pc/app/form/popper-options-composition-api.vue +1 -1
- package/demos/pc/app/form/popper-options.vue +1 -1
- package/demos/pc/app/form/webdoc/form.js +163 -0
- package/demos/pc/app/fullscreen/webdoc/fullscreen.js +43 -0
- package/demos/pc/app/grid/custom/multiple-column-sort-composition-api.vue +2 -2
- package/demos/pc/app/grid/custom/multiple-column-sort.vue +1 -1
- package/demos/pc/app/grid/custom-style/body-style-composition-api.vue +1 -1
- package/demos/pc/app/grid/custom-style/body-style.vue +1 -1
- package/demos/pc/app/grid/custom-style/class-name-composition-api.vue +1 -1
- package/demos/pc/app/grid/custom-style/class-name.spec.js +1 -1
- package/demos/pc/app/grid/custom-style/class-name.vue +1 -1
- package/demos/pc/app/grid/custom-style/footer-style-composition-api.vue +1 -1
- package/demos/pc/app/grid/custom-style/footer-style.vue +1 -1
- package/demos/pc/app/grid/custom-style/header-style-composition-api.vue +1 -1
- package/demos/pc/app/grid/custom-style/header-style.vue +1 -1
- package/demos/pc/app/grid/drag/row-drag-ctrl-composition-api.vue +1 -1
- package/demos/pc/app/grid/drag/row-drag-ctrl.vue +1 -1
- package/demos/pc/app/grid/edit/editing-composition-api.vue +1 -1
- package/demos/pc/app/grid/edit/editing.vue +1 -1
- package/demos/pc/app/grid/edit/status-of-editing-composition-api.vue +3 -3
- package/demos/pc/app/grid/edit/status-of-editing.vue +3 -3
- package/demos/pc/app/grid/edit/trigger-mode-for-editing-composition-api.vue +1 -1
- package/demos/pc/app/grid/edit/trigger-mode-for-editing.vue +1 -1
- package/demos/pc/app/grid/edit/trigger-mode-hm-editing-composition-api.vue +1 -1
- package/demos/pc/app/grid/edit/trigger-mode-hm-editing.vue +1 -1
- package/demos/pc/app/grid/editor/active-strictly-composition-api.vue +1 -1
- package/demos/pc/app/grid/editor/active-strictly.vue +1 -1
- package/demos/pc/app/grid/editor/editor-bg-composition-api.vue +1 -1
- package/demos/pc/app/grid/editor/editor-bg.vue +1 -1
- package/demos/pc/app/grid/empty/empty-data-tip-composition-api.vue +1 -1
- package/demos/pc/app/grid/empty/empty-data-tip.vue +1 -1
- package/demos/pc/app/grid/loading/grid-custom-loading-composition-api.vue +1 -1
- package/demos/pc/app/grid/loading/grid-custom-loading.vue +1 -1
- package/demos/pc/app/grid/operation-column/custom-operation-column-composition-api.vue +2 -2
- package/demos/pc/app/grid/operation-column/custom-operation-column.vue +2 -2
- package/demos/pc/app/grid/size/adaptive-column-width-composition-api.vue +1 -1
- package/demos/pc/app/grid/size/adaptive-column-width.vue +1 -1
- package/demos/pc/app/grid/size/max-min-grid-height-composition-api.vue +1 -1
- package/demos/pc/app/grid/size/max-min-grid-height.vue +1 -1
- package/demos/pc/app/grid/slot/editor-slot.spec.js +0 -18
- package/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand-composition-api.vue +149 -0
- package/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand.spec.js +9 -0
- package/demos/pc/app/grid/tree-table/tree-table-tree-grid-expand.vue +158 -0
- package/demos/pc/app/grid/validation/bubbling-composition-api.vue +1 -1
- package/demos/pc/app/grid/validation/bubbling.vue +1 -1
- package/demos/pc/app/grid/validation/custcomp-composition-api.vue +2 -9
- package/demos/pc/app/grid/validation/custcomp.vue +2 -9
- package/demos/pc/app/grid/webdoc/grid-align.js +6 -6
- package/demos/pc/app/grid/webdoc/grid-appearance-settings.js +4 -4
- package/demos/pc/app/grid/webdoc/grid-context-menu.js +8 -8
- package/demos/pc/app/grid/webdoc/grid-custom-style.js +8 -8
- package/demos/pc/app/grid/webdoc/grid-custom.js +30 -30
- package/demos/pc/app/grid/webdoc/grid-data-source.js +12 -12
- package/demos/pc/app/grid/webdoc/grid-drag.js +8 -8
- package/demos/pc/app/grid/webdoc/grid-dynamically-columns.js +12 -12
- package/demos/pc/app/grid/webdoc/grid-edit.js +18 -18
- package/demos/pc/app/grid/webdoc/grid-editor.js +14 -14
- package/demos/pc/app/grid/webdoc/grid-empty.js +6 -6
- package/demos/pc/app/grid/webdoc/grid-event.js +34 -34
- package/demos/pc/app/grid/webdoc/grid-expand.js +8 -8
- package/demos/pc/app/grid/webdoc/grid-faq.js +10 -10
- package/demos/pc/app/grid/webdoc/grid-filter.js +22 -22
- package/demos/pc/app/grid/webdoc/grid-fixed.js +8 -8
- package/demos/pc/app/grid/webdoc/grid-footer.js +8 -8
- package/demos/pc/app/grid/webdoc/grid-header.js +10 -10
- package/demos/pc/app/grid/webdoc/grid-highlight.js +12 -12
- package/demos/pc/app/grid/webdoc/grid-import-export.js +4 -4
- package/demos/pc/app/grid/webdoc/grid-large-data.js +14 -14
- package/demos/pc/app/grid/webdoc/grid-loading.js +4 -4
- package/demos/pc/app/grid/webdoc/grid-mouse-keyboard.js +6 -6
- package/demos/pc/app/grid/webdoc/grid-operation-column.js +16 -16
- package/demos/pc/app/grid/webdoc/grid-pager.js +8 -8
- package/demos/pc/app/grid/webdoc/grid-renderer.js +10 -10
- package/demos/pc/app/grid/webdoc/grid-row-grouping.js +8 -8
- package/demos/pc/app/grid/webdoc/grid-serial-column.js +6 -6
- package/demos/pc/app/grid/webdoc/grid-size.js +26 -26
- package/demos/pc/app/grid/webdoc/grid-slot.js +10 -10
- package/demos/pc/app/grid/webdoc/grid-sort.js +10 -10
- package/demos/pc/app/grid/webdoc/grid-span.js +6 -6
- package/demos/pc/app/grid/webdoc/grid-tip.js +6 -6
- package/demos/pc/app/grid/webdoc/grid-toolbar.js +26 -26
- package/demos/pc/app/grid/webdoc/grid-tree-table.js +31 -22
- package/demos/pc/app/grid/webdoc/grid-validation.js +22 -22
- package/demos/pc/app/grid/webdoc/grid.js +160 -0
- package/demos/pc/app/guide/webdoc/guide.js +110 -0
- package/demos/pc/app/icon/list-composition-api.vue +4 -7
- package/demos/pc/app/icon/list.vue +4 -7
- package/demos/pc/app/icon/webdoc/icon.js +82 -0
- package/demos/pc/app/icon-multicolor/list-composition-api.vue +3 -1
- package/demos/pc/app/icon-multicolor/list.vue +3 -1
- package/demos/pc/app/image/lazy-composition-api.vue +0 -1
- package/demos/pc/app/image/lazy.vue +0 -1
- package/demos/pc/app/image/webdoc/image.js +95 -0
- package/demos/pc/app/infinite-scroll/webdoc/infinite-scroll.js +30 -0
- package/demos/pc/app/input/webdoc/input.js +121 -0
- package/demos/pc/app/ip-address/webdoc/ip-address.js +82 -0
- package/demos/pc/app/layout/alignment-composition-api.vue +1 -1
- package/demos/pc/app/layout/alignment.vue +1 -1
- package/demos/pc/app/layout/webdoc/layout.js +95 -0
- package/demos/pc/app/link/webdoc/link.js +83 -1
- package/demos/pc/app/loading/basic-usage-composition-api.vue +0 -1
- package/demos/pc/app/loading/basic-usage.vue +0 -1
- package/demos/pc/app/loading/webdoc/loading.js +69 -0
- package/demos/pc/app/milestone/basic-usage-composition-api.vue +4 -4
- package/demos/pc/app/milestone/basic-usage.spec.ts +3 -10
- package/demos/pc/app/milestone/custom-flag-composition-api.vue +5 -5
- package/demos/pc/app/milestone/custom-flag.vue +5 -5
- package/demos/pc/app/milestone/data-field-mapping-composition-api.vue +5 -5
- package/demos/pc/app/milestone/data-field-mapping.vue +5 -5
- package/demos/pc/app/milestone/flag-before-composition-api.vue +4 -4
- package/demos/pc/app/milestone/flag-before.spec.ts +2 -2
- package/demos/pc/app/milestone/flag-before.vue +4 -4
- package/demos/pc/app/milestone/milestone-events-composition-api.vue +5 -5
- package/demos/pc/app/milestone/milestone-events.vue +5 -5
- package/demos/pc/app/milestone/show-number.spec.ts +0 -6
- package/demos/pc/app/milestone/solid-style.spec.ts +0 -6
- package/demos/pc/app/milestone/webdoc/milestone.js +117 -0
- package/demos/pc/app/mind-map/basic-usage-composition-api.vue +7 -1
- package/demos/pc/app/mind-map/basic-usage.vue +7 -1
- package/demos/pc/app/mind-map/event-composition-api.vue +7 -1
- package/demos/pc/app/mind-map/event.vue +7 -1
- package/demos/pc/app/mind-map/export-data-composition-api.vue +7 -2
- package/demos/pc/app/mind-map/export-data.vue +7 -2
- package/demos/pc/app/mind-map/webdoc/mind-map.js +54 -0
- package/demos/pc/app/modal/modal-other-composition-api.vue +1 -1
- package/demos/pc/app/modal/modal-other.vue +1 -1
- package/demos/pc/app/modal/webdoc/modal.js +108 -0
- package/demos/pc/app/nav-menu/webdoc/nav-menu.js +69 -0
- package/demos/pc/app/notify/webdoc/notify.js +160 -0
- package/demos/pc/app/numeric/webdoc/numeric.js +173 -0
- package/demos/pc/app/pager/webdoc/pager.js +110 -0
- package/demos/pc/app/pop-upload/webdoc/pop-upload.js +114 -2
- package/demos/pc/app/popconfirm/custom-class-composition-api.vue +2 -2
- package/demos/pc/app/popconfirm/custom-class.vue +2 -2
- package/demos/pc/app/popconfirm/type-composition-api.vue +7 -1
- package/demos/pc/app/popconfirm/type.vue +7 -1
- package/demos/pc/app/popconfirm/webdoc/popconfirm.js +95 -0
- package/demos/pc/app/popeditor/webdoc/popeditor.js +56 -0
- package/demos/pc/app/popover/webdoc/popover.js +122 -0
- package/demos/pc/app/progress/webdoc/progress.js +82 -0
- package/demos/pc/app/qr-code/basic-usage.spec.ts +1 -1
- package/demos/pc/app/qr-code/icon.spec.ts +2 -2
- package/demos/pc/app/qr-code/level.spec.ts +1 -1
- package/demos/pc/app/qr-code/style.spec.ts +1 -1
- package/demos/pc/app/qr-code/webdoc/qr-code.js +82 -0
- package/demos/pc/app/radio/webdoc/radio.js +56 -0
- package/demos/pc/app/rate/webdoc/rate.js +56 -0
- package/demos/pc/app/scroll-text/webdoc/scroll-text.js +56 -0
- package/demos/pc/app/search/slot-prefix-suffix-composition-api.vue +5 -0
- package/demos/pc/app/search/webdoc/search.js +56 -0
- package/demos/pc/app/select/multiple-composition-api.vue +12 -0
- package/demos/pc/app/select/multiple-mix-composition-api.vue +2 -1
- package/demos/pc/app/select/multiple-mix.vue +2 -1
- package/demos/pc/app/select/multiple.vue +12 -0
- package/demos/pc/app/select/nest-radio-grid-much-data.spec.ts +1 -0
- package/demos/pc/app/select/popup-style-position-composition-api.vue +1 -1
- package/demos/pc/app/select/popup-style-position.spec.ts +1 -1
- package/demos/pc/app/select/popup-style-position.vue +1 -1
- package/demos/pc/app/select/searchable-composition-api.vue +3 -3
- package/demos/pc/app/select/searchable.vue +3 -3
- package/demos/pc/app/select/slot-empty-composition-api.vue +3 -4
- package/demos/pc/app/select/slot-empty.vue +3 -4
- package/demos/pc/app/select/{slot-footer-composition-api.vue → slot-header-footer-composition-api.vue} +11 -1
- package/demos/pc/app/select/{slot-footer.spec.ts → slot-header-footer.spec.ts} +3 -2
- package/demos/pc/app/select/{slot-footer.vue → slot-header-footer.vue} +12 -2
- package/demos/pc/app/select/slot-reference-composition-api.vue +8 -0
- package/demos/pc/app/select/slot-reference.vue +8 -0
- package/demos/pc/app/select/webdoc/select.js +63 -6
- package/demos/pc/app/skeleton/animation.spec.ts +2 -1
- package/demos/pc/app/skeleton/loading-completed.spec.ts +2 -1
- package/demos/pc/app/skeleton/webdoc/skeleton.js +56 -0
- package/demos/pc/app/slider/webdoc/slider.js +56 -0
- package/demos/pc/app/split/webdoc/split.js +56 -0
- package/demos/pc/app/statistic/webdoc/statistic.js +56 -0
- package/demos/pc/app/steps/webdoc/steps.js +57 -0
- package/demos/pc/app/sticky/webdoc/sticky.js +57 -0
- package/demos/pc/app/switch/webdoc/switch.js +56 -0
- package/demos/pc/app/tabs/custom-more-icon.spec.ts +1 -1
- package/demos/pc/app/tabs/webdoc/tabs.js +57 -1
- package/demos/pc/app/tag/max-width-composition-api.vue +16 -0
- package/demos/pc/app/tag/max-width.spec.ts +10 -0
- package/demos/pc/app/tag/max-width.vue +22 -0
- package/demos/pc/app/tag/webdoc/tag.js +70 -0
- package/demos/pc/app/tag-group/basic-usage-composition-api.vue +0 -16
- package/demos/pc/app/tag-group/basic-usage.vue +0 -16
- package/demos/pc/app/tag-group/tag-group-effect.spec.js +5 -5
- package/demos/pc/app/tag-group/webdoc/tag-group.js +57 -0
- package/demos/pc/app/text-popup/clear-value-composition-api.vue +2 -0
- package/demos/pc/app/text-popup/clear-value.vue +2 -0
- package/demos/pc/app/text-popup/webdoc/text-popup.js +56 -0
- package/demos/pc/app/time-line/status.spec.ts +1 -1
- package/demos/pc/app/time-line/webdoc/time-line.js +56 -0
- package/demos/pc/app/time-picker/webdoc/time-picker.js +56 -0
- package/demos/pc/app/time-select/webdoc/time-select.js +56 -0
- package/demos/pc/app/tooltip/control-composition-api.vue +1 -1
- package/demos/pc/app/tooltip/control.vue +1 -1
- package/demos/pc/app/tooltip/webdoc/tooltip.js +56 -0
- package/demos/pc/app/transfer/custom-render-composition-api.vue +1 -1
- package/demos/pc/app/transfer/custom-render.vue +1 -1
- package/demos/pc/app/transfer/custom-titles-composition-api.vue +2 -2
- package/demos/pc/app/transfer/custom-titles.spec.ts +3 -3
- package/demos/pc/app/transfer/custom-titles.vue +2 -2
- package/demos/pc/app/transfer/webdoc/transfer.js +56 -0
- package/demos/pc/app/tree/icons-composition-api.vue +2 -2
- package/demos/pc/app/tree/icons.vue +2 -2
- package/demos/pc/app/tree/webdoc/tree.js +69 -0
- package/demos/pc/app/tree-menu/tree-menu-slot-composition-api.vue +0 -1
- package/demos/pc/app/tree-menu/tree-menu-slot.vue +0 -1
- package/demos/pc/app/tree-menu/webdoc/tree-menu.js +56 -0
- package/demos/pc/app/tree-select/collapse-tags-composition-api.vue +16 -0
- package/demos/pc/app/tree-select/collapse-tags.spec.ts +3 -3
- package/demos/pc/app/tree-select/collapse-tags.vue +16 -0
- package/demos/pc/app/tree-select/webdoc/tree-select.js +69 -0
- package/demos/pc/app/types.ts +93 -0
- package/demos/pc/app/user-contact/webdoc/user-contact.js +56 -0
- package/demos/pc/app/user-head/webdoc/user-head.js +56 -0
- package/demos/pc/app/virtual-scroll-box/table-composition-api.vue +12 -10
- package/demos/pc/app/virtual-scroll-box/table.vue +12 -10
- package/demos/pc/app/virtual-scroll-box/webdoc/virtual-scroll-box.js +30 -0
- package/demos/pc/app/virtual-tree/webdoc/virtual-tree.js +30 -0
- package/demos/pc/app/watermark/webdoc/watermark.js +30 -0
- package/demos/pc/app/wizard/base-usage.spec.ts +1 -1
- package/demos/pc/app/wizard/vertical.spec.ts +1 -1
- package/demos/pc/app/wizard/webdoc/wizard.js +57 -1
- package/demos/pc/menus.js +6 -1
- package/demos/pc/webdoc/faq.md +37 -0
- package/demos/pc/webdoc/installation.md +6 -8
- package/demos/pc/webdoc/theme-dark-en.md +69 -0
- package/demos/pc/webdoc/theme-dark.md +67 -0
- package/package.json +4 -4
- package/playground/App.vue +4 -5
- package/public/static/js/design-common.js +5 -0
- package/src/App.vue +1 -0
- package/src/assets/custom-block.less +1 -1
- package/src/assets/custom-markdown.css +24 -1
- package/src/assets/images/leftMenu/directives-custom-instruction.svg +2 -14
- package/src/assets/images/mobile-container.png +0 -0
- package/src/i18n/en.json +2 -1
- package/src/i18n/zh.json +2 -1
- package/src/main.js +10 -11
- package/src/router.js +8 -0
- package/src/style.css +20 -0
- package/src/views/components-doc/cmp-config.js +1 -1
- package/src/views/components-doc/common.vue +17 -3
- package/src/views/components-doc/components/api-docs.vue +9 -5
- package/src/views/components-doc/components/demo.vue +11 -4
- package/src/views/components-doc/components/float-settings.vue +2 -2
- package/src/views/components-doc/components/header.vue +10 -4
- package/src/views/components-doc/index.vue +1 -1
- package/src/views/components-doc/mobile.vue +6 -7
- package/src/views/components-doc/plus.vue +8 -8
- package/src/views/docs/docs.vue +1 -18
- package/src/views/features.vue +176 -0
- package/src/views/layout/layout.vue +1 -9
- package/src/views/overview.vue +8 -6
- package/tiny-uno/rules/size.js +4 -2
- package/uno.config.js +19 -1
- package/vite.extend.ts +2 -2
- package/src/assets/markdown.less +0 -24
|
@@ -3,33 +3,37 @@ import { test, expect } from '@playwright/test'
|
|
|
3
3
|
test('事件', async ({ page }) => {
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('drawer#events')
|
|
6
|
-
|
|
7
|
-
const drawer =
|
|
6
|
+
const demo = page.locator('#events')
|
|
7
|
+
const drawer = demo.locator('.tiny-drawer__main')
|
|
8
8
|
|
|
9
9
|
// 显示事件
|
|
10
10
|
const showMsg = page.locator('.tiny-modal.type__message').filter({ hasText: '打开事件' }).first()
|
|
11
|
-
await
|
|
11
|
+
await demo.getByRole('button', { name: '点击打开抽屉' }).click()
|
|
12
12
|
await expect(showMsg).toBeVisible()
|
|
13
|
-
await expect(drawer).toBeVisible()
|
|
14
13
|
|
|
15
14
|
// 确定事件
|
|
16
15
|
const confirmMsg = page.locator('.tiny-modal.type__message').filter({ hasText: '确定事件' }).first()
|
|
17
|
-
await
|
|
16
|
+
await demo.getByRole('button', { name: '确定' }).click()
|
|
18
17
|
await expect(confirmMsg).toBeVisible()
|
|
19
|
-
|
|
18
|
+
})
|
|
20
19
|
|
|
20
|
+
test('close事件', async ({ page }) => {
|
|
21
|
+
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
22
|
+
await page.goto('drawer#events')
|
|
23
|
+
const demo = page.locator('#events')
|
|
24
|
+
const drawer = demo.locator('.tiny-drawer__main')
|
|
21
25
|
// 关闭事件
|
|
22
26
|
const closeMsg = page.locator('.tiny-modal.type__message').filter({ hasText: '关闭事件' }).first()
|
|
23
|
-
await
|
|
27
|
+
await demo.getByRole('button', { name: '点击打开抽屉' }).click()
|
|
24
28
|
// 右上角关闭按钮
|
|
25
29
|
await drawer.locator('.tiny-drawer__headerbtn').click()
|
|
26
30
|
await expect(closeMsg).toBeVisible()
|
|
27
31
|
// 底部按钮关闭
|
|
28
|
-
await
|
|
29
|
-
await
|
|
32
|
+
await demo.getByRole('button', { name: '点击打开抽屉' }).click()
|
|
33
|
+
await demo.getByRole('button', { name: '取消' }).click()
|
|
30
34
|
await expect(closeMsg).toBeVisible()
|
|
31
35
|
// 点击蒙层关闭
|
|
32
|
-
await
|
|
33
|
-
await
|
|
36
|
+
await demo.getByRole('button', { name: '点击打开抽屉' }).click()
|
|
37
|
+
await demo.locator('.tiny-drawer__mask').click()
|
|
34
38
|
await expect(closeMsg).toBeVisible()
|
|
35
39
|
})
|
|
@@ -3,11 +3,11 @@ import { test, expect } from '@playwright/test'
|
|
|
3
3
|
test('底部插槽', async ({ page }) => {
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('drawer#footer-slot')
|
|
6
|
-
|
|
7
|
-
const drawer =
|
|
6
|
+
const demo = page.locator('#footer-slot')
|
|
7
|
+
const drawer = demo.locator('.tiny-drawer')
|
|
8
8
|
const footer = drawer.locator('.tiny-drawer__footer')
|
|
9
9
|
|
|
10
|
-
await
|
|
10
|
+
await demo.getByRole('button', { name: '底部插槽示例' }).click()
|
|
11
11
|
|
|
12
12
|
await page.waitForTimeout(300)
|
|
13
13
|
await expect(footer).toBeVisible()
|
|
@@ -3,11 +3,11 @@ import { test, expect } from '@playwright/test'
|
|
|
3
3
|
test('头部右侧插槽', async ({ page }) => {
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('drawer#header-right-slot')
|
|
6
|
-
|
|
7
|
-
const drawer =
|
|
6
|
+
const demo = page.locator('#header-right-slot')
|
|
7
|
+
const drawer = demo.locator('.tiny-drawer__main')
|
|
8
8
|
const headerRight = drawer.locator('.tiny-drawer__header-right')
|
|
9
9
|
|
|
10
|
-
await
|
|
10
|
+
await demo.getByRole('button', { name: '头部右侧插槽示例' }).click()
|
|
11
11
|
await expect(headerRight).toBeVisible()
|
|
12
12
|
await expect(headerRight).toContainText('自定义头部右侧')
|
|
13
13
|
})
|
|
@@ -3,10 +3,10 @@ import { test, expect } from '@playwright/test'
|
|
|
3
3
|
test('头部插槽', async ({ page }) => {
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('drawer#header-slot')
|
|
6
|
-
|
|
7
|
-
const drawer =
|
|
6
|
+
const demo = page.locator('#header-slot')
|
|
7
|
+
const drawer = demo.locator('.tiny-drawer__main')
|
|
8
8
|
const header = drawer.locator('.tiny-drawer__header-wrapper')
|
|
9
|
-
await
|
|
9
|
+
await demo.getByRole('button', { name: '头部插槽示例' }).click()
|
|
10
10
|
await expect(header.locator('> div')).toHaveClass('my-header')
|
|
11
11
|
await expect(header).toContainText('自定义头部标题')
|
|
12
12
|
})
|
|
@@ -3,9 +3,9 @@ import { test, expect } from '@playwright/test'
|
|
|
3
3
|
test('点击遮罩层不关闭', async ({ page }) => {
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('drawer#mask-closable')
|
|
6
|
-
|
|
7
|
-
const drawer =
|
|
8
|
-
await
|
|
9
|
-
await
|
|
6
|
+
const demo = page.locator('#mask-closable')
|
|
7
|
+
const drawer = demo.locator('.tiny-drawer__main')
|
|
8
|
+
await demo.getByRole('button', { name: '单击遮罩层不关闭抽屉' }).click()
|
|
9
|
+
await demo.locator('.tiny-drawer__mask').click()
|
|
10
10
|
await expect(drawer).toBeVisible()
|
|
11
11
|
})
|
|
@@ -3,8 +3,8 @@ import { test, expect } from '@playwright/test'
|
|
|
3
3
|
test('抽屉方向', async ({ page }) => {
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('drawer#placement')
|
|
6
|
-
|
|
7
|
-
const drawer =
|
|
6
|
+
const demo = page.locator('#placement')
|
|
7
|
+
const drawer = demo.locator('.tiny-drawer__main')
|
|
8
8
|
|
|
9
9
|
await page.getByRole('button', { name: 'left' }).click()
|
|
10
10
|
await expect(drawer).toHaveCSS('left', '0px')
|
|
@@ -3,9 +3,8 @@ import { test, expect } from '@playwright/test'
|
|
|
3
3
|
test('底部显示', async ({ page }) => {
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('drawer#show-footer')
|
|
6
|
-
|
|
7
|
-
const drawerFooter =
|
|
8
|
-
|
|
9
|
-
await page.getByRole('button', { name: '显示底部' }).click()
|
|
6
|
+
const demo = page.locator('#show-footer')
|
|
7
|
+
const drawerFooter = demo.locator('.tiny-drawer__header')
|
|
8
|
+
await demo.getByRole('button', { name: '显示底部' }).click()
|
|
10
9
|
await expect(drawerFooter).toBeVisible()
|
|
11
10
|
})
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
<script lang="tsx" setup>
|
|
8
8
|
import { ref } from 'vue'
|
|
9
9
|
import { TinyDrawer, TinyButton, Notify } from '@opentiny/vue'
|
|
10
|
-
import { iconHelp } from '@opentiny/vue-icon'
|
|
11
10
|
|
|
12
11
|
let drawerInstance = null
|
|
13
12
|
|
|
@@ -16,7 +15,6 @@ const closeDrawer = () => {
|
|
|
16
15
|
drawerInstance.close()
|
|
17
16
|
}
|
|
18
17
|
}
|
|
19
|
-
const IconHelp = iconHelp()
|
|
20
18
|
const config = ref({
|
|
21
19
|
// props
|
|
22
20
|
title: '这是一个通过方法打开的抽屉',
|
|
@@ -41,12 +39,12 @@ const config = ref({
|
|
|
41
39
|
// 通过属性 customSlots 设置插槽,插槽内容可以是 string | VNode | ({h, $drawer}) => VNode
|
|
42
40
|
customSlots: {
|
|
43
41
|
// 使用 h 函数
|
|
44
|
-
default: (h) => h('
|
|
42
|
+
default: (h) => h('div', { class: '' }, ''),
|
|
45
43
|
// 返回 VNode 节点的方法,可通过参数中 $drawer 访问到组件实例
|
|
46
|
-
headerRight:
|
|
44
|
+
headerRight: '',
|
|
47
45
|
// 直接赋值 VNode
|
|
48
46
|
footer: (
|
|
49
|
-
<TinyButton type="primary" onClick={closeDrawer}>
|
|
47
|
+
<TinyButton type="primary" round onClick={closeDrawer}>
|
|
50
48
|
点击关闭
|
|
51
49
|
</TinyButton>
|
|
52
50
|
)
|
|
@@ -3,12 +3,10 @@ import { test, expect } from '@playwright/test'
|
|
|
3
3
|
test('通过方法调用', async ({ page }) => {
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('drawer#use-through-method')
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
await
|
|
9
|
-
await
|
|
10
|
-
await
|
|
11
|
-
await expect(
|
|
12
|
-
await drawer.getByRole('button', { name: '点击关闭' }).click()
|
|
13
|
-
await expect(page.locator('.tiny-drawer__main')).not.toBeVisible()
|
|
6
|
+
const demo = page.locator('#use-through-method')
|
|
7
|
+
const notify = page.locator('.tiny-notify__title')
|
|
8
|
+
await demo.getByRole('button', { name: '点击打开抽屉' }).click()
|
|
9
|
+
await page.locator('.tiny-notify__icon-close > .tiny-svg').click()
|
|
10
|
+
await page.getByRole('button', { name: '点击关闭' }).click()
|
|
11
|
+
await expect(notify).toHaveText('close 事件')
|
|
14
12
|
})
|
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
|
|
7
7
|
<script lang="tsx">
|
|
8
8
|
import { TinyDrawer, TinyButton, Notify } from '@opentiny/vue'
|
|
9
|
-
import { iconHelp } from '@opentiny/vue-icon'
|
|
10
9
|
|
|
11
10
|
export default {
|
|
12
11
|
components: {
|
|
@@ -22,7 +21,6 @@ export default {
|
|
|
22
21
|
this.drawerInstance.close()
|
|
23
22
|
},
|
|
24
23
|
showDrawer() {
|
|
25
|
-
const IconHelp = iconHelp()
|
|
26
24
|
const config = {
|
|
27
25
|
// props
|
|
28
26
|
title: '这是一个通过方法打开的抽屉',
|
|
@@ -47,12 +45,12 @@ export default {
|
|
|
47
45
|
// 通过属性 customSlots 设置插槽,插槽内容可以是 string | VNode | ({h, $drawer}) => VNode
|
|
48
46
|
customSlots: {
|
|
49
47
|
// 使用 h 函数
|
|
50
|
-
default: (h) => h('
|
|
48
|
+
default: (h) => h('div', { class: '' }, ''),
|
|
51
49
|
// 返回 VNode 节点的方法,可通过参数中 $drawer 访问到组件实例
|
|
52
|
-
headerRight:
|
|
50
|
+
headerRight: '',
|
|
53
51
|
// 直接赋值 VNode
|
|
54
52
|
footer: (
|
|
55
|
-
<TinyButton type="primary" onClick={this.closeDrawer}>
|
|
53
|
+
<TinyButton type="primary" round onClick={this.closeDrawer}>
|
|
56
54
|
点击关闭
|
|
57
55
|
</TinyButton>
|
|
58
56
|
)
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
column: '2',
|
|
3
3
|
owner: '',
|
|
4
|
+
show: true,
|
|
5
|
+
cloud: true,
|
|
4
6
|
demos: [
|
|
5
7
|
{
|
|
6
8
|
demoId: 'basic-usage',
|
|
@@ -223,5 +225,190 @@ export default {
|
|
|
223
225
|
},
|
|
224
226
|
codeFiles: ['events.vue']
|
|
225
227
|
}
|
|
228
|
+
],
|
|
229
|
+
features: [
|
|
230
|
+
{
|
|
231
|
+
id: 'service',
|
|
232
|
+
name: '方法调用',
|
|
233
|
+
support: {
|
|
234
|
+
value: true
|
|
235
|
+
},
|
|
236
|
+
description: '通过 Drawer.service 方法可配置并打开抽屉,方法返回组件实例,可调用其 close 方法关闭组件。',
|
|
237
|
+
cloud: {
|
|
238
|
+
value: true
|
|
239
|
+
},
|
|
240
|
+
apis: ['Drawer.service'],
|
|
241
|
+
demos: ['use-through-method']
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
id: 'placement',
|
|
245
|
+
name: '抽屉方向',
|
|
246
|
+
support: {
|
|
247
|
+
value: true
|
|
248
|
+
},
|
|
249
|
+
description: '通过 placement 属性设置抽屉的方向,可选值有 left、right、top、bottom,默认值为 right。',
|
|
250
|
+
cloud: {
|
|
251
|
+
value: true
|
|
252
|
+
},
|
|
253
|
+
apis: ['placement'],
|
|
254
|
+
demos: ['placement']
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
id: 'tips-props',
|
|
258
|
+
name: '帮助提示',
|
|
259
|
+
support: {
|
|
260
|
+
value: true
|
|
261
|
+
},
|
|
262
|
+
description: '通过 tips-props 属性可自定义标题帮助提示信息。',
|
|
263
|
+
cloud: {
|
|
264
|
+
value: true
|
|
265
|
+
},
|
|
266
|
+
apis: ['tips-props'],
|
|
267
|
+
demos: ['tips-props']
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
id: 'width',
|
|
271
|
+
name: '抽屉宽度',
|
|
272
|
+
support: {
|
|
273
|
+
value: true
|
|
274
|
+
},
|
|
275
|
+
description: '通过 width 属性设置抽屉的宽度,默认值为 500px。',
|
|
276
|
+
cloud: {
|
|
277
|
+
value: true
|
|
278
|
+
},
|
|
279
|
+
apis: ['width'],
|
|
280
|
+
demos: ['width']
|
|
281
|
+
},
|
|
282
|
+
{
|
|
283
|
+
id: 'dragable',
|
|
284
|
+
name: '宽高可拖拽',
|
|
285
|
+
support: {
|
|
286
|
+
value: true
|
|
287
|
+
},
|
|
288
|
+
description: '通过 dragable 属性开启抽屉宽度/高度拖拽功能。当抽屉位于左右两侧时可拖拽宽度,上下两侧可拖拽高度。',
|
|
289
|
+
cloud: {
|
|
290
|
+
value: true
|
|
291
|
+
},
|
|
292
|
+
apis: ['dragable'],
|
|
293
|
+
demos: ['dragable']
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
id: 'mask',
|
|
297
|
+
name: '遮罩层显示隐藏',
|
|
298
|
+
support: {
|
|
299
|
+
value: true
|
|
300
|
+
},
|
|
301
|
+
description: '通过 mask 属性可以控制遮罩层显示隐藏,默认值为 true。',
|
|
302
|
+
cloud: {
|
|
303
|
+
value: true
|
|
304
|
+
},
|
|
305
|
+
apis: ['mask'],
|
|
306
|
+
demos: ['mask']
|
|
307
|
+
},
|
|
308
|
+
{
|
|
309
|
+
id: 'before-close',
|
|
310
|
+
name: '拦截抽屉关闭',
|
|
311
|
+
support: {
|
|
312
|
+
value: true
|
|
313
|
+
},
|
|
314
|
+
description:
|
|
315
|
+
'通过 before-close 属性可以配置一个拦截弹窗关闭的方法。如果方法返回 false 值,则拦截弹窗关闭;否则不拦截。',
|
|
316
|
+
cloud: {
|
|
317
|
+
value: true
|
|
318
|
+
},
|
|
319
|
+
apis: ['before-close'],
|
|
320
|
+
demos: ['before-close']
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
id: 'mask-closable',
|
|
324
|
+
name: '点击遮罩层关闭',
|
|
325
|
+
support: {
|
|
326
|
+
value: true
|
|
327
|
+
},
|
|
328
|
+
description: '通过 mask-closable 属性控制是否可以通过点击遮罩层关闭抽屉,默认值为 true。',
|
|
329
|
+
cloud: {
|
|
330
|
+
value: true
|
|
331
|
+
},
|
|
332
|
+
apis: ['mask-closable'],
|
|
333
|
+
demos: ['mask-closable']
|
|
334
|
+
},
|
|
335
|
+
{
|
|
336
|
+
id: 'show-close',
|
|
337
|
+
name: '关闭图标显示',
|
|
338
|
+
support: {
|
|
339
|
+
value: true
|
|
340
|
+
},
|
|
341
|
+
description: '通过 show-close 控制是否显示关闭图标,默认值为 true。',
|
|
342
|
+
cloud: {
|
|
343
|
+
value: true
|
|
344
|
+
},
|
|
345
|
+
apis: ['show-close'],
|
|
346
|
+
demos: ['show-close']
|
|
347
|
+
},
|
|
348
|
+
{
|
|
349
|
+
id: 'show-header',
|
|
350
|
+
name: '头部显示',
|
|
351
|
+
support: {
|
|
352
|
+
value: true
|
|
353
|
+
},
|
|
354
|
+
description: '通过 show-header 控制是否显示头部,默认值为 true。',
|
|
355
|
+
cloud: {
|
|
356
|
+
value: true
|
|
357
|
+
},
|
|
358
|
+
apis: ['show-header'],
|
|
359
|
+
demos: ['show-header']
|
|
360
|
+
},
|
|
361
|
+
{
|
|
362
|
+
id: 'show-footer',
|
|
363
|
+
name: '底部显示',
|
|
364
|
+
support: {
|
|
365
|
+
value: true
|
|
366
|
+
},
|
|
367
|
+
description: '通过 show-footer 控制是否显示底部,默认值为 false。',
|
|
368
|
+
cloud: {
|
|
369
|
+
value: true
|
|
370
|
+
},
|
|
371
|
+
apis: ['show-footer'],
|
|
372
|
+
demos: ['show-footer']
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
id: 'z-index',
|
|
376
|
+
name: '自定义堆叠顺序',
|
|
377
|
+
support: {
|
|
378
|
+
value: true
|
|
379
|
+
},
|
|
380
|
+
description: '通过 z-index 属性设置自定义堆叠顺序。',
|
|
381
|
+
cloud: {
|
|
382
|
+
value: true
|
|
383
|
+
},
|
|
384
|
+
apis: ['z-index'],
|
|
385
|
+
demos: ['z-index']
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
id: 'slots',
|
|
389
|
+
name: '插槽',
|
|
390
|
+
support: {
|
|
391
|
+
value: true
|
|
392
|
+
},
|
|
393
|
+
description: '支持 header、header-right、footer 等插槽自定义内容。',
|
|
394
|
+
cloud: {
|
|
395
|
+
value: true
|
|
396
|
+
},
|
|
397
|
+
apis: ['header-slot', 'header-right-slot', 'footer-slot'],
|
|
398
|
+
demos: ['header-slot', 'header-right-slot', 'footer-slot']
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
id: 'events',
|
|
402
|
+
name: '事件',
|
|
403
|
+
support: {
|
|
404
|
+
value: true
|
|
405
|
+
},
|
|
406
|
+
description: '支持 open、confirm、close 等事件。',
|
|
407
|
+
cloud: {
|
|
408
|
+
value: true
|
|
409
|
+
},
|
|
410
|
+
apis: ['open', 'confirm', 'close'],
|
|
411
|
+
demos: ['events']
|
|
412
|
+
}
|
|
226
413
|
]
|
|
227
414
|
}
|
|
@@ -3,8 +3,9 @@ import { test, expect } from '@playwright/test'
|
|
|
3
3
|
test('抽屉宽度', async ({ page }) => {
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('drawer#width')
|
|
6
|
+
const demo = page.locator('#width')
|
|
7
|
+
const drawer = demo.locator('.tiny-drawer__main')
|
|
6
8
|
|
|
7
|
-
const drawer = page.locator('.tiny-drawer__main')
|
|
8
9
|
await page.getByRole('button', { name: '设置宽度为 900px' }).click()
|
|
9
10
|
const { width: width1 } = await drawer.boundingBox()
|
|
10
11
|
expect(Math.round(width1)).toEqual(900)
|
|
@@ -3,8 +3,8 @@ import { test, expect } from '@playwright/test'
|
|
|
3
3
|
test('自定义堆叠顺序', async ({ page }) => {
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('drawer#z-index')
|
|
6
|
-
|
|
7
|
-
const drawer =
|
|
6
|
+
const demo = page.locator('#z-index')
|
|
7
|
+
const drawer = demo.locator('.tiny-drawer__main')
|
|
8
8
|
await page.getByRole('button', { name: '自定义 z-index' }).click()
|
|
9
9
|
await expect(drawer).toHaveCSS('z-index', '3000')
|
|
10
10
|
})
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
column: '2',
|
|
3
3
|
owner: '',
|
|
4
|
+
show: true,
|
|
5
|
+
cloud: true,
|
|
4
6
|
demos: [
|
|
5
7
|
{
|
|
6
8
|
demoId: 'basic-usage',
|
|
@@ -40,5 +42,46 @@ export default {
|
|
|
40
42
|
},
|
|
41
43
|
codeFiles: ['size.vue']
|
|
42
44
|
}
|
|
45
|
+
],
|
|
46
|
+
features: [
|
|
47
|
+
{
|
|
48
|
+
id: 'time-range',
|
|
49
|
+
name: '时间区间',
|
|
50
|
+
support: {
|
|
51
|
+
value: true
|
|
52
|
+
},
|
|
53
|
+
description: '通过 start 设置区间的起始时间,默认为 0,end 设置区间的结束时间,默认为 24 * 60。',
|
|
54
|
+
cloud: {
|
|
55
|
+
value: true
|
|
56
|
+
},
|
|
57
|
+
apis: ['start', 'end'],
|
|
58
|
+
demos: ['start-end-step']
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
id: 'step',
|
|
62
|
+
name: '步长设置',
|
|
63
|
+
support: {
|
|
64
|
+
value: true
|
|
65
|
+
},
|
|
66
|
+
description: '通过 step 设置间隔的步长,默认为 15。',
|
|
67
|
+
cloud: {
|
|
68
|
+
value: true
|
|
69
|
+
},
|
|
70
|
+
apis: ['step'],
|
|
71
|
+
demos: ['start-end-step']
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
id: 'size',
|
|
75
|
+
name: '尺寸',
|
|
76
|
+
support: {
|
|
77
|
+
value: true
|
|
78
|
+
},
|
|
79
|
+
description: '可设置为 medium、small、mini。',
|
|
80
|
+
cloud: {
|
|
81
|
+
value: true
|
|
82
|
+
},
|
|
83
|
+
apis: ['size'],
|
|
84
|
+
demos: ['size']
|
|
85
|
+
}
|
|
43
86
|
]
|
|
44
87
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="demo-drop">
|
|
3
3
|
<p class="demo-dropdown">场景 1:默认</p>
|
|
4
|
-
<tiny-dropdown
|
|
4
|
+
<tiny-dropdown border type="success">
|
|
5
5
|
更多菜单(标题很长示例)
|
|
6
6
|
<template #dropdown>
|
|
7
7
|
<tiny-dropdown-menu>
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
</tiny-dropdown>
|
|
16
16
|
<br /><br />
|
|
17
17
|
<p class="demo-dropdown">场景 2:设置 inherit-width</p>
|
|
18
|
-
<tiny-dropdown
|
|
18
|
+
<tiny-dropdown border type="success" :inherit-width="true">
|
|
19
19
|
更多菜单(标题很长示例)
|
|
20
20
|
<template #dropdown>
|
|
21
21
|
<tiny-dropdown-menu>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="demo-drop">
|
|
3
3
|
<p class="demo-dropdown">场景 1:默认</p>
|
|
4
|
-
<tiny-dropdown
|
|
4
|
+
<tiny-dropdown border type="success">
|
|
5
5
|
更多菜单(标题很长示例)
|
|
6
6
|
<template #dropdown>
|
|
7
7
|
<tiny-dropdown-menu>
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
</tiny-dropdown>
|
|
16
16
|
<br /><br />
|
|
17
17
|
<p class="demo-dropdown">场景 2:设置 inherit-width</p>
|
|
18
|
-
<tiny-dropdown
|
|
18
|
+
<tiny-dropdown type="success" border :inherit-width="true">
|
|
19
19
|
更多菜单(标题很长示例)
|
|
20
20
|
<template #dropdown>
|
|
21
21
|
<tiny-dropdown-menu>
|
|
@@ -58,14 +58,20 @@ p {
|
|
|
58
58
|
margin-top: 30px;
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
.tiny-dropdown
|
|
62
|
-
|
|
63
|
-
.tiny-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
61
|
+
.tiny-dropdown {
|
|
62
|
+
&.only-icon {
|
|
63
|
+
:deep(.tiny-dropdown__trigger) {
|
|
64
|
+
.tiny-svg {
|
|
65
|
+
fill: var(--tv-color-icon-control);
|
|
66
|
+
&:hover {
|
|
67
|
+
fill: var(--tv-color-icon-control);
|
|
68
|
+
}
|
|
67
69
|
}
|
|
68
70
|
}
|
|
69
71
|
}
|
|
72
|
+
|
|
73
|
+
:deep(.tiny-dropdown__prefix-inner) {
|
|
74
|
+
fill: var(--tv-color-icon-control);
|
|
75
|
+
}
|
|
70
76
|
}
|
|
71
77
|
</style>
|
|
@@ -68,14 +68,20 @@ p {
|
|
|
68
68
|
margin-top: 30px;
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
-
.tiny-dropdown
|
|
72
|
-
|
|
73
|
-
.tiny-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
71
|
+
.tiny-dropdown {
|
|
72
|
+
&.only-icon {
|
|
73
|
+
:deep(.tiny-dropdown__trigger) {
|
|
74
|
+
.tiny-svg {
|
|
75
|
+
fill: var(--tv-color-icon-control);
|
|
76
|
+
&:hover {
|
|
77
|
+
fill: var(--tv-color-icon-control);
|
|
78
|
+
}
|
|
77
79
|
}
|
|
78
80
|
}
|
|
79
81
|
}
|
|
82
|
+
|
|
83
|
+
:deep(.tiny-dropdown__prefix-inner) {
|
|
84
|
+
fill: var(--tv-color-icon-control);
|
|
85
|
+
}
|
|
80
86
|
}
|
|
81
87
|
</style>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="demo-drop">
|
|
3
3
|
<p class="demo-dropdown">默认:</p>
|
|
4
|
-
<tiny-dropdown
|
|
4
|
+
<tiny-dropdown border type="primary">
|
|
5
5
|
默认尺寸
|
|
6
6
|
<template #dropdown>
|
|
7
7
|
<tiny-dropdown-menu>
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
</template>
|
|
15
15
|
</tiny-dropdown>
|
|
16
16
|
<p class="demo-dropdown">其他尺寸:</p>
|
|
17
|
-
<tiny-dropdown size="medium"
|
|
17
|
+
<tiny-dropdown size="medium" border type="primary">
|
|
18
18
|
中等尺寸
|
|
19
19
|
<template #dropdown>
|
|
20
20
|
<tiny-dropdown-menu>
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
</template>
|
|
28
28
|
</tiny-dropdown>
|
|
29
29
|
|
|
30
|
-
<tiny-dropdown size="small"
|
|
30
|
+
<tiny-dropdown size="small" border type="primary">
|
|
31
31
|
小型尺寸
|
|
32
32
|
<template #dropdown>
|
|
33
33
|
<tiny-dropdown-menu>
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
</template>
|
|
41
41
|
</tiny-dropdown>
|
|
42
42
|
|
|
43
|
-
<tiny-dropdown size="mini"
|
|
43
|
+
<tiny-dropdown size="mini" border type="primary">
|
|
44
44
|
超小尺寸
|
|
45
45
|
<template #dropdown>
|
|
46
46
|
<tiny-dropdown-menu>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="demo-drop">
|
|
3
3
|
<p class="demo-dropdown">默认:</p>
|
|
4
|
-
<tiny-dropdown
|
|
4
|
+
<tiny-dropdown border type="primary">
|
|
5
5
|
默认尺寸
|
|
6
6
|
<template #dropdown>
|
|
7
7
|
<tiny-dropdown-menu>
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
</template>
|
|
15
15
|
</tiny-dropdown>
|
|
16
16
|
<p class="demo-dropdown">其他尺寸:</p>
|
|
17
|
-
<tiny-dropdown size="medium"
|
|
17
|
+
<tiny-dropdown size="medium" border type="primary">
|
|
18
18
|
中等尺寸
|
|
19
19
|
<template #dropdown>
|
|
20
20
|
<tiny-dropdown-menu>
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
</template>
|
|
28
28
|
</tiny-dropdown>
|
|
29
29
|
|
|
30
|
-
<tiny-dropdown size="small"
|
|
30
|
+
<tiny-dropdown size="small" border type="primary">
|
|
31
31
|
小型尺寸
|
|
32
32
|
<template #dropdown>
|
|
33
33
|
<tiny-dropdown-menu>
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
</template>
|
|
41
41
|
</tiny-dropdown>
|
|
42
42
|
|
|
43
|
-
<tiny-dropdown size="mini"
|
|
43
|
+
<tiny-dropdown size="mini" border type="primary">
|
|
44
44
|
超小尺寸
|
|
45
45
|
<template #dropdown>
|
|
46
46
|
<tiny-dropdown-menu>
|