linkmore-design 1.0.55 → 1.0.56

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 (51) hide show
  1. package/dist/CardTable/card/PictureTextRowOperate.d.ts +7 -0
  2. package/dist/LmFilter/Controls/CheckboxTags.d.ts +6 -0
  3. package/dist/LmFilter/Controls/index.d.ts +2 -0
  4. package/dist/LmFilter/LmFilter.d.ts +4 -1
  5. package/dist/LmFilter/complexFilter/drawer.d.ts +4 -0
  6. package/dist/LmFilter/complexFilter/index.d.ts +3 -1
  7. package/dist/LmFilter/complexFilter/valueDrawer.d.ts +4 -0
  8. package/dist/LmFilter/localization.d.ts +8 -0
  9. package/dist/Switch/demos/table.d.ts +2 -0
  10. package/dist/Switch/index.d.ts +2 -1
  11. package/dist/index.umd.js +25 -14
  12. package/dist/index.umd.min.js +6 -6
  13. package/es/CardTable/body/TableBodyCell.js +3 -0
  14. package/es/CardTable/card/PictureTextRow.js +13 -50
  15. package/es/CardTable/card/PictureTextRowOperate.js +130 -0
  16. package/es/CardTable/style/index.css +158 -10
  17. package/es/LmFilter/Controls/CheckboxTags.js +53 -0
  18. package/es/LmFilter/Controls/index.js +47 -0
  19. package/es/LmFilter/LmFilter.js +17 -5
  20. package/es/LmFilter/complexFilter/drawer.js +376 -0
  21. package/es/LmFilter/complexFilter/index.js +50 -3
  22. package/es/LmFilter/complexFilter/valueDrawer.js +238 -0
  23. package/es/LmFilter/components/DropdownFIlter.js +1 -2
  24. package/es/LmFilter/filterFns/index.js +22 -3
  25. package/es/LmFilter/localization.d.ts +8 -0
  26. package/es/LmFilter/localization.js +12 -0
  27. package/es/LmFilter/style/style.css +11 -4
  28. package/es/LmFilter/wrapper/FilterRoot.js +56 -6
  29. package/es/Switch/index.d.ts +2 -1
  30. package/es/Switch/index.js +33 -1
  31. package/es/Switch/style/index.css +41 -0
  32. package/lib/CardTable/body/TableBodyCell.js +3 -0
  33. package/lib/CardTable/card/PictureTextRow.js +13 -50
  34. package/lib/CardTable/card/PictureTextRowOperate.js +130 -0
  35. package/lib/CardTable/style/index.css +158 -10
  36. package/lib/LmFilter/Controls/CheckboxTags.js +53 -0
  37. package/lib/LmFilter/Controls/index.js +47 -0
  38. package/lib/LmFilter/LmFilter.js +17 -5
  39. package/lib/LmFilter/complexFilter/drawer.js +376 -0
  40. package/lib/LmFilter/complexFilter/index.js +50 -3
  41. package/lib/LmFilter/complexFilter/valueDrawer.js +238 -0
  42. package/lib/LmFilter/components/DropdownFIlter.js +1 -2
  43. package/lib/LmFilter/filterFns/index.js +22 -3
  44. package/lib/LmFilter/localization.d.ts +8 -0
  45. package/lib/LmFilter/localization.js +19 -0
  46. package/lib/LmFilter/style/style.css +11 -4
  47. package/lib/LmFilter/wrapper/FilterRoot.js +56 -6
  48. package/lib/Switch/index.d.ts +2 -1
  49. package/lib/Switch/index.js +34 -1
  50. package/lib/Switch/style/index.css +41 -0
  51. package/package.json +1 -1
