linkmore-design 1.0.24 → 1.0.27

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.
Files changed (139) hide show
  1. package/dist/index.umd.js +4874 -1210
  2. package/dist/index.umd.min.js +7 -7
  3. package/es/Button/index.js +1 -1
  4. package/es/Button/style/style.css +6 -0
  5. package/es/ButtonTags/style/style.css +3 -0
  6. package/es/Card/style/index.css +3 -0
  7. package/es/Checkbox/style/style.css +9 -0
  8. package/es/CkFilter/baseFilter/NestedFilter.js +137 -0
  9. package/es/CkFilter/baseFilter/filterMenu.js +15 -9
  10. package/es/CkFilter/baseFilter/index.js +5 -2
  11. package/es/CkFilter/baseFilter/moreFilters.js +20 -2
  12. package/es/CkFilter/complexFilter/drawer.js +35 -20
  13. package/es/CkFilter/complexFilter/index.js +1 -1
  14. package/es/CkFilter/components/Controls.js +8 -0
  15. package/es/CkFilter/components/DragBox/DndContainer.js +49 -0
  16. package/es/CkFilter/components/DragBox/index.js +63 -0
  17. package/es/CkFilter/components/DragBox/sortableBox.js +24 -0
  18. package/es/CkFilter/components/DragBox/sortableItem.js +111 -0
  19. package/es/CkFilter/components/Nested.js +90 -0
  20. package/es/CkFilter/components/filterTypes.js +59 -94
  21. package/es/CkFilter/components/modal.js +105 -38
  22. package/es/CkFilter/context.js +16 -3
  23. package/es/CkFilter/customFilter/drawer.js +61 -15
  24. package/es/CkFilter/customFilter/index.js +4 -1
  25. package/es/CkFilter/customFilter/radioGroup.js +4 -3
  26. package/es/CkFilter/icon_placeholder.png +0 -0
  27. package/es/CkFilter/style/style.css +45 -5
  28. package/es/CustomerService/style/style.css +3 -0
  29. package/es/Drawer/style/index.css +3 -0
  30. package/es/Dropdown/index.d.ts +2 -0
  31. package/es/Dropdown/index.js +9 -12
  32. package/es/Dropdown/style/index.css +15 -2
  33. package/es/EditTable/style/style.css +3 -0
  34. package/es/Empty/index.d.ts +7 -0
  35. package/es/Empty/index.js +3 -0
  36. package/es/Empty/style/index.css +502 -0
  37. package/es/Empty/style/index.d.ts +1 -0
  38. package/es/Empty/style/index.js +1 -0
  39. package/es/Filter/style/style.css +3 -0
  40. package/es/Input/index.js +6 -5
  41. package/es/Input/style/style.css +20 -0
  42. package/es/InputNumber/style/index.css +3 -0
  43. package/es/LeftTable/style/style.css +3 -0
  44. package/es/LmTable/ImgList/imgCell.js +3 -1
  45. package/es/LmTable/ImgList/imgTable.js +4 -4
  46. package/es/LmTable/style/style.css +65 -61
  47. package/es/Menu/index.d.ts +7 -0
  48. package/es/Menu/index.js +3 -0
  49. package/es/Menu/style/index.css +502 -0
  50. package/es/Menu/style/index.d.ts +1 -0
  51. package/es/Menu/style/index.js +1 -0
  52. package/es/Modal/index.js +1 -1
  53. package/es/Modal/style/index.css +3 -0
  54. package/es/Notification/style/index.css +3 -0
  55. package/es/Pagination/style/index.css +3 -0
  56. package/es/PopTable/style/style.css +3 -0
  57. package/es/ProTable/style/style.css +3 -0
  58. package/es/Radio/index.js +4 -2
  59. package/es/Radio/style/style.css +17 -3
  60. package/es/Select/style/index.css +3 -0
  61. package/es/Space/style/index.css +3 -0
  62. package/es/TabBar/index.js +1 -1
  63. package/es/Tree/index.d.ts +7 -0
  64. package/es/Tree/index.js +3 -0
  65. package/es/Tree/style/index.css +502 -0
  66. package/es/Tree/style/index.d.ts +1 -0
  67. package/es/Tree/style/index.js +1 -0
  68. package/es/index.js +9 -299
  69. package/es/styles/main.css +3 -0
  70. package/es/styles/resetAntd.css +3 -0
  71. package/lib/Button/index.js +1 -1
  72. package/lib/Button/style/style.css +6 -0
  73. package/lib/ButtonTags/style/style.css +3 -0
  74. package/lib/Card/style/index.css +3 -0
  75. package/lib/Checkbox/style/style.css +9 -0
  76. package/lib/CkFilter/baseFilter/NestedFilter.js +137 -0
  77. package/lib/CkFilter/baseFilter/filterMenu.js +15 -9
  78. package/lib/CkFilter/baseFilter/index.js +5 -2
  79. package/lib/CkFilter/baseFilter/moreFilters.js +20 -2
  80. package/lib/CkFilter/complexFilter/drawer.js +35 -20
  81. package/lib/CkFilter/complexFilter/index.js +1 -1
  82. package/lib/CkFilter/components/Controls.js +8 -0
  83. package/lib/CkFilter/components/DragBox/DndContainer.js +49 -0
  84. package/lib/CkFilter/components/DragBox/index.js +63 -0
  85. package/lib/CkFilter/components/DragBox/sortableBox.js +24 -0
  86. package/lib/CkFilter/components/DragBox/sortableItem.js +111 -0
  87. package/lib/CkFilter/components/Nested.js +90 -0
  88. package/lib/CkFilter/components/filterTypes.js +59 -94
  89. package/lib/CkFilter/components/modal.js +105 -38
  90. package/lib/CkFilter/context.js +16 -3
  91. package/lib/CkFilter/customFilter/drawer.js +61 -15
  92. package/lib/CkFilter/customFilter/index.js +4 -1
  93. package/lib/CkFilter/customFilter/radioGroup.js +4 -3
  94. package/lib/CkFilter/icon_placeholder.png +0 -0
  95. package/lib/CkFilter/style/style.css +45 -5
  96. package/lib/CustomerService/style/style.css +3 -0
  97. package/lib/Drawer/style/index.css +3 -0
  98. package/lib/Dropdown/index.d.ts +2 -0
  99. package/lib/Dropdown/index.js +9 -12
  100. package/lib/Dropdown/style/index.css +15 -2
  101. package/lib/EditTable/style/style.css +3 -0
  102. package/lib/Empty/index.d.ts +7 -0
  103. package/lib/Empty/index.js +15 -0
  104. package/lib/Empty/style/index.css +502 -0
  105. package/lib/Empty/style/index.d.ts +1 -0
  106. package/lib/Empty/style/index.js +3 -0
  107. package/lib/Filter/style/style.css +3 -0
  108. package/lib/Input/index.js +6 -5
  109. package/lib/Input/style/style.css +20 -0
  110. package/lib/InputNumber/style/index.css +3 -0
  111. package/lib/LeftTable/style/style.css +3 -0
  112. package/lib/LmTable/ImgList/imgCell.js +3 -1
  113. package/lib/LmTable/ImgList/imgTable.js +4 -4
  114. package/lib/LmTable/style/style.css +65 -61
  115. package/lib/Menu/index.d.ts +7 -0
  116. package/lib/Menu/index.js +15 -0
  117. package/lib/Menu/style/index.css +502 -0
  118. package/lib/Menu/style/index.d.ts +1 -0
  119. package/lib/Menu/style/index.js +3 -0
  120. package/lib/Modal/index.js +3 -3
  121. package/lib/Modal/style/index.css +3 -0
  122. package/lib/Notification/style/index.css +3 -0
  123. package/lib/Pagination/style/index.css +3 -0
  124. package/lib/PopTable/style/style.css +3 -0
  125. package/lib/ProTable/style/style.css +3 -0
  126. package/lib/Radio/index.js +4 -2
  127. package/lib/Radio/style/style.css +17 -3
  128. package/lib/Select/style/index.css +3 -0
  129. package/lib/Space/style/index.css +3 -0
  130. package/lib/TabBar/index.js +5 -5
  131. package/lib/Tree/index.d.ts +7 -0
  132. package/lib/Tree/index.js +15 -0
  133. package/lib/Tree/style/index.css +502 -0
  134. package/lib/Tree/style/index.d.ts +1 -0
  135. package/lib/Tree/style/index.js +3 -0
  136. package/lib/index.js +9 -299
  137. package/lib/styles/main.css +3 -0
  138. package/lib/styles/resetAntd.css +3 -0
  139. package/package.json +4 -1
