@opentiny/vue-docs 2.2.6 → 2.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (612) hide show
  1. package/demos/mobile/app/alert/basic-usage.vue +26 -0
  2. package/demos/mobile/app/alert/center.vue +13 -0
  3. package/demos/mobile/app/alert/custom-close.vue +25 -7
  4. package/demos/mobile/app/alert/target.vue +30 -0
  5. package/demos/mobile/app/alert/webdoc/alert.js +50 -0
  6. package/demos/mobile/app/checkbox/basic-usage.vue +33 -0
  7. package/demos/mobile/app/checkbox/{default.vue → checkbox-group.vue} +5 -10
  8. package/demos/mobile/app/checkbox/{label.vue → disabled.vue} +4 -3
  9. package/demos/mobile/app/checkbox/event-change.vue +2 -2
  10. package/demos/mobile/app/checkbox/icon-position.vue +49 -0
  11. package/demos/mobile/app/checkbox/indeterminate.vue +2 -2
  12. package/demos/mobile/app/checkbox/true-false-label.vue +2 -2
  13. package/demos/mobile/app/checkbox/webdoc/checkbox.js +88 -46
  14. package/demos/mobile/app/input/basic-usage.vue +32 -0
  15. package/demos/mobile/app/input/clearable.vue +7 -7
  16. package/demos/mobile/app/input/counter.vue +15 -8
  17. package/demos/mobile/app/input/disabled.vue +31 -0
  18. package/demos/mobile/app/input/events.vue +32 -13
  19. package/demos/mobile/app/input/max-min-length.vue +5 -5
  20. package/demos/mobile/app/input/methods.vue +53 -0
  21. package/demos/mobile/app/input/native-attributes.vue +62 -0
  22. package/demos/mobile/app/input/prefix-suffix-icon.vue +35 -0
  23. package/demos/mobile/app/input/show-password.vue +5 -5
  24. package/demos/mobile/app/input/slots.vue +65 -0
  25. package/demos/mobile/app/input/textarea-rows-cols.vue +31 -0
  26. package/demos/mobile/app/input/textarea-scalable.vue +41 -0
  27. package/demos/mobile/app/input/{type-be-form-select.vue → type-select.vue} +10 -10
  28. package/demos/mobile/app/input/type.vue +60 -0
  29. package/demos/mobile/app/input/validate-event.vue +5 -30
  30. package/demos/mobile/app/input/webdoc/input.js +281 -312
  31. package/demos/mobile/app/label/base.vue +24 -0
  32. package/demos/mobile/app/label/bold.vue +23 -0
  33. package/demos/mobile/app/label/color.vue +34 -0
  34. package/demos/mobile/app/label/decimal.vue +28 -0
  35. package/demos/mobile/app/label/ellipsis.vue +31 -0
  36. package/demos/mobile/app/label/limit.vue +24 -0
  37. package/demos/mobile/app/label/position.vue +30 -0
  38. package/demos/mobile/app/label/required.vue +24 -0
  39. package/demos/mobile/app/label/size.vue +31 -0
  40. package/demos/mobile/app/label/type.vue +30 -0
  41. package/demos/mobile/app/label/webdoc/label.cn.md +11 -0
  42. package/demos/mobile/app/label/webdoc/label.en.md +11 -0
  43. package/demos/mobile/app/label/webdoc/label.js +247 -0
  44. package/demos/mobile/app/label/wholeline.vue +24 -0
  45. package/demos/mobile/app/mask/basic-usage.vue +38 -0
  46. package/demos/mobile/app/mask/click-no-hide.vue +32 -0
  47. package/demos/mobile/app/mask/slot-default.vue +37 -0
  48. package/demos/mobile/app/mask/webdoc/mask.cn.md +11 -0
  49. package/demos/mobile/app/mask/webdoc/mask.en.md +11 -0
  50. package/demos/mobile/app/mask/webdoc/mask.js +114 -0
  51. package/demos/mobile/app/mask/z-index.vue +30 -0
  52. package/demos/mobile/app/tag/basic-usage.vue +27 -0
  53. package/demos/mobile/app/tag/different-color.vue +30 -0
  54. package/demos/mobile/app/tag/max-width.vue +26 -0
  55. package/demos/mobile/app/tag/mini.vue +27 -0
  56. package/demos/mobile/app/tag/webdoc/tag.cn.md +7 -0
  57. package/demos/mobile/app/tag/webdoc/tag.en.md +7 -0
  58. package/demos/mobile/app/tag/webdoc/tag.js +96 -0
  59. package/demos/mobile/menus.js +5 -2
  60. package/demos/mobile-first/app/alert/webdoc/alert.js +77 -36
  61. package/demos/mobile-first/app/cascader-view/webdoc/cascader-view.js +249 -10
  62. package/demos/mobile-first/app/exception/webdoc/exception.js +94 -22
  63. package/demos/mobile-first/app/flowchart/webdoc/flowchart.js +24 -25
  64. package/demos/mobile-first/app/image/webdoc/image.js +126 -57
  65. package/demos/mobile-first/app/pull-refresh/webdoc/pull-refresh.js +223 -9
  66. package/demos/mobile-first/app/tooltip/webdoc/tooltip.js +47 -53
  67. package/demos/pc/app/action-menu/icon.spec.ts +38 -0
  68. package/demos/pc/app/action-menu/webdoc/action-menu.cn.md +1 -1
  69. package/demos/pc/app/action-menu/webdoc/action-menu.en.md +1 -1
  70. package/demos/pc/app/action-menu/webdoc/action-menu.js +16 -66
  71. package/demos/pc/app/alert/custom-close-composition-api.vue +2 -2
  72. package/demos/pc/app/alert/custom-close.vue +3 -4
  73. package/demos/pc/app/amount/webdoc/amount.js +1 -1
  74. package/demos/pc/app/anchor/basic-usage-composition-api.vue +11 -2
  75. package/demos/pc/app/anchor/basic-usage.vue +11 -2
  76. package/demos/pc/app/anchor/is-affix-composition-api.vue +8 -2
  77. package/demos/pc/app/anchor/is-affix.vue +8 -2
  78. package/demos/pc/app/anchor/webdoc/anchor.js +3 -3
  79. package/demos/pc/app/area/webdoc/area.js +1 -1
  80. package/demos/pc/app/bulletin-board/active-name.spec.ts +1 -2
  81. package/demos/pc/app/bulletin-board/base.spec.ts +2 -3
  82. package/demos/pc/app/bulletin-board/icon.spec.ts +1 -1
  83. package/demos/pc/app/bulletin-board/more-link.spec.ts +8 -2
  84. package/demos/pc/app/bulletin-board/route.spec.ts +3 -3
  85. package/demos/pc/app/bulletin-board/tab-title.spec.ts +1 -1
  86. package/demos/pc/app/bulletin-board/title.spec.ts +1 -1
  87. package/demos/pc/app/bulletin-board/url.spec.ts +3 -3
  88. package/demos/pc/app/bulletin-board/webdoc/bulletin-board.js +12 -11
  89. package/demos/pc/app/calendar/webdoc/calendar.js +1 -1
  90. package/demos/pc/app/calendar-view/webdoc/calendar-view.js +3 -2
  91. package/demos/pc/app/carousel/autoplay.spec.ts +1 -1
  92. package/demos/pc/app/carousel/basic-usage.spec.ts +12 -21
  93. package/demos/pc/app/carousel/card-mode.spec.ts +16 -37
  94. package/demos/pc/app/carousel/carousel-arrow-always.spec.ts +1 -1
  95. package/demos/pc/app/carousel/carousel-arrow-hover.spec.ts +1 -1
  96. package/demos/pc/app/carousel/carousel-arrow-never.spec.ts +1 -1
  97. package/demos/pc/app/carousel/carousel-events.spec.ts +5 -3
  98. package/demos/pc/app/carousel/close-loop.spec.ts +1 -1
  99. package/demos/pc/app/carousel/indicator-trigger.spec.ts +1 -1
  100. package/demos/pc/app/carousel/manual-play.spec.ts +1 -1
  101. package/demos/pc/app/carousel/play-interval.spec.ts +7 -11
  102. package/demos/pc/app/carousel/show-title.spec.ts +1 -1
  103. package/demos/pc/app/carousel/up-down-carousel.spec.ts +1 -1
  104. package/demos/pc/app/carousel/webdoc/carousel.js +1 -1
  105. package/demos/pc/app/cascader/webdoc/cascader.js +1 -1
  106. package/demos/pc/app/chart/webdoc/chart-attributes-demo.js +1 -1
  107. package/demos/pc/app/chart/webdoc/chart-autonavi-map.js +1 -1
  108. package/demos/pc/app/chart/webdoc/chart-baidu-map.js +1 -1
  109. package/demos/pc/app/chart/webdoc/chart-bar.js +1 -1
  110. package/demos/pc/app/chart/webdoc/chart-boxplot.js +1 -1
  111. package/demos/pc/app/chart/webdoc/chart-candle.js +1 -1
  112. package/demos/pc/app/chart/webdoc/chart-events.js +1 -1
  113. package/demos/pc/app/chart/webdoc/chart-funnel.js +1 -1
  114. package/demos/pc/app/chart/webdoc/chart-gauge.js +1 -1
  115. package/demos/pc/app/chart/webdoc/chart-graph.js +1 -1
  116. package/demos/pc/app/chart/webdoc/chart-heatmap.js +1 -1
  117. package/demos/pc/app/chart/webdoc/chart-histogram.js +1 -1
  118. package/demos/pc/app/chart/webdoc/chart-line.js +1 -1
  119. package/demos/pc/app/chart/webdoc/chart-liquidfill.js +1 -1
  120. package/demos/pc/app/chart/webdoc/chart-map.js +1 -1
  121. package/demos/pc/app/chart/webdoc/chart-pie.js +1 -1
  122. package/demos/pc/app/chart/webdoc/chart-question.js +1 -1
  123. package/demos/pc/app/chart/webdoc/chart-radar.js +1 -1
  124. package/demos/pc/app/chart/webdoc/chart-ring.js +1 -1
  125. package/demos/pc/app/chart/webdoc/chart-sankey.js +1 -1
  126. package/demos/pc/app/chart/webdoc/chart-scatter.js +1 -1
  127. package/demos/pc/app/chart/webdoc/chart-sunburst.js +1 -1
  128. package/demos/pc/app/chart/webdoc/chart-tree.js +1 -1
  129. package/demos/pc/app/chart/webdoc/chart-waterfall.js +1 -1
  130. package/demos/pc/app/chart/webdoc/chart-wordcloud.js +1 -1
  131. package/demos/pc/app/chart/webdoc/chart.js +1 -1
  132. package/demos/pc/app/color/webdoc/color.js +1 -1
  133. package/demos/pc/app/color-picker/alpha.spec.ts +14 -0
  134. package/demos/pc/app/color-picker/base.spec.ts +12 -0
  135. package/demos/pc/app/color-picker/default-visible.spec.ts +8 -0
  136. package/demos/pc/app/color-picker/dynamic-color-change.spec.ts +9 -0
  137. package/demos/pc/app/color-picker/event.spec.ts +10 -0
  138. package/demos/pc/app/color-picker/history.spec.ts +3 -3
  139. package/demos/pc/app/color-picker/predefine.spec.ts +2 -2
  140. package/demos/pc/app/color-picker/webdoc/color-picker.js +0 -10
  141. package/demos/pc/app/color-select-panel/alpha.spec.ts +9 -0
  142. package/demos/pc/app/color-select-panel/base.spec.ts +9 -0
  143. package/demos/pc/app/color-select-panel/event.spec.ts +12 -0
  144. package/demos/pc/app/color-select-panel/history.spec.ts +15 -0
  145. package/demos/pc/app/color-select-panel/predefine.spec.ts +25 -0
  146. package/demos/pc/app/color-select-panel/webdoc/color-select-panel.js +0 -10
  147. package/demos/pc/app/company/webdoc/company.js +1 -1
  148. package/demos/pc/app/config-provider/webdoc/config-provider.cn.md +2 -2
  149. package/demos/pc/app/config-provider/webdoc/config-provider.js +2 -9
  150. package/demos/pc/app/container/webdoc/container.js +1 -1
  151. package/demos/pc/app/count-api.js +34 -0
  152. package/demos/pc/app/country/webdoc/country.js +1 -1
  153. package/demos/pc/app/credit-card-form/webdoc/credit-card-form.js +1 -1
  154. package/demos/pc/app/crop/aspect-ratio-composition-api.vue +8 -0
  155. package/demos/pc/app/crop/aspect-ratio.spec.ts +14 -0
  156. package/demos/pc/app/crop/aspect-ratio.vue +9 -0
  157. package/demos/pc/app/crop/auto-crop-area.spec.ts +15 -0
  158. package/demos/pc/app/crop/basic-usage.spec.ts +14 -0
  159. package/demos/pc/app/crop/crop-meth.spec.ts +19 -0
  160. package/demos/pc/app/crop/drag-mode-composition-api.vue +1 -1
  161. package/demos/pc/app/crop/drag-mode.spec.ts +16 -0
  162. package/demos/pc/app/crop/drag-mode.vue +1 -1
  163. package/demos/pc/app/crop/event-about-crop-composition-api.vue +9 -0
  164. package/demos/pc/app/crop/event-about-crop.spec.ts +15 -0
  165. package/demos/pc/app/crop/event-about-crop.vue +8 -0
  166. package/demos/pc/app/crop/event-ready.spec.ts +14 -0
  167. package/demos/pc/app/crop/get-container-data.spec.ts +18 -0
  168. package/demos/pc/app/crop/get-crop-box-data.spec.ts +13 -0
  169. package/demos/pc/app/crop/get-cropped-canvas-composition-api.vue +7 -1
  170. package/demos/pc/app/crop/get-cropped-canvas.spec.ts +14 -0
  171. package/demos/pc/app/crop/get-cropped-canvas.vue +7 -1
  172. package/demos/pc/app/crop/get-data.spec.ts +17 -0
  173. package/demos/pc/app/crop/get-image-data-composition-api.vue +7 -0
  174. package/demos/pc/app/crop/get-image-data.spec.ts +14 -0
  175. package/demos/pc/app/crop/get-image-data.vue +7 -0
  176. package/demos/pc/app/crop/min-crop-box-width-height.spec.ts +11 -0
  177. package/demos/pc/app/crop/no-background.spec.ts +14 -0
  178. package/demos/pc/app/crop/no-guides.spec.ts +8 -0
  179. package/demos/pc/app/crop/no-modal.spec.ts +10 -0
  180. package/demos/pc/app/crop/replace-image.spec.ts +17 -0
  181. package/demos/pc/app/crop/view-mode-composition-api.vue +8 -2
  182. package/demos/pc/app/crop/view-mode.spec.ts +31 -0
  183. package/demos/pc/app/crop/view-mode.vue +10 -2
  184. package/demos/pc/app/crop/wheel-zoom-ratio.spec.ts +15 -0
  185. package/demos/pc/app/crop/zoom-on-wheel.spec.ts +10 -0
  186. package/demos/pc/app/currency/webdoc/currency.js +1 -1
  187. package/demos/pc/app/date-picker/webdoc/date-picker.js +85 -54
  188. package/demos/pc/app/dept/webdoc/dept.js +1 -1
  189. package/demos/pc/app/detail-page/basic-usage-composition-api.vue +1 -1
  190. package/demos/pc/app/detail-page/basic-usage.vue +1 -1
  191. package/demos/pc/app/detail-page/custom-show-text-composition-api.vue +11 -12
  192. package/demos/pc/app/detail-page/custom-show-text.spec.ts +5 -7
  193. package/demos/pc/app/detail-page/custom-show-text.vue +11 -12
  194. package/demos/pc/app/detail-page/webdoc/detail-page.js +46 -22
  195. package/demos/pc/app/dialog-box/basic-usage.spec.ts +11 -38
  196. package/demos/pc/app/dialog-box/center.spec.ts +4 -14
  197. package/demos/pc/app/dialog-box/close-on-click-modal.spec.ts +3 -7
  198. package/demos/pc/app/dialog-box/close-on-press-escape.spec.ts +2 -5
  199. package/demos/pc/app/dialog-box/custom-dialog-content.spec.ts +6 -8
  200. package/demos/pc/app/dialog-box/custom-dialog-footer.spec.ts +3 -14
  201. package/demos/pc/app/dialog-box/custom-dialog-title.spec.ts +3 -12
  202. package/demos/pc/app/dialog-box/destroy-on-close.spec.ts +9 -7
  203. package/demos/pc/app/dialog-box/dialog-top-height.spec.ts +6 -12
  204. package/demos/pc/app/dialog-box/dialog-width.spec.ts +5 -16
  205. package/demos/pc/app/dialog-box/draggable.spec.ts +4 -5
  206. package/demos/pc/app/dialog-box/form-in-dialog.spec.ts +5 -4
  207. package/demos/pc/app/dialog-box/lock-scroll.spec.ts +7 -10
  208. package/demos/pc/app/dialog-box/open-close-events.spec.ts +0 -1
  209. package/demos/pc/app/dialog-box/right-dialog-composition-api.vue +1 -1
  210. package/demos/pc/app/dialog-box/right-dialog.vue +1 -1
  211. package/demos/pc/app/dialog-select/{grid-multi-composition-api.vue → nest-grid-multi-composition-api.vue} +7 -4
  212. package/demos/pc/app/dialog-select/{grid-multi.vue → nest-grid-multi.vue} +4 -2
  213. package/demos/pc/app/dialog-select/{grid-radio-composition-api.vue → nest-grid-single-composition-api.vue} +6 -3
  214. package/demos/pc/app/dialog-select/{grid-radio.vue → nest-grid-single.vue} +4 -2
  215. package/demos/pc/app/dialog-select/{tree-multi-composition-api.vue → nest-tree-multi-composition-api.vue} +22 -9
  216. package/demos/pc/app/dialog-select/{tree-multi.vue → nest-tree-multi.vue} +19 -8
  217. package/demos/pc/app/dialog-select/{tree-radio-composition-api.vue → nest-tree-single-composition-api.vue} +19 -7
  218. package/demos/pc/app/dialog-select/{tree-radio.vue → nest-tree-single.vue} +18 -6
  219. package/demos/pc/app/dialog-select/webdoc/dialog-select.js +282 -183
  220. package/demos/pc/app/divider/basic-usage.spec.ts +7 -0
  221. package/demos/pc/app/divider/content-position.spec.ts +12 -0
  222. package/demos/pc/app/divider/custom-style.spec.ts +19 -0
  223. package/demos/pc/app/divider/direction.spec.ts +12 -0
  224. package/demos/pc/app/drawer/basic-usage.vue +7 -0
  225. package/demos/pc/app/drawer/webdoc/drawer.js +1 -1
  226. package/demos/pc/app/drop-roles/webdoc/drop-roles.js +1 -1
  227. package/demos/pc/app/drop-times/webdoc/drop-times.js +1 -1
  228. package/demos/pc/app/dropdown/hide-on-click-composition-api.vue +1 -1
  229. package/demos/pc/app/dropdown/hide-on-click.vue +1 -1
  230. package/demos/pc/app/dropdown/inherit-width-composition-api.vue +2 -2
  231. package/demos/pc/app/dropdown/inherit-width.spec.ts +43 -0
  232. package/demos/pc/app/dropdown/inherit-width.vue +2 -2
  233. package/demos/pc/app/dropdown/options.spec.ts +1 -1
  234. package/demos/pc/app/dropdown/show-icon.spec.ts +34 -0
  235. package/demos/pc/app/dropdown/slots-composition-api.vue +1 -1
  236. package/demos/pc/app/dropdown/tip.spec.ts +49 -0
  237. package/demos/pc/app/dropdown/trigger-composition-api.vue +10 -10
  238. package/demos/pc/app/dropdown/visible-arrow.spec.ts +21 -0
  239. package/demos/pc/app/dropdown/webdoc/dropdown.cn.md +1 -1
  240. package/demos/pc/app/dropdown/webdoc/dropdown.en.md +1 -1
  241. package/demos/pc/app/dropdown/webdoc/dropdown.js +53 -36
  242. package/demos/pc/app/espace/webdoc/espace.js +1 -1
  243. package/demos/pc/app/file-upload/drag-upload.spec.ts +1 -1
  244. package/demos/pc/app/file-upload/picture-card.spec.ts +2 -2
  245. package/demos/pc/app/filter-panel/basic-usage-composition-api.vue +13 -2
  246. package/demos/pc/app/filter-panel/basic-usage.spec.ts +15 -6
  247. package/demos/pc/app/filter-panel/basic-usage.vue +15 -4
  248. package/demos/pc/app/filter-panel/event.spec.ts +12 -2
  249. package/demos/pc/app/filter-panel/manual-hide.spec.ts +2 -2
  250. package/demos/pc/app/filter-panel/popper-class-composition-api.vue +1 -0
  251. package/demos/pc/app/filter-panel/popper-class.spec.ts +2 -2
  252. package/demos/pc/app/filter-panel/popper-class.vue +1 -0
  253. package/demos/pc/app/filter-panel/tip.spec.ts +2 -2
  254. package/demos/pc/app/filter-panel/webdoc/filter-panel.cn.md +1 -1
  255. package/demos/pc/app/filter-panel/webdoc/filter-panel.en.md +3 -3
  256. package/demos/pc/app/filter-panel/webdoc/filter-panel.js +50 -56
  257. package/demos/pc/app/floatbar/webdoc/floatbar.js +1 -1
  258. package/demos/pc/app/flowchart/webdoc/flowchart.js +1 -1
  259. package/demos/pc/app/font/webdoc/font.js +1 -1
  260. package/demos/pc/app/form/events-composition-api.vue +46 -0
  261. package/demos/pc/app/form/events.spec.ts +12 -0
  262. package/demos/pc/app/form/events.vue +52 -0
  263. package/demos/pc/app/form/form-validate-field-composition-api.vue +13 -14
  264. package/demos/pc/app/form/form-validate-field.spec.ts +9 -2
  265. package/demos/pc/app/form/form-validate-field.vue +9 -12
  266. package/demos/pc/app/form/form-validation-composition-api.vue +6 -1
  267. package/demos/pc/app/form/form-validation.vue +5 -1
  268. package/demos/pc/app/form/label-position-composition-api.vue +1 -1
  269. package/demos/pc/app/form/label-position.vue +1 -1
  270. package/demos/pc/app/form/webdoc/form.js +18 -8
  271. package/demos/pc/app/fullscreen/example-api.spec.ts +14 -29
  272. package/demos/pc/app/fullscreen/example-component.spec.ts +12 -29
  273. package/demos/pc/app/fullscreen/webdoc/fullscreen.js +4 -4
  274. package/demos/pc/app/grid/custom/column-width-composition-api.vue +1 -1
  275. package/demos/pc/app/grid/custom/column-width.vue +1 -1
  276. package/demos/pc/app/grid/custom/prsonalized-drag.vue +11 -1
  277. package/demos/pc/app/grid/custom-style/footer-style-composition-api.vue +19 -16
  278. package/demos/pc/app/grid/custom-style/footer-style.spec.js +1 -0
  279. package/demos/pc/app/grid/custom-style/footer-style.vue +18 -16
  280. package/demos/pc/app/grid/custom-style/header-style-composition-api.vue +18 -13
  281. package/demos/pc/app/grid/custom-style/header-style.spec.js +1 -0
  282. package/demos/pc/app/grid/custom-style/header-style.vue +18 -14
  283. package/demos/pc/app/grid/edit/trigger-mode-hm-editing-composition-api.vue +12 -4
  284. package/demos/pc/app/grid/edit/trigger-mode-hm-editing.spec.js +6 -1
  285. package/demos/pc/app/grid/edit/trigger-mode-hm-editing.vue +12 -4
  286. package/demos/pc/app/grid/highlight/highlight-hover-row-composition-api.vue +1 -1
  287. package/demos/pc/app/grid/highlight/highlight-hover-row.vue +1 -1
  288. package/demos/pc/app/grid/validation/before-submit-validation-composition-api.vue +17 -0
  289. package/demos/pc/app/grid/validation/before-submit-validation.vue +17 -0
  290. package/demos/pc/app/grid/webdoc/grid-align.js +1 -1
  291. package/demos/pc/app/grid/webdoc/grid-appearance-settings.js +1 -1
  292. package/demos/pc/app/grid/webdoc/grid-context-menu.js +1 -1
  293. package/demos/pc/app/grid/webdoc/grid-custom-style.js +3 -3
  294. package/demos/pc/app/grid/webdoc/grid-custom.js +2 -2
  295. package/demos/pc/app/grid/webdoc/grid-data-source.js +1 -1
  296. package/demos/pc/app/grid/webdoc/grid-drag.js +1 -1
  297. package/demos/pc/app/grid/webdoc/grid-dynamically-columns.js +1 -1
  298. package/demos/pc/app/grid/webdoc/grid-edit.js +1 -1
  299. package/demos/pc/app/grid/webdoc/grid-editor.js +1 -1
  300. package/demos/pc/app/grid/webdoc/grid-empty.js +1 -1
  301. package/demos/pc/app/grid/webdoc/grid-event.js +1 -1
  302. package/demos/pc/app/grid/webdoc/grid-expand.js +1 -1
  303. package/demos/pc/app/grid/webdoc/grid-faq.js +1 -1
  304. package/demos/pc/app/grid/webdoc/grid-filter.js +1 -1
  305. package/demos/pc/app/grid/webdoc/grid-fixed.js +1 -1
  306. package/demos/pc/app/grid/webdoc/grid-footer.js +1 -1
  307. package/demos/pc/app/grid/webdoc/grid-header.js +1 -1
  308. package/demos/pc/app/grid/webdoc/grid-highlight.js +1 -1
  309. package/demos/pc/app/grid/webdoc/grid-import-export.js +1 -1
  310. package/demos/pc/app/grid/webdoc/grid-large-data.js +3 -2
  311. package/demos/pc/app/grid/webdoc/grid-loading.js +1 -1
  312. package/demos/pc/app/grid/webdoc/grid-mouse-keyboard.js +1 -1
  313. package/demos/pc/app/grid/webdoc/grid-operation-column.js +1 -1
  314. package/demos/pc/app/grid/webdoc/grid-pager.js +1 -1
  315. package/demos/pc/app/grid/webdoc/grid-renderer.js +1 -1
  316. package/demos/pc/app/grid/webdoc/grid-row-grouping.js +1 -1
  317. package/demos/pc/app/grid/webdoc/grid-serial-column.js +1 -1
  318. package/demos/pc/app/grid/webdoc/grid-size.js +1 -1
  319. package/demos/pc/app/grid/webdoc/grid-slot.js +1 -1
  320. package/demos/pc/app/grid/webdoc/grid-sort.js +1 -1
  321. package/demos/pc/app/grid/webdoc/grid-span.js +1 -1
  322. package/demos/pc/app/grid/webdoc/grid-tip.js +1 -1
  323. package/demos/pc/app/grid/webdoc/grid-toolbar.js +1 -1
  324. package/demos/pc/app/grid/webdoc/grid-tree-table.js +1 -1
  325. package/demos/pc/app/grid/webdoc/grid-validation.js +1 -1
  326. package/demos/pc/app/grid/webdoc/grid.js +27 -37
  327. package/demos/pc/app/hrapprover/webdoc/hrapprover.js +1 -1
  328. package/demos/pc/app/image/webdoc/image.js +2 -2
  329. package/demos/pc/app/infinite-scroll/basic-usage.spec.ts +11 -0
  330. package/demos/pc/app/infinite-scroll/disabled.spec.ts +10 -0
  331. package/demos/pc/app/infinite-scroll/webdoc/infinite-scroll.cn.md +1 -1
  332. package/demos/pc/app/infinite-scroll/webdoc/infinite-scroll.js +18 -18
  333. package/demos/pc/app/layout/webdoc/layout.js +1 -1
  334. package/demos/pc/app/link/webdoc/link.js +1 -1
  335. package/demos/pc/app/link-menu/custom-foot.spec.ts +1 -1
  336. package/demos/pc/app/link-menu/custom-icon.spec.ts +2 -17
  337. package/demos/pc/app/link-menu/data-resource.spec.ts +9 -18
  338. package/demos/pc/app/link-menu/get-menu-data-sync.spec.ts +1 -1
  339. package/demos/pc/app/link-menu/menu-items.spec.ts +1 -1
  340. package/demos/pc/app/link-menu/webdoc/link-menu.js +8 -28
  341. package/demos/pc/app/loading/webdoc/loading.js +6 -9
  342. package/demos/pc/app/locales/webdoc/locales.js +1 -1
  343. package/demos/pc/app/logon-user/webdoc/logon-user.js +1 -1
  344. package/demos/pc/app/logout/webdoc/logout.js +1 -1
  345. package/demos/pc/app/modal/footer-btn-props-composition-api.vue +1 -1
  346. package/demos/pc/app/modal/min-height.spec.ts +2 -3
  347. package/demos/pc/app/modal/min-width.spec.ts +2 -2
  348. package/demos/pc/app/modal/resize.spec.ts +1 -1
  349. package/demos/pc/app/modal/webdoc/modal.js +3 -3
  350. package/demos/pc/app/numeric/about-step.spec.ts +2 -2
  351. package/demos/pc/app/numeric/allow-empty.spec.ts +5 -7
  352. package/demos/pc/app/numeric/basic-usage.spec.ts +2 -2
  353. package/demos/pc/app/numeric/blur-event.spec.ts +1 -1
  354. package/demos/pc/app/numeric/controls.spec.ts +5 -21
  355. package/demos/pc/app/numeric/dynamic-disabled.spec.ts +1 -1
  356. package/demos/pc/app/numeric/max-min.spec.ts +3 -3
  357. package/demos/pc/app/numeric/mouse-wheel.spec.ts +1 -1
  358. package/demos/pc/app/numeric/numeric-size.spec.ts +3 -3
  359. package/demos/pc/app/numeric/unit.spec.ts +3 -5
  360. package/demos/pc/app/pager/webdoc/pager.js +2 -2
  361. package/demos/pc/app/pop-upload/basic-usage-composition-api.vue +4 -1
  362. package/demos/pc/app/pop-upload/basic-usage.spec.ts +25 -14
  363. package/demos/pc/app/pop-upload/basic-usage.vue +5 -2
  364. package/demos/pc/app/pop-upload/before-upload.spec.ts +6 -4
  365. package/demos/pc/app/pop-upload/custom-request-headers-composition-api.vue +1 -1
  366. package/demos/pc/app/pop-upload/custom-request-headers.spec.ts +2 -2
  367. package/demos/pc/app/pop-upload/custom-request-headers.vue +1 -1
  368. package/demos/pc/app/pop-upload/file-limit-composition-api.vue +1 -1
  369. package/demos/pc/app/pop-upload/file-limit.spec.ts +9 -11
  370. package/demos/pc/app/pop-upload/file-limit.vue +1 -1
  371. package/demos/pc/app/pop-upload/file-type-composition-api.vue +6 -1
  372. package/demos/pc/app/pop-upload/file-type.spec.ts +6 -3
  373. package/demos/pc/app/pop-upload/file-type.vue +6 -1
  374. package/demos/pc/app/pop-upload/fill-button-text.spec.ts +16 -36
  375. package/demos/pc/app/pop-upload/http-request.spec.ts +3 -5
  376. package/demos/pc/app/pop-upload/prevent-delete-file.spec.ts +2 -2
  377. package/demos/pc/app/pop-upload/size.spec.ts +1 -1
  378. package/demos/pc/app/pop-upload/upload-events-composition-api.vue +39 -0
  379. package/demos/pc/app/pop-upload/upload-events.spec.ts +39 -0
  380. package/demos/pc/app/pop-upload/upload-events.vue +44 -0
  381. package/demos/pc/app/pop-upload/webdoc/pop-upload.cn.md +1 -1
  382. package/demos/pc/app/pop-upload/webdoc/pop-upload.en.md +3 -3
  383. package/demos/pc/app/pop-upload/webdoc/pop-upload.js +192 -153
  384. package/demos/pc/app/popover/basic-usage-composition-api.vue +1 -1
  385. package/demos/pc/app/popover/basic-usage.spec.js +4 -1
  386. package/demos/pc/app/popover/basic-usage.vue +1 -1
  387. package/demos/pc/app/popover/content.spec.js +7 -3
  388. package/demos/pc/app/popover/custom-popper.spec.js +25 -4
  389. package/demos/pc/app/popover/disabled-composition-api.vue +2 -1
  390. package/demos/pc/app/popover/events-composition-api.vue +2 -2
  391. package/demos/pc/app/popover/events.spec.js +4 -0
  392. package/demos/pc/app/popover/offset-composition-api.vue +6 -6
  393. package/demos/pc/app/popover/offset.spec.js +31 -3
  394. package/demos/pc/app/popover/offset.vue +6 -6
  395. package/demos/pc/app/popover/trigger.spec.js +3 -3
  396. package/demos/pc/app/popover/webdoc/popover.js +11 -3
  397. package/demos/pc/app/qr-code/basic-usage.spec.ts +9 -0
  398. package/demos/pc/app/qr-code/icon.spec.ts +11 -0
  399. package/demos/pc/app/qr-code/level.spec.ts +15 -0
  400. package/demos/pc/app/qr-code/style.spec.ts +9 -0
  401. package/demos/pc/app/qr-code/webdoc/qr-code.js +13 -11
  402. package/demos/pc/app/rich-text-editor/webdoc/rich-text-editor.js +1 -1
  403. package/demos/pc/app/roles/webdoc/roles.js +1 -1
  404. package/demos/pc/app/scroll-text/basic-usage-composition-api.vue +1 -1
  405. package/demos/pc/app/scroll-text/basic-usage.spec.ts +1 -1
  406. package/demos/pc/app/scroll-text/basic-usage.vue +1 -1
  407. package/demos/pc/app/scroll-text/custom-text-style-composition-api.vue +1 -1
  408. package/demos/pc/app/scroll-text/custom-text-style.vue +1 -1
  409. package/demos/pc/app/scroll-text/hover-stop-composition-api.vue +1 -1
  410. package/demos/pc/app/scroll-text/hover-stop.spec.ts +1 -1
  411. package/demos/pc/app/scroll-text/hover-stop.vue +1 -1
  412. package/demos/pc/app/scroll-text/scroll-direction-composition-api.vue +1 -1
  413. package/demos/pc/app/scroll-text/scroll-direction.spec.ts +4 -4
  414. package/demos/pc/app/scroll-text/scroll-direction.vue +1 -1
  415. package/demos/pc/app/scroll-text/scroll-time-composition-api.vue +1 -1
  416. package/demos/pc/app/scroll-text/scroll-time.spec.ts +1 -1
  417. package/demos/pc/app/scroll-text/scroll-time.vue +1 -1
  418. package/demos/pc/app/scroll-text/slots-composition-api.vue +1 -1
  419. package/demos/pc/app/scroll-text/slots.vue +1 -1
  420. package/demos/pc/app/scroll-text/webdoc/scroll-text.js +27 -33
  421. package/demos/pc/app/select/clear-no-match-value-composition-api.vue +6 -2
  422. package/demos/pc/app/select/clear-no-match-value.spec.ts +22 -0
  423. package/demos/pc/app/select/clear-no-match-value.vue +6 -2
  424. package/demos/pc/app/select/copy-multi-composition-api.vue +3 -3
  425. package/demos/pc/app/select/copy-multi.spec.ts +3 -1
  426. package/demos/pc/app/select/copy-single-composition-api.vue +3 -3
  427. package/demos/pc/app/select/copy-single.spec.ts +16 -17
  428. package/demos/pc/app/select/copy-single.vue +1 -1
  429. package/demos/pc/app/select/events-composition-api.vue +1 -1
  430. package/demos/pc/app/select/filter-method-composition-api.vue +9 -2
  431. package/demos/pc/app/select/filter-method.spec.ts +3 -3
  432. package/demos/pc/app/select/is-drop-inherit-width.spec.ts +3 -4
  433. package/demos/pc/app/select/manual-focus-blur-composition-api.vue +1 -1
  434. package/demos/pc/app/select/manual-focus-blur.spec.ts +5 -4
  435. package/demos/pc/app/select/nest-grid-composition-api.vue +3 -3
  436. package/demos/pc/app/select/nest-tree-composition-api.vue +32 -2
  437. package/demos/pc/app/select/optimization.spec.ts +7 -8
  438. package/demos/pc/app/select/tag-type.spec.ts +12 -0
  439. package/demos/pc/app/select/webdoc/select.cn.md +1 -1
  440. package/demos/pc/app/select/webdoc/select.en.md +1 -1
  441. package/demos/pc/app/select/webdoc/select.js +19 -19
  442. package/demos/pc/app/slide-bar/basic-usage.spec.ts +3 -3
  443. package/demos/pc/app/slide-bar/custom-content.spec.ts +1 -2
  444. package/demos/pc/app/slide-bar/custom-tag.spec.ts +1 -2
  445. package/demos/pc/app/slide-bar/slide-bar-events.spec.ts +1 -2
  446. package/demos/pc/app/slide-bar/wheel-blocks.spec.ts +7 -8
  447. package/demos/pc/app/split/webdoc/split.js +1 -1
  448. package/demos/pc/app/steps/size.spec.ts +2 -1
  449. package/demos/pc/app/steps/slot-item.spec.ts +8 -2
  450. package/demos/pc/app/steps/slot-item.vue +4 -4
  451. package/demos/pc/app/steps/text-position.spec.ts +2 -1
  452. package/demos/pc/app/tabs/basic-usage-composition-api.vue +1 -1
  453. package/demos/pc/app/tabs/basic-usage.spec.ts +6 -0
  454. package/demos/pc/app/tabs/basic-usage.vue +1 -1
  455. package/demos/pc/app/tabs/tabs-events-close-composition-api.vue +9 -2
  456. package/demos/pc/app/tabs/tabs-events-close.vue +9 -2
  457. package/demos/pc/app/tabs/webdoc/tabs.js +79 -4
  458. package/demos/pc/app/text-popup/basic-usage.spec.ts +1 -1
  459. package/demos/pc/app/text-popup/clear-value.spec.ts +1 -1
  460. package/demos/pc/app/text-popup/placeholder.spec.ts +1 -1
  461. package/demos/pc/app/text-popup/readonly.spec.ts +1 -1
  462. package/demos/pc/app/text-popup/separtor.spec.ts +1 -1
  463. package/demos/pc/app/text-popup/value.spec.ts +1 -1
  464. package/demos/pc/app/text-popup/webdoc/text-popup.js +11 -11
  465. package/demos/pc/app/text-popup/width.spec.ts +1 -1
  466. package/demos/pc/app/time-line/basic-usage.spec.ts +1 -1
  467. package/demos/pc/app/time-line/custom-field.spec.ts +3 -3
  468. package/demos/pc/app/time-line/custom-horizontal-timeline.spec.ts +3 -3
  469. package/demos/pc/app/time-line/custom-vertical-timeline.spec.ts +6 -6
  470. package/demos/pc/app/time-line/set-node-width.spec.ts +6 -8
  471. package/demos/pc/app/time-line/set-start-value.spec.ts +4 -4
  472. package/demos/pc/app/time-line/shape.spec.ts +3 -3
  473. package/demos/pc/app/time-line/status.spec.ts +1 -1
  474. package/demos/pc/app/time-line/timeline-item.spec.ts +1 -1
  475. package/demos/pc/app/time-line/vertical-timeline.spec.ts +9 -5
  476. package/demos/pc/app/time-line/webdoc/time-line.js +2 -2
  477. package/demos/pc/app/time-picker/basic-usage.spec.ts +12 -33
  478. package/demos/pc/app/time-picker/clearable.spec.ts +23 -8
  479. package/demos/pc/app/time-picker/default-value.spec.ts +24 -9
  480. package/demos/pc/app/time-picker/disabled.spec.ts +10 -4
  481. package/demos/pc/app/time-picker/editable.spec.ts +3 -4
  482. package/demos/pc/app/time-picker/event-composition-api.vue +1 -1
  483. package/demos/pc/app/time-picker/event.spec.ts +6 -6
  484. package/demos/pc/app/time-picker/event.vue +1 -1
  485. package/demos/pc/app/time-picker/format.spec.ts +32 -16
  486. package/demos/pc/app/time-picker/is-range.spec.ts +8 -32
  487. package/demos/pc/app/time-picker/name.spec.ts +1 -3
  488. package/demos/pc/app/time-picker/placeholder.spec.ts +4 -0
  489. package/demos/pc/app/time-picker/popper-class.spec.ts +4 -4
  490. package/demos/pc/app/time-picker/size.spec.ts +22 -3
  491. package/demos/pc/app/time-picker/step.spec.ts +5 -0
  492. package/demos/pc/app/time-picker/suffix-icon.spec.ts +2 -8
  493. package/demos/pc/app/time-picker/webdoc/time-picker.js +52 -31
  494. package/demos/pc/app/time-select/webdoc/time-select.js +1 -1
  495. package/demos/pc/app/toggle-menu/automatic-filtering.spec.ts +4 -13
  496. package/demos/pc/app/toggle-menu/basic-usage.spec.ts +9 -40
  497. package/demos/pc/app/toggle-menu/custom-icon.spec.ts +2 -3
  498. package/demos/pc/app/toggle-menu/default-expand-all.spec.ts +5 -7
  499. package/demos/pc/app/toggle-menu/drag-events.spec.ts +9 -21
  500. package/demos/pc/app/toggle-menu/draggable.spec.ts +17 -13
  501. package/demos/pc/app/toggle-menu/node-click.spec.ts +2 -3
  502. package/demos/pc/app/toggle-menu/node-collapse.spec.ts +2 -3
  503. package/demos/pc/app/toggle-menu/node-drop.spec.ts +3 -4
  504. package/demos/pc/app/toggle-menu/node-expand.spec.ts +2 -3
  505. package/demos/pc/app/toggle-menu/show-filter.spec.ts +1 -2
  506. package/demos/pc/app/toggle-menu/slot-node.spec.ts +2 -3
  507. package/demos/pc/app/toggle-menu/toggle-props.spec.ts +2 -9
  508. package/demos/pc/app/tooltip/basic-usage.spec.js +6 -4
  509. package/demos/pc/app/tooltip/content.spec.js +16 -2
  510. package/demos/pc/app/tooltip/control.spec.js +19 -1
  511. package/demos/pc/app/tooltip/custom-popper.spec.js +30 -1
  512. package/demos/pc/app/tooltip/delay.spec.js +23 -1
  513. package/demos/pc/app/tooltip/offset.spec.js +23 -0
  514. package/demos/pc/app/tooltip/popper-options.spec.js +4 -1
  515. package/demos/pc/app/tooltip/theme.spec.js +1 -2
  516. package/demos/pc/app/tooltip/transition.spec.js +1 -0
  517. package/demos/pc/app/transfer/basic-usage.spec.ts +43 -48
  518. package/demos/pc/app/transfer/before-transfer.spec.ts +28 -0
  519. package/demos/pc/app/transfer/custom-btns.spec.ts +1 -1
  520. package/demos/pc/app/transfer/custom-filter-composition-api.vue +17 -8
  521. package/demos/pc/app/transfer/custom-filter.vue +18 -9
  522. package/demos/pc/app/transfer/custom-render-composition-api.vue +1 -1
  523. package/demos/pc/app/transfer/custom-render.spec.ts +2 -1
  524. package/demos/pc/app/transfer/custom-render.vue +1 -1
  525. package/demos/pc/app/transfer/custom-titles.spec.ts +7 -0
  526. package/demos/pc/app/transfer/drop-config.spec.ts +1 -1
  527. package/demos/pc/app/transfer/nested-table.spec.ts +1 -1
  528. package/demos/pc/app/transfer/webdoc/transfer.js +8 -15
  529. package/demos/pc/app/tree/filter-view-composition-api.vue +4 -2
  530. package/demos/pc/app/tree/filter-view.vue +2 -1
  531. package/demos/pc/app/tree/icons-composition-api.vue +4 -4
  532. package/demos/pc/app/tree/icons.vue +4 -4
  533. package/demos/pc/app/tree/lazy-composition-api.vue +5 -3
  534. package/demos/pc/app/tree/lazy.vue +5 -2
  535. package/demos/pc/app/tree/radio-composition-api.vue +7 -5
  536. package/demos/pc/app/tree/radio.vue +3 -3
  537. package/demos/pc/app/tree/webdoc/tree.js +13 -13
  538. package/demos/pc/app/user/webdoc/user.js +1 -1
  539. package/demos/pc/app/user-account/webdoc/user-account.js +1 -1
  540. package/demos/pc/app/user-contact/data-source.spec.ts +2 -5
  541. package/demos/pc/app/user-link/webdoc/user-link.js +1 -1
  542. package/demos/pc/app/watermark/basic-usage.spec.ts +9 -0
  543. package/demos/pc/app/watermark/image.spec.ts +9 -0
  544. package/demos/pc/app/watermark/webdoc/watermark.js +11 -11
  545. package/demos/pc/menus.js +9 -1
  546. package/demos/pc/webdoc/installation-en.md +6 -1
  547. package/demos/pc/webdoc/installation.md +4 -0
  548. package/package.json +6 -6
  549. package/playground.html +1 -1
  550. package/src/views/components/components.vue +2 -2
  551. package/demos/mobile/app/input/autofocus.vue +0 -37
  552. package/demos/mobile/app/input/autosize.vue +0 -41
  553. package/demos/mobile/app/input/blur-focus.vue +0 -40
  554. package/demos/mobile/app/input/cols-rows.vue +0 -28
  555. package/demos/mobile/app/input/form.vue +0 -45
  556. package/demos/mobile/app/input/input-event.vue +0 -39
  557. package/demos/mobile/app/input/method-select.vue +0 -36
  558. package/demos/mobile/app/input/prefix-suffix.vue +0 -39
  559. package/demos/mobile/app/input/props-step.vue +0 -28
  560. package/demos/mobile/app/input/props.vue +0 -28
  561. package/demos/mobile/app/input/slot-content.vue +0 -30
  562. package/demos/mobile/app/input/slots-append-prepend.vue +0 -34
  563. package/demos/mobile/app/input/suffix-icon.vue +0 -30
  564. package/demos/mobile/app/input/type-be-form-tips.vue +0 -55
  565. package/demos/mobile/app/input/type-be-form.vue +0 -47
  566. package/demos/pc/app/file-upload/accept-file-composition-api.vue +0 -14
  567. package/demos/pc/app/file-upload/accept-file.vue +0 -23
  568. package/demos/pc/app/file-upload/dynamic-disable-composition-api.vue +0 -20
  569. package/demos/pc/app/file-upload/dynamic-disable.vue +0 -29
  570. package/demos/pc/app/file-upload/jalor-request-composition-api.vue +0 -21
  571. package/demos/pc/app/file-upload/jalor-request.vue +0 -31
  572. package/demos/pc/app/file-upload/upload-file-filters-composition-api.vue +0 -34
  573. package/demos/pc/app/file-upload/upload-file-filters.vue +0 -43
  574. package/demos/pc/app/filter-panel/clearable-composition-api.vue +0 -33
  575. package/demos/pc/app/filter-panel/clearable.spec.ts +0 -18
  576. package/demos/pc/app/filter-panel/clearable.vue +0 -42
  577. package/demos/pc/app/filter-panel/disabled-composition-api.vue +0 -28
  578. package/demos/pc/app/filter-panel/disabled.spec.ts +0 -12
  579. package/demos/pc/app/filter-panel/disabled.vue +0 -37
  580. package/demos/pc/app/grid/validation/valid-config-composition-api.vue +0 -141
  581. package/demos/pc/app/grid/validation/valid-config.vue +0 -150
  582. package/demos/pc/app/pop-upload/data-composition-api.vue +0 -13
  583. package/demos/pc/app/pop-upload/data.spec.ts +0 -24
  584. package/demos/pc/app/pop-upload/data.vue +0 -21
  585. package/demos/pc/app/pop-upload/max-upload-file-size-composition-api.vue +0 -10
  586. package/demos/pc/app/pop-upload/max-upload-file-size.spec.ts +0 -24
  587. package/demos/pc/app/pop-upload/max-upload-file-size.vue +0 -18
  588. package/demos/pc/app/pop-upload/upload-name-composition-api.vue +0 -10
  589. package/demos/pc/app/pop-upload/upload-name.spec.ts +0 -46
  590. package/demos/pc/app/pop-upload/upload-name.vue +0 -18
  591. package/demos/pc/app/popover/dynamic-reference-composition-api.vue +0 -36
  592. package/demos/pc/app/popover/dynamic-reference.spec.js +0 -16
  593. package/demos/pc/app/popover/dynamic-reference.vue +0 -45
  594. package/demos/pc/app/scroll-text/custom-scroll-text-composition-api.vue +0 -7
  595. package/demos/pc/app/scroll-text/custom-scroll-text.spec.ts +0 -7
  596. package/demos/pc/app/scroll-text/custom-scroll-text.vue +0 -13
  597. package/demos/pc/app/tabs/custom-tab-content-composition-api.vue +0 -17
  598. package/demos/pc/app/tabs/custom-tab-content.vue +0 -26
  599. package/demos/pc/app/tabs/prevent-tab-switching-composition-api.vue +0 -25
  600. package/demos/pc/app/tabs/prevent-tab-switching.vue +0 -33
  601. package/demos/pc/app/tabs/show-echarts-composition-api.vue +0 -46
  602. package/demos/pc/app/tabs/show-echarts.vue +0 -52
  603. package/demos/pc/app/tabs/tabs-size-composition-api.vue +0 -17
  604. package/demos/pc/app/tabs/tabs-size.vue +0 -26
  605. package/demos/pc/app/transfer/manual-clear-query-composition-api.vue +0 -34
  606. package/demos/pc/app/transfer/manual-clear-query.spec.ts +0 -12
  607. package/demos/pc/app/transfer/manual-clear-query.vue +0 -43
  608. package/demos/pc/app/wizard/status-icon-composition-api.vue +0 -33
  609. package/demos/pc/app/wizard/status-icon.vue +0 -41
  610. /package/demos/pc/app/pager/{page-append-to-body-composition-api.vue → popper-append-to-body-composition-api.vue} +0 -0
  611. /package/demos/pc/app/pager/{page-append-to-body.spec.ts → popper-append-to-body.spec.ts} +0 -0
  612. /package/demos/pc/app/pager/{page-append-to-body.vue → popper-append-to-body.vue} +0 -0
