@opentiny/vue-docs 2.2.5 → 2.2.7

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.
Files changed (973) hide show
  1. package/demos/mobile/app/alert/basic-usage.vue +26 -0
  2. package/demos/mobile/app/alert/center.vue +13 -0
  3. package/demos/mobile/app/alert/custom-close.vue +25 -7
  4. package/demos/mobile/app/alert/target.vue +30 -0
  5. package/demos/mobile/app/alert/webdoc/alert.js +50 -0
  6. package/demos/mobile/app/checkbox/basic-usage.vue +33 -0
  7. package/demos/mobile/app/checkbox/{default.vue → checkbox-group.vue} +5 -10
  8. package/demos/mobile/app/checkbox/{label.vue → disabled.vue} +4 -3
  9. package/demos/mobile/app/checkbox/event-change.vue +2 -2
  10. package/demos/mobile/app/checkbox/icon-position.vue +49 -0
  11. package/demos/mobile/app/checkbox/indeterminate.vue +2 -2
  12. package/demos/mobile/app/checkbox/true-false-label.vue +2 -2
  13. package/demos/mobile/app/checkbox/webdoc/checkbox.js +88 -46
  14. package/demos/mobile/app/container/basic-usage.vue +105 -0
  15. package/demos/mobile/app/container/custom-width.vue +93 -0
  16. package/demos/mobile/app/container/webdoc/container.cn.md +7 -0
  17. package/demos/mobile/app/container/webdoc/container.en.md +7 -0
  18. package/demos/mobile/app/container/webdoc/container.js +80 -0
  19. package/demos/mobile/app/input/basic-usage.vue +32 -0
  20. package/demos/mobile/app/input/clearable.vue +7 -7
  21. package/demos/mobile/app/input/counter.vue +15 -8
  22. package/demos/mobile/app/input/disabled.vue +31 -0
  23. package/demos/mobile/app/input/events.vue +32 -13
  24. package/demos/mobile/app/input/max-min-length.vue +5 -5
  25. package/demos/mobile/app/input/methods.vue +53 -0
  26. package/demos/mobile/app/input/native-attributes.vue +62 -0
  27. package/demos/mobile/app/input/prefix-suffix-icon.vue +35 -0
  28. package/demos/mobile/app/input/show-password.vue +5 -5
  29. package/demos/mobile/app/input/slots.vue +65 -0
  30. package/demos/mobile/app/input/textarea-rows-cols.vue +31 -0
  31. package/demos/mobile/app/input/textarea-scalable.vue +41 -0
  32. package/demos/mobile/app/input/{type-be-form-select.vue → type-select.vue} +10 -10
  33. package/demos/mobile/app/input/type.vue +60 -0
  34. package/demos/mobile/app/input/validate-event.vue +5 -30
  35. package/demos/mobile/app/input/webdoc/input.js +281 -312
  36. package/demos/mobile/app/label/base.vue +24 -0
  37. package/demos/mobile/app/label/bold.vue +23 -0
  38. package/demos/mobile/app/label/color.vue +34 -0
  39. package/demos/mobile/app/label/decimal.vue +28 -0
  40. package/demos/mobile/app/label/ellipsis.vue +31 -0
  41. package/demos/mobile/app/label/limit.vue +24 -0
  42. package/demos/mobile/app/label/position.vue +30 -0
  43. package/demos/mobile/app/label/required.vue +24 -0
  44. package/demos/mobile/app/label/size.vue +31 -0
  45. package/demos/mobile/app/label/type.vue +30 -0
  46. package/demos/mobile/app/label/webdoc/label.cn.md +11 -0
  47. package/demos/mobile/app/label/webdoc/label.en.md +11 -0
  48. package/demos/mobile/app/label/webdoc/label.js +247 -0
  49. package/demos/mobile/app/label/wholeline.vue +24 -0
  50. package/demos/mobile/app/mask/basic-usage.vue +38 -0
  51. package/demos/mobile/app/mask/click-no-hide.vue +32 -0
  52. package/demos/mobile/app/mask/slot-default.vue +37 -0
  53. package/demos/mobile/app/mask/webdoc/mask.cn.md +11 -0
  54. package/demos/mobile/app/mask/webdoc/mask.en.md +11 -0
  55. package/demos/mobile/app/mask/webdoc/mask.js +114 -0
  56. package/demos/mobile/app/mask/z-index.vue +30 -0
  57. package/demos/mobile/app/pull-refresh/animation-duration.vue +58 -12
  58. package/demos/mobile/app/pull-refresh/base.vue +32 -18
  59. package/demos/mobile/app/pull-refresh/disabled-pull-down.vue +66 -0
  60. package/demos/mobile/app/pull-refresh/disabled-pull-up.vue +67 -0
  61. package/demos/mobile/app/pull-refresh/{hasmore.vue → event.vue} +21 -20
  62. package/demos/mobile/app/pull-refresh/{enhance.vue → has-more.vue} +20 -25
  63. package/demos/mobile/app/pull-refresh/loosing-text.vue +55 -12
  64. package/demos/mobile/app/pull-refresh/pull-refresh-slot.vue +64 -15
  65. package/demos/mobile/app/pull-refresh/pull-up-distance.vue +74 -0
  66. package/demos/mobile/app/pull-refresh/pulling-text.vue +56 -12
  67. package/demos/mobile/app/pull-refresh/webdoc/pull-refresh.js +98 -120
  68. package/demos/mobile/app/tabs/before-leave.vue +3 -3
  69. package/demos/mobile/app/tabs/tabs-events.vue +7 -7
  70. package/demos/mobile/app/tag/basic-usage.vue +27 -0
  71. package/demos/mobile/app/tag/different-color.vue +30 -0
  72. package/demos/mobile/app/tag/max-width.vue +26 -0
  73. package/demos/mobile/app/tag/mini.vue +27 -0
  74. package/demos/mobile/app/tag/webdoc/tag.cn.md +7 -0
  75. package/demos/mobile/app/tag/webdoc/tag.en.md +7 -0
  76. package/demos/mobile/app/tag/webdoc/tag.js +96 -0
  77. package/demos/mobile/menus.js +9 -3
  78. package/demos/mobile-first/app/alert/webdoc/alert.js +77 -36
  79. package/demos/mobile-first/app/cascader-view/webdoc/cascader-view.js +249 -10
  80. package/demos/mobile-first/app/exception/webdoc/exception.js +94 -22
  81. package/demos/mobile-first/app/flowchart/webdoc/flowchart.js +24 -25
  82. package/demos/mobile-first/app/image/webdoc/image.js +126 -57
  83. package/demos/mobile-first/app/pull-refresh/webdoc/pull-refresh.js +223 -9
  84. package/demos/mobile-first/app/tabs/basic-usage.vue +3 -3
  85. package/demos/mobile-first/app/tabs/before-leave.vue +3 -3
  86. package/demos/mobile-first/app/tabs/change-title.vue +2 -2
  87. package/demos/mobile-first/app/tabs/custom-tab-content.vue +3 -3
  88. package/demos/mobile-first/app/tabs/custom-tab-title.vue +3 -3
  89. package/demos/mobile-first/app/tabs/position-bottom.vue +10 -10
  90. package/demos/mobile-first/app/tabs/position-left.vue +10 -10
  91. package/demos/mobile-first/app/tabs/position-right.vue +10 -10
  92. package/demos/mobile-first/app/tabs/position.vue +10 -10
  93. package/demos/mobile-first/app/tabs/prevent-tab-switching.vue +3 -3
  94. package/demos/mobile-first/app/tabs/stretch-wh.vue +3 -3
  95. package/demos/mobile-first/app/tabs/tab-style-bordercard.vue +10 -10
  96. package/demos/mobile-first/app/tabs/tab-style-card.vue +10 -10
  97. package/demos/mobile-first/app/tabs/tabdata-title.vue +4 -4
  98. package/demos/mobile-first/app/tabs/tabs-draggable.vue +1 -1
  99. package/demos/mobile-first/app/tabs/tabs-events-add.vue +3 -3
  100. package/demos/mobile-first/app/tabs/tabs-events-click.vue +3 -3
  101. package/demos/mobile-first/app/tabs/tabs-events-close.vue +4 -4
  102. package/demos/mobile-first/app/tabs/tabs-events-edit.vue +4 -4
  103. package/demos/mobile-first/app/tabs/tabs-separator.vue +8 -8
  104. package/demos/mobile-first/app/tabs/tabs-size.vue +3 -3
  105. package/demos/mobile-first/app/tabs/tabs-tabs.vue +2 -2
  106. package/demos/mobile-first/app/tabs/with-add.vue +1 -1
  107. package/demos/mobile-first/app/tooltip/webdoc/tooltip.js +47 -53
  108. package/demos/pc/app/action-menu/disabled.vue +2 -1
  109. package/demos/pc/app/action-menu/icon-composition-api.vue +73 -0
  110. package/demos/pc/app/action-menu/icon.spec.ts +38 -0
  111. package/demos/pc/app/action-menu/icon.vue +79 -0
  112. package/demos/pc/app/action-menu/popper-class.spec.ts +2 -1
  113. package/demos/pc/app/action-menu/webdoc/action-menu.cn.md +1 -1
  114. package/demos/pc/app/action-menu/webdoc/action-menu.en.md +1 -1
  115. package/demos/pc/app/action-menu/webdoc/action-menu.js +48 -57
  116. package/demos/pc/app/alert/custom-close-composition-api.vue +2 -2
  117. package/demos/pc/app/alert/custom-close.vue +3 -4
  118. package/demos/pc/app/amount/webdoc/amount.js +1 -1
  119. package/demos/pc/app/anchor/basic-usage-composition-api.vue +11 -2
  120. package/demos/pc/app/anchor/basic-usage.vue +11 -2
  121. package/demos/pc/app/anchor/is-affix-composition-api.vue +8 -2
  122. package/demos/pc/app/anchor/is-affix.vue +8 -2
  123. package/demos/pc/app/anchor/webdoc/anchor.js +3 -3
  124. package/demos/pc/app/area/webdoc/area.js +1 -1
  125. package/demos/pc/app/autocomplete/webdoc/autocomplete.js +30 -16
  126. package/demos/pc/app/breadcrumb/webdoc/breadcrumb.js +3 -3
  127. package/demos/pc/app/bulletin-board/active-name.spec.ts +1 -2
  128. package/demos/pc/app/bulletin-board/base.spec.ts +2 -3
  129. package/demos/pc/app/bulletin-board/icon.spec.ts +1 -1
  130. package/demos/pc/app/bulletin-board/more-link.spec.ts +8 -2
  131. package/demos/pc/app/bulletin-board/route.spec.ts +3 -3
  132. package/demos/pc/app/bulletin-board/tab-title.spec.ts +1 -1
  133. package/demos/pc/app/bulletin-board/title.spec.ts +1 -1
  134. package/demos/pc/app/bulletin-board/url.spec.ts +3 -3
  135. package/demos/pc/app/bulletin-board/webdoc/bulletin-board.js +12 -11
  136. package/demos/pc/app/button/basic-usage-composition-api.vue +2 -0
  137. package/demos/pc/app/button/basic-usage.vue +2 -0
  138. package/demos/pc/app/button/click-composition-api.vue +1 -1
  139. package/demos/pc/app/button/click.vue +1 -1
  140. package/demos/pc/app/button/dynamic-disabled-composition-api.vue +10 -1
  141. package/demos/pc/app/button/{dynamic-disabled.spec.js → dynamic-disabled.spec.ts} +4 -0
  142. package/demos/pc/app/button/dynamic-disabled.vue +12 -3
  143. package/demos/pc/app/button/ghost-composition-api.vue +26 -0
  144. package/demos/pc/app/button/ghost.spec.ts +69 -0
  145. package/demos/pc/app/button/ghost.vue +32 -0
  146. package/demos/pc/app/button/icon-composition-api.vue +2 -0
  147. package/demos/pc/app/button/icon.vue +2 -0
  148. package/demos/pc/app/button/loading-composition-api.vue +2 -0
  149. package/demos/pc/app/button/loading.vue +2 -0
  150. package/demos/pc/app/button/size-composition-api.vue +2 -0
  151. package/demos/pc/app/button/size.vue +2 -0
  152. package/demos/pc/app/button/text-composition-api.vue +1 -1
  153. package/demos/pc/app/button/text.vue +1 -1
  154. package/demos/pc/app/button/webdoc/button.js +28 -1
  155. package/demos/pc/app/button-group/button-group-multiple-composition-api.vue +9 -9
  156. package/demos/pc/app/button-group/button-group-multiple.vue +9 -9
  157. package/demos/pc/app/button-group/change-event-composition-api.vue +1 -1
  158. package/demos/pc/app/button-group/change-event.vue +1 -1
  159. package/demos/pc/app/button-group/show-edit-composition-api.vue +1 -1
  160. package/demos/pc/app/button-group/show-edit.vue +1 -1
  161. package/demos/pc/app/button-group/webdoc/button-group.js +2 -3
  162. package/demos/pc/app/calendar/webdoc/calendar.js +1 -1
  163. package/demos/pc/app/calendar-view/webdoc/calendar-view.js +3 -2
  164. package/demos/pc/app/carousel/autoplay.spec.ts +1 -1
  165. package/demos/pc/app/carousel/basic-usage.spec.ts +12 -21
  166. package/demos/pc/app/carousel/card-mode.spec.ts +16 -37
  167. package/demos/pc/app/carousel/carousel-arrow-always.spec.ts +1 -1
  168. package/demos/pc/app/carousel/carousel-arrow-hover.spec.ts +1 -1
  169. package/demos/pc/app/carousel/carousel-arrow-never.spec.ts +1 -1
  170. package/demos/pc/app/carousel/carousel-events.spec.ts +5 -3
  171. package/demos/pc/app/carousel/close-loop.spec.ts +1 -1
  172. package/demos/pc/app/carousel/indicator-trigger.spec.ts +1 -1
  173. package/demos/pc/app/carousel/manual-play.spec.ts +1 -1
  174. package/demos/pc/app/carousel/play-interval.spec.ts +7 -11
  175. package/demos/pc/app/carousel/show-title.spec.ts +1 -1
  176. package/demos/pc/app/carousel/up-down-carousel.spec.ts +1 -1
  177. package/demos/pc/app/carousel/webdoc/carousel.js +83 -50
  178. package/demos/pc/app/cascader/auto-load-checkStrictly-composition-api.vue +2 -1
  179. package/demos/pc/app/cascader/auto-load-checkStrictly.vue +2 -1
  180. package/demos/pc/app/cascader/auto-load-composition-api.vue +3 -1
  181. package/demos/pc/app/cascader/auto-load.vue +2 -1
  182. package/demos/pc/app/cascader/events-composition-api.vue +1 -1
  183. package/demos/pc/app/cascader/expand-trigger-composition-api.vue +195 -2
  184. package/demos/pc/app/cascader/show-all-levels-composition-api.vue +197 -2
  185. package/demos/pc/app/cascader/webdoc/cascader.js +28 -14
  186. package/demos/pc/app/cascader-panel/basic-usage-composition-api.vue +3 -1
  187. package/demos/pc/app/cascader-panel/basic-usage.vue +2 -1
  188. package/demos/pc/app/cascader-panel/cascader-panel-props-composition-api.vue +3 -1
  189. package/demos/pc/app/cascader-panel/cascader-panel-props.vue +3 -1
  190. package/demos/pc/app/cascader-panel/change-composition-api.vue +1 -2
  191. package/demos/pc/app/cascader-panel/change.vue +1 -1
  192. package/demos/pc/app/cascader-panel/webdoc/cascader-panel.js +5 -5
  193. package/demos/pc/app/chart/webdoc/chart-attributes-demo.js +1 -1
  194. package/demos/pc/app/chart/webdoc/chart-autonavi-map.js +1 -1
  195. package/demos/pc/app/chart/webdoc/chart-baidu-map.js +1 -1
  196. package/demos/pc/app/chart/webdoc/chart-bar.js +1 -1
  197. package/demos/pc/app/chart/webdoc/chart-boxplot.js +1 -1
  198. package/demos/pc/app/chart/webdoc/chart-candle.js +1 -1
  199. package/demos/pc/app/chart/webdoc/chart-events.js +1 -1
  200. package/demos/pc/app/chart/webdoc/chart-funnel.js +1 -1
  201. package/demos/pc/app/chart/webdoc/chart-gauge.js +1 -1
  202. package/demos/pc/app/chart/webdoc/chart-graph.js +1 -1
  203. package/demos/pc/app/chart/webdoc/chart-heatmap.js +1 -1
  204. package/demos/pc/app/chart/webdoc/chart-histogram.js +1 -1
  205. package/demos/pc/app/chart/webdoc/chart-line.js +1 -1
  206. package/demos/pc/app/chart/webdoc/chart-liquidfill.js +1 -1
  207. package/demos/pc/app/chart/webdoc/chart-map.js +1 -1
  208. package/demos/pc/app/chart/webdoc/chart-pie.js +1 -1
  209. package/demos/pc/app/chart/webdoc/chart-question.js +1 -1
  210. package/demos/pc/app/chart/webdoc/chart-radar.js +1 -1
  211. package/demos/pc/app/chart/webdoc/chart-ring.js +1 -1
  212. package/demos/pc/app/chart/webdoc/chart-sankey.js +1 -1
  213. package/demos/pc/app/chart/webdoc/chart-scatter.js +1 -1
  214. package/demos/pc/app/chart/webdoc/chart-sunburst.js +1 -1
  215. package/demos/pc/app/chart/webdoc/chart-tree.js +1 -1
  216. package/demos/pc/app/chart/webdoc/chart-waterfall.js +1 -1
  217. package/demos/pc/app/chart/webdoc/chart-wordcloud.js +1 -1
  218. package/demos/pc/app/chart/webdoc/chart.js +1 -1
  219. package/demos/pc/app/color/webdoc/color.js +1 -1
  220. package/demos/pc/app/color-picker/alpha.spec.ts +14 -0
  221. package/demos/pc/app/color-picker/base.spec.ts +12 -0
  222. package/demos/pc/app/color-picker/default-visible.spec.ts +8 -0
  223. package/demos/pc/app/color-picker/dynamic-color-change.spec.ts +9 -0
  224. package/demos/pc/app/color-picker/event.spec.ts +10 -0
  225. package/demos/pc/app/color-picker/history.spec.ts +3 -3
  226. package/demos/pc/app/color-picker/predefine.spec.ts +2 -2
  227. package/demos/pc/app/color-picker/webdoc/color-picker.js +35 -27
  228. package/demos/pc/app/color-select-panel/alpha.spec.ts +9 -0
  229. package/demos/pc/app/color-select-panel/base.spec.ts +9 -0
  230. package/demos/pc/app/color-select-panel/event.spec.ts +12 -0
  231. package/demos/pc/app/color-select-panel/history.spec.ts +15 -0
  232. package/demos/pc/app/color-select-panel/predefine.spec.ts +25 -0
  233. package/demos/pc/app/color-select-panel/webdoc/color-select-panel.js +32 -29
  234. package/demos/pc/app/company/webdoc/company.js +1 -1
  235. package/demos/pc/app/config-provider/basic.spec.ts +9 -0
  236. package/demos/pc/app/config-provider/tag.spec.ts +12 -0
  237. package/demos/pc/app/config-provider/text-direct.spec.ts +11 -0
  238. package/demos/pc/app/config-provider/webdoc/config-provider.cn.md +2 -2
  239. package/demos/pc/app/config-provider/webdoc/config-provider.en.md +7 -0
  240. package/demos/pc/app/config-provider/webdoc/config-provider.js +28 -20
  241. package/demos/pc/app/container/basic-usage.spec.js +47 -2
  242. package/demos/pc/app/container/custom-with-height.spec.js +10 -2
  243. package/demos/pc/app/container/webdoc/container.js +1 -1
  244. package/demos/pc/app/count-api.js +34 -0
  245. package/demos/pc/app/country/webdoc/country.js +1 -1
  246. package/demos/pc/app/credit-card-form/webdoc/credit-card-form.js +1 -1
  247. package/demos/pc/app/crop/aspect-ratio-composition-api.vue +8 -0
  248. package/demos/pc/app/crop/aspect-ratio.spec.ts +14 -0
  249. package/demos/pc/app/crop/aspect-ratio.vue +9 -0
  250. package/demos/pc/app/crop/auto-crop-area.spec.ts +15 -0
  251. package/demos/pc/app/crop/basic-usage.spec.ts +14 -0
  252. package/demos/pc/app/crop/crop-meth.spec.ts +19 -0
  253. package/demos/pc/app/crop/drag-mode-composition-api.vue +1 -1
  254. package/demos/pc/app/crop/drag-mode.spec.ts +16 -0
  255. package/demos/pc/app/crop/drag-mode.vue +1 -1
  256. package/demos/pc/app/crop/event-about-crop-composition-api.vue +9 -0
  257. package/demos/pc/app/crop/event-about-crop.spec.ts +15 -0
  258. package/demos/pc/app/crop/event-about-crop.vue +8 -0
  259. package/demos/pc/app/crop/event-ready.spec.ts +14 -0
  260. package/demos/pc/app/crop/get-container-data.spec.ts +18 -0
  261. package/demos/pc/app/crop/get-crop-box-data.spec.ts +13 -0
  262. package/demos/pc/app/crop/get-cropped-canvas-composition-api.vue +7 -1
  263. package/demos/pc/app/crop/get-cropped-canvas.spec.ts +14 -0
  264. package/demos/pc/app/crop/get-cropped-canvas.vue +7 -1
  265. package/demos/pc/app/crop/get-data.spec.ts +17 -0
  266. package/demos/pc/app/crop/get-image-data-composition-api.vue +7 -0
  267. package/demos/pc/app/crop/get-image-data.spec.ts +14 -0
  268. package/demos/pc/app/crop/get-image-data.vue +7 -0
  269. package/demos/pc/app/crop/min-crop-box-width-height.spec.ts +11 -0
  270. package/demos/pc/app/crop/no-background.spec.ts +14 -0
  271. package/demos/pc/app/crop/no-guides.spec.ts +8 -0
  272. package/demos/pc/app/crop/no-modal.spec.ts +10 -0
  273. package/demos/pc/app/crop/replace-image.spec.ts +17 -0
  274. package/demos/pc/app/crop/view-mode-composition-api.vue +8 -2
  275. package/demos/pc/app/crop/view-mode.spec.ts +31 -0
  276. package/demos/pc/app/crop/view-mode.vue +10 -2
  277. package/demos/pc/app/crop/webdoc/crop.js +53 -49
  278. package/demos/pc/app/crop/wheel-zoom-ratio.spec.ts +15 -0
  279. package/demos/pc/app/crop/zoom-on-wheel.spec.ts +10 -0
  280. package/demos/pc/app/currency/webdoc/currency.js +1 -1
  281. package/demos/pc/app/date-picker/webdoc/date-picker.js +85 -54
  282. package/demos/pc/app/dept/webdoc/dept.js +1 -1
  283. package/demos/pc/app/detail-page/basic-usage-composition-api.vue +1 -1
  284. package/demos/pc/app/detail-page/basic-usage.vue +1 -1
  285. package/demos/pc/app/detail-page/custom-show-text-composition-api.vue +11 -12
  286. package/demos/pc/app/detail-page/custom-show-text.spec.ts +5 -7
  287. package/demos/pc/app/detail-page/custom-show-text.vue +11 -12
  288. package/demos/pc/app/detail-page/webdoc/detail-page.js +46 -22
  289. package/demos/pc/app/dialog-box/basic-usage.spec.ts +11 -38
  290. package/demos/pc/app/dialog-box/center.spec.ts +4 -14
  291. package/demos/pc/app/dialog-box/close-on-click-modal.spec.ts +3 -7
  292. package/demos/pc/app/dialog-box/close-on-press-escape.spec.ts +2 -5
  293. package/demos/pc/app/dialog-box/custom-dialog-content.spec.ts +6 -8
  294. package/demos/pc/app/dialog-box/custom-dialog-footer.spec.ts +3 -14
  295. package/demos/pc/app/dialog-box/custom-dialog-title.spec.ts +3 -12
  296. package/demos/pc/app/dialog-box/destroy-on-close.spec.ts +9 -7
  297. package/demos/pc/app/dialog-box/dialog-top-height.spec.ts +6 -12
  298. package/demos/pc/app/dialog-box/dialog-width.spec.ts +5 -16
  299. package/demos/pc/app/dialog-box/draggable.spec.ts +4 -5
  300. package/demos/pc/app/dialog-box/form-in-dialog.spec.ts +5 -4
  301. package/demos/pc/app/dialog-box/lock-scroll.spec.ts +7 -10
  302. package/demos/pc/app/dialog-box/open-close-events.spec.ts +0 -1
  303. package/demos/pc/app/dialog-box/right-dialog-composition-api.vue +1 -1
  304. package/demos/pc/app/dialog-box/right-dialog.vue +1 -1
  305. package/demos/pc/app/dialog-box/webdoc/dialog-box.js +82 -83
  306. package/demos/pc/app/dialog-select/{grid-multi-composition-api.vue → nest-grid-multi-composition-api.vue} +7 -4
  307. package/demos/pc/app/dialog-select/{grid-multi.vue → nest-grid-multi.vue} +4 -2
  308. package/demos/pc/app/dialog-select/{grid-radio-composition-api.vue → nest-grid-single-composition-api.vue} +6 -3
  309. package/demos/pc/app/dialog-select/{grid-radio.vue → nest-grid-single.vue} +4 -2
  310. package/demos/pc/app/dialog-select/{tree-multi-composition-api.vue → nest-tree-multi-composition-api.vue} +22 -9
  311. package/demos/pc/app/dialog-select/{tree-multi.vue → nest-tree-multi.vue} +19 -8
  312. package/demos/pc/app/dialog-select/{tree-radio-composition-api.vue → nest-tree-single-composition-api.vue} +19 -7
  313. package/demos/pc/app/dialog-select/{tree-radio.vue → nest-tree-single.vue} +18 -6
  314. package/demos/pc/app/dialog-select/webdoc/dialog-select.js +282 -183
  315. package/demos/pc/app/divider/basic-usage.spec.ts +7 -0
  316. package/demos/pc/app/divider/content-position.spec.ts +12 -0
  317. package/demos/pc/app/divider/custom-style.spec.ts +19 -0
  318. package/demos/pc/app/divider/direction.spec.ts +12 -0
  319. package/demos/pc/app/divider/webdoc/divider.js +25 -21
  320. package/demos/pc/app/drawer/basic-usage.vue +7 -0
  321. package/demos/pc/app/drawer/webdoc/drawer.js +1 -1
  322. package/demos/pc/app/drop-roles/webdoc/drop-roles.js +1 -1
  323. package/demos/pc/app/drop-times/webdoc/drop-times.js +1 -1
  324. package/demos/pc/app/dropdown/events-composition-api.vue +1 -1
  325. package/demos/pc/app/dropdown/events.spec.ts +1 -0
  326. package/demos/pc/app/dropdown/hide-on-click-composition-api.vue +1 -1
  327. package/demos/pc/app/dropdown/hide-on-click.vue +1 -1
  328. package/demos/pc/app/dropdown/inherit-width-composition-api.vue +2 -2
  329. package/demos/pc/app/dropdown/inherit-width.spec.ts +43 -0
  330. package/demos/pc/app/dropdown/inherit-width.vue +2 -2
  331. package/demos/pc/app/dropdown/multi-level-composition-api.vue +4 -8
  332. package/demos/pc/app/dropdown/multi-level.spec.ts +16 -9
  333. package/demos/pc/app/dropdown/multi-level.vue +3 -7
  334. package/demos/pc/app/dropdown/options.spec.ts +1 -1
  335. package/demos/pc/app/dropdown/show-icon-composition-api.vue +44 -21
  336. package/demos/pc/app/dropdown/show-icon.spec.ts +34 -0
  337. package/demos/pc/app/dropdown/show-icon.vue +42 -12
  338. package/demos/pc/app/dropdown/slots-composition-api.vue +1 -1
  339. package/demos/pc/app/dropdown/tip.spec.ts +49 -0
  340. package/demos/pc/app/dropdown/trigger-composition-api.vue +10 -10
  341. package/demos/pc/app/dropdown/visible-arrow.spec.ts +21 -0
  342. package/demos/pc/app/dropdown/webdoc/dropdown.cn.md +1 -1
  343. package/demos/pc/app/dropdown/webdoc/dropdown.en.md +1 -1
  344. package/demos/pc/app/dropdown/webdoc/dropdown.js +82 -44
  345. package/demos/pc/app/espace/webdoc/espace.js +1 -1
  346. package/demos/pc/app/fall-menu/custom-menuitem.spec.ts +6 -9
  347. package/demos/pc/app/fall-menu/custom-slider-icon.spec.ts +10 -21
  348. package/demos/pc/app/fall-menu/data-resource.spec.ts +6 -9
  349. package/demos/pc/app/file-upload/abort-quest.spec.ts +6 -5
  350. package/demos/pc/app/file-upload/accept-file-image.spec.ts +9 -4
  351. package/demos/pc/app/file-upload/custom-trigger.spec.ts +1 -1
  352. package/demos/pc/app/file-upload/disabled.spec.ts +4 -5
  353. package/demos/pc/app/file-upload/drag-upload.spec.ts +1 -1
  354. package/demos/pc/app/file-upload/file-picture-card.spec.ts +7 -6
  355. package/demos/pc/app/file-upload/form-validation.spec.ts +2 -2
  356. package/demos/pc/app/file-upload/image-size.spec.ts +2 -2
  357. package/demos/pc/app/file-upload/max-file-count.spec.ts +6 -6
  358. package/demos/pc/app/file-upload/paste-upload-composition-api.vue +2 -2
  359. package/demos/pc/app/file-upload/paste-upload.spec.ts +19 -2
  360. package/demos/pc/app/file-upload/picture-card.spec.ts +6 -5
  361. package/demos/pc/app/file-upload/picture-list.spec.ts +2 -3
  362. package/demos/pc/app/file-upload/prevent-delete-file.spec.ts +1 -1
  363. package/demos/pc/app/file-upload/prevent-upload-file.spec.ts +1 -1
  364. package/demos/pc/app/file-upload/upload-events.spec.ts +6 -4
  365. package/demos/pc/app/file-upload/upload-file-list-slot.spec.ts +18 -0
  366. package/demos/pc/app/file-upload/upload-file-list-thumb-composition-api.vue +4 -3
  367. package/demos/pc/app/file-upload/upload-file-list-thumb.spec.ts +2 -2
  368. package/demos/pc/app/file-upload/upload-file-list-thumb.vue +4 -3
  369. package/demos/pc/app/file-upload/upload-file-list.spec.ts +9 -9
  370. package/demos/pc/app/file-upload/upload-limit.spec.ts +5 -8
  371. package/demos/pc/app/file-upload/upload-request.spec.ts +1 -1
  372. package/demos/pc/app/file-upload/upload-user-head.spec.ts +1 -1
  373. package/demos/pc/app/file-upload/webdoc/file-upload.js +4 -4
  374. package/demos/pc/app/file-upload//346/265/213/350/257/225.txt +1 -0
  375. package/demos/pc/app/filter-panel/basic-usage-composition-api.vue +13 -2
  376. package/demos/pc/app/filter-panel/basic-usage.spec.ts +15 -6
  377. package/demos/pc/app/filter-panel/basic-usage.vue +15 -4
  378. package/demos/pc/app/filter-panel/event.spec.ts +12 -2
  379. package/demos/pc/app/filter-panel/manual-hide.spec.ts +2 -2
  380. package/demos/pc/app/filter-panel/popper-class-composition-api.vue +1 -0
  381. package/demos/pc/app/filter-panel/popper-class.spec.ts +2 -2
  382. package/demos/pc/app/filter-panel/popper-class.vue +1 -0
  383. package/demos/pc/app/filter-panel/tip.spec.ts +2 -2
  384. package/demos/pc/app/filter-panel/webdoc/filter-panel.cn.md +1 -1
  385. package/demos/pc/app/filter-panel/webdoc/filter-panel.en.md +3 -3
  386. package/demos/pc/app/filter-panel/webdoc/filter-panel.js +50 -56
  387. package/demos/pc/app/floatbar/webdoc/floatbar.js +1 -1
  388. package/demos/pc/app/flowchart/webdoc/flowchart.js +1 -1
  389. package/demos/pc/app/font/webdoc/font.js +1 -1
  390. package/demos/pc/app/form/custom-validation-rule-composition-api.vue +2 -14
  391. package/demos/pc/app/form/custom-validation-rule.vue +2 -8
  392. package/demos/pc/app/form/events-composition-api.vue +46 -0
  393. package/demos/pc/app/form/events.spec.ts +12 -0
  394. package/demos/pc/app/form/events.vue +52 -0
  395. package/demos/pc/app/form/form-validate-field-composition-api.vue +13 -14
  396. package/demos/pc/app/form/form-validate-field.spec.ts +9 -2
  397. package/demos/pc/app/form/form-validate-field.vue +10 -13
  398. package/demos/pc/app/form/form-validation-composition-api.vue +6 -1
  399. package/demos/pc/app/form/form-validation.vue +5 -1
  400. package/demos/pc/app/form/label-position-composition-api.vue +1 -1
  401. package/demos/pc/app/form/label-position.vue +1 -1
  402. package/demos/pc/app/form/size.spec.ts +26 -6
  403. package/demos/pc/app/form/webdoc/form.js +18 -8
  404. package/demos/pc/app/fullscreen/example-api.spec.ts +14 -29
  405. package/demos/pc/app/fullscreen/example-component.spec.ts +12 -29
  406. package/demos/pc/app/fullscreen/webdoc/fullscreen.js +4 -4
  407. package/demos/pc/app/grid/custom/column-width-composition-api.vue +1 -1
  408. package/demos/pc/app/grid/custom/column-width.vue +1 -1
  409. package/demos/pc/app/grid/custom/prsonalized-drag.vue +11 -1
  410. package/demos/pc/app/grid/custom-style/body-style-composition-api.vue +1 -1
  411. package/demos/pc/app/grid/custom-style/footer-style-composition-api.vue +69 -21
  412. package/demos/pc/app/grid/custom-style/footer-style.spec.js +1 -0
  413. package/demos/pc/app/grid/custom-style/footer-style.vue +18 -16
  414. package/demos/pc/app/grid/custom-style/header-style-composition-api.vue +18 -13
  415. package/demos/pc/app/grid/custom-style/header-style.spec.js +1 -0
  416. package/demos/pc/app/grid/custom-style/header-style.vue +18 -14
  417. package/demos/pc/app/grid/drag/row-drag-ctrl-composition-api.vue +4 -4
  418. package/demos/pc/app/grid/edit/trigger-mode-hm-editing-composition-api.vue +14 -6
  419. package/demos/pc/app/grid/edit/trigger-mode-hm-editing.spec.js +6 -1
  420. package/demos/pc/app/grid/edit/trigger-mode-hm-editing.vue +13 -5
  421. package/demos/pc/app/grid/event/cell-mouse-event-composition-api.vue +1 -1
  422. package/demos/pc/app/grid/event/context-menu-event-composition-api.vue +1 -0
  423. package/demos/pc/app/grid/event/edit-event-composition-api.vue +1 -1
  424. package/demos/pc/app/grid/expand/set-row-expansion-composition-api.vue +9 -4
  425. package/demos/pc/app/grid/highlight/highlight-hover-row-composition-api.vue +1 -1
  426. package/demos/pc/app/grid/highlight/highlight-hover-row.vue +1 -1
  427. package/demos/pc/app/grid/loading/{grid-loading-off-tip-composition-api.vue → grid-custom-loading-composition-api.vue} +29 -4
  428. package/demos/pc/app/grid/loading/grid-custom-loading.spec.js +7 -0
  429. package/demos/pc/app/grid/loading/{grid-loading-off-tip.vue → grid-custom-loading.vue} +27 -1
  430. package/demos/pc/app/grid/operation-column/clear-and-set-radio-row-composition-api.vue +5 -1
  431. package/demos/pc/app/grid/operation-column/selection-operation-composition-api.vue +32 -0
  432. package/demos/pc/app/grid/size/grid-size-composition-api.vue +17 -0
  433. package/demos/pc/app/grid/slot/editor-slot-composition-api.vue +13 -7
  434. package/demos/pc/app/grid/sort/combinations-sort-composition-api.vue +3 -3
  435. package/demos/pc/app/grid/sort/combinations-sort.spec.js +3 -0
  436. package/demos/pc/app/grid/sort/combinations-sort.vue +3 -3
  437. package/demos/pc/app/grid/toolbar/insert-remove-rows-composition-api.vue +1 -1
  438. package/demos/pc/app/grid/toolbar/insert-remove-rows.vue +1 -1
  439. package/demos/pc/app/grid/toolbar/refresh-grid-composition-api.vue +105 -0
  440. package/demos/pc/app/grid/tree-table/set-tree-expansion-composition-api.vue +4 -4
  441. package/demos/pc/app/grid/validation/before-submit-validation-composition-api.vue +36 -2
  442. package/demos/pc/app/grid/validation/before-submit-validation.spec.js +5 -2
  443. package/demos/pc/app/grid/validation/before-submit-validation.vue +36 -2
  444. package/demos/pc/app/grid/webdoc/grid-align.js +1 -1
  445. package/demos/pc/app/grid/webdoc/grid-appearance-settings.js +1 -1
  446. package/demos/pc/app/grid/webdoc/grid-context-menu.js +1 -1
  447. package/demos/pc/app/grid/webdoc/grid-custom-style.js +3 -3
  448. package/demos/pc/app/grid/webdoc/grid-custom.js +2 -2
  449. package/demos/pc/app/grid/webdoc/grid-data-source.js +1 -1
  450. package/demos/pc/app/grid/webdoc/grid-drag.js +1 -1
  451. package/demos/pc/app/grid/webdoc/grid-dynamically-columns.js +1 -1
  452. package/demos/pc/app/grid/webdoc/grid-edit.js +1 -1
  453. package/demos/pc/app/grid/webdoc/grid-editor.js +1 -1
  454. package/demos/pc/app/grid/webdoc/grid-empty.js +1 -1
  455. package/demos/pc/app/grid/webdoc/grid-event.js +1 -1
  456. package/demos/pc/app/grid/webdoc/grid-expand.js +1 -1
  457. package/demos/pc/app/grid/webdoc/grid-faq.js +1 -1
  458. package/demos/pc/app/grid/webdoc/grid-filter.js +1 -1
  459. package/demos/pc/app/grid/webdoc/grid-fixed.js +1 -1
  460. package/demos/pc/app/grid/webdoc/grid-footer.js +1 -1
  461. package/demos/pc/app/grid/webdoc/grid-header.js +1 -1
  462. package/demos/pc/app/grid/webdoc/grid-highlight.js +1 -1
  463. package/demos/pc/app/grid/webdoc/grid-import-export.js +1 -1
  464. package/demos/pc/app/grid/webdoc/grid-large-data.js +3 -2
  465. package/demos/pc/app/grid/webdoc/grid-loading.js +10 -6
  466. package/demos/pc/app/grid/webdoc/grid-mouse-keyboard.js +1 -1
  467. package/demos/pc/app/grid/webdoc/grid-operation-column.js +1 -1
  468. package/demos/pc/app/grid/webdoc/grid-pager.js +1 -1
  469. package/demos/pc/app/grid/webdoc/grid-renderer.js +1 -1
  470. package/demos/pc/app/grid/webdoc/grid-row-grouping.js +1 -1
  471. package/demos/pc/app/grid/webdoc/grid-serial-column.js +1 -1
  472. package/demos/pc/app/grid/webdoc/grid-size.js +3 -3
  473. package/demos/pc/app/grid/webdoc/grid-slot.js +1 -1
  474. package/demos/pc/app/grid/webdoc/grid-sort.js +1 -1
  475. package/demos/pc/app/grid/webdoc/grid-span.js +1 -1
  476. package/demos/pc/app/grid/webdoc/grid-tip.js +1 -1
  477. package/demos/pc/app/grid/webdoc/grid-toolbar.js +1 -1
  478. package/demos/pc/app/grid/webdoc/grid-tree-table.js +1 -1
  479. package/demos/pc/app/grid/webdoc/grid-validation.js +2 -2
  480. package/demos/pc/app/grid/webdoc/grid.js +34 -37
  481. package/demos/pc/app/guide/callback-composition-api.vue +2 -2
  482. package/demos/pc/app/guide/callback.vue +2 -2
  483. package/demos/pc/app/guide/highlight-box-composition-api.vue +9 -8
  484. package/demos/pc/app/guide/highlight-box.vue +8 -2
  485. package/demos/pc/app/guide/offset-composition-api.vue +7 -2
  486. package/demos/pc/app/guide/offset.vue +7 -2
  487. package/demos/pc/app/guide/size-composition-api.vue +3 -8
  488. package/demos/pc/app/guide/size.vue +3 -8
  489. package/demos/pc/app/guide/webdoc/guide.js +2 -2
  490. package/demos/pc/app/hrapprover/webdoc/hrapprover.js +1 -1
  491. package/demos/pc/app/image/basic-usage.spec.ts +9 -2
  492. package/demos/pc/app/image/events.spec.ts +3 -1
  493. package/demos/pc/app/image/lazy-composition-api.vue +2 -2
  494. package/demos/pc/app/image/lazy.spec.ts +7 -4
  495. package/demos/pc/app/image/lazy.vue +2 -2
  496. package/demos/pc/app/image/preview-in-dialog.spec.ts +15 -1
  497. package/demos/pc/app/image/preview.spec.ts +28 -13
  498. package/demos/pc/app/image/slot.spec.ts +3 -0
  499. package/demos/pc/app/image/webdoc/image.js +2 -2
  500. package/demos/pc/app/infinite-scroll/basic-usage.spec.ts +11 -0
  501. package/demos/pc/app/infinite-scroll/disabled.spec.ts +10 -0
  502. package/demos/pc/app/infinite-scroll/webdoc/infinite-scroll.cn.md +1 -1
  503. package/demos/pc/app/infinite-scroll/webdoc/infinite-scroll.js +18 -18
  504. package/demos/pc/app/input/webdoc/input.js +11 -11
  505. package/demos/pc/app/layout/webdoc/layout.js +1 -1
  506. package/demos/pc/app/link/basic-usage-composition-api.vue +1 -1
  507. package/demos/pc/app/link/basic-usage.spec.ts +1 -1
  508. package/demos/pc/app/link/basic-usage.vue +1 -1
  509. package/demos/pc/app/link/config-href.spec.ts +2 -2
  510. package/demos/pc/app/link/custom-icon.spec.ts +5 -5
  511. package/demos/pc/app/link/dynamic-disable.spec.ts +11 -11
  512. package/demos/pc/app/link/focus-no-underline.spec.ts +3 -3
  513. package/demos/pc/app/link/link-style-composition-api.vue +6 -6
  514. package/demos/pc/app/link/link-style.spec.ts +36 -7
  515. package/demos/pc/app/link/link-style.vue +6 -6
  516. package/demos/pc/app/link/webdoc/link.js +21 -23
  517. package/demos/pc/app/link-menu/custom-foot.spec.ts +1 -1
  518. package/demos/pc/app/link-menu/custom-icon.spec.ts +2 -17
  519. package/demos/pc/app/link-menu/data-resource.spec.ts +9 -18
  520. package/demos/pc/app/link-menu/get-menu-data-sync.spec.ts +1 -1
  521. package/demos/pc/app/link-menu/menu-items.spec.ts +1 -1
  522. package/demos/pc/app/link-menu/webdoc/link-menu.js +30 -50
  523. package/demos/pc/app/loading/webdoc/loading.js +6 -9
  524. package/demos/pc/app/locales/webdoc/locales.js +1 -1
  525. package/demos/pc/app/logon-user/webdoc/logon-user.js +1 -1
  526. package/demos/pc/app/logout/webdoc/logout.js +1 -1
  527. package/demos/pc/app/milestone/basic-usage-composition-api.vue +6 -6
  528. package/demos/pc/app/milestone/basic-usage.spec.ts +1 -1
  529. package/demos/pc/app/milestone/basic-usage.vue +6 -6
  530. package/demos/pc/app/milestone/line-style-composition-api.vue +6 -6
  531. package/demos/pc/app/milestone/line-style.vue +6 -6
  532. package/demos/pc/app/milestone/show-number-composition-api.vue +9 -7
  533. package/demos/pc/app/milestone/show-number.spec.ts +7 -7
  534. package/demos/pc/app/milestone/show-number.vue +9 -7
  535. package/demos/pc/app/milestone/solid-style-composition-api.vue +7 -7
  536. package/demos/pc/app/milestone/solid-style.spec.ts +7 -7
  537. package/demos/pc/app/milestone/solid-style.vue +7 -7
  538. package/demos/pc/app/milestone/webdoc/milestone.js +31 -12
  539. package/demos/pc/app/modal/footer-btn-props-composition-api.vue +1 -1
  540. package/demos/pc/app/modal/min-height.spec.ts +2 -3
  541. package/demos/pc/app/modal/min-width.spec.ts +2 -2
  542. package/demos/pc/app/modal/resize.spec.ts +1 -1
  543. package/demos/pc/app/modal/webdoc/modal.js +80 -76
  544. package/demos/pc/app/nav-menu/basic-usage.spec.ts +2 -2
  545. package/demos/pc/app/nav-menu/before-skip-prevent.spec.ts +1 -1
  546. package/demos/pc/app/nav-menu/before-skip.spec.ts +1 -1
  547. package/demos/pc/app/nav-menu/custom-service.spec.ts +1 -2
  548. package/demos/pc/app/nav-menu/overflow.spec.ts +2 -2
  549. package/demos/pc/app/nav-menu/slot-logo.spec.ts +1 -1
  550. package/demos/pc/app/nav-menu/slot-toolbar.spec.ts +2 -2
  551. package/demos/pc/app/numeric/about-step.spec.ts +2 -2
  552. package/demos/pc/app/numeric/allow-empty.spec.ts +5 -7
  553. package/demos/pc/app/numeric/basic-usage.spec.ts +2 -2
  554. package/demos/pc/app/numeric/blur-event.spec.ts +1 -1
  555. package/demos/pc/app/numeric/controls.spec.ts +5 -21
  556. package/demos/pc/app/numeric/dynamic-disabled.spec.ts +1 -1
  557. package/demos/pc/app/numeric/max-min.spec.ts +3 -3
  558. package/demos/pc/app/numeric/mouse-wheel.spec.ts +1 -1
  559. package/demos/pc/app/numeric/numeric-size.spec.ts +3 -3
  560. package/demos/pc/app/numeric/unit.spec.ts +3 -5
  561. package/demos/pc/app/numeric/webdoc/numeric.js +33 -32
  562. package/demos/pc/app/pager/webdoc/pager.js +2 -2
  563. package/demos/pc/app/pop-upload/basic-usage-composition-api.vue +4 -1
  564. package/demos/pc/app/pop-upload/basic-usage.spec.ts +25 -14
  565. package/demos/pc/app/pop-upload/basic-usage.vue +5 -2
  566. package/demos/pc/app/pop-upload/before-upload.spec.ts +6 -4
  567. package/demos/pc/app/pop-upload/custom-request-headers-composition-api.vue +1 -1
  568. package/demos/pc/app/pop-upload/custom-request-headers.spec.ts +2 -2
  569. package/demos/pc/app/pop-upload/custom-request-headers.vue +1 -1
  570. package/demos/pc/app/pop-upload/file-limit-composition-api.vue +1 -1
  571. package/demos/pc/app/pop-upload/file-limit.spec.ts +9 -11
  572. package/demos/pc/app/pop-upload/file-limit.vue +1 -1
  573. package/demos/pc/app/pop-upload/file-type-composition-api.vue +6 -1
  574. package/demos/pc/app/pop-upload/file-type.spec.ts +6 -3
  575. package/demos/pc/app/pop-upload/file-type.vue +6 -1
  576. package/demos/pc/app/pop-upload/fill-button-text.spec.ts +16 -36
  577. package/demos/pc/app/pop-upload/http-request.spec.ts +3 -5
  578. package/demos/pc/app/pop-upload/prevent-delete-file.spec.ts +2 -2
  579. package/demos/pc/app/pop-upload/size.spec.ts +1 -1
  580. package/demos/pc/app/pop-upload/upload-events-composition-api.vue +39 -0
  581. package/demos/pc/app/pop-upload/upload-events.spec.ts +39 -0
  582. package/demos/pc/app/pop-upload/upload-events.vue +44 -0
  583. package/demos/pc/app/pop-upload/webdoc/pop-upload.cn.md +1 -1
  584. package/demos/pc/app/pop-upload/webdoc/pop-upload.en.md +3 -3
  585. package/demos/pc/app/pop-upload/webdoc/pop-upload.js +192 -153
  586. package/demos/pc/app/popover/basic-usage-composition-api.vue +1 -1
  587. package/demos/pc/app/popover/basic-usage.spec.js +4 -1
  588. package/demos/pc/app/popover/basic-usage.vue +1 -1
  589. package/demos/pc/app/popover/content.spec.js +7 -3
  590. package/demos/pc/app/popover/custom-popper.spec.js +25 -4
  591. package/demos/pc/app/popover/disabled-composition-api.vue +2 -1
  592. package/demos/pc/app/popover/events-composition-api.vue +2 -2
  593. package/demos/pc/app/popover/events.spec.js +4 -0
  594. package/demos/pc/app/popover/offset-composition-api.vue +6 -6
  595. package/demos/pc/app/popover/offset.spec.js +31 -3
  596. package/demos/pc/app/popover/offset.vue +6 -6
  597. package/demos/pc/app/popover/trigger.spec.js +3 -3
  598. package/demos/pc/app/popover/webdoc/popover.js +11 -3
  599. package/demos/pc/app/qr-code/basic-usage.spec.ts +9 -0
  600. package/demos/pc/app/qr-code/icon.spec.ts +11 -0
  601. package/demos/pc/app/qr-code/level.spec.ts +15 -0
  602. package/demos/pc/app/qr-code/style.spec.ts +9 -0
  603. package/demos/pc/app/qr-code/webdoc/qr-code.js +13 -11
  604. package/demos/pc/app/rich-text-editor/webdoc/rich-text-editor.js +1 -1
  605. package/demos/pc/app/roles/webdoc/roles.js +1 -1
  606. package/demos/pc/app/scroll-text/basic-usage-composition-api.vue +1 -1
  607. package/demos/pc/app/scroll-text/basic-usage.spec.ts +1 -1
  608. package/demos/pc/app/scroll-text/basic-usage.vue +1 -1
  609. package/demos/pc/app/scroll-text/custom-text-style-composition-api.vue +1 -1
  610. package/demos/pc/app/scroll-text/custom-text-style.vue +1 -1
  611. package/demos/pc/app/scroll-text/hover-stop-composition-api.vue +1 -1
  612. package/demos/pc/app/scroll-text/hover-stop.spec.ts +1 -1
  613. package/demos/pc/app/scroll-text/hover-stop.vue +1 -1
  614. package/demos/pc/app/scroll-text/scroll-direction-composition-api.vue +1 -1
  615. package/demos/pc/app/scroll-text/scroll-direction.spec.ts +4 -4
  616. package/demos/pc/app/scroll-text/scroll-direction.vue +1 -1
  617. package/demos/pc/app/scroll-text/scroll-time-composition-api.vue +1 -1
  618. package/demos/pc/app/scroll-text/scroll-time.spec.ts +1 -1
  619. package/demos/pc/app/scroll-text/scroll-time.vue +1 -1
  620. package/demos/pc/app/scroll-text/slots-composition-api.vue +1 -1
  621. package/demos/pc/app/scroll-text/slots.vue +1 -1
  622. package/demos/pc/app/scroll-text/webdoc/scroll-text.js +27 -33
  623. package/demos/pc/app/search/basic-usage.spec.ts +1 -1
  624. package/demos/pc/app/search/clearable.spec.ts +1 -1
  625. package/demos/pc/app/search/events-composition-api.vue +6 -0
  626. package/demos/pc/app/search/events.spec.ts +9 -6
  627. package/demos/pc/app/search/events.vue +5 -0
  628. package/demos/pc/app/search/webdoc/search.js +14 -4
  629. package/demos/pc/app/select/clear-no-match-value-composition-api.vue +6 -2
  630. package/demos/pc/app/select/clear-no-match-value.spec.ts +22 -0
  631. package/demos/pc/app/select/clear-no-match-value.vue +6 -2
  632. package/demos/pc/app/select/copy-multi-composition-api.vue +3 -3
  633. package/demos/pc/app/select/copy-multi.spec.ts +3 -1
  634. package/demos/pc/app/select/copy-single-composition-api.vue +3 -3
  635. package/demos/pc/app/select/copy-single.spec.ts +16 -17
  636. package/demos/pc/app/select/copy-single.vue +1 -1
  637. package/demos/pc/app/select/events-composition-api.vue +1 -1
  638. package/demos/pc/app/select/filter-method-composition-api.vue +9 -2
  639. package/demos/pc/app/select/filter-method.spec.ts +3 -3
  640. package/demos/pc/app/select/is-drop-inherit-width.spec.ts +3 -4
  641. package/demos/pc/app/select/manual-focus-blur-composition-api.vue +1 -1
  642. package/demos/pc/app/select/manual-focus-blur.spec.ts +5 -4
  643. package/demos/pc/app/select/nest-grid-composition-api.vue +3 -3
  644. package/demos/pc/app/select/nest-tree-composition-api.vue +32 -2
  645. package/demos/pc/app/select/optimization.spec.ts +7 -8
  646. package/demos/pc/app/select/tag-type.spec.ts +12 -0
  647. package/demos/pc/app/select/webdoc/select.cn.md +1 -1
  648. package/demos/pc/app/select/webdoc/select.en.md +1 -1
  649. package/demos/pc/app/select/webdoc/select.js +19 -19
  650. package/demos/pc/app/slide-bar/basic-usage.spec.ts +3 -3
  651. package/demos/pc/app/slide-bar/custom-content.spec.ts +1 -2
  652. package/demos/pc/app/slide-bar/custom-tag.spec.ts +1 -2
  653. package/demos/pc/app/slide-bar/slide-bar-events.spec.ts +1 -2
  654. package/demos/pc/app/slide-bar/webdoc/slide-bar.js +18 -12
  655. package/demos/pc/app/slide-bar/wheel-blocks.spec.ts +7 -8
  656. package/demos/pc/app/slider/webdoc/slider.js +23 -18
  657. package/demos/pc/app/split/webdoc/split.js +1 -1
  658. package/demos/pc/app/steps/advanced-steps.spec.ts +3 -2
  659. package/demos/pc/app/steps/click-composition-api.vue +0 -1
  660. package/demos/pc/app/steps/click.spec.ts +1 -12
  661. package/demos/pc/app/steps/custom-steps-item.spec.ts +1 -1
  662. package/demos/pc/app/steps/node-status-composition-api.vue +1 -1
  663. package/demos/pc/app/steps/node-status.spec.ts +1 -1
  664. package/demos/pc/app/steps/node-status.vue +1 -1
  665. package/demos/pc/app/steps/normal-steps-composition-api.vue +1 -1
  666. package/demos/pc/app/steps/normal-steps.spec.ts +2 -2
  667. package/demos/pc/app/steps/normal-steps.vue +1 -1
  668. package/demos/pc/app/steps/only-number-composition-api.vue +1 -1
  669. package/demos/pc/app/steps/only-number.spec.ts +1 -1
  670. package/demos/pc/app/steps/only-number.vue +1 -1
  671. package/demos/pc/app/steps/show-divider-composition-api.vue +1 -1
  672. package/demos/pc/app/steps/show-divider.spec.ts +1 -1
  673. package/demos/pc/app/steps/show-divider.vue +1 -1
  674. package/demos/pc/app/steps/size-composition-api.vue +6 -9
  675. package/demos/pc/app/steps/size.spec.ts +2 -4
  676. package/demos/pc/app/steps/size.vue +4 -4
  677. package/demos/pc/app/steps/slot-active-node-desc-composition-api.vue +3 -1
  678. package/demos/pc/app/steps/slot-active-node-desc.spec.ts +1 -1
  679. package/demos/pc/app/steps/slot-active-node-desc.vue +3 -1
  680. package/demos/pc/app/steps/slot-description-composition-api.vue +6 -6
  681. package/demos/pc/app/steps/slot-description.spec.ts +1 -1
  682. package/demos/pc/app/steps/slot-description.vue +5 -5
  683. package/demos/pc/app/steps/slot-item-composition-api.vue +0 -1
  684. package/demos/pc/app/steps/slot-item.spec.ts +2 -2
  685. package/demos/pc/app/steps/slot-item.vue +4 -5
  686. package/demos/pc/app/steps/space.spec.ts +1 -1
  687. package/demos/pc/app/steps/text-position-composition-api.vue +1 -1
  688. package/demos/pc/app/steps/text-position.spec.ts +2 -4
  689. package/demos/pc/app/steps/text-position.vue +1 -1
  690. package/demos/pc/app/steps/vertical-steps.spec.ts +13 -19
  691. package/demos/pc/app/steps/webdoc/steps.js +18 -17
  692. package/demos/pc/app/tabs/basic-usage-composition-api.vue +5 -5
  693. package/demos/pc/app/tabs/basic-usage.spec.ts +6 -0
  694. package/demos/pc/app/tabs/basic-usage.vue +5 -5
  695. package/demos/pc/app/tabs/before-leave-composition-api.vue +3 -3
  696. package/demos/pc/app/tabs/before-leave.vue +3 -3
  697. package/demos/pc/app/tabs/custom-more-icon-composition-api.vue +1 -1
  698. package/demos/pc/app/tabs/custom-more-icon.vue +1 -1
  699. package/demos/pc/app/tabs/custom-tab-title-composition-api.vue +3 -3
  700. package/demos/pc/app/tabs/custom-tab-title.vue +3 -3
  701. package/demos/pc/app/tabs/lazy-composition-api.vue +5 -3
  702. package/demos/pc/app/tabs/lazy.vue +5 -3
  703. package/demos/pc/app/tabs/position-composition-api.vue +22 -17
  704. package/demos/pc/app/tabs/position.spec.ts +4 -4
  705. package/demos/pc/app/tabs/position.vue +19 -18
  706. package/demos/pc/app/tabs/stretch-wh-composition-api.vue +3 -3
  707. package/demos/pc/app/tabs/stretch-wh.vue +3 -3
  708. package/demos/pc/app/tabs/tab-style-bordercard-composition-api.vue +10 -10
  709. package/demos/pc/app/tabs/tab-style-bordercard.vue +10 -10
  710. package/demos/pc/app/tabs/tab-style-card-composition-api.vue +1 -1
  711. package/demos/pc/app/tabs/tab-style-card.vue +1 -1
  712. package/demos/pc/app/tabs/tabs-draggable-composition-api.vue +1 -1
  713. package/demos/pc/app/tabs/tabs-draggable.spec.ts +1 -7
  714. package/demos/pc/app/tabs/tabs-draggable.vue +1 -1
  715. package/demos/pc/app/tabs/tabs-events-click-composition-api.vue +3 -3
  716. package/demos/pc/app/tabs/tabs-events-click.vue +3 -3
  717. package/demos/pc/app/tabs/tabs-events-close-composition-api.vue +12 -5
  718. package/demos/pc/app/tabs/tabs-events-close.vue +12 -5
  719. package/demos/pc/app/tabs/tabs-events-edit-composition-api.vue +4 -4
  720. package/demos/pc/app/tabs/tabs-events-edit.vue +4 -4
  721. package/demos/pc/app/tabs/tabs-separator-composition-api.vue +7 -7
  722. package/demos/pc/app/tabs/tabs-separator.vue +7 -7
  723. package/demos/pc/app/tabs/tooltip-composition-api.vue +17 -13
  724. package/demos/pc/app/tabs/tooltip.vue +17 -13
  725. package/demos/pc/app/tabs/webdoc/tabs.js +114 -39
  726. package/demos/pc/app/tabs/with-add-composition-api.vue +1 -1
  727. package/demos/pc/app/tabs/with-add.vue +1 -1
  728. package/demos/pc/app/tag/{before-delete-composition-api.vue → delete-composition-api.vue} +6 -16
  729. package/demos/pc/app/tag/delete.spec.ts +19 -0
  730. package/demos/pc/app/tag/{closable.vue → delete.vue} +22 -5
  731. package/demos/pc/app/tag/webdoc/tag.js +15 -7
  732. package/demos/pc/app/text-popup/basic-usage.spec.ts +1 -1
  733. package/demos/pc/app/text-popup/clear-value.spec.ts +1 -1
  734. package/demos/pc/app/text-popup/placeholder.spec.ts +1 -1
  735. package/demos/pc/app/text-popup/readonly.spec.ts +1 -1
  736. package/demos/pc/app/text-popup/separtor.spec.ts +1 -1
  737. package/demos/pc/app/text-popup/value.spec.ts +1 -1
  738. package/demos/pc/app/text-popup/webdoc/text-popup.js +11 -11
  739. package/demos/pc/app/text-popup/width.spec.ts +1 -1
  740. package/demos/pc/app/time-line/basic-usage.spec.ts +1 -1
  741. package/demos/pc/app/time-line/custom-field.spec.ts +3 -3
  742. package/demos/pc/app/time-line/custom-horizontal-timeline.spec.ts +3 -3
  743. package/demos/pc/app/time-line/custom-vertical-timeline.spec.ts +6 -6
  744. package/demos/pc/app/time-line/set-node-width.spec.ts +6 -8
  745. package/demos/pc/app/time-line/set-start-value.spec.ts +4 -4
  746. package/demos/pc/app/time-line/shape.spec.ts +3 -3
  747. package/demos/pc/app/time-line/status.spec.ts +1 -1
  748. package/demos/pc/app/time-line/timeline-item.spec.ts +1 -1
  749. package/demos/pc/app/time-line/vertical-timeline.spec.ts +9 -5
  750. package/demos/pc/app/time-line/webdoc/time-line.js +14 -14
  751. package/demos/pc/app/time-picker/basic-usage.spec.ts +12 -33
  752. package/demos/pc/app/time-picker/clearable.spec.ts +23 -8
  753. package/demos/pc/app/time-picker/default-value.spec.ts +24 -9
  754. package/demos/pc/app/time-picker/disabled.spec.ts +10 -4
  755. package/demos/pc/app/time-picker/editable.spec.ts +3 -4
  756. package/demos/pc/app/time-picker/event-composition-api.vue +1 -1
  757. package/demos/pc/app/time-picker/event.spec.ts +6 -6
  758. package/demos/pc/app/time-picker/event.vue +1 -1
  759. package/demos/pc/app/time-picker/format.spec.ts +32 -16
  760. package/demos/pc/app/time-picker/is-range.spec.ts +8 -32
  761. package/demos/pc/app/time-picker/name.spec.ts +1 -3
  762. package/demos/pc/app/time-picker/placeholder.spec.ts +4 -0
  763. package/demos/pc/app/time-picker/popper-class.spec.ts +4 -4
  764. package/demos/pc/app/time-picker/size.spec.ts +22 -3
  765. package/demos/pc/app/time-picker/step.spec.ts +5 -0
  766. package/demos/pc/app/time-picker/suffix-icon.spec.ts +2 -8
  767. package/demos/pc/app/time-picker/webdoc/time-picker.js +52 -31
  768. package/demos/pc/app/time-select/webdoc/time-select.js +1 -1
  769. package/demos/pc/app/toggle-menu/automatic-filtering.spec.ts +4 -13
  770. package/demos/pc/app/toggle-menu/basic-usage.spec.ts +9 -40
  771. package/demos/pc/app/toggle-menu/custom-icon.spec.ts +2 -3
  772. package/demos/pc/app/toggle-menu/default-expand-all.spec.ts +5 -7
  773. package/demos/pc/app/toggle-menu/drag-events.spec.ts +9 -21
  774. package/demos/pc/app/toggle-menu/draggable.spec.ts +17 -13
  775. package/demos/pc/app/toggle-menu/node-click.spec.ts +2 -3
  776. package/demos/pc/app/toggle-menu/node-collapse.spec.ts +2 -3
  777. package/demos/pc/app/toggle-menu/node-drop.spec.ts +3 -4
  778. package/demos/pc/app/toggle-menu/node-expand.spec.ts +2 -3
  779. package/demos/pc/app/toggle-menu/show-filter.spec.ts +1 -2
  780. package/demos/pc/app/toggle-menu/slot-node.spec.ts +2 -3
  781. package/demos/pc/app/toggle-menu/toggle-props.spec.ts +2 -9
  782. package/demos/pc/app/toggle-menu/webdoc/toggle-menu.js +64 -55
  783. package/demos/pc/app/tooltip/basic-usage.spec.js +6 -4
  784. package/demos/pc/app/tooltip/content.spec.js +16 -2
  785. package/demos/pc/app/tooltip/control.spec.js +19 -1
  786. package/demos/pc/app/tooltip/custom-popper.spec.js +32 -3
  787. package/demos/pc/app/tooltip/delay.spec.js +23 -1
  788. package/demos/pc/app/tooltip/offset.spec.js +23 -0
  789. package/demos/pc/app/tooltip/popper-options.spec.js +4 -1
  790. package/demos/pc/app/tooltip/theme.spec.js +1 -2
  791. package/demos/pc/app/tooltip/transition.spec.js +1 -0
  792. package/demos/pc/app/transfer/basic-usage.spec.ts +46 -64
  793. package/demos/pc/app/transfer/before-transfer.spec.ts +28 -0
  794. package/demos/pc/app/transfer/custom-btns.spec.ts +11 -19
  795. package/demos/pc/app/transfer/custom-filter-composition-api.vue +17 -8
  796. package/demos/pc/app/transfer/custom-filter.spec.ts +6 -4
  797. package/demos/pc/app/transfer/custom-filter.vue +18 -9
  798. package/demos/pc/app/transfer/custom-footer.spec.ts +1 -2
  799. package/demos/pc/app/transfer/custom-render-composition-api.vue +1 -1
  800. package/demos/pc/app/transfer/custom-render.spec.ts +8 -5
  801. package/demos/pc/app/transfer/custom-render.vue +1 -1
  802. package/demos/pc/app/transfer/custom-titles.spec.ts +12 -3
  803. package/demos/pc/app/transfer/default-checked.spec.ts +5 -9
  804. package/demos/pc/app/transfer/drop-config.spec.ts +21 -16
  805. package/demos/pc/app/transfer/nested-table.spec.ts +12 -35
  806. package/demos/pc/app/transfer/nested-tree.spec.ts +3 -30
  807. package/demos/pc/app/transfer/target-order.spec.ts +2 -1
  808. package/demos/pc/app/transfer/transfer-events.spec.ts +2 -1
  809. package/demos/pc/app/transfer/webdoc/transfer.js +8 -15
  810. package/demos/pc/app/tree/basic-usage.spec.ts +26 -16
  811. package/demos/pc/app/tree/check-op.spec.ts +37 -19
  812. package/demos/pc/app/tree/checkbox.spec.ts +23 -18
  813. package/demos/pc/app/tree/contextmenu.spec.ts +9 -8
  814. package/demos/pc/app/tree/drag.spec.ts +10 -18
  815. package/demos/pc/app/tree/edit.spec.ts +24 -103
  816. package/demos/pc/app/tree/expand-control.spec.ts +22 -18
  817. package/demos/pc/app/tree/filter-view-composition-api.vue +4 -2
  818. package/demos/pc/app/tree/filter-view.spec.ts +16 -18
  819. package/demos/pc/app/tree/filter-view.vue +2 -1
  820. package/demos/pc/app/tree/icons-composition-api.vue +4 -4
  821. package/demos/pc/app/tree/icons.spec.ts +20 -18
  822. package/demos/pc/app/tree/icons.vue +4 -4
  823. package/demos/pc/app/tree/lazy-composition-api.vue +5 -3
  824. package/demos/pc/app/tree/lazy.spec.ts +10 -18
  825. package/demos/pc/app/tree/lazy.vue +5 -2
  826. package/demos/pc/app/tree/node-hl.spec.ts +27 -18
  827. package/demos/pc/app/tree/node-op-composition-api.vue +12 -6
  828. package/demos/pc/app/tree/node-op.spec.ts +32 -19
  829. package/demos/pc/app/tree/other.spec.ts +5 -18
  830. package/demos/pc/app/tree/props.spec.ts +7 -18
  831. package/demos/pc/app/tree/radio-composition-api.vue +7 -5
  832. package/demos/pc/app/tree/radio.spec.ts +10 -18
  833. package/demos/pc/app/tree/radio.vue +3 -3
  834. package/demos/pc/app/tree/slot.spec.ts +12 -18
  835. package/demos/pc/app/tree/webdoc/tree.js +15 -15
  836. package/demos/pc/app/tree-menu/accordion.spec.ts +3 -1
  837. package/demos/pc/app/tree-menu/basic-usage.spec.ts +4 -2
  838. package/demos/pc/app/tree-menu/current-node-composition-api.vue +7 -3
  839. package/demos/pc/app/tree-menu/current-node.spec.ts +20 -13
  840. package/demos/pc/app/tree-menu/current-node.vue +8 -6
  841. package/demos/pc/app/tree-menu/custom-icon.spec.ts +12 -2
  842. package/demos/pc/app/tree-menu/data-resource.spec.ts +33 -21
  843. package/demos/pc/app/tree-menu/default-expand-all.spec.ts +25 -8
  844. package/demos/pc/app/tree-menu/default-expanded-keys-highlight.spec.ts +6 -4
  845. package/demos/pc/app/tree-menu/default-expanded-keys.spec.ts +11 -7
  846. package/demos/pc/app/tree-menu/draggable.spec.ts +11 -4
  847. package/demos/pc/app/tree-menu/empty-text.spec.ts +1 -1
  848. package/demos/pc/app/tree-menu/event-allow-draggable.spec.ts +4 -1
  849. package/demos/pc/app/tree-menu/events.spec.ts +56 -28
  850. package/demos/pc/app/tree-menu/expand-on-click-node.spec.ts +32 -3
  851. package/demos/pc/app/tree-menu/filter-node-method.spec.ts +9 -6
  852. package/demos/pc/app/tree-menu/filter-node-method.vue +0 -4
  853. package/demos/pc/app/tree-menu/indent.spec.ts +9 -4
  854. package/demos/pc/app/tree-menu/lazy-load.spec.ts +8 -4
  855. package/demos/pc/app/tree-menu/menu-collapsible.spec.ts +5 -2
  856. package/demos/pc/app/tree-menu/show-checkbox.spec.ts +79 -41
  857. package/demos/pc/app/tree-menu/text-ellipsis.spec.ts +7 -4
  858. package/demos/pc/app/tree-menu/tree-menu-slot.spec.ts +4 -3
  859. package/demos/pc/app/tree-menu/webdoc/tree-menu.cn.md +1 -1
  860. package/demos/pc/app/tree-menu/webdoc/tree-menu.en.md +1 -1
  861. package/demos/pc/app/tree-menu/webdoc/tree-menu.js +3 -3
  862. package/demos/pc/app/user/webdoc/user.js +1 -1
  863. package/demos/pc/app/user-account/webdoc/user-account.js +1 -1
  864. package/demos/pc/app/user-contact/data-source.spec.ts +2 -5
  865. package/demos/pc/app/user-contact/webdoc/user-contact.js +21 -13
  866. package/demos/pc/app/user-head/icon-user-head.spec.ts +3 -3
  867. package/demos/pc/app/user-head/image-user-head.spec.ts +2 -2
  868. package/demos/pc/app/user-head/webdoc/user-head.js +44 -28
  869. package/demos/pc/app/user-link/webdoc/user-link.js +1 -1
  870. package/demos/pc/app/watermark/basic-usage.spec.ts +9 -0
  871. package/demos/pc/app/watermark/image.spec.ts +9 -0
  872. package/demos/pc/app/watermark/webdoc/watermark.js +11 -11
  873. package/demos/pc/menus.js +9 -1
  874. package/demos/pc/webdoc/import-components.md +2 -4
  875. package/demos/pc/webdoc/installation-en.md +6 -1
  876. package/demos/pc/webdoc/installation.md +4 -0
  877. package/demos/pc/webdoc/theme-en.md +8 -4
  878. package/demos/pc/webdoc/theme.md +10 -3
  879. package/package.json +5 -5
  880. package/playground.html +1 -1
  881. package/src/App.vue +0 -2
  882. package/src/i18n/index.js +3 -3
  883. package/src/main.js +2 -7
  884. package/src/menus.jsx +1 -1
  885. package/src/tools/useApiMode.js +2 -2
  886. package/src/tools/utils.js +2 -2
  887. package/src/views/components/VersionTip.vue +14 -8
  888. package/src/views/components/components.vue +38 -39
  889. package/src/views/components/demo.vue +11 -11
  890. package/src/views/docs/docs.vue +2 -3
  891. package/src/views/layout/layout.vue +17 -19
  892. package/src/views/overview.vue +16 -13
  893. package/vite.config.ts +10 -4
  894. package/demos/mobile/app/input/autofocus.vue +0 -37
  895. package/demos/mobile/app/input/autosize.vue +0 -41
  896. package/demos/mobile/app/input/blur-focus.vue +0 -40
  897. package/demos/mobile/app/input/cols-rows.vue +0 -28
  898. package/demos/mobile/app/input/form.vue +0 -45
  899. package/demos/mobile/app/input/input-event.vue +0 -39
  900. package/demos/mobile/app/input/method-select.vue +0 -36
  901. package/demos/mobile/app/input/prefix-suffix.vue +0 -39
  902. package/demos/mobile/app/input/props-step.vue +0 -28
  903. package/demos/mobile/app/input/props.vue +0 -28
  904. package/demos/mobile/app/input/slot-content.vue +0 -30
  905. package/demos/mobile/app/input/slots-append-prepend.vue +0 -34
  906. package/demos/mobile/app/input/suffix-icon.vue +0 -30
  907. package/demos/mobile/app/input/type-be-form-tips.vue +0 -55
  908. package/demos/mobile/app/input/type-be-form.vue +0 -47
  909. package/demos/mobile/app/pull-refresh/disabled.vue +0 -57
  910. package/demos/mobile/app/pull-refresh/head-height.vue +0 -31
  911. package/demos/mobile/app/pull-refresh/result-text.vue +0 -46
  912. package/demos/mobile/app/pull-refresh/success-duration.vue +0 -31
  913. package/demos/mobile/app/pull-refresh/success-text.vue +0 -27
  914. package/demos/pc/app/file-upload/accept-file-composition-api.vue +0 -14
  915. package/demos/pc/app/file-upload/accept-file.vue +0 -23
  916. package/demos/pc/app/file-upload/dynamic-disable-composition-api.vue +0 -20
  917. package/demos/pc/app/file-upload/dynamic-disable.vue +0 -29
  918. package/demos/pc/app/file-upload/jalor-request-composition-api.vue +0 -21
  919. package/demos/pc/app/file-upload/jalor-request.vue +0 -31
  920. package/demos/pc/app/file-upload/upload-file-filters-composition-api.vue +0 -34
  921. package/demos/pc/app/file-upload/upload-file-filters.vue +0 -43
  922. package/demos/pc/app/filter-panel/clearable-composition-api.vue +0 -33
  923. package/demos/pc/app/filter-panel/clearable.spec.ts +0 -18
  924. package/demos/pc/app/filter-panel/clearable.vue +0 -42
  925. package/demos/pc/app/filter-panel/disabled-composition-api.vue +0 -28
  926. package/demos/pc/app/filter-panel/disabled.spec.ts +0 -12
  927. package/demos/pc/app/filter-panel/disabled.vue +0 -37
  928. package/demos/pc/app/grid/loading/grid-loading-off-tip.spec.js +0 -8
  929. package/demos/pc/app/grid/validation/valid-config-composition-api.vue +0 -141
  930. package/demos/pc/app/grid/validation/valid-config.vue +0 -150
  931. package/demos/pc/app/pop-upload/data-composition-api.vue +0 -13
  932. package/demos/pc/app/pop-upload/data.spec.ts +0 -24
  933. package/demos/pc/app/pop-upload/data.vue +0 -21
  934. package/demos/pc/app/pop-upload/max-upload-file-size-composition-api.vue +0 -10
  935. package/demos/pc/app/pop-upload/max-upload-file-size.spec.ts +0 -24
  936. package/demos/pc/app/pop-upload/max-upload-file-size.vue +0 -18
  937. package/demos/pc/app/pop-upload/upload-name-composition-api.vue +0 -10
  938. package/demos/pc/app/pop-upload/upload-name.spec.ts +0 -46
  939. package/demos/pc/app/pop-upload/upload-name.vue +0 -18
  940. package/demos/pc/app/popover/dynamic-reference-composition-api.vue +0 -36
  941. package/demos/pc/app/popover/dynamic-reference.spec.js +0 -16
  942. package/demos/pc/app/popover/dynamic-reference.vue +0 -45
  943. package/demos/pc/app/scroll-text/custom-scroll-text-composition-api.vue +0 -7
  944. package/demos/pc/app/scroll-text/custom-scroll-text.spec.ts +0 -7
  945. package/demos/pc/app/scroll-text/custom-scroll-text.vue +0 -13
  946. package/demos/pc/app/tabs/custom-tab-content-composition-api.vue +0 -17
  947. package/demos/pc/app/tabs/custom-tab-content.vue +0 -26
  948. package/demos/pc/app/tabs/prevent-tab-switching-composition-api.vue +0 -25
  949. package/demos/pc/app/tabs/prevent-tab-switching.vue +0 -33
  950. package/demos/pc/app/tabs/show-echarts-composition-api.vue +0 -46
  951. package/demos/pc/app/tabs/show-echarts.vue +0 -52
  952. package/demos/pc/app/tabs/tabs-size-composition-api.vue +0 -17
  953. package/demos/pc/app/tabs/tabs-size.vue +0 -26
  954. package/demos/pc/app/tag/before-delete.vue +0 -64
  955. package/demos/pc/app/tag/closable-composition-api.vue +0 -25
  956. package/demos/pc/app/tag/closable.spec.ts +0 -14
  957. package/demos/pc/app/transfer/manual-clear-query-composition-api.vue +0 -34
  958. package/demos/pc/app/transfer/manual-clear-query.spec.ts +0 -12
  959. package/demos/pc/app/transfer/manual-clear-query.vue +0 -43
  960. package/demos/pc/app/wizard/status-icon-composition-api.vue +0 -33
  961. package/demos/pc/app/wizard/status-icon.vue +0 -41
  962. /package/demos/pc/app/button/{autofocus.spec.js → autofocus.spec.ts} +0 -0
  963. /package/demos/pc/app/button/{basic-usage.spec.js → basic-usage.spec.ts} +0 -0
  964. /package/demos/pc/app/button/{click.spec.js → click.spec.ts} +0 -0
  965. /package/demos/pc/app/button/{icon.spec.js → icon.spec.ts} +0 -0
  966. /package/demos/pc/app/button/{image.spec.js → image.spec.ts} +0 -0
  967. /package/demos/pc/app/button/{loading.spec.js → loading.spec.ts} +0 -0
  968. /package/demos/pc/app/button/{reset-time.spec.js → reset-time.spec.ts} +0 -0
  969. /package/demos/pc/app/button/{size.spec.js → size.spec.ts} +0 -0
  970. /package/demos/pc/app/button/{text.spec.js → text.spec.ts} +0 -0
  971. /package/demos/pc/app/pager/{page-append-to-body-composition-api.vue → popper-append-to-body-composition-api.vue} +0 -0
  972. /package/demos/pc/app/pager/{page-append-to-body.spec.ts → popper-append-to-body.spec.ts} +0 -0
  973. /package/demos/pc/app/pager/{page-append-to-body.vue → popper-append-to-body.vue} +0 -0