@@ -41,14 +41,29 @@ var _VirtualList = _interopRequireDefault(require("../../VirtualList"));
41
41
 
42
42
  var _utils = require("../utils");
43
43
 
44
+ var _DragBox = _interopRequireDefault(require("./DragBox"));
45
+
46
+ var _icon_placeholder = _interopRequireDefault(require("../icon_placeholder.png"));
47
+
44
48
  var _excluded = ["item"],
45
49
  _excluded2 = ["item"],
46
50
  _excluded3 = ["item"],
47
51
  _excluded4 = ["item"],
48
- _excluded5 = ["item"],
49
- _excluded6 = ["type"];
52
+ _excluded5 = ["type"];
53
+
54
+ var FilterEmpty = function FilterEmpty() {
55
+ return /*#__PURE__*/_react.default.createElement("div", {
56
+ className: "filter_empty"
57
+ }, /*#__PURE__*/_react.default.createElement("img", {
58
+ src: _icon_placeholder.default,
59
+ alt: "empty",
60
+ width: 81
61
+ }), /*#__PURE__*/_react.default.createElement("div", {
62
+ className: "filter_empty_text"
63
+ }, "\u6682\u65E0\u6570\u636E"));
64
+ }; // 输入框过滤器
65
+
50
66
 
51
- // 输入框过滤器
52
67
  var InputFilter = function InputFilter(_ref) {
53
68
  var getFilterValue = _ref.getFilterValue,
54
69
  setFilterValue = _ref.setFilterValue;
@@ -58,6 +73,13 @@ var InputFilter = function InputFilter(_ref) {
58
73
  return setFilterValue(val);
59
74
  };
60
75
 
76
+ (0, _react.useEffect)(function () {
77
+ setTimeout(function () {
78
+ var _inputRef$current;
79
+
80
+ (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();
81
+ }, 200);
82
+ }, []);
61
83
  return /*#__PURE__*/_react.default.createElement("div", {
62
84
  className: "filter_dropdown"
63
85
  }, /*#__PURE__*/_react.default.createElement("div", {
@@ -133,9 +155,7 @@ var SelectFilter = function SelectFilter(_ref2) {
133
155
  }), /*#__PURE__*/_react.default.createElement("div", {
134
156
  className: "filter_item-content"
135
157
  }, item.label));
136
- }), !options.length && /*#__PURE__*/_react.default.createElement("div", {
137
- className: "filter_empty"
138
- }, "\u6682\u65E0\u6570\u636E")));
158
+ }), !options.length && /*#__PURE__*/_react.default.createElement(FilterEmpty, null)));
139
159
  }; // 嵌套结构下拉单选过滤器
