@tplc/wot 1.0.6 → 1.0.8

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 (518) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/components/common/AbortablePromise.ts +3 -11
  3. package/components/common/abstracts/_config.scss +1 -1
  4. package/components/common/abstracts/_function.scss +26 -13
  5. package/components/common/abstracts/_mixin.scss +117 -71
  6. package/components/common/abstracts/variable.scss +325 -697
  7. package/components/common/base64.ts +1 -2
  8. package/components/common/canvasHelper.ts +1 -1
  9. package/components/common/interceptor.ts +43 -0
  10. package/components/common/props.ts +8 -8
  11. package/components/common/util.ts +145 -60
  12. package/components/composables/index.ts +11 -0
  13. package/components/composables/useChildren.ts +9 -18
  14. package/components/composables/useCountDown.ts +2 -2
  15. package/components/composables/useLockScroll.ts +1 -3
  16. package/components/composables/useParent.ts +4 -4
  17. package/components/composables/usePopover.ts +43 -60
  18. package/components/composables/useQueue.ts +2 -2
  19. package/components/composables/useTouch.ts +2 -3
  20. package/components/composables/useTranslate.ts +2 -13
  21. package/components/composables/useUpload.ts +389 -0
  22. package/components/wd-action-sheet/index.scss +22 -22
  23. package/components/wd-action-sheet/types.ts +11 -21
  24. package/components/wd-action-sheet/wd-action-sheet.vue +21 -40
  25. package/components/wd-backtop/index.scss +5 -5
  26. package/components/wd-backtop/types.ts +3 -15
  27. package/components/wd-backtop/wd-backtop.vue +12 -20
  28. package/components/wd-badge/index.scss +14 -10
  29. package/components/wd-badge/types.ts +6 -9
  30. package/components/wd-badge/wd-badge.vue +29 -37
  31. package/components/wd-button/index.scss +76 -80
  32. package/components/wd-button/types.ts +43 -13
  33. package/components/wd-button/wd-button.vue +41 -22
  34. package/components/wd-calendar/index.scss +58 -145
  35. package/components/wd-calendar/types.ts +23 -41
  36. package/components/wd-calendar/wd-calendar.vue +123 -130
  37. package/components/wd-calendar-view/month/index.scss +33 -65
  38. package/components/wd-calendar-view/month/month.vue +80 -113
  39. package/components/wd-calendar-view/month/types.ts +2 -1
  40. package/components/wd-calendar-view/monthPanel/index.scss +15 -15
  41. package/components/wd-calendar-view/monthPanel/month-panel.vue +64 -78
  42. package/components/wd-calendar-view/monthPanel/types.ts +58 -10
  43. package/components/wd-calendar-view/types.ts +12 -36
  44. package/components/wd-calendar-view/utils.ts +14 -36
  45. package/components/wd-calendar-view/wd-calendar-view.vue +7 -7
  46. package/components/wd-calendar-view/year/index.scss +18 -13
  47. package/components/wd-calendar-view/year/types.ts +2 -1
  48. package/components/wd-calendar-view/year/year.vue +25 -43
  49. package/components/wd-calendar-view/yearPanel/index.scss +4 -4
  50. package/components/wd-calendar-view/yearPanel/types.ts +2 -2
  51. package/components/wd-calendar-view/yearPanel/year-panel.vue +36 -41
  52. package/components/wd-card/index.scss +11 -10
  53. package/components/wd-card/types.ts +1 -1
  54. package/components/wd-card/wd-card.vue +6 -9
  55. package/components/wd-cell/index.scss +56 -41
  56. package/components/wd-cell/types.ts +23 -8
  57. package/components/wd-cell/wd-cell.vue +48 -18
  58. package/components/wd-cell-group/index.scss +8 -7
  59. package/components/wd-cell-group/types.ts +1 -1
  60. package/components/wd-cell-group/wd-cell-group.vue +5 -5
  61. package/components/wd-checkbox/index.scss +35 -35
  62. package/components/wd-checkbox/types.ts +6 -6
  63. package/components/wd-checkbox/wd-checkbox.vue +12 -20
  64. package/components/wd-checkbox-group/index.scss +4 -4
  65. package/components/wd-checkbox-group/types.ts +2 -2
  66. package/components/wd-checkbox-group/wd-checkbox-group.vue +9 -12
  67. package/components/wd-circle/index.scss +5 -5
  68. package/components/wd-circle/types.ts +2 -2
  69. package/components/wd-circle/wd-circle.vue +18 -40
  70. package/components/wd-col/index.scss +2 -2
  71. package/components/wd-col/types.ts +1 -1
  72. package/components/wd-col/wd-col.vue +11 -53
  73. package/components/wd-col-picker/index.scss +41 -115
  74. package/components/wd-col-picker/types.ts +10 -14
  75. package/components/wd-col-picker/wd-col-picker.vue +103 -155
  76. package/components/wd-collapse/index.scss +7 -13
  77. package/components/wd-collapse/types.ts +4 -10
  78. package/components/wd-collapse/wd-collapse.vue +22 -55
  79. package/components/wd-collapse-item/index.scss +16 -5
  80. package/components/wd-collapse-item/types.ts +14 -2
  81. package/components/wd-collapse-item/wd-collapse-item.vue +70 -81
  82. package/components/wd-config-provider/types.ts +69 -40
  83. package/components/wd-config-provider/wd-config-provider.vue +11 -11
  84. package/components/wd-count-down/index.scss +3 -2
  85. package/components/wd-count-down/types.ts +1 -1
  86. package/components/wd-count-down/wd-count-down.vue +5 -5
  87. package/components/wd-count-to/index.scss +2 -1
  88. package/components/wd-count-to/types.ts +10 -3
  89. package/components/wd-count-to/wd-count-to.vue +9 -18
  90. package/components/wd-curtain/index.scss +28 -23
  91. package/components/wd-curtain/types.ts +46 -9
  92. package/components/wd-curtain/wd-curtain.vue +45 -47
  93. package/components/wd-datetime-picker/index.scss +65 -145
  94. package/components/wd-datetime-picker/types.ts +41 -31
  95. package/components/wd-datetime-picker/wd-datetime-picker.vue +307 -333
  96. package/components/wd-datetime-picker-view/types.ts +29 -46
  97. package/components/wd-datetime-picker-view/util.ts +30 -0
  98. package/components/wd-datetime-picker-view/wd-datetime-picker-view.vue +104 -119
  99. package/components/wd-divider/index.scss +78 -10
  100. package/components/wd-divider/types.ts +26 -3
  101. package/components/wd-divider/wd-divider.vue +33 -10
  102. package/components/wd-drop-menu/index.scss +17 -45
  103. package/components/wd-drop-menu/types.ts +3 -3
  104. package/components/wd-drop-menu/wd-drop-menu.vue +61 -25
  105. package/components/wd-drop-menu-item/index.scss +15 -15
  106. package/components/wd-drop-menu-item/types.ts +18 -15
  107. package/components/wd-drop-menu-item/wd-drop-menu-item.vue +33 -54
  108. package/components/wd-fab/index.scss +13 -12
  109. package/components/wd-fab/types.ts +9 -4
  110. package/components/wd-fab/wd-fab.vue +70 -51
  111. package/components/wd-floating-panel/index.scss +64 -0
  112. package/components/wd-floating-panel/type.ts +32 -0
  113. package/components/wd-floating-panel/wd-floating-panel.vue +140 -0
  114. package/components/wd-form/types.ts +8 -16
  115. package/components/wd-form/wd-form.vue +67 -45
  116. package/components/wd-form-item/index.scss +3 -2
  117. package/components/wd-form-item/types.ts +2 -8
  118. package/components/wd-form-item/wd-form-item.vue +3 -3
  119. package/components/wd-grid/index.scss +2 -2
  120. package/components/wd-grid/types.ts +5 -0
  121. package/components/wd-grid/wd-grid.vue +11 -12
  122. package/components/wd-grid-item/index.scss +44 -33
  123. package/components/wd-grid-item/types.ts +7 -4
  124. package/components/wd-grid-item/wd-grid-item.vue +39 -44
  125. package/components/wd-icon/index.scss +311 -303
  126. package/components/wd-icon/types.ts +3 -3
  127. package/components/wd-icon/wd-icon.vue +6 -6
  128. package/components/wd-img/types.ts +1 -1
  129. package/components/wd-img/wd-img.vue +13 -3
  130. package/components/wd-img-cropper/index.scss +43 -39
  131. package/components/wd-img-cropper/types.ts +6 -8
  132. package/components/wd-img-cropper/wd-img-cropper.vue +132 -127
  133. package/components/wd-index-anchor/index.scss +7 -6
  134. package/components/wd-index-anchor/type.ts +2 -2
  135. package/components/wd-index-anchor/wd-index-anchor.vue +3 -9
  136. package/components/wd-index-bar/index.scss +5 -5
  137. package/components/wd-index-bar/type.ts +3 -2
  138. package/components/wd-index-bar/wd-index-bar.vue +15 -51
  139. package/components/wd-input/index.scss +44 -33
  140. package/components/wd-input/types.ts +40 -19
  141. package/components/wd-input/wd-input.vue +58 -42
  142. package/components/wd-input-number/index.scss +23 -31
  143. package/components/wd-input-number/types.ts +42 -14
  144. package/components/wd-input-number/wd-input-number.vue +374 -141
  145. package/components/wd-keyboard/constants.ts +81 -0
  146. package/components/wd-keyboard/index.scss +102 -0
  147. package/components/wd-keyboard/key/index.scss +79 -0
  148. package/components/wd-keyboard/key/index.vue +71 -0
  149. package/components/wd-keyboard/key/types.ts +11 -0
  150. package/components/wd-keyboard/types.ts +92 -0
  151. package/components/wd-keyboard/wd-keyboard.vue +206 -0
  152. package/components/wd-loading/index.scss +9 -6
  153. package/components/wd-loading/types.ts +1 -1
  154. package/components/wd-loading/wd-loading.vue +9 -9
  155. package/components/wd-loadmore/index.scss +5 -5
  156. package/components/wd-loadmore/types.ts +8 -2
  157. package/components/wd-loadmore/wd-loadmore.vue +28 -13
  158. package/components/wd-message-box/index.scss +21 -34
  159. package/components/wd-message-box/index.ts +30 -29
  160. package/components/wd-message-box/types.ts +33 -8
  161. package/components/wd-message-box/wd-message-box.vue +130 -152
  162. package/components/wd-navbar/index.scss +14 -24
  163. package/components/wd-navbar/types.ts +1 -1
  164. package/components/wd-navbar/wd-navbar.vue +14 -45
  165. package/components/wd-navbar-capsule/index.scss +16 -15
  166. package/components/wd-navbar-capsule/types.ts +8 -0
  167. package/components/wd-navbar-capsule/wd-navbar-capsule.vue +8 -4
  168. package/components/wd-notice-bar/index.scss +15 -33
  169. package/components/wd-notice-bar/types.ts +14 -3
  170. package/components/wd-notice-bar/wd-notice-bar.vue +109 -66
  171. package/components/wd-notify/index.scss +5 -5
  172. package/components/wd-notify/index.ts +17 -15
  173. package/components/wd-notify/types.ts +4 -0
  174. package/components/wd-notify/wd-notify.vue +21 -19
  175. package/components/wd-number-keyboard/index.scss +10 -10
  176. package/components/wd-number-keyboard/key/index.scss +7 -5
  177. package/components/wd-number-keyboard/key/index.vue +6 -9
  178. package/components/wd-number-keyboard/key/types.ts +1 -1
  179. package/components/wd-number-keyboard/types.ts +4 -0
  180. package/components/wd-number-keyboard/wd-number-keyboard.vue +22 -44
  181. package/components/wd-overlay/index.scss +3 -3
  182. package/components/wd-overlay/types.ts +2 -2
  183. package/components/wd-overlay/wd-overlay.vue +7 -15
  184. package/components/wd-pagination/index.scss +17 -17
  185. package/components/wd-pagination/types.ts +1 -1
  186. package/components/wd-pagination/wd-pagination.vue +10 -21
  187. package/components/wd-password-input/index.scss +7 -6
  188. package/components/wd-password-input/types.ts +2 -8
  189. package/components/wd-password-input/wd-password-input.vue +6 -15
  190. package/components/wd-picker/index.scss +46 -153
  191. package/components/wd-picker/types.ts +22 -19
  192. package/components/wd-picker/wd-picker.vue +89 -86
  193. package/components/wd-picker-view/index.scss +13 -12
  194. package/components/wd-picker-view/types.ts +16 -26
  195. package/components/wd-picker-view/wd-picker-view.vue +32 -24
  196. package/components/wd-popover/index.scss +29 -36
  197. package/components/wd-popover/types.ts +1 -1
  198. package/components/wd-popover/wd-popover.vue +20 -56
  199. package/components/wd-popup/index.scss +47 -75
  200. package/components/wd-popup/types.ts +40 -4
  201. package/components/wd-popup/wd-popup.vue +100 -157
  202. package/components/wd-progress/index.scss +20 -14
  203. package/components/wd-progress/types.ts +10 -6
  204. package/components/wd-progress/wd-progress.vue +137 -141
  205. package/components/wd-radio/index.scss +54 -53
  206. package/components/wd-radio/types.ts +15 -6
  207. package/components/wd-radio/wd-radio.vue +41 -59
  208. package/components/wd-radio-group/index.scss +5 -5
  209. package/components/wd-radio-group/types.ts +4 -1
  210. package/components/wd-radio-group/wd-radio-group.vue +6 -9
  211. package/components/wd-rate/index.scss +1 -1
  212. package/components/wd-rate/types.ts +10 -5
  213. package/components/wd-rate/wd-rate.vue +35 -17
  214. package/components/wd-resize/index.scss +2 -1
  215. package/components/wd-resize/types.ts +1 -1
  216. package/components/wd-resize/wd-resize.vue +11 -22
  217. package/components/wd-root-portal/wd-root-portal.vue +50 -0
  218. package/components/wd-row/index.scss +1 -1
  219. package/components/wd-row/types.ts +1 -1
  220. package/components/wd-row/wd-row.vue +14 -35
  221. package/components/wd-search/index.scss +29 -29
  222. package/components/wd-search/types.ts +22 -3
  223. package/components/wd-search/wd-search.vue +70 -120
  224. package/components/wd-segmented/index.scss +19 -15
  225. package/components/wd-segmented/types.ts +16 -4
  226. package/components/wd-segmented/wd-segmented.vue +34 -34
  227. package/components/wd-select-picker/index.scss +55 -122
  228. package/components/wd-select-picker/types.ts +29 -36
  229. package/components/wd-select-picker/wd-select-picker.vue +128 -274
  230. package/components/wd-sidebar/index.scss +5 -5
  231. package/components/wd-sidebar/types.ts +22 -3
  232. package/components/wd-sidebar/wd-sidebar.vue +26 -4
  233. package/components/wd-sidebar-item/index.scss +17 -13
  234. package/components/wd-sidebar-item/types.ts +3 -3
  235. package/components/wd-sidebar-item/wd-sidebar-item.vue +12 -10
  236. package/components/wd-signature/index.scss +31 -0
  237. package/components/wd-signature/types.ts +263 -0
  238. package/components/wd-signature/wd-signature.vue +630 -0
  239. package/components/wd-skeleton/index.scss +8 -13
  240. package/components/wd-skeleton/types.ts +6 -6
  241. package/components/wd-skeleton/wd-skeleton.vue +15 -31
  242. package/components/wd-slider/index.scss +24 -17
  243. package/components/wd-slider/types.ts +45 -17
  244. package/components/wd-slider/wd-slider.vue +275 -297
  245. package/components/wd-sort-button/index.scss +10 -7
  246. package/components/wd-sort-button/types.ts +1 -1
  247. package/components/wd-sort-button/wd-sort-button.vue +7 -14
  248. package/components/wd-status-tip/index.scss +8 -8
  249. package/components/wd-status-tip/types.ts +8 -2
  250. package/components/wd-status-tip/wd-status-tip.vue +14 -37
  251. package/components/wd-step/index.scss +29 -30
  252. package/components/wd-step/types.ts +1 -1
  253. package/components/wd-step/wd-step.vue +8 -9
  254. package/components/wd-steps/index.scss +1 -1
  255. package/components/wd-steps/types.ts +1 -1
  256. package/components/wd-steps/wd-steps.vue +5 -5
  257. package/components/wd-sticky/index.scss +1 -1
  258. package/components/wd-sticky/types.ts +1 -1
  259. package/components/wd-sticky/wd-sticky.vue +21 -29
  260. package/components/wd-sticky-box/index.scss +1 -1
  261. package/components/wd-sticky-box/wd-sticky-box.vue +7 -6
  262. package/components/wd-swipe-action/index.scss +1 -1
  263. package/components/wd-swipe-action/types.ts +2 -5
  264. package/components/wd-swipe-action/wd-swipe-action.vue +9 -22
  265. package/components/wd-swiper-nav/index.scss +22 -16
  266. package/components/wd-swiper-nav/types.ts +1 -9
  267. package/components/wd-swiper-nav/wd-swiper-nav.vue +2 -5
  268. package/components/wd-switch/index.scss +15 -15
  269. package/components/wd-switch/types.ts +8 -6
  270. package/components/wd-switch/wd-switch.vue +15 -15
  271. package/components/wd-tab/index.scss +11 -3
  272. package/components/wd-tab/types.ts +11 -1
  273. package/components/wd-tab/wd-tab.vue +28 -36
  274. package/components/wd-tabbar/index.scss +12 -7
  275. package/components/wd-tabbar/types.ts +3 -18
  276. package/components/wd-tabbar/wd-tabbar.vue +10 -23
  277. package/components/wd-tabbar-item/index.scss +15 -12
  278. package/components/wd-tabbar-item/types.ts +3 -3
  279. package/components/wd-tabbar-item/wd-tabbar-item.vue +11 -13
  280. package/components/wd-table/index.scss +40 -9
  281. package/components/wd-table/types.ts +13 -15
  282. package/components/wd-table/wd-table.vue +123 -94
  283. package/components/wd-table-col/index.scss +6 -4
  284. package/components/wd-table-col/types.ts +1 -1
  285. package/components/wd-table-col/wd-table-col.vue +12 -12
  286. package/components/wd-tag/index.scss +19 -19
  287. package/components/wd-tag/types.ts +1 -1
  288. package/components/wd-tag/wd-tag.vue +14 -20
  289. package/components/wd-text/index.scss +4 -1
  290. package/components/wd-text/types.ts +4 -4
  291. package/components/wd-text/wd-text.vue +12 -11
  292. package/components/wd-textarea/index.scss +51 -41
  293. package/components/wd-textarea/types.ts +24 -34
  294. package/components/wd-textarea/wd-textarea.vue +59 -66
  295. package/components/wd-toast/index.scss +31 -18
  296. package/components/wd-toast/index.ts +26 -43
  297. package/components/wd-toast/types.ts +117 -3
  298. package/components/wd-toast/wd-toast.vue +49 -69
  299. package/components/wd-tooltip/index.scss +21 -16
  300. package/components/wd-tooltip/types.ts +8 -3
  301. package/components/wd-tooltip/wd-tooltip.vue +17 -43
  302. package/components/wd-tour/index.scss +123 -0
  303. package/components/wd-tour/types.ts +153 -0
  304. package/components/wd-tour/wd-tour.vue +509 -0
  305. package/components/wd-transition/index.scss +39 -35
  306. package/components/wd-transition/types.ts +27 -9
  307. package/components/wd-transition/wd-transition.vue +45 -34
  308. package/components/wd-upload/index.scss +23 -21
  309. package/components/wd-upload/types.ts +43 -30
  310. package/components/wd-upload/wd-upload.vue +183 -247
  311. package/components/wd-video-preview/index.scss +9 -9
  312. package/components/wd-video-preview/types.ts +1 -1
  313. package/components/wd-video-preview/wd-video-preview.vue +18 -22
  314. package/components/wd-watermark/index.scss +7 -7
  315. package/components/wd-watermark/types.ts +2 -8
  316. package/components/wd-watermark/wd-watermark.vue +38 -135
  317. package/dayjs/constant.js +26 -0
  318. package/dayjs/index.d.ts +430 -0
  319. package/dayjs/index.js +542 -0
  320. package/dayjs/locale/en.js +13 -0
  321. package/dayjs/utils.js +59 -0
  322. package/global.d.ts +97 -91
  323. package/index.ts +2 -10
  324. package/locale/index.ts +3 -15
  325. package/locale/lang/ar-SA.ts +133 -0
  326. package/locale/lang/de-DE.ts +133 -0
  327. package/locale/lang/en-US.ts +31 -26
  328. package/locale/lang/es-ES.ts +133 -0
  329. package/locale/lang/fr-FR.ts +133 -0
  330. package/locale/lang/ja-JP.ts +133 -0
  331. package/locale/lang/ko-KR.ts +133 -0
  332. package/locale/lang/pt-PT.ts +133 -0
  333. package/locale/lang/ru-RU.ts +133 -0
  334. package/locale/lang/th-TH.ts +28 -22
  335. package/locale/lang/tr-TR.ts +138 -0
  336. package/locale/lang/ug-CN.ts +137 -0
  337. package/locale/lang/vi-VN.ts +27 -30
  338. package/locale/lang/zh-CN.ts +32 -22
  339. package/locale/lang/zh-HK.ts +18 -31
  340. package/locale/lang/zh-TW.ts +22 -31
  341. package/package.json +1 -1
  342. package/types/components/common/interceptor.d.ts +15 -0
  343. package/types/components/common/util.d.ts +61 -1
  344. package/types/components/composables/useCell.d.ts +1 -1
  345. package/types/components/composables/useLockScroll.d.ts +1 -2
  346. package/types/components/composables/useParent.d.ts +1 -1
  347. package/types/components/composables/usePopover.d.ts +2 -2
  348. package/types/components/composables/useUpload.d.ts +41 -0
  349. package/types/components/wd-action-sheet/types.d.ts +13 -4
  350. package/types/components/wd-action-sheet/wd-action-sheet.vue.d.ts +20 -11
  351. package/types/components/wd-backtop/types.d.ts +1 -9
  352. package/types/components/wd-backtop/wd-backtop.vue.d.ts +6 -25
  353. package/types/components/wd-badge/types.d.ts +3 -6
  354. package/types/components/wd-badge/wd-badge.vue.d.ts +7 -14
  355. package/types/components/wd-button/types.d.ts +44 -8
  356. package/types/components/wd-button/wd-button.vue.d.ts +13 -9
  357. package/types/components/wd-calendar/types.d.ts +24 -18
  358. package/types/components/wd-calendar/wd-calendar.vue.d.ts +48 -32
  359. package/types/components/wd-calendar-view/month/month.vue.d.ts +11 -3
  360. package/types/components/wd-calendar-view/month/types.d.ts +4 -0
  361. package/types/components/wd-calendar-view/monthPanel/month-panel.vue.d.ts +18 -12
  362. package/types/components/wd-calendar-view/monthPanel/types.d.ts +48 -6
  363. package/types/components/wd-calendar-view/types.d.ts +11 -4
  364. package/types/components/wd-calendar-view/utils.d.ts +3 -12
  365. package/types/components/wd-calendar-view/wd-calendar-view.vue.d.ts +1 -1
  366. package/types/components/wd-calendar-view/year/types.d.ts +4 -0
  367. package/types/components/wd-calendar-view/year/year.vue.d.ts +11 -3
  368. package/types/components/wd-cell/types.d.ts +37 -1
  369. package/types/components/wd-cell/wd-cell.vue.d.ts +53 -9
  370. package/types/components/wd-checkbox/wd-checkbox.vue.d.ts +2 -2
  371. package/types/components/wd-checkbox-group/wd-checkbox-group.vue.d.ts +2 -2
  372. package/types/components/wd-circle/wd-circle.vue.d.ts +3 -3
  373. package/types/components/wd-col-picker/types.d.ts +14 -0
  374. package/types/components/wd-col-picker/wd-col-picker.vue.d.ts +36 -19
  375. package/types/components/wd-collapse/types.d.ts +1 -5
  376. package/types/components/wd-collapse/wd-collapse.vue.d.ts +3 -11
  377. package/types/components/wd-collapse-item/types.d.ts +19 -1
  378. package/types/components/wd-collapse-item/wd-collapse-item.vue.d.ts +20 -1
  379. package/types/components/wd-config-provider/types.d.ts +64 -7
  380. package/types/components/wd-config-provider/wd-config-provider.vue.d.ts +1 -1
  381. package/types/components/wd-count-to/types.d.ts +11 -0
  382. package/types/components/wd-count-to/wd-count-to.vue.d.ts +13 -4
  383. package/types/components/wd-curtain/types.d.ts +56 -0
  384. package/types/components/wd-curtain/wd-curtain.vue.d.ts +152 -77
  385. package/types/components/wd-datetime-picker/types.d.ts +49 -15
  386. package/types/components/wd-datetime-picker/wd-datetime-picker.vue.d.ts +75 -38
  387. package/types/components/wd-datetime-picker-view/types.d.ts +36 -14
  388. package/types/components/wd-datetime-picker-view/util.d.ts +12 -0
  389. package/types/components/wd-datetime-picker-view/wd-datetime-picker-view.vue.d.ts +35 -9
  390. package/types/components/wd-divider/types.d.ts +32 -4
  391. package/types/components/wd-divider/wd-divider.vue.d.ts +30 -7
  392. package/types/components/wd-drop-menu/types.d.ts +3 -3
  393. package/types/components/wd-drop-menu/wd-drop-menu.vue.d.ts +8 -8
  394. package/types/components/wd-drop-menu-item/types.d.ts +27 -15
  395. package/types/components/wd-drop-menu-item/wd-drop-menu-item.vue.d.ts +47 -36
  396. package/types/components/wd-fab/types.d.ts +19 -3
  397. package/types/components/wd-fab/wd-fab.vue.d.ts +13 -1
  398. package/types/components/wd-floating-panel/type.d.ts +54 -0
  399. package/types/components/wd-floating-panel/wd-floating-panel.vue.d.ts +109 -0
  400. package/types/components/wd-form/types.d.ts +1 -1
  401. package/types/components/wd-form/wd-form.vue.d.ts +2 -2
  402. package/types/components/wd-form-item/wd-form-item.vue.d.ts +2 -2
  403. package/types/components/wd-grid/types.d.ts +5 -0
  404. package/types/components/wd-grid/wd-grid.vue.d.ts +2 -0
  405. package/types/components/wd-grid-item/types.d.ts +4 -1
  406. package/types/components/wd-grid-item/wd-grid-item.vue.d.ts +3 -3
  407. package/types/components/wd-icon/types.d.ts +1 -1
  408. package/types/components/wd-icon/wd-icon.vue.d.ts +3 -3
  409. package/types/components/wd-img/types.d.ts +4 -1
  410. package/types/components/wd-img/wd-img.vue.d.ts +11 -4
  411. package/types/components/wd-img-cropper/types.d.ts +7 -0
  412. package/types/components/wd-img-cropper/wd-img-cropper.vue.d.ts +12 -3
  413. package/types/components/wd-index-bar/type.d.ts +2 -1
  414. package/types/components/wd-index-bar/wd-index-bar.vue.d.ts +1 -5
  415. package/types/components/wd-input/types.d.ts +53 -37
  416. package/types/components/wd-input/wd-input.vue.d.ts +50 -52
  417. package/types/components/wd-input-number/types.d.ts +51 -6
  418. package/types/components/wd-input-number/wd-input-number.vue.d.ts +152 -125
  419. package/types/components/wd-keyboard/constants.d.ts +8 -0
  420. package/types/components/wd-keyboard/key/index.vue.d.ts +70 -0
  421. package/types/components/wd-keyboard/key/types.d.ts +23 -0
  422. package/types/components/wd-keyboard/types.d.ts +137 -0
  423. package/types/components/wd-keyboard/wd-keyboard.vue.d.ts +200 -0
  424. package/types/components/wd-loading/wd-loading.vue.d.ts +2 -2
  425. package/types/components/wd-loadmore/types.d.ts +7 -4
  426. package/types/components/wd-loadmore/wd-loadmore.vue.d.ts +5 -9
  427. package/types/components/wd-message-box/index.d.ts +3 -8
  428. package/types/components/wd-message-box/types.d.ts +36 -5
  429. package/types/components/wd-message-box/wd-message-box.vue.d.ts +18 -2
  430. package/types/components/wd-navbar/wd-navbar.vue.d.ts +3 -3
  431. package/types/components/wd-navbar-capsule/types.d.ts +12 -0
  432. package/types/components/wd-navbar-capsule/wd-navbar-capsule.vue.d.ts +27 -4
  433. package/types/components/wd-notice-bar/types.d.ts +9 -1
  434. package/types/components/wd-notice-bar/wd-notice-bar.vue.d.ts +7 -5
  435. package/types/components/wd-notify/types.d.ts +7 -0
  436. package/types/components/wd-notify/wd-notify.vue.d.ts +13 -4
  437. package/types/components/wd-number-keyboard/types.d.ts +7 -0
  438. package/types/components/wd-number-keyboard/wd-number-keyboard.vue.d.ts +18 -9
  439. package/types/components/wd-overlay/wd-overlay.vue.d.ts +2 -2
  440. package/types/components/wd-pagination/wd-pagination.vue.d.ts +1 -1
  441. package/types/components/wd-password-input/wd-password-input.vue.d.ts +2 -2
  442. package/types/components/wd-picker/types.d.ts +28 -2
  443. package/types/components/wd-picker/wd-picker.vue.d.ts +55 -19
  444. package/types/components/wd-picker-view/types.d.ts +10 -0
  445. package/types/components/wd-picker-view/wd-picker-view.vue.d.ts +15 -3
  446. package/types/components/wd-popover/wd-popover.vue.d.ts +4 -4
  447. package/types/components/wd-popup/types.d.ts +44 -5
  448. package/types/components/wd-popup/wd-popup.vue.d.ts +35 -24
  449. package/types/components/wd-progress/types.d.ts +6 -3
  450. package/types/components/wd-progress/wd-progress.vue.d.ts +4 -6
  451. package/types/components/wd-qr-code/uqrcode.vue.d.ts +3 -3
  452. package/types/components/wd-qr-code/wd-qr-code.vue.d.ts +4 -4
  453. package/types/components/wd-radio/types.d.ts +8 -0
  454. package/types/components/wd-radio/wd-radio.vue.d.ts +7 -0
  455. package/types/components/wd-radio-group/types.d.ts +7 -1
  456. package/types/components/wd-radio-group/wd-radio-group.vue.d.ts +11 -2
  457. package/types/components/wd-rate/types.d.ts +9 -0
  458. package/types/components/wd-rate/wd-rate.vue.d.ts +13 -4
  459. package/types/components/wd-root-portal/wd-root-portal.vue.d.ts +26 -0
  460. package/types/components/wd-search/types.d.ts +16 -1
  461. package/types/components/wd-search/wd-search.vue.d.ts +28 -8
  462. package/types/components/wd-segmented/types.d.ts +10 -1
  463. package/types/components/wd-segmented/wd-segmented.vue.d.ts +6 -4
  464. package/types/components/wd-select-picker/types.d.ts +37 -22
  465. package/types/components/wd-select-picker/wd-select-picker.vue.d.ts +59 -30
  466. package/types/components/wd-sidebar/types.d.ts +19 -3
  467. package/types/components/wd-sidebar/wd-sidebar.vue.d.ts +4 -2
  468. package/types/components/wd-signature/types.d.ts +252 -0
  469. package/types/components/wd-signature/wd-signature.vue.d.ts +229 -0
  470. package/types/components/wd-skeleton/types.d.ts +3 -4
  471. package/types/components/wd-skeleton/wd-skeleton.vue.d.ts +10 -10
  472. package/types/components/wd-slider/types.d.ts +39 -15
  473. package/types/components/wd-slider/wd-slider.vue.d.ts +12 -38
  474. package/types/components/wd-sort-button/wd-sort-button.vue.d.ts +3 -3
  475. package/types/components/wd-status-tip/types.d.ts +9 -0
  476. package/types/components/wd-status-tip/wd-status-tip.vue.d.ts +69 -49
  477. package/types/components/wd-steps/wd-steps.vue.d.ts +1 -1
  478. package/types/components/wd-sticky/wd-sticky.vue.d.ts +3 -7
  479. package/types/components/wd-swipe-action/wd-swipe-action.vue.d.ts +3 -3
  480. package/types/components/wd-swiper/wd-swiper.vue.d.ts +4 -4
  481. package/types/components/wd-swiper-nav/types.d.ts +0 -14
  482. package/types/components/wd-swiper-nav/wd-swiper-nav.vue.d.ts +0 -18
  483. package/types/components/wd-switch/types.d.ts +0 -1
  484. package/types/components/wd-switch/wd-switch.vue.d.ts +2 -5
  485. package/types/components/wd-tab/types.d.ts +16 -3
  486. package/types/components/wd-tab/wd-tab.vue.d.ts +12 -4
  487. package/types/components/wd-tabbar/types.d.ts +1 -1
  488. package/types/components/wd-tabbar/wd-tabbar.vue.d.ts +5 -5
  489. package/types/components/wd-tabbar-item/wd-tabbar-item.vue.d.ts +1 -1
  490. package/types/components/wd-table/types.d.ts +12 -8
  491. package/types/components/wd-table/wd-table.vue.d.ts +16 -13
  492. package/types/components/wd-table-col/wd-table-col.vue.d.ts +1 -1
  493. package/types/components/wd-tabs/wd-tabs.vue.d.ts +7 -7
  494. package/types/components/wd-tag/wd-tag.vue.d.ts +4 -4
  495. package/types/components/wd-text/types.d.ts +2 -2
  496. package/types/components/wd-text/wd-text.vue.d.ts +7 -7
  497. package/types/components/wd-textarea/types.d.ts +41 -39
  498. package/types/components/wd-textarea/wd-textarea.vue.d.ts +46 -46
  499. package/types/components/wd-toast/index.d.ts +1 -6
  500. package/types/components/wd-toast/types.d.ts +127 -5
  501. package/types/components/wd-toast/wd-toast.vue.d.ts +101 -0
  502. package/types/components/wd-tooltip/types.d.ts +1 -1
  503. package/types/components/wd-tooltip/wd-tooltip.vue.d.ts +7 -7
  504. package/types/components/wd-tour/types.d.ts +194 -0
  505. package/types/components/wd-tour/wd-tour.vue.d.ts +267 -0
  506. package/types/components/wd-transition/types.d.ts +22 -7
  507. package/types/components/wd-transition/wd-transition.vue.d.ts +33 -20
  508. package/types/components/wd-upload/types.d.ts +39 -10
  509. package/types/components/wd-upload/wd-upload.vue.d.ts +42 -16
  510. package/types/components/wd-watermark/wd-watermark.vue.d.ts +7 -7
  511. package/types/locale/index.d.ts +0 -3
  512. package/types/locale/lang/zh-CN.d.ts +9 -0
  513. package/components/wd-datetime-picker-view/index.scss +0 -0
  514. package/components/wd-form/index.scss +0 -10
  515. package/components/wd-upload/utils.ts +0 -152
  516. package/types/components/common/dayjs.d.ts +0 -26
  517. package/types/components/wd-upload/utils.d.ts +0 -11
  518. package/types/locale/lang/en-US.d.ts +0 -128
