@opentiny/vue-docs 2.2.4 → 2.2.6

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 (414) hide show
  1. package/demos/mobile/app/container/basic-usage.vue +105 -0
  2. package/demos/mobile/app/container/custom-width.vue +93 -0
  3. package/demos/mobile/app/container/webdoc/container.cn.md +7 -0
  4. package/demos/mobile/app/container/webdoc/container.en.md +7 -0
  5. package/demos/mobile/app/container/webdoc/container.js +80 -0
  6. package/demos/mobile/app/pull-refresh/animation-duration.vue +58 -12
  7. package/demos/mobile/app/pull-refresh/base.vue +32 -18
  8. package/demos/mobile/app/pull-refresh/disabled-pull-down.vue +66 -0
  9. package/demos/mobile/app/pull-refresh/disabled-pull-up.vue +67 -0
  10. package/demos/mobile/app/pull-refresh/{hasmore.vue → event.vue} +21 -20
  11. package/demos/mobile/app/pull-refresh/{enhance.vue → has-more.vue} +20 -25
  12. package/demos/mobile/app/pull-refresh/loosing-text.vue +55 -12
  13. package/demos/mobile/app/pull-refresh/pull-refresh-slot.vue +64 -15
  14. package/demos/mobile/app/pull-refresh/pull-up-distance.vue +74 -0
  15. package/demos/mobile/app/pull-refresh/pulling-text.vue +56 -12
  16. package/demos/mobile/app/pull-refresh/webdoc/pull-refresh.js +98 -120
  17. package/demos/mobile/app/tabs/before-leave.vue +3 -3
  18. package/demos/mobile/app/tabs/tabs-events.vue +7 -7
  19. package/demos/mobile/menus.js +4 -1
  20. package/demos/mobile-first/app/tabs/basic-usage.vue +3 -3
  21. package/demos/mobile-first/app/tabs/before-leave.vue +3 -3
  22. package/demos/mobile-first/app/tabs/change-title.vue +2 -2
  23. package/demos/mobile-first/app/tabs/custom-tab-content.vue +3 -3
  24. package/demos/mobile-first/app/tabs/custom-tab-title.vue +3 -3
  25. package/demos/mobile-first/app/tabs/position-bottom.vue +10 -10
  26. package/demos/mobile-first/app/tabs/position-left.vue +10 -10
  27. package/demos/mobile-first/app/tabs/position-right.vue +10 -10
  28. package/demos/mobile-first/app/tabs/position.vue +10 -10
  29. package/demos/mobile-first/app/tabs/prevent-tab-switching.vue +3 -3
  30. package/demos/mobile-first/app/tabs/stretch-wh.vue +3 -3
  31. package/demos/mobile-first/app/tabs/tab-style-bordercard.vue +10 -10
  32. package/demos/mobile-first/app/tabs/tab-style-card.vue +10 -10
  33. package/demos/mobile-first/app/tabs/tabdata-title.vue +4 -4
  34. package/demos/mobile-first/app/tabs/tabs-draggable.vue +1 -1
  35. package/demos/mobile-first/app/tabs/tabs-events-add.vue +3 -3
  36. package/demos/mobile-first/app/tabs/tabs-events-click.vue +3 -3
  37. package/demos/mobile-first/app/tabs/tabs-events-close.vue +4 -4
  38. package/demos/mobile-first/app/tabs/tabs-events-edit.vue +4 -4
  39. package/demos/mobile-first/app/tabs/tabs-separator.vue +8 -8
  40. package/demos/mobile-first/app/tabs/tabs-size.vue +3 -3
  41. package/demos/mobile-first/app/tabs/tabs-tabs.vue +2 -2
  42. package/demos/mobile-first/app/tabs/with-add.vue +1 -1
  43. package/demos/pc/app/action-menu/disabled.vue +2 -1
  44. package/demos/pc/app/action-menu/icon-composition-api.vue +73 -0
  45. package/demos/pc/app/action-menu/icon.vue +79 -0
  46. package/demos/pc/app/action-menu/popper-class.spec.ts +2 -1
  47. package/demos/pc/app/action-menu/webdoc/action-menu.js +42 -1
  48. package/demos/pc/app/autocomplete/webdoc/autocomplete.js +30 -16
  49. package/demos/pc/app/breadcrumb/webdoc/breadcrumb.js +3 -3
  50. package/demos/pc/app/button/basic-usage-composition-api.vue +2 -0
  51. package/demos/pc/app/button/basic-usage.vue +2 -0
  52. package/demos/pc/app/button/click-composition-api.vue +1 -1
  53. package/demos/pc/app/button/click.vue +1 -1
  54. package/demos/pc/app/button/dynamic-disabled-composition-api.vue +10 -1
  55. package/demos/pc/app/button/{dynamic-disabled.spec.js → dynamic-disabled.spec.ts} +4 -0
  56. package/demos/pc/app/button/dynamic-disabled.vue +12 -3
  57. package/demos/pc/app/button/ghost-composition-api.vue +26 -0
  58. package/demos/pc/app/button/ghost.spec.ts +69 -0
  59. package/demos/pc/app/button/ghost.vue +32 -0
  60. package/demos/pc/app/button/icon-composition-api.vue +2 -0
  61. package/demos/pc/app/button/icon.vue +2 -0
  62. package/demos/pc/app/button/loading-composition-api.vue +2 -0
  63. package/demos/pc/app/button/loading.vue +2 -0
  64. package/demos/pc/app/button/size-composition-api.vue +2 -0
  65. package/demos/pc/app/button/size.vue +2 -0
  66. package/demos/pc/app/button/text-composition-api.vue +1 -1
  67. package/demos/pc/app/button/text.vue +1 -1
  68. package/demos/pc/app/button/webdoc/button.js +28 -1
  69. package/demos/pc/app/button-group/button-group-multiple-composition-api.vue +9 -9
  70. package/demos/pc/app/button-group/button-group-multiple.vue +9 -9
  71. package/demos/pc/app/button-group/change-event-composition-api.vue +1 -1
  72. package/demos/pc/app/button-group/change-event.vue +1 -1
  73. package/demos/pc/app/button-group/show-edit-composition-api.vue +1 -1
  74. package/demos/pc/app/button-group/show-edit.vue +1 -1
  75. package/demos/pc/app/button-group/webdoc/button-group.js +2 -3
  76. package/demos/pc/app/carousel/webdoc/carousel.js +82 -49
  77. package/demos/pc/app/cascader/auto-load-checkStrictly-composition-api.vue +2 -1
  78. package/demos/pc/app/cascader/auto-load-checkStrictly.vue +2 -1
  79. package/demos/pc/app/cascader/auto-load-composition-api.vue +3 -1
  80. package/demos/pc/app/cascader/auto-load.vue +2 -1
  81. package/demos/pc/app/cascader/events-composition-api.vue +1 -1
  82. package/demos/pc/app/cascader/expand-trigger-composition-api.vue +195 -2
  83. package/demos/pc/app/cascader/show-all-levels-composition-api.vue +197 -2
  84. package/demos/pc/app/cascader/webdoc/cascader.js +27 -13
  85. package/demos/pc/app/cascader-panel/basic-usage-composition-api.vue +3 -1
  86. package/demos/pc/app/cascader-panel/basic-usage.vue +2 -1
  87. package/demos/pc/app/cascader-panel/cascader-panel-props-composition-api.vue +3 -1
  88. package/demos/pc/app/cascader-panel/cascader-panel-props.vue +3 -1
  89. package/demos/pc/app/cascader-panel/change-composition-api.vue +1 -2
  90. package/demos/pc/app/cascader-panel/change.vue +1 -1
  91. package/demos/pc/app/cascader-panel/webdoc/cascader-panel.js +5 -5
  92. package/demos/pc/app/color-picker/webdoc/color-picker.js +36 -18
  93. package/demos/pc/app/color-select-panel/webdoc/color-select-panel.js +32 -19
  94. package/demos/pc/app/config-provider/basic.spec.ts +9 -0
  95. package/demos/pc/app/config-provider/tag.spec.ts +12 -0
  96. package/demos/pc/app/config-provider/text-direct.spec.ts +11 -0
  97. package/demos/pc/app/config-provider/webdoc/config-provider.en.md +7 -0
  98. package/demos/pc/app/config-provider/webdoc/config-provider.js +27 -12
  99. package/demos/pc/app/container/basic-usage.spec.js +47 -2
  100. package/demos/pc/app/container/custom-with-height.spec.js +10 -2
  101. package/demos/pc/app/crop/webdoc/crop.js +53 -49
  102. package/demos/pc/app/dialog-box/webdoc/dialog-box.js +82 -83
  103. package/demos/pc/app/divider/webdoc/divider.js +25 -21
  104. package/demos/pc/app/dropdown/events-composition-api.vue +1 -1
  105. package/demos/pc/app/dropdown/events.spec.ts +1 -0
  106. package/demos/pc/app/dropdown/multi-level-composition-api.vue +4 -8
  107. package/demos/pc/app/dropdown/multi-level.spec.ts +16 -9
  108. package/demos/pc/app/dropdown/multi-level.vue +3 -7
  109. package/demos/pc/app/dropdown/show-icon-composition-api.vue +44 -21
  110. package/demos/pc/app/dropdown/show-icon.vue +42 -12
  111. package/demos/pc/app/dropdown/webdoc/dropdown.js +29 -8
  112. package/demos/pc/app/fall-menu/custom-menuitem.spec.ts +6 -9
  113. package/demos/pc/app/fall-menu/custom-slider-icon.spec.ts +10 -21
  114. package/demos/pc/app/fall-menu/data-resource.spec.ts +6 -9
  115. package/demos/pc/app/file-upload/abort-quest.spec.ts +6 -5
  116. package/demos/pc/app/file-upload/accept-file-image.spec.ts +9 -4
  117. package/demos/pc/app/file-upload/custom-trigger.spec.ts +1 -1
  118. package/demos/pc/app/file-upload/disabled.spec.ts +4 -5
  119. package/demos/pc/app/file-upload/drag-upload.spec.ts +1 -1
  120. package/demos/pc/app/file-upload/file-picture-card.spec.ts +7 -6
  121. package/demos/pc/app/file-upload/form-validation.spec.ts +2 -2
  122. package/demos/pc/app/file-upload/image-size.spec.ts +2 -2
  123. package/demos/pc/app/file-upload/max-file-count.spec.ts +6 -6
  124. package/demos/pc/app/file-upload/paste-upload-composition-api.vue +2 -2
  125. package/demos/pc/app/file-upload/paste-upload.spec.ts +19 -2
  126. package/demos/pc/app/file-upload/picture-card.spec.ts +6 -5
  127. package/demos/pc/app/file-upload/picture-list.spec.ts +2 -3
  128. package/demos/pc/app/file-upload/prevent-delete-file.spec.ts +1 -1
  129. package/demos/pc/app/file-upload/prevent-upload-file.spec.ts +1 -1
  130. package/demos/pc/app/file-upload/upload-events.spec.ts +6 -4
  131. package/demos/pc/app/file-upload/upload-file-list-slot.spec.ts +18 -0
  132. package/demos/pc/app/file-upload/upload-file-list-thumb-composition-api.vue +4 -3
  133. package/demos/pc/app/file-upload/upload-file-list-thumb.spec.ts +2 -2
  134. package/demos/pc/app/file-upload/upload-file-list-thumb.vue +4 -3
  135. package/demos/pc/app/file-upload/upload-file-list.spec.ts +9 -9
  136. package/demos/pc/app/file-upload/upload-limit.spec.ts +5 -8
  137. package/demos/pc/app/file-upload/upload-request.spec.ts +1 -1
  138. package/demos/pc/app/file-upload/upload-user-head.spec.ts +1 -1
  139. package/demos/pc/app/file-upload/webdoc/file-upload.js +4 -4
  140. package/demos/pc/app/file-upload//346/265/213/350/257/225.txt +1 -0
  141. package/demos/pc/app/form/custom-validation-rule-composition-api.vue +2 -14
  142. package/demos/pc/app/form/custom-validation-rule.vue +2 -8
  143. package/demos/pc/app/form/form-validate-field.vue +2 -2
  144. package/demos/pc/app/form/size.spec.ts +26 -6
  145. package/demos/pc/app/grid/custom-style/body-style-composition-api.vue +1 -1
  146. package/demos/pc/app/grid/custom-style/footer-style-composition-api.vue +64 -19
  147. package/demos/pc/app/grid/drag/row-drag-ctrl-composition-api.vue +4 -4
  148. package/demos/pc/app/grid/edit/trigger-mode-hm-editing-composition-api.vue +2 -2
  149. package/demos/pc/app/grid/edit/trigger-mode-hm-editing.vue +1 -1
  150. package/demos/pc/app/grid/event/cell-mouse-event-composition-api.vue +1 -1
  151. package/demos/pc/app/grid/event/context-menu-event-composition-api.vue +1 -0
  152. package/demos/pc/app/grid/event/edit-event-composition-api.vue +1 -1
  153. package/demos/pc/app/grid/expand/set-row-expansion-composition-api.vue +9 -4
  154. package/demos/pc/app/grid/loading/{grid-loading-off-tip-composition-api.vue → grid-custom-loading-composition-api.vue} +29 -4
  155. package/demos/pc/app/grid/loading/grid-custom-loading.spec.js +7 -0
  156. package/demos/pc/app/grid/loading/{grid-loading-off-tip.vue → grid-custom-loading.vue} +27 -1
  157. package/demos/pc/app/grid/operation-column/clear-and-set-radio-row-composition-api.vue +5 -1
  158. package/demos/pc/app/grid/operation-column/selection-operation-composition-api.vue +32 -0
  159. package/demos/pc/app/grid/size/grid-size-composition-api.vue +17 -0
  160. package/demos/pc/app/grid/slot/editor-slot-composition-api.vue +13 -7
  161. package/demos/pc/app/grid/sort/combinations-sort-composition-api.vue +3 -3
  162. package/demos/pc/app/grid/sort/combinations-sort.spec.js +3 -0
  163. package/demos/pc/app/grid/sort/combinations-sort.vue +3 -3
  164. package/demos/pc/app/grid/toolbar/insert-remove-rows-composition-api.vue +1 -1
  165. package/demos/pc/app/grid/toolbar/insert-remove-rows.vue +1 -1
  166. package/demos/pc/app/grid/toolbar/refresh-grid-composition-api.vue +105 -0
  167. package/demos/pc/app/grid/tree-table/set-tree-expansion-composition-api.vue +4 -4
  168. package/demos/pc/app/grid/validation/before-submit-validation-composition-api.vue +19 -2
  169. package/demos/pc/app/grid/validation/before-submit-validation.spec.js +5 -2
  170. package/demos/pc/app/grid/validation/before-submit-validation.vue +19 -2
  171. package/demos/pc/app/grid/webdoc/grid-loading.js +9 -5
  172. package/demos/pc/app/grid/webdoc/grid-size.js +2 -2
  173. package/demos/pc/app/grid/webdoc/grid-validation.js +1 -1
  174. package/demos/pc/app/grid/webdoc/grid.js +8 -1
  175. package/demos/pc/app/guide/callback-composition-api.vue +2 -2
  176. package/demos/pc/app/guide/callback.vue +2 -2
  177. package/demos/pc/app/guide/highlight-box-composition-api.vue +9 -8
  178. package/demos/pc/app/guide/highlight-box.vue +8 -2
  179. package/demos/pc/app/guide/offset-composition-api.vue +7 -2
  180. package/demos/pc/app/guide/offset.vue +7 -2
  181. package/demos/pc/app/guide/size-composition-api.vue +3 -8
  182. package/demos/pc/app/guide/size.vue +3 -8
  183. package/demos/pc/app/guide/webdoc/guide.js +2 -2
  184. package/demos/pc/app/image/basic-usage.spec.ts +9 -2
  185. package/demos/pc/app/image/events.spec.ts +3 -1
  186. package/demos/pc/app/image/lazy-composition-api.vue +2 -2
  187. package/demos/pc/app/image/lazy.spec.ts +7 -4
  188. package/demos/pc/app/image/lazy.vue +2 -2
  189. package/demos/pc/app/image/preview-in-dialog.spec.ts +15 -1
  190. package/demos/pc/app/image/preview.spec.ts +28 -13
  191. package/demos/pc/app/image/slot.spec.ts +3 -0
  192. package/demos/pc/app/input/webdoc/input.js +11 -11
  193. package/demos/pc/app/link/basic-usage-composition-api.vue +1 -1
  194. package/demos/pc/app/link/basic-usage.spec.ts +1 -1
  195. package/demos/pc/app/link/basic-usage.vue +1 -1
  196. package/demos/pc/app/link/config-href.spec.ts +2 -2
  197. package/demos/pc/app/link/custom-icon.spec.ts +5 -5
  198. package/demos/pc/app/link/dynamic-disable.spec.ts +11 -11
  199. package/demos/pc/app/link/focus-no-underline.spec.ts +3 -3
  200. package/demos/pc/app/link/link-style-composition-api.vue +6 -6
  201. package/demos/pc/app/link/link-style.spec.ts +36 -7
  202. package/demos/pc/app/link/link-style.vue +6 -6
  203. package/demos/pc/app/link/webdoc/link.js +20 -22
  204. package/demos/pc/app/link-menu/webdoc/link-menu.js +22 -22
  205. package/demos/pc/app/milestone/basic-usage-composition-api.vue +6 -6
  206. package/demos/pc/app/milestone/basic-usage.spec.ts +1 -1
  207. package/demos/pc/app/milestone/basic-usage.vue +6 -6
  208. package/demos/pc/app/milestone/line-style-composition-api.vue +6 -6
  209. package/demos/pc/app/milestone/line-style.vue +6 -6
  210. package/demos/pc/app/milestone/show-number-composition-api.vue +9 -7
  211. package/demos/pc/app/milestone/show-number.spec.ts +7 -7
  212. package/demos/pc/app/milestone/show-number.vue +9 -7
  213. package/demos/pc/app/milestone/solid-style-composition-api.vue +7 -7
  214. package/demos/pc/app/milestone/solid-style.spec.ts +7 -7
  215. package/demos/pc/app/milestone/solid-style.vue +7 -7
  216. package/demos/pc/app/milestone/webdoc/milestone.js +31 -12
  217. package/demos/pc/app/modal/webdoc/modal.js +80 -76
  218. package/demos/pc/app/nav-menu/basic-usage.spec.ts +2 -2
  219. package/demos/pc/app/nav-menu/before-skip-prevent.spec.ts +1 -1
  220. package/demos/pc/app/nav-menu/before-skip.spec.ts +1 -1
  221. package/demos/pc/app/nav-menu/custom-service.spec.ts +1 -2
  222. package/demos/pc/app/nav-menu/overflow.spec.ts +2 -2
  223. package/demos/pc/app/nav-menu/slot-logo.spec.ts +1 -1
  224. package/demos/pc/app/nav-menu/slot-toolbar.spec.ts +2 -2
  225. package/demos/pc/app/numeric/webdoc/numeric.js +33 -32
  226. package/demos/pc/app/search/basic-usage.spec.ts +1 -1
  227. package/demos/pc/app/search/clearable.spec.ts +1 -1
  228. package/demos/pc/app/search/events-composition-api.vue +6 -0
  229. package/demos/pc/app/search/events.spec.ts +9 -6
  230. package/demos/pc/app/search/events.vue +5 -0
  231. package/demos/pc/app/search/webdoc/search.js +14 -4
  232. package/demos/pc/app/slide-bar/webdoc/slide-bar.js +18 -12
  233. package/demos/pc/app/slider/webdoc/slider.js +23 -18
  234. package/demos/pc/app/steps/advanced-steps.spec.ts +3 -2
  235. package/demos/pc/app/steps/click-composition-api.vue +0 -1
  236. package/demos/pc/app/steps/click.spec.ts +1 -12
  237. package/demos/pc/app/steps/custom-steps-item.spec.ts +1 -1
  238. package/demos/pc/app/steps/node-status-composition-api.vue +1 -1
  239. package/demos/pc/app/steps/node-status.spec.ts +1 -1
  240. package/demos/pc/app/steps/node-status.vue +1 -1
  241. package/demos/pc/app/steps/normal-steps-composition-api.vue +1 -1
  242. package/demos/pc/app/steps/normal-steps.spec.ts +2 -2
  243. package/demos/pc/app/steps/normal-steps.vue +1 -1
  244. package/demos/pc/app/steps/only-number-composition-api.vue +1 -1
  245. package/demos/pc/app/steps/only-number.spec.ts +1 -1
  246. package/demos/pc/app/steps/only-number.vue +1 -1
  247. package/demos/pc/app/steps/show-divider-composition-api.vue +1 -1
  248. package/demos/pc/app/steps/show-divider.spec.ts +1 -1
  249. package/demos/pc/app/steps/show-divider.vue +1 -1
  250. package/demos/pc/app/steps/size-composition-api.vue +6 -9
  251. package/demos/pc/app/steps/size.spec.ts +1 -4
  252. package/demos/pc/app/steps/size.vue +4 -4
  253. package/demos/pc/app/steps/slot-active-node-desc-composition-api.vue +3 -1
  254. package/demos/pc/app/steps/slot-active-node-desc.spec.ts +1 -1
  255. package/demos/pc/app/steps/slot-active-node-desc.vue +3 -1
  256. package/demos/pc/app/steps/slot-description-composition-api.vue +6 -6
  257. package/demos/pc/app/steps/slot-description.spec.ts +1 -1
  258. package/demos/pc/app/steps/slot-description.vue +5 -5
  259. package/demos/pc/app/steps/slot-item-composition-api.vue +0 -1
  260. package/demos/pc/app/steps/slot-item.spec.ts +1 -7
  261. package/demos/pc/app/steps/slot-item.vue +0 -1
  262. package/demos/pc/app/steps/space.spec.ts +1 -1
  263. package/demos/pc/app/steps/text-position-composition-api.vue +1 -1
  264. package/demos/pc/app/steps/text-position.spec.ts +1 -4
  265. package/demos/pc/app/steps/text-position.vue +1 -1
  266. package/demos/pc/app/steps/vertical-steps.spec.ts +13 -19
  267. package/demos/pc/app/steps/webdoc/steps.js +18 -17
  268. package/demos/pc/app/tabs/basic-usage-composition-api.vue +4 -4
  269. package/demos/pc/app/tabs/basic-usage.vue +4 -4
  270. package/demos/pc/app/tabs/before-leave-composition-api.vue +3 -3
  271. package/demos/pc/app/tabs/before-leave.vue +3 -3
  272. package/demos/pc/app/tabs/custom-more-icon-composition-api.vue +1 -1
  273. package/demos/pc/app/tabs/custom-more-icon.vue +1 -1
  274. package/demos/pc/app/tabs/custom-tab-content-composition-api.vue +3 -3
  275. package/demos/pc/app/tabs/custom-tab-content.vue +3 -3
  276. package/demos/pc/app/tabs/custom-tab-title-composition-api.vue +3 -3
  277. package/demos/pc/app/tabs/custom-tab-title.vue +3 -3
  278. package/demos/pc/app/tabs/lazy-composition-api.vue +5 -3
  279. package/demos/pc/app/tabs/lazy.vue +5 -3
  280. package/demos/pc/app/tabs/position-composition-api.vue +22 -17
  281. package/demos/pc/app/tabs/position.spec.ts +4 -4
  282. package/demos/pc/app/tabs/position.vue +19 -18
  283. package/demos/pc/app/tabs/prevent-tab-switching-composition-api.vue +3 -3
  284. package/demos/pc/app/tabs/prevent-tab-switching.vue +3 -3
  285. package/demos/pc/app/tabs/stretch-wh-composition-api.vue +3 -3
  286. package/demos/pc/app/tabs/stretch-wh.vue +3 -3
  287. package/demos/pc/app/tabs/tab-style-bordercard-composition-api.vue +10 -10
  288. package/demos/pc/app/tabs/tab-style-bordercard.vue +10 -10
  289. package/demos/pc/app/tabs/tab-style-card-composition-api.vue +1 -1
  290. package/demos/pc/app/tabs/tab-style-card.vue +1 -1
  291. package/demos/pc/app/tabs/tabs-draggable-composition-api.vue +1 -1
  292. package/demos/pc/app/tabs/tabs-draggable.spec.ts +1 -7
  293. package/demos/pc/app/tabs/tabs-draggable.vue +1 -1
  294. package/demos/pc/app/tabs/tabs-events-click-composition-api.vue +3 -3
  295. package/demos/pc/app/tabs/tabs-events-click.vue +3 -3
  296. package/demos/pc/app/tabs/tabs-events-close-composition-api.vue +4 -4
  297. package/demos/pc/app/tabs/tabs-events-close.vue +4 -4
  298. package/demos/pc/app/tabs/tabs-events-edit-composition-api.vue +4 -4
  299. package/demos/pc/app/tabs/tabs-events-edit.vue +4 -4
  300. package/demos/pc/app/tabs/tabs-separator-composition-api.vue +7 -7
  301. package/demos/pc/app/tabs/tabs-separator.vue +7 -7
  302. package/demos/pc/app/tabs/tabs-size-composition-api.vue +3 -3
  303. package/demos/pc/app/tabs/tabs-size.vue +3 -3
  304. package/demos/pc/app/tabs/tooltip-composition-api.vue +17 -13
  305. package/demos/pc/app/tabs/tooltip.vue +17 -13
  306. package/demos/pc/app/tabs/webdoc/tabs.js +35 -35
  307. package/demos/pc/app/tabs/with-add-composition-api.vue +1 -1
  308. package/demos/pc/app/tabs/with-add.vue +1 -1
  309. package/demos/pc/app/tag/{before-delete-composition-api.vue → delete-composition-api.vue} +6 -16
  310. package/demos/pc/app/tag/delete.spec.ts +19 -0
  311. package/demos/pc/app/tag/{closable.vue → delete.vue} +22 -5
  312. package/demos/pc/app/tag/webdoc/tag.js +15 -7
  313. package/demos/pc/app/time-line/webdoc/time-line.js +12 -12
  314. package/demos/pc/app/toggle-menu/webdoc/toggle-menu.js +64 -55
  315. package/demos/pc/app/tooltip/content.spec.js +1 -1
  316. package/demos/pc/app/tooltip/custom-popper.spec.js +4 -4
  317. package/demos/pc/app/transfer/basic-usage.spec.ts +7 -20
  318. package/demos/pc/app/transfer/custom-btns.spec.ts +11 -19
  319. package/demos/pc/app/transfer/custom-filter.spec.ts +6 -4
  320. package/demos/pc/app/transfer/custom-footer.spec.ts +1 -2
  321. package/demos/pc/app/transfer/custom-render.spec.ts +7 -5
  322. package/demos/pc/app/transfer/custom-titles.spec.ts +5 -3
  323. package/demos/pc/app/transfer/default-checked.spec.ts +5 -9
  324. package/demos/pc/app/transfer/drop-config.spec.ts +21 -16
  325. package/demos/pc/app/transfer/manual-clear-query.spec.ts +2 -2
  326. package/demos/pc/app/transfer/nested-table.spec.ts +12 -35
  327. package/demos/pc/app/transfer/nested-tree.spec.ts +3 -30
  328. package/demos/pc/app/transfer/target-order.spec.ts +2 -1
  329. package/demos/pc/app/transfer/transfer-events.spec.ts +2 -1
  330. package/demos/pc/app/tree/basic-usage.spec.ts +26 -16
  331. package/demos/pc/app/tree/check-op.spec.ts +37 -19
  332. package/demos/pc/app/tree/checkbox.spec.ts +23 -18
  333. package/demos/pc/app/tree/contextmenu.spec.ts +9 -8
  334. package/demos/pc/app/tree/drag.spec.ts +10 -18
  335. package/demos/pc/app/tree/edit.spec.ts +24 -103
  336. package/demos/pc/app/tree/expand-control.spec.ts +22 -18
  337. package/demos/pc/app/tree/filter-view.spec.ts +16 -18
  338. package/demos/pc/app/tree/icons.spec.ts +20 -18
  339. package/demos/pc/app/tree/lazy.spec.ts +10 -18
  340. package/demos/pc/app/tree/node-hl.spec.ts +27 -18
  341. package/demos/pc/app/tree/node-op-composition-api.vue +12 -6
  342. package/demos/pc/app/tree/node-op.spec.ts +32 -19
  343. package/demos/pc/app/tree/other.spec.ts +5 -18
  344. package/demos/pc/app/tree/props.spec.ts +7 -18
  345. package/demos/pc/app/tree/radio.spec.ts +10 -18
  346. package/demos/pc/app/tree/slot.spec.ts +12 -18
  347. package/demos/pc/app/tree/webdoc/tree.js +2 -2
  348. package/demos/pc/app/tree-menu/accordion.spec.ts +3 -1
  349. package/demos/pc/app/tree-menu/basic-usage.spec.ts +4 -2
  350. package/demos/pc/app/tree-menu/current-node-composition-api.vue +7 -3
  351. package/demos/pc/app/tree-menu/current-node.spec.ts +20 -13
  352. package/demos/pc/app/tree-menu/current-node.vue +8 -6
  353. package/demos/pc/app/tree-menu/custom-icon.spec.ts +12 -2
  354. package/demos/pc/app/tree-menu/data-resource.spec.ts +33 -21
  355. package/demos/pc/app/tree-menu/default-expand-all.spec.ts +25 -8
  356. package/demos/pc/app/tree-menu/default-expanded-keys-highlight.spec.ts +6 -4
  357. package/demos/pc/app/tree-menu/default-expanded-keys.spec.ts +11 -7
  358. package/demos/pc/app/tree-menu/draggable.spec.ts +11 -4
  359. package/demos/pc/app/tree-menu/empty-text.spec.ts +1 -1
  360. package/demos/pc/app/tree-menu/event-allow-draggable.spec.ts +4 -1
  361. package/demos/pc/app/tree-menu/events.spec.ts +56 -28
  362. package/demos/pc/app/tree-menu/expand-on-click-node.spec.ts +32 -3
  363. package/demos/pc/app/tree-menu/filter-node-method.spec.ts +9 -6
  364. package/demos/pc/app/tree-menu/filter-node-method.vue +0 -4
  365. package/demos/pc/app/tree-menu/indent.spec.ts +9 -4
  366. package/demos/pc/app/tree-menu/lazy-load.spec.ts +8 -4
  367. package/demos/pc/app/tree-menu/menu-collapsible.spec.ts +5 -2
  368. package/demos/pc/app/tree-menu/show-checkbox.spec.ts +79 -41
  369. package/demos/pc/app/tree-menu/text-ellipsis.spec.ts +7 -4
  370. package/demos/pc/app/tree-menu/tree-menu-slot.spec.ts +4 -3
  371. package/demos/pc/app/tree-menu/webdoc/tree-menu.cn.md +1 -1
  372. package/demos/pc/app/tree-menu/webdoc/tree-menu.en.md +1 -1
  373. package/demos/pc/app/tree-menu/webdoc/tree-menu.js +3 -3
  374. package/demos/pc/app/user-contact/webdoc/user-contact.js +21 -13
  375. package/demos/pc/app/user-head/icon-user-head.spec.ts +3 -3
  376. package/demos/pc/app/user-head/image-user-head.spec.ts +2 -2
  377. package/demos/pc/app/user-head/webdoc/user-head.js +44 -28
  378. package/demos/pc/webdoc/changelog.md +1 -0
  379. package/demos/pc/webdoc/import-components.md +2 -4
  380. package/demos/pc/webdoc/theme-en.md +8 -4
  381. package/demos/pc/webdoc/theme.md +10 -3
  382. package/package.json +6 -6
  383. package/src/App.vue +0 -2
  384. package/src/i18n/index.js +3 -3
  385. package/src/main.js +2 -7
  386. package/src/menus.jsx +1 -1
  387. package/src/tools/useApiMode.js +2 -2
  388. package/src/tools/useBulletin.jsx +2 -2
  389. package/src/tools/utils.js +2 -2
  390. package/src/views/components/VersionTip.vue +14 -8
  391. package/src/views/components/components.vue +48 -47
  392. package/src/views/components/demo.vue +11 -11
  393. package/src/views/docs/docs.vue +2 -3
  394. package/src/views/layout/layout.vue +17 -19
  395. package/src/views/overview.vue +16 -13
  396. package/vite.config.ts +10 -4
  397. package/demos/mobile/app/pull-refresh/disabled.vue +0 -57
  398. package/demos/mobile/app/pull-refresh/head-height.vue +0 -31
  399. package/demos/mobile/app/pull-refresh/result-text.vue +0 -46
  400. package/demos/mobile/app/pull-refresh/success-duration.vue +0 -31
  401. package/demos/mobile/app/pull-refresh/success-text.vue +0 -27
  402. package/demos/pc/app/grid/loading/grid-loading-off-tip.spec.js +0 -8
  403. package/demos/pc/app/tag/before-delete.vue +0 -64
  404. package/demos/pc/app/tag/closable-composition-api.vue +0 -25
  405. package/demos/pc/app/tag/closable.spec.ts +0 -14
  406. /package/demos/pc/app/button/{autofocus.spec.js → autofocus.spec.ts} +0 -0
  407. /package/demos/pc/app/button/{basic-usage.spec.js → basic-usage.spec.ts} +0 -0
  408. /package/demos/pc/app/button/{click.spec.js → click.spec.ts} +0 -0
  409. /package/demos/pc/app/button/{icon.spec.js → icon.spec.ts} +0 -0
  410. /package/demos/pc/app/button/{image.spec.js → image.spec.ts} +0 -0
  411. /package/demos/pc/app/button/{loading.spec.js → loading.spec.ts} +0 -0
  412. /package/demos/pc/app/button/{reset-time.spec.js → reset-time.spec.ts} +0 -0
  413. /package/demos/pc/app/button/{size.spec.js → size.spec.ts} +0 -0
  414. /package/demos/pc/app/button/{text.spec.js → text.spec.ts} +0 -0
