naive-ui 2.19.7 → 2.19.11
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/es/_internal/icons/Add.js +2 -3
- package/es/_internal/selection/src/Selection.d.ts +4 -1
- package/es/_internal/selection/src/Selection.js +3 -3
- package/es/anchor/src/AnchorAdapter.d.ts +5 -0
- package/es/anchor/src/BaseAnchor.d.ts +6 -1
- package/es/anchor/src/BaseAnchor.js +8 -3
- package/es/auto-complete/src/AutoComplete.d.ts +4 -0
- package/es/auto-complete/src/AutoComplete.js +9 -2
- package/es/calendar/src/Calendar.d.ts +1 -0
- package/es/cascader/src/Cascader.js +1 -1
- package/es/cascader/src/CascaderSelectMenu.d.ts +16 -7
- package/es/cascader/src/CascaderSelectMenu.js +23 -10
- package/es/cascader/src/utils.d.ts +2 -1
- package/es/cascader/src/utils.js +5 -2
- package/es/collapse/src/Collapse.d.ts +0 -1
- package/es/collapse/src/Collapse.js +2 -5
- package/es/collapse/src/CollapseItem.js +0 -2
- package/es/color-picker/src/ColorPicker.d.ts +4 -0
- package/es/color-picker/src/ColorPicker.js +5 -2
- package/es/color-picker/src/ColorPickerSwatches.d.ts +39 -0
- package/es/color-picker/src/ColorPickerSwatches.js +142 -0
- package/es/color-picker/src/styles/index.cssr.js +20 -0
- package/es/config-provider/src/ConfigProvider.d.ts +8 -1
- package/es/config-provider/src/ConfigProvider.js +8 -2
- package/es/config-provider/src/config.d.ts +8 -0
- package/es/config-provider/src/config.js +8 -0
- package/es/config-provider/src/internal-interface.d.ts +4 -0
- package/es/data-table/src/TableParts/Body.d.ts +8 -2
- package/es/data-table/src/TableParts/Body.js +4 -4
- package/es/data-table/src/TableParts/Header.d.ts +8 -2
- package/es/data-table/src/TableParts/Header.js +7 -4
- package/es/data-table/src/interface.d.ts +8 -2
- package/es/data-table/src/use-group-header.js +12 -8
- package/es/data-table/src/use-scroll.d.ts +11 -5
- package/es/data-table/src/use-scroll.js +37 -10
- package/es/date-picker/src/DatePicker.js +3 -0
- package/es/date-picker/src/panel/date.d.ts +1 -0
- package/es/date-picker/src/panel/daterange.d.ts +1 -0
- package/es/date-picker/src/panel/datetime.d.ts +1 -0
- package/es/date-picker/src/panel/datetimerange.d.ts +1 -0
- package/es/date-picker/src/panel/month.d.ts +1 -0
- package/es/date-picker/src/panel/use-calendar.d.ts +1 -0
- package/es/date-picker/src/panel/use-dual-calendar.d.ts +1 -0
- package/es/date-picker/src/panel/use-panel-common.d.ts +1 -0
- package/es/dialog/src/styles/index.cssr.js +1 -0
- package/es/ellipsis/src/Ellipsis.js +3 -1
- package/es/grid/src/Grid.d.ts +1 -1
- package/es/grid/src/Grid.js +4 -3
- package/es/input/src/Input.d.ts +1 -1
- package/es/input/src/Input.js +3 -8
- package/es/input/src/WordCount.js +22 -7
- package/es/input/src/interface.d.ts +1 -1
- package/es/input-number/index.d.ts +1 -0
- package/es/input-number/src/InputNumber.d.ts +2 -0
- package/es/input-number/src/InputNumber.js +10 -22
- package/es/input-number/src/interface.d.ts +4 -0
- package/es/locales/common/enUS.d.ts +1 -0
- package/es/locales/common/enUS.js +1 -0
- package/es/locales/common/jaJP.d.ts +3 -0
- package/es/locales/common/jaJP.js +93 -0
- package/es/locales/common/ruRU.js +1 -0
- package/es/locales/common/ukUA.js +1 -0
- package/es/locales/common/zhCN.js +1 -0
- package/es/locales/date/jaJP.d.ts +3 -0
- package/es/locales/date/jaJP.js +6 -0
- package/es/locales/index.d.ts +2 -0
- package/es/locales/index.js +2 -0
- package/es/menu/src/Menu.d.ts +8 -1
- package/es/menu/src/Menu.js +4 -2
- package/es/menu/src/MenuOption.d.ts +2 -0
- package/es/menu/src/MenuOptionContent.d.ts +2 -0
- package/es/menu/src/Submenu.d.ts +2 -0
- package/es/menu/src/Submenu.js +3 -2
- package/es/rate/src/Rate.d.ts +2 -2
- package/es/scrollbar/src/ScrollBar.d.ts +14 -4
- package/es/scrollbar/src/ScrollBar.js +13 -3
- package/es/select/src/Select.d.ts +5 -1
- package/es/select/src/Select.js +2 -2
- package/es/table/src/Table.d.ts +2 -8
- package/es/table/src/Table.js +1 -4
- package/es/tabs/src/Tab.js +18 -2
- package/es/tabs/src/Tabs.d.ts +5 -1
- package/es/tabs/src/Tabs.js +4 -1
- package/es/tabs/src/interface.d.ts +6 -0
- package/es/time-picker/src/Panel.d.ts +30 -8
- package/es/time-picker/src/Panel.js +101 -33
- package/es/time-picker/src/PanelCol.d.ts +6 -9
- package/es/time-picker/src/PanelCol.js +7 -9
- package/es/time-picker/src/TimePicker.d.ts +21 -16
- package/es/time-picker/src/TimePicker.js +63 -36
- package/es/time-picker/src/interface.d.ts +7 -0
- package/es/time-picker/src/utils.d.ts +4 -1
- package/es/time-picker/src/utils.js +67 -4
- package/es/tree/src/Tree.d.ts +2 -2
- package/es/upload/src/Upload.d.ts +15 -11
- package/es/upload/src/Upload.js +16 -7
- package/es/upload/src/UploadFile.js +1 -1
- package/es/upload/src/UploadFileList.js +1 -3
- package/es/upload/src/UploadTrigger.js +13 -5
- package/es/upload/src/interface.d.ts +1 -1
- package/es/upload/src/styles/index.cssr.js +3 -1
- package/es/version.d.ts +1 -1
- package/es/version.js +1 -1
- package/lib/_internal/icons/Add.js +2 -3
- package/lib/_internal/selection/src/Selection.d.ts +4 -1
- package/lib/_internal/selection/src/Selection.js +3 -3
- package/lib/anchor/src/AnchorAdapter.d.ts +5 -0
- package/lib/anchor/src/BaseAnchor.d.ts +6 -1
- package/lib/anchor/src/BaseAnchor.js +7 -2
- package/lib/auto-complete/src/AutoComplete.d.ts +4 -0
- package/lib/auto-complete/src/AutoComplete.js +9 -2
- package/lib/calendar/src/Calendar.d.ts +1 -0
- package/lib/cascader/src/Cascader.js +1 -1
- package/lib/cascader/src/CascaderSelectMenu.d.ts +16 -7
- package/lib/cascader/src/CascaderSelectMenu.js +23 -10
- package/lib/cascader/src/utils.d.ts +2 -1
- package/lib/cascader/src/utils.js +5 -2
- package/lib/collapse/src/Collapse.d.ts +0 -1
- package/lib/collapse/src/Collapse.js +2 -5
- package/lib/collapse/src/CollapseItem.js +0 -2
- package/lib/color-picker/src/ColorPicker.d.ts +4 -0
- package/lib/color-picker/src/ColorPicker.js +5 -2
- package/lib/color-picker/src/ColorPickerSwatches.d.ts +39 -0
- package/lib/color-picker/src/ColorPickerSwatches.js +144 -0
- package/lib/color-picker/src/styles/index.cssr.js +20 -0
- package/lib/config-provider/src/ConfigProvider.d.ts +8 -1
- package/lib/config-provider/src/ConfigProvider.js +8 -2
- package/lib/config-provider/src/config.d.ts +8 -0
- package/lib/config-provider/src/config.js +11 -0
- package/lib/config-provider/src/internal-interface.d.ts +4 -0
- package/lib/data-table/src/TableParts/Body.d.ts +8 -2
- package/lib/data-table/src/TableParts/Body.js +4 -4
- package/lib/data-table/src/TableParts/Header.d.ts +8 -2
- package/lib/data-table/src/TableParts/Header.js +7 -4
- package/lib/data-table/src/interface.d.ts +8 -2
- package/lib/data-table/src/use-group-header.js +12 -8
- package/lib/data-table/src/use-scroll.d.ts +11 -5
- package/lib/data-table/src/use-scroll.js +37 -10
- package/lib/date-picker/src/DatePicker.js +3 -0
- package/lib/date-picker/src/panel/date.d.ts +1 -0
- package/lib/date-picker/src/panel/daterange.d.ts +1 -0
- package/lib/date-picker/src/panel/datetime.d.ts +1 -0
- package/lib/date-picker/src/panel/datetimerange.d.ts +1 -0
- package/lib/date-picker/src/panel/month.d.ts +1 -0
- package/lib/date-picker/src/panel/use-calendar.d.ts +1 -0
- package/lib/date-picker/src/panel/use-dual-calendar.d.ts +1 -0
- package/lib/date-picker/src/panel/use-panel-common.d.ts +1 -0
- package/lib/dialog/src/styles/index.cssr.js +1 -0
- package/lib/ellipsis/src/Ellipsis.js +3 -1
- package/lib/grid/src/Grid.d.ts +1 -1
- package/lib/grid/src/Grid.js +4 -3
- package/lib/input/src/Input.d.ts +1 -1
- package/lib/input/src/Input.js +2 -7
- package/lib/input/src/WordCount.js +21 -6
- package/lib/input/src/interface.d.ts +1 -1
- package/lib/input-number/index.d.ts +1 -0
- package/lib/input-number/src/InputNumber.d.ts +2 -0
- package/lib/input-number/src/InputNumber.js +10 -22
- package/lib/input-number/src/interface.d.ts +4 -0
- package/lib/locales/common/enUS.d.ts +1 -0
- package/lib/locales/common/enUS.js +1 -0
- package/lib/locales/common/jaJP.d.ts +3 -0
- package/lib/locales/common/jaJP.js +95 -0
- package/lib/locales/common/ruRU.js +1 -0
- package/lib/locales/common/ukUA.js +1 -0
- package/lib/locales/common/zhCN.js +1 -0
- package/lib/locales/date/jaJP.d.ts +3 -0
- package/lib/locales/date/jaJP.js +8 -0
- package/lib/locales/index.d.ts +2 -0
- package/lib/locales/index.js +5 -1
- package/lib/menu/src/Menu.d.ts +8 -1
- package/lib/menu/src/Menu.js +4 -2
- package/lib/menu/src/MenuOption.d.ts +2 -0
- package/lib/menu/src/MenuOptionContent.d.ts +2 -0
- package/lib/menu/src/Submenu.d.ts +2 -0
- package/lib/menu/src/Submenu.js +3 -2
- package/lib/rate/src/Rate.d.ts +2 -2
- package/lib/scrollbar/src/ScrollBar.d.ts +14 -4
- package/lib/scrollbar/src/ScrollBar.js +12 -2
- package/lib/select/src/Select.d.ts +5 -1
- package/lib/select/src/Select.js +2 -2
- package/lib/table/src/Table.d.ts +2 -8
- package/lib/table/src/Table.js +1 -4
- package/lib/tabs/src/Tab.js +18 -2
- package/lib/tabs/src/Tabs.d.ts +5 -1
- package/lib/tabs/src/Tabs.js +4 -1
- package/lib/tabs/src/interface.d.ts +6 -0
- package/lib/time-picker/src/Panel.d.ts +30 -8
- package/lib/time-picker/src/Panel.js +100 -32
- package/lib/time-picker/src/PanelCol.d.ts +6 -9
- package/lib/time-picker/src/PanelCol.js +7 -9
- package/lib/time-picker/src/TimePicker.d.ts +21 -16
- package/lib/time-picker/src/TimePicker.js +61 -34
- package/lib/time-picker/src/interface.d.ts +7 -0
- package/lib/time-picker/src/utils.d.ts +4 -1
- package/lib/time-picker/src/utils.js +69 -5
- package/lib/tree/src/Tree.d.ts +2 -2
- package/lib/upload/src/Upload.d.ts +15 -11
- package/lib/upload/src/Upload.js +16 -7
- package/lib/upload/src/UploadFile.js +1 -1
- package/lib/upload/src/UploadFileList.js +1 -3
- package/lib/upload/src/UploadTrigger.js +13 -5
- package/lib/upload/src/interface.d.ts +1 -1
- package/lib/upload/src/styles/index.cssr.js +3 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +7 -4
- package/web-types.json +68 -1
|
@@ -1,12 +1,22 @@
|
|
|
1
|
-
import { h, defineComponent } from 'vue';
|
|
1
|
+
import { h, defineComponent, ref } from 'vue';
|
|
2
2
|
import { NScrollbar } from '../../_internal';
|
|
3
3
|
import { useTheme } from '../../_mixins';
|
|
4
4
|
const scrollbarProps = Object.assign(Object.assign({}, useTheme.props), { xScrollable: Boolean, onScroll: Function });
|
|
5
5
|
const Scrollbar = defineComponent({
|
|
6
6
|
name: 'Scrollbar',
|
|
7
7
|
props: scrollbarProps,
|
|
8
|
-
setup(
|
|
9
|
-
|
|
8
|
+
setup() {
|
|
9
|
+
const scrollbarInstRef = ref(null);
|
|
10
|
+
const exposedMethods = {
|
|
11
|
+
scrollTo: (...args) => {
|
|
12
|
+
var _a;
|
|
13
|
+
(_a = scrollbarInstRef.value) === null || _a === void 0 ? void 0 : _a.scrollTo(args[0], args[1]);
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
return Object.assign(Object.assign({}, exposedMethods), { scrollbarInstRef });
|
|
17
|
+
},
|
|
18
|
+
render() {
|
|
19
|
+
return (h(NScrollbar, Object.assign({ ref: "scrollbarInstRef" }, this.$props), this.$slots));
|
|
10
20
|
}
|
|
11
21
|
});
|
|
12
22
|
export default Scrollbar;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PropType } from 'vue';
|
|
1
|
+
import { PropType, InputHTMLAttributes } from 'vue';
|
|
2
2
|
import { TreeNode } from 'treemate';
|
|
3
3
|
import { FollowerPlacement } from 'vueuc';
|
|
4
4
|
import { RenderLabel, RenderOption } from '../../_internal/select-menu/src/interface';
|
|
@@ -84,6 +84,7 @@ declare const selectProps: {
|
|
|
84
84
|
readonly renderOption: PropType<RenderOption>;
|
|
85
85
|
readonly renderTag: PropType<RenderTag>;
|
|
86
86
|
readonly 'onUpdate:value': PropType<MaybeArray<OnUpdateValue> | undefined>;
|
|
87
|
+
readonly inputProps: PropType<InputHTMLAttributes>;
|
|
87
88
|
readonly onUpdateValue: PropType<MaybeArray<OnUpdateValue> | undefined>;
|
|
88
89
|
readonly onBlur: PropType<MaybeArray<(e: FocusEvent) => void> | undefined>;
|
|
89
90
|
readonly onClear: PropType<MaybeArray<() => void> | undefined>;
|
|
@@ -558,6 +559,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
558
559
|
readonly renderOption: PropType<RenderOption>;
|
|
559
560
|
readonly renderTag: PropType<RenderTag>;
|
|
560
561
|
readonly 'onUpdate:value': PropType<MaybeArray<OnUpdateValue> | undefined>;
|
|
562
|
+
readonly inputProps: PropType<InputHTMLAttributes>;
|
|
561
563
|
readonly onUpdateValue: PropType<MaybeArray<OnUpdateValue> | undefined>;
|
|
562
564
|
readonly onBlur: PropType<MaybeArray<(e: FocusEvent) => void> | undefined>;
|
|
563
565
|
readonly onClear: PropType<MaybeArray<() => void> | undefined>;
|
|
@@ -1303,6 +1305,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
1303
1305
|
readonly renderOption?: unknown;
|
|
1304
1306
|
readonly renderTag?: unknown;
|
|
1305
1307
|
readonly 'onUpdate:value'?: unknown;
|
|
1308
|
+
readonly inputProps?: unknown;
|
|
1306
1309
|
readonly onUpdateValue?: unknown;
|
|
1307
1310
|
readonly onBlur?: unknown;
|
|
1308
1311
|
readonly onClear?: unknown;
|
|
@@ -1725,6 +1728,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
1725
1728
|
"onUpdate:show"?: MaybeArray<(value: boolean) => void> | undefined;
|
|
1726
1729
|
onUpdateShow?: MaybeArray<(value: boolean) => void> | undefined;
|
|
1727
1730
|
onClear?: MaybeArray<() => void> | undefined;
|
|
1731
|
+
inputProps?: InputHTMLAttributes | undefined;
|
|
1728
1732
|
renderTag?: RenderTag | undefined;
|
|
1729
1733
|
maxTagCount?: number | "responsive" | undefined;
|
|
1730
1734
|
"onUpdate:value"?: MaybeArray<OnUpdateValue> | undefined;
|
package/es/select/src/Select.js
CHANGED
|
@@ -55,7 +55,7 @@ const selectProps = Object.assign(Object.assign({}, useTheme.props), { to: useAd
|
|
|
55
55
|
}, virtualScroll: {
|
|
56
56
|
type: Boolean,
|
|
57
57
|
default: true
|
|
58
|
-
}, renderLabel: Function, renderOption: Function, renderTag: Function, 'onUpdate:value': [Function, Array],
|
|
58
|
+
}, renderLabel: Function, renderOption: Function, renderTag: Function, 'onUpdate:value': [Function, Array], inputProps: Object,
|
|
59
59
|
// for jsx
|
|
60
60
|
onUpdateValue: [Function, Array], onBlur: [Function, Array], onClear: [Function, Array], onFocus: [Function, Array], onScroll: [Function, Array], onSearch: [Function, Array], onUpdateShow: [Function, Array], 'onUpdate:show': [Function, Array],
|
|
61
61
|
/** deprecated */
|
|
@@ -586,7 +586,7 @@ export default defineComponent({
|
|
|
586
586
|
h(VBinder, null, {
|
|
587
587
|
default: () => [
|
|
588
588
|
h(VTarget, null, {
|
|
589
|
-
default: () => (h(NInternalSelection, { ref: "triggerRef", clsPrefix: mergedClsPrefix, showArrow: this.showArrow, maxTagCount: this.maxTagCount, bordered: this.mergedBordered, active: this.mergedShow, pattern: this.pattern, placeholder: this.localizedPlaceholder, selectedOption: this.selectedOption, selectedOptions: this.selectedOptions, multiple: this.multiple, renderTag: this.renderTag, renderLabel: this.renderLabel, filterable: this.filterable, clearable: this.clearable, disabled: this.mergedDisabled, size: this.mergedSize, theme: this.mergedTheme.peers.InternalSelection, themeOverrides: this.mergedTheme.peerOverrides.InternalSelection, loading: this.loading, focused: this.focused, onClick: this.handleTriggerClick, onDeleteOption: this.handleDeleteOption, onPatternInput: this.handlePatternInput, onClear: this.handleClear, onBlur: this.handleTriggerBlur, onFocus: this.handleTriggerFocus, onKeydown: this.handleKeyDown, onKeyup: this.handleKeyUp }))
|
|
589
|
+
default: () => (h(NInternalSelection, { ref: "triggerRef", inputProps: this.inputProps, clsPrefix: mergedClsPrefix, showArrow: this.showArrow, maxTagCount: this.maxTagCount, bordered: this.mergedBordered, active: this.mergedShow, pattern: this.pattern, placeholder: this.localizedPlaceholder, selectedOption: this.selectedOption, selectedOptions: this.selectedOptions, multiple: this.multiple, renderTag: this.renderTag, renderLabel: this.renderLabel, filterable: this.filterable, clearable: this.clearable, disabled: this.mergedDisabled, size: this.mergedSize, theme: this.mergedTheme.peers.InternalSelection, themeOverrides: this.mergedTheme.peerOverrides.InternalSelection, loading: this.loading, focused: this.focused, onClick: this.handleTriggerClick, onDeleteOption: this.handleDeleteOption, onPatternInput: this.handlePatternInput, onClear: this.handleClear, onBlur: this.handleTriggerBlur, onFocus: this.handleTriggerFocus, onKeydown: this.handleKeyDown, onKeyup: this.handleKeyUp }))
|
|
590
590
|
}),
|
|
591
591
|
h(VFollower, { ref: "followerRef", show: this.mergedShow, to: this.adjustedTo, teleportDisabled: this.adjustedTo === useAdjustedTo.tdkey, containerClass: this.namespace, width: this.consistentMenuWidth ? 'target' : undefined, minWidth: "target", placement: this.placement }, {
|
|
592
592
|
default: () => (h(Transition, { name: "fade-in-scale-up-transition", appear: this.isMounted, onLeave: this.handleMenuLeave }, {
|
package/es/table/src/Table.d.ts
CHANGED
|
@@ -13,10 +13,7 @@ declare const tableProps: {
|
|
|
13
13
|
type: BooleanConstructor;
|
|
14
14
|
default: boolean;
|
|
15
15
|
};
|
|
16
|
-
singleColumn:
|
|
17
|
-
type: BooleanConstructor;
|
|
18
|
-
default: boolean;
|
|
19
|
-
};
|
|
16
|
+
singleColumn: BooleanConstructor;
|
|
20
17
|
size: {
|
|
21
18
|
type: PropType<"small" | "medium" | "large">;
|
|
22
19
|
default: string;
|
|
@@ -111,10 +108,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
111
108
|
type: BooleanConstructor;
|
|
112
109
|
default: boolean;
|
|
113
110
|
};
|
|
114
|
-
singleColumn:
|
|
115
|
-
type: BooleanConstructor;
|
|
116
|
-
default: boolean;
|
|
117
|
-
};
|
|
111
|
+
singleColumn: BooleanConstructor;
|
|
118
112
|
size: {
|
|
119
113
|
type: PropType<"small" | "medium" | "large">;
|
|
120
114
|
default: string;
|
package/es/table/src/Table.js
CHANGED
|
@@ -12,10 +12,7 @@ const tableProps = Object.assign(Object.assign({}, useTheme.props), { bordered:
|
|
|
12
12
|
}, singleLine: {
|
|
13
13
|
type: Boolean,
|
|
14
14
|
default: true
|
|
15
|
-
}, singleColumn: {
|
|
16
|
-
type: Boolean,
|
|
17
|
-
default: false
|
|
18
|
-
}, size: {
|
|
15
|
+
}, singleColumn: Boolean, size: {
|
|
19
16
|
type: String,
|
|
20
17
|
default: 'medium'
|
|
21
18
|
} });
|
package/es/tabs/src/Tab.js
CHANGED
|
@@ -11,7 +11,7 @@ export default defineComponent({
|
|
|
11
11
|
addable: Boolean
|
|
12
12
|
}, tabPaneProps),
|
|
13
13
|
setup(props) {
|
|
14
|
-
const { mergedClsPrefixRef, valueRef, typeRef, closableRef, tabStyleRef, handleAdd, handleTabClick, handleClose
|
|
14
|
+
const { mergedClsPrefixRef, valueRef, typeRef, closableRef, tabStyleRef, nextTabNameRef, onBeforeLeaveRef, handleAdd, handleTabClick, handleClose
|
|
15
15
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
16
16
|
} = inject(tabsInjectionKey);
|
|
17
17
|
return {
|
|
@@ -40,7 +40,23 @@ export default defineComponent({
|
|
|
40
40
|
handleAdd();
|
|
41
41
|
return;
|
|
42
42
|
}
|
|
43
|
-
|
|
43
|
+
const { name: nameProp } = props;
|
|
44
|
+
if (nameProp !== valueRef.value) {
|
|
45
|
+
if (nameProp === nextTabNameRef.value)
|
|
46
|
+
return;
|
|
47
|
+
nextTabNameRef.value = nameProp;
|
|
48
|
+
const { value: onBeforeLeave } = onBeforeLeaveRef;
|
|
49
|
+
if (!onBeforeLeave) {
|
|
50
|
+
handleTabClick(nameProp);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
void Promise.resolve(onBeforeLeave(props.name, valueRef.value)).then((allowLeave) => {
|
|
54
|
+
if (allowLeave) {
|
|
55
|
+
handleTabClick(nameProp);
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
}
|
|
44
60
|
}
|
|
45
61
|
};
|
|
46
62
|
},
|
package/es/tabs/src/Tabs.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { PropType, CSSProperties, ComponentPublicInstance, nextTick } from 'vue';
|
|
3
3
|
import { VXScrollInst } from 'vueuc';
|
|
4
4
|
import type { MaybeArray, ExtractPublicPropTypes } from '../../_utils';
|
|
5
|
-
import { Addable, OnClose, TabsType } from './interface';
|
|
5
|
+
import { Addable, OnClose, OnBeforeLeave, TabsType } from './interface';
|
|
6
6
|
import type { OnUpdateValue } from './interface';
|
|
7
7
|
declare const tabsProps: {
|
|
8
8
|
readonly value: PropType<string | number>;
|
|
@@ -24,6 +24,7 @@ declare const tabsProps: {
|
|
|
24
24
|
readonly type: NumberConstructor;
|
|
25
25
|
readonly default: 0;
|
|
26
26
|
};
|
|
27
|
+
readonly onBeforeLeave: PropType<OnBeforeLeave>;
|
|
27
28
|
readonly onAdd: PropType<() => void>;
|
|
28
29
|
readonly 'onUpdate:value': PropType<MaybeArray<OnUpdateValue>>;
|
|
29
30
|
readonly onUpdateValue: PropType<MaybeArray<OnUpdateValue>>;
|
|
@@ -239,6 +240,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
239
240
|
readonly type: NumberConstructor;
|
|
240
241
|
readonly default: 0;
|
|
241
242
|
};
|
|
243
|
+
readonly onBeforeLeave: PropType<OnBeforeLeave>;
|
|
242
244
|
readonly onAdd: PropType<() => void>;
|
|
243
245
|
readonly 'onUpdate:value': PropType<MaybeArray<OnUpdateValue>>;
|
|
244
246
|
readonly onUpdateValue: PropType<MaybeArray<OnUpdateValue>>;
|
|
@@ -521,6 +523,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
521
523
|
readonly paneStyle?: unknown;
|
|
522
524
|
readonly addable?: unknown;
|
|
523
525
|
readonly tabsPadding?: unknown;
|
|
526
|
+
readonly onBeforeLeave?: unknown;
|
|
524
527
|
readonly onAdd?: unknown;
|
|
525
528
|
readonly 'onUpdate:value'?: unknown;
|
|
526
529
|
readonly onUpdateValue?: unknown;
|
|
@@ -539,6 +542,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
539
542
|
} & {
|
|
540
543
|
value?: string | number | undefined;
|
|
541
544
|
justifyContent?: "space-around" | "space-between" | "space-evenly" | undefined;
|
|
545
|
+
onBeforeLeave?: OnBeforeLeave | undefined;
|
|
542
546
|
theme?: import("../../_mixins").Theme<"Tabs", {
|
|
543
547
|
colorSegment: string;
|
|
544
548
|
tabFontSizeCard: string;
|
package/es/tabs/src/Tabs.js
CHANGED
|
@@ -17,7 +17,7 @@ const tabsProps = Object.assign(Object.assign({}, useTheme.props), { value: [Str
|
|
|
17
17
|
}, tabStyle: [String, Object], paneStyle: [String, Object], addable: [Boolean, Object], tabsPadding: {
|
|
18
18
|
type: Number,
|
|
19
19
|
default: 0
|
|
20
|
-
}, onAdd: Function, 'onUpdate:value': [Function, Array], onUpdateValue: [Function, Array], onClose: [Function, Array],
|
|
20
|
+
}, onBeforeLeave: Function, onAdd: Function, 'onUpdate:value': [Function, Array], onUpdateValue: [Function, Array], onClose: [Function, Array],
|
|
21
21
|
// deprecated
|
|
22
22
|
labelSize: String, activeName: [String, Number], onActiveNameChange: [Function, Array] });
|
|
23
23
|
export default defineComponent({
|
|
@@ -53,6 +53,7 @@ export default defineComponent({
|
|
|
53
53
|
? flatten(slots.default())[0].props.name
|
|
54
54
|
: null));
|
|
55
55
|
const mergedValueRef = useMergedState(compitableValueRef, uncontrolledValueRef);
|
|
56
|
+
const nextTabNameRef = { value: mergedValueRef.value };
|
|
56
57
|
const tabWrapperStyleRef = computed(() => {
|
|
57
58
|
if (!props.justifyContent || props.type === 'card')
|
|
58
59
|
return undefined;
|
|
@@ -195,6 +196,8 @@ export default defineComponent({
|
|
|
195
196
|
typeRef: toRef(props, 'type'),
|
|
196
197
|
closableRef: toRef(props, 'closable'),
|
|
197
198
|
valueRef: mergedValueRef,
|
|
199
|
+
nextTabNameRef,
|
|
200
|
+
onBeforeLeaveRef: toRef(props, 'onBeforeLeave'),
|
|
198
201
|
handleTabClick,
|
|
199
202
|
handleClose,
|
|
200
203
|
handleAdd
|
|
@@ -4,6 +4,8 @@ export declare type OnUpdateValue = (value: string & number) => void;
|
|
|
4
4
|
export declare type OnUpdateValueImpl = (value: string | number) => void;
|
|
5
5
|
export declare type OnClose = (name: string & number) => void;
|
|
6
6
|
export declare type OnCloseImpl = (name: string | number) => void;
|
|
7
|
+
export declare type OnBeforeLeave = (name: string & number, oldName: string & number & null) => boolean | Promise<boolean>;
|
|
8
|
+
export declare type OnBeforeLeaveImpl = (name: string | number, oldName: string | number | null) => boolean | Promise<boolean>;
|
|
7
9
|
export interface TabsInjection {
|
|
8
10
|
mergedClsPrefixRef: Ref<string>;
|
|
9
11
|
valueRef: Ref<string | number | null>;
|
|
@@ -11,6 +13,10 @@ export interface TabsInjection {
|
|
|
11
13
|
closableRef: Ref<boolean>;
|
|
12
14
|
tabStyleRef: Ref<string | CSSProperties | undefined>;
|
|
13
15
|
paneStyleRef: Ref<string | CSSProperties | undefined>;
|
|
16
|
+
nextTabNameRef: {
|
|
17
|
+
value: string | number | null;
|
|
18
|
+
};
|
|
19
|
+
onBeforeLeaveRef: Ref<OnBeforeLeave | undefined>;
|
|
14
20
|
handleTabClick: (panelName: string | number) => void;
|
|
15
21
|
handleClose: (panelName: string | number) => void;
|
|
16
22
|
handleAdd: () => void;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { PropType } from 'vue';
|
|
2
|
-
import { IsHourDisabled, IsMinuteDisabled, IsSecondDisabled } from './interface';
|
|
3
|
-
import { Item } from './PanelCol';
|
|
2
|
+
import { IsHourDisabled, IsMinuteDisabled, IsSecondDisabled, ItemValue, Item } from './interface';
|
|
4
3
|
import { MaybeArray } from '../../_utils';
|
|
5
4
|
declare const _default: import("vue").DefineComponent<{
|
|
6
5
|
actions: {
|
|
@@ -26,6 +25,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
26
25
|
isHourInvalid: BooleanConstructor;
|
|
27
26
|
isMinuteInvalid: BooleanConstructor;
|
|
28
27
|
isSecondInvalid: BooleanConstructor;
|
|
28
|
+
isAmPmInvalid: BooleanConstructor;
|
|
29
29
|
isValueInvalid: BooleanConstructor;
|
|
30
30
|
hourValue: {
|
|
31
31
|
type: PropType<number | null>;
|
|
@@ -39,19 +39,27 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
39
39
|
type: PropType<number | null>;
|
|
40
40
|
default: null;
|
|
41
41
|
};
|
|
42
|
+
amPmValue: {
|
|
43
|
+
type: PropType<"am" | "pm" | null>;
|
|
44
|
+
default: null;
|
|
45
|
+
};
|
|
42
46
|
isHourDisabled: PropType<IsHourDisabled>;
|
|
43
47
|
isMinuteDisabled: PropType<IsMinuteDisabled>;
|
|
44
48
|
isSecondDisabled: PropType<IsSecondDisabled>;
|
|
45
49
|
onHourClick: {
|
|
46
|
-
type: PropType<(value:
|
|
50
|
+
type: PropType<(value: ItemValue) => void>;
|
|
47
51
|
required: boolean;
|
|
48
52
|
};
|
|
49
53
|
onMinuteClick: {
|
|
50
|
-
type: PropType<(value:
|
|
54
|
+
type: PropType<(value: ItemValue) => void>;
|
|
51
55
|
required: boolean;
|
|
52
56
|
};
|
|
53
57
|
onSecondClick: {
|
|
54
|
-
type: PropType<(value:
|
|
58
|
+
type: PropType<(value: ItemValue) => void>;
|
|
59
|
+
required: boolean;
|
|
60
|
+
};
|
|
61
|
+
onAmPmClick: {
|
|
62
|
+
type: PropType<(value: ItemValue) => void>;
|
|
55
63
|
required: boolean;
|
|
56
64
|
};
|
|
57
65
|
onNowClick: PropType<() => void>;
|
|
@@ -66,6 +74,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
66
74
|
hours: PropType<MaybeArray<number>>;
|
|
67
75
|
minutes: PropType<MaybeArray<number>>;
|
|
68
76
|
seconds: PropType<MaybeArray<number>>;
|
|
77
|
+
use12Hours: BooleanConstructor;
|
|
69
78
|
}, {
|
|
70
79
|
mergedTheme: import("vue").Ref<{
|
|
71
80
|
common: {
|
|
@@ -467,9 +476,11 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
467
476
|
hours: import("vue").ComputedRef<Item[]>;
|
|
468
477
|
minutes: import("vue").ComputedRef<Item[]>;
|
|
469
478
|
seconds: import("vue").ComputedRef<Item[]>;
|
|
479
|
+
amPm: import("vue").ComputedRef<Item[]>;
|
|
470
480
|
hourScrollRef: import("vue").Ref<null>;
|
|
471
481
|
minuteScrollRef: import("vue").Ref<null>;
|
|
472
482
|
secondScrollRef: import("vue").Ref<null>;
|
|
483
|
+
amPmScrollRef: import("vue").Ref<null>;
|
|
473
484
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
|
|
474
485
|
actions?: unknown;
|
|
475
486
|
showHour?: unknown;
|
|
@@ -479,16 +490,19 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
479
490
|
isHourInvalid?: unknown;
|
|
480
491
|
isMinuteInvalid?: unknown;
|
|
481
492
|
isSecondInvalid?: unknown;
|
|
493
|
+
isAmPmInvalid?: unknown;
|
|
482
494
|
isValueInvalid?: unknown;
|
|
483
495
|
hourValue?: unknown;
|
|
484
496
|
minuteValue?: unknown;
|
|
485
497
|
secondValue?: unknown;
|
|
498
|
+
amPmValue?: unknown;
|
|
486
499
|
isHourDisabled?: unknown;
|
|
487
500
|
isMinuteDisabled?: unknown;
|
|
488
501
|
isSecondDisabled?: unknown;
|
|
489
502
|
onHourClick?: unknown;
|
|
490
503
|
onMinuteClick?: unknown;
|
|
491
504
|
onSecondClick?: unknown;
|
|
505
|
+
onAmPmClick?: unknown;
|
|
492
506
|
onNowClick?: unknown;
|
|
493
507
|
nowText?: unknown;
|
|
494
508
|
confirmText?: unknown;
|
|
@@ -501,6 +515,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
501
515
|
hours?: unknown;
|
|
502
516
|
minutes?: unknown;
|
|
503
517
|
seconds?: unknown;
|
|
518
|
+
use12Hours?: unknown;
|
|
504
519
|
} & {
|
|
505
520
|
transitionDisabled: boolean;
|
|
506
521
|
actions: ("confirm" | "now")[];
|
|
@@ -511,10 +526,13 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
511
526
|
isHourInvalid: boolean;
|
|
512
527
|
isMinuteInvalid: boolean;
|
|
513
528
|
isSecondInvalid: boolean;
|
|
529
|
+
isAmPmInvalid: boolean;
|
|
514
530
|
isValueInvalid: boolean;
|
|
515
531
|
hourValue: number | null;
|
|
516
532
|
minuteValue: number | null;
|
|
517
533
|
secondValue: number | null;
|
|
534
|
+
amPmValue: "am" | "pm" | null;
|
|
535
|
+
use12Hours: boolean;
|
|
518
536
|
} & {
|
|
519
537
|
onFocusin?: ((e: FocusEvent) => void) | undefined;
|
|
520
538
|
onFocusout?: ((e: FocusEvent) => void) | undefined;
|
|
@@ -525,9 +543,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
525
543
|
isHourDisabled?: IsHourDisabled | undefined;
|
|
526
544
|
isMinuteDisabled?: IsMinuteDisabled | undefined;
|
|
527
545
|
isSecondDisabled?: IsSecondDisabled | undefined;
|
|
528
|
-
onHourClick?: ((value:
|
|
529
|
-
onMinuteClick?: ((value:
|
|
530
|
-
onSecondClick?: ((value:
|
|
546
|
+
onHourClick?: ((value: ItemValue) => void) | undefined;
|
|
547
|
+
onMinuteClick?: ((value: ItemValue) => void) | undefined;
|
|
548
|
+
onSecondClick?: ((value: ItemValue) => void) | undefined;
|
|
549
|
+
onAmPmClick?: ((value: ItemValue) => void) | undefined;
|
|
531
550
|
onNowClick?: (() => void) | undefined;
|
|
532
551
|
nowText?: string | undefined;
|
|
533
552
|
confirmText?: string | undefined;
|
|
@@ -543,9 +562,12 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
543
562
|
isHourInvalid: boolean;
|
|
544
563
|
isMinuteInvalid: boolean;
|
|
545
564
|
isSecondInvalid: boolean;
|
|
565
|
+
isAmPmInvalid: boolean;
|
|
546
566
|
isValueInvalid: boolean;
|
|
547
567
|
hourValue: number | null;
|
|
548
568
|
minuteValue: number | null;
|
|
549
569
|
secondValue: number | null;
|
|
570
|
+
amPmValue: "am" | "pm" | null;
|
|
571
|
+
use12Hours: boolean;
|
|
550
572
|
}>;
|
|
551
573
|
export default _default;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { h, ref, defineComponent, inject, computed } from 'vue';
|
|
2
2
|
import { NScrollbar, NBaseFocusDetector } from '../../_internal';
|
|
3
3
|
import { NButton } from '../../button';
|
|
4
|
-
import { getTimeUnits, time } from './utils';
|
|
4
|
+
import { getTimeUnits, time, getAmPm } from './utils';
|
|
5
5
|
import { timePickerInjectionKey } from './interface';
|
|
6
6
|
import PanelCol from './PanelCol';
|
|
7
7
|
const timePickerPanelProps = {
|
|
@@ -28,6 +28,7 @@ const timePickerPanelProps = {
|
|
|
28
28
|
isHourInvalid: Boolean,
|
|
29
29
|
isMinuteInvalid: Boolean,
|
|
30
30
|
isSecondInvalid: Boolean,
|
|
31
|
+
isAmPmInvalid: Boolean,
|
|
31
32
|
isValueInvalid: Boolean,
|
|
32
33
|
hourValue: {
|
|
33
34
|
type: Number,
|
|
@@ -41,6 +42,10 @@ const timePickerPanelProps = {
|
|
|
41
42
|
type: Number,
|
|
42
43
|
default: null
|
|
43
44
|
},
|
|
45
|
+
amPmValue: {
|
|
46
|
+
type: String,
|
|
47
|
+
default: null
|
|
48
|
+
},
|
|
44
49
|
isHourDisabled: Function,
|
|
45
50
|
isMinuteDisabled: Function,
|
|
46
51
|
isSecondDisabled: Function,
|
|
@@ -56,6 +61,10 @@ const timePickerPanelProps = {
|
|
|
56
61
|
type: Function,
|
|
57
62
|
required: true
|
|
58
63
|
},
|
|
64
|
+
onAmPmClick: {
|
|
65
|
+
type: Function,
|
|
66
|
+
required: true
|
|
67
|
+
},
|
|
59
68
|
onNowClick: Function,
|
|
60
69
|
nowText: String,
|
|
61
70
|
confirmText: String,
|
|
@@ -67,7 +76,8 @@ const timePickerPanelProps = {
|
|
|
67
76
|
onKeydown: Function,
|
|
68
77
|
hours: [Number, Array],
|
|
69
78
|
minutes: [Number, Array],
|
|
70
|
-
seconds: [Number, Array]
|
|
79
|
+
seconds: [Number, Array],
|
|
80
|
+
use12Hours: Boolean
|
|
71
81
|
};
|
|
72
82
|
export default defineComponent({
|
|
73
83
|
name: 'TimePickerPanel',
|
|
@@ -77,19 +87,39 @@ export default defineComponent({
|
|
|
77
87
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
78
88
|
} = inject(timePickerInjectionKey);
|
|
79
89
|
const hoursRef = computed(() => {
|
|
80
|
-
const { isHourDisabled, hours } = props;
|
|
81
|
-
|
|
82
|
-
return {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
90
|
+
const { isHourDisabled, hours, use12Hours, amPmValue } = props;
|
|
91
|
+
if (!use12Hours) {
|
|
92
|
+
return getTimeUnits(time.hours, hours).map((hour) => {
|
|
93
|
+
return {
|
|
94
|
+
label: hour,
|
|
95
|
+
value: Number(hour),
|
|
96
|
+
disabled: isHourDisabled ? isHourDisabled(Number(hour)) : false
|
|
97
|
+
};
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
const mergedAmPmValue = amPmValue !== null && amPmValue !== void 0 ? amPmValue : getAmPm(Date.now());
|
|
102
|
+
return getTimeUnits(time.hours, hours, mergedAmPmValue).map((hour) => {
|
|
103
|
+
const hourAs12FormattedNumber = Number(hour);
|
|
104
|
+
const hourAs24FormattedNumber = mergedAmPmValue === 'pm' && hourAs12FormattedNumber !== 12
|
|
105
|
+
? hourAs12FormattedNumber + 12
|
|
106
|
+
: hourAs12FormattedNumber;
|
|
107
|
+
return {
|
|
108
|
+
label: hour,
|
|
109
|
+
value: hourAs24FormattedNumber,
|
|
110
|
+
disabled: isHourDisabled
|
|
111
|
+
? isHourDisabled(hourAs24FormattedNumber)
|
|
112
|
+
: false
|
|
113
|
+
};
|
|
114
|
+
});
|
|
115
|
+
}
|
|
87
116
|
});
|
|
88
117
|
const minutesRef = computed(() => {
|
|
89
118
|
const { isMinuteDisabled, minutes } = props;
|
|
90
119
|
return getTimeUnits(time.minutes, minutes).map((minute) => {
|
|
91
120
|
return {
|
|
92
|
-
|
|
121
|
+
label: minute,
|
|
122
|
+
value: Number(minute),
|
|
93
123
|
disabled: isMinuteDisabled
|
|
94
124
|
? isMinuteDisabled(Number(minute), props.hourValue)
|
|
95
125
|
: false
|
|
@@ -100,41 +130,67 @@ export default defineComponent({
|
|
|
100
130
|
const { isSecondDisabled, seconds } = props;
|
|
101
131
|
return getTimeUnits(time.seconds, seconds).map((second) => {
|
|
102
132
|
return {
|
|
103
|
-
|
|
133
|
+
label: second,
|
|
134
|
+
value: Number(second),
|
|
104
135
|
disabled: isSecondDisabled
|
|
105
136
|
? isSecondDisabled(Number(second), props.minuteValue, props.hourValue)
|
|
106
137
|
: false
|
|
107
138
|
};
|
|
108
139
|
});
|
|
109
140
|
});
|
|
141
|
+
const amPmRef = computed(() => {
|
|
142
|
+
const { isHourDisabled } = props;
|
|
143
|
+
let amDisabled = true;
|
|
144
|
+
let pmDisabled = true;
|
|
145
|
+
for (let i = 0; i < 12; ++i) {
|
|
146
|
+
if (!(isHourDisabled === null || isHourDisabled === void 0 ? void 0 : isHourDisabled(i))) {
|
|
147
|
+
amDisabled = false;
|
|
148
|
+
break;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
for (let i = 12; i < 24; ++i) {
|
|
152
|
+
if (!(isHourDisabled === null || isHourDisabled === void 0 ? void 0 : isHourDisabled(i))) {
|
|
153
|
+
pmDisabled = false;
|
|
154
|
+
break;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
return [
|
|
158
|
+
{
|
|
159
|
+
label: 'AM',
|
|
160
|
+
value: 'am',
|
|
161
|
+
disabled: amDisabled
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
label: 'PM',
|
|
165
|
+
value: 'pm',
|
|
166
|
+
disabled: pmDisabled
|
|
167
|
+
}
|
|
168
|
+
];
|
|
169
|
+
});
|
|
110
170
|
return {
|
|
111
171
|
mergedTheme: mergedThemeRef,
|
|
112
172
|
mergedClsPrefix: mergedClsPrefixRef,
|
|
113
173
|
hours: hoursRef,
|
|
114
174
|
minutes: minutesRef,
|
|
115
175
|
seconds: secondsRef,
|
|
176
|
+
amPm: amPmRef,
|
|
116
177
|
hourScrollRef: ref(null),
|
|
117
178
|
minuteScrollRef: ref(null),
|
|
118
|
-
secondScrollRef: ref(null)
|
|
179
|
+
secondScrollRef: ref(null),
|
|
180
|
+
amPmScrollRef: ref(null)
|
|
119
181
|
};
|
|
120
182
|
},
|
|
121
183
|
render() {
|
|
122
184
|
var _a, _b;
|
|
123
185
|
const { mergedClsPrefix, mergedTheme } = this;
|
|
124
|
-
return h(
|
|
125
|
-
tabindex: 0,
|
|
126
|
-
class: `${mergedClsPrefix}-time-picker-panel`,
|
|
127
|
-
onFocusin: this.onFocusin,
|
|
128
|
-
onFocusout: this.onFocusout,
|
|
129
|
-
onKeydown: this.onKeydown
|
|
130
|
-
}, [
|
|
186
|
+
return (h("div", { tabindex: 0, class: `${mergedClsPrefix}-time-picker-panel`, onFocusin: this.onFocusin, onFocusout: this.onFocusout, onKeydown: this.onKeydown },
|
|
131
187
|
h("div", { class: `${mergedClsPrefix}-time-picker-cols` },
|
|
132
188
|
this.showHour ? (h("div", { class: [
|
|
133
189
|
`${mergedClsPrefix}-time-picker-col`,
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
190
|
+
this.isHourInvalid &&
|
|
191
|
+
`${mergedClsPrefix}-time-picker-col--invalid`,
|
|
192
|
+
this.transitionDisabled &&
|
|
193
|
+
`${mergedClsPrefix}-time-picker-col--transition-disabled`
|
|
138
194
|
] },
|
|
139
195
|
h(NScrollbar, { ref: "hourScrollRef", theme: mergedTheme.peers.Scrollbar, themeOverrides: mergedTheme.peerOverrides.Scrollbar }, {
|
|
140
196
|
default: () => [
|
|
@@ -144,10 +200,10 @@ export default defineComponent({
|
|
|
144
200
|
}))) : null,
|
|
145
201
|
this.showMinute ? (h("div", { class: [
|
|
146
202
|
`${mergedClsPrefix}-time-picker-col`,
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
203
|
+
this.transitionDisabled &&
|
|
204
|
+
`${mergedClsPrefix}-time-picker-col--transition-disabled`,
|
|
205
|
+
this.isMinuteInvalid &&
|
|
206
|
+
`${mergedClsPrefix}-time-picker-col--invalid`
|
|
151
207
|
] },
|
|
152
208
|
h(NScrollbar, { ref: "minuteScrollRef", theme: mergedTheme.peers.Scrollbar, themeOverrides: mergedTheme.peerOverrides.Scrollbar }, {
|
|
153
209
|
default: () => [
|
|
@@ -157,21 +213,33 @@ export default defineComponent({
|
|
|
157
213
|
}))) : null,
|
|
158
214
|
this.showSecond ? (h("div", { class: [
|
|
159
215
|
`${mergedClsPrefix}-time-picker-col`,
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
216
|
+
this.isSecondInvalid &&
|
|
217
|
+
`${mergedClsPrefix}-time-picker-col--invalid`,
|
|
218
|
+
this.transitionDisabled &&
|
|
219
|
+
`${mergedClsPrefix}-time-picker-col--transition-disabled`
|
|
164
220
|
] },
|
|
165
221
|
h(NScrollbar, { ref: "secondScrollRef", theme: mergedTheme.peers.Scrollbar, themeOverrides: mergedTheme.peerOverrides.Scrollbar }, {
|
|
166
222
|
default: () => [
|
|
167
223
|
h(PanelCol, { clsPrefix: mergedClsPrefix, data: this.seconds, activeValue: this.secondValue, onItemClick: this.onSecondClick }),
|
|
168
224
|
h("div", { class: `${mergedClsPrefix}-time-picker-col__padding` })
|
|
169
225
|
]
|
|
226
|
+
}))) : null,
|
|
227
|
+
this.use12Hours ? (h("div", { class: [
|
|
228
|
+
`${mergedClsPrefix}-time-picker-col`,
|
|
229
|
+
this.isAmPmInvalid &&
|
|
230
|
+
`${mergedClsPrefix}-time-picker-col--invalid`,
|
|
231
|
+
this.transitionDisabled &&
|
|
232
|
+
`${mergedClsPrefix}-time-picker-col--transition-disabled`
|
|
233
|
+
] },
|
|
234
|
+
h(NScrollbar, { ref: "amPmScrollRef", theme: mergedTheme.peers.Scrollbar, themeOverrides: mergedTheme.peerOverrides.Scrollbar }, {
|
|
235
|
+
default: () => [
|
|
236
|
+
h(PanelCol, { clsPrefix: mergedClsPrefix, data: this.amPm, activeValue: this.amPmValue, onItemClick: this.onAmPmClick }),
|
|
237
|
+
h("div", { class: `${mergedClsPrefix}-time-picker-col__padding` })
|
|
238
|
+
]
|
|
170
239
|
}))) : null),
|
|
171
240
|
h("div", { class: `${mergedClsPrefix}-time-picker-actions` },
|
|
172
241
|
((_a = this.actions) === null || _a === void 0 ? void 0 : _a.includes('now')) ? (h(NButton, { size: "tiny", theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, onClick: this.onNowClick }, { default: () => this.nowText })) : null,
|
|
173
242
|
((_b = this.actions) === null || _b === void 0 ? void 0 : _b.includes('confirm')) ? (h(NButton, { size: "tiny", type: "primary", class: `${mergedClsPrefix}-time-picker-actions__confirm`, theme: mergedTheme.peers.Button, themeOverrides: mergedTheme.peerOverrides.Button, disabled: this.isValueInvalid, onClick: this.onConfirmClick }, { default: () => this.confirmText })) : null),
|
|
174
|
-
h(NBaseFocusDetector, { onFocus: this.onFocusDetectorFocus })
|
|
175
|
-
]);
|
|
243
|
+
h(NBaseFocusDetector, { onFocus: this.onFocusDetectorFocus })));
|
|
176
244
|
}
|
|
177
245
|
});
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
import { PropType } from 'vue';
|
|
2
|
-
|
|
3
|
-
value: string;
|
|
4
|
-
disabled: boolean;
|
|
5
|
-
}
|
|
2
|
+
import { Item } from './interface';
|
|
6
3
|
declare const _default: import("vue").DefineComponent<{
|
|
7
4
|
clsPrefix: {
|
|
8
5
|
type: StringConstructor;
|
|
@@ -13,10 +10,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
13
10
|
required: true;
|
|
14
11
|
};
|
|
15
12
|
activeValue: {
|
|
16
|
-
type: PropType<number | null>;
|
|
13
|
+
type: PropType<number | "am" | "pm" | null>;
|
|
17
14
|
default: null;
|
|
18
15
|
};
|
|
19
|
-
onItemClick: PropType<(value: number) => void>;
|
|
16
|
+
onItemClick: PropType<(value: number | 'am' | 'pm') => void>;
|
|
20
17
|
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
|
|
21
18
|
clsPrefix?: unknown;
|
|
22
19
|
data?: unknown;
|
|
@@ -25,10 +22,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
25
22
|
} & {
|
|
26
23
|
data: Item[];
|
|
27
24
|
clsPrefix: string;
|
|
28
|
-
activeValue: number | null;
|
|
25
|
+
activeValue: number | "am" | "pm" | null;
|
|
29
26
|
} & {
|
|
30
|
-
onItemClick?: ((value: number) => void) | undefined;
|
|
27
|
+
onItemClick?: ((value: number | 'am' | 'pm') => void) | undefined;
|
|
31
28
|
}>, {
|
|
32
|
-
activeValue: number | null;
|
|
29
|
+
activeValue: number | "am" | "pm" | null;
|
|
33
30
|
}>;
|
|
34
31
|
export default _default;
|