@kne/react-filter 0.1.14 → 0.1.17

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.js CHANGED
@@ -1,7 +1,7 @@
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');
4
+ var reactCitySelect = require('@kne/react-city-select');
5
5
  var get = require('lodash/get');
6
6
  var isFunction = require('lodash/isFunction');
7
7
  var isEqual = require('lodash/isEqual');
@@ -18,8 +18,14 @@ var isEqual__default = /*#__PURE__*/_interopDefaultLegacy(isEqual);
18
18
  var useClickOutSide__default = /*#__PURE__*/_interopDefaultLegacy(useClickOutSide);
19
19
  var isNumber__default = /*#__PURE__*/_interopDefaultLegacy(isNumber);
20
20
 
21
+ var context$1 = React.createContext({});
22
+ var Provider$1 = context$1.Provider;
23
+ var useConsumer = function useConsumer() {
24
+ return React.useContext(context$1);
25
+ };
26
+
21
27
  function _extends() {
22
- _extends = Object.assign || function (target) {
28
+ _extends = Object.assign ? Object.assign.bind() : function (target) {
23
29
  for (var i = 1; i < arguments.length; i++) {
24
30
  var source = arguments[i];
25
31
 
@@ -32,7 +38,6 @@ function _extends() {
32
38
 
33
39
  return target;
34
40
  };
35
-
36
41
  return _extends.apply(this, arguments);
37
42
  }
38
43
 
@@ -51,21 +56,30 @@ function _objectWithoutPropertiesLoose(source, excluded) {
51
56
  return target;
52
57
  }
53
58
 
54
- var context$1 = React.createContext({});
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"];
59
+ var _excluded$8 = ["label", "labelHidden", "isMore", "moreTrigger"];
61
60
 
62
61
  var FilterItem = function FilterItem(_ref) {
63
62
  var className = _ref.className,
64
63
  label = _ref.label,
64
+ labelHidden = _ref.labelHidden,
65
+ isMore = _ref.isMore,
66
+ moreTrigger = _ref.moreTrigger,
65
67
  children = _ref.children;
68
+
69
+ if (isMore) {
70
+ return /*#__PURE__*/React__default["default"].createElement("div", {
71
+ className: classnames__default["default"]("react-filter-item-label", "is-more", className)
72
+ }, /*#__PURE__*/React__default["default"].createElement(antd.Popover, {
73
+ content: children,
74
+ trigger: moreTrigger,
75
+ placement: "bottom",
76
+ overlayClassName: "react-filter-item-popover"
77
+ }, /*#__PURE__*/React__default["default"].createElement("a", null, label)));
78
+ }
79
+
66
80
  return /*#__PURE__*/React__default["default"].createElement(antd.Space, {
67
81
  className: classnames__default["default"]('react-filter-item', className)
68
- }, /*#__PURE__*/React__default["default"].createElement("div", {
82
+ }, labelHidden ? null : /*#__PURE__*/React__default["default"].createElement("div", {
69
83
  className: "react-filter-item-label"
70
84
  }, label, ":"), /*#__PURE__*/React__default["default"].createElement("div", {
71
85
  className: "react-filter-item-children"
@@ -75,21 +89,31 @@ var FilterItem = function FilterItem(_ref) {
75
89
  var withFilterItem = function withFilterItem(WrappedComponent) {
76
90
  return function (_ref2) {
77
91
  var label = _ref2.label,
78
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$5);
92
+ labelHidden = _ref2.labelHidden,
93
+ isMore = _ref2.isMore,
94
+ moreTrigger = _ref2.moreTrigger,
95
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$8);
79
96
 
80
97
  return /*#__PURE__*/React__default["default"].createElement(FilterItem, {
81
- label: label
82
- }, /*#__PURE__*/React__default["default"].createElement(WrappedComponent, props));
98
+ label: label,
99
+ labelHidden: labelHidden,
100
+ isMore: isMore,
101
+ moreTrigger: moreTrigger
102
+ }, /*#__PURE__*/React__default["default"].createElement(WrappedComponent, _extends({}, props, {
103
+ label: label,
104
+ isMore: isMore
105
+ })));
83
106
  };
84
107
  };
85
108
 
86
- var _excluded$4 = ["value", "label"];
109
+ var _excluded$7 = ["value", "label"];
87
110
  var CheckableTag = antd.Tag.CheckableTag;
88
111
  var context = React.createContext({});
89
112
  var Provider = context.Provider;
90
113
 
91
114
  var List = function List(_ref) {
92
115
  var label = _ref.label,
116
+ labelHidden = _ref.labelHidden,
93
117
  name = _ref.name,
94
118
  size = _ref.size,
95
119
  children = _ref.children,
@@ -171,7 +195,8 @@ var List = function List(_ref) {
171
195
  }();
172
196
 
173
197
  return /*#__PURE__*/React__default["default"].createElement(FilterItem, {
174
- label: label
198
+ label: label,
199
+ labelHidden: labelHidden
175
200
  }, /*#__PURE__*/React__default["default"].createElement(Provider, {
176
201
  value: {
177
202
  currentValue: currentValue,
@@ -207,7 +232,7 @@ var List = function List(_ref) {
207
232
  List.Item = function (_ref3) {
208
233
  var value = _ref3.value,
209
234
  label = _ref3.label,
210
- props = _objectWithoutPropertiesLoose(_ref3, _excluded$4);
235
+ props = _objectWithoutPropertiesLoose(_ref3, _excluded$7);
211
236
 
212
237
  var _useContext = React.useContext(context),
213
238
  currentValue = _useContext.currentValue,
@@ -232,13 +257,18 @@ List.defaultProps = {
232
257
  size: 2
233
258
  };
234
259
 
260
+ var _excluded$6 = ["label", "labelHidden", "name", "size", "isMore"];
235
261
  var Item = List.Item;
236
262
 
237
263
  var City = function City(_ref) {
238
264
  var label = _ref.label,
265
+ labelHidden = _ref.labelHidden,
239
266
  name = _ref.name,
240
267
  size = _ref.size;
268
+ _objectWithoutPropertiesLoose(_ref, _excluded$6);
269
+
241
270
  return /*#__PURE__*/React__default["default"].createElement(List, {
271
+ labelHidden: labelHidden,
242
272
  label: label,
243
273
  name: name,
244
274
  size: size,
@@ -320,6 +350,7 @@ var City = function City(_ref) {
320
350
  var SearchButton = function SearchButton(_ref) {
321
351
  var name = _ref.name,
322
352
  size = _ref.size,
353
+ isMore = _ref.isMore,
323
354
  template = _ref.template,
324
355
  children = _ref.children,
325
356
  defaultValue = _ref.defaultValue,
@@ -367,7 +398,7 @@ var SearchButton = function SearchButton(_ref) {
367
398
  }, [active]);
368
399
  return /*#__PURE__*/React__default["default"].createElement("div", {
369
400
  className: classnames__default["default"]("react-filter-search-button", {
370
- "is-active": active
401
+ "is-active": active && !isMore
371
402
  }),
372
403
  ref: ref,
373
404
  onMouseEnter: function onMouseEnter() {
@@ -376,14 +407,17 @@ var SearchButton = function SearchButton(_ref) {
376
407
  onMouseLeave: function onMouseLeave() {
377
408
  active && setActive(false);
378
409
  }
379
- }, /*#__PURE__*/React__default["default"].createElement("div", {
380
- className: "inner"
410
+ }, /*#__PURE__*/React__default["default"].createElement(antd.Space, {
411
+ className: "inner",
412
+ size: 0
381
413
  }, /*#__PURE__*/React__default["default"].createElement("div", null, children({
382
414
  value: value,
383
415
  setValue: setValue,
384
416
  setActive: setActive
385
- })), active ? /*#__PURE__*/React__default["default"].createElement(antd.Button, {
386
- className: "react-filter-search-confirm",
417
+ })), active || isMore ? /*#__PURE__*/React__default["default"].createElement(antd.Button, {
418
+ className: classnames__default["default"]("react-filter-search-confirm", {
419
+ "is-more": isMore
420
+ }),
387
421
  size: "small",
388
422
  type: "primary",
389
423
  onClick: function onClick(e) {
@@ -410,13 +444,15 @@ SearchButton.defaultProps = {
410
444
  var RangeInner = function RangeInner(_ref) {
411
445
  var name = _ref.name,
412
446
  size = _ref.size,
447
+ isMore = _ref.isMore,
413
448
  defaultActive = _ref.defaultActive,
414
449
  template = _ref.template,
415
450
  onBlur = _ref.onBlur,
416
451
  onSearch = _ref.onSearch,
417
452
  _onActiveChange = _ref.onActiveChange,
418
453
  startProps = _ref.startProps,
419
- endProps = _ref.endProps;
454
+ endProps = _ref.endProps,
455
+ placeholder = _ref.placeholder;
420
456
 
421
457
  var _useState = React.useState(null),
422
458
  error = _useState[0],
@@ -440,6 +476,7 @@ var RangeInner = function RangeInner(_ref) {
440
476
  return /*#__PURE__*/React__default["default"].createElement(SearchButton, {
441
477
  size: size,
442
478
  template: template,
479
+ isMore: isMore,
443
480
  onBlur: onBlur,
444
481
  defaultActive: defaultActive,
445
482
  name: name,
@@ -475,7 +512,8 @@ var RangeInner = function RangeInner(_ref) {
475
512
  },
476
513
  onFocus: function onFocus() {
477
514
  setActive(true);
478
- }
515
+ },
516
+ placeholder: Array.isArray(placeholder) ? placeholder[0] : placeholder || "请输入"
479
517
  })), "~", /*#__PURE__*/React__default["default"].createElement(antd.InputNumber, _extends({
480
518
  size: "small"
481
519
  }, endProps, {
@@ -487,24 +525,29 @@ var RangeInner = function RangeInner(_ref) {
487
525
  },
488
526
  onFocus: function onFocus() {
489
527
  setActive(true);
490
- }
528
+ },
529
+ placeholder: Array.isArray(placeholder) ? placeholder[0] : placeholder || "请输入"
491
530
  }))));
492
531
  });
493
532
  };
494
533
  var Range = withFilterItem(RangeInner);
495
534
 
496
- var _excluded$3 = ["name", "label", "template", "defaultActive", "onBlur", "onSearch", "onActiveChange"];
535
+ var _excluded$5 = ["name", "label", "isMore", "template", "defaultActive", "onBlur", "onSearch", "onActiveChange", "placeholder"];
497
536
  var TextInner = function TextInner(_ref) {
498
537
  var name = _ref.name,
538
+ label = _ref.label,
539
+ isMore = _ref.isMore,
499
540
  template = _ref.template,
500
541
  defaultActive = _ref.defaultActive,
501
542
  onBlur = _ref.onBlur,
502
543
  onSearch = _ref.onSearch,
503
544
  _onActiveChange = _ref.onActiveChange,
504
- props = _objectWithoutPropertiesLoose(_ref, _excluded$3);
545
+ placeholder = _ref.placeholder,
546
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$5);
505
547
 
506
548
  return /*#__PURE__*/React__default["default"].createElement(SearchButton, {
507
549
  defaultActive: defaultActive,
550
+ isMore: isMore,
508
551
  onBlur: onBlur,
509
552
  template: template,
510
553
  name: name,
@@ -519,6 +562,7 @@ var TextInner = function TextInner(_ref) {
519
562
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(antd.Input, _extends({
520
563
  size: "small"
521
564
  }, props, {
565
+ placeholder: placeholder || label,
522
566
  value: value,
523
567
  onChange: function onChange(e) {
524
568
  setValue(e.target.value);
@@ -531,10 +575,12 @@ var TextInner = function TextInner(_ref) {
531
575
  };
532
576
  var Text = withFilterItem(TextInner);
533
577
 
534
- var _excluded$2 = ["name"];
578
+ var _excluded$4 = ["name", "label", "placeholder", "isMore"];
535
579
  var SelectorInner = function SelectorInner(_ref) {
536
580
  var name = _ref.name,
537
- props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
581
+ label = _ref.label,
582
+ placeholder = _ref.placeholder,
583
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$4);
538
584
 
539
585
  var _useConsumer = useConsumer(),
540
586
  aValue = _useConsumer.value,
@@ -542,9 +588,7 @@ var SelectorInner = function SelectorInner(_ref) {
542
588
 
543
589
  var currentValue = aValue[name];
544
590
  return /*#__PURE__*/React__default["default"].createElement(antd.Select, _extends({}, props, {
545
- style: {
546
- minWidth: "150px"
547
- },
591
+ placeholder: label || placeholder,
548
592
  size: "small",
549
593
  value: currentValue,
550
594
  onChange: function onChange(value, item) {
@@ -554,12 +598,13 @@ var SelectorInner = function SelectorInner(_ref) {
554
598
  };
555
599
  var Selector = withFilterItem(SelectorInner);
556
600
 
557
- var _excluded$1 = ["name", "label"];
601
+ var _excluded$3 = ["name", "label", "className", "isMore"];
558
602
 
559
603
  var Check = function Check(_ref) {
560
604
  var name = _ref.name,
561
605
  label = _ref.label,
562
- props = _objectWithoutPropertiesLoose(_ref, _excluded$1);
606
+ className = _ref.className,
607
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$3);
563
608
 
564
609
  var _useConsumer = useConsumer(),
565
610
  aValue = _useConsumer.value,
@@ -567,6 +612,7 @@ var Check = function Check(_ref) {
567
612
 
568
613
  var currentValue = aValue[name];
569
614
  return /*#__PURE__*/React__default["default"].createElement(antd.Checkbox, _extends({}, props, {
615
+ className: classnames__default["default"]('react-filter-item', className),
570
616
  size: "small",
571
617
  checked: currentValue,
572
618
  onChange: function onChange(e) {
@@ -578,56 +624,59 @@ var Check = function Check(_ref) {
578
624
  }), label);
579
625
  };
580
626
 
581
- var _excluded = ["name", "value", "children"],
582
- _excluded2 = ["type"];
583
- var withMoreExtraButton = function withMoreExtraButton(WrappedComponent) {
584
- return function (_ref) {
585
- var name = _ref.name,
586
- children = _ref.children,
587
- props = _objectWithoutPropertiesLoose(_ref, _excluded);
588
-
589
- var _useState = React.useState(false),
590
- isEdit = _useState[0],
591
- setIsEdit = _useState[1];
627
+ var _excluded$2 = ["label", "name", "options", "isMore"];
628
+ var RadioList = withFilterItem(function (_ref) {
629
+ var name = _ref.name,
630
+ options = _ref.options,
631
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
592
632
 
593
- return isEdit ? /*#__PURE__*/React__default["default"].createElement(WrappedComponent, _extends({
594
- defaultActive: true
595
- }, props, {
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);
633
+ var _useConsumer = useConsumer(),
634
+ aValue = _useConsumer.value,
635
+ _onChange = _useConsumer.onChange;
615
636
 
616
- return function (innerProps) {
617
- var mapping = {
618
- range: RangeButton,
619
- text: TextButton,
620
- selector: SelectorButton
621
- };
622
- var ExtraButtonComponent = mapping[type];
637
+ var currentValue = aValue[name];
638
+ return /*#__PURE__*/React__default["default"].createElement(antd.Radio.Group, _extends({}, props, {
639
+ options: options,
640
+ value: get__default["default"](currentValue, 'value'),
641
+ onChange: function onChange(e) {
642
+ var item = options.find(function (item) {
643
+ return item.value === e.target.value;
644
+ });
623
645
 
624
- if (!ExtraButtonComponent) {
625
- return null;
646
+ _onChange(name, item);
626
647
  }
648
+ }));
649
+ });
627
650
 
628
- return /*#__PURE__*/React__default["default"].createElement(ExtraButtonComponent, _extends({}, props, innerProps));
629
- };
630
- };
651
+ var _excluded$1 = ["label", "name", "options", "isMore"];
652
+ var CheckboxList = withFilterItem(function (_ref) {
653
+ var name = _ref.name,
654
+ options = _ref.options,
655
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$1);
656
+
657
+ var _useConsumer = useConsumer(),
658
+ aValue = _useConsumer.value,
659
+ _onChange = _useConsumer.onChange;
660
+
661
+ var currentValue = aValue[name];
662
+ return /*#__PURE__*/React__default["default"].createElement(antd.Checkbox.Group, _extends({}, props, {
663
+ value: (currentValue || []).map(function (_ref2) {
664
+ var value = _ref2.value;
665
+ return value;
666
+ }),
667
+ onChange: function onChange(value) {
668
+ var item = value.map(function (value) {
669
+ return options.find(function (item) {
670
+ return item.value === value;
671
+ });
672
+ });
673
+ console.log(item);
674
+
675
+ _onChange(name, item);
676
+ },
677
+ options: options
678
+ }));
679
+ });
631
680
 
632
681
  var filterNull = function filterNull(item) {
633
682
  var target = Object.assign({}, item);
@@ -665,19 +714,25 @@ var filterNull = function filterNull(item) {
665
714
 
666
715
  var Filter = function Filter(_ref) {
667
716
  var displayLine = _ref.displayLine,
717
+ defaultDisplay = _ref.defaultDisplay,
668
718
  isExtra = _ref.isExtra,
669
719
  list = _ref.list,
670
720
  label = _ref.label,
721
+ labelHidden = _ref.labelHidden,
722
+ itemLabelHidden = _ref.itemLabelHidden,
671
723
  unfoldText = _ref.unfoldText,
672
724
  foldText = _ref.foldText,
673
725
  extra = _ref.extra,
726
+ more = _ref.more,
727
+ moreTrigger = _ref.moreTrigger,
728
+ moreLabel = _ref.moreLabel,
674
729
  originValue = _ref.value,
675
730
  onChange = _ref.onChange;
676
731
  var value = React.useMemo(function () {
677
732
  return filterNull(originValue);
678
733
  }, [originValue]);
679
734
 
680
- var _useState = React.useState(false),
735
+ var _useState = React.useState(defaultDisplay),
681
736
  display = _useState[0],
682
737
  setDisplay = _useState[1];
683
738
 
@@ -687,10 +742,12 @@ var Filter = function Filter(_ref) {
687
742
  var renderList = function renderList(list) {
688
743
  return list.map(function (item, index) {
689
744
  return /*#__PURE__*/React__default["default"].createElement(antd.Space, {
690
- key: index
745
+ key: index,
746
+ className: "react-filter-line"
691
747
  }, item.map(function (item, index) {
692
748
  return React.cloneElement(item, {
693
- key: index
749
+ key: index,
750
+ labelHidden: itemLabelHidden
694
751
  });
695
752
  }));
696
753
  });
@@ -703,6 +760,24 @@ var Filter = function Filter(_ref) {
703
760
  onChange(filterNull(target));
704
761
  };
705
762
 
763
+ var moreFilter = more && more.length > 0 ? /*#__PURE__*/React__default["default"].createElement(antd.Space, {
764
+ className: "react-filter-line is-more"
765
+ }, /*#__PURE__*/React__default["default"].createElement(antd.Space, {
766
+ className: "react-filter-item"
767
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
768
+ className: "react-filter-item-label"
769
+ }, moreLabel, ":"), /*#__PURE__*/React__default["default"].createElement(antd.Space, {
770
+ className: "react-filter-item-children",
771
+ split: /*#__PURE__*/React__default["default"].createElement(antd.Divider, {
772
+ type: "vertical"
773
+ })
774
+ }, more.map(function (item, index) {
775
+ return React.cloneElement(item, {
776
+ key: index,
777
+ isMore: true,
778
+ moreTrigger: moreTrigger
779
+ });
780
+ })))) : null;
706
781
  return /*#__PURE__*/React__default["default"].createElement(Provider$1, {
707
782
  value: {
708
783
  value: value,
@@ -712,7 +787,7 @@ var Filter = function Filter(_ref) {
712
787
  className: "react-filter"
713
788
  }, /*#__PURE__*/React__default["default"].createElement("div", {
714
789
  className: "react-filter-inner"
715
- }, /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement(antd.Space, null, /*#__PURE__*/React__default["default"].createElement(FilterItem, {
790
+ }, /*#__PURE__*/React__default["default"].createElement("div", null, labelHidden ? null : /*#__PURE__*/React__default["default"].createElement(antd.Space, null, /*#__PURE__*/React__default["default"].createElement(FilterItem, {
716
791
  className: "react-filter-selected",
717
792
  label: label
718
793
  }, Object.keys(value).map(function (key) {
@@ -729,11 +804,11 @@ var Filter = function Filter(_ref) {
729
804
  var label = _ref2.label;
730
805
  return label;
731
806
  }).join(",") : item.label);
732
- })), /*#__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, {
807
+ })), /*#__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, {
733
808
  className: "react-filter-divider"
734
809
  }), /*#__PURE__*/React__default["default"].createElement("div", {
735
810
  className: "react-filter-inner"
736
- }, renderList(moreList))) : /*#__PURE__*/React__default["default"].createElement("div", {
811
+ }, renderList(moreList)), moreList.length > 0 ? moreFilter : null) : /*#__PURE__*/React__default["default"].createElement("div", {
737
812
  className: "react-filter-divider-close"
738
813
  }), isExtra && list.length > displayLine ? /*#__PURE__*/React__default["default"].createElement(antd.Row, {
739
814
  className: "react-filter-switch-btn",
@@ -754,20 +829,79 @@ Filter.type = {
754
829
  Range: Range,
755
830
  Text: Text,
756
831
  Selector: Selector,
757
- Check: Check
832
+ Check: Check,
833
+ RadioList: RadioList,
834
+ CheckboxList: CheckboxList
758
835
  };
759
836
  Filter.defaultProps = {
760
837
  label: '筛选项',
838
+ labelHidden: false,
839
+ itemLabelHidden: false,
761
840
  unfoldText: '展开',
762
841
  foldText: '收起',
763
842
  displayLine: 2,
843
+ defaultDisplay: false,
764
844
  isExtra: true,
765
845
  list: [[]],
846
+ more: [],
847
+ moreTrigger: 'hover',
848
+ moreLabel: '更多',
766
849
  value: {},
767
850
  extra: null,
768
851
  onChange: function onChange() {}
769
852
  };
770
853
 
854
+ var _excluded = ["name", "value", "children"],
855
+ _excluded2 = ["type"];
856
+ var withMoreExtraButton = function withMoreExtraButton(WrappedComponent) {
857
+ return function (_ref) {
858
+ var name = _ref.name,
859
+ children = _ref.children,
860
+ props = _objectWithoutPropertiesLoose(_ref, _excluded);
861
+
862
+ var _useState = React.useState(false),
863
+ isEdit = _useState[0],
864
+ setIsEdit = _useState[1];
865
+
866
+ return isEdit ? /*#__PURE__*/React__default["default"].createElement(WrappedComponent, _extends({
867
+ defaultActive: true
868
+ }, props, {
869
+ name: name,
870
+ onBlur: function onBlur() {
871
+ setIsEdit(false);
872
+ }
873
+ })) : /*#__PURE__*/React__default["default"].createElement(List.Item, {
874
+ onClick: function onClick(e) {
875
+ e.stopPropagation();
876
+ setIsEdit(true);
877
+ },
878
+ label: children || "其他"
879
+ });
880
+ };
881
+ };
882
+ var RangeButton = withMoreExtraButton(RangeInner);
883
+ var TextButton = withMoreExtraButton(TextInner);
884
+ var SelectorButton = withMoreExtraButton(SelectorInner);
885
+ var createExtraButton = function createExtraButton(_ref2) {
886
+ var type = _ref2.type,
887
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded2);
888
+
889
+ return function (innerProps) {
890
+ var mapping = {
891
+ range: RangeButton,
892
+ text: TextButton,
893
+ selector: SelectorButton
894
+ };
895
+ var ExtraButtonComponent = mapping[type];
896
+
897
+ if (!ExtraButtonComponent) {
898
+ return null;
899
+ }
900
+
901
+ return /*#__PURE__*/React__default["default"].createElement(ExtraButtonComponent, _extends({}, props, innerProps));
902
+ };
903
+ };
904
+
771
905
  exports.FilterItem = FilterItem;
772
906
  exports.SearchButton = SearchButton;
773
907
  exports.createExtraButton = createExtraButton;