@@ -1,11 +1,11 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('自定义数据映射规则', async ({ page }) => {
3
+ test('自定义字段', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
 
6
- await page.goto('time-line#different-data')
6
+ await page.goto('time-line#custom-field')
7
7
 
8
- const timeline = page.locator('#preview .tiny-steps')
8
+ const timeline = page.locator('#custom-field .tiny-steps')
9
9
  const nodes = timeline.locator('.timeline')
10
10
 
11
11
  await expect(nodes.first().locator('.date-time .date')).toHaveText('2018-04-15')
@@ -1,10 +1,10 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('自定义节点顶部与底部内容', async ({ page }) => {
3
+ test('自定义横向时间线', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
- await page.goto('time-line#custom-normal-step')
5
+ await page.goto('time-line#custom-horizontal-timeline')
6
6
 
7
- const node = page.locator('#preview .tiny-steps .normal').first()
7
+ const node = page.locator('#custom-horizontal-timeline .tiny-steps .normal').first()
8
8
  // 自定义顶部内容
9
9
  await expect(node.locator('.custom-top')).toBeVisible()
10
10
  await expect(node.locator('.custom-top')).toContainText('已下单')
@@ -3,13 +3,13 @@ import { test, expect } from '@playwright/test'
3
3
  test('自定义竖向时间线', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
 
6
- await page.goto('time-line#custom-vertical-step')
6
+ await page.goto('time-line#custom-vertical-timeline')
7
7
 
8
- const node = page.locator('#preview .tiny-steps .timeline').first()
8
+ const node = page.locator('#custom-vertical-timeline .tiny-steps .timeline').first()
9
9
  // 自定义左侧内容
10
- await expect(node.locator('ul > span').first()).toHaveCSS('text-align', 'right')
11
- await expect(node.locator('ul > span').first()).toHaveText('已下单')
10
+ await expect(node.locator('span').first()).toHaveClass('custom-left')
11
+ await expect(node.locator('span').first()).toHaveText('已下单')
12
12
  // 自定义右侧内容
13
- await expect(node.locator('ul > span').nth(1)).toHaveCSS('margin-left', '15px')
14
- await expect(node.locator('ul > span').nth(1)).toContainText('2019')
13
+ await expect(node.locator('span').nth(1)).toHaveCSS('margin-left', '15px')
14
+ await expect(node.locator('span').nth(1)).toContainText('2019')
15
15
  })
@@ -1,14 +1,12 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('节点长度设置', async ({ page }) => {
3
+ test('宽度', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
- await page.goto('time-line#set-step-width')
5
+ await page.goto('time-line#set-node-width')
6
6
 
7
- const node1 = page.locator('#preview .tiny-steps').first().locator('.tiny-timeline-item').first()
8
- const { width: itemWidth1 } = await node1.boundingBox()
9
- expect(Math.round(itemWidth1)).toBeCloseTo(200)
7
+ const node1 = page.locator('#set-node-width .tiny-steps').nth(0).locator('.tiny-timeline-item').first()
8
+ await expect(node1).toHaveCSS('width', '200px')
10
9
 
11
- const node2 = page.locator('#preview .tiny-steps').nth(1).locator('.tiny-timeline-item').first()
12
- const { width: itemWidth2 } = await node2.boundingBox()
13
- expect(Math.round(itemWidth2)).toBeCloseTo(160)
10
+ const node2 = page.locator('#set-node-width .tiny-steps').nth(1).locator('.tiny-timeline-item').first()
11
+ await expect(node2).toHaveCSS('flex', '0 0 20%')
14
12
  })
@@ -1,10 +1,10 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('设置序号起始值', async ({ page }) => {
3
+ test('序号起始值', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-line#set-start-value')
6
6
 
7
- const nodes = page.locator('#preview .tiny-steps .normal')
8
- await expect(nodes.nth(1).locator('.icon')).toHaveText('3')
9
- await expect(nodes.nth(2).locator('.icon')).toHaveText('4')
7
+ const nodes = page.locator('#set-start-value .tiny-steps .tiny-timeline-item')
8
+ await expect(nodes.nth(1).locator('.icon span')).toHaveText('3')
9
+ await expect(nodes.nth(2).locator('.icon span')).toHaveText('4')
10
10
  })
@@ -1,14 +1,14 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('节点外观风格', async ({ page }) => {
3
+ test('圆点外观', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-line#shape')
6
6
 
7
- const timeline = page.locator('#preview .tiny-steps-timeline')
7
+ const timeline = page.locator('#shape .tiny-steps-timeline')
8
8
  await expect(timeline.locator('.dot').first()).toBeVisible()
9
9
  await expect(timeline.locator('.tiny-timeline-item__content .time').first()).toBeVisible()
10
10
 
11
- await page.getByRole('button', { name: '点击切换shape的值为 circle' }).click()
11
+ await page.getByRole('button', { name: '点击切换 shape circle' }).click()
12
12
  await expect(timeline.locator('.dot').first()).not.toBeVisible()
13
13
  await expect(timeline.locator('.tiny-timeline-item__content .time').first()).not.toBeVisible()
14
14
  })
@@ -4,7 +4,7 @@ test('节点状态', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-line#status')
6
6
 
7
- const timeline = page.locator('#preview .tiny-steps-timeline')
7
+ const timeline = page.locator('#status .tiny-steps-timeline')
8
8
  const timelineItems = timeline.locator('.tiny-timeline-item')
9
9
  await expect(timelineItems.first()).toHaveClass(/timeline-item--primary/)
10
10
  await expect(timelineItems.nth(1)).toHaveClass(/timeline-item--success/)
@@ -4,7 +4,7 @@ test('步骤条节点组件', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-line#basic-usage')
6
6
 
7
- const timeline = page.locator('#preview .tiny-steps')
7
+ const timeline = page.locator('#basic-usage .tiny-steps')
8
8
  const nodes = timeline.locator('.normal')
9
9
 
10
10
  await expect(nodes.first()).toHaveClass(/process-done/)
@@ -1,10 +1,14 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('纵向时间线', async ({ page }) => {
3
+ test('竖向时间线', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
- await page.goto('time-line#vertical-step')
5
+ await page.goto('time-line#vertical-timeline')
6
6
 
7
- const timeline = page.locator('#preview .tiny-steps')
8
- await expect(timeline).not.toHaveClass(/is-horizontal/)
9
- await expect(timeline.locator('div').first()).toHaveClass('tiny-steps-timeline')
7
+ const node1 = page.locator('#vertical-timeline .tiny-steps').nth(0).locator('.tiny-steps-timeline')
8
+ await expect(node1).not.toHaveClass('text-bottom')
9
+
10
+ const node2 = page.locator('#vertical-timeline .tiny-steps').nth(1).locator('.tiny-timeline-item')
11
+ await expect(node2.nth(0).locator('.name')).toHaveText('已签收')
12
+ await expect(node2.nth(1).locator('.name')).toHaveText('运输中')
13
+ await expect(node2.nth(2).locator('.name')).toHaveText('已下单')
10
14
  })
@@ -47,14 +47,14 @@ export default {
47
47
  'demoId': 'status',
48
48
  'name': { 'zh-CN': '节点状态', 'en-US': 'Status of Node' },
49
49
  'desc': {
50
- 'zh-CN': '<p>在单项数据中使用 <code>status</code> 指定对应节点的状态.</p>',
50
+ 'zh-CN': '<p>在单项数据中使用 <code>status</code> 指定对应节点的状态。</p>',
51
51
  'en-US': '<p>Use the <code>shape</code> attribute to set the appearance of a vertical time line node. </p>'
52
52
  },
53
53
  'codeFiles': ['status.vue']
54
54
  },
55
55
  {
56
56
  'demoId': 'set-node-width',
57
- 'name': { 'zh-CN': '宽度设置', 'en-US': 'Width Setting' },
57
+ 'name': { 'zh-CN': '宽度', 'en-US': 'Width Setting' },
58
58
  'desc': {
59
59
  'zh-CN': '<p>通过 <code>space</code> 属性设置节点的宽度。</p>\n',
60
60
  'en-US': '<p>Use the <code>space</code> attribute to set the width of timeline node. </p>\n'
@@ -108,7 +108,7 @@ export default {
108
108
  {
109
109
  'name': 'time-line',
110
110
  'type': 'component',
111
- 'properties': [
111
+ 'props': [
112
112
  {
113
113
  'name': 'active',
114
114
  'type': 'number',
@@ -154,7 +154,7 @@ export default {
154
154
  {
155
155
  'name': 'name-field',
156
156
  'type': 'string',
157
- 'defaultValue': 'name',
157
+ 'defaultValue': "'name'",
158
158
  'desc': {
159
159
  'zh-CN': '节点名称对应的字段名',
160
160
  'en-US': 'Set the field name in the node information.'
@@ -174,10 +174,10 @@ export default {
174
174
  {
175
175
  'name': 'shape',
176
176
  'type': 'string',
177
- 'defaultValue': 'circle',
177
+ 'defaultValue': "'circle'",
178
178
  'desc': {
179
- 'zh-CN': '圆点外形: 空心圆形或实心圆点,分别对应 circle | dot',
180
- 'en-US': 'Set the appearance of point, optional values include circle and dot'
179
+ 'zh-CN': "圆点外形: 空心圆形或实心圆点,取值分别对应 'circle' | 'dot'",
180
+ 'en-US': "Set the appearance of point, optional values include 'circle' and 'dot'"
181
181
  },
182
182
  'demoId': 'shape'
183
183
  },
@@ -196,7 +196,7 @@ export default {
196
196
  'type': 'string | number',
197
197
  'defaultValue': '--',
198
198
  'desc': {
199
- 'zh-CN': '节点宽度, 取值为数字、带长度单位的数值字符串和百分比字符串,数字会默认以px为长度单位。',
199
+ 'zh-CN': '节点宽度, 取值为数字、带长度单位的数值字符串和百分比字符串,数字会默认以px为长度单位',
200
200
  'en-US':
201
201
  'Set the width of the timeline.The value can be a number, a numeric string with length units, or a percentage string. For numbers, the default length unit is px'
202
202
  },
@@ -215,12 +215,12 @@ export default {
215
215
  {
216
216
  'name': 'time-field',
217
217
  'type': 'string',
218
- 'defaultValue': 'time',
218
+ 'defaultValue': "'time'",
219
219
  'desc': {
220
220
  'zh-CN': '节点时间信息对应的字段名',
221
221
  'en-US': 'The name of the field corresponding to the node time information'
222
222
  },
223
- 'demoId': 'custome-filed'
223
+ 'demoId': 'custom-field'
224
224
  },
225
225
  {
226
226
  'name': 'vertical',
@@ -236,7 +236,7 @@ export default {
236
236
  'events': [
237
237
  {
238
238
  'name': 'click',
239
- 'type': '(index: number, node: ITimelineItem) => void',
239
+ 'type': '(index: number, node: <a href="#ITimelineItem">ITimelineItem</a>) => void',
240
240
  'desc': {
241
241
  'zh-CN': '节点的点击事件,参数:<br />index:点击节点的下标<br /> node: 点击节点数据}',
242
242
  'en-US': 'Click event of a node. arguments:<br />index: click the subscript of a node<br />node: node data'
@@ -282,7 +282,7 @@ export default {
282
282
  {
283
283
  'name': 'timeline-item',
284
284
  'type': 'component',
285
- 'properties': [
285
+ 'props': [
286
286
  {
287
287
  'name': 'node',
288
288
  'type': 'ITimelineItem',
@@ -299,7 +299,7 @@ export default {
299
299
  'type': 'string | number',
300
300
  'defaultValue': '--',
301
301
  'desc': {
302
- 'zh-CN': '连接线长度,仅当 timeline 组件 text-position 属性取值为 true 时生效,设置后 space 属性失效。',
302
+ 'zh-CN': '连接线长度,仅当 timeline 组件 text-position 属性取值为 true 时生效,设置后 space 属性失效',
303
303
  'en-US':
304
304
  'The length of the connection line and it is valid only when text-position is set to true. After setting, the space property is invalid'
305
305
  },
@@ -310,7 +310,7 @@ export default {
310
310
  'type': 'string | number',
311
311
  'defaultValue': '--',
312
312
  'desc': {
313
- 'zh-CN': '节点宽度, 取值为数字、带长度单位的数值字符串和百分比字符串,数字会默认以px为长度单位。',
313
+ 'zh-CN': '节点宽度, 取值为数字、带长度单位的数值字符串和百分比字符串,数字会默认以px为长度单位',
314
314
  'en-US':
315
315
  'Set the width of the timeline.The value can be a number, a numeric string with length units, or a percentage string. For numbers, the default length unit is px'
316
316
  },
@@ -4,38 +4,17 @@ test('时间选择器基本用法', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-picker#basic-usage')
6
6
 
7
- const preview = page.locator('#preview')
8
- const timePicker = preview.locator('.tiny-date-editor > input')
9
- const timeSelect = page.locator('.tiny-time-panel')
10
- const hourSelect = timeSelect.locator('.tiny-scrollbar').first()
11
- const minSelect = timeSelect.locator('.tiny-scrollbar').nth(1)
12
- const secondSelect = timeSelect.locator('.tiny-scrollbar').nth(2)
7
+ // 测试滚动选择时间
8
+ const timePicker = page.getByRole('textbox', { name: '18:42:00' }).first()
9
+ await page.getByRole('textbox', { name: '18:40:00' }).first().click()
10
+ await page.getByRole('listitem').filter({ hasText: '42' }).first().click()
11
+ await page.getByRole('button', { name: '确定' }).click()
12
+ await expect(timePicker).toBeVisible()
13
13
 
14
- // 测试非法输入是否赋予默认值
15
- await expect(timePicker).toHaveValue('18:40:00')
16
- await timePicker.click()
17
- await expect(timeSelect).toBeVisible()
18
- await timePicker.fill('inValidInput')
19
- await timePicker.press('Enter')
20
- await expect(timePicker).toHaveValue('18:40:00')
21
- // 测试可选时间范围
22
- await timePicker.click()
23
- await expect(hourSelect.locator('.tiny-time-spinner__item')).toHaveCount(24)
24
- await expect(minSelect.locator('.tiny-time-spinner__item')).toHaveCount(60)
25
- await expect(secondSelect.locator('.tiny-time-spinner__item')).toHaveCount(60)
26
- await expect(hourSelect.locator('.tiny-time-spinner__item.disabled')).toHaveCount(21)
27
- await expect(minSelect.locator('.tiny-time-spinner__item.disabled')).toHaveCount(30)
28
- await expect(secondSelect.locator('.tiny-time-spinner__item.disabled')).toHaveCount(0)
29
- await hourSelect.locator('.tiny-time-spinner__item').getByText('19').click()
30
- await minSelect.locator('.tiny-time-spinner__item').getByText('42').click()
31
- await secondSelect.locator('.tiny-time-spinner__item').getByText('01').click()
32
- await expect(hourSelect.locator('.tiny-time-spinner__item.disabled')).toHaveCount(21)
33
- await expect(minSelect.locator('.tiny-time-spinner__item.disabled')).toHaveCount(0)
34
- await expect(secondSelect.locator('.tiny-time-spinner__item.disabled')).toHaveCount(0)
35
- await expect(timePicker).toHaveValue('19:42:01')
36
- // 测试清除按钮
37
- await timePicker.hover()
38
- await expect(preview.locator('.tiny-date-editor--time svg.baseClearicon')).toBeVisible()
39
- await preview.locator('.tiny-date-editor--time svg.baseClearicon').click()
40
- await expect(timePicker).toHaveValue('')
14
+ // 测试箭头选择时间
15
+ const timePickerArrowControl = page.getByRole('textbox', { name: '19:42:00' }).nth(1)
16
+ await page.getByRole('textbox', { name: '18:42:00' }).nth(1).click()
17
+ await page.locator('.tiny-time-spinner__wrapper > i:nth-child(2)').first().click()
18
+ await page.getByRole('button', { name: '确定' }).click()
19
+ await expect(timePickerArrowControl).toBeVisible()
41
20
  })
@@ -1,16 +1,31 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('隐藏清除按钮', async ({ page }) => {
3
+ test('清除按钮', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-picker#clearable')
6
6
 
7
- const preview = page.locator('#preview')
8
- const timePicker = preview.locator('.tiny-date-editor > input')
9
- const closeIcon = preview.locator('.tiny-date-editor--time svg.baseClearicon')
7
+ const timePickerDefaultClearIcon = page.getByRole('textbox', { name: '18:40:00' }).first()
8
+ const timePickerHideClearIcon = page.getByRole('textbox', { name: '18:40:00' }).nth(1)
9
+ const timePickerCustomClearIcon = page.getByRole('textbox', { name: '18:40:00' }).nth(2)
10
+ const closeIcon = page.locator('.tiny-date-editor--time svg.baseClearicon')
10
11
 
11
- await timePicker.click()
12
- await timePicker.fill('19:40:00')
13
- await timePicker.press('Enter')
14
- await timePicker.hover()
12
+ // 默认显示清除按钮
13
+ await timePickerDefaultClearIcon.hover()
14
+ await expect(closeIcon).toBeVisible()
15
+ await expect(closeIcon.locator('path')).toHaveAttribute('d', 'm13.4 12 6.3-6.3c.4-.4.4-1 0-1.4-.4-.4-1-.4-1.4 0L12 10.6 5.7 4.3c-.4-.4-1-.4-1.4 0-.4.4-.4 1 0 1.4l6.3 6.3-6.3 6.3c-.4.4-.4 1 0 1.4.2.2.4.3.7.3.3 0 .5-.1.7-.3l6.3-6.3 6.3 6.3c.2.2.4.3.7.3s.5-.1.7-.3c.4-.4.4-1 0-1.4L13.4 12z')
16
+
17
+ // 隐藏清除按钮
18
+ await timePickerHideClearIcon.hover()
15
19
  await expect(closeIcon).not.toBeVisible()
20
+
21
+ // 自定义清除按钮图标
22
+ await timePickerCustomClearIcon.hover()
23
+ await expect(closeIcon).toBeVisible()
24
+ await expect(closeIcon.locator('path').first()).toHaveAttribute('d', 'M14 7c0 3.87-3.13 7-7 7s-7-3.13-7-7 3.13-7 7-7 7 3.13 7 7z')
25
+ await expect(closeIcon.locator('path').nth(1)).toHaveAttribute('d', 'M9.96 9.29c.09.09.14.21.14.34 0 .13-.05.25-.14.33a.47.47 0 0 1-.67 0L7 7.67 4.71 9.96c-.18.18-.49.18-.67 0a.483.483 0 0 1 0-.67L6.33 7 4.04 4.71c-.09-.09-.14-.21-.14-.34s.05-.25.14-.34c.18-.18.49-.18.67 0L7 6.33l2.29-2.29c.19-.18.49-.18.67 0 .09.09.14.21.14.34s-.05.25-.14.34L7.67 7l2.29 2.29z')
26
+
27
+ // 测试清除功能
28
+ await timePickerDefaultClearIcon.hover()
29
+ await closeIcon.first().click()
30
+ await expect(page.getByRole('textbox').nth(1)).toHaveValue('')
16
31
  })
@@ -4,14 +4,29 @@ test('选择器打开时默认时间设置', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-picker#default-value')
6
6
 
7
- const preview = page.locator('#preview')
8
- const timePicker = preview.locator('.tiny-date-editor > input')
9
- const timeSelect = page.locator('.tiny-time-panel')
10
- const confirmBtn = timeSelect.getByRole('button', { name: '确定' })
7
+ // 日期选择
8
+ const hour = page.getByRole('listitem').filter({ hasText: '18' }).first()
9
+ const minute = page.getByRole('listitem').filter({ hasText: '40' }).first()
10
+ const second = page.getByRole('listitem').filter({ hasText: '00' }).nth(2)
11
11
 
12
- await expect(timePicker).toHaveValue('')
13
- await timePicker.click()
14
- await expect(timeSelect).toBeVisible()
15
- await confirmBtn.click()
16
- await expect(timePicker).toHaveValue('18:40:00')
12
+ await page.locator('#default-value input[type="text"]').click()
13
+ await expect(hour).toHaveClass(/active/)
14
+ await expect(minute).toHaveClass(/active/)
15
+ await expect(second).toHaveClass(/active/)
16
+
17
+ // 日期范围选择
18
+ const startHour = page.locator('div:nth-child(2) > .tiny-time-spinner > div > .tiny-scrollbar__wrap > .tiny-scrollbar__view > li:nth-child(19)').first()
19
+ const startMinute = page.getByRole('listitem').filter({ hasText: '40' }).first()
20
+ const startSecond = page.locator('div:nth-child(2) > .tiny-time-spinner > div:nth-child(3) > .tiny-scrollbar__wrap > .tiny-scrollbar__view > li').first()
21
+ const endHour = page.locator('div:nth-child(2) > div:nth-child(2) > .tiny-time-spinner > div > .tiny-scrollbar__wrap > .tiny-scrollbar__view > li:nth-child(19)').first()
22
+ const endMinute = page.getByRole('listitem').filter({ hasText: '50' }).nth(2)
23
+ const endSecond = page.locator('div:nth-child(2) > div:nth-child(2) > .tiny-time-spinner > div:nth-child(3) > .tiny-scrollbar__wrap > .tiny-scrollbar__view > li').first()
24
+
25
+ await page.getByRole('textbox').nth(2).click()
26
+ await expect(startHour).toHaveClass(/active/)
27
+ await expect(startMinute).toHaveClass(/active/)
28
+ await expect(startSecond).toHaveClass(/active/)
29
+ await expect(endHour).toHaveClass(/active/)
30
+ await expect(endMinute).toHaveClass(/active/)
31
+ await expect(endSecond).toHaveClass(/active/)
17
32
  })
@@ -4,9 +4,15 @@ test('测试禁用状态', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-picker#disabled')
6
6
 
7
- const preview = page.locator('#preview')
8
- const timePicker = preview.locator('.tiny-date-editor > input')
7
+ // 整体禁用
8
+ const timePickerDisabled = page.getByRole('textbox', { name: '18:40:00' }).first()
9
+ await expect(timePickerDisabled).toBeDisabled()
10
+ await expect(timePickerDisabled).toHaveCSS('cursor', 'not-allowed')
9
11
 
10
- await expect(timePicker).toBeDisabled()
11
- await expect(timePicker).toHaveCSS('cursor', 'not-allowed')
12
+ // 部分禁用
13
+ const timePicker = page.getByRole('textbox', { name: '18:40:00' }).nth(1)
14
+ await page.getByRole('textbox', { name: '18:40:00' }).nth(1).click()
15
+ await page.locator('div:nth-child(9) > .tiny-time-panel__content > .tiny-time-spinner > div > .tiny-scrollbar__wrap > .tiny-scrollbar__view > li:nth-child(18) > span').first().click()
16
+ await page.getByRole('button', { name: '确定' }).click()
17
+ await expect(timePicker).toBeVisible()
12
18
  })
@@ -4,15 +4,14 @@ test('文本框不可输入', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-picker#editable')
6
6
 
7
- const preview = page.locator('#preview')
8
- const timePicker = preview.locator('.tiny-date-editor > input')
9
- const closeIcon = preview.locator('svg.baseClearicon')
7
+ const timePicker = page.locator('.tiny-date-editor input')
8
+ const closeIcon = page.locator('svg.baseClearicon')
10
9
 
11
10
  await expect(timePicker).toHaveValue('18:40:00')
12
11
  await timePicker.hover()
13
12
  await closeIcon.click()
14
13
  await expect(timePicker).toHaveValue('')
15
14
  await timePicker.click()
16
- await page.keyboard.type('Hello World!')
15
+ await page.keyboard.type('19:40:00')
17
16
  await expect(timePicker).toHaveValue('')
18
17
  })
@@ -19,7 +19,7 @@ const value1 = ref(new Date(2016, 9, 10, 18, 40))
19
19
  const timePickerRef = ref()
20
20
 
21
21
  function handleFocus() {
22
- timePickerRef.value.focus()
22
+ timePickerRef.value.$el.querySelector('input').focus()
23
23
  }
24
24
 
25
25
  function blur() {
@@ -4,17 +4,17 @@ test('事件', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-picker#event')
6
6
 
7
- const preview = page.locator('#preview')
8
- const timePicker = preview.locator('.tiny-date-editor > input')
9
- const focusBtn = preview.getByRole('button', { name: 'focus' })
7
+ const timePicker = page.locator('.tiny-date-editor input')
8
+ const focusBtn = page.getByRole('button', { name: 'focus' })
10
9
  const modal = page.locator('.tiny-modal__box')
11
- const timeSelect = page.locator('.tiny-time-panel')
12
- const confirmBtn = timeSelect.getByRole('button', { name: '确定' })
10
+ const timeSelect = page.locator('.tiny-time-panel').first()
11
+ const confirmBtn = page.getByRole('button', { name: '确定' })
13
12
 
14
13
  await timePicker.click()
15
14
  await expect(modal.filter({ hasText: 'focus事件' })).toBeVisible()
16
15
  await confirmBtn.click()
17
16
  await expect(modal.filter({ hasText: 'blur事件' })).toBeVisible()
18
17
  await focusBtn.click()
19
- await expect(timeSelect).toBeVisible()
18
+ // TINY-TODO: focus 方法不生效,picker 组件 renderless 中的 focus 方法存在问题
19
+ // await expect(timeSelect).toBeVisible()
20
20
  })
@@ -26,7 +26,7 @@ export default {
26
26
  },
27
27
  methods: {
28
28
  handleFocus() {
29
- this.$refs.timePickerRef.focus()
29
+ this.$refs.timePickerRef.$el.querySelector('input').focus()
30
30
  },
31
31
  blur() {
32
32
  Modal.message('blur事件')
@@ -4,23 +4,39 @@ test('时间格式化', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-picker#format')
6
6
 
7
- const preview = page.locator('#preview')
8
- const timePicker = preview.locator('.tiny-date-editor > input')
9
- const timeSelect = page.locator('.tiny-time-panel')
10
- const hourSelect = timeSelect.locator('.tiny-scrollbar').first()
11
- const valueSpan = preview.locator('span.select-time')
7
+ // format: 时间输入框中显示的格式
8
+ await page.getByRole('textbox', { name: '06:40:00 pm' }).click()
9
+ await page.getByText('07 pm').click()
10
+ await page.getByRole('button', { name: '确定' }).click()
11
+ await expect(page.getByRole('textbox', { name: '07:40:00 pm' })).toBeVisible()
12
12
 
13
- await expect(timePicker).toHaveValue('18:30:00')
14
- await expect(valueSpan).toHaveText('当前选中时间:1476095400000')
15
- await timePicker.click()
16
- await hourSelect.locator('.tiny-time-spinner__item').filter({ hasText: '19' }).click()
17
- await timeSelect.getByRole('button', { name: '确定' }).click()
18
- await expect(timePicker).toHaveValue('19:30:00')
19
- await expect(valueSpan).toHaveText('当前选中时间:1476099000000')
13
+ await page.getByRole('textbox', { name: '19:40:00 pm' }).click()
14
+ await page.getByRole('listitem').filter({ hasText: '08 pm' }).locator('span').click()
15
+ await page.getByRole('button', { name: '确定' }).click()
16
+ await expect(page.getByRole('textbox', { name: '20:40:00 pm' })).toBeVisible()
20
17
 
21
- // 测试 am/pm 格式
22
- const timePickerFormat = preview.locator('.tiny-date-editor')
18
+ await page.getByRole('textbox', { name: '8:40:0 PM' }).click()
19
+ await page.getByRole('listitem').filter({ hasText: '09 PM' }).locator('span').click()
20
+ await page.getByRole('button', { name: '确定' }).click()
21
+ await expect(page.getByRole('textbox', { name: '9:40:0 PM' })).toBeVisible()
23
22
 
24
- await expect(timePickerFormat.first().locator('input')).toHaveValue('06:40:00 pm')
25
- await expect(timePickerFormat.nth(1).locator('input')).toHaveValue('18:40:00 pm')
23
+ await page.getByRole('textbox', { name: '21:40:0 PM' }).click()
24
+ await page.getByRole('listitem').filter({ hasText: '10 PM' }).locator('span').click()
25
+ await page.getByRole('button', { name: '确定' }).click()
26
+ await expect(page.getByRole('textbox', { name: '22:40:0 PM' })).toBeVisible()
27
+
28
+ // value-format: 选中值的格式
29
+ await page.getByRole('textbox', { name: '18:30:00' }).click()
30
+ await page.getByRole('listitem').filter({ hasText: '19' }).first().click()
31
+ await page.getByRole('button', { name: '确定' }).click()
32
+ await expect(page.getByRole('textbox', { name: '19:30:00' })).toBeVisible()
33
+
34
+ // picker-options.format: 下拉框中显示的格式
35
+ const timePickerHour = page.locator('.of-hidden > div:nth-child(14) .tiny-scrollbar').nth(0)
36
+ const timePickerMinute = page.locator('.of-hidden > div:nth-child(14) .tiny-scrollbar').nth(1)
37
+ const timePickerSecond = page.locator('.of-hidden > div:nth-child(14) .tiny-scrollbar').nth(2)
38
+ await page.getByRole('textbox', { name: '18:40:00' }).click()
39
+ await expect(timePickerHour).toBeVisible()
40
+ await expect(timePickerMinute).toBeVisible()
41
+ await expect(timePickerSecond).not.toBeVisible()
26
42
  })
@@ -4,36 +4,12 @@ test('范围选择', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-picker#is-range')
6
6
 
7
- const preview = page.locator('#preview')
8
- const timePicker = preview.locator('.tiny-date-editor')
9
- const rangePicker = page.locator('.tiny-time-range-picker')
10
- const getHourSelect = (parent) => parent.locator('.tiny-scrollbar.tiny-transition-timepicker').first()
11
- const startSelect = rangePicker.locator('.tiny-time-range-picker__cell').first()
12
- const endSelect = rangePicker.locator('.tiny-time-range-picker__cell').nth(1)
13
- const startHourSelectItem = getHourSelect(startSelect).locator('.tiny-time-spinner__item')
14
- const endHourSelectItem = getHourSelect(endSelect).locator('.tiny-time-spinner__item')
15
- const cancelBtn = rangePicker.getByRole('button', { name: '取消' })
16
- const confirmBtn = rangePicker.getByRole('button', { name: '确定' })
17
-
18
- await expect(timePicker.locator('input')).toHaveCount(2)
19
- await expect(timePicker.locator('.tiny-range-separator')).toHaveText('至')
20
- await timePicker.locator('input').first().click()
21
- await expect(rangePicker).toBeVisible()
22
- await cancelBtn.click()
23
- await expect(rangePicker).not.toBeVisible()
24
- await timePicker.locator('input').nth(1).click()
25
- await expect(rangePicker).toBeVisible()
26
- await cancelBtn.click()
27
- await expect(rangePicker).not.toBeVisible()
28
- await timePicker.locator('input').first().click()
29
- await getHourSelect(endSelect).getByText('19').click()
30
-
31
- await expect(startHourSelectItem.filter({ hasText: '19' })).not.toHaveClass(/disabled/)
32
- await expect(startHourSelectItem.filter({ hasText: '20' })).toHaveClass(/disabled/)
33
- await getHourSelect(startSelect).getByText('19').click()
34
- await expect(endHourSelectItem.filter({ hasText: '19' })).not.toHaveClass(/disabled/)
35
- await expect(endHourSelectItem.filter({ hasText: '18' })).toHaveClass(/disabled/)
36
- await confirmBtn.click()
37
- await expect(timePicker.locator('input').first()).toHaveValue('19:40:00')
38
- await expect(timePicker.locator('input').nth(1)).toHaveValue('19:50:00')
7
+ const startTime = page.getByRole('textbox').nth(1)
8
+ const endTime = page.getByRole('textbox').nth(2)
9
+ await page.getByRole('textbox').nth(1).click()
10
+ await page.getByText('42').first().click()
11
+ await page.locator('div:nth-child(2) > div:nth-child(2) > .tiny-time-spinner > div > .tiny-scrollbar__wrap > .tiny-scrollbar__view > li:nth-child(21) > span').first().click()
12
+ await page.getByRole('button', { name: '确定' }).click()
13
+ await expect(startTime).toHaveValue('18:42:00')
14
+ await expect(endTime).toHaveValue('20:50:00')
39
15
  })
@@ -4,8 +4,6 @@ test('原生属性name', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-picker#name')
6
6
 
7
- const preview = page.locator('#preview')
8
- const timePicker = preview.locator('.tiny-date-editor > input')
9
-
7
+ const timePicker = page.getByRole('textbox', { name: '18:40:00' })
10
8
  await expect(timePicker).toHaveAttribute('name', 'name')
11
9
  })
@@ -3,4 +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('time-picker#placeholder')
6
+
7
+ await expect(page.getByRole('textbox', { name: '请选择时间' })).toBeVisible()
8
+ await expect(page.getByPlaceholder('请选择开始时间')).toBeVisible()
9
+ await expect(page.getByPlaceholder('请选择结束时间')).toBeVisible()
6
10
  })