naive-ui 2.30.3 → 2.30.4

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 (226) hide show
  1. package/dist/index.js +1385 -901
  2. package/dist/index.prod.js +2 -2
  3. package/es/_internal/scrollbar/src/Scrollbar.js +5 -17
  4. package/es/_internal/select-menu/src/SelectGroupHeader.d.ts +1 -0
  5. package/es/_internal/select-menu/src/SelectGroupHeader.js +5 -3
  6. package/es/_internal/select-menu/src/SelectMenu.d.ts +3 -3
  7. package/es/_internal/select-menu/src/SelectMenu.js +6 -8
  8. package/es/_internal/select-menu/src/SelectOption.d.ts +1 -0
  9. package/es/_internal/select-menu/src/SelectOption.js +11 -5
  10. package/es/_internal/select-menu/src/interface.d.ts +3 -1
  11. package/es/_internal/selection/src/Selection.d.ts +0 -2
  12. package/es/_internal/selection/src/Selection.js +2 -2
  13. package/es/_mixins/use-theme.js +1 -1
  14. package/es/_utils/composable/index.d.ts +3 -5
  15. package/es/_utils/composable/index.js +3 -111
  16. package/es/_utils/composable/use-collection.d.ts +4 -0
  17. package/es/_utils/composable/use-collection.js +87 -0
  18. package/es/_utils/composable/use-deferred-true.d.ts +2 -0
  19. package/es/_utils/composable/use-deferred-true.js +25 -0
  20. package/es/_utils/composable/use-reactivated.d.ts +3 -0
  21. package/es/_utils/composable/use-reactivated.js +20 -0
  22. package/es/_utils/event/index.d.ts +2 -0
  23. package/es/_utils/event/index.js +7 -0
  24. package/es/_utils/index.d.ts +2 -1
  25. package/es/_utils/index.js +2 -1
  26. package/es/_utils/vue/index.d.ts +1 -0
  27. package/es/_utils/vue/index.js +1 -0
  28. package/es/_utils/vue/merge-handlers.d.ts +1 -0
  29. package/es/_utils/vue/merge-handlers.js +15 -0
  30. package/es/button/src/Button.js +7 -2
  31. package/es/cascader/src/Cascader.d.ts +2 -3
  32. package/es/cascader/src/Cascader.js +26 -22
  33. package/es/cascader/src/CascaderMenu.d.ts +2 -2
  34. package/es/cascader/src/CascaderMenu.js +2 -4
  35. package/es/data-table/src/DataTable.d.ts +787 -0
  36. package/es/data-table/src/DataTable.js +7 -3
  37. package/es/data-table/src/HeaderButton/FilterButton.d.ts +142 -0
  38. package/es/data-table/src/HeaderButton/FilterMenu.d.ts +142 -0
  39. package/es/data-table/src/MainTable.d.ts +2 -0
  40. package/es/data-table/src/MainTable.js +5 -1
  41. package/es/data-table/src/TableParts/Body.d.ts +143 -0
  42. package/es/data-table/src/TableParts/Body.js +11 -2
  43. package/es/data-table/src/TableParts/Cell.d.ts +284 -0
  44. package/es/data-table/src/TableParts/Header.d.ts +143 -0
  45. package/es/data-table/src/TableParts/Header.js +6 -2
  46. package/es/data-table/src/interface.d.ts +9 -5
  47. package/es/data-table/src/use-expand.d.ts +5 -3
  48. package/es/data-table/src/use-expand.js +22 -2
  49. package/es/data-table/src/utils.d.ts +2 -2
  50. package/es/data-table/src/utils.js +10 -8
  51. package/es/data-table/styles/light.d.ts +71 -0
  52. package/es/date-picker/src/DatePicker.d.ts +2 -1
  53. package/es/date-picker/src/DatePicker.js +20 -9
  54. package/es/date-picker/src/panel/month.js +3 -2
  55. package/es/drawer/src/Drawer.d.ts +1 -1
  56. package/es/drawer/src/Drawer.js +3 -3
  57. package/es/drawer/src/DrawerBodyWrapper.d.ts +2 -2
  58. package/es/dropdown/src/Dropdown.d.ts +4 -0
  59. package/es/dynamic-tags/src/DynamicTags.js +1 -1
  60. package/es/input/src/Input.d.ts +6 -3
  61. package/es/input/src/Input.js +56 -31
  62. package/es/input/src/utils.d.ts +7 -1
  63. package/es/input/src/utils.js +57 -2
  64. package/es/layout/src/Layout.d.ts +3 -1
  65. package/es/layout/src/Layout.js +22 -4
  66. package/es/layout/src/LayoutContent.d.ts +1 -0
  67. package/es/layout/src/LayoutSider.d.ts +1 -0
  68. package/es/layout/src/LayoutSider.js +22 -3
  69. package/es/menu/src/Menu.d.ts +1 -1
  70. package/es/modal/src/BodyWrapper.d.ts +2 -2
  71. package/es/modal/src/Modal.js +2 -2
  72. package/es/pagination/src/Pagination.d.ts +806 -20
  73. package/es/pagination/src/Pagination.js +115 -52
  74. package/es/pagination/src/interface.d.ts +2 -2
  75. package/es/pagination/src/styles/index.cssr.js +12 -10
  76. package/es/pagination/src/utils.d.ts +15 -5
  77. package/es/pagination/src/utils.js +117 -50
  78. package/es/pagination/styles/dark.js +3 -1
  79. package/es/pagination/styles/light.d.ts +71 -0
  80. package/es/pagination/styles/light.js +3 -1
  81. package/es/popconfirm/src/Popconfirm.d.ts +4 -0
  82. package/es/popover/src/Popover.d.ts +5 -0
  83. package/es/popover/src/Popover.js +1 -0
  84. package/es/popover/src/PopoverBody.d.ts +4 -0
  85. package/es/popover/src/PopoverBody.js +18 -10
  86. package/es/popselect/src/Popselect.d.ts +24 -0
  87. package/es/popselect/src/Popselect.js +12 -7
  88. package/es/popselect/src/PopselectPanel.d.ts +22 -2
  89. package/es/popselect/src/PopselectPanel.js +12 -1
  90. package/es/select/src/Select.d.ts +1 -1
  91. package/es/select/src/Select.js +5 -2
  92. package/es/slider/src/Slider.d.ts +1 -1
  93. package/es/slider/src/Slider.js +13 -5
  94. package/es/slider/src/styles/index.cssr.js +26 -31
  95. package/es/time-picker/src/TimePicker.d.ts +2 -1
  96. package/es/time-picker/src/TimePicker.js +18 -8
  97. package/es/tooltip/src/Tooltip.d.ts +4 -0
  98. package/es/tree/src/Tree.d.ts +2 -3
  99. package/es/tree/src/Tree.js +6 -8
  100. package/es/tree/src/TreeNode.js +4 -1
  101. package/es/tree/src/interface.d.ts +0 -1
  102. package/es/tree/src/keyboard.d.ts +0 -1
  103. package/es/tree/src/keyboard.js +6 -9
  104. package/es/tree-select/src/TreeSelect.d.ts +1 -3
  105. package/es/tree-select/src/TreeSelect.js +14 -16
  106. package/es/upload/src/UploadDragger.js +2 -2
  107. package/es/upload/src/UploadFile.d.ts +2 -2
  108. package/es/upload/src/UploadFile.js +9 -4
  109. package/es/upload/src/UploadTrigger.js +4 -3
  110. package/es/upload/src/styles/index.cssr.js +2 -2
  111. package/es/upload/src/utils.js +1 -15
  112. package/es/version.d.ts +1 -1
  113. package/es/version.js +1 -1
  114. package/lib/_internal/scrollbar/src/Scrollbar.js +4 -16
  115. package/lib/_internal/select-menu/src/SelectGroupHeader.d.ts +1 -0
  116. package/lib/_internal/select-menu/src/SelectGroupHeader.js +5 -3
  117. package/lib/_internal/select-menu/src/SelectMenu.d.ts +3 -3
  118. package/lib/_internal/select-menu/src/SelectMenu.js +5 -7
  119. package/lib/_internal/select-menu/src/SelectOption.d.ts +1 -0
  120. package/lib/_internal/select-menu/src/SelectOption.js +10 -4
  121. package/lib/_internal/select-menu/src/interface.d.ts +3 -1
  122. package/lib/_internal/selection/src/Selection.d.ts +0 -2
  123. package/lib/_internal/selection/src/Selection.js +2 -2
  124. package/lib/_mixins/use-theme.js +1 -1
  125. package/lib/_utils/composable/index.d.ts +3 -5
  126. package/lib/_utils/composable/index.js +9 -116
  127. package/lib/_utils/composable/use-collection.d.ts +4 -0
  128. package/lib/_utils/composable/use-collection.js +93 -0
  129. package/lib/_utils/composable/use-deferred-true.d.ts +2 -0
  130. package/lib/_utils/composable/use-deferred-true.js +29 -0
  131. package/lib/_utils/composable/use-reactivated.d.ts +3 -0
  132. package/lib/_utils/composable/use-reactivated.js +24 -0
  133. package/lib/_utils/event/index.d.ts +2 -0
  134. package/lib/_utils/event/index.js +12 -0
  135. package/lib/_utils/index.d.ts +2 -1
  136. package/lib/_utils/index.js +5 -1
  137. package/lib/_utils/vue/index.d.ts +1 -0
  138. package/lib/_utils/vue/index.js +3 -1
  139. package/lib/_utils/vue/merge-handlers.d.ts +1 -0
  140. package/lib/_utils/vue/merge-handlers.js +19 -0
  141. package/lib/button/src/Button.js +7 -2
  142. package/lib/cascader/src/Cascader.d.ts +2 -3
  143. package/lib/cascader/src/Cascader.js +25 -21
  144. package/lib/cascader/src/CascaderMenu.d.ts +2 -2
  145. package/lib/cascader/src/CascaderMenu.js +2 -4
  146. package/lib/data-table/src/DataTable.d.ts +787 -0
  147. package/lib/data-table/src/DataTable.js +7 -3
  148. package/lib/data-table/src/HeaderButton/FilterButton.d.ts +142 -0
  149. package/lib/data-table/src/HeaderButton/FilterMenu.d.ts +142 -0
  150. package/lib/data-table/src/MainTable.d.ts +2 -0
  151. package/lib/data-table/src/MainTable.js +5 -1
  152. package/lib/data-table/src/TableParts/Body.d.ts +143 -0
  153. package/lib/data-table/src/TableParts/Body.js +11 -2
  154. package/lib/data-table/src/TableParts/Cell.d.ts +284 -0
  155. package/lib/data-table/src/TableParts/Header.d.ts +143 -0
  156. package/lib/data-table/src/TableParts/Header.js +6 -2
  157. package/lib/data-table/src/interface.d.ts +9 -5
  158. package/lib/data-table/src/use-expand.d.ts +5 -3
  159. package/lib/data-table/src/use-expand.js +22 -2
  160. package/lib/data-table/src/utils.d.ts +2 -2
  161. package/lib/data-table/src/utils.js +11 -9
  162. package/lib/data-table/styles/light.d.ts +71 -0
  163. package/lib/date-picker/src/DatePicker.d.ts +2 -1
  164. package/lib/date-picker/src/DatePicker.js +19 -8
  165. package/lib/date-picker/src/panel/month.js +3 -2
  166. package/lib/drawer/src/Drawer.d.ts +1 -1
  167. package/lib/drawer/src/Drawer.js +2 -2
  168. package/lib/drawer/src/DrawerBodyWrapper.d.ts +2 -2
  169. package/lib/dropdown/src/Dropdown.d.ts +4 -0
  170. package/lib/dynamic-tags/src/DynamicTags.js +1 -1
  171. package/lib/input/src/Input.d.ts +6 -3
  172. package/lib/input/src/Input.js +55 -30
  173. package/lib/input/src/utils.d.ts +7 -1
  174. package/lib/input/src/utils.js +60 -4
  175. package/lib/layout/src/Layout.d.ts +3 -1
  176. package/lib/layout/src/Layout.js +22 -4
  177. package/lib/layout/src/LayoutContent.d.ts +1 -0
  178. package/lib/layout/src/LayoutSider.d.ts +1 -0
  179. package/lib/layout/src/LayoutSider.js +21 -2
  180. package/lib/menu/src/Menu.d.ts +1 -1
  181. package/lib/modal/src/BodyWrapper.d.ts +2 -2
  182. package/lib/modal/src/Modal.js +1 -1
  183. package/lib/pagination/src/Pagination.d.ts +806 -20
  184. package/lib/pagination/src/Pagination.js +114 -51
  185. package/lib/pagination/src/interface.d.ts +2 -2
  186. package/lib/pagination/src/styles/index.cssr.js +13 -11
  187. package/lib/pagination/src/utils.d.ts +15 -5
  188. package/lib/pagination/src/utils.js +118 -53
  189. package/lib/pagination/styles/dark.js +6 -4
  190. package/lib/pagination/styles/light.d.ts +71 -0
  191. package/lib/pagination/styles/light.js +6 -4
  192. package/lib/popconfirm/src/Popconfirm.d.ts +4 -0
  193. package/lib/popover/src/Popover.d.ts +5 -0
  194. package/lib/popover/src/Popover.js +1 -0
  195. package/lib/popover/src/PopoverBody.d.ts +4 -0
  196. package/lib/popover/src/PopoverBody.js +18 -10
  197. package/lib/popselect/src/Popselect.d.ts +24 -0
  198. package/lib/popselect/src/Popselect.js +10 -5
  199. package/lib/popselect/src/PopselectPanel.d.ts +22 -2
  200. package/lib/popselect/src/PopselectPanel.js +12 -1
  201. package/lib/select/src/Select.d.ts +1 -1
  202. package/lib/select/src/Select.js +4 -1
  203. package/lib/slider/src/Slider.d.ts +1 -1
  204. package/lib/slider/src/Slider.js +12 -4
  205. package/lib/slider/src/styles/index.cssr.js +26 -31
  206. package/lib/time-picker/src/TimePicker.d.ts +2 -1
  207. package/lib/time-picker/src/TimePicker.js +17 -7
  208. package/lib/tooltip/src/Tooltip.d.ts +4 -0
  209. package/lib/tree/src/Tree.d.ts +2 -3
  210. package/lib/tree/src/Tree.js +6 -8
  211. package/lib/tree/src/TreeNode.js +4 -1
  212. package/lib/tree/src/interface.d.ts +0 -1
  213. package/lib/tree/src/keyboard.d.ts +0 -1
  214. package/lib/tree/src/keyboard.js +6 -9
  215. package/lib/tree-select/src/TreeSelect.d.ts +1 -3
  216. package/lib/tree-select/src/TreeSelect.js +13 -15
  217. package/lib/upload/src/UploadDragger.js +2 -2
  218. package/lib/upload/src/UploadFile.d.ts +2 -2
  219. package/lib/upload/src/UploadFile.js +9 -4
  220. package/lib/upload/src/UploadTrigger.js +3 -2
  221. package/lib/upload/src/styles/index.cssr.js +2 -2
  222. package/lib/upload/src/utils.js +1 -15
  223. package/lib/version.d.ts +1 -1
  224. package/lib/version.js +1 -1
  225. package/package.json +2 -2
  226. package/web-types.json +37 -1
