naive-ui 2.35.0 → 2.36.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 (393) hide show
  1. package/README.md +2 -0
  2. package/README.zh-CN.md +1 -0
  3. package/dist/index.js +2433 -667
  4. package/dist/index.prod.js +2 -2
  5. package/es/_internal/fade-in-expand-transition/src/FadeInExpandTransition.js +1 -0
  6. package/es/_internal/scrollbar/src/Scrollbar.js +11 -6
  7. package/es/_internal/select-menu/src/SelectMenu.d.ts +3 -3
  8. package/es/_internal/select-menu/src/SelectMenu.js +1 -0
  9. package/es/_internal/select-menu/src/styles/index.cssr.js +8 -0
  10. package/es/_internal/selection/src/Selection.d.ts +3 -1
  11. package/es/_internal/selection/src/Selection.js +4 -2
  12. package/es/_styles/common/_common.js +1 -1
  13. package/es/_styles/common/light.js +2 -2
  14. package/es/_utils/composable/use-collection.d.ts +1 -1
  15. package/es/_utils/composable/use-collection.js +2 -0
  16. package/es/_utils/css/color-to-class.js +1 -1
  17. package/es/affix/src/Affix.d.ts +2 -2
  18. package/es/affix/src/Affix.js +4 -2
  19. package/es/alert/src/Alert.js +3 -1
  20. package/es/anchor/src/AnchorAdapter.d.ts +1 -1
  21. package/es/auto-complete/src/AutoComplete.d.ts +1 -1
  22. package/es/button/src/Button.d.ts +1 -1
  23. package/es/button/src/Button.js +1 -1
  24. package/es/card/src/Card.d.ts +17 -1
  25. package/es/card/src/Card.js +12 -5
  26. package/es/carousel/src/Carousel.d.ts +5 -5
  27. package/es/carousel/src/Carousel.js +2 -1
  28. package/es/checkbox/src/Checkbox.d.ts +6 -6
  29. package/es/color-picker/src/ColorPickerSwatches.js +4 -3
  30. package/es/components.d.ts +3 -0
  31. package/es/components.js +3 -0
  32. package/es/config-provider/src/config.js +5 -5
  33. package/es/config-provider/src/internal-interface.d.ts +4 -0
  34. package/es/data-table/src/DataTable.d.ts +3 -3
  35. package/es/data-table/src/DataTable.js +1 -0
  36. package/es/data-table/src/MainTable.js +1 -0
  37. package/es/data-table/src/TableParts/Body.d.ts +3 -3
  38. package/es/data-table/src/TableParts/Body.js +5 -3
  39. package/es/data-table/src/interface.d.ts +1 -1
  40. package/es/date-picker/src/panel/date.d.ts +2 -2
  41. package/es/date-picker/src/panel/daterange.d.ts +2 -2
  42. package/es/date-picker/src/panel/datetime.d.ts +2 -2
  43. package/es/date-picker/src/panel/datetimerange.d.ts +2 -2
  44. package/es/date-picker/src/panel/month.d.ts +2 -2
  45. package/es/date-picker/src/panel/monthrange.d.ts +2 -2
  46. package/es/date-picker/src/panel/panelHeader.d.ts +720 -773
  47. package/es/date-picker/src/panel/use-calendar.d.ts +2 -2
  48. package/es/date-picker/src/panel/use-calendar.js +2 -2
  49. package/es/date-picker/src/panel/use-dual-calendar.d.ts +2 -2
  50. package/es/date-picker/src/panel/use-dual-calendar.js +4 -4
  51. package/es/date-picker/src/utils.js +1 -6
  52. package/es/date-picker/styles/_common.js +1 -1
  53. package/es/descriptions/src/Descriptions.d.ts +6 -0
  54. package/es/descriptions/src/Descriptions.js +22 -7
  55. package/es/descriptions/src/DescriptionsItem.d.ts +6 -0
  56. package/es/descriptions/src/DescriptionsItem.js +2 -0
  57. package/es/dialog/src/Dialog.js +6 -2
  58. package/es/dialog/src/DialogEnvironment.d.ts +1 -1
  59. package/es/dialog/src/DialogProvider.d.ts +3 -3
  60. package/es/dialog/src/dialogProps.d.ts +1 -1
  61. package/es/dropdown/src/Dropdown.d.ts +18 -0
  62. package/es/dropdown/src/Dropdown.js +1 -1
  63. package/es/dropdown/src/DropdownMenu.js +4 -1
  64. package/es/dropdown/src/DropdownOption.d.ts +5 -4
  65. package/es/dropdown/src/DropdownOption.js +2 -4
  66. package/es/dynamic-input/src/DynamicInput.d.ts +3 -0
  67. package/es/dynamic-input/src/DynamicInput.js +3 -3
  68. package/es/dynamic-tags/src/DynamicTags.d.ts +6 -0
  69. package/es/dynamic-tags/src/DynamicTags.js +4 -4
  70. package/es/equation/index.d.ts +1 -0
  71. package/es/equation/src/Equation.d.ts +2 -0
  72. package/es/form/src/FormItem.d.ts +1 -1
  73. package/es/form/src/utils.d.ts +1 -1
  74. package/es/input/src/Input.d.ts +4 -4
  75. package/es/input/src/styles/input.cssr.js +1 -1
  76. package/es/layout/src/Layout.d.ts +6 -0
  77. package/es/layout/src/Layout.js +8 -1
  78. package/es/layout/src/LayoutContent.d.ts +2 -0
  79. package/es/layout/src/LayoutSider.d.ts +9 -0
  80. package/es/layout/src/LayoutSider.js +12 -3
  81. package/es/legacy-grid/src/styles/index.cssr.js +2 -3
  82. package/es/legacy-grid/src/styles/rtl.cssr.js +2 -3
  83. package/es/loading-bar/src/LoadingBar.d.ts +2 -0
  84. package/es/loading-bar/src/LoadingBar.js +3 -1
  85. package/es/loading-bar/src/LoadingBarProvider.d.ts +3 -0
  86. package/es/loading-bar/src/LoadingBarProvider.js +2 -2
  87. package/es/locales/common/frFR.js +1 -1
  88. package/es/log/src/Log.d.ts +3 -3
  89. package/es/mention/src/Mention.d.ts +1 -1
  90. package/es/mention/src/utils.js +4 -4
  91. package/es/menu/src/Menu.d.ts +30 -13
  92. package/es/menu/src/Menu.js +101 -7
  93. package/es/menu/src/MenuOptionContent.d.ts +3 -0
  94. package/es/menu/src/MenuOptionContent.js +7 -2
  95. package/es/menu/src/Submenu.d.ts +23 -12
  96. package/es/menu/src/Submenu.js +9 -8
  97. package/es/menu/src/interface.d.ts +1 -0
  98. package/es/menu/src/styles/index.cssr.js +8 -4
  99. package/es/menu/src/use-menu-child.js +5 -5
  100. package/es/message/src/Message.d.ts +1 -1
  101. package/es/message/src/MessageProvider.d.ts +7 -4
  102. package/es/message/src/MessageProvider.js +3 -2
  103. package/es/modal/src/BodyWrapper.d.ts +12 -4
  104. package/es/modal/src/Modal.d.ts +16 -4
  105. package/es/modal/src/presetProps.d.ts +5 -1
  106. package/es/notification/src/NotificationEnvironment.js +1 -1
  107. package/es/notification/src/NotificationProvider.d.ts +3 -0
  108. package/es/notification/src/NotificationProvider.js +2 -2
  109. package/es/popconfirm/src/Popconfirm.d.ts +18 -0
  110. package/es/popover/src/Popover.d.ts +24 -0
  111. package/es/popover/src/Popover.js +7 -0
  112. package/es/popover/src/PopoverBody.d.ts +22 -1
  113. package/es/popover/src/PopoverBody.js +26 -10
  114. package/es/popover/src/interface.d.ts +1 -1
  115. package/es/popselect/src/Popselect.d.ts +18 -0
  116. package/es/popselect/src/Popselect.js +2 -1
  117. package/es/popselect/src/PopselectPanel.js +1 -0
  118. package/es/progress/src/Progress.d.ts +1 -1
  119. package/es/qr-code/index.d.ts +2 -0
  120. package/es/qr-code/index.js +1 -0
  121. package/es/qr-code/src/QrCode.d.ts +154 -0
  122. package/es/qr-code/src/QrCode.js +146 -0
  123. package/es/qr-code/src/qrcodegen.d.ts +94 -0
  124. package/es/qr-code/src/qrcodegen.js +948 -0
  125. package/es/qr-code/src/styles/index.cssr.d.ts +2 -0
  126. package/es/qr-code/src/styles/index.cssr.js +8 -0
  127. package/es/qr-code/styles/dark.d.ts +3 -0
  128. package/es/qr-code/styles/dark.js +11 -0
  129. package/es/qr-code/styles/index.d.ts +3 -0
  130. package/es/qr-code/styles/index.js +2 -0
  131. package/es/qr-code/styles/light.d.ts +9 -0
  132. package/es/qr-code/styles/light.js +12 -0
  133. package/es/radio/src/RadioGroup.d.ts +1 -0
  134. package/es/radio/src/RadioGroup.js +2 -1
  135. package/es/radio/src/styles/radio-group.cssr.js +1 -0
  136. package/es/result/src/Result.d.ts +1 -1
  137. package/es/scrollbar/src/Scrollbar.js +2 -0
  138. package/es/select/src/Select.d.ts +1 -1
  139. package/es/skeleton/src/Skeleton.js +4 -7
  140. package/es/slider/src/Slider.d.ts +6 -0
  141. package/es/slider/src/Slider.js +10 -3
  142. package/es/slider/src/utils.d.ts +2 -2
  143. package/es/slider/src/utils.js +4 -4
  144. package/es/space/src/Space.d.ts +3 -0
  145. package/es/space/src/Space.js +3 -3
  146. package/es/spin/src/Spin.d.ts +7 -1
  147. package/es/spin/src/Spin.js +4 -3
  148. package/es/split/index.d.ts +2 -0
  149. package/es/split/index.js +1 -0
  150. package/es/split/src/Split.d.ts +135 -0
  151. package/es/split/src/Split.js +145 -0
  152. package/es/split/src/styles/index.cssr.d.ts +2 -0
  153. package/es/split/src/styles/index.cssr.js +25 -0
  154. package/es/split/styles/dark.d.ts +3 -0
  155. package/es/split/styles/dark.js +6 -0
  156. package/es/split/styles/index.d.ts +3 -0
  157. package/es/split/styles/index.js +2 -0
  158. package/es/split/styles/light.d.ts +9 -0
  159. package/es/split/styles/light.js +13 -0
  160. package/es/steps/src/Steps.d.ts +1 -1
  161. package/es/tabs/src/Tab.js +3 -1
  162. package/es/tabs/src/Tabs.d.ts +6 -6
  163. package/es/tabs/src/Tabs.js +2 -2
  164. package/es/tabs/src/styles/index.cssr.js +12 -2
  165. package/es/theme-editor/src/ThemeEditor.d.ts +2 -2
  166. package/es/themes/dark.js +5 -1
  167. package/es/themes/light.js +5 -1
  168. package/es/thing/src/Thing.d.ts +6 -0
  169. package/es/thing/src/Thing.js +13 -4
  170. package/es/tooltip/src/Tooltip.d.ts +18 -0
  171. package/es/tree/index.d.ts +1 -0
  172. package/es/tree/index.js +1 -0
  173. package/es/tree/src/Tree.d.ts +11 -0
  174. package/es/tree/src/Tree.js +6 -3
  175. package/es/tree/src/TreeNode.js +30 -19
  176. package/es/tree/src/TreeNodeCheckbox.d.ts +1 -0
  177. package/es/tree/src/TreeNodeSwitcher.d.ts +1 -1
  178. package/es/tree/src/styles/index.cssr.js +4 -3
  179. package/es/tree/src/utils.d.ts +1 -0
  180. package/es/tree/src/utils.js +12 -0
  181. package/es/tree/styles/light.d.ts +2 -0
  182. package/es/tree/styles/light.js +3 -2
  183. package/es/tree-select/src/TreeSelect.d.ts +17 -10
  184. package/es/tree-select/src/TreeSelect.js +2 -2
  185. package/es/tree-select/styles/light.d.ts +1 -0
  186. package/es/upload/src/Upload.d.ts +6 -0
  187. package/es/upload/src/Upload.js +8 -3
  188. package/es/upload/src/UploadFileList.js +3 -2
  189. package/es/upload/src/UploadTrigger.js +3 -2
  190. package/es/upload/src/interface.d.ts +2 -0
  191. package/es/version.d.ts +1 -1
  192. package/es/version.js +1 -1
  193. package/es/virtual-list/index.d.ts +2 -0
  194. package/es/virtual-list/index.js +1 -0
  195. package/es/virtual-list/src/VirtualList.d.ts +146 -0
  196. package/es/virtual-list/src/VirtualList.js +102 -0
  197. package/es/watermark/src/Watermark.js +7 -0
  198. package/lib/_internal/fade-in-expand-transition/src/FadeInExpandTransition.js +1 -0
  199. package/lib/_internal/scrollbar/src/Scrollbar.js +11 -6
  200. package/lib/_internal/select-menu/src/SelectMenu.d.ts +3 -3
  201. package/lib/_internal/select-menu/src/SelectMenu.js +1 -0
  202. package/lib/_internal/select-menu/src/styles/index.cssr.js +8 -0
  203. package/lib/_internal/selection/src/Selection.d.ts +3 -1
  204. package/lib/_internal/selection/src/Selection.js +4 -2
  205. package/lib/_styles/common/_common.js +1 -1
  206. package/lib/_styles/common/light.js +2 -2
  207. package/lib/_utils/composable/use-collection.d.ts +1 -1
  208. package/lib/_utils/composable/use-collection.js +2 -0
  209. package/lib/_utils/css/color-to-class.js +1 -1
  210. package/lib/affix/src/Affix.d.ts +2 -2
  211. package/lib/affix/src/Affix.js +4 -2
  212. package/lib/alert/src/Alert.js +3 -1
  213. package/lib/anchor/src/AnchorAdapter.d.ts +1 -1
  214. package/lib/auto-complete/src/AutoComplete.d.ts +1 -1
  215. package/lib/button/src/Button.d.ts +1 -1
  216. package/lib/button/src/Button.js +1 -1
  217. package/lib/card/src/Card.d.ts +17 -1
  218. package/lib/card/src/Card.js +12 -5
  219. package/lib/carousel/src/Carousel.d.ts +5 -5
  220. package/lib/carousel/src/Carousel.js +2 -1
  221. package/lib/checkbox/src/Checkbox.d.ts +6 -6
  222. package/lib/color-picker/src/ColorPickerSwatches.js +4 -3
  223. package/lib/components.d.ts +3 -0
  224. package/lib/components.js +3 -0
  225. package/lib/config-provider/src/config.js +5 -5
  226. package/lib/config-provider/src/internal-interface.d.ts +4 -0
  227. package/lib/data-table/src/DataTable.d.ts +3 -3
  228. package/lib/data-table/src/DataTable.js +1 -0
  229. package/lib/data-table/src/MainTable.js +1 -0
  230. package/lib/data-table/src/TableParts/Body.d.ts +3 -3
  231. package/lib/data-table/src/TableParts/Body.js +5 -3
  232. package/lib/data-table/src/interface.d.ts +1 -1
  233. package/lib/date-picker/src/panel/date.d.ts +2 -2
  234. package/lib/date-picker/src/panel/daterange.d.ts +2 -2
  235. package/lib/date-picker/src/panel/datetime.d.ts +2 -2
  236. package/lib/date-picker/src/panel/datetimerange.d.ts +2 -2
  237. package/lib/date-picker/src/panel/month.d.ts +2 -2
  238. package/lib/date-picker/src/panel/monthrange.d.ts +2 -2
  239. package/lib/date-picker/src/panel/panelHeader.d.ts +720 -773
  240. package/lib/date-picker/src/panel/use-calendar.d.ts +2 -2
  241. package/lib/date-picker/src/panel/use-calendar.js +2 -2
  242. package/lib/date-picker/src/panel/use-dual-calendar.d.ts +2 -2
  243. package/lib/date-picker/src/panel/use-dual-calendar.js +4 -4
  244. package/lib/date-picker/src/utils.js +1 -6
  245. package/lib/date-picker/styles/_common.js +1 -1
  246. package/lib/descriptions/src/Descriptions.d.ts +6 -0
  247. package/lib/descriptions/src/Descriptions.js +22 -7
  248. package/lib/descriptions/src/DescriptionsItem.d.ts +6 -0
  249. package/lib/descriptions/src/DescriptionsItem.js +2 -0
  250. package/lib/dialog/src/Dialog.js +6 -2
  251. package/lib/dialog/src/DialogEnvironment.d.ts +1 -1
  252. package/lib/dialog/src/DialogProvider.d.ts +3 -3
  253. package/lib/dialog/src/dialogProps.d.ts +1 -1
  254. package/lib/dropdown/src/Dropdown.d.ts +18 -0
  255. package/lib/dropdown/src/Dropdown.js +1 -1
  256. package/lib/dropdown/src/DropdownMenu.js +4 -1
  257. package/lib/dropdown/src/DropdownOption.d.ts +5 -4
  258. package/lib/dropdown/src/DropdownOption.js +2 -4
  259. package/lib/dynamic-input/src/DynamicInput.d.ts +3 -0
  260. package/lib/dynamic-input/src/DynamicInput.js +3 -3
  261. package/lib/dynamic-tags/src/DynamicTags.d.ts +6 -0
  262. package/lib/dynamic-tags/src/DynamicTags.js +4 -4
  263. package/lib/equation/index.d.ts +1 -0
  264. package/lib/equation/src/Equation.d.ts +2 -0
  265. package/lib/form/src/FormItem.d.ts +1 -1
  266. package/lib/form/src/utils.d.ts +1 -1
  267. package/lib/input/src/Input.d.ts +4 -4
  268. package/lib/input/src/styles/input.cssr.js +1 -1
  269. package/lib/layout/src/Layout.d.ts +6 -0
  270. package/lib/layout/src/Layout.js +8 -1
  271. package/lib/layout/src/LayoutContent.d.ts +2 -0
  272. package/lib/layout/src/LayoutSider.d.ts +9 -0
  273. package/lib/layout/src/LayoutSider.js +12 -3
  274. package/lib/legacy-grid/src/styles/index.cssr.js +2 -3
  275. package/lib/legacy-grid/src/styles/rtl.cssr.js +2 -3
  276. package/lib/loading-bar/src/LoadingBar.d.ts +2 -0
  277. package/lib/loading-bar/src/LoadingBar.js +3 -1
  278. package/lib/loading-bar/src/LoadingBarProvider.d.ts +3 -0
  279. package/lib/loading-bar/src/LoadingBarProvider.js +2 -2
  280. package/lib/locales/common/frFR.js +1 -1
  281. package/lib/log/src/Log.d.ts +3 -3
  282. package/lib/mention/src/Mention.d.ts +1 -1
  283. package/lib/mention/src/utils.js +4 -4
  284. package/lib/menu/src/Menu.d.ts +30 -13
  285. package/lib/menu/src/Menu.js +101 -7
  286. package/lib/menu/src/MenuOptionContent.d.ts +3 -0
  287. package/lib/menu/src/MenuOptionContent.js +7 -2
  288. package/lib/menu/src/Submenu.d.ts +23 -12
  289. package/lib/menu/src/Submenu.js +9 -8
  290. package/lib/menu/src/interface.d.ts +1 -0
  291. package/lib/menu/src/styles/index.cssr.js +8 -4
  292. package/lib/menu/src/use-menu-child.js +5 -5
  293. package/lib/message/src/Message.d.ts +1 -1
  294. package/lib/message/src/MessageProvider.d.ts +7 -4
  295. package/lib/message/src/MessageProvider.js +3 -2
  296. package/lib/modal/src/BodyWrapper.d.ts +12 -4
  297. package/lib/modal/src/Modal.d.ts +16 -4
  298. package/lib/modal/src/presetProps.d.ts +5 -1
  299. package/lib/notification/src/NotificationEnvironment.js +1 -1
  300. package/lib/notification/src/NotificationProvider.d.ts +3 -0
  301. package/lib/notification/src/NotificationProvider.js +2 -2
  302. package/lib/popconfirm/src/Popconfirm.d.ts +18 -0
  303. package/lib/popover/src/Popover.d.ts +24 -0
  304. package/lib/popover/src/Popover.js +7 -0
  305. package/lib/popover/src/PopoverBody.d.ts +22 -1
  306. package/lib/popover/src/PopoverBody.js +26 -10
  307. package/lib/popover/src/interface.d.ts +1 -1
  308. package/lib/popselect/src/Popselect.d.ts +18 -0
  309. package/lib/popselect/src/Popselect.js +2 -1
  310. package/lib/popselect/src/PopselectPanel.js +1 -0
  311. package/lib/progress/src/Progress.d.ts +1 -1
  312. package/lib/qr-code/index.d.ts +2 -0
  313. package/lib/qr-code/index.js +9 -0
  314. package/lib/qr-code/src/QrCode.d.ts +154 -0
  315. package/lib/qr-code/src/QrCode.js +152 -0
  316. package/lib/qr-code/src/qrcodegen.d.ts +94 -0
  317. package/lib/qr-code/src/qrcodegen.js +949 -0
  318. package/lib/qr-code/src/styles/index.cssr.d.ts +2 -0
  319. package/lib/qr-code/src/styles/index.cssr.js +13 -0
  320. package/lib/qr-code/styles/dark.d.ts +3 -0
  321. package/lib/qr-code/styles/dark.js +13 -0
  322. package/lib/qr-code/styles/index.d.ts +3 -0
  323. package/lib/qr-code/styles/index.js +10 -0
  324. package/lib/qr-code/styles/light.d.ts +9 -0
  325. package/lib/qr-code/styles/light.js +14 -0
  326. package/lib/radio/src/RadioGroup.d.ts +1 -0
  327. package/lib/radio/src/RadioGroup.js +2 -1
  328. package/lib/radio/src/styles/radio-group.cssr.js +1 -0
  329. package/lib/result/src/Result.d.ts +1 -1
  330. package/lib/scrollbar/src/Scrollbar.js +2 -0
  331. package/lib/select/src/Select.d.ts +1 -1
  332. package/lib/skeleton/src/Skeleton.js +3 -6
  333. package/lib/slider/src/Slider.d.ts +6 -0
  334. package/lib/slider/src/Slider.js +10 -3
  335. package/lib/slider/src/utils.d.ts +2 -2
  336. package/lib/slider/src/utils.js +3 -3
  337. package/lib/space/src/Space.d.ts +3 -0
  338. package/lib/space/src/Space.js +3 -3
  339. package/lib/spin/src/Spin.d.ts +7 -1
  340. package/lib/spin/src/Spin.js +4 -3
  341. package/lib/split/index.d.ts +2 -0
  342. package/lib/split/index.js +9 -0
  343. package/lib/split/src/Split.d.ts +135 -0
  344. package/lib/split/src/Split.js +151 -0
  345. package/lib/split/src/styles/index.cssr.d.ts +2 -0
  346. package/lib/split/src/styles/index.cssr.js +30 -0
  347. package/lib/split/styles/dark.d.ts +3 -0
  348. package/lib/split/styles/dark.js +8 -0
  349. package/lib/split/styles/index.d.ts +3 -0
  350. package/lib/split/styles/index.js +10 -0
  351. package/lib/split/styles/light.d.ts +9 -0
  352. package/lib/split/styles/light.js +17 -0
  353. package/lib/steps/src/Steps.d.ts +1 -1
  354. package/lib/tabs/src/Tab.js +3 -1
  355. package/lib/tabs/src/Tabs.d.ts +6 -6
  356. package/lib/tabs/src/Tabs.js +2 -2
  357. package/lib/tabs/src/styles/index.cssr.js +12 -2
  358. package/lib/theme-editor/src/ThemeEditor.d.ts +2 -2
  359. package/lib/themes/dark.js +56 -52
  360. package/lib/themes/light.js +56 -52
  361. package/lib/thing/src/Thing.d.ts +6 -0
  362. package/lib/thing/src/Thing.js +13 -4
  363. package/lib/tooltip/src/Tooltip.d.ts +18 -0
  364. package/lib/tree/index.d.ts +1 -0
  365. package/lib/tree/index.js +3 -1
  366. package/lib/tree/src/Tree.d.ts +11 -0
  367. package/lib/tree/src/Tree.js +6 -3
  368. package/lib/tree/src/TreeNode.js +30 -19
  369. package/lib/tree/src/TreeNodeCheckbox.d.ts +1 -0
  370. package/lib/tree/src/TreeNodeSwitcher.d.ts +1 -1
  371. package/lib/tree/src/styles/index.cssr.js +4 -3
  372. package/lib/tree/src/utils.d.ts +1 -0
  373. package/lib/tree/src/utils.js +14 -1
  374. package/lib/tree/styles/light.d.ts +2 -0
  375. package/lib/tree/styles/light.js +3 -2
  376. package/lib/tree-select/src/TreeSelect.d.ts +17 -10
  377. package/lib/tree-select/src/TreeSelect.js +2 -2
  378. package/lib/tree-select/styles/light.d.ts +1 -0
  379. package/lib/upload/src/Upload.d.ts +6 -0
  380. package/lib/upload/src/Upload.js +8 -3
  381. package/lib/upload/src/UploadFileList.js +3 -2
  382. package/lib/upload/src/UploadTrigger.js +3 -2
  383. package/lib/upload/src/interface.d.ts +2 -0
  384. package/lib/version.d.ts +1 -1
  385. package/lib/version.js +1 -1
  386. package/lib/virtual-list/index.d.ts +2 -0
  387. package/lib/virtual-list/index.js +9 -0
  388. package/lib/virtual-list/src/VirtualList.d.ts +146 -0
  389. package/lib/virtual-list/src/VirtualList.js +105 -0
  390. package/lib/watermark/src/Watermark.js +7 -0
  391. package/package.json +15 -15
  392. package/volar.d.ts +4 -0
  393. package/web-types.json +773 -18