140
160
 
141
161
 
@@ -162,15 +182,14 @@ var NestedFilter = function NestedFilter(_ref4) {
162
182
  }; // 单选事件
163
183
 
164
184
 
165
- var onChange = function onChange(e, item) {
166
- e.preventDefault();
167
- setFilterValue(item.value);
168
- };
169
-
170
185
  var handleClick = function handleClick(e, item) {
171
- e.preventDefault();
172
- e.stopPropagation();
173
- setFilterValue(item, 'children');
186
+ e.preventDefault(); // 是否存在嵌套
187
+
188
+ if (item === null || item === void 0 ? void 0 : item.children) {
189
+ setFilterValue(item, 'children');
190
+ } else {
191
+ setFilterValue(item.value);
192
+ }
174
193
  };
175
194
 
176
195
  return /*#__PURE__*/_react.default.createElement("div", {
@@ -199,19 +218,12 @@ var NestedFilter = function NestedFilter(_ref4) {
199
218
  checked: item.value === getFilterValue
200
219
  }),
201
220
  onClick: function onClick(e) {
202
- return onChange(e, item);
221
+ return handleClick(e, item);
203
222
  }
204
223
  }), /*#__PURE__*/_react.default.createElement("div", {
205
224
  className: "filter_item-content"
206
- }, item.label), /*#__PURE__*/_react.default.createElement(_IconFont.default, {
207
- type: "lmweb-gengduotianchong",
208
- onClick: function onClick(e) {
209
- return handleClick(e, item);
210
- }
211
- }));
212
- }), !options.length && /*#__PURE__*/_react.default.createElement("div", {
213
- className: "filter_empty"
214
- }, "\u6682\u65E0\u6570\u636E")));
225
+ }, item.label));
226
+ }), !options.length && /*#__PURE__*/_react.default.createElement(FilterEmpty, null)));
215
227
  }; // 自定义筛选下拉选过滤器
216
228
 
217
229
 
@@ -274,9 +286,7 @@ var CustomFilter = function CustomFilter(_ref6) {
274
286
  className: "filter_item-content"
275
287
  }, /*#__PURE__*/_react.default.createElement(_IconFont.default, {
276
288
  type: "lmweb-plus"
277
- }), "\u65B0\u589E\u81EA\u5B9A\u4E49\u67E5\u8BE2")), !filters.length && /*#__PURE__*/_react.default.createElement("div", {
278
- className: "filter_empty"
279
- }, "\u6682\u65E0\u6570\u636E")));
289
+ }), "\u65B0\u589E\u81EA\u5B9A\u4E49\u67E5\u8BE2")), !filters.length && /*#__PURE__*/_react.default.createElement(FilterEmpty, null)));
280
290
  }; // 下拉多选过滤器: 要过滤的数据, 当前选中项, 触发过滤, 过滤前的数据