@@ -15,6 +15,6 @@ test('是否可以拖拽上传', async ({ page }) => {
15
15
  await expect(drag).toHaveCSS('width', '360px')
16
16
  await expect(drag).toHaveCSS('height', '180px')
17
17
  await fileChooser.setFiles(currentPath)
18
- await expect(lists.nth(0)).toHaveText(/测试.jpg/)
18
+ await lists.getByText('测试.jpg').isVisible()
19
19
  await expect(input).toHaveAttribute('accept', '.png,.jpeg,.jpg')
20
20
  })
@@ -27,12 +27,12 @@ test('照片墙', async ({ page }) => {
27
27
  await expect(height).toEqual(148)
28
28
  await expect(li).toHaveCount(1)
29
29
  await fileChooser.setFiles(currentPath)
30
- await expect(li).toHaveCount(2)
31
30
  await first.hover()
32
31
  await prevPic.click()
33
32
  await expect(prevImg).toHaveAttribute('src', '/static/images/fruit.jpg')
34
33
  await dialogClose.click()
35
34
  await first.hover()
36
35
  await delButton.click()
37
- await expect(items).toHaveCount(1)
36
+ await page.waitForTimeout(200)
37
+ await li.isHidden()
38
38
  })
@@ -1,6 +1,15 @@
1
1
  <template>
