naive-ui 2.30.6 → 2.31.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 (971) hide show
  1. package/README.zh-CN.md +2 -2
  2. package/dist/index.js +4233 -2556
  3. package/dist/index.prod.js +2 -2
  4. package/es/_internal/close/src/Close.js +1 -1
  5. package/es/_internal/scrollbar/src/Scrollbar.js +8 -2
  6. package/es/_internal/scrollbar/src/styles/index.cssr.js +1 -0
  7. package/es/_internal/select-menu/src/styles/index.cssr.js +1 -1
  8. package/es/_internal/selection/src/styles/index.cssr.js +1 -0
  9. package/es/_mixins/use-rtl.d.ts +1 -1
  10. package/es/_mixins/use-rtl.js +1 -1
  11. package/es/_utils/env/browser.d.ts +3 -0
  12. package/es/_utils/env/browser.js +4 -0
  13. package/es/_utils/env/is-native-lazy-load.d.ts +1 -0
  14. package/es/_utils/env/is-native-lazy-load.js +3 -0
  15. package/es/affix/index.d.ts +1 -1
  16. package/es/affix/index.js +1 -1
  17. package/es/alert/index.d.ts +1 -1
  18. package/es/alert/index.js +1 -1
  19. package/es/alert/src/Alert.d.ts +1 -1
  20. package/es/alert/src/Alert.js +2 -2
  21. package/es/anchor/index.d.ts +2 -2
  22. package/es/anchor/index.js +2 -2
  23. package/es/anchor/src/AnchorAdapter.d.ts +1 -1
  24. package/es/anchor/src/AnchorAdapter.js +1 -1
  25. package/es/anchor/src/Link.d.ts +1 -1
  26. package/es/anchor/src/Link.js +1 -1
  27. package/es/auto-complete/index.d.ts +1 -1
  28. package/es/auto-complete/index.js +1 -1
  29. package/es/auto-complete/src/AutoComplete.d.ts +1 -1
  30. package/es/auto-complete/src/AutoComplete.js +1 -1
  31. package/es/avatar/index.d.ts +1 -1
  32. package/es/avatar/index.js +1 -1
  33. package/es/avatar/src/Avatar.d.ts +13 -1
  34. package/es/avatar/src/Avatar.js +61 -8
  35. package/es/avatar-group/index.d.ts +1 -1
  36. package/es/avatar-group/index.js +1 -1
  37. package/es/avatar-group/src/AvatarGroup.d.ts +1 -1
  38. package/es/avatar-group/src/AvatarGroup.js +2 -2
  39. package/es/back-top/index.d.ts +1 -1
  40. package/es/back-top/index.js +1 -1
  41. package/es/back-top/src/BackTop.d.ts +1 -1
  42. package/es/back-top/src/BackTop.js +1 -1
  43. package/es/badge/index.d.ts +1 -1
  44. package/es/badge/index.js +1 -1
  45. package/es/badge/src/Badge.d.ts +1 -1
  46. package/es/badge/src/Badge.js +2 -2
  47. package/es/breadcrumb/index.d.ts +2 -2
  48. package/es/breadcrumb/index.js +2 -2
  49. package/es/breadcrumb/src/Breadcrumb.d.ts +1 -1
  50. package/es/breadcrumb/src/Breadcrumb.js +1 -1
  51. package/es/breadcrumb/src/BreadcrumbItem.d.ts +1 -1
  52. package/es/breadcrumb/src/BreadcrumbItem.js +1 -1
  53. package/es/breadcrumb/src/styles/index.cssr.js +1 -0
  54. package/es/button/index.d.ts +1 -1
  55. package/es/button/index.js +1 -1
  56. package/es/button/src/Button.d.ts +13 -4
  57. package/es/button/src/Button.js +8 -4
  58. package/es/button/src/styles/index.cssr.js +4 -0
  59. package/es/button-group/index.d.ts +1 -1
  60. package/es/button-group/index.js +1 -1
  61. package/es/button-group/src/ButtonGroup.d.ts +1 -1
  62. package/es/button-group/src/ButtonGroup.js +2 -2
  63. package/es/calendar/index.d.ts +1 -1
  64. package/es/calendar/index.js +1 -1
  65. package/es/calendar/src/Calendar.d.ts +1 -1
  66. package/es/calendar/src/Calendar.js +1 -1
  67. package/es/card/index.d.ts +1 -1
  68. package/es/card/index.js +1 -1
  69. package/es/card/src/Card.d.ts +2 -2
  70. package/es/card/src/Card.js +2 -2
  71. package/es/carousel/index.d.ts +1 -1
  72. package/es/carousel/index.js +1 -1
  73. package/es/carousel/src/Carousel.d.ts +1 -1
  74. package/es/carousel/src/Carousel.js +1 -1
  75. package/es/carousel/src/styles/index.cssr.js +1 -0
  76. package/es/cascader/index.d.ts +1 -1
  77. package/es/cascader/index.js +1 -1
  78. package/es/cascader/src/Cascader.d.ts +1 -1
  79. package/es/cascader/src/Cascader.js +1 -1
  80. package/es/cascader/src/utils.d.ts +1 -4
  81. package/es/cascader/src/utils.js +18 -28
  82. package/es/checkbox/index.d.ts +2 -2
  83. package/es/checkbox/index.js +2 -2
  84. package/es/checkbox/src/Checkbox.d.ts +1 -1
  85. package/es/checkbox/src/Checkbox.js +2 -2
  86. package/es/checkbox/src/CheckboxGroup.d.ts +1 -1
  87. package/es/checkbox/src/CheckboxGroup.js +1 -1
  88. package/es/checkbox/src/styles/index.cssr.js +2 -0
  89. package/es/code/index.d.ts +1 -1
  90. package/es/code/index.js +1 -1
  91. package/es/code/src/Code.d.ts +1 -1
  92. package/es/code/src/Code.js +1 -1
  93. package/es/collapse/index.d.ts +2 -2
  94. package/es/collapse/index.js +2 -2
  95. package/es/collapse/src/Collapse.d.ts +1 -1
  96. package/es/collapse/src/Collapse.js +2 -2
  97. package/es/collapse/src/CollapseItem.d.ts +1 -1
  98. package/es/collapse/src/CollapseItem.js +2 -2
  99. package/es/collapse-transition/index.d.ts +1 -1
  100. package/es/collapse-transition/index.js +1 -1
  101. package/es/collapse-transition/src/CollapseTransition.d.ts +2 -2
  102. package/es/collapse-transition/src/CollapseTransition.js +3 -3
  103. package/es/color-picker/index.d.ts +1 -1
  104. package/es/color-picker/index.js +1 -1
  105. package/es/color-picker/src/ColorPicker.d.ts +2 -2
  106. package/es/color-picker/src/ColorPicker.js +2 -2
  107. package/es/countdown/index.d.ts +2 -2
  108. package/es/countdown/index.js +1 -1
  109. package/es/countdown/src/Countdown.d.ts +9 -2
  110. package/es/countdown/src/Countdown.js +42 -26
  111. package/es/data-table/index.d.ts +1 -1
  112. package/es/data-table/index.js +1 -1
  113. package/es/data-table/src/TableParts/Body.d.ts +4 -0
  114. package/es/data-table/src/TableParts/Body.js +50 -34
  115. package/es/data-table/src/TableParts/BodyRadio.d.ts +30 -0
  116. package/es/data-table/src/TableParts/BodyRadio.js +30 -0
  117. package/es/data-table/src/TableParts/Header.js +2 -2
  118. package/es/data-table/src/interface.d.ts +2 -1
  119. package/es/data-table/src/use-check.d.ts +1 -1
  120. package/es/data-table/src/use-check.js +15 -3
  121. package/es/date-picker/index.d.ts +1 -1
  122. package/es/date-picker/index.js +1 -1
  123. package/es/date-picker/src/DatePicker.d.ts +41 -1
  124. package/es/date-picker/src/DatePicker.js +34 -13
  125. package/es/date-picker/src/config.d.ts +1 -1
  126. package/es/date-picker/src/panel/date.d.ts +4 -0
  127. package/es/date-picker/src/panel/daterange.d.ts +7 -1
  128. package/es/date-picker/src/panel/daterange.js +1 -1
  129. package/es/date-picker/src/panel/datetime.d.ts +4 -0
  130. package/es/date-picker/src/panel/datetimerange.d.ts +7 -1
  131. package/es/date-picker/src/panel/datetimerange.js +1 -1
  132. package/es/date-picker/src/panel/month.d.ts +4 -0
  133. package/es/date-picker/src/panel/month.js +1 -1
  134. package/es/date-picker/src/panel/monthrange.d.ts +11 -5
  135. package/es/date-picker/src/panel/monthrange.js +13 -7
  136. package/es/date-picker/src/panel/panelHeader.d.ts +8 -0
  137. package/es/date-picker/src/panel/use-calendar.d.ts +4 -0
  138. package/es/date-picker/src/panel/use-dual-calendar.d.ts +9 -3
  139. package/es/date-picker/src/panel/use-dual-calendar.js +26 -6
  140. package/es/date-picker/src/panel/use-panel-common.d.ts +4 -0
  141. package/es/date-picker/src/styles/index.cssr.js +4 -0
  142. package/es/date-picker/src/utils.d.ts +1 -1
  143. package/es/date-picker/src/utils.js +2 -2
  144. package/es/date-picker/styles/_common.d.ts +4 -0
  145. package/es/date-picker/styles/_common.js +5 -1
  146. package/es/date-picker/styles/light.d.ts +8 -0
  147. package/es/descriptions/index.d.ts +2 -2
  148. package/es/descriptions/index.js +2 -2
  149. package/es/descriptions/src/Descriptions.d.ts +2 -2
  150. package/es/descriptions/src/Descriptions.js +2 -2
  151. package/es/descriptions/src/DescriptionsItem.d.ts +2 -2
  152. package/es/descriptions/src/DescriptionsItem.js +2 -2
  153. package/es/dialog/index.d.ts +2 -1
  154. package/es/dialog/index.js +2 -1
  155. package/es/dialog/src/DialogProvider.d.ts +1 -1
  156. package/es/dialog/src/DialogProvider.js +1 -1
  157. package/es/divider/index.d.ts +1 -1
  158. package/es/divider/index.js +1 -1
  159. package/es/divider/src/Divider.d.ts +1 -1
  160. package/es/divider/src/Divider.js +1 -1
  161. package/es/drawer/index.d.ts +2 -2
  162. package/es/drawer/index.js +2 -2
  163. package/es/drawer/src/Drawer.d.ts +60 -27
  164. package/es/drawer/src/Drawer.js +39 -18
  165. package/es/drawer/src/DrawerBodyWrapper.d.ts +9 -0
  166. package/es/drawer/src/DrawerBodyWrapper.js +98 -3
  167. package/es/drawer/src/DrawerContent.d.ts +2 -1
  168. package/es/drawer/src/DrawerContent.js +1 -1
  169. package/es/drawer/src/interface.d.ts +2 -0
  170. package/es/drawer/src/styles/index.cssr.js +42 -5
  171. package/es/drawer/styles/light.d.ts +2 -0
  172. package/es/drawer/styles/light.js +3 -2
  173. package/es/dropdown/index.d.ts +2 -2
  174. package/es/dropdown/index.js +1 -1
  175. package/es/dropdown/src/Dropdown.d.ts +10 -2
  176. package/es/dropdown/src/Dropdown.js +15 -4
  177. package/es/dropdown/src/DropdownMenu.d.ts +3 -0
  178. package/es/dropdown/src/DropdownMenu.js +23 -15
  179. package/es/dropdown/src/DropdownOption.d.ts +5 -0
  180. package/es/dropdown/src/DropdownOption.js +32 -10
  181. package/es/dropdown/src/interface.d.ts +2 -1
  182. package/es/dropdown/src/styles/index.cssr.js +17 -11
  183. package/es/dynamic-input/index.d.ts +1 -1
  184. package/es/dynamic-input/index.js +1 -1
  185. package/es/dynamic-input/src/DynamicInput.d.ts +1 -1
  186. package/es/dynamic-input/src/DynamicInput.js +2 -2
  187. package/es/dynamic-tags/index.d.ts +1 -1
  188. package/es/dynamic-tags/index.js +1 -1
  189. package/es/dynamic-tags/src/DynamicTags.d.ts +1 -1
  190. package/es/dynamic-tags/src/DynamicTags.js +1 -1
  191. package/es/element/index.d.ts +1 -1
  192. package/es/element/index.js +1 -1
  193. package/es/element/src/Element.d.ts +1 -1
  194. package/es/element/src/Element.js +1 -1
  195. package/es/ellipsis/index.d.ts +1 -1
  196. package/es/ellipsis/index.js +1 -1
  197. package/es/ellipsis/src/Ellipsis.d.ts +1 -1
  198. package/es/ellipsis/src/Ellipsis.js +1 -1
  199. package/es/empty/index.d.ts +1 -1
  200. package/es/empty/index.js +1 -1
  201. package/es/empty/src/Empty.d.ts +1 -1
  202. package/es/empty/src/Empty.js +1 -1
  203. package/es/form/index.d.ts +3 -3
  204. package/es/form/index.js +3 -3
  205. package/es/form/src/Form.d.ts +1 -1
  206. package/es/form/src/Form.js +1 -1
  207. package/es/form/src/FormItemRow.d.ts +1 -1
  208. package/es/form/src/FormItemRow.js +1 -1
  209. package/es/form/src/styles/form-item.cssr.js +2 -0
  210. package/es/gradient-text/index.d.ts +1 -1
  211. package/es/gradient-text/index.js +1 -1
  212. package/es/gradient-text/src/GradientText.d.ts +1 -1
  213. package/es/gradient-text/src/GradientText.js +1 -1
  214. package/es/grid/index.d.ts +3 -3
  215. package/es/grid/index.js +3 -3
  216. package/es/grid/src/Grid.d.ts +1 -1
  217. package/es/grid/src/Grid.js +2 -2
  218. package/es/icon/index.d.ts +1 -1
  219. package/es/icon/index.js +1 -1
  220. package/es/icon/src/Icon.d.ts +1 -2
  221. package/es/icon/src/Icon.js +1 -1
  222. package/es/icon-wrapper/index.d.ts +1 -1
  223. package/es/icon-wrapper/index.js +1 -1
  224. package/es/icon-wrapper/src/IconWrapper.d.ts +1 -2
  225. package/es/icon-wrapper/src/IconWrapper.js +1 -1
  226. package/es/image/index.d.ts +2 -2
  227. package/es/image/index.js +2 -2
  228. package/es/image/src/Image.d.ts +1 -1
  229. package/es/image/src/Image.js +17 -10
  230. package/es/image/src/ImageGroup.d.ts +1 -1
  231. package/es/image/src/ImageGroup.js +1 -1
  232. package/es/image/src/styles/index.cssr.js +1 -0
  233. package/es/input/index.d.ts +3 -3
  234. package/es/input/index.js +3 -3
  235. package/es/input/src/Input.d.ts +1 -1
  236. package/es/input/src/Input.js +2 -2
  237. package/es/input/src/InputGroup.d.ts +1 -1
  238. package/es/input/src/InputGroup.js +1 -1
  239. package/es/input/src/InputGroupLabel.d.ts +1 -1
  240. package/es/input/src/InputGroupLabel.js +1 -1
  241. package/es/input/src/styles/input-group-label.cssr.js +1 -0
  242. package/es/input/src/styles/input.cssr.js +3 -0
  243. package/es/input-number/index.d.ts +1 -1
  244. package/es/input-number/index.js +1 -1
  245. package/es/input-number/src/InputNumber.d.ts +1 -1
  246. package/es/input-number/src/InputNumber.js +2 -2
  247. package/es/layout/index.d.ts +4 -4
  248. package/es/layout/index.js +4 -4
  249. package/es/layout/src/Layout.d.ts +1 -1
  250. package/es/layout/src/Layout.js +1 -1
  251. package/es/layout/src/LayoutFooter.d.ts +1 -1
  252. package/es/layout/src/LayoutFooter.js +1 -1
  253. package/es/layout/src/LayoutHeader.d.ts +1 -1
  254. package/es/layout/src/LayoutHeader.js +1 -1
  255. package/es/layout/src/LayoutSider.d.ts +1 -1
  256. package/es/layout/src/LayoutSider.js +1 -1
  257. package/es/legacy-grid/index.d.ts +2 -2
  258. package/es/legacy-grid/index.js +2 -2
  259. package/es/list/index.d.ts +1 -1
  260. package/es/list/index.js +1 -1
  261. package/es/list/src/List.d.ts +1 -1
  262. package/es/list/src/List.js +1 -1
  263. package/es/loading-bar/index.d.ts +1 -1
  264. package/es/loading-bar/index.js +1 -1
  265. package/es/loading-bar/src/LoadingBarProvider.d.ts +3 -3
  266. package/es/loading-bar/src/LoadingBarProvider.js +2 -2
  267. package/es/locales/common/ukUA.js +14 -18
  268. package/es/locales/common/viVN.d.ts +3 -0
  269. package/es/locales/common/viVN.js +113 -0
  270. package/es/locales/date/viVN.d.ts +3 -0
  271. package/es/locales/date/viVN.js +6 -0
  272. package/es/locales/index.d.ts +2 -0
  273. package/es/locales/index.js +2 -0
  274. package/es/log/index.d.ts +1 -1
  275. package/es/log/index.js +1 -1
  276. package/es/log/src/Log.d.ts +1 -1
  277. package/es/log/src/Log.js +1 -1
  278. package/es/mention/index.d.ts +1 -1
  279. package/es/mention/index.js +1 -1
  280. package/es/mention/src/Mention.d.ts +1 -1
  281. package/es/mention/src/Mention.js +1 -1
  282. package/es/menu/index.d.ts +1 -1
  283. package/es/menu/index.js +1 -1
  284. package/es/menu/src/Menu.d.ts +1 -1
  285. package/es/menu/src/Menu.js +1 -1
  286. package/es/message/index.d.ts +1 -1
  287. package/es/message/index.js +1 -1
  288. package/es/message/src/MessageProvider.d.ts +1 -1
  289. package/es/message/src/MessageProvider.js +1 -1
  290. package/es/modal/index.d.ts +1 -1
  291. package/es/modal/index.js +1 -1
  292. package/es/modal/src/Modal.d.ts +1 -1
  293. package/es/modal/src/Modal.js +1 -1
  294. package/es/modal/src/presetProps.d.ts +1 -1
  295. package/es/modal/src/styles/index.cssr.js +1 -0
  296. package/es/notification/index.d.ts +1 -1
  297. package/es/notification/index.js +1 -1
  298. package/es/notification/src/Notification.d.ts +4 -0
  299. package/es/notification/src/Notification.js +11 -4
  300. package/es/notification/src/NotificationContainer.d.ts +3 -0
  301. package/es/notification/src/NotificationContainer.js +1 -1
  302. package/es/notification/src/NotificationProvider.d.ts +28 -1
  303. package/es/notification/src/NotificationProvider.js +1 -1
  304. package/es/notification/src/styles/index.cssr.js +7 -6
  305. package/es/notification/src/styles/rtl.cssr.d.ts +2 -0
  306. package/es/notification/src/styles/rtl.cssr.js +22 -0
  307. package/es/notification/styles/_common.d.ts +3 -0
  308. package/es/notification/styles/_common.js +4 -1
  309. package/es/notification/styles/index.d.ts +1 -0
  310. package/es/notification/styles/index.js +1 -0
  311. package/es/notification/styles/light.d.ts +6 -0
  312. package/es/notification/styles/rtl.d.ts +2 -0
  313. package/es/notification/styles/rtl.js +5 -0
  314. package/es/number-animation/index.d.ts +1 -1
  315. package/es/number-animation/index.js +1 -1
  316. package/es/number-animation/src/NumberAnimation.d.ts +5 -1
  317. package/es/number-animation/src/NumberAnimation.js +5 -2
  318. package/es/page-header/index.d.ts +1 -1
  319. package/es/page-header/index.js +1 -1
  320. package/es/page-header/src/PageHeader.d.ts +1 -1
  321. package/es/page-header/src/PageHeader.js +2 -2
  322. package/es/pagination/index.d.ts +1 -1
  323. package/es/pagination/index.js +1 -1
  324. package/es/pagination/src/Pagination.d.ts +1 -1
  325. package/es/pagination/src/Pagination.js +2 -2
  326. package/es/pagination/src/styles/index.cssr.js +1 -0
  327. package/es/popconfirm/index.d.ts +1 -1
  328. package/es/popconfirm/index.js +1 -1
  329. package/es/popconfirm/src/Popconfirm.d.ts +4 -1
  330. package/es/popconfirm/src/Popconfirm.js +1 -1
  331. package/es/popover/index.d.ts +1 -1
  332. package/es/popover/index.js +1 -1
  333. package/es/popover/src/Popover.d.ts +8 -1
  334. package/es/popover/src/Popover.js +4 -2
  335. package/es/popover/src/PopoverBody.d.ts +6 -0
  336. package/es/popover/src/PopoverBody.js +23 -14
  337. package/es/popover/src/styles/index.cssr.js +19 -15
  338. package/es/popselect/index.d.ts +1 -1
  339. package/es/popselect/index.js +1 -1
  340. package/es/popselect/src/Popselect.d.ts +4 -1
  341. package/es/popselect/src/Popselect.js +1 -1
  342. package/es/progress/index.d.ts +1 -1
  343. package/es/progress/index.js +1 -1
  344. package/es/progress/src/Progress.d.ts +1 -1
  345. package/es/progress/src/Progress.js +1 -1
  346. package/es/radio/index.d.ts +3 -3
  347. package/es/radio/index.js +3 -3
  348. package/es/radio/src/Radio.d.ts +25 -0
  349. package/es/radio/src/Radio.js +2 -1
  350. package/es/radio/src/RadioButton.d.ts +25 -0
  351. package/es/radio/src/RadioButton.js +1 -0
  352. package/es/radio/src/RadioGroup.d.ts +1 -1
  353. package/es/radio/src/RadioGroup.js +2 -2
  354. package/es/radio/src/styles/radio-group.cssr.js +2 -0
  355. package/es/radio/src/styles/radio.cssr.js +1 -0
  356. package/es/rate/index.d.ts +1 -1
  357. package/es/rate/index.js +1 -1
  358. package/es/rate/src/Rate.d.ts +1 -1
  359. package/es/rate/src/Rate.js +1 -1
  360. package/es/result/index.d.ts +1 -1
  361. package/es/result/index.js +1 -1
  362. package/es/result/src/Result.d.ts +1 -1
  363. package/es/result/src/Result.js +1 -1
  364. package/es/scrollbar/index.d.ts +1 -1
  365. package/es/scrollbar/index.js +1 -1
  366. package/es/scrollbar/src/Scrollbar.d.ts +1 -1
  367. package/es/scrollbar/src/Scrollbar.js +1 -1
  368. package/es/select/index.d.ts +2 -2
  369. package/es/select/index.js +1 -1
  370. package/es/select/src/Select.d.ts +5 -5
  371. package/es/select/src/Select.js +11 -2
  372. package/es/select/src/interface.d.ts +1 -0
  373. package/es/skeleton/index.d.ts +1 -1
  374. package/es/skeleton/index.js +1 -1
  375. package/es/skeleton/src/Skeleton.d.ts +1 -1
  376. package/es/skeleton/src/Skeleton.js +1 -1
  377. package/es/slider/index.d.ts +1 -1
  378. package/es/slider/index.js +1 -1
  379. package/es/slider/src/Slider.d.ts +1 -1
  380. package/es/slider/src/Slider.js +1 -1
  381. package/es/slider/src/styles/index.cssr.js +1 -0
  382. package/es/space/index.d.ts +1 -1
  383. package/es/space/index.js +1 -1
  384. package/es/space/src/Space.d.ts +1 -1
  385. package/es/space/src/Space.js +2 -2
  386. package/es/spin/index.d.ts +1 -1
  387. package/es/spin/index.js +1 -1
  388. package/es/spin/src/Spin.d.ts +1 -1
  389. package/es/spin/src/Spin.js +1 -1
  390. package/es/spin/src/styles/index.cssr.js +1 -0
  391. package/es/statistic/index.d.ts +1 -1
  392. package/es/statistic/index.js +1 -1
  393. package/es/statistic/src/Statistic.d.ts +1 -1
  394. package/es/statistic/src/Statistic.js +1 -1
  395. package/es/steps/index.d.ts +2 -2
  396. package/es/steps/index.js +2 -2
  397. package/es/steps/src/Step.d.ts +1 -1
  398. package/es/steps/src/Step.js +1 -1
  399. package/es/steps/src/Steps.d.ts +1 -1
  400. package/es/steps/src/Steps.js +1 -1
  401. package/es/switch/index.d.ts +1 -1
  402. package/es/switch/index.js +1 -1
  403. package/es/switch/src/Switch.d.ts +1 -1
  404. package/es/switch/src/Switch.js +1 -1
  405. package/es/switch/src/styles/index.cssr.js +1 -0
  406. package/es/table/index.d.ts +1 -1
  407. package/es/table/index.js +1 -1
  408. package/es/table/src/Table.d.ts +1 -1
  409. package/es/table/src/Table.js +2 -2
  410. package/es/tabs/index.d.ts +3 -3
  411. package/es/tabs/index.js +3 -3
  412. package/es/tabs/src/Tab.d.ts +2 -2
  413. package/es/tabs/src/Tab.js +2 -2
  414. package/es/tabs/src/Tabs.d.ts +1 -1
  415. package/es/tabs/src/Tabs.js +2 -2
  416. package/es/tag/index.d.ts +1 -1
  417. package/es/tag/index.js +1 -1
  418. package/es/tag/src/Tag.d.ts +1 -1
  419. package/es/tag/src/Tag.js +2 -2
  420. package/es/thing/index.d.ts +1 -1
  421. package/es/thing/index.js +1 -1
  422. package/es/thing/src/Thing.d.ts +1 -1
  423. package/es/thing/src/Thing.js +1 -1
  424. package/es/time/index.d.ts +1 -1
  425. package/es/time/index.js +1 -1
  426. package/es/time/src/Time.d.ts +1 -1
  427. package/es/time/src/Time.js +1 -1
  428. package/es/time-picker/index.d.ts +1 -1
  429. package/es/time-picker/index.js +1 -1
  430. package/es/time-picker/src/TimePicker.d.ts +1 -1
  431. package/es/time-picker/src/TimePicker.js +1 -1
  432. package/es/timeline/index.d.ts +2 -2
  433. package/es/timeline/index.js +2 -2
  434. package/es/timeline/src/Timeline.d.ts +1 -1
  435. package/es/timeline/src/Timeline.js +1 -1
  436. package/es/timeline/src/TimelineItem.d.ts +1 -1
  437. package/es/timeline/src/TimelineItem.js +1 -1
  438. package/es/tooltip/index.d.ts +1 -1
  439. package/es/tooltip/index.js +1 -1
  440. package/es/tooltip/src/Tooltip.d.ts +4 -1
  441. package/es/tooltip/src/Tooltip.js +1 -1
  442. package/es/transfer/index.d.ts +1 -1
  443. package/es/transfer/index.js +1 -1
  444. package/es/transfer/src/Transfer.d.ts +1 -1
  445. package/es/transfer/src/Transfer.js +1 -1
  446. package/es/tree/index.d.ts +1 -1
  447. package/es/tree/index.js +1 -1
  448. package/es/tree/src/Tree.d.ts +23 -5
  449. package/es/tree/src/Tree.js +47 -20
  450. package/es/tree/src/TreeNode.d.ts +1 -1
  451. package/es/tree/src/TreeNode.js +21 -6
  452. package/es/tree/src/interface.d.ts +3 -1
  453. package/es/tree-select/index.d.ts +2 -2
  454. package/es/tree-select/index.js +1 -1
  455. package/es/tree-select/src/TreeSelect.d.ts +29 -7
  456. package/es/tree-select/src/TreeSelect.js +21 -5
  457. package/es/tree-select/src/interface.d.ts +17 -1
  458. package/es/typography/index.d.ts +7 -6
  459. package/es/typography/index.js +7 -6
  460. package/es/typography/src/a.d.ts +1 -1
  461. package/es/typography/src/a.js +1 -1
  462. package/es/typography/src/blockquote.d.ts +1 -1
  463. package/es/typography/src/blockquote.js +1 -1
  464. package/es/typography/src/create-header.d.ts +1 -1
  465. package/es/typography/src/create-header.js +1 -1
  466. package/es/typography/src/ol.d.ts +1 -1
  467. package/es/typography/src/ol.js +1 -1
  468. package/es/typography/src/p.d.ts +1 -1
  469. package/es/typography/src/p.js +1 -1
  470. package/es/typography/src/text.d.ts +1 -1
  471. package/es/typography/src/text.js +1 -1
  472. package/es/typography/src/ul.d.ts +1 -1
  473. package/es/typography/src/ul.js +1 -1
  474. package/es/upload/index.d.ts +1 -1
  475. package/es/upload/index.js +1 -1
  476. package/es/upload/src/Upload.d.ts +1 -1
  477. package/es/upload/src/Upload.js +1 -1
  478. package/es/upload/src/UploadFile.d.ts +2 -2
  479. package/es/upload/src/UploadFile.js +8 -4
  480. package/es/version.d.ts +1 -1
  481. package/es/version.js +1 -1
  482. package/es/watermark/index.d.ts +1 -1
  483. package/es/watermark/index.js +1 -1
  484. package/es/watermark/src/Watermark.d.ts +1 -1
  485. package/es/watermark/src/Watermark.js +1 -1
  486. package/es/watermark/src/styles/index.cssr.js +4 -1
  487. package/lib/_internal/close/src/Close.js +1 -1
  488. package/lib/_internal/scrollbar/src/Scrollbar.js +8 -2
  489. package/lib/_internal/scrollbar/src/styles/index.cssr.js +1 -0
  490. package/lib/_internal/select-menu/src/styles/index.cssr.js +1 -1
  491. package/lib/_internal/selection/src/styles/index.cssr.js +1 -0
  492. package/lib/_mixins/use-rtl.d.ts +1 -1
  493. package/lib/_mixins/use-rtl.js +2 -1
  494. package/lib/_utils/env/browser.d.ts +3 -0
  495. package/lib/_utils/env/browser.js +7 -0
  496. package/lib/_utils/env/is-native-lazy-load.d.ts +1 -0
  497. package/lib/_utils/env/is-native-lazy-load.js +6 -0
  498. package/lib/affix/index.d.ts +1 -1
  499. package/lib/affix/index.js +2 -1
  500. package/lib/alert/index.d.ts +1 -1
  501. package/lib/alert/index.js +2 -1
  502. package/lib/alert/src/Alert.d.ts +1 -1
  503. package/lib/alert/src/Alert.js +5 -4
  504. package/lib/anchor/index.d.ts +2 -2
  505. package/lib/anchor/index.js +3 -1
  506. package/lib/anchor/src/AnchorAdapter.d.ts +1 -1
  507. package/lib/anchor/src/AnchorAdapter.js +3 -2
  508. package/lib/anchor/src/Link.d.ts +1 -1
  509. package/lib/anchor/src/Link.js +3 -3
  510. package/lib/auto-complete/index.d.ts +1 -1
  511. package/lib/auto-complete/index.js +2 -1
  512. package/lib/auto-complete/src/AutoComplete.d.ts +1 -1
  513. package/lib/auto-complete/src/AutoComplete.js +3 -2
  514. package/lib/avatar/index.d.ts +1 -1
  515. package/lib/avatar/index.js +2 -1
  516. package/lib/avatar/src/Avatar.d.ts +13 -1
  517. package/lib/avatar/src/Avatar.js +60 -7
  518. package/lib/avatar-group/index.d.ts +1 -1
  519. package/lib/avatar-group/index.js +2 -1
  520. package/lib/avatar-group/src/AvatarGroup.d.ts +1 -1
  521. package/lib/avatar-group/src/AvatarGroup.js +5 -4
  522. package/lib/back-top/index.d.ts +1 -1
  523. package/lib/back-top/index.js +2 -1
  524. package/lib/back-top/src/BackTop.d.ts +1 -1
  525. package/lib/back-top/src/BackTop.js +3 -2
  526. package/lib/badge/index.d.ts +1 -1
  527. package/lib/badge/index.js +2 -1
  528. package/lib/badge/src/Badge.d.ts +1 -1
  529. package/lib/badge/src/Badge.js +5 -4
  530. package/lib/breadcrumb/index.d.ts +2 -2
  531. package/lib/breadcrumb/index.js +3 -1
  532. package/lib/breadcrumb/src/Breadcrumb.d.ts +1 -1
  533. package/lib/breadcrumb/src/Breadcrumb.js +3 -3
  534. package/lib/breadcrumb/src/BreadcrumbItem.d.ts +1 -1
  535. package/lib/breadcrumb/src/BreadcrumbItem.js +3 -2
  536. package/lib/breadcrumb/src/styles/index.cssr.js +1 -0
  537. package/lib/button/index.d.ts +1 -1
  538. package/lib/button/index.js +2 -1
  539. package/lib/button/src/Button.d.ts +13 -4
  540. package/lib/button/src/Button.js +11 -7
  541. package/lib/button/src/styles/index.cssr.js +4 -0
  542. package/lib/button-group/index.d.ts +1 -1
  543. package/lib/button-group/index.js +2 -1
  544. package/lib/button-group/src/ButtonGroup.d.ts +1 -1
  545. package/lib/button-group/src/ButtonGroup.js +5 -4
  546. package/lib/calendar/index.d.ts +1 -1
  547. package/lib/calendar/index.js +2 -1
  548. package/lib/calendar/src/Calendar.d.ts +1 -1
  549. package/lib/calendar/src/Calendar.js +3 -2
  550. package/lib/card/index.d.ts +1 -1
  551. package/lib/card/index.js +2 -1
  552. package/lib/card/src/Card.d.ts +2 -2
  553. package/lib/card/src/Card.js +5 -5
  554. package/lib/carousel/index.d.ts +1 -1
  555. package/lib/carousel/index.js +2 -1
  556. package/lib/carousel/src/Carousel.d.ts +1 -1
  557. package/lib/carousel/src/Carousel.js +3 -2
  558. package/lib/carousel/src/styles/index.cssr.js +1 -0
  559. package/lib/cascader/index.d.ts +1 -1
  560. package/lib/cascader/index.js +2 -1
  561. package/lib/cascader/src/Cascader.d.ts +1 -1
  562. package/lib/cascader/src/Cascader.js +3 -2
  563. package/lib/cascader/src/utils.d.ts +1 -4
  564. package/lib/cascader/src/utils.js +18 -29
  565. package/lib/checkbox/index.d.ts +2 -2
  566. package/lib/checkbox/index.js +3 -1
  567. package/lib/checkbox/src/Checkbox.d.ts +1 -1
  568. package/lib/checkbox/src/Checkbox.js +5 -4
  569. package/lib/checkbox/src/CheckboxGroup.d.ts +1 -1
  570. package/lib/checkbox/src/CheckboxGroup.js +3 -3
  571. package/lib/checkbox/src/styles/index.cssr.js +2 -0
  572. package/lib/code/index.d.ts +1 -1
  573. package/lib/code/index.js +2 -1
  574. package/lib/code/src/Code.d.ts +1 -1
  575. package/lib/code/src/Code.js +3 -2
  576. package/lib/collapse/index.d.ts +2 -2
  577. package/lib/collapse/index.js +3 -1
  578. package/lib/collapse/src/Collapse.d.ts +1 -1
  579. package/lib/collapse/src/Collapse.js +5 -5
  580. package/lib/collapse/src/CollapseItem.d.ts +1 -1
  581. package/lib/collapse/src/CollapseItem.js +5 -4
  582. package/lib/collapse-transition/index.d.ts +1 -1
  583. package/lib/collapse-transition/index.js +2 -1
  584. package/lib/collapse-transition/src/CollapseTransition.d.ts +2 -2
  585. package/lib/collapse-transition/src/CollapseTransition.js +5 -4
  586. package/lib/color-picker/index.d.ts +1 -1
  587. package/lib/color-picker/index.js +2 -1
  588. package/lib/color-picker/src/ColorPicker.d.ts +2 -2
  589. package/lib/color-picker/src/ColorPicker.js +3 -3
  590. package/lib/countdown/index.d.ts +2 -2
  591. package/lib/countdown/index.js +2 -1
  592. package/lib/countdown/src/Countdown.d.ts +9 -2
  593. package/lib/countdown/src/Countdown.js +44 -27
  594. package/lib/data-table/index.d.ts +1 -1
  595. package/lib/data-table/index.js +2 -1
  596. package/lib/data-table/src/TableParts/Body.d.ts +4 -0
  597. package/lib/data-table/src/TableParts/Body.js +50 -34
  598. package/lib/data-table/src/TableParts/BodyRadio.d.ts +30 -0
  599. package/lib/data-table/src/TableParts/BodyRadio.js +32 -0
  600. package/lib/data-table/src/TableParts/Header.js +2 -2
  601. package/lib/data-table/src/interface.d.ts +2 -1
  602. package/lib/data-table/src/use-check.d.ts +1 -1
  603. package/lib/data-table/src/use-check.js +15 -3
  604. package/lib/date-picker/index.d.ts +1 -1
  605. package/lib/date-picker/index.js +2 -1
  606. package/lib/date-picker/src/DatePicker.d.ts +41 -1
  607. package/lib/date-picker/src/DatePicker.js +36 -14
  608. package/lib/date-picker/src/config.d.ts +1 -1
  609. package/lib/date-picker/src/panel/date.d.ts +4 -0
  610. package/lib/date-picker/src/panel/daterange.d.ts +7 -1
  611. package/lib/date-picker/src/panel/daterange.js +1 -1
  612. package/lib/date-picker/src/panel/datetime.d.ts +4 -0
  613. package/lib/date-picker/src/panel/datetimerange.d.ts +7 -1
  614. package/lib/date-picker/src/panel/datetimerange.js +1 -1
  615. package/lib/date-picker/src/panel/month.d.ts +4 -0
  616. package/lib/date-picker/src/panel/month.js +1 -1
  617. package/lib/date-picker/src/panel/monthrange.d.ts +11 -5
  618. package/lib/date-picker/src/panel/monthrange.js +13 -7
  619. package/lib/date-picker/src/panel/panelHeader.d.ts +8 -0
  620. package/lib/date-picker/src/panel/use-calendar.d.ts +4 -0
  621. package/lib/date-picker/src/panel/use-dual-calendar.d.ts +9 -3
  622. package/lib/date-picker/src/panel/use-dual-calendar.js +24 -4
  623. package/lib/date-picker/src/panel/use-panel-common.d.ts +4 -0
  624. package/lib/date-picker/src/styles/index.cssr.js +4 -0
  625. package/lib/date-picker/src/utils.d.ts +1 -1
  626. package/lib/date-picker/src/utils.js +2 -2
  627. package/lib/date-picker/styles/_common.d.ts +4 -0
  628. package/lib/date-picker/styles/_common.js +5 -1
  629. package/lib/date-picker/styles/light.d.ts +8 -0
  630. package/lib/descriptions/index.d.ts +2 -2
  631. package/lib/descriptions/index.js +3 -1
  632. package/lib/descriptions/src/Descriptions.d.ts +2 -2
  633. package/lib/descriptions/src/Descriptions.js +3 -2
  634. package/lib/descriptions/src/DescriptionsItem.d.ts +2 -2
  635. package/lib/descriptions/src/DescriptionsItem.js +3 -2
  636. package/lib/dialog/index.d.ts +2 -1
  637. package/lib/dialog/index.js +4 -1
  638. package/lib/dialog/src/DialogProvider.d.ts +1 -1
  639. package/lib/dialog/src/DialogProvider.js +3 -3
  640. package/lib/divider/index.d.ts +1 -1
  641. package/lib/divider/index.js +2 -1
  642. package/lib/divider/src/Divider.d.ts +1 -1
  643. package/lib/divider/src/Divider.js +3 -2
  644. package/lib/drawer/index.d.ts +2 -2
  645. package/lib/drawer/index.js +3 -1
  646. package/lib/drawer/src/Drawer.d.ts +60 -27
  647. package/lib/drawer/src/Drawer.js +39 -17
  648. package/lib/drawer/src/DrawerBodyWrapper.d.ts +9 -0
  649. package/lib/drawer/src/DrawerBodyWrapper.js +97 -2
  650. package/lib/drawer/src/DrawerContent.d.ts +2 -1
  651. package/lib/drawer/src/DrawerContent.js +3 -2
  652. package/lib/drawer/src/interface.d.ts +2 -0
  653. package/lib/drawer/src/styles/index.cssr.js +42 -5
  654. package/lib/drawer/styles/light.d.ts +2 -0
  655. package/lib/drawer/styles/light.js +3 -2
  656. package/lib/dropdown/index.d.ts +2 -2
  657. package/lib/dropdown/index.js +2 -1
  658. package/lib/dropdown/src/Dropdown.d.ts +10 -2
  659. package/lib/dropdown/src/Dropdown.js +17 -5
  660. package/lib/dropdown/src/DropdownMenu.d.ts +3 -0
  661. package/lib/dropdown/src/DropdownMenu.js +23 -15
  662. package/lib/dropdown/src/DropdownOption.d.ts +5 -0
  663. package/lib/dropdown/src/DropdownOption.js +32 -10
  664. package/lib/dropdown/src/interface.d.ts +2 -1
  665. package/lib/dropdown/src/styles/index.cssr.js +16 -10
  666. package/lib/dynamic-input/index.d.ts +1 -1
  667. package/lib/dynamic-input/index.js +2 -1
  668. package/lib/dynamic-input/src/DynamicInput.d.ts +1 -1
  669. package/lib/dynamic-input/src/DynamicInput.js +5 -4
  670. package/lib/dynamic-tags/index.d.ts +1 -1
  671. package/lib/dynamic-tags/index.js +2 -1
  672. package/lib/dynamic-tags/src/DynamicTags.d.ts +1 -1
  673. package/lib/dynamic-tags/src/DynamicTags.js +3 -2
  674. package/lib/element/index.d.ts +1 -1
  675. package/lib/element/index.js +2 -1
  676. package/lib/element/src/Element.d.ts +1 -1
  677. package/lib/element/src/Element.js +3 -2
  678. package/lib/ellipsis/index.d.ts +1 -1
  679. package/lib/ellipsis/index.js +2 -1
  680. package/lib/ellipsis/src/Ellipsis.d.ts +1 -1
  681. package/lib/ellipsis/src/Ellipsis.js +3 -2
  682. package/lib/empty/index.d.ts +1 -1
  683. package/lib/empty/index.js +2 -1
  684. package/lib/empty/src/Empty.d.ts +1 -1
  685. package/lib/empty/src/Empty.js +3 -2
  686. package/lib/form/index.d.ts +3 -3
  687. package/lib/form/index.js +5 -1
  688. package/lib/form/src/Form.d.ts +1 -1
  689. package/lib/form/src/Form.js +3 -2
  690. package/lib/form/src/FormItemRow.d.ts +1 -1
  691. package/lib/form/src/FormItemRow.js +3 -2
  692. package/lib/form/src/styles/form-item.cssr.js +2 -0
  693. package/lib/gradient-text/index.d.ts +1 -1
  694. package/lib/gradient-text/index.js +2 -1
  695. package/lib/gradient-text/src/GradientText.d.ts +1 -1
  696. package/lib/gradient-text/src/GradientText.js +3 -2
  697. package/lib/grid/index.d.ts +3 -3
  698. package/lib/grid/index.js +4 -1
  699. package/lib/grid/src/Grid.d.ts +1 -1
  700. package/lib/grid/src/Grid.js +4 -3
  701. package/lib/icon/index.d.ts +1 -1
  702. package/lib/icon/index.js +2 -1
  703. package/lib/icon/src/Icon.d.ts +1 -2
  704. package/lib/icon/src/Icon.js +3 -3
  705. package/lib/icon-wrapper/index.d.ts +1 -1
  706. package/lib/icon-wrapper/index.js +2 -1
  707. package/lib/icon-wrapper/src/IconWrapper.d.ts +1 -2
  708. package/lib/icon-wrapper/src/IconWrapper.js +3 -3
  709. package/lib/image/index.d.ts +2 -2
  710. package/lib/image/index.js +3 -1
  711. package/lib/image/src/Image.d.ts +1 -1
  712. package/lib/image/src/Image.js +19 -11
  713. package/lib/image/src/ImageGroup.d.ts +1 -1
  714. package/lib/image/src/ImageGroup.js +3 -3
  715. package/lib/image/src/styles/index.cssr.js +1 -0
  716. package/lib/input/index.d.ts +3 -3
  717. package/lib/input/index.js +4 -1
  718. package/lib/input/src/Input.d.ts +1 -1
  719. package/lib/input/src/Input.js +5 -4
  720. package/lib/input/src/InputGroup.d.ts +1 -1
  721. package/lib/input/src/InputGroup.js +3 -2
  722. package/lib/input/src/InputGroupLabel.d.ts +1 -1
  723. package/lib/input/src/InputGroupLabel.js +3 -2
  724. package/lib/input/src/styles/input-group-label.cssr.js +1 -0
  725. package/lib/input/src/styles/input.cssr.js +3 -0
  726. package/lib/input-number/index.d.ts +1 -1
  727. package/lib/input-number/index.js +2 -1
  728. package/lib/input-number/src/InputNumber.d.ts +1 -1
  729. package/lib/input-number/src/InputNumber.js +5 -4
  730. package/lib/layout/index.d.ts +4 -4
  731. package/lib/layout/index.js +6 -1
  732. package/lib/layout/src/Layout.d.ts +1 -1
  733. package/lib/layout/src/Layout.js +3 -3
  734. package/lib/layout/src/LayoutFooter.d.ts +1 -1
  735. package/lib/layout/src/LayoutFooter.js +3 -2
  736. package/lib/layout/src/LayoutHeader.d.ts +1 -1
  737. package/lib/layout/src/LayoutHeader.js +3 -2
  738. package/lib/layout/src/LayoutSider.d.ts +1 -1
  739. package/lib/layout/src/LayoutSider.js +3 -2
  740. package/lib/legacy-grid/index.d.ts +2 -2
  741. package/lib/legacy-grid/index.js +3 -1
  742. package/lib/list/index.d.ts +1 -1
  743. package/lib/list/index.js +2 -1
  744. package/lib/list/src/List.d.ts +1 -1
  745. package/lib/list/src/List.js +3 -3
  746. package/lib/loading-bar/index.d.ts +1 -1
  747. package/lib/loading-bar/index.js +2 -1
  748. package/lib/loading-bar/src/LoadingBarProvider.d.ts +3 -3
  749. package/lib/loading-bar/src/LoadingBarProvider.js +3 -2
  750. package/lib/locales/common/ukUA.js +14 -18
  751. package/lib/locales/common/viVN.d.ts +3 -0
  752. package/lib/locales/common/viVN.js +115 -0
  753. package/lib/locales/date/viVN.d.ts +3 -0
  754. package/lib/locales/date/viVN.js +11 -0
  755. package/lib/locales/index.d.ts +2 -0
  756. package/lib/locales/index.js +5 -1
  757. package/lib/log/index.d.ts +1 -1
  758. package/lib/log/index.js +2 -1
  759. package/lib/log/src/Log.d.ts +1 -1
  760. package/lib/log/src/Log.js +3 -2
  761. package/lib/mention/index.d.ts +1 -1
  762. package/lib/mention/index.js +2 -1
  763. package/lib/mention/src/Mention.d.ts +1 -1
  764. package/lib/mention/src/Mention.js +3 -2
  765. package/lib/menu/index.d.ts +1 -1
  766. package/lib/menu/index.js +2 -1
  767. package/lib/menu/src/Menu.d.ts +1 -1
  768. package/lib/menu/src/Menu.js +3 -2
  769. package/lib/message/index.d.ts +1 -1
  770. package/lib/message/index.js +2 -1
  771. package/lib/message/src/MessageProvider.d.ts +1 -1
  772. package/lib/message/src/MessageProvider.js +3 -2
  773. package/lib/modal/index.d.ts +1 -1
  774. package/lib/modal/index.js +2 -1
  775. package/lib/modal/src/Modal.d.ts +1 -1
  776. package/lib/modal/src/Modal.js +3 -2
  777. package/lib/modal/src/presetProps.d.ts +1 -1
  778. package/lib/modal/src/styles/index.cssr.js +1 -0
  779. package/lib/notification/index.d.ts +1 -1
  780. package/lib/notification/index.js +2 -1
  781. package/lib/notification/src/Notification.d.ts +4 -0
  782. package/lib/notification/src/Notification.js +11 -4
  783. package/lib/notification/src/NotificationContainer.d.ts +3 -0
  784. package/lib/notification/src/NotificationContainer.js +1 -1
  785. package/lib/notification/src/NotificationProvider.d.ts +28 -1
  786. package/lib/notification/src/NotificationProvider.js +3 -3
  787. package/lib/notification/src/styles/index.cssr.js +7 -6
  788. package/lib/notification/src/styles/rtl.cssr.d.ts +2 -0
  789. package/lib/notification/src/styles/rtl.cssr.js +29 -0
  790. package/lib/notification/styles/_common.d.ts +3 -0
  791. package/lib/notification/styles/_common.js +4 -1
  792. package/lib/notification/styles/index.d.ts +1 -0
  793. package/lib/notification/styles/index.js +3 -1
  794. package/lib/notification/styles/light.d.ts +6 -0
  795. package/lib/notification/styles/rtl.d.ts +2 -0
  796. package/lib/notification/styles/rtl.js +11 -0
  797. package/lib/number-animation/index.d.ts +1 -1
  798. package/lib/number-animation/index.js +2 -1
  799. package/lib/number-animation/src/NumberAnimation.d.ts +5 -1
  800. package/lib/number-animation/src/NumberAnimation.js +7 -3
  801. package/lib/page-header/index.d.ts +1 -1
  802. package/lib/page-header/index.js +2 -1
  803. package/lib/page-header/src/PageHeader.d.ts +1 -1
  804. package/lib/page-header/src/PageHeader.js +5 -4
  805. package/lib/pagination/index.d.ts +1 -1
  806. package/lib/pagination/index.js +2 -1
  807. package/lib/pagination/src/Pagination.d.ts +1 -1
  808. package/lib/pagination/src/Pagination.js +5 -4
  809. package/lib/pagination/src/styles/index.cssr.js +1 -0
  810. package/lib/popconfirm/index.d.ts +1 -1
  811. package/lib/popconfirm/index.js +2 -1
  812. package/lib/popconfirm/src/Popconfirm.d.ts +4 -1
  813. package/lib/popconfirm/src/Popconfirm.js +3 -2
  814. package/lib/popover/index.d.ts +1 -1
  815. package/lib/popover/index.js +2 -1
  816. package/lib/popover/src/Popover.d.ts +8 -1
  817. package/lib/popover/src/Popover.js +6 -4
  818. package/lib/popover/src/PopoverBody.d.ts +6 -0
  819. package/lib/popover/src/PopoverBody.js +23 -14
  820. package/lib/popover/src/styles/index.cssr.js +19 -15
  821. package/lib/popselect/index.d.ts +1 -1
  822. package/lib/popselect/index.js +2 -1
  823. package/lib/popselect/src/Popselect.d.ts +4 -1
  824. package/lib/popselect/src/Popselect.js +3 -2
  825. package/lib/progress/index.d.ts +1 -1
  826. package/lib/progress/index.js +2 -1
  827. package/lib/progress/src/Progress.d.ts +1 -1
  828. package/lib/progress/src/Progress.js +3 -2
  829. package/lib/radio/index.d.ts +3 -3
  830. package/lib/radio/index.js +4 -1
  831. package/lib/radio/src/Radio.d.ts +25 -0
  832. package/lib/radio/src/Radio.js +4 -2
  833. package/lib/radio/src/RadioButton.d.ts +25 -0
  834. package/lib/radio/src/RadioButton.js +2 -0
  835. package/lib/radio/src/RadioGroup.d.ts +1 -1
  836. package/lib/radio/src/RadioGroup.js +5 -4
  837. package/lib/radio/src/styles/radio-group.cssr.js +2 -0
  838. package/lib/radio/src/styles/radio.cssr.js +1 -0
  839. package/lib/rate/index.d.ts +1 -1
  840. package/lib/rate/index.js +2 -1
  841. package/lib/rate/src/Rate.d.ts +1 -1
  842. package/lib/rate/src/Rate.js +3 -2
  843. package/lib/result/index.d.ts +1 -1
  844. package/lib/result/index.js +2 -1
  845. package/lib/result/src/Result.d.ts +1 -1
  846. package/lib/result/src/Result.js +3 -2
  847. package/lib/scrollbar/index.d.ts +1 -1
  848. package/lib/scrollbar/index.js +2 -1
  849. package/lib/scrollbar/src/Scrollbar.d.ts +1 -1
  850. package/lib/scrollbar/src/Scrollbar.js +3 -2
  851. package/lib/select/index.d.ts +2 -2
  852. package/lib/select/index.js +2 -1
  853. package/lib/select/src/Select.d.ts +5 -5
  854. package/lib/select/src/Select.js +13 -3
  855. package/lib/select/src/interface.d.ts +1 -0
  856. package/lib/skeleton/index.d.ts +1 -1
  857. package/lib/skeleton/index.js +2 -1
  858. package/lib/skeleton/src/Skeleton.d.ts +1 -1
  859. package/lib/skeleton/src/Skeleton.js +3 -2
  860. package/lib/slider/index.d.ts +1 -1
  861. package/lib/slider/index.js +2 -1
  862. package/lib/slider/src/Slider.d.ts +1 -1
  863. package/lib/slider/src/Slider.js +3 -2
  864. package/lib/slider/src/styles/index.cssr.js +1 -0
  865. package/lib/space/index.d.ts +1 -1
  866. package/lib/space/index.js +2 -1
  867. package/lib/space/src/Space.d.ts +1 -1
  868. package/lib/space/src/Space.js +5 -7
  869. package/lib/spin/index.d.ts +1 -1
  870. package/lib/spin/index.js +2 -1
  871. package/lib/spin/src/Spin.d.ts +1 -1
  872. package/lib/spin/src/Spin.js +3 -2
  873. package/lib/spin/src/styles/index.cssr.js +1 -0
  874. package/lib/statistic/index.d.ts +1 -1
  875. package/lib/statistic/index.js +2 -1
  876. package/lib/statistic/src/Statistic.d.ts +1 -1
  877. package/lib/statistic/src/Statistic.js +3 -2
  878. package/lib/steps/index.d.ts +2 -2
  879. package/lib/steps/index.js +3 -1
  880. package/lib/steps/src/Step.d.ts +1 -1
  881. package/lib/steps/src/Step.js +3 -2
  882. package/lib/steps/src/Steps.d.ts +1 -1
  883. package/lib/steps/src/Steps.js +3 -3
  884. package/lib/switch/index.d.ts +1 -1
  885. package/lib/switch/index.js +2 -1
  886. package/lib/switch/src/Switch.d.ts +1 -1
  887. package/lib/switch/src/Switch.js +3 -2
  888. package/lib/switch/src/styles/index.cssr.js +1 -0
  889. package/lib/table/index.d.ts +1 -1
  890. package/lib/table/index.js +2 -1
  891. package/lib/table/src/Table.d.ts +1 -1
  892. package/lib/table/src/Table.js +5 -4
  893. package/lib/tabs/index.d.ts +3 -3
  894. package/lib/tabs/index.js +4 -1
  895. package/lib/tabs/src/Tab.d.ts +2 -2
  896. package/lib/tabs/src/Tab.js +3 -2
  897. package/lib/tabs/src/Tabs.d.ts +1 -1
  898. package/lib/tabs/src/Tabs.js +4 -3
  899. package/lib/tag/index.d.ts +1 -1
  900. package/lib/tag/index.js +2 -1
  901. package/lib/tag/src/Tag.d.ts +1 -1
  902. package/lib/tag/src/Tag.js +5 -5
  903. package/lib/thing/index.d.ts +1 -1
  904. package/lib/thing/index.js +2 -1
  905. package/lib/thing/src/Thing.d.ts +1 -1
  906. package/lib/thing/src/Thing.js +3 -2
  907. package/lib/time/index.d.ts +1 -1
  908. package/lib/time/index.js +2 -1
  909. package/lib/time/src/Time.d.ts +1 -1
  910. package/lib/time/src/Time.js +3 -2
  911. package/lib/time-picker/index.d.ts +1 -1
  912. package/lib/time-picker/index.js +2 -1
  913. package/lib/time-picker/src/TimePicker.d.ts +1 -1
  914. package/lib/time-picker/src/TimePicker.js +3 -2
  915. package/lib/timeline/index.d.ts +2 -2
  916. package/lib/timeline/index.js +3 -1
  917. package/lib/timeline/src/Timeline.d.ts +1 -1
  918. package/lib/timeline/src/Timeline.js +3 -3
  919. package/lib/timeline/src/TimelineItem.d.ts +1 -1
  920. package/lib/timeline/src/TimelineItem.js +3 -2
  921. package/lib/tooltip/index.d.ts +1 -1
  922. package/lib/tooltip/index.js +2 -1
  923. package/lib/tooltip/src/Tooltip.d.ts +4 -1
  924. package/lib/tooltip/src/Tooltip.js +3 -2
  925. package/lib/transfer/index.d.ts +1 -1
  926. package/lib/transfer/index.js +2 -1
  927. package/lib/transfer/src/Transfer.d.ts +1 -1
  928. package/lib/transfer/src/Transfer.js +3 -2
  929. package/lib/tree/index.d.ts +1 -1
  930. package/lib/tree/index.js +2 -1
  931. package/lib/tree/src/Tree.d.ts +23 -5
  932. package/lib/tree/src/Tree.js +49 -22
  933. package/lib/tree/src/TreeNode.d.ts +1 -1
  934. package/lib/tree/src/TreeNode.js +21 -6
  935. package/lib/tree/src/interface.d.ts +3 -1
  936. package/lib/tree-select/index.d.ts +2 -2
  937. package/lib/tree-select/index.js +2 -1
  938. package/lib/tree-select/src/TreeSelect.d.ts +29 -7
  939. package/lib/tree-select/src/TreeSelect.js +22 -5
  940. package/lib/tree-select/src/interface.d.ts +17 -1
  941. package/lib/typography/index.d.ts +7 -6
  942. package/lib/typography/index.js +14 -1
  943. package/lib/typography/src/a.d.ts +1 -1
  944. package/lib/typography/src/a.js +3 -2
  945. package/lib/typography/src/blockquote.d.ts +1 -1
  946. package/lib/typography/src/blockquote.js +3 -2
  947. package/lib/typography/src/create-header.d.ts +1 -1
  948. package/lib/typography/src/create-header.js +3 -2
  949. package/lib/typography/src/ol.d.ts +1 -1
  950. package/lib/typography/src/ol.js +3 -2
  951. package/lib/typography/src/p.d.ts +1 -1
  952. package/lib/typography/src/p.js +3 -2
  953. package/lib/typography/src/text.d.ts +1 -1
  954. package/lib/typography/src/text.js +3 -2
  955. package/lib/typography/src/ul.d.ts +1 -1
  956. package/lib/typography/src/ul.js +3 -2
  957. package/lib/upload/index.d.ts +1 -1
  958. package/lib/upload/index.js +2 -1
  959. package/lib/upload/src/Upload.d.ts +1 -1
  960. package/lib/upload/src/Upload.js +3 -2
  961. package/lib/upload/src/UploadFile.d.ts +2 -2
  962. package/lib/upload/src/UploadFile.js +8 -4
  963. package/lib/version.d.ts +1 -1
  964. package/lib/version.js +1 -1
  965. package/lib/watermark/index.d.ts +1 -1
  966. package/lib/watermark/index.js +2 -1
  967. package/lib/watermark/src/Watermark.d.ts +1 -1
  968. package/lib/watermark/src/Watermark.js +3 -2
  969. package/lib/watermark/src/styles/index.cssr.js +4 -1
  970. package/package.json +2 -2
  971. package/web-types.json +203 -11
