assui 2.1.32 → 2.1.35
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 +2 -0
- package/es/label-customize-range-picker/index.js +55 -4
- package/es/label-customize-range-picker/style/index.css +6 -0
- package/es/label-customize-range-picker/style/index.less +8 -0
- package/es/label-range-picker/index.js +1 -0
- package/es/label-select/index.d.ts +1 -1
- package/lib/label-customize-range-picker/index.d.ts +2 -0
- package/lib/label-customize-range-picker/index.js +57 -4
- package/lib/label-customize-range-picker/style/index.css +6 -0
- package/lib/label-customize-range-picker/style/index.less +8 -0
- package/lib/label-range-picker/index.js +1 -0
- package/lib/label-select/index.d.ts +1 -1
- package/package.json +4 -4
|
@@ -12,6 +12,8 @@ export interface LabelCustomizeRangePickerProps extends Omit<LabelRangePickerPro
|
|
|
12
12
|
customizeTimeList?: dateTypeEnum[];
|
|
13
13
|
rangePickerType?: 'label' | 'origin';
|
|
14
14
|
label?: React.ReactNode;
|
|
15
|
+
/** 最大时间范围 */
|
|
16
|
+
maxScope?: number;
|
|
15
17
|
}
|
|
16
18
|
declare const LabelCustomizeRangePicker: (props: LabelCustomizeRangePickerProps) => JSX.Element;
|
|
17
19
|
export default LabelCustomizeRangePicker;
|
|
@@ -59,6 +59,8 @@ import Radio from 'antd/lib/radio';
|
|
|
59
59
|
import Checkbox from 'antd/lib/checkbox';
|
|
60
60
|
import DatePicker from 'antd/lib/date-picker';
|
|
61
61
|
import useControllableValue from 'ahooks/lib/useControllableValue';
|
|
62
|
+
import moment from 'moment';
|
|
63
|
+
import omit from 'lodash/omit';
|
|
62
64
|
import getDefaultRadioList from './defaultRadioList';
|
|
63
65
|
import LabelRangePicker from '../label-range-picker';
|
|
64
66
|
import LocaleContext from '../config-provider/context';
|
|
@@ -71,7 +73,8 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
71
73
|
_a = props.rangePickerType,
|
|
72
74
|
rangePickerType = _a === void 0 ? 'label' : _a,
|
|
73
75
|
label = props.label,
|
|
74
|
-
|
|
76
|
+
maxScope = props.maxScope,
|
|
77
|
+
options = __rest(props, ["customizeTimeList", "radioList", "rangePickerType", "label", "maxScope"]);
|
|
75
78
|
|
|
76
79
|
var _b = __read(useControllableValue(props), 2),
|
|
77
80
|
date = _b[0],
|
|
@@ -132,7 +135,47 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
132
135
|
};
|
|
133
136
|
|
|
134
137
|
var onDateChange = function onDateChange(nextValue) {
|
|
135
|
-
|
|
138
|
+
var _a, _b;
|
|
139
|
+
|
|
140
|
+
var _c = __read(nextValue || [], 2),
|
|
141
|
+
start = _c[0],
|
|
142
|
+
end = _c[1];
|
|
143
|
+
|
|
144
|
+
var nextStartDate = (_a = start === null || start === void 0 ? void 0 : start.clone().startOf('day')) !== null && _a !== void 0 ? _a : null;
|
|
145
|
+
var nextEndDate = (_b = end === null || end === void 0 ? void 0 : end.clone().endOf('day')) !== null && _b !== void 0 ? _b : null;
|
|
146
|
+
|
|
147
|
+
if (!nextStartDate && !nextEndDate) {
|
|
148
|
+
return setDate(undefined);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
if (!maxScope) {
|
|
152
|
+
return setDate([nextStartDate, nextEndDate]);
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
var _d = __read(date || [], 1),
|
|
156
|
+
startDate = _d[0];
|
|
157
|
+
|
|
158
|
+
if (nextStartDate && nextEndDate) {
|
|
159
|
+
var isChangeStartData = !(startDate === null || startDate === void 0 ? void 0 : startDate.clone().isSame(nextStartDate, 'day'));
|
|
160
|
+
|
|
161
|
+
if (isChangeStartData) {
|
|
162
|
+
if (nextEndDate.diff(nextStartDate, 'day') > maxScope) {
|
|
163
|
+
nextEndDate = nextStartDate.clone().add(maxScope - 1, 'day');
|
|
164
|
+
}
|
|
165
|
+
} else if (nextEndDate.diff(nextStartDate, 'day') > maxScope) {
|
|
166
|
+
nextStartDate = nextEndDate.clone().subtract(maxScope - 1, 'day');
|
|
167
|
+
}
|
|
168
|
+
} else if (!nextStartDate && nextEndDate) {
|
|
169
|
+
nextStartDate = nextEndDate.clone().subtract(maxScope - 1, 'day');
|
|
170
|
+
} else if (nextStartDate && !nextEndDate) {
|
|
171
|
+
nextEndDate = nextStartDate.clone().add(maxScope - 1, 'day');
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
if (nextStartDate && nextEndDate) {
|
|
175
|
+
return setDate([nextStartDate, nextEndDate]);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
return setDate([nextStartDate, nextEndDate]);
|
|
136
179
|
};
|
|
137
180
|
|
|
138
181
|
var onRadioChange = function onRadioChange(event) {
|
|
@@ -148,6 +191,14 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
148
191
|
var list = radioList !== null && radioList !== void 0 ? radioList : getDefaultRadioList(messages).filter(function (item) {
|
|
149
192
|
return customizeTimeList ? customizeTimeList.includes(item.key) : true;
|
|
150
193
|
});
|
|
194
|
+
var resultList = maxScope ? list.filter(function (item) {
|
|
195
|
+
var _a = __read(item.value, 2),
|
|
196
|
+
startTime = _a[0],
|
|
197
|
+
entTime = _a[1];
|
|
198
|
+
|
|
199
|
+
var space = moment.duration(entTime.diff(startTime)).asDays();
|
|
200
|
+
return space <= maxScope;
|
|
201
|
+
}) : list;
|
|
151
202
|
|
|
152
203
|
var panelRender = function panelRender(panel) {
|
|
153
204
|
return /*#__PURE__*/React.createElement("div", {
|
|
@@ -167,7 +218,7 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
167
218
|
}, /*#__PURE__*/React.createElement(Radio.Group, {
|
|
168
219
|
onChange: onRadioChange,
|
|
169
220
|
value: radioKey
|
|
170
|
-
},
|
|
221
|
+
}, resultList.map(function (_a) {
|
|
171
222
|
var key = _a.key,
|
|
172
223
|
text = _a.text;
|
|
173
224
|
return /*#__PURE__*/React.createElement(Radio, {
|
|
@@ -192,7 +243,7 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
192
243
|
};
|
|
193
244
|
return rangePickerType === 'label' ? /*#__PURE__*/React.createElement(LabelRangePicker, __assign({
|
|
194
245
|
label: label
|
|
195
|
-
}, baseOptions, options)) : /*#__PURE__*/React.createElement(RangePicker, __assign({}, baseOptions, options));
|
|
246
|
+
}, baseOptions, omit(options, 'onChange'))) : /*#__PURE__*/React.createElement(RangePicker, __assign({}, baseOptions, omit(options, 'onChange')));
|
|
196
247
|
};
|
|
197
248
|
|
|
198
249
|
export default LabelCustomizeRangePicker;
|
|
@@ -1793,6 +1793,12 @@ html {
|
|
|
1793
1793
|
padding: 8px 11px 6px;
|
|
1794
1794
|
border-bottom: 1px solid #f5f6fa;
|
|
1795
1795
|
}
|
|
1796
|
+
.label-customize-range-picker-panel .check-wrapper .ant-checkbox-wrapper {
|
|
1797
|
+
pointer-events: none;
|
|
1798
|
+
}
|
|
1799
|
+
.label-customize-range-picker-panel .check-wrapper .ant-checkbox-input {
|
|
1800
|
+
pointer-events: auto;
|
|
1801
|
+
}
|
|
1796
1802
|
.label-customize-range-picker-panel .pick-box {
|
|
1797
1803
|
display: flex;
|
|
1798
1804
|
justify-content: space-between;
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import type { SelectProps } from 'antd/lib/select';
|
|
3
3
|
declare const Option: import("rc-select/lib/Option").OptionFC;
|
|
4
4
|
export { Option };
|
|
5
|
-
export interface LabelSelectProps extends SelectProps
|
|
5
|
+
export interface LabelSelectProps extends SelectProps {
|
|
6
6
|
label?: React.ReactNode;
|
|
7
7
|
}
|
|
8
8
|
declare const LabelSelect: {
|
|
@@ -12,6 +12,8 @@ export interface LabelCustomizeRangePickerProps extends Omit<LabelRangePickerPro
|
|
|
12
12
|
customizeTimeList?: dateTypeEnum[];
|
|
13
13
|
rangePickerType?: 'label' | 'origin';
|
|
14
14
|
label?: React.ReactNode;
|
|
15
|
+
/** 最大时间范围 */
|
|
16
|
+
maxScope?: number;
|
|
15
17
|
}
|
|
16
18
|
declare const LabelCustomizeRangePicker: (props: LabelCustomizeRangePickerProps) => JSX.Element;
|
|
17
19
|
export default LabelCustomizeRangePicker;
|
|
@@ -116,6 +116,10 @@ var date_picker_1 = __importDefault(require("antd/lib/date-picker"));
|
|
|
116
116
|
|
|
117
117
|
var useControllableValue_1 = __importDefault(require("ahooks/lib/useControllableValue"));
|
|
118
118
|
|
|
119
|
+
var moment_1 = __importDefault(require("moment"));
|
|
120
|
+
|
|
121
|
+
var omit_1 = __importDefault(require("lodash/omit"));
|
|
122
|
+
|
|
119
123
|
var defaultRadioList_1 = __importDefault(require("./defaultRadioList"));
|
|
120
124
|
|
|
121
125
|
var label_range_picker_1 = __importDefault(require("../label-range-picker"));
|
|
@@ -132,7 +136,8 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
132
136
|
_a = props.rangePickerType,
|
|
133
137
|
rangePickerType = _a === void 0 ? 'label' : _a,
|
|
134
138
|
label = props.label,
|
|
135
|
-
|
|
139
|
+
maxScope = props.maxScope,
|
|
140
|
+
options = __rest(props, ["customizeTimeList", "radioList", "rangePickerType", "label", "maxScope"]);
|
|
136
141
|
|
|
137
142
|
var _b = __read((0, useControllableValue_1["default"])(props), 2),
|
|
138
143
|
date = _b[0],
|
|
@@ -193,7 +198,47 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
193
198
|
};
|
|
194
199
|
|
|
195
200
|
var onDateChange = function onDateChange(nextValue) {
|
|
196
|
-
|
|
201
|
+
var _a, _b;
|
|
202
|
+
|
|
203
|
+
var _c = __read(nextValue || [], 2),
|
|
204
|
+
start = _c[0],
|
|
205
|
+
end = _c[1];
|
|
206
|
+
|
|
207
|
+
var nextStartDate = (_a = start === null || start === void 0 ? void 0 : start.clone().startOf('day')) !== null && _a !== void 0 ? _a : null;
|
|
208
|
+
var nextEndDate = (_b = end === null || end === void 0 ? void 0 : end.clone().endOf('day')) !== null && _b !== void 0 ? _b : null;
|
|
209
|
+
|
|
210
|
+
if (!nextStartDate && !nextEndDate) {
|
|
211
|
+
return setDate(undefined);
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
if (!maxScope) {
|
|
215
|
+
return setDate([nextStartDate, nextEndDate]);
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
var _d = __read(date || [], 1),
|
|
219
|
+
startDate = _d[0];
|
|
220
|
+
|
|
221
|
+
if (nextStartDate && nextEndDate) {
|
|
222
|
+
var isChangeStartData = !(startDate === null || startDate === void 0 ? void 0 : startDate.clone().isSame(nextStartDate, 'day'));
|
|
223
|
+
|
|
224
|
+
if (isChangeStartData) {
|
|
225
|
+
if (nextEndDate.diff(nextStartDate, 'day') > maxScope) {
|
|
226
|
+
nextEndDate = nextStartDate.clone().add(maxScope - 1, 'day');
|
|
227
|
+
}
|
|
228
|
+
} else if (nextEndDate.diff(nextStartDate, 'day') > maxScope) {
|
|
229
|
+
nextStartDate = nextEndDate.clone().subtract(maxScope - 1, 'day');
|
|
230
|
+
}
|
|
231
|
+
} else if (!nextStartDate && nextEndDate) {
|
|
232
|
+
nextStartDate = nextEndDate.clone().subtract(maxScope - 1, 'day');
|
|
233
|
+
} else if (nextStartDate && !nextEndDate) {
|
|
234
|
+
nextEndDate = nextStartDate.clone().add(maxScope - 1, 'day');
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
if (nextStartDate && nextEndDate) {
|
|
238
|
+
return setDate([nextStartDate, nextEndDate]);
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
return setDate([nextStartDate, nextEndDate]);
|
|
197
242
|
};
|
|
198
243
|
|
|
199
244
|
var onRadioChange = function onRadioChange(event) {
|
|
@@ -209,6 +254,14 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
209
254
|
var list = radioList !== null && radioList !== void 0 ? radioList : (0, defaultRadioList_1["default"])(messages).filter(function (item) {
|
|
210
255
|
return customizeTimeList ? customizeTimeList.includes(item.key) : true;
|
|
211
256
|
});
|
|
257
|
+
var resultList = maxScope ? list.filter(function (item) {
|
|
258
|
+
var _a = __read(item.value, 2),
|
|
259
|
+
startTime = _a[0],
|
|
260
|
+
entTime = _a[1];
|
|
261
|
+
|
|
262
|
+
var space = moment_1["default"].duration(entTime.diff(startTime)).asDays();
|
|
263
|
+
return space <= maxScope;
|
|
264
|
+
}) : list;
|
|
212
265
|
|
|
213
266
|
var panelRender = function panelRender(panel) {
|
|
214
267
|
return react_1["default"].createElement("div", {
|
|
@@ -228,7 +281,7 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
228
281
|
}, react_1["default"].createElement(radio_1["default"].Group, {
|
|
229
282
|
onChange: onRadioChange,
|
|
230
283
|
value: radioKey
|
|
231
|
-
},
|
|
284
|
+
}, resultList.map(function (_a) {
|
|
232
285
|
var key = _a.key,
|
|
233
286
|
text = _a.text;
|
|
234
287
|
return react_1["default"].createElement(radio_1["default"], {
|
|
@@ -253,7 +306,7 @@ var LabelCustomizeRangePicker = function LabelCustomizeRangePicker(props) {
|
|
|
253
306
|
};
|
|
254
307
|
return rangePickerType === 'label' ? react_1["default"].createElement(label_range_picker_1["default"], __assign({
|
|
255
308
|
label: label
|
|
256
|
-
}, baseOptions, options)) : react_1["default"].createElement(RangePicker, __assign({}, baseOptions, options));
|
|
309
|
+
}, baseOptions, (0, omit_1["default"])(options, 'onChange'))) : react_1["default"].createElement(RangePicker, __assign({}, baseOptions, (0, omit_1["default"])(options, 'onChange')));
|
|
257
310
|
};
|
|
258
311
|
|
|
259
312
|
exports["default"] = LabelCustomizeRangePicker;
|
|
@@ -1793,6 +1793,12 @@ html {
|
|
|
1793
1793
|
padding: 8px 11px 6px;
|
|
1794
1794
|
border-bottom: 1px solid #f5f6fa;
|
|
1795
1795
|
}
|
|
1796
|
+
.label-customize-range-picker-panel .check-wrapper .ant-checkbox-wrapper {
|
|
1797
|
+
pointer-events: none;
|
|
1798
|
+
}
|
|
1799
|
+
.label-customize-range-picker-panel .check-wrapper .ant-checkbox-input {
|
|
1800
|
+
pointer-events: auto;
|
|
1801
|
+
}
|
|
1796
1802
|
.label-customize-range-picker-panel .pick-box {
|
|
1797
1803
|
display: flex;
|
|
1798
1804
|
justify-content: space-between;
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import type { SelectProps } from 'antd/lib/select';
|
|
3
3
|
declare const Option: import("rc-select/lib/Option").OptionFC;
|
|
4
4
|
export { Option };
|
|
5
|
-
export interface LabelSelectProps extends SelectProps
|
|
5
|
+
export interface LabelSelectProps extends SelectProps {
|
|
6
6
|
label?: React.ReactNode;
|
|
7
7
|
}
|
|
8
8
|
declare const LabelSelect: {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "assui",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.35",
|
|
4
4
|
"description": "react ui library",
|
|
5
5
|
"author": "jason <usochen@gmail.com>",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"README.md"
|
|
31
31
|
],
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@ahooksjs/use-url-state": "^
|
|
33
|
+
"@ahooksjs/use-url-state": "^3.1.9",
|
|
34
34
|
"@tinymce/tinymce-react": "^4.0.0",
|
|
35
35
|
"@types/react-beautiful-dnd": "^13.1.2",
|
|
36
36
|
"@types/react-resizable": "^3.0.0",
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"tinymce": "^6.0.2"
|
|
55
55
|
},
|
|
56
56
|
"peerDependencies": {
|
|
57
|
-
"antd": "^4.
|
|
57
|
+
"antd": "^4.21.6",
|
|
58
58
|
"react": "^16.8.6 || ^17.0 || ^18.0"
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
@@ -72,5 +72,5 @@
|
|
|
72
72
|
"node": ">=10.0.0"
|
|
73
73
|
},
|
|
74
74
|
"license": "MIT",
|
|
75
|
-
"gitHead": "
|
|
75
|
+
"gitHead": "6ee3a8f903ff9d5b6e0c27f485418938e7f28192"
|
|
76
76
|
}
|