@@ -12,6 +12,7 @@ export declare const treeSelectProps: {
12
12
  readonly renderPrefix: PropType<import("./interface").TreeSelectRenderTreePart>;
13
13
  readonly renderSuffix: PropType<import("./interface").TreeSelectRenderTreePart>;
14
14
  readonly nodeProps: PropType<TreeSelectNodeProps>;
15
+ readonly watchProps: PropType<("defaultExpandedKeys" | "defaultCheckedKeys" | "defaultSelectedKeys")[]>;
15
16
  readonly onBlur: PropType<(e: FocusEvent) => void>;
16
17
  readonly onFocus: PropType<(e: FocusEvent) => void>;
17
18
  readonly onLoad: PropType<OnLoad>;
@@ -46,9 +47,7 @@ export declare const treeSelectProps: {
46
47
  readonly defaultExpandedKeys: {
47
48
  readonly type: PropType<Key[]>;
48
49
  readonly default: () => never[];
49
- }; /**
50
- * @deprecated
51
- */
50
+ };
52
51
  readonly indeterminateKeys: PropType<Key[]>;
53
52
  readonly renderSwitcherIcon: PropType<import("../../tree/src/interface").RenderSwitcherIcon>;
54
53
  readonly onUpdateIndeterminateKeys: PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateIndeterminateKeys>>;
@@ -142,6 +141,7 @@ export declare const treeSelectProps: {
142
141
  nodeTextColorDisabled: string;
143
142
  loadingColor: string;
144
143
  dropMarkColor: string;
144
+ lineColor: string;
145
145
  }, {
146
146
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
147
147
  labelLineHeight: string;
@@ -298,6 +298,7 @@ export declare const treeSelectProps: {
298
298
  nodeTextColorDisabled: string;
299
299
  loadingColor: string;
300
300
  dropMarkColor: string;
301
+ lineColor: string;
301
302
  }, {
302
303
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
303
304
  labelLineHeight: string;
@@ -454,6 +455,7 @@ export declare const treeSelectProps: {
454
455
  nodeTextColorDisabled: string;
455
456
  loadingColor: string;
456
457
  dropMarkColor: string;
458
+ lineColor: string;
457
459
  }, {
458
460
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
459
461
  labelLineHeight: string;
@@ -593,6 +595,7 @@ declare const _default: import("vue").DefineComponent<{
593
595
  readonly renderPrefix: PropType<import("./interface").TreeSelectRenderTreePart>;
594
596
  readonly renderSuffix: PropType<import("./interface").TreeSelectRenderTreePart>;
595
597
  readonly nodeProps: PropType<TreeSelectNodeProps>;
598
+ readonly watchProps: PropType<("defaultExpandedKeys" | "defaultCheckedKeys" | "defaultSelectedKeys")[]>;
596
599
  readonly onBlur: PropType<(e: FocusEvent) => void>;
597
600
  readonly onFocus: PropType<(e: FocusEvent) => void>;
598
601
  readonly onLoad: PropType<OnLoad>;
@@ -627,9 +630,7 @@ declare const _default: import("vue").DefineComponent<{
627
630
  readonly defaultExpandedKeys: {
628
631
  readonly type: PropType<Key[]>;
629
632
  readonly default: () => never[];
630
- }; /**
631
- * @deprecated
632
- */
633
+ };
633
634
  readonly indeterminateKeys: PropType<Key[]>;
634
635
  readonly renderSwitcherIcon: PropType<import("../../tree/src/interface").RenderSwitcherIcon>;
635
636
  readonly onUpdateIndeterminateKeys: PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateIndeterminateKeys>>;
@@ -723,6 +724,7 @@ declare const _default: import("vue").DefineComponent<{
723
724
  nodeTextColorDisabled: string;
724
725
  loadingColor: string;
725
726
  dropMarkColor: string;
727
+ lineColor: string;
726
728
  }, {
727
729
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
728
730
  labelLineHeight: string;
@@ -879,6 +881,7 @@ declare const _default: import("vue").DefineComponent<{
879
881
  nodeTextColorDisabled: string;
880
882
  loadingColor: string;
881
883
  dropMarkColor: string;
884
+ lineColor: string;
882
885
  }, {
883
886
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
884
887
  labelLineHeight: string;
@@ -1035,6 +1038,7 @@ declare const _default: import("vue").DefineComponent<{
1035
1038
  nodeTextColorDisabled: string;
1036
1039
  loadingColor: string;
1037
1040
  dropMarkColor: string;
1041
+ lineColor: string;
1038
1042
  }, {
1039
1043
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
1040
1044
  labelLineHeight: string;
@@ -1365,6 +1369,7 @@ declare const _default: import("vue").DefineComponent<{
1365
1369
  nodeTextColorDisabled: string;
1366
1370
  loadingColor: string;
1367
1371
  dropMarkColor: string;
1372
+ lineColor: string;
1368
1373
  }, {
1369
1374
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
1370
1375
  labelLineHeight: string;
@@ -1603,6 +1608,7 @@ declare const _default: import("vue").DefineComponent<{
1603
1608
  readonly renderPrefix: PropType<import("./interface").TreeSelectRenderTreePart>;
1604
1609
  readonly renderSuffix: PropType<import("./interface").TreeSelectRenderTreePart>;
1605
1610
  readonly nodeProps: PropType<TreeSelectNodeProps>;
1611
+ readonly watchProps: PropType<("defaultExpandedKeys" | "defaultCheckedKeys" | "defaultSelectedKeys")[]>;
1606
1612
  readonly onBlur: PropType<(e: FocusEvent) => void>;
1607
1613
  readonly onFocus: PropType<(e: FocusEvent) => void>;
1608
1614
  readonly onLoad: PropType<OnLoad>;
@@ -1637,9 +1643,7 @@ declare const _default: import("vue").DefineComponent<{
1637
1643
  readonly defaultExpandedKeys: {
1638
1644
  readonly type: PropType<Key[]>;
1639
1645
  readonly default: () => never[];
1640
- }; /**
1641
- * @deprecated
1642
- */
1646
+ };
1643
1647
  readonly indeterminateKeys: PropType<Key[]>;
1644
1648
  readonly renderSwitcherIcon: PropType<import("../../tree/src/interface").RenderSwitcherIcon>;
1645
1649
  readonly onUpdateIndeterminateKeys: PropType<MaybeArray<import("../../tree/src/Tree").OnUpdateIndeterminateKeys>>;
@@ -1733,6 +1737,7 @@ declare const _default: import("vue").DefineComponent<{
1733
1737
  nodeTextColorDisabled: string;
1734
1738
  loadingColor: string;
1735
1739
  dropMarkColor: string;
1740
+ lineColor: string;
1736
1741
  }, {
1737
1742
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
1738
1743
  labelLineHeight: string;
@@ -1889,6 +1894,7 @@ declare const _default: import("vue").DefineComponent<{
1889
1894
  nodeTextColorDisabled: string;
1890
1895
  loadingColor: string;
1891
1896
  dropMarkColor: string;
1897
+ lineColor: string;
1892
1898
  }, {
1893
1899
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
1894
1900
  labelLineHeight: string;
@@ -2045,6 +2051,7 @@ declare const _default: import("vue").DefineComponent<{
2045
2051
  nodeTextColorDisabled: string;
2046
2052
  loadingColor: string;
2047
2053
  dropMarkColor: string;
2054
+ lineColor: string;
2048
2055
  }, {
2049
2056
  Checkbox: import("../../_mixins").Theme<"Checkbox", {
2050
2057
  labelLineHeight: string;
@@ -2183,8 +2190,8 @@ declare const _default: import("vue").DefineComponent<{
2183
2190
  readonly separator: string;
2184
2191
  readonly multiple: boolean;
2185
2192
  readonly disabled: boolean | undefined;
2186
- readonly to: string | boolean | HTMLElement;
2187
2193
  readonly loading: boolean;
2194
+ readonly to: string | boolean | HTMLElement;
2188
2195
  readonly bordered: boolean;
2189
2196
  readonly placement: FollowerPlacement;
2190
2197
  readonly keyField: string;
@@ -54,7 +54,7 @@ exports.treeSelectProps = Object.assign(Object.assign(Object.assign(Object.assig
54
54
  }, size: String, value: [String, Number, Array], to: _utils_1.useAdjustedTo.propTo, menuProps: Object, virtualScroll: {
55
55
  type: Boolean,
56
56
  default: true
57
- }, status: String, renderTag: Function }), Tree_1.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],
57
+ }, status: String, renderTag: Function }), Tree_1.treeSharedProps), { renderLabel: Function, renderPrefix: Function, renderSuffix: Function, nodeProps: Function, watchProps: Array, onBlur: Function, onFocus: Function, onLoad: Function, onUpdateShow: [Function, Array], onUpdateValue: [Function, Array], 'onUpdate:value': [Function, Array], 'onUpdate:show': [Function, Array],
58
58
  /**
59
59
  * @deprecated
60
60
  */
@@ -583,7 +583,7 @@ exports.default = (0, vue_1.defineComponent)({
583
583
  (menuProps === null || menuProps === void 0 ? void 0 : menuProps.style) || '',
584
584
  this.cssVars
585
585
  ], tabindex: 0, onMousedown: this.handleMenuMousedown, onKeydown: this.handleKeydown, onFocusin: this.handleMenuFocusin, onFocusout: this.handleMenuFocusout }),
586
- (0, vue_1.h)(tree_1.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, disabledField: this.disabledField, 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: () => ((0, vue_1.h)("div", { class: `${mergedClsPrefix}-tree-select-menu__empty` }, (0, _utils_1.resolveSlot)($slots.empty, () => [
586
+ (0, vue_1.h)(tree_1.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, disabledField: this.disabledField, 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, watchProps: this.watchProps, virtualScroll: this.consistentMenuWidth && this.virtualScroll, internalTreeSelect: true, internalUnifySelectCheck: true, internalScrollable: true, internalScrollablePadding: this.menuPadding, internalFocusable: false, internalCheckboxFocusable: false, internalRenderEmpty: () => ((0, vue_1.h)("div", { class: `${mergedClsPrefix}-tree-select-menu__empty` }, (0, _utils_1.resolveSlot)($slots.empty, () => [
587
587
  (0, vue_1.h)(empty_1.NEmpty, { theme: mergedTheme.peers.Empty, themeOverrides: mergedTheme.peerOverrides.Empty })
588
588
  ]))), onLoad: this.onLoad, onUpdateCheckedKeys: this.handleUpdateCheckedKeys, onUpdateIndeterminateKeys: this.handleUpdateIndeterminateKeys, onUpdateExpandedKeys: this.doUpdateExpandedKeys }),
589
589
  (0, _utils_1.resolveWrappedSlot)($slots.action, (children) => {
@@ -34,6 +34,7 @@ declare const treeSelectLight: import("../../_mixins/use-theme").Theme<"TreeSele
34
34
  nodeTextColorDisabled: string;
35
35
  loadingColor: string;
36
36
  dropMarkColor: string;
37
+ lineColor: string;
37
38
  }, {
38
39
  Checkbox: import("../../_mixins/use-theme").Theme<"Checkbox", {
39
40
  labelLineHeight: string;
@@ -50,6 +50,7 @@ export declare const uploadProps: {
50
50
  readonly fileList: PropType<FileInfo[]>;
51
51
  readonly 'onUpdate:fileList': PropType<MaybeArray<OnUpdateFileList>>;
52
52
  readonly onUpdateFileList: PropType<MaybeArray<OnUpdateFileList>>;
53
+ readonly fileListClass: StringConstructor;
53
54
  readonly fileListStyle: PropType<string | CSSProperties>;
54
55
  readonly defaultFileList: {
55
56
  readonly type: PropType<FileInfo[]>;
@@ -90,6 +91,7 @@ export declare const uploadProps: {
90
91
  };
91
92
  readonly imageGroupProps: PropType<ImageGroupProps>;
92
93
  readonly inputProps: PropType<InputHTMLAttributes>;
94
+ readonly triggerClass: StringConstructor;
93
95
  readonly triggerStyle: PropType<string | CSSProperties>;
94
96
  readonly renderIcon: PropType<RenderIcon>;
95
97
  readonly theme: PropType<import("../../_mixins").Theme<"Upload", {
@@ -877,6 +879,7 @@ declare const _default: import("vue").DefineComponent<{
877
879
  readonly fileList: PropType<FileInfo[]>;
878
880
  readonly 'onUpdate:fileList': PropType<MaybeArray<OnUpdateFileList>>;
879
881
  readonly onUpdateFileList: PropType<MaybeArray<OnUpdateFileList>>;
882
+ readonly fileListClass: StringConstructor;
880
883
  readonly fileListStyle: PropType<string | CSSProperties>;
881
884
  readonly defaultFileList: {
882
885
  readonly type: PropType<FileInfo[]>;
@@ -917,6 +920,7 @@ declare const _default: import("vue").DefineComponent<{
917
920
  };
918
921
  readonly imageGroupProps: PropType<ImageGroupProps>;
919
922
  readonly inputProps: PropType<InputHTMLAttributes>;
923
+ readonly triggerClass: StringConstructor;
920
924
  readonly triggerStyle: PropType<string | CSSProperties>;
921
925
  readonly renderIcon: PropType<RenderIcon>;
922
926
  readonly theme: PropType<import("../../_mixins").Theme<"Upload", {
@@ -2082,6 +2086,7 @@ declare const _default: import("vue").DefineComponent<{
2082
2086
  readonly fileList: PropType<FileInfo[]>;
2083
2087
  readonly 'onUpdate:fileList': PropType<MaybeArray<OnUpdateFileList>>;
2084
2088
  readonly onUpdateFileList: PropType<MaybeArray<OnUpdateFileList>>;
2089
+ readonly fileListClass: StringConstructor;
2085
2090
  readonly fileListStyle: PropType<string | CSSProperties>;
2086
2091
  readonly defaultFileList: {
2087
2092
  readonly type: PropType<FileInfo[]>;
@@ -2122,6 +2127,7 @@ declare const _default: import("vue").DefineComponent<{
2122
2127
  };
2123
2128
  readonly imageGroupProps: PropType<ImageGroupProps>;
2124
2129
  readonly inputProps: PropType<InputHTMLAttributes>;
2130
+ readonly triggerClass: StringConstructor;
2125
2131
  readonly triggerStyle: PropType<string | CSSProperties>;
2126
2132
  readonly renderIcon: PropType<RenderIcon>;
2127
2133
  readonly theme: PropType<import("../../_mixins").Theme<"Upload", {
@@ -167,7 +167,9 @@ function submitImpl(inst, fieldName, file, { method, action, withCredentials, re
167
167
  request.withCredentials = withCredentials;
168
168
  const formData = new FormData();
169
169
  appendData(formData, data, file);
170
- formData.append(fieldName, file.file);
170
+ if (file.file !== null) {
171
+ formData.append(fieldName, file.file);
172
+ }
171
173
  registerHandler(inst, file, request);
172
174
  if (action !== undefined) {
173
175
  request.open(method.toUpperCase(), action);
@@ -199,7 +201,7 @@ exports.uploadProps = Object.assign(Object.assign({}, _mixins_1.useTheme.props),
199
201
  onDownload: Function, defaultUpload: {
200
202
  type: Boolean,
201
203
  default: true
202
- }, fileList: Array, 'onUpdate:fileList': [Function, Array], onUpdateFileList: [Function, Array], fileListStyle: [String, Object], defaultFileList: {
204
+ }, fileList: Array, 'onUpdate:fileList': [Function, Array], onUpdateFileList: [Function, Array], fileListClass: String, fileListStyle: [String, Object], defaultFileList: {
203
205
  type: Array,
204
206
  default: () => []
205
207
  }, showCancelButton: {
@@ -227,7 +229,7 @@ exports.uploadProps = Object.assign(Object.assign({}, _mixins_1.useTheme.props),
227
229
  }, createThumbnailUrl: Function, abstract: Boolean, max: Number, showTrigger: {
228
230
  type: Boolean,
229
231
  default: true
230
- }, imageGroupProps: Object, inputProps: Object, triggerStyle: [String, Object], renderIcon: Function });
232
+ }, imageGroupProps: Object, inputProps: Object, triggerClass: String, triggerStyle: [String, Object], renderIcon: Function });
231
233
  exports.default = (0, vue_1.defineComponent)({
232
234
  name: 'Upload',
233
235
  props: exports.uploadProps,
@@ -326,6 +328,7 @@ exports.default = (0, vue_1.defineComponent)({
326
328
  .then((fileInfos) => __awaiter(this, void 0, void 0, function* () {
327
329
  let nextTickChain = Promise.resolve();
328
330
  fileInfos.forEach((fileInfo) => {
331
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
329
332
  nextTickChain = nextTickChain.then(vue_1.nextTick).then(() => {
330
333
  fileInfo &&
331
334
  doChange(fileInfo, e, {
@@ -466,6 +469,7 @@ exports.default = (0, vue_1.defineComponent)({
466
469
  onRemoveRef: (0, vue_1.toRef)(props, 'onRemove'),
467
470
  onDownloadRef: (0, vue_1.toRef)(props, 'onDownload'),
468
471
  mergedFileListRef,
472
+ triggerClassRef: (0, vue_1.toRef)(props, 'triggerClass'),
469
473
  triggerStyleRef: (0, vue_1.toRef)(props, 'triggerStyle'),
470
474
  shouldUseThumbnailUrlRef: (0, vue_1.toRef)(props, 'shouldUseThumbnailUrl'),
471
475
  renderIconRef: (0, vue_1.toRef)(props, 'renderIcon'),
@@ -482,6 +486,7 @@ exports.default = (0, vue_1.defineComponent)({
482
486
  handleFileAddition,
483
487
  mergedDisabledRef: formItem.mergedDisabledRef,
484
488
  maxReachedRef,
489
+ fileListClassRef: (0, vue_1.toRef)(props, 'fileListClass'),
485
490
  fileListStyleRef: (0, vue_1.toRef)(props, 'fileListStyle'),
486
491
  abstractRef: (0, vue_1.toRef)(props, 'abstract'),
487
492
  acceptRef: (0, vue_1.toRef)(props, 'accept'),
@@ -17,7 +17,7 @@ exports.default = (0, vue_1.defineComponent)({
17
17
  if (!NUpload) {
18
18
  (0, _utils_1.throwError)('upload-file-list', '`n-upload-file-list` must be placed inside `n-upload`.');
19
19
  }
20
- const { abstractRef, mergedClsPrefixRef, listTypeRef, mergedFileListRef, fileListStyleRef, cssVarsRef, themeClassRef, maxReachedRef, showTriggerRef, imageGroupPropsRef } = NUpload;
20
+ const { abstractRef, mergedClsPrefixRef, listTypeRef, mergedFileListRef, fileListClassRef, fileListStyleRef, cssVarsRef, themeClassRef, maxReachedRef, showTriggerRef, imageGroupPropsRef } = NUpload;
21
21
  const isImageCardTypeRef = (0, vue_1.computed)(() => listTypeRef.value === 'image-card');
22
22
  const renderFileList = () => mergedFileListRef.value.map((file) => ((0, vue_1.h)(UploadFile_1.default, { clsPrefix: mergedClsPrefixRef.value, key: file.id, file: file, listType: listTypeRef.value })));
23
23
  const renderUploadFileList = () => isImageCardTypeRef.value ? ((0, vue_1.h)(image_1.NImageGroup, Object.assign({}, imageGroupPropsRef.value), { default: renderFileList })) : ((0, vue_1.h)(_internal_1.NFadeInExpandTransition, { group: true }, {
@@ -30,7 +30,8 @@ exports.default = (0, vue_1.defineComponent)({
30
30
  `${mergedClsPrefix}-upload-file-list`,
31
31
  isImageCardTypeRef.value &&
32
32
  `${mergedClsPrefix}-upload-file-list--grid`,
33
- abstract ? themeClassRef === null || themeClassRef === void 0 ? void 0 : themeClassRef.value : undefined
33
+ abstract ? themeClassRef === null || themeClassRef === void 0 ? void 0 : themeClassRef.value : undefined,
34
+ fileListClassRef.value
34
35
  ], style: [
35
36
  abstract && cssVarsRef ? cssVarsRef.value : '',
36
37
  fileListStyleRef.value
@@ -20,7 +20,7 @@ exports.default = (0, vue_1.defineComponent)({
20
20
  if (!NUpload) {
21
21
  (0, _utils_1.throwError)('upload-trigger', '`n-upload-trigger` must be placed inside `n-upload`.');
22
22
  }
23
- const { mergedClsPrefixRef, mergedDisabledRef, maxReachedRef, listTypeRef, dragOverRef, openOpenFileDialog, draggerInsideRef, handleFileAddition, mergedDirectoryDndRef, triggerStyleRef } = NUpload;
23
+ const { mergedClsPrefixRef, mergedDisabledRef, maxReachedRef, listTypeRef, dragOverRef, openOpenFileDialog, draggerInsideRef, handleFileAddition, mergedDirectoryDndRef, triggerClassRef, triggerStyleRef } = NUpload;
24
24
  const isImageCardTypeRef = (0, vue_1.computed)(() => listTypeRef.value === 'image-card');
25
25
  function handleTriggerClick() {
26
26
  if (mergedDisabledRef.value || maxReachedRef.value)
@@ -76,7 +76,8 @@ exports.default = (0, vue_1.defineComponent)({
76
76
  (mergedDisabledRef.value || maxReachedRef.value) &&
77
77
  `${mergedClsPrefix}-upload-trigger--disabled`,
78
78
  isImageCardTypeRef.value &&
79
- `${mergedClsPrefix}-upload-trigger--image-card`
79
+ `${mergedClsPrefix}-upload-trigger--image-card`,
80
+ triggerClassRef.value
80
81
  ], style: triggerStyleRef.value, onClick: handleTriggerClick, onDrop: handleTriggerDrop, onDragover: handleTriggerDragOver, onDragenter: handleTriggerDragEnter, onDragleave: handleTriggerDragLeave }, isImageCardTypeRef.value ? ((0, vue_1.h)(UploadDragger_1.default, null, {
81
82
  default: () => (0, _utils_1.resolveSlot)(slots.default, () => [
82
83
  (0, vue_1.h)(_internal_1.NBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => (0, vue_1.h)(icons_1.AddIcon, null) })
@@ -65,6 +65,7 @@ export interface UploadInjection {
65
65
  draggerInsideRef: {
66
66
  value: boolean;
67
67
  };
68
+ fileListClassRef: Ref<string | undefined>;
68
69
  fileListStyleRef: Ref<string | CSSProperties | undefined>;
69
70
  mergedDisabledRef: Ref<boolean>;
70
71
  maxReachedRef: Ref<boolean>;
@@ -74,6 +75,7 @@ export interface UploadInjection {
74
75
  themeClassRef: undefined | Ref<string>;
75
76
  mergedDirectoryDndRef: Ref<boolean>;
76
77
  acceptRef: Ref<string | undefined>;
78
+ triggerClassRef: Ref<string | undefined>;
77
79
  triggerStyleRef: Ref<CSSProperties | string | undefined>;
78
80
  doChange: DoChange;
79
81
  onRender: undefined | (() => void);
package/lib/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- declare const _default: "2.35.0";
1
+ declare const _default: "2.36.0";
2
2
  export default _default;
package/lib/version.js CHANGED
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = '2.35.0';
3
+ exports.default = '2.36.0';
@@ -0,0 +1,2 @@
1
+ export { default as NVirtualList, virtualListProps } from './src/VirtualList';
2
+ export type { VirtualListProps, VirtualListInst } from './src/VirtualList';
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.virtualListProps = exports.NVirtualList = void 0;
7
+ var VirtualList_1 = require("./src/VirtualList");
8
+ Object.defineProperty(exports, "NVirtualList", { enumerable: true, get: function () { return __importDefault(VirtualList_1).default; } });
9
+ Object.defineProperty(exports, "virtualListProps", { enumerable: true, get: function () { return VirtualList_1.virtualListProps; } });
@@ -0,0 +1,146 @@
1
+ import { type PropType, type CSSProperties } from 'vue';
2
+ import type { ExtractPublicPropTypes } from '../../_utils';
3
+ import { type ScrollbarProps } from '../../scrollbar/src/Scrollbar';
4
+ import { type VScrollToOptions, type ItemData } from 'vueuc/lib/virtual-list/src/type';
5
+ export { type VirtualListInst } from 'vueuc';
6
+ export declare const virtualListProps: {
7
+ readonly scrollbarProps: PropType<ScrollbarProps>;
8
+ readonly items: {
9
+ readonly type: PropType<ItemData[]>;
10
+ readonly default: () => never[];
11
+ };
12
+ readonly itemSize: {
13
+ readonly type: NumberConstructor;
14
+ readonly required: true;
15
+ };
16
+ readonly itemResizable: BooleanConstructor;
17
+ readonly itemsStyle: PropType<string | CSSProperties>;
18
+ readonly visibleItemsTag: {
19
+ readonly type: PropType<string | object>;
20
+ readonly default: "div";
21
+ };
22
+ readonly visibleItemsProps: ObjectConstructor;
23
+ readonly ignoreItemResize: BooleanConstructor;
24
+ readonly onScroll: PropType<(event: Event) => void>;
25
+ readonly onWheel: PropType<(event: WheelEvent) => void>;
26
+ readonly onResize: PropType<(entry: ResizeObserverEntry) => void>;
27
+ readonly defaultScrollKey: PropType<string | number>;
28
+ readonly defaultScrollIndex: NumberConstructor;
29
+ readonly keyField: {
30
+ readonly type: StringConstructor;
31
+ readonly default: "key";
32
+ };
33
+ readonly paddingTop: {
34
+ readonly type: PropType<string | number>;
35
+ readonly default: 0;
36
+ };
37
+ readonly paddingBottom: {
38
+ readonly type: PropType<string | number>;
39
+ readonly default: 0;
40
+ };
41
+ };
42
+ export type VirtualListProps = ExtractPublicPropTypes<typeof virtualListProps>;
43
+ declare const _default: import("vue").DefineComponent<{
44
+ readonly scrollbarProps: PropType<ScrollbarProps>;
45
+ readonly items: {
46
+ readonly type: PropType<ItemData[]>;
47
+ readonly default: () => never[];
48
+ };
49
+ readonly itemSize: {
50
+ readonly type: NumberConstructor;
51
+ readonly required: true;
52
+ };
53
+ readonly itemResizable: BooleanConstructor;
54
+ readonly itemsStyle: PropType<string | CSSProperties>;
55
+ readonly visibleItemsTag: {
56
+ readonly type: PropType<string | object>;
57
+ readonly default: "div";
58
+ };
59
+ readonly visibleItemsProps: ObjectConstructor;
60
+ readonly ignoreItemResize: BooleanConstructor;
61
+ readonly onScroll: PropType<(event: Event) => void>;
62
+ readonly onWheel: PropType<(event: WheelEvent) => void>;
63
+ readonly onResize: PropType<(entry: ResizeObserverEntry) => void>;
64
+ readonly defaultScrollKey: PropType<string | number>;
65
+ readonly defaultScrollIndex: NumberConstructor;
66
+ readonly keyField: {
67
+ readonly type: StringConstructor;
68
+ readonly default: "key";
69
+ };
70
+ readonly paddingTop: {
71
+ readonly type: PropType<string | number>;
72
+ readonly default: 0;
73
+ };
74
+ readonly paddingBottom: {
75
+ readonly type: PropType<string | number>;
76
+ readonly default: 0;
77
+ };
78
+ }, {
79
+ scrollTo: (options: VScrollToOptions | number, y?: number) => void;
80
+ scrollbarInstRef: import("vue").Ref<{
81
+ $el: HTMLElement;
82
+ containerRef: HTMLElement | null;
83
+ contentRef: HTMLElement | null;
84
+ containerScrollTop: number;
85
+ syncUnifiedContainer: () => void;
86
+ scrollTo: import("../../_internal/scrollbar/src/Scrollbar").ScrollTo;
87
+ scrollBy: import("../../_internal/scrollbar/src/Scrollbar").ScrollBy;
88
+ sync: () => void;
89
+ handleMouseEnterWrapper: () => void;
90
+ handleMouseLeaveWrapper: () => void;
91
+ } | null>;
92
+ virtualListInstRef: import("vue").Ref<{
93
+ listElRef: HTMLElement;
94
+ itemsElRef: HTMLElement | null;
95
+ scrollTo: import("vueuc/lib/virtual-list/src/VirtualList").ScrollTo;
96
+ } | null>;
97
+ getScrollContainer: () => HTMLElement | null | undefined;
98
+ getScrollContent: () => HTMLElement | null | undefined;
99
+ handleScroll: (e: Event) => void;
100
+ handleResize: (e: ResizeObserverEntry) => void;
101
+ handleWheel: (e: WheelEvent) => void;
102
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
103
+ readonly scrollbarProps: PropType<ScrollbarProps>;
104
+ readonly items: {
105
+ readonly type: PropType<ItemData[]>;
106
+ readonly default: () => never[];
107
+ };
108
+ readonly itemSize: {
109
+ readonly type: NumberConstructor;
110
+ readonly required: true;
111
+ };
112
+ readonly itemResizable: BooleanConstructor;
113
+ readonly itemsStyle: PropType<string | CSSProperties>;
114
+ readonly visibleItemsTag: {
115
+ readonly type: PropType<string | object>;
116
+ readonly default: "div";
117
+ };
118
+ readonly visibleItemsProps: ObjectConstructor;
119
+ readonly ignoreItemResize: BooleanConstructor;
120
+ readonly onScroll: PropType<(event: Event) => void>;
121
+ readonly onWheel: PropType<(event: WheelEvent) => void>;
122
+ readonly onResize: PropType<(entry: ResizeObserverEntry) => void>;
123
+ readonly defaultScrollKey: PropType<string | number>;
124
+ readonly defaultScrollIndex: NumberConstructor;
125
+ readonly keyField: {
126
+ readonly type: StringConstructor;
127
+ readonly default: "key";
128
+ };
129
+ readonly paddingTop: {
130
+ readonly type: PropType<string | number>;
131
+ readonly default: 0;
132
+ };
133
+ readonly paddingBottom: {
134
+ readonly type: PropType<string | number>;
135
+ readonly default: 0;
136
+ };
137
+ }>>, {
138
+ readonly paddingBottom: string | number;
139
+ readonly paddingTop: string | number;
140
+ readonly items: ItemData[];
141
+ readonly itemResizable: boolean;
142
+ readonly visibleItemsTag: string | object;
143
+ readonly ignoreItemResize: boolean;
144
+ readonly keyField: string;
145
+ }, {}>;
146
+ export default _default;
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.virtualListProps = void 0;
4
+ const vue_1 = require("vue");
5
+ const _internal_1 = require("../../_internal");
6
+ const vueuc_1 = require("vueuc");
7
+ exports.virtualListProps = {
8
+ scrollbarProps: Object,
9
+ items: {
10
+ type: Array,
11
+ default: () => []
12
+ },
13
+ itemSize: {
14
+ type: Number,
15
+ required: true
16
+ },
17
+ itemResizable: Boolean,
18
+ itemsStyle: [String, Object],
19
+ visibleItemsTag: {
20
+ type: [String, Object],
21
+ default: 'div'
22
+ },
23
+ visibleItemsProps: Object,
24
+ ignoreItemResize: Boolean,
25
+ onScroll: Function,
26
+ onWheel: Function,
27
+ onResize: Function,
28
+ defaultScrollKey: [Number, String],
29
+ defaultScrollIndex: Number,
30
+ keyField: {
31
+ type: String,
32
+ default: 'key'
33
+ },
34
+ paddingTop: {
35
+ type: [Number, String],
36
+ default: 0
37
+ },
38
+ paddingBottom: {
39
+ type: [Number, String],
40
+ default: 0
41
+ }
42
+ };
43
+ exports.default = (0, vue_1.defineComponent)({
44
+ name: 'VirtualList',
45
+ props: exports.virtualListProps,
46
+ setup(props) {
47
+ const scrollbarInstRef = (0, vue_1.ref)(null);
48
+ const virtualListInstRef = (0, vue_1.ref)(null);
49
+ function syncScrollbar() {
50
+ const { value: scrollbarInst } = scrollbarInstRef;
51
+ if (scrollbarInst)
52
+ scrollbarInst.sync();
53
+ }
54
+ function handleScroll(e) {
55
+ var _a;
56
+ syncScrollbar();
57
+ (_a = props.onScroll) === null || _a === void 0 ? void 0 : _a.call(props, e);
58
+ }
59
+ function handleResize(e) {
60
+ var _a;
61
+ syncScrollbar();
62
+ (_a = props.onResize) === null || _a === void 0 ? void 0 : _a.call(props, e);
63
+ }
64
+ function handleWheel(e) {
65
+ var _a;
66
+ (_a = props.onWheel) === null || _a === void 0 ? void 0 : _a.call(props, e);
67
+ }
68
+ function scrollTo(options, y) {
69
+ var _a, _b;
70
+ if (typeof options === 'number') {
71
+ (_a = virtualListInstRef.value) === null || _a === void 0 ? void 0 : _a.scrollTo(options, y !== null && y !== void 0 ? y : 0);
72
+ }
73
+ else {
74
+ (_b = virtualListInstRef.value) === null || _b === void 0 ? void 0 : _b.scrollTo(options);
75
+ }
76
+ }
77
+ function getScrollContainer() {
78
+ var _a;
79
+ return (_a = virtualListInstRef.value) === null || _a === void 0 ? void 0 : _a.listElRef;
80
+ }
81
+ function getScrollContent() {
82
+ var _a;
83
+ return (_a = virtualListInstRef.value) === null || _a === void 0 ? void 0 : _a.itemsElRef;
84
+ }
85
+ return {
86
+ scrollTo,
87
+ scrollbarInstRef,
88
+ virtualListInstRef,
89
+ getScrollContainer,
90
+ getScrollContent,
91
+ handleScroll,
92
+ handleResize,
93
+ handleWheel
94
+ };
95
+ },
96
+ render() {
97
+ return ((0, vue_1.h)(_internal_1.NxScrollbar, Object.assign({}, this.scrollbarProps, { ref: "scrollbarInstRef", container: this.getScrollContainer, content: this.getScrollContent }), {
98
+ default: () => {
99
+ return ((0, vue_1.h)(vueuc_1.VVirtualList, { ref: "virtualListInstRef", showScrollbar: false, items: this.items, itemSize: this.itemSize, itemResizable: this.itemResizable, itemsStyle: this.itemsStyle, visibleItemsTag: this.visibleItemsTag, visibleItemsProps: this.visibleItemsProps, ignoreItemResize: this.ignoreItemResize, keyField: this.keyField, defaultScrollKey: this.defaultScrollKey, defaultScrollIndex: this.defaultScrollIndex, paddingTop: this.paddingTop, paddingBottom: this.paddingBottom, onScroll: this.handleScroll, onResize: this.handleResize, onWheel: this.handleWheel }, {
100
+ default: ({ item, index }) => { var _a, _b; return (_b = (_a = this.$slots).default) === null || _b === void 0 ? void 0 : _b.call(_a, { item, index }); }
101
+ }));
102
+ }
103
+ }));
104
+ }
105
+ });
@@ -135,6 +135,13 @@ exports.default = (0, vue_1.defineComponent)({
135
135
  ctx.fillText(content, canvasOffsetLeft, canvasOffsetTop + lineHeight * ratio);
136
136
  base64UrlRef.value = canvas.toDataURL();
137
137
  }
138
+ else if (!content) {
139
+ // For example, you are using the input box to customize the watermark
140
+ // content, but after clearing the input box, the content is empty,
141
+ // and the canvas content is empty. Clear canvas when content is empty
142
+ ctx.clearRect(0, 0, canvas.width, canvas.height);
143
+ base64UrlRef.value = canvas.toDataURL();
144
+ }
138
145
  }
139
146
  else {
140
147
  (0, _utils_1.warnOnce)('watermark', 'Canvas is not supported in the browser.');