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.
- package/dist/index.js +1385 -901
- package/dist/index.prod.js +2 -2
- package/es/_internal/scrollbar/src/Scrollbar.js +5 -17
- package/es/_internal/select-menu/src/SelectGroupHeader.d.ts +1 -0
- package/es/_internal/select-menu/src/SelectGroupHeader.js +5 -3
- package/es/_internal/select-menu/src/SelectMenu.d.ts +3 -3
- package/es/_internal/select-menu/src/SelectMenu.js +6 -8
- package/es/_internal/select-menu/src/SelectOption.d.ts +1 -0
- package/es/_internal/select-menu/src/SelectOption.js +11 -5
- package/es/_internal/select-menu/src/interface.d.ts +3 -1
- package/es/_internal/selection/src/Selection.d.ts +0 -2
- package/es/_internal/selection/src/Selection.js +2 -2
- package/es/_mixins/use-theme.js +1 -1
- package/es/_utils/composable/index.d.ts +3 -5
- package/es/_utils/composable/index.js +3 -111
- package/es/_utils/composable/use-collection.d.ts +4 -0
- package/es/_utils/composable/use-collection.js +87 -0
- package/es/_utils/composable/use-deferred-true.d.ts +2 -0
- package/es/_utils/composable/use-deferred-true.js +25 -0
- package/es/_utils/composable/use-reactivated.d.ts +3 -0
- package/es/_utils/composable/use-reactivated.js +20 -0
- package/es/_utils/event/index.d.ts +2 -0
- package/es/_utils/event/index.js +7 -0
- package/es/_utils/index.d.ts +2 -1
- package/es/_utils/index.js +2 -1
- package/es/_utils/vue/index.d.ts +1 -0
- package/es/_utils/vue/index.js +1 -0
- package/es/_utils/vue/merge-handlers.d.ts +1 -0
- package/es/_utils/vue/merge-handlers.js +15 -0
- package/es/button/src/Button.js +7 -2
- package/es/cascader/src/Cascader.d.ts +2 -3
- package/es/cascader/src/Cascader.js +26 -22
- package/es/cascader/src/CascaderMenu.d.ts +2 -2
- package/es/cascader/src/CascaderMenu.js +2 -4
- package/es/data-table/src/DataTable.d.ts +787 -0
- package/es/data-table/src/DataTable.js +7 -3
- package/es/data-table/src/HeaderButton/FilterButton.d.ts +142 -0
- package/es/data-table/src/HeaderButton/FilterMenu.d.ts +142 -0
- package/es/data-table/src/MainTable.d.ts +2 -0
- package/es/data-table/src/MainTable.js +5 -1
- package/es/data-table/src/TableParts/Body.d.ts +143 -0
- package/es/data-table/src/TableParts/Body.js +11 -2
- package/es/data-table/src/TableParts/Cell.d.ts +284 -0
- package/es/data-table/src/TableParts/Header.d.ts +143 -0
- package/es/data-table/src/TableParts/Header.js +6 -2
- package/es/data-table/src/interface.d.ts +9 -5
- package/es/data-table/src/use-expand.d.ts +5 -3
- package/es/data-table/src/use-expand.js +22 -2
- package/es/data-table/src/utils.d.ts +2 -2
- package/es/data-table/src/utils.js +10 -8
- package/es/data-table/styles/light.d.ts +71 -0
- package/es/date-picker/src/DatePicker.d.ts +2 -1
- package/es/date-picker/src/DatePicker.js +20 -9
- package/es/date-picker/src/panel/month.js +3 -2
- package/es/drawer/src/Drawer.d.ts +1 -1
- package/es/drawer/src/Drawer.js +3 -3
- package/es/drawer/src/DrawerBodyWrapper.d.ts +2 -2
- package/es/dropdown/src/Dropdown.d.ts +4 -0
- package/es/dynamic-tags/src/DynamicTags.js +1 -1
- package/es/input/src/Input.d.ts +6 -3
- package/es/input/src/Input.js +56 -31
- package/es/input/src/utils.d.ts +7 -1
- package/es/input/src/utils.js +57 -2
- package/es/layout/src/Layout.d.ts +3 -1
- package/es/layout/src/Layout.js +22 -4
- package/es/layout/src/LayoutContent.d.ts +1 -0
- package/es/layout/src/LayoutSider.d.ts +1 -0
- package/es/layout/src/LayoutSider.js +22 -3
- package/es/menu/src/Menu.d.ts +1 -1
- package/es/modal/src/BodyWrapper.d.ts +2 -2
- package/es/modal/src/Modal.js +2 -2
- package/es/pagination/src/Pagination.d.ts +806 -20
- package/es/pagination/src/Pagination.js +115 -52
- package/es/pagination/src/interface.d.ts +2 -2
- package/es/pagination/src/styles/index.cssr.js +12 -10
- package/es/pagination/src/utils.d.ts +15 -5
- package/es/pagination/src/utils.js +117 -50
- package/es/pagination/styles/dark.js +3 -1
- package/es/pagination/styles/light.d.ts +71 -0
- package/es/pagination/styles/light.js +3 -1
- package/es/popconfirm/src/Popconfirm.d.ts +4 -0
- package/es/popover/src/Popover.d.ts +5 -0
- package/es/popover/src/Popover.js +1 -0
- package/es/popover/src/PopoverBody.d.ts +4 -0
- package/es/popover/src/PopoverBody.js +18 -10
- package/es/popselect/src/Popselect.d.ts +24 -0
- package/es/popselect/src/Popselect.js +12 -7
- package/es/popselect/src/PopselectPanel.d.ts +22 -2
- package/es/popselect/src/PopselectPanel.js +12 -1
- package/es/select/src/Select.d.ts +1 -1
- package/es/select/src/Select.js +5 -2
- package/es/slider/src/Slider.d.ts +1 -1
- package/es/slider/src/Slider.js +13 -5
- package/es/slider/src/styles/index.cssr.js +26 -31
- package/es/time-picker/src/TimePicker.d.ts +2 -1
- package/es/time-picker/src/TimePicker.js +18 -8
- package/es/tooltip/src/Tooltip.d.ts +4 -0
- package/es/tree/src/Tree.d.ts +2 -3
- package/es/tree/src/Tree.js +6 -8
- package/es/tree/src/TreeNode.js +4 -1
- package/es/tree/src/interface.d.ts +0 -1
- package/es/tree/src/keyboard.d.ts +0 -1
- package/es/tree/src/keyboard.js +6 -9
- package/es/tree-select/src/TreeSelect.d.ts +1 -3
- package/es/tree-select/src/TreeSelect.js +14 -16
- package/es/upload/src/UploadDragger.js +2 -2
- package/es/upload/src/UploadFile.d.ts +2 -2
- package/es/upload/src/UploadFile.js +9 -4
- package/es/upload/src/UploadTrigger.js +4 -3
- package/es/upload/src/styles/index.cssr.js +2 -2
- package/es/upload/src/utils.js +1 -15
- package/es/version.d.ts +1 -1
- package/es/version.js +1 -1
- package/lib/_internal/scrollbar/src/Scrollbar.js +4 -16
- package/lib/_internal/select-menu/src/SelectGroupHeader.d.ts +1 -0
- package/lib/_internal/select-menu/src/SelectGroupHeader.js +5 -3
- package/lib/_internal/select-menu/src/SelectMenu.d.ts +3 -3
- package/lib/_internal/select-menu/src/SelectMenu.js +5 -7
- package/lib/_internal/select-menu/src/SelectOption.d.ts +1 -0
- package/lib/_internal/select-menu/src/SelectOption.js +10 -4
- package/lib/_internal/select-menu/src/interface.d.ts +3 -1
- package/lib/_internal/selection/src/Selection.d.ts +0 -2
- package/lib/_internal/selection/src/Selection.js +2 -2
- package/lib/_mixins/use-theme.js +1 -1
- package/lib/_utils/composable/index.d.ts +3 -5
- package/lib/_utils/composable/index.js +9 -116
- package/lib/_utils/composable/use-collection.d.ts +4 -0
- package/lib/_utils/composable/use-collection.js +93 -0
- package/lib/_utils/composable/use-deferred-true.d.ts +2 -0
- package/lib/_utils/composable/use-deferred-true.js +29 -0
- package/lib/_utils/composable/use-reactivated.d.ts +3 -0
- package/lib/_utils/composable/use-reactivated.js +24 -0
- package/lib/_utils/event/index.d.ts +2 -0
- package/lib/_utils/event/index.js +12 -0
- package/lib/_utils/index.d.ts +2 -1
- package/lib/_utils/index.js +5 -1
- package/lib/_utils/vue/index.d.ts +1 -0
- package/lib/_utils/vue/index.js +3 -1
- package/lib/_utils/vue/merge-handlers.d.ts +1 -0
- package/lib/_utils/vue/merge-handlers.js +19 -0
- package/lib/button/src/Button.js +7 -2
- package/lib/cascader/src/Cascader.d.ts +2 -3
- package/lib/cascader/src/Cascader.js +25 -21
- package/lib/cascader/src/CascaderMenu.d.ts +2 -2
- package/lib/cascader/src/CascaderMenu.js +2 -4
- package/lib/data-table/src/DataTable.d.ts +787 -0
- package/lib/data-table/src/DataTable.js +7 -3
- package/lib/data-table/src/HeaderButton/FilterButton.d.ts +142 -0
- package/lib/data-table/src/HeaderButton/FilterMenu.d.ts +142 -0
- package/lib/data-table/src/MainTable.d.ts +2 -0
- package/lib/data-table/src/MainTable.js +5 -1
- package/lib/data-table/src/TableParts/Body.d.ts +143 -0
- package/lib/data-table/src/TableParts/Body.js +11 -2
- package/lib/data-table/src/TableParts/Cell.d.ts +284 -0
- package/lib/data-table/src/TableParts/Header.d.ts +143 -0
- package/lib/data-table/src/TableParts/Header.js +6 -2
- package/lib/data-table/src/interface.d.ts +9 -5
- package/lib/data-table/src/use-expand.d.ts +5 -3
- package/lib/data-table/src/use-expand.js +22 -2
- package/lib/data-table/src/utils.d.ts +2 -2
- package/lib/data-table/src/utils.js +11 -9
- package/lib/data-table/styles/light.d.ts +71 -0
- package/lib/date-picker/src/DatePicker.d.ts +2 -1
- package/lib/date-picker/src/DatePicker.js +19 -8
- package/lib/date-picker/src/panel/month.js +3 -2
- package/lib/drawer/src/Drawer.d.ts +1 -1
- package/lib/drawer/src/Drawer.js +2 -2
- package/lib/drawer/src/DrawerBodyWrapper.d.ts +2 -2
- package/lib/dropdown/src/Dropdown.d.ts +4 -0
- package/lib/dynamic-tags/src/DynamicTags.js +1 -1
- package/lib/input/src/Input.d.ts +6 -3
- package/lib/input/src/Input.js +55 -30
- package/lib/input/src/utils.d.ts +7 -1
- package/lib/input/src/utils.js +60 -4
- package/lib/layout/src/Layout.d.ts +3 -1
- package/lib/layout/src/Layout.js +22 -4
- package/lib/layout/src/LayoutContent.d.ts +1 -0
- package/lib/layout/src/LayoutSider.d.ts +1 -0
- package/lib/layout/src/LayoutSider.js +21 -2
- package/lib/menu/src/Menu.d.ts +1 -1
- package/lib/modal/src/BodyWrapper.d.ts +2 -2
- package/lib/modal/src/Modal.js +1 -1
- package/lib/pagination/src/Pagination.d.ts +806 -20
- package/lib/pagination/src/Pagination.js +114 -51
- package/lib/pagination/src/interface.d.ts +2 -2
- package/lib/pagination/src/styles/index.cssr.js +13 -11
- package/lib/pagination/src/utils.d.ts +15 -5
- package/lib/pagination/src/utils.js +118 -53
- package/lib/pagination/styles/dark.js +6 -4
- package/lib/pagination/styles/light.d.ts +71 -0
- package/lib/pagination/styles/light.js +6 -4
- package/lib/popconfirm/src/Popconfirm.d.ts +4 -0
- package/lib/popover/src/Popover.d.ts +5 -0
- package/lib/popover/src/Popover.js +1 -0
- package/lib/popover/src/PopoverBody.d.ts +4 -0
- package/lib/popover/src/PopoverBody.js +18 -10
- package/lib/popselect/src/Popselect.d.ts +24 -0
- package/lib/popselect/src/Popselect.js +10 -5
- package/lib/popselect/src/PopselectPanel.d.ts +22 -2
- package/lib/popselect/src/PopselectPanel.js +12 -1
- package/lib/select/src/Select.d.ts +1 -1
- package/lib/select/src/Select.js +4 -1
- package/lib/slider/src/Slider.d.ts +1 -1
- package/lib/slider/src/Slider.js +12 -4
- package/lib/slider/src/styles/index.cssr.js +26 -31
- package/lib/time-picker/src/TimePicker.d.ts +2 -1
- package/lib/time-picker/src/TimePicker.js +17 -7
- package/lib/tooltip/src/Tooltip.d.ts +4 -0
- package/lib/tree/src/Tree.d.ts +2 -3
- package/lib/tree/src/Tree.js +6 -8
- package/lib/tree/src/TreeNode.js +4 -1
- package/lib/tree/src/interface.d.ts +0 -1
- package/lib/tree/src/keyboard.d.ts +0 -1
- package/lib/tree/src/keyboard.js +6 -9
- package/lib/tree-select/src/TreeSelect.d.ts +1 -3
- package/lib/tree-select/src/TreeSelect.js +13 -15
- package/lib/upload/src/UploadDragger.js +2 -2
- package/lib/upload/src/UploadFile.d.ts +2 -2
- package/lib/upload/src/UploadFile.js +9 -4
- package/lib/upload/src/UploadTrigger.js +3 -2
- package/lib/upload/src/styles/index.cssr.js +2 -2
- package/lib/upload/src/utils.js +1 -15
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +2 -2
- 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
|
|
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
|
-
|
|
302
|
-
|
|
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
|
-
|
|
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.
|
|
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;
|
package/es/tree/src/Tree.d.ts
CHANGED
|
@@ -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;
|
package/es/tree/src/Tree.js
CHANGED
|
@@ -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,
|
|
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,
|
|
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,
|
|
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,
|
|
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,
|
|
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 [
|
package/es/tree/src/TreeNode.js
CHANGED
|
@@ -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
|
-
|
|
84
|
+
handleSwitcherClick();
|
|
82
85
|
}
|
|
83
86
|
}
|
|
84
87
|
function handleContentClick(e) {
|
|
@@ -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
|
};
|
package/es/tree/src/keyboard.js
CHANGED
|
@@ -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
|
|
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
|
|
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
|
|
394
|
+
function handleKeydown(e) {
|
|
395
395
|
if (e.key === 'Enter') {
|
|
396
396
|
if (mergedShowRef.value) {
|
|
397
|
-
|
|
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
|
-
|
|
410
|
-
|
|
409
|
+
if (mergedShowRef.value) {
|
|
410
|
+
markEventEffectPerformed(e);
|
|
411
|
+
closeMenu();
|
|
412
|
+
focusSelection();
|
|
413
|
+
}
|
|
411
414
|
}
|
|
412
415
|
else {
|
|
413
416
|
if (mergedShowRef.value) {
|
|
414
|
-
|
|
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,
|
|
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,
|
|
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",
|
|
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,
|
|
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",
|
|
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",
|
|
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
|
-
|
|
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;
|
package/es/upload/src/utils.js
CHANGED
|
@@ -40,21 +40,7 @@ export function createImageDataUrl(file) {
|
|
|
40
40
|
resolve('');
|
|
41
41
|
return;
|
|
42
42
|
}
|
|
43
|
-
|
|
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.
|
|
1
|
+
declare const _default: "2.30.4";
|
|
2
2
|
export default _default;
|
package/es/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export default '2.30.
|
|
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
|
-
|
|
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
|
|
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
|