@opentiny/vue-docs 2.1.10 → 2.2.1

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 (765) hide show
  1. package/demos/pc/app/action-menu/basic-usage.spec.ts +19 -10
  2. package/demos/pc/app/action-menu/disabled.spec.ts +3 -3
  3. package/demos/pc/app/action-menu/events.spec.ts +15 -39
  4. package/demos/pc/app/action-menu/max-show-num.spec.ts +8 -6
  5. package/demos/pc/app/action-menu/more-text.spec.ts +5 -5
  6. package/demos/pc/app/action-menu/popper-class.spec.ts +7 -5
  7. package/demos/pc/app/action-menu/slot-item.spec.ts +5 -5
  8. package/demos/pc/app/action-menu/spacing.spec.ts +2 -2
  9. package/demos/pc/app/action-menu/text-field.spec.ts +6 -6
  10. package/demos/pc/app/action-menu/webdoc/action-menu.js +12 -11
  11. package/demos/pc/app/alert/basic-usage.spec.ts +16 -3
  12. package/demos/pc/app/alert/center.spec.ts +1 -1
  13. package/demos/pc/app/alert/custom-close.spec.ts +26 -25
  14. package/demos/pc/app/alert/icon.spec.ts +5 -4
  15. package/demos/pc/app/alert/show-icon.spec.ts +2 -2
  16. package/demos/pc/app/alert/size.spec.ts +2 -2
  17. package/demos/pc/app/alert/title.spec.ts +1 -0
  18. package/demos/pc/app/autocomplete/webdoc/autocomplete.js +1 -1
  19. package/demos/pc/app/breadcrumb/webdoc/breadcrumb.js +1 -1
  20. package/demos/pc/app/carousel/webdoc/carousel.js +11 -8
  21. package/demos/pc/app/cascader/webdoc/cascader.js +11 -7
  22. package/demos/pc/app/cascader-panel/webdoc/cascader-panel.js +9 -5
  23. package/demos/pc/app/checkbox/basic-usage.spec.ts +4 -2
  24. package/demos/pc/app/checkbox/border.spec.ts +12 -5
  25. package/demos/pc/app/checkbox/checkbox-button-multiple.spec.ts +26 -4
  26. package/demos/pc/app/checkbox/checkbox-button.spec.ts +12 -17
  27. package/demos/pc/app/checkbox/checkbox-events.spec.ts +6 -5
  28. package/demos/pc/app/checkbox/checkbox-group-composition-api.vue +1 -1
  29. package/demos/pc/app/checkbox/checkbox-group.spec.ts +6 -5
  30. package/demos/pc/app/checkbox/checkbox-group.vue +1 -1
  31. package/demos/pc/app/checkbox/checkbox-slot.spec.ts +6 -5
  32. package/demos/pc/app/checkbox/checked.spec.ts +5 -4
  33. package/demos/pc/app/checkbox/custom-color.spec.ts +13 -0
  34. package/demos/pc/app/checkbox/description.spec.ts +12 -0
  35. package/demos/pc/app/checkbox/dynamic-create-checkbox.spec.ts +4 -3
  36. package/demos/pc/app/checkbox/group-options.spec.ts +2 -2
  37. package/demos/pc/app/checkbox/indeterminate.spec.ts +9 -5
  38. package/demos/pc/app/checkbox/min-max.spec.ts +4 -2
  39. package/demos/pc/app/checkbox/size.spec.ts +19 -0
  40. package/demos/pc/app/checkbox/text.spec.ts +10 -5
  41. package/demos/pc/app/checkbox/vertical-checkbox.spec.ts +8 -6
  42. package/demos/pc/app/collapse/before-close.spec.ts +1 -1
  43. package/demos/pc/app/collapse/disable.spec.ts +3 -3
  44. package/demos/pc/app/collapse/events.spec.ts +1 -1
  45. package/demos/pc/app/collapse/title.spec.ts +4 -4
  46. package/demos/pc/app/color-picker/history.spec.ts +9 -5
  47. package/demos/pc/app/color-picker/predefine.spec.ts +9 -5
  48. package/demos/pc/app/color-picker/size.spec.ts +4 -4
  49. package/demos/pc/app/container/basic-usage-composition-api.vue +38 -21
  50. package/demos/pc/app/container/basic-usage.spec.js +4 -11
  51. package/demos/pc/app/container/basic-usage.vue +40 -23
  52. package/demos/pc/app/container/custom-with-height-composition-api.vue +7 -7
  53. package/demos/pc/app/container/custom-with-height.spec.js +3 -7
  54. package/demos/pc/app/container/custom-with-height.vue +7 -7
  55. package/demos/pc/app/container/webdoc/container.js +1 -1
  56. package/demos/pc/app/dropdown/basic-usage.spec.ts +13 -6
  57. package/demos/pc/app/dropdown/disabled.spec.ts +49 -5
  58. package/demos/pc/app/dropdown/events.spec.ts +37 -5
  59. package/demos/pc/app/dropdown/events.vue +1 -1
  60. package/demos/pc/app/dropdown/hide-on-click.spec.ts +5 -4
  61. package/demos/pc/app/dropdown/multi-level-composition-api.vue +29 -3
  62. package/demos/pc/app/dropdown/multi-level.spec.ts +31 -5
  63. package/demos/pc/app/dropdown/multi-level.vue +2 -10
  64. package/demos/pc/app/dropdown/options.spec.ts +88 -8
  65. package/demos/pc/app/dropdown/size.spec.ts +3 -2
  66. package/demos/pc/app/dropdown/slots-composition-api.vue +3 -3
  67. package/demos/pc/app/dropdown/slots.spec.ts +11 -4
  68. package/demos/pc/app/dropdown/split-button.spec.ts +5 -3
  69. package/demos/pc/app/dropdown/title.spec.ts +2 -2
  70. package/demos/pc/app/dropdown/trigger.spec.ts +6 -2
  71. package/demos/pc/app/dropdown/webdoc/dropdown.js +62 -43
  72. package/demos/pc/app/fall-menu/custom-menuitem-composition-api.vue +3 -3
  73. package/demos/pc/app/fall-menu/custom-menuitem.vue +3 -3
  74. package/demos/pc/app/fall-menu/webdoc/fall-menu.js +5 -4
  75. package/demos/pc/app/form/{basic-usage.spec.js → basic-usage.spec.ts} +7 -13
  76. package/demos/pc/app/form/custom-validation-rule-composition-api.vue +3 -1
  77. package/demos/pc/app/form/custom-validation-rule.spec.ts +54 -0
  78. package/demos/pc/app/form/custom-validation-rule.vue +3 -1
  79. package/demos/pc/app/form/display-only.spec.ts +21 -0
  80. package/demos/pc/app/form/form-disabled.spec.js +7 -7
  81. package/demos/pc/app/form/form-in-row.spec.js +3 -3
  82. package/demos/pc/app/form/form-row-col.spec.js +2 -2
  83. package/demos/pc/app/form/form-validate-field.spec.ts +16 -0
  84. package/demos/pc/app/form/{form-validation.spec.js → form-validation.spec.ts} +5 -16
  85. package/demos/pc/app/form/{group-form.spec.js → group-form.spec.ts} +3 -3
  86. package/demos/pc/app/form/label-align-composition-api.vue +1 -1
  87. package/demos/pc/app/form/label-align.spec.ts +16 -0
  88. package/demos/pc/app/form/label-align.vue +1 -1
  89. package/demos/pc/app/form/{label-align.spec.js → label-position.spec.ts} +15 -13
  90. package/demos/pc/app/form/message-type.spec.ts +20 -0
  91. package/demos/pc/app/form/{novalid-tip.spec.js → novalid-tip.spec.ts} +2 -3
  92. package/demos/pc/app/form/overflow-title.spec.ts +14 -0
  93. package/demos/pc/app/form/popper-options-composition-api.vue +49 -0
  94. package/demos/pc/app/form/popper-options.spec.ts +18 -0
  95. package/demos/pc/app/form/popper-options.vue +59 -0
  96. package/demos/pc/app/form/size.spec.ts +26 -0
  97. package/demos/pc/app/form/{slot-label.spec.js → slot-label.spec.ts} +2 -2
  98. package/demos/pc/app/form/{smb-required.spec.js → smb-required.spec.ts} +8 -11
  99. package/demos/pc/app/form/validate-debounce.spec.ts +13 -0
  100. package/demos/pc/app/form/{validate-type.spec.js → validate-type.spec.ts} +2 -4
  101. package/demos/pc/app/form/{validation-position.spec.js → validation-position.spec.ts} +3 -7
  102. package/demos/pc/app/form/webdoc/form.js +22 -0
  103. package/demos/pc/app/grid/drag/row-drag-ctrl-composition-api.vue +17 -5
  104. package/demos/pc/app/grid/drag/row-drag-ctrl.spec.js +17 -5
  105. package/demos/pc/app/grid/drag/row-drag-ctrl.vue +17 -5
  106. package/demos/pc/app/grid/filter/dynamic-filter-composition-api.vue +127 -0
  107. package/demos/pc/app/grid/filter/dynamic-filter.spec.js +11 -0
  108. package/demos/pc/app/grid/filter/dynamic-filter.vue +136 -0
  109. package/demos/pc/app/grid/slot/editor-slot-composition-api.vue +1 -1
  110. package/demos/pc/app/grid/slot/editor-slot.vue +74 -75
  111. package/demos/pc/app/grid/webdoc/grid-drag.js +1 -1
  112. package/demos/pc/app/grid/webdoc/grid-filter.js +9 -0
  113. package/demos/pc/app/grid/webdoc/grid-slot.js +4 -1
  114. package/demos/pc/app/grid/webdoc/grid.js +19 -9
  115. package/demos/pc/app/guide/basic-usage.spec.ts +9 -7
  116. package/demos/pc/app/guide/callback.spec.ts +8 -10
  117. package/demos/pc/app/guide/highlight-box.spec.ts +2 -2
  118. package/demos/pc/app/guide/offset.spec.ts +2 -2
  119. package/demos/pc/app/guide/only-content.spec.ts +1 -1
  120. package/demos/pc/app/icon/list-composition-api.vue +1 -1
  121. package/demos/pc/app/icon/list.vue +1 -1
  122. package/demos/pc/app/icon/webdoc/icon.js +1 -1
  123. package/demos/pc/app/image/basic-usage.spec.ts +2 -5
  124. package/demos/pc/app/image/events.spec.ts +5 -4
  125. package/demos/pc/app/image/lazy.spec.ts +7 -4
  126. package/demos/pc/app/image/preview-in-dialog.spec.ts +1 -1
  127. package/demos/pc/app/image/preview.spec.ts +30 -26
  128. package/demos/pc/app/image/slot.spec.ts +5 -7
  129. package/demos/pc/app/image/webdoc/image.js +1 -1
  130. package/demos/pc/app/input/event.spec.ts +2 -2
  131. package/demos/pc/app/input/webdoc/input.js +1 -1
  132. package/demos/pc/app/ip-address/basic-usage.spec.ts +8 -3
  133. package/demos/pc/app/ip-address/delimiter.spec.ts +7 -7
  134. package/demos/pc/app/ip-address/disabled.spec.ts +6 -3
  135. package/demos/pc/app/ip-address/event.spec.ts +37 -17
  136. package/demos/pc/app/ip-address/readonly.spec.ts +5 -5
  137. package/demos/pc/app/ip-address/size.spec.ts +6 -4
  138. package/demos/pc/app/layout/alignment.spec.ts +3 -2
  139. package/demos/pc/app/layout/basic-usage.spec.ts +14 -14
  140. package/demos/pc/app/layout/gutter.spec.ts +7 -7
  141. package/demos/pc/app/layout/order.spec.ts +4 -2
  142. package/demos/pc/app/layout/responsive-layout.spec.ts +3 -3
  143. package/demos/pc/app/layout/tag.spec.ts +10 -0
  144. package/demos/pc/app/layout/webdoc/layout.js +13 -8
  145. package/demos/pc/app/link/custom-icon-composition-api.vue +0 -4
  146. package/demos/pc/app/link/custom-icon.vue +0 -4
  147. package/demos/pc/app/loading/webdoc/loading.js +6 -2
  148. package/demos/pc/app/milestone/basic-usage.spec.ts +10 -9
  149. package/demos/pc/app/milestone/custom-bottom-top.spec.ts +2 -2
  150. package/demos/pc/app/milestone/custom-flag.spec.ts +1 -1
  151. package/demos/pc/app/milestone/custom-icon-slot.spec.ts +1 -1
  152. package/demos/pc/app/milestone/data-field-mapping.spec.ts +1 -1
  153. package/demos/pc/app/milestone/flag-before.spec.ts +9 -7
  154. package/demos/pc/app/milestone/line-style.spec.ts +2 -2
  155. package/demos/pc/app/milestone/milestone-events.spec.ts +1 -1
  156. package/demos/pc/app/milestone/show-number.spec.ts +8 -5
  157. package/demos/pc/app/milestone/solid-style.spec.ts +8 -5
  158. package/demos/pc/app/modal/{base.spec.ts → basic-usage.spec.ts} +8 -7
  159. package/demos/pc/app/modal/duration-composition-api.vue +1 -3
  160. package/demos/pc/app/modal/duration.spec.ts +1 -1
  161. package/demos/pc/app/modal/duration.vue +1 -3
  162. package/demos/pc/app/modal/esc-closable-composition-api.vue +1 -1
  163. package/demos/pc/app/modal/esc-closable.spec.ts +1 -1
  164. package/demos/pc/app/modal/esc-closable.vue +1 -1
  165. package/demos/pc/app/modal/event-composition-api.vue +55 -0
  166. package/demos/pc/app/modal/event.spec.ts +41 -0
  167. package/demos/pc/app/modal/event.vue +60 -0
  168. package/demos/pc/app/modal/footer-btn-content-composition-api.vue +1 -1
  169. package/demos/pc/app/modal/footer-btn-content.spec.ts +18 -32
  170. package/demos/pc/app/modal/footer-btn-props.spec.ts +1 -1
  171. package/demos/pc/app/modal/footer-slot-composition-api.vue +4 -4
  172. package/demos/pc/app/modal/footer-slot.vue +4 -4
  173. package/demos/pc/app/modal/fullscreen-composition-api.vue +1 -1
  174. package/demos/pc/app/modal/fullscreen.spec.ts +1 -1
  175. package/demos/pc/app/modal/fullscreen.vue +1 -1
  176. package/demos/pc/app/modal/grid-composition-api.vue +4 -4
  177. package/demos/pc/app/modal/grid.vue +4 -4
  178. package/demos/pc/app/modal/id-composition-api.vue +1 -1
  179. package/demos/pc/app/modal/id.spec.ts +5 -3
  180. package/demos/pc/app/modal/id.vue +1 -1
  181. package/demos/pc/app/modal/is-form-reset-composition-api.vue +4 -12
  182. package/demos/pc/app/modal/is-form-reset.spec.ts +12 -10
  183. package/demos/pc/app/modal/is-form-reset.vue +4 -13
  184. package/demos/pc/app/modal/lock-scroll-composition-api.vue +2 -2
  185. package/demos/pc/app/modal/lock-scroll.spec.ts +1 -1
  186. package/demos/pc/app/modal/lock-scroll.vue +2 -2
  187. package/demos/pc/app/modal/lock-view-composition-api.vue +1 -1
  188. package/demos/pc/app/modal/lock-view.spec.ts +6 -8
  189. package/demos/pc/app/modal/lock-view.vue +1 -1
  190. package/demos/pc/app/modal/mask-closable-composition-api.vue +1 -1
  191. package/demos/pc/app/modal/mask-closable.spec.ts +2 -2
  192. package/demos/pc/app/modal/mask-closable.vue +1 -1
  193. package/demos/pc/app/modal/message-closable-composition-api.vue +13 -0
  194. package/demos/pc/app/modal/message-closable.spec.ts +14 -0
  195. package/demos/pc/app/modal/message-closable.vue +20 -0
  196. package/demos/pc/app/modal/message-composition-api.vue +1 -1
  197. package/demos/pc/app/modal/message.spec.ts +2 -1
  198. package/demos/pc/app/modal/message.vue +2 -1
  199. package/demos/pc/app/modal/min-height-composition-api.vue +2 -1
  200. package/demos/pc/app/modal/min-height.spec.ts +3 -2
  201. package/demos/pc/app/modal/min-height.vue +2 -1
  202. package/demos/pc/app/modal/min-width-composition-api.vue +2 -1
  203. package/demos/pc/app/modal/min-width.spec.ts +3 -2
  204. package/demos/pc/app/modal/min-width.vue +2 -1
  205. package/demos/pc/app/modal/resize-composition-api.vue +1 -1
  206. package/demos/pc/app/modal/resize.spec.ts +1 -1
  207. package/demos/pc/app/modal/resize.vue +1 -1
  208. package/demos/pc/app/modal/showFooter-composition-api.vue +1 -1
  209. package/demos/pc/app/modal/showFooter.spec.ts +1 -1
  210. package/demos/pc/app/modal/showFooter.vue +1 -1
  211. package/demos/pc/app/modal/showHeader-composition-api.vue +1 -1
  212. package/demos/pc/app/modal/showHeader.spec.ts +1 -1
  213. package/demos/pc/app/modal/showHeader.vue +1 -1
  214. package/demos/pc/app/modal/status-composition-api.vue +1 -14
  215. package/demos/pc/app/modal/status.spec.ts +4 -6
  216. package/demos/pc/app/modal/status.vue +1 -13
  217. package/demos/pc/app/modal/title-composition-api.vue +1 -1
  218. package/demos/pc/app/modal/title.spec.ts +1 -1
  219. package/demos/pc/app/modal/title.vue +1 -1
  220. package/demos/pc/app/modal/top-composition-api.vue +1 -1
  221. package/demos/pc/app/modal/top.spec.ts +1 -1
  222. package/demos/pc/app/modal/top.vue +1 -1
  223. package/demos/pc/app/modal/type-composition-api.vue +1 -1
  224. package/demos/pc/app/modal/type.vue +1 -1
  225. package/demos/pc/app/modal/value-composition-api.vue +1 -1
  226. package/demos/pc/app/modal/value.spec.ts +3 -10
  227. package/demos/pc/app/modal/value.vue +1 -1
  228. package/demos/pc/app/modal/webdoc/modal.js +324 -314
  229. package/demos/pc/app/modal/z-index-composition-api.vue +11 -0
  230. package/demos/pc/app/modal/{zIndex.spec.ts → z-index.spec.ts} +3 -3
  231. package/demos/pc/app/modal/{zIndex.vue → z-index.vue} +3 -3
  232. package/demos/pc/app/notify/debounceDelay.spec.ts +4 -7
  233. package/demos/pc/app/notify/notify-events.spec.ts +4 -8
  234. package/demos/pc/app/notify/webdoc/notify.js +1 -1
  235. package/demos/pc/app/pager/align.spec.ts +13 -0
  236. package/demos/pc/app/pager/basic-usage.spec.ts +5 -23
  237. package/demos/pc/app/pager/before-page-change.spec.ts +3 -3
  238. package/demos/pc/app/pager/current-page.spec.ts +5 -5
  239. package/demos/pc/app/pager/custom-layout.spec.ts +16 -16
  240. package/demos/pc/app/pager/custom-next-prev-text.spec.ts +2 -2
  241. package/demos/pc/app/pager/custom-total.spec.ts +2 -2
  242. package/demos/pc/app/pager/disabled-and-size.spec.ts +5 -4
  243. package/demos/pc/app/pager/hide-on-single-page.spec.ts +3 -3
  244. package/demos/pc/app/pager/page-append-to-body.spec.ts +2 -2
  245. package/demos/pc/app/pager/page-count.spec.ts +2 -2
  246. package/demos/pc/app/pager/page-size.spec.ts +4 -4
  247. package/demos/pc/app/pager/pager-count.spec.ts +2 -2
  248. package/demos/pc/app/pager/pager-event-composition-api.vue +1 -1
  249. package/demos/pc/app/pager/pager-event.spec.ts +27 -10
  250. package/demos/pc/app/pager/pager-event.vue +1 -1
  251. package/demos/pc/app/pager/pager-in-grid.spec.ts +3 -3
  252. package/demos/pc/app/pager/pager-mode.spec.ts +2 -2
  253. package/demos/pc/app/pager/popper-class.spec.ts +3 -2
  254. package/demos/pc/app/pager/show-total-loading.spec.ts +5 -5
  255. package/demos/pc/app/pager/webdoc/pager.js +1 -11
  256. package/demos/pc/app/popconfirm/basic-usage.spec.ts +2 -2
  257. package/demos/pc/app/popconfirm/cancel-button.spec.ts +2 -2
  258. package/demos/pc/app/popconfirm/custom-class.spec.ts +2 -2
  259. package/demos/pc/app/popconfirm/event.spec.ts +22 -3
  260. package/demos/pc/app/popconfirm/placement.spec.ts +2 -2
  261. package/demos/pc/app/popconfirm/slot-footer.spec.ts +2 -2
  262. package/demos/pc/app/popconfirm/trigger.spec.ts +2 -2
  263. package/demos/pc/app/popconfirm/type.spec.ts +4 -4
  264. package/demos/pc/app/popconfirm/width.spec.ts +2 -2
  265. package/demos/pc/app/popeditor/auto-lookup.spec.ts +1 -1
  266. package/demos/pc/app/popeditor/auto-reset.spec.ts +1 -1
  267. package/demos/pc/app/popeditor/basic-usage.spec.ts +3 -5
  268. package/demos/pc/app/popeditor/before-close.spec.ts +1 -2
  269. package/demos/pc/app/popeditor/before-reset.spec.ts +1 -1
  270. package/demos/pc/app/popeditor/clearable.spec.ts +1 -1
  271. package/demos/pc/app/popeditor/condition-form.spec.ts +16 -10
  272. package/demos/pc/app/popeditor/condition-layout.spec.ts +1 -1
  273. package/demos/pc/app/popeditor/conditions.spec.ts +1 -1
  274. package/demos/pc/app/popeditor/disabled.spec.ts +1 -2
  275. package/demos/pc/app/popeditor/draggable.spec.ts +1 -1
  276. package/demos/pc/app/popeditor/events.spec.ts +1 -1
  277. package/demos/pc/app/popeditor/grid.spec.ts +1 -1
  278. package/demos/pc/app/popeditor/icon.spec.ts +1 -1
  279. package/demos/pc/app/popeditor/multi-value-array.spec.ts +1 -5
  280. package/demos/pc/app/popeditor/multi.spec.ts +1 -1
  281. package/demos/pc/app/popeditor/pager.spec.ts +1 -1
  282. package/demos/pc/app/popeditor/readonly.spec.ts +1 -1
  283. package/demos/pc/app/popeditor/remote-search.spec.ts +1 -1
  284. package/demos/pc/app/popeditor/render-text.spec.ts +1 -1
  285. package/demos/pc/app/popeditor/resize.spec.ts +1 -1
  286. package/demos/pc/app/popeditor/selected-box.spec.ts +1 -1
  287. package/demos/pc/app/popeditor/show-clear-btn.spec.ts +6 -7
  288. package/demos/pc/app/popeditor/show-history.spec.ts +1 -1
  289. package/demos/pc/app/popeditor/show-overflow.spec.ts +3 -5
  290. package/demos/pc/app/popeditor/single-select-radio.spec.ts +1 -1
  291. package/demos/pc/app/popeditor/size.spec.ts +8 -4
  292. package/demos/pc/app/popeditor/slot-footer.spec.ts +2 -2
  293. package/demos/pc/app/popeditor/slot.spec.ts +1 -1
  294. package/demos/pc/app/popeditor/suggest.spec.ts +1 -1
  295. package/demos/pc/app/popeditor/tabindex.spec.ts +1 -1
  296. package/demos/pc/app/popeditor/textField.spec.ts +2 -2
  297. package/demos/pc/app/popeditor/title.spec.ts +2 -2
  298. package/demos/pc/app/popeditor/tree.spec.ts +1 -1
  299. package/demos/pc/app/popeditor/trigger.spec.ts +1 -1
  300. package/demos/pc/app/popeditor/width.spec.ts +1 -1
  301. package/demos/pc/app/popover/basic-usage.spec.js +1 -1
  302. package/demos/pc/app/popover/content.spec.js +4 -4
  303. package/demos/pc/app/popover/custom-popper.spec.js +3 -7
  304. package/demos/pc/app/popover/delay.spec.js +2 -5
  305. package/demos/pc/app/popover/disabled.spec.js +4 -4
  306. package/demos/pc/app/popover/dynamic-reference-composition-api.vue +36 -0
  307. package/demos/pc/app/popover/dynamic-reference.spec.js +16 -0
  308. package/demos/pc/app/popover/dynamic-reference.vue +45 -0
  309. package/demos/pc/app/popover/events.spec.js +1 -6
  310. package/demos/pc/app/popover/offset.spec.js +3 -10
  311. package/demos/pc/app/popover/popper-options.spec.js +1 -1
  312. package/demos/pc/app/popover/transition.spec.js +9 -8
  313. package/demos/pc/app/popover/trigger.spec.js +6 -6
  314. package/demos/pc/app/popover/webdoc/popover.js +16 -2
  315. package/demos/pc/app/progress/basic-usage-composition-api.vue +1 -1
  316. package/demos/pc/app/progress/basic-usage.spec.ts +13 -7
  317. package/demos/pc/app/progress/basic-usage.vue +1 -1
  318. package/demos/pc/app/progress/custom-status.spec.ts +11 -0
  319. package/demos/pc/app/progress/format-text.spec.ts +9 -1
  320. package/demos/pc/app/progress/progress-status.spec.ts +1 -1
  321. package/demos/pc/app/progress/progress-type-circle.spec.ts +6 -6
  322. package/demos/pc/app/progress/progress-type-dashboard-composition-api.vue +9 -2
  323. package/demos/pc/app/progress/progress-type-dashboard.spec.ts +4 -4
  324. package/demos/pc/app/progress/progress-type-dashboard.vue +10 -3
  325. package/demos/pc/app/radio/active-color.spec.ts +8 -5
  326. package/demos/pc/app/radio/basic-usage.spec.ts +15 -2
  327. package/demos/pc/app/radio/default-slot.spec.ts +5 -3
  328. package/demos/pc/app/radio/dynamic-disable.spec.ts +3 -1
  329. package/demos/pc/app/radio/radio-events.spec.ts +4 -2
  330. package/demos/pc/app/radio/radio-group.spec.ts +17 -0
  331. package/demos/pc/app/radio/radio-size.spec.ts +10 -6
  332. package/demos/pc/app/radio/radio-text.spec.ts +7 -4
  333. package/demos/pc/app/radio/vertical.spec.ts +4 -2
  334. package/demos/pc/app/radio/webdoc/radio.js +1 -1
  335. package/demos/pc/app/rate/allow-half.spec.js +1 -3
  336. package/demos/pc/app/rate/basic-usage.spec.js +1 -8
  337. package/demos/pc/app/rate/custom-3-threshold-colors.spec.js +2 -0
  338. package/demos/pc/app/rate/not-selected-color.spec.js +3 -3
  339. package/demos/pc/app/rate/rate-events.spec.js +1 -1
  340. package/demos/pc/app/rate/threshold-value.spec.js +2 -0
  341. package/demos/pc/app/rate/webdoc/rate.js +1 -1
  342. package/demos/pc/app/rich-text-editor/basic-usage-composition-api.vue +17 -1
  343. package/demos/pc/app/rich-text-editor/basic-usage.vue +21 -3
  344. package/demos/pc/app/rich-text-editor/webdoc/rich-text-editor.js +5 -20
  345. package/demos/pc/app/search/basic-usage.spec.ts +6 -7
  346. package/demos/pc/app/search/clearable.spec.ts +1 -1
  347. package/demos/pc/app/search/custom-search-types.spec.ts +1 -1
  348. package/demos/pc/app/search/events.spec.ts +10 -10
  349. package/demos/pc/app/search/search-types.spec.ts +1 -1
  350. package/demos/pc/app/search/show-selected-types.spec.ts +1 -1
  351. package/demos/pc/app/select/allow-create.spec.ts +23 -9
  352. package/demos/pc/app/select/automatic-dropdown-composition-api.vue +1 -1
  353. package/demos/pc/app/select/automatic-dropdown.spec.ts +21 -6
  354. package/demos/pc/app/select/automatic-dropdown.vue +1 -1
  355. package/demos/pc/app/select/basic-usage.spec.ts +9 -7
  356. package/demos/pc/app/select/binding-obj.spec.ts +8 -4
  357. package/demos/pc/app/select/cache-usage.spec.ts +8 -4
  358. package/demos/pc/app/select/clearable.spec.ts +8 -3
  359. package/demos/pc/app/select/collapse-tags.spec.ts +25 -13
  360. package/demos/pc/app/select/copy-multi.spec.ts +49 -0
  361. package/demos/pc/app/select/copy-single.spec.ts +70 -0
  362. package/demos/pc/app/select/{search-allow-copy.vue → copy-single.vue} +1 -1
  363. package/demos/pc/app/select/disabled.spec.ts +70 -27
  364. package/demos/pc/app/select/events-composition-api.vue +7 -6
  365. package/demos/pc/app/select/events.spec.ts +50 -55
  366. package/demos/pc/app/select/events.vue +7 -6
  367. package/demos/pc/app/select/filter-method.spec.ts +65 -28
  368. package/demos/pc/app/select/hide-drop.spec.ts +4 -3
  369. package/demos/pc/app/select/hide-drop.vue +34 -0
  370. package/demos/pc/app/select/input-box-type.spec.ts +49 -6
  371. package/demos/pc/app/select/is-drop-inherit-width.spec.ts +19 -14
  372. package/demos/pc/app/select/manual-focus-blur-composition-api.vue +4 -2
  373. package/demos/pc/app/select/manual-focus-blur.spec.ts +10 -6
  374. package/demos/pc/app/select/manual-focus-blur.vue +4 -2
  375. package/demos/pc/app/select/map-field.spec.ts +35 -11
  376. package/demos/pc/app/select/memoize-usage.spec.ts +11 -7
  377. package/demos/pc/app/select/memoize-usage.vue +3 -0
  378. package/demos/pc/app/select/multiple-limit.spec.ts +17 -11
  379. package/demos/pc/app/select/multiple.spec.ts +17 -13
  380. package/demos/pc/app/select/native-properties.spec.ts +8 -16
  381. package/demos/pc/app/select/nest-grid-composition-api.vue +50 -12
  382. package/demos/pc/app/select/nest-grid-disable.spec.ts +32 -20
  383. package/demos/pc/app/select/{nest-grid-remote-filter-composition-api.vue → nest-grid-remote-multi-composition-api.vue} +1 -1
  384. package/demos/pc/app/select/nest-grid-remote-multi.spec.ts +66 -0
  385. package/demos/pc/app/select/{nest-grid-remote-filter.vue → nest-grid-remote-multi.vue} +1 -1
  386. package/demos/pc/app/select/{nest-remote-grid-composition-api.vue → nest-grid-remote-single-composition-api.vue} +2 -3
  387. package/demos/pc/app/select/{nest-remote-grid.spec.ts → nest-grid-remote-single.spec.ts} +18 -14
  388. package/demos/pc/app/select/{nest-remote-grid.vue → nest-grid-remote-single.vue} +2 -1
  389. package/demos/pc/app/select/nest-grid.spec.ts +72 -74
  390. package/demos/pc/app/select/nest-grid.vue +22 -6
  391. package/demos/pc/app/select/nest-radio-grid-much-data.spec.ts +19 -16
  392. package/demos/pc/app/select/nest-tree.spec.ts +49 -44
  393. package/demos/pc/app/select/no-data-text.spec.ts +25 -9
  394. package/demos/pc/app/select/optimization.spec.ts +34 -30
  395. package/demos/pc/app/select/option-group.spec.ts +15 -6
  396. package/demos/pc/app/select/popup-style-position-composition-api.vue +7 -8
  397. package/demos/pc/app/select/popup-style-position.spec.ts +8 -4
  398. package/demos/pc/app/select/popup-style-position.vue +4 -5
  399. package/demos/pc/app/select/remote-method.spec.ts +56 -27
  400. package/demos/pc/app/select/searchable.spec.ts +45 -30
  401. package/demos/pc/app/select/show-alloption.spec.ts +6 -3
  402. package/demos/pc/app/select/size.spec.ts +47 -3
  403. package/demos/pc/app/select/slot-default.spec.ts +8 -5
  404. package/demos/pc/app/select/slot-empty.spec.ts +9 -6
  405. package/demos/pc/app/select/slot-footer.spec.ts +8 -5
  406. package/demos/pc/app/select/slot-prefix.spec.ts +12 -6
  407. package/demos/pc/app/select/slot-reference.spec.ts +11 -4
  408. package/demos/pc/app/select/webdoc/select.js +102 -103
  409. package/demos/pc/app/slider/about-step.spec.ts +2 -2
  410. package/demos/pc/app/slider/basic-usage.spec.ts +3 -4
  411. package/demos/pc/app/slider/dynamic-disable.spec.ts +3 -3
  412. package/demos/pc/app/slider/format-tooltip.spec.ts +1 -2
  413. package/demos/pc/app/slider/max-min.spec.ts +4 -5
  414. package/demos/pc/app/slider/range-select.spec.ts +1 -2
  415. package/demos/pc/app/slider/shortcut-operation.spec.ts +10 -21
  416. package/demos/pc/app/slider/show-iput.spec.ts +13 -4
  417. package/demos/pc/app/slider/show-tip.spec.ts +6 -6
  418. package/demos/pc/app/slider/slider-event.spec.ts +6 -9
  419. package/demos/pc/app/slider/slider-slot.spec.ts +5 -5
  420. package/demos/pc/app/slider/vertical-mode.spec.ts +2 -13
  421. package/demos/pc/app/slider/webdoc/slider.js +1 -1
  422. package/demos/pc/app/split/basic-usage.spec.ts +12 -16
  423. package/demos/pc/app/split/disabled-drag.spec.ts +20 -0
  424. package/demos/pc/app/split/event-click.spec.ts +10 -0
  425. package/demos/pc/app/split/horizontal-collapse-composition-api.vue +2 -2
  426. package/demos/pc/app/split/horizontal-collapse-left.spec.ts +8 -0
  427. package/demos/pc/app/split/horizontal-collapse.spec.ts +11 -0
  428. package/demos/pc/app/split/horizontal-collapse.vue +2 -2
  429. package/demos/pc/app/split/movestart-event.spec.ts +0 -1
  430. package/demos/pc/app/split/nested-use.spec.ts +5 -5
  431. package/demos/pc/app/split/split-mode.spec.ts +1 -1
  432. package/demos/pc/app/split/split-threshold.spec.ts +11 -16
  433. package/demos/pc/app/split/three-areas.spec.ts +9 -0
  434. package/demos/pc/app/split/trigger-simple.spec.ts +20 -0
  435. package/demos/pc/app/split/trigger-slot-composition-api.vue +2 -2
  436. package/demos/pc/app/split/trigger-slot.spec.ts +1 -1
  437. package/demos/pc/app/split/trigger-slot.vue +2 -2
  438. package/demos/pc/app/split/webdoc/split.js +25 -25
  439. package/demos/pc/app/steps/size-composition-api.vue +7 -4
  440. package/demos/pc/app/steps/size.vue +6 -1
  441. package/demos/pc/app/steps/slot-description-composition-api.vue +1 -1
  442. package/demos/pc/app/steps/vertical-steps-composition-api.vue +1 -1
  443. package/demos/pc/app/switch/basic-usage.spec.ts +15 -0
  444. package/demos/pc/app/switch/before-change.spec.ts +14 -0
  445. package/demos/pc/app/switch/custom-open-close.spec.ts +16 -0
  446. package/demos/pc/app/switch/custom-true-false-value.spec.ts +13 -0
  447. package/demos/pc/app/switch/dynamic-disable.spec.ts +14 -0
  448. package/demos/pc/app/switch/event-change.spec.ts +15 -0
  449. package/demos/pc/app/switch/mini-mode.spec.ts +11 -0
  450. package/demos/pc/app/tabs/before-leave.spec.ts +1 -1
  451. package/demos/pc/app/tabs/custom-more-icon.spec.ts +2 -2
  452. package/demos/pc/app/tabs/custom-tab-title.spec.ts +1 -1
  453. package/demos/pc/app/tabs/position.spec.ts +16 -14
  454. package/demos/pc/app/tabs/show-different-grid-data.spec.ts +1 -1
  455. package/demos/pc/app/tabs/stretch-wh.spec.ts +2 -2
  456. package/demos/pc/app/tabs/tabs-draggable.spec.ts +5 -8
  457. package/demos/pc/app/tabs/tabs-events-click.spec.ts +1 -1
  458. package/demos/pc/app/tabs/tabs-events-close.spec.ts +3 -3
  459. package/demos/pc/app/tabs/tabs-events-edit.spec.ts +3 -3
  460. package/demos/pc/app/tabs/tabs-second-layer.spec.ts +1 -1
  461. package/demos/pc/app/tabs/tabs-separator.spec.ts +5 -3
  462. package/demos/pc/app/tabs/with-add.spec.ts +3 -3
  463. package/demos/pc/app/tag-group/basic-usage.spec.js +29 -0
  464. package/demos/pc/app/tag-group/tag-group-effect.spec.js +71 -0
  465. package/demos/pc/app/tag-group/tag-group-event.spec.js +11 -0
  466. package/demos/pc/app/tag-group/tag-group-size.spec.js +20 -0
  467. package/demos/pc/app/tag-group/webdoc/tag-group.js +1 -1
  468. package/demos/pc/app/time-line/timeline-item-composition-api.vue +2 -2
  469. package/demos/pc/app/time-line/timeline-item.vue +7 -3
  470. package/demos/pc/app/tooltip/basic-usage.spec.js +4 -8
  471. package/demos/pc/app/tooltip/content.spec.js +1 -8
  472. package/demos/pc/app/tooltip/control.spec.js +12 -8
  473. package/demos/pc/app/tooltip/custom-popper-composition-api.vue +2 -16
  474. package/demos/pc/app/tooltip/custom-popper.vue +3 -16
  475. package/demos/pc/app/tooltip/delay.spec.js +3 -18
  476. package/demos/pc/app/tooltip/offset.spec.js +2 -9
  477. package/demos/pc/app/tooltip/popper-options.spec.js +2 -7
  478. package/demos/pc/app/tooltip/theme.spec.js +1 -1
  479. package/demos/pc/app/tooltip/transition.spec.js +4 -6
  480. package/demos/pc/app/tooltip/webdoc/tooltip.js +7 -6
  481. package/demos/pc/app/transfer/webdoc/transfer.js +1 -1
  482. package/demos/pc/app/tree/basic-usage-composition-api.vue +62 -57
  483. package/demos/pc/app/tree/basic-usage.vue +65 -57
  484. package/demos/pc/app/tree/check-op-composition-api.vue +109 -0
  485. package/demos/pc/app/tree/check-op.spec.ts +23 -0
  486. package/demos/pc/app/tree/check-op.vue +118 -0
  487. package/demos/pc/app/tree/checkbox-composition-api.vue +72 -0
  488. package/demos/pc/app/tree/checkbox.spec.ts +23 -0
  489. package/demos/pc/app/tree/checkbox.vue +80 -0
  490. package/demos/pc/app/tree/contextmenu-composition-api.vue +23 -83
  491. package/demos/pc/app/tree/contextmenu.vue +26 -86
  492. package/demos/pc/app/tree/drag-composition-api.vue +105 -0
  493. package/demos/pc/app/tree/drag.spec.ts +23 -0
  494. package/demos/pc/app/tree/drag.vue +117 -0
  495. package/demos/pc/app/tree/edit-composition-api.vue +40 -59
  496. package/demos/pc/app/tree/edit.vue +40 -60
  497. package/demos/pc/app/tree/expand-control-composition-api.vue +97 -0
  498. package/demos/pc/app/tree/expand-control.spec.ts +23 -0
  499. package/demos/pc/app/tree/expand-control.vue +105 -0
  500. package/demos/pc/app/tree/filter-view-composition-api.vue +86 -0
  501. package/demos/pc/app/tree/filter-view.spec.ts +23 -0
  502. package/demos/pc/app/tree/filter-view.vue +97 -0
  503. package/demos/pc/app/tree/icons-composition-api.vue +52 -0
  504. package/demos/pc/app/tree/icons.spec.ts +23 -0
  505. package/demos/pc/app/tree/icons.vue +60 -0
  506. package/demos/pc/app/tree/lazy-composition-api.vue +45 -0
  507. package/demos/pc/app/tree/lazy.spec.ts +23 -0
  508. package/demos/pc/app/tree/lazy.vue +51 -0
  509. package/demos/pc/app/tree/node-hl-composition-api.vue +81 -0
  510. package/demos/pc/app/tree/node-hl.spec.ts +23 -0
  511. package/demos/pc/app/tree/node-hl.vue +91 -0
  512. package/demos/pc/app/tree/node-op-composition-api.vue +69 -0
  513. package/demos/pc/app/tree/node-op.spec.ts +23 -0
  514. package/demos/pc/app/tree/node-op.vue +84 -0
  515. package/demos/pc/app/tree/other-composition-api.vue +38 -0
  516. package/demos/pc/app/tree/other.spec.ts +23 -0
  517. package/demos/pc/app/tree/other.vue +46 -0
  518. package/demos/pc/app/tree/props-composition-api.vue +37 -0
  519. package/demos/pc/app/tree/props.spec.ts +23 -0
  520. package/demos/pc/app/tree/props.vue +46 -0
  521. package/demos/pc/app/tree/radio-composition-api.vue +87 -0
  522. package/demos/pc/app/tree/radio.spec.ts +23 -0
  523. package/demos/pc/app/tree/radio.vue +96 -0
  524. package/demos/pc/app/tree/slot-composition-api.vue +104 -0
  525. package/demos/pc/app/tree/slot.spec.ts +23 -0
  526. package/demos/pc/app/tree/slot.vue +110 -0
  527. package/demos/pc/app/tree/webdoc/tree.cn.md +1 -1
  528. package/demos/pc/app/tree/webdoc/tree.en.md +1 -1
  529. package/demos/pc/app/tree/webdoc/tree.js +869 -651
  530. package/demos/pc/app/tree-menu/accordion-composition-api.vue +1 -5
  531. package/demos/pc/app/tree-menu/accordion.vue +1 -1
  532. package/demos/pc/app/tree-menu/basic-usage-composition-api.vue +1 -1
  533. package/demos/pc/app/tree-menu/basic-usage.vue +1 -4
  534. package/demos/pc/app/tree-menu/current-node-composition-api.vue +22 -31
  535. package/demos/pc/app/tree-menu/current-node.vue +22 -31
  536. package/demos/pc/app/tree-menu/custom-icon-composition-api.vue +11 -0
  537. package/demos/pc/app/tree-menu/custom-icon.vue +20 -0
  538. package/demos/pc/app/tree-menu/data-resource-composition-api.vue +18 -6
  539. package/demos/pc/app/tree-menu/data-resource.spec.ts +17 -2
  540. package/demos/pc/app/tree-menu/data-resource.vue +19 -2
  541. package/demos/pc/app/tree-menu/default-expand-all-composition-api.vue +10 -7
  542. package/demos/pc/app/tree-menu/default-expand-all.vue +10 -7
  543. package/demos/pc/app/tree-menu/default-expanded-keys-composition-api.vue +10 -7
  544. package/demos/pc/app/tree-menu/default-expanded-keys-highlight-composition-api.vue +18 -11
  545. package/demos/pc/app/tree-menu/default-expanded-keys-highlight.vue +18 -7
  546. package/demos/pc/app/tree-menu/default-expanded-keys.spec.ts +1 -1
  547. package/demos/pc/app/tree-menu/default-expanded-keys.vue +13 -9
  548. package/demos/pc/app/tree-menu/{can-draggable-composition-api.vue → draggable-composition-api.vue} +1 -5
  549. package/demos/pc/app/tree-menu/{can-draggable.vue → draggable.vue} +1 -5
  550. package/demos/pc/app/tree-menu/empty-text-composition-api.vue +1 -1
  551. package/demos/pc/app/tree-menu/empty-text.vue +1 -1
  552. package/demos/pc/app/tree-menu/event-allow-draggable-composition-api.vue +1 -5
  553. package/demos/pc/app/tree-menu/event-allow-draggable.vue +10 -6
  554. package/demos/pc/app/tree-menu/{event-check-change-composition-api.vue → events-composition-api.vue} +27 -7
  555. package/demos/pc/app/tree-menu/events.spec.ts +62 -0
  556. package/demos/pc/app/tree-menu/{event-check-change.vue → events.vue} +31 -12
  557. package/demos/pc/app/tree-menu/expand-on-click-node-composition-api.vue +18 -6
  558. package/demos/pc/app/tree-menu/expand-on-click-node.vue +18 -2
  559. package/demos/pc/app/tree-menu/filter-node-method-composition-api.vue +6 -8
  560. package/demos/pc/app/tree-menu/filter-node-method.vue +5 -3
  561. package/demos/pc/app/tree-menu/{tree-menu-indent-composition-api.vue → indent-composition-api.vue} +1 -5
  562. package/demos/pc/app/tree-menu/{tree-menu-indent.vue → indent.vue} +1 -1
  563. package/demos/pc/app/tree-menu/lazy-load-composition-api.vue +2 -4
  564. package/demos/pc/app/tree-menu/lazy-load.vue +2 -4
  565. package/demos/pc/app/tree-menu/menu-collapsible-composition-api.vue +1 -6
  566. package/demos/pc/app/tree-menu/menu-collapsible.vue +2 -2
  567. package/demos/pc/app/tree-menu/{get-menu-data-sync-composition-api.vue → only-check-children-composition-api.vue} +5 -9
  568. package/demos/pc/app/tree-menu/only-check-children.spec.ts +5 -0
  569. package/demos/pc/app/tree-menu/{get-menu-data-sync.vue → only-check-children.vue} +5 -5
  570. package/demos/pc/app/tree-menu/props-composition-api.vue +129 -0
  571. package/demos/pc/app/tree-menu/props.spec.ts +6 -0
  572. package/demos/pc/app/tree-menu/props.vue +129 -0
  573. package/demos/pc/app/tree-menu/show-checkbox-composition-api.vue +20 -7
  574. package/demos/pc/app/tree-menu/show-checkbox.spec.ts +27 -0
  575. package/demos/pc/app/tree-menu/show-checkbox.vue +19 -6
  576. package/demos/pc/app/tree-menu/{check-strictly-composition-api.vue → show-expand-composition-api.vue} +18 -9
  577. package/demos/pc/app/tree-menu/show-expand.spec.ts +10 -0
  578. package/demos/pc/app/tree-menu/show-expand.vue +132 -0
  579. package/demos/pc/app/tree-menu/{text-wrap-composition-api.vue → show-filter-composition-api.vue} +19 -7
  580. package/demos/pc/app/tree-menu/show-filter.spec.ts +6 -0
  581. package/demos/pc/app/tree-menu/{text-wrap.vue → show-filter.vue} +19 -7
  582. package/demos/pc/app/tree-menu/show-number-composition-api.vue +135 -0
  583. package/demos/pc/app/tree-menu/show-number.spec.ts +4 -0
  584. package/demos/pc/app/tree-menu/{check-strictly.vue → show-number.vue} +26 -6
  585. package/demos/pc/app/tree-menu/text-ellipsis-composition-api.vue +19 -9
  586. package/demos/pc/app/tree-menu/text-ellipsis.spec.ts +9 -0
  587. package/demos/pc/app/tree-menu/text-ellipsis.vue +19 -5
  588. package/demos/pc/app/tree-menu/tree-menu-slot-composition-api.vue +12 -9
  589. package/demos/pc/app/tree-menu/tree-menu-slot.vue +13 -16
  590. package/demos/pc/app/tree-menu/webdoc/tree-menu.cn.md +1 -1
  591. package/demos/pc/app/tree-menu/webdoc/tree-menu.en.md +1 -1
  592. package/demos/pc/app/tree-menu/webdoc/tree-menu.js +550 -341
  593. package/demos/pc/webdoc/i18n-en.md +2 -2
  594. package/demos/pc/webdoc/i18n.md +2 -5
  595. package/demos/pc/webdoc/theme-en.md +34 -3
  596. package/demos/pc/webdoc/theme.md +27 -1
  597. package/package.json +7 -7
  598. package/src/tools/utils.js +23 -2
  599. package/src/views/components/VersionTip.vue +192 -0
  600. package/src/views/components/components.vue +29 -4
  601. package/src/views/layout/layout.vue +30 -2
  602. package/demos/pc/app/checkbox/button-check-box.spec.ts +0 -12
  603. package/demos/pc/app/checkbox/with-border-composition-api.vue +0 -48
  604. package/demos/pc/app/checkbox/with-border.spec.ts +0 -26
  605. package/demos/pc/app/checkbox/with-border.vue +0 -57
  606. package/demos/pc/app/form/custom-validation-rule.spec.js +0 -93
  607. package/demos/pc/app/form/form-clear-validate-composition-api.vue +0 -114
  608. package/demos/pc/app/form/form-clear-validate.spec.js +0 -29
  609. package/demos/pc/app/form/form-clear-validate.vue +0 -114
  610. package/demos/pc/app/form/size.spec.js +0 -22
  611. package/demos/pc/app/modal/cancel-event-composition-api.vue +0 -21
  612. package/demos/pc/app/modal/cancel-event.spec.ts +0 -12
  613. package/demos/pc/app/modal/cancel-event.vue +0 -31
  614. package/demos/pc/app/modal/close-event-composition-api.vue +0 -21
  615. package/demos/pc/app/modal/close-event.spec.ts +0 -12
  616. package/demos/pc/app/modal/close-event.vue +0 -31
  617. package/demos/pc/app/modal/confirm-event-composition-api.vue +0 -21
  618. package/demos/pc/app/modal/confirm-event.spec.ts +0 -12
  619. package/demos/pc/app/modal/confirm-event.vue +0 -31
  620. package/demos/pc/app/modal/hide-event-composition-api.vue +0 -21
  621. package/demos/pc/app/modal/hide-event.spec.ts +0 -17
  622. package/demos/pc/app/modal/hide-event.vue +0 -31
  623. package/demos/pc/app/modal/show-event-composition-api.vue +0 -21
  624. package/demos/pc/app/modal/show-event.spec.ts +0 -11
  625. package/demos/pc/app/modal/show-event.vue +0 -31
  626. package/demos/pc/app/modal/zIndex-composition-api.vue +0 -11
  627. package/demos/pc/app/modal/zoom-event-composition-api.vue +0 -21
  628. package/demos/pc/app/modal/zoom-event.spec.ts +0 -19
  629. package/demos/pc/app/modal/zoom-event.vue +0 -31
  630. package/demos/pc/app/progress/text-inside-or-no-text.spec.ts +0 -14
  631. package/demos/pc/app/select/nest-grid-remote-filter.spec.ts +0 -58
  632. package/demos/pc/app/select/search-allow-copy.spec.ts +0 -52
  633. package/demos/pc/app/select/show-tip.spec.ts +0 -0
  634. package/demos/pc/app/select/tag-select.spec.ts +0 -32
  635. package/demos/pc/app/split/basic-usage1-composition-api.vue +0 -27
  636. package/demos/pc/app/split/basic-usage1.spec.ts +0 -20
  637. package/demos/pc/app/split/basic-usage1.vue +0 -33
  638. package/demos/pc/app/tree/accordion-mode-composition-api.vue +0 -81
  639. package/demos/pc/app/tree/accordion-mode.spec.ts +0 -14
  640. package/demos/pc/app/tree/accordion-mode.vue +0 -89
  641. package/demos/pc/app/tree/allow-drag-composition-api.vue +0 -63
  642. package/demos/pc/app/tree/allow-drag.spec.ts +0 -21
  643. package/demos/pc/app/tree/allow-drag.vue +0 -73
  644. package/demos/pc/app/tree/allow-drop-composition-api.vue +0 -67
  645. package/demos/pc/app/tree/allow-drop.spec.ts +0 -20
  646. package/demos/pc/app/tree/allow-drop.vue +0 -76
  647. package/demos/pc/app/tree/auto-expand-parent-composition-api.vue +0 -85
  648. package/demos/pc/app/tree/auto-expand-parent.spec.ts +0 -11
  649. package/demos/pc/app/tree/auto-expand-parent.vue +0 -93
  650. package/demos/pc/app/tree/check-on-click-node-composition-api.vue +0 -106
  651. package/demos/pc/app/tree/check-on-click-node.spec.ts +0 -30
  652. package/demos/pc/app/tree/check-on-click-node.vue +0 -111
  653. package/demos/pc/app/tree/check-strictly-composition-api.vue +0 -59
  654. package/demos/pc/app/tree/check-strictly.spec.ts +0 -48
  655. package/demos/pc/app/tree/check-strictly.vue +0 -67
  656. package/demos/pc/app/tree/current-node-key-composition-api.vue +0 -59
  657. package/demos/pc/app/tree/current-node-key.spec.ts +0 -15
  658. package/demos/pc/app/tree/current-node-key.vue +0 -67
  659. package/demos/pc/app/tree/custom-empty-text-composition-api.vue +0 -14
  660. package/demos/pc/app/tree/custom-empty-text.spec.ts +0 -9
  661. package/demos/pc/app/tree/custom-empty-text.vue +0 -22
  662. package/demos/pc/app/tree/custom-node-icon-composition-api.vue +0 -61
  663. package/demos/pc/app/tree/custom-node-icon.spec.ts +0 -18
  664. package/demos/pc/app/tree/custom-node-icon.vue +0 -69
  665. package/demos/pc/app/tree/data-source-composition-api.vue +0 -59
  666. package/demos/pc/app/tree/data-source.spec.ts +0 -14
  667. package/demos/pc/app/tree/data-source.vue +0 -67
  668. package/demos/pc/app/tree/default-checked-keys-composition-api.vue +0 -66
  669. package/demos/pc/app/tree/default-checked-keys.spec.ts +0 -17
  670. package/demos/pc/app/tree/default-checked-keys.vue +0 -74
  671. package/demos/pc/app/tree/default-expand-all-composition-api.vue +0 -59
  672. package/demos/pc/app/tree/default-expand-all.spec.ts +0 -15
  673. package/demos/pc/app/tree/default-expand-all.vue +0 -67
  674. package/demos/pc/app/tree/default-expanded-keys-composition-api.vue +0 -74
  675. package/demos/pc/app/tree/default-expanded-keys.vue +0 -82
  676. package/demos/pc/app/tree/default-expended-keys.spec.ts +0 -15
  677. package/demos/pc/app/tree/disable-node-composition-api.vue +0 -62
  678. package/demos/pc/app/tree/disable-node.spec.ts +0 -44
  679. package/demos/pc/app/tree/disable-node.vue +0 -70
  680. package/demos/pc/app/tree/drag-events-composition-api.vue +0 -88
  681. package/demos/pc/app/tree/drag-events.spec.ts +0 -23
  682. package/demos/pc/app/tree/drag-events.vue +0 -93
  683. package/demos/pc/app/tree/expand-on-click-node-composition-api.vue +0 -59
  684. package/demos/pc/app/tree/expand-on-click-node.spec.ts +0 -24
  685. package/demos/pc/app/tree/expand-on-click-node.vue +0 -67
  686. package/demos/pc/app/tree/filter-node-composition-api.vue +0 -79
  687. package/demos/pc/app/tree/filter-node.spec.ts +0 -12
  688. package/demos/pc/app/tree/filter-node.vue +0 -89
  689. package/demos/pc/app/tree/guide-line-composition-api.vue +0 -89
  690. package/demos/pc/app/tree/guide-line.spec.ts +0 -9
  691. package/demos/pc/app/tree/guide-line.vue +0 -100
  692. package/demos/pc/app/tree/highlight-current-composition-api.vue +0 -59
  693. package/demos/pc/app/tree/highlight-current.spec.ts +0 -10
  694. package/demos/pc/app/tree/highlight-current.vue +0 -67
  695. package/demos/pc/app/tree/indent-composition-api.vue +0 -59
  696. package/demos/pc/app/tree/indent.spec.ts +0 -11
  697. package/demos/pc/app/tree/indent.vue +0 -67
  698. package/demos/pc/app/tree/lazy-load-node-composition-api.vue +0 -70
  699. package/demos/pc/app/tree/lazy-load-node.spec.ts +0 -19
  700. package/demos/pc/app/tree/lazy-load-node.vue +0 -77
  701. package/demos/pc/app/tree/node-contextmenu-composition-api.vue +0 -73
  702. package/demos/pc/app/tree/node-contextmenu.spec.ts +0 -12
  703. package/demos/pc/app/tree/node-contextmenu.vue +0 -81
  704. package/demos/pc/app/tree/node-draggable-composition-api.vue +0 -63
  705. package/demos/pc/app/tree/node-draggable.spec.ts +0 -27
  706. package/demos/pc/app/tree/node-draggable.vue +0 -72
  707. package/demos/pc/app/tree/node-events-composition-api.vue +0 -67
  708. package/demos/pc/app/tree/node-events.spec.ts +0 -11
  709. package/demos/pc/app/tree/node-events.vue +0 -75
  710. package/demos/pc/app/tree/node-key-composition-api.vue +0 -150
  711. package/demos/pc/app/tree/node-key.spec.ts +0 -46
  712. package/demos/pc/app/tree/node-key.vue +0 -154
  713. package/demos/pc/app/tree/node-props-config-composition-api.vue +0 -63
  714. package/demos/pc/app/tree/node-props-config.spec.ts +0 -13
  715. package/demos/pc/app/tree/node-props-config.vue +0 -71
  716. package/demos/pc/app/tree/plain-mode-composition-api.vue +0 -110
  717. package/demos/pc/app/tree/plain-mode.spec.ts +0 -52
  718. package/demos/pc/app/tree/plain-mode.vue +0 -120
  719. package/demos/pc/app/tree/render-after-expand-composition-api.vue +0 -74
  720. package/demos/pc/app/tree/render-after-expand.spec.ts +0 -10
  721. package/demos/pc/app/tree/render-after-expand.vue +0 -83
  722. package/demos/pc/app/tree/render-content-composition-api.vue +0 -104
  723. package/demos/pc/app/tree/render-content.spec.ts +0 -28
  724. package/demos/pc/app/tree/render-content.vue +0 -112
  725. package/demos/pc/app/tree/set-tree-icon-composition-api.vue +0 -73
  726. package/demos/pc/app/tree/set-tree-icon.spec.ts +0 -13
  727. package/demos/pc/app/tree/set-tree-icon.vue +0 -81
  728. package/demos/pc/app/tree/show-checkbox-composition-api.vue +0 -94
  729. package/demos/pc/app/tree/show-checkbox.spec.ts +0 -45
  730. package/demos/pc/app/tree/show-checkbox.vue +0 -99
  731. package/demos/pc/app/tree/single-select-radio-composition-api.vue +0 -76
  732. package/demos/pc/app/tree/single-select-radio.spec.ts +0 -16
  733. package/demos/pc/app/tree/single-select-radio.vue +0 -85
  734. package/demos/pc/app/tree/slot-deffault-composition-api.vue +0 -110
  735. package/demos/pc/app/tree/slot-deffault.spec.ts +0 -13
  736. package/demos/pc/app/tree/slot-deffault.vue +0 -119
  737. package/demos/pc/app/tree/slot-operation-composition-api.vue +0 -127
  738. package/demos/pc/app/tree/slot-operation.spec.ts +0 -16
  739. package/demos/pc/app/tree/slot-operation.vue +0 -129
  740. package/demos/pc/app/tree-menu/check-strictly.spec.ts +0 -24
  741. package/demos/pc/app/tree-menu/event-check-change.spec.ts +0 -16
  742. package/demos/pc/app/tree-menu/event-current-change-composition-api.vue +0 -171
  743. package/demos/pc/app/tree-menu/event-current-change.spec.ts +0 -12
  744. package/demos/pc/app/tree-menu/event-current-change.vue +0 -180
  745. package/demos/pc/app/tree-menu/event-node-click-composition-api.vue +0 -171
  746. package/demos/pc/app/tree-menu/event-node-click.spec.ts +0 -14
  747. package/demos/pc/app/tree-menu/event-node-click.vue +0 -180
  748. package/demos/pc/app/tree-menu/event-node-collapse-composition-api.vue +0 -171
  749. package/demos/pc/app/tree-menu/event-node-collapse.spec.ts +0 -11
  750. package/demos/pc/app/tree-menu/event-node-collapse.vue +0 -180
  751. package/demos/pc/app/tree-menu/event-node-expand-composition-api.vue +0 -171
  752. package/demos/pc/app/tree-menu/event-node-expand.spec.ts +0 -10
  753. package/demos/pc/app/tree-menu/event-node-expand.vue +0 -180
  754. package/demos/pc/app/tree-menu/get-menu-data-sync.spec.ts +0 -16
  755. package/demos/pc/app/tree-menu/search-icon-composition-api.vue +0 -10
  756. package/demos/pc/app/tree-menu/search-icon.vue +0 -19
  757. package/demos/pc/app/tree-menu/text-wrap.spec.ts +0 -9
  758. /package/demos/pc/app/modal/{base-composition-api.vue → basic-usage-composition-api.vue} +0 -0
  759. /package/demos/pc/app/modal/{base.vue → basic-usage.vue} +0 -0
  760. /package/demos/pc/app/select/{tag-select-composition-api.vue → copy-multi-composition-api.vue} +0 -0
  761. /package/demos/pc/app/select/{tag-select.vue → copy-multi.vue} +0 -0
  762. /package/demos/pc/app/select/{search-allow-copy-composition-api.vue → copy-single-composition-api.vue} +0 -0
  763. /package/demos/pc/app/tree-menu/{search-icon.spec.ts → custom-icon.spec.ts} +0 -0
  764. /package/demos/pc/app/tree-menu/{can-draggable.spec.ts → draggable.spec.ts} +0 -0
  765. /package/demos/pc/app/tree-menu/{tree-menu-indent.spec.ts → indent.spec.ts} +0 -0
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div>
3
3
  <p>场景1:使用 menu-options 属性定义 children</p>