@@ -1,5 +1,5 @@
1
- @import '../common/abstracts/_mixin';
2
- @import '../common/abstracts/variable';
1
+ @import '../common/abstracts/_mixin.scss';
2
+ @import '../common/abstracts/variable.scss';
3
3
 
4
4
  .wot-theme-dark {
5
5
  @include b(search) {
@@ -32,11 +32,11 @@
32
32
 
33
33
  @include when(light) {
34
34
  background: $-dark-background4;
35
-
35
+
36
36
  .wd-search__block {
37
37
  background: $-dark-background7;
38
38
  }
39
-
39
+
40
40
  .wd-search__cover {
41
41
  background: $-dark-background7;
42
42
  }
@@ -46,38 +46,38 @@
46
46
 
47
47
  @include b(search) {
48
48
  display: flex;
49
- align-items: center;
50
49
  padding: $-search-padding;
50
+ align-items: center;
51
51
  background: #fff;
52
52
 
53
53
  @include e(block) {
54
- position: relative;
55
- display: flex;
56
54
  flex: 1;
57
- flex-direction: row;
58
- align-items: center;
59
55
  background-color: $-search-input-bg;
60
56
  border-radius: $-search-input-radius;
57
+ display: flex;
58
+ flex-direction: row;
59
+ align-items: center;
60
+ position: relative;
61
61
  }
62
62
  @include e(field) {
63
- position: relative;
64
- display: flex;
65
63
  flex: 1;
64
+ display: flex;
66
65
  flex-direction: row;
67
66
  align-items: center;
67
+ position: relative;
68
68
  }
69
69
  @include e(input) {
70
- z-index: 0;
71
- box-sizing: border-box;
72
70
  flex: 1;
73
71
  height: $-search-input-height;
72
+ box-sizing: border-box;
74
73
  padding: $-search-input-padding;
74
+ border: none;
75
+ background: transparent;
75
76
  font-size: $-search-input-fs;
76
- color: $-search-input-color;
77
77
  -webkit-appearance: none;
78
- background: transparent;
79
- border: none;
80
78
  outline: none;
79
+ color: $-search-input-color;
80
+ z-index: 0;
81
81
 
82
82
  @include lineEllipsis;
83
83
 
@@ -86,32 +86,32 @@
86
86
  }
87
87
  }
88
88
  @include e(cover) {
89
- flex-direction: row;
90
- align-items: center;
91
- justify-content: center;
92
89
  width: 100%;
93
90
  height: $-search-input-height;
94
- font-size: $-search-input-fs;
95
- line-height: $-search-input-height;
96
91
  background-color: $-search-input-bg;
92
+ line-height: $-search-input-height;
93
+ font-size: $-search-input-fs;
97
94
  border-radius: $-search-input-radius;
95
+ flex-direction: row;
96
+ justify-content: center;
97
+ align-items: center;
98
98
  }
99
99
  @include edeep(search-icon) {
100
100
  margin-right: 8px;
101
- font-size: $-search-icon-size;
102
101
  color: $-search-icon-color;
102
+ font-size: $-search-icon-size;
103
103
  }
104
104
  @include edeep(search-left-icon) {
105
105
  position: absolute;
106
+ font-size: $-search-icon-size;
106
107
  top: 50%;
107
108
  left: 16px;
108
- font-size: $-search-icon-size;
109
- color: $-search-icon-color;
110
109
  transform: translateY(-50%);
110
+ color: $-search-icon-color;
111
111
  }
112
112
  @include e(placeholder-txt) {
113
- font-size: $-search-input-fs;
114
113
  color: $-search-placeholder-color;
114
+ font-size: $-search-input-fs;
115
115
  }
116
116
  @include edeep(clear) {
117
117
  position: absolute;
@@ -120,14 +120,14 @@
120
120
  color: $-search-cancel-color;
121
121
  }
122
122
  @include edeep(clear-icon) {
123
- font-size: $-search-clear-icon-size;
124
123
  vertical-align: middle;
124
+ font-size: $-search-clear-icon-size;
125
125
  }
126
126
  @include e(cancel) {
127
- height: $-search-input-height;
128
127
  padding: $-search-cancel-padding;
129
- font-size: $-search-cancel-fs;
128
+ height: $-search-input-height;
130
129
  line-height: $-search-input-height;
130
+ font-size: $-search-cancel-fs;
131
131
  color: $-search-cancel-color;
132
132
  -webkit-tap-highlight-color: transparent;
133
133
  }
@@ -145,4 +145,4 @@
145
145
  @include when(without-cancel) {
146
146
  padding-right: $-search-side-padding;
147
147
  }
148
- }
148
+ }
@@ -1,8 +1,17 @@
1
- import { baseProps, makeBooleanProp, makeNumericProp, makeStringProp } from '../common/props'
1
+ /*
2
+ * @Author: weisheng
3
+ * @Date: 2024-09-01 15:42:04
4
+ * @LastEditTime: 2024-09-21 15:36:09
5
+ * @LastEditors: weisheng
6
+ * @Description:
7
+ * @FilePath: \wot-design-uni\src\uni_modules\wot-design-uni\components\wd-search\types.ts
8
+ * 记得注释
9
+ */
10
+ import { baseProps, makeBooleanProp, makeNumberProp, makeNumericProp, makeStringProp } from '../common/props'
2
11
 
3
12
  export const searchProps = {
4
13
  ...baseProps,
5
-
14
+ customInputClass: makeStringProp(''),
6
15
  /**
7
16
  * 输入框内容,双向绑定
8
17
  * 类型: string
@@ -56,7 +65,7 @@ export const searchProps = {
56
65
  * 类型: string / number
57
66
  * 默认值: -1
58
67
  */
59
- maxlength: makeNumericProp(-1),
68
+ maxlength: makeNumberProp(-1),
60
69
 
61
70
  /**
62
71
  * placeholder 居左边
@@ -80,4 +89,14 @@ export const searchProps = {
80
89
  * 最低版本: 0.1.63
81
90
  */
82
91
  focusWhenClear: makeBooleanProp(false),
92
+
93
+ /**
94
+ * 原生属性,指定 placeholder 的样式,目前仅支持color,font-size和font-weight
95
+ */
96
+ placeholderStyle: String,
97
+
98
+ /**
99
+ * 原生属性,指定 placeholder 的样式类
100
+ */
101
+ placeholderClass: makeStringProp('')
83
102
  }
@@ -1,54 +1,34 @@
1
1
  <template>
2
2
  <view :class="rootClass" :style="customStyle">
3
- <!--自定义label插槽-->
4
- <!--搜索框主体-->
5
3
  <view class="wd-search__block">
6
4
  <slot name="prefix"></slot>
7
5
  <view class="wd-search__field">
8
- <view
9
- v-if="!placeholderLeft"
10
- :style="coverStyle"
11
- class="wd-search__cover"
12
- @click="closeCover"
13
- >
6
+ <view v-if="!placeholderLeft" :style="coverStyle" class="wd-search__cover" @click="closeCover">
14
7
  <wd-icon name="search" custom-class="wd-search__search-icon"></wd-icon>
15
- <text class="wd-search__placeholder-txt">{{ placeholder || translate('search') }}</text>
8
+ <text :class="`wd-search__placeholder-txt ${placeholderClass}`">{{ placeholder || translate('search') }}</text>
16
9
  </view>
17
- <!--icon:search-->
18
- <wd-icon
19
- v-if="showInput || str || placeholderLeft"
20
- name="search"
21
- custom-class="wd-search__search-left-icon"
22
- ></wd-icon>
23
- <!--搜索框-->
10
+ <wd-icon v-if="showInput || inputValue || placeholderLeft" name="search" custom-class="wd-search__search-left-icon"></wd-icon>
24
11
  <input
25
- v-if="showInput || str || placeholderLeft"
12
+ v-if="showInput || inputValue || placeholderLeft"
26
13
  :placeholder="placeholder || translate('search')"
27
- placeholder-class="wd-search__placeholder-txt"
14
+ :placeholder-class="`wd-search__placeholder-txt ${placeholderClass}`"
15
+ :placeholder-style="placeholderStyle"
28
16
  confirm-type="search"
29
- v-model="str"
30
- class="wd-search__input"
31
- @focus="searchFocus"
32
- @input="inputValue"
33
- @blur="searchBlur"
34
- @confirm="search"
17
+ v-model="inputValue"
18
+ :class="['wd-search__input', customInputClass]"
19
+ @focus="handleFocus"
20
+ @input="handleInput"
21
+ @blur="handleBlur"
22
+ @confirm="handleConfirm"
35
23
  :disabled="disabled"
36
24
  :maxlength="maxlength"
37
25
  :focus="isFocused"
38
26
  />
39
- <!--icon:clear-->
40
- <wd-icon
41
- v-if="str"
42
- custom-class="wd-search__clear wd-search__clear-icon"
43
- name="error-fill"
44
- @click="clearSearch"
45
- />
27
+ <wd-icon v-if="inputValue" custom-class="wd-search__clear wd-search__clear-icon" name="error-fill" @click="handleClear" />
46
28
  </view>
47
29
  </view>
48
- <!--the button behind input,care for hideCancel without displaying-->
49
30
 
50
31
  <slot v-if="!hideCancel" name="suffix">
51
- <!--默认button-->
52
32
  <view class="wd-search__cancel" @click="handleCancel">
53
33
  {{ cancelTxt || translate('cancel') }}
54
34
  </view>
@@ -62,45 +42,38 @@ export default {
62
42
  options: {
63
43
  virtualHost: true,
64
44
  addGlobalClass: true,
65
- styleIsolation: 'shared',
66
- },
45
+ styleIsolation: 'shared'
46
+ }
67
47
  }