@@ -1,3 +1,3 @@
1
- export { default as NTree } from './src/Tree';
1
+ export { default as NTree, treeProps } from './src/Tree';
2
2
  export type { TreeProps } from './src/Tree';
3
3
  export type { TreeOption, TreeDragInfo, TreeDropInfo } from './src/interface';
package/es/tree/index.js CHANGED
@@ -1 +1 @@
1
- export { default as NTree } from './src/Tree';
1
+ export { default as NTree, treeProps } from './src/Tree';
@@ -1,7 +1,7 @@
1
1
  import { PropType, VNodeChild } from 'vue';
2
2
  import { TreeMateOptions, CheckStrategy } from 'treemate';
3
3
  import type { ExtractPublicPropTypes, MaybeArray } from '../../_utils';
4
- import type { TreeDragInfo, TreeDropInfo, TreeOptions, Key, TreeOption, AllowDrop, RenderSwitcherIcon, TreeNodeProps } from './interface';
4
+ import type { TreeDragInfo, TreeDropInfo, TreeOptions, Key, TreeOption, AllowDrop, RenderSwitcherIcon, TreeNodeProps, CheckOnClick } from './interface';
5
5
  import { defaultAllowDrop } from './dnd';
6
6
  export declare function createTreeMateOptions<T>(keyField: string, childrenField: string): TreeMateOptions<T, T, T>;