@@ -5,10 +5,10 @@
5
5
  表单组件,具有与用户交互,并可完成数据采集功能的控件。
6
6
  </tiny-tab-item>
7
7
  <tiny-tab-item title="数据组件" name="second">
8
- 数据组件,提供了非常强大数据表格功能,在Grid可以展示数据列表,可以对数据列表进行选择、编辑等
8
+ 数据组件,提供了非常强大数据表格功能,在Grid可以展示数据列表,可以对数据列表进行选择、编辑等。
9
9
  </tiny-tab-item>
10
- <tiny-tab-item title="导航组件" name="third"> 导航组件,帮助网站访问者浏览站点的组件. </tiny-tab-item>
11
- <tiny-tab-item title="业务组件" name="fourth"> 业务组件,与业务紧密相关实现某种业务功能的组件集 </tiny-tab-item>
10
+ <tiny-tab-item title="导航组件" name="third"> 导航组件,帮助网站访问者浏览站点的组件。 </tiny-tab-item>
11
+ <tiny-tab-item title="业务组件" name="fourth"> 业务组件,与业务紧密相关实现某种业务功能的组件集。 </tiny-tab-item>
12
12
  </tiny-tabs>
13
13
  <br /><br /><br /><br />
14
14
  <tiny-tabs v-model="activeName2" separator>