2
2
  <div>
3
- <tiny-filter-panel ref="filterPanelRef" label="物品数量" @handle-clear="handleClear" :value="value">
3
+ <div class="mb10">
4
+ <tiny-switch v-model="disabled"></tiny-switch><span class="ml10">{{ disabled ? '禁用' : '非禁用' }}</span>
5
+ </div>
6
+ <tiny-filter-panel
7
+ ref="filterPanelRef"
8
+ label="物品数量"
9
+ @handle-clear="handleClear"
10
+ :value="value"
11
+ :disabled="disabled"
12
+ >
4
13
  <tiny-radio-group v-model="radioVal" size="mini">
5
14
  <tiny-radio label="大于">大于</tiny-radio>
6
15
  <tiny-radio label="等于">等于</tiny-radio>
@@ -17,11 +26,13 @@ import {
17
26
  FilterPanel as TinyFilterPanel,
18
27
  Radio as TinyRadio,
19
28
  RadioGroup as TinyRadioGroup,
20
- Input as TinyInput
29
+ Input as TinyInput,
30
+ Switch as TinySwitch
21
31
  } from '@opentiny/vue'
22
32
 
23
33
  const inputVal = ref('')
24
34
  const radioVal = ref('')
35
+ const disabled = ref(false)
25
36
  const value = computed(() => {
26
37
  return radioVal.value + inputVal.value
27
38
  })