4
- <tiny-dropdown :menu-options="menuOptions"></tiny-dropdown>
4
+ <tiny-dropdown :menu-options="menuOptions" @item-click="itemClick"></tiny-dropdown>
5
5
  <p>场景2:使用 options 属性定义 children</p>
6
6
  <tiny-dropdown @item-click="itemClick">
7
7
  <template #dropdown>
@@ -68,15 +68,7 @@ export default {
68
68
  icon: iconStarDisable()
69
69
  }
70
70
  ]
71
- },
72
- childrenOption: [
73
- {
74
- label: '老友粉2.1',
75
- children: [{ label: '狮子头3.1' }]
76
- },
77
- { label: '老友粉2.2' },
78
- { label: '老友粉2.3', disabled: true }
79
- ]
71
+ }
80
72
  }
81
73
  },
82
74
  methods: {
@@ -1,18 +1,98 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('使用配置式', async ({ page }) => {
3
+ // 场景1
4
+ test('配置式:使用 menu-options', async ({ page }) => {
4
5
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
6
  await page.goto('dropdown#options')
6
7
 
7
- const preview = page.locator('#preview')
8
- const dropDown = preview.locator('.tiny-dropdown')
9
- const menuOptionDropDown = dropDown.first()
10
- const titleOptionDropDown = dropDown.nth(2)
8
+ const wrap = page.locator('#options')
9
+ const dropDown = wrap.locator('.tiny-dropdown').first()
11
10
  const dropDownMenu = page.locator('body > .tiny-dropdown-menu')
12
- const dropDownMenuItem = page.locator('body > .tiny-dropdown-menu > .tiny-dropdown-item')
11
+ const dropDownMenuItem = dropDownMenu.locator('.tiny-dropdown-item')
13
12
 
14
- await expect(titleOptionDropDown).toContainText('点击下拉')
15
- await menuOptionDropDown.hover()
13
+ await page.waitForTimeout(200)
14
+ await dropDown.hover()
15
+ await expect(dropDownMenu.first()).toBeVisible()
16
+ await expect(dropDownMenuItem.first()).toContainText('老友粉')
17
+ await expect(dropDownMenuItem.first()).toHaveClass(/is-disabled/)
18
+ await expect(dropDownMenuItem.nth(2)).toContainText('黄金糕')
19
+ // 检测配置的图标是否出现
20
+ await expect(dropDownMenuItem.nth(2).locator('svg > path')).toHaveAttribute('d', /^M12 2\.8c\.1 0.+2-\.6-\.3-1-\.3z$/)
21
+ })
22
+
23
+ // 场景2
24
+ test('配置式:使用 menu-options 和 title', async ({ page }) => {
25
+ page.on('pageerror', (exception) => expect(exception).toBeNull())
26
+ await page.goto('dropdown#options')
27
+
28
+ const wrap = page.locator('#options')
29
+ const dropDown = wrap.locator('.tiny-dropdown').nth(1)
30
+ const dropDownMenu = page.locator('body > .tiny-dropdown-menu')
31
+ const dropDownMenuItem = dropDownMenu.locator('.tiny-dropdown-item')
32
+
33
+ await expect(dropDown).toContainText('点击下拉')
34
+ await page.waitForTimeout(200)
35
+ await dropDown.hover()
36
+ await expect(dropDownMenu.first()).toBeVisible()
37
+ await expect(dropDownMenuItem.first()).toContainText('老友粉')
38
+ await expect(dropDownMenuItem.first()).toHaveClass(/is-disabled/)
39
+ await expect(dropDownMenuItem.nth(2)).toContainText('黄金糕')
40
+ // 检测配置的图标是否出现
41
+ await expect(dropDownMenuItem.nth(2).locator('svg > path')).toHaveAttribute('d', /^M12 2\.8c\.1 0.+2-\.6-\.3-1-\.3z$/)
42
+ })
43
+
44
+ // 场景3
45
+ test('配置式:使用 menu-options 和 text-field', async ({ page }) => {
46
+ page.on('pageerror', (exception) => expect(exception).toBeNull())
47
+ await page.goto('dropdown#options')
48
+
49
+ const wrap = page.locator('#options')
50
+ const dropDown = wrap.locator('.tiny-dropdown').nth(2)
51
+ const dropDownMenu = page.locator('body > .tiny-dropdown-menu')
52
+ const dropDownMenuItem = dropDownMenu.locator('.tiny-dropdown-item')
53
+
54
+ await page.waitForTimeout(1200)
55
+ await dropDown.hover()
56
+ await expect(dropDownMenu.first()).toBeVisible()
57
+ await expect(dropDownMenuItem.first()).toContainText('老友粉')
58
+ await expect(dropDownMenuItem.first()).toHaveClass(/is-disabled/)
59
+ await expect(dropDownMenuItem.nth(2)).toContainText('黄金糕')
60
+ // 检测配置的图标是否出现
61
+ await expect(dropDownMenuItem.nth(2).locator('svg > path')).toHaveAttribute('d', /^M12 2\.8c\.1 0.+2-\.6-\.3-1-\.3z$/)
62
+ })
63
+
64
+ // 场景4
65
+ test('配置式:使用 options', async ({ page }) => {
66
+ page.on('pageerror', (exception) => expect(exception).toBeNull())
67
+ await page.goto('dropdown#options')
68
+
69
+ const wrap = page.locator('#options')
70
+ const dropDown = wrap.locator('.tiny-dropdown').nth(3)
71
+ const dropDownMenu = page.locator('body > .tiny-dropdown-menu')
72
+ const dropDownMenuItem = dropDownMenu.locator('.tiny-dropdown-item')
73
+
74
+ await page.waitForTimeout(300)
75
+ await dropDown.hover()
76
+ await expect(dropDownMenu.first()).toBeVisible()
77
+ await expect(dropDownMenuItem.first()).toContainText('老友粉')
78
+ await expect(dropDownMenuItem.first()).toHaveClass(/is-disabled/)
79
+ await expect(dropDownMenuItem.nth(2)).toContainText('黄金糕')
80
+ // 检测配置的图标是否出现
81
+ await expect(dropDownMenuItem.nth(2).locator('svg > path')).toHaveAttribute('d', /^M12 2\.8c\.1 0.+2-\.6-\.3-1-\.3z$/)
82
+ })
83
+
84
+ // 场景5
85
+ test('配置式:使用 options 和 text-field ', async ({ page }) => {
86
+ page.on('pageerror', (exception) => expect(exception).toBeNull())
87
+ await page.goto('dropdown#options')
88
+
89
+ const wrap = page.locator('#options')
90
+ const dropDown = wrap.locator('.tiny-dropdown').nth(4)
91
+ const dropDownMenu = page.locator('body > .tiny-dropdown-menu')
92
+ const dropDownMenuItem = dropDownMenu.locator('.tiny-dropdown-item')
93
+
94
+ await page.waitForTimeout(300)
95
+ await dropDown.hover()
16
96
  await expect(dropDownMenu.first()).toBeVisible()
17
97
  await expect(dropDownMenuItem.first()).toContainText('老友粉')
18
98
  await expect(dropDownMenuItem.first()).toHaveClass(/is-disabled/)
@@ -4,8 +4,9 @@ test('不同尺寸', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('dropdown#size')
6
6
 
7
- const preview = page.locator('#preview')
8
- const dropDown = preview.locator('.tiny-dropdown')
7
+ const wrap = page.locator('#size')
8
+ const dropDown = wrap.locator('.tiny-dropdown')
9
+
9
10
  const defaultDropDown = dropDown.first()
10
11
  const mediumDropDown = dropDown.nth(1)
11
12
  const smallDropDown = dropDown.nth(2)
@@ -2,7 +2,7 @@
2
2
  <tiny-dropdown @visible-change="visibleChange">
3
3
  <span>默认插槽</span>
4
4
  <template #suffix-icon>
5
- <tiny-icon-sandwich-collapse></tiny-icon-sandwich-collapse>
5
+ <tiny-icon-ascending></tiny-icon-ascending>
6
6
  </template>
7
7
  <template #dropdown>
8
8
  <tiny-dropdown-menu>
@@ -17,12 +17,12 @@
17
17
  </template>
18
18
 
19
19
  <script setup>
20
- import { iconSandwichCollapse } from '@opentiny/vue-icon'
20
+ import { iconAscending } from '@opentiny/vue-icon'
21
21
  import {
22
22
  Dropdown as TinyDropdown,
23
23
  DropdownMenu as TinyDropdownMenu,
24
24
  DropdownItem as TinyDropdownItem
25
25
  } from '@opentiny/vue'
26
26
 
27
- const TinyIconSandwichCollapse = iconSandwichCollapse()
27
+ const TinyIconAscending = iconAscending()
28
28
  </script>
@@ -1,11 +1,18 @@
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('dropdown#slot-default')
5
+ await page.goto('dropdown#slots')
6
6
 
7
- const preview = page.locator('#preview')
8
- const dropDown = preview.locator('.tiny-dropdown')
7
+ const wrap = page.locator('#slots')
8
+ const dropDown = wrap.locator('.tiny-dropdown')
9
+ const dropDownSvg = dropDown.locator('svg')
9
10
 
11
+ // 默认插槽
10
12
  await expect(dropDown).toContainText('默认插槽')
13
+ // suffix-icon 插槽
14
+ await expect(dropDownSvg.locator('path')).toHaveAttribute(
15
+ 'd',
16
+ 'M337.288 105.538c11.775-6.513 13.163-7.275 22.5-2.313l4.188 2.3c3.712 4.863 4.387 5.75 5.063 9.962l.475 3.388v377.463h-37.5V163.875l-105.5 105.538L200 242.9l137.288-137.362zM500 418.75v37.5h-75v-37.5h75zm37.5-87.5v37.5H425v-37.5h112.5zm37.5-87.5v37.5H425v-37.5h150zm37.5-87.5v37.5H425v-37.5h187.5z'
17
+ )
11
18
  })
@@ -1,11 +1,11 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('触发对象,配置split-button属性', async ({ page }) => {
3
+ test('按钮类型', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('dropdown#split-button')
6
6
 
7
- const preview = page.locator('#preview')
8
- const dropDown = preview.locator('.tiny-dropdown')
7
+ const wrap = page.locator('#split-button')
8
+ const dropDown = wrap.locator('.tiny-dropdown')
9
9
  const dropDownMenu = page.locator('body > .tiny-dropdown-menu')
10
10
  const textBtn = dropDown.locator('button').first()
11
11
  const dropDownBtn = dropDown.locator('button').nth(1)
@@ -16,7 +16,9 @@ test('触发对象,配置split-button属性', async ({ page }) => {
16
16
  await expect(textBtn).toHaveCSS('color', 'rgb(255, 255, 255)')
17
17
  await expect(dropDownBtn).toHaveCSS('background-color', 'rgb(80, 212, 171)')
18
18
  await expect(dropDownBtn).toHaveCSS('color', 'rgb(255, 255, 255)')
19
+
19
20
  // 文字悬浮不出现下拉菜单
21
+ await page.waitForTimeout(500)
20
22
  await textBtn.hover()
21
23
  await expect(dropDownMenu).not.toBeVisible()
22
24
  await dropDownBtn.hover()
@@ -4,8 +4,8 @@ test('自定义文本', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('dropdown#title')
6
6
 
7
- const preview = page.locator('#preview')
8
- const dropDown = preview.locator('.tiny-dropdown')
7
+ const wrap = page.locator('#title')
8
+ const dropDown = wrap.locator('.tiny-dropdown')
9
9
 
10
10
  await expect(dropDown).toContainText('自定义文本')
11
11
  })
@@ -4,14 +4,18 @@ test('触发方式', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('dropdown#trigger')
6
6
 
7
- const preview = page.locator('#preview')
8
- const dropDown = preview.locator('.tiny-dropdown')
7
+ const wrap = page.locator('#trigger')
8
+ const dropDown = wrap.locator('.tiny-dropdown')
9
9
  const dropDownMenu = page.locator('body > .tiny-dropdown-menu')
10
10
  const hoverTrigger = dropDown.first()
11
11
  const clickTrigger = dropDown.nth(1)
12
12
 
13
+ // hover
14
+ await page.waitForTimeout(1200)
13
15
  await hoverTrigger.hover()
14
16
  await expect(dropDownMenu.first()).toBeVisible()
17
+ // click
18
+ await page.waitForTimeout(1200)
15
19
  await clickTrigger.hover()
16
20
  await expect(dropDownMenu.nth(1)).not.toBeVisible()
17
21
  await clickTrigger.click()
@@ -5,7 +5,10 @@ export default {
5
5
  {
6
6
  'demoId': 'basic-usage',
7
7
  'name': { 'zh-CN': '基本用法', 'en-US': 'Basic Usage' },
8
- 'desc': { 'zh-CN': '<p></p>\n', 'en-US': '<p></p>\n' },
8
+ 'desc': {
9
+ 'zh-CN': '<p>使用 tiny-dropdown-item 定义菜单节点</p>\n',
10
+ 'en-US': '<p>Define menu nodes using tiny-dropdown-item</p>\n'
11
+ },
9
12
  'codeFiles': ['basic-usage.vue']
10
13
  },
11
14
  {
@@ -246,23 +249,21 @@ export default {
246
249
  },
247
250
  {
248
251
  'name': 'size',
249
- 'type': 'string',
252
+ 'type': '"medium" | "small" | "mini"',
250
253
  'defaultValue': '',
251
254
  'desc': {
252
- 'zh-CN': '菜单尺寸,可选值: medium / small / mini。注意:只在 split-button为 true 的情况下生效',
253
- 'en-US': 'Menu size, optional values: medium/small/mini. Note: Only takes effect when split-button is true'
255
+ 'zh-CN': '菜单尺寸。注意:只在 split-button为 true 的情况下生效',
256
+ 'en-US': 'Menu size. Note: Only takes effect when split-button is true'
254
257
  },
255
258
  'demoId': 'size'
256
259
  },
257
260
  {
258
261
  'name': 'type',
259
- 'type': 'string',
262
+ 'type': '"primary" | "success" | "warning" | "danger" | "info" | "text"',
260
263
  'defaultValue': '',
261
264
  'desc': {
262
- 'zh-CN':
263
- '按钮类型,可选值: primary / success / warning / danger / info / text。注意:只在split-button为 true 的情况下有效',
264
- 'en-US':
265
- 'Button type, optional values: primary/success/warning/danger/info/text. Note: Only valid if split button is true'
265
+ 'zh-CN': '按钮类型。注意:只在split-button为 true 的情况下有效',
266
+ 'en-US': 'Button type. Note: Only valid if split button is true'
266
267
  },
267
268
  'demoId': 'split-button'
268
269
  },
@@ -278,11 +279,11 @@ export default {
278
279
  },
279
280
  {
280
281
  'name': 'trigger',
281
- 'type': 'string',
282
+ 'type': '"hover" | "click"',
282
283
  'defaultValue': 'hover',
283
284
  'desc': {
284
- 'zh-CN': '触发下拉的方式。可选值:hover / click',
285
- 'en-US': 'Trigger the dropdown method. Optional values: hover / click'
285
+ 'zh-CN': '触发下拉的方式',
286
+ 'en-US': 'Trigger the dropdown method'
286
287
  },
287
288
  'demoId': 'trigger'
288
289
  },
@@ -310,8 +311,8 @@ export default {
310
311
  'events': [
311
312
  {
312
313
  'name': 'button-click',
313
- 'type': 'Function() => void',
314
- 'defaultValue': 'Function',
314
+ 'type': '() => void',
315
+ 'defaultValue': '',
315
316
  'desc': {
316
317
  'zh-CN': '监听左侧按钮点击事件,仅 split-button 为 true 时生效',
317
318
  'en-US': 'Listen for the left button click event, only effective when split-button is true'
@@ -320,7 +321,8 @@ export default {
320
321
  },
321
322
  {
322
323
  'name': 'item-click',
323
- 'type': 'Function(data:IItemClickParam) => void',
324
+ 'type': '(data:IItemClickParam) => void',
325
+ 'typeAnchorName': 'IItemClickParam',
324
326
  'defaultValue': '',
325
327
  'desc': {
326
328
  'zh-CN': '监听点击菜单项事件',
@@ -330,7 +332,7 @@ export default {
330
332
  },
331
333
  {
332
334
  'name': 'visible-change',
333
- 'type': 'Function(status:boolean) => void',
335
+ 'type': '(status:boolean) => void',
334
336
  'defaultValue': '',
335
337
  'desc': {
336
338
  'zh-CN': '监听下拉框的显示或隐藏状态',
@@ -363,7 +365,7 @@ export default {
363
365
  ]
364
366
  },
365
367
  {
366
- 'name': 'dropdownMenu',
368
+ 'name': 'dropdown-menu',
367
369
  'type': 'component',
368
370
  'properties': [
369
371
  {
@@ -379,18 +381,17 @@ export default {
379
381
  },
380
382
  {
381
383
  'name': 'placement',
382
- 'type': 'string',
384
+ 'type': ' "top" | "top-start" | "top-end" | "bottom" | "bottom-start" | "bottom-end"',
383
385
  'defaultValue': 'bottom-end',
384
386
  'desc': {
385
- 'zh-CN': '菜单弹出位置。可选值: top / top-start / top-end / bottom / bottom-start / bottom-end',
386
- 'en-US':
387
- 'Menu pop-up location. Optional values: top / top-start / top-end/bottom / bottom-start / bottom-end'
387
+ 'zh-CN': '菜单弹出位置',
388
+ 'en-US': 'Menu pop-up location '
388
389
  },
389
390
  'demoId': 'basic-usage'
390
391
  },
391
392
  {
392
393
  'name': 'popper-class',
393
- 'type': '',
394
+ 'type': 'string',
394
395
  'defaultValue': '',
395
396
  'desc': {
396
397
  'zh-CN': '下拉弹框的类名,用于自定义样式',
@@ -423,28 +424,37 @@ export default {
423
424
  ]
424
425
  },
425
426
  {
426
- 'name': 'dropdownItem',
427
+ 'name': 'dropdown-item',
427
428
  'type': 'component',
428
429
  'properties': [
429
430
  {
430
431
  'name': 'disabled',
431
432
  'type': 'boolean',
432
433
  'defaultValue': 'false',
433
- 'desc': { 'zh-CN': '是否禁用', 'en-US': 'Is it disabled' },
434
+ 'desc': {
435
+ 'zh-CN': '是否禁用',
436
+ 'en-US': 'Is it disabled'
437
+ },
434
438
  'demoId': 'disabled'
435
439
  },
436
440
  {
437
441
  'name': 'divided',
438
442
  'type': 'boolean',
439
443
  'defaultValue': 'false',
440
- 'desc': { 'zh-CN': '是否显示分割线', 'en-US': 'Show split lines' },
444
+ 'desc': {
445
+ 'zh-CN': '是否显示分割线',
446
+ 'en-US': 'Show split lines'
447
+ },
441
448
  'demoId': 'events'
442
449
  },
443
450
  {
444
451
  'name': 'icon',
445
- 'type': '',
452
+ 'type': 'VueComponent',
446
453
  'defaultValue': '',
447
- 'desc': { 'zh-CN': '内嵌图标', 'en-US': 'Embedded icon' },
454
+ 'desc': {
455
+ 'zh-CN': '内嵌图标',
456
+ 'en-US': 'Embedded icon'
457
+ },
448
458
  'demoId': 'events'
449
459
  },
450
460
  {
@@ -452,14 +462,20 @@ export default {
452
462
  'type': 'IItemData',
453
463
  'typeAnchorName': 'IItemData',
454
464
  'defaultValue': '',
455
- 'desc': { 'zh-CN': '菜单项的配置信息', 'en-US': 'Configuration information for menu items' },
465
+ 'desc': {
466
+ 'zh-CN': '菜单项的配置信息',
467
+ 'en-US': 'Configuration information for menu items'
468
+ },
456
469
  'demoId': 'events'
457
470
  },
458
471
  {
459
472
  'name': 'label',
460
473
  'type': 'string',
461
474
  'defaultValue': '',
462
- 'desc': { 'zh-CN': '菜单项的文本', 'en-US': 'Text for menu items' },
475
+ 'desc': {
476
+ 'zh-CN': '菜单项的文本',
477
+ 'en-US': 'Text for menu items'
478
+ },
463
479
  'demoId': 'events'
464
480
  }
465
481
  ],
@@ -468,7 +484,10 @@ export default {
468
484
  'name': 'default',
469
485
  'type': '',
470
486
  'defaultValue': '',
471
- 'desc': { 'zh-CN': '菜单项文本区域', 'en-US': 'Menu item text area' },
487
+ 'desc': {
488
+ 'zh-CN': '菜单项文本区域',
489
+ 'en-US': 'Menu item text area'
490
+ },
472
491
  'demoId': 'basic-usage'
473
492
  }
474
493
  ]
@@ -480,10 +499,10 @@ export default {
480
499
  type: 'interface',
481
500
  code: `
482
501
  interface IMenuOption {
483
- "options": IItemData[]
484
- "textField"?: string
485
- "popper-class"?: string
486
- "placement"?: top | top-start | top-end | bottom | bottom-start | bottom-end
502
+ options: IItemData[]
503
+ textField?: string
504
+ popperClass?: string
505
+ placement?: 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end'
487
506
  }
488
507
  `
489
508
  },
@@ -492,13 +511,13 @@ interface IMenuOption {
492
511
  type: 'interface',
493
512
  code: `
494
513
  interface IMenuOption {
495
- "itemData": IItemData
514
+ itemData: IItemData
496
515
  // dropdownItem 组件的实例
497
- "vm": {
498
- "selected": boolean
499
- "textField: string
500
- "tipPosition: string
501
- "$el": HTMLElement
516
+ vm: {
517
+ selected: boolean
518
+ textField: string
519
+ tipPosition: string
520
+ $el: HTMLElement
502
521
  }
503
522
  }
504
523
  `
@@ -508,9 +527,9 @@ interface IMenuOption {
508
527
  type: 'interface',
509
528
  code: `
510
529
  interface IItemData {
511
- "label"?: string
512
- "disabled"?: boolean
513
- "divided"?: boolean
530
+ label?: string
531
+ disabled?: boolean
532
+ divided?: boolean
514
533
  }
515
534
  `
516
535
  }
@@ -2,13 +2,13 @@
2
2
  <div class="left-panel">
3
3
  <tiny-fall-menu :data="dataset">
4
4
  <template #level1="data">
5
- <a>{{ data.slotScope.title + 'level1' }}</a>
5
+ <a>{{ `${data.slotScope.title} level1 ` }}</a>
6
6
  </template>
7
7
  <template #level2="data">
8
- <span>{{ data.slotScope.title + 'level2' }}</span>
8
+ <span>{{ `${data.slotScope.title} level2 ` }}</span>
9
9
  </template>
10
10
  <template #level3="data">
11
- <a v-for="(level3, index) in data.slotScope" :href="level3.url" :key="index">{{ level3.title + 'level3' }}</a>
11
+ <a v-for="(level3, index) in data.slotScope" :href="level3.url" :key="index">{{ `${level3.title} level3 ` }}</a>
12
12
  </template>
13
13
  </tiny-fall-menu>
14
14
  </div>
@@ -2,13 +2,13 @@
2
2
  <div class="left-panel">
3
3
  <fall-menu :data="dataset">
4
4
  <template #level1="data">
5
- <a>{{ data.slotScope.title + 'level1' }}</a>
5
+ <a>{{ `${data.slotScope.title} level1 ` }}</a>
6
6
  </template>
7
7
  <template #level2="data">
8
- <span>{{ data.slotScope.title + 'level2' }}</span>
8
+ <span>{{ `${data.slotScope.title} level2 ` }}</span>
9
9
  </template>
10
10
  <template #level3="data">
11
- <a v-for="(level3, index) in data.slotScope" :href="level3.url" :key="index">{{ level3.title + 'level3' }}</a>
11
+ <a v-for="(level3, index) in data.slotScope" :href="level3.url" :key="index">{{ `${level3.title} level3 ` }}</a>
12
12
  </template>
13
13
  </fall-menu>
14
14
  </div>
@@ -5,7 +5,7 @@ export default {
5
5
  {
6
6
  'demoId': 'data-basic',
7
7
  'name': { 'zh-CN': '基本用法', 'en-US': 'Basic Usage' },
8
- 'desc': { 'zh-CN': '详细用法参考如下示例', 'en-US': 'For details, see the following example.' },
8
+ 'desc': { 'zh-CN': '详细用法参考如下示例。', 'en-US': 'For details, see the following example.' },
9
9
  'codeFiles': ['data-resource.vue']
10
10
  },
11
11
  {
@@ -44,10 +44,10 @@ export default {
44
44
  {
45
45
  'name': 'fall-menu',
46
46
  'type': 'component',
47
- 'properties': [
47
+ 'props': [
48
48
  {
49
49
  'name': 'data',
50
- 'type': 'object , Array',
50
+ 'type': 'object | object[]',
51
51
  'defaultValue': '',
52
52
  'desc': {
53
53
  'zh-CN': '设置瀑布菜单的数据。',
@@ -93,7 +93,8 @@ export default {
93
93
  'desc': { 'zh-CN': '自定义右侧切换图标', 'en-US': 'Customize the switch icon on the right.' },
94
94
  'demoId': 'custom-slider-icon'
95
95
  }
96
- ]
96
+ ],
97
+ types: []
97
98
  }
98
99
  ]
99
100
  }
@@ -2,10 +2,10 @@ import { test, expect } from '@playwright/test'
2
2
 
3
3
  test('测试基本表单', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
- await page.goto('form#frequently-used-form')
5
+ await page.goto('form#basic-usage')
6
6
 
7
- const preview = page.locator('#preview')
8
- const numeric = preview.locator('.tiny-numeric')
7
+ const demo = page.locator('#basic-usage')
8
+ const numeric = demo.locator('.tiny-numeric')
9
9
  const numericInput = numeric.locator('.tiny-numeric__input-inner')
10
10
  const increaseIcon = numeric.locator('.tiny-numeric__increase')
11
11
  const decreaseIcon = numeric.locator('.tiny-numeric__decrease')
@@ -19,29 +19,23 @@ test('测试基本表单', async ({ page }) => {
19
19
  await expect(numericInput).toHaveValue('0')
20
20
 
21
21
  // 日期选择器
22
- const datePicker = preview.getByRole('textbox').first()
22
+ const datePicker = demo.getByRole('textbox').first()
23
23
  await datePicker.click()
24
24
  await page.getByRole('cell', { name: '15' }).getByText('15').click()
25
25
  await expect(datePicker).toHaveValue(/15/)
26
26
 
27
27
  // 時間选择器
28
- const timePicker = preview.getByRole('textbox').nth(1)
28
+ const timePicker = demo.getByRole('textbox').nth(1)
29
29
  await timePicker.click()
30
30
  await page.getByRole('listitem').filter({ hasText: '00:30' }).click()
31
31
  await expect(timePicker).toHaveValue('00:30')
32
32
 
33
33
  // 其他输入
34
- await preview.getByPlaceholder('click').hover()
34
+ await demo.getByPlaceholder('click').first().hover()
35
35
  await expect(page.getByRole('tooltip', { name: 'TinyUI Form Demo' })).toBeVisible()
36
- await preview.getByPlaceholder('click').click()
37
- await preview.getByPlaceholder('click').fill('123')
38
- await preview.locator('textarea').click()
39
- await preview.locator('textarea').fill('456')
40
36
 
41
37
  // 提交按钮
42
38
  const dialog = page.getByText('消息提示提交确认')
43
- await preview.getByRole('button', { name: '提交' }).click()
39
+ await demo.getByRole('button', { name: '提交' }).click()
44
40
  await expect(dialog).toBeVisible()
45
- await page.getByRole('button', { name: '确认' }).click()
46
- await expect(dialog).not.toBeVisible()
47
41
  })
@@ -58,7 +58,9 @@ const rules = ref({
58
58
  })
59
59
 
60
60
  function handleSubmit() {
61
- ruleFormRef.value.validate()
61
+ ruleFormRef.value.validate(() => {
62
+ // empty
63
+ })
62
64
  }
63
65
 
64
66
  function changeRule() {