@@ -0,0 +1,376 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = void 0;
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/extends"));
13
+
14
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
17
+
18
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
19
+
20
+ var _objectSpread3 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
21
+
22
+ var _react = _interopRequireWildcard(require("react"));
23
+
24
+ var _linkmoreDesign = require("linkmore-design");
25
+
26
+ var _utils = require("../utils");
27
+
28
+ var _valueDrawer = _interopRequireDefault(require("./valueDrawer"));
29
+
30
+ var _excluded = ["item"],
31
+ _excluded2 = ["item"];
32
+
33
+ // 选中的筛选项
34
+ var ListItemChecked = function ListItemChecked(_ref) {
35
+ var instance = _ref.instance,
36
+ itemProps = _ref.item;
37
+ var state = instance.state,
38
+ dispatch = instance.dispatch,
39
+ dataSource = instance.dataSource;
40
+ var complexDrawer = state.complexDrawer;
41
+ var field = itemProps.field,
42
+ _itemProps$value = itemProps.value,
43
+ valueObj = _itemProps$value === void 0 ? {} : _itemProps$value; // 单项匹配数据, 根据字段名查找, 嵌套筛选时查询父级
44
+
45
+ var getItem = (0, _react.useMemo)(function () {
46
+ return dataSource.find(function (v) {
47
+ return [field, valueObj.originField].includes(v.field);
48
+ });
49
+ }, [field, valueObj.originField, dataSource]); // 选中值的处理
50
+
51
+ var resetValue = (0, _react.useMemo)(function () {
52
+ if (getItem.type === 'cascader') {
53
+ var _valueObj$value;
54
+
55
+ return (_valueObj$value = valueObj.value) === null || _valueObj$value === void 0 ? void 0 : _valueObj$value.map(function (v) {
56
+ return v[v.length - 1];
57
+ });
58
+ }
59
+
60
+ return valueObj.value;
61
+ }, [getItem, valueObj.value]); // 遍历树结构
62
+
63
+ var deepChildren = function deepChildren(arr, preArr) {
64
+ arr.forEach(function (item) {
65
+ var _item$children;
66
+
67
+ if (resetValue.includes(item.value)) {
68
+ preArr.push(item);
69
+ }
70
+
71
+ if ((_item$children = item.children) === null || _item$children === void 0 ? void 0 : _item$children.length) {
72
+ deepChildren(item.children, preArr);
73
+ }
74
+ });
75
+ }; // 选中的数据
76
+
77
+
78
+ var checkedValues = (0, _react.useMemo)(function () {
79
+ var checkedValue = valueObj.value;
80
+
81
+ if (Array.isArray(checkedValue)) {
82
+ var _getItem$data;
83
+
84
+ if (getItem.type === 'nested') {
85
+ return checkedValue;
86
+ }
87
+
88
+ if (getItem.type === 'cascader') {
89
+ var arr = [];
90
+ deepChildren(getItem.data, arr);
91
+ return arr;
92
+ }
93
+
94
+ return (_getItem$data = getItem.data) === null || _getItem$data === void 0 ? void 0 : _getItem$data.filter(function (v) {
95
+ return checkedValue.includes(v.value);
96
+ });
97
+ }
98
+
99
+ if (getItem.type === 'input') {
100
+ return resetValue ? [{
101
+ value: resetValue,
102
+ label: resetValue
103
+ }] : [];
104
+ }
105
+
106
+ var filterValue = getItem.data.find(function (v) {
107
+ return v.value === checkedValue;
108
+ });
109
+ return filterValue ? [filterValue] : [];
110
+ }, [getItem, valueObj.value]); // 编辑
111
+
112
+ var handleEdit = function handleEdit() {
113
+ dispatch({
114
+ type: 'changeValueDrawer',
115
+ valueDrawer: {
116
+ visible: true,
117
+ data: (0, _objectSpread3.default)((0, _objectSpread3.default)({}, getItem), valueObj)
118
+ }
119
+ });
120
+ }; // 删除
121
+
122
+
123
+ var handleDelete = function handleDelete(e) {
124
+ e.stopPropagation();
125
+ var filterValues = (0, _objectSpread3.default)({}, complexDrawer.data);
126
+ delete filterValues[field];
127
+ console.log('filterValues', filterValues);
128
+ dispatch({
129
+ type: 'changeComplexDrawer',
130
+ complexDrawer: {
131
+ visible: true,
132
+ data: filterValues
133
+ }
134
+ });
135
+ }; // 删除Tag
136
+
137
+
138
+ var onTagClose = function onTagClose(val) {
139
+ var originData = (0, _objectSpread3.default)({}, complexDrawer.data);
140
+ var filterValues = (0, _objectSpread3.default)((0, _objectSpread3.default)({}, originData), {}, (0, _defineProperty2.default)({}, field, (0, _objectSpread3.default)((0, _objectSpread3.default)({}, originData[field]), {}, {
141
+ value: originData[field].value.filter(function (v) {
142
+ return !v.includes(val);
143
+ })
144
+ })));
145
+ dispatch({
146
+ type: 'changeComplexDrawer',
147
+ complexDrawer: {
148
+ visible: true,
149
+ data: filterValues
150
+ }
151
+ });
152
+ }; // Tags显示
153
+
154
+
155
+ var tagElem = function tagElem() {
156
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Tag, {
157
+ className: "add_tags"
158
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
159
+ type: "lmweb-plus"
160
+ }), " \u65B0\u589E"), checkedValues === null || checkedValues === void 0 ? void 0 : checkedValues.map(function (v) {
161
+ return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Tag, {
162
+ key: v.value,
163
+ closable: true,
164
+ onClose: function onClose() {
165
+ return onTagClose(v.value);
166
+ }
167
+ }, v.label);
168
+ }));
169
+ }; // 模式
170
+
171
+
172
+ var modeLabel = (0, _react.useMemo)(function () {
173
+ return valueObj.mode === 'and' ? '且' : '或';
174
+ }, [valueObj.mode]);
175
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
176
+ className: "item_box",
177
+ onClick: handleEdit
178
+ }, /*#__PURE__*/_react.default.createElement("div", {
179
+ className: "item_header"
180
+ }, /*#__PURE__*/_react.default.createElement("div", {
181
+ className: "item_header_title"
182
+ }, "".concat(getItem.title, "\uFF08").concat(modeLabel, "\uFF09")), /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
183
+ type: "lmweb-close1",
184
+ onClick: handleDelete,
185
+ className: "item_header_icon"
186
+ })), /*#__PURE__*/_react.default.createElement("div", {
187
+ className: "item_tags"
188
+ }, tagElem())));
189
+ }; // 全部筛选项
190
+
191
+
192
+ var ListGroup = function ListGroup(_ref2) {
193
+ var instance = _ref2.instance;
194
+ var state = instance.state,
195
+ dispatch = instance.dispatch,
196
+ dataSource = instance.dataSource;
197
+
198
+ var _useState = (0, _react.useState)(function () {
199
+ return dataSource;
200
+ }),
201
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
202
+ options = _useState2[0],
203
+ setOptions = _useState2[1];
204
+
205
+ var handleSearch = function handleSearch(val) {
206
+ setOptions(dataSource.filter(function (v) {
207
+ var _v$title;
208
+
209
+ return ((_v$title = v.title) === null || _v$title === void 0 ? void 0 : _v$title.indexOf(val)) > -1;
210
+ }));
211
+ }; // 编辑
212
+
213
+
214
+ var handleEdit = function handleEdit(_ref3) {
215
+ var field = _ref3.field;
216
+ // 单项匹配数据, 根据字段名查找
217
+ var getItem = dataSource.find(function (v) {
218
+ return v.field === field;
219
+ }); // 编辑
220
+
221
+ dispatch({
222
+ type: 'changeValueDrawer',
223
+ valueDrawer: {
224
+ visible: true,
225
+ type: 'complex',
226
+ data: (0, _objectSpread3.default)((0, _objectSpread3.default)({}, getItem), {}, {
227
+ value: []
228
+ })
229
+ }
230
+ });
231
+ };
232
+
233
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
234
+ className: "list_group"
235
+ }, /*#__PURE__*/_react.default.createElement("div", {
236
+ className: "list_group_title"
237
+ }, "\u9009\u62E9\u67E5\u8BE2\u9879"), /*#__PURE__*/_react.default.createElement("div", {
238
+ className: "list_group_search"
239
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Input.Search, {
240
+ allowClear: true,
241
+ size: "default",
242
+ placeholder: "\u8BF7\u8F93\u5165",
243
+ onSearch: handleSearch
244
+ })), /*#__PURE__*/_react.default.createElement(_linkmoreDesign.VirtualList, {
245
+ options: options,
246
+ className: "filter_drawer_group_list"
247
+ }, function (_ref4) {
248
+ var item = _ref4.item,
249
+ resetProps = (0, _objectWithoutProperties2.default)(_ref4, _excluded);
250
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, resetProps, {
251
+ className: "filter_drawer_group_item"
252
+ }), /*#__PURE__*/_react.default.createElement("div", {
253
+ className: "item_box",
254
+ onClick: function onClick() {
255
+ return handleEdit(item);
256
+ }
257
+ }, /*#__PURE__*/_react.default.createElement("div", {
258
+ className: "item_header"
259
+ }, /*#__PURE__*/_react.default.createElement("div", {
260
+ className: "item_header_title"
261
+ }, item.title), /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
262
+ type: "lmweb-plus",
263
+ className: "item_header_icon icon_plus"
264
+ }))));
265
+ })));
266
+ };
267
+
268
+ var ComplexDrawer = function ComplexDrawer(_ref5) {
269
+ var instance = _ref5.instance;
270
+ var state = instance.state,
271
+ dispatch = instance.dispatch,
272
+ onChange = instance.onChange;
273
+ var complexDrawer = state.complexDrawer,
274
+ complexFilter = state.complexFilter;
275
+ var isHas = (0, _react.useMemo)(function () {
276
+ return (0, _utils.getIsHas)(complexDrawer.data);
277
+ }, [complexDrawer.data]); // 过滤的内容转数组
278
+
279
+ var filterItemData = (0, _react.useMemo)(function () {
280
+ return isHas ? Object.entries(complexDrawer.data).map(function (v) {
281
+ return {
282
+ field: v[0],
283
+ value: v[1]
284
+ };
285
+ }) : [];
286
+ }, [complexDrawer.data, isHas]);
287
+
288
+ var onClose = function onClose() {
289
+ dispatch({
290
+ type: 'changeComplexDrawer',
291
+ complexDrawer: (0, _objectSpread3.default)((0, _objectSpread3.default)({}, state.complexDrawer), {}, {
292
+ visible: false
293
+ })
294
+ });
295
+ };
296
+
297
+ var onSearch = function onSearch() {
298
+ dispatch({
299
+ type: 'changeBasicFilter',
300
+ basicFilter: {}
301
+ });
302
+ dispatch({
303
+ type: 'changeComplexFilter',
304
+ complexFilter: complexDrawer.data
305
+ });
306
+ onClose();
307
+ onChange === null || onChange === void 0 ? void 0 : onChange(null, complexDrawer.data);
308
+ }; // 初始化筛选
309
+
310
+
311
+ (0, _react.useEffect)(function () {
312
+ if (complexDrawer.visible) {
313
+ dispatch({
314
+ type: 'changeComplexDrawer',
315
+ complexDrawer: {
316
+ data: complexFilter,
317
+ visible: complexDrawer.visible
318
+ }
319
+ });
320
+ }
321
+ }, [dispatch, complexDrawer.visible]);
322
+
323
+ var Tit = function Tit() {
324
+ return /*#__PURE__*/_react.default.createElement("div", {
325
+ onClick: function onClick() {
326
+ console.log('title', state);
327
+ }
328
+ }, "\u9AD8\u7EA7\u67E5\u8BE2");
329
+ }; // 弹窗配置项
330
+
331
+
332
+ var config = {
333
+ title: /*#__PURE__*/_react.default.createElement(Tit, null),
334
+ visible: state.complexDrawer.visible,
335
+ onClose: onClose,
336
+ width: 440,
337
+ placement: 'right',
338
+ destroyOnClose: true,
339
+ className: 'lm_filter_drawer',
340
+ extra: /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Space, null, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
341
+ onClick: onClose,
342
+ size: "small"
343
+ }, "\u53D6\u6D88"), !!instance.custom && /*#__PURE__*/_react.default.createElement(SaveModal, {
344
+ state: state,
345
+ dispatch: dispatch
346
+ }), /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
347
+ type: "primary",
348
+ onClick: onSearch,
349
+ size: "small"
350
+ }, "\u67E5\u8BE2"))
351
+ };
352
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Drawer, config, /*#__PURE__*/_react.default.createElement("div", {
353
+ className: "complex_filter_body"
354
+ }, isHas && /*#__PURE__*/_react.default.createElement("div", {
355
+ className: "checked_group"
356
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.VirtualList, {
357
+ options: filterItemData,
358
+ className: "filter_drawer_group_list"
359
+ }, function (_ref6) {
360
+ var item = _ref6.item,
361
+ resetProps = (0, _objectWithoutProperties2.default)(_ref6, _excluded2);
362
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, resetProps, {
363
+ className: "filter_drawer_group_item"
364
+ }), /*#__PURE__*/_react.default.createElement(ListItemChecked, {
365
+ instance: instance,
366
+ item: item
367
+ }));
368
+ })), /*#__PURE__*/_react.default.createElement(ListGroup, {
369
+ instance: instance
370
+ })), /*#__PURE__*/_react.default.createElement(_valueDrawer.default, {
371
+ instance: instance
372
+ })));
373
+ };
374
+
375
+ var _default = ComplexDrawer;
376
+ exports.default = _default;
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+
3
5
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
6
 