@@ -7,13 +7,22 @@ test('基本用法', async ({ page }) => {
7
7
  const panel = page.locator('.tiny-filter-panel')
8
8
  const button = panel.locator('.tiny-filter-box')
9
9
  const popPanel = page.getByRole('tooltip', { name: '大于 等于 小于' })
10
- const input = page.getByRole('tooltip', { name: '大于 等于 小于' }).getByRole('textbox')
10
+ const inputEl = page.locator('.tiny-filter-panel__popover').locator('.tiny-input__inner')
11
+ const disabledBtn = panel.locator('.tiny-filter-box.disabled')
12
+ const switchBtn = page.locator('.mb10 > .tiny-switch')
11
13
 
12
14
  await button.click()
13
- await expect(popPanel).toBeVisible()
15
+ await popPanel.isVisible()
14
16
  await page.getByRole('radio', { name: '等于' }).click()
15
- await expect(button).toHaveText('物品数量等于')
16
- await input.click()
17
- await input.fill('10')
18
- await expect(button).toHaveText('物品数量等于10')
17
+ await button.getByText('物品数量等于').isVisible()
18
+ await inputEl.click()
19
+ await inputEl.fill('10')
20
+ await button.getByText('物品数量等于10').isVisible()
21
+
22
+ // 禁用
23
+ await switchBtn.click()
24
+ await expect(disabledBtn).toHaveCount(1)
25
+ await expect(disabledBtn).toHaveCSS('cursor', 'not-allowed')
26
+ await button.click()
27
+ await popPanel.isHidden()
19
28
  })