@@ -10,7 +10,7 @@ import { TimeIcon } from '../../_internal/icons';
10
10
  import { NInput } from '../../input';
11
11
  import { NBaseIcon } from '../../_internal';
12
12
  import { useConfig, useTheme, useLocale, useFormItem, useThemeClass } from '../../_mixins';
13
- import { call, useAdjustedTo, warnOnce } from '../../_utils';
13
+ import { call, markEventEffectPerformed, useAdjustedTo, warnOnce } from '../../_utils';
14
14
  import { timePickerLight } from '../styles';
15
15
  import Panel from './Panel';
16
16
  import { timePickerInjectionKey } from './interface';
@@ -294,13 +294,22 @@ export default defineComponent({
294
294
  returnFocus: true
295
295
  });
296
296
  }
297
- function handleMenuKeyDown(e) {
297
+ function handleInputKeydown(e) {
298
+ if (e.key === 'Escape' && mergedShowRef.value) {
299
+ markEventEffectPerformed(e);
300
+ // closePanel will be called in onDeactivated
301
+ }
302
+ }
303
+ function handleMenuKeydown(e) {
298
304
  var _a;
299
305
  switch (e.key) {
300
306
  case 'Escape':
301
- closePanel({
302
- returnFocus: true
303
- });
307
+ if (mergedShowRef.value) {
308
+ markEventEffectPerformed(e);
309
+ closePanel({
310
+ returnFocus: true
311
+ });
312
+ }
304
313
  break;
305
314
  case 'Tab':
306
315
  if (keyboardState.shift && e.target === ((_a = panelInstRef.value) === null || _a === void 0 ? void 0 : _a.$el)) {
@@ -624,6 +633,7 @@ export default defineComponent({
624
633
  minuteValue: minuteValueRef,
625
634
  secondValue: secondValueRef,
626
635
  amPmValue: amPmValueRef,
636
+ handleInputKeydown,
627
637
  handleTimeInputFocus,
628
638
  handleTimeInputBlur,
629
639
  handleNowClick,
@@ -640,7 +650,7 @@ export default defineComponent({
640
650
  handleAmPmClick,
641
651
  handleTimeInputClear,
642
652
  handleFocusDetectorFocus,
643
- handleMenuKeyDown,
653
+ handleMenuKeydown,
644
654
  handleTriggerClick,
645
655
  mergedTheme: themeRef,
646
656
  triggerCssVars: inlineThemeDisabled ? undefined : triggerCssVarsRef,
@@ -658,7 +668,7 @@ export default defineComponent({
658
668
  h(VBinder, null, {
659
669
  default: () => [
660
670
  h(VTarget, null, {
661
- default: () => (h(NInput, { ref: "inputInstRef", status: this.mergedStatus, value: this.displayTimeString, bordered: this.mergedBordered, passivelyActivated: true, attrSize: this.mergedAttrSize, theme: this.mergedTheme.peers.Input, themeOverrides: this.mergedTheme.peerOverrides.Input, stateful: this.stateful, size: this.mergedSize, placeholder: this.localizedPlaceholder, clearable: this.clearable, disabled: this.mergedDisabled, textDecoration: this.isValueInvalid ? 'line-through' : undefined, onFocus: this.handleTimeInputFocus, onBlur: this.handleTimeInputBlur, onActivate: this.handleTimeInputActivate, onDeactivate: this.handleTimeInputDeactivate, onUpdateValue: this.handleTimeInputUpdateValue, onClear: this.handleTimeInputClear, internalDeactivateOnEnter: true, internalForceFocus: this.mergedShow, readonly: this.inputReadonly || this.mergedDisabled, onClick: this.handleTriggerClick }, this.showIcon
671
+ default: () => (h(NInput, { ref: "inputInstRef", status: this.mergedStatus, value: this.displayTimeString, bordered: this.mergedBordered, passivelyActivated: true, attrSize: this.mergedAttrSize, theme: this.mergedTheme.peers.Input, themeOverrides: this.mergedTheme.peerOverrides.Input, stateful: this.stateful, size: this.mergedSize, placeholder: this.localizedPlaceholder, clearable: this.clearable, disabled: this.mergedDisabled, textDecoration: this.isValueInvalid ? 'line-through' : undefined, onFocus: this.handleTimeInputFocus, onBlur: this.handleTimeInputBlur, onActivate: this.handleTimeInputActivate, onDeactivate: this.handleTimeInputDeactivate, onUpdateValue: this.handleTimeInputUpdateValue, onClear: this.handleTimeInputClear, internalDeactivateOnEnter: true, internalForceFocus: this.mergedShow, readonly: this.inputReadonly || this.mergedDisabled, onClick: this.handleTriggerClick, onKeydown: this.handleInputKeydown }, this.showIcon
662
672
  ? {
663
673
  [this.clearable
664
674
  ? 'clear-icon-placeholder'
@@ -674,7 +684,7 @@ export default defineComponent({
674
684
  var _a;
675
685
  if (this.mergedShow) {
676
686
  (_a = this.onRender) === null || _a === void 0 ? void 0 : _a.call(this);
677
- return withDirectives(h(Panel, { ref: "panelInstRef", actions: this.actions, class: this.themeClass, style: this.cssVars, seconds: this.seconds, minutes: this.minutes, hours: this.hours, transitionDisabled: this.transitionDisabled, hourValue: this.hourValue, showHour: this.hourInFormat, isHourInvalid: this.isHourInvalid, isHourDisabled: this.isHourDisabled, minuteValue: this.minuteValue, showMinute: this.minuteInFormat, isMinuteInvalid: this.isMinuteInvalid, isMinuteDisabled: this.isMinuteDisabled, secondValue: this.secondValue, amPmValue: this.amPmValue, showSecond: this.secondInFormat, isSecondInvalid: this.isSecondInvalid, isSecondDisabled: this.isSecondDisabled, isValueInvalid: this.isValueInvalid, nowText: this.localizedNow, confirmText: this.localizedPositiveText, use12Hours: this.use12Hours, onFocusout: this.handleMenuFocusOut, onKeydown: this.handleMenuKeyDown, onHourClick: this.handleHourClick, onMinuteClick: this.handleMinuteClick, onSecondClick: this.handleSecondClick, onAmPmClick: this.handleAmPmClick, onNowClick: this.handleNowClick, onConfirmClick: this.handleConfirmClick, onFocusDetectorFocus: this.handleFocusDetectorFocus }), [
687
+ return withDirectives(h(Panel, { ref: "panelInstRef", actions: this.actions, class: this.themeClass, style: this.cssVars, seconds: this.seconds, minutes: this.minutes, hours: this.hours, transitionDisabled: this.transitionDisabled, hourValue: this.hourValue, showHour: this.hourInFormat, isHourInvalid: this.isHourInvalid, isHourDisabled: this.isHourDisabled, minuteValue: this.minuteValue, showMinute: this.minuteInFormat, isMinuteInvalid: this.isMinuteInvalid, isMinuteDisabled: this.isMinuteDisabled, secondValue: this.secondValue, amPmValue: this.amPmValue, showSecond: this.secondInFormat, isSecondInvalid: this.isSecondInvalid, isSecondDisabled: this.isSecondDisabled, isValueInvalid: this.isValueInvalid, nowText: this.localizedNow, confirmText: this.localizedPositiveText, use12Hours: this.use12Hours, onFocusout: this.handleMenuFocusOut, onKeydown: this.handleMenuKeydown, onHourClick: this.handleHourClick, onMinuteClick: this.handleMinuteClick, onSecondClick: this.handleSecondClick, onAmPmClick: this.handleAmPmClick, onNowClick: this.handleNowClick, onConfirmClick: this.handleConfirmClick, onFocusDetectorFocus: this.handleFocusDetectorFocus }), [
678
688
  [
679
689
  clickoutside,
680
690
  this.handleClickOutside,
@@ -132,6 +132,7 @@ declare const tooltipProps: {
132
132
  onClickoutside: import("vue").PropType<(e: MouseEvent) => void>;
133
133
  'onUpdate:show': import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void>>;
134
134
  onUpdateShow: import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void>>;
135
+ internalDeactivateImmediately: BooleanConstructor;
135
136
  internalSyncTargetWithParent: BooleanConstructor;
136
137
  internalInheritedEventHandlers: {
137
138
  type: import("vue").PropType<import("../../popover/src/Popover").TriggerEventHandlers[]>;
@@ -283,6 +284,7 @@ declare const _default: import("vue").DefineComponent<{
283
284
  onClickoutside: import("vue").PropType<(e: MouseEvent) => void>;
284
285
  'onUpdate:show': import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void>>;
285
286
  onUpdateShow: import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void>>;
287
+ internalDeactivateImmediately: BooleanConstructor;
286
288
  internalSyncTargetWithParent: BooleanConstructor;
287
289
  internalInheritedEventHandlers: {
288
290
  type: import("vue").PropType<import("../../popover/src/Popover").TriggerEventHandlers[]>;
@@ -583,6 +585,7 @@ declare const _default: import("vue").DefineComponent<{
583
585
  onClickoutside: import("vue").PropType<(e: MouseEvent) => void>;
584
586
  'onUpdate:show': import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void>>;
585
587
  onUpdateShow: import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void>>;
588
+ internalDeactivateImmediately: BooleanConstructor;
586
589
  internalSyncTargetWithParent: BooleanConstructor;
587
590
  internalInheritedEventHandlers: {
588
591
  type: import("vue").PropType<import("../../popover/src/Popover").TriggerEventHandlers[]>;
@@ -618,6 +621,7 @@ declare const _default: import("vue").DefineComponent<{
618
621
  arrowPointToCenter: boolean;
619
622
  displayDirective: "show" | "if";
620
623
  keepAliveOnHover: boolean;
624
+ internalDeactivateImmediately: boolean;
621
625
  animated: boolean;
622
626
  internalTrapFocus: boolean;
623
627
  defaultShow: boolean;
@@ -1097,7 +1097,6 @@ declare const _default: import("vue").DefineComponent<{
1097
1097
  handleAfterEnter: () => void;
1098
1098
  handleResize: () => void;
1099
1099
  handleKeydown: (e: KeyboardEvent) => void;
1100
- handleKeyup: (e: KeyboardEvent) => void;
1101
1100
  cssVars: import("vue").ComputedRef<{
1102
1101
  '--n-arrow-color': string;
1103
1102
  '--n-loading-color': string;
@@ -1425,7 +1424,9 @@ declare const _default: import("vue").DefineComponent<{
1425
1424
  readonly virtualScroll: boolean;
1426
1425
  readonly checkable: boolean;
1427
1426
  readonly animated: boolean;
1427
+ readonly cancelable: boolean;
1428
1428
  readonly childrenField: string;
1429
+ readonly defaultExpandAll: boolean;
1429
1430
  readonly allowCheckingNotLoaded: boolean;
1430
1431
  readonly cascade: boolean;
1431
1432
  readonly indent: number;
@@ -1433,8 +1434,6 @@ declare const _default: import("vue").DefineComponent<{
1433
1434
  readonly checkStrategy: CheckStrategy;
1434
1435
  readonly leafOnly: boolean;
1435
1436
  readonly defaultExpandedKeys: Key[];
1436
- readonly defaultExpandAll: boolean;
1437
- readonly cancelable: boolean;
1438
1437
  readonly selectable: boolean;
1439
1438
  readonly expandOnClick: boolean;
1440
1439
  readonly blockLine: boolean;
@@ -231,7 +231,7 @@ export default defineComponent({
231
231
  const controlledExpandedKeysRef = toRef(props, 'expandedKeys');
232
232
  const mergedExpandedKeysRef = useMergedState(controlledExpandedKeysRef, uncontrolledExpandedKeysRef);
233
233
  const fNodesRef = computed(() => displayTreeMateRef.value.getFlattenedNodes(mergedExpandedKeysRef.value));
234
- const { pendingNodeKeyRef, handleKeyup, handleKeydown } = useKeyboard({
234
+ const { pendingNodeKeyRef, handleKeydown } = useKeyboard({
235
235
  mergedSelectedKeysRef,
236
236
  fNodesRef,
237
237
  mergedExpandedKeysRef,
@@ -1042,8 +1042,7 @@ export default defineComponent({
1042
1042
  handleCheck
1043
1043
  });
1044
1044
  const exposedMethods = {
1045
- handleKeydown,
1046
- handleKeyup
1045
+ handleKeydown
1047
1046
  };
1048
1047
  const cssVarsRef = computed(() => {
1049
1048
  const { common: { cubicBezierEaseInOut }, self: { fontSize, nodeBorderRadius, nodeColorHover, nodeColorPressed, nodeColorActive, arrowColor, loadingColor, nodeTextColor, nodeTextColorDisabled, dropMarkColor } } = themeRef.value;
@@ -1080,7 +1079,6 @@ export default defineComponent({
1080
1079
  handleAfterEnter,
1081
1080
  handleResize,
1082
1081
  handleKeydown: exposedMethods.handleKeydown,
1083
- handleKeyup: exposedMethods.handleKeyup,
1084
1082
  cssVars: inlineThemeDisabled ? undefined : cssVarsRef,
1085
1083
  themeClass: themeClassHandle === null || themeClassHandle === void 0 ? void 0 : themeClassHandle.themeClass,
1086
1084
  onRender: themeClassHandle === null || themeClassHandle === void 0 ? void 0 : themeClassHandle.onRender
@@ -1092,7 +1090,7 @@ export default defineComponent({
1092
1090
  if (!fNodes.length && internalRenderEmpty) {
1093
1091
  return internalRenderEmpty();
1094
1092
  }
1095
- const { mergedClsPrefix, blockNode, blockLine, draggable, disabled, internalFocusable, checkable, handleKeyup, handleKeydown, handleFocusout } = this;
1093
+ const { mergedClsPrefix, blockNode, blockLine, draggable, disabled, internalFocusable, checkable, handleKeydown, handleFocusout } = this;
1096
1094
  const mergedFocusable = internalFocusable && !disabled;
1097
1095
  const tabindex = mergedFocusable ? '0' : undefined;
1098
1096
  const treeClass = [
@@ -1107,7 +1105,7 @@ export default defineComponent({
1107
1105
  if (this.virtualScroll) {
1108
1106
  const { mergedTheme, internalScrollablePadding } = this;
1109
1107
  const padding = getPadding(internalScrollablePadding || '0');
1110
- return (h(NxScrollbar, { ref: "scrollbarInstRef", onDragleave: draggable ? this.handleDragLeaveTree : undefined, container: this.getScrollContainer, content: this.getScrollContent, class: treeClass, theme: mergedTheme.peers.Scrollbar, themeOverrides: mergedTheme.peerOverrides.Scrollbar, tabindex: tabindex, onKeyup: mergedFocusable ? handleKeyup : undefined, onKeydown: mergedFocusable ? handleKeydown : undefined, onFocusout: mergedFocusable ? handleFocusout : undefined }, {
1108
+ return (h(NxScrollbar, { ref: "scrollbarInstRef", onDragleave: draggable ? this.handleDragLeaveTree : undefined, container: this.getScrollContainer, content: this.getScrollContent, class: treeClass, theme: mergedTheme.peers.Scrollbar, themeOverrides: mergedTheme.peerOverrides.Scrollbar, tabindex: tabindex, onKeydown: mergedFocusable ? handleKeydown : undefined, onFocusout: mergedFocusable ? handleFocusout : undefined }, {
1111
1109
  default: () => {
1112
1110
  var _a;
1113
1111
  (_a = this.onRender) === null || _a === void 0 ? void 0 : _a.call(this);
@@ -1127,12 +1125,12 @@ export default defineComponent({
1127
1125
  treeClass.push(this.themeClass);
1128
1126
  (_a = this.onRender) === null || _a === void 0 ? void 0 : _a.call(this);
1129
1127
  if (internalScrollable) {
1130
- return (h(NxScrollbar, { class: treeClass, tabindex: tabindex, onKeyup: mergedFocusable ? handleKeyup : undefined, onKeydown: mergedFocusable ? handleKeydown : undefined, onFocusout: mergedFocusable ? handleFocusout : undefined, style: this.cssVars, contentStyle: { padding: this.internalScrollablePadding } }, {
1128
+ return (h(NxScrollbar, { class: treeClass, tabindex: tabindex, onKeydown: mergedFocusable ? handleKeydown : undefined, onFocusout: mergedFocusable ? handleFocusout : undefined, style: this.cssVars, contentStyle: { padding: this.internalScrollablePadding } }, {
1131
1129
  default: () => (h("div", { onDragleave: draggable ? this.handleDragLeaveTree : undefined, ref: "selfElRef" }, this.fNodes.map(createNode)))
1132
1130
  }));
1133
1131
  }
1134
1132
  else {
1135
- return (h("div", { class: treeClass, tabindex: tabindex, ref: "selfElRef", style: this.cssVars, onKeyup: mergedFocusable ? handleKeyup : undefined, onKeydown: mergedFocusable ? handleKeydown : undefined, onFocusout: mergedFocusable ? handleFocusout : undefined, onDragleave: draggable ? this.handleDragLeaveTree : undefined }, !fNodes.length
1133
+ return (h("div", { class: treeClass, tabindex: tabindex, ref: "selfElRef", style: this.cssVars, onKeydown: mergedFocusable ? handleKeydown : undefined, onFocusout: mergedFocusable ? handleFocusout : undefined, onDragleave: draggable ? this.handleDragLeaveTree : undefined }, !fNodes.length
1136
1134
  ? resolveSlot(this.$slots.empty, () => {
1137
1135
  var _a, _b, _c, _d;
1138
1136
  return [
@@ -44,6 +44,9 @@ const TreeNode = defineComponent({
44
44
  if (!NTree.loadingKeysRef.value.has(tmNode.key)) {
45
45
  NTree.loadingKeysRef.value.add(tmNode.key);
46
46
  }
47
+ else {
48
+ return;
49
+ }
47
50
  const { onLoadRef: { value: onLoad } } = NTree;
48
51
  if (onLoad) {
49
52
  void onLoad(tmNode.rawNode)
@@ -78,7 +81,7 @@ const TreeNode = defineComponent({
78
81
  NTree.handleSelect(tmNode);
79
82
  }
80
83
  if (expandOnClick && !tmNode.isLeaf) {
81
- NTree.handleSwitcherClick(tmNode);
84
+ handleSwitcherClick();
82
85
  }
83
86
  }
84
87
  function handleContentClick(e) {
@@ -110,7 +110,6 @@ export interface MotionData {
110
110
  nodes: TmNode[];
111
111
  }
112
112
  export interface InternalTreeInst {
113
- handleKeyup: (e: KeyboardEvent) => void;
114
113
  handleKeydown: (e: KeyboardEvent) => void;
115
114
  }
116
115
  export {};
@@ -9,6 +9,5 @@ export declare function useKeyboard({ fNodesRef, mergedExpandedKeysRef, mergedSe
9
9
  handleSwitcherClick: (node: TmNode) => void;
10
10
  }): {
11
11
  pendingNodeKeyRef: Ref<null | Key>;
12
- handleKeyup: (e: KeyboardEvent) => void;
13
12
  handleKeydown: (e: KeyboardEvent) => void;
14
13
  };
@@ -9,9 +9,12 @@ export function useKeyboard({ fNodesRef, mergedExpandedKeysRef, mergedSelectedKe
9
9
  : ref(mergedSelectedKeys.length
10
10
  ? mergedSelectedKeys[mergedSelectedKeys.length - 1]
11
11
  : null);
12
- function handleKeyup(e) {
12
+ function handleKeydown(e) {
13
13
  const { value: pendingNodeKey } = pendingNodeKeyRef;
14
14
  if (pendingNodeKey === null) {
15
+ if (e.key === 'ArrowDown' || e.key === 'ArrowUp') {
16
+ e.preventDefault();
17
+ }
15
18
  if (['ArrowDown', 'ArrowUp', 'ArrowLeft', 'ArrowRight'].includes(e.key)) {
16
19
  if (pendingNodeKey === null) {
17
20
  const { value: fNodes } = fNodesRef;
@@ -35,6 +38,7 @@ export function useKeyboard({ fNodesRef, mergedExpandedKeysRef, mergedSelectedKe
35
38
  handleSelect(fNodes[fIndex]);
36
39
  }
37
40
  else if (e.key === 'ArrowDown') {
41
+ e.preventDefault();
38
42
  fIndex += 1;
39
43
  while (fIndex < fNodes.length) {
40
44
  if (!fNodes[fIndex].disabled) {
@@ -45,6 +49,7 @@ export function useKeyboard({ fNodesRef, mergedExpandedKeysRef, mergedSelectedKe
45
49
  }
46
50
  }
47
51
  else if (e.key === 'ArrowUp') {
52
+ e.preventDefault();
48
53
  fIndex -= 1;
49
54
  while (fIndex >= 0) {
50
55
  if (!fNodes[fIndex].disabled) {
@@ -88,16 +93,8 @@ export function useKeyboard({ fNodesRef, mergedExpandedKeysRef, mergedSelectedKe
88
93
  }
89
94
  }
90
95
  }
91
- function handleKeydown(e) {
92
- switch (e.key) {
93
- case 'ArrowUp':
94
- case 'ArrowDown':
95
- e.preventDefault();
96
- }
97
- }
98
96
  return {
99
97
  pendingNodeKeyRef,
100
- handleKeyup,
101
98
  handleKeydown
102
99
  };
103
100
  }
@@ -1133,7 +1133,6 @@ declare const _default: import("vue").DefineComponent<{
1133
1133
  syncPosition: () => void;
1134
1134
  } | null>;
1135
1135
  treeInstRef: import("vue").Ref<{
1136
- handleKeyup: (e: KeyboardEvent) => void;
1137
1136
  handleKeydown: (e: KeyboardEvent) => void;
1138
1137
  } | null>;
1139
1138
  mergedClsPrefix: import("vue").ComputedRef<string>;
@@ -1171,7 +1170,6 @@ declare const _default: import("vue").DefineComponent<{
1171
1170
  handleDeleteOption: (option: SelectBaseOption) => void;
1172
1171
  handlePatternInput: (e: InputEvent) => void;
1173
1172
  handleKeydown: (e: KeyboardEvent) => void;
1174
- handleKeyup: (e: KeyboardEvent) => void;
1175
1173
  handleTabOut: () => void;
1176
1174
  handleMenuMousedown: (e: MouseEvent) => void;
1177
1175
  mergedTheme: import("vue").ComputedRef<{
@@ -2097,12 +2095,12 @@ declare const _default: import("vue").DefineComponent<{
2097
2095
  readonly defaultValue: string | number | (string | number)[] | null;
2098
2096
  readonly consistentMenuWidth: boolean;
2099
2097
  readonly childrenField: string;
2098
+ readonly defaultExpandAll: boolean;
2100
2099
  readonly allowCheckingNotLoaded: boolean;
2101
2100
  readonly cascade: boolean;
2102
2101
  readonly checkStrategy: CheckStrategy;
2103
2102
  readonly leafOnly: boolean;
2104
2103
  readonly showPath: boolean;
2105
2104
  readonly defaultExpandedKeys: Key[];
2106
- readonly defaultExpandAll: boolean;
2107
2105
  }>;
2108
2106
  export default _default;
@@ -9,7 +9,7 @@ import { NInternalSelection, NBaseFocusDetector } from '../../_internal';
9
9
  import { NTree } from '../../tree';
10
10
  import { NEmpty } from '../../empty';
11
11
  import { useConfig, useFormItem, useLocale, useTheme, useThemeClass } from '../../_mixins';
12
- import { call, resolveSlot, resolveWrappedSlot, useAdjustedTo, useOnResize, warnOnce } from '../../_utils';
12
+ import { call, markEventEffectPerformed, resolveSlot, resolveWrappedSlot, useAdjustedTo, useOnResize, warnOnce } from '../../_utils';
13
13
  import { treeSelectLight } from '../styles';
14
14
  import { treeSelectInjectionKey } from './interface';
15
15
  import { treeOption2SelectOption, treeOption2SelectOptionWithPath } from './utils';
@@ -385,16 +385,16 @@ export default defineComponent({
385
385
  const { value } = e.target;
386
386
  patternRef.value = value;
387
387
  }
388
- function handleKeydown(e) {
388
+ function treeHandleKeydown(e) {
389
389
  const { value: treeInst } = treeInstRef;
390
390
  if (treeInst) {
391
391
  treeInst.handleKeydown(e);
392
392
  }
393
393
  }
394
- function handleKeyup(e) {
394
+ function handleKeydown(e) {
395
395
  if (e.key === 'Enter') {
396
396
  if (mergedShowRef.value) {
397
- treeHandleKeyup(e);
397
+ treeHandleKeydown(e);
398
398
  if (!props.multiple) {
399
399
  closeMenu();
400
400
  focusSelection();
@@ -406,24 +406,21 @@ export default defineComponent({
406
406
  e.preventDefault();
407
407
  }
408
408
  else if (e.key === 'Escape') {
409
- closeMenu();
410
- focusSelection();
409
+ if (mergedShowRef.value) {
410
+ markEventEffectPerformed(e);
411
+ closeMenu();
412
+ focusSelection();
413
+ }
411
414
  }
412
415
  else {
413
416
  if (mergedShowRef.value) {
414
- treeHandleKeyup(e);
417
+ treeHandleKeydown(e);
415
418
  }
416
419
  else if (e.key === 'ArrowDown') {
417
420
  openMenu();
418
421
  }
419
422
  }
420
423
  }
421
- function treeHandleKeyup(e) {
422
- const { value: treeInst } = treeInstRef;
423
- if (treeInst) {
424
- treeInst.handleKeyup(e);
425
- }
426
- }
427
424
  function handleTabOut() {
428
425
  closeMenu();
429
426
  focusSelection();
@@ -503,7 +500,6 @@ export default defineComponent({
503
500
  handleDeleteOption,
504
501
  handlePatternInput,
505
502
  handleKeydown,
506
- handleKeyup,
507
503
  handleTabOut,
508
504
  handleMenuMousedown,
509
505
  mergedTheme: themeRef,
@@ -518,7 +514,9 @@ export default defineComponent({
518
514
  h(VBinder, null, {
519
515
  default: () => [
520
516
  h(VTarget, null, {
521
- default: () => (h(NInternalSelection, { ref: "triggerInstRef", onResize: this.handleTriggerOrMenuResize, status: this.mergedStatus, focused: this.focused, clsPrefix: mergedClsPrefix, theme: mergedTheme.peers.InternalSelection, themeOverrides: mergedTheme.peerOverrides.InternalSelection, selectedOption: this.selectedOption, selectedOptions: this.selectedOptions, size: this.mergedSize, bordered: this.bordered, placeholder: this.mergedPlaceholder, disabled: this.mergedDisabled, active: this.mergedShow, loading: this.loading, multiple: this.multiple, maxTagCount: this.maxTagCount, showArrow: true, filterable: this.filterable, clearable: this.clearable, pattern: this.pattern, onPatternInput: this.handlePatternInput, onClear: this.handleClear, onClick: this.handleTriggerClick, onFocus: this.handleTriggerFocus, onBlur: this.handleTriggerBlur, onDeleteOption: this.handleDeleteOption, onKeydown: this.handleKeydown, onKeyup: this.handleKeyup }))
517
+ default: () => (h(NInternalSelection, { ref: "triggerInstRef", onResize: this.handleTriggerOrMenuResize, status: this.mergedStatus, focused: this.focused, clsPrefix: mergedClsPrefix, theme: mergedTheme.peers.InternalSelection, themeOverrides: mergedTheme.peerOverrides.InternalSelection, selectedOption: this.selectedOption, selectedOptions: this.selectedOptions, size: this.mergedSize, bordered: this.bordered, placeholder: this.mergedPlaceholder, disabled: this.mergedDisabled, active: this.mergedShow, loading: this.loading, multiple: this.multiple, maxTagCount: this.maxTagCount, showArrow: true, filterable: this.filterable, clearable: this.clearable, pattern: this.pattern, onPatternInput: this.handlePatternInput, onClear: this.handleClear, onClick: this.handleTriggerClick, onFocus: this.handleTriggerFocus, onBlur: this.handleTriggerBlur, onDeleteOption: this.handleDeleteOption, onKeydown: this.handleKeydown }, {
518
+ arrow: () => { var _a, _b; return [(_b = (_a = this.$slots).arrow) === null || _b === void 0 ? void 0 : _b.call(_a)]; }
519
+ }))
522
520
  }),
523
521
  h(VFollower, { ref: "followerInstRef", show: this.mergedShow, placement: this.placement, to: this.adjustedTo, teleportDisabled: this.adjustedTo === useAdjustedTo.tdkey, containerClass: this.namespace, width: this.consistentMenuWidth ? 'target' : undefined, minWidth: "target" }, {
524
522
  default: () => (h(Transition, { name: "fade-in-scale-up-transition", appear: this.isMounted, onLeave: this.handleMenuLeave }, {
@@ -535,7 +533,7 @@ export default defineComponent({
535
533
  ], ref: "menuElRef", style: [
536
534
  (menuProps === null || menuProps === void 0 ? void 0 : menuProps.style) || '',
537
535
  this.cssVars
538
- ], tabindex: 0, onMousedown: this.handleMenuMousedown, onKeyup: this.handleKeyup, onKeydown: this.handleKeydown, onFocusin: this.handleMenuFocusin, onFocusout: this.handleMenuFocusout }),
536
+ ], tabindex: 0, onMousedown: this.handleMenuMousedown, onKeydown: this.handleKeydown, onFocusin: this.handleMenuFocusin, onFocusout: this.handleMenuFocusout }),
539
537
  h(NTree, { ref: "treeInstRef", blockLine: true, allowCheckingNotLoaded: this.allowCheckingNotLoaded, showIrrelevantNodes: false, animated: false, pattern: this.pattern, filter: this.mergedFilter, data: options, cancelable: multiple, labelField: this.labelField, keyField: this.keyField, childrenField: this.childrenField, theme: mergedTheme.peers.Tree, themeOverrides: mergedTheme.peerOverrides.Tree, defaultExpandAll: this.defaultExpandAll, defaultExpandedKeys: this.defaultExpandedKeys, expandedKeys: this.mergedExpandedKeys, checkedKeys: this.treeCheckedKeys, selectedKeys: this.treeSelectedKeys, checkable: checkable, checkStrategy: this.checkStrategy, cascade: this.mergedCascade, leafOnly: this.leafOnly, multiple: this.multiple, virtualScroll: this.consistentMenuWidth && this.virtualScroll, internalTreeSelect: true, internalUnifySelectCheck: true, internalScrollable: true, internalScrollablePadding: this.menuPadding, internalFocusable: false, internalCheckboxFocusable: false, internalRenderEmpty: () => (h("div", { class: `${mergedClsPrefix}-tree-select-menu__empty` }, resolveSlot($slots.empty, () => [
540
538
  h(NEmpty, { theme: mergedTheme.peers.Empty, themeOverrides: mergedTheme.peerOverrides.Empty })
541
539
  ]))), onLoad: this.onLoad, onUpdateCheckedKeys: this.handleUpdateCheckedKeys, onUpdateIndeterminateKeys: this.handleUpdateIndeterminateKeys, onUpdateExpandedKeys: this.doUpdateExpandedKeys }),
@@ -11,10 +11,10 @@ export default defineComponent({
11
11
  throwError('upload-dragger', '`n-upload-dragger` must be placed inside `n-upload`.');
12
12
  }
13
13
  return () => {
14
- const { mergedClsPrefixRef: { value: mergedClsPrefix }, mergedDisabledRef: { value: mergedDisabled } } = NUpload;
14
+ const { mergedClsPrefixRef: { value: mergedClsPrefix }, mergedDisabledRef: { value: mergedDisabled }, maxReachedRef: { value: maxReached } } = NUpload;
15
15
  return (h("div", { class: [
16
16
  `${mergedClsPrefix}-upload-dragger`,
17
- mergedDisabled && `${mergedClsPrefix}-upload-dragger--disabled`
17
+ (mergedDisabled || maxReached) && `${mergedClsPrefix}-upload-dragger--disabled`
18
18
  ] }, slots));
19
19
  };
20
20
  }
@@ -138,7 +138,7 @@ declare const _default: import("vue").DefineComponent<{
138
138
  itemBorderImageCard: string;
139
139
  };
140
140
  peers: {
141
- Button: import("../../_mixins").Theme<"Button", {
141
+ Button: import("../../_mixins/use-theme").Theme<"Button", {
142
142
  heightTiny: string;
143
143
  heightSmall: string;
144
144
  heightMedium: string;
@@ -342,7 +342,7 @@ declare const _default: import("vue").DefineComponent<{
342
342
  iconSizeLarge: string;
343
343
  rippleDuration: string;
344
344
  }, any>;
345
- Progress: import("../../_mixins").Theme<"Progress", {
345
+ Progress: import("../../_mixins/use-theme").Theme<"Progress", {
346
346
  fontSize: string;
347
347
  fontSizeCircle: string;
348
348
  fontWeightCircle: string;
@@ -17,6 +17,11 @@ import NUploadProgress from './UploadProgress';
17
17
  import { uploadInjectionKey } from './interface';
18
18
  import { imageIcon, documentIcon } from './icons';
19
19
  import { environmentSupportFile, isImageFile } from './utils';
20
+ const buttonThemeOverrides = {
21
+ paddingMedium: '0 3px',
22
+ heightMedium: '24px',
23
+ iconSizeMedium: '18px'
24
+ };
20
25
  export default defineComponent({
21
26
  name: 'UploadFile',
22
27
  props: {
@@ -219,19 +224,19 @@ export default defineComponent({
219
224
  `${clsPrefix}-upload-file-info__action`,
220
225
  `${clsPrefix}-upload-file-info__action--${listType}-type`
221
226
  ] },
222
- this.showPreviewButton ? (h(NButton, { key: "preview", text: true, type: this.buttonType, onClick: this.handlePreviewClick, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button }, {
227
+ this.showPreviewButton ? (h(NButton, { key: "preview", quaternary: true, type: this.buttonType, onClick: this.handlePreviewClick, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, builtinThemeOverrides: buttonThemeOverrides }, {
223
228
  icon: () => (h(NBaseIcon, { clsPrefix: clsPrefix }, { default: () => h(EyeIcon, null) }))
224
229
  })) : null,
225
230
  (this.showRemoveButton || this.showCancelButton) &&
226
- !this.disabled && (h(NButton, { key: "cancelOrTrash", theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, text: true, type: this.buttonType, onClick: this.handleRemoveOrCancelClick }, {
231
+ !this.disabled && (h(NButton, { key: "cancelOrTrash", theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, quaternary: true, builtinThemeOverrides: buttonThemeOverrides, type: this.buttonType, onClick: this.handleRemoveOrCancelClick }, {
227
232
  icon: () => (h(NIconSwitchTransition, null, {
228
233
  default: () => this.showRemoveButton ? (h(NBaseIcon, { clsPrefix: clsPrefix, key: "trash" }, { default: () => h(TrashIcon, null) })) : (h(NBaseIcon, { clsPrefix: clsPrefix, key: "cancel" }, { default: () => h(CancelIcon, null) }))
229
234
  }))
230
235
  })),
231
- this.showRetryButton && !this.disabled && (h(NButton, { key: "retry", text: true, type: this.buttonType, onClick: this.handleRetryClick, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button }, {
236
+ this.showRetryButton && !this.disabled && (h(NButton, { key: "retry", quaternary: true, type: this.buttonType, onClick: this.handleRetryClick, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, builtinThemeOverrides: buttonThemeOverrides }, {
232
237
  icon: () => (h(NBaseIcon, { clsPrefix: clsPrefix }, { default: () => h(RetryIcon, null) }))
233
238
  })),
234
- this.showDownloadButton ? (h(NButton, { key: "download", text: true, type: this.buttonType, onClick: this.handleDownloadClick, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button }, {
239
+ this.showDownloadButton ? (h(NButton, { key: "download", quaternary: true, type: this.buttonType, onClick: this.handleDownloadClick, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, builtinThemeOverrides: buttonThemeOverrides }, {
235
240
  icon: () => (h(NBaseIcon, { clsPrefix: clsPrefix }, { default: () => h(DownloadIcon, null) }))
236
241
  })) : null)),
237
242
  !isImageType && progress));
@@ -1,7 +1,7 @@
1
1
  import { h, defineComponent, inject, computed } from 'vue';
2
2
  import { AddIcon } from '../../_internal/icons';
3
3
  import { NBaseIcon } from '../../_internal';
4
- import { throwError } from '../../_utils';
4
+ import { resolveSlot, throwError } from '../../_utils';
5
5
  import { uploadInjectionKey } from './interface';
6
6
  import { getFilesFromEntries } from './utils';
7
7
  import NUploadDragger from './UploadDragger';
@@ -73,8 +73,9 @@ export default defineComponent({
73
73
  isImageCardTypeRef.value &&
74
74
  `${mergedClsPrefix}-upload-trigger--image-card`
75
75
  ], style: triggerStyleRef.value, onClick: handleTriggerClick, onDrop: handleTriggerDrop, onDragover: handleTriggerDragOver, onDragenter: handleTriggerDragEnter, onDragleave: handleTriggerDragLeave }, isImageCardTypeRef.value ? (h(NUploadDragger, null, {
76
- default: slots.default ||
77
- (() => (h(NBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => h(AddIcon, null) })))
76
+ default: () => resolveSlot(slots.default, () => [
77
+ h(NBaseIcon, { clsPrefix: mergedClsPrefix }, { default: () => h(AddIcon, null) })
78
+ ])
78
79
  })) : (slots)));
79
80
  };
80
81
  }
@@ -22,7 +22,6 @@ export default c([cB('upload', 'width: 100%;', [cM('dragger-inside', [cB('upload
22
22
  `, [c('&:hover', `
23
23
  border: var(--n-dragger-border-hover);
24
24
  `), cM('disabled', `
25
- opacity: var(--n-item-disabled-opacity);
26
25
  cursor: not-allowed;
27
26
  `)]), cB('upload-trigger', `
28
27
  display: inline-block;
@@ -48,7 +47,7 @@ export default c([cB('upload', 'width: 100%;', [cM('dragger-inside', [cB('upload
48
47
  line-height: var(--n-line-height);
49
48
  opacity: 1;
50
49
  transition: opacity .3s var(--n-bezier);
51
- `, [cM('disabled', `
50
+ `, [c('a, img', 'outline: none;'), cM('disabled', `
52
51
  opacity: var(--n-item-disabled-opacity);
53
52
  cursor: not-allowed;
54
53
  `, [cB('upload-file', 'cursor: not-allowed;')]), cM('grid', `
@@ -112,6 +111,7 @@ export default c([cB('upload', 'width: 100%;', [cM('dragger-inside', [cB('upload
112
111
  justify-content: center;
113
112
  transition: border-color .3s var(--n-bezier), background-color .3s var(--n-bezier);
114
113
  border-radius: var(--n-border-radius);
114
+ overflow: hidden;
115
115
  `, [cB('progress', `
116
116
  position: absolute;
117
117
  left: 8px;
@@ -40,21 +40,7 @@ export function createImageDataUrl(file) {
40
40
  resolve('');
41
41
  return;
42
42
  }
43
- const img = new Image();
44
- img.src = window.URL.createObjectURL(file);
45
- img.onload = () => {
46
- const { width, height } = img;
47
- const canvas = document.createElement('canvas');
48
- const ctx = canvas.getContext('2d');
49
- canvas.width = width;
50
- canvas.height = height;
51
- canvas.style.cssText = `position: fixed; left: 0; top: 0; width: ${width}px; height: ${height}px; z-index: 9999; display: none;`;
52
- document.body.appendChild(canvas);
53
- ctx === null || ctx === void 0 ? void 0 : ctx.drawImage(img, 0, 0, width, height);
54
- const dataURL = canvas.toDataURL();
55
- document.body.removeChild(canvas);
56
- resolve(dataURL);
57
- };
43
+ resolve(window.URL.createObjectURL(file));
58
44
  });
59
45
  });
60
46
  }
package/es/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- declare const _default: "2.30.3";
1
+ declare const _default: "2.30.4";
2
2
  export default _default;
package/es/version.js CHANGED
@@ -1 +1 @@
1
- export default '2.30.3';
1
+ export default '2.30.4';
@@ -9,6 +9,7 @@ const evtd_1 = require("evtd");
9
9
  const vueuc_1 = require("vueuc");
10
10
  const vooks_1 = require("vooks");
11
11
  const _mixins_1 = require("../../../_mixins");
12
+ const _utils_1 = require("../../../_utils");
12
13
  const styles_1 = require("../styles");
13
14
  const Wrapper_1 = require("./Wrapper");
14
15
  const index_cssr_1 = __importDefault(require("./styles/index.cssr"));
@@ -165,14 +166,7 @@ const Scrollbar = (0, vue_1.defineComponent)({
165
166
  return content();
166
167
  return contentRef.value;
167
168
  });
168
- let isDeactivated = false;
169
- let activateStateInitialized = false;
170
- (0, vue_1.onActivated)(() => {
171
- isDeactivated = false;
172
- if (!activateStateInitialized) {
173
- activateStateInitialized = true;
174
- return;
175
- }
169
+ const activateState = (0, _utils_1.useReactivated)(() => {
176
170
  // Only restore for builtin container & content
177
171
  if (!props.container) {
178
172
  // remount
@@ -182,20 +176,14 @@ const Scrollbar = (0, vue_1.defineComponent)({
182
176
  });
183
177
  }
184
178
  });
185
- (0, vue_1.onDeactivated)(() => {
186
- isDeactivated = true;
187
- if (!activateStateInitialized) {
188
- activateStateInitialized = true;
189
- }
190
- });
191
179
  // methods
192
180
  const handleContentResize = () => {
193
- if (isDeactivated)
181
+ if (activateState.isDeactivated)
194
182
  return;
195
183
  sync();
196
184
  };
197
185
  const handleContainerResize = (e) => {
198
- if (isDeactivated)
186
+ if (activateState.isDeactivated)
199
187
  return;
200
188
  const { onResize } = props;
201
189
  if (onResize)
@@ -13,6 +13,7 @@ declare const _default: import("vue").DefineComponent<{
13
13
  };
14
14
  }, {
15
15
  labelField: Ref<string>;
16
+ nodeProps: Ref<import("./interface").NodeProps | undefined>;
16
17
  renderLabel: Ref<RenderLabelImpl | undefined>;
17
18
  renderOption: Ref<RenderOptionImpl | undefined>;
18
19
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -16,21 +16,23 @@ exports.default = (0, vue_1.defineComponent)({
16
16
  }
17
17
  },
18
18
  setup() {
19
- const { renderLabelRef, renderOptionRef, labelFieldRef
19
+ const { renderLabelRef, renderOptionRef, labelFieldRef, nodePropsRef
20
20
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
21
21
  } = (0, vue_1.inject)(interface_1.internalSelectionMenuInjectionKey);
22
22
  return {
23
23
  labelField: labelFieldRef,
24
+ nodeProps: nodePropsRef,
24
25
  renderLabel: renderLabelRef,
25
26
  renderOption: renderOptionRef
26
27
  };
27
28
  },
28
29
  render() {
29
- const { clsPrefix, renderLabel, renderOption, tmNode: { rawNode } } = this;
30
+ const { clsPrefix, renderLabel, renderOption, nodeProps, tmNode: { rawNode } } = this;
31
+ const attrs = nodeProps === null || nodeProps === void 0 ? void 0 : nodeProps(rawNode);
30
32
  const children = renderLabel
31
33
  ? renderLabel(rawNode, false)
32
34
  : (0, _utils_1.render)(rawNode[this.labelField], rawNode, false);
33
- const node = ((0, vue_1.h)("div", { class: `${clsPrefix}-base-select-group-header` }, children));
35
+ const node = ((0, vue_1.h)("div", Object.assign({}, attrs, { class: [`${clsPrefix}-base-select-group-header`, attrs === null || attrs === void 0 ? void 0 : attrs.class] }), children));
34
36
  return rawNode.render
35
37
  ? rawNode.render({ node, option: rawNode })
36
38
  : renderOption