5
7
  Object.defineProperty(exports, "__esModule", {
@@ -7,10 +9,55 @@ Object.defineProperty(exports, "__esModule", {
7
9
  });
8
10
  exports.default = void 0;
9
11
 
10
- var _react = _interopRequireDefault(require("react"));
12
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
13
+
14
+ var _react = _interopRequireWildcard(require("react"));
15
+
16
+ var _classnames = _interopRequireDefault(require("classnames"));
17
+
18
+ var _linkmoreDesign = require("linkmore-design");
19
+
20
+ var _drawer = _interopRequireDefault(require("./drawer"));
21
+
22
+ var _utils = require("../utils");
23
+
24
+ var LmFilterComplex = function LmFilterComplex(_ref) {
25
+ var instance = _ref.instance;
26
+ var state = instance.state,
27
+ dispatch = instance.dispatch;
28
+ var expand = (0, _react.useMemo)(function () {
29
+ return state.complexDrawer.visible;
30
+ }, [state.complexDrawer.visible]);
31
+ var active = (0, _react.useMemo)(function () {
32
+ return (0, _utils.getIsHas)(state.complexFilter);
33
+ }, [state.complexFilter]);
34
+
35
+ var handleClick = function handleClick() {
36
+ dispatch({
37
+ type: 'changeComplexDrawer',
38
+ complexDrawer: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state.complexDrawer), {}, {
39
+ visible: true
40
+ })
41
+ });
42
+ };
11
43
 
12
- var LmFilterComplex = function LmFilterComplex(e) {
13
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, "LmFilterComplex");
44
+ return /*#__PURE__*/_react.default.createElement("div", {
45
+ className: "lm_filter_complex"
46
+ }, /*#__PURE__*/_react.default.createElement("div", {
47
+ className: (0, _classnames.default)('lm_filter_basic_item lm_filter_complex_item', {
48
+ expand: expand,
49
+ active: active
50
+ }),
51
+ onClick: handleClick
52
+ }, /*#__PURE__*/_react.default.createElement("div", {
53
+ className: "filter_item_icon addon_before"
54
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
55
+ type: "lmweb-filter"
56
+ })), /*#__PURE__*/_react.default.createElement("div", {
57
+ className: "filter_item_label"
58
+ }, "\u9AD8\u7EA7\u7B5B\u9009")), /*#__PURE__*/_react.default.createElement(_drawer.default, {
59
+ instance: instance
60
+ }));
14
61
  };
