@opentiny/vue-docs 2.2.8 → 2.2.9

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 (453) hide show
  1. package/demos/mobile/app/button/base.vue +42 -0
  2. package/demos/mobile/app/button/disabled.vue +42 -0
  3. package/demos/mobile/app/button/event.vue +46 -0
  4. package/demos/mobile/app/button/icon.vue +8 -7
  5. package/demos/mobile/app/button/loading.vue +21 -9
  6. package/demos/mobile/app/button/reset-time.vue +9 -16
  7. package/demos/mobile/app/button/size.vue +28 -11
  8. package/demos/mobile/app/button/webdoc/button.js +43 -98
  9. package/demos/mobile/app/file-upload/custom-upload-tip.vue +1 -1
  10. package/demos/mobile/app/switch/webdoc/switch.cn.md +3 -4
  11. package/demos/mobile-first/app/switch/webdoc/switch.cn.md +1 -1
  12. package/demos/mobile-first/app/switch/webdoc/switch.en.md +1 -1
  13. package/demos/pc/app/action-menu/webdoc/action-menu.js +2 -2
  14. package/demos/pc/app/alert/basic-usage-composition-api.vue +1 -0
  15. package/demos/pc/app/alert/basic-usage.vue +1 -0
  16. package/demos/pc/app/alert/custom-close.spec.ts +1 -1
  17. package/demos/pc/app/alert/icon-composition-api.vue +3 -2
  18. package/demos/pc/app/alert/icon.vue +4 -3
  19. package/demos/pc/app/alert/webdoc/alert.js +12 -2
  20. package/demos/pc/app/anchor/basic-usage-composition-api.vue +7 -7
  21. package/demos/pc/app/anchor/basic-usage.spec.ts +2 -2
  22. package/demos/pc/app/anchor/basic-usage.vue +7 -7
  23. package/demos/pc/app/anchor/change-composition-api.vue +7 -7
  24. package/demos/pc/app/anchor/change.spec.ts +2 -2
  25. package/demos/pc/app/anchor/change.vue +7 -7
  26. package/demos/pc/app/anchor/is-affix-composition-api.vue +7 -7
  27. package/demos/pc/app/anchor/is-affix.vue +7 -7
  28. package/demos/pc/app/anchor/webdoc/anchor.js +4 -4
  29. package/demos/pc/app/autocomplete/webdoc/autocomplete.js +2 -2
  30. package/demos/pc/app/badge/webdoc/badge.js +1 -1
  31. package/demos/pc/app/button/webdoc/button.js +1 -1
  32. package/demos/pc/app/button-group/basic-usage.spec.ts +1 -0
  33. package/demos/pc/app/button-group/slot-empty-composition-api.vue +25 -0
  34. package/demos/pc/app/button-group/slot-empty.spec.ts +11 -0
  35. package/demos/pc/app/button-group/slot-empty.vue +33 -0
  36. package/demos/pc/app/button-group/webdoc/button-group.js +9 -0
  37. package/demos/pc/app/calendar/basic-usage-composition-api.vue +1 -1
  38. package/demos/pc/app/calendar/basic-usage.spec.ts +33 -0
  39. package/demos/pc/app/calendar/basic-usage.vue +1 -1
  40. package/demos/pc/app/calendar/calendar-mode-composition-api.vue +1 -1
  41. package/demos/pc/app/calendar/calendar-mode.spec.ts +33 -0
  42. package/demos/pc/app/calendar/calendar-mode.vue +1 -1
  43. package/demos/pc/app/calendar/custom-calendar-toolbar-composition-api.vue +3 -3
  44. package/demos/pc/app/calendar/custom-calendar-toolbar.spec.ts +18 -0
  45. package/demos/pc/app/calendar/custom-calendar-toolbar.vue +3 -3
  46. package/demos/pc/app/calendar/custom-day-cell-composition-api.vue +1 -1
  47. package/demos/pc/app/calendar/custom-day-cell.spec.ts +10 -0
  48. package/demos/pc/app/calendar/custom-day-cell.vue +1 -1
  49. package/demos/pc/app/calendar/dynamic-add-schedule-composition-api.vue +1 -1
  50. package/demos/pc/app/calendar/dynamic-add-schedule.spec.ts +26 -0
  51. package/demos/pc/app/calendar/dynamic-add-schedule.vue +1 -1
  52. package/demos/pc/app/calendar/show-selected-date-composition-api.vue +1 -1
  53. package/demos/pc/app/calendar/show-selected-date.spec.ts +14 -0
  54. package/demos/pc/app/calendar/show-selected-date.vue +1 -1
  55. package/demos/pc/app/calendar/webdoc/calendar.js +22 -8
  56. package/demos/pc/app/calendar-view/basic-usage.spec.ts +18 -0
  57. package/demos/pc/app/calendar-view/calendar-day-mark.spec.ts +23 -0
  58. package/demos/pc/app/calendar-view/calendar-disabled-day-composition-api.vue +2 -2
  59. package/demos/pc/app/calendar-view/calendar-disabled-day.spec.ts +12 -0
  60. package/demos/pc/app/calendar-view/calendar-disabled-day.vue +1 -1
  61. package/demos/pc/app/calendar-view/calendar-event.spec.ts +25 -0
  62. package/demos/pc/app/calendar-view/calendar-mode.spec.ts +25 -0
  63. package/demos/pc/app/calendar-view/calendar-schedule-slot.spec.ts +18 -0
  64. package/demos/pc/app/calendar-view/calendar-timeline-range.spec.ts +11 -0
  65. package/demos/pc/app/calendar-view/calendar-timeline-slot.spec.ts +23 -0
  66. package/demos/pc/app/calendar-view/custom-calendar-toolbar.spec.ts +8 -0
  67. package/demos/pc/app/calendar-view/custom-day-bg-color.spec.ts +8 -0
  68. package/demos/pc/app/calendar-view/custom-header.spec.ts +11 -0
  69. package/demos/pc/app/calendar-view/multi-select-composition-api.vue +2 -2
  70. package/demos/pc/app/calendar-view/multi-select.spec.ts +13 -0
  71. package/demos/pc/app/calendar-view/multi-select.vue +1 -1
  72. package/demos/pc/app/calendar-view/set-working-day-composition-api.vue +3 -7
  73. package/demos/pc/app/calendar-view/set-working-day.spec.ts +22 -0
  74. package/demos/pc/app/calendar-view/set-working-day.vue +1 -1
  75. package/demos/pc/app/calendar-view/webdoc/calendar-view.js +1 -1
  76. package/demos/pc/app/carousel/autoplay-composition-api.vue +2 -2
  77. package/demos/pc/app/carousel/autoplay.spec.ts +2 -0
  78. package/demos/pc/app/carousel/autoplay.vue +2 -2
  79. package/demos/pc/app/carousel/basic-usage-composition-api.vue +2 -2
  80. package/demos/pc/app/carousel/basic-usage.spec.ts +1 -8
  81. package/demos/pc/app/carousel/basic-usage.vue +2 -2
  82. package/demos/pc/app/carousel/card-mode-composition-api.vue +2 -2
  83. package/demos/pc/app/carousel/card-mode.vue +2 -2
  84. package/demos/pc/app/carousel/carousel-arrow-always-composition-api.vue +2 -2
  85. package/demos/pc/app/carousel/carousel-arrow-always.vue +2 -2
  86. package/demos/pc/app/carousel/carousel-arrow-hover-composition-api.vue +2 -2
  87. package/demos/pc/app/carousel/carousel-arrow-hover.vue +2 -2
  88. package/demos/pc/app/carousel/carousel-arrow-never-composition-api.vue +2 -2
  89. package/demos/pc/app/carousel/carousel-arrow-never.vue +2 -2
  90. package/demos/pc/app/carousel/carousel-events-composition-api.vue +2 -2
  91. package/demos/pc/app/carousel/carousel-events.vue +2 -2
  92. package/demos/pc/app/carousel/close-loop-composition-api.vue +2 -2
  93. package/demos/pc/app/carousel/close-loop.vue +2 -2
  94. package/demos/pc/app/carousel/custom-height-composition-api.vue +2 -2
  95. package/demos/pc/app/carousel/custom-height.vue +2 -2
  96. package/demos/pc/app/carousel/indicator-trigger-composition-api.vue +2 -2
  97. package/demos/pc/app/carousel/indicator-trigger.vue +2 -2
  98. package/demos/pc/app/carousel/initial-index-composition-api.vue +2 -2
  99. package/demos/pc/app/carousel/initial-index.vue +2 -2
  100. package/demos/pc/app/carousel/manual-play-composition-api.vue +19 -8
  101. package/demos/pc/app/carousel/manual-play.vue +18 -8
  102. package/demos/pc/app/carousel/play-interval-composition-api.vue +2 -2
  103. package/demos/pc/app/carousel/play-interval.vue +2 -2
  104. package/demos/pc/app/carousel/show-title-composition-api.vue +2 -2
  105. package/demos/pc/app/carousel/show-title.vue +2 -2
  106. package/demos/pc/app/carousel/up-down-carousel-composition-api.vue +2 -2
  107. package/demos/pc/app/carousel/up-down-carousel.vue +2 -2
  108. package/demos/pc/app/chart/histogram/demo4-composition-api.vue +0 -2
  109. package/demos/pc/app/chart/histogram/demo4.vue +0 -2
  110. package/demos/pc/app/checkbox/checkbox-events-composition-api.vue +2 -3
  111. package/demos/pc/app/checkbox/checkbox-events.vue +2 -3
  112. package/demos/pc/app/checkbox/group-options-composition-api.vue +1 -1
  113. package/demos/pc/app/checkbox/group-options.vue +1 -1
  114. package/demos/pc/app/checkbox/size-composition-api.vue +0 -1
  115. package/demos/pc/app/checkbox/text-composition-api.vue +3 -2
  116. package/demos/pc/app/checkbox/text.vue +2 -1
  117. package/demos/pc/app/checkbox/webdoc/checkbox.js +3 -3
  118. package/demos/pc/app/collapse/title-composition-api.vue +3 -2
  119. package/demos/pc/app/collapse/title.vue +3 -2
  120. package/demos/pc/app/collapse/webdoc/collapse.js +11 -11
  121. package/demos/pc/app/config-provider/webdoc/config-provider.js +3 -3
  122. package/demos/pc/app/date-picker/align.spec.ts +11 -12
  123. package/demos/pc/app/date-picker/basic-usage.spec.ts +17 -23
  124. package/demos/pc/app/date-picker/clear.spec.ts +24 -5
  125. package/demos/pc/app/date-picker/date-range.spec.ts +63 -11
  126. package/demos/pc/app/date-picker/default-value.spec.ts +19 -4
  127. package/demos/pc/app/date-picker/events.spec.ts +24 -10
  128. package/demos/pc/app/date-picker/format.spec.ts +12 -11
  129. package/demos/pc/app/date-picker/shortcuts.spec.ts +6 -5
  130. package/demos/pc/app/dialog-box/basic-usage-composition-api.vue +1 -1
  131. package/demos/pc/app/dialog-box/basic-usage.vue +1 -1
  132. package/demos/pc/app/dialog-box/center-composition-api.vue +2 -2
  133. package/demos/pc/app/dialog-box/center.vue +2 -2
  134. package/demos/pc/app/dialog-box/close-on-click-modal-composition-api.vue +2 -2
  135. package/demos/pc/app/dialog-box/close-on-click-modal.vue +2 -2
  136. package/demos/pc/app/dialog-box/close-on-press-escape-composition-api.vue +2 -2
  137. package/demos/pc/app/dialog-box/close-on-press-escape.vue +2 -2
  138. package/demos/pc/app/dialog-box/custom-dialog-content-composition-api.vue +2 -2
  139. package/demos/pc/app/dialog-box/custom-dialog-content.vue +2 -2
  140. package/demos/pc/app/dialog-box/custom-dialog-footer-composition-api.vue +2 -2
  141. package/demos/pc/app/dialog-box/custom-dialog-footer.vue +4 -4
  142. package/demos/pc/app/dialog-box/custom-dialog-title-composition-api.vue +2 -2
  143. package/demos/pc/app/dialog-box/custom-dialog-title.vue +2 -2
  144. package/demos/pc/app/dialog-box/dialog-top-height-composition-api.vue +2 -2
  145. package/demos/pc/app/dialog-box/dialog-top-height.vue +2 -2
  146. package/demos/pc/app/dialog-box/dialog-width-composition-api.vue +3 -3
  147. package/demos/pc/app/dialog-box/dialog-width.vue +3 -3
  148. package/demos/pc/app/dialog-box/lock-scroll-composition-api.vue +2 -2
  149. package/demos/pc/app/dialog-box/lock-scroll.vue +2 -2
  150. package/demos/pc/app/dialog-box/webdoc/dialog-box.js +63 -63
  151. package/demos/pc/app/dialog-select/nest-grid-multi-composition-api.vue +9 -3
  152. package/demos/pc/app/dialog-select/nest-grid-multi.vue +8 -3
  153. package/demos/pc/app/dialog-select/nest-grid-single-composition-api.vue +3 -2
  154. package/demos/pc/app/dialog-select/nest-grid-single.vue +3 -2
  155. package/demos/pc/app/dialog-select/nest-tree-multi-composition-api.vue +3 -2
  156. package/demos/pc/app/dialog-select/nest-tree-multi.vue +3 -2
  157. package/demos/pc/app/dialog-select/nest-tree-single-composition-api.vue +3 -2
  158. package/demos/pc/app/dialog-select/nest-tree-single.vue +3 -2
  159. package/demos/pc/app/dialog-select/webdoc/dialog-select.js +90 -42
  160. package/demos/pc/app/drawer/confirm-event-composition-api.vue +1 -1
  161. package/demos/pc/app/drawer/confirm-event.vue +1 -1
  162. package/demos/pc/app/drawer/webdoc/drawer.cn.md +1 -1
  163. package/demos/pc/app/drawer/webdoc/drawer.en.md +7 -0
  164. package/demos/pc/app/drawer/webdoc/drawer.js +94 -47
  165. package/demos/pc/app/drawer/z-index-composition-api.vue +1 -1
  166. package/demos/pc/app/drawer/z-index.spec.ts +1 -1
  167. package/demos/pc/app/drawer/z-index.vue +1 -1
  168. package/demos/pc/app/drop-times/basic-usage.spec.ts +1 -1
  169. package/demos/pc/app/drop-times/size.spec.ts +5 -1
  170. package/demos/pc/app/drop-times/start-end-step.spec.ts +1 -1
  171. package/demos/pc/app/dropdown/webdoc/dropdown.js +2 -2
  172. package/demos/pc/app/fall-menu/webdoc/fall-menu.js +4 -10
  173. package/demos/pc/app/file-upload/abort-quest-composition-api.vue +1 -1
  174. package/demos/pc/app/file-upload/abort-quest.vue +1 -1
  175. package/demos/pc/app/file-upload/basic-usage.spec.ts +2 -2
  176. package/demos/pc/app/file-upload/{prevent-upload-file-composition-api.vue → before-upload-limit-composition-api.vue} +13 -5
  177. package/demos/pc/app/file-upload/{prevent-upload-file.spec.ts → before-upload-limit.spec.ts} +9 -4
  178. package/demos/pc/app/file-upload/{prevent-upload-file.vue → before-upload-limit.vue} +15 -5
  179. package/demos/pc/app/file-upload/custom-upload-tip-composition-api.vue +1 -1
  180. package/demos/pc/app/file-upload/custom-upload-tip.spec.ts +1 -1
  181. package/demos/pc/app/file-upload/custom-upload-tip.vue +1 -1
  182. package/demos/pc/app/file-upload/form-validation-composition-api.vue +10 -4
  183. package/demos/pc/app/file-upload/form-validation.vue +9 -3
  184. package/demos/pc/app/file-upload/multiple-file.spec.ts +3 -1
  185. package/demos/pc/app/file-upload/upload-events-composition-api.vue +8 -8
  186. package/demos/pc/app/file-upload/upload-events.vue +8 -8
  187. package/demos/pc/app/file-upload/upload-request-composition-api.vue +1 -1
  188. package/demos/pc/app/file-upload/upload-request.vue +1 -1
  189. package/demos/pc/app/file-upload/webdoc/file-upload.js +97 -96
  190. package/demos/pc/app/form/form-validation-composition-api.vue +2 -2
  191. package/demos/pc/app/form/form-validation.vue +1 -1
  192. package/demos/pc/app/form/label-position.spec.ts +3 -0
  193. package/demos/pc/app/form/popper-options.spec.ts +1 -0
  194. package/demos/pc/app/form/slot-label-composition-api.vue +1 -1
  195. package/demos/pc/app/form/validate-debounce-composition-api.vue +3 -3
  196. package/demos/pc/app/form/validate-debounce.vue +3 -3
  197. package/demos/pc/app/form/webdoc/form.js +10 -9
  198. package/demos/pc/app/grid/dynamically-columns/dynamically-columns-composition-api.vue +6 -4
  199. package/demos/pc/app/grid/dynamically-columns/dynamically-columns.vue +6 -4
  200. package/demos/pc/app/grid/dynamically-columns/reverse-row-composition-api.vue +3 -1
  201. package/demos/pc/app/grid/dynamically-columns/reverse-row.vue +3 -1
  202. package/demos/pc/app/grid/faq/grid-in-dialog-box-composition-api.vue +1 -1
  203. package/demos/pc/app/grid/faq/grid-in-dialog-box.spec.js +1 -1
  204. package/demos/pc/app/grid/faq/grid-in-dialog-box.vue +1 -1
  205. package/demos/pc/app/grid/filter/advanced-filter-composition-api.vue +0 -15
  206. package/demos/pc/app/grid/filter/advanced-filter.spec.js +1 -1
  207. package/demos/pc/app/grid/filter/advanced-filter.vue +0 -14
  208. package/demos/pc/app/grid/filter/custom-filter.spec.js +1 -1
  209. package/demos/pc/app/grid/filter/default-filter-composition-api.vue +1 -1
  210. package/demos/pc/app/grid/filter/default-filter.spec.ts +1 -1
  211. package/demos/pc/app/grid/filter/default-filter.vue +1 -1
  212. package/demos/pc/app/grid/filter/simple-default-value-filter-composition-api.vue +0 -14
  213. package/demos/pc/app/grid/filter/simple-default-value-filter.vue +0 -14
  214. package/demos/pc/app/grid/filter/simple-filter-composition-api.vue +0 -14
  215. package/demos/pc/app/grid/filter/simple-filter.vue +0 -14
  216. package/demos/pc/app/grid/footer/configuration-summary.spec.js +1 -1
  217. package/demos/pc/app/grid/highlight/set-current-row-composition-api.vue +4 -1
  218. package/demos/pc/app/grid/highlight/set-current-row.vue +4 -1
  219. package/demos/pc/app/grid/large-data/scroll-to-composition-api.vue +6 -3
  220. package/demos/pc/app/grid/large-data/scroll-to.vue +6 -3
  221. package/demos/pc/app/grid/pager/inner-pager-composition-api.vue +1 -1
  222. package/demos/pc/app/grid/pager/inner-pager.spec.js +1 -1
  223. package/demos/pc/app/grid/pager/inner-pager.vue +1 -1
  224. package/demos/pc/app/grid/sort/server-sort-composition-api.vue +3 -3
  225. package/demos/pc/app/grid/sort/server-sort.vue +2 -2
  226. package/demos/pc/app/grid/sort/sort-composition-api.vue +4 -1
  227. package/demos/pc/app/grid/sort/sort.spec.js +1 -1
  228. package/demos/pc/app/grid/sort/sort.vue +4 -1
  229. package/demos/pc/app/grid/toolbar/insert-delete-update-composition-api.vue +2 -1
  230. package/demos/pc/app/grid/toolbar/insert-delete-update.vue +2 -1
  231. package/demos/pc/app/grid/toolbar/toolbar-op-config-composition-api.vue +3 -2
  232. package/demos/pc/app/grid/toolbar/toolbar-op-config.vue +3 -2
  233. package/demos/pc/app/grid/validation/before-submit-validation-composition-api.vue +5 -5
  234. package/demos/pc/app/grid/validation/before-submit-validation.spec.js +2 -2
  235. package/demos/pc/app/grid/validation/before-submit-validation.vue +5 -5
  236. package/demos/pc/app/grid/webdoc/grid-appearance-settings.js +2 -2
  237. package/demos/pc/app/grid/webdoc/grid-context-menu.js +4 -4
  238. package/demos/pc/app/grid/webdoc/grid-custom-style.js +2 -2
  239. package/demos/pc/app/grid/webdoc/grid-custom.js +31 -31
  240. package/demos/pc/app/grid/webdoc/grid-drag.js +1 -1
  241. package/demos/pc/app/grid/webdoc/grid-dynamically-columns.js +4 -1
  242. package/demos/pc/app/grid/webdoc/grid-editor.js +2 -2
  243. package/demos/pc/app/grid/webdoc/grid-empty.js +4 -1
  244. package/demos/pc/app/grid/webdoc/grid-expand.js +3 -3
  245. package/demos/pc/app/grid/webdoc/grid-faq.js +4 -4
  246. package/demos/pc/app/grid/webdoc/grid-filter.js +4 -4
  247. package/demos/pc/app/grid/webdoc/grid-footer.js +1 -1
  248. package/demos/pc/app/grid/webdoc/grid-highlight.js +2 -2
  249. package/demos/pc/app/grid/webdoc/grid-import-export.js +5 -2
  250. package/demos/pc/app/grid/webdoc/grid-large-data.js +6 -5
  251. package/demos/pc/app/grid/webdoc/grid-mouse-keyboard.js +2 -2
  252. package/demos/pc/app/grid/webdoc/grid-pager.js +11 -2
  253. package/demos/pc/app/grid/webdoc/grid-renderer.js +11 -11
  254. package/demos/pc/app/grid/webdoc/grid-row-grouping.js +2 -2
  255. package/demos/pc/app/grid/webdoc/grid-size.js +6 -6
  256. package/demos/pc/app/grid/webdoc/grid-slot.js +16 -4
  257. package/demos/pc/app/grid/webdoc/grid-tip.js +3 -3
  258. package/demos/pc/app/grid/webdoc/grid-toolbar.js +17 -9
  259. package/demos/pc/app/grid/webdoc/grid-tree-table.js +9 -7
  260. package/demos/pc/app/grid/webdoc/grid-validation.js +6 -6
  261. package/demos/pc/app/grid/webdoc/grid.js +160 -85
  262. package/demos/pc/app/icon/iconGroups.js +1 -0
  263. package/demos/pc/app/icon/list-composition-api.vue +8 -0
  264. package/demos/pc/app/icon/list.vue +7 -0
  265. package/demos/pc/app/image/basic-usage.spec.ts +1 -1
  266. package/demos/pc/app/image/events.spec.ts +1 -1
  267. package/demos/pc/app/image/lazy.spec.ts +1 -1
  268. package/demos/pc/app/image/preview-in-dialog.spec.ts +1 -1
  269. package/demos/pc/app/image/preview.spec.ts +1 -1
  270. package/demos/pc/app/image/slot.spec.ts +1 -1
  271. package/demos/pc/app/image/webdoc/image.cn.md +3 -1
  272. package/demos/pc/app/image/webdoc/image.en.md +3 -1
  273. package/demos/pc/app/image/webdoc/image.js +34 -18
  274. package/demos/pc/app/input/method-addMemory-composition-api.vue +1 -0
  275. package/demos/pc/app/input/method-addMemory.spec.ts +11 -0
  276. package/demos/pc/app/input/method-addMemory.vue +1 -0
  277. package/demos/pc/app/input/webdoc/input.js +12 -2
  278. package/demos/pc/app/ip-address/webdoc/ip-address.cn.md +2 -2
  279. package/demos/pc/app/ip-address/webdoc/ip-address.js +2 -2
  280. package/demos/pc/app/link/webdoc/link.js +1 -1
  281. package/demos/pc/app/loading/webdoc/loading.js +1 -1
  282. package/demos/pc/app/milestone/show-number-composition-api.vue +1 -1
  283. package/demos/pc/app/milestone/show-number.vue +1 -1
  284. package/demos/pc/app/milestone/solid-style-composition-api.vue +1 -1
  285. package/demos/pc/app/milestone/solid-style.vue +1 -1
  286. package/demos/pc/app/milestone/webdoc/milestone.js +9 -9
  287. package/demos/pc/app/mind-map/basic-usage-composition-api.vue +14 -0
  288. package/demos/pc/app/mind-map/basic-usage.spec.ts +36 -0
  289. package/demos/pc/app/mind-map/basic-usage.vue +20 -0
  290. package/demos/pc/app/mind-map/event-composition-api.vue +125 -0
  291. package/demos/pc/app/mind-map/event.spec.ts +52 -0
  292. package/demos/pc/app/mind-map/event.vue +136 -0
  293. package/demos/pc/app/mind-map/export-data-composition-api.vue +108 -0
  294. package/demos/pc/app/mind-map/export-data.spec.ts +19 -0
  295. package/demos/pc/app/mind-map/export-data.vue +119 -0
  296. package/demos/pc/app/mind-map/webdoc/mind-map.cn.md +7 -0
  297. package/demos/pc/app/mind-map/webdoc/mind-map.en.md +7 -0
  298. package/demos/pc/app/mind-map/webdoc/mind-map.js +250 -0
  299. package/demos/pc/app/modal/webdoc/modal.js +47 -47
  300. package/demos/pc/app/nav-menu/custom-service-composition-api.vue +5 -5
  301. package/demos/pc/app/nav-menu/custom-service.vue +5 -5
  302. package/demos/pc/app/notify/webdoc/notify.js +9 -6
  303. package/demos/pc/app/numeric/webdoc/numeric.js +23 -23
  304. package/demos/pc/app/pager/before-page-change-composition-api.vue +1 -1
  305. package/demos/pc/app/pager/before-page-change.vue +1 -1
  306. package/demos/pc/app/pager/custom-layout-composition-api.vue +8 -6
  307. package/demos/pc/app/pager/custom-layout.vue +8 -6
  308. package/demos/pc/app/pager/custom-total-composition-api.vue +20 -18
  309. package/demos/pc/app/pager/custom-total.vue +20 -18
  310. package/demos/pc/app/pager/hide-on-single-page-composition-api.vue +1 -1
  311. package/demos/pc/app/pager/hide-on-single-page.spec.ts +1 -1
  312. package/demos/pc/app/pager/hide-on-single-page.vue +1 -1
  313. package/demos/pc/app/pager/pager-event-composition-api.vue +10 -5
  314. package/demos/pc/app/pager/pager-event.vue +10 -5
  315. package/demos/pc/app/pager/webdoc/pager.js +3 -3
  316. package/demos/pc/app/pop-upload/webdoc/pop-upload.js +3 -3
  317. package/demos/pc/app/popconfirm/webdoc/popconfirm.js +1 -1
  318. package/demos/pc/app/progress/custom-color-composition-api.vue +10 -5
  319. package/demos/pc/app/progress/custom-color.spec.ts +14 -1
  320. package/demos/pc/app/progress/custom-color.vue +10 -5
  321. package/demos/pc/app/progress/custom-status-composition-api.vue +30 -11
  322. package/demos/pc/app/progress/custom-status.vue +30 -11
  323. package/demos/pc/app/progress/webdoc/progress.js +7 -8
  324. package/demos/pc/app/qr-code/level-composition-api.vue +5 -8
  325. package/demos/pc/app/qr-code/style-composition-api.vue +1 -0
  326. package/demos/pc/app/qr-code/style.vue +1 -0
  327. package/demos/pc/app/qr-code/webdoc/qr-code.js +22 -10
  328. package/demos/pc/app/radio/group-options-composition-api.vue +13 -0
  329. package/demos/pc/app/radio/group-options.vue +20 -2
  330. package/demos/pc/app/radio/webdoc/radio.js +3 -3
  331. package/demos/pc/app/rate/webdoc/rate.js +8 -10
  332. package/demos/pc/app/search/events-composition-api.vue +4 -4
  333. package/demos/pc/app/search/events.vue +4 -4
  334. package/demos/pc/app/search/slot-prefix-composition-api.vue +1 -1
  335. package/demos/pc/app/search/slot-prefix.vue +1 -1
  336. package/demos/pc/app/search/webdoc/search.js +2 -2
  337. package/demos/pc/app/select/basic-usage-composition-api.vue +11 -6
  338. package/demos/pc/app/select/basic-usage.spec.ts +34 -9
  339. package/demos/pc/app/select/basic-usage.vue +11 -6
  340. package/demos/pc/app/select/clear-no-match-value-composition-api.vue +1 -1
  341. package/demos/pc/app/select/clear-no-match-value.vue +1 -1
  342. package/demos/pc/app/select/events-composition-api.vue +12 -6
  343. package/demos/pc/app/select/events.vue +10 -5
  344. package/demos/pc/app/select/is-drop-inherit-width-composition-api.vue +1 -2
  345. package/demos/pc/app/select/is-drop-inherit-width.vue +1 -2
  346. package/demos/pc/app/select/no-data-text-composition-api.vue +1 -1
  347. package/demos/pc/app/select/no-data-text.spec.ts +1 -1
  348. package/demos/pc/app/select/no-data-text.vue +1 -1
  349. package/demos/pc/app/select/optimization-composition-api.vue +5 -2
  350. package/demos/pc/app/select/optimization.vue +4 -1
  351. package/demos/pc/app/select/option-group-composition-api.vue +33 -11
  352. package/demos/pc/app/select/option-group.spec.ts +2 -2
  353. package/demos/pc/app/select/option-group.vue +34 -13
  354. package/demos/pc/app/select/slot-default-composition-api.vue +49 -13
  355. package/demos/pc/app/select/slot-default.spec.ts +5 -2
  356. package/demos/pc/app/select/slot-default.vue +50 -14
  357. package/demos/pc/app/select/slot-empty-composition-api.vue +16 -3
  358. package/demos/pc/app/select/slot-empty.spec.ts +1 -1
  359. package/demos/pc/app/select/slot-empty.vue +18 -4
  360. package/demos/pc/app/select/webdoc/select.js +89 -16
  361. package/demos/pc/app/slider/basic-usage-composition-api.vue +1 -1
  362. package/demos/pc/app/slider/basic-usage.vue +1 -1
  363. package/demos/pc/app/switch/before-change-composition-api.vue +4 -1
  364. package/demos/pc/app/switch/before-change.vue +4 -3
  365. package/demos/pc/app/switch/custom-true-false-value-composition-api.vue +1 -1
  366. package/demos/pc/app/switch/custom-true-false-value.spec.ts +2 -2
  367. package/demos/pc/app/switch/custom-true-false-value.vue +1 -1
  368. package/demos/pc/app/switch/event-change-composition-api.vue +1 -1
  369. package/demos/pc/app/switch/event-change.vue +1 -1
  370. package/demos/pc/app/switch/webdoc/switch.cn.md +1 -1
  371. package/demos/pc/app/switch/webdoc/switch.js +1 -1
  372. package/demos/pc/app/tabs/webdoc/tabs.js +3 -3
  373. package/demos/pc/app/tag/webdoc/tag.js +1 -1
  374. package/demos/pc/app/tag-group/basic-usage.vue +1 -1
  375. package/demos/pc/app/tag-group/webdoc/tag-group.js +2 -2
  376. package/demos/pc/app/time-select/basic-usage.spec.ts +6 -5
  377. package/demos/pc/app/time-select/clear-icon.spec.ts +7 -5
  378. package/demos/pc/app/time-select/default-value.spec.ts +3 -2
  379. package/demos/pc/app/time-select/event-blur.spec.ts +2 -2
  380. package/demos/pc/app/time-select/focus.spec.ts +5 -4
  381. package/demos/pc/app/time-select/picker-options.spec.ts +1 -1
  382. package/demos/pc/app/time-select/range-placeholder.spec.ts +16 -13
  383. package/demos/pc/app/time-select/size-medium.spec.ts +5 -1
  384. package/demos/pc/app/toggle-menu/webdoc/toggle-menu.js +2 -2
  385. package/demos/pc/app/transfer/basic-usage.spec.ts +1 -1
  386. package/demos/pc/app/transfer/before-transfer.spec.ts +1 -1
  387. package/demos/pc/app/transfer/custom-btns.spec.ts +1 -1
  388. package/demos/pc/app/transfer/custom-filter.spec.ts +1 -1
  389. package/demos/pc/app/transfer/custom-footer.spec.ts +2 -1
  390. package/demos/pc/app/transfer/custom-render.spec.ts +1 -1
  391. package/demos/pc/app/transfer/custom-titles.spec.ts +1 -1
  392. package/demos/pc/app/transfer/default-checked.spec.ts +1 -1
  393. package/demos/pc/app/transfer/drop-config.spec.ts +1 -1
  394. package/demos/pc/app/transfer/nested-table.spec.ts +1 -1
  395. package/demos/pc/app/transfer/nested-tree.spec.ts +1 -1
  396. package/demos/pc/app/transfer/target-order.spec.ts +1 -1
  397. package/demos/pc/app/transfer/transfer-events.spec.ts +1 -1
  398. package/demos/pc/app/transfer/webdoc/transfer.cn.md +1 -1
  399. package/demos/pc/app/transfer/webdoc/transfer.en.md +3 -3
  400. package/demos/pc/app/transfer/webdoc/transfer.js +76 -43
  401. package/demos/pc/app/tree/basic-usage.spec.ts +1 -1
  402. package/demos/pc/app/tree/check-op.spec.ts +1 -1
  403. package/demos/pc/app/tree/checkbox.spec.ts +1 -1
  404. package/demos/pc/app/tree/contextmenu.spec.ts +1 -1
  405. package/demos/pc/app/tree/drag.spec.ts +1 -1
  406. package/demos/pc/app/tree/edit.spec.ts +1 -1
  407. package/demos/pc/app/tree/expand-control.spec.ts +1 -1
  408. package/demos/pc/app/tree/filter-view.spec.ts +1 -1
  409. package/demos/pc/app/tree/icons.spec.ts +1 -1
  410. package/demos/pc/app/tree/lazy.spec.ts +1 -1
  411. package/demos/pc/app/tree/node-hl.spec.ts +1 -1
  412. package/demos/pc/app/tree/node-op.spec.ts +1 -1
  413. package/demos/pc/app/tree/other.spec.ts +1 -1
  414. package/demos/pc/app/tree/props.spec.ts +1 -1
  415. package/demos/pc/app/tree/radio.spec.ts +1 -1
  416. package/demos/pc/app/tree/slot.spec.ts +1 -1
  417. package/demos/pc/app/tree/webdoc/tree.cn.md +1 -1
  418. package/demos/pc/app/tree/webdoc/tree.en.md +1 -1
  419. package/demos/pc/app/tree/webdoc/tree.js +67 -19
  420. package/demos/pc/app/tree-menu/custom-icon.spec.ts +1 -0
  421. package/demos/pc/app/tree-menu/only-check-children.spec.ts +24 -2
  422. package/demos/pc/app/tree-menu/props.spec.ts +22 -2
  423. package/demos/pc/app/tree-menu/show-expand.spec.ts +36 -4
  424. package/demos/pc/app/tree-menu/show-filter.spec.ts +54 -3
  425. package/demos/pc/app/tree-menu/show-number.spec.ts +14 -1
  426. package/demos/pc/app/tree-menu/webdoc/tree-menu.js +4 -4
  427. package/demos/pc/app/user-head/image-user-head-composition-api.vue +1 -1
  428. package/demos/pc/app/user-head/image-user-head.vue +1 -1
  429. package/demos/pc/app/user-head/webdoc/user-head.js +17 -17
  430. package/demos/pc/app/watermark/webdoc/watermark.js +32 -16
  431. package/demos/pc/menus.js +6 -1
  432. package/demos/pc/webdoc/form-valid-en.md +9 -3
  433. package/demos/pc/webdoc/form-valid.md +3 -1
  434. package/demos/pc/webdoc/theme-en.md +10 -8
  435. package/package.json +8 -7
  436. package/playground/App.vue +9 -0
  437. package/demos/mobile/app/button/event-click.vue +0 -40
  438. package/demos/mobile/app/button/native-type.vue +0 -105
  439. package/demos/mobile/app/button/plain.vue +0 -33
  440. package/demos/mobile/app/button/round.vue +0 -34
  441. package/demos/mobile/app/button/text.vue +0 -38
  442. package/demos/pc/app/calendar-view/hide-mode-composition-api.vue +0 -7
  443. package/demos/pc/app/calendar-view/hide-mode.vue +0 -13
  444. package/demos/pc/app/calendar-view/mode-combination-composition-api.vue +0 -7
  445. package/demos/pc/app/calendar-view/mode-combination.vue +0 -14
  446. package/demos/pc/app/file-upload/upload-limit-composition-api.vue +0 -22
  447. package/demos/pc/app/file-upload/upload-limit.spec.ts +0 -20
  448. package/demos/pc/app/file-upload/upload-limit.vue +0 -32
  449. package/demos/pc/app/time-select/disabled-composition-api.vue +0 -18
  450. package/demos/pc/app/time-select/disabled.spec.ts +0 -8
  451. package/demos/pc/app/time-select/disabled.vue +0 -26
  452. package/demos/pc/resource/user-group-2.png +0 -0
  453. package/demos/pc/resource/user-group.png +0 -0