@@ -1,6 +1,15 @@
1
1
  <template>
2
2
  <div>
3
- <tiny-filter-panel ref="filterPanel" label="物品数量" @handle-clear="handleClear" :value="value">
3
+ <div class="mb10">
4
+ <tiny-switch v-model="disabled"></tiny-switch><span class="ml10">{{ disabled ? '禁用' : '非禁用' }}</span>
5
+ </div>
6
+ <tiny-filter-panel
7
+ ref="filterPanel"
8
+ label="物品数量"
9
+ @handle-clear="handleClear"
10
+ :value="value"
11
+ :disabled="disabled"
12
+ >
4
13
  <tiny-radio-group v-model="radioVal" size="mini">
5
14
  <tiny-radio label="大于">大于</tiny-radio>
6
15
  <tiny-radio label="等于">等于</tiny-radio>
@@ -12,19 +21,21 @@
12
21
  </template>
13
22
 
14
23
  <script>
15
- import { FilterPanel, Radio, RadioGroup, Input } from '@opentiny/vue'
24
+ import { FilterPanel, Radio, RadioGroup, Input, Switch } from '@opentiny/vue'
16
25
 
17
26
  export default {
18
27
  components: {
19
28
  TinyRadio: Radio,
20
29
  TinyRadioGroup: RadioGroup,
21
30
  TinyFilterPanel: FilterPanel,
22
- TinyInput: Input
31
+ TinyInput: Input,
32
+ TinySwitch: Switch
23
33
  },
24
34
  data() {
25
35
  return {
26
36
  inputVal: '',
27
- radioVal: ''
37
+ radioVal: '',
38
+ disabled: false
28
39
  }
29
40
  },
30
41
  computed: {
@@ -8,11 +8,21 @@ test('事件', async ({ page }) => {
8
8
  const button = panel.locator('.tiny-filter-box')
9
9
  const popPanel = page.getByRole('tooltip', { name: '大于 等于 小于' })
10
10
  const modal = page.locator('.tiny-modal')
11
+ const clear = panel.locator('.filter-icon-close')
11
12
 
13
+ // handle-clear事件
14
+ await button.click()
15
+ await popPanel.isVisible()
16
+ await page.getByRole('radio', { name: '等于' }).click()
17
+ await expect(button).toHaveText('物品数量等于')
18
+ await clear.click()
19
+ await expect(button).toHaveText('物品数量')
20
+ await button.click()
21
+
22
+ // visible-change事件
12
23
  await button.click()
13
- await expect(popPanel).toBeVisible()
14
24
  await expect(modal.nth(1)).toHaveText('true visibleChange')
15
25
  await button.click()
16
- await expect(popPanel).not.toBeVisible()
26
+ await popPanel.isHidden()
17
27
  await expect(modal.nth(2)).toHaveText('false visibleChange')
18
28
  })
@@ -10,7 +10,7 @@ test('手动隐藏', async ({ page }) => {
10
10
  const manualButton = page.getByRole('button', { name: '确定' })
11
11
 
12
12
  await button.click()
13
- await expect(popPanel).toBeVisible()
13
+ await popPanel.isVisible()
14
14
  await manualButton.click()
15
- await expect(popPanel).not.toBeVisible()
15
+ await popPanel.isHidden()
16
16
  })
@@ -7,6 +7,7 @@
7
7
  :popper-append-to-body="false"
8
8
  :value="value"
9
9
  :clearable="false"
10
+ placement="top-start"
10
11
  >
11
12
  <tiny-radio-group v-model="radioVal" size="mini">
12
13
  <tiny-radio label="大于">大于</tiny-radio>
@@ -9,7 +9,7 @@ test('弹出框样式', async ({ page }) => {
9
9
  const popPanel = page.getByRole('tooltip', { name: '大于 等于 小于' })
10
10
 
11
11
  await button.click()
12
- await expect(popPanel).toBeVisible()
12
+ await popPanel.isHidden()
13
13
  await button.click()
14
- await expect(popPanel).not.toBeVisible()
14
+ await popPanel.isHidden()
15
15
  })
@@ -7,6 +7,7 @@
7
7
  :popper-append-to-body="false"
8
8
  :value="value"
9
9
  :clearable="false"
10
+ placement="top-start"
10
11
  >
11
12
  <tiny-radio-group v-model="radioVal" size="mini">
12
13
  <tiny-radio label="大于">大于</tiny-radio>
@@ -2,12 +2,12 @@ import { test, expect } from '@playwright/test'
2
2
 
3
3
  test('tip提示', async ({ page }) => {
4
4
  page.on('pageerror', (exception) => expect(exception).toBeNull())
5
- await page.goto('http://127.0.0.1:7130/pc/filter-panel/tip')
5
+ await page.goto('filter-panel#tip')
6
6
 
7
7
  const panel = page.locator('.tiny-filter-panel')
8
8
  const help = panel.locator('.tiny-svg.tiny-tooltip')
9
9
  const tooltip = page.getByRole('tooltip', { name: '请选择物品数量' })
10
10
 
11
11
  await help.hover()
12
- await expect(tooltip).toBeVisible()
12
+ await tooltip.isVisible()
13
13
  })
@@ -4,4 +4,4 @@ title: FilterPanel 过滤器面板
4
4
 
5
5
  # FilterPanel 过滤器面板
6
6
 
7
- <div>FilterPanel 过滤器面板 。</div>
7
+ <div>用于列表数据过滤、图标卡片过滤等。</div>
@@ -1,7 +1,7 @@
1
1
  ---
2
- title: FilterPanel FilterPanel
2
+ title: FilterPanel
3
3
  ---
4
4
 
5
- # FilterPanel FilterPanel
5
+ # FilterPanel
6
6
 
7
- <div>FilterPanel Filterpanel.</div>
7
+ <div>Used for filtering list data, icon card filtering, etc.</div>
@@ -6,38 +6,30 @@ export default {
6
6
  'demoId': 'basic-usage',
7
7
  'name': { 'zh-CN': '基本用法', 'en-US': 'Basic Usage' },
8
8
  'desc': {
9
- 'zh-CN': '<p>过滤器面板用于列表数据过滤、图标卡片过滤,自定义过滤面板内容</p>\n',
10
- 'en-US':
11
- '<p>The filter panel is used to filter list data, filter icon cards, and customize the filter panel content</p>\n'
9
+ 'zh-CN':
10
+ '通过 <code>label</code> 设置标题,<code>value</code> 设置标题右侧内容,<code>disabled</code> 设置是否禁用;通过默认插槽自定义过滤面板内容。',
11
+ 'en-US': `Set the title through<code>label</code>,<code>value</code>set the content to the right of the title, and<code>disabled</code>set whether to disable it;
12
+ Customize filter panel content through default slots.`
12
13
  },
13
14
  'codeFiles': ['basic-usage.vue']
14
15
  },
15
16
  {
16
- 'demoId': 'disabled',
17
- 'name': { 'zh-CN': '禁用', 'en-US': 'Disabled' },
18
- 'desc': {
19
- 'zh-CN': '<p>通过 <code>disabled</code> 设置禁用</p>\n',
20
- 'en-US': '<p>Disabling by <code>disabled</code> </p>\n'
21
- },
22
- 'codeFiles': ['disabled.vue']
23
- },
24
- {
25
- 'demoId': 'clearable',
26
- 'name': { 'zh-CN': '显示清空按钮', 'en-US': 'Show Clear Button' },
17
+ 'demoId': 'popper-class',
18
+ 'name': { 'zh-CN': '自定义下拉面板', 'en-US': 'Custom dropdown box' },
27
19
  'desc': {
28
20
  'zh-CN':
29
- '<p>给组件加上 <code>clearable</code> 属性可以显示清空按钮,配合 <code>handle-clear</code> 事件一起使用清空内容区域的值</p>\n',
30
- 'en-US':
31
- '<p>The <code>clearable</code> attribute is added to the component to display the clear button. This attribute is used together with the <code>handle-clear</code> event to clear the value of the content area.</p>\n'
21
+ '通过 <code>placement</code> 控制下拉面板的位置, <code>popper-class</code> 设置类名,自定义下拉面板的样式;<code>popper-append-to-body</code> 设置弹下拉面板是否插入至 body 元素。在下拉面板的定位出现问题时,可将其设置为 false。',
22
+ 'en-US': `Control the position of the drop-down panel through<code>placement</code>. Set the class name and customize the style of the dropdown box through<code>popper-class</code>. <code>popper-append-to-body</code>Set whether the pop-up
23
+ menu is inserted into the body element. When there is an issue with the positioning of the dropdown box, it can be set to false.`
32
24
  },
33
- 'codeFiles': ['clearable.vue']
25
+ 'codeFiles': ['popper-class.vue']
34
26
  },
35
27
  {
36
28
  'demoId': 'tip',
37
- 'name': { 'zh-CN': 'tip 提示', 'en-US': 'Tip' },
29
+ 'name': { 'zh-CN': '提示', 'en-US': 'Tip' },
38
30
  'desc': {
39
- 'zh-CN': '<p>标题右侧添加提示信息</p>\n',
40
- 'en-US': '<p>Add a message to the right of the title.</p>\n'
31
+ 'zh-CN': `通过 <code>:clearable='false'</code> 隐藏清空按钮;配合 <code>tip</code> 添加标题右侧提示信息。`,
32
+ 'en-US': `Hide the clear button through<code>:clearable='false'</code>; Collaborate with<code>tip</code>to add prompt information on the right side of the title.`
41
33
  },
42
34
  'codeFiles': ['tip.vue']
43
35
  },
@@ -45,32 +37,21 @@ export default {
45
37
  'demoId': 'manual-hide',
46
38
  'name': { 'zh-CN': '手动隐藏', 'en-US': 'Manually hide' },
47
39
  'desc': {
48
- 'zh-CN': '<p>通过给元素添加 ref,然后主动调用组件的 hide 方法可以手动隐藏下拉框</p>',
49
- 'en-US':
50
- '<p>You can manually hide the drop-down list box by adding ref to the element and invoking the hide method of the component.</p>'
40
+ 'zh-CN': '手动调用 <code>hide</code> 实例方法完成收起下拉面板功能。',
41
+ 'en-US': 'Manually call the<code>hide</code>instance method to complete the collapse dropdown function.'
51
42
  },
52
43
  'codeFiles': ['manual-hide.vue']
53
44
  },
54
45
  {
55
46
  'demoId': 'event',
56
47
  'name': { 'zh-CN': '事件', 'en-US': 'Event' },
57
- 'desc': {
58
- 'zh-CN': '<p> <code>visible-change</code> 事件在下拉面板显示/隐藏时触发</p>',
59
- 'en-US':
60
- '<p> <code>visible-change</code> event is triggered when the drop-down panel is displayed or hidden</p>'
61
- },
62
- 'codeFiles': ['event.vue']
63
- },
64
- {
65
- 'demoId': 'popper-class',
66
- 'name': { 'zh-CN': '弹出框样式', 'en-US': 'Pop-up dialog box style' },
67
48
  'desc': {
68
49
  'zh-CN':
69
- '<p>通过 <code>popper-class</code> 属性可自定义下拉弹框的样式。popper-append-to-body 指定是否将弹出框插入至 body 元素。在弹出框的定位出现问题时,可将该属性设置为 false</p>',
50
+ '<code>handle-clear</code> 监听清空按钮点击事件,执行删除操作; <code>visible-change</code> 监听下拉面板的显隐事件。',
70
51
  'en-US':
71
- '<p>You can use the <code>popper-class</code> attribute to customize the style of the drop-down list box. popper-append-to-body Specifies whether to insert a pop-up box into the body element. If a fault occurs in locating the fault in the dialog box that is displayed, you can set this attribute to false</p>'
52
+ '<code>handle-clear</code>Listen to the clear button click event and execute the delete operation<code>visible-change</code>listens to the explicit and implicit events of the drop-down panel.'
72
53
  },
73
- 'codeFiles': ['popper-class.vue']
54
+ 'codeFiles': ['event.vue']
74
55
  }
75
56
  ],
76
57
  apis: [
@@ -83,11 +64,11 @@ export default {
83
64
  'type': 'boolean',
84
65
  'defaultValue': 'true',
85
66
  'desc': {
86
- 'zh-CN': '显示清空按钮,配合`handle-clear`事件一起使用清空内容区域的值,默认为true。',
67
+ 'zh-CN': '控制清空按钮的显隐,默认显示;可配合 handle-clear 事件来完成清空内容区域的值',
87
68
  'en-US':
88
- 'Displays the Clear button, which is used together with the `handle-clear` event to clear the value of the content area. The default value is true.'
69
+ 'Control the display of the clear button, default display; Can be used in conjunction with the handle clear event to clear the value of the content area'
89
70
  },
90
- 'demoId': 'clearable'
71
+ 'demoId': 'tip'
91
72
  },
92
73
  {
93
74
  'name': 'disabled',
@@ -97,7 +78,7 @@ export default {
97
78
  'zh-CN': '是否禁用',
98
79
  'en-US': 'Whether to disable'
99
80
  },
100
- 'demoId': 'disabled'
81
+ 'demoId': 'basic-usage'
101
82
  },
102
83
  {
103
84
  'name': 'label',
@@ -107,25 +88,27 @@ export default {
107
88
  'zh-CN': '标题',
108
89
  'en-US': 'The title'
109
90
  },
110
- 'demoId': 'popper-class'
91
+ 'demoId': 'basic-usage'
111
92
  },
112
93
  {
113
94
  'name': 'placement',
114
- 'type': 'string',
115
- 'defaultValue': 'bottom-start',
95
+ 'type': 'IPopperPlacement',
96
+ 'typeAnchorName': 'popover#IPopperPlacement',
97
+ 'defaultValue': `'bottom-start'`,
116
98
  'desc': {
117
- 'zh-CN': '弹出框位置,默认值为bottom-start',
118
- 'en-US': 'Position of the pop-up dialog box. The default value is bottom-start.'
99
+ 'zh-CN': '下拉面板位置,可选值请参考popover组件的同属性',
100
+ 'en-US':
101
+ 'Drop down panel position, optional values please refer to the same properties of the popover component'
119
102
  },
120
- 'demoId': ''
103
+ 'demoId': 'popper-class'
121
104
  },
122
105
  {
123
106
  'name': 'popper-append-to-body',
124
107
  'type': 'boolean',
125
108
  'defaultValue': 'true',
126
109
  'desc': {
127
- 'zh-CN': '下拉框是否添加到body',
128
- 'en-US': 'Indicates whether to add the drop-down list box to the body.'
110
+ 'zh-CN': '下拉面板是否添加到body元素中',
111
+ 'en-US': 'Indicates whether to add the drop-down panel to the body element'
129
112
  },
130
113
  'demoId': 'popper-class'
131
114
  },
@@ -134,8 +117,8 @@ export default {
134
117
  'type': 'string',
135
118
  'defaultValue': '',
136
119
  'desc': {
137
- 'zh-CN': '下拉框的class',
138
- 'en-US': 'Class in the drop-down list box'
120
+ 'zh-CN': '下拉面板的class',
121
+ 'en-US': 'Class in the drop-down panel'
139
122
  },
140
123
  'demoId': 'popper-class'
141
124
  },
@@ -166,21 +149,32 @@ export default {
166
149
  'type': '() => void',
167
150
  'defaultValue': '',
168
151
  'desc': {
169
- 'zh-CN': '清除按钮点击事件。',
170
- 'en-US': 'Clear button click event.'
152
+ 'zh-CN': '清除按钮点击事件',
153
+ 'en-US': 'Clear button click event'
171
154
  },
172
155
  'demoId': 'event'
173
156
  },
174
157
  {
175
158
  'name': 'visible-change',
176
- 'type': '() => void',
159
+ 'type': '(visible: boolean) => void',
177
160
  'defaultValue': '',
178
161
  'desc': {
179
- 'zh-CN': '下拉框显示隐藏事件。',
180
- 'en-US': 'The drop-down list box displays hidden events.'
162
+ 'zh-CN': '下拉面板显示隐藏事件',
163
+ 'en-US': 'The drop-down panel displays hidden events'
181
164
  },
182
165
  'demoId': 'event'
183
166
  }
167
+ ],
168
+ 'methods': [
169
+ {
170
+ 'name': 'hide',
171
+ 'type': '() => void',
172
+ 'desc': {
173
+ 'zh-CN': '隐藏下拉面板的方法',
174
+ 'en-US': 'How to hide the drop-down panel'
175
+ },
176
+ 'demoId': 'manual-hide'
177
+ }
184
178
  ]
185
179
  }