281
291
 
282
292
 
@@ -403,9 +413,7 @@ var CheckboxFilter = function CheckboxFilter(_ref8) {
403
413
  value: item.value,
404
414
  className: "filter_item-content"
405
415
  }, item.label));
406
- }), !options.length && /*#__PURE__*/_react.default.createElement("div", {
407
- className: "filter_empty"
408
- }, "\u6682\u65E0\u6570\u636E")), /*#__PURE__*/_react.default.createElement("div", {
416
+ }), !options.length && /*#__PURE__*/_react.default.createElement(FilterEmpty, null)), /*#__PURE__*/_react.default.createElement("div", {
409
417
  className: "filter_footer"
410
418
  }, /*#__PURE__*/_react.default.createElement("div", {
411
419
  className: "footer_clear",
@@ -434,19 +442,12 @@ var MoreFilter = function MoreFilter(_ref12) {
434
442
  var _useState11 = (0, _react.useState)(filters || []),
435
443
  _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
436
444
  options = _useState12[0],
437
- setOptions = _useState12[1];
445
+ setOptions = _useState12[1]; // 是否存在搜索, 当数据大于8时存在搜索
438
446
 
439
- console.log('more'); // 是否存在搜索, 当数据大于8时存在搜索
440
447
 
441
448
  var isSearch = (0, _react.useMemo)(function () {
442
449
  return filters.length > 8;
443
- }, [filters.length]); // 是否可置顶, 第一项无置顶操作, 所以这里的index > 0
444
-
445
- var isTop = (0, _react.useCallback)(function (item) {
446
- return checkedValues.includes(item.field) && filters.findIndex(function (v) {
447
- return v.field === item.field;
448
- }) > 0;
449
- }, [checkedValues, filters]); // 是否半选
450
+ }, [filters.length]); // 是否半选
450
451
 
451
452
  var indeterminate = (0, _react.useMemo)(function () {
452
453
  return checkedValues.length && checkedValues.length < options.length;
@@ -486,23 +487,6 @@ var MoreFilter = function MoreFilter(_ref12) {
486
487
 
487
488
  var handleCancel = function handleCancel() {
488
489
  setFilterValue(checkedValues, 'cancel');
489
- }; // 置顶操作, 防止频繁操作, 建议加上节流
490
-
491
-
492
- var handleTop = function handleTop(e, item) {
493
- e.stopPropagation();
494
- setFilterValue(item, 'top');
495
- }; // 单选事件
496
-
497
-
498
- var onChange = function onChange(e, item) {
499
- e.preventDefault();
500
- e.stopPropagation(); // setFilterValue(item)
501
-
502
- var nValue = checkedValues.includes(item.field) ? checkedValues.filter(function (v) {
503
- return v !== item.field;
504
- }) : [].concat((0, _toConsumableArray2.default)(checkedValues), [item.field]);
505
- setCheckedValues(nValue);
506
490
  };
507
491
 
508
492
  return /*#__PURE__*/_react.default.createElement("div", {
@@ -525,33 +509,13 @@ var MoreFilter = function MoreFilter(_ref12) {
525
509
  }, "\u5168\u90E8")), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("span", {
526
510
  className: "filter_reset",
527
511
  onClick: handleReset
528
- }, "\u91CD\u7F6E")))), /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Checkbox.Group, {
529
- value: checkedValues,
530
- className: "filter_body"
531
- }, /*#__PURE__*/_react.default.createElement(_VirtualList.default, {
512
+ }, "\u91CD\u7F6E")))), /*#__PURE__*/_react.default.createElement(_DragBox.default, {
513
+ filters: filters,
532
514
  options: options,
533
- className: "filter_list"
534
- }, function (_ref13) {
535
- var item = _ref13.item,
536
- resetProps = (0, _objectWithoutProperties2.default)(_ref13, _excluded5);
537
- return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, resetProps, {
538
- className: "filter_item",
539
- onClick: function onClick(e) {
540
- return onChange(e, item);
541
- }
542
- }), /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Checkbox, {
543
- value: item.field,
544
- className: "filter_item-content"
545
- }, item.title), /*#__PURE__*/_react.default.createElement("div", {
546
- className: "filter_item_operate"
547
- }, isTop(item) && /*#__PURE__*/_react.default.createElement(_IconFont.default, {
548
- type: "lmweb-vertical-align-top",
549
- className: "hover_show icon_top",
550
- onClick: function onClick(e) {
551
- return handleTop(e, item);
552
- }
553
- })));
554
- })), /*#__PURE__*/_react.default.createElement("div", {
515
+ checkedValues: checkedValues,
516
+ setFilterValue: setFilterValue,
517
+ setCheckedValues: setCheckedValues
518
+ }), /*#__PURE__*/_react.default.createElement("div", {
555
519
  className: "filter_footer"
556
520
  }, /*#__PURE__*/_react.default.createElement("div", {
557
521
  className: "footer_clear",
@@ -564,11 +528,11 @@ var MoreFilter = function MoreFilter(_ref12) {
564
528
  }; // 日期范围选择器
565
529
 
566
530
 
567
- var DatePickerFilter = function DatePickerFilter(_ref14) {
568
- var getFilterValue = _ref14.getFilterValue,
569
- setFilterValue = _ref14.setFilterValue,
570
- props = _ref14.props,
571
- dateType = _ref14.dateType;
531
+ var DatePickerFilter = function DatePickerFilter(_ref13) {
532
+ var getFilterValue = _ref13.getFilterValue,
533
+ setFilterValue = _ref13.setFilterValue,
534
+ props = _ref13.props,
535
+ dateType = _ref13.dateType;
572
536
  console.log(dateType, '--dateType'); // 对日期格式的转换, 日期组件仅接收moment格式
573
537
 
574
538
  var value = (0, _react.useMemo)(function () {
@@ -579,8 +543,7 @@ var DatePickerFilter = function DatePickerFilter(_ref14) {
579
543
  }
580
544
 
581
545
  return nValue;
582
- }, [getFilterValue]);
583
- console.log(value, '--value'); // 最近的时间段, 值为JSON转换后的字符串
546
+ }, [getFilterValue]); // 最近的时间段, 值为JSON转换后的字符串
584
547
 
585
548
  var ranges = (0, _react.useMemo)(function () {
586
549
  return Object.entries((0, _utils.getRanges)()).map(function (item, i) {
@@ -636,11 +599,14 @@ var DatePickerFilter = function DatePickerFilter(_ref14) {
636
599
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_datePicker.default.RangePicker, (0, _extends2.default)({
637
600
  picker: "date",
638
601
  separator: /*#__PURE__*/_react.default.createElement(_IconFont.default, {
639
- type: "lmweb-swap-right"
602
+ type: "lmweb-swap-right",
603
+ style: {
604
+ color: 'var(--text-color)'
605
+ }
640
606
  }),
641
607
  placeholder: ['开始日期', '结束日期'],
642
608
  style: {
643
- width: 200
609
+ width: 210
644
610
  }
645
611
  }, props, {
646
612
  value: value,
@@ -741,8 +707,7 @@ var CascaderFilter = function CascaderFilter(props) {
741
707
  }, "\u53D6\u6D88"), /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
742
708
  type: "primary",
743
709
  size: "small",
744
- onClick: handleSure,
745
- disabled: !(checkedValues === null || checkedValues === void 0 ? void 0 : checkedValues.length)
710
+ onClick: handleSure
746
711
  }, "\u786E\u5B9A")));
747
712
  };
748
713
 
@@ -814,7 +779,7 @@ var CascaderFilter = function CascaderFilter(props) {
814
779
 
815
780
  var FilterComp = function FilterComp(props) {
816
781
  var type = props.type,
817
- resetProps = (0, _objectWithoutProperties2.default)(props, _excluded6);
782
+ resetProps = (0, _objectWithoutProperties2.default)(props, _excluded5);
818
783
 
819
784
  switch (type) {
820
785
  case 'input':
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
3
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
4
 
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
6
+
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
@@ -15,8 +15,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
15
15
 
16
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
17
 
18
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
19
-
20
18
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
21
19
 
22
20
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
@@ -27,18 +25,17 @@ var _form = _interopRequireDefault(require("antd/es/form"));
27
25
 
28
26
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
29
27
 
30
- var _linkmoreDesign = require("linkmore-design");
31
-
32
28
  var _react = _interopRequireWildcard(require("react"));
33
29
 
30
+ var _linkmoreDesign = require("linkmore-design");
31
+
34
32
  var _context2 = require("../context");
35
33
 
36
34
  var _utils = require("../utils");
37
35
 
38
36
  var _Controls = _interopRequireDefault(require("./Controls"));
39
37
 
40
- var _excluded = ["field"];
41
-
38
+ // import Modal from '../../Modal'
42
39
  // const { EditModal } = Modal
43
40
  // 第二层抽屉,弹出数据选择
44
41
  var ModalItem = function ModalItem() {
@@ -71,10 +68,15 @@ var ModalItem = function ModalItem() {
71
68
  });
72
69
  form.resetFields();
73
70
  };
71
+ /*
72
+ * customModal.data.type === 'nested' 时,处理不同
73
+ *
74
+ */
75
+
74
76
 
75
77
  var onSave = /*#__PURE__*/function () {
76
78
  var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
77
- var _yield$form$validateF, field, values, filterValues;
79
+ var _instance$fullData, _yield$form$validateF, field, mode, value, filterValues, getFormField, findCustom, currentItem, isNested, nField, nValue, _value$subValue;
78
80
 
79
81
  return _regenerator.default.wrap(function _callee$(_context) {
80
82
  while (1) {
@@ -87,16 +89,45 @@ var ModalItem = function ModalItem() {
87
89
  case 3:
88
90
  _yield$form$validateF = _context.sent;
89
91
  field = _yield$form$validateF.field;
90
- values = (0, _objectWithoutProperties2.default)(_yield$form$validateF, _excluded);
91
- filterValues = customModal.type === 'complex' ? (0, _objectSpread2.default)({}, complexDrawer.data) : (0, _objectSpread2.default)({}, customDrawer.data.filterValues); // 判断是新增还是编辑
92
+ mode = _yield$form$validateF.mode;
93
+ value = _yield$form$validateF.value;
94
+ // 选中的筛选数据
95
+ filterValues = customModal.type === 'complex' ? (0, _objectSpread2.default)({}, complexDrawer.data) : (0, _objectSpread2.default)({}, customDrawer.data.filterValues); // 查找当前筛选的值: 自定义筛选 & 高级筛选
92
96
 
93
- if (isEdit) {
94
- Object.assign(filterValues, (0, _defineProperty2.default)({}, customModal.data.field, values));
95
- } else {
96
- Object.assign(filterValues, (0, _defineProperty2.default)({}, field, values));
97
- }
97
+ getFormField = form.getFieldValue('field');
98
+ findCustom = (_instance$fullData = instance.fullData) === null || _instance$fullData === void 0 ? void 0 : _instance$fullData.find(function (v) {
99
+ return v.field === getFormField;
100
+ });
101
+ currentItem = customModal.type === 'complex' ? customModal.data : findCustom; // 是否嵌套筛选
102
+
103
+ isNested = currentItem.type === 'nested'; // 嵌套筛选的键值不同
104
+
105
+ nField = isEdit ? currentItem.field : field;
106
+ nValue = value;
107
+
108
+ if (isNested) {
109
+ // 删除原有筛选
110
+ delete filterValues[currentItem.field];
111
+ currentItem.data.forEach(function (element) {
112
+ delete filterValues[element.value];
113
+ }); // 存在子级嵌套时,改变键值
114
+
115
+ if (value === null || value === void 0 ? void 0 : (_value$subValue = value.subValue) === null || _value$subValue === void 0 ? void 0 : _value$subValue.children) {
116
+ nField = value.subValue.value;
117
+ }
118
+
119
+ nValue = (value === null || value === void 0 ? void 0 : value.value) || [];
120
+ } // 判断是新增还是编辑
121
+
122
+
123
+ Object.assign(filterValues, (0, _defineProperty2.default)({}, nField, {
124
+ mode: mode,
125
+ value: nValue,
126
+ originField: currentItem.field
127
+ }));
98
128
 
99
129
  if (customModal.type === 'complex') {
130
+ // 高级筛选
100
131
  dispatch({
101
132
  type: 'changeComplexDrawer',
102
133
  complexDrawer: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, complexDrawer), {}, {
@@ -104,6 +135,7 @@ var ModalItem = function ModalItem() {
104
135
  })
105
136
  });
106
137
  } else {
138
+ // 自定义筛选
107
139
  dispatch({
108
140
  type: 'changeDrawer',
109
141
  customDrawer: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, customDrawer), {}, {
@@ -115,20 +147,20 @@ var ModalItem = function ModalItem() {
115
147
  }
116
148
 
117
149
  onClose();
118
- _context.next = 15;
150
+ _context.next = 23;
119
151
  break;
120
152
 
121
- case 12:
122
- _context.prev = 12;
153
+ case 20:
154
+ _context.prev = 20;
123
155
  _context.t0 = _context["catch"](0);
124
156
  console.log('校验错误!', _context.t0);
125
157
 
126
- case 15:
158
+ case 23:
127
159
  case "end":
128
160
  return _context.stop();
129
161
  }
130
162
  }
131
- }, _callee, null, [[0, 12]]);
163
+ }, _callee, null, [[0, 20]]);
132
164
  }));
133
165
 
134
166
  return function onSave() {
@@ -137,30 +169,43 @@ var ModalItem = function ModalItem() {
137
169
  }();
138
170
 
139
171
  var onValuesChange = function onValuesChange(values) {
172
+ console.log('values', values);
173
+
140
174
  if (values.field) {
141
175
  form.setFieldsValue({
142
176
  value: []
143
177
  });
144
178
  }
179
+
180
+ if (values.value) {
181
+ var _values$value;
182
+
183
+ // 嵌套筛选双击触发
184
+ if ((values === null || values === void 0 ? void 0 : (_values$value = values.value) === null || _values$value === void 0 ? void 0 : _values$value.type) === 'dbclick') {
185
+ onSave();
186
+ }
187
+ }
145
188
  }; // 动态展示选择框
146
189
 
147
190
 
148
191
  var DynamicSelect = (0, _react.useCallback)(function (_ref2) {
149
- var _instance$fullData, _instance$fullData$fi;
192
+ var _instance$fullData2;
150
193
 
151
194
  var getFieldValue = _ref2.getFieldValue;
152
195
  var field = getFieldValue('field');
153
- var options = ((_instance$fullData = instance.fullData) === null || _instance$fullData === void 0 ? void 0 : (_instance$fullData$fi = _instance$fullData.find(function (v) {
196
+ var findItem = (_instance$fullData2 = instance.fullData) === null || _instance$fullData2 === void 0 ? void 0 : _instance$fullData2.find(function (v) {
154
197
  return v.field === field;
155
- })) === null || _instance$fullData$fi === void 0 ? void 0 : _instance$fullData$fi.data) || [];
198
+ });
199
+ var options = (findItem === null || findItem === void 0 ? void 0 : findItem.data) || [];
156
200
 
157
201
  if (field) {
158
202
  return /*#__PURE__*/_react.default.createElement(_form.default.Item, {
159
203
  name: "value",
160
- label: "\u9009\u62E9\u5B57\u6BB5\u503C"
204
+ label: "\u9009\u62E9\u5B57\u6BB5\u503C",
205
+ noStyle: true
161
206
  }, /*#__PURE__*/_react.default.createElement(_Controls.default, (0, _extends2.default)({
162
207
  visible: customModal.visible
163
- }, customModal.data, {
208
+ }, findItem, {
164
209
  options: options
165
210
  })));
166
211
  }
@@ -169,9 +214,12 @@ var ModalItem = function ModalItem() {
169
214
  }, [instance.fullData, customModal.data.type]);
170
215
  var config = {
171
216
  title: isEdit ? customModal.data.title : '新增查询项',
172
- visible: customModal.type === 'complex' && customModal.visible,
217
+ visible: customModal.visible,
173
218
  onClose: onClose,
174
219
  className: 'lm_det_drawer',
220
+ bodyStyle: customModal.data.type === 'nested' ? {
221
+ padding: '24px 24px 0'
222
+ } : null,
175
223
  extra: /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Space, {
176
224
  size: 8
177
225
  }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
@@ -191,34 +239,53 @@ var ModalItem = function ModalItem() {
191
239
  form.setFieldsValue(customModal.data);
192
240
  }
193
241
  }, [form, customModal]);
194
- return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Drawer, config, /*#__PURE__*/_react.default.createElement("div", {
195
- className: "custom_modal"
196
- }, /*#__PURE__*/_react.default.createElement(_form.default, {
242
+ return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Drawer, config, /*#__PURE__*/_react.default.createElement(_form.default, {
197
243
  form: form,
198
244
  initialValues: {
199
245
  mode: 'or'
200
246
  },
201
247
  onValuesChange: onValuesChange,
202
248
  layout: "vertical",
203
- size: "default"
204
- }, /*#__PURE__*/_react.default.createElement(_form.default.Item, {
249
+ size: "default",
250
+ className: "custom_form"
251
+ }, /*#__PURE__*/_react.default.createElement("div", {
252
+ className: "custom_group"
253
+ }, /*#__PURE__*/_react.default.createElement("div", {
254
+ className: "custom_label"
255
+ }, "\u67E5\u8BE2\u65B9\u5F0F"), /*#__PURE__*/_react.default.createElement(_form.default.Item, {
205
256
  name: "mode",
206
- label: "\u67E5\u8BE2\u65B9\u5F0F"
207
- }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Radio.Group, null, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Radio, {
257
+ label: "\u67E5\u8BE2\u65B9\u5F0F",
258
+ noStyle: true
259
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Radio.Group, {
260
+ direction: "column"
261
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Radio, {
208
262
  value: "and"
209
263
  }, "\u4E14,\u67E5\u8BE2\u540C\u65F6\u6EE1\u8DB3\u6B64\u9009\u9879\u6761\u4EF6"), /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Radio, {
210
264
  value: "or"
211
- }, "\u6216,\u67E5\u8BE2\u5305\u542B\u6B64\u9009\u9879\u6761\u4EF6"))), !isEdit && /*#__PURE__*/_react.default.createElement(_form.default.Item, {
265
+ }, "\u6216,\u67E5\u8BE2\u5305\u542B\u6B64\u9009\u9879\u6761\u4EF6")))), !isEdit && /*#__PURE__*/_react.default.createElement("div", {
266
+ className: "custom_group",
267
+ id: "area"
268
+ }, /*#__PURE__*/_react.default.createElement("div", {
269
+ className: "custom_label"
270
+ }, "\u9009\u62E9\u5B57\u6BB5"), /*#__PURE__*/_react.default.createElement(_form.default.Item, {
212
271
  name: "field",
213
- label: "\u9009\u62E9\u5B57\u6BB5"
272
+ label: "\u9009\u62E9\u5B57\u6BB5",
273
+ noStyle: true
214
274
  }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Select, {
215
- open: true
275
+ size: "default",
276
+ getPopupContainer: function getPopupContainer() {
277
+ return document.getElementById('area');
278
+ }
216
279
  }, state.instance.fullData.map(function (v) {
217
280
  return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Select.Option, {
218
281
  key: v.field,
219
282
  value: v.field
220
283
  }, v.title);
221
- }))), /*#__PURE__*/_react.default.createElement(_form.default.Item, {
284
+ })))), /*#__PURE__*/_react.default.createElement("div", {
285
+ className: "custom_group custom_full"
286
+ }, /*#__PURE__*/_react.default.createElement("div", {
287
+ className: "custom_label"
288
+ }, "\u9009\u62E9\u5B57\u6BB5\u503C"), /*#__PURE__*/_react.default.createElement(_form.default.Item, {
222
289
  noStyle: true,
223
290
  shouldUpdate: function shouldUpdate(prevValues, currentValues) {
224
291
  return prevValues.field !== currentValues.field;
@@ -29,7 +29,8 @@ var initialState = {
29
29
  searchKey: 'search',
30
30
  levelGroupKey: 'levGroup',
31
31
  filter: true,
32
- complex: false
32
+ complex: false,
33
+ size: 'middle'
33
34
  },
34
35
  // 初始化数据
35
36
  visibleFields: [],
@@ -42,8 +43,8 @@ var initialState = {
42
43
  // 当前过滤的数据的键值对(二级筛选)
43
44
  customFilterValues: {},
44
45
  // 一级筛选过滤的内容
46
+ // 返回的高级筛选过滤的内容
45
47
  complexFilterValues: {},
46
- // 高级筛选过滤的内容
47
48
  nestedFilterValues: {},
48
49
  // 嵌套结构的过滤内容 {objType: {field: 'supplier', value: 's1', label: '一号供应商'}, ...}
49
50
  customDrawer: {
@@ -57,10 +58,15 @@ var initialState = {
57
58
  type: 'custom',
58
59
  data: {}
59
60
  },
61
+ // 高级筛选弹窗数据结构data: { type: {mode: 'or', value: [], originField: '', ...}, ... }
60
62
  complexDrawer: {
61
63
  visible: false,
62
64
  data: {}
63
- } // 高级筛选弹窗数据
65
+ },
66
+ nestedDrawer: {
67
+ visible: false,
68
+ data: {}
69
+ } // 嵌套过滤抽屉
64
70
 
65
71
  };
66
72
 
@@ -73,6 +79,7 @@ var reducer = function reducer(state, action) {
73
79
  customDrawer = action.customDrawer,
74
80
  customModal = action.customModal,
75
81
  complexDrawer = action.complexDrawer,
82
+ nestedDrawer = action.nestedDrawer,
76
83
  customFilterValues = action.customFilterValues,
77
84
  complexFilterValues = action.complexFilterValues,
78
85
  nestedFilterValues = action.nestedFilterValues;
@@ -134,6 +141,12 @@ var reducer = function reducer(state, action) {
134
141
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state), {}, {
135
142
  complexFilterValues: complexFilterValues
136
143
  });
144
+ // 设置嵌套抽屉的数据
145
+
146
+ case 'changeNestedDrawer':
147
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state), {}, {
148
+ nestedDrawer: nestedDrawer
149
+ });
137
150
  // 设置嵌套结构的内容
138
151
 
139
152
  case 'changeNestedFilterValues':