@@ -1,14 +1,17 @@
1
1
  <template>
2
2
  <tiny-select v-model="value">
3
3
  <template #empty>
4
- <div class="custom-empty">空数据插槽</div>
4
+ <div class="custom-empty">
5
+ <p>APIG 网关异常</p>
6
+ <tiny-button size="small">重新加载</tiny-button>
7
+ </div>
5
8
  </template>
6
9
  </tiny-select>
7
10
  </template>
8
11
 
9
12
  <script setup>
10
13
  import { ref } from 'vue'
11
- import { Select as TinySelect } from '@opentiny/vue'
14
+ import { Select as TinySelect, Button as TinyButton } from '@opentiny/vue'
12
15
 
13
16
  const value = ref('')
14
17
  </script>
@@ -18,6 +21,16 @@ const value = ref('')
18
21
  width: 280px;
19
22
  }
20
23
  .custom-empty {
21
- padding: 10px;
24
+ padding: 87px 0;
25
+ text-align: center;
26
+
27
+ p {
28
+ font-size: 12px;
29
+ color: #595959;
30
+ line-height: 1.5;
31
+ }
32
+ .tiny-button {
33
+ margin-top: 8px;
34
+ }
22
35
  }
23
36
  </style>
@@ -11,5 +11,5 @@ test('空数据插槽', async ({ page }) => {
11
11
 
12
12
  await input.click()
13
13
  await expect((await option.all()).length).toEqual(0)
14
- await expect(page.locator('.tiny-select-dropdown')).toHaveText('空数据插槽')
14
+ await expect(page.locator('.tiny-select-dropdown')).toHaveText('APIG 网关异常重新加载')
15
15
  })