68
48
  </script>
69
49
 
70
50
  <script lang="ts" setup>
51
+ import wdIcon from '../wd-icon/wd-icon.vue'
71
52
  import { type CSSProperties, computed, onMounted, ref, watch } from 'vue'
72
- import { objToStyle, requestAnimationFrame } from '../common/util'
53
+ import { objToStyle, pause } from '../common/util'
73
54
  import { useTranslate } from '../composables/useTranslate'
74
55
  import { searchProps } from './types'
75
56
 
76
57
  const props = defineProps(searchProps)
77
- const emit = defineEmits([
78
- 'update:modelValue',
79
- 'change',
80
- 'clear',
81
- 'search',
82
- 'focus',
83
- 'blur',
84
- 'cancel',
85
- ])
58
+ const emit = defineEmits(['update:modelValue', 'change', 'clear', 'search', 'focus', 'blur', 'cancel'])
86
59
 
87
60
  const { translate } = useTranslate('search')
88
61
 
89
62
  const isFocused = ref<boolean>(false) // 是否聚焦中
90
63
  const showInput = ref<boolean>(false) // 是否显示输入框 用于实现聚焦的hack
91
- const str = ref('')
64
+ const inputValue = ref<string>('') // 输入框的值
92
65
  const showPlaceHolder = ref<boolean>(true)
