naive-ui 2.31.0 → 2.32.0

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 (398) hide show
  1. package/dist/index.js +3197 -1769
  2. package/dist/index.prod.js +1 -1
  3. package/es/_internal/scrollbar/src/Scrollbar.d.ts +5 -0
  4. package/es/_internal/scrollbar/src/Scrollbar.js +49 -26
  5. package/es/_internal/scrollbar/src/styles/index.cssr.js +1 -1
  6. package/es/_internal/scrollbar/src/styles/rtl.cssr.d.ts +2 -0
  7. package/es/_internal/scrollbar/src/styles/rtl.cssr.js +10 -0
  8. package/es/_internal/scrollbar/styles/index.d.ts +1 -0
  9. package/es/_internal/scrollbar/styles/index.js +1 -0
  10. package/es/_internal/scrollbar/styles/rtl.d.ts +3 -0
  11. package/es/_internal/scrollbar/styles/rtl.js +6 -0
  12. package/es/_internal/selection/src/Selection.js +4 -2
  13. package/es/_internal/selection/src/styles/index.cssr.js +4 -1
  14. package/es/_mixins/index.d.ts +1 -0
  15. package/es/_mixins/index.js +1 -0
  16. package/es/_utils/naive/extract-public-props.d.ts +4 -1
  17. package/es/auto-complete/src/AutoComplete.d.ts +1 -0
  18. package/es/avatar/src/Avatar.d.ts +0 -1
  19. package/es/avatar/src/Avatar.js +12 -10
  20. package/es/button/src/Button.js +3 -0
  21. package/es/carousel/src/Carousel.d.ts +16 -37
  22. package/es/carousel/src/Carousel.js +269 -272
  23. package/es/carousel/src/CarouselArrow.js +3 -5
  24. package/es/carousel/src/CarouselContext.d.ts +21 -0
  25. package/es/carousel/src/CarouselContext.js +11 -0
  26. package/es/carousel/src/CarouselDots.d.ts +1 -1
  27. package/es/carousel/src/CarouselDots.js +23 -31
  28. package/es/carousel/src/CarouselItem.d.ts +4 -4
  29. package/es/carousel/src/CarouselItem.js +17 -36
  30. package/es/carousel/src/interface.d.ts +12 -31
  31. package/es/carousel/src/interface.js +1 -3
  32. package/es/carousel/src/styles/index.cssr.js +8 -3
  33. package/es/carousel/src/{utils.d.ts → utils/duplicatedLogic.d.ts} +3 -8
  34. package/es/carousel/src/utils/duplicatedLogic.js +46 -0
  35. package/es/carousel/src/utils/event.d.ts +1 -0
  36. package/es/carousel/src/utils/event.js +3 -0
  37. package/es/carousel/src/utils/index.d.ts +6 -0
  38. package/es/carousel/src/{utils.js → utils/index.js} +3 -28
  39. package/es/checkbox/src/CheckboxGroup.d.ts +27 -22
  40. package/es/checkbox/src/CheckboxGroup.js +58 -28
  41. package/es/code/src/Code.d.ts +16 -0
  42. package/es/code/src/Code.js +53 -12
  43. package/es/code/src/styles/index.cssr.js +14 -2
  44. package/es/code/styles/dark.js +4 -2
  45. package/es/code/styles/light.d.ts +1 -0
  46. package/es/code/styles/light.js +4 -2
  47. package/es/components.d.ts +1 -0
  48. package/es/components.js +1 -0
  49. package/es/config-provider/src/ConfigProvider.d.ts +24 -3
  50. package/es/config-provider/src/internal-interface.d.ts +4 -0
  51. package/es/date-picker/src/DatePicker.d.ts +1 -0
  52. package/es/date-picker/src/panel/daterange.d.ts +0 -1
  53. package/es/date-picker/src/panel/daterange.js +1 -1
  54. package/es/date-picker/src/panel/datetimerange.d.ts +0 -1
  55. package/es/date-picker/src/panel/datetimerange.js +1 -1
  56. package/es/date-picker/src/panel/monthrange.d.ts +0 -1
  57. package/es/date-picker/src/panel/monthrange.js +1 -1
  58. package/es/date-picker/src/panel/use-dual-calendar.d.ts +0 -1
  59. package/es/date-picker/src/panel/use-dual-calendar.js +0 -11
  60. package/es/dialog/src/DialogEnvironment.d.ts +4 -0
  61. package/es/dialog/src/DialogEnvironment.js +11 -4
  62. package/es/dialog/src/DialogProvider.d.ts +1 -0
  63. package/es/dynamic-tags/src/DynamicTags.d.ts +1 -0
  64. package/es/image/src/utils.d.ts +1 -1
  65. package/es/input/src/Input.d.ts +1 -0
  66. package/es/input/src/Input.js +19 -8
  67. package/es/input/src/interface.d.ts +1 -0
  68. package/es/input/src/styles/input.cssr.js +1 -6
  69. package/es/input-number/src/InputNumber.d.ts +1 -0
  70. package/es/input-number/src/InputNumber.js +4 -0
  71. package/es/legacy-grid/src/Row.d.ts +1 -0
  72. package/es/legacy-grid/src/Row.js +8 -3
  73. package/es/legacy-grid/src/styles/rtl.cssr.d.ts +2 -0
  74. package/es/legacy-grid/src/styles/rtl.cssr.js +21 -0
  75. package/es/legacy-grid/styles/dark.d.ts +4 -0
  76. package/es/legacy-grid/styles/dark.js +6 -0
  77. package/es/legacy-grid/styles/index.d.ts +4 -0
  78. package/es/legacy-grid/styles/index.js +3 -0
  79. package/es/legacy-grid/styles/light.d.ts +4 -0
  80. package/es/legacy-grid/styles/light.js +6 -0
  81. package/es/legacy-grid/styles/rtl.d.ts +2 -0
  82. package/es/legacy-grid/styles/rtl.js +5 -0
  83. package/es/legacy-transfer/index.d.ts +3 -0
  84. package/es/legacy-transfer/index.js +1 -0
  85. package/es/legacy-transfer/src/Transfer.d.ts +3631 -0
  86. package/es/legacy-transfer/src/Transfer.js +214 -0
  87. package/es/legacy-transfer/src/TransferFilter.d.ts +509 -0
  88. package/es/legacy-transfer/src/TransferFilter.js +40 -0
  89. package/es/legacy-transfer/src/TransferHeader.d.ts +25 -0
  90. package/es/legacy-transfer/src/TransferHeader.js +47 -0
  91. package/es/legacy-transfer/src/TransferList.d.ts +556 -0
  92. package/es/legacy-transfer/src/TransferList.js +93 -0
  93. package/es/legacy-transfer/src/TransferListItem.d.ts +513 -0
  94. package/es/legacy-transfer/src/TransferListItem.js +65 -0
  95. package/es/legacy-transfer/src/interface.d.ts +31 -0
  96. package/es/legacy-transfer/src/interface.js +2 -0
  97. package/es/legacy-transfer/src/styles/index.cssr.d.ts +2 -0
  98. package/es/legacy-transfer/src/styles/index.cssr.js +215 -0
  99. package/es/legacy-transfer/src/use-transfer-data.d.ts +41 -0
  100. package/es/legacy-transfer/src/use-transfer-data.js +145 -0
  101. package/es/legacy-transfer/styles/_common.d.ts +5 -0
  102. package/es/legacy-transfer/styles/_common.js +4 -0
  103. package/es/legacy-transfer/styles/dark.d.ts +3 -0
  104. package/es/legacy-transfer/styles/dark.js +27 -0
  105. package/es/legacy-transfer/styles/index.d.ts +3 -0
  106. package/es/legacy-transfer/styles/index.js +2 -0
  107. package/es/legacy-transfer/styles/light.d.ts +363 -0
  108. package/es/legacy-transfer/styles/light.js +31 -0
  109. package/es/locales/common/deDE.js +11 -6
  110. package/es/locales/common/enGB.js +8 -1
  111. package/es/locales/common/enUS.d.ts +8 -1
  112. package/es/locales/common/enUS.js +8 -1
  113. package/es/locales/common/eo.js +10 -2
  114. package/es/locales/common/esAR.js +9 -1
  115. package/es/locales/common/frFR.js +9 -1
  116. package/es/locales/common/idID.js +9 -1
  117. package/es/locales/common/itIT.js +9 -1
  118. package/es/locales/common/jaJP.js +9 -1
  119. package/es/locales/common/koKR.js +9 -1
  120. package/es/locales/common/nbNO.js +9 -1
  121. package/es/locales/common/nlNL.js +9 -1
  122. package/es/locales/common/plPL.js +9 -1
  123. package/es/locales/common/ptBR.js +9 -1
  124. package/es/locales/common/ruRU.js +9 -1
  125. package/es/locales/common/skSK.js +9 -1
  126. package/es/locales/common/thTH.js +9 -1
  127. package/es/locales/common/ukUA.js +9 -1
  128. package/es/locales/common/viVN.js +9 -1
  129. package/es/locales/common/zhCN.js +8 -1
  130. package/es/locales/common/zhTW.js +9 -1
  131. package/es/log/src/Log.d.ts +10 -0
  132. package/es/log/styles/light.d.ts +1 -0
  133. package/es/mention/src/Mention.d.ts +1 -0
  134. package/es/notification/src/Notification.d.ts +11 -1
  135. package/es/notification/src/Notification.js +6 -4
  136. package/es/notification/src/NotificationEnvironment.d.ts +12 -0
  137. package/es/notification/src/NotificationEnvironment.js +27 -2
  138. package/es/notification/src/NotificationProvider.d.ts +7 -0
  139. package/es/notification/src/NotificationProvider.js +4 -2
  140. package/es/pagination/src/Pagination.d.ts +1 -0
  141. package/es/progress/src/Circle.js +3 -1
  142. package/es/select/src/Select.js +3 -0
  143. package/es/statistic/src/Statistic.d.ts +1 -0
  144. package/es/statistic/src/Statistic.js +9 -3
  145. package/es/statistic/src/styles/rtl.cssr.d.ts +2 -0
  146. package/es/statistic/src/styles/rtl.cssr.js +9 -0
  147. package/es/statistic/styles/index.d.ts +1 -0
  148. package/es/statistic/styles/index.js +1 -0
  149. package/es/statistic/styles/rtl.d.ts +2 -0
  150. package/es/statistic/styles/rtl.js +5 -0
  151. package/es/styles.d.ts +6 -3
  152. package/es/styles.js +6 -3
  153. package/es/themes/dark.js +4 -0
  154. package/es/themes/light.js +4 -0
  155. package/es/thing/src/Thing.js +9 -3
  156. package/es/thing/src/styles/rtl.cssr.d.ts +2 -0
  157. package/es/thing/src/styles/rtl.cssr.js +8 -0
  158. package/es/thing/styles/index.d.ts +1 -0
  159. package/es/thing/styles/index.js +1 -0
  160. package/es/thing/styles/rtl.d.ts +2 -0
  161. package/es/thing/styles/rtl.js +8 -0
  162. package/es/time-picker/src/TimePicker.d.ts +1 -0
  163. package/es/transfer/index.d.ts +1 -1
  164. package/es/transfer/src/Transfer.d.ts +210 -90
  165. package/es/transfer/src/Transfer.js +67 -106
  166. package/es/transfer/src/TransferFilter.d.ts +18 -21
  167. package/es/transfer/src/TransferFilter.js +2 -10
  168. package/es/transfer/src/TransferHeader.d.ts +10 -12
  169. package/es/transfer/src/TransferHeader.js +24 -29
  170. package/es/transfer/src/TransferList.d.ts +20 -29
  171. package/es/transfer/src/TransferList.js +15 -32
  172. package/es/transfer/src/TransferListItem.d.ts +32 -19
  173. package/es/transfer/src/TransferListItem.js +33 -29
  174. package/es/transfer/src/interface.d.ts +21 -15
  175. package/es/transfer/src/styles/index.cssr.js +75 -139
  176. package/es/transfer/src/use-transfer-data.d.ts +13 -31
  177. package/es/transfer/src/use-transfer-data.js +45 -121
  178. package/es/transfer/styles/_common.d.ts +11 -2
  179. package/es/transfer/styles/_common.js +11 -2
  180. package/es/transfer/styles/dark.js +8 -4
  181. package/es/transfer/styles/light.d.ts +36 -10
  182. package/es/transfer/styles/light.js +7 -5
  183. package/es/tree/src/Tree.d.ts +1 -0
  184. package/es/tree/src/Tree.js +22 -16
  185. package/es/tree/src/TreeNode.d.ts +1 -0
  186. package/es/tree/src/TreeNode.js +5 -3
  187. package/es/tree/src/styles/rtl.cssr.d.ts +2 -0
  188. package/es/tree/src/styles/rtl.cssr.js +17 -0
  189. package/es/tree/styles/index.d.ts +1 -0
  190. package/es/tree/styles/index.js +1 -0
  191. package/es/tree/styles/rtl.d.ts +2 -0
  192. package/es/tree/styles/rtl.js +5 -0
  193. package/es/upload/src/interface.d.ts +2 -2
  194. package/es/version.d.ts +1 -1
  195. package/es/version.js +1 -1
  196. package/es/watermark/src/Watermark.d.ts +13 -0
  197. package/es/watermark/src/Watermark.js +35 -14
  198. package/es/watermark/src/styles/index.cssr.js +13 -0
  199. package/lib/_internal/scrollbar/src/Scrollbar.d.ts +5 -0
  200. package/lib/_internal/scrollbar/src/Scrollbar.js +47 -24
  201. package/lib/_internal/scrollbar/src/styles/index.cssr.js +1 -1
  202. package/lib/_internal/scrollbar/src/styles/rtl.cssr.d.ts +2 -0
  203. package/lib/_internal/scrollbar/src/styles/rtl.cssr.js +17 -0
  204. package/lib/_internal/scrollbar/styles/index.d.ts +1 -0
  205. package/lib/_internal/scrollbar/styles/index.js +3 -1
  206. package/lib/_internal/scrollbar/styles/rtl.d.ts +3 -0
  207. package/lib/_internal/scrollbar/styles/rtl.js +12 -0
  208. package/lib/_internal/selection/src/Selection.js +4 -2
  209. package/lib/_internal/selection/src/styles/index.cssr.js +4 -1
  210. package/lib/_mixins/index.d.ts +1 -0
  211. package/lib/_mixins/index.js +3 -1
  212. package/lib/_utils/naive/extract-public-props.d.ts +4 -1
  213. package/lib/auto-complete/src/AutoComplete.d.ts +1 -0
  214. package/lib/avatar/src/Avatar.d.ts +0 -1
  215. package/lib/avatar/src/Avatar.js +12 -10
  216. package/lib/button/src/Button.js +3 -0
  217. package/lib/carousel/src/Carousel.d.ts +16 -37
  218. package/lib/carousel/src/Carousel.js +290 -270
  219. package/lib/carousel/src/CarouselArrow.js +2 -4
  220. package/lib/carousel/src/CarouselContext.d.ts +21 -0
  221. package/lib/carousel/src/CarouselContext.js +16 -0
  222. package/lib/carousel/src/CarouselDots.d.ts +1 -1
  223. package/lib/carousel/src/CarouselDots.js +22 -30
  224. package/lib/carousel/src/CarouselItem.d.ts +4 -4
  225. package/lib/carousel/src/CarouselItem.js +18 -35
  226. package/lib/carousel/src/interface.d.ts +12 -31
  227. package/lib/carousel/src/interface.js +0 -5
  228. package/lib/carousel/src/styles/index.cssr.js +8 -3
  229. package/lib/carousel/src/{utils.d.ts → utils/duplicatedLogic.d.ts} +3 -8
  230. package/lib/carousel/src/utils/duplicatedLogic.js +55 -0
  231. package/lib/carousel/src/utils/event.d.ts +1 -0
  232. package/lib/carousel/src/utils/event.js +7 -0
  233. package/lib/carousel/src/utils/index.d.ts +6 -0
  234. package/lib/carousel/src/utils/index.js +53 -0
  235. package/lib/checkbox/src/CheckboxGroup.d.ts +27 -22
  236. package/lib/checkbox/src/CheckboxGroup.js +56 -26
  237. package/lib/code/src/Code.d.ts +16 -0
  238. package/lib/code/src/Code.js +53 -12
  239. package/lib/code/src/styles/index.cssr.js +13 -1
  240. package/lib/code/styles/dark.js +4 -2
  241. package/lib/code/styles/light.d.ts +1 -0
  242. package/lib/code/styles/light.js +4 -2
  243. package/lib/components.d.ts +1 -0
  244. package/lib/components.js +1 -0
  245. package/lib/config-provider/src/ConfigProvider.d.ts +24 -3
  246. package/lib/config-provider/src/internal-interface.d.ts +4 -0
  247. package/lib/date-picker/src/DatePicker.d.ts +1 -0
  248. package/lib/date-picker/src/panel/daterange.d.ts +0 -1
  249. package/lib/date-picker/src/panel/daterange.js +1 -1
  250. package/lib/date-picker/src/panel/datetimerange.d.ts +0 -1
  251. package/lib/date-picker/src/panel/datetimerange.js +1 -1
  252. package/lib/date-picker/src/panel/monthrange.d.ts +0 -1
  253. package/lib/date-picker/src/panel/monthrange.js +1 -1
  254. package/lib/date-picker/src/panel/use-dual-calendar.d.ts +0 -1
  255. package/lib/date-picker/src/panel/use-dual-calendar.js +0 -11
  256. package/lib/dialog/src/DialogEnvironment.d.ts +4 -0
  257. package/lib/dialog/src/DialogEnvironment.js +11 -4
  258. package/lib/dialog/src/DialogProvider.d.ts +1 -0
  259. package/lib/dynamic-tags/src/DynamicTags.d.ts +1 -0
  260. package/lib/image/src/utils.d.ts +1 -1
  261. package/lib/input/src/Input.d.ts +1 -0
  262. package/lib/input/src/Input.js +19 -8
  263. package/lib/input/src/interface.d.ts +1 -0
  264. package/lib/input/src/styles/input.cssr.js +1 -6
  265. package/lib/input-number/src/InputNumber.d.ts +1 -0
  266. package/lib/input-number/src/InputNumber.js +4 -0
  267. package/lib/legacy-grid/src/Row.d.ts +1 -0
  268. package/lib/legacy-grid/src/Row.js +7 -2
  269. package/lib/legacy-grid/src/styles/rtl.cssr.d.ts +2 -0
  270. package/lib/legacy-grid/src/styles/rtl.cssr.js +28 -0
  271. package/lib/legacy-grid/styles/dark.d.ts +4 -0
  272. package/lib/legacy-grid/styles/dark.js +8 -0
  273. package/lib/legacy-grid/styles/index.d.ts +4 -0
  274. package/lib/legacy-grid/styles/index.js +12 -0
  275. package/lib/legacy-grid/styles/light.d.ts +4 -0
  276. package/lib/legacy-grid/styles/light.js +8 -0
  277. package/lib/legacy-grid/styles/rtl.d.ts +2 -0
  278. package/lib/legacy-grid/styles/rtl.js +11 -0
  279. package/lib/legacy-transfer/index.d.ts +3 -0
  280. package/lib/legacy-transfer/index.js +9 -0
  281. package/lib/legacy-transfer/src/Transfer.d.ts +3631 -0
  282. package/lib/legacy-transfer/src/Transfer.js +220 -0
  283. package/lib/legacy-transfer/src/TransferFilter.d.ts +509 -0
  284. package/lib/legacy-transfer/src/TransferFilter.js +42 -0
  285. package/lib/legacy-transfer/src/TransferHeader.d.ts +25 -0
  286. package/lib/legacy-transfer/src/TransferHeader.js +49 -0
  287. package/lib/legacy-transfer/src/TransferList.d.ts +556 -0
  288. package/lib/legacy-transfer/src/TransferList.js +98 -0
  289. package/lib/legacy-transfer/src/TransferListItem.d.ts +513 -0
  290. package/lib/legacy-transfer/src/TransferListItem.js +67 -0
  291. package/lib/legacy-transfer/src/interface.d.ts +31 -0
  292. package/lib/legacy-transfer/src/interface.js +5 -0
  293. package/lib/legacy-transfer/src/styles/index.cssr.d.ts +2 -0
  294. package/lib/legacy-transfer/src/styles/index.cssr.js +223 -0
  295. package/lib/legacy-transfer/src/use-transfer-data.d.ts +41 -0
  296. package/lib/legacy-transfer/src/use-transfer-data.js +149 -0
  297. package/lib/legacy-transfer/styles/_common.d.ts +5 -0
  298. package/lib/legacy-transfer/styles/_common.js +6 -0
  299. package/lib/legacy-transfer/styles/dark.d.ts +3 -0
  300. package/lib/legacy-transfer/styles/dark.js +32 -0
  301. package/lib/legacy-transfer/styles/index.d.ts +3 -0
  302. package/lib/legacy-transfer/styles/index.js +10 -0
  303. package/lib/legacy-transfer/styles/light.d.ts +363 -0
  304. package/lib/legacy-transfer/styles/light.js +36 -0
  305. package/lib/locales/common/deDE.js +11 -6
  306. package/lib/locales/common/enGB.js +8 -1
  307. package/lib/locales/common/enUS.d.ts +8 -1
  308. package/lib/locales/common/enUS.js +8 -1
  309. package/lib/locales/common/eo.js +10 -2
  310. package/lib/locales/common/esAR.js +9 -1
  311. package/lib/locales/common/frFR.js +9 -1
  312. package/lib/locales/common/idID.js +9 -1
  313. package/lib/locales/common/itIT.js +9 -1
  314. package/lib/locales/common/jaJP.js +9 -1
  315. package/lib/locales/common/koKR.js +9 -1
  316. package/lib/locales/common/nbNO.js +9 -1
  317. package/lib/locales/common/nlNL.js +9 -1
  318. package/lib/locales/common/plPL.js +9 -1
  319. package/lib/locales/common/ptBR.js +9 -1
  320. package/lib/locales/common/ruRU.js +9 -1
  321. package/lib/locales/common/skSK.js +9 -1
  322. package/lib/locales/common/thTH.js +9 -1
  323. package/lib/locales/common/ukUA.js +9 -1
  324. package/lib/locales/common/viVN.js +9 -1
  325. package/lib/locales/common/zhCN.js +8 -1
  326. package/lib/locales/common/zhTW.js +9 -1
  327. package/lib/log/src/Log.d.ts +10 -0
  328. package/lib/log/styles/light.d.ts +1 -0
  329. package/lib/mention/src/Mention.d.ts +1 -0
  330. package/lib/notification/src/Notification.d.ts +11 -1
  331. package/lib/notification/src/Notification.js +6 -4
  332. package/lib/notification/src/NotificationEnvironment.d.ts +12 -0
  333. package/lib/notification/src/NotificationEnvironment.js +27 -2
  334. package/lib/notification/src/NotificationProvider.d.ts +7 -0
  335. package/lib/notification/src/NotificationProvider.js +4 -2
  336. package/lib/pagination/src/Pagination.d.ts +1 -0
  337. package/lib/progress/src/Circle.js +3 -1
  338. package/lib/select/src/Select.js +3 -0
  339. package/lib/statistic/src/Statistic.d.ts +1 -0
  340. package/lib/statistic/src/Statistic.js +8 -2
  341. package/lib/statistic/src/styles/rtl.cssr.d.ts +2 -0
  342. package/lib/statistic/src/styles/rtl.cssr.js +16 -0
  343. package/lib/statistic/styles/index.d.ts +1 -0
  344. package/lib/statistic/styles/index.js +3 -1
  345. package/lib/statistic/styles/rtl.d.ts +2 -0
  346. package/lib/statistic/styles/rtl.js +11 -0
  347. package/lib/styles.d.ts +6 -3
  348. package/lib/styles.js +151 -142
  349. package/lib/themes/dark.js +82 -78
  350. package/lib/themes/light.js +82 -78
  351. package/lib/thing/src/Thing.js +8 -2
  352. package/lib/thing/src/styles/rtl.cssr.d.ts +2 -0
  353. package/lib/thing/src/styles/rtl.cssr.js +15 -0
  354. package/lib/thing/styles/index.d.ts +1 -0
  355. package/lib/thing/styles/index.js +3 -1
  356. package/lib/thing/styles/rtl.d.ts +2 -0
  357. package/lib/thing/styles/rtl.js +14 -0
  358. package/lib/time-picker/src/TimePicker.d.ts +1 -0
  359. package/lib/transfer/index.d.ts +1 -1
  360. package/lib/transfer/src/Transfer.d.ts +210 -90
  361. package/lib/transfer/src/Transfer.js +63 -102
  362. package/lib/transfer/src/TransferFilter.d.ts +18 -21
  363. package/lib/transfer/src/TransferFilter.js +2 -10
  364. package/lib/transfer/src/TransferHeader.d.ts +10 -12
  365. package/lib/transfer/src/TransferHeader.js +23 -28
  366. package/lib/transfer/src/TransferList.d.ts +20 -29
  367. package/lib/transfer/src/TransferList.js +14 -31
  368. package/lib/transfer/src/TransferListItem.d.ts +32 -19
  369. package/lib/transfer/src/TransferListItem.js +33 -29
  370. package/lib/transfer/src/interface.d.ts +21 -15
  371. package/lib/transfer/src/styles/index.cssr.js +74 -139
  372. package/lib/transfer/src/use-transfer-data.d.ts +13 -31
  373. package/lib/transfer/src/use-transfer-data.js +44 -120
  374. package/lib/transfer/styles/_common.d.ts +11 -2
  375. package/lib/transfer/styles/_common.js +11 -2
  376. package/lib/transfer/styles/dark.js +8 -4
  377. package/lib/transfer/styles/light.d.ts +36 -10
  378. package/lib/transfer/styles/light.js +7 -5
  379. package/lib/tree/src/Tree.d.ts +1 -0
  380. package/lib/tree/src/Tree.js +21 -15
  381. package/lib/tree/src/TreeNode.d.ts +1 -0
  382. package/lib/tree/src/TreeNode.js +5 -3
  383. package/lib/tree/src/styles/rtl.cssr.d.ts +2 -0
  384. package/lib/tree/src/styles/rtl.cssr.js +24 -0
  385. package/lib/tree/styles/index.d.ts +1 -0
  386. package/lib/tree/styles/index.js +3 -1
  387. package/lib/tree/styles/rtl.d.ts +2 -0
  388. package/lib/tree/styles/rtl.js +11 -0
  389. package/lib/upload/src/interface.d.ts +2 -2
  390. package/lib/version.d.ts +1 -1
  391. package/lib/version.js +1 -1
  392. package/lib/watermark/src/Watermark.d.ts +13 -0
  393. package/lib/watermark/src/Watermark.js +34 -13
  394. package/lib/watermark/src/styles/index.cssr.js +13 -0
  395. package/package.json +4 -3
  396. package/volar.d.ts +1 -0
  397. package/web-types.json +183 -1
  398. package/lib/carousel/src/utils.js +0 -69