@@ -1,17 +1,21 @@
1
1
  <template>
2
2
  <tiny-select v-model="value">
3
3
  <template #empty>
4
- <div class="custom-empty">空数据插槽</div>
4
+ <div class="custom-empty">
5
+ <p>APIG 网关异常</p>
6
+ <tiny-button size="small">重新加载</tiny-button>
7
+ </div>
5
8
  </template>
6
9
  </tiny-select>
7
10
  </template>
8
11
 
9
12
  <script>
10
- import { Select } from '@opentiny/vue'
13
+ import { Select, Button } from '@opentiny/vue'
11
14
 
12
15
  export default {
13
16
  components: {
14
- TinySelect: Select
17
+ TinySelect: Select,
18
+ TinyButton: Button
15
19
  },
16
20
  data() {
17
21
  return {
@@ -26,6 +30,16 @@ export default {
26
30
  width: 280px;
27
31
  }
28
32
  .custom-empty {
29
- padding: 10px;
33
+ padding: 87px 0;
34
+ text-align: center;
35
+
36
+ p {
37
+ font-size: 12px;
38
+ color: #595959;
39
+ line-height: 1.5;
40
+ }
41
+ .tiny-button {
42
+ margin-top: 8px;
43
+ }
30
44
  }
31
45
  </style>
@@ -196,7 +196,7 @@ export default {
196
196
  'name': { 'zh-CN': '分组', 'en-US': 'Group' },
197
197
  'desc': {
198
198
  'zh-CN':
199
- '<p>使用 <code>tiny-option-group</code> 组件对备选项进行分组。通过 <code>label</code> 属性设置分组名,code>disabled</code> 属性设置该分组下所有选项为禁用。</p>\n',
199
+ '<p>使用 <code>tiny-option-group</code> 组件对备选项进行分组。通过 <code>label</code> 属性设置分组名,<code>disabled</code> 属性设置该分组下所有选项为禁用。</p>\n',
200
200
  'en-US':
201
201
  '<p>Use the <code>tiny-option-group</code> component to group alternative options. Set the group name through the <code>label</code> attribute, and set all options under the group to disabled through the <code>disabled</code> attribute. </p>\n'
202
202
  },
@@ -539,7 +539,8 @@ export default {
539
539
  sortBy: 'frequency',
540
540
  sort: 'desc',
541
541
  dataKey: 'value',
542
- highlightClass: 'memorize-highlight',
542
+ highlightClass:
543
+ 'memorize-highlight',
543
544
  highlightNum: Infinity,
544
545
  cacheNum: Infinity,
545
546
  serialize: JSON.stringify
@@ -1049,6 +1050,85 @@ export default {
1049
1050
  'demoId': 'manual-focus-blur'
1050
1051
  }
1051
1052
  ]
1053
+ },
1054
+ {
1055
+ 'name': 'option',
1056
+ 'type': 'component',
1057
+ 'props': [
1058
+ {
1059
+ 'name': 'label',
1060
+ 'type': 'string',
1061
+ 'defaultValue': '',
1062
+ 'desc': {
1063
+ 'zh-CN': '选项的显示文本',
1064
+ 'en-US': 'Display text for option'
1065
+ },
1066
+ 'demoId': 'basic-usage'
1067
+ },
1068
+ {
1069
+ 'name': 'value',
1070
+ 'type': 'string',
1071
+ 'defaultValue': '',
1072
+ 'desc': {
1073
+ 'zh-CN': '选项的值',
1074
+ 'en-US': 'Value for option'
1075
+ },
1076
+ 'demoId': 'basic-usage'
1077
+ },
1078
+ {
1079
+ 'name': 'icon',
1080
+ 'type': 'Component',
1081
+ 'defaultValue': '',
1082
+ 'desc': {
1083
+ 'zh-CN': '自定义选项的图标',
1084
+ 'en-US': 'Customize icons for options'
1085
+ },
1086
+ 'demoId': 'basic-usage'
1087
+ },
1088
+ {
1089
+ 'name': 'disabled',
1090
+ 'type': 'boolean',
1091
+ 'defaultValue': 'false',
1092
+ 'desc': {
1093
+ 'zh-CN': '选项是否禁用',
1094
+ 'en-US': 'Is the option disabled'
1095
+ },
1096
+ 'demoId': 'disabled'
1097
+ },
1098
+ {
1099
+ 'name': 'required',
1100
+ 'type': 'boolean',
1101
+ 'defaultValue': 'false',
1102
+ 'desc': {
1103
+ 'zh-CN': '选项是否必选',
1104
+ 'en-US': 'Is it mandatory to select an option'
1105
+ },
1106
+ 'demoId': ''
1107
+ }
1108
+ /*
1109
+ // TINY-TODO: 待确认是否暴露给用户使用
1110
+ {
1111
+ 'name': 'visible',
1112
+ 'type': 'boolean',
1113
+ 'defaultValue': 'true',
1114
+ 'desc': {
1115
+ 'zh-CN': '选项是否可见',
1116
+ 'en-US': 'Is the option visible'
1117
+ },
1118
+ 'demoId': 'basic-usage'
1119
+ },
1120
+ {
1121
+ 'name': 'highlight-class',
1122
+ 'type': 'string',
1123
+ 'defaultValue': '',
1124
+ 'desc': {
1125
+ 'zh-CN': '选项高亮类名',
1126
+ 'en-US': 'Is the option visible'
1127
+ },
1128
+ 'demoId': 'basic-usage'
1129
+ },
1130
+ */
1131
+ ]
1052
1132
  }
1053
1133
  ],
1054
1134
  types: [
@@ -1059,11 +1139,14 @@ export default {
1059
1139
  interface IOption {
1060
1140
  value?: string | number
1061
1141
  label?: string
1142
+ disabled?: boolean
1143
+ icon?: Component
1144
+ required?:boolean
1062
1145
  }
1063
1146
  `
1064
1147
  },
1065
1148
  {
1066
- name: 'ICacheItem',
1149
+ name: 'ICacheOp',
1067
1150
  type: 'interface',
1068
1151
  code: `
1069
1152
  interface ICacheItem {
@@ -1071,12 +1154,7 @@ interface ICacheItem {
1071
1154
  key: string
1072
1155
  time: number
1073
1156
  }
1074
- `
1075
- },
1076
- {
1077
- name: 'ICacheOp',
1078
- type: 'interface',
1079
- code: `
1157
+
1080
1158
  interface ICacheOp {
1081
1159
  key: string // 本地缓存的唯一 key 值
1082
1160
  sortBy?: 'frequency' | 'time' // 排序的字段,默认 frequency (频次)
@@ -1101,7 +1179,7 @@ interface IGridOption {
1101
1179
  `
1102
1180
  },
1103
1181
  {
1104
- name: 'ITreeNode',
1182
+ name: 'ITreeOption',
1105
1183
  type: 'interface',
1106
1184
  code: `
1107
1185
  interface ITreeNode {
@@ -1109,12 +1187,7 @@ interface ITreeNode {
1109
1187
  id: number|string // 树节点唯一标识
1110
1188
  children: ITreeNode[] // 子节点
1111
1189
  }
1112
- `
1113
- },
1114
- {
1115
- name: 'ITreeOption',
1116
- type: 'interface',
1117
- code: `
1190
+
1118
1191
  interface ITreeOption {
1119
1192
  data: ITreeNode[] // 树数据,用法同 Tree
1120
1193
  }
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div>
3
3
  <tiny-button @click="setValue">设置值</tiny-button>
4
- <tiny-slider v-model="value" ref="sliderRef"></tiny-slider>
4
+ <tiny-slider v-model="value"></tiny-slider>
5
5
  </div>
6
6
  </template>
7
7
 
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div>
3
3
  <tiny-button @click="setValue">设置值</tiny-button>
4
- <tiny-slider v-model="value" ref="slider"></tiny-slider>
4
+ <tiny-slider v-model="value"></tiny-slider>
5
5
  </div>
6
6
  </template>
7
7
 
@@ -9,7 +9,10 @@ import { Switch as TinySwitch, Modal } from '@opentiny/vue'
9
9
  const value = ref(false)
10
10
 
11
11
  function beforeChange(done) {
12
- Modal.message('开关切换功能已被拦截,必须调用 done 方法才能执行开关状态的切换,2s后将自动调用 done 方法切换开关状态')
12
+ Modal.message({
13
+ message: '开关切换功能已被拦截,必须调用 done 方法才能执行开关状态的切换,2s后将自动调用 done 方法切换开关状态',
14
+ status: 'info'
15
+ })
13
16
  setTimeout(done, 2000)
14
17
  }
15
18
  </script>
@@ -16,9 +16,10 @@ export default {
16
16
  },
17
17
  methods: {
18
18
  beforeChange(done) {
19
- Modal.message(
20
- '开关切换功能已被拦截,必须调用 done 方法才能执行开关状态的切换,2s后将自动调用 done 方法切换开关状态'
21
- )
19
+ Modal.message({
20
+ message: '开关切换功能已被拦截,必须调用 done 方法才能执行开关状态的切换,2s后将自动调用 done 方法切换开关状态',
21
+ status: 'info'
22
+ })
22
23
  setTimeout(done, 2000)
23
24
  }
24
25
  }
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div>
3
3
  <tiny-switch v-model="value" true-value="yes" false-value="no"> </tiny-switch>
4
- 当前值:{{ value }}
4
+ 当前值: {{ value }}
5
5
  </div>
6
6
  </template>
7
7
 
@@ -7,7 +7,7 @@ test('自定义开关取值', async ({ page }) => {
7
7
  const demo = page.locator('#custom-true-false-value')
8
8
  const switchBtn = demo.locator('.tiny-switch')
9
9
 
10
- await expect(demo.locator('.pc-demo')).toHaveText('当前值:yes')
10
+ await expect(demo.locator('.pc-demo')).toHaveText('当前值: yes')
11
11
  await switchBtn.click()
12
- await expect(demo.locator('.pc-demo')).toHaveText('当前值:no')
12
+ await expect(demo.locator('.pc-demo')).toHaveText('当前值: no')
13
13
  })
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div>
3
3
  <tiny-switch v-model="value" true-value="yes" false-value="no"> </tiny-switch>
4
- 当前值:{{ value }}
4
+ 当前值: {{ value }}
5
5
  </div>
6
6
  </template>
7
7
 
@@ -6,6 +6,6 @@
6
6
  import { Switch as TinySwitch, Modal } from '@opentiny/vue'
7
7
 
8
8
  function handleChange(val) {
9
- Modal.message({ message: `开关值:${val}` })
9
+ Modal.message({ message: `开关值:${val}`, status: 'info' })
10
10
  }
11
11
  </script>
@@ -11,7 +11,7 @@ export default {
11
11
  },
12
12
  methods: {
13
13
  handleChange(val) {
14
- Modal.message({ message: `开关值:${val}` })
14
+ Modal.message({ message: `开关值:${val}`, status: 'info' })
15
15
  }
16
16
  }
17
17
  }
@@ -4,4 +4,4 @@ title: Switch 开关
4
4
 
5
5
  # Switch 开关
6
6
 
7
- <div>Switch 在两种状态间切换选择。</div>
7
+ <div>在两种状态间切换选择。</div>
@@ -153,7 +153,7 @@ export default {
153
153
  'type': '(value: boolean | string | number) => void',
154
154
  'defaultValue': '--',
155
155
  'desc': {
156
- 'zh-CN': 'switch 发生变化的回调函数',
156
+ 'zh-CN': 'switch 状态发生变化时的回调函数',
157
157
  'en-US': 'Callback function for switch changes'
158
158
  },
159
159
  'demoId': 'event-change'
@@ -258,7 +258,7 @@ export default {
258
258
  'name': 'position',
259
259
  'type': 'IPosition',
260
260
  'typeAnchorName': 'IPosition',
261
- 'defaultValue': 'top',
261
+ 'defaultValue': `'top'`,
262
262
  'desc': {
263
263
  'zh-CN': '设置页签栏所在位置; 默认为 top',
264
264
  'en-US': 'Set the location of the label bar; Default to top'
@@ -366,12 +366,12 @@ export default {
366
366
  },
367
367
  {
368
368
  'name': 'click',
369
- 'type': '(TabItem: VueComponent, event: Event) => void',
369
+ 'type': '(TabItem: Component, event: Event) => void',
370
370
  'defaultValue': '',
371
371
  'desc': {
372
372
  'zh-CN': '点击页签项时触发,tab 被选中时触发; TabItem: 点中页签项的vueComponent对象信息',
373
373
  'en-US':
374
- 'Trigger an event when clicking on a tab item, Triggered when tab is selected; TabItem: Click on the VueComponent object information of the tab item in the middle'
374
+ 'Trigger an event when clicking on a tab item, Triggered when tab is selected; TabItem: Click on the Component object information of the tab item in the middle'
375
375
  },
376
376
  'demoId': 'tabs-events-click'
377
377
  },
@@ -131,7 +131,7 @@ export default {
131
131
  'name': 'effect',
132
132
  'type': 'IEffect',
133
133
  'typeAnchorName': 'IEffect',
134
- 'defaultValue': 'light',
134
+ 'defaultValue': `'light'`,
135
135
  'desc': {
136
136
  'zh-CN': '主题',
137
137
  'en-US': 'Subject'
@@ -13,7 +13,7 @@ export default {
13
13
  return {
14
14
  data: [
15
15
  {
16
- name: '标签一',
16
+ name: '标签一'
17
17
  },
18
18
  {
19
19
  name: '标签二',
@@ -63,7 +63,7 @@ export default {
63
63
  {
64
64
  'name': 'size',
65
65
  'type': "'medium' | 'small' | 'mini'",
66
- 'defaultValue': 'medium',
66
+ 'defaultValue': "'medium'",
67
67
  'desc': {
68
68
  'zh-CN': '尺寸',
69
69
  'en-US': 'Size '
@@ -73,7 +73,7 @@ export default {
73
73
  {
74
74
  'name': 'effect',
75
75
  'type': "'dark' | 'light' | 'plain'",
76
- 'defaultValue': 'light',
76
+ 'defaultValue': "'light'",
77
77
  'desc': {
78
78
  'zh-CN': '主题',
79
79
  'en-US': 'Effect'
@@ -3,12 +3,13 @@ import { test, expect } from '@playwright/test'
3
3
  test('基础用法', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-select#basic-usage')
6
- const timeInput = page.getByPlaceholder('选择时间')
6
+ const input = page.locator('#basic-usage').locator('.tiny-input__inner')
7
+ const timeInput = page.locator('#basic-usage').getByRole('textbox', { name: '选择时间' })
7
8
  await timeInput.click()
8
- await page.getByText('10:00').click()
9
- expect(await page.getByPlaceholder('选择时间').getAttribute('title')).toEqual('10:00')
9
+ await page.getByText('10:00').nth(1).click()
10
+ await expect(input).toHaveValue('10:00')
10
11
 
11
12
  // 手动输入
12
- await page.getByPlaceholder('选择时间').fill('9:00')
13
- expect(await page.getByPlaceholder('选择时间').getAttribute('title')).toEqual('9:00')
13
+ await input.fill('9:00')
14
+ await expect(input).toHaveValue('9:00')
14
15
  })
@@ -3,11 +3,13 @@ import { test, expect } from '@playwright/test'
3
3
  test('自定义清空图标', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-select#clear-icon')
6
- const timeInput = page.getByPlaceholder('选择时间')
6
+ const demo = page.locator('#clear-icon')
7
+ const timeInput = page.getByRole('textbox', { name: '选择时间' })
8
+ const input = demo.locator('.tiny-input__inner')
7
9
  await timeInput.click()
8
- await page.getByText('10:00').click()
9
- await timeInput.hover()
10
+ await page.getByText('10:00').nth(1).click()
11
+ await input.hover()
10
12
  // 点击图标,清除输入框内容
11
- await page.locator('#preview').getByRole('img').nth(1).click()
12
- expect(await page.getByPlaceholder('选择时间').getAttribute('title')).toEqual('')
13
+ await page.locator('#clear-icon svg').first().click()
14
+ await expect(input).toHaveValue('')
13
15
  })
@@ -3,7 +3,8 @@ import { test, expect } from '@playwright/test'
3
3
  test('选择器打开时默认时间设置', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-select#default-value')
6
- await page.getByPlaceholder('选择时间').click()
7
- const defaultSelect = page.getByText('10:00')
6
+ const demo = page.locator('#default-value')
7
+ await demo.locator('.tiny-date-editor').click()
8
+ const defaultSelect = page.getByText('10:00').nth(1)
8
9
  await expect(defaultSelect).toHaveClass(/default/)
9
10
  })
@@ -3,10 +3,10 @@ import { test, expect } from '@playwright/test'
3
3
  test('事件', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-select#event-blur')
6
- await page.getByPlaceholder('选择时间范围').click()
6
+ await page.getByPlaceholder('选择时间范围').getByTitle('08:30').first().click()
7
7
  const focusDiv = page.locator('div').filter({ hasText: 'focus事件' }).nth(1)
8
8
  await expect(focusDiv).toBeVisible()
9
- await page.getByText('10:00').click()
9
+ await page.getByText('10:00').nth(1).click()
10
10
  const change = page.locator('div:nth-child(9) > .tiny-modal__box')
11
11
  await expect(change).toBeVisible
12
12
  const blurDiv = page.locator('div').filter({ hasText: 'blur事件' }).nth(1)
@@ -2,8 +2,9 @@ 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('time-select#event-blur')
6
- await page.getByPlaceholder('选择时间范围').click()
7
- const focus = page.getByPlaceholder('选择时间')
8
- await expect(focus).toBeFocused()
5
+ await page.goto('time-select#focus')
6
+ await page.getByRole('button', { name: '手动获取焦点' }).click()
7
+ // 需要先解决time-select的focus事件
8
+ // const focus = page.getByRole('textbox', { name: '选择时间' })
9
+ // await expect(focus).toBeFocused()
9
10
  })
@@ -3,5 +3,5 @@ import { test, expect } from '@playwright/test'
3
3
  test('指定时间点', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-select#picker-options')
6
- expect(await page.getByPlaceholder('选择时间').getAttribute('title')).not.toBeNull()
6
+ expect(await page.getByRole('textbox', { name: '选择时间' }).getAttribute('title')).not.toBeNull()
7
7
  })
@@ -3,20 +3,23 @@ import { test, expect } from '@playwright/test'
3
3
  test('固定时间范围', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-select#range-placeholder')
6
- const timeInput = page.getByPlaceholder('起始时间')
6
+ const timeInput = page.getByRole('textbox', { name: '起始时间' })
7
+ const options = page.locator('.tiny-picker-panel').nth(3).locator('div')
7
8
  await timeInput.click()
8
- await page.getByText('09:30').nth(1).click()
9
- expect(await page.getByPlaceholder('起始时间').getAttribute('title')).toEqual('09:30')
9
+ // options的第一条是options.first(),时间是08:30;最后一条(最大时间)是options.nth(43),时间是18:30
10
+ await expect(options.first()).toContainText('08:30')
11
+ await expect(options.nth(43)).toContainText('18:30')
12
+ // 起始时间选择10:00,稍后验证结束时间10:00是否disabled。
13
+ options.nth(9).click()
14
+ await expect(page.locator('.tiny-input-suffix .tiny-input__inner').first()).toHaveValue('10:00')
10
15
 
11
- const timeEnd = page.getByPlaceholder('结束时间')
16
+ const timeEnd = page.getByRole('textbox', { name: '结束时间' })
17
+ const endOptions = page.locator('.tiny-picker-panel').nth(3).locator('div')
12
18
  await timeEnd.click()
13
- await page.getByText('10:00').nth(1).click()
14
- expect(await page.getByPlaceholder('结束时间').getAttribute('title')).toEqual('10:00')
15
-
16
- // // 手动输入
17
- await page.getByPlaceholder('起始时间').fill('08:45')
18
- expect(await page.getByPlaceholder('起始时间').getAttribute('title')).toEqual('08:45')
19
-
20
- await page.getByPlaceholder('结束时间').fill('09:45')
21
- expect(await page.getByPlaceholder('结束时间').getAttribute('title')).toEqual('09:45')
19
+ await expect(endOptions.first()).toContainText('08:30')
20
+ await expect(endOptions.nth(43)).toContainText('18:30')
21
+ // 验证结束时间10:00是否disabled
22
+ await expect(endOptions.nth(9)).toHaveClass('tiny-time-select__item disabled')
23
+ endOptions.nth(10).click()
24
+ await expect(page.locator('.tiny-input-suffix .tiny-input__inner').last()).toHaveValue('10:15')
22
25
  })
@@ -3,6 +3,10 @@ import { test, expect } from '@playwright/test'
3
3
  test('medium 尺寸', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('time-select#size-medium')
6
- const mediumBox = page.getByPlaceholder('选择时间')
6
+ const mediumBox = page.getByRole('textbox', { name: '尺寸: medium' })
7
+ const smallBox = page.getByRole('textbox', { name: '尺寸: small' })
8
+ const miniBox = page.getByRole('textbox', { name: '尺寸: mini' })
7
9
  await expect(mediumBox).toHaveCSS('height', '40px')
10
+ await expect(smallBox).toHaveCSS('height', '32px')
11
+ await expect(miniBox).toHaveCSS('height', '24px')
8
12
  })
@@ -310,9 +310,9 @@ export default {
310
310
  'defaultValue': '',
311
311
  'desc': {
312
312
  'zh-CN':
313
- '展开节点后的事件。;节点被展开时触发的事件;//参数arg1:\n{children: 点击节点的子节点, id: 点击节点的id, label: 点击节点的title}\n//参数arg2:\nVueComponent 点击节点的componet对象信息\n//参数arg3:\n{ children: 点击节点的子节点id: 点击节点的id, label: 点击节点的title}',
313
+ '展开节点后的事件。;节点被展开时触发的事件;//参数arg1:\n{children: 点击节点的子节点, id: 点击节点的id, label: 点击节点的title}\n//参数arg2:\nComponent 点击节点的componet对象信息\n//参数arg3:\n{ children: 点击节点的子节点id: 点击节点的id, label: 点击节点的title}',
314
314
  'en-US':
315
- 'Event after a node is expanded. ; Event triggered when a node is expanded; / / Parameter arg1:\n{children: child node of the clicked node, id: ID of the clicked node, label: title of the clicked node}\n//Parameter arg2:\nVueComponent Componet object information of the clicked node\n//Parameter arg3:\n{children: subnode ID of the clicked node: ID of the clicked node, label: Click title} of the node'
315
+ 'Event after a node is expanded. ; Event triggered when a node is expanded; / / Parameter arg1:\n{children: child node of the clicked node, id: ID of the clicked node, label: title of the clicked node}\n//Parameter arg2:\nComponent Componet object information of the clicked node\n//Parameter arg3:\n{children: subnode ID of the clicked node: ID of the clicked node, label: Click title} of the node'
316
316
  },
317
317
  'demoId': 'node-expand'
318
318
  },
@@ -1,6 +1,6 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('基本用法', async ({ page }) => {
3
+ test('测试基本用法', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('transfer#basic-usage')
6
6
  const preview = page.locator('.pc-demo-container')
@@ -1,6 +1,6 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('基本用法', async ({ page }) => {
3
+ test('测试穿梭拦截的功能', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('transfer#basic-usage')
6
6
  const preview = page.locator('.pc-demo-container')
@@ -1,6 +1,6 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('自定义按钮测试', async ({ page }) => {
3
+ test('测试自定义按钮的文字', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('transfer#custom-btns')
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('自定义过滤方法', async ({ page }) => {
3
+ test('测试自定义过滤方法', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('transfer#custom-filter')
6
6
 
@@ -1,7 +1,8 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('自定义列表底部', async ({ page }) => {
3
+ test('测试自定义列表底部', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('transfer#custom-footer')
6
+
6
7
  await expect(page.getByRole('button', { name: '操作' })).toHaveCount(2)
7
8
  })
@@ -1,6 +1,6 @@
1
1
  import { test, expect } from '@playwright/test'
2
2
 
3
- test('判断是否可以选中自定义数据项', async ({ page }) => {
3
+ test('测试是否可以选中自定义数据项', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
5
  await page.goto('transfer#custom-render')
6
6