93
66
  const clearing = ref<boolean>(false)
94
67
 
95
68
  watch(
96
69
  () => props.modelValue,
97
70
  (newValue) => {
98
- str.value = newValue
71
+ inputValue.value = newValue
99
72
  if (newValue) {
100
73
  showInput.value = true
101
74
  }
102
75
  },
103
- { immediate: true },
76
+ { immediate: true }
104
77
  )
105
78
 
106
79
  watch(
@@ -110,7 +83,7 @@ watch(
110
83
  if (props.disabled) return
111
84
  closeCover()
112
85
  }
113
- },
86
+ }
114
87
  )
115
88
 
116
89
  onMounted(() => {
@@ -125,113 +98,90 @@ const rootClass = computed(() => {
125
98
 
126
99
  const coverStyle = computed(() => {
127
100
  const coverStyle: CSSProperties = {
128
- display: str.value === '' && showPlaceHolder.value ? 'flex' : 'none',
101
+ display: inputValue.value === '' && showPlaceHolder.value ? 'flex' : 'none'
129
102
  }
130
103
 
131
104
  return objToStyle(coverStyle)
132
105
  })
133
106
 
134
- function hackFocus(focus: boolean) {
107
+ async function hackFocus(focus: boolean) {
135
108
  showInput.value = focus
136
- requestAnimationFrame(() => {
137
- isFocused.value = focus
138
- })
109
+ await pause()
110
+ isFocused.value = focus
139
111
  }
140
112
 
141
- function closeCover() {
113
+ async function closeCover() {
142
114
  if (props.disabled) return
143
- requestAnimationFrame()
144
- .then(() => requestAnimationFrame())
145
- .then(() => requestAnimationFrame())
146
- .then(() => {
147
- showPlaceHolder.value = false
148
- hackFocus(true)
149
- })
115
+ await pause(100)
116
+ showPlaceHolder.value = false
117
+ hackFocus(true)
150
118
  }
151
- /**
152
- * @description input的input事件handle
153
- * @param value
154
- */
155
- function inputValue(event: any) {
156
- str.value = event.detail.value
119
+
120
+ function handleInput(event: any) {
121
+ inputValue.value = event.detail.value
157
122
  emit('update:modelValue', event.detail.value)
158
123
  emit('change', {
159
- value: event.detail.value,
124
+ value: event.detail.value
160
125
  })
161
126
  }
162
- /**
163
- * @description 点击清空icon的handle
164
- */
165
- function clearSearch() {
166
- str.value = ''
167
- clearing.value = true
127
+
128
+ async function handleClear() {
129
+ inputValue.value = ''
168
130
  if (props.focusWhenClear) {
131
+ clearing.value = true
169
132
  isFocused.value = false
170
133
  }
171
- requestAnimationFrame()
172
- .then(() => requestAnimationFrame())
173
- .then(() => requestAnimationFrame())
174
- .then(() => {
175
- if (props.focusWhenClear) {
176
- showPlaceHolder.value = false
177
- hackFocus(true)
178
- } else {
179
- showPlaceHolder.value = true
180
- hackFocus(false)
181
- }
182
- emit('change', {
183
- value: '',
184
- })
185
- emit('update:modelValue', '')
186
- emit('clear')
187
- })
134
+ await pause()
135
+ if (props.focusWhenClear) {
136
+ showPlaceHolder.value = false
137
+ hackFocus(true)
138
+ } else {
139
+ showPlaceHolder.value = true
140
+ hackFocus(false)
141
+ }
142
+ emit('change', {
143
+ value: ''
144
+ })
145
+ emit('update:modelValue', '')
146
+ emit('clear')
188
147
  }
189
- /**
190
- * @description 点击搜索按钮时的handle
191
- * @param value
192
- */
193
- function search({ detail: { value } }: any) {
148
+
149
+ function handleConfirm({ detail: { value } }: any) {
194
150
  // 组件触发search事件
195
151
  emit('search', {
196
- value,
152
+ value
197
153
  })
198
154
  }
199
- /**
200
- * @description 输入框聚焦时的handle
201
- */
202
- function searchFocus() {
203
- if (clearing.value) {
204
- clearing.value = false
205
- return
206
- }
155
+
156
+ function handleFocus() {
207
157
  showPlaceHolder.value = false
208
158
  emit('focus', {
209
- value: str.value,
159
+ value: inputValue.value
210
160
  })
211
161
  }
212
- /**
213
- * @description 输入框失焦的handle
214
- */
215
- function searchBlur() {
216
- if (clearing.value) return
162
+
163
+ async function handleBlur() {
164
+ // 等待150毫秒,clear执行完毕
165
+ await pause(150)
166
+ if (clearing.value) {
167
+ clearing.value = false
168
+ return
169
+ }
217
170
  // 组件触发blur事件
218
- showPlaceHolder.value = !str.value
171
+ showPlaceHolder.value = !inputValue.value
219
172
  showInput.value = !showPlaceHolder.value
220
173
  isFocused.value = false
221
174
  emit('blur', {
222
- value: str.value,
175
+ value: inputValue.value
223
176
  })
224
177
  }
225
- /**
226
- * @description 点击取消搜索按钮的handle
227
- */
178
+
228
179
  function handleCancel() {
229
- // 组件触发cancel事件
230
180
  emit('cancel', {
231
- value: str.value,
181
+ value: inputValue.value
232
182
  })
233
183
  }
234
184
  </script>
235
185
  <style lang="scss" scoped>
236
- @import './index';
186
+ @import './index.scss';
237
187
  </style>
@@ -1,5 +1,5 @@
1
- @import './../common/abstracts/_mixin';
2
- @import './../common/abstracts/variable';
1
+ @import './../common/abstracts/_mixin.scss';
2
+ @import './../common/abstracts/variable.scss';
3
3
 
4
4
  .wot-theme-dark {
5
5
  @include b(segmented) {
@@ -28,33 +28,35 @@
28
28
  }
29
29
  }
30
30
  }
31
+
31
32
  }
32
33
  }
33
34
 
34
35
  @include b(segmented) {
35
36
  position: relative;
36
- box-sizing: border-box;
37
37
  display: flex;
38
38
  align-items: stretch;
39
39
  justify-items: flex-start;
40
40
  width: 100%;
41
- padding: $-segmented-padding;
42
41
  background-color: $-segmented-item-bg-color;
42
+ padding: $-segmented-padding;
43
43
  border-radius: 4px;
44
+ box-sizing: border-box;
45
+
44
46
 
45
47
  @include e(item) {
46
48
  position: relative;
47
- z-index: 1;
49
+ text-align: center;
50
+ border-radius: 4px;
48
51
  flex: 1;
49
52
  min-width: 0;
53
+ z-index: 1;
50
54
  min-height: 28px;
55
+ line-height: 28px;
51
56
  padding: 0 12px;
52
57
  font-size: 14px;
53
- font-weight: 400;
54
- line-height: 28px;
55
58
  color: $-segmented-item-color;
56
- text-align: center;
57
- border-radius: 4px;
59
+ font-weight: 400;
58
60
 
59
61
  @include when(active) {
60
62
  font-weight: 550;
@@ -62,27 +64,28 @@
62
64
 
63
65
  @include when(large) {
64
66
  min-height: 32px;
67
+ line-height: 32px;
65
68
  padding: 0 12px;
66
69
  font-size: 16px;
67
- line-height: 32px;
68
70
  }
69
71
 
72
+
70
73
  @include when(small) {
71
74
  min-height: 24px;
75
+ line-height: 24px;
72
76
  padding: 0 7px;
73
77
  font-size: 12px;
74
- line-height: 24px;
75
78
  }
76
79
 
77
80
  @include when(disabled) {
78
- color: $-segmented-item-disabled-color;
79
81
  cursor: no-drop;
82
+ color: $-segmented-item-disabled-color;
80
83
  }
81
84
 
82
85
  @include m(active) {
83
- height: calc(100% - $-segmented-padding * 2);
84
86
  background-color: $-segmented-item-acitve-bg;
85
87
  border-radius: 4px;
88
+ height: calc(100% - $-segmented-padding * 2);
86
89
  @include when(disabled) {
87
90
  opacity: 0.8;
88
91
  }
@@ -91,7 +94,8 @@
91
94
 
92
95
  @include e(item-label) {
93
96
  overflow: hidden;
94
- text-overflow: ellipsis;
95
97
  white-space: nowrap;
98
+ text-overflow: ellipsis;
96
99
  }
97
- }
100
+
101
+ }
@@ -1,13 +1,13 @@
1
1
  /*
2
2
  * @Author: weisheng
3
3
  * @Date: 2024-03-18 11:22:03
4
- * @LastEditTime: 2024-07-25 22:17:56
4
+ * @LastEditTime: 2024-11-24 23:04:55
5
5
  * @LastEditors: weisheng
6
6
  * @Description:
7
7
  * @FilePath: /wot-design-uni/src/uni_modules/wot-design-uni/components/wd-segmented/types.ts
8
8
  * 记得注释
9
9
  */
10
- import type { PropType } from 'vue'
10
+ import type { ComponentPublicInstance, ExtractPropTypes, PropType } from 'vue'
11
11
  import { baseProps, makeBooleanProp, makeRequiredProp, makeStringProp } from '../common/props'
12
12
 
13
13
  export type SegmentedType = 'large' | 'middle' | 'small'
@@ -55,7 +55,7 @@ export const segmentedProps = {
55
55
  options: {
56
56
  type: Array as PropType<string[] | number[] | SegmentedOption[]>,
57
57
  required: true,
58
- default: () => [],
58
+ default: () => []
59
59
  },
60
60
 
61
61
  /**
@@ -64,5 +64,17 @@ export const segmentedProps = {
64
64
  * 默认值: false
65
65
  * 最低版本: 0.1.23
66
66
  */
67
- vibrateShort: makeBooleanProp(false),
67
+ vibrateShort: makeBooleanProp(false)
68
68
  }
69
+
70
+ export type SegmentedExpose = {
71
+ /**
72
+ * 更新滑块偏移量
73
+ * @param animation 是否开启动画,默认开启
74
+ */
75
+ updateActiveStyle: (animation?: boolean) => void
76
+ }
77
+
78
+ export type SegmentedProps = ExtractPropTypes<typeof segmentedProps>
79
+
80
+ export type SegmentedInstance = ComponentPublicInstance<SegmentedProps, SegmentedExpose>