naive-ui 2.24.4 → 2.25.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 (673) hide show
  1. package/es/_internal/clear/src/Clear.js +3 -2
  2. package/es/_internal/close/src/Close.js +1 -1
  3. package/es/_internal/icon/src/Icon.js +1 -1
  4. package/es/_internal/icons/ArrowUp.d.ts +2 -0
  5. package/es/_internal/icons/ArrowUp.js +9 -0
  6. package/es/_internal/icons/index.d.ts +1 -0
  7. package/es/_internal/icons/index.js +1 -0
  8. package/es/_internal/loading/src/Loading.js +1 -1
  9. package/es/_internal/menu-mask/src/MenuMask.js +1 -1
  10. package/es/_internal/scrollbar/src/ScrollBar.js +1 -1
  11. package/es/_internal/select-menu/src/SelectMenu.d.ts +5 -5
  12. package/es/_internal/select-menu/src/SelectMenu.js +32 -16
  13. package/es/_internal/selection/src/Selection.d.ts +13 -5
  14. package/es/_internal/selection/src/Selection.js +24 -15
  15. package/es/_internal/selection/src/interface.d.ts +2 -2
  16. package/es/_internal/selection/src/styles/index.cssr.js +16 -31
  17. package/es/_internal/slot-machine/src/SlotMachine.js +1 -1
  18. package/es/_internal/wave/src/Wave.js +1 -1
  19. package/es/_mixins/use-config.js +1 -1
  20. package/es/_mixins/use-css-vars-class.d.ts +4 -2
  21. package/es/_mixins/use-css-vars-class.js +26 -11
  22. package/es/_mixins/use-form-item.d.ts +4 -0
  23. package/es/_mixins/use-form-item.js +7 -0
  24. package/es/_mixins/use-hljs.js +1 -1
  25. package/es/_mixins/use-locale.js +1 -1
  26. package/es/_mixins/use-style.js +1 -1
  27. package/es/_mixins/use-theme.d.ts +1 -1
  28. package/es/_mixins/use-theme.js +2 -2
  29. package/es/_utils/cssr/index.d.ts +1 -2
  30. package/es/_utils/cssr/index.js +1 -14
  31. package/es/_utils/index.d.ts +1 -1
  32. package/es/_utils/index.js +1 -1
  33. package/es/_utils/vue/index.d.ts +1 -1
  34. package/es/_utils/vue/index.js +1 -1
  35. package/es/_utils/vue/resolve-slot.d.ts +8 -2
  36. package/es/_utils/vue/resolve-slot.js +18 -1
  37. package/es/affix/src/Affix.js +1 -1
  38. package/es/alert/src/Alert.d.ts +4 -4
  39. package/es/alert/src/Alert.js +1 -1
  40. package/es/anchor/src/AnchorAdapter.js +1 -1
  41. package/es/auto-complete/src/AutoComplete.d.ts +17 -2
  42. package/es/auto-complete/src/AutoComplete.js +9 -5
  43. package/es/avatar/src/Avatar.js +2 -2
  44. package/es/avatar/src/AvatarGroup.d.ts +0 -1
  45. package/es/avatar/src/AvatarGroup.js +2 -3
  46. package/es/avatar/src/context.d.ts +2 -0
  47. package/es/avatar/src/context.js +2 -0
  48. package/es/back-top/src/BackTop.js +1 -1
  49. package/es/badge/src/Badge.d.ts +4 -4
  50. package/es/badge/src/Badge.js +1 -1
  51. package/es/breadcrumb/src/Breadcrumb.js +1 -1
  52. package/es/button/src/Button.d.ts +4 -3
  53. package/es/button/src/Button.js +265 -229
  54. package/es/button/src/ButtonGroup.js +1 -1
  55. package/es/button/src/styles/button.cssr.js +1 -0
  56. package/es/calendar/src/Calendar.js +1 -1
  57. package/es/card/src/Card.d.ts +5 -1
  58. package/es/card/src/Card.js +3 -2
  59. package/es/carousel/src/Carousel.js +4 -1
  60. package/es/carousel/src/CarouselArrow.js +6 -9
  61. package/es/carousel/src/styles/index.cssr.js +59 -48
  62. package/es/carousel/styles/light.js +2 -2
  63. package/es/cascader/src/Cascader.d.ts +6 -4
  64. package/es/cascader/src/Cascader.js +6 -6
  65. package/es/checkbox/src/Checkbox.js +1 -1
  66. package/es/code/src/Code.js +1 -1
  67. package/es/collapse/src/Collapse.js +1 -1
  68. package/es/collapse-transition/src/CollapseTransition.js +1 -1
  69. package/es/color-picker/src/ColorInputUnit.js +1 -1
  70. package/es/color-picker/src/ColorPicker.d.ts +37 -16
  71. package/es/color-picker/src/ColorPicker.js +14 -7
  72. package/es/color-picker/src/ColorPickerTrigger.d.ts +3 -0
  73. package/es/color-picker/src/ColorPickerTrigger.js +7 -3
  74. package/es/color-picker/src/context.d.ts +9 -0
  75. package/es/color-picker/src/context.js +2 -0
  76. package/es/color-picker/src/styles/index.cssr.js +2 -1
  77. package/es/components.d.ts +2 -1
  78. package/es/components.js +2 -1
  79. package/es/composables/use-theme-vars.js +1 -1
  80. package/es/config-provider/src/ConfigProvider.d.ts +15 -3
  81. package/es/config-provider/src/ConfigProvider.js +29 -3
  82. package/es/config-provider/src/context.d.ts +2 -0
  83. package/es/config-provider/src/context.js +2 -0
  84. package/es/config-provider/src/interface.d.ts +2 -1
  85. package/es/config-provider/src/internal-interface.d.ts +4 -0
  86. package/es/data-table/src/DataTable.d.ts +1 -1
  87. package/es/data-table/src/DataTable.js +1 -1
  88. package/es/data-table/src/interface.d.ts +2 -2
  89. package/es/data-table/src/use-check.d.ts +2 -2
  90. package/es/data-table/src/use-group-header.d.ts +1 -1
  91. package/es/data-table/src/use-scroll.d.ts +1 -1
  92. package/es/data-table/src/use-scroll.js +3 -3
  93. package/es/data-table/src/use-sorter.d.ts +1 -1
  94. package/es/data-table/src/use-table-data.d.ts +1 -1
  95. package/es/data-table/src/utils.d.ts +2 -1
  96. package/es/data-table/src/utils.js +13 -3
  97. package/es/date-picker/src/DatePicker.d.ts +13 -1
  98. package/es/date-picker/src/DatePicker.js +8 -7
  99. package/es/date-picker/src/panel/date.d.ts +1 -0
  100. package/es/date-picker/src/panel/daterange.d.ts +1 -0
  101. package/es/date-picker/src/panel/datetime.d.ts +1 -0
  102. package/es/date-picker/src/panel/datetimerange.d.ts +1 -0
  103. package/es/date-picker/src/panel/month.d.ts +1 -0
  104. package/es/date-picker/src/panel/panelHeader.d.ts +2 -0
  105. package/es/date-picker/src/panel/panelHeader.js +7 -3
  106. package/es/date-picker/src/panel/use-calendar.d.ts +1 -0
  107. package/es/date-picker/src/panel/use-dual-calendar.d.ts +1 -0
  108. package/es/date-picker/src/panel/use-panel-common.d.ts +1 -0
  109. package/es/date-picker/src/styles/index.cssr.js +13 -2
  110. package/es/date-picker/styles/light.d.ts +2 -0
  111. package/es/date-picker/styles/light.js +1 -1
  112. package/es/descriptions/src/Descriptions.d.ts +2 -2
  113. package/es/descriptions/src/Descriptions.js +1 -1
  114. package/es/dialog/index.d.ts +3 -3
  115. package/es/dialog/index.js +2 -2
  116. package/es/dialog/src/Dialog.d.ts +28 -61
  117. package/es/dialog/src/Dialog.js +4 -32
  118. package/es/dialog/src/DialogEnvironment.d.ts +12 -13
  119. package/es/dialog/src/DialogEnvironment.js +3 -2
  120. package/es/dialog/src/DialogProvider.d.ts +4 -6
  121. package/es/dialog/src/DialogProvider.js +5 -6
  122. package/es/dialog/src/context.d.ts +3 -0
  123. package/es/dialog/src/context.js +3 -0
  124. package/es/dialog/src/dialogProps.d.ts +32 -0
  125. package/es/dialog/src/dialogProps.js +29 -0
  126. package/es/dialog/src/use-dialog.js +1 -1
  127. package/es/divider/src/Divider.js +1 -1
  128. package/es/drawer/index.d.ts +1 -0
  129. package/es/drawer/src/Drawer.js +1 -1
  130. package/es/dropdown/src/Dropdown.d.ts +17 -5
  131. package/es/dropdown/src/Dropdown.js +6 -5
  132. package/es/dropdown/src/DropdownGroup.js +1 -0
  133. package/es/dropdown/src/DropdownGroupHeader.js +1 -2
  134. package/es/dropdown/src/DropdownMenu.d.ts +0 -1
  135. package/es/dropdown/src/DropdownMenu.js +4 -4
  136. package/es/dropdown/src/DropdownOption.d.ts +3 -0
  137. package/es/dropdown/src/DropdownOption.js +4 -4
  138. package/es/dropdown/src/context.d.ts +6 -0
  139. package/es/dropdown/src/context.js +4 -0
  140. package/es/dropdown/src/interface.d.ts +1 -1
  141. package/es/dynamic-input/src/DynamicInput.d.ts +16 -33
  142. package/es/dynamic-input/src/DynamicInput.js +73 -36
  143. package/es/dynamic-tags/src/DynamicTags.d.ts +11 -20
  144. package/es/dynamic-tags/src/DynamicTags.js +14 -16
  145. package/es/element/src/Element.js +1 -1
  146. package/es/ellipsis/src/Ellipsis.js +1 -1
  147. package/es/empty/src/Empty.js +2 -2
  148. package/es/form/src/Form.d.ts +1 -1
  149. package/es/form/src/Form.js +2 -2
  150. package/es/form/src/FormItem.d.ts +5 -5
  151. package/es/form/src/FormItem.js +3 -2
  152. package/es/form/src/FormItemCol.d.ts +4 -4
  153. package/es/form/src/FormItemGridItem.d.ts +5 -5
  154. package/es/form/src/FormItemRow.d.ts +3 -3
  155. package/es/form/src/context.d.ts +3 -0
  156. package/es/form/src/context.js +3 -0
  157. package/es/form/src/interface.d.ts +4 -3
  158. package/es/form/src/interface.js +1 -3
  159. package/es/form/src/styles/form-item.cssr.js +6 -5
  160. package/es/form/src/utils.d.ts +1 -1
  161. package/es/form/src/utils.js +1 -1
  162. package/es/global-style/src/GlobalStyle.js +1 -1
  163. package/es/gradient-text/src/GradientText.d.ts +5 -5
  164. package/es/gradient-text/src/GradientText.js +1 -1
  165. package/es/grid/src/Grid.d.ts +0 -1
  166. package/es/grid/src/Grid.js +2 -3
  167. package/es/grid/src/GridItem.js +1 -1
  168. package/es/grid/src/config.d.ts +3 -0
  169. package/es/grid/src/config.js +3 -0
  170. package/es/icon/index.d.ts +1 -1
  171. package/es/icon/index.js +1 -1
  172. package/es/icon/src/Icon.d.ts +4 -3
  173. package/es/icon/src/Icon.js +6 -6
  174. package/es/icon-wrapper/index.d.ts +1 -0
  175. package/es/icon-wrapper/index.js +1 -0
  176. package/es/icon-wrapper/src/IconWrapper.d.ts +50 -0
  177. package/es/icon-wrapper/src/IconWrapper.js +48 -0
  178. package/es/icon-wrapper/src/styles/index.cssr.d.ts +2 -0
  179. package/es/icon-wrapper/src/styles/index.cssr.js +16 -0
  180. package/es/icon-wrapper/styles/dark.d.ts +3 -0
  181. package/es/icon-wrapper/styles/dark.js +8 -0
  182. package/es/icon-wrapper/styles/index.d.ts +3 -0
  183. package/es/icon-wrapper/styles/index.js +2 -0
  184. package/es/icon-wrapper/styles/light.d.ts +10 -0
  185. package/es/icon-wrapper/styles/light.js +14 -0
  186. package/es/image/src/ImagePreview.js +1 -1
  187. package/es/input/src/Input.d.ts +7 -2
  188. package/es/input/src/Input.js +21 -17
  189. package/es/input/src/InputGroup.js +1 -1
  190. package/es/input/src/InputGroupLabel.js +1 -1
  191. package/es/input/src/WordCount.js +9 -8
  192. package/es/input/src/styles/input.cssr.js +6 -5
  193. package/es/input-number/src/InputNumber.d.ts +3 -2
  194. package/es/input-number/src/InputNumber.js +23 -21
  195. package/es/layout/src/Layout.js +1 -1
  196. package/es/layout/src/LayoutFooter.js +1 -1
  197. package/es/layout/src/LayoutHeader.js +1 -1
  198. package/es/layout/src/LayoutSider.js +1 -1
  199. package/es/legacy-grid/src/Col.js +0 -3
  200. package/es/legacy-grid/src/Row.js +1 -1
  201. package/es/list/src/List.js +1 -1
  202. package/es/loading-bar/src/LoadingBar.js +2 -2
  203. package/es/loading-bar/src/LoadingBarProvider.d.ts +3 -8
  204. package/es/loading-bar/src/LoadingBarProvider.js +1 -3
  205. package/es/loading-bar/src/context.d.ts +7 -0
  206. package/es/loading-bar/src/context.js +3 -0
  207. package/es/loading-bar/src/use-loading-bar.js +1 -1
  208. package/es/locales/common/jaJP.js +12 -14
  209. package/es/log/index.d.ts +1 -1
  210. package/es/log/src/Log.d.ts +17 -12
  211. package/es/log/src/Log.js +10 -17
  212. package/es/log/src/LogLine.js +1 -1
  213. package/es/log/src/context.d.ts +2 -0
  214. package/es/log/src/context.js +2 -0
  215. package/es/log/src/styles/index.cssr.js +2 -3
  216. package/es/mention/src/Mention.d.ts +17 -2
  217. package/es/mention/src/Mention.js +7 -3
  218. package/es/menu/src/Menu.d.ts +2 -4
  219. package/es/menu/src/Menu.js +3 -3
  220. package/es/menu/src/MenuDivider.js +1 -1
  221. package/es/menu/src/MenuOption.d.ts +1 -2
  222. package/es/menu/src/MenuOption.js +1 -1
  223. package/es/menu/src/MenuOptionContent.js +1 -1
  224. package/es/menu/src/MenuOptionGroup.d.ts +1 -4
  225. package/es/menu/src/MenuOptionGroup.js +4 -5
  226. package/es/menu/src/Submenu.d.ts +1 -4
  227. package/es/menu/src/Submenu.js +3 -4
  228. package/es/menu/src/context.d.ts +4 -0
  229. package/es/menu/src/context.js +4 -0
  230. package/es/menu/src/use-menu-child.js +1 -3
  231. package/es/menu/src/useCheckDeprecated.d.ts +1 -1
  232. package/es/menu/src/utils.d.ts +1 -1
  233. package/es/menu/src/utils.js +5 -3
  234. package/es/message/src/Message.d.ts +2 -158
  235. package/es/message/src/Message.js +2 -2
  236. package/es/message/src/MessageProvider.d.ts +4 -9
  237. package/es/message/src/MessageProvider.js +2 -3
  238. package/es/message/src/context.d.ts +7 -0
  239. package/es/message/src/context.js +3 -0
  240. package/es/message/src/types.d.ts +1 -1
  241. package/es/message/src/use-message.js +1 -1
  242. package/es/modal/src/BodyWrapper.d.ts +6 -4
  243. package/es/modal/src/BodyWrapper.js +2 -2
  244. package/es/modal/src/Modal.d.ts +8 -5
  245. package/es/modal/src/Modal.js +2 -2
  246. package/es/modal/src/presetProps.d.ts +3 -2
  247. package/es/modal/src/presetProps.js +1 -1
  248. package/es/notification/index.d.ts +1 -1
  249. package/es/notification/src/Notification.d.ts +5 -6
  250. package/es/notification/src/Notification.js +3 -5
  251. package/es/notification/src/NotificationContainer.d.ts +1 -2
  252. package/es/notification/src/NotificationContainer.js +2 -2
  253. package/es/notification/src/NotificationEnvironment.d.ts +7 -8
  254. package/es/notification/src/NotificationEnvironment.js +3 -3
  255. package/es/notification/src/NotificationProvider.d.ts +11 -7
  256. package/es/notification/src/NotificationProvider.js +6 -6
  257. package/es/notification/src/context.d.ts +2 -0
  258. package/es/notification/src/context.js +2 -0
  259. package/es/page-header/src/PageHeader.js +1 -1
  260. package/es/pagination/src/Pagination.js +1 -1
  261. package/es/popconfirm/src/Popconfirm.d.ts +21 -8
  262. package/es/popconfirm/src/Popconfirm.js +1 -1
  263. package/es/popover/index.d.ts +1 -0
  264. package/es/popover/src/Popover.d.ts +21 -4
  265. package/es/popover/src/Popover.js +9 -2
  266. package/es/popover/src/PopoverBody.d.ts +4 -0
  267. package/es/popover/src/PopoverBody.js +13 -11
  268. package/es/popover/src/styles/index.cssr.js +2 -2
  269. package/es/popselect/src/Popselect.d.ts +31 -8
  270. package/es/popselect/src/Popselect.js +8 -6
  271. package/es/popselect/src/PopselectPanel.d.ts +2 -5
  272. package/es/popselect/src/PopselectPanel.js +4 -2
  273. package/es/progress/src/Progress.d.ts +1 -1
  274. package/es/progress/src/Progress.js +1 -1
  275. package/es/radio/src/Radio.js +1 -1
  276. package/es/radio/src/RadioGroup.js +1 -1
  277. package/es/rate/src/Rate.js +1 -1
  278. package/es/result/src/Result.d.ts +4 -4
  279. package/es/result/src/Result.js +1 -1
  280. package/es/select/index.d.ts +2 -0
  281. package/es/select/src/Select.d.ts +27 -24
  282. package/es/select/src/Select.js +71 -41
  283. package/es/select/src/interface.d.ts +2 -0
  284. package/es/skeleton/src/Skeleton.js +1 -1
  285. package/es/slider/src/Slider.js +1 -1
  286. package/es/space/src/Space.js +1 -1
  287. package/es/spin/src/Spin.js +1 -1
  288. package/es/statistic/src/Statistic.js +1 -1
  289. package/es/steps/src/Steps.js +1 -1
  290. package/es/switch/src/Switch.js +1 -1
  291. package/es/table/src/Table.js +1 -1
  292. package/es/tabs/src/Tabs.d.ts +7 -4
  293. package/es/tabs/src/Tabs.js +12 -4
  294. package/es/tag/src/Tag.d.ts +4 -4
  295. package/es/tag/src/Tag.js +1 -1
  296. package/es/tag/src/common-props.d.ts +1 -1
  297. package/es/tag/src/styles/index.cssr.js +5 -17
  298. package/es/theme-editor/src/ThemeEditor.js +1 -1
  299. package/es/themes/dark.js +3 -0
  300. package/es/themes/light.js +3 -0
  301. package/es/themes/utils.d.ts +2 -1
  302. package/es/themes/utils.js +16 -4
  303. package/es/thing/src/Thing.js +1 -1
  304. package/es/time-picker/src/TimePicker.d.ts +7 -5
  305. package/es/time-picker/src/TimePicker.js +5 -5
  306. package/es/timeline/src/Timeline.js +1 -1
  307. package/es/timeline/src/TimelineItem.d.ts +4 -4
  308. package/es/tooltip/src/Tooltip.d.ts +20 -7
  309. package/es/tooltip/src/Tooltip.js +1 -1
  310. package/es/transfer/src/Transfer.d.ts +1 -1
  311. package/es/transfer/src/Transfer.js +1 -1
  312. package/es/tree/src/Tree.d.ts +6 -2
  313. package/es/tree/src/Tree.js +15 -8
  314. package/es/tree/src/TreeNode.d.ts +2 -0
  315. package/es/tree/src/TreeNode.js +37 -10
  316. package/es/tree/src/TreeNodeContent.d.ts +3 -1
  317. package/es/tree/src/TreeNodeContent.js +4 -3
  318. package/es/tree/src/interface.d.ts +5 -1
  319. package/es/tree-select/src/TreeSelect.d.ts +16 -14
  320. package/es/tree-select/src/TreeSelect.js +8 -5
  321. package/es/typography/src/a.js +1 -1
  322. package/es/typography/src/blockquote.js +1 -1
  323. package/es/typography/src/create-header.d.ts +4 -4
  324. package/es/typography/src/create-header.js +1 -1
  325. package/es/typography/src/headers.d.ts +18 -18
  326. package/es/typography/src/hr.js +1 -1
  327. package/es/typography/src/ol.js +1 -1
  328. package/es/typography/src/p.js +1 -1
  329. package/es/typography/src/text.js +1 -1
  330. package/es/typography/src/ul.js +1 -1
  331. package/es/upload/src/Upload.js +1 -1
  332. package/es/upload/src/UploadFile.d.ts +1 -1
  333. package/es/upload/src/UploadProgress.d.ts +2 -2
  334. package/es/version.d.ts +1 -1
  335. package/es/version.js +1 -1
  336. package/lib/_internal/clear/src/Clear.js +3 -2
  337. package/lib/_internal/close/src/Close.js +1 -1
  338. package/lib/_internal/icon/src/Icon.js +1 -1
  339. package/lib/_internal/icons/ArrowUp.d.ts +2 -0
  340. package/lib/_internal/icons/ArrowUp.js +11 -0
  341. package/lib/_internal/icons/index.d.ts +1 -0
  342. package/lib/_internal/icons/index.js +3 -1
  343. package/lib/_internal/loading/src/Loading.js +1 -1
  344. package/lib/_internal/menu-mask/src/MenuMask.js +1 -1
  345. package/lib/_internal/scrollbar/src/ScrollBar.js +1 -1
  346. package/lib/_internal/select-menu/src/SelectMenu.d.ts +5 -5
  347. package/lib/_internal/select-menu/src/SelectMenu.js +31 -15
  348. package/lib/_internal/selection/src/Selection.d.ts +13 -5
  349. package/lib/_internal/selection/src/Selection.js +24 -15
  350. package/lib/_internal/selection/src/interface.d.ts +2 -2
  351. package/lib/_internal/selection/src/styles/index.cssr.js +15 -30
  352. package/lib/_internal/slot-machine/src/SlotMachine.js +1 -1
  353. package/lib/_internal/wave/src/Wave.js +1 -1
  354. package/lib/_mixins/use-config.js +2 -2
  355. package/lib/_mixins/use-css-vars-class.d.ts +4 -2
  356. package/lib/_mixins/use-css-vars-class.js +25 -13
  357. package/lib/_mixins/use-form-item.d.ts +4 -0
  358. package/lib/_mixins/use-form-item.js +7 -0
  359. package/lib/_mixins/use-hljs.js +2 -2
  360. package/lib/_mixins/use-locale.js +2 -2
  361. package/lib/_mixins/use-style.js +1 -1
  362. package/lib/_mixins/use-theme.d.ts +1 -1
  363. package/lib/_mixins/use-theme.js +3 -3
  364. package/lib/_utils/cssr/index.d.ts +1 -2
  365. package/lib/_utils/cssr/index.js +1 -15
  366. package/lib/_utils/index.d.ts +1 -1
  367. package/lib/_utils/index.js +5 -1
  368. package/lib/_utils/vue/index.d.ts +1 -1
  369. package/lib/_utils/vue/index.js +4 -1
  370. package/lib/_utils/vue/resolve-slot.d.ts +8 -2
  371. package/lib/_utils/vue/resolve-slot.js +22 -2
  372. package/lib/affix/src/Affix.js +1 -1
  373. package/lib/alert/src/Alert.d.ts +4 -4
  374. package/lib/alert/src/Alert.js +1 -1
  375. package/lib/anchor/src/AnchorAdapter.js +1 -1
  376. package/lib/auto-complete/src/AutoComplete.d.ts +17 -2
  377. package/lib/auto-complete/src/AutoComplete.js +9 -5
  378. package/lib/avatar/src/Avatar.js +3 -3
  379. package/lib/avatar/src/AvatarGroup.d.ts +0 -1
  380. package/lib/avatar/src/AvatarGroup.js +3 -5
  381. package/lib/avatar/src/context.d.ts +2 -0
  382. package/lib/avatar/src/context.js +5 -0
  383. package/lib/back-top/src/BackTop.js +1 -1
  384. package/lib/badge/src/Badge.d.ts +4 -4
  385. package/lib/badge/src/Badge.js +1 -1
  386. package/lib/breadcrumb/src/Breadcrumb.js +1 -1
  387. package/lib/button/src/Button.d.ts +4 -3
  388. package/lib/button/src/Button.js +264 -228
  389. package/lib/button/src/ButtonGroup.js +1 -1
  390. package/lib/button/src/styles/button.cssr.js +1 -0
  391. package/lib/calendar/src/Calendar.js +1 -1
  392. package/lib/card/src/Card.d.ts +5 -1
  393. package/lib/card/src/Card.js +3 -2
  394. package/lib/carousel/src/Carousel.js +4 -1
  395. package/lib/carousel/src/CarouselArrow.js +5 -8
  396. package/lib/carousel/src/styles/index.cssr.js +59 -48
  397. package/lib/carousel/styles/light.js +2 -2
  398. package/lib/cascader/src/Cascader.d.ts +6 -4
  399. package/lib/cascader/src/Cascader.js +6 -6
  400. package/lib/checkbox/src/Checkbox.js +1 -1
  401. package/lib/code/src/Code.js +1 -1
  402. package/lib/collapse/src/Collapse.js +1 -1
  403. package/lib/collapse-transition/src/CollapseTransition.js +1 -1
  404. package/lib/color-picker/src/ColorInputUnit.js +2 -2
  405. package/lib/color-picker/src/ColorPicker.d.ts +37 -16
  406. package/lib/color-picker/src/ColorPicker.js +15 -8
  407. package/lib/color-picker/src/ColorPickerTrigger.d.ts +3 -0
  408. package/lib/color-picker/src/ColorPickerTrigger.js +8 -4
  409. package/lib/color-picker/src/context.d.ts +9 -0
  410. package/lib/color-picker/src/context.js +5 -0
  411. package/lib/color-picker/src/styles/index.cssr.js +2 -1
  412. package/lib/components.d.ts +2 -1
  413. package/lib/components.js +2 -1
  414. package/lib/composables/use-theme-vars.js +2 -2
  415. package/lib/config-provider/src/ConfigProvider.d.ts +15 -3
  416. package/lib/config-provider/src/ConfigProvider.js +31 -5
  417. package/lib/config-provider/src/context.d.ts +2 -0
  418. package/lib/config-provider/src/context.js +5 -0
  419. package/lib/config-provider/src/interface.d.ts +2 -1
  420. package/lib/config-provider/src/internal-interface.d.ts +4 -0
  421. package/lib/data-table/src/DataTable.d.ts +1 -1
  422. package/lib/data-table/src/DataTable.js +1 -1
  423. package/lib/data-table/src/interface.d.ts +2 -2
  424. package/lib/data-table/src/use-check.d.ts +2 -2
  425. package/lib/data-table/src/use-group-header.d.ts +1 -1
  426. package/lib/data-table/src/use-scroll.d.ts +1 -1
  427. package/lib/data-table/src/use-scroll.js +2 -2
  428. package/lib/data-table/src/use-sorter.d.ts +1 -1
  429. package/lib/data-table/src/use-table-data.d.ts +1 -1
  430. package/lib/data-table/src/utils.d.ts +2 -1
  431. package/lib/data-table/src/utils.js +15 -4
  432. package/lib/date-picker/src/DatePicker.d.ts +13 -1
  433. package/lib/date-picker/src/DatePicker.js +8 -7
  434. package/lib/date-picker/src/panel/date.d.ts +1 -0
  435. package/lib/date-picker/src/panel/daterange.d.ts +1 -0
  436. package/lib/date-picker/src/panel/datetime.d.ts +1 -0
  437. package/lib/date-picker/src/panel/datetimerange.d.ts +1 -0
  438. package/lib/date-picker/src/panel/month.d.ts +1 -0
  439. package/lib/date-picker/src/panel/panelHeader.d.ts +2 -0
  440. package/lib/date-picker/src/panel/panelHeader.js +7 -3
  441. package/lib/date-picker/src/panel/use-calendar.d.ts +1 -0
  442. package/lib/date-picker/src/panel/use-dual-calendar.d.ts +1 -0
  443. package/lib/date-picker/src/panel/use-panel-common.d.ts +1 -0
  444. package/lib/date-picker/src/styles/index.cssr.js +13 -2
  445. package/lib/date-picker/styles/light.d.ts +2 -0
  446. package/lib/date-picker/styles/light.js +1 -1
  447. package/lib/descriptions/src/Descriptions.d.ts +2 -2
  448. package/lib/descriptions/src/Descriptions.js +1 -1
  449. package/lib/dialog/index.d.ts +3 -3
  450. package/lib/dialog/index.js +2 -5
  451. package/lib/dialog/src/Dialog.d.ts +28 -61
  452. package/lib/dialog/src/Dialog.js +5 -33
  453. package/lib/dialog/src/DialogEnvironment.d.ts +12 -13
  454. package/lib/dialog/src/DialogEnvironment.js +6 -24
  455. package/lib/dialog/src/DialogProvider.d.ts +4 -6
  456. package/lib/dialog/src/DialogProvider.js +8 -12
  457. package/lib/dialog/src/context.d.ts +3 -0
  458. package/lib/dialog/src/context.js +6 -0
  459. package/lib/dialog/src/dialogProps.d.ts +32 -0
  460. package/lib/dialog/src/dialogProps.js +32 -0
  461. package/lib/dialog/src/use-dialog.js +2 -2
  462. package/lib/divider/src/Divider.js +1 -1
  463. package/lib/drawer/index.d.ts +1 -0
  464. package/lib/drawer/src/Drawer.js +1 -1
  465. package/lib/dropdown/src/Dropdown.d.ts +17 -5
  466. package/lib/dropdown/src/Dropdown.js +6 -6
  467. package/lib/dropdown/src/DropdownGroup.js +1 -0
  468. package/lib/dropdown/src/DropdownGroupHeader.js +3 -4
  469. package/lib/dropdown/src/DropdownMenu.d.ts +0 -1
  470. package/lib/dropdown/src/DropdownMenu.js +6 -7
  471. package/lib/dropdown/src/DropdownOption.d.ts +3 -0
  472. package/lib/dropdown/src/DropdownOption.js +9 -25
  473. package/lib/dropdown/src/context.d.ts +6 -0
  474. package/lib/dropdown/src/context.js +7 -0
  475. package/lib/dropdown/src/interface.d.ts +1 -1
  476. package/lib/dynamic-input/src/DynamicInput.d.ts +16 -33
  477. package/lib/dynamic-input/src/DynamicInput.js +70 -33
  478. package/lib/dynamic-tags/src/DynamicTags.d.ts +11 -20
  479. package/lib/dynamic-tags/src/DynamicTags.js +12 -14
  480. package/lib/element/src/Element.js +1 -1
  481. package/lib/ellipsis/src/Ellipsis.js +1 -1
  482. package/lib/empty/src/Empty.js +3 -3
  483. package/lib/form/src/Form.d.ts +1 -1
  484. package/lib/form/src/Form.js +4 -4
  485. package/lib/form/src/FormItem.d.ts +5 -5
  486. package/lib/form/src/FormItem.js +5 -4
  487. package/lib/form/src/FormItemCol.d.ts +4 -4
  488. package/lib/form/src/FormItemGridItem.d.ts +5 -5
  489. package/lib/form/src/FormItemRow.d.ts +3 -3
  490. package/lib/form/src/context.d.ts +3 -0
  491. package/lib/form/src/context.js +6 -0
  492. package/lib/form/src/interface.d.ts +4 -3
  493. package/lib/form/src/interface.js +0 -4
  494. package/lib/form/src/styles/form-item.cssr.js +3 -2
  495. package/lib/form/src/utils.d.ts +1 -1
  496. package/lib/form/src/utils.js +4 -4
  497. package/lib/global-style/src/GlobalStyle.js +2 -2
  498. package/lib/gradient-text/src/GradientText.d.ts +5 -5
  499. package/lib/gradient-text/src/GradientText.js +1 -1
  500. package/lib/grid/src/Grid.d.ts +0 -1
  501. package/lib/grid/src/Grid.js +4 -6
  502. package/lib/grid/src/GridItem.js +2 -2
  503. package/lib/grid/src/config.d.ts +3 -0
  504. package/lib/grid/src/config.js +6 -0
  505. package/lib/icon/index.d.ts +1 -1
  506. package/lib/icon/index.js +1 -4
  507. package/lib/icon/src/Icon.d.ts +4 -3
  508. package/lib/icon/src/Icon.js +6 -5
  509. package/lib/icon-wrapper/index.d.ts +1 -0
  510. package/lib/icon-wrapper/index.js +5 -0
  511. package/lib/icon-wrapper/src/IconWrapper.d.ts +50 -0
  512. package/lib/icon-wrapper/src/IconWrapper.js +54 -0
  513. package/lib/icon-wrapper/src/styles/index.cssr.d.ts +2 -0
  514. package/lib/icon-wrapper/src/styles/index.cssr.js +23 -0
  515. package/lib/icon-wrapper/styles/dark.d.ts +3 -0
  516. package/lib/icon-wrapper/styles/dark.js +10 -0
  517. package/lib/icon-wrapper/styles/index.d.ts +3 -0
  518. package/lib/icon-wrapper/styles/index.js +10 -0
  519. package/lib/icon-wrapper/styles/light.d.ts +10 -0
  520. package/lib/icon-wrapper/styles/light.js +18 -0
  521. package/lib/image/src/ImagePreview.js +1 -1
  522. package/lib/input/src/Input.d.ts +7 -2
  523. package/lib/input/src/Input.js +20 -16
  524. package/lib/input/src/InputGroup.js +1 -1
  525. package/lib/input/src/InputGroupLabel.js +1 -1
  526. package/lib/input/src/WordCount.js +9 -8
  527. package/lib/input/src/styles/input.cssr.js +5 -4
  528. package/lib/input-number/src/InputNumber.d.ts +3 -2
  529. package/lib/input-number/src/InputNumber.js +23 -21
  530. package/lib/layout/src/Layout.js +1 -1
  531. package/lib/layout/src/LayoutFooter.js +1 -1
  532. package/lib/layout/src/LayoutHeader.js +1 -1
  533. package/lib/layout/src/LayoutSider.js +1 -1
  534. package/lib/legacy-grid/src/Col.js +0 -6
  535. package/lib/legacy-grid/src/Row.js +1 -1
  536. package/lib/list/src/List.js +1 -1
  537. package/lib/loading-bar/src/LoadingBar.js +3 -3
  538. package/lib/loading-bar/src/LoadingBarProvider.d.ts +3 -8
  539. package/lib/loading-bar/src/LoadingBarProvider.js +3 -6
  540. package/lib/loading-bar/src/context.d.ts +7 -0
  541. package/lib/loading-bar/src/context.js +6 -0
  542. package/lib/loading-bar/src/use-loading-bar.js +2 -2
  543. package/lib/locales/common/jaJP.js +12 -14
  544. package/lib/log/index.d.ts +1 -1
  545. package/lib/log/src/Log.d.ts +17 -12
  546. package/lib/log/src/Log.js +10 -18
  547. package/lib/log/src/LogLine.js +2 -2
  548. package/lib/log/src/context.d.ts +2 -0
  549. package/lib/log/src/context.js +5 -0
  550. package/lib/log/src/styles/index.cssr.js +2 -3
  551. package/lib/mention/src/Mention.d.ts +17 -2
  552. package/lib/mention/src/Mention.js +7 -3
  553. package/lib/menu/src/Menu.d.ts +2 -4
  554. package/lib/menu/src/Menu.js +3 -4
  555. package/lib/menu/src/MenuDivider.js +2 -2
  556. package/lib/menu/src/MenuOption.d.ts +1 -2
  557. package/lib/menu/src/MenuOption.js +2 -2
  558. package/lib/menu/src/MenuOptionContent.js +2 -2
  559. package/lib/menu/src/MenuOptionGroup.d.ts +1 -4
  560. package/lib/menu/src/MenuOptionGroup.js +7 -8
  561. package/lib/menu/src/Submenu.d.ts +1 -4
  562. package/lib/menu/src/Submenu.js +6 -7
  563. package/lib/menu/src/context.d.ts +4 -0
  564. package/lib/menu/src/context.js +7 -0
  565. package/lib/menu/src/use-menu-child.js +4 -6
  566. package/lib/menu/src/useCheckDeprecated.d.ts +1 -1
  567. package/lib/menu/src/utils.d.ts +1 -1
  568. package/lib/menu/src/utils.js +8 -25
  569. package/lib/message/src/Message.d.ts +2 -158
  570. package/lib/message/src/Message.js +3 -3
  571. package/lib/message/src/MessageProvider.d.ts +4 -9
  572. package/lib/message/src/MessageProvider.js +3 -5
  573. package/lib/message/src/context.d.ts +7 -0
  574. package/lib/message/src/context.js +6 -0
  575. package/lib/message/src/types.d.ts +1 -1
  576. package/lib/message/src/use-message.js +2 -2
  577. package/lib/modal/src/BodyWrapper.d.ts +6 -4
  578. package/lib/modal/src/BodyWrapper.js +3 -3
  579. package/lib/modal/src/Modal.d.ts +8 -5
  580. package/lib/modal/src/Modal.js +3 -3
  581. package/lib/modal/src/presetProps.d.ts +3 -2
  582. package/lib/modal/src/presetProps.js +2 -2
  583. package/lib/notification/index.d.ts +1 -1
  584. package/lib/notification/src/Notification.d.ts +5 -6
  585. package/lib/notification/src/Notification.js +5 -7
  586. package/lib/notification/src/NotificationContainer.d.ts +1 -2
  587. package/lib/notification/src/NotificationContainer.js +4 -3
  588. package/lib/notification/src/NotificationEnvironment.d.ts +7 -8
  589. package/lib/notification/src/NotificationEnvironment.js +4 -23
  590. package/lib/notification/src/NotificationProvider.d.ts +11 -7
  591. package/lib/notification/src/NotificationProvider.js +9 -9
  592. package/lib/notification/src/context.d.ts +2 -0
  593. package/lib/notification/src/context.js +5 -0
  594. package/lib/page-header/src/PageHeader.js +1 -1
  595. package/lib/pagination/src/Pagination.js +1 -1
  596. package/lib/popconfirm/src/Popconfirm.d.ts +21 -8
  597. package/lib/popconfirm/src/Popconfirm.js +1 -1
  598. package/lib/popover/index.d.ts +1 -0
  599. package/lib/popover/src/Popover.d.ts +21 -4
  600. package/lib/popover/src/Popover.js +9 -2
  601. package/lib/popover/src/PopoverBody.d.ts +4 -0
  602. package/lib/popover/src/PopoverBody.js +11 -9
  603. package/lib/popover/src/styles/index.cssr.js +2 -2
  604. package/lib/popselect/src/Popselect.d.ts +31 -8
  605. package/lib/popselect/src/Popselect.js +8 -6
  606. package/lib/popselect/src/PopselectPanel.d.ts +2 -5
  607. package/lib/popselect/src/PopselectPanel.js +4 -2
  608. package/lib/progress/src/Progress.d.ts +1 -1
  609. package/lib/progress/src/Progress.js +1 -1
  610. package/lib/radio/src/Radio.js +1 -1
  611. package/lib/radio/src/RadioGroup.js +1 -1
  612. package/lib/rate/src/Rate.js +1 -1
  613. package/lib/result/src/Result.d.ts +4 -4
  614. package/lib/result/src/Result.js +1 -1
  615. package/lib/select/index.d.ts +2 -0
  616. package/lib/select/src/Select.d.ts +27 -24
  617. package/lib/select/src/Select.js +71 -41
  618. package/lib/select/src/interface.d.ts +2 -0
  619. package/lib/skeleton/src/Skeleton.js +1 -1
  620. package/lib/slider/src/Slider.js +1 -1
  621. package/lib/space/src/Space.js +1 -1
  622. package/lib/spin/src/Spin.js +1 -1
  623. package/lib/statistic/src/Statistic.js +1 -1
  624. package/lib/steps/src/Steps.js +1 -1
  625. package/lib/switch/src/Switch.js +1 -1
  626. package/lib/table/src/Table.js +1 -1
  627. package/lib/tabs/src/Tabs.d.ts +7 -4
  628. package/lib/tabs/src/Tabs.js +12 -4
  629. package/lib/tag/src/Tag.d.ts +4 -4
  630. package/lib/tag/src/Tag.js +1 -1
  631. package/lib/tag/src/common-props.d.ts +1 -1
  632. package/lib/tag/src/styles/index.cssr.js +5 -17
  633. package/lib/theme-editor/src/ThemeEditor.js +1 -1
  634. package/lib/themes/dark.js +87 -84
  635. package/lib/themes/light.js +87 -84
  636. package/lib/themes/utils.d.ts +2 -1
  637. package/lib/themes/utils.js +16 -4
  638. package/lib/thing/src/Thing.js +1 -1
  639. package/lib/time-picker/src/TimePicker.d.ts +7 -5
  640. package/lib/time-picker/src/TimePicker.js +5 -5
  641. package/lib/timeline/src/Timeline.js +1 -1
  642. package/lib/timeline/src/TimelineItem.d.ts +4 -4
  643. package/lib/tooltip/src/Tooltip.d.ts +20 -7
  644. package/lib/tooltip/src/Tooltip.js +1 -1
  645. package/lib/transfer/src/Transfer.d.ts +1 -1
  646. package/lib/transfer/src/Transfer.js +1 -1
  647. package/lib/tree/src/Tree.d.ts +6 -2
  648. package/lib/tree/src/Tree.js +15 -8
  649. package/lib/tree/src/TreeNode.d.ts +2 -0
  650. package/lib/tree/src/TreeNode.js +37 -10
  651. package/lib/tree/src/TreeNodeContent.d.ts +3 -1
  652. package/lib/tree/src/TreeNodeContent.js +4 -3
  653. package/lib/tree/src/interface.d.ts +5 -1
  654. package/lib/tree-select/src/TreeSelect.d.ts +16 -14
  655. package/lib/tree-select/src/TreeSelect.js +8 -5
  656. package/lib/typography/src/a.js +1 -1
  657. package/lib/typography/src/blockquote.js +1 -1
  658. package/lib/typography/src/create-header.d.ts +4 -4
  659. package/lib/typography/src/create-header.js +1 -1
  660. package/lib/typography/src/headers.d.ts +18 -18
  661. package/lib/typography/src/hr.js +1 -1
  662. package/lib/typography/src/ol.js +1 -1
  663. package/lib/typography/src/p.js +1 -1
  664. package/lib/typography/src/text.js +1 -1
  665. package/lib/typography/src/ul.js +1 -1
  666. package/lib/upload/src/Upload.js +1 -1
  667. package/lib/upload/src/UploadFile.d.ts +1 -1
  668. package/lib/upload/src/UploadProgress.d.ts +2 -2
  669. package/lib/version.d.ts +1 -1
  670. package/lib/version.js +1 -1
  671. package/package.json +11 -12
  672. package/volar.d.ts +1 -0
  673. package/web-types.json +443 -220