186
180
  ]
@@ -40,7 +40,7 @@ export default {
40
40
  {
41
41
  'name': 'floatbar',
42
42
  'type': 'component',
43
- 'properties': [],
43
+ 'props': [],
44
44
  'events': [],
45
45
  'slots': [
46
46
  {
@@ -33,7 +33,7 @@ export default {
33
33
  {
34
34
  'name': 'flowchart',
35
35
  'type': 'component',
36
- 'properties': [
36
+ 'props': [
37
37
  {
38
38
  name: 'config',
39
39
  type: 'object',
@@ -21,5 +21,5 @@ export default {
21
21
  'codeFiles': ['Font-usage-specifications.vue']
22
22
  }
23
23
  ],
24
- apis: [{ 'name': 'font', 'type': 'component', 'properties': [], 'events': [], 'slots': [] }]
24
+ apis: [{ 'name': 'font', 'type': 'component', 'props': [], 'events': [], 'slots': [] }]
25
25
  }
@@ -0,0 +1,46 @@
1
+ <template>
2
+ <div class="demo-form">
3
+ <tiny-form ref="formRef" :model="createData" @validate="validate">
4
+ <tiny-form-item label="姓名" prop="name" :rules="{ required: true, messages: '必填', trigger: 'blur' }">
5
+ <tiny-input v-model="createData.name"></tiny-input>
6
+ </tiny-form-item>
7
+ <tiny-form-item label="昵称">
8
+ <tiny-input v-model="createData.nickname"></tiny-input>
9
+ </tiny-form-item>
10
+ <tiny-form-item>
11
+ <tiny-button @click="submit" type="primary">提交</tiny-button>
12
+ </tiny-form-item>
13
+ </tiny-form>
14
+ </div>
15
+ </template>
16
+
17
+ <script setup>
18
+ import { ref } from 'vue'
19
+ import {
20
+ Form as TinyForm,
21
+ FormItem as TinyFormItem,
22
+ Input as TinyInput,
23
+ Button as TinyButton,
24
+ Modal as TinyModal
25
+ } from '@opentiny/vue'
26
+
27
+ const createData = ref({
28
+ name: '',
29
+ nickname: ''
30
+ })
31
+ const formRef = ref()
32
+ function validate() {
33
+ TinyModal.message({ message: '校验事件触发了', status: 'info' })
34
+ }
35
+ function submit() {
36
+ formRef.value.validate(() => {
37
+ // empty
38
+ })
39
+ }
40
+ </script>
41
+
42
+ <style scoped>
43
+ .demo-form {
44
+ width: 380px;
45
+ }
46
+ </style>
@@ -0,0 +1,12 @@
1
+ import { test, expect } from '@playwright/test'
2
+
3
+ test('表单事件', async ({ page }) => {
4
+ page.on('pageerror', (exception) => expect(exception).toBeNull())
5
+ await page.goto('form#events')
6
+
7
+ const demo = page.locator('#events')
8
+ const messageModal = page.locator('.tiny-modal.active')
9
+
10
+ await demo.getByRole('button', { name: '提交' }).click()
11
+ await expect(messageModal).toHaveText('校验事件触发了')
12
+ })
@@ -0,0 +1,52 @@
1
+ <template>
2
+ <div class="demo-form">
3
+ <tiny-form ref="form" :model="createData" @validate="validate">
4
+ <tiny-form-item label="姓名" prop="name" :rules="{ required: true, messages: '必填', trigger: 'blur' }">
5
+ <tiny-input v-model="createData.name"></tiny-input>
6
+ </tiny-form-item>
7
+ <tiny-form-item label="昵称">
8
+ <tiny-input v-model="createData.nickname"></tiny-input>
9
+ </tiny-form-item>
10
+ <tiny-form-item>
11
+ <tiny-button @click="submit" type="primary">提交</tiny-button>
12
+ </tiny-form-item>
13
+ </tiny-form>
14
+ </div>
15
+ </template>
16
+
17
+ <script>
18
+ import { Form, FormItem, Input, Button, Modal as TinyModal } from '@opentiny/vue'
19
+
20
+ export default {
21
+ components: {
22
+ TinyForm: Form,
23
+ TinyFormItem: FormItem,
24
+ TinyInput: Input,
25
+ TinyButton: Button
26
+ },
27
+ data() {
28
+ return {
29
+ createData: {
30
+ name: '',
31
+ nickname: ''
32
+ }
33
+ }
34
+ },
35
+ methods: {
36
+ validate() {
37
+ TinyModal.message({ message: '校验事件触发了', status: 'info' })
38
+ },
39
+ submit() {
40
+ this.$refs.form.validate(() => {
41
+ // empty
42
+ })
43
+ }
44
+ }
45
+ }
46
+ </script>
47
+
48
+ <style scoped>
49
+ .demo-form {
50
+ width: 380px;
51
+ }
52
+ </style>
@@ -1,25 +1,19 @@
1
1
  <template>
2
2
  <div class="demo-form">
3
- <tiny-form
4
- ref="ruleFormRef"
5
- hide-required-asterisk
6
- :model="createData"
7
- :rules="rules"
8
- label-width="100px"
9
- show-message
10
- >
11
- <tiny-form-item label="姓名" prop="users" required>
3
+ <tiny-form ref="ruleFormRef" :model="createData" :rules="rules">
4
+ <tiny-form-item label="姓名" prop="users">
12
5
  <tiny-input v-model="createData.users"></tiny-input>
13
6
  </tiny-form-item>
14
- <tiny-form-item label="日期" prop="datepicker">
7
+ <tiny-form-item label="日期" prop="datepicker" ref="dateRef">
15
8
  <tiny-date-picker v-model="createData.datepicker"></tiny-date-picker>
16
9
  </tiny-form-item>
17
10
  <tiny-form-item label="URL" prop="url">
18
11
  <tiny-input v-model="createData.url"></tiny-input>
19
12
  </tiny-form-item>
20
13
  <tiny-form-item>
21
- <tiny-button type="primary" @click="validateField"> 校验特定字段 </tiny-button>
22
- <tiny-button type="primary" @click="clearValidate"> 移除特定字段校验 </tiny-button>
14
+ <tiny-button type="primary" @click="validateField"> 校验 </tiny-button>
15
+ <tiny-button type="primary" @click="clearValidate"> 移除校验 </tiny-button>
16
+ <tiny-button type="primary" @click="resetField"> 重置日期 </tiny-button>
23
17
  </tiny-form-item>
24
18
  </tiny-form>
25
19
  </div>
@@ -37,6 +31,7 @@ import {
37
31
  } from '@opentiny/vue'
38
32
 
39
33
  const ruleFormRef = ref()
34
+ const dateRef = ref()
40
35
 
41
36
  const createData = reactive({
42
37
  users: '',
@@ -48,7 +43,7 @@ const rules = ref({
48
43
  { required: true, message: '必填', trigger: 'blur' },
49
44
  { min: 2, max: 11, message: '长度必须不小于2', trigger: ['change', 'blur'] }
50
45
  ],
51
- datepicker: { type: 'date' },
46
+ datepicker: { type: 'date', required: true },
52
47
  url: { type: 'url', required: true }
53
48
  })
54
49
 
@@ -56,6 +51,10 @@ function clearValidate() {
56
51
  ruleFormRef.value.clearValidate(['url', 'datepicker'])
57
52
  }
58
53
 
54
+ function resetField() {
55
+ dateRef.value.resetField()
56
+ }
57
+
59
58
  async function validateField() {
60
59
  const errArray = []
61
60
  await ruleFormRef.value.validateField(['url', 'datepicker'], (errMsg, fieldConfig) => {
@@ -64,7 +63,7 @@ async function validateField() {
64
63
  }
65
64
  })
66
65
  if (errArray.length > 0) {
67
- console.log(errArray)
66
+ // empty
68
67
  } else {
69
68
  Modal.alert('日期和url通过校验')
70
69
  }