bkui-vue 2.0.1-beta.2 → 2.0.1-beta.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.cjs.js +49 -49
- package/dist/index.esm.js +6702 -6667
- package/dist/index.umd.js +51 -51
- package/dist/style.css +1 -1
- package/dist/style.variable.css +1 -1
- package/lib/date-picker/base/year-table.d.ts +2 -2
- package/lib/date-picker/index.js +93 -19
- package/lib/date-picker/interface.d.ts +1 -1
- package/lib/date-picker/panel/date-range.d.ts +1 -63
- package/lib/date-picker/utils.d.ts +4 -0
- package/lib/select/select.css +1 -2
- package/lib/select/select.less +1 -2
- package/lib/select/select.variable.css +1 -2
- package/package.json +1 -1
@@ -75,7 +75,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
75
75
|
handleClick: (cell: any) => void;
|
76
76
|
handleMouseMove: (cell: any) => void;
|
77
77
|
resolveClassName: (cls: string) => string;
|
78
|
-
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("pick" | "pick-click" | "
|
78
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("pick" | "pick-click" | "changeRange")[], "pick" | "pick-click" | "changeRange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
|
79
79
|
readonly tableDate: {
|
80
80
|
readonly type: DateConstructor;
|
81
81
|
readonly required: true;
|
@@ -110,7 +110,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
110
110
|
}>> & {
|
111
111
|
onPick?: (...args: any[]) => any;
|
112
112
|
"onPick-click"?: (...args: any[]) => any;
|
113
|
-
|
113
|
+
onChangeRange?: (...args: any[]) => any;
|
114
114
|
}, {
|
115
115
|
readonly rangeState: Record<string, any>;
|
116
116
|
readonly cellClass: Function;
|
package/lib/date-picker/index.js
CHANGED
@@ -1099,6 +1099,10 @@ var typeValueResolver = {
|
|
1099
1099
|
return src_fecha.parse(text, format || 'yyyy-MM-dd');
|
1100
1100
|
}
|
1101
1101
|
},
|
1102
|
+
yearrange: {
|
1103
|
+
formatter: rangeFormatter,
|
1104
|
+
parser: rangeParser
|
1105
|
+
},
|
1102
1106
|
multiple: {
|
1103
1107
|
formatter: function formatter(value, format) {
|
1104
1108
|
return value.filter(Boolean).map(function (date) {
|
@@ -1193,6 +1197,7 @@ var DEFAULT_FORMATS = {
|
|
1193
1197
|
month: 'yyyy-MM',
|
1194
1198
|
monthrange: 'yyyy-MM',
|
1195
1199
|
year: 'yyyy',
|
1200
|
+
yearrange: 'yyyy',
|
1196
1201
|
datetime: 'yyyy-MM-dd HH:mm:ss',
|
1197
1202
|
time: 'HH:mm:ss',
|
1198
1203
|
timerange: 'HH:mm:ss',
|
@@ -1363,7 +1368,15 @@ var isInRange = function isInRange(time, a, b) {
|
|
1363
1368
|
if (!a || !b) {
|
1364
1369
|
return false;
|
1365
1370
|
}
|
1366
|
-
var _sort = [a, b].sort()
|
1371
|
+
var _sort = [a, b].sort(function (x, y) {
|
1372
|
+
if (x - y > 0) {
|
1373
|
+
return 1;
|
1374
|
+
}
|
1375
|
+
if (x - y < 0) {
|
1376
|
+
return -1;
|
1377
|
+
}
|
1378
|
+
return 0;
|
1379
|
+
}),
|
1367
1380
|
_sort2 = _slicedToArray(_sort, 2),
|
1368
1381
|
start = _sort2[0],
|
1369
1382
|
end = _sort2[1];
|
@@ -1670,6 +1683,8 @@ var monthTableProps = {
|
|
1670
1683
|
maxDay = _dates$value$map2[1];
|
1671
1684
|
var rangeStart = props.rangeState.from && clearHours(props.rangeState.from);
|
1672
1685
|
var rangeEnd = props.rangeState.to && clearHours(props.rangeState.to);
|
1686
|
+
var now = new Date();
|
1687
|
+
var currentMonth = clearHours(new Date(now.getFullYear(), now.getMonth(), 1));
|
1673
1688
|
for (var i = 0; i < 12; i++) {
|
1674
1689
|
var cell = JSON.parse(JSON.stringify(cellTmpl));
|
1675
1690
|
cell.date = new Date(tableYear, i, 1);
|
@@ -1682,6 +1697,7 @@ var monthTableProps = {
|
|
1682
1697
|
cell.start = isRange && time === minDay;
|
1683
1698
|
cell.end = isRange && time === maxDay;
|
1684
1699
|
cell.focused = day === focusedDate;
|
1700
|
+
cell.isCurrentMonth = day === currentMonth;
|
1685
1701
|
cells.push(cell);
|
1686
1702
|
}
|
1687
1703
|
return cells;
|
@@ -1692,7 +1708,7 @@ var monthTableProps = {
|
|
1692
1708
|
var _usePrefix = (0,config_provider_namespaceObject.usePrefix)(),
|
1693
1709
|
resolveClassName = _usePrefix.resolveClassName;
|
1694
1710
|
var getCellCls = function getCellCls(cell) {
|
1695
|
-
return [resolveClassName('date-picker-cells-cell'), _defineProperty(_defineProperty(_defineProperty({}, resolveClassName('date-picker-cells-cell-selected'), cell.selected), resolveClassName('date-picker-cells-cell-disabled'), cell.disabled), resolveClassName('date-picker-cells-cell-range'), cell.range && !cell.start && !cell.end) // resolveClassName('date-picker-cells-cell'),
|
1711
|
+
return [resolveClassName('date-picker-cells-cell'), _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, resolveClassName('date-picker-cells-cell-selected'), cell.selected), resolveClassName('date-picker-cells-cell-disabled'), cell.disabled), resolveClassName('date-picker-cells-cell-today'), cell.isCurrentMonth), resolveClassName('date-picker-cells-cell-range'), cell.range && !cell.start && !cell.end) // resolveClassName('date-picker-cells-cell'),
|
1696
1712
|
// {
|
1697
1713
|
// [resolveClassName('date-picker-cells-cell-today')]: cell.type === 'today',
|
1698
1714
|
// [resolveClassName('date-picker-cells-cell-range')]: cell.range && !cell.start && !cell.end,
|
@@ -1745,6 +1761,7 @@ var monthTableProps = {
|
|
1745
1761
|
;// CONCATENATED MODULE: ../../packages/date-picker/src/base/year-table.tsx
|
1746
1762
|
|
1747
1763
|
|
1764
|
+
|
1748
1765
|
/*
|
1749
1766
|
* Tencent is pleased to support the open source community by making
|
1750
1767
|
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
|
@@ -1817,7 +1834,7 @@ var yearTableProps = {
|
|
1817
1834
|
/* harmony default export */ const year_table = ((0,external_vue_namespaceObject.defineComponent)({
|
1818
1835
|
name: 'YearTable',
|
1819
1836
|
props: yearTableProps,
|
1820
|
-
emits: ['pick', 'pick-click', '
|
1837
|
+
emits: ['pick', 'pick-click', 'changeRange'],
|
1821
1838
|
setup: function setup(props, _ref) {
|
1822
1839
|
var emit = _ref.emit;
|
1823
1840
|
var dates = (0,external_vue_namespaceObject.computed)(function () {
|
@@ -1827,6 +1844,7 @@ var yearTableProps = {
|
|
1827
1844
|
var rangeSelecting = selectionMode === 'range' && rangeState.selecting;
|
1828
1845
|
return rangeSelecting ? [rangeState.from] : modelValue;
|
1829
1846
|
});
|
1847
|
+
var isRange = props.selectionMode === 'range';
|
1830
1848
|
var startYear = (0,external_vue_namespaceObject.computed)(function () {
|
1831
1849
|
return Math.floor(props.tableDate.getFullYear() / 10) * 10;
|
1832
1850
|
});
|
@@ -1841,13 +1859,25 @@ var yearTableProps = {
|
|
1841
1859
|
return clearHours(new Date(date.getFullYear(), 0, 1));
|
1842
1860
|
});
|
1843
1861
|
var focusedDate = clearHours(new Date(props.focusedDate.getFullYear(), 0, 1));
|
1862
|
+
var currentYear = clearHours(new Date(new Date().getFullYear(), 0, 1));
|
1863
|
+
var _dates$value$map = dates.value.map(clearHours),
|
1864
|
+
_dates$value$map2 = _slicedToArray(_dates$value$map, 2),
|
1865
|
+
minDay = _dates$value$map2[0],
|
1866
|
+
maxDay = _dates$value$map2[1];
|
1867
|
+
var rangeStart = props.rangeState.from && clearHours(props.rangeState.from);
|
1868
|
+
var rangeEnd = props.rangeState.to && clearHours(props.rangeState.to);
|
1844
1869
|
for (var i = 0; i < 10; i++) {
|
1845
1870
|
var cell = JSON.parse(JSON.stringify(cellTmpl));
|
1846
1871
|
cell.date = new Date(startYear.value + i, 0, 1);
|
1847
|
-
cell.disabled = typeof props.disabledDate === 'function' && props.disabledDate(cell.date)
|
1872
|
+
cell.disabled = typeof props.disabledDate === 'function' && props.disabledDate(cell.date);
|
1848
1873
|
var day = clearHours(cell.date);
|
1874
|
+
var time = cell.date && clearHours(cell.date);
|
1875
|
+
cell.range = isRange && isInRange(time, rangeStart, rangeEnd);
|
1876
|
+
cell.start = isRange && time === minDay;
|
1877
|
+
cell.end = isRange && time === maxDay;
|
1849
1878
|
cell.selected = selectedDays.includes(day);
|
1850
1879
|
cell.focused = day === focusedDate;
|
1880
|
+
cell.isCurrent = day === currentYear;
|
1851
1881
|
cells.push(cell);
|
1852
1882
|
}
|
1853
1883
|
return cells;
|
@@ -1855,7 +1885,7 @@ var yearTableProps = {
|
|
1855
1885
|
var _usePrefix = (0,config_provider_namespaceObject.usePrefix)(),
|
1856
1886
|
resolveClassName = _usePrefix.resolveClassName;
|
1857
1887
|
var getCellCls = function getCellCls(cell) {
|
1858
|
-
return [resolveClassName('date-picker-cells-cell'), _defineProperty(_defineProperty(_defineProperty({}, resolveClassName('date-picker-cells-cell-selected'), cell.selected), resolveClassName('date-picker-cells-cell-disabled'), cell.disabled), resolveClassName('date-picker-cells-cell-range'), cell.range && !cell.start && !cell.end)];
|
1888
|
+
return [resolveClassName('date-picker-cells-cell'), _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, resolveClassName('date-picker-cells-cell-selected'), cell.selected), resolveClassName('date-picker-cells-cell-disabled'), cell.disabled), resolveClassName('date-picker-cells-cell-today'), cell.isCurrent), resolveClassName('date-picker-cells-cell-range'), cell.range && !cell.start && !cell.end)];
|
1859
1889
|
};
|
1860
1890
|
var handleClick = function handleClick(cell) {
|
1861
1891
|
if (cell.disabled || cell.type === 'weekLabel') {
|
@@ -1873,7 +1903,7 @@ var yearTableProps = {
|
|
1873
1903
|
return;
|
1874
1904
|
}
|
1875
1905
|
var newDate = cell.date;
|
1876
|
-
emit('
|
1906
|
+
emit('changeRange', newDate);
|
1877
1907
|
};
|
1878
1908
|
return {
|
1879
1909
|
cells: cells,
|
@@ -1942,7 +1972,7 @@ var datePickerProps = {
|
|
1942
1972
|
type: String,
|
1943
1973
|
"default": 'date',
|
1944
1974
|
validator: function validator(value) {
|
1945
|
-
var validList = ['year', 'month', 'monthrange', 'date', 'daterange', 'datetime', 'datetimerange', 'time', 'timerange'];
|
1975
|
+
var validList = ['year', 'yearrange', 'month', 'monthrange', 'date', 'daterange', 'datetime', 'datetimerange', 'time', 'timerange'];
|
1946
1976
|
if (validList.indexOf(value) < 0) {
|
1947
1977
|
console.error("type property is not valid: '".concat(value, "'"));
|
1948
1978
|
return false;
|
@@ -3519,6 +3549,7 @@ function date_range_objectSpread(e) { for (var r = 1; r < arguments.length; r++)
|
|
3519
3549
|
|
3520
3550
|
|
3521
3551
|
|
3552
|
+
|
3522
3553
|
// import MonthTable from '../base/month-table';
|
3523
3554
|
// import YearTable from '../base/year-table';
|
3524
3555
|
var dateRangePanelProps = {
|
@@ -3529,7 +3560,7 @@ var dateRangePanelProps = {
|
|
3529
3560
|
type: String,
|
3530
3561
|
"default": 'date',
|
3531
3562
|
validator: function validator(value) {
|
3532
|
-
var validList = ['year', 'month', 'monthrange', 'date', 'daterange', 'datetime', 'datetimerange', 'time', 'timerange'];
|
3563
|
+
var validList = ['year', 'yearrange', 'month', 'monthrange', 'date', 'daterange', 'datetime', 'datetimerange', 'time', 'timerange'];
|
3533
3564
|
if (validList.indexOf(value) < 0) {
|
3534
3565
|
console.error("type property is not valid: '".concat(value, "'"));
|
3535
3566
|
return false;
|
@@ -3617,7 +3648,14 @@ var dateRangePanelProps = {
|
|
3617
3648
|
minDate = _props$modelValue$map2[0],
|
3618
3649
|
maxDate = _props$modelValue$map2[1];
|
3619
3650
|
var leftPanelDate = props.startDate ? props.startDate : minDate;
|
3620
|
-
var rightPanelDate
|
3651
|
+
var rightPanelDate;
|
3652
|
+
if (props.type === 'monthrange') {
|
3653
|
+
rightPanelDate = new Date(leftPanelDate.getFullYear() + 1, leftPanelDate.getMonth(), 1);
|
3654
|
+
} else if (props.type === 'yearrange') {
|
3655
|
+
rightPanelDate = new Date(leftPanelDate.getFullYear() + 10, leftPanelDate.getMonth(), 1);
|
3656
|
+
} else {
|
3657
|
+
rightPanelDate = new Date(leftPanelDate.getFullYear(), leftPanelDate.getMonth() + 1, 1);
|
3658
|
+
}
|
3621
3659
|
var state = (0,external_vue_namespaceObject.reactive)({
|
3622
3660
|
currentView: props.selectionMode || 'date',
|
3623
3661
|
leftPickerTable: "".concat(props.selectionMode, "-table"),
|
@@ -3673,11 +3711,13 @@ var dateRangePanelProps = {
|
|
3673
3711
|
}
|
3674
3712
|
if (props.splitPanels) {
|
3675
3713
|
var otherPanel = panel === 'left' ? 'right' : 'left';
|
3676
|
-
if (panel === 'left' && state.leftPanelDate >= state.rightPanelDate) {
|
3677
|
-
changePanelDate(otherPanel, type, 1);
|
3714
|
+
if (panel === 'left' && (state.leftPanelDate >= state.rightPanelDate || Math.floor(state.leftPanelDate.getFullYear() / 10) * 10 === Math.floor(state.rightPanelDate.getFullYear() / 10) * 10)) {
|
3715
|
+
// changePanelDate(otherPanel, type, 1);
|
3716
|
+
changePanelDate(otherPanel, type, state.currentView === 'year' ? 10 : 1);
|
3678
3717
|
}
|
3679
|
-
if (panel === 'right' && state.rightPanelDate <= state.leftPanelDate) {
|
3680
|
-
changePanelDate(otherPanel, type, -1);
|
3718
|
+
if (panel === 'right' && (state.rightPanelDate <= state.leftPanelDate || Math.floor(state.leftPanelDate.getFullYear() / 10) * 10 === Math.floor(state.rightPanelDate.getFullYear() / 10) * 10)) {
|
3719
|
+
// changePanelDate(otherPanel, type, -1);
|
3720
|
+
changePanelDate(otherPanel, type, state.currentView === 'year' ? -10 : -1);
|
3681
3721
|
}
|
3682
3722
|
} else {
|
3683
3723
|
var _otherPanel = panel === 'left' ? 'right' : 'left';
|
@@ -3845,7 +3885,15 @@ var dateRangePanelProps = {
|
|
3845
3885
|
};
|
3846
3886
|
function setPanelDates(leftPanelDate) {
|
3847
3887
|
state.leftPanelDate = leftPanelDate;
|
3848
|
-
|
3888
|
+
// const rightPanelDate = new Date(leftPanelDate.getFullYear(), leftPanelDate.getMonth() + 1, 1);
|
3889
|
+
var rightPanelDate;
|
3890
|
+
if (props.type === 'monthrange') {
|
3891
|
+
rightPanelDate = new Date(leftPanelDate.getFullYear() + 1, leftPanelDate.getMonth(), 1);
|
3892
|
+
} else if (props.type === 'yearrange') {
|
3893
|
+
rightPanelDate = new Date(leftPanelDate.getFullYear() + 10, leftPanelDate.getMonth(), 1);
|
3894
|
+
} else {
|
3895
|
+
rightPanelDate = new Date(leftPanelDate.getFullYear(), leftPanelDate.getMonth() + 1, 1);
|
3896
|
+
}
|
3849
3897
|
var splitRightPanelDate = state.dates[1] ? state.dates[1].getTime() : state.dates[1];
|
3850
3898
|
state.rightPanelDate = props.splitPanels ? new Date(Math.max(splitRightPanelDate, rightPanelDate.getTime())) : rightPanelDate;
|
3851
3899
|
}
|
@@ -4056,12 +4104,12 @@ var dateRangePanelProps = {
|
|
4056
4104
|
"onClick": function onClick() {
|
4057
4105
|
return _this.leftDatePanelLabel.labels[0].handler;
|
4058
4106
|
}
|
4059
|
-
}, [this.leftDatePanelLabel.labels[0].label]), [[external_vue_namespaceObject.vShow, this.leftShowLabelFirst]]), this.leftDatePanelView === 'date' ? " ".concat(this.leftDatePanelLabel.separator, " ") : ' ', (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("span", {
|
4107
|
+
}, [this.type === 'yearrange' ? "".concat(Math.floor(this.leftDatePanelLabel.labels[0].label / 10) * 10, " - ").concat(Math.ceil(this.leftDatePanelLabel.labels[0].label / 10) * 10 - 1) : this.leftDatePanelLabel.labels[0].label]), [[external_vue_namespaceObject.vShow, this.leftShowLabelFirst]]), this.leftDatePanelView === 'date' ? " ".concat(this.leftDatePanelLabel.separator, " ") : ' ', (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("span", {
|
4060
4108
|
"class": this.resolveClassName('date-picker-header-label'),
|
4061
4109
|
"onClick": function onClick() {
|
4062
4110
|
return _this.leftDatePanelLabel.labels[1].handler;
|
4063
4111
|
}
|
4064
|
-
}, [this.leftDatePanelLabel.labels[1].label]), [[external_vue_namespaceObject.vShow, this.leftShowLabelSecond]])]) : '', this.splitPanels || this.leftPickerTable !== 'date-table' && this.leftPickerTable !== 'month-table' ? (0,external_vue_namespaceObject.createVNode)("span", {
|
4112
|
+
}, [this.leftDatePanelLabel.labels[1].label]), [[external_vue_namespaceObject.vShow, this.leftShowLabelSecond]])]) : '', this.splitPanels || this.leftPickerTable !== 'date-table' && this.leftPickerTable !== 'month-table' && this.leftPickerTable !== 'year-table' ? (0,external_vue_namespaceObject.createVNode)("span", {
|
4065
4113
|
"class": iconBtnCls('next', '-double'),
|
4066
4114
|
"onClick": function onClick() {
|
4067
4115
|
return _this.nextYear('left');
|
@@ -4107,6 +4155,17 @@ var dateRangePanelProps = {
|
|
4107
4155
|
"onChangeRange": _this.handleChangeRange,
|
4108
4156
|
"onPick": _this.panelPickerHandlers.left
|
4109
4157
|
}, null);
|
4158
|
+
case 'year-table':
|
4159
|
+
return (0,external_vue_namespaceObject.createVNode)(year_table, {
|
4160
|
+
"selectionMode": "range",
|
4161
|
+
"tableDate": _this.leftPanelDate,
|
4162
|
+
"disabledDate": _this.disabledDate,
|
4163
|
+
"rangeState": _this.rangeState,
|
4164
|
+
"modelValue": _this.preSelecting.left ? [_this.dates[0]] : _this.dates,
|
4165
|
+
"focusedDate": _this.focusedDate,
|
4166
|
+
"onChangeRange": _this.handleChangeRange,
|
4167
|
+
"onPick": _this.panelPickerHandlers.left
|
4168
|
+
}, null);
|
4110
4169
|
default:
|
4111
4170
|
return null;
|
4112
4171
|
}
|
@@ -4115,7 +4174,7 @@ var dateRangePanelProps = {
|
|
4115
4174
|
"style": "width: 261px;"
|
4116
4175
|
}, [(0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("div", {
|
4117
4176
|
"class": this.resolveClassName('date-picker-header')
|
4118
|
-
}, [this.splitPanels || this.rightPickerTable !== 'date-table' && this.rightPickerTable !== 'month-table' ? (0,external_vue_namespaceObject.createVNode)("span", {
|
4177
|
+
}, [this.splitPanels || this.rightPickerTable !== 'date-table' && this.rightPickerTable !== 'month-table' && this.rightPickerTable !== 'year-table' ? (0,external_vue_namespaceObject.createVNode)("span", {
|
4119
4178
|
"class": iconBtnCls('prev', '-double'),
|
4120
4179
|
"onClick": function onClick() {
|
4121
4180
|
return _this.prevYear('right');
|
@@ -4142,7 +4201,7 @@ var dateRangePanelProps = {
|
|
4142
4201
|
"onClick": function onClick() {
|
4143
4202
|
return _this.rightDatePanelLabel.labels[0].handler;
|
4144
4203
|
}
|
4145
|
-
}, [this.rightDatePanelLabel.labels[0].label]), [[external_vue_namespaceObject.vShow, this.rightShowLabelFirst]]), this.rightDatePanelView === 'date' ? " ".concat(this.rightDatePanelLabel.separator, " ") : ' ', (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("span", {
|
4204
|
+
}, [this.type === 'yearrange' ? "".concat(Math.floor(this.rightDatePanelLabel.labels[0].label / 10) * 10, " - ").concat(Math.ceil(this.rightDatePanelLabel.labels[0].label / 10) * 10 - 1) : this.rightDatePanelLabel.labels[0].label]), [[external_vue_namespaceObject.vShow, this.rightShowLabelFirst]]), this.rightDatePanelView === 'date' ? " ".concat(this.rightDatePanelLabel.separator, " ") : ' ', (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)("span", {
|
4146
4205
|
"class": this.resolveClassName('date-picker-header-label'),
|
4147
4206
|
"onClick": function onClick() {
|
4148
4207
|
return _this.rightDatePanelLabel.labels[1].handler;
|
@@ -4205,6 +4264,17 @@ var dateRangePanelProps = {
|
|
4205
4264
|
"onChangeRange": _this.handleChangeRange,
|
4206
4265
|
"onPick": _this.panelPickerHandlers.right
|
4207
4266
|
}, null);
|
4267
|
+
case 'year-table':
|
4268
|
+
return (0,external_vue_namespaceObject.createVNode)(year_table, {
|
4269
|
+
"selectionMode": "range",
|
4270
|
+
"tableDate": _this.rightPanelDate,
|
4271
|
+
"disabledDate": _this.disabledDate,
|
4272
|
+
"rangeState": _this.rangeState,
|
4273
|
+
"modelValue": _this.preSelecting.right ? [_this.dates[_this.dates.length - 1]] : _this.dates,
|
4274
|
+
"focusedDate": _this.focusedDate,
|
4275
|
+
"onChangeRange": _this.handleChangeRange,
|
4276
|
+
"onPick": _this.panelPickerHandlers.right
|
4277
|
+
}, null);
|
4208
4278
|
default:
|
4209
4279
|
return null;
|
4210
4280
|
}
|
@@ -4336,6 +4406,10 @@ function date_picker_objectSpread(e) { for (var r = 1; r < arguments.length; r++
|
|
4336
4406
|
if (_type.match(/^month/)) {
|
4337
4407
|
type = 'month';
|
4338
4408
|
}
|
4409
|
+
// 增加了 yearrange
|
4410
|
+
if (_type.match(/^year/)) {
|
4411
|
+
type = 'year';
|
4412
|
+
}
|
4339
4413
|
// return ['year', 'month', 'date', 'time'].indexOf(type) > -1 && type;
|
4340
4414
|
state.selectionMode = ['year', 'month', 'date', 'time'].indexOf(type) > -1 && type;
|
4341
4415
|
return state.selectionMode;
|
@@ -4367,7 +4441,7 @@ function date_picker_objectSpread(e) { for (var r = 1; r < arguments.length; r++
|
|
4367
4441
|
}) : formatDate(publicVModelValue.value, props.type, props.multiple, props.format);
|
4368
4442
|
});
|
4369
4443
|
var panel = (0,external_vue_namespaceObject.computed)(function () {
|
4370
|
-
var isRange = props.type === 'daterange' || props.type === 'datetimerange' || props.type === 'monthrange';
|
4444
|
+
var isRange = props.type === 'daterange' || props.type === 'datetimerange' || props.type === 'monthrange' || props.type === 'yearrange';
|
4371
4445
|
return isRange ? 'DateRangePanel' : 'DatePanel';
|
4372
4446
|
});
|
4373
4447
|
var opened = (0,external_vue_namespaceObject.computed)(function () {
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import type { ComputedPlacement } from '@popperjs/core';
|
2
2
|
import type { DatePickerProps } from './props';
|
3
3
|
export type DatePickerPlacementType = ComputedPlacement;
|
4
|
-
export type DatePickerTypeType = 'year' | 'month' | 'monthrange' | 'date' | 'daterange' | 'datetime' | 'datetimerange';
|
4
|
+
export type DatePickerTypeType = 'year' | 'yearrange' | 'month' | 'monthrange' | 'date' | 'daterange' | 'datetime' | 'datetimerange';
|
5
5
|
export type TimePickerTypeType = 'time' | 'timerange';
|
6
6
|
export type PickerTypeType = DatePickerTypeType | TimePickerTypeType;
|
7
7
|
export interface IDatePickerShortcut {
|
@@ -191,69 +191,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
191
191
|
leftPickerTable: import("vue").Ref<string>;
|
192
192
|
rightPickerTable: import("vue").Ref<string>;
|
193
193
|
leftPanelDate: import("vue").Ref<any>;
|
194
|
-
rightPanelDate: import("vue").Ref<
|
195
|
-
toString: () => string;
|
196
|
-
toDateString: () => string;
|
197
|
-
toTimeString: () => string;
|
198
|
-
toLocaleString: {
|
199
|
-
(): string;
|
200
|
-
(locales?: string | string[], options?: Intl.DateTimeFormatOptions): string;
|
201
|
-
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions): string;
|
202
|
-
};
|
203
|
-
toLocaleDateString: {
|
204
|
-
(): string;
|
205
|
-
(locales?: string | string[], options?: Intl.DateTimeFormatOptions): string;
|
206
|
-
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions): string;
|
207
|
-
};
|
208
|
-
toLocaleTimeString: {
|
209
|
-
(): string;
|
210
|
-
(locales?: string | string[], options?: Intl.DateTimeFormatOptions): string;
|
211
|
-
(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions): string;
|
212
|
-
};
|
213
|
-
valueOf: () => number;
|
214
|
-
getTime: () => number;
|
215
|
-
getFullYear: () => number;
|
216
|
-
getUTCFullYear: () => number;
|
217
|
-
getMonth: () => number;
|
218
|
-
getUTCMonth: () => number;
|
219
|
-
getDate: () => number;
|
220
|
-
getUTCDate: () => number;
|
221
|
-
getDay: () => number;
|
222
|
-
getUTCDay: () => number;
|
223
|
-
getHours: () => number;
|
224
|
-
getUTCHours: () => number;
|
225
|
-
getMinutes: () => number;
|
226
|
-
getUTCMinutes: () => number;
|
227
|
-
getSeconds: () => number;
|
228
|
-
getUTCSeconds: () => number;
|
229
|
-
getMilliseconds: () => number;
|
230
|
-
getUTCMilliseconds: () => number;
|
231
|
-
getTimezoneOffset: () => number;
|
232
|
-
setTime: (time: number) => number;
|
233
|
-
setMilliseconds: (ms: number) => number;
|
234
|
-
setUTCMilliseconds: (ms: number) => number;
|
235
|
-
setSeconds: (sec: number, ms?: number) => number;
|
236
|
-
setUTCSeconds: (sec: number, ms?: number) => number;
|
237
|
-
setMinutes: (min: number, sec?: number, ms?: number) => number;
|
238
|
-
setUTCMinutes: (min: number, sec?: number, ms?: number) => number;
|
239
|
-
setHours: (hours: number, min?: number, sec?: number, ms?: number) => number;
|
240
|
-
setUTCHours: (hours: number, min?: number, sec?: number, ms?: number) => number;
|
241
|
-
setDate: (date: number) => number;
|
242
|
-
setUTCDate: (date: number) => number;
|
243
|
-
setMonth: (month: number, date?: number) => number;
|
244
|
-
setUTCMonth: (month: number, date?: number) => number;
|
245
|
-
setFullYear: (year: number, month?: number, date?: number) => number;
|
246
|
-
setUTCFullYear: (year: number, month?: number, date?: number) => number;
|
247
|
-
toUTCString: () => string;
|
248
|
-
toISOString: () => string;
|
249
|
-
toJSON: (key?: any) => string;
|
250
|
-
[Symbol.toPrimitive]: {
|
251
|
-
(hint: "default"): string;
|
252
|
-
(hint: "string"): string;
|
253
|
-
(hint: "number"): number;
|
254
|
-
(hint: string): string | number;
|
255
|
-
};
|
256
|
-
}>;
|
194
|
+
rightPanelDate: import("vue").Ref<any>;
|
257
195
|
rangeState: import("vue").Ref<{
|
258
196
|
from: any;
|
259
197
|
to: any;
|
@@ -42,6 +42,10 @@ export declare const typeValueResolver: {
|
|
42
42
|
formatter: (value: any, format: any) => string;
|
43
43
|
parser: (text: any, format: any) => any;
|
44
44
|
};
|
45
|
+
yearrange: {
|
46
|
+
formatter: (value: any, format: any) => string;
|
47
|
+
parser: (text: any, format: any) => any[];
|
48
|
+
};
|
45
49
|
multiple: {
|
46
50
|
formatter(value: any, format: any): any;
|
47
51
|
parser(v: any, format: any): any;
|
package/lib/select/select.css
CHANGED
@@ -330,9 +330,8 @@
|
|
330
330
|
.bk-popover.bk-pop2-content.bk-select-popover .bk-select-content-wrapper .bk-select-option {
|
331
331
|
position: relative;
|
332
332
|
display: flex;
|
333
|
-
height: 32px;
|
333
|
+
min-height: 32px;
|
334
334
|
padding: 0 12px;
|
335
|
-
line-height: 32px;
|
336
335
|
color: #63656e;
|
337
336
|
text-align: left;
|
338
337
|
cursor: pointer;
|
package/lib/select/select.less
CHANGED
@@ -459,9 +459,8 @@
|
|
459
459
|
.bk-popover.bk-pop2-content.bk-select-popover .bk-select-content-wrapper .bk-select-option {
|
460
460
|
position: relative;
|
461
461
|
display: flex;
|
462
|
-
height: 32px;
|
462
|
+
min-height: 32px;
|
463
463
|
padding: 0 12px;
|
464
|
-
line-height: 32px;
|
465
464
|
color: #63656e;
|
466
465
|
text-align: left;
|
467
466
|
cursor: pointer;
|