@@ -16,10 +16,10 @@
16
16
  表单组件,具有与用户交互,并可完成数据采集功能的控件。
17
17
  </tiny-tab-item>
18
18
  <tiny-tab-item title="数据组件" name="second">
19
- 数据组件,提供了非常强大数据表格功能,在Grid可以展示数据列表,可以对数据列表进行选择、编辑等
19
+ 数据组件,提供了非常强大数据表格功能,在Grid可以展示数据列表,可以对数据列表进行选择、编辑等。
20
20
  </tiny-tab-item>
21
- <tiny-tab-item title="导航组件" name="third"> 导航组件,帮助网站访问者浏览站点的组件. </tiny-tab-item>
22
- <tiny-tab-item title="业务组件" name="fourth"> 业务组件,与业务紧密相关实现某种业务功能的组件集 </tiny-tab-item>
21
+ <tiny-tab-item title="导航组件" name="third"> 导航组件,帮助网站访问者浏览站点的组件。 </tiny-tab-item>
22
+ <tiny-tab-item title="业务组件" name="fourth"> 业务组件,与业务紧密相关实现某种业务功能的组件集。 </tiny-tab-item>
23
23
  </tiny-tabs>
24
24
  <br /><br /><br /><br />
25
25
  <tiny-tabs separator :editable="false" :with-add="true" @add="handleadd" style="width: 500px" show-more-tabs>