@@ -18,7 +18,6 @@ export interface DropdownInjection {
18
18
  doSelect: OnUpdateValueImpl;
19
19
  doUpdateShow: (value: boolean) => void;
20
20
  }
21
- export declare const dropdownInjectionKey: import("vue").InjectionKey<DropdownInjection>;
22
21
  declare const dropdownProps: {
23
22
  readonly theme: PropType<import("../../_mixins").Theme<"Dropdown", {
24
23
  optionHeightSmall: string;
@@ -304,11 +303,15 @@ declare const dropdownProps: {
304
303
  default: undefined;
305
304
  };
306
305
  readonly overlap: BooleanConstructor;
306
+ readonly keepAliveOnHover: {
307
+ type: BooleanConstructor;
308
+ default: boolean;
309
+ };
310
+ readonly onClickoutside: PropType<(e: MouseEvent) => void>;
307
311
  readonly internalExtraClass: {
308
312
  type: PropType<string[]>;
309
313
  default: () => never[];
310
314
  };
311
- readonly onClickoutside: PropType<(e: MouseEvent) => void>;
312
315
  readonly 'onUpdate:show': PropType<MaybeArray<(value: boolean) => void>>;
313
316
  readonly onUpdateShow: PropType<MaybeArray<(value: boolean) => void>>;
314
317
  readonly zIndex: NumberConstructor;
@@ -617,11 +620,15 @@ declare const _default: import("vue").DefineComponent<{
617
620
  default: undefined;
618
621
  };
619
622
  readonly overlap: BooleanConstructor;
623
+ readonly keepAliveOnHover: {
624
+ type: BooleanConstructor;
625
+ default: boolean;
626
+ };
627
+ readonly onClickoutside: PropType<(e: MouseEvent) => void>;
620
628
  readonly internalExtraClass: {
621
629
  type: PropType<string[]>;
622
630
  default: () => never[];
623
631
  };
624
- readonly onClickoutside: PropType<(e: MouseEvent) => void>;
625
632
  readonly 'onUpdate:show': PropType<MaybeArray<(value: boolean) => void>>;
626
633
  readonly onUpdateShow: PropType<MaybeArray<(value: boolean) => void>>;
627
634
  readonly zIndex: NumberConstructor;
@@ -1117,11 +1124,15 @@ declare const _default: import("vue").DefineComponent<{
1117
1124
  default: undefined;
1118
1125
  };
1119
1126
  readonly overlap: BooleanConstructor;
1127
+ readonly keepAliveOnHover: {
1128
+ type: BooleanConstructor;
1129
+ default: boolean;
1130
+ };
1131
+ readonly onClickoutside: PropType<(e: MouseEvent) => void>;
1120
1132
  readonly internalExtraClass: {
1121
1133
  type: PropType<string[]>;
1122
1134
  default: () => never[];
1123
1135
  };
1124
- readonly onClickoutside: PropType<(e: MouseEvent) => void>;
1125
1136
  readonly 'onUpdate:show': PropType<MaybeArray<(value: boolean) => void>>;
1126
1137
  readonly onUpdateShow: PropType<MaybeArray<(value: boolean) => void>>;
1127
1138
  readonly zIndex: NumberConstructor;
@@ -1151,6 +1162,7 @@ declare const _default: import("vue").DefineComponent<{
1151
1162
  disabled: boolean;
1152
1163
  duration: number;
1153
1164
  to: string | boolean | HTMLElement;
1165
+ options: DropdownMixedOption[];
1154
1166
  raw: boolean;
1155
1167
  placement: FollowerPlacement;
1156
1168
  overlap: boolean;
@@ -1159,6 +1171,7 @@ declare const _default: import("vue").DefineComponent<{
1159
1171
  showArrow: boolean;
1160
1172
  delay: number;
1161
1173
  displayDirective: "show" | "if";
1174
+ keepAliveOnHover: boolean;
1162
1175
  internalTrapFocus: boolean;
1163
1176
  animated: boolean;
1164
1177
  defaultShow: boolean;
@@ -1166,7 +1179,6 @@ declare const _default: import("vue").DefineComponent<{
1166
1179
  internalSyncTargetWithParent: boolean;
1167
1180
  internalInheritedEventHandlers: import("../../popover/src/Popover").TriggerEventHandlers[];
1168
1181
  arrow: boolean | undefined;
1169
- options: DropdownMixedOption[];
1170
1182
  labelField: string;
1171
1183
  keyboard: boolean;
1172
1184
  inverted: boolean;
@@ -4,11 +4,11 @@ import { useMergedState, useKeyboard, useMemo } from 'vooks';
4
4
  import { popoverBaseProps } from '../../popover/src/Popover';
5
5
  import { useConfig, useTheme } from '../../_mixins';
6
6
  import { NPopover } from '../../popover';
7
- import { keep, call, createKey, createRefSetter, createInjectionKey } from '../../_utils';
7
+ import { keep, call, createKey, createRefSetter } from '../../_utils';
8
8
  import { dropdownLight } from '../styles';
9
9
  import NDropdownMenu from './DropdownMenu';
10
10
  import style from './styles/index.cssr';
11
- export const dropdownInjectionKey = createInjectionKey('n-dropdown');
11
+ import { dropdownInjectionKey } from './context';
12
12
  const dropdownBaseProps = {
13
13
  animated: {
14
14
  type: Boolean,
@@ -116,7 +116,7 @@ export default defineComponent({
116
116
  }
117
117
  }, keyboardEnabledRef);
118
118
  const { mergedClsPrefixRef } = useConfig(props);
119
- const themeRef = useTheme('Dropdown', 'Dropdown', style, dropdownLight, props, mergedClsPrefixRef);
119
+ const themeRef = useTheme('Dropdown', '-dropdown', style, dropdownLight, props, mergedClsPrefixRef);
120
120
  provide(dropdownInjectionKey, {
121
121
  labelFieldRef: toRef(props, 'labelField'),
122
122
  childrenFieldRef: toRef(props, 'childrenField'),
@@ -290,6 +290,8 @@ export default defineComponent({
290
290
  class: [
291
291
  className,
292
292
  `${mergedClsPrefix}-dropdown`,
293
+ this.trigger === 'manual' &&
294
+ `${mergedClsPrefix}-popover--manual-trigger`,
293
295
  this.showArrow && `${mergedClsPrefix}-popover--show-arrow`
294
296
  ],
295
297
  clsPrefix: mergedClsPrefix,
@@ -311,8 +313,7 @@ export default defineComponent({
311
313
  onUpdateShow: this.doUpdateShow
312
314
  };
313
315
  return (h(NPopover, Object.assign({}, keep(this.$props, popoverPropKeys), popoverProps), {
314
- trigger: this.$slots.default,
315
- _: 1
316
+ trigger: () => { var _a, _b; return (_b = (_a = this.$slots).default) === null || _b === void 0 ? void 0 : _b.call(_a); }
316
317
  }));
317
318
  }
318
319
  });
@@ -1,5 +1,6 @@
1
1
  import { defineComponent, Fragment, h } from 'vue';
2
2
  import { warn } from '../../_utils';
3
+ // eslint-disable-next-line import/no-cycle
3
4
  import NDropdownOption from './DropdownOption';
4
5
  import NDropdownDivider from './DropdownDivider';
5
6
  import NDropdownGroupHeader from './DropdownGroupHeader';
@@ -1,7 +1,6 @@
1
1
  import { defineComponent, h, inject } from 'vue';
2
2
  import { render } from '../../_utils';
3
- import { dropdownInjectionKey } from './Dropdown';
4
- import { dropdownMenuInjectionKey } from './DropdownMenu';
3
+ import { dropdownInjectionKey, dropdownMenuInjectionKey } from './context';
5
4
  export default defineComponent({
6
5
  name: 'DropdownGroupHeader',
7
6
  props: {
@@ -4,7 +4,6 @@ export interface NDropdownMenuInjection {
4
4
  showIconRef: Ref<boolean>;
5
5
  hasSubmenuRef: Ref<boolean>;
6
6
  }
7
- export declare const dropdownMenuInjectionKey: import("vue").InjectionKey<NDropdownMenuInjection>;
8
7
  declare const _default: import("vue").DefineComponent<{
9
8
  showArrow: BooleanConstructor;
10
9
  arrowStyle: PropType<string | CSSProperties>;
@@ -1,13 +1,13 @@
1
1
  import { computed, defineComponent, h, inject, provide } from 'vue';
2
2
  import { renderArrow } from '../../popover/src/PopoverBody';
3
- import NDropdownOption from './DropdownOption';
4
3
  import NDropdownDivider from './DropdownDivider';
4
+ // eslint-disable-next-line import/no-cycle
5
5
  import NDropdownGroup from './DropdownGroup';
6
+ // eslint-disable-next-line import/no-cycle
7
+ import NDropdownOption from './DropdownOption';
6
8
  import NDropdownRenderOption from './DropdownRenderOption';
7
9
  import { isSubmenuNode, isGroupNode, isDividerNode, isRenderNode } from './utils';
8
- import { dropdownInjectionKey } from './Dropdown';
9
- import { createInjectionKey } from '../../_utils';
10
- export const dropdownMenuInjectionKey = createInjectionKey('n-dropdown-menu');
10
+ import { dropdownInjectionKey, dropdownMenuInjectionKey } from './context';
11
11
  export default defineComponent({
12
12
  name: 'DropdownMenu',
13
13
  props: {
@@ -1,6 +1,9 @@
1
1
  import { PropType, Ref, HTMLAttributes } from 'vue';
2
2
  import { FollowerPlacement } from 'vueuc';
3
3
  import { TreeNode } from 'treemate';
4
+ export interface NDropdownOptionInjection {
5
+ enteringSubmenuRef: Ref<boolean>;
6
+ }
4
7
  declare const _default: import("vue").DefineComponent<{
5
8
  clsPrefix: {
6
9
  type: StringConstructor;
@@ -2,13 +2,13 @@ import { h, computed, inject, ref, Transition, defineComponent, provide, mergePr
2
2
  import { VBinder, VTarget, VFollower } from 'vueuc';
3
3
  import { useMemo } from 'vooks';
4
4
  import { ChevronRightIcon } from '../../_internal/icons';
5
- import { createInjectionKey, render, useDeferredTrue } from '../../_utils';
5
+ import { render, useDeferredTrue } from '../../_utils';
6
6
  import { NIcon } from '../../icon';
7
- import NDropdownMenu, { dropdownMenuInjectionKey } from './DropdownMenu';
8
- import { dropdownInjectionKey } from './Dropdown';
7
+ // eslint-disable-next-line import/no-cycle
8
+ import NDropdownMenu from './DropdownMenu';
9
+ import { dropdownMenuInjectionKey, dropdownInjectionKey, dropdownOptionInjectionKey } from './context';
9
10
  import { isSubmenuNode } from './utils';
10
11
  import { happensIn } from 'seemly';
11
- const dropdownOptionInjectionKey = createInjectionKey('n-dropdown-option');
12
12
  export default defineComponent({
13
13
  name: 'DropdownOption',
14
14
  props: {
@@ -0,0 +1,6 @@
1
+ import type { DropdownInjection } from './Dropdown';
2
+ import type { NDropdownMenuInjection } from './DropdownMenu';
3
+ import type { NDropdownOptionInjection } from './DropdownOption';
4
+ export declare const dropdownMenuInjectionKey: import("vue").InjectionKey<NDropdownMenuInjection>;
5
+ export declare const dropdownInjectionKey: import("vue").InjectionKey<DropdownInjection>;
6
+ export declare const dropdownOptionInjectionKey: import("vue").InjectionKey<NDropdownOptionInjection>;
@@ -0,0 +1,4 @@
1
+ import { createInjectionKey } from '../../_utils';
2
+ export const dropdownMenuInjectionKey = createInjectionKey('n-dropdown-menu');
3
+ export const dropdownInjectionKey = createInjectionKey('n-dropdown');
4
+ export const dropdownOptionInjectionKey = createInjectionKey('n-dropdown-option');
@@ -1,6 +1,6 @@
1
1
  import { TreeNode } from 'treemate';
2
2
  import { VNodeChild } from 'vue';
3
- import { MenuOption, MenuGroupOption, MenuDividerOption, MenuIgnoredOption, MenuRenderOption } from '../../menu/src/interface';
3
+ import type { MenuOption, MenuGroupOption, MenuDividerOption, MenuIgnoredOption, MenuRenderOption } from '../../menu/src/interface';
4
4
  export declare type Key = string | number;
5
5
  export declare type DropdownOption = MenuOption;
6
6
  export declare type DropdownGroupOption = MenuGroupOption;
@@ -1,5 +1,6 @@
1
1
  import { PropType, CSSProperties } from 'vue';
2
- import { MaybeArray, ExtractPublicPropTypes } from '../../_utils';
2
+ import type { ButtonProps } from '../../button';
3
+ import type { MaybeArray, ExtractPublicPropTypes } from '../../_utils';
3
4
  import type { OnUpdateValue } from './interface';
4
5
  declare const dynamicInputProps: {
5
6
  readonly max: NumberConstructor;
@@ -30,20 +31,14 @@ declare const dynamicInputProps: {
30
31
  readonly type: StringConstructor;
31
32
  readonly default: "";
32
33
  };
34
+ readonly showSortButton: BooleanConstructor;
35
+ readonly createButtonProps: PropType<ButtonProps>;
33
36
  readonly onCreate: PropType<(index: number) => any>;
34
37
  readonly onRemove: PropType<(index: number) => void>;
35
38
  readonly 'onUpdate:value': PropType<MaybeArray<OnUpdateValue>>;
36
39
  readonly onUpdateValue: PropType<MaybeArray<OnUpdateValue>>;
37
- readonly onClear: {
38
- readonly type: PropType<() => void>;
39
- readonly validator: () => boolean;
40
- readonly default: undefined;
41
- };
42
- readonly onInput: {
43
- readonly type: PropType<MaybeArray<OnUpdateValue> | undefined>;
44
- readonly validator: () => boolean;
45
- readonly default: undefined;
46
- };
40
+ readonly onClear: PropType<() => void>;
41
+ readonly onInput: PropType<MaybeArray<OnUpdateValue>>;
47
42
  readonly theme: PropType<import("../../_mixins").Theme<"DynamicInput", {
48
43
  actionMargin: string;
49
44
  }, {
@@ -879,20 +874,14 @@ declare const _default: import("vue").DefineComponent<{
879
874
  readonly type: StringConstructor;
880
875
  readonly default: "";
881
876
  };
877
+ readonly showSortButton: BooleanConstructor;
878
+ readonly createButtonProps: PropType<ButtonProps>;
882
879
  readonly onCreate: PropType<(index: number) => any>;
883
880
  readonly onRemove: PropType<(index: number) => void>;
884
881
  readonly 'onUpdate:value': PropType<MaybeArray<OnUpdateValue>>;
885
882
  readonly onUpdateValue: PropType<MaybeArray<OnUpdateValue>>;
886
- readonly onClear: {
887
- readonly type: PropType<() => void>;
888
- readonly validator: () => boolean;
889
- readonly default: undefined;
890
- };
891
- readonly onInput: {
892
- readonly type: PropType<MaybeArray<OnUpdateValue> | undefined>;
893
- readonly validator: () => boolean;
894
- readonly default: undefined;
895
- };
883
+ readonly onClear: PropType<() => void>;
884
+ readonly onInput: PropType<MaybeArray<OnUpdateValue>>;
896
885
  readonly theme: PropType<import("../../_mixins").Theme<"DynamicInput", {
897
886
  actionMargin: string;
898
887
  }, {
@@ -1712,6 +1701,7 @@ declare const _default: import("vue").DefineComponent<{
1712
1701
  ensureKey: (value: any, index: number) => string | number;
1713
1702
  handleValueChange: (index: number, value: any) => void;
1714
1703
  remove: (index: number) => void;
1704
+ move: (type: 'up' | 'down', index: number) => void;
1715
1705
  createItem: (index: number) => void;
1716
1706
  mergedTheme: import("vue").ComputedRef<{
1717
1707
  common: {
@@ -2131,20 +2121,14 @@ declare const _default: import("vue").DefineComponent<{
2131
2121
  readonly type: StringConstructor;
2132
2122
  readonly default: "";
2133
2123
  };
2124
+ readonly showSortButton: BooleanConstructor;
2125
+ readonly createButtonProps: PropType<ButtonProps>;
2134
2126
  readonly onCreate: PropType<(index: number) => any>;
2135
2127
  readonly onRemove: PropType<(index: number) => void>;
2136
2128
  readonly 'onUpdate:value': PropType<MaybeArray<OnUpdateValue>>;
2137
2129
  readonly onUpdateValue: PropType<MaybeArray<OnUpdateValue>>;
2138
- readonly onClear: {
2139
- readonly type: PropType<() => void>;
2140
- readonly validator: () => boolean;
2141
- readonly default: undefined;
2142
- };
2143
- readonly onInput: {
2144
- readonly type: PropType<MaybeArray<OnUpdateValue> | undefined>;
2145
- readonly validator: () => boolean;
2146
- readonly default: undefined;
2147
- };
2130
+ readonly onClear: PropType<() => void>;
2131
+ readonly onInput: PropType<MaybeArray<OnUpdateValue>>;
2148
2132
  readonly theme: PropType<import("../../_mixins").Theme<"DynamicInput", {
2149
2133
  actionMargin: string;
2150
2134
  }, {
@@ -2950,13 +2934,12 @@ declare const _default: import("vue").DefineComponent<{
2950
2934
  }, any>;
2951
2935
  }>>>;
2952
2936
  }>>, {
2953
- onInput: MaybeArray<OnUpdateValue> | undefined;
2954
2937
  placeholder: string;
2955
2938
  min: number;
2956
- onClear: () => void;
2957
2939
  defaultValue: any[];
2958
2940
  preset: "input" | "pair";
2959
2941
  keyPlaceholder: string;
2960
2942
  valuePlaceholder: string;
2943
+ showSortButton: boolean;
2961
2944
  }>;
2962
2945
  export default _default;
@@ -1,12 +1,12 @@
1
- import { h, ref, toRef, isProxy, toRaw, computed, defineComponent, inject, provide } from 'vue';
1
+ import { h, ref, toRef, isProxy, toRaw, computed, defineComponent, inject, provide, watchEffect } from 'vue';
2
2
  import { useMergedState } from 'vooks';
3
3
  import { createId } from 'seemly';
4
- import { RemoveIcon, AddIcon } from '../../_internal/icons';
4
+ import { RemoveIcon, AddIcon, ArrowDownIcon, ArrowUpIcon } from '../../_internal/icons';
5
+ import { formItemInjectionKey } from '../../_mixins/use-form-item';
5
6
  import { NBaseIcon } from '../../_internal';
6
7
  import { NButton, NButtonGroup } from '../../button';
7
8
  import { useTheme, useLocale, useConfig } from '../../_mixins';
8
- import { warn, call } from '../../_utils';
9
- import { formItemInjectionKey } from '../../_mixins/use-form-item';
9
+ import { call, warnOnce, resolveSlotWithProps, resolveSlot } from '../../_utils';
10
10
  import { dynamicInputLight } from '../styles';
11
11
  import NDynamicInputInputPreset from './InputPreset';
12
12
  import NDynamicInputPairPreset from './PairPreset';
@@ -37,35 +37,29 @@ const dynamicInputProps = Object.assign(Object.assign({}, useTheme.props), { max
37
37
  placeholder: {
38
38
  type: String,
39
39
  default: ''
40
- }, onCreate: Function, onRemove: Function, 'onUpdate:value': [Function, Array], onUpdateValue: [Function, Array],
40
+ }, showSortButton: Boolean, createButtonProps: Object, onCreate: Function, onRemove: Function, 'onUpdate:value': [Function, Array], onUpdateValue: [Function, Array],
41
41
  // deprecated
42
- onClear: {
43
- type: Function,
44
- validator: () => {
45
- warn('dynamic-input', '`on-clear` is deprecated, it is out of usage anymore.');
46
- return true;
47
- },
48
- default: undefined
49
- }, onInput: {
50
- type: [Function, Array],
51
- validator: () => {
52
- if (process.env.NODE_ENV !== 'production') {
53
- warn('dynamic-input', '`on-input` is deprecated, please use `on-update:value` instead.');
54
- }
55
- return true;
56
- },
57
- default: undefined
58
- } });
42
+ onClear: Function, onInput: [Function, Array] });
59
43
  export default defineComponent({
60
44
  name: 'DynamicInput',
61
45
  props: dynamicInputProps,
62
46
  setup(props, { slots }) {
47
+ if (process.env.NODE_ENV !== 'production') {
48
+ watchEffect(() => {
49
+ if (props.onClear !== undefined) {
50
+ warnOnce('dynamic-input', '`on-clear` is deprecated, it is out of usage anymore.');
51
+ }
52
+ if (props.onInput !== undefined) {
53
+ warnOnce('dynamic-input', '`on-input` is deprecated, please use `on-update:value` instead.');
54
+ }
55
+ });
56
+ }
63
57
  const { NConfigProvider, mergedClsPrefixRef } = useConfig();
64
58
  const NFormItem = inject(formItemInjectionKey, null);
65
59
  const uncontrolledValueRef = ref(props.defaultValue);
66
60
  const controlledValueRef = toRef(props, 'value');
67
61
  const mergedValueRef = useMergedState(controlledValueRef, uncontrolledValueRef);
68
- const themeRef = useTheme('DynamicInput', 'DynamicInput', style, dynamicInputLight, props, mergedClsPrefixRef);
62
+ const themeRef = useTheme('DynamicInput', '-dynamic-input', style, dynamicInputLight, props, mergedClsPrefixRef);
69
63
  const insertionDisabledRef = computed(() => {
70
64
  const { value: mergedValue } = mergedValueRef;
71
65
  if (Array.isArray(mergedValue)) {
@@ -170,6 +164,32 @@ export default defineComponent({
170
164
  if (onRemove)
171
165
  onRemove(index);
172
166
  }
167
+ function swap(array, currentIndex, targetIndex) {
168
+ if (currentIndex < 0 ||
169
+ targetIndex < 0 ||
170
+ currentIndex >= array.length ||
171
+ targetIndex >= array.length) {
172
+ return;
173
+ }
174
+ if (currentIndex === targetIndex)
175
+ return;
176
+ const currentItem = array[currentIndex];
177
+ array[currentIndex] = array[targetIndex];
178
+ array[targetIndex] = currentItem;
179
+ }
180
+ function move(type, index) {
181
+ const { value: mergedValue } = mergedValueRef;
182
+ if (!Array.isArray(mergedValue))
183
+ return;
184
+ const newValue = Array.from(mergedValue);
185
+ if (type === 'up') {
186
+ swap(newValue, index, index - 1);
187
+ }
188
+ if (type === 'down') {
189
+ swap(newValue, index, index + 1);
190
+ }
191
+ doUpdateValue(newValue);
192
+ }
173
193
  provide(dynamicInputInjectionKey, {
174
194
  mergedThemeRef: themeRef,
175
195
  keyPlaceholderRef: toRef(props, 'keyPlaceholder'),
@@ -189,6 +209,7 @@ export default defineComponent({
189
209
  ensureKey,
190
210
  handleValueChange,
191
211
  remove,
212
+ move,
192
213
  createItem,
193
214
  mergedTheme: themeRef,
194
215
  cssVars: computed(() => {
@@ -200,28 +221,44 @@ export default defineComponent({
200
221
  };
201
222
  },
202
223
  render() {
203
- const { buttonSize, mergedClsPrefix, mergedValue, locale, mergedTheme, keyField, $slots, preset, itemStyle, NFormItem, ensureKey, handleValueChange, remove, createItem } = this;
204
- return (h("div", { class: `${mergedClsPrefix}-dynamic-input`, style: this.cssVars }, !Array.isArray(mergedValue) || mergedValue.length === 0 ? (h(NButton, { block: true, ghost: true, dashed: true, size: buttonSize, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, onClick: this.handleCreateClick }, {
205
- default: () => locale.create,
206
- icon: () => (h(NBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => h(AddIcon, null) }))
224
+ const { $slots, buttonSize, mergedClsPrefix, mergedValue, locale, mergedTheme, keyField, itemStyle, preset, showSortButton, NFormItem, ensureKey, handleValueChange, remove, createItem, move } = this;
225
+ return (h("div", { class: `${mergedClsPrefix}-dynamic-input`, style: this.cssVars }, !Array.isArray(mergedValue) || mergedValue.length === 0 ? (h(NButton, Object.assign({ block: true, ghost: true, dashed: true, size: buttonSize }, this.createButtonProps, { disabled: this.insertionDisabled, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, onClick: this.handleCreateClick }), {
226
+ default: () => resolveSlot($slots['create-button-default'], () => [
227
+ locale.create
228
+ ]),
229
+ icon: () => resolveSlot($slots['create-button-icon'], () => [
230
+ h(NBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => h(AddIcon, null) })
231
+ ])
207
232
  })) : (mergedValue.map((_, index) => (h("div", { key: keyField ? _[keyField] : ensureKey(_, index), "data-key": keyField ? _[keyField] : ensureKey(_, index), class: `${mergedClsPrefix}-dynamic-input-item`, style: itemStyle },
208
- $slots.default ? ($slots.default({
233
+ resolveSlotWithProps($slots.default, {
209
234
  value: mergedValue[index],
210
235
  index
211
- })) : preset === 'input' ? (h(NDynamicInputInputPreset, { clsPrefix: mergedClsPrefix, value: mergedValue[index], parentPath: NFormItem ? NFormItem.path.value : undefined, path: (NFormItem === null || NFormItem === void 0 ? void 0 : NFormItem.path.value)
212
- ? `${NFormItem.path.value}[${index}]`
213
- : undefined, onUpdateValue: (v) => handleValueChange(index, v) })) : preset === 'pair' ? (h(NDynamicInputPairPreset, { clsPrefix: mergedClsPrefix, value: mergedValue[index], parentPath: NFormItem ? NFormItem.path.value : undefined, path: (NFormItem === null || NFormItem === void 0 ? void 0 : NFormItem.path.value)
214
- ? `${NFormItem.path.value}[${index}]`
215
- : undefined, onUpdateValue: (v) => handleValueChange(index, v) })) : null,
236
+ }, () => {
237
+ return [
238
+ preset === 'input' ? (h(NDynamicInputInputPreset, { clsPrefix: mergedClsPrefix, value: mergedValue[index], parentPath: NFormItem ? NFormItem.path.value : undefined, path: (NFormItem === null || NFormItem === void 0 ? void 0 : NFormItem.path.value)
239
+ ? `${NFormItem.path.value}[${index}]`
240
+ : undefined, onUpdateValue: (v) => handleValueChange(index, v) })) : preset === 'pair' ? (h(NDynamicInputPairPreset, { clsPrefix: mergedClsPrefix, value: mergedValue[index], parentPath: NFormItem ? NFormItem.path.value : undefined, path: (NFormItem === null || NFormItem === void 0 ? void 0 : NFormItem.path.value)
241
+ ? `${NFormItem.path.value}[${index}]`
242
+ : undefined, onUpdateValue: (v) => handleValueChange(index, v) })) : null
243
+ ];
244
+ }),
216
245
  h("div", { class: `${mergedClsPrefix}-dynamic-input-item__action` },
217
246
  h(NButtonGroup, { size: buttonSize }, {
218
247
  default: () => [
219
- !this.removeDisabled ? (h(NButton, { theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, circle: true, onClick: () => remove(index) }, {
248
+ h(NButton, { disabled: this.removeDisabled, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, circle: true, onClick: () => remove(index) }, {
220
249
  icon: () => (h(NBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => h(RemoveIcon, null) }))
221
- })) : null,
250
+ }),
222
251
  h(NButton, { disabled: this.insertionDisabled, circle: true, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, onClick: () => createItem(index) }, {
223
252
  icon: () => (h(NBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => h(AddIcon, null) }))
224
- })
253
+ }),
254
+ showSortButton ? (h(NButton, { disabled: index === 0, circle: true, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, onClick: () => move('up', index) }, {
255
+ icon: () => (h(NBaseIcon, { clsPrefix: mergedClsPrefix }, {
256
+ default: () => h(ArrowUpIcon, null)
257
+ }))
258
+ })) : null,
259
+ showSortButton ? (h(NButton, { disabled: index === mergedValue.length - 1, circle: true, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, onClick: () => move('down', index) }, {
260
+ icon: () => (h(NBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => h(ArrowDownIcon, null) }))
261
+ })) : null
225
262
  ]
226
263
  }))))))));
227
264
  }
@@ -1,4 +1,5 @@
1
1
  import { PropType, CSSProperties } from 'vue';
2
+ import type { InputProps } from '../../input';
2
3
  import type { MaybeArray, ExtractPublicPropTypes } from '../../_utils';
3
4
  import type { OnUpdateValue } from './interface';
4
5
  declare const dynamicTagsProps: {
@@ -12,18 +13,15 @@ declare const dynamicTagsProps: {
12
13
  };
13
14
  value: PropType<string[]>;
14
15
  inputStyle: PropType<string | CSSProperties>;
16
+ inputProps: PropType<InputProps>;
15
17
  max: PropType<number>;
16
18
  tagStyle: PropType<string | CSSProperties>;
17
19
  'onUpdate:value': PropType<MaybeArray<OnUpdateValue>>;
18
20
  onUpdateValue: PropType<MaybeArray<OnUpdateValue>>;
19
- onChange: {
20
- type: PropType<MaybeArray<OnUpdateValue> | undefined>;
21
- validator: () => boolean;
22
- default: undefined;
23
- };
21
+ onChange: PropType<MaybeArray<OnUpdateValue> | undefined>;
24
22
  color: PropType<import("../../tag/src/common-props").TagColor>;
25
23
  type: {
26
- readonly type: PropType<"default" | "error" | "info" | "success" | "warning" | "primary">;
24
+ readonly type: PropType<"default" | "success" | "error" | "warning" | "info" | "primary">;
27
25
  readonly default: "default";
28
26
  };
29
27
  round: BooleanConstructor;
@@ -1053,18 +1051,15 @@ declare const _default: import("vue").DefineComponent<{
1053
1051
  };
1054
1052
  value: PropType<string[]>;
1055
1053
  inputStyle: PropType<string | CSSProperties>;
1054
+ inputProps: PropType<InputProps>;
1056
1055
  max: PropType<number>;
1057
1056
  tagStyle: PropType<string | CSSProperties>;
1058
1057
  'onUpdate:value': PropType<MaybeArray<OnUpdateValue>>;
1059
1058
  onUpdateValue: PropType<MaybeArray<OnUpdateValue>>;
1060
- onChange: {
1061
- type: PropType<MaybeArray<OnUpdateValue> | undefined>;
1062
- validator: () => boolean;
1063
- default: undefined;
1064
- };
1059
+ onChange: PropType<MaybeArray<OnUpdateValue> | undefined>;
1065
1060
  color: PropType<import("../../tag/src/common-props").TagColor>;
1066
1061
  type: {
1067
- readonly type: PropType<"default" | "error" | "info" | "success" | "warning" | "primary">;
1062
+ readonly type: PropType<"default" | "success" | "error" | "warning" | "info" | "primary">;
1068
1063
  readonly default: "default";
1069
1064
  };
1070
1065
  round: BooleanConstructor;
@@ -2584,18 +2579,15 @@ declare const _default: import("vue").DefineComponent<{
2584
2579
  };
2585
2580
  value: PropType<string[]>;
2586
2581
  inputStyle: PropType<string | CSSProperties>;
2582
+ inputProps: PropType<InputProps>;
2587
2583
  max: PropType<number>;
2588
2584
  tagStyle: PropType<string | CSSProperties>;
2589
2585
  'onUpdate:value': PropType<MaybeArray<OnUpdateValue>>;
2590
2586
  onUpdateValue: PropType<MaybeArray<OnUpdateValue>>;
2591
- onChange: {
2592
- type: PropType<MaybeArray<OnUpdateValue> | undefined>;
2593
- validator: () => boolean;
2594
- default: undefined;
2595
- };
2587
+ onChange: PropType<MaybeArray<OnUpdateValue> | undefined>;
2596
2588
  color: PropType<import("../../tag/src/common-props").TagColor>;
2597
2589
  type: {
2598
- readonly type: PropType<"default" | "error" | "info" | "success" | "warning" | "primary">;
2590
+ readonly type: PropType<"default" | "success" | "error" | "warning" | "info" | "primary">;
2599
2591
  readonly default: "default";
2600
2592
  };
2601
2593
  round: BooleanConstructor;
@@ -3613,11 +3605,10 @@ declare const _default: import("vue").DefineComponent<{
3613
3605
  }, any>;
3614
3606
  }>>>;
3615
3607
  }>>, {
3616
- type: "default" | "error" | "info" | "success" | "warning" | "primary";
3608
+ type: "default" | "success" | "error" | "warning" | "info" | "primary";
3617
3609
  round: boolean;
3618
3610
  size: "small" | "medium" | "large";
3619
3611
  disabled: boolean | undefined;
3620
- onChange: MaybeArray<OnUpdateValue> | undefined;
3621
3612
  closable: boolean;
3622
3613
  defaultValue: string[];
3623
3614
  }>;
@@ -1,4 +1,4 @@
1
- import { h, defineComponent, ref, computed, nextTick, toRef } from 'vue';
1
+ import { h, defineComponent, ref, computed, nextTick, toRef, watchEffect } from 'vue';
2
2
  import { useMergedState } from 'vooks';
3
3
  import commonProps from '../../tag/src/common-props';
4
4
  import { AddIcon } from '../../_internal/icons';
@@ -8,7 +8,7 @@ import { NInput } from '../../input';
8
8
  import { NTag } from '../../tag';
9
9
  import { NBaseIcon } from '../../_internal';
10
10
  import { useTheme, useFormItem, useLocale, useConfig } from '../../_mixins';
11
- import { warn, call, smallerSize } from '../../_utils';
11
+ import { call, smallerSize, warnOnce } from '../../_utils';
12
12
  import { dynamicTagsLight } from '../styles';
13
13
  import style from './styles/index.cssr';
14
14
  const dynamicTagsProps = Object.assign(Object.assign(Object.assign({}, useTheme.props), commonProps), { closable: {
@@ -17,22 +17,20 @@ const dynamicTagsProps = Object.assign(Object.assign(Object.assign({}, useTheme.
17
17
  }, defaultValue: {
18
18
  type: Array,
19
19
  default: () => []
20
- }, value: Array, inputStyle: [String, Object], max: Number, tagStyle: [String, Object], 'onUpdate:value': [Function, Array], onUpdateValue: [Function, Array],
20
+ }, value: Array, inputStyle: [String, Object], inputProps: Object, max: Number, tagStyle: [String, Object], 'onUpdate:value': [Function, Array], onUpdateValue: [Function, Array],
21
21
  // deprecated
22
- onChange: {
23
- type: [Function, Array],
24
- validator: () => {
25
- if (process.env.NODE_ENV !== 'production') {
26
- warn('dynamic-tags', '`on-change` is deprecated, please use `on-update:value` instead.');
27
- }
28
- return true;
29
- },
30
- default: undefined
31
- } });
22
+ onChange: [Function, Array] });
32
23
  export default defineComponent({
33
24
  name: 'DynamicTags',
34
25
  props: dynamicTagsProps,
35
26
  setup(props) {
27
+ if (process.env.NODE_ENV !== 'production') {
28
+ watchEffect(() => {
29
+ if (props.onChange !== undefined) {
30
+ warnOnce('dynamic-tags', '`on-change` is deprecated, please use `on-update:value` instead.');
31
+ }
32
+ });
33
+ }
36
34
  const { mergedClsPrefixRef } = useConfig(props);
37
35
  const { localeRef } = useLocale('DynamicTags');
38
36
  const formItem = useFormItem(props);
@@ -41,7 +39,7 @@ export default defineComponent({
41
39
  const showInputRef = ref(false);
42
40
  const inputForceFocusedRef = ref(true);
43
41
  const inputInstRef = ref(null);
44
- const themeRef = useTheme('DynamicTags', 'DynamicTags', style, dynamicTagsLight, props, mergedClsPrefixRef);
42
+ const themeRef = useTheme('DynamicTags', '-dynamic-tags', style, dynamicTagsLight, props, mergedClsPrefixRef);
45
43
  const uncontrolledValueRef = ref(props.defaultValue);
46
44
  const controlledValueRef = toRef(props, 'value');
47
45
  const mergedValueRef = useMergedState(controlledValueRef, uncontrolledValueRef);
@@ -134,9 +132,9 @@ export default defineComponent({
134
132
  const { mergedTheme, tagStyle, type, round, size, color, closable, mergedDisabled, showInput, inputValue, inputStyle, inputSize, inputForceFocused, triggerDisabled, handleInputKeyUp, handleInputBlur, handleAddClick, handleCloseClick, handleInputConfirm, $slots } = this;
135
133
  return this.mergedValue
136
134
  .map((tag, index) => (h(NTag, { key: index, theme: mergedTheme.peers.Tag, themeOverrides: mergedTheme.peerOverrides.Tag, style: tagStyle, type: type, round: round, size: size, color: color, closable: closable, disabled: mergedDisabled, onClose: () => handleCloseClick(index) }, { default: () => tag })))
137
- .concat(showInput ? ($slots.input ? ($slots.input({ submit: handleInputConfirm })) : (h(NInput, { ref: "inputInstRef", autosize: true, value: inputValue, onUpdateValue: (v) => {
135
+ .concat(showInput ? ($slots.input ? ($slots.input({ submit: handleInputConfirm })) : (h(NInput, Object.assign({ placeholder: "", size: inputSize, style: inputStyle, autosize: true }, this.inputProps, { ref: "inputInstRef", value: inputValue, onUpdateValue: (v) => {
138
136
  this.inputValue = v;
139
- }, theme: mergedTheme.peers.Input, themeOverrides: mergedTheme.peerOverrides.Input, style: inputStyle, size: inputSize, placeholder: "", onKeyup: handleInputKeyUp, onBlur: handleInputBlur, internalForceFocus: inputForceFocused }))) : $slots.trigger ? ($slots.trigger({
137
+ }, theme: mergedTheme.peers.Input, themeOverrides: mergedTheme.peerOverrides.Input, onKeyup: handleInputKeyUp, onBlur: handleInputBlur, internalForceFocus: inputForceFocused })))) : $slots.trigger ? ($slots.trigger({
140
138
  activate: handleAddClick,
141
139
  disabled: triggerDisabled
142
140
  })) : (h(NButton, { dashed: true, disabled: triggerDisabled, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, size: inputSize, onClick: handleAddClick }, {