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
@@ -1,6 +1,8 @@
1
1
  import { h, ref, toRef, computed, defineComponent, provide, inject, watchEffect } from 'vue';
2
2
  import { createTreeMate } from 'treemate';
3
3
  import { useCompitable, useMergedState } from 'vooks';
4
+ import { VOverflow, VResizeObserver } from 'vueuc';
5
+ import { createId } from 'seemly';
4
6
  import { layoutSiderInjectionKey } from '../../layout/src/interface';
5
7
  import { useConfig, useTheme, useThemeClass } from '../../_mixins';
6
8
  import { call } from '../../_utils';
@@ -8,6 +10,7 @@ import { isIgnoredNode, itemRenderer } from './utils';
8
10
  import { menuLight } from '../styles';
9
11
  import { useCheckDeprecated } from './useCheckDeprecated';
10
12
  import { menuInjectionKey } from './context';
13
+ import { NSubmenu } from './Submenu';
11
14
  import style from './styles/index.cssr';
12
15
  export const menuProps = Object.assign(Object.assign({}, useTheme.props), { options: {
13
16
  type: Array,
@@ -51,12 +54,12 @@ export const menuProps = Object.assign(Object.assign({}, useTheme.props), { opti
51
54
  }, disabled: Boolean, show: {
52
55
  type: Boolean,
53
56
  default: true
54
- }, inverted: Boolean, 'onUpdate:expandedKeys': [Function, Array], onUpdateExpandedKeys: [Function, Array], onUpdateValue: [Function, Array], 'onUpdate:value': [Function, Array], expandIcon: Function, renderIcon: Function, renderLabel: Function, renderExtra: Function, dropdownProps: Object, accordion: Boolean, nodeProps: Function,
55
- // deprecated
56
- items: Array, onOpenNamesChange: [Function, Array], onSelect: [Function, Array], onExpandedNamesChange: [Function, Array], expandedNames: Array, defaultExpandedNames: Array, dropdownPlacement: {
57
+ }, inverted: Boolean, 'onUpdate:expandedKeys': [Function, Array], onUpdateExpandedKeys: [Function, Array], onUpdateValue: [Function, Array], 'onUpdate:value': [Function, Array], expandIcon: Function, renderIcon: Function, renderLabel: Function, renderExtra: Function, dropdownProps: Object, accordion: Boolean, nodeProps: Function, dropdownPlacement: {
57
58
  type: String,
58
59
  default: 'bottom'
59
- } });
60
+ }, responsive: Boolean,
61
+ // deprecated
62
+ items: Array, onOpenNamesChange: [Function, Array], onSelect: [Function, Array], onExpandedNamesChange: [Function, Array], expandedNames: Array, defaultExpandedNames: Array });
60
63
  export default defineComponent({
61
64
  name: 'Menu',
62
65
  props: menuProps,
@@ -350,6 +353,76 @@ export default defineComponent({
350
353
  const themeClassHandle = inlineThemeDisabled
351
354
  ? useThemeClass('menu', computed(() => (props.inverted ? 'a' : 'b')), cssVarsRef, props)
352
355
  : undefined;
356
+ const ellipsisNodeId = createId();
357
+ const overflowRef = ref(null);
358
+ const counterRef = ref(null);
359
+ let isFirstResize = true;
360
+ const onResize = () => {
361
+ var _a;
362
+ if (isFirstResize) {
363
+ isFirstResize = false;
364
+ }
365
+ else {
366
+ (_a = overflowRef.value) === null || _a === void 0 ? void 0 : _a.sync({
367
+ showAllItemsBeforeCalculate: true
368
+ });
369
+ }
370
+ };
371
+ function getCounter() {
372
+ return document.getElementById(ellipsisNodeId);
373
+ }
374
+ const ellipsisFromIndexRef = ref(-1);
375
+ function onUpdateCount(count) {
376
+ ellipsisFromIndexRef.value = props.options.length - count;
377
+ }
378
+ function onUpdateOverflow(overflow) {
379
+ if (!overflow) {
380
+ ellipsisFromIndexRef.value = -1;
381
+ }
382
+ }
383
+ const ellipsisOptionRef = computed(() => {
384
+ const ellipsisFromIndex = ellipsisFromIndexRef.value;
385
+ const option = {
386
+ children: ellipsisFromIndex === -1 ? [] : props.options.slice(ellipsisFromIndex)
387
+ };
388
+ return option;
389
+ });
390
+ const ellipsisTreeMateRef = computed(() => {
391
+ const { childrenField, disabledField, keyField } = props;
392
+ return createTreeMate([ellipsisOptionRef.value], {
393
+ getIgnored(node) {
394
+ return isIgnoredNode(node);
395
+ },
396
+ getChildren(node) {
397
+ return node[childrenField];
398
+ },
399
+ getDisabled(node) {
400
+ return node[disabledField];
401
+ },
402
+ getKey(node) {
403
+ var _a;
404
+ return (_a = node[keyField]) !== null && _a !== void 0 ? _a : node.name;
405
+ }
406
+ });
407
+ });
408
+ const emptyTmNodeRef = computed(() => {
409
+ return createTreeMate([
410
+ {}
411
+ ]).treeNodes[0];
412
+ });
413
+ function renderCounter() {
414
+ var _a;
415
+ if (ellipsisFromIndexRef.value === -1) {
416
+ // Only a placeholder
417
+ return (h(NSubmenu, { root: true, level: 0, key: "__ellpisisGroupPlaceholder__", internalKey: "__ellpisisGroupPlaceholder__", title: "\u00B7\u00B7\u00B7", tmNode: emptyTmNodeRef.value, domId: ellipsisNodeId, isEllipsisPlaceholder: true }));
418
+ }
419
+ const tmNode = ellipsisTreeMateRef.value.treeNodes[0];
420
+ const activePath = activePathRef.value;
421
+ const childActive = !!((_a = tmNode.children) === null || _a === void 0 ? void 0 : _a.some((tmNode) => {
422
+ return activePath.includes(tmNode.key);
423
+ }));
424
+ return (h(NSubmenu, { level: 0, root: true, key: "__ellpisisGroup__", internalKey: "__ellpisisGroup__", title: "\u00B7\u00B7\u00B7", virtualChildActive: childActive, tmNode: tmNode, domId: ellipsisNodeId, rawNodes: tmNode.rawNode.children || [], tmNodes: tmNode.children || [], isEllipsisPlaceholder: true }));
425
+ }
353
426
  return {
354
427
  mergedClsPrefix: mergedClsPrefixRef,
355
428
  controlledExpandedKeys: controlledExpandedKeysRef,
@@ -363,18 +436,39 @@ export default defineComponent({
363
436
  mergedCollapsed: mergedCollapsedRef,
364
437
  cssVars: inlineThemeDisabled ? undefined : cssVarsRef,
365
438
  themeClass: themeClassHandle === null || themeClassHandle === void 0 ? void 0 : themeClassHandle.themeClass,
439
+ overflowRef,
440
+ counterRef,
441
+ updateCounter: () => { },
442
+ onResize,
443
+ onUpdateOverflow,
444
+ onUpdateCount,
445
+ renderCounter,
446
+ getCounter,
366
447
  onRender: themeClassHandle === null || themeClassHandle === void 0 ? void 0 : themeClassHandle.onRender,
367
- showOption
448
+ showOption,
449
+ deriveResponsiveState: onResize
368
450
  };
369
451
  },
370
452
  render() {
371
453
  const { mergedClsPrefix, mode, themeClass, onRender } = this;
372
454
  onRender === null || onRender === void 0 ? void 0 : onRender();
373
- return (h("div", { role: mode === 'horizontal' ? 'menubar' : 'menu', class: [
455
+ const renderMenuItemNodes = () => this.tmNodes.map((tmNode) => itemRenderer(tmNode, this.$props));
456
+ const horizontal = mode === 'horizontal';
457
+ const finalResponsive = horizontal && this.responsive;
458
+ const renderMainNode = () => (h("div", { role: mode === 'horizontal' ? 'menubar' : 'menu', class: [
374
459
  `${mergedClsPrefix}-menu`,
375
460
  themeClass,
376
461
  `${mergedClsPrefix}-menu--${mode}`,
462
+ finalResponsive && `${mergedClsPrefix}-menu--responsive`,
377
463
  this.mergedCollapsed && `${mergedClsPrefix}-menu--collapsed`
378
- ], style: this.cssVars }, this.tmNodes.map((tmNode) => itemRenderer(tmNode, this.$props))));
464
+ ], style: this.cssVars }, finalResponsive ? (h(VOverflow, { ref: "overflowRef", onUpdateOverflow: this.onUpdateOverflow, getCounter: this.getCounter, onUpdateCount: this.onUpdateCount, updateCounter: this.updateCounter, style: {
465
+ width: '100%',
466
+ display: 'flex',
467
+ overflow: 'hidden'
468
+ } }, {
469
+ default: renderMenuItemNodes,
470
+ counter: this.renderCounter
471
+ })) : (renderMenuItemNodes())));
472
+ return finalResponsive ? (h(VResizeObserver, { onResize: this.onResize }, { default: renderMainNode })) : (renderMainNode());
379
473
  }
380
474
  });
@@ -32,6 +32,7 @@ declare const _default: import("vue").DefineComponent<{
32
32
  type: PropType<TmNode>;
33
33
  required: true;
34
34
  };
35
+ isEllipsisPlaceholder: BooleanConstructor;
35
36
  }, {
36
37
  menuProps: import("./Menu").MenuSetupProps;
37
38
  style: import("vue").ComputedRef<{
@@ -75,6 +76,7 @@ declare const _default: import("vue").DefineComponent<{
75
76
  type: PropType<TmNode>;
76
77
  required: true;
77
78
  };
79
+ isEllipsisPlaceholder: BooleanConstructor;
78
80
  }>>, {
79
81
  disabled: boolean;
80
82
  selected: boolean;
@@ -82,5 +84,6 @@ declare const _default: import("vue").DefineComponent<{
82
84
  showArrow: boolean;
83
85
  childActive: boolean;
84
86
  collapsed: boolean;
87
+ isEllipsisPlaceholder: boolean;
85
88
  }, {}>;
86
89
  export default _default;
@@ -36,7 +36,8 @@ export default defineComponent({
36
36
  tmNode: {
37
37
  type: Object,
38
38
  required: true
39
- }
39
+ },
40
+ isEllipsisPlaceholder: Boolean
40
41
  },
41
42
  setup(props) {
42
43
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
@@ -76,7 +77,11 @@ export default defineComponent({
76
77
  ], style: this.style },
77
78
  icon && (h("div", { class: `${clsPrefix}-menu-item-content__icon`, style: this.iconStyle, role: "none" }, [icon])),
78
79
  h("div", { class: `${clsPrefix}-menu-item-content-header`, role: "none" },
79
- renderLabel ? renderLabel(tmNode.rawNode) : render(this.title),
80
+ this.isEllipsisPlaceholder
81
+ ? this.title
82
+ : renderLabel
83
+ ? renderLabel(tmNode.rawNode)
84
+ : render(this.title),
80
85
  this.extra || renderExtra ? (h("span", { class: `${clsPrefix}-menu-item-content-header__extra` },
81
86
  ' ',
82
87
  renderExtra ? renderExtra(tmNode.rawNode) : render(this.extra))) : null),
@@ -13,12 +13,15 @@ export declare const submenuProps: {
13
13
  readonly type: PropType<TmNode>;
14
14
  readonly required: true;
15
15
  };
16
- readonly disabled: {
17
- readonly type: BooleanConstructor;
18
- readonly default: false;
19
- };
16
+ readonly disabled: BooleanConstructor;
20
17
  readonly icon: PropType<() => VNodeChild>;
21
18
  readonly onClick: PropType<() => void>;
19
+ readonly domId: StringConstructor;
20
+ readonly virtualChildActive: {
21
+ readonly type: BooleanConstructor;
22
+ readonly default: undefined;
23
+ };
24
+ readonly isEllipsisPlaceholder: BooleanConstructor;
22
25
  readonly internalKey: {
23
26
  readonly type: PropType<import("treemate").Key>;
24
27
  readonly required: true;
@@ -45,12 +48,15 @@ export declare const NSubmenu: import("vue").DefineComponent<{
45
48
  readonly type: PropType<TmNode>;
46
49
  readonly required: true;
47
50
  };
48
- readonly disabled: {
49
- readonly type: BooleanConstructor;
50
- readonly default: false;
51
- };
51
+ readonly disabled: BooleanConstructor;
52
52
  readonly icon: PropType<() => VNodeChild>;
53
53
  readonly onClick: PropType<() => void>;
54
+ readonly domId: StringConstructor;
55
+ readonly virtualChildActive: {
56
+ readonly type: BooleanConstructor;
57
+ readonly default: undefined;
58
+ };
59
+ readonly isEllipsisPlaceholder: BooleanConstructor;
54
60
  readonly internalKey: {
55
61
  readonly type: PropType<import("treemate").Key>;
56
62
  readonly required: true;
@@ -415,12 +421,15 @@ export declare const NSubmenu: import("vue").DefineComponent<{
415
421
  readonly type: PropType<TmNode>;
416
422
  readonly required: true;
417
423
  };
418
- readonly disabled: {
419
- readonly type: BooleanConstructor;
420
- readonly default: false;
421
- };
424
+ readonly disabled: BooleanConstructor;
422
425
  readonly icon: PropType<() => VNodeChild>;
423
426
  readonly onClick: PropType<() => void>;
427
+ readonly domId: StringConstructor;
428
+ readonly virtualChildActive: {
429
+ readonly type: BooleanConstructor;
430
+ readonly default: undefined;
431
+ };
432
+ readonly isEllipsisPlaceholder: BooleanConstructor;
424
433
  readonly internalKey: {
425
434
  readonly type: PropType<import("treemate").Key>;
426
435
  readonly required: true;
@@ -438,5 +447,7 @@ export declare const NSubmenu: import("vue").DefineComponent<{
438
447
  readonly disabled: boolean;
439
448
  readonly isGroup: boolean;
440
449
  readonly tmNodes: TmNode[];
450
+ readonly isEllipsisPlaceholder: boolean;
441
451
  readonly rawNodes: MenuMixedOption[];
452
+ readonly virtualChildActive: boolean;
442
453
  }, {}>;
@@ -17,10 +17,10 @@ export const submenuProps = Object.assign(Object.assign({}, useMenuChildProps),
17
17
  }, tmNode: {
18
18
  type: Object,
19
19
  required: true
20
- }, disabled: {
20
+ }, disabled: Boolean, icon: Function, onClick: Function, domId: String, virtualChildActive: {
21
21
  type: Boolean,
22
- default: false
23
- }, icon: Function, onClick: Function });
22
+ default: undefined
23
+ }, isEllipsisPlaceholder: Boolean });
24
24
  export const NSubmenu = defineComponent({
25
25
  name: 'Submenu',
26
26
  props: submenuProps,
@@ -74,7 +74,8 @@ export const NSubmenu = defineComponent({
74
74
  mergedDisabled: mergedDisabledRef,
75
75
  mergedValue: NMenu.mergedValueRef,
76
76
  childActive: useMemo(() => {
77
- return NMenu.activePathRef.value.includes(props.internalKey);
77
+ var _a;
78
+ return ((_a = props.virtualChildActive) !== null && _a !== void 0 ? _a : NMenu.activePathRef.value.includes(props.internalKey));
78
79
  }),
79
80
  collapsed: computed(() => {
80
81
  if (menuProps.mode === 'horizontal')
@@ -96,10 +97,10 @@ export const NSubmenu = defineComponent({
96
97
  var _a;
97
98
  const { mergedClsPrefix, menuProps: { renderIcon, renderLabel } } = this;
98
99
  const createSubmenuItem = () => {
99
- const { isHorizontal, paddingLeft, collapsed, mergedDisabled, maxIconSize, activeIconSize, title, childActive, icon, handleClick, menuProps: { nodeProps }, dropdownShow, iconMarginRight, tmNode, mergedClsPrefix } = this;
100
+ const { isHorizontal, paddingLeft, collapsed, mergedDisabled, maxIconSize, activeIconSize, title, childActive, icon, handleClick, menuProps: { nodeProps }, dropdownShow, iconMarginRight, tmNode, mergedClsPrefix, isEllipsisPlaceholder, extra } = this;
100
101
  const attrs = nodeProps === null || nodeProps === void 0 ? void 0 : nodeProps(tmNode.rawNode);
101
102
  return (h("div", Object.assign({}, attrs, { class: [`${mergedClsPrefix}-menu-item`, attrs === null || attrs === void 0 ? void 0 : attrs.class], role: "menuitem" }),
102
- h(NMenuOptionContent, { tmNode: tmNode, paddingLeft: paddingLeft, collapsed: collapsed, disabled: mergedDisabled, iconMarginRight: iconMarginRight, maxIconSize: maxIconSize, activeIconSize: activeIconSize, title: title, extra: this.extra, showArrow: !isHorizontal, childActive: childActive, clsPrefix: mergedClsPrefix, icon: icon, hover: dropdownShow, onClick: handleClick })));
103
+ h(NMenuOptionContent, { tmNode: tmNode, paddingLeft: paddingLeft, collapsed: collapsed, disabled: mergedDisabled, iconMarginRight: iconMarginRight, maxIconSize: maxIconSize, activeIconSize: activeIconSize, title: title, extra: extra, showArrow: !isHorizontal, childActive: childActive, clsPrefix: mergedClsPrefix, icon: icon, hover: dropdownShow, onClick: handleClick, isEllipsisPlaceholder: isEllipsisPlaceholder })));
103
104
  };
104
105
  const createSubmenuChildren = () => {
105
106
  return (h(NFadeInExpandTransition, null, {
@@ -113,10 +114,10 @@ export const NSubmenu = defineComponent({
113
114
  fontSizeLarge: '14px',
114
115
  optionIconSizeLarge: '18px'
115
116
  }, value: this.mergedValue, disabled: !this.dropdownEnabled, placement: this.dropdownPlacement, keyField: this.menuProps.keyField, labelField: this.menuProps.labelField, childrenField: this.menuProps.childrenField, onUpdateShow: this.handlePopoverShowChange, options: this.rawNodes, onSelect: this.doSelect, inverted: this.inverted, renderIcon: renderIcon, renderLabel: renderLabel }), {
116
- default: () => (h("div", { class: `${mergedClsPrefix}-submenu`, role: "menuitem", "aria-expanded": !this.collapsed },
117
+ default: () => (h("div", { class: `${mergedClsPrefix}-submenu`, role: "menuitem", "aria-expanded": !this.collapsed, id: this.domId },
117
118
  createSubmenuItem(),
118
119
  this.isHorizontal ? null : createSubmenuChildren()))
119
- })) : (h("div", { class: `${mergedClsPrefix}-submenu`, role: "menuitem", "aria-expanded": !this.collapsed },
120
+ })) : (h("div", { class: `${mergedClsPrefix}-submenu`, role: "menuitem", "aria-expanded": !this.collapsed, id: this.domId },
120
121
  createSubmenuItem(),
121
122
  createSubmenuChildren()));
122
123
  }
@@ -55,4 +55,5 @@ export type OnUpdateKeysImpl = (keys: string[] | number[] | Array<string | numbe
55
55
  export type MenuNodeProps = (option: MenuOption | MenuGroupOption) => HTMLAttributes & Record<string, string | number | undefined>;
56
56
  export interface MenuInst {
57
57
  showOption: (key?: Key) => void;
58
+ deriveResponsiveState: () => void;
58
59
  }
@@ -72,7 +72,10 @@ export default c([cB('menu', `
72
72
  font-size: var(--n-font-size);
73
73
  padding-bottom: 6px;
74
74
  `, [cM('horizontal', `
75
- display: inline-flex;
75
+ max-width: 100%;
76
+ width: 100%;
77
+ display: flex;
78
+ overflow: hidden;
76
79
  padding-bottom: 0;
77
80
  `, [cB('submenu', 'margin: 0;'), cB('menu-item', 'margin: 0;'), cB('menu-item-content', `
78
81
  padding: 0 20px;
@@ -93,7 +96,10 @@ export default c([cB('menu', `
93
96
  color: var(--n-item-text-color-active-hover-horizontal);
94
97
  `, [c('a', 'color: var(--n-item-text-color-active-hover-horizontal);'), cE('extra', 'color: var(--n-item-text-color-active-hover-horizontal);')])])]), cM('child-active', [hoverStyle(null, [cE('icon', 'color: var(--n-item-icon-color-child-active-hover-horizontal);'), cB('menu-item-content-header', `
95
98
  color: var(--n-item-text-color-child-active-hover-horizontal);
96
- `, [c('a', 'color: var(--n-item-text-color-child-active-hover-horizontal);'), cE('extra', 'color: var(--n-item-text-color-child-active-hover-horizontal);')])])]), hoverStyle('border-bottom: 2px solid var(--n-border-color-horizontal);', horizontalHoverStyleChildren)]), cB('menu-item-content-header', [c('a', 'color: var(--n-item-text-color-horizontal);')])])]), cM('collapsed', [cB('menu-item-content', [cM('selected', [c('&::before', `
99
+ `, [c('a', 'color: var(--n-item-text-color-child-active-hover-horizontal);'), cE('extra', 'color: var(--n-item-text-color-child-active-hover-horizontal);')])])]), hoverStyle('border-bottom: 2px solid var(--n-border-color-horizontal);', horizontalHoverStyleChildren)]), cB('menu-item-content-header', [c('a', 'color: var(--n-item-text-color-horizontal);')])])]), cNotM('responsive', [cB('menu-item-content-header', `
100
+ overflow: hidden;
101
+ text-overflow: ellipsis;
102
+ `)]), cM('collapsed', [cB('menu-item-content', [cM('selected', [c('&::before', `
97
103
  background-color: var(--n-item-color-active-collapsed) !important;
98
104
  `)]), cB('menu-item-content-header', 'opacity: 0;'), cE('arrow', 'opacity: 0;'), cE('icon', 'color: var(--n-item-icon-color-collapsed);')])]), cB('menu-item', `
99
105
  height: var(--n-item-height);
@@ -173,8 +179,6 @@ export default c([cB('menu', `
173
179
  opacity .3s var(--n-bezier);
174
180
  opacity: 1;
175
181
  white-space: nowrap;
176
- overflow: hidden;
177
- text-overflow: ellipsis;
178
182
  color: var(--n-item-text-color);
179
183
  `, [c('a', `
180
184
  outline: none;
@@ -43,14 +43,14 @@ export function useMenuChild(props) {
43
43
  }
44
44
  return mergedRootIndent;
45
45
  }
46
- if (NMenuOptionGroup) {
46
+ if (NMenuOptionGroup &&
47
+ typeof NMenuOptionGroup.paddingLeftRef.value === 'number') {
47
48
  return indent / 2 + NMenuOptionGroup.paddingLeftRef.value;
48
49
  }
49
- if (NSubmenu) {
50
- return ((isGroup ? indent / 2 : indent) +
51
- NSubmenu.paddingLeftRef.value);
50
+ if (NSubmenu && typeof NSubmenu.paddingLeftRef.value === 'number') {
51
+ return (isGroup ? indent / 2 : indent) + NSubmenu.paddingLeftRef.value;
52
52
  }
53
- return undefined;
53
+ return 0;
54
54
  });
55
55
  const iconMarginRightRef = computed(() => {
56
56
  const { collapsedWidth, indent, rootIndent } = menuProps;
@@ -52,7 +52,7 @@ declare const _default: import("vue").DefineComponent<{
52
52
  }> | undefined;
53
53
  themeClass: import("vue").Ref<string> | undefined;
54
54
  onRender: (() => void) | undefined;
55
- placement: "bottom" | "top" | "top-left" | "top-right" | "bottom-left" | "bottom-right";
55
+ placement: "top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right";
56
56
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
57
57
  render: PropType<MessageRenderMessage>;
58
58
  icon: PropType<() => VNodeChild>;
@@ -36,10 +36,11 @@ export declare const messageProviderProps: {
36
36
  keepAliveOnHover: BooleanConstructor;
37
37
  max: NumberConstructor;
38
38
  placement: {
39
- type: PropType<"bottom" | "top" | "top-left" | "top-right" | "bottom-left" | "bottom-right">;
39
+ type: PropType<"top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right">;
40
40
  default: string;
41
41
  };
42
42
  closable: BooleanConstructor;
43
+ containerClass: StringConstructor;
43
44
  containerStyle: PropType<string | CSSProperties>;
44
45
  theme: PropType<import("../../_mixins").Theme<"Message", {
45
46
  closeBorderRadius: string;
@@ -263,10 +264,11 @@ declare const _default: import("vue").DefineComponent<{
263
264
  keepAliveOnHover: BooleanConstructor;
264
265
  max: NumberConstructor;
265
266
  placement: {
266
- type: PropType<"bottom" | "top" | "top-left" | "top-right" | "bottom-left" | "bottom-right">;
267
+ type: PropType<"top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right">;
267
268
  default: string;
268
269
  };
269
270
  closable: BooleanConstructor;
271
+ containerClass: StringConstructor;
270
272
  containerStyle: PropType<string | CSSProperties>;
271
273
  theme: PropType<import("../../_mixins").Theme<"Message", {
272
274
  closeBorderRadius: string;
@@ -503,10 +505,11 @@ declare const _default: import("vue").DefineComponent<{
503
505
  keepAliveOnHover: BooleanConstructor;
504
506
  max: NumberConstructor;
505
507
  placement: {
506
- type: PropType<"bottom" | "top" | "top-left" | "top-right" | "bottom-left" | "bottom-right">;
508
+ type: PropType<"top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right">;
507
509
  default: string;
508
510
  };
509
511
  closable: BooleanConstructor;
512
+ containerClass: StringConstructor;
510
513
  containerStyle: PropType<string | CSSProperties>;
511
514
  theme: PropType<import("../../_mixins").Theme<"Message", {
512
515
  closeBorderRadius: string;
@@ -721,7 +724,7 @@ declare const _default: import("vue").DefineComponent<{
721
724
  }>>, {
722
725
  duration: number;
723
726
  closable: boolean;
724
- placement: "bottom" | "top" | "top-left" | "top-right" | "bottom-left" | "bottom-right";
727
+ placement: "top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right";
725
728
  keepAliveOnHover: boolean;
726
729
  }, {}>;
727
730
  export default _default;
@@ -10,7 +10,7 @@ export const messageProviderProps = Object.assign(Object.assign({}, useTheme.pro
10
10
  }, keepAliveOnHover: Boolean, max: Number, placement: {
11
11
  type: String,
12
12
  default: 'top'
13
- }, closable: Boolean, containerStyle: [String, Object] });
13
+ }, closable: Boolean, containerClass: String, containerStyle: [String, Object] });
14
14
  export default defineComponent({
15
15
  name: 'MessageProvider',
16
16
  props: messageProviderProps,
@@ -82,7 +82,8 @@ export default defineComponent({
82
82
  this.messageList.length ? (h(Teleport, { to: (_c = this.to) !== null && _c !== void 0 ? _c : 'body' },
83
83
  h("div", { class: [
84
84
  `${this.mergedClsPrefix}-message-container`,
85
- `${this.mergedClsPrefix}-message-container--${this.placement}`
85
+ `${this.mergedClsPrefix}-message-container--${this.placement}`,
86
+ this.containerClass
86
87
  ], key: "message-container", style: this.containerStyle }, this.messageList.map((message) => {
87
88
  return (h(MessageEnvironment, Object.assign({ ref: ((inst) => {
88
89
  if (inst) {
@@ -47,9 +47,13 @@ declare const _default: import("vue").DefineComponent<{
47
47
  loading: BooleanConstructor;
48
48
  bordered: BooleanConstructor;
49
49
  iconPlacement: PropType<import("../../dialog/src/interface").IconPlacement>;
50
+ contentClass: StringConstructor;
50
51
  contentStyle: PropType<string | import("vue").CSSProperties>;
52
+ headerClass: StringConstructor;
51
53
  headerStyle: PropType<string | import("vue").CSSProperties>;
54
+ headerExtraClass: StringConstructor;
52
55
  headerExtraStyle: PropType<string | import("vue").CSSProperties>;
56
+ footerClass: StringConstructor;
53
57
  footerStyle: PropType<string | import("vue").CSSProperties>;
54
58
  embedded: BooleanConstructor;
55
59
  segmented: {
@@ -70,7 +74,7 @@ declare const _default: import("vue").DefineComponent<{
70
74
  type: BooleanConstructor;
71
75
  required: true;
72
76
  };
73
- preset: PropType<"dialog" | "confirm" | "card">;
77
+ preset: PropType<"confirm" | "dialog" | "card">;
74
78
  displayDirective: {
75
79
  type: PropType<"show" | "if">;
76
80
  required: true;
@@ -700,7 +704,7 @@ declare const _default: import("vue").DefineComponent<{
700
704
  appear: import("vue").Ref<boolean | undefined>;
701
705
  isMounted: import("vue").Ref<boolean>;
702
706
  mergedClsPrefix: import("vue").Ref<string>;
703
- bodyRef: import("vue").Ref<ComponentPublicInstance | HTMLElement | null>;
707
+ bodyRef: import("vue").Ref<HTMLElement | ComponentPublicInstance | null>;
704
708
  scrollbarRef: import("vue").Ref<{
705
709
  $el: HTMLElement;
706
710
  containerRef: HTMLElement | null;
@@ -771,9 +775,13 @@ declare const _default: import("vue").DefineComponent<{
771
775
  loading: BooleanConstructor;
772
776
  bordered: BooleanConstructor;
773
777
  iconPlacement: PropType<import("../../dialog/src/interface").IconPlacement>;
778
+ contentClass: StringConstructor;
774
779
  contentStyle: PropType<string | import("vue").CSSProperties>;
780
+ headerClass: StringConstructor;
775
781
  headerStyle: PropType<string | import("vue").CSSProperties>;
782
+ headerExtraClass: StringConstructor;
776
783
  headerExtraStyle: PropType<string | import("vue").CSSProperties>;
784
+ footerClass: StringConstructor;
777
785
  footerStyle: PropType<string | import("vue").CSSProperties>;
778
786
  embedded: BooleanConstructor;
779
787
  segmented: {
@@ -794,7 +802,7 @@ declare const _default: import("vue").DefineComponent<{
794
802
  type: BooleanConstructor;
795
803
  required: true;
796
804
  };
797
- preset: PropType<"dialog" | "confirm" | "card">;
805
+ preset: PropType<"confirm" | "dialog" | "card">;
798
806
  displayDirective: {
799
807
  type: PropType<"show" | "if">;
800
808
  required: true;
@@ -812,8 +820,8 @@ declare const _default: import("vue").DefineComponent<{
812
820
  type: "default" | "error" | "info" | "success" | "warning";
813
821
  tag: keyof HTMLElementTagNameMap;
814
822
  size: "small" | "medium" | "large" | "huge";
815
- autoFocus: boolean;
816
823
  loading: boolean;
824
+ autoFocus: boolean;
817
825
  bordered: boolean;
818
826
  showIcon: boolean;
819
827
  closable: boolean;
@@ -43,9 +43,13 @@ export declare const modalProps: {
43
43
  loading: BooleanConstructor;
44
44
  bordered: BooleanConstructor;
45
45
  iconPlacement: PropType<import("../../dialog/src/interface").IconPlacement>;
46
+ contentClass: StringConstructor;
46
47
  contentStyle: PropType<string | CSSProperties>;
48
+ headerClass: StringConstructor;
47
49
  headerStyle: PropType<string | CSSProperties>;
50
+ headerExtraClass: StringConstructor;
48
51
  headerExtraStyle: PropType<string | CSSProperties>;
52
+ footerClass: StringConstructor;
49
53
  footerStyle: PropType<string | CSSProperties>;
50
54
  embedded: BooleanConstructor;
51
55
  segmented: {
@@ -71,7 +75,7 @@ export declare const modalProps: {
71
75
  type: BooleanConstructor;
72
76
  default: boolean;
73
77
  };
74
- preset: PropType<"dialog" | "confirm" | "card">;
78
+ preset: PropType<"confirm" | "dialog" | "card">;
75
79
  to: PropType<string | HTMLElement>;
76
80
  displayDirective: {
77
81
  type: PropType<"show" | "if">;
@@ -995,9 +999,13 @@ declare const _default: import("vue").DefineComponent<{
995
999
  loading: BooleanConstructor;
996
1000
  bordered: BooleanConstructor;
997
1001
  iconPlacement: PropType<import("../../dialog/src/interface").IconPlacement>;
1002
+ contentClass: StringConstructor;
998
1003
  contentStyle: PropType<string | CSSProperties>;
1004
+ headerClass: StringConstructor;
999
1005
  headerStyle: PropType<string | CSSProperties>;
1006
+ headerExtraClass: StringConstructor;
1000
1007
  headerExtraStyle: PropType<string | CSSProperties>;
1008
+ footerClass: StringConstructor;
1001
1009
  footerStyle: PropType<string | CSSProperties>;
1002
1010
  embedded: BooleanConstructor;
1003
1011
  segmented: {
@@ -1023,7 +1031,7 @@ declare const _default: import("vue").DefineComponent<{
1023
1031
  type: BooleanConstructor;
1024
1032
  default: boolean;
1025
1033
  };
1026
- preset: PropType<"dialog" | "confirm" | "card">;
1034
+ preset: PropType<"confirm" | "dialog" | "card">;
1027
1035
  to: PropType<string | HTMLElement>;
1028
1036
  displayDirective: {
1029
1037
  type: PropType<"show" | "if">;
@@ -1967,9 +1975,13 @@ declare const _default: import("vue").DefineComponent<{
1967
1975
  loading: BooleanConstructor;
1968
1976
  bordered: BooleanConstructor;
1969
1977
  iconPlacement: PropType<import("../../dialog/src/interface").IconPlacement>;
1978
+ contentClass: StringConstructor;
1970
1979
  contentStyle: PropType<string | CSSProperties>;
1980
+ headerClass: StringConstructor;
1971
1981
  headerStyle: PropType<string | CSSProperties>;
1982
+ headerExtraClass: StringConstructor;
1972
1983
  headerExtraStyle: PropType<string | CSSProperties>;
1984
+ footerClass: StringConstructor;
1973
1985
  footerStyle: PropType<string | CSSProperties>;
1974
1986
  embedded: BooleanConstructor;
1975
1987
  segmented: {
@@ -1995,7 +2007,7 @@ declare const _default: import("vue").DefineComponent<{
1995
2007
  type: BooleanConstructor;
1996
2008
  default: boolean;
1997
2009
  };
1998
- preset: PropType<"dialog" | "confirm" | "card">;
2010
+ preset: PropType<"confirm" | "dialog" | "card">;
1999
2011
  to: PropType<string | HTMLElement>;
2000
2012
  displayDirective: {
2001
2013
  type: PropType<"show" | "if">;
@@ -2880,8 +2892,8 @@ declare const _default: import("vue").DefineComponent<{
2880
2892
  size: "small" | "medium" | "large" | "huge";
2881
2893
  show: boolean;
2882
2894
  transformOrigin: "center" | "mouse";
2883
- autoFocus: boolean;
2884
2895
  loading: boolean;
2896
+ autoFocus: boolean;
2885
2897
  bordered: boolean;
2886
2898
  showIcon: boolean;
2887
2899
  closable: boolean;
@@ -25,9 +25,13 @@ declare const presetProps: {
25
25
  onPositiveClick: import("vue").PropType<(e: MouseEvent) => void>;
26
26
  onNegativeClick: import("vue").PropType<(e: MouseEvent) => void>;
27
27
  onClose: import("vue").PropType<() => void>;
28
+ contentClass: StringConstructor;
28
29
  contentStyle: import("vue").PropType<string | import("vue").CSSProperties>;
30
+ headerClass: StringConstructor;
29
31
  headerStyle: import("vue").PropType<string | import("vue").CSSProperties>;
32
+ headerExtraClass: StringConstructor;
30
33
  headerExtraStyle: import("vue").PropType<string | import("vue").CSSProperties>;
34
+ footerClass: StringConstructor;
31
35
  footerStyle: import("vue").PropType<string | import("vue").CSSProperties>;
32
36
  embedded: BooleanConstructor;
33
37
  segmented: {
@@ -45,5 +49,5 @@ declare const presetProps: {
45
49
  readonly default: "div";
46
50
  };
47
51
  };
48
- declare const presetPropsKeys: ("type" | "tag" | "content" | "size" | "icon" | "title" | "role" | "action" | "positiveText" | "negativeText" | "loading" | "bordered" | "showIcon" | "closable" | "contentStyle" | "onClose" | "headerStyle" | "footerStyle" | "iconPlacement" | "hoverable" | "embedded" | "headerExtraStyle" | "segmented" | "positiveButtonProps" | "negativeButtonProps" | "onPositiveClick" | "onNegativeClick")[];
52
+ declare const presetPropsKeys: ("type" | "tag" | "content" | "size" | "icon" | "title" | "role" | "action" | "loading" | "positiveText" | "negativeText" | "bordered" | "showIcon" | "closable" | "contentClass" | "contentStyle" | "onClose" | "headerClass" | "headerStyle" | "footerClass" | "footerStyle" | "iconPlacement" | "hoverable" | "embedded" | "headerExtraClass" | "headerExtraStyle" | "segmented" | "positiveButtonProps" | "negativeButtonProps" | "onPositiveClick" | "onNegativeClick")[];
49
53
  export { presetProps, presetPropsKeys };
@@ -129,7 +129,7 @@ export const NotificationEnvironment = defineComponent({
129
129
  },
130
130
  render() {
131
131
  return (h(Transition, { name: "notification-transition", appear: true,
132
- // convert to any since Element is not compitable with HTMLElement
132
+ // convert to any since Element is not compatible with HTMLElement
133
133
  onBeforeEnter: this.handleBeforeEnter, onAfterEnter: this.handleAfterEnter, onBeforeLeave: this.handleBeforeLeave, onLeave: this.handleLeave, onAfterLeave: this.handleAfterLeave }, {
134
134
  default: () => {
135
135
  return this.show ? (h(Notification, Object.assign({}, keep(this.$props, notificationPropKeys), { onClose: this.handleClose, onMouseenter: this.duration && this.keepAliveOnHover