assui 2.1.3 → 2.1.6
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/label-customize-range-picker/index.d.ts +4 -1
- package/es/label-customize-range-picker/index.js +33 -13
- package/es/label-customize-range-picker/style/index.d.ts +1 -0
- package/es/label-customize-range-picker/style/index.js +1 -0
- package/es/label-range-picker/index.js +8 -12
- package/lib/label-customize-range-picker/index.d.ts +4 -1
- package/lib/label-customize-range-picker/index.js +35 -13
- package/lib/label-customize-range-picker/style/index.d.ts +1 -0
- package/lib/label-customize-range-picker/style/index.js +2 -0
- package/lib/label-range-picker/index.js +9 -12
- package/package.json +3 -3
- package/es/customize-range-picker/defaultRadioList.d.ts +0 -24
- package/es/customize-range-picker/defaultRadioList.js +0 -79
- package/es/customize-range-picker/index.d.ts +0 -15
- package/es/customize-range-picker/index.js +0 -172
- package/es/customize-range-picker/style/index.css +0 -1821
- package/es/customize-range-picker/style/index.d.ts +0 -1
- package/es/customize-range-picker/style/index.js +0 -1
- package/es/customize-range-picker/style/index.less +0 -46
- package/lib/customize-range-picker/defaultRadioList.d.ts +0 -24
- package/lib/customize-range-picker/defaultRadioList.js +0 -93
- package/lib/customize-range-picker/index.d.ts +0 -15
- package/lib/customize-range-picker/index.js +0 -228
- package/lib/customize-range-picker/style/index.css +0 -1821
- package/lib/customize-range-picker/style/index.d.ts +0 -1
- package/lib/customize-range-picker/style/index.js +0 -7
- package/lib/customize-range-picker/style/index.less +0 -46
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
import type { Moment } from 'moment';
|
|
2
3
|
import type { dateTypeEnum } from './defaultRadioList';
|
|
3
4
|
import type { LabelRangePickerProps } from '../label-range-picker';
|
|
@@ -6,9 +7,11 @@ export declare type RadioListType = {
|
|
|
6
7
|
text: string;
|
|
7
8
|
value: [Moment, Moment];
|
|
8
9
|
};
|
|
9
|
-
export interface LabelCustomizeRangePickerProps extends LabelRangePickerProps {
|
|
10
|
+
export interface LabelCustomizeRangePickerProps extends Omit<LabelRangePickerProps, 'label'> {
|
|
10
11
|
radioList?: RadioListType[];
|
|
11
12
|
customizeTimeList?: dateTypeEnum[];
|
|
13
|
+
rangePickerType?: 'label' | 'origin';
|
|
14
|
+
label?: React.ReactNode;
|
|
12
15
|
}
|
|
13
16
|
declare const LabelCustomizeRangePicker: (props: LabelCustomizeRangePickerProps) => JSX.Element;
|
|
14
17
|
export default LabelCustomizeRangePicker;
|
|
@@ -57,26 +57,35 @@ var __read = this && this.__read || function (o, n) {
|
|
|
57
57
|
import React, { useState, useEffect } from 'react';
|
|
58
58
|
import Radio from 'antd/lib/radio';
|
|
59
59
|
import Checkbox from 'antd/lib/checkbox';
|
|
60
|
+
import DatePicker from 'antd/lib/date-picker';
|
|
60
61
|
import useControllableValue from 'ahooks/lib/useControllableValue';
|
|
61
62
|
import defaultRadioList from './defaultRadioList';
|
|
62
63
|
import LabelRangePicker from '../label-range-picker';
|
|
64
|
+
var RangePicker = DatePicker.RangePicker;
|
|
63
65
|
|
|
64
66
|
var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
65
67
|
var customizeTimeList = props.customizeTimeList,
|
|
66
68
|
radioList = props.radioList,
|
|
67
|
-
|
|
69
|
+
_a = props.rangePickerType,
|
|
70
|
+
rangePickerType = _a === void 0 ? 'label' : _a,
|
|
71
|
+
label = props.label,
|
|
72
|
+
options = __rest(props, ["customizeTimeList", "radioList", "rangePickerType", "label"]);
|
|
68
73
|
|
|
69
|
-
var
|
|
70
|
-
date =
|
|
71
|
-
setDate =
|
|
74
|
+
var _b = __read(useControllableValue(props), 2),
|
|
75
|
+
date = _b[0],
|
|
76
|
+
setDate = _b[1];
|
|
72
77
|
|
|
73
|
-
var
|
|
74
|
-
isVisiblePanel =
|
|
75
|
-
setIsVisiblePanel =
|
|
78
|
+
var _c = __read(useState(false), 2),
|
|
79
|
+
isVisiblePanel = _c[0],
|
|
80
|
+
setIsVisiblePanel = _c[1];
|
|
76
81
|
|
|
77
|
-
var
|
|
78
|
-
radioKey =
|
|
79
|
-
setRadioKey =
|
|
82
|
+
var _d = __read(useState(), 2),
|
|
83
|
+
radioKey = _d[0],
|
|
84
|
+
setRadioKey = _d[1];
|
|
85
|
+
|
|
86
|
+
var _e = __read(useState(false), 2),
|
|
87
|
+
open = _e[0],
|
|
88
|
+
setOpen = _e[1];
|
|
80
89
|
|
|
81
90
|
var dataSource = radioList !== null && radioList !== void 0 ? radioList : defaultRadioList;
|
|
82
91
|
useEffect(function () {
|
|
@@ -117,6 +126,7 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
117
126
|
return item.key === value;
|
|
118
127
|
});
|
|
119
128
|
setDate(selectRadioInfo === null || selectRadioInfo === void 0 ? void 0 : selectRadioInfo.value);
|
|
129
|
+
setOpen(false);
|
|
120
130
|
};
|
|
121
131
|
|
|
122
132
|
var list = radioList !== null && radioList !== void 0 ? radioList : defaultRadioList.filter(function (item) {
|
|
@@ -152,11 +162,21 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
152
162
|
}))));
|
|
153
163
|
};
|
|
154
164
|
|
|
155
|
-
|
|
165
|
+
var onOpenChange = function onOpenChange(nextOpen) {
|
|
166
|
+
setOpen(nextOpen);
|
|
167
|
+
};
|
|
168
|
+
|
|
169
|
+
var baseOptions = {
|
|
156
170
|
value: date,
|
|
157
171
|
onChange: onDateChange,
|
|
158
|
-
|
|
159
|
-
|
|
172
|
+
open: open,
|
|
173
|
+
onOpenChange: onOpenChange,
|
|
174
|
+
panelRender: panelRender,
|
|
175
|
+
allowClear: false
|
|
176
|
+
};
|
|
177
|
+
return rangePickerType === 'label' ? /*#__PURE__*/React.createElement(LabelRangePicker, __assign({
|
|
178
|
+
label: label
|
|
179
|
+
}, baseOptions, options)) : /*#__PURE__*/React.createElement(RangePicker, __assign({}, baseOptions, options));
|
|
160
180
|
};
|
|
161
181
|
|
|
162
182
|
export default LabelCustomizeRangePicker;
|
|
@@ -45,6 +45,7 @@ import React from 'react';
|
|
|
45
45
|
import useControllableValue from 'ahooks/lib/useControllableValue';
|
|
46
46
|
import DatePicker from 'antd/lib/date-picker';
|
|
47
47
|
import classNames from 'classnames';
|
|
48
|
+
import omit from 'lodash/omit';
|
|
48
49
|
import CalendarOutlined from 'a-icons/lib/CalendarOutlined';
|
|
49
50
|
var RangePicker = DatePicker.RangePicker;
|
|
50
51
|
|
|
@@ -55,10 +56,10 @@ var LabelDatePicker = function LabelDatePicker(props) {
|
|
|
55
56
|
|
|
56
57
|
var _a = __read(useControllableValue(props, {
|
|
57
58
|
valuePropName: 'open',
|
|
58
|
-
trigger: '
|
|
59
|
+
trigger: 'onOpenChange'
|
|
59
60
|
}), 2),
|
|
60
61
|
open = _a[0],
|
|
61
|
-
|
|
62
|
+
onOpenChange = _a[1];
|
|
62
63
|
|
|
63
64
|
var _b = __read(useControllableValue(props), 2),
|
|
64
65
|
value = _b[0],
|
|
@@ -72,18 +73,14 @@ var LabelDatePicker = function LabelDatePicker(props) {
|
|
|
72
73
|
var _a;
|
|
73
74
|
|
|
74
75
|
if (!open) {
|
|
75
|
-
|
|
76
|
+
onOpenChange(!open);
|
|
76
77
|
}
|
|
77
78
|
|
|
78
79
|
(_a = datePickerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
79
80
|
};
|
|
80
81
|
|
|
81
|
-
var
|
|
82
|
-
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
var onOpenChange = function onOpenChange(nextOpen) {
|
|
86
|
-
setOpen(nextOpen);
|
|
82
|
+
var handleOpenChange = function handleOpenChange(nextOpen) {
|
|
83
|
+
onOpenChange(nextOpen);
|
|
87
84
|
};
|
|
88
85
|
|
|
89
86
|
return /*#__PURE__*/React.createElement("div", {
|
|
@@ -94,13 +91,12 @@ var LabelDatePicker = function LabelDatePicker(props) {
|
|
|
94
91
|
}, /*#__PURE__*/React.createElement(RangePicker, __assign({
|
|
95
92
|
format: "YYYY.MM.DD",
|
|
96
93
|
allowEmpty: [true, true]
|
|
97
|
-
}, props, {
|
|
94
|
+
}, omit(props, 'onOpenChange'), {
|
|
98
95
|
separator: "\u2013",
|
|
99
96
|
open: open,
|
|
100
97
|
onChange: handleChange,
|
|
101
98
|
ref: datePickerRef,
|
|
102
|
-
onOpenChange:
|
|
103
|
-
onBlur: onBlur,
|
|
99
|
+
onOpenChange: handleOpenChange,
|
|
104
100
|
suffixIcon: /*#__PURE__*/React.createElement(CalendarOutlined, null)
|
|
105
101
|
})), /*#__PURE__*/React.createElement("label", {
|
|
106
102
|
className: "label-range-picker-text",
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
import type { Moment } from 'moment';
|
|
2
3
|
import type { dateTypeEnum } from './defaultRadioList';
|
|
3
4
|
import type { LabelRangePickerProps } from '../label-range-picker';
|
|
@@ -6,9 +7,11 @@ export declare type RadioListType = {
|
|
|
6
7
|
text: string;
|
|
7
8
|
value: [Moment, Moment];
|
|
8
9
|
};
|
|
9
|
-
export interface LabelCustomizeRangePickerProps extends LabelRangePickerProps {
|
|
10
|
+
export interface LabelCustomizeRangePickerProps extends Omit<LabelRangePickerProps, 'label'> {
|
|
10
11
|
radioList?: RadioListType[];
|
|
11
12
|
customizeTimeList?: dateTypeEnum[];
|
|
13
|
+
rangePickerType?: 'label' | 'origin';
|
|
14
|
+
label?: React.ReactNode;
|
|
12
15
|
}
|
|
13
16
|
declare const LabelCustomizeRangePicker: (props: LabelCustomizeRangePickerProps) => JSX.Element;
|
|
14
17
|
export default LabelCustomizeRangePicker;
|
|
@@ -112,28 +112,39 @@ var radio_1 = __importDefault(require("antd/lib/radio"));
|
|
|
112
112
|
|
|
113
113
|
var checkbox_1 = __importDefault(require("antd/lib/checkbox"));
|
|
114
114
|
|
|
115
|
+
var date_picker_1 = __importDefault(require("antd/lib/date-picker"));
|
|
116
|
+
|
|
115
117
|
var useControllableValue_1 = __importDefault(require("ahooks/lib/useControllableValue"));
|
|
116
118
|
|
|
117
119
|
var defaultRadioList_1 = __importDefault(require("./defaultRadioList"));
|
|
118
120
|
|
|
119
121
|
var label_range_picker_1 = __importDefault(require("../label-range-picker"));
|
|
120
122
|
|
|
123
|
+
var RangePicker = date_picker_1["default"].RangePicker;
|
|
124
|
+
|
|
121
125
|
var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
122
126
|
var customizeTimeList = props.customizeTimeList,
|
|
123
127
|
radioList = props.radioList,
|
|
124
|
-
|
|
128
|
+
_a = props.rangePickerType,
|
|
129
|
+
rangePickerType = _a === void 0 ? 'label' : _a,
|
|
130
|
+
label = props.label,
|
|
131
|
+
options = __rest(props, ["customizeTimeList", "radioList", "rangePickerType", "label"]);
|
|
132
|
+
|
|
133
|
+
var _b = __read((0, useControllableValue_1["default"])(props), 2),
|
|
134
|
+
date = _b[0],
|
|
135
|
+
setDate = _b[1];
|
|
125
136
|
|
|
126
|
-
var
|
|
127
|
-
|
|
128
|
-
|
|
137
|
+
var _c = __read((0, react_1.useState)(false), 2),
|
|
138
|
+
isVisiblePanel = _c[0],
|
|
139
|
+
setIsVisiblePanel = _c[1];
|
|
129
140
|
|
|
130
|
-
var
|
|
131
|
-
|
|
132
|
-
|
|
141
|
+
var _d = __read((0, react_1.useState)(), 2),
|
|
142
|
+
radioKey = _d[0],
|
|
143
|
+
setRadioKey = _d[1];
|
|
133
144
|
|
|
134
|
-
var
|
|
135
|
-
|
|
136
|
-
|
|
145
|
+
var _e = __read((0, react_1.useState)(false), 2),
|
|
146
|
+
open = _e[0],
|
|
147
|
+
setOpen = _e[1];
|
|
137
148
|
|
|
138
149
|
var dataSource = radioList !== null && radioList !== void 0 ? radioList : defaultRadioList_1["default"];
|
|
139
150
|
(0, react_1.useEffect)(function () {
|
|
@@ -174,6 +185,7 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
174
185
|
return item.key === value;
|
|
175
186
|
});
|
|
176
187
|
setDate(selectRadioInfo === null || selectRadioInfo === void 0 ? void 0 : selectRadioInfo.value);
|
|
188
|
+
setOpen(false);
|
|
177
189
|
};
|
|
178
190
|
|
|
179
191
|
var list = radioList !== null && radioList !== void 0 ? radioList : defaultRadioList_1["default"].filter(function (item) {
|
|
@@ -209,11 +221,21 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
209
221
|
}))));
|
|
210
222
|
};
|
|
211
223
|
|
|
212
|
-
|
|
224
|
+
var onOpenChange = function onOpenChange(nextOpen) {
|
|
225
|
+
setOpen(nextOpen);
|
|
226
|
+
};
|
|
227
|
+
|
|
228
|
+
var baseOptions = {
|
|
213
229
|
value: date,
|
|
214
230
|
onChange: onDateChange,
|
|
215
|
-
|
|
216
|
-
|
|
231
|
+
open: open,
|
|
232
|
+
onOpenChange: onOpenChange,
|
|
233
|
+
panelRender: panelRender,
|
|
234
|
+
allowClear: false
|
|
235
|
+
};
|
|
236
|
+
return rangePickerType === 'label' ? react_1["default"].createElement(label_range_picker_1["default"], __assign({
|
|
237
|
+
label: label
|
|
238
|
+
}, baseOptions, options)) : react_1["default"].createElement(RangePicker, __assign({}, baseOptions, options));
|
|
217
239
|
};
|
|
218
240
|
|
|
219
241
|
exports["default"] = LabelCustomizeRangePicker;
|
|
@@ -61,6 +61,8 @@ var date_picker_1 = __importDefault(require("antd/lib/date-picker"));
|
|
|
61
61
|
|
|
62
62
|
var classnames_1 = __importDefault(require("classnames"));
|
|
63
63
|
|
|
64
|
+
var omit_1 = __importDefault(require("lodash/omit"));
|
|
65
|
+
|
|
64
66
|
var CalendarOutlined_1 = __importDefault(require("a-icons/lib/CalendarOutlined"));
|
|
65
67
|
|
|
66
68
|
var RangePicker = date_picker_1["default"].RangePicker;
|
|
@@ -72,10 +74,10 @@ var LabelDatePicker = function LabelDatePicker(props) {
|
|
|
72
74
|
|
|
73
75
|
var _a = __read((0, useControllableValue_1["default"])(props, {
|
|
74
76
|
valuePropName: 'open',
|
|
75
|
-
trigger: '
|
|
77
|
+
trigger: 'onOpenChange'
|
|
76
78
|
}), 2),
|
|
77
79
|
open = _a[0],
|
|
78
|
-
|
|
80
|
+
onOpenChange = _a[1];
|
|
79
81
|
|
|
80
82
|
var _b = __read((0, useControllableValue_1["default"])(props), 2),
|
|
81
83
|
value = _b[0],
|
|
@@ -89,18 +91,14 @@ var LabelDatePicker = function LabelDatePicker(props) {
|
|
|
89
91
|
var _a;
|
|
90
92
|
|
|
91
93
|
if (!open) {
|
|
92
|
-
|
|
94
|
+
onOpenChange(!open);
|
|
93
95
|
}
|
|
94
96
|
|
|
95
97
|
(_a = datePickerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
96
98
|
};
|
|
97
99
|
|
|
98
|
-
var
|
|
99
|
-
|
|
100
|
-
};
|
|
101
|
-
|
|
102
|
-
var onOpenChange = function onOpenChange(nextOpen) {
|
|
103
|
-
setOpen(nextOpen);
|
|
100
|
+
var handleOpenChange = function handleOpenChange(nextOpen) {
|
|
101
|
+
onOpenChange(nextOpen);
|
|
104
102
|
};
|
|
105
103
|
|
|
106
104
|
return react_1["default"].createElement("div", {
|
|
@@ -111,13 +109,12 @@ var LabelDatePicker = function LabelDatePicker(props) {
|
|
|
111
109
|
}, react_1["default"].createElement(RangePicker, __assign({
|
|
112
110
|
format: "YYYY.MM.DD",
|
|
113
111
|
allowEmpty: [true, true]
|
|
114
|
-
}, props, {
|
|
112
|
+
}, (0, omit_1["default"])(props, 'onOpenChange'), {
|
|
115
113
|
separator: "\u2013",
|
|
116
114
|
open: open,
|
|
117
115
|
onChange: handleChange,
|
|
118
116
|
ref: datePickerRef,
|
|
119
|
-
onOpenChange:
|
|
120
|
-
onBlur: onBlur,
|
|
117
|
+
onOpenChange: handleOpenChange,
|
|
121
118
|
suffixIcon: react_1["default"].createElement(CalendarOutlined_1["default"], null)
|
|
122
119
|
})), react_1["default"].createElement("label", {
|
|
123
120
|
className: "label-range-picker-text",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "assui",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.6",
|
|
4
4
|
"description": "react ui library",
|
|
5
5
|
"author": "jason <usochen@gmail.com>",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"@ahooksjs/use-url-state": "^2.5.8",
|
|
34
34
|
"@tinymce/tinymce-react": "^3.13.0",
|
|
35
35
|
"@types/react-beautiful-dnd": "^13.1.2",
|
|
36
|
-
"a-icons": "^1.0.
|
|
36
|
+
"a-icons": "^1.0.69",
|
|
37
37
|
"aa-utils": "^2.0.24",
|
|
38
38
|
"ahooks": "^3.0.8",
|
|
39
39
|
"bignumber.js": "^9.0.1",
|
|
@@ -70,5 +70,5 @@
|
|
|
70
70
|
"node": ">=10.0.0"
|
|
71
71
|
},
|
|
72
72
|
"license": "MIT",
|
|
73
|
-
"gitHead": "
|
|
73
|
+
"gitHead": "1e1d4d0029d45eddf5a3092ec206e95f9460ad89"
|
|
74
74
|
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { Moment } from 'moment';
|
|
2
|
-
export declare enum dateTypeEnum {
|
|
3
|
-
TODAY = 1,
|
|
4
|
-
YESTERDAY = 2,
|
|
5
|
-
WEEK = 3,
|
|
6
|
-
LAST_WEEK = 4,
|
|
7
|
-
MONTH = 5,
|
|
8
|
-
LAST_MONTH = 6,
|
|
9
|
-
QUARTER = 7,
|
|
10
|
-
LAST_QUARTER = 8,
|
|
11
|
-
BEFORE_7_DAY = 9,
|
|
12
|
-
BEFORE_14_DAY = 10,
|
|
13
|
-
BEFORE_30_DAY = 11,
|
|
14
|
-
BEFORE_90_DAY = 12,
|
|
15
|
-
BEFORE_180_DAY = 13,
|
|
16
|
-
BEFORE_365_DAY = 14
|
|
17
|
-
}
|
|
18
|
-
export declare type RadioListType = {
|
|
19
|
-
key: string | number | dateTypeEnum;
|
|
20
|
-
text: string;
|
|
21
|
-
value: [Moment, Moment];
|
|
22
|
-
};
|
|
23
|
-
declare const defaultRadioList: RadioListType[];
|
|
24
|
-
export default defaultRadioList;
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import moment from 'moment';
|
|
2
|
-
var now = moment();
|
|
3
|
-
export var dateTypeEnum;
|
|
4
|
-
|
|
5
|
-
(function (dateTypeEnum) {
|
|
6
|
-
dateTypeEnum[dateTypeEnum["TODAY"] = 1] = "TODAY";
|
|
7
|
-
dateTypeEnum[dateTypeEnum["YESTERDAY"] = 2] = "YESTERDAY";
|
|
8
|
-
dateTypeEnum[dateTypeEnum["WEEK"] = 3] = "WEEK";
|
|
9
|
-
dateTypeEnum[dateTypeEnum["LAST_WEEK"] = 4] = "LAST_WEEK";
|
|
10
|
-
dateTypeEnum[dateTypeEnum["MONTH"] = 5] = "MONTH";
|
|
11
|
-
dateTypeEnum[dateTypeEnum["LAST_MONTH"] = 6] = "LAST_MONTH";
|
|
12
|
-
dateTypeEnum[dateTypeEnum["QUARTER"] = 7] = "QUARTER";
|
|
13
|
-
dateTypeEnum[dateTypeEnum["LAST_QUARTER"] = 8] = "LAST_QUARTER";
|
|
14
|
-
dateTypeEnum[dateTypeEnum["BEFORE_7_DAY"] = 9] = "BEFORE_7_DAY";
|
|
15
|
-
dateTypeEnum[dateTypeEnum["BEFORE_14_DAY"] = 10] = "BEFORE_14_DAY";
|
|
16
|
-
dateTypeEnum[dateTypeEnum["BEFORE_30_DAY"] = 11] = "BEFORE_30_DAY";
|
|
17
|
-
dateTypeEnum[dateTypeEnum["BEFORE_90_DAY"] = 12] = "BEFORE_90_DAY";
|
|
18
|
-
dateTypeEnum[dateTypeEnum["BEFORE_180_DAY"] = 13] = "BEFORE_180_DAY";
|
|
19
|
-
dateTypeEnum[dateTypeEnum["BEFORE_365_DAY"] = 14] = "BEFORE_365_DAY";
|
|
20
|
-
})(dateTypeEnum || (dateTypeEnum = {}));
|
|
21
|
-
|
|
22
|
-
var defaultRadioList = [{
|
|
23
|
-
key: dateTypeEnum.TODAY,
|
|
24
|
-
text: '今日',
|
|
25
|
-
value: [now.clone().startOf('day'), now.clone().endOf('day')]
|
|
26
|
-
}, {
|
|
27
|
-
key: dateTypeEnum.YESTERDAY,
|
|
28
|
-
text: '昨日',
|
|
29
|
-
value: [now.clone().subtract(1, 'day').startOf('day'), now.clone().subtract(1, 'day').endOf('day')]
|
|
30
|
-
}, {
|
|
31
|
-
key: dateTypeEnum.WEEK,
|
|
32
|
-
text: '本周',
|
|
33
|
-
value: [now.clone().startOf('week'), now.clone().endOf('week')]
|
|
34
|
-
}, {
|
|
35
|
-
key: dateTypeEnum.LAST_WEEK,
|
|
36
|
-
text: '上周',
|
|
37
|
-
value: [now.clone().subtract(1, 'week').startOf('week'), now.clone().subtract(1, 'week').endOf('week')]
|
|
38
|
-
}, {
|
|
39
|
-
key: dateTypeEnum.MONTH,
|
|
40
|
-
text: '本月',
|
|
41
|
-
value: [now.clone().startOf('month'), now.clone().endOf('month')]
|
|
42
|
-
}, {
|
|
43
|
-
key: dateTypeEnum.LAST_MONTH,
|
|
44
|
-
text: '上月',
|
|
45
|
-
value: [now.clone().subtract(1, 'month').startOf('month'), now.clone().subtract(1, 'month').endOf('month')]
|
|
46
|
-
}, {
|
|
47
|
-
key: dateTypeEnum.QUARTER,
|
|
48
|
-
text: '本季度',
|
|
49
|
-
value: [now.clone().startOf('quarter'), now.clone().endOf('quarter')]
|
|
50
|
-
}, {
|
|
51
|
-
key: dateTypeEnum.LAST_QUARTER,
|
|
52
|
-
text: '上季度',
|
|
53
|
-
value: [now.clone().subtract(1, 'quarter').startOf('quarter'), now.clone().subtract(1, 'quarter').endOf('quarter')]
|
|
54
|
-
}, {
|
|
55
|
-
key: dateTypeEnum.BEFORE_7_DAY,
|
|
56
|
-
text: '最近7天',
|
|
57
|
-
value: [now.clone().subtract(6, 'day').startOf('day'), now.endOf('day')]
|
|
58
|
-
}, {
|
|
59
|
-
key: dateTypeEnum.BEFORE_14_DAY,
|
|
60
|
-
text: '最近14天',
|
|
61
|
-
value: [now.clone().subtract(13, 'day').startOf('day'), now.endOf('day')]
|
|
62
|
-
}, {
|
|
63
|
-
key: dateTypeEnum.BEFORE_30_DAY,
|
|
64
|
-
text: '最近30天',
|
|
65
|
-
value: [now.clone().subtract(29, 'day').startOf('day'), now.endOf('day')]
|
|
66
|
-
}, {
|
|
67
|
-
key: dateTypeEnum.BEFORE_90_DAY,
|
|
68
|
-
text: '最近90天',
|
|
69
|
-
value: [now.clone().subtract(89, 'day').startOf('day'), now.endOf('day')]
|
|
70
|
-
}, {
|
|
71
|
-
key: dateTypeEnum.BEFORE_180_DAY,
|
|
72
|
-
text: '最近180天',
|
|
73
|
-
value: [now.clone().subtract(179, 'day').startOf('day'), now.endOf('day')]
|
|
74
|
-
}, {
|
|
75
|
-
key: dateTypeEnum.BEFORE_365_DAY,
|
|
76
|
-
text: '最近365天',
|
|
77
|
-
value: [now.clone().subtract(364, 'day').startOf('day'), now.endOf('day')]
|
|
78
|
-
}];
|
|
79
|
-
export default defaultRadioList;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import type { Moment } from 'moment';
|
|
3
|
-
import type { RangePickerProps } from 'antd/lib/date-picker';
|
|
4
|
-
import type { dateTypeEnum } from './defaultRadioList';
|
|
5
|
-
export declare type RadioListType = {
|
|
6
|
-
key: string | number | dateTypeEnum;
|
|
7
|
-
text: string;
|
|
8
|
-
value: [Moment, Moment];
|
|
9
|
-
};
|
|
10
|
-
export interface CustomizeRangePickerProps extends Omit<RangePickerProps, ''> {
|
|
11
|
-
customizeTimeList?: dateTypeEnum[];
|
|
12
|
-
radioList?: RadioListType[];
|
|
13
|
-
}
|
|
14
|
-
declare const CustomizeRangePicker: React.FC<CustomizeRangePickerProps>;
|
|
15
|
-
export default CustomizeRangePicker;
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
var __assign = this && this.__assign || function () {
|
|
2
|
-
__assign = Object.assign || function (t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
|
|
6
|
-
for (var p in s) {
|
|
7
|
-
if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
return t;
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
return __assign.apply(this, arguments);
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
var __rest = this && this.__rest || function (s, e) {
|
|
18
|
-
var t = {};
|
|
19
|
-
|
|
20
|
-
for (var p in s) {
|
|
21
|
-
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
25
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
26
|
-
}
|
|
27
|
-
return t;
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
var __read = this && this.__read || function (o, n) {
|
|
31
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
32
|
-
if (!m) return o;
|
|
33
|
-
var i = m.call(o),
|
|
34
|
-
r,
|
|
35
|
-
ar = [],
|
|
36
|
-
e;
|
|
37
|
-
|
|
38
|
-
try {
|
|
39
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {
|
|
40
|
-
ar.push(r.value);
|
|
41
|
-
}
|
|
42
|
-
} catch (error) {
|
|
43
|
-
e = {
|
|
44
|
-
error: error
|
|
45
|
-
};
|
|
46
|
-
} finally {
|
|
47
|
-
try {
|
|
48
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
49
|
-
} finally {
|
|
50
|
-
if (e) throw e.error;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
return ar;
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
import React, { useState, useEffect } from 'react';
|
|
58
|
-
import { Radio, DatePicker, Checkbox } from 'antd';
|
|
59
|
-
import { useControllableValue } from 'ahooks';
|
|
60
|
-
import defaultRadioList from './defaultRadioList';
|
|
61
|
-
var RangePicker = DatePicker.RangePicker;
|
|
62
|
-
|
|
63
|
-
var CustomizeRangePicker = function CustomizeRangePicker(props) {
|
|
64
|
-
var customizeTimeList = props.customizeTimeList,
|
|
65
|
-
radioList = props.radioList,
|
|
66
|
-
options = __rest(props, ["customizeTimeList", "radioList"]);
|
|
67
|
-
|
|
68
|
-
var _a = __read(useControllableValue(props), 2),
|
|
69
|
-
date = _a[0],
|
|
70
|
-
setDate = _a[1];
|
|
71
|
-
|
|
72
|
-
var _b = __read(useState(false), 2),
|
|
73
|
-
open = _b[0],
|
|
74
|
-
setOpen = _b[1];
|
|
75
|
-
|
|
76
|
-
var _c = __read(useState(false), 2),
|
|
77
|
-
isVisiblePanel = _c[0],
|
|
78
|
-
setIsVisiblePanel = _c[1];
|
|
79
|
-
|
|
80
|
-
var _d = __read(useState(), 2),
|
|
81
|
-
radioKey = _d[0],
|
|
82
|
-
setRadioKey = _d[1];
|
|
83
|
-
|
|
84
|
-
var dataSource = radioList !== null && radioList !== void 0 ? radioList : defaultRadioList;
|
|
85
|
-
useEffect(function () {
|
|
86
|
-
var foundItem = dataSource.find(function (item) {
|
|
87
|
-
if (!date) return false;
|
|
88
|
-
|
|
89
|
-
var _a = __read(item.value, 2),
|
|
90
|
-
startTime = _a[0],
|
|
91
|
-
endTime = _a[1];
|
|
92
|
-
|
|
93
|
-
var _b = __read(date || [], 2),
|
|
94
|
-
defaultStartTime = _b[0],
|
|
95
|
-
defaultEndTime = _b[1];
|
|
96
|
-
|
|
97
|
-
if (startTime.isSame(defaultStartTime, 'day') && endTime.isSame(defaultEndTime, 'day')) {
|
|
98
|
-
return true;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
return false;
|
|
102
|
-
});
|
|
103
|
-
var data = foundItem ? foundItem.key : null;
|
|
104
|
-
setRadioKey(data);
|
|
105
|
-
}, [date]);
|
|
106
|
-
|
|
107
|
-
var onDiyTimeChange = function onDiyTimeChange(event) {
|
|
108
|
-
var checked = event.target.checked;
|
|
109
|
-
setIsVisiblePanel(checked);
|
|
110
|
-
};
|
|
111
|
-
|
|
112
|
-
var onRadioChange = function onRadioChange(event) {
|
|
113
|
-
var value = event.target.value;
|
|
114
|
-
setRadioKey(value);
|
|
115
|
-
var selectRadioInfo = dataSource.find(function (item) {
|
|
116
|
-
return item.key === value;
|
|
117
|
-
});
|
|
118
|
-
|
|
119
|
-
if (selectRadioInfo) {
|
|
120
|
-
setDate(selectRadioInfo === null || selectRadioInfo === void 0 ? void 0 : selectRadioInfo.value);
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
setOpen(false);
|
|
124
|
-
};
|
|
125
|
-
|
|
126
|
-
var onOpenChange = function onOpenChange(nextOpen) {
|
|
127
|
-
setOpen(nextOpen);
|
|
128
|
-
};
|
|
129
|
-
|
|
130
|
-
var list = radioList !== null && radioList !== void 0 ? radioList : defaultRadioList.filter(function (item) {
|
|
131
|
-
return customizeTimeList ? customizeTimeList.includes(item.key) : true;
|
|
132
|
-
});
|
|
133
|
-
|
|
134
|
-
var panelRender = function panelRender(panel) {
|
|
135
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
136
|
-
className: "customize-range-picker-panel"
|
|
137
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
138
|
-
className: "check-wrapper"
|
|
139
|
-
}, /*#__PURE__*/React.createElement("span", {
|
|
140
|
-
className: "customize-select"
|
|
141
|
-
}, /*#__PURE__*/React.createElement(Checkbox, {
|
|
142
|
-
onChange: onDiyTimeChange
|
|
143
|
-
}), /*#__PURE__*/React.createElement("span", {
|
|
144
|
-
className: "customize-select-text"
|
|
145
|
-
}, "\u81EA\u5B9A\u4E49\u65F6\u95F4"))), isVisiblePanel ? /*#__PURE__*/React.createElement("div", {
|
|
146
|
-
className: "panel"
|
|
147
|
-
}, panel) : /*#__PURE__*/React.createElement("div", {
|
|
148
|
-
className: "pick-box"
|
|
149
|
-
}, /*#__PURE__*/React.createElement(Radio.Group, {
|
|
150
|
-
onChange: onRadioChange,
|
|
151
|
-
value: radioKey
|
|
152
|
-
}, list.map(function (_a) {
|
|
153
|
-
var key = _a.key,
|
|
154
|
-
text = _a.text;
|
|
155
|
-
return /*#__PURE__*/React.createElement(Radio, {
|
|
156
|
-
className: "radio",
|
|
157
|
-
key: key,
|
|
158
|
-
value: key
|
|
159
|
-
}, text);
|
|
160
|
-
}))));
|
|
161
|
-
};
|
|
162
|
-
|
|
163
|
-
return /*#__PURE__*/React.createElement(RangePicker, __assign({
|
|
164
|
-
value: date,
|
|
165
|
-
onOpenChange: onOpenChange,
|
|
166
|
-
open: open,
|
|
167
|
-
allowClear: false,
|
|
168
|
-
panelRender: panelRender
|
|
169
|
-
}, options));
|
|
170
|
-
};
|
|
171
|
-
|
|
172
|
-
export default CustomizeRangePicker;
|