@kne/react-filter 0.1.15 → 0.1.18
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/README.md +236 -0
- package/dist/{index.js → index.cjs} +231 -106
- package/dist/index.cjs.map +1 -0
- package/dist/index.css +17 -5
- package/dist/index.css.map +1 -1
- package/dist/index.modern.js +223 -98
- package/dist/index.modern.js.map +1 -1
- package/package.json +11 -7
- package/dist/index.js.map +0 -1
|
@@ -1,25 +1,24 @@
|
|
|
1
1
|
var React = require('react');
|
|
2
2
|
var antd = require('antd');
|
|
3
|
-
var reactCitySelect = require('@kne/react-city-select');
|
|
4
3
|
var classnames = require('classnames');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var isEqual = require('lodash/isEqual');
|
|
4
|
+
var reactCitySelect = require('@kne/react-city-select');
|
|
5
|
+
var lodash = require('lodash');
|
|
8
6
|
var useClickOutSide = require('@kne/use-click-outside');
|
|
9
|
-
var isNumber = require('lodash/isNumber');
|
|
10
7
|
|
|
11
8
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
12
9
|
|
|
13
10
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
14
11
|
var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
|
|
15
|
-
var get__default = /*#__PURE__*/_interopDefaultLegacy(get);
|
|
16
|
-
var isFunction__default = /*#__PURE__*/_interopDefaultLegacy(isFunction);
|
|
17
|
-
var isEqual__default = /*#__PURE__*/_interopDefaultLegacy(isEqual);
|
|
18
12
|
var useClickOutSide__default = /*#__PURE__*/_interopDefaultLegacy(useClickOutSide);
|
|
19
|
-
|
|
13
|
+
|
|
14
|
+
var context$1 = React.createContext({});
|
|
15
|
+
var Provider$1 = context$1.Provider;
|
|
16
|
+
var useConsumer = function useConsumer() {
|
|
17
|
+
return React.useContext(context$1);
|
|
18
|
+
};
|
|
20
19
|
|
|
21
20
|
function _extends() {
|
|
22
|
-
_extends = Object.assign
|
|
21
|
+
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
23
22
|
for (var i = 1; i < arguments.length; i++) {
|
|
24
23
|
var source = arguments[i];
|
|
25
24
|
|
|
@@ -32,7 +31,6 @@ function _extends() {
|
|
|
32
31
|
|
|
33
32
|
return target;
|
|
34
33
|
};
|
|
35
|
-
|
|
36
34
|
return _extends.apply(this, arguments);
|
|
37
35
|
}
|
|
38
36
|
|
|
@@ -51,21 +49,30 @@ function _objectWithoutPropertiesLoose(source, excluded) {
|
|
|
51
49
|
return target;
|
|
52
50
|
}
|
|
53
51
|
|
|
54
|
-
var
|
|
55
|
-
var Provider$1 = context$1.Provider;
|
|
56
|
-
var useConsumer = function useConsumer() {
|
|
57
|
-
return React.useContext(context$1);
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
var _excluded$5 = ["label"];
|
|
52
|
+
var _excluded$8 = ["label", "labelHidden", "isMore", "moreTrigger"];
|
|
61
53
|
|
|
62
54
|
var FilterItem = function FilterItem(_ref) {
|
|
63
55
|
var className = _ref.className,
|
|
64
56
|
label = _ref.label,
|
|
57
|
+
labelHidden = _ref.labelHidden,
|
|
58
|
+
isMore = _ref.isMore,
|
|
59
|
+
moreTrigger = _ref.moreTrigger,
|
|
65
60
|
children = _ref.children;
|
|
61
|
+
|
|
62
|
+
if (isMore) {
|
|
63
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
64
|
+
className: classnames__default["default"]("react-filter-item-label", "is-more", className)
|
|
65
|
+
}, /*#__PURE__*/React__default["default"].createElement(antd.Popover, {
|
|
66
|
+
content: children,
|
|
67
|
+
trigger: moreTrigger,
|
|
68
|
+
placement: "bottom",
|
|
69
|
+
overlayClassName: "react-filter-item-popover"
|
|
70
|
+
}, /*#__PURE__*/React__default["default"].createElement("a", null, label)));
|
|
71
|
+
}
|
|
72
|
+
|
|
66
73
|
return /*#__PURE__*/React__default["default"].createElement(antd.Space, {
|
|
67
74
|
className: classnames__default["default"]('react-filter-item', className)
|
|
68
|
-
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
75
|
+
}, labelHidden ? null : /*#__PURE__*/React__default["default"].createElement("div", {
|
|
69
76
|
className: "react-filter-item-label"
|
|
70
77
|
}, label, ":"), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
71
78
|
className: "react-filter-item-children"
|
|
@@ -75,21 +82,31 @@ var FilterItem = function FilterItem(_ref) {
|
|
|
75
82
|
var withFilterItem = function withFilterItem(WrappedComponent) {
|
|
76
83
|
return function (_ref2) {
|
|
77
84
|
var label = _ref2.label,
|
|
78
|
-
|
|
85
|
+
labelHidden = _ref2.labelHidden,
|
|
86
|
+
isMore = _ref2.isMore,
|
|
87
|
+
moreTrigger = _ref2.moreTrigger,
|
|
88
|
+
props = _objectWithoutPropertiesLoose(_ref2, _excluded$8);
|
|
79
89
|
|
|
80
90
|
return /*#__PURE__*/React__default["default"].createElement(FilterItem, {
|
|
81
|
-
label: label
|
|
82
|
-
|
|
91
|
+
label: label,
|
|
92
|
+
labelHidden: labelHidden,
|
|
93
|
+
isMore: isMore,
|
|
94
|
+
moreTrigger: moreTrigger
|
|
95
|
+
}, /*#__PURE__*/React__default["default"].createElement(WrappedComponent, _extends({}, props, {
|
|
96
|
+
label: label,
|
|
97
|
+
isMore: isMore
|
|
98
|
+
})));
|
|
83
99
|
};
|
|
84
100
|
};
|
|
85
101
|
|
|
86
|
-
var _excluded$
|
|
102
|
+
var _excluded$7 = ["value", "label"];
|
|
87
103
|
var CheckableTag = antd.Tag.CheckableTag;
|
|
88
104
|
var context = React.createContext({});
|
|
89
105
|
var Provider = context.Provider;
|
|
90
106
|
|
|
91
107
|
var List = function List(_ref) {
|
|
92
108
|
var label = _ref.label,
|
|
109
|
+
labelHidden = _ref.labelHidden,
|
|
93
110
|
name = _ref.name,
|
|
94
111
|
size = _ref.size,
|
|
95
112
|
children = _ref.children,
|
|
@@ -101,7 +118,7 @@ var List = function List(_ref) {
|
|
|
101
118
|
onChange = _useConsumer.onChange;
|
|
102
119
|
|
|
103
120
|
var currentValue = function () {
|
|
104
|
-
var originValue =
|
|
121
|
+
var originValue = lodash.get(value, name);
|
|
105
122
|
|
|
106
123
|
if (size === 1) {
|
|
107
124
|
return originValue !== void 0 ? [originValue] : [];
|
|
@@ -160,7 +177,7 @@ var List = function List(_ref) {
|
|
|
160
177
|
});
|
|
161
178
|
}
|
|
162
179
|
|
|
163
|
-
if (
|
|
180
|
+
if (lodash.isFunction(children)) {
|
|
164
181
|
return children({
|
|
165
182
|
value: currentValue,
|
|
166
183
|
onChange: changeHandler
|
|
@@ -171,14 +188,15 @@ var List = function List(_ref) {
|
|
|
171
188
|
}();
|
|
172
189
|
|
|
173
190
|
return /*#__PURE__*/React__default["default"].createElement(FilterItem, {
|
|
174
|
-
label: label
|
|
191
|
+
label: label,
|
|
192
|
+
labelHidden: labelHidden
|
|
175
193
|
}, /*#__PURE__*/React__default["default"].createElement(Provider, {
|
|
176
194
|
value: {
|
|
177
195
|
currentValue: currentValue,
|
|
178
196
|
createCheckedChangeHandler: createCheckedChangeHandler
|
|
179
197
|
}
|
|
180
198
|
}, computedChildren, more ? function () {
|
|
181
|
-
if (
|
|
199
|
+
if (lodash.isFunction(more)) {
|
|
182
200
|
return more({
|
|
183
201
|
name: name,
|
|
184
202
|
size: size,
|
|
@@ -207,7 +225,7 @@ var List = function List(_ref) {
|
|
|
207
225
|
List.Item = function (_ref3) {
|
|
208
226
|
var value = _ref3.value,
|
|
209
227
|
label = _ref3.label,
|
|
210
|
-
props = _objectWithoutPropertiesLoose(_ref3, _excluded$
|
|
228
|
+
props = _objectWithoutPropertiesLoose(_ref3, _excluded$7);
|
|
211
229
|
|
|
212
230
|
var _useContext = React.useContext(context),
|
|
213
231
|
currentValue = _useContext.currentValue,
|
|
@@ -217,7 +235,7 @@ List.Item = function (_ref3) {
|
|
|
217
235
|
|
|
218
236
|
if (value !== void 0) {
|
|
219
237
|
itemProps.checked = currentValue.findIndex(function (item) {
|
|
220
|
-
return
|
|
238
|
+
return lodash.isEqual(lodash.get(item, 'value'), value);
|
|
221
239
|
}) > -1;
|
|
222
240
|
itemProps.onChange = createCheckedChangeHandler({
|
|
223
241
|
label: label,
|
|
@@ -232,13 +250,18 @@ List.defaultProps = {
|
|
|
232
250
|
size: 2
|
|
233
251
|
};
|
|
234
252
|
|
|
253
|
+
var _excluded$6 = ["label", "labelHidden", "name", "size", "isMore"];
|
|
235
254
|
var Item = List.Item;
|
|
236
255
|
|
|
237
256
|
var City = function City(_ref) {
|
|
238
257
|
var label = _ref.label,
|
|
258
|
+
labelHidden = _ref.labelHidden,
|
|
239
259
|
name = _ref.name,
|
|
240
260
|
size = _ref.size;
|
|
261
|
+
_objectWithoutPropertiesLoose(_ref, _excluded$6);
|
|
262
|
+
|
|
241
263
|
return /*#__PURE__*/React__default["default"].createElement(List, {
|
|
264
|
+
labelHidden: labelHidden,
|
|
242
265
|
label: label,
|
|
243
266
|
name: name,
|
|
244
267
|
size: size,
|
|
@@ -320,6 +343,7 @@ var City = function City(_ref) {
|
|
|
320
343
|
var SearchButton = function SearchButton(_ref) {
|
|
321
344
|
var name = _ref.name,
|
|
322
345
|
size = _ref.size,
|
|
346
|
+
isMore = _ref.isMore,
|
|
323
347
|
template = _ref.template,
|
|
324
348
|
children = _ref.children,
|
|
325
349
|
defaultValue = _ref.defaultValue,
|
|
@@ -336,7 +360,7 @@ var SearchButton = function SearchButton(_ref) {
|
|
|
336
360
|
|
|
337
361
|
var currentValue = aValue[name];
|
|
338
362
|
|
|
339
|
-
var _useState = React.useState(defaultValue ||
|
|
363
|
+
var _useState = React.useState(defaultValue || lodash.get(currentValue, "value")),
|
|
340
364
|
value = _useState[0],
|
|
341
365
|
setValue = _useState[1];
|
|
342
366
|
|
|
@@ -351,12 +375,12 @@ var SearchButton = function SearchButton(_ref) {
|
|
|
351
375
|
|
|
352
376
|
return {
|
|
353
377
|
value: value,
|
|
354
|
-
label:
|
|
378
|
+
label: lodash.isFunction(template) ? template(value) : value.toString()
|
|
355
379
|
};
|
|
356
380
|
};
|
|
357
381
|
|
|
358
382
|
var ref = useClickOutSide__default["default"](function () {
|
|
359
|
-
setValue(
|
|
383
|
+
setValue(lodash.get(currentValue, "value"));
|
|
360
384
|
setActive(false);
|
|
361
385
|
onBlur && onBlur();
|
|
362
386
|
});
|
|
@@ -367,7 +391,7 @@ var SearchButton = function SearchButton(_ref) {
|
|
|
367
391
|
}, [active]);
|
|
368
392
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
369
393
|
className: classnames__default["default"]("react-filter-search-button", {
|
|
370
|
-
"is-active": active
|
|
394
|
+
"is-active": active && !isMore
|
|
371
395
|
}),
|
|
372
396
|
ref: ref,
|
|
373
397
|
onMouseEnter: function onMouseEnter() {
|
|
@@ -376,14 +400,17 @@ var SearchButton = function SearchButton(_ref) {
|
|
|
376
400
|
onMouseLeave: function onMouseLeave() {
|
|
377
401
|
active && setActive(false);
|
|
378
402
|
}
|
|
379
|
-
}, /*#__PURE__*/React__default["default"].createElement(
|
|
380
|
-
className: "inner"
|
|
403
|
+
}, /*#__PURE__*/React__default["default"].createElement(antd.Space, {
|
|
404
|
+
className: "inner",
|
|
405
|
+
size: 0
|
|
381
406
|
}, /*#__PURE__*/React__default["default"].createElement("div", null, children({
|
|
382
407
|
value: value,
|
|
383
408
|
setValue: setValue,
|
|
384
409
|
setActive: setActive
|
|
385
|
-
})), active ? /*#__PURE__*/React__default["default"].createElement(antd.Button, {
|
|
386
|
-
className: "react-filter-search-confirm",
|
|
410
|
+
})), active || isMore ? /*#__PURE__*/React__default["default"].createElement(antd.Button, {
|
|
411
|
+
className: classnames__default["default"]("react-filter-search-confirm", {
|
|
412
|
+
"is-more": isMore
|
|
413
|
+
}),
|
|
387
414
|
size: "small",
|
|
388
415
|
type: "primary",
|
|
389
416
|
onClick: function onClick(e) {
|
|
@@ -410,13 +437,15 @@ SearchButton.defaultProps = {
|
|
|
410
437
|
var RangeInner = function RangeInner(_ref) {
|
|
411
438
|
var name = _ref.name,
|
|
412
439
|
size = _ref.size,
|
|
440
|
+
isMore = _ref.isMore,
|
|
413
441
|
defaultActive = _ref.defaultActive,
|
|
414
442
|
template = _ref.template,
|
|
415
443
|
onBlur = _ref.onBlur,
|
|
416
444
|
onSearch = _ref.onSearch,
|
|
417
445
|
_onActiveChange = _ref.onActiveChange,
|
|
418
446
|
startProps = _ref.startProps,
|
|
419
|
-
endProps = _ref.endProps
|
|
447
|
+
endProps = _ref.endProps,
|
|
448
|
+
placeholder = _ref.placeholder;
|
|
420
449
|
|
|
421
450
|
var _useState = React.useState(null),
|
|
422
451
|
error = _useState[0],
|
|
@@ -429,7 +458,7 @@ var RangeInner = function RangeInner(_ref) {
|
|
|
429
458
|
return false;
|
|
430
459
|
}
|
|
431
460
|
|
|
432
|
-
if (
|
|
461
|
+
if (lodash.isNumber(value[1]) && value[0] > value[1]) {
|
|
433
462
|
setError("最大值不能小于最小值");
|
|
434
463
|
return false;
|
|
435
464
|
}
|
|
@@ -440,6 +469,7 @@ var RangeInner = function RangeInner(_ref) {
|
|
|
440
469
|
return /*#__PURE__*/React__default["default"].createElement(SearchButton, {
|
|
441
470
|
size: size,
|
|
442
471
|
template: template,
|
|
472
|
+
isMore: isMore,
|
|
443
473
|
onBlur: onBlur,
|
|
444
474
|
defaultActive: defaultActive,
|
|
445
475
|
name: name,
|
|
@@ -467,44 +497,50 @@ var RangeInner = function RangeInner(_ref) {
|
|
|
467
497
|
}, /*#__PURE__*/React__default["default"].createElement(antd.InputNumber, _extends({
|
|
468
498
|
size: "small"
|
|
469
499
|
}, startProps, {
|
|
470
|
-
value:
|
|
500
|
+
value: lodash.get(value, 0),
|
|
471
501
|
onChange: function onChange(inputValue) {
|
|
472
|
-
var target = [inputValue,
|
|
502
|
+
var target = [inputValue, lodash.get(value, 1)];
|
|
473
503
|
check(target);
|
|
474
504
|
setValue(target);
|
|
475
505
|
},
|
|
476
506
|
onFocus: function onFocus() {
|
|
477
507
|
setActive(true);
|
|
478
|
-
}
|
|
508
|
+
},
|
|
509
|
+
placeholder: Array.isArray(placeholder) ? placeholder[0] : placeholder || "请输入"
|
|
479
510
|
})), "~", /*#__PURE__*/React__default["default"].createElement(antd.InputNumber, _extends({
|
|
480
511
|
size: "small"
|
|
481
512
|
}, endProps, {
|
|
482
|
-
value:
|
|
513
|
+
value: lodash.get(value, 1),
|
|
483
514
|
onChange: function onChange(inputValue) {
|
|
484
|
-
var target = [
|
|
515
|
+
var target = [lodash.get(value, 0), inputValue];
|
|
485
516
|
check(target);
|
|
486
517
|
setValue(target);
|
|
487
518
|
},
|
|
488
519
|
onFocus: function onFocus() {
|
|
489
520
|
setActive(true);
|
|
490
|
-
}
|
|
521
|
+
},
|
|
522
|
+
placeholder: Array.isArray(placeholder) ? placeholder[0] : placeholder || "请输入"
|
|
491
523
|
}))));
|
|
492
524
|
});
|
|
493
525
|
};
|
|
494
526
|
var Range = withFilterItem(RangeInner);
|
|
495
527
|
|
|
496
|
-
var _excluded$
|
|
528
|
+
var _excluded$5 = ["name", "label", "isMore", "template", "defaultActive", "onBlur", "onSearch", "onActiveChange", "placeholder"];
|
|
497
529
|
var TextInner = function TextInner(_ref) {
|
|
498
530
|
var name = _ref.name,
|
|
531
|
+
label = _ref.label,
|
|
532
|
+
isMore = _ref.isMore,
|
|
499
533
|
template = _ref.template,
|
|
500
534
|
defaultActive = _ref.defaultActive,
|
|
501
535
|
onBlur = _ref.onBlur,
|
|
502
536
|
onSearch = _ref.onSearch,
|
|
503
537
|
_onActiveChange = _ref.onActiveChange,
|
|
504
|
-
|
|
538
|
+
placeholder = _ref.placeholder,
|
|
539
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
|
|
505
540
|
|
|
506
541
|
return /*#__PURE__*/React__default["default"].createElement(SearchButton, {
|
|
507
542
|
defaultActive: defaultActive,
|
|
543
|
+
isMore: isMore,
|
|
508
544
|
onBlur: onBlur,
|
|
509
545
|
template: template,
|
|
510
546
|
name: name,
|
|
@@ -519,6 +555,7 @@ var TextInner = function TextInner(_ref) {
|
|
|
519
555
|
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(antd.Input, _extends({
|
|
520
556
|
size: "small"
|
|
521
557
|
}, props, {
|
|
558
|
+
placeholder: placeholder || label,
|
|
522
559
|
value: value,
|
|
523
560
|
onChange: function onChange(e) {
|
|
524
561
|
setValue(e.target.value);
|
|
@@ -531,10 +568,12 @@ var TextInner = function TextInner(_ref) {
|
|
|
531
568
|
};
|
|
532
569
|
var Text = withFilterItem(TextInner);
|
|
533
570
|
|
|
534
|
-
var _excluded$
|
|
571
|
+
var _excluded$4 = ["name", "label", "placeholder", "isMore"];
|
|
535
572
|
var SelectorInner = function SelectorInner(_ref) {
|
|
536
573
|
var name = _ref.name,
|
|
537
|
-
|
|
574
|
+
label = _ref.label,
|
|
575
|
+
placeholder = _ref.placeholder,
|
|
576
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$4);
|
|
538
577
|
|
|
539
578
|
var _useConsumer = useConsumer(),
|
|
540
579
|
aValue = _useConsumer.value,
|
|
@@ -542,9 +581,7 @@ var SelectorInner = function SelectorInner(_ref) {
|
|
|
542
581
|
|
|
543
582
|
var currentValue = aValue[name];
|
|
544
583
|
return /*#__PURE__*/React__default["default"].createElement(antd.Select, _extends({}, props, {
|
|
545
|
-
|
|
546
|
-
minWidth: "150px"
|
|
547
|
-
},
|
|
584
|
+
placeholder: label || placeholder,
|
|
548
585
|
size: "small",
|
|
549
586
|
value: currentValue,
|
|
550
587
|
onChange: function onChange(value, item) {
|
|
@@ -554,12 +591,13 @@ var SelectorInner = function SelectorInner(_ref) {
|
|
|
554
591
|
};
|
|
555
592
|
var Selector = withFilterItem(SelectorInner);
|
|
556
593
|
|
|
557
|
-
var _excluded$
|
|
594
|
+
var _excluded$3 = ["name", "label", "className", "isMore"];
|
|
558
595
|
|
|
559
596
|
var Check = function Check(_ref) {
|
|
560
597
|
var name = _ref.name,
|
|
561
598
|
label = _ref.label,
|
|
562
|
-
|
|
599
|
+
className = _ref.className,
|
|
600
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$3);
|
|
563
601
|
|
|
564
602
|
var _useConsumer = useConsumer(),
|
|
565
603
|
aValue = _useConsumer.value,
|
|
@@ -567,6 +605,7 @@ var Check = function Check(_ref) {
|
|
|
567
605
|
|
|
568
606
|
var currentValue = aValue[name];
|
|
569
607
|
return /*#__PURE__*/React__default["default"].createElement(antd.Checkbox, _extends({}, props, {
|
|
608
|
+
className: classnames__default["default"]('react-filter-item', className),
|
|
570
609
|
size: "small",
|
|
571
610
|
checked: currentValue,
|
|
572
611
|
onChange: function onChange(e) {
|
|
@@ -578,56 +617,59 @@ var Check = function Check(_ref) {
|
|
|
578
617
|
}), label);
|
|
579
618
|
};
|
|
580
619
|
|
|
581
|
-
var _excluded = ["name", "
|
|
582
|
-
|
|
583
|
-
var
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
children = _ref.children,
|
|
587
|
-
props = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
588
|
-
|
|
589
|
-
var _useState = React.useState(false),
|
|
590
|
-
isEdit = _useState[0],
|
|
591
|
-
setIsEdit = _useState[1];
|
|
620
|
+
var _excluded$2 = ["label", "name", "options", "isMore"];
|
|
621
|
+
var RadioList = withFilterItem(function (_ref) {
|
|
622
|
+
var name = _ref.name,
|
|
623
|
+
options = _ref.options,
|
|
624
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
|
|
592
625
|
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
name: name,
|
|
597
|
-
onBlur: function onBlur() {
|
|
598
|
-
setIsEdit(false);
|
|
599
|
-
}
|
|
600
|
-
})) : /*#__PURE__*/React__default["default"].createElement(List.Item, {
|
|
601
|
-
onClick: function onClick(e) {
|
|
602
|
-
e.stopPropagation();
|
|
603
|
-
setIsEdit(true);
|
|
604
|
-
},
|
|
605
|
-
label: children || "其他"
|
|
606
|
-
});
|
|
607
|
-
};
|
|
608
|
-
};
|
|
609
|
-
var RangeButton = withMoreExtraButton(RangeInner);
|
|
610
|
-
var TextButton = withMoreExtraButton(TextInner);
|
|
611
|
-
var SelectorButton = withMoreExtraButton(SelectorInner);
|
|
612
|
-
var createExtraButton = function createExtraButton(_ref2) {
|
|
613
|
-
var type = _ref2.type,
|
|
614
|
-
props = _objectWithoutPropertiesLoose(_ref2, _excluded2);
|
|
626
|
+
var _useConsumer = useConsumer(),
|
|
627
|
+
aValue = _useConsumer.value,
|
|
628
|
+
_onChange = _useConsumer.onChange;
|
|
615
629
|
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
630
|
+
var currentValue = aValue[name];
|
|
631
|
+
return /*#__PURE__*/React__default["default"].createElement(antd.Radio.Group, _extends({}, props, {
|
|
632
|
+
options: options,
|
|
633
|
+
value: lodash.get(currentValue, 'value'),
|
|
634
|
+
onChange: function onChange(e) {
|
|
635
|
+
var item = options.find(function (item) {
|
|
636
|
+
return item.value === e.target.value;
|
|
637
|
+
});
|
|
623
638
|
|
|
624
|
-
|
|
625
|
-
return null;
|
|
639
|
+
_onChange(name, item);
|
|
626
640
|
}
|
|
641
|
+
}));
|
|
642
|
+
});
|
|
627
643
|
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
644
|
+
var _excluded$1 = ["label", "name", "options", "isMore"];
|
|
645
|
+
var CheckboxList = withFilterItem(function (_ref) {
|
|
646
|
+
var name = _ref.name,
|
|
647
|
+
options = _ref.options,
|
|
648
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded$1);
|
|
649
|
+
|
|
650
|
+
var _useConsumer = useConsumer(),
|
|
651
|
+
aValue = _useConsumer.value,
|
|
652
|
+
_onChange = _useConsumer.onChange;
|
|
653
|
+
|
|
654
|
+
var currentValue = aValue[name];
|
|
655
|
+
return /*#__PURE__*/React__default["default"].createElement(antd.Checkbox.Group, _extends({}, props, {
|
|
656
|
+
value: (currentValue || []).map(function (_ref2) {
|
|
657
|
+
var value = _ref2.value;
|
|
658
|
+
return value;
|
|
659
|
+
}),
|
|
660
|
+
onChange: function onChange(value) {
|
|
661
|
+
var item = value.map(function (value) {
|
|
662
|
+
return options.find(function (item) {
|
|
663
|
+
return item.value === value;
|
|
664
|
+
});
|
|
665
|
+
});
|
|
666
|
+
console.log(item);
|
|
667
|
+
|
|
668
|
+
_onChange(name, item);
|
|
669
|
+
},
|
|
670
|
+
options: options
|
|
671
|
+
}));
|
|
672
|
+
});
|
|
631
673
|
|
|
632
674
|
var filterNull = function filterNull(item) {
|
|
633
675
|
var target = Object.assign({}, item);
|
|
@@ -669,9 +711,14 @@ var Filter = function Filter(_ref) {
|
|
|
669
711
|
isExtra = _ref.isExtra,
|
|
670
712
|
list = _ref.list,
|
|
671
713
|
label = _ref.label,
|
|
714
|
+
labelHidden = _ref.labelHidden,
|
|
715
|
+
itemLabelHidden = _ref.itemLabelHidden,
|
|
672
716
|
unfoldText = _ref.unfoldText,
|
|
673
717
|
foldText = _ref.foldText,
|
|
674
718
|
extra = _ref.extra,
|
|
719
|
+
more = _ref.more,
|
|
720
|
+
moreTrigger = _ref.moreTrigger,
|
|
721
|
+
moreLabel = _ref.moreLabel,
|
|
675
722
|
originValue = _ref.value,
|
|
676
723
|
onChange = _ref.onChange;
|
|
677
724
|
var value = React.useMemo(function () {
|
|
@@ -688,10 +735,12 @@ var Filter = function Filter(_ref) {
|
|
|
688
735
|
var renderList = function renderList(list) {
|
|
689
736
|
return list.map(function (item, index) {
|
|
690
737
|
return /*#__PURE__*/React__default["default"].createElement(antd.Space, {
|
|
691
|
-
key: index
|
|
738
|
+
key: index,
|
|
739
|
+
className: "react-filter-line"
|
|
692
740
|
}, item.map(function (item, index) {
|
|
693
741
|
return React.cloneElement(item, {
|
|
694
|
-
key: index
|
|
742
|
+
key: index,
|
|
743
|
+
labelHidden: itemLabelHidden
|
|
695
744
|
});
|
|
696
745
|
}));
|
|
697
746
|
});
|
|
@@ -704,6 +753,24 @@ var Filter = function Filter(_ref) {
|
|
|
704
753
|
onChange(filterNull(target));
|
|
705
754
|
};
|
|
706
755
|
|
|
756
|
+
var moreFilter = more && more.length > 0 ? /*#__PURE__*/React__default["default"].createElement(antd.Space, {
|
|
757
|
+
className: "react-filter-line is-more"
|
|
758
|
+
}, /*#__PURE__*/React__default["default"].createElement(antd.Space, {
|
|
759
|
+
className: "react-filter-item"
|
|
760
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
761
|
+
className: "react-filter-item-label"
|
|
762
|
+
}, moreLabel, ":"), /*#__PURE__*/React__default["default"].createElement(antd.Space, {
|
|
763
|
+
className: "react-filter-item-children",
|
|
764
|
+
split: /*#__PURE__*/React__default["default"].createElement(antd.Divider, {
|
|
765
|
+
type: "vertical"
|
|
766
|
+
})
|
|
767
|
+
}, more.map(function (item, index) {
|
|
768
|
+
return React.cloneElement(item, {
|
|
769
|
+
key: index,
|
|
770
|
+
isMore: true,
|
|
771
|
+
moreTrigger: moreTrigger
|
|
772
|
+
});
|
|
773
|
+
})))) : null;
|
|
707
774
|
return /*#__PURE__*/React__default["default"].createElement(Provider$1, {
|
|
708
775
|
value: {
|
|
709
776
|
value: value,
|
|
@@ -713,7 +780,7 @@ var Filter = function Filter(_ref) {
|
|
|
713
780
|
className: "react-filter"
|
|
714
781
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
715
782
|
className: "react-filter-inner"
|
|
716
|
-
}, /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement(antd.Space, null, /*#__PURE__*/React__default["default"].createElement(FilterItem, {
|
|
783
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", null, labelHidden ? null : /*#__PURE__*/React__default["default"].createElement(antd.Space, null, /*#__PURE__*/React__default["default"].createElement(FilterItem, {
|
|
717
784
|
className: "react-filter-selected",
|
|
718
785
|
label: label
|
|
719
786
|
}, Object.keys(value).map(function (key) {
|
|
@@ -730,11 +797,11 @@ var Filter = function Filter(_ref) {
|
|
|
730
797
|
var label = _ref2.label;
|
|
731
798
|
return label;
|
|
732
799
|
}).join(",") : item.label);
|
|
733
|
-
})), /*#__PURE__*/React__default["default"].createElement("div", null, extra))), renderList(isExtra ? basicList : list)), display ? /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(antd.Divider, {
|
|
800
|
+
})), /*#__PURE__*/React__default["default"].createElement("div", null, extra))), renderList(isExtra ? basicList : list), moreList.length === 0 ? moreFilter : null), display ? /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(antd.Divider, {
|
|
734
801
|
className: "react-filter-divider"
|
|
735
802
|
}), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
736
803
|
className: "react-filter-inner"
|
|
737
|
-
}, renderList(moreList))) : /*#__PURE__*/React__default["default"].createElement("div", {
|
|
804
|
+
}, renderList(moreList)), moreList.length > 0 ? moreFilter : null) : /*#__PURE__*/React__default["default"].createElement("div", {
|
|
738
805
|
className: "react-filter-divider-close"
|
|
739
806
|
}), isExtra && list.length > displayLine ? /*#__PURE__*/React__default["default"].createElement(antd.Row, {
|
|
740
807
|
className: "react-filter-switch-btn",
|
|
@@ -755,21 +822,79 @@ Filter.type = {
|
|
|
755
822
|
Range: Range,
|
|
756
823
|
Text: Text,
|
|
757
824
|
Selector: Selector,
|
|
758
|
-
Check: Check
|
|
825
|
+
Check: Check,
|
|
826
|
+
RadioList: RadioList,
|
|
827
|
+
CheckboxList: CheckboxList
|
|
759
828
|
};
|
|
760
829
|
Filter.defaultProps = {
|
|
761
830
|
label: '筛选项',
|
|
831
|
+
labelHidden: false,
|
|
832
|
+
itemLabelHidden: false,
|
|
762
833
|
unfoldText: '展开',
|
|
763
834
|
foldText: '收起',
|
|
764
835
|
displayLine: 2,
|
|
765
836
|
defaultDisplay: false,
|
|
766
837
|
isExtra: true,
|
|
767
838
|
list: [[]],
|
|
839
|
+
more: [],
|
|
840
|
+
moreTrigger: 'hover',
|
|
841
|
+
moreLabel: '更多',
|
|
768
842
|
value: {},
|
|
769
843
|
extra: null,
|
|
770
844
|
onChange: function onChange() {}
|
|
771
845
|
};
|
|
772
846
|
|
|
847
|
+
var _excluded = ["name", "value", "children"],
|
|
848
|
+
_excluded2 = ["type"];
|
|
849
|
+
var withMoreExtraButton = function withMoreExtraButton(WrappedComponent) {
|
|
850
|
+
return function (_ref) {
|
|
851
|
+
var name = _ref.name,
|
|
852
|
+
children = _ref.children,
|
|
853
|
+
props = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
854
|
+
|
|
855
|
+
var _useState = React.useState(false),
|
|
856
|
+
isEdit = _useState[0],
|
|
857
|
+
setIsEdit = _useState[1];
|
|
858
|
+
|
|
859
|
+
return isEdit ? /*#__PURE__*/React__default["default"].createElement(WrappedComponent, _extends({
|
|
860
|
+
defaultActive: true
|
|
861
|
+
}, props, {
|
|
862
|
+
name: name,
|
|
863
|
+
onBlur: function onBlur() {
|
|
864
|
+
setIsEdit(false);
|
|
865
|
+
}
|
|
866
|
+
})) : /*#__PURE__*/React__default["default"].createElement(List.Item, {
|
|
867
|
+
onClick: function onClick(e) {
|
|
868
|
+
e.stopPropagation();
|
|
869
|
+
setIsEdit(true);
|
|
870
|
+
},
|
|
871
|
+
label: children || "其他"
|
|
872
|
+
});
|
|
873
|
+
};
|
|
874
|
+
};
|
|
875
|
+
var RangeButton = withMoreExtraButton(RangeInner);
|
|
876
|
+
var TextButton = withMoreExtraButton(TextInner);
|
|
877
|
+
var SelectorButton = withMoreExtraButton(SelectorInner);
|
|
878
|
+
var createExtraButton = function createExtraButton(_ref2) {
|
|
879
|
+
var type = _ref2.type,
|
|
880
|
+
props = _objectWithoutPropertiesLoose(_ref2, _excluded2);
|
|
881
|
+
|
|
882
|
+
return function (innerProps) {
|
|
883
|
+
var mapping = {
|
|
884
|
+
range: RangeButton,
|
|
885
|
+
text: TextButton,
|
|
886
|
+
selector: SelectorButton
|
|
887
|
+
};
|
|
888
|
+
var ExtraButtonComponent = mapping[type];
|
|
889
|
+
|
|
890
|
+
if (!ExtraButtonComponent) {
|
|
891
|
+
return null;
|
|
892
|
+
}
|
|
893
|
+
|
|
894
|
+
return /*#__PURE__*/React__default["default"].createElement(ExtraButtonComponent, _extends({}, props, innerProps));
|
|
895
|
+
};
|
|
896
|
+
};
|
|
897
|
+
|
|
773
898
|
exports.FilterItem = FilterItem;
|
|
774
899
|
exports.SearchButton = SearchButton;
|
|
775
900
|
exports.createExtraButton = createExtraButton;
|
|
@@ -777,4 +902,4 @@ exports["default"] = Filter;
|
|
|
777
902
|
exports.useFilterContext = useConsumer;
|
|
778
903
|
exports.withFilterItem = withFilterItem;
|
|
779
904
|
exports.withMoreExtraButton = withMoreExtraButton;
|
|
780
|
-
//# sourceMappingURL=index.
|
|
905
|
+
//# sourceMappingURL=index.cjs.map
|