@@ -7,9 +7,7 @@ exports.transferProps = void 0;
7
7
  const vue_1 = require("vue");
8
8
  const vooks_1 = require("vooks");
9
9
  const seemly_1 = require("seemly");
10
- const icons_1 = require("../../_internal/icons");
11
10
  const _internal_1 = require("../../_internal");
12
- const button_1 = require("../../button");
13
11
  const _mixins_1 = require("../../_mixins");
14
12
  const cssr_1 = require("../../_utils/cssr");
15
13
  const _utils_1 = require("../../_utils");
@@ -18,8 +16,8 @@ const TransferHeader_1 = __importDefault(require("./TransferHeader"));
18
16
  const TransferList_1 = __importDefault(require("./TransferList"));
19
17
  const TransferFilter_1 = __importDefault(require("./TransferFilter"));
20
18
  const use_transfer_data_1 = require("./use-transfer-data");
21
- const index_cssr_1 = __importDefault(require("./styles/index.cssr"));
22
19
  const interface_1 = require("./interface");
20
+ const index_cssr_1 = __importDefault(require("./styles/index.cssr"));
23
21
  exports.transferProps = Object.assign(Object.assign({}, _mixins_1.useTheme.props), { value: Array, defaultValue: {
24
22
  type: Array,
25
23
  default: null
@@ -38,20 +36,18 @@ exports.transferProps = Object.assign(Object.assign({}, _mixins_1.useTheme.props
38
36
  .toLowerCase()
39
37
  .indexOf(('' + pattern).toLowerCase());
40
38
  }
41
- }, size: String, 'onUpdate:value': [Function, Array], onUpdateValue: [Function, Array], onChange: {
42
- type: [Function, Array],
43
- validator: () => {
44
- if (process.env.NODE_ENV !== 'production') {
45
- (0, _utils_1.warn)('transfer', '`on-change` is deprecated, please use `on-update:value` instead.');
46
- }
47
- return true;
48
- },
49
- default: undefined
50
- } });
39
+ }, size: String, renderSourceLabel: Function, renderTargetLabel: Function, renderSourceList: Function, 'onUpdate:value': [Function, Array], onUpdateValue: [Function, Array], onChange: [Function, Array] });
51
40
  exports.default = (0, vue_1.defineComponent)({
52
41
  name: 'Transfer',
53
42
  props: exports.transferProps,
54
43
  setup(props) {
44
+ if (process.env.NODE_ENV !== 'production') {
45
+ (0, vue_1.watchEffect)(() => {
46
+ if (props.onChange !== undefined) {
47
+ (0, _utils_1.warnOnce)('transfer', '`on-change` is deprecated, please use `on-update:value` instead.');
48
+ }
49
+ });
50
+ }
55
51
  const { mergedClsPrefixRef } = (0, _mixins_1.useConfig)(props);
56
52
  const themeRef = (0, _mixins_1.useTheme)('Transfer', '-transfer', index_cssr_1.default, styles_1.transferLight, props, mergedClsPrefixRef);
57
53
  const formItem = (0, _mixins_1.useFormItem)(props);
@@ -61,7 +57,7 @@ exports.default = (0, vue_1.defineComponent)({
61
57
  const { self: { [(0, cssr_1.createKey)('itemHeight', size)]: itemSize } } = themeRef.value;
62
58
  return (0, seemly_1.depx)(itemSize);
63
59
  });
64
- const { uncontrolledValue: uncontrolledValueRef, mergedValue: mergedValueRef, avlSrcValueSet: avlSrcValueSetRef, avlTgtValueSet: avlTgtValueSetRef, tgtOpts: tgtOptsRef, srcOpts: srcOptsRef, filteredSrcOpts: filteredSrcOptsRef, filteredTgtOpts: filteredTgtOptsRef, srcCheckedValues: srcCheckedValuesRef, tgtCheckedValues: tgtCheckedValuesRef, srcCheckedStatus: srcCheckedStatusRef, tgtCheckedStatus: tgtCheckedStatusRef, srcPattern: srcPatternRef, tgtPattern: tgtPatternRef, isInputing: isInputingRef, fromButtonDisabled: fromButtonDisabledRef, toButtonDisabled: toButtonDisabledRef, handleInputFocus, handleInputBlur, handleTgtFilterUpdateValue, handleSrcFilterUpdateValue } = (0, use_transfer_data_1.useTransferData)(props, mergedDisabledRef);
60
+ const { uncontrolledValueRef, mergedValueRef, targetValueSetRef, valueSetForSelectAllRef, valueSetForUnselectAllRef, targetOptionsRef, filteredSrcOptionsRef, canNotSelectAnythingRef, canBeClearedRef, allCheckedRef, srcPatternRef, handleSrcFilterUpdateValue } = (0, use_transfer_data_1.useTransferData)(props);
65
61
  function doUpdateValue(value) {
66
62
  const { onUpdateValue, 'onUpdate:value': _onUpdateValue, onChange } = props;
67
63
  const { nTriggerFormInput, nTriggerFormChange } = formItem;
@@ -75,106 +71,68 @@ exports.default = (0, vue_1.defineComponent)({
75
71
  nTriggerFormInput();
76
72
  nTriggerFormChange();
77
73
  }
78
- function handleSrcHeaderCheck(value) {
79
- const { value: { checked, indeterminate } } = srcCheckedStatusRef;
80
- if (indeterminate || checked) {
81
- srcCheckedValuesRef.value = [];
82
- }
83
- else {
84
- srcCheckedValuesRef.value = Array.from(avlSrcValueSetRef.value);
85
- }
74
+ function handleClearAll() {
75
+ doUpdateValue([...valueSetForUnselectAllRef.value]);
86
76
  }
87
- function handleTgtHeaderCheck() {
88
- const { value: { checked, indeterminate } } = tgtCheckedStatusRef;
89
- if (indeterminate || checked) {
90
- tgtCheckedValuesRef.value = [];
91
- }
92
- else {
93
- tgtCheckedValuesRef.value = Array.from(avlTgtValueSetRef.value);
94
- }
95
- }
96
- function handleTgtCheckboxClick(checked, optionValue) {
97
- if (checked) {
98
- tgtCheckedValuesRef.value.push(optionValue);
99
- }
100
- else {
101
- const index = tgtCheckedValuesRef.value.findIndex((v) => v === optionValue);
102
- if (~index) {
103
- tgtCheckedValuesRef.value.splice(index, 1);
104
- }
105
- }
77
+ function handleCheckedAll() {
78
+ doUpdateValue([...valueSetForSelectAllRef.value]);
106
79
  }
107
- function handleSrcCheckboxClick(checked, optionValue) {
80
+ function handleItemCheck(checked, optionValue) {
108
81
  if (checked) {
109
- srcCheckedValuesRef.value.push(optionValue);
82
+ doUpdateValue([...(mergedValueRef.value || []), optionValue]);
110
83
  }
111
84
  else {
112
- const index = srcCheckedValuesRef.value.findIndex((v) => v === optionValue);
85
+ const index = (mergedValueRef.value || []).findIndex((v) => v === optionValue);
113
86
  if (~index) {
114
- srcCheckedValuesRef.value.splice(index, 1);
87
+ ;
88
+ (mergedValueRef.value || []).splice(index, 1);
115
89
  }
116
90
  }
117
91
  }
118
- function handleToTgtClick() {
119
- doUpdateValue(srcCheckedValuesRef.value.concat(mergedValueRef.value || []));
120
- srcCheckedValuesRef.value = [];
121
- }
122
- function handleToSrcClick() {
123
- const tgtCheckedValueSet = new Set(tgtCheckedValuesRef.value);
124
- doUpdateValue((mergedValueRef.value || []).filter((v) => !tgtCheckedValueSet.has(v)));
125
- tgtCheckedValuesRef.value = [];
92
+ function handleChecked(optionValueList) {
93
+ doUpdateValue(optionValueList);
126
94
  }
127
95
  (0, vue_1.provide)(interface_1.transferInjectionKey, {
96
+ targetValueSetRef,
128
97
  mergedClsPrefixRef,
129
- mergedSizeRef,
130
98
  disabledRef: mergedDisabledRef,
131
99
  mergedThemeRef: themeRef,
132
- srcCheckedValuesRef,
133
- tgtCheckedValuesRef,
134
- srcOptsRef,
135
- tgtOptsRef,
136
- srcCheckedStatusRef,
137
- tgtCheckedStatusRef,
138
- handleSrcCheckboxClick,
139
- handleTgtCheckboxClick
100
+ targetOptionsRef,
101
+ canNotSelectAnythingRef,
102
+ canBeClearedRef,
103
+ allCheckedRef,
104
+ srcOptionsLengthRef: (0, vue_1.computed)(() => props.options.length),
105
+ handleItemCheck,
106
+ renderSourceLabelRef: (0, vue_1.toRef)(props, 'renderSourceLabel'),
107
+ renderTargetLabelRef: (0, vue_1.toRef)(props, 'renderTargetLabel')
140
108
  });
141
- const { localeRef } = (0, _mixins_1.useLocale)('Transfer');
142
109
  return {
143
- locale: localeRef,
144
110
  mergedClsPrefix: mergedClsPrefixRef,
145
111
  mergedDisabled: mergedDisabledRef,
146
112
  itemSize: itemSizeRef,
147
113
  isMounted: (0, vooks_1.useIsMounted)(),
148
- isInputing: isInputingRef,
149
114
  mergedTheme: themeRef,
150
- filteredSrcOpts: filteredSrcOptsRef,
151
- filteredTgtOpts: filteredTgtOptsRef,
115
+ filteredSrcOpts: filteredSrcOptionsRef,
116
+ tgtOpts: targetOptionsRef,
152
117
  srcPattern: srcPatternRef,
153
- tgtPattern: tgtPatternRef,
154
- toButtonDisabled: toButtonDisabledRef,
155
- fromButtonDisabled: fromButtonDisabledRef,
156
- handleSrcHeaderCheck,
157
- handleTgtHeaderCheck,
158
- handleToSrcClick,
159
- handleToTgtClick,
160
- handleInputFocus,
161
- handleInputBlur,
162
- handleTgtFilterUpdateValue,
118
+ mergedSize: mergedSizeRef,
163
119
  handleSrcFilterUpdateValue,
120
+ handleCheckedAll,
121
+ handleClearAll,
122
+ handleItemCheck,
123
+ handleChecked,
164
124
  cssVars: (0, vue_1.computed)(() => {
165
125
  const { value: size } = mergedSizeRef;
166
- const { common: { cubicBezierEaseInOut, cubicBezierEaseIn, cubicBezierEaseOut }, self: { width, borderRadius, borderColor, listColor, headerColor, titleTextColor, titleTextColorDisabled, extraTextColor, filterDividerColor, itemTextColor, itemColorPending, itemTextColorDisabled, extraFontSize, titleFontWeight, iconColor, iconColorDisabled, [(0, cssr_1.createKey)('fontSize', size)]: fontSize, [(0, cssr_1.createKey)('itemHeight', size)]: itemHeight } } = themeRef.value;
126
+ const { common: { cubicBezierEaseInOut }, self: { borderRadius, borderColor, listColor, titleTextColor, titleTextColorDisabled, extraTextColor, itemTextColor, itemColorPending, itemTextColorDisabled, titleFontWeight, closeColorHover, closeColorPressed, closeIconColor, closeIconColorHover, closeIconColorPressed, closeIconSize, closeSize, dividerColor, extraTextColorDisabled, [(0, cssr_1.createKey)('extraFontSize', size)]: extraFontSize, [(0, cssr_1.createKey)('fontSize', size)]: fontSize, [(0, cssr_1.createKey)('titleFontSize', size)]: titleFontSize, [(0, cssr_1.createKey)('itemHeight', size)]: itemHeight, [(0, cssr_1.createKey)('headerHeight', size)]: headerHeight } } = themeRef.value;
167
127
  return {
168
128
  '--n-bezier': cubicBezierEaseInOut,
169
- '--n-bezier-ease-in': cubicBezierEaseIn,
170
- '--n-bezier-ease-out': cubicBezierEaseOut,
171
129
  '--n-border-color': borderColor,
172
130
  '--n-border-radius': borderRadius,
173
131
  '--n-extra-font-size': extraFontSize,
174
- '--n-filter-divider-color': filterDividerColor,
175
132
  '--n-font-size': fontSize,
176
- '--n-header-color': headerColor,
133
+ '--n-header-font-size': titleFontSize,
177
134
  '--n-header-extra-text-color': extraTextColor,
135
+ '--n-header-extra-text-color-disabled': extraTextColorDisabled,
178
136
  '--n-header-font-weight': titleFontWeight,
179
137
  '--n-header-text-color': titleTextColor,
180
138
  '--n-header-text-color-disabled': titleTextColorDisabled,
@@ -183,40 +141,43 @@ exports.default = (0, vue_1.defineComponent)({
183
141
  '--n-item-text-color': itemTextColor,
184
142
  '--n-item-text-color-disabled': itemTextColorDisabled,
185
143
  '--n-list-color': listColor,
186
- '--n-width': width,
187
- '--n-icon-color': iconColor,
188
- '--n-icon-color-disabled': iconColorDisabled
144
+ '--n-header-height': headerHeight,
145
+ '--n-close-size': closeSize,
146
+ '--n-close-icon-size': closeIconSize,
147
+ '--n-close-color-hover': closeColorHover,
148
+ '--n-close-color-pressed': closeColorPressed,
149
+ '--n-close-icon-color': closeIconColor,
150
+ '--n-close-icon-color-hover': closeIconColorHover,
151
+ '--n-close-icon-color-pressed': closeIconColorPressed,
152
+ '--n-divider-color': dividerColor
189
153
  };
190
154
  })
191
155
  };
192
156
  },
193
157
  render() {
194
- const { mergedClsPrefix } = this;
158
+ const { mergedClsPrefix, renderSourceList, mergedTheme } = this;
195
159
  return ((0, vue_1.h)("div", { class: [
196
160
  `${mergedClsPrefix}-transfer`,
197
161
  this.mergedDisabled && `${mergedClsPrefix}-transfer--disabled`,
198
162
  this.filterable && `${mergedClsPrefix}-transfer--filterable`
199
163
  ], style: this.cssVars },
200
- (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list` },
201
- (0, vue_1.h)(TransferHeader_1.default, { source: true, onChange: this.handleSrcHeaderCheck, title: this.sourceTitle || this.locale.sourceTitle }),
164
+ (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list ${mergedClsPrefix}-transfer-list--source` },
165
+ (0, vue_1.h)(TransferHeader_1.default, { source: true, title: this.sourceTitle, onCheckedAll: this.handleCheckedAll, onClearAll: this.handleClearAll, size: this.mergedSize }),
202
166
  (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-body` },
203
- this.filterable ? ((0, vue_1.h)(TransferFilter_1.default, { onUpdateValue: this.handleSrcFilterUpdateValue, value: this.srcPattern, disabled: this.mergedDisabled, placeholder: this.sourceFilterPlaceholder, onFocus: this.handleInputFocus, onBlur: this.handleInputBlur })) : null,
204
- (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-flex-container` },
205
- (0, vue_1.h)(TransferList_1.default, { source: true, options: this.filteredSrcOpts, disabled: this.mergedDisabled, virtualScroll: this.virtualScroll, isMounted: this.isMounted, isInputing: this.isInputing, itemSize: this.itemSize }))),
167
+ this.filterable ? ((0, vue_1.h)(TransferFilter_1.default, { onUpdateValue: this.handleSrcFilterUpdateValue, value: this.srcPattern, disabled: this.mergedDisabled, placeholder: this.sourceFilterPlaceholder })) : null,
168
+ (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-flex-container` }, renderSourceList ? ((0, vue_1.h)(_internal_1.NScrollbar, { theme: mergedTheme.peers.Scrollbar, themeOverrides: mergedTheme.peerOverrides.Scrollbar }, {
169
+ default: () => renderSourceList({
170
+ onCheck: this.handleChecked,
171
+ checkedOptions: this.tgtOpts,
172
+ pattern: this.srcPattern
173
+ })
174
+ })) : ((0, vue_1.h)(TransferList_1.default, { source: true, options: this.filteredSrcOpts, disabled: this.mergedDisabled, virtualScroll: this.virtualScroll, itemSize: this.itemSize })))),
206
175
  (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list__border` })),
207
- (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-gap` },
208
- (0, vue_1.h)(button_1.NButton, { disabled: this.toButtonDisabled || this.mergedDisabled, theme: this.mergedTheme.peers.Button, themeOverrides: this.mergedTheme.peerOverrides.Button, onClick: this.handleToTgtClick }, {
209
- icon: () => ((0, vue_1.h)(_internal_1.NBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => (0, vue_1.h)(icons_1.ChevronRightIcon, null) }))
210
- }),
211
- (0, vue_1.h)(button_1.NButton, { disabled: this.fromButtonDisabled || this.mergedDisabled, theme: this.mergedTheme.peers.Button, themeOverrides: this.mergedTheme.peerOverrides.Button, onClick: this.handleToSrcClick }, {
212
- icon: () => ((0, vue_1.h)(_internal_1.NBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => (0, vue_1.h)(icons_1.ChevronLeftIcon, null) }))
213
- })),
214
- (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list` },
215
- (0, vue_1.h)(TransferHeader_1.default, { onChange: this.handleTgtHeaderCheck, title: this.targetTitle || this.locale.targetTitle }),
176
+ (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list ${mergedClsPrefix}-transfer-list--target` },
177
+ (0, vue_1.h)(TransferHeader_1.default, { onClearAll: this.handleClearAll, size: this.mergedSize, title: this.targetTitle }),
216
178
  (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-body` },
217
- this.filterable ? ((0, vue_1.h)(TransferFilter_1.default, { onUpdateValue: this.handleTgtFilterUpdateValue, value: this.tgtPattern, disabled: this.mergedDisabled, placeholder: this.targetFilterPlaceholder, onFocus: this.handleInputFocus, onBlur: this.handleInputBlur })) : null,
218
179
  (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-flex-container` },
219
- (0, vue_1.h)(TransferList_1.default, { options: this.filteredTgtOpts, disabled: this.mergedDisabled, virtualScroll: this.virtualScroll, isMounted: this.isMounted, isInputing: this.isInputing, itemSize: this.itemSize }))),
180
+ (0, vue_1.h)(TransferList_1.default, { options: this.tgtOpts, disabled: this.mergedDisabled, virtualScroll: this.virtualScroll, itemSize: this.itemSize }))),
220
181
  (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list__border` }))));
221
182
  }
222
183
  });
@@ -3,14 +3,6 @@ declare const _default: import("vue").DefineComponent<{
3
3
  value: StringConstructor;
4
4
  placeholder: StringConstructor;
5
5
  disabled: BooleanConstructor;
6
- onFocus: {
7
- type: PropType<() => void>;
8
- required: true;
9
- };
10
- onBlur: {
11
- type: PropType<() => void>;
12
- required: true;
13
- };
14
6
  onUpdateValue: {
15
7
  type: PropType<(value: string | null) => void>;
16
8
  required: true;
@@ -131,21 +123,34 @@ declare const _default: import("vue").DefineComponent<{
131
123
  fontSizeMedium: string;
132
124
  fontSizeLarge: string;
133
125
  borderRadius: string;
126
+ dividerColor: string;
134
127
  borderColor: string;
135
128
  listColor: string;
136
129
  headerColor: string;
137
130
  titleTextColor: string;
138
131
  titleTextColorDisabled: string;
139
132
  extraTextColor: string;
140
- filterDividerColor: string;
133
+ extraTextColorDisabled: string;
141
134
  itemTextColor: string;
142
135
  itemTextColorDisabled: string;
143
136
  itemColorPending: string;
144
137
  titleFontWeight: string;
145
- iconColor: string;
146
- iconColorDisabled: string;
147
- extraFontSize: string;
148
- width: string;
138
+ closeColorHover: string;
139
+ closeColorPressed: string;
140
+ closeIconColor: string;
141
+ closeIconColorHover: string;
142
+ closeIconColorPressed: string;
143
+ extraFontSizeSmall: string;
144
+ extraFontSizeMedium: string;
145
+ extraFontSizeLarge: string;
146
+ titleFontSizeSmall: string;
147
+ titleFontSizeMedium: string;
148
+ titleFontSizeLarge: string;
149
+ closeSize: string;
150
+ closeIconSize: string;
151
+ headerHeightSmall: string;
152
+ headerHeightMedium: string;
153
+ headerHeightLarge: string;
149
154
  };
150
155
  peers: {
151
156
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
@@ -491,14 +496,6 @@ declare const _default: import("vue").DefineComponent<{
491
496
  value: StringConstructor;
492
497
  placeholder: StringConstructor;
493
498
  disabled: BooleanConstructor;
494
- onFocus: {
495
- type: PropType<() => void>;
496
- required: true;
497
- };
498
- onBlur: {
499
- type: PropType<() => void>;
500
- required: true;
501
- };
502
499
  onUpdateValue: {
503
500
  type: PropType<(value: string | null) => void>;
504
501
  required: true;
@@ -11,14 +11,6 @@ exports.default = (0, vue_1.defineComponent)({
11
11
  value: String,
12
12
  placeholder: String,
13
13
  disabled: Boolean,
14
- onFocus: {
15
- type: Function,
16
- required: true
17
- },
18
- onBlur: {
19
- type: Function,
20
- required: true
21
- },
22
14
  onUpdateValue: {
23
15
  type: Function,
24
16
  required: true
@@ -35,8 +27,8 @@ exports.default = (0, vue_1.defineComponent)({
35
27
  render() {
36
28
  const { mergedTheme, mergedClsPrefix } = this;
37
29
  return ((0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-filter` },
38
- (0, vue_1.h)(input_1.NInput, { value: this.value, onUpdateValue: this.onUpdateValue, disabled: this.disabled, theme: mergedTheme.peers.Input, themeOverrides: mergedTheme.peerOverrides.Input, clearable: true, size: "small", placeholder: this.placeholder, onFocus: this.onFocus, onBlur: this.onBlur }, {
39
- 'clear-icon-placeholder': () => ((0, vue_1.h)(_internal_1.NBaseIcon, { clsPrefix: mergedClsPrefix, class: `${mergedClsPrefix}-transfer-icon` }, { default: () => (0, vue_1.h)(icons_1.SearchIcon, null) }))
30
+ (0, vue_1.h)(input_1.NInput, { value: this.value, onUpdateValue: this.onUpdateValue, disabled: this.disabled, placeholder: this.placeholder, theme: mergedTheme.peers.Input, themeOverrides: mergedTheme.peerOverrides.Input, clearable: true, size: "small" }, {
31
+ 'clear-icon-placeholder': () => ((0, vue_1.h)(_internal_1.NBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => (0, vue_1.h)(icons_1.SearchIcon, null) }))
40
32
  })));
41
33
  }
42
34
  });
@@ -1,23 +1,21 @@
1
1
  import { PropType } from 'vue';
2
2
  declare const _default: import("vue").DefineComponent<{
3
- source: {
4
- type: BooleanConstructor;
5
- default: boolean;
6
- };
7
- onChange: {
8
- type: PropType<(value: boolean) => void>;
3
+ size: {
4
+ type: PropType<"small" | "medium" | "large">;
9
5
  required: true;
10
6
  };
7
+ source: BooleanConstructor;
8
+ onCheckedAll: PropType<() => void>;
9
+ onClearAll: PropType<() => void>;
11
10
  title: StringConstructor;
12
11
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
13
- source: {
14
- type: BooleanConstructor;
15
- default: boolean;
16
- };
17
- onChange: {
18
- type: PropType<(value: boolean) => void>;
12
+ size: {
13
+ type: PropType<"small" | "medium" | "large">;
19
14
  required: true;
20
15
  };
16
+ source: BooleanConstructor;
17
+ onCheckedAll: PropType<() => void>;
18
+ onClearAll: PropType<() => void>;
21
19
  title: StringConstructor;
22
20
  }>>, {
23
21
  source: boolean;
@@ -1,49 +1,44 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const vue_1 = require("vue");
4
- const checkbox_1 = require("../../checkbox");
4
+ const button_1 = require("../../button");
5
+ const _mixins_1 = require("../../_mixins");
5
6
  const interface_1 = require("./interface");
6
7
  exports.default = (0, vue_1.defineComponent)({
7
8
  name: 'TransferHeader',
8
9
  props: {
9
- source: {
10
- type: Boolean,
11
- default: false
12
- },
13
- onChange: {
14
- type: Function,
10
+ size: {
11
+ type: String,
15
12
  required: true
16
13
  },
14
+ source: Boolean,
15
+ onCheckedAll: Function,
16
+ onClearAll: Function,
17
17
  title: String
18
18
  },
19
19
  setup(props) {
20
- const { srcOptsRef, tgtOptsRef, srcCheckedStatusRef, tgtCheckedStatusRef, srcCheckedValuesRef, tgtCheckedValuesRef, mergedThemeRef, disabledRef, mergedClsPrefixRef
20
+ const { targetOptionsRef, canNotSelectAnythingRef, canBeClearedRef, allCheckedRef, mergedThemeRef, disabledRef, mergedClsPrefixRef, srcOptionsLengthRef
21
21
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
22
22
  } = (0, vue_1.inject)(interface_1.transferInjectionKey);
23
- const checkboxPropsRef = (0, vue_1.computed)(() => {
24
- const { source } = props;
25
- if (source) {
26
- return srcCheckedStatusRef.value;
27
- }
28
- else {
29
- return tgtCheckedStatusRef.value;
30
- }
31
- });
23
+ const { localeRef } = (0, _mixins_1.useLocale)('Transfer');
32
24
  return () => {
33
- const { source } = props;
34
- const { value: checkboxProps } = checkboxPropsRef;
25
+ const { source, onClearAll, onCheckedAll } = props;
35
26
  const { value: mergedTheme } = mergedThemeRef;
36
27
  const { value: mergedClsPrefix } = mergedClsPrefixRef;
28
+ const { value: locale } = localeRef;
29
+ const buttonSize = props.size === 'large' ? 'small' : 'tiny';
30
+ const { title } = props;
37
31
  return ((0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-header` },
38
- (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-header__checkbox` },
39
- (0, vue_1.h)(checkbox_1.NCheckbox, { theme: mergedTheme.peers.Checkbox, themeOverrides: mergedTheme.peerOverrides.Checkbox, checked: checkboxProps.checked, indeterminate: checkboxProps.indeterminate, disabled: checkboxProps.disabled || disabledRef.value, onUpdateChecked: props.onChange })),
40
- (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-header__header` }, props.title),
41
- (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-header__extra` },
42
- source
43
- ? srcCheckedValuesRef.value.length
44
- : tgtCheckedValuesRef.value.length,
45
- "/",
46
- source ? srcOptsRef.value.length : tgtOptsRef.value.length)));
32
+ title && ((0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-header__title` }, title)),
33
+ source && ((0, vue_1.h)(button_1.NButton, { class: `${mergedClsPrefix}-transfer-list-header__button`, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, size: buttonSize, tertiary: true, onClick: allCheckedRef.value ? onClearAll : onCheckedAll, disabled: canNotSelectAnythingRef.value || disabledRef.value }, {
34
+ default: () => allCheckedRef.value ? locale.unselectAll : locale.selectAll
35
+ })),
36
+ !source && canBeClearedRef.value && ((0, vue_1.h)(button_1.NButton, { class: `${mergedClsPrefix}-transfer-list-header__button`, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, size: buttonSize, tertiary: true, onClick: onClearAll, disabled: disabledRef.value }, {
37
+ default: () => locale.clearAll
38
+ })),
39
+ (0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-header__extra` }, source
40
+ ? locale.total(srcOptionsLengthRef.value)
41
+ : locale.selected(targetOptionsRef.value.length))));
47
42
  };
48
43
  }
49
44
  });
@@ -17,18 +17,7 @@ declare const _default: import("vue").DefineComponent<{
17
17
  type: BooleanConstructor;
18
18
  required: true;
19
19
  };
20
- isMounted: {
21
- type: BooleanConstructor;
22
- required: true;
23
- };
24
- isInputing: {
25
- type: BooleanConstructor;
26
- required: true;
27
- };
28
- source: {
29
- type: BooleanConstructor;
30
- default: boolean;
31
- };
20
+ source: BooleanConstructor;
32
21
  }, {
33
22
  mergedTheme: import("vue").Ref<{
34
23
  common: {
@@ -144,21 +133,34 @@ declare const _default: import("vue").DefineComponent<{
144
133
  fontSizeMedium: string;
145
134
  fontSizeLarge: string;
146
135
  borderRadius: string;
136
+ dividerColor: string;
147
137
  borderColor: string;
148
138
  listColor: string;
149
139
  headerColor: string;
150
140
  titleTextColor: string;
151
141
  titleTextColorDisabled: string;
152
142
  extraTextColor: string;
153
- filterDividerColor: string;
143
+ extraTextColorDisabled: string;
154
144
  itemTextColor: string;
155
145
  itemTextColorDisabled: string;
156
146
  itemColorPending: string;
157
147
  titleFontWeight: string;
158
- iconColor: string;
159
- iconColorDisabled: string;
160
- extraFontSize: string;
161
- width: string;
148
+ closeColorHover: string;
149
+ closeColorPressed: string;
150
+ closeIconColor: string;
151
+ closeIconColorHover: string;
152
+ closeIconColorPressed: string;
153
+ extraFontSizeSmall: string;
154
+ extraFontSizeMedium: string;
155
+ extraFontSizeLarge: string;
156
+ titleFontSizeSmall: string;
157
+ titleFontSizeMedium: string;
158
+ titleFontSizeLarge: string;
159
+ closeSize: string;
160
+ closeIconSize: string;
161
+ headerHeightSmall: string;
162
+ headerHeightMedium: string;
163
+ headerHeightLarge: string;
162
164
  };
163
165
  peers: {
164
166
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
@@ -538,18 +540,7 @@ declare const _default: import("vue").DefineComponent<{
538
540
  type: BooleanConstructor;
539
541
  required: true;
540
542
  };
541
- isMounted: {
542
- type: BooleanConstructor;
543
- required: true;
544
- };
545
- isInputing: {
546
- type: BooleanConstructor;
547
- required: true;
548
- };
549
- source: {
550
- type: BooleanConstructor;
551
- default: boolean;
552
- };
543
+ source: BooleanConstructor;
553
544
  }>>, {
554
545
  source: boolean;
555
546
  }>;
@@ -28,18 +28,7 @@ exports.default = (0, vue_1.defineComponent)({
28
28
  type: Boolean,
29
29
  required: true
30
30
  },
31
- isMounted: {
32
- type: Boolean,
33
- required: true
34
- },
35
- isInputing: {
36
- type: Boolean,
37
- required: true
38
- },
39
- source: {
40
- type: Boolean,
41
- default: false
42
- }
31
+ source: Boolean
43
32
  },
44
33
  setup() {
45
34
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
@@ -75,24 +64,18 @@ exports.default = (0, vue_1.defineComponent)({
75
64
  };
76
65
  },
77
66
  render() {
78
- const { mergedTheme, mergedClsPrefix, virtualScroll, syncVLScroller } = this;
79
- return ((0, vue_1.h)(vue_1.Fragment, null,
80
- (0, vue_1.h)(_internal_1.NScrollbar, { ref: "scrollerInstRef", theme: mergedTheme.peers.Scrollbar, themeOverrides: mergedTheme.peerOverrides.Scrollbar, container: virtualScroll ? this.scrollContainer : undefined, content: virtualScroll ? this.scrollContent : undefined }, {
81
- default: () => virtualScroll ? ((0, vue_1.h)(vueuc_1.VirtualList, { ref: "vlInstRef", style: { height: '100%' }, class: `${mergedClsPrefix}-transfer-list-content`, items: this.options, itemSize: this.itemSize, showScrollbar: false, onResize: syncVLScroller, onScroll: syncVLScroller, keyField: "value" }, {
82
- default: ({ item }) => {
83
- const { source, disabled } = this;
84
- return ((0, vue_1.h)(TransferListItem_1.default, { source: source, key: item.value, value: item.value, disabled: item.disabled || disabled, label: item.label }));
85
- }
86
- })) : ((0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-content` },
87
- (0, vue_1.h)(vue_1.TransitionGroup, { name: "item", appear: this.isMounted, css: !this.isInputing }, {
88
- default: () => {
89
- const { source, disabled } = this;
90
- return this.options.map((option) => ((0, vue_1.h)(TransferListItem_1.default, { source: source, key: option.value, value: option.value, disabled: option.disabled || disabled, label: option.label })));
91
- }
92
- })))
93
- }),
94
- (0, vue_1.h)(vue_1.Transition, { name: "fade-in-transition", appear: this.isMounted, css: !this.isInputing }, {
95
- default: () => this.options.length ? null : ((0, vue_1.h)(empty_1.NEmpty, { theme: mergedTheme.peers.Empty, themeOverrides: mergedTheme.peerOverrides.Empty }))
96
- })));
67
+ const { mergedTheme, options } = this;
68
+ if (options.length === 0) {
69
+ return ((0, vue_1.h)(empty_1.NEmpty, { theme: mergedTheme.peers.Empty, themeOverrides: mergedTheme.peerOverrides.Empty }));
70
+ }
71
+ const { mergedClsPrefix, virtualScroll, source, disabled, syncVLScroller } = this;
72
+ return ((0, vue_1.h)(_internal_1.NScrollbar, { ref: "scrollerInstRef", theme: mergedTheme.peers.Scrollbar, themeOverrides: mergedTheme.peerOverrides.Scrollbar, container: virtualScroll ? this.scrollContainer : undefined, content: virtualScroll ? this.scrollContent : undefined }, {
73
+ default: () => virtualScroll ? ((0, vue_1.h)(vueuc_1.VirtualList, { ref: "vlInstRef", style: { height: '100%' }, class: `${mergedClsPrefix}-transfer-list-content`, items: this.options, itemSize: this.itemSize, showScrollbar: false, onResize: syncVLScroller, onScroll: syncVLScroller, keyField: "value" }, {
74
+ default: ({ item }) => {
75
+ const { source, disabled } = this;
76
+ return ((0, vue_1.h)(TransferListItem_1.default, { source: source, key: item.value, value: item.value, disabled: item.disabled || disabled, label: item.label, option: item }));
77
+ }
78
+ })) : ((0, vue_1.h)("div", { class: `${mergedClsPrefix}-transfer-list-content` }, this.options.map((option) => ((0, vue_1.h)(TransferListItem_1.default, { source: source, key: option.value, value: option.value, disabled: option.disabled || disabled, label: option.label, option: option })))))
79
+ }));
97
80
  }
98
81
  });