@@ -46,7 +46,7 @@ export default {
46
46
  {
47
47
  title: 'Tab 1',
48
48
  name: '1',
49
- content: 'Tab content '
49
+ content: 'Tab 1 content '
50
50
  },
51
51
  {
52
52
  title: 'Tab 2',
@@ -2,10 +2,10 @@
2
2
  <tiny-tabs v-model="activeName" size="small" :with-close="true" :with-add="true" tab-style="card">
3
3
  <tiny-tab-item title="表单组件" name="first"> 表单组件,具有与用户交互,并可完成数据采集功能的控件。 </tiny-tab-item>
4
4
  <tiny-tab-item title="数据组件" name="second">
5
- 数据组件,提供了非常强大数据表格功能,在Grid可以展示数据列表,可以对数据列表进行选择、编辑等
5
+ 数据组件,提供了非常强大数据表格功能,在Grid可以展示数据列表,可以对数据列表进行选择、编辑等。
6
6
  </tiny-tab-item>
7
- <tiny-tab-item title="导航组件" name="third"> 导航组件,帮助网站访问者浏览站点的组件. </tiny-tab-item>
8
- <tiny-tab-item title="业务组件" name="fourth"> 业务组件,与业务紧密相关实现某种业务功能的组件集 </tiny-tab-item>
7
+ <tiny-tab-item title="导航组件" name="third"> 导航组件,帮助网站访问者浏览站点的组件。 </tiny-tab-item>
8
+ <tiny-tab-item title="业务组件" name="fourth"> 业务组件,与业务紧密相关实现某种业务功能的组件集。 </tiny-tab-item>
9
9
  </tiny-tabs>
10
10
  </template>
11
11
 
@@ -2,10 +2,10 @@
2
2
  <tiny-tabs v-model="activeName" size="small" :with-close="true" :with-add="true" tab-style="card">
3
3
  <tiny-tab-item title="表单组件" name="first"> 表单组件,具有与用户交互,并可完成数据采集功能的控件。 </tiny-tab-item>
4
4
  <tiny-tab-item title="数据组件" name="second">
5
- 数据组件,提供了非常强大数据表格功能,在Grid可以展示数据列表,可以对数据列表进行选择、编辑等
5
+ 数据组件,提供了非常强大数据表格功能,在Grid可以展示数据列表,可以对数据列表进行选择、编辑等。
6
6
  </tiny-tab-item>
7
- <tiny-tab-item title="导航组件" name="third"> 导航组件,帮助网站访问者浏览站点的组件. </tiny-tab-item>
8
- <tiny-tab-item title="业务组件" name="fourth"> 业务组件,与业务紧密相关实现某种业务功能的组件集 </tiny-tab-item>
7
+ <tiny-tab-item title="导航组件" name="third"> 导航组件,帮助网站访问者浏览站点的组件。 </tiny-tab-item>
8
+ <tiny-tab-item title="业务组件" name="fourth"> 业务组件,与业务紧密相关实现某种业务功能的组件集。 </tiny-tab-item>
9
9
  </tiny-tabs>
10
10
  </template>
11
11
 
@@ -1,9 +1,9 @@
1
1
  <template>
2
2
  <div class="tab-demo-position">
3
- <div class="mb10">
4
- <tiny-switch v-model="value" @change="handleChange"></tiny-switch> 当前tooltip-config是{{
3
+ <div class="mb10 tip">
4
+ <tiny-switch v-model="value" @change="handleChange" class="mr10"></tiny-switch>当前tooltip-config是{{
5
5
  value ? 'tooltip配置' : '字符串title'
6
- }}
6
+ }}
7
7
  </div>
8
8
  <tiny-tabs v-model="activeName4" tab-style="card" position="left" :tooltip-config="tooltipConfig">
9
9
  <tiny-tab-item v-for="item in tabs3" :key="item.name" :title="item.title" :name="item.name">
@@ -23,28 +23,28 @@ const value = true
23
23
  const tabs3 = ref([
24
24
  {
25
25
  name: 'navigation1',
26
- title: 'Navigation1(蒸羊羔蒸熊掌蒸鹿尾,可以试着将tooltip-config设置为字符串title)',
27
- content: 'Navigation1'
26
+ title: 'Navigation 1(蒸羊羔蒸熊掌蒸鹿尾,可以试着将tooltip-config设置为字符串title)',
27
+ content: 'Navigation 1'
28
28
  },
29
29
  {
30
30
  name: 'navigation2',
31
- title: 'Navigation2',
32
- content: 'Navigation2'
31
+ title: 'Navigation 2',
32
+ content: 'Navigation 2'
33
33
  },
34
34
  {
35
35
  name: 'navigation3',
36
- title: 'Navigation3',
37
- content: 'Navigation3'
36
+ title: 'Navigation 3',
37
+ content: 'Navigation 3'
38
38
  },
39
39
  {
40
40
  name: 'navigation4',
41
- title: 'Navigation4',
42
- content: 'Navigation4'
41
+ title: 'Navigation 4',
42
+ content: 'Navigation 4'
43
43
  },
44
44
  {
45
45
  name: 'navigation5',
46
- title: 'Navigation5',
47
- content: 'Navigation5'
46
+ title: 'Navigation 5',
47
+ content: 'Navigation 5'
48
48
  }
49
49
  ])
50
50
 
@@ -59,4 +59,8 @@ const handleChange = (value) => {
59
59
  .tab-demo-position {
60
60
  min-height: 250px;
61
61
  }
62
+ .tip {
63
+ display: flex;
64
+ align-items: center;
65
+ }
62
66
  </style>
@@ -1,9 +1,9 @@
1
1
  <template>
2
2
  <div class="tab-demo-position">
3
- <div class="mb10">
4
- <tiny-switch v-model="value" @change="handleChange"></tiny-switch> 当前tooltip-config是{{
3
+ <div class="mb10 tip">
4
+ <tiny-switch v-model="value" @change="handleChange" class="mr10"></tiny-switch>当前tooltip-config是{{
5
5
  value ? 'tooltip配置' : '字符串title'
6
- }}
6
+ }}
7
7
  </div>
8
8
  <tiny-tabs v-model="activeName4" tab-style="card" position="left" :tooltip-config="tooltipConfig">
9
9
  <tiny-tab-item v-for="item in tabs3" :key="item.name" :title="item.title" :name="item.name">
@@ -29,28 +29,28 @@ export default {
29
29
  tabs3: [
30
30
  {
31
31
  name: 'navigation1',
32
- title: 'Navigation1(蒸羊羔蒸熊掌蒸鹿尾,可以试着将tooltip-config设置为字符串title)',
33
- content: 'Navigation1'
32
+ title: 'Navigation 1(蒸羊羔蒸熊掌蒸鹿尾,可以试着将tooltip-config设置为字符串title)',
33
+ content: 'Navigation 1'
34
34
  },
35
35
  {
36
36
  name: 'navigation2',
37
- title: 'Navigation2',
38
- content: 'Navigation2'
37
+ title: 'Navigation 2',
38
+ content: 'Navigation 2'
39
39
  },
40
40
  {
41
41
  name: 'navigation3',
42
- title: 'Navigation3',
43
- content: 'Navigation3'
42
+ title: 'Navigation 3',
43
+ content: 'Navigation 3'
44
44
  },
45
45
  {
46
46
  name: 'navigation4',
47
- title: 'Navigation4',
48
- content: 'Navigation4'
47
+ title: 'Navigation 4',
48
+ content: 'Navigation 4'
49
49
  },
50
50
  {
51
51
  name: 'navigation5',
52
- title: 'Navigation5',
53
- content: 'Navigation5'
52
+ title: 'Navigation 5',
53
+ content: 'Navigation 5'
54
54
  }
55
55
  ]
56
56
  }
@@ -69,4 +69,8 @@ export default {
69
69
  .tab-demo-position {
70
70
  min-height: 250px;
71
71
  }
72
+ .tip {
73
+ display: flex;
74
+ align-items: center;
75
+ }
72
76
  </style>
@@ -115,41 +115,6 @@ export default {
115
115
  },
116
116
  'codeFiles': ['stretch-wh.vue']
117
117
  },
118
- {
119
- 'demoId': 'tabs-draggable',
120
- 'name': { 'zh-CN': '拖拽', 'en-US': 'Drag' },
121
- 'desc': {
122
- 'zh-CN': `<div class="tip custom-block"><p class="custom-block-title"> 通过 <code>drop-config</code> 设置 <code>Sortable</code> 排序插件;<br/>
123
- <code>tab-drag-start</code> 监听拖拽开始事件;<br/>
124
- <code>tab-drag-over</code> 监听拖拽中事件;<br/>
125
- <code>tab-drag-end</code> 监听拖拽结束事件,以此改变页签项顺序。</p></div>`,
126
- 'en-US': `<div class="tip custom-block"><p class="custom-block-title">Set the <code>Sortable</code> sorting plugin through <code>drop configuration</code> <br />
127
- <code>tab-drag-start</code> Listen for drag start events<br />
128
- <code>tab-drag-over</code> Listen for dragging events<br />
129
- <code>tab-drag-end</code> Listen for drag end events to change the order of tags.</p></div>`
130
- },
131
- 'codeFiles': ['tabs-draggable.vue']
132
- },
133
- {
134
- 'demoId': 'tabs-events-click',
135
- 'name': { 'zh-CN': '点击事件', 'en-US': 'Click Event' },
136
- 'desc': {
137
- 'zh-CN': '通过 <code>click</code> 监听单击页签项事件。',
138
- 'en-US': 'Listen for tag item click events through <code>click</code> .'
139
- },
140
- 'codeFiles': ['tabs-events-click.vue']
141
- },
142
- {
143
- 'demoId': 'tabs-events-edit',
144
- 'name': { 'zh-CN': '编辑事件', 'en-US': 'Edit Event' },
145
- 'desc': {
146
- 'zh-CN':
147
- '通过 <code>editable</code> 设置同时显示 <code>删除</code> 和 <code>添加</code> 按钮, <code>edit</code> 监听这两类按钮的点击事件。',
148
- 'en-US':
149
- 'By setting <code>edit</code> to display both <code>delete</code> and <code>add</code> buttons, <code>edit</code> listens for click events of these two types of buttons.'
150
- },
151
- 'codeFiles': ['tabs-events-edit.vue']
152
- },
153
118
  {
154
119
  'demoId': 'custom-tab-title',
155
120
  'name': { 'zh-CN': '定义页签项标题', 'en-US': 'Custom Tab Item Title' },
@@ -185,6 +150,41 @@ export default {
185
150
  'The Grid component needs to set <code>:auto-resize="true"</code> to adapt to the corresponding changes of the parent element <code>TabItem</code> .'
186
151
  },
187
152
  'codeFiles': ['show-different-grid-data.vue']
153
+ },
154
+ {
155
+ 'demoId': 'tabs-draggable',
156
+ 'name': { 'zh-CN': '拖拽', 'en-US': 'Drag' },
157
+ 'desc': {
158
+ 'zh-CN': `<div class="tip custom-block"><p><code>drop-config</code> 设置 <code>Sortable</code> 排序插件;<br/>
159
+ <code>tab-drag-start</code> 监听拖拽开始事件;<br/>
160
+ <code>tab-drag-over</code> 监听拖拽中事件;<br/>
161
+ <code>tab-drag-end</code> 监听拖拽结束事件,以此改变页签项顺序。</p></div>`,
162
+ 'en-US': `<div class="tip custom-block"><p> <code>drop configuration</code> Set the <code>Sortable</code> sorting plugin<br />
163
+ <code>tab-drag-start</code> Listen for drag start events<br />
164
+ <code>tab-drag-over</code> Listen for dragging events<br />
165
+ <code>tab-drag-end</code> Listen for drag end events to change the order of tags.</p></div>`
166
+ },
167
+ 'codeFiles': ['tabs-draggable.vue']
168
+ },
169
+ {
170
+ 'demoId': 'tabs-events-click',
171
+ 'name': { 'zh-CN': '点击事件', 'en-US': 'Click Event' },
172
+ 'desc': {
173
+ 'zh-CN': '通过 <code>click</code> 监听单击页签项事件。',
174
+ 'en-US': 'Listen for tag item click events through <code>click</code> .'
175
+ },
176
+ 'codeFiles': ['tabs-events-click.vue']
177
+ },
178
+ {
179
+ 'demoId': 'tabs-events-edit',
180
+ 'name': { 'zh-CN': '编辑事件', 'en-US': 'Edit Event' },
181
+ 'desc': {
182
+ 'zh-CN':
183
+ '通过 <code>editable</code> 设置同时显示 <code>删除</code> 和 <code>添加</code> 按钮, <code>edit</code> 监听这两类按钮的点击事件。',
184
+ 'en-US':
185
+ 'By setting <code>edit</code> to display both <code>delete</code> and <code>add</code> buttons, <code>edit</code> listens for click events of these two types of buttons.'
186
+ },
187
+ 'codeFiles': ['tabs-events-edit.vue']
188
188
  }
189
189
  ],
190
190
  apis: [
@@ -21,7 +21,7 @@ const Tabs = ref([
21
21
  {
22
22
  title: 'Tab 1',
23
23
  name: '1',
24
- content: 'Tab content '
24
+ content: 'Tab 1 content '
25
25
  },
26
26
  {
27
27
  title: 'Tab 2',
@@ -27,7 +27,7 @@ export default {
27
27
  {
28
28
  title: 'Tab 1',
29
29
  name: '1',
30
- content: 'Tab content '
30
+ content: 'Tab 1 content '
31
31
  },
32
32
  {
33
33
  title: 'Tab 2',
@@ -1,16 +1,11 @@
1
1
  <template>
2
2
  <div>
3
- <p>
4
- <tiny-switch v-model="beforeDeleteValue"></tiny-switch>
5
- before-change 返回 {{ beforeDeleteValue }} 时 {{ beforeDeleteText }}
6
- <br />
7
- </p>
8
3
  <tiny-tag
9
4
  v-for="tag in tags"
10
5
  :key="'tiny-tag1-' + tag.name"
11
6
  closable
12
7
  :type="tag.type"
13
- @close="close(tag)"
8
+ @close="handleClose(tag)"
14
9
  :before-delete="beforeDelete"
15
10
  >{{ tag.name }}</tiny-tag
16
11
  >
@@ -19,7 +14,7 @@
19
14
 
20
15
  <script setup>
21
16
  import { ref, computed } from 'vue'
22
- import { Tag as TinyTag, Switch as TinySwitch } from '@opentiny/vue'
17
+ import { Tag as TinyTag, Modal } from '@opentiny/vue'
23
18
 
24
19
  const tags = ref([
25
20
  { name: '标签一', type: '' },
@@ -28,20 +23,15 @@ const tags = ref([
28
23
  { name: '标签四', type: 'warning' },
29
24
  { name: '标签五', type: 'danger' }
30
25
  ])
31
- const beforeDeleteValue = ref(false)
32
- const beforeDeleteText = computed(() => {
33
- return beforeDeleteValue.value
34
- ? '可执行 close 事件,点击删除图标可以删除标签'
35
- : '将拦截 close 事件的执行,点击删除图标将无法删除标签'
36
- })
37
26
 
38
- function close(tag) {
27
+ function handleClose(tag) {
39
28
  tags.value.splice(tags.value.indexOf(tag), 1)
29
+ Modal.message('close 事件')
40
30
  }
41
31
 
42
32
  function beforeDelete(done) {
43
- setTimeout(() => {
44
- beforeDeleteValue.value && done()
33
+ Modal.confirm('确认删除?').then((res) => {
34
+ res === 'confirm' && done()
45
35
  })
46
36
  }
47
37
  </script>
@@ -0,0 +1,19 @@
1
+ import { expect, test } from '@playwright/test'
2
+
3
+ test('是否能阻止删除或正常删除标签', async ({ page }) => {
4
+ page.on('pageerror', (exception) => expect(exception).not.toBeNull())
5
+ await page.goto('tag#delete')
6
+
7
+ const first = page.locator('.tiny-tag').filter({ hasText: '标签一' })
8
+ const close = first.locator('.tiny-tag__close')
9
+ const modal = page.locator('.tiny-modal__box').getByText('消息提示确认删除?确认取消')
10
+
11
+ await close.click()
12
+ await modal.waitFor({ state: 'attached', timeout: 100 })
13
+ await page.getByRole('button', { name: '取消' }).click()
14
+ await first.isVisible()
15
+ await close.click()
16
+ await modal.waitFor({ state: 'attached', timeout: 100 })
17
+ await page.getByRole('button', { name: '确认' }).click()
18
+ await expect(first).not.toBeVisible()
19
+ })
@@ -1,12 +1,18 @@
1
1
  <template>
2
- <div class="tiny-tag-demo">
3
- <tiny-tag v-for="tag in tags" :key="'tiny-tag1-' + tag.name" closable :type="tag.type" @close="handleClose(tag)">{{
4
- tag.name
5
- }}</tiny-tag>
2
+ <div>
3
+ <tiny-tag
4
+ v-for="tag in tags"
5
+ :key="'tiny-tag1-' + tag.name"
6
+ closable
7
+ :type="tag.type"
8
+ @close="handleClose(tag)"
9
+ :before-delete="beforeDelete"
10
+ >{{ tag.name }}</tiny-tag
11
+ >
6
12
  </div>
7
13
  </template>
8
14
 
9
- <script lang="jsx">
15
+ <script>
10
16
  import { Tag, Modal } from '@opentiny/vue'
11
17
 
12
18
  export default {
@@ -28,7 +34,18 @@ export default {
28
34
  handleClose(tag) {
29
35
  this.tags.splice(this.tags.indexOf(tag), 1)
30
36
  Modal.message('close 事件')
37
+ },
38
+ beforeDelete(done) {
39
+ Modal.confirm('确认删除?').then((res) => {
40
+ res === 'confirm' && done()
41
+ })
31
42
  }
32
43
  }
33
44
  }
34
45
  </script>
46
+
47
+ <style scoped>
48
+ .tiny-tag + .tiny-tag {
49
+ margin-left: 10px;
50
+ }
51
+ </style>
@@ -50,14 +50,15 @@ export default {
50
50
  'codeFiles': ['disabled.vue']
51
51
  },
52
52
  {
53
- 'demoId': 'closable',
54
- 'name': { 'zh-CN': '移除', 'en-US': 'Remove' },
53
+ 'demoId': 'delete',
54
+ 'name': { 'zh-CN': '删除操作', 'en-US': 'Delete' },
55
55
  'desc': {
56
- 'zh-CN': '通过 <code>closable</code> 设置展示关闭按钮, <code>close</code> 监听关闭按钮点击事件,做删除操作。',
56
+ 'zh-CN':
57
+ '通过 <code>closable</code> 设置展示关闭按钮, <code>before-delete</code> 设置删除前的操作,可以在此钩子中做提示或确认;<code>close</code> 监听关闭按钮点击事件,做删除操作。',
57
58
  'en-US':
58
- 'Set the display close button through <code>close</code> , listen to the close button click event, and perform the deletion operation.'
59
+ 'Set the display close button through<code>close</code>, and<code>before-delete</code>to set the operation before deletion, which can be prompted or confirmed in this hook< Code>close</code>Listen to the close button click event and perform the deletion operation.'
59
60
  },
60
- 'codeFiles': ['closable.vue']
61
+ 'codeFiles': ['delete.vue']
61
62
  },
62
63
  {
63
64
  'demoId': 'create',
@@ -95,12 +96,19 @@ export default {
95
96
  'name': 'tag',
96
97
  'type': 'component',
97
98
  'props': [
99
+ {
100
+ 'name': 'before-delete',
101
+ 'type': '(close: () => void) => void',
102
+ 'defaultValue': '',
103
+ 'desc': { 'zh-CN': '删除前回调函数', 'en-US': 'Delete callback function before deletion' },
104
+ 'demoId': 'delete'
105
+ },
98
106
  {
99
107
  'name': 'closable',
100
108
  'type': 'boolean',
101
109
  'defaultValue': 'false',
102
110
  'desc': { 'zh-CN': '是否可关闭', 'en-US': 'Can be disabled' },
103
- 'demoId': 'closable'
111
+ 'demoId': 'delete'
104
112
  },
105
113
  {
106
114
  'name': 'color',
@@ -189,7 +197,7 @@ export default {
189
197
  'zh-CN': '点击关闭按钮时触发的事件',
190
198
  'en-US': 'Event triggered when the close button is clicked'
191
199
  },
192
- 'demoId': 'closable'
200
+ 'demoId': 'delete'
193
201
  }
194
202
  ],
195
203
  'slots': [
@@ -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,7 +215,7 @@ 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'
@@ -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'
@@ -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
  },