@opentiny/vue-docs 2.2.18 → 2.2.20
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/card.js +56 -23
- package/demos/apis/dialog-box.js +12 -5
- package/demos/apis/fall-menu.js +2 -2
- package/demos/apis/file-upload.js +2 -1
- package/demos/apis/float-button.js +211 -0
- package/demos/apis/grid.js +40 -40
- package/demos/apis/ip-address.js +3 -3
- package/demos/apis/multi-select.js +141 -22
- package/demos/apis/numeric.js +25 -0
- package/demos/apis/popeditor.js +20 -14
- package/demos/apis/search.js +11 -0
- package/demos/apis/slider.js +13 -2
- package/demos/apis/steps.js +6 -6
- package/demos/apis/tabs.js +39 -0
- package/demos/apis/time-line.js +34 -1
- package/demos/apis/time-select.js +1 -1
- package/demos/apis/tooltip.js +1 -1
- package/demos/apis/tree-menu.js +5 -5
- package/demos/mobile/app/alert/icon.vue +1 -1
- package/demos/mobile/app/alert/size.vue +1 -1
- package/demos/mobile/app/alert/slot-default.vue +8 -2
- package/demos/mobile/app/exception/buttonText.vue +4 -2
- package/demos/mobile/app/exception/exceptionClass.vue +4 -2
- package/demos/mobile/app/exception/message.vue +4 -7
- package/demos/mobile/app/exception/type.vue +4 -2
- package/demos/mobile/app/loading/background.vue +24 -0
- package/demos/mobile/app/loading/base.vue +16 -6
- package/demos/mobile/app/loading/custom-class.vue +29 -0
- package/demos/mobile/app/loading/global-registry.vue +61 -0
- package/demos/mobile/app/loading/size.vue +59 -0
- package/demos/mobile/app/loading/spinner.vue +26 -0
- package/demos/mobile/app/loading/tip-text.vue +23 -0
- package/demos/mobile/app/loading/webdoc/loading.js +155 -9
- package/demos/mobile/app/multi-select/basic-usage.vue +221 -73
- package/demos/mobile/app/multi-select/disabled.vue +174 -206
- package/demos/mobile/app/multi-select/event-click-item.vue +60 -75
- package/demos/mobile/app/multi-select/filter.vue +65 -93
- package/demos/mobile/app/multi-select/mask.vue +60 -0
- package/demos/mobile/app/multi-select/slots.vue +66 -0
- package/demos/mobile/app/multi-select/type-wheel.vue +39 -49
- package/demos/mobile/app/multi-select/webdoc/multi-select.js +49 -10
- package/demos/mobile/app/popover/base.vue +2 -3
- package/demos/mobile/app/search/base.vue +2 -2
- package/demos/mobile/app/user-head/basic-usage.vue +2 -5
- package/demos/mobile-first/app/card/basic-usage.vue +4 -2
- package/demos/mobile-first/app/card/card-type.vue +6 -12
- package/demos/mobile-first/app/card/slot.vue +2 -5
- package/demos/mobile-first/app/carousel/close-loop.vue +12 -4
- package/demos/mobile-first/app/column-list-item/basic-usage.vue +3 -7
- package/demos/mobile-first/app/column-list-item/custom-width.vue +4 -7
- package/demos/mobile-first/app/column-list-item/icon-click-event.vue +2 -5
- package/demos/mobile-first/app/column-list-item/icon-disabled.vue +2 -5
- package/demos/mobile-first/app/column-list-item/size.vue +3 -6
- package/demos/mobile-first/app/select/filter-method.vue +47 -18
- package/demos/mobile-first/app/time-line/limited-nodes.vue +29 -0
- package/demos/mobile-first/app/time-line/node-max.vue +26 -0
- package/demos/mobile-first/app/time-line/webdoc/time-line.js +26 -1
- package/demos/pc/app/alert/custom-close-composition-api.vue +7 -2
- package/demos/pc/app/alert/custom-close.spec.ts +1 -1
- package/demos/pc/app/alert/custom-close.vue +7 -2
- package/demos/pc/app/area/custom-service.spec.ts +1 -2
- package/demos/pc/app/button/ghost-composition-api.vue +6 -6
- package/demos/pc/app/button/ghost.spec.ts +19 -12
- package/demos/pc/app/button/ghost.vue +6 -6
- package/demos/pc/app/card/basic-usage-composition-api.vue +24 -0
- package/demos/pc/app/card/basic-usage.vue +32 -0
- package/demos/pc/app/card/card-disabled-composition-api.vue +45 -0
- package/demos/pc/app/card/card-disabled.vue +53 -0
- package/demos/pc/app/card/card-events-composition-api.vue +66 -0
- package/demos/pc/app/card/card-events.vue +75 -0
- package/demos/pc/app/card/card-group-composition-api.vue +69 -0
- package/demos/pc/app/card/card-group.vue +79 -0
- package/demos/pc/app/card/card-size-composition-api.vue +59 -0
- package/demos/pc/app/card/card-size.vue +67 -0
- package/demos/pc/app/card/card-status-composition-api.vue +49 -0
- package/demos/pc/app/card/card-status.vue +58 -0
- package/demos/pc/app/card/card-type-composition-api.vue +47 -0
- package/demos/pc/app/card/card-type.vue +55 -0
- package/demos/pc/app/card/check-type-checkbox-composition-api.vue +31 -0
- package/demos/pc/app/card/check-type-checkbox.vue +40 -0
- package/demos/pc/app/card/check-type-radio-composition-api.vue +31 -0
- package/demos/pc/app/card/check-type-radio.vue +39 -0
- package/demos/pc/app/card/custom-class-composition-api.vue +51 -0
- package/demos/pc/app/card/custom-class.vue +59 -0
- package/demos/pc/app/card/operate-bar-composition-api.vue +53 -0
- package/demos/pc/app/card/operate-bar.vue +60 -0
- package/demos/pc/app/card/slot-composition-api.vue +67 -0
- package/demos/pc/app/card/slot.vue +76 -0
- package/demos/pc/app/card/webdoc/card.cn.md +7 -0
- package/demos/pc/app/card/webdoc/card.en.md +7 -0
- package/demos/pc/app/card/webdoc/card.js +148 -0
- package/demos/pc/app/carousel/basic-usage.spec.ts +3 -3
- package/demos/pc/app/carousel/card-mode.spec.ts +4 -11
- package/demos/pc/app/carousel/carousel-arrow-hover.spec.ts +5 -7
- package/demos/pc/app/carousel/carousel-events.spec.ts +7 -16
- package/demos/pc/app/carousel/manual-play.spec.ts +0 -2
- package/demos/pc/app/carousel/play-interval.spec.ts +1 -4
- package/demos/pc/app/cascader/auto-load-checkStrictly.spec.ts +1 -1
- package/demos/pc/app/cascader/auto-load.spec.ts +5 -2
- package/demos/pc/app/color-picker/base.spec.ts +2 -2
- package/demos/pc/app/color-picker/event.spec.ts +1 -1
- package/demos/pc/app/color-picker/history.spec.ts +2 -6
- package/demos/pc/app/color-picker/predefine.spec.ts +2 -5
- package/demos/pc/app/company/basic-usage.spec.ts +3 -6
- package/demos/pc/app/company/custom-service.spec.ts +4 -8
- package/demos/pc/app/country/custom-service.spec.js +4 -4
- package/demos/pc/app/country/fields.spec.js +2 -2
- package/demos/pc/app/crop/aspect-ratio.spec.ts +1 -2
- package/demos/pc/app/crop/auto-crop-area.spec.ts +1 -4
- package/demos/pc/app/crop/basic-usage.spec.ts +0 -2
- package/demos/pc/app/crop/crop-meth.spec.ts +0 -2
- package/demos/pc/app/crop/event-ready.spec.ts +0 -1
- package/demos/pc/app/crop/get-container-data.spec.ts +0 -1
- package/demos/pc/app/crop/get-crop-box-data.spec.ts +0 -2
- package/demos/pc/app/crop/get-data.spec.ts +0 -1
- package/demos/pc/app/crop/min-crop-box-width-height.spec.ts +0 -2
- package/demos/pc/app/crop/no-background.spec.ts +0 -1
- package/demos/pc/app/crop/no-modal.spec.ts +0 -2
- package/demos/pc/app/crop/replace-image.spec.ts +4 -5
- package/demos/pc/app/crop/view-mode.spec.ts +1 -16
- package/demos/pc/app/date-picker/align.spec.ts +17 -14
- package/demos/pc/app/date-picker/basic-usage.spec.ts +17 -22
- package/demos/pc/app/date-picker/clear.spec.ts +13 -7
- package/demos/pc/app/date-picker/date-range.spec.ts +39 -10
- package/demos/pc/app/date-picker/events.spec.ts +11 -3
- package/demos/pc/app/date-picker/format.spec.ts +2 -2
- package/demos/pc/app/date-picker/shortcuts.spec.ts +1 -2
- package/demos/pc/app/dept/custom-service.spec.ts +16 -4
- package/demos/pc/app/detail-page/basic-usage.spec.ts +4 -4
- package/demos/pc/app/dialog-box/basic-usage-composition-api.vue +1 -1
- package/demos/pc/app/dialog-box/basic-usage.vue +1 -1
- package/demos/pc/app/dialog-box/center-composition-api.vue +1 -1
- package/demos/pc/app/dialog-box/center.vue +1 -1
- package/demos/pc/app/dialog-box/close-on-click-modal-composition-api.vue +1 -1
- package/demos/pc/app/dialog-box/close-on-click-modal.vue +1 -1
- package/demos/pc/app/dialog-box/close-on-press-escape-composition-api.vue +1 -1
- package/demos/pc/app/dialog-box/close-on-press-escape.vue +1 -1
- package/demos/pc/app/dialog-box/custom-dialog-content-composition-api.vue +1 -1
- package/demos/pc/app/dialog-box/custom-dialog-content.vue +1 -1
- package/demos/pc/app/dialog-box/custom-dialog-footer-composition-api.vue +2 -2
- package/demos/pc/app/dialog-box/custom-dialog-footer.spec.ts +1 -1
- package/demos/pc/app/dialog-box/custom-dialog-title-composition-api.vue +2 -2
- package/demos/pc/app/dialog-box/custom-dialog-title.spec.ts +1 -1
- package/demos/pc/app/dialog-box/custom-dialog-title.vue +2 -2
- package/demos/pc/app/dialog-box/dialog-top-height-composition-api.vue +2 -2
- package/demos/pc/app/dialog-box/dialog-top-height.vue +2 -2
- package/demos/pc/app/dialog-box/dialog-width-composition-api.vue +2 -2
- package/demos/pc/app/dialog-box/dialog-width.vue +2 -2
- package/demos/pc/app/dialog-box/draggable-composition-api.vue +15 -3
- package/demos/pc/app/dialog-box/draggable.spec.ts +2 -2
- package/demos/pc/app/dialog-box/draggable.vue +15 -3
- package/demos/pc/app/dialog-box/form-in-dialog.spec.ts +0 -1
- package/demos/pc/app/dialog-box/open-close-events-composition-api.vue +1 -1
- package/demos/pc/app/dialog-box/open-close-events.vue +1 -1
- package/demos/pc/app/dialog-box/webdoc/dialog-box.js +2 -2
- package/demos/pc/app/drawer/tips-props-composition-api.vue +23 -0
- package/demos/pc/app/drawer/tips-props.spec.ts +15 -0
- package/demos/pc/app/drawer/tips-props.vue +33 -0
- package/demos/pc/app/drawer/webdoc/drawer.js +10 -12
- package/demos/pc/app/drop-roles/custom-service.spec.ts +1 -1
- package/demos/pc/app/file-upload/custom-prefix.spec.ts +1 -1
- package/demos/pc/app/file-upload/file-picture-card.spec.ts +1 -1
- package/demos/pc/app/file-upload/manual-upload.spec.ts +1 -1
- package/demos/pc/app/file-upload/picture-card.spec.ts +3 -2
- package/demos/pc/app/file-upload/picture-list.spec.ts +3 -3
- package/demos/pc/app/file-upload/upload-file-list.spec.ts +1 -1
- package/demos/pc/app/file-upload/upload-request.spec.ts +11 -6
- package/demos/pc/app/float-button/backTop-composition-api.vue +40 -0
- package/demos/pc/app/float-button/backTop.vue +51 -0
- package/demos/pc/app/float-button/basic-usage-composition-api.vue +39 -0
- package/demos/pc/app/float-button/basic-usage.vue +48 -0
- package/demos/pc/app/float-button/icon-composition-api.vue +21 -0
- package/demos/pc/app/float-button/icon.vue +31 -0
- package/demos/pc/app/float-button/jump-composition-api.vue +19 -0
- package/demos/pc/app/float-button/jump.vue +26 -0
- package/demos/pc/app/float-button/reset-time-composition-api.vue +22 -0
- package/demos/pc/app/float-button/reset-time.vue +26 -0
- package/demos/pc/app/float-button/trigger-composition-api.vue +31 -0
- package/demos/pc/app/float-button/trigger.vue +40 -0
- package/demos/pc/app/float-button/webdoc/float-button.cn.md +7 -0
- package/demos/pc/app/float-button/webdoc/float-button.en.md +7 -0
- package/demos/pc/app/float-button/webdoc/float-button.js +68 -0
- package/demos/pc/app/floatbar/base.spec.ts +1 -1
- package/demos/pc/app/floatbar/custom-floatbar-item.spec.ts +1 -1
- package/demos/pc/app/floatbar/custom-style.spec.ts +1 -1
- package/demos/pc/app/floatbar/operation-floatbar-item.spec.ts +1 -1
- package/demos/pc/app/form/form-row-col.spec.js +2 -0
- package/demos/pc/app/form/label-position.spec.ts +3 -3
- package/demos/pc/app/grid/custom/ordercolumn-local.spec.js +2 -2
- package/demos/pc/app/grid/data-source/static-data-composition-api.vue +1 -1
- package/demos/pc/app/grid/data-source/static-data.spec.js +1 -1
- package/demos/pc/app/grid/data-source/static-data.vue +1 -1
- package/demos/pc/app/grid/edit/grid-equals-composition-api.vue +50 -0
- package/demos/pc/app/grid/edit/grid-equals.spec.js +10 -0
- package/demos/pc/app/grid/edit/grid-equals.vue +60 -0
- package/demos/pc/app/grid/edit/has-row-change.spec.js +2 -2
- package/demos/pc/app/grid/edit/trigger-mode-hm-editing-composition-api.vue +11 -11
- package/demos/pc/app/grid/editor/mutil-render.spec.js +1 -1
- package/demos/pc/app/grid/event/get-row-method.spec.js +4 -4
- package/demos/pc/app/grid/filter/server-filter.spec.js +1 -1
- package/demos/pc/app/grid/fixed/left-fixed.vue +1 -1
- package/demos/pc/app/grid/large-data/column-anchor.vue +132 -0
- package/demos/pc/app/grid/large-data/scroll-to.spec.js +1 -1
- package/demos/pc/app/grid/loading/grid-loading-tip.spec.js +1 -1
- package/demos/pc/app/grid/pager/show-save-msg-composition-api.vue +1 -1
- package/demos/pc/app/grid/pager/show-save-msg.vue +1 -1
- package/demos/pc/app/grid/renderer/inner-renderer-date-composition-api.vue +40 -0
- package/demos/pc/app/grid/renderer/inner-renderer-date.spec.js +9 -0
- package/demos/pc/app/grid/renderer/inner-renderer-date.vue +50 -0
- package/demos/pc/app/grid/size/grid-size-composition-api.vue +33 -26
- package/demos/pc/app/grid/size/grid-size.spec.js +7 -3
- package/demos/pc/app/grid/size/grid-size.vue +34 -26
- package/demos/pc/app/grid/sort/sort.vue +0 -1
- package/demos/pc/app/grid/toolbar/grid-full-screen-teleport-composition-api.vue +65 -0
- package/demos/pc/app/grid/toolbar/grid-full-screen-teleport.spec.js +10 -0
- package/demos/pc/app/grid/toolbar/grid-full-screen-teleport.vue +73 -0
- package/demos/pc/app/grid/tree-table/tree-grid-insert-delete-update.spec.js +1 -1
- package/demos/pc/app/grid/validation/before-submit-validation.spec.js +1 -1
- package/demos/pc/app/grid/webdoc/grid-custom-style.js +1 -1
- package/demos/pc/app/grid/webdoc/grid-edit.js +11 -0
- package/demos/pc/app/grid/webdoc/grid-editor.js +1 -1
- package/demos/pc/app/grid/webdoc/grid-large-data.js +1 -49
- package/demos/pc/app/grid/webdoc/grid-renderer.js +11 -0
- package/demos/pc/app/grid/webdoc/grid-toolbar.js +11 -2
- package/demos/pc/app/guide/basic-usage.spec.ts +3 -2
- package/demos/pc/app/guide/offset.spec.ts +3 -1
- package/demos/pc/app/hrapprover/basic-usage.spec.ts +2 -6
- package/demos/pc/app/hrapprover/custom-service.spec.ts +5 -2
- package/demos/pc/app/hrapprover/disabled.spec.ts +1 -1
- package/demos/pc/app/ip-address/delimiter.spec.ts +1 -1
- package/demos/pc/app/loading/webdoc/loading.js +1 -1
- package/demos/pc/app/locales/custom-service.spec.ts +0 -3
- package/demos/pc/app/logout/basic-usage.spec.ts +5 -5
- package/demos/pc/app/milestone/show-number.spec.ts +1 -1
- package/demos/pc/app/milestone/solid-style.spec.ts +1 -1
- package/demos/pc/app/modal/basic-usage.spec.ts +1 -1
- package/demos/pc/app/modal/duration.spec.ts +1 -2
- package/demos/pc/app/modal/{min-width-composition-api.vue → min-width-height-composition-api.vue} +4 -2
- package/demos/pc/app/modal/{min-width.spec.ts → min-width-height.spec.ts} +3 -3
- package/demos/pc/app/modal/{min-width.vue → min-width-height.vue} +4 -2
- package/demos/pc/app/modal/prop-slots-composition-api.vue +2 -2
- package/demos/pc/app/modal/show-header-footer-composition-api.vue +11 -0
- package/demos/pc/app/modal/{showHeader.spec.ts → show-header-footer.spec.ts} +3 -3
- package/demos/pc/app/modal/{showHeader.vue → show-header-footer.vue} +2 -2
- package/demos/pc/app/modal/webdoc/modal.js +12 -36
- package/demos/pc/app/notify/closeIcon.spec.ts +1 -1
- package/demos/pc/app/numeric/change-event-composition-api.vue +9 -2
- package/demos/pc/app/numeric/change-event.vue +10 -3
- package/demos/pc/app/numeric/dynamic-disabled-composition-api.vue +10 -2
- package/demos/pc/app/numeric/dynamic-disabled.spec.ts +1 -1
- package/demos/pc/app/numeric/dynamic-disabled.vue +11 -3
- package/demos/pc/app/numeric/mouse-wheel.spec.ts +2 -2
- package/demos/pc/app/numeric/precision-composition-api.vue +1 -1
- package/demos/pc/app/numeric/precision.spec.ts +10 -11
- package/demos/pc/app/numeric/string-mode-composition-api.vue +10 -0
- package/demos/pc/app/numeric/string-mode.spec.ts +17 -0
- package/demos/pc/app/numeric/string-mode.vue +19 -0
- package/demos/pc/app/numeric/webdoc/numeric.js +13 -0
- package/demos/pc/app/pager/before-page-change.spec.ts +1 -1
- package/demos/pc/app/pager/disabled-and-size.spec.ts +1 -1
- package/demos/pc/app/pop-upload/basic-usage.spec.ts +1 -1
- package/demos/pc/app/pop-upload/custom-request-headers.spec.ts +1 -1
- package/demos/pc/app/popeditor/condition-form-composition-api.vue +0 -1
- package/demos/pc/app/popeditor/condition-form.vue +0 -1
- package/demos/pc/app/popeditor/events-composition-api.vue +8 -2
- package/demos/pc/app/popeditor/events.vue +8 -2
- package/demos/pc/app/popeditor/webdoc/popeditor.js +9 -9
- package/demos/pc/app/popover/webdoc/popover.js +69 -28
- package/demos/pc/app/radio/group-options-composition-api.vue +1 -1
- package/demos/pc/app/rate/custom-3-threshold-colors.spec.js +0 -13
- package/demos/pc/app/rate/custom-3-threshold-icon.spec.js +5 -5
- package/demos/pc/app/rate/disabled-not-selected-class.spec.js +1 -1
- package/demos/pc/app/rate/not-selected-class.spec.js +1 -1
- package/demos/pc/app/rate/threshold-value.spec.js +0 -13
- package/demos/pc/app/search/basic-usage-composition-api.vue +1 -1
- package/demos/pc/app/search/basic-usage.vue +1 -1
- package/demos/pc/app/search/webdoc/search.js +3 -2
- package/demos/pc/app/select/copy-multi.spec.ts +6 -5
- package/demos/pc/app/select/copy-single.spec.ts +7 -4
- package/demos/pc/app/select/disabled-composition-api.vue +2 -2
- package/demos/pc/app/select/disabled.spec.ts +3 -3
- package/demos/pc/app/select/disabled.vue +2 -2
- package/demos/pc/app/select/events.spec.ts +3 -3
- package/demos/pc/app/select/multiple.vue +1 -1
- package/demos/pc/app/select/optimization.spec.ts +3 -7
- package/demos/pc/app/select/option-group-composition-api.vue +2 -2
- package/demos/pc/app/select/option-group.vue +2 -2
- package/demos/pc/app/select/searchable.spec.ts +1 -1
- package/demos/pc/app/select/size.spec.ts +1 -1
- package/demos/pc/app/select/tag-type-composition-api.vue +1 -1
- package/demos/pc/app/select/tag-type.spec.ts +1 -1
- package/demos/pc/app/select/tag-type.vue +1 -1
- package/demos/pc/app/slide-bar/basic-usage.spec.ts +0 -5
- package/demos/pc/app/slide-bar/wheel-blocks.spec.ts +2 -6
- package/demos/pc/app/slider/marks-composition-api.vue +20 -0
- package/demos/pc/app/slider/marks.spec.ts +12 -0
- package/demos/pc/app/slider/marks.vue +27 -0
- package/demos/pc/app/slider/show-input-composition-api.vue +2 -0
- package/demos/pc/app/slider/show-input.vue +3 -1
- package/demos/pc/app/slider/show-iput.spec.ts +14 -4
- package/demos/pc/app/slider/webdoc/slider.js +12 -0
- package/demos/pc/app/steps/advanced-steps-composition-api.vue +2 -2
- package/demos/pc/app/steps/advanced-steps.spec.ts +3 -3
- package/demos/pc/app/steps/advanced-steps.vue +2 -2
- package/demos/pc/app/steps/click-composition-api.vue +3 -10
- package/demos/pc/app/steps/click.vue +4 -12
- package/demos/pc/app/steps/line-horizontal-composition-api.vue +1 -1
- package/demos/pc/app/steps/line-horizontal.vue +1 -1
- package/demos/pc/app/steps/line-vertical-composition-api.vue +1 -1
- package/demos/pc/app/steps/line-vertical.vue +1 -1
- package/demos/pc/app/tabs/overflow-title-composition-api.vue +19 -0
- package/demos/pc/app/tabs/overflow-title.vue +28 -0
- package/demos/pc/app/tabs/tabs-events-close-composition-api.vue +5 -1
- package/demos/pc/app/tabs/tabs-events-close.spec.ts +1 -1
- package/demos/pc/app/tabs/tabs-events-close.vue +5 -1
- package/demos/pc/app/tabs/webdoc/tabs.js +18 -4
- package/demos/pc/app/tag/delete.spec.ts +3 -3
- package/demos/pc/app/time-line/shape-composition-api.vue +5 -2
- package/demos/pc/app/time-line/shape.spec.ts +2 -0
- package/demos/pc/app/time-line/shape.vue +5 -1
- package/demos/pc/app/time-line/show-divider-composition-api.vue +1 -1
- package/demos/pc/app/time-line/show-divider.vue +1 -1
- package/demos/pc/app/time-picker/disabled.spec.ts +9 -1
- package/demos/pc/app/time-picker/event.spec.ts +1 -2
- package/demos/pc/app/time-picker/format.spec.ts +10 -3
- package/demos/pc/app/time-picker/step.spec.ts +4 -1
- package/demos/pc/app/time-select/basic-usage.spec.ts +1 -1
- package/demos/pc/app/time-select/clear-icon.spec.ts +1 -1
- package/demos/pc/app/time-select/default-value.spec.ts +1 -1
- package/demos/pc/app/time-select/event-blur-composition-api.vue +3 -3
- package/demos/pc/app/time-select/event-blur.spec.ts +1 -1
- package/demos/pc/app/time-select/event-blur.vue +3 -3
- package/demos/pc/app/time-select/focus-composition-api.vue +1 -1
- package/demos/pc/app/time-select/focus.spec.ts +2 -3
- package/demos/pc/app/time-select/focus.vue +1 -1
- package/demos/pc/app/time-select/range-placeholder.spec.ts +2 -2
- package/demos/pc/app/tooltip/theme-composition-api.vue +28 -26
- package/demos/pc/app/tooltip/theme.vue +28 -26
- package/demos/pc/app/tooltip/webdoc/tooltip.js +55 -29
- package/demos/pc/app/transfer/webdoc/transfer.js +130 -44
- package/demos/pc/app/tree/webdoc/tree.js +319 -68
- package/demos/pc/app/tree-menu/basic-usage.spec.ts +0 -1
- package/demos/pc/app/tree-menu/props.spec.ts +2 -1
- package/demos/pc/app/user/custom-service.spec.ts +1 -1
- package/demos/pc/app/user-account/custom-service.spec.ts +2 -8
- package/demos/pc/app/user-contact/contact-espace-composition-api.vue +1 -0
- package/demos/pc/app/user-link/custom-service.spec.ts +2 -2
- package/demos/pc/app/watermark/webdoc/watermark.js +1 -1
- package/demos/pc/menus.js +2 -1
- package/demos/pc/resource/newVars.json +2 -2
- package/demos/pc/webdoc/changelog.md +139 -0
- package/demos/pc/webdoc/import-components-en.md +40 -2
- package/demos/pc/webdoc/import-components.md +40 -2
- package/package.json +11 -11
- package/playground/App.vue +2 -2
- package/src/App.vue +3 -2
- package/src/const.ts +27 -0
- package/src/router.js +5 -3
- package/src/tools/useTheme.js +60 -50
- package/src/views/components/components.vue +12 -33
- package/src/views/components/demo.vue +4 -4
- package/src/views/layout/layout.vue +6 -6
- package/src/views/overview.vue +6 -3
- package/demos/pc/app/credit-card-form/background-image.spec.ts +0 -10
- package/demos/pc/app/credit-card-form/basic-usage.spec.ts +0 -13
- package/demos/pc/app/credit-card-form/credit-card-form-events.spec.ts +0 -18
- package/demos/pc/app/drawer/default-slot-composition-api.vue +0 -25
- package/demos/pc/app/drawer/default-slot.spec.ts +0 -11
- package/demos/pc/app/drawer/default-slot.vue +0 -35
- package/demos/pc/app/font/Font-usage-specifications.spec.js +0 -41
- package/demos/pc/app/font/chinese-font-set.spec.js +0 -10
- package/demos/pc/app/font/english-fonts.spec.js +0 -10
- package/demos/pc/app/hrapprover/category-type.spec.ts +0 -13
- package/demos/pc/app/modal/min-height-composition-api.vue +0 -16
- package/demos/pc/app/modal/min-height.spec.ts +0 -21
- package/demos/pc/app/modal/min-height.vue +0 -23
- package/demos/pc/app/modal/showFooter-composition-api.vue +0 -11
- package/demos/pc/app/modal/showFooter.spec.ts +0 -10
- package/demos/pc/app/modal/showFooter.vue +0 -18
- package/demos/pc/app/modal/showHeader-composition-api.vue +0 -11
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="card-wrap">
|
|
3
|
+
<tiny-card title="这是卡片标题" :options="options" size="large">
|
|
4
|
+
<p>
|
|
5
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
6
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
7
|
+
</p>
|
|
8
|
+
</tiny-card>
|
|
9
|
+
<br />
|
|
10
|
+
<tiny-card title="这是卡片标题" :options="options" size="large" status="success">
|
|
11
|
+
<p>
|
|
12
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
13
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
14
|
+
</p>
|
|
15
|
+
</tiny-card>
|
|
16
|
+
<br />
|
|
17
|
+
</div>
|
|
18
|
+
</template>
|
|
19
|
+
|
|
20
|
+
<script setup>
|
|
21
|
+
import { Card as TinyCard } from '@opentiny/vue'
|
|
22
|
+
import { IconDel, IconWriting, IconAscending, IconShare } from '@opentiny/vue-icon'
|
|
23
|
+
|
|
24
|
+
import { ref } from 'vue'
|
|
25
|
+
|
|
26
|
+
const options = ref([
|
|
27
|
+
{
|
|
28
|
+
text: '删除列表',
|
|
29
|
+
icon: IconDel()
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
text: '编辑',
|
|
33
|
+
icon: IconWriting(),
|
|
34
|
+
disabled: true
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
text: '排序',
|
|
38
|
+
icon: IconAscending()
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
text: '分享',
|
|
42
|
+
icon: IconShare(),
|
|
43
|
+
disabled: true
|
|
44
|
+
}
|
|
45
|
+
])
|
|
46
|
+
</script>
|
|
47
|
+
|
|
48
|
+
<style scoped>
|
|
49
|
+
.card-wrap {
|
|
50
|
+
background: #f5f5f5;
|
|
51
|
+
padding: 16px;
|
|
52
|
+
}
|
|
53
|
+
</style>
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="card-wrap">
|
|
3
|
+
<tiny-card title="这是卡片标题" :options="options" size="large">
|
|
4
|
+
<p>
|
|
5
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
6
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
7
|
+
</p>
|
|
8
|
+
</tiny-card>
|
|
9
|
+
<br />
|
|
10
|
+
<tiny-card title="这是卡片标题" :options="options" size="large" status="success">
|
|
11
|
+
<p>
|
|
12
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
13
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
14
|
+
</p>
|
|
15
|
+
</tiny-card>
|
|
16
|
+
<br />
|
|
17
|
+
</div>
|
|
18
|
+
</template>
|
|
19
|
+
|
|
20
|
+
<script>
|
|
21
|
+
import { Card } from '@opentiny/vue'
|
|
22
|
+
import { IconDel, IconWriting, IconAscending, IconShare } from '@opentiny/vue-icon'
|
|
23
|
+
|
|
24
|
+
export default {
|
|
25
|
+
components: {
|
|
26
|
+
TinyCard: Card
|
|
27
|
+
},
|
|
28
|
+
data() {
|
|
29
|
+
return {
|
|
30
|
+
options: [
|
|
31
|
+
{
|
|
32
|
+
text: '删除列表',
|
|
33
|
+
icon: IconDel()
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
text: '编辑',
|
|
37
|
+
icon: IconWriting(),
|
|
38
|
+
disabled: true
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
text: '排序',
|
|
42
|
+
icon: IconAscending()
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
text: '分享',
|
|
46
|
+
icon: IconShare(),
|
|
47
|
+
disabled: true
|
|
48
|
+
}
|
|
49
|
+
]
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
</script>
|
|
54
|
+
|
|
55
|
+
<style scoped>
|
|
56
|
+
.card-wrap {
|
|
57
|
+
background: #f5f5f5;
|
|
58
|
+
padding: 16px;
|
|
59
|
+
}
|
|
60
|
+
</style>
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="card-wrap">
|
|
3
|
+
<tiny-card title="内容区为默认插槽">
|
|
4
|
+
<p>
|
|
5
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
6
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
7
|
+
</p>
|
|
8
|
+
</tiny-card>
|
|
9
|
+
<br />
|
|
10
|
+
<tiny-card title="标题右侧插槽-title-right">
|
|
11
|
+
<template #title-right>
|
|
12
|
+
<tiny-tag type="success" size="mini" effect="light">大数据</tiny-tag>
|
|
13
|
+
</template>
|
|
14
|
+
<p>
|
|
15
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
16
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
17
|
+
</p>
|
|
18
|
+
</tiny-card>
|
|
19
|
+
<br />
|
|
20
|
+
<tiny-card title="标题左侧插槽-title-left">
|
|
21
|
+
<template #title-left>
|
|
22
|
+
<div style="margin-right: 16px; cursor: pointer" @click="isOpen = !isOpen">
|
|
23
|
+
<TinyIconChevronDown v-if="!isOpen" />
|
|
24
|
+
<TinyIconChevronUp v-else />
|
|
25
|
+
</div>
|
|
26
|
+
</template>
|
|
27
|
+
<p v-show="isOpen">
|
|
28
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
29
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
30
|
+
</p>
|
|
31
|
+
</tiny-card>
|
|
32
|
+
<br />
|
|
33
|
+
<tiny-card title="底部插槽-footer">
|
|
34
|
+
<p>
|
|
35
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
36
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
37
|
+
</p>
|
|
38
|
+
<template #footer>
|
|
39
|
+
<div style="display: flex">
|
|
40
|
+
<img :src="useHead" style="width: 36px; height: 36px" alt="user-head" />
|
|
41
|
+
<div style="padding-left: 16px">
|
|
42
|
+
<p style="font-size: 14px">刘小华</p>
|
|
43
|
+
<p style="font-size: 14px; color: #777">2023-03-20 10:10:10</p>
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
</template>
|
|
47
|
+
</tiny-card>
|
|
48
|
+
</div>
|
|
49
|
+
</template>
|
|
50
|
+
|
|
51
|
+
<script setup>
|
|
52
|
+
import { Card as TinyCard, Tag as TinyTag } from '@opentiny/vue'
|
|
53
|
+
import { IconChevronDown, IconChevronUp } from '@opentiny/vue-icon'
|
|
54
|
+
import { ref } from 'vue'
|
|
55
|
+
|
|
56
|
+
const userHead = ref(`${import.meta.env.VITE_APP_BUILD_BASE_URL}static/images/user-head.png`)
|
|
57
|
+
const TinyIconChevronDown = IconChevronDown()
|
|
58
|
+
const TinyIconChevronUp = IconChevronUp()
|
|
59
|
+
const isOpen = ref(true)
|
|
60
|
+
</script>
|
|
61
|
+
|
|
62
|
+
<style scoped>
|
|
63
|
+
.card-wrap {
|
|
64
|
+
background: #f5f5f5;
|
|
65
|
+
padding: 16px;
|
|
66
|
+
}
|
|
67
|
+
</style>
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="card-wrap">
|
|
3
|
+
<tiny-card title="内容区为默认插槽">
|
|
4
|
+
<p>
|
|
5
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
6
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
7
|
+
</p>
|
|
8
|
+
</tiny-card>
|
|
9
|
+
<br />
|
|
10
|
+
<tiny-card title="标题右侧插槽-title-right">
|
|
11
|
+
<template #title-right>
|
|
12
|
+
<tiny-tag type="success" size="mini" effect="light">大数据</tiny-tag>
|
|
13
|
+
</template>
|
|
14
|
+
<p>
|
|
15
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
16
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
17
|
+
</p>
|
|
18
|
+
</tiny-card>
|
|
19
|
+
<br />
|
|
20
|
+
<tiny-card title="标题左侧插槽-title-left">
|
|
21
|
+
<template #title-left>
|
|
22
|
+
<div style="margin-right: 16px; cursor: pointer" @click="isOpen = !isOpen">
|
|
23
|
+
<TinyIconChevronDown v-if="!isOpen" />
|
|
24
|
+
<TinyIconChevronUp v-else />
|
|
25
|
+
</div>
|
|
26
|
+
</template>
|
|
27
|
+
<p v-show="isOpen">
|
|
28
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
29
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
30
|
+
</p>
|
|
31
|
+
</tiny-card>
|
|
32
|
+
<br />
|
|
33
|
+
<tiny-card title="底部插槽-footer">
|
|
34
|
+
<p>
|
|
35
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
36
|
+
这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,这是一段长文本内容,
|
|
37
|
+
</p>
|
|
38
|
+
<template #footer>
|
|
39
|
+
<div style="display: flex">
|
|
40
|
+
<img :src="useHead" style="width: 36px; height: 36px" alt="user-head" />
|
|
41
|
+
<div style="padding-left: 16px">
|
|
42
|
+
<p style="font-size: 14px">刘小华</p>
|
|
43
|
+
<p style="font-size: 14px; color: #777">2023-03-20 10:10:10</p>
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
</template>
|
|
47
|
+
</tiny-card>
|
|
48
|
+
</div>
|
|
49
|
+
</template>
|
|
50
|
+
|
|
51
|
+
<script>
|
|
52
|
+
import { Card, Tag } from '@opentiny/vue'
|
|
53
|
+
import { IconChevronDown, IconChevronUp } from '@opentiny/vue-icon'
|
|
54
|
+
|
|
55
|
+
export default {
|
|
56
|
+
components: {
|
|
57
|
+
TinyCard: Card,
|
|
58
|
+
TinyTag: Tag,
|
|
59
|
+
TinyIconChevronDown: IconChevronDown(),
|
|
60
|
+
TinyIconChevronUp: IconChevronUp()
|
|
61
|
+
},
|
|
62
|
+
data() {
|
|
63
|
+
return {
|
|
64
|
+
useHead: `${import.meta.env.VITE_APP_BUILD_BASE_URL}static/images/user-head.png`,
|
|
65
|
+
isOpen: true
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
</script>
|
|
70
|
+
|
|
71
|
+
<style scoped>
|
|
72
|
+
.card-wrap {
|
|
73
|
+
background: #f5f5f5;
|
|
74
|
+
padding: 16px;
|
|
75
|
+
}
|
|
76
|
+
</style>
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
column: '2',
|
|
3
|
+
owner: '',
|
|
4
|
+
demos: [
|
|
5
|
+
{
|
|
6
|
+
demoId: 'basic-usage',
|
|
7
|
+
name: {
|
|
8
|
+
'zh-CN': '基本用法',
|
|
9
|
+
'en-US': 'Basic Usage'
|
|
10
|
+
},
|
|
11
|
+
desc: {
|
|
12
|
+
'zh-CN': '<p></p>',
|
|
13
|
+
'en-US': '<p></p>'
|
|
14
|
+
},
|
|
15
|
+
codeFiles: ['basic-usage.vue']
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
demoId: 'card-type',
|
|
19
|
+
name: {
|
|
20
|
+
'zh-CN': '卡片类型',
|
|
21
|
+
'en-US': 'Card Type'
|
|
22
|
+
},
|
|
23
|
+
desc: {
|
|
24
|
+
'zh-CN': '<p>支持 <code>text image video logo</code> 4 种类型</p>',
|
|
25
|
+
'en-US': '<p>Four types of <code>text image video logo</code> are supported.</p>'
|
|
26
|
+
},
|
|
27
|
+
codeFiles: ['card-type.vue']
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
demoId: 'card-size',
|
|
31
|
+
name: {
|
|
32
|
+
'zh-CN': '尺寸',
|
|
33
|
+
'en-US': 'Size'
|
|
34
|
+
},
|
|
35
|
+
desc: {
|
|
36
|
+
'zh-CN': '<p>支持<code>mini small medium large</code>4 个尺寸的卡片,默认值为:<code>medium</code></p>',
|
|
37
|
+
'en-US': '<p>Supports <code>mini small medium large</code> cards of four sizes</p>'
|
|
38
|
+
},
|
|
39
|
+
codeFiles: ['card-size.vue']
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
demoId: 'card-disabled',
|
|
43
|
+
name: {
|
|
44
|
+
'zh-CN': '禁用',
|
|
45
|
+
'en-US': 'disabled'
|
|
46
|
+
},
|
|
47
|
+
desc: {
|
|
48
|
+
'zh-CN': '<p>通过设置属性<code>disabled</code>禁用卡片</p>',
|
|
49
|
+
'en-US': '<p>Disable the card by setting the property <code>disabled</code></p>'
|
|
50
|
+
},
|
|
51
|
+
codeFiles: ['card-disabled.vue']
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
demoId: 'card-group',
|
|
55
|
+
name: {
|
|
56
|
+
'zh-CN': '卡片组',
|
|
57
|
+
'en-US': 'Card Group'
|
|
58
|
+
},
|
|
59
|
+
desc: {
|
|
60
|
+
'zh-CN': '<p><code>card-group</code> 与 <code>card</code> 结合一起使用,提供响应式布局的能力</p>',
|
|
61
|
+
'en-US':
|
|
62
|
+
'<p><code>card-group</code> is used in conjunction with <code>card</code> to provide responsive layout capabilities</p>'
|
|
63
|
+
},
|
|
64
|
+
codeFiles: ['card-group.vue']
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
demoId: 'card-status',
|
|
68
|
+
name: {
|
|
69
|
+
'zh-CN': '卡片状态',
|
|
70
|
+
'en-US': 'Card Status'
|
|
71
|
+
},
|
|
72
|
+
desc: {
|
|
73
|
+
'zh-CN': '<p>支持 <code>success warning alerting danger</code> 4 种状态</p>',
|
|
74
|
+
'en-US': '<p>The following four states are supported: <code>success warning alerting danger</code></p>'
|
|
75
|
+
},
|
|
76
|
+
codeFiles: ['card-status.vue']
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
demoId: 'check-type-checkbox',
|
|
80
|
+
name: {
|
|
81
|
+
'zh-CN': '单选&多选',
|
|
82
|
+
'en-US': 'Single-choice & multiple-choice'
|
|
83
|
+
},
|
|
84
|
+
desc: {
|
|
85
|
+
'zh-CN':
|
|
86
|
+
'<p>通过属性<code>check-type="checkbox"</code>设置卡片多选,通过属性<code>check-type="radio"</code>设置卡片单选,需同时设置 label。注意:目前仅支持在 text 类型开启多选</p>',
|
|
87
|
+
'en-US':
|
|
88
|
+
'<p>Use the <code>check-type="checkbox"</code> attribute to set multiple card selections, and use the <code>check-type="radio"</code> attribute to set single card selections. You need to set labels at the same time. Note: Currently, multiple selections can be enabled only for the text type.</p>'
|
|
89
|
+
},
|
|
90
|
+
codeFiles: ['check-type-checkbox.vue']
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
demoId: 'custom-class',
|
|
94
|
+
name: {
|
|
95
|
+
'zh-CN': '自定义 class',
|
|
96
|
+
'en-US': 'Customized class'
|
|
97
|
+
},
|
|
98
|
+
desc: {
|
|
99
|
+
'zh-CN':
|
|
100
|
+
'<p>属性<code>card-class</code>可自定义卡片的 class,属性<code>height</code>可设置卡片内容区的高度。</p>',
|
|
101
|
+
'en-US':
|
|
102
|
+
'<p>The <code>card-class</code> attribute can be used to customize the card class, and the <code>height</code> attribute can be used to set the height of the card content area.</p>'
|
|
103
|
+
},
|
|
104
|
+
codeFiles: ['custom-class.vue']
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
demoId: 'operate-bar',
|
|
108
|
+
name: {
|
|
109
|
+
'zh-CN': '操作栏选项配置',
|
|
110
|
+
'en-US': 'Operation Bar Option Configuration'
|
|
111
|
+
},
|
|
112
|
+
desc: {
|
|
113
|
+
'zh-CN':
|
|
114
|
+
'<p>通过<code>options</code>属性配置操作栏,支持按钮的禁用(<code>disabled: true</code>)与隐藏(<code>hidden: true</code>)</p>',
|
|
115
|
+
'en-US':
|
|
116
|
+
'<p>Use the <code>options</code> attribute to configure the operation bar. Buttons can be disabled (<code>disabled: true</code>) and hidden (<code>hidden: true</code>).</p>'
|
|
117
|
+
},
|
|
118
|
+
codeFiles: ['operate-bar.vue']
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
demoId: 'card-events',
|
|
122
|
+
name: {
|
|
123
|
+
'zh-CN': '事件',
|
|
124
|
+
'en-US': 'events'
|
|
125
|
+
},
|
|
126
|
+
desc: {
|
|
127
|
+
'zh-CN':
|
|
128
|
+
'<p><code>change</code> 事件:卡片勾选和取消勾选时触发;<code>icon-click</code> 事件:操作栏按钮点击时触发</p>',
|
|
129
|
+
'en-US':
|
|
130
|
+
'<p><code>change</code> event: triggered when a card is selected or deselected; <code>icon-click</code> event: triggered when a button in the operation bar is clicked</p>'
|
|
131
|
+
},
|
|
132
|
+
codeFiles: ['card-events.vue']
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
demoId: 'slot',
|
|
136
|
+
name: {
|
|
137
|
+
'zh-CN': '插槽',
|
|
138
|
+
'en-US': 'Slots'
|
|
139
|
+
},
|
|
140
|
+
desc: {
|
|
141
|
+
'zh-CN': '<p>组件提供<code>default、title-left、title、title-right、footer</code>5 个插槽</p>',
|
|
142
|
+
'en-US':
|
|
143
|
+
'<p>The component provides five slots: <code>default, title-left,title、 title-right, and footer</code></p>'
|
|
144
|
+
},
|
|
145
|
+
codeFiles: ['slot.vue']
|
|
146
|
+
}
|
|
147
|
+
]
|
|
148
|
+
}
|
|
@@ -4,9 +4,9 @@ test('基础用法', async ({ page }) => {
|
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('carousel#basic-usage')
|
|
6
6
|
const preview = page.locator('#basic-usage')
|
|
7
|
-
|
|
7
|
+
const carousel = preview.locator('.tiny-carousel')
|
|
8
|
+
await carousel.hover()
|
|
9
|
+
await page.waitForTimeout(400)
|
|
8
10
|
await preview.getByRole('list').getByRole('button').nth(1).click()
|
|
9
|
-
await preview.locator('.tiny-carousel__container > button:nth-child(2)').click()
|
|
10
|
-
await preview.locator('.tiny-carousel__container > button:nth-child(2)').click()
|
|
11
11
|
await preview.locator('.tiny-carousel__arrow').first().click()
|
|
12
12
|
})
|
|
@@ -7,17 +7,10 @@ test('卡片模式', async ({ page }) => {
|
|
|
7
7
|
const carouselItems = page.locator(
|
|
8
8
|
'.tiny-carousel > .tiny-carousel__container > .tiny-carousel__item > .tiny-carousel__mask'
|
|
9
9
|
)
|
|
10
|
-
await
|
|
11
|
-
await
|
|
12
|
-
await
|
|
13
|
-
await preview.
|
|
14
|
-
await preview.locator('.tiny-carousel__container > button:nth-child(2)').click()
|
|
15
|
-
await preview.locator('.tiny-carousel__arrow').first().click()
|
|
16
|
-
await preview.locator('.tiny-carousel__arrow').first().click()
|
|
17
|
-
await preview.locator('.tiny-carousel__arrow').first().click()
|
|
10
|
+
await preview.hover()
|
|
11
|
+
await page.getByRole('list').getByRole('button').nth(1).click()
|
|
12
|
+
await page.waitForTimeout(200)
|
|
13
|
+
await preview.hover()
|
|
18
14
|
await preview.locator('.tiny-carousel__arrow').first().click()
|
|
19
15
|
await expect(carouselItems).toHaveCount(4)
|
|
20
|
-
await preview.getByRole('list').getByRole('button').nth(1).click()
|
|
21
|
-
await preview.getByRole('list').getByRole('button').nth(2).click()
|
|
22
|
-
await preview.getByRole('list').getByRole('button').nth(3).click()
|
|
23
16
|
})
|
|
@@ -7,21 +7,19 @@ test('hover 时显示切换箭头', async ({ page }) => {
|
|
|
7
7
|
const carousel = preview.locator('.tiny-carousel')
|
|
8
8
|
const carouselItems = preview.locator('div.tiny-carousel__item')
|
|
9
9
|
|
|
10
|
-
await
|
|
11
|
-
await page.waitForTimeout(100)
|
|
10
|
+
await preview.hover()
|
|
12
11
|
const arrow = carousel.locator('.tiny-carousel__arrow')
|
|
13
12
|
// 左侧切换按钮
|
|
14
13
|
await expect(arrow.first()).toBeVisible()
|
|
15
14
|
// 右侧切换按钮
|
|
16
15
|
await expect(arrow.nth(1)).toBeVisible()
|
|
17
|
-
|
|
16
|
+
await page.waitForTimeout(200)
|
|
17
|
+
await preview.hover()
|
|
18
18
|
// 点击下一张按钮
|
|
19
19
|
await preview.locator('button:nth-child(2)').click()
|
|
20
20
|
// 当前应该显示第二张幻灯片
|
|
21
|
-
await
|
|
22
|
-
|
|
21
|
+
await page.waitForTimeout(300)
|
|
22
|
+
await preview.hover()
|
|
23
23
|
// 点击上一张按钮
|
|
24
24
|
await page.locator('.tiny-carousel__arrow').first().click()
|
|
25
|
-
// 当前应该显示第一张幻灯片
|
|
26
|
-
await expect(carouselItems.first()).toHaveCSS('transform', 'matrix(1, 0, 0, 1, 0, 0)')
|
|
27
25
|
})
|
|
@@ -5,23 +5,14 @@ test('走马灯事件', async ({ page }) => {
|
|
|
5
5
|
await page.goto('carousel#carousel-events')
|
|
6
6
|
const preview = page.locator('#carousel-events')
|
|
7
7
|
const carousel = preview.locator('.tiny-carousel')
|
|
8
|
-
const carouselTip = preview.locator('.carousel-tip')
|
|
9
|
-
|
|
10
|
-
await carousel.hover()
|
|
11
|
-
await page.waitForTimeout(300)
|
|
12
8
|
const arrow = carousel.locator('.tiny-carousel__arrow')
|
|
13
|
-
const
|
|
14
|
-
await
|
|
15
|
-
|
|
16
|
-
await
|
|
17
|
-
// 右侧切换按钮应该可见
|
|
18
|
-
await expect(rightArrow).toBeVisible()
|
|
19
|
-
|
|
9
|
+
const carouselTip = preview.locator('.carousel-tip')
|
|
10
|
+
await preview.hover()
|
|
11
|
+
await page.waitForTimeout(320)
|
|
12
|
+
await page.getByRole('list').getByRole('button').nth(1).click()
|
|
20
13
|
// 点击左侧切换按钮
|
|
21
14
|
await arrow.first().click()
|
|
22
|
-
|
|
23
|
-
await
|
|
24
|
-
|
|
25
|
-
await rightArrow.click()
|
|
26
|
-
await expect(carouselTip).toHaveText(/0\D+3/)
|
|
15
|
+
// 左侧切换按钮应该可见
|
|
16
|
+
await expect(arrow.first()).toBeVisible()
|
|
17
|
+
await expect(carouselTip).toHaveText(/当前幻灯片索引/)
|
|
27
18
|
})
|
|
@@ -4,10 +4,7 @@ test('轮播间隔时间', async ({ page }) => {
|
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('carousel#play-interval')
|
|
6
6
|
const preview = page.locator('#play-interval')
|
|
7
|
-
const carouselItems = preview.locator('div.tiny-carousel__item.is-animating')
|
|
8
7
|
const carouselItemsActive = preview.locator('div.tiny-carousel__item.is-active')
|
|
9
|
-
await
|
|
10
|
-
await page.waitForTimeout(500)
|
|
8
|
+
await page.waitForTimeout(300)
|
|
11
9
|
await expect(carouselItemsActive).toHaveCSS('z-index', '2')
|
|
12
|
-
await page.waitForTimeout(500)
|
|
13
10
|
})
|
|
@@ -4,7 +4,7 @@ test('动态加载且父子级不相关联 lazyload & checkStrictly', async ({ p
|
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('cascader#auto-load-checkStrictly')
|
|
6
6
|
await page.locator('.tiny-cascader').click()
|
|
7
|
-
const svg = page.locator('.tiny-cascader-node__postfix >
|
|
7
|
+
const svg = page.locator('.tiny-cascader-node__postfix > path')
|
|
8
8
|
await expect(svg).toBeVisible()
|
|
9
9
|
await page.locator('li[role="menuitem"]').click()
|
|
10
10
|
const loadingSvg = page.getByRole('menuitem', { name: '选项1' }).locator('path')
|
|
@@ -4,8 +4,11 @@ test('动态加载 lazyload', async ({ page }) => {
|
|
|
4
4
|
page.on('pageerror', (exception) => expect(exception).toBeNull())
|
|
5
5
|
await page.goto('cascader#auto-load')
|
|
6
6
|
await page.getByRole('textbox', { name: '请选择' }).click()
|
|
7
|
-
const svg = page.locator('.tiny-cascader-node__postfix >
|
|
8
|
-
await expect(svg).toHaveAttribute(
|
|
7
|
+
const svg = page.locator('.tiny-cascader-node__postfix > path')
|
|
8
|
+
await expect(svg).toHaveAttribute(
|
|
9
|
+
'd',
|
|
10
|
+
'M7 21c.2 0 .5-.1.6-.2l9.9-8c.2-.2.4-.5.4-.8 0-.3-.1-.6-.4-.8L7.6 3.3c-.4-.4-1.1-.3-1.4.2-.4.4-.3 1.1.2 1.4l8.9 7.2-8.9 7.2c-.4.4-.5 1-.2 1.4.2.2.5.3.8.3z'
|
|
11
|
+
)
|
|
9
12
|
await page.getByRole('menuitem', { name: '选项1' }).click()
|
|
10
13
|
const loadingSvg = page.getByRole('menuitem', { name: '选项1' }).locator('path')
|
|
11
14
|
await expect(loadingSvg).toHaveAttribute(
|
|
@@ -6,7 +6,7 @@ test('基本用法', async ({ page }) => {
|
|
|
6
6
|
await page.locator('.tiny-color-picker__inner').click()
|
|
7
7
|
await page.locator('.black').click()
|
|
8
8
|
await page.getByRole('button', { name: '选择' }).click()
|
|
9
|
-
await page.locator('
|
|
10
|
-
await page.locator('.tiny-color-select-
|
|
9
|
+
await page.locator('.tiny-color-picker__inner').click()
|
|
10
|
+
await page.locator('.tiny-color-select-panel__inner__color-select').click()
|
|
11
11
|
await page.getByRole('button', { name: '选择' }).click()
|
|
12
12
|
})
|
|
@@ -5,6 +5,6 @@ test('事件触发', async ({ page }) => {
|
|
|
5
5
|
await page.goto('color-picker#event')
|
|
6
6
|
await page.locator('#event').getByRole('img').click()
|
|
7
7
|
await page.getByRole('button', { name: '选择' }).click()
|
|
8
|
-
await page.locator('#event').getByRole('img').click()
|
|
8
|
+
await page.locator('#event').getByRole('img').first().click()
|
|
9
9
|
await page.getByRole('button', { name: '取消' }).click()
|
|
10
10
|
})
|
|
@@ -5,18 +5,15 @@ test('测试历史记录', async ({ page }) => {
|
|
|
5
5
|
await page.goto('color-picker#history')
|
|
6
6
|
await page.locator('.tiny-color-picker').click()
|
|
7
7
|
await page.waitForSelector('.tiny-collapse-item__arrow')
|
|
8
|
-
const arrow = page.locator('.tiny-collapse-item__arrow')
|
|
9
|
-
await arrow.click()
|
|
10
8
|
await expect(page.locator('.tiny-color-select-panel__history')).toHaveCount(1)
|
|
11
9
|
await page.getByRole('button', { name: '选择' }).click()
|
|
12
10
|
// 用户行为更改历史记录测试
|
|
13
11
|
await page.getByRole('button', { name: 'Append history color' }).click()
|
|
14
12
|
await page.locator('.tiny-color-picker').click()
|
|
15
13
|
await page.waitForSelector('.tiny-collapse-item__arrow')
|
|
16
|
-
await page.locator('.tiny-collapse-item__arrow').click()
|
|
17
14
|
await expect(
|
|
18
15
|
page.locator('.tiny-color-select-panel__history .tiny-color-select-panel__history__color-block:nth-child(2)')
|
|
19
|
-
).
|
|
16
|
+
).toBeHidden()
|
|
20
17
|
// 点击色块中心,并点击选择,历史记录增加1的测试
|
|
21
18
|
const black = page.locator('.black')
|
|
22
19
|
const center = await black.boundingBox()
|
|
@@ -26,8 +23,7 @@ test('测试历史记录', async ({ page }) => {
|
|
|
26
23
|
await page.getByRole('button', { name: '选择' }).click()
|
|
27
24
|
await page.locator('.tiny-color-picker').click()
|
|
28
25
|
await page.waitForSelector('.tiny-collapse-item__arrow')
|
|
29
|
-
await page.locator('.tiny-collapse-item__arrow').click()
|
|
30
26
|
await expect(
|
|
31
27
|
page.locator('.tiny-color-select-panel__history .tiny-color-select-panel__history__color-block:nth-child(3)')
|
|
32
|
-
).
|
|
28
|
+
).toBeHidden()
|
|
33
29
|
})
|
|
@@ -5,18 +5,15 @@ test('测试预定义颜色', async ({ page }) => {
|
|
|
5
5
|
await page.goto('color-picker#predefine')
|
|
6
6
|
await page.locator('.tiny-color-picker').click()
|
|
7
7
|
await page.waitForSelector('.tiny-collapse-item__arrow')
|
|
8
|
-
const arrow = page.locator('.tiny-collapse-item__arrow')
|
|
9
|
-
await arrow.click()
|
|
10
8
|
await expect(
|
|
11
9
|
page.locator('.tiny-color-select-panel__predefine .tiny-color-select-panel__predefine__color-block:nth-child(8)')
|
|
12
|
-
).
|
|
10
|
+
).toBeHidden()
|
|
13
11
|
await page.getByRole('button', { name: '选择' }).click()
|
|
14
12
|
// 用户行为预定义颜色测试
|
|
15
13
|
await page.getByRole('button', { name: 'Append predefine color' }).click()
|
|
16
14
|
await page.locator('.tiny-color-picker').click()
|
|
17
15
|
await page.waitForSelector('.tiny-collapse-item__arrow')
|
|
18
|
-
await page.locator('.tiny-collapse-item__arrow').click()
|
|
19
16
|
await expect(
|
|
20
17
|
page.locator('.tiny-color-select-panel__predefine .tiny-color-select-panel__predefine__color-block:nth-child(9)')
|
|
21
|
-
).
|
|
18
|
+
).toBeHidden()
|
|
22
19
|
})
|