7
7
  export declare type OnUpdateKeys = (value: Array<string & number>, option: Array<TreeOption | null>) => void;
@@ -29,12 +29,13 @@ export declare const treeSharedProps: {
29
29
  readonly default: () => never[];
30
30
  };
31
31
  readonly indeterminateKeys: PropType<Key[]>;
32
+ readonly renderSwitcherIcon: PropType<RenderSwitcherIcon>;
32
33
  readonly onUpdateIndeterminateKeys: PropType<MaybeArray<OnUpdateKeys>>;
33
34
  readonly 'onUpdate:indeterminateKeys': PropType<MaybeArray<OnUpdateKeys>>;
34
35
  readonly onUpdateExpandedKeys: PropType<MaybeArray<OnUpdateKeys>>;
35
36
  readonly 'onUpdate:expandedKeys': PropType<MaybeArray<OnUpdateKeys>>;
36
37
  };
37
- declare const treeProps: {
38
+ export declare const treeProps: {
38
39
  readonly internalTreeSelect: BooleanConstructor;
39
40
  readonly internalScrollable: BooleanConstructor;
40
41
  readonly internalScrollablePadding: StringConstructor;
@@ -78,10 +79,12 @@ declare const treeProps: {
78
79
  readonly default: () => never[];
79
80
  };
80
81
  readonly indeterminateKeys: PropType<Key[]>;
82
+ readonly renderSwitcherIcon: PropType<RenderSwitcherIcon>;
81
83
  readonly onUpdateIndeterminateKeys: PropType<MaybeArray<OnUpdateKeys>>;
82
84
  readonly 'onUpdate:indeterminateKeys': PropType<MaybeArray<OnUpdateKeys>>;
83
85
  readonly onUpdateExpandedKeys: PropType<MaybeArray<OnUpdateKeys>>;
84
86
  readonly 'onUpdate:expandedKeys': PropType<MaybeArray<OnUpdateKeys>>;
87
+ readonly accordion: BooleanConstructor;
85
88
  readonly showIrrelevantNodes: {
86
89
  readonly type: BooleanConstructor;
87
90
  readonly default: true;
@@ -95,6 +98,10 @@ declare const treeProps: {
95
98
  readonly default: true;
96
99
  };
97
100
  readonly expandOnClick: BooleanConstructor;
101
+ readonly checkOnClick: {
102
+ readonly type: PropType<boolean | CheckOnClick>;
103
+ readonly default: false;
104
+ };
98
105
  readonly cancelable: {
99
106
  readonly type: BooleanConstructor;
100
107
  readonly default: true;
@@ -146,7 +153,6 @@ declare const treeProps: {
146
153
  readonly renderLabel: PropType<({ option, checked, selected }: import("./interface").TreeRenderProps) => VNodeChild>;
147
154
  readonly renderPrefix: PropType<({ option, checked, selected }: import("./interface").TreeRenderProps) => VNodeChild>;
148
155
  readonly renderSuffix: PropType<({ option, checked, selected }: import("./interface").TreeRenderProps) => VNodeChild>;
149
- readonly renderSwitcherIcon: PropType<RenderSwitcherIcon>;
150
156
  readonly nodeProps: PropType<TreeNodeProps>;
151
157
  readonly onDragenter: PropType<MaybeArray<(e: TreeDragInfo) => void>>;
152
158
  readonly onDragleave: PropType<MaybeArray<(e: TreeDragInfo) => void>>;
@@ -381,10 +387,12 @@ declare const _default: import("vue").DefineComponent<{
381
387
  readonly default: () => never[];
382
388
  };
383
389
  readonly indeterminateKeys: PropType<Key[]>;
390
+ readonly renderSwitcherIcon: PropType<RenderSwitcherIcon>;
384
391
  readonly onUpdateIndeterminateKeys: PropType<MaybeArray<OnUpdateKeys>>;
385
392
  readonly 'onUpdate:indeterminateKeys': PropType<MaybeArray<OnUpdateKeys>>;
386
393
  readonly onUpdateExpandedKeys: PropType<MaybeArray<OnUpdateKeys>>;
387
394
  readonly 'onUpdate:expandedKeys': PropType<MaybeArray<OnUpdateKeys>>;
395
+ readonly accordion: BooleanConstructor;
388
396
  readonly showIrrelevantNodes: {
389
397
  readonly type: BooleanConstructor;
390
398
  readonly default: true;
@@ -398,6 +406,10 @@ declare const _default: import("vue").DefineComponent<{
398
406
  readonly default: true;
399
407
  };
400
408
  readonly expandOnClick: BooleanConstructor;
409
+ readonly checkOnClick: {
410
+ readonly type: PropType<boolean | CheckOnClick>;
411
+ readonly default: false;
412
+ };
401
413
  readonly cancelable: {
402
414
  readonly type: BooleanConstructor;
403
415
  readonly default: true;
@@ -449,7 +461,6 @@ declare const _default: import("vue").DefineComponent<{
449
461
  readonly renderLabel: PropType<({ option, checked, selected }: import("./interface").TreeRenderProps) => VNodeChild>;
450
462
  readonly renderPrefix: PropType<({ option, checked, selected }: import("./interface").TreeRenderProps) => VNodeChild>;
451
463
  readonly renderSuffix: PropType<({ option, checked, selected }: import("./interface").TreeRenderProps) => VNodeChild>;
452
- readonly renderSwitcherIcon: PropType<RenderSwitcherIcon>;
453
464
  readonly nodeProps: PropType<TreeNodeProps>;
454
465
  readonly onDragenter: PropType<MaybeArray<(e: TreeDragInfo) => void>>;
455
466
  readonly onDragleave: PropType<MaybeArray<(e: TreeDragInfo) => void>>;
@@ -1156,10 +1167,12 @@ declare const _default: import("vue").DefineComponent<{
1156
1167
  readonly default: () => never[];
1157
1168
  };
1158
1169
  readonly indeterminateKeys: PropType<Key[]>;
1170
+ readonly renderSwitcherIcon: PropType<RenderSwitcherIcon>;
1159
1171
  readonly onUpdateIndeterminateKeys: PropType<MaybeArray<OnUpdateKeys>>;
1160
1172
  readonly 'onUpdate:indeterminateKeys': PropType<MaybeArray<OnUpdateKeys>>;
1161
1173
  readonly onUpdateExpandedKeys: PropType<MaybeArray<OnUpdateKeys>>;
1162
1174
  readonly 'onUpdate:expandedKeys': PropType<MaybeArray<OnUpdateKeys>>;
1175
+ readonly accordion: BooleanConstructor;
1163
1176
  readonly showIrrelevantNodes: {
1164
1177
  readonly type: BooleanConstructor;
1165
1178
  readonly default: true;
@@ -1173,6 +1186,10 @@ declare const _default: import("vue").DefineComponent<{
1173
1186
  readonly default: true;
1174
1187
  };
1175
1188
  readonly expandOnClick: BooleanConstructor;
1189
+ readonly checkOnClick: {
1190
+ readonly type: PropType<boolean | CheckOnClick>;
1191
+ readonly default: false;
1192
+ };
1176
1193
  readonly cancelable: {
1177
1194
  readonly type: BooleanConstructor;
1178
1195
  readonly default: true;
@@ -1224,7 +1241,6 @@ declare const _default: import("vue").DefineComponent<{
1224
1241
  readonly renderLabel: PropType<({ option, checked, selected }: import("./interface").TreeRenderProps) => VNodeChild>;
1225
1242
  readonly renderPrefix: PropType<({ option, checked, selected }: import("./interface").TreeRenderProps) => VNodeChild>;
1226
1243
  readonly renderSuffix: PropType<({ option, checked, selected }: import("./interface").TreeRenderProps) => VNodeChild>;
1227
- readonly renderSwitcherIcon: PropType<RenderSwitcherIcon>;
1228
1244
  readonly nodeProps: PropType<TreeNodeProps>;
1229
1245
  readonly onDragenter: PropType<MaybeArray<(e: TreeDragInfo) => void>>;
1230
1246
  readonly onDragleave: PropType<MaybeArray<(e: TreeDragInfo) => void>>;
@@ -1433,6 +1449,7 @@ declare const _default: import("vue").DefineComponent<{
1433
1449
  readonly internalScrollable: boolean;
1434
1450
  readonly checkStrategy: CheckStrategy;
1435
1451
  readonly leafOnly: boolean;
1452
+ readonly accordion: boolean;
1436
1453
  readonly defaultExpandedKeys: Key[];
1437
1454
  readonly selectable: boolean;
1438
1455
  readonly expandOnClick: boolean;
@@ -1446,6 +1463,7 @@ declare const _default: import("vue").DefineComponent<{
1446
1463
  readonly internalFocusable: boolean;
1447
1464
  readonly showIrrelevantNodes: boolean;
1448
1465
  readonly expandOnDragenter: boolean;
1466
+ readonly checkOnClick: boolean | CheckOnClick;
1449
1467
  readonly blockNode: boolean;
1450
1468
  readonly allowDrop: AllowDrop;
1451
1469
  }>;
@@ -65,18 +65,22 @@ export const treeSharedProps = {
65
65
  default: () => []
66
66
  },
67
67
  indeterminateKeys: Array,
68
+ renderSwitcherIcon: Function,
68
69
  onUpdateIndeterminateKeys: [Function, Array],
69
70
  'onUpdate:indeterminateKeys': [Function, Array],
70
71
  onUpdateExpandedKeys: [Function, Array],
71
72
  'onUpdate:expandedKeys': [Function, Array]
72
73
  };
73
- const treeProps = Object.assign(Object.assign(Object.assign(Object.assign({}, useTheme.props), { showIrrelevantNodes: { type: Boolean, default: true }, data: {
74
+ export const treeProps = Object.assign(Object.assign(Object.assign(Object.assign({}, useTheme.props), { accordion: Boolean, showIrrelevantNodes: { type: Boolean, default: true }, data: {
74
75
  type: Array,
75
76
  default: () => []
76
77
  }, expandOnDragenter: {
77
78
  type: Boolean,
78
79
  default: true
79
- }, expandOnClick: Boolean, cancelable: {
80
+ }, expandOnClick: Boolean, checkOnClick: {
81
+ type: [Boolean, Function],
82
+ default: false
83
+ }, cancelable: {
80
84
  type: Boolean,
81
85
  default: true
82
86
  }, checkable: Boolean, draggable: Boolean, blockNode: Boolean, blockLine: Boolean, disabled: Boolean, checkedKeys: Array, defaultCheckedKeys: {
@@ -103,7 +107,7 @@ const treeProps = Object.assign(Object.assign(Object.assign(Object.assign({}, us
103
107
  }, checkboxPlacement: {
104
108
  type: String,
105
109
  default: 'left'
106
- }, virtualScroll: Boolean, watchProps: Array, renderLabel: Function, renderPrefix: Function, renderSuffix: Function, renderSwitcherIcon: Function, nodeProps: Function, onDragenter: [Function, Array], onDragleave: [Function, Array], onDragend: [Function, Array], onDragstart: [Function, Array], onDragover: [Function, Array], onDrop: [Function, Array], onUpdateCheckedKeys: [Function, Array], 'onUpdate:checkedKeys': [Function, Array], onUpdateSelectedKeys: [Function, Array], 'onUpdate:selectedKeys': [Function, Array] }), treeSharedProps), {
110
+ }, virtualScroll: Boolean, watchProps: Array, renderLabel: Function, renderPrefix: Function, renderSuffix: Function, nodeProps: Function, onDragenter: [Function, Array], onDragleave: [Function, Array], onDragend: [Function, Array], onDragstart: [Function, Array], onDragover: [Function, Array], onDrop: [Function, Array], onUpdateCheckedKeys: [Function, Array], 'onUpdate:checkedKeys': [Function, Array], onUpdateSelectedKeys: [Function, Array], 'onUpdate:selectedKeys': [Function, Array] }), treeSharedProps), {
107
111
  // internal props for tree-select
108
112
  internalTreeSelect: Boolean, internalScrollable: Boolean, internalScrollablePadding: String,
109
113
  // use it to display
@@ -361,7 +365,7 @@ export default defineComponent({
361
365
  // animation in progress
362
366
  const aipRef = ref(false);
363
367
  // animation flattened nodes
364
- const afNodeRef = ref([]);
368
+ const afNodesRef = ref([]);
365
369
  // Note: Since the virtual list depends on min height, if there's a node
366
370
  // whose height starts from 0, the virtual list will have a wrong height
367
371
  // during animation. This will seldom cause wired scrollbar status. It is
@@ -390,8 +394,7 @@ export default defineComponent({
390
394
  removedKey = expandedKey;
391
395
  }
392
396
  }
393
- if ((addedKey !== null && removedKey !== null) ||
394
- (addedKey === null && removedKey === null)) {
397
+ if (addedKey === null && removedKey === null) {
395
398
  // 1. multi action, not triggered by click
396
399
  // 2. no action, don't know what happened
397
400
  return;
@@ -399,16 +402,29 @@ export default defineComponent({
399
402
  const { virtualScroll } = props;
400
403
  const viewportHeight = (virtualScroll ? virtualListInstRef.value.listElRef : selfElRef.value).offsetHeight;
401
404
  const viewportItemCount = Math.ceil(viewportHeight / ITEM_SIZE) + 1;
405
+ // play add animation
406
+ let baseExpandedKeys;
402
407
  if (addedKey !== null) {
403
- // play add animation
404
- aipRef.value = true;
405
- afNodeRef.value = displayTreeMateRef.value.getFlattenedNodes(prevValue);
406
- const expandedNodeIndex = afNodeRef.value.findIndex((node) => node.key === addedKey);
408
+ baseExpandedKeys = prevValue;
409
+ }
410
+ if (removedKey !== null) {
411
+ if (baseExpandedKeys === undefined) {
412
+ baseExpandedKeys = value;
413
+ }
414
+ else {
415
+ baseExpandedKeys = baseExpandedKeys.filter((key) => key !== removedKey);
416
+ }
417
+ }
418
+ aipRef.value = true;
419
+ afNodesRef.value =
420
+ displayTreeMateRef.value.getFlattenedNodes(baseExpandedKeys);
421
+ if (addedKey !== null) {
422
+ const expandedNodeIndex = afNodesRef.value.findIndex((node) => node.key === addedKey);
407
423
  if (~expandedNodeIndex) {
408
424
  const expandedChildren = flatten(
409
425
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
410
- afNodeRef.value[expandedNodeIndex].children, value);
411
- afNodeRef.value.splice(expandedNodeIndex + 1, 0, {
426
+ afNodesRef.value[expandedNodeIndex].children, value);
427
+ afNodesRef.value.splice(expandedNodeIndex + 1, 0, {
412
428
  __motion: true,
413
429
  mode: 'expand',
414
430
  height: virtualScroll
@@ -421,10 +437,9 @@ export default defineComponent({
421
437
  }
422
438
  }
423
439
  if (removedKey !== null) {
424
- afNodeRef.value = displayTreeMateRef.value.getFlattenedNodes(value);
425
- const collapsedNodeIndex = afNodeRef.value.findIndex((node) => node.key === removedKey);
440
+ const collapsedNodeIndex = afNodesRef.value.findIndex((node) => node.key === removedKey);
426
441
  if (~collapsedNodeIndex) {
427
- const collapsedNodeChildren = afNodeRef.value[collapsedNodeIndex].children;
442
+ const collapsedNodeChildren = afNodesRef.value[collapsedNodeIndex].children;
428
443
  // Sometime the whole tree is change, remove a key doesn't mean it is collapsed,
429
444
  // but maybe children removed
430
445
  if (!collapsedNodeChildren)
@@ -432,7 +447,7 @@ export default defineComponent({
432
447
  // play remove animation
433
448
  aipRef.value = true;
434
449
  const collapsedChildren = flatten(collapsedNodeChildren, value);
435
- afNodeRef.value.splice(collapsedNodeIndex + 1, 0, {
450
+ afNodesRef.value.splice(collapsedNodeIndex + 1, 0, {
436
451
  __motion: true,
437
452
  mode: 'collapse',
438
453
  height: virtualScroll
@@ -450,7 +465,7 @@ export default defineComponent({
450
465
  });
451
466
  const mergedFNodesRef = computed(() => {
452
467
  if (aipRef.value)
453
- return afNodeRef.value;
468
+ return afNodesRef.value;
454
469
  else
455
470
  return fNodesRef.value;
456
471
  });
@@ -580,9 +595,10 @@ export default defineComponent({
580
595
  doUpdateCheckedKeys(checkedKeys, getOptionsByKeys(checkedKeys));
581
596
  doUpdateIndeterminateKeys(indeterminateKeys, getOptionsByKeys(indeterminateKeys));
582
597
  }
583
- function toggleExpand(key) {
598
+ function toggleExpand(node) {
584
599
  if (props.disabled)
585
600
  return;
601
+ const { key } = node;
586
602
  const { value: mergedExpandedKeys } = mergedExpandedKeysRef;
587
603
  const index = mergedExpandedKeys.findIndex((expandNodeId) => expandNodeId === key);
588
604
  if (~index) {
@@ -595,14 +611,24 @@ export default defineComponent({
595
611
  if (!nodeToBeExpanded || nodeToBeExpanded.isLeaf) {
596
612
  return;
597
613
  }
598
- const nextKeys = mergedExpandedKeys.concat(key);
614
+ let nextKeys;
615
+ if (props.accordion) {
616
+ const siblingKeySet = new Set(node.siblings.map(({ key }) => key));
617
+ nextKeys = mergedExpandedKeys.filter((expandedKey) => {
618
+ return !siblingKeySet.has(expandedKey);
619
+ });
620
+ nextKeys.push(key);
621
+ }
622
+ else {
623
+ nextKeys = mergedExpandedKeys.concat(key);
624
+ }
599
625
  doUpdateExpandedKeys(nextKeys, getOptionsByKeys(nextKeys));
600
626
  }
601
627
  }
602
628
  function handleSwitcherClick(node) {
603
629
  if (props.disabled || aipRef.value)
604
630
  return;
605
- toggleExpand(node.key);
631
+ toggleExpand(node);
606
632
  }
607
633
  function handleSelect(node) {
608
634
  if (props.disabled || !props.selectable) {
@@ -1014,6 +1040,7 @@ export default defineComponent({
1014
1040
  blockLineRef: toRef(props, 'blockLine'),
1015
1041
  indentRef: toRef(props, 'indent'),
1016
1042
  cascadeRef: toRef(props, 'cascade'),
1043
+ checkOnClickRef: toRef(props, 'checkOnClick'),
1017
1044
  checkboxPlacementRef: props.checkboxPlacement,
1018
1045
  droppingMouseNodeRef,
1019
1046
  droppingNodeParentRef,
@@ -27,7 +27,7 @@ declare const TreeNode: import("vue").DefineComponent<{
27
27
  internalScrollable: import("vue").Ref<boolean>;
28
28
  draggable: import("vue").Ref<boolean>;
29
29
  blockLine: import("vue").Ref<boolean>;
30
- nodeProps: import("vue").ComputedRef<import("vue").HTMLAttributes | undefined>;
30
+ nodeProps: import("vue").ComputedRef<(import("vue").HTMLAttributes & Record<string, unknown>) | undefined>;
31
31
  checkboxFocusable: import("vue").Ref<boolean>;
32
32
  droppingPosition: import("vue").Ref<import("./interface").DropPosition | null>;
33
33
  droppingOffsetLevel: import("vue").Ref<number>;
@@ -22,7 +22,7 @@ const TreeNode = defineComponent({
22
22
  setup(props) {
23
23
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
24
24
  const NTree = inject(treeInjectionKey);
25
- const { droppingNodeParentRef, droppingMouseNodeRef, draggingNodeRef, droppingPositionRef, droppingOffsetLevelRef, nodePropsRef, indentRef, blockLineRef, checkboxPlacementRef } = NTree;
25
+ const { droppingNodeParentRef, droppingMouseNodeRef, draggingNodeRef, droppingPositionRef, droppingOffsetLevelRef, nodePropsRef, indentRef, blockLineRef, checkboxPlacementRef, checkOnClickRef } = NTree;
26
26
  const disabledRef = computed(() => NTree.disabledRef.value || props.tmNode.disabled);
27
27
  const resolvedNodePropsRef = computed(() => {
28
28
  const { value: nodeProps } = nodePropsRef;
@@ -69,6 +69,21 @@ const TreeNode = defineComponent({
69
69
  (NTree.multipleRef.value && NTree.cascadeRef.value) ||
70
70
  props.tmNode.isLeaf
71
71
  : true));
72
+ const checkableRef = useMemo(() => NTree.checkableRef.value &&
73
+ (NTree.cascadeRef.value ||
74
+ NTree.mergedCheckStrategyRef.value !== 'child' ||
75
+ props.tmNode.isLeaf));
76
+ const checkedRef = useMemo(() => NTree.displayedCheckedKeysRef.value.includes(props.tmNode.key));
77
+ const mergedCheckOnClickRef = useMemo(() => {
78
+ const { value: checkable } = checkableRef;
79
+ if (!checkable)
80
+ return false;
81
+ const { value: checkOnClick } = checkOnClickRef;
82
+ if (typeof checkOnClick === 'boolean') {
83
+ return checkOnClick;
84
+ }
85
+ return checkOnClick(props.tmNode.rawNode);
86
+ });
72
87
  function _handleClick(e) {
73
88
  const { value: expandOnClick } = NTree.expandOnClickRef;
74
89
  const { value: selectable } = selectableRef;
@@ -83,6 +98,9 @@ const TreeNode = defineComponent({
83
98
  if (expandOnClick && !tmNode.isLeaf) {
84
99
  handleSwitcherClick();
85
100
  }
101
+ if (mergedCheckOnClickRef.value) {
102
+ handleCheck(!checkedRef.value);
103
+ }
86
104
  }
87
105
  function handleContentClick(e) {
88
106
  var _a, _b;
@@ -186,15 +204,12 @@ const TreeNode = defineComponent({
186
204
  var _a;
187
205
  return (_a = NTree.highlightKeySetRef.value) === null || _a === void 0 ? void 0 : _a.has(props.tmNode.key);
188
206
  }),
189
- checked: useMemo(() => NTree.displayedCheckedKeysRef.value.includes(props.tmNode.key)),
207
+ checked: checkedRef,
190
208
  indeterminate: useMemo(() => NTree.displayedIndeterminateKeysRef.value.includes(props.tmNode.key)),
191
209
  selected: useMemo(() => NTree.mergedSelectedKeysRef.value.includes(props.tmNode.key)),
192
210
  expanded: useMemo(() => NTree.mergedExpandedKeysRef.value.includes(props.tmNode.key)),
193
211
  disabled: disabledRef,
194
- checkable: computed(() => NTree.checkableRef.value &&
195
- (NTree.cascadeRef.value ||
196
- NTree.mergedCheckStrategyRef.value !== 'child' ||
197
- props.tmNode.isLeaf)),
212
+ checkable: checkableRef,
198
213
  checkboxDisabled: computed(() => !!props.tmNode.rawNode.checkboxDisabled),
199
214
  selectable: selectableRef,
200
215
  expandOnClick: NTree.expandOnClickRef,
@@ -28,7 +28,7 @@ export declare type RenderPrefix = RenderTreePart;
28
28
  export declare type RenderSuffix = RenderTreePart;
29
29
  export declare type TreeNodeProps = (info: {
30
30
  option: TreeOption;
31
- }) => HTMLAttributes;
31
+ }) => HTMLAttributes & Record<string, unknown>;
32
32
  export interface TreeDragInfo {
33
33
  event: DragEvent;
34
34
  node: TreeOption;
@@ -55,6 +55,7 @@ export interface InternalDropInfo {
55
55
  dropPosition: DropPosition;
56
56
  }
57
57
  export declare type RenderSwitcherIcon = () => VNodeChild;
58
+ export declare type CheckOnClick = (option: TreeOption) => boolean;
58
59
  export interface TreeInjection {
59
60
  loadingKeysRef: Ref<Set<Key>>;
60
61
  highlightKeySetRef: Ref<Set<Key> | null>;
@@ -91,6 +92,7 @@ export interface TreeInjection {
91
92
  multipleRef: Ref<boolean>;
92
93
  checkboxPlacementRef: 'left' | 'right';
93
94
  internalTreeSelect: boolean;
95
+ checkOnClickRef: Ref<boolean | CheckOnClick>;
94
96
  handleSwitcherClick: (node: TreeNode<TreeOption>) => void;
95
97
  handleSelect: (node: TreeNode<TreeOption>) => void;
96
98
  handleCheck: (node: TreeNode<TreeOption>, checked: boolean) => void;
@@ -1,3 +1,3 @@
1
- export { default as NTreeSelect } from './src/TreeSelect';
1
+ export { default as NTreeSelect, treeSelectProps } from './src/TreeSelect';
2
2
  export type { TreeSelectProps } from './src/TreeSelect';
3
- export type { TreeSelectOption } from './src/interface';
3
+ export type { TreeSelectOption, TreeSelectNodeProps, TreeSelectRenderLabel, TreeSelectRenderPrefix, TreeSelectRenderSuffix, TreeSelectRenderTag } from './src/interface';
@@ -1 +1 @@
1
- export { default as NTreeSelect } from './src/TreeSelect';
1
+ export { default as NTreeSelect, treeSelectProps } from './src/TreeSelect';
@@ -1,13 +1,17 @@
1
- import { PropType, HTMLAttributes } from 'vue';
1
+ import { PropType, HTMLAttributes, VNodeChild } from 'vue';
2
2
  import { FollowerPlacement } from 'vueuc';
3
3
  import { CheckStrategy } from 'treemate';
4
4
  import type { FormValidationStatus } from '../../form/src/interface';
5
5
  import { Key } from '../../tree/src/interface';
6
- import type { SelectBaseOption } from '../../select/src/interface';
6
+ import type { SelectBaseOption, SelectOption } from '../../select/src/interface';
7
7
  import { ExtractPublicPropTypes, MaybeArray } from '../../_utils';
8
- import type { OnUpdateValue, TreeSelectOption, Value } from './interface';
8
+ import type { OnUpdateValue, TreeSelectNodeProps, TreeSelectOption, TreeSelectRenderTag, Value } from './interface';
9
9
  declare type OnLoad = (node: TreeSelectOption) => Promise<void>;
10
- declare const props: {
10
+ export declare const treeSelectProps: {
11
+ readonly renderLabel: PropType<import("./interface").TreeSelectRenderTreePart>;
12
+ readonly renderPrefix: PropType<import("./interface").TreeSelectRenderTreePart>;
13
+ readonly renderSuffix: PropType<import("./interface").TreeSelectRenderTreePart>;
14
+ readonly nodeProps: PropType<TreeSelectNodeProps>;
11
15
  readonly onBlur: PropType<(e: FocusEvent) => void>;
12
16
  readonly onFocus: PropType<(e: FocusEvent) => void>;
13
17
  readonly onLoad: PropType<OnLoad>;
@@ -40,6 +44,7 @@ declare const props: {
40
44
  readonly default: () => never[];
41
45
  };
42
46
  readonly indeterminateKeys: PropType<Key[]>;
47
+ readonly renderSwitcherIcon: PropType<import("../../tree/src/interface").RenderSwitcherIcon>;
43
48
  readonly onUpdateIndeterminateKeys: PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateKeys>>;
44
49
  readonly 'onUpdate:indeterminateKeys': PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateKeys>>;
45
50
  readonly onUpdateExpandedKeys: PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateKeys>>;
@@ -106,6 +111,7 @@ declare const props: {
106
111
  readonly default: true;
107
112
  };
108
113
  readonly status: PropType<FormValidationStatus>;
114
+ readonly renderTag: PropType<TreeSelectRenderTag>;
109
115
  readonly theme: PropType<import("../../_mixins").Theme<"TreeSelect", {
110
116
  menuPadding: string;
111
117
  menuColor: string;
@@ -563,8 +569,12 @@ declare const props: {
563
569
  }>;
564
570
  }>>>;
565
571
  };
566
- export declare type TreeSelectProps = ExtractPublicPropTypes<typeof props>;
572
+ export declare type TreeSelectProps = ExtractPublicPropTypes<typeof treeSelectProps>;
567
573
  declare const _default: import("vue").DefineComponent<{
574
+ readonly renderLabel: PropType<import("./interface").TreeSelectRenderTreePart>;
575
+ readonly renderPrefix: PropType<import("./interface").TreeSelectRenderTreePart>;
576
+ readonly renderSuffix: PropType<import("./interface").TreeSelectRenderTreePart>;
577
+ readonly nodeProps: PropType<TreeSelectNodeProps>;
568
578
  readonly onBlur: PropType<(e: FocusEvent) => void>;
569
579
  readonly onFocus: PropType<(e: FocusEvent) => void>;
570
580
  readonly onLoad: PropType<OnLoad>;
@@ -597,6 +607,7 @@ declare const _default: import("vue").DefineComponent<{
597
607
  readonly default: () => never[];
598
608
  };
599
609
  readonly indeterminateKeys: PropType<Key[]>;
610
+ readonly renderSwitcherIcon: PropType<import("../../tree/src/interface").RenderSwitcherIcon>;
600
611
  readonly onUpdateIndeterminateKeys: PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateKeys>>;
601
612
  readonly 'onUpdate:indeterminateKeys': PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateKeys>>;
602
613
  readonly onUpdateExpandedKeys: PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateKeys>>;
@@ -663,6 +674,7 @@ declare const _default: import("vue").DefineComponent<{
663
674
  readonly default: true;
664
675
  };
665
676
  readonly status: PropType<FormValidationStatus>;
677
+ readonly renderTag: PropType<TreeSelectRenderTag>;
666
678
  readonly theme: PropType<import("../../_mixins").Theme<"TreeSelect", {
667
679
  menuPadding: string;
668
680
  menuColor: string;
@@ -1149,12 +1161,16 @@ declare const _default: import("vue").DefineComponent<{
1149
1161
  treeCheckedKeys: import("vue").ComputedRef<Key[]>;
1150
1162
  mergedSize: import("vue").ComputedRef<"small" | "medium" | "large">;
1151
1163
  mergedDisabled: import("vue").ComputedRef<boolean>;
1152
- selectedOption: import("vue").ComputedRef<SelectBaseOption<string | number, string | ((option: SelectBaseOption<string | number, string | any>, selected: boolean) => import("vue").VNodeChild)> | null>;
1153
- selectedOptions: import("vue").ComputedRef<SelectBaseOption<string | number, string | ((option: SelectBaseOption<string | number, string | any>, selected: boolean) => import("vue").VNodeChild)>[] | null>;
1164
+ selectedOption: import("vue").ComputedRef<SelectBaseOption<string | number, string | ((option: SelectBaseOption<string | number, string | any>, selected: boolean) => VNodeChild)> | null>;
1165
+ selectedOptions: import("vue").ComputedRef<SelectBaseOption<string | number, string | ((option: SelectBaseOption<string | number, string | any>, selected: boolean) => VNodeChild)>[] | null>;
1154
1166
  pattern: import("vue").Ref<string>;
1155
1167
  pendingNodeKey: import("vue").Ref<string | number | null>;
1156
1168
  mergedCascade: import("vue").ComputedRef<boolean>;
1157
1169
  mergedFilter: import("vue").ComputedRef<(pattern: string, node: import("../../tree").TreeOption) => boolean>;
1170
+ selectionRenderTag: import("vue").ComputedRef<(({ option, handleClose }: {
1171
+ option: SelectOption;
1172
+ handleClose: () => void;
1173
+ }) => VNodeChild) | undefined>;
1158
1174
  handleTriggerOrMenuResize: () => void;
1159
1175
  doUpdateExpandedKeys: (keys: Key[], option: Array<TreeSelectOption | null>) => void;
1160
1176
  handleMenuLeave: () => void;
@@ -1520,6 +1536,10 @@ declare const _default: import("vue").DefineComponent<{
1520
1536
  themeClass: import("vue").Ref<string> | undefined;
1521
1537
  onRender: (() => void) | undefined;
1522
1538
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
1539
+ readonly renderLabel: PropType<import("./interface").TreeSelectRenderTreePart>;
1540
+ readonly renderPrefix: PropType<import("./interface").TreeSelectRenderTreePart>;
1541
+ readonly renderSuffix: PropType<import("./interface").TreeSelectRenderTreePart>;
1542
+ readonly nodeProps: PropType<TreeSelectNodeProps>;
1523
1543
  readonly onBlur: PropType<(e: FocusEvent) => void>;
1524
1544
  readonly onFocus: PropType<(e: FocusEvent) => void>;
1525
1545
  readonly onLoad: PropType<OnLoad>;
@@ -1552,6 +1572,7 @@ declare const _default: import("vue").DefineComponent<{
1552
1572
  readonly default: () => never[];
1553
1573
  };
1554
1574
  readonly indeterminateKeys: PropType<Key[]>;
1575
+ readonly renderSwitcherIcon: PropType<import("../../tree/src/interface").RenderSwitcherIcon>;
1555
1576
  readonly onUpdateIndeterminateKeys: PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateKeys>>;
1556
1577
  readonly 'onUpdate:indeterminateKeys': PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateKeys>>;
1557
1578
  readonly onUpdateExpandedKeys: PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateKeys>>;
@@ -1618,6 +1639,7 @@ declare const _default: import("vue").DefineComponent<{
1618
1639
  readonly default: true;
1619
1640
  };
1620
1641
  readonly status: PropType<FormValidationStatus>;
1642
+ readonly renderTag: PropType<TreeSelectRenderTag>;
1621
1643
  readonly theme: PropType<import("../../_mixins").Theme<"TreeSelect", {
1622
1644
  menuPadding: string;
1623
1645
  menuColor: string;
@@ -14,7 +14,7 @@ import { treeSelectLight } from '../styles';
14
14
  import { treeSelectInjectionKey } from './interface';
15
15
  import { treeOption2SelectOption, treeOption2SelectOptionWithPath } from './utils';
16
16
  import style from './styles/index.cssr';
17
- const props = Object.assign(Object.assign(Object.assign(Object.assign({}, useTheme.props), { bordered: {
17
+ export const treeSelectProps = Object.assign(Object.assign(Object.assign(Object.assign({}, useTheme.props), { bordered: {
18
18
  type: Boolean,
19
19
  default: true
20
20
  }, cascade: Boolean, checkable: Boolean, clearable: Boolean, clearFilterAfterSelect: {
@@ -47,14 +47,14 @@ const props = Object.assign(Object.assign(Object.assign(Object.assign({}, useThe
47
47
  }, size: String, value: [String, Number, Array], to: useAdjustedTo.propTo, menuProps: Object, virtualScroll: {
48
48
  type: Boolean,
49
49
  default: true
50
- }, status: String }), treeSharedProps), { onBlur: Function, onFocus: Function, onLoad: Function, onUpdateShow: [Function, Array], onUpdateValue: [Function, Array], 'onUpdate:value': [Function, Array], 'onUpdate:show': [Function, Array],
50
+ }, status: String, renderTag: Function }), treeSharedProps), { renderLabel: Function, renderPrefix: Function, renderSuffix: Function, nodeProps: Function, onBlur: Function, onFocus: Function, onLoad: Function, onUpdateShow: [Function, Array], onUpdateValue: [Function, Array], 'onUpdate:value': [Function, Array], 'onUpdate:show': [Function, Array],
51
51
  /**
52
52
  * @deprecated
53
53
  */
54
54
  leafOnly: Boolean });
55
55
  export default defineComponent({
56
56
  name: 'TreeSelect',
57
- props,
57
+ props: treeSelectProps,
58
58
  setup(props) {
59
59
  if (process.env.NODE_ENV !== 'production') {
60
60
  watchEffect(() => {
@@ -431,6 +431,21 @@ export default defineComponent({
431
431
  if (!happensIn(e, 'action'))
432
432
  e.preventDefault();
433
433
  }
434
+ const selectionRenderTagRef = computed(() => {
435
+ const { renderTag } = props;
436
+ if (!renderTag)
437
+ return undefined;
438
+ return function selectionRenderTag({ option, handleClose }) {
439
+ const { value } = option;
440
+ if (value !== undefined) {
441
+ const treeOption = dataTreeMateRef.value.getNode(value);
442
+ if (treeOption) {
443
+ return renderTag({ option: treeOption.rawNode, handleClose });
444
+ }
445
+ }
446
+ return value;
447
+ };
448
+ });
434
449
  provide(treeSelectInjectionKey, {
435
450
  pendingNodeKeyRef,
436
451
  dataTreeMate: dataTreeMateRef
@@ -485,6 +500,7 @@ export default defineComponent({
485
500
  pendingNodeKey: pendingNodeKeyRef,
486
501
  mergedCascade: mergedCascadeRef,
487
502
  mergedFilter: mergedFilterRef,
503
+ selectionRenderTag: selectionRenderTagRef,
488
504
  handleTriggerOrMenuResize,
489
505
  doUpdateExpandedKeys,
490
506
  handleMenuLeave,
@@ -514,7 +530,7 @@ export default defineComponent({
514
530
  h(VBinder, null, {
515
531
  default: () => [
516
532
  h(VTarget, null, {
517
- default: () => (h(NInternalSelection, { ref: "triggerInstRef", onResize: this.handleTriggerOrMenuResize, status: this.mergedStatus, focused: this.focused, clsPrefix: mergedClsPrefix, theme: mergedTheme.peers.InternalSelection, themeOverrides: mergedTheme.peerOverrides.InternalSelection, selectedOption: this.selectedOption, selectedOptions: this.selectedOptions, size: this.mergedSize, bordered: this.bordered, placeholder: this.mergedPlaceholder, disabled: this.mergedDisabled, active: this.mergedShow, loading: this.loading, multiple: this.multiple, maxTagCount: this.maxTagCount, showArrow: true, filterable: this.filterable, clearable: this.clearable, pattern: this.pattern, onPatternInput: this.handlePatternInput, onClear: this.handleClear, onClick: this.handleTriggerClick, onFocus: this.handleTriggerFocus, onBlur: this.handleTriggerBlur, onDeleteOption: this.handleDeleteOption, onKeydown: this.handleKeydown }, {
533
+ default: () => (h(NInternalSelection, { ref: "triggerInstRef", onResize: this.handleTriggerOrMenuResize, status: this.mergedStatus, focused: this.focused, clsPrefix: mergedClsPrefix, theme: mergedTheme.peers.InternalSelection, themeOverrides: mergedTheme.peerOverrides.InternalSelection, renderTag: this.selectionRenderTag, selectedOption: this.selectedOption, selectedOptions: this.selectedOptions, size: this.mergedSize, bordered: this.bordered, placeholder: this.mergedPlaceholder, disabled: this.mergedDisabled, active: this.mergedShow, loading: this.loading, multiple: this.multiple, maxTagCount: this.maxTagCount, showArrow: true, filterable: this.filterable, clearable: this.clearable, pattern: this.pattern, onPatternInput: this.handlePatternInput, onClear: this.handleClear, onClick: this.handleTriggerClick, onFocus: this.handleTriggerFocus, onBlur: this.handleTriggerBlur, onDeleteOption: this.handleDeleteOption, onKeydown: this.handleKeydown }, {
518
534
  arrow: () => { var _a, _b; return [(_b = (_a = this.$slots).arrow) === null || _b === void 0 ? void 0 : _b.call(_a)]; }
519
535
  }))
520
536
  }),
@@ -534,7 +550,7 @@ export default defineComponent({
534
550
  (menuProps === null || menuProps === void 0 ? void 0 : menuProps.style) || '',
535
551
  this.cssVars
536
552
  ], tabindex: 0, onMousedown: this.handleMenuMousedown, onKeydown: this.handleKeydown, onFocusin: this.handleMenuFocusin, onFocusout: this.handleMenuFocusout }),
537
- h(NTree, { ref: "treeInstRef", blockLine: true, allowCheckingNotLoaded: this.allowCheckingNotLoaded, showIrrelevantNodes: false, animated: false, pattern: this.pattern, filter: this.mergedFilter, data: options, cancelable: multiple, labelField: this.labelField, keyField: this.keyField, childrenField: this.childrenField, theme: mergedTheme.peers.Tree, themeOverrides: mergedTheme.peerOverrides.Tree, defaultExpandAll: this.defaultExpandAll, defaultExpandedKeys: this.defaultExpandedKeys, expandedKeys: this.mergedExpandedKeys, checkedKeys: this.treeCheckedKeys, selectedKeys: this.treeSelectedKeys, checkable: checkable, checkStrategy: this.checkStrategy, cascade: this.mergedCascade, leafOnly: this.leafOnly, multiple: this.multiple, virtualScroll: this.consistentMenuWidth && this.virtualScroll, internalTreeSelect: true, internalUnifySelectCheck: true, internalScrollable: true, internalScrollablePadding: this.menuPadding, internalFocusable: false, internalCheckboxFocusable: false, internalRenderEmpty: () => (h("div", { class: `${mergedClsPrefix}-tree-select-menu__empty` }, resolveSlot($slots.empty, () => [
553
+ h(NTree, { ref: "treeInstRef", blockLine: true, allowCheckingNotLoaded: this.allowCheckingNotLoaded, showIrrelevantNodes: false, animated: false, pattern: this.pattern, filter: this.mergedFilter, data: options, cancelable: multiple, labelField: this.labelField, keyField: this.keyField, childrenField: this.childrenField, theme: mergedTheme.peers.Tree, themeOverrides: mergedTheme.peerOverrides.Tree, defaultExpandAll: this.defaultExpandAll, defaultExpandedKeys: this.defaultExpandedKeys, expandedKeys: this.mergedExpandedKeys, checkedKeys: this.treeCheckedKeys, selectedKeys: this.treeSelectedKeys, checkable: checkable, checkStrategy: this.checkStrategy, cascade: this.mergedCascade, leafOnly: this.leafOnly, multiple: this.multiple, renderLabel: this.renderLabel, renderPrefix: this.renderPrefix, renderSuffix: this.renderSuffix, renderSwitcherIcon: this.renderSwitcherIcon, nodeProps: this.nodeProps, virtualScroll: this.consistentMenuWidth && this.virtualScroll, internalTreeSelect: true, internalUnifySelectCheck: true, internalScrollable: true, internalScrollablePadding: this.menuPadding, internalFocusable: false, internalCheckboxFocusable: false, internalRenderEmpty: () => (h("div", { class: `${mergedClsPrefix}-tree-select-menu__empty` }, resolveSlot($slots.empty, () => [
538
554
  h(NEmpty, { theme: mergedTheme.peers.Empty, themeOverrides: mergedTheme.peerOverrides.Empty })
539
555
  ]))), onLoad: this.onLoad, onUpdateCheckedKeys: this.handleUpdateCheckedKeys, onUpdateIndeterminateKeys: this.handleUpdateIndeterminateKeys, onUpdateExpandedKeys: this.doUpdateExpandedKeys }),
540
556
  resolveWrappedSlot($slots.action, (children) => {
@@ -1,5 +1,5 @@
1
1
  import { TreeMate, TreeNode } from 'treemate';
2
- import { Ref } from 'vue';
2
+ import { HTMLAttributes, Ref, VNodeChild } from 'vue';
3
3
  import type { TreeOptionBase, TreeOption } from '../../tree/src/interface';
4
4
  export declare type TreeSelectOption = Omit<TreeOptionBase, 'checkboxDisabled' | 'isLeaf' | 'children'> & {
5
5
  children?: TreeSelectOption[];
@@ -14,3 +14,19 @@ export interface TreeSelectInjection {
14
14
  dataTreeMate: Ref<TreeMate<TreeOption>>;
15
15
  }
16
16
  export declare const treeSelectInjectionKey: import("vue").InjectionKey<TreeSelectInjection>;
17
+ export declare type TreeSelectRenderTag = (props: {
18
+ option: TreeSelectOption;
19
+ handleClose: () => void;
20
+ }) => VNodeChild;
21
+ export interface TreeSelectRenderProps {
22
+ option: TreeSelectOption;
23
+ checked: boolean;
24
+ selected: boolean;
25
+ }
26
+ export declare type TreeSelectRenderTreePart = ({ option, checked, selected }: TreeSelectRenderProps) => VNodeChild;
27
+ export declare type TreeSelectRenderLabel = TreeSelectRenderTreePart;
28
+ export declare type TreeSelectRenderPrefix = TreeSelectRenderTreePart;
29
+ export declare type TreeSelectRenderSuffix = TreeSelectRenderTreePart;
30
+ export declare type TreeSelectNodeProps = (info: {
31
+ option: TreeSelectOption;
32
+ }) => HTMLAttributes & Record<string, unknown>;