15
62
 
16
63
  var _default = LmFilterComplex;
@@ -0,0 +1,238 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = void 0;
11
+
12
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
+
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
15
+
16
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
17
+
18
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
19
+
20
+ require("antd/es/form/style");
21
+
22
+ var _form = _interopRequireDefault(require("antd/es/form"));
23
+
24
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
25
+
26
+ var _react = _interopRequireWildcard(require("react"));
27
+
28
+ var _linkmoreDesign = require("linkmore-design");
29
+
30
+ var _utils = require("../utils");
31
+
32
+ var _Controls = _interopRequireDefault(require("../Controls"));
33
+
34
+ // 第二层抽屉,弹出数据选择
35
+ var ValueDrawer = function ValueDrawer(_ref) {
36
+ var instance = _ref.instance;
37
+ var state = instance.state,
38
+ dispatch = instance.dispatch,
39
+ dataSource = instance.dataSource;
40
+ var valueDrawer = state.valueDrawer,
41
+ complexDrawer = state.complexDrawer;
42
+
43
+ var _Form$useForm = _form.default.useForm(),
44
+ _Form$useForm2 = (0, _slicedToArray2.default)(_Form$useForm, 1),
45
+ form = _Form$useForm2[0];
46
+
47
+ var onClose = function onClose() {
48
+ dispatch({
49
+ type: 'changeValueDrawer',
50
+ valueDrawer: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, valueDrawer), {}, {
51
+ visible: false
52
+ })
53
+ });
54
+ form.resetFields();
55
+ };
56
+ /*
57
+ * customModal.data.type === 'nested' 时,处理不同
58
+ *
59
+ */
60
+
61
+
62
+ var onSave = /*#__PURE__*/function () {
63
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
64
+ var _yield$form$validateF, field, mode, value, filterValues, currentItem, isNested, nField, nValue, _value$subValue;
65
+
66
+ return _regenerator.default.wrap(function _callee$(_context) {
67
+ while (1) {
68
+ switch (_context.prev = _context.next) {
69
+ case 0:
70
+ _context.prev = 0;
71
+ _context.next = 3;
72
+ return form.validateFields();
73
+
74
+ case 3:
75
+ _yield$form$validateF = _context.sent;
76
+ field = _yield$form$validateF.field;
77
+ mode = _yield$form$validateF.mode;
78
+ value = _yield$form$validateF.value;
79
+ // 选中的筛选数据
80
+ filterValues = (0, _objectSpread2.default)({}, complexDrawer.data); // 查找当前筛选的值
81
+
82
+ currentItem = valueDrawer.data; // 是否嵌套筛选
83
+
84
+ isNested = currentItem.type === 'nested'; // 嵌套筛选的键值不同
85
+
86
+ nField = valueDrawer.data.field;
87
+ nValue = value;
88
+
89
+ if (isNested) {
90
+ // 删除原有筛选
91
+ delete filterValues[currentItem.field];
92
+ currentItem.data.forEach(function (element) {
93
+ delete filterValues[element.value];
94
+ }); // 存在子级嵌套时,改变键值
95
+
96
+ if (value === null || value === void 0 ? void 0 : (_value$subValue = value.subValue) === null || _value$subValue === void 0 ? void 0 : _value$subValue.children) {
97
+ nField = value.subValue.value;
98
+ }
99
+
100
+ nValue = (value === null || value === void 0 ? void 0 : value.value) || [];
101
+ } // 判断是新增还是编辑
102
+
103
+
104
+ Object.assign(filterValues, (0, _defineProperty2.default)({}, nField, {
105
+ mode: mode,
106
+ value: nValue,
107
+ originField: currentItem.field
108
+ }));
109
+ dispatch({
110
+ type: 'changeComplexDrawer',
111
+ complexDrawer: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, complexDrawer), {}, {
112
+ data: filterValues
113
+ })
114
+ });
115
+ onClose();
116
+ _context.next = 21;
117
+ break;
118
+
119
+ case 18:
120
+ _context.prev = 18;
121
+ _context.t0 = _context["catch"](0);
122
+ console.log('校验错误!', _context.t0);
123
+
124
+ case 21:
125
+ case "end":
126
+ return _context.stop();
127
+ }
128
+ }
129
+ }, _callee, null, [[0, 18]]);
130
+ }));
131
+
132
+ return function onSave() {
133
+ return _ref2.apply(this, arguments);
134
+ };
135
+ }();
136
+
137
+ var onValuesChange = function onValuesChange(values) {
138
+ console.log('values', values);
139
+
140
+ if (values.field) {
141
+ form.setFieldsValue({
142
+ value: []
143
+ });
144
+ }
145
+
146
+ if (values.value) {
147
+ var _values$value;
148
+
149
+ // 嵌套筛选双击触发
150
+ if ((values === null || values === void 0 ? void 0 : (_values$value = values.value) === null || _values$value === void 0 ? void 0 : _values$value.type) === 'dbclick') {
151
+ onSave();
152
+ }
153
+ }
154
+ }; // 动态展示选择框
155
+
156
+
157
+ var DynamicSelect = (0, _react.useCallback)(function (_ref3) {
158
+ var getFieldValue = _ref3.getFieldValue;
159
+ var field = getFieldValue('field');
160
+ var findItem = (dataSource === null || dataSource === void 0 ? void 0 : dataSource.find(function (v) {
161
+ return v.field === field;
162
+ })) || {};
163
+ var options = (findItem === null || findItem === void 0 ? void 0 : findItem.data) || [];
164
+
165
+ if (field) {
166
+ return /*#__PURE__*/_react.default.createElement(_form.default.Item, {
167
+ name: "value",
168
+ label: "\u9009\u62E9\u5B57\u6BB5\u503C",
169
+ noStyle: true
170
+ }, /*#__PURE__*/_react.default.createElement(_Controls.default, {
171
+ item: findItem,
172
+ options: options
173
+ }));
174
+ }
175
+
176
+ return false;
177
+ }, [dataSource]);
178
+ var config = {
179
+ title: valueDrawer.data.title,
180
+ visible: valueDrawer.visible,
181
+ onClose: onClose,
182
+ className: 'lm_det_drawer',
183
+ extra: /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Space, {
184
+ size: 8
185
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
186
+ key: "cancel",
187
+ onClick: onClose,
188
+ size: "small"
189
+ }, "\u53D6\u6D88"), /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Button, {
190
+ type: "primary",
191
+ key: "back",
192
+ onClick: onSave,
193
+ size: "small"
194
+ }, "\u786E\u5B9A"))
195
+ }; // 初始化重置数据
196
+
197
+ (0, _react.useEffect)(function () {
198
+ if (valueDrawer.visible) {
199
+ form.setFieldsValue(valueDrawer.data);
200
+ }
201
+ }, [form, valueDrawer]);
202
+ return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Drawer, config, /*#__PURE__*/_react.default.createElement(_form.default, {
203
+ form: form,
204
+ initialValues: {
205
+ mode: 'or'
206
+ },
207
+ onValuesChange: onValuesChange,
208
+ layout: "vertical",
209
+ size: "default",
210
+ className: "custom_form"
211
+ }, /*#__PURE__*/_react.default.createElement("div", {
212
+ className: "custom_group"
213
+ }, /*#__PURE__*/_react.default.createElement("div", {
214
+ className: "custom_label"
215
+ }, "\u67E5\u8BE2\u65B9\u5F0F"), /*#__PURE__*/_react.default.createElement(_form.default.Item, {
216
+ name: "mode",
217
+ label: "\u67E5\u8BE2\u65B9\u5F0F",
218
+ noStyle: true
219
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Radio.Group, {
220
+ direction: "column"
221
+ }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Radio, {
222
+ value: "and"
223
+ }, "\u4E14,\u67E5\u8BE2\u540C\u65F6\u6EE1\u8DB3\u6B64\u9009\u9879\u6761\u4EF6"), /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Radio, {
224
+ value: "or"
225
+ }, "\u6216,\u67E5\u8BE2\u5305\u542B\u6B64\u9009\u9879\u6761\u4EF6")))), /*#__PURE__*/_react.default.createElement("div", {
226
+ className: "custom_group custom_full"
227
+ }, /*#__PURE__*/_react.default.createElement("div", {
228
+ className: "custom_label"
229
+ }, "\u9009\u62E9\u5B57\u6BB5\u503C"), /*#__PURE__*/_react.default.createElement(_form.default.Item, {
230
+ noStyle: true,
231
+ shouldUpdate: function shouldUpdate(prevValues, currentValues) {
232
+ return prevValues.field !== currentValues.field;
233
+ }
234
+ }, DynamicSelect))));
235
+ };
236
+
237
+ var _default = ValueDrawer;
238
+ exports.default = _default;
@@ -218,10 +218,9 @@ var DropdownFilter = /*#__PURE__*/_react.default.memo(function (_ref2) {
218
218
  }, item === null || item === void 0 ? void 0 : item.title, ":"), /*#__PURE__*/_react.default.createElement("div", {
219
219
  className: "filter_item_value"
220
220
  }, getLabel(filterValue, item)), /*#__PURE__*/_react.default.createElement("div", {
221
- className: "filter_item_icon"
221
+ className: "filter_item_icon addon_after"
222
222
  }, item.type !== 'date' || active ? /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
223
223
  type: active ? 'lmweb-close-circle-fill' : 'lmweb-down',
224
- className: "addonAfter",
225
224
  onClick: handleClear
226
225
  }) : null)));
227
226
  });