linkmore-design 1.0.74 → 1.0.77

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 (42) hide show
  1. package/dist/LmFilter/LmFilter.d.ts +1 -0
  2. package/dist/LmFilter/filterFns/index.d.ts +10 -1
  3. package/dist/LmTable/components/inputDataEdit.d.ts +8 -0
  4. package/dist/LmTable/components/sheelTableCell.d.ts +11 -0
  5. package/dist/LmTable/components/tableChartsModal.d.ts +22 -0
  6. package/dist/LmTable/demos/excel.d.ts +2 -0
  7. package/dist/index.umd.js +75075 -3350
  8. package/dist/index.umd.min.js +6 -6
  9. package/es/LmFilter/LmFilter.js +11 -3
  10. package/es/LmFilter/baseFilter/fuzzySearch.js +23 -13
  11. package/es/LmFilter/clearFilter/index.js +1 -3
  12. package/es/LmFilter/complexFilter/valueDrawer.js +1 -1
  13. package/es/LmFilter/filterFns/index.js +266 -92
  14. package/es/LmFilter/wrapper/FilterRoot.js +24 -2
  15. package/es/LmTable/Table.js +487 -43
  16. package/es/LmTable/components/inputDataEdit.d.ts +8 -0
  17. package/es/LmTable/components/inputDataEdit.js +35 -0
  18. package/es/LmTable/components/sheelTableCell.d.ts +11 -0
  19. package/es/LmTable/components/sheelTableCell.js +140 -0
  20. package/es/LmTable/components/tableChartsModal.d.ts +22 -0
  21. package/es/LmTable/components/tableChartsModal.js +114 -0
  22. package/es/LmTable/style/index.css +53 -0
  23. package/es/LmUpload/fns/index.js +8 -7
  24. package/es/Timeline/style/index.css +3 -0
  25. package/lib/LmFilter/LmFilter.js +11 -3
  26. package/lib/LmFilter/baseFilter/fuzzySearch.js +23 -13
  27. package/lib/LmFilter/clearFilter/index.js +1 -3
  28. package/lib/LmFilter/complexFilter/valueDrawer.js +1 -1
  29. package/lib/LmFilter/filterFns/index.js +266 -92
  30. package/lib/LmFilter/wrapper/FilterRoot.js +24 -2
  31. package/lib/LmTable/Table.js +487 -43
  32. package/lib/LmTable/components/inputDataEdit.d.ts +8 -0
  33. package/lib/LmTable/components/inputDataEdit.js +46 -0
  34. package/lib/LmTable/components/sheelTableCell.d.ts +11 -0
  35. package/lib/LmTable/components/sheelTableCell.js +155 -0
  36. package/lib/LmTable/components/tableChartsModal.d.ts +22 -0
  37. package/lib/LmTable/components/tableChartsModal.js +127 -0
  38. package/lib/LmTable/style/index.css +53 -0
  39. package/lib/LmUpload/fns/index.js +8 -7
  40. package/lib/Timeline/style/index.css +3 -0
  41. package/package.json +5 -4
  42. package/typings/index.d.ts +0 -19
@@ -11,33 +11,41 @@ exports.initLocalization = exports.default = void 0;
11
11
 
12
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
13
 
14
- var _objectSpread4 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
-
16
14
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
17
15
 
16
+ var _objectSpread4 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
17
+
18
18
  var _react = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _utils = require("../utils");
21
21
 
22
22
  // 初始化查询结构
23
23
  var initLocalization = function initLocalization(props) {
24
- var _globalQuery$filters, _globalQuery$filters$, _filterQuery$filters, _filterQuery$filters$;
24
+ var _globalQuery$filters, _globalQuery$filters$, _fuzzyQuery$filters, _fuzzyQuery$filters$, _filterQuery$filters, _filterQuery$filters$;
25
25
 
26
26
  var localization = props.localization,
27
27
  dataSource = props.dataSource,
28
28
  searchKey = props.searchKey,
29
+ searchConfig = props.searchConfig,
29
30
  customOptions = props.customOptions;
30
31
  var globalQuery = localization.globalQuery,
31
- filterQuery = localization.filterQuery;
32
+ filterQuery = localization.filterQuery,
33
+ fuzzyQuery = localization.fuzzyQuery;
32
34
  var basicFilter = (localization === null || localization === void 0 ? void 0 : localization.basicFilter) || {};
33
35
  var basicQuery = {}; // 存储查询结构
34
36
 
37
+ var isFuzzy = Array.isArray(searchKey); // 数组时为模糊搜索结构
38
+
39
+ var searchFilter = (localization === null || localization === void 0 ? void 0 : localization.fuzzyFilter) || {};
40
+ var searchQuery = {}; // 模糊查询结构
41
+
35
42
  var customFilter = (customOptions === null || customOptions === void 0 ? void 0 : customOptions.find(function (v) {
36
43
  var _localization$customF;
37
44
 
38
45
  return (v === null || v === void 0 ? void 0 : v.value) === (localization === null || localization === void 0 ? void 0 : (_localization$customF = localization.customFilter) === null || _localization$customF === void 0 ? void 0 : _localization$customF.value);
39
46
  })) || {};
40
47
  var customQuery = {}; // 自定义筛选存储结构
48
+ // 一级查询
41
49
 
42
50
  if (globalQuery === null || globalQuery === void 0 ? void 0 : (_globalQuery$filters = globalQuery.filters) === null || _globalQuery$filters === void 0 ? void 0 : (_globalQuery$filters$ = _globalQuery$filters[0]) === null || _globalQuery$filters$ === void 0 ? void 0 : _globalQuery$filters$.conditions) {
43
51
  var _globalQuery$filters2, _globalQuery$filters3;
@@ -53,12 +61,44 @@ var initLocalization = function initLocalization(props) {
53
61
 
54
62
  return pre;
55
63
  }, {});
56
- }
64
+ } // 模糊查询
57
65
 
58
- if ((0, _utils.getIsHas)(basicFilter)) {
66
+
67
+ if ((0, _utils.getIsHas)(searchFilter)) {
59
68
  var _Object$keys;
60
69
 
61
- basicQuery = (_Object$keys = Object.keys(basicFilter)) === null || _Object$keys === void 0 ? void 0 : _Object$keys.reduce(function (pre, cur) {
70
+ searchQuery = (_Object$keys = Object.keys(searchFilter)) === null || _Object$keys === void 0 ? void 0 : _Object$keys.reduce(function (pre, cur) {
71
+ if ((0, _utils.getIsHas)(searchFilter[cur])) {
72
+ pre[cur] = (0, _objectSpread4.default)((0, _objectSpread4.default)({}, searchConfig), {}, {
73
+ fieldName: cur,
74
+ value: [searchFilter[cur]]
75
+ });
76
+ }
77
+
78
+ return pre;
79
+ }, {});
80
+ } else if (fuzzyQuery === null || fuzzyQuery === void 0 ? void 0 : (_fuzzyQuery$filters = fuzzyQuery.filters) === null || _fuzzyQuery$filters === void 0 ? void 0 : (_fuzzyQuery$filters$ = _fuzzyQuery$filters[0]) === null || _fuzzyQuery$filters$ === void 0 ? void 0 : _fuzzyQuery$filters$.conditions) {
81
+ var _fuzzyQuery$filters2, _fuzzyQuery$filters2$;
82
+
83
+ var fuzzyQueryArr = (fuzzyQuery === null || fuzzyQuery === void 0 ? void 0 : (_fuzzyQuery$filters2 = fuzzyQuery.filters) === null || _fuzzyQuery$filters2 === void 0 ? void 0 : (_fuzzyQuery$filters2$ = _fuzzyQuery$filters2[0]) === null || _fuzzyQuery$filters2$ === void 0 ? void 0 : _fuzzyQuery$filters2$.conditions) || []; // 初始化基础查询缓存
84
+
85
+ searchFilter = fuzzyQueryArr.reduce(function (pre, cur) {
86
+ var checkedValue = cur.value; // 选中的数据
87
+
88
+ if ((0, _utils.getIsHas)(checkedValue)) {
89
+ searchQuery[cur.fieldName] = cur;
90
+ pre[cur.fieldName] = checkedValue[0];
91
+ }
92
+
93
+ return pre;
94
+ }, {});
95
+ } // 二级查询
96
+
97
+
98
+ if ((0, _utils.getIsHas)(basicFilter)) {
99
+ var _Object$keys2;
100
+
101
+ basicQuery = (_Object$keys2 = Object.keys(basicFilter)) === null || _Object$keys2 === void 0 ? void 0 : _Object$keys2.reduce(function (pre, cur) {
62
102
  var item = dataSource.find(function (v) {
63
103
  if (cur === v.field) {
64
104
  return v.show || typeof v.show !== 'boolean';
@@ -67,7 +107,7 @@ var initLocalization = function initLocalization(props) {
67
107
  return false;
68
108
  });
69
109
 
70
- if (cur === searchKey) {
110
+ if (!isFuzzy && cur === searchKey) {
71
111
  item = {
72
112
  field: searchKey,
73
113
  operator: 'contains',
@@ -122,6 +162,8 @@ var initLocalization = function initLocalization(props) {
122
162
  }
123
163
 
124
164
  return {
165
+ searchFilter: searchFilter,
166
+ searchQuery: searchQuery,
125
167
  basicFilter: basicFilter,
126
168
  basicQuery: basicQuery,
127
169
  customFilter: customFilter,
@@ -139,12 +181,13 @@ var useCoreOptions = function useCoreOptions(_ref) {
139
181
  var onChange = props.onChange,
140
182
  dataSource = props.dataSource,
141
183
  searchKey = props.searchKey,
142
- customOptions = props.customOptions; // object => array
184
+ searchConfig = props.searchConfig,
185
+ customOptions = props.customOptions; // 转换一级查询结构 object => array
143
186
 
144
- var tranformQuery = (0, _react.useCallback)(function (obj) {
145
- var _Object$keys2;
187
+ var tranformGlobalQuery = (0, _react.useCallback)(function (obj) {
188
+ var _Object$keys3;
146
189
 
147
- var nArr = ((_Object$keys2 = Object.keys(obj)) === null || _Object$keys2 === void 0 ? void 0 : _Object$keys2.reduce(function (pre, cur) {
190
+ var nArr = ((_Object$keys3 = Object.keys(obj)) === null || _Object$keys3 === void 0 ? void 0 : _Object$keys3.reduce(function (pre, cur) {
148
191
  var item = dataSource.find(function (v) {
149
192
  return cur === v.field;
150
193
  });
@@ -163,41 +206,78 @@ var useCoreOptions = function useCoreOptions(_ref) {
163
206
  return pre;
164
207
  }, [])) || [];
165
208
  return nArr;
166
- }, [dataSource]); // 触发查询 type basic基础筛选 | complex高级筛选
209
+ }, [dataSource]); // 转行查询结构
167
210
 
168
- var onQuery = (0, _react.useCallback)(function () {
169
- var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
170
- _ref2$basicFilter = _ref2.basicFilter,
171
- basicFilter = _ref2$basicFilter === void 0 ? {} : _ref2$basicFilter,
172
- _ref2$complexFilter = _ref2.complexFilter,
173
- complexFilter = _ref2$complexFilter === void 0 ? {} : _ref2$complexFilter,
174
- _ref2$customFilter = _ref2.customFilter,
175
- customFilter = _ref2$customFilter === void 0 ? state.customFilter || {} : _ref2$customFilter,
211
+ var tranformQuery = (0, _react.useCallback)(function (_ref2) {
212
+ var _Object$keys4, _Object$keys5;
213
+
214
+ var _ref2$customFilter = _ref2.customFilter,
215
+ customFilter = _ref2$customFilter === void 0 ? {} : _ref2$customFilter,
216
+ _ref2$searchQuery = _ref2.searchQuery,
217
+ searchQuery = _ref2$searchQuery === void 0 ? {} : _ref2$searchQuery,
176
218
  _ref2$basicQuery = _ref2.basicQuery,
177
- basicQuery = _ref2$basicQuery === void 0 ? {} : _ref2$basicQuery,
178
- _ref2$type = _ref2.type,
179
- type = _ref2$type === void 0 ? 'basic' : _ref2$type;
219
+ basicQuery = _ref2$basicQuery === void 0 ? {} : _ref2$basicQuery;
220
+ var globalQuery = {
221
+ filters: [{
222
+ conditions: tranformGlobalQuery(customFilter === null || customFilter === void 0 ? void 0 : customFilter.data)
223
+ }]
224
+ };
225
+ var fuzzyQuery = {
226
+ filters: [{
227
+ conditions: (_Object$keys4 = Object.keys(searchQuery)) === null || _Object$keys4 === void 0 ? void 0 : _Object$keys4.map(function (k) {
228
+ return searchQuery[k];
229
+ })
230
+ }]
231
+ };
232
+ var filterQuery = {
233
+ filters: [{
234
+ conditions: (_Object$keys5 = Object.keys(basicQuery)) === null || _Object$keys5 === void 0 ? void 0 : _Object$keys5.map(function (k) {
235
+ return basicQuery[k];
236
+ })
237
+ }]
238
+ };
239
+ return {
240
+ globalQuery: globalQuery,
241
+ fuzzyQuery: fuzzyQuery,
242
+ filterQuery: filterQuery
243
+ };
244
+ }, [tranformGlobalQuery]); // 触发查询 type basic基础筛选 | complex高级筛选
180
245
 
181
- if (type === 'custom') {
182
- var _Object$keys3;
246
+ var onQuery = (0, _react.useCallback)(function () {
247
+ var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
248
+ _ref3$complexFilter = _ref3.complexFilter,
249
+ complexFilter = _ref3$complexFilter === void 0 ? {} : _ref3$complexFilter,
250
+ _ref3$type = _ref3.type,
251
+ type = _ref3$type === void 0 ? 'basic' : _ref3$type,
252
+ _ref3$basicFilter = _ref3.basicFilter,
253
+ basicFilter = _ref3$basicFilter === void 0 ? state.basicFilter || {} : _ref3$basicFilter,
254
+ _ref3$basicQuery = _ref3.basicQuery,
255
+ basicQuery = _ref3$basicQuery === void 0 ? state.basicQuery || {} : _ref3$basicQuery,
256
+ _ref3$searchFilter = _ref3.searchFilter,
257
+ searchFilter = _ref3$searchFilter === void 0 ? state.searchFilter || {} : _ref3$searchFilter,
258
+ _ref3$searchQuery = _ref3.searchQuery,
259
+ searchQuery = _ref3$searchQuery === void 0 ? state.searchQuery || {} : _ref3$searchQuery,
260
+ _ref3$customFilter = _ref3.customFilter,
261
+ customFilter = _ref3$customFilter === void 0 ? state.customFilter || {} : _ref3$customFilter;
183
262
 
263
+ if (type === 'custom') {
184
264
  dispatch({
185
265
  type: 'changeCustomFilter',
186
266
  customFilter: customFilter
187
267
  });
188
- var globalQuery = {
189
- filters: [{
190
- conditions: tranformQuery(customFilter === null || customFilter === void 0 ? void 0 : customFilter.data)
191
- }]
192
- };
193
- var filterQuery = {
194
- filters: [{
195
- conditions: (_Object$keys3 = Object.keys(state.basicQuery)) === null || _Object$keys3 === void 0 ? void 0 : _Object$keys3.map(function (k) {
196
- return state.basicQuery[k];
197
- })
198
- }]
199
- };
268
+
269
+ var _tranformQuery = tranformQuery({
270
+ customFilter: customFilter,
271
+ searchQuery: searchQuery,
272
+ basicQuery: basicQuery
273
+ }),
274
+ globalQuery = _tranformQuery.globalQuery,
275
+ fuzzyQuery = _tranformQuery.fuzzyQuery,
276
+ filterQuery = _tranformQuery.filterQuery;
277
+
200
278
  onChange === null || onChange === void 0 ? void 0 : onChange({
279
+ fuzzyFilter: searchFilter,
280
+ fuzzyQuery: fuzzyQuery,
201
281
  basicFilter: basicFilter,
202
282
  globalQuery: globalQuery,
203
283
  filterQuery: filterQuery,
@@ -205,9 +285,41 @@ var useCoreOptions = function useCoreOptions(_ref) {
205
285
  });
206
286
  }
207
287
 
208
- if (type === 'basic') {
209
- var _Object$keys4;
288
+ if (type === 'search') {
289
+ dispatch({
290
+ type: 'changeSearchFilter',
291
+ searchFilter: searchFilter
292
+ });
293
+ dispatch({
294
+ type: 'changeSearchQuery',
295
+ searchQuery: searchQuery
296
+ });
297
+ dispatch({
298
+ type: 'changeComplexFilter',
299
+ complexFilter: {}
300
+ }); // 基础筛选清空高级筛选
301
+ // 抛出给外部查询
302
+
303
+ var _tranformQuery2 = tranformQuery({
304
+ customFilter: customFilter,
305
+ searchQuery: searchQuery,
306
+ basicQuery: basicQuery
307
+ }),
308
+ _globalQuery = _tranformQuery2.globalQuery,
309
+ _fuzzyQuery = _tranformQuery2.fuzzyQuery,
310
+ _filterQuery = _tranformQuery2.filterQuery;
311
+
312
+ onChange === null || onChange === void 0 ? void 0 : onChange({
313
+ fuzzyFilter: searchFilter,
314
+ basicFilter: basicFilter,
315
+ fuzzyQuery: _fuzzyQuery,
316
+ globalQuery: _globalQuery,
317
+ filterQuery: _filterQuery,
318
+ type: 'search'
319
+ });
320
+ }
210
321
 
322
+ if (type === 'basic') {
211
323
  dispatch({
212
324
  type: 'changeBasicFilter',
213
325
  basicFilter: basicFilter
@@ -222,31 +334,30 @@ var useCoreOptions = function useCoreOptions(_ref) {
222
334
  }); // 基础筛选清空高级筛选
223
335
  // 抛出给外部查询
224
336
 
225
- var _globalQuery = {
226
- filters: [{
227
- conditions: tranformQuery(customFilter.data)
228
- }]
229
- };
230
- var _filterQuery = {
231
- filters: [{
232
- conditions: (_Object$keys4 = Object.keys(basicQuery)) === null || _Object$keys4 === void 0 ? void 0 : _Object$keys4.map(function (k) {
233
- return basicQuery[k];
234
- })
235
- }]
236
- };
337
+ var _tranformQuery3 = tranformQuery({
338
+ customFilter: customFilter,
339
+ searchQuery: searchQuery,
340
+ basicQuery: basicQuery
341
+ }),
342
+ _globalQuery2 = _tranformQuery3.globalQuery,
343
+ _fuzzyQuery2 = _tranformQuery3.fuzzyQuery,
344
+ _filterQuery2 = _tranformQuery3.filterQuery;
345
+
237
346
  onChange === null || onChange === void 0 ? void 0 : onChange({
347
+ fuzzyFilter: searchFilter,
238
348
  basicFilter: basicFilter,
239
- globalQuery: _globalQuery,
240
- filterQuery: _filterQuery,
349
+ fuzzyQuery: _fuzzyQuery2,
350
+ globalQuery: _globalQuery2,
351
+ filterQuery: _filterQuery2,
241
352
  type: 'basic'
242
353
  });
243
354
  }
244
355
 
245
356
  if (type === 'complex') {
246
- var _Object$keys5, _Object$keys6;
357
+ var _Object$keys6;
247
358
 
248
359
  // eslint-disable-next-line no-shadow
249
- var _basicQuery = (_Object$keys5 = Object.keys(complexFilter)) === null || _Object$keys5 === void 0 ? void 0 : _Object$keys5.reduce(function (pre, cur) {
360
+ var _basicQuery = (_Object$keys6 = Object.keys(complexFilter)) === null || _Object$keys6 === void 0 ? void 0 : _Object$keys6.reduce(function (pre, cur) {
250
361
  var item = dataSource.find(function (v) {
251
362
  return cur === v.field;
252
363
  });
@@ -266,6 +377,14 @@ var useCoreOptions = function useCoreOptions(_ref) {
266
377
  return pre;
267
378
  }, {});
268
379
 
380
+ dispatch({
381
+ type: 'changeSearchFilter',
382
+ searchFilter: {}
383
+ });
384
+ dispatch({
385
+ type: 'changeSearchQuery',
386
+ searchQuery: {}
387
+ });
269
388
  dispatch({
270
389
  type: 'changeBasicFilter',
271
390
  basicFilter: {}
@@ -285,43 +404,65 @@ var useCoreOptions = function useCoreOptions(_ref) {
285
404
  type: 'changeBasicQuery',
286
405
  basicQuery: _basicQuery
287
406
  });
288
- var _globalQuery2 = {
289
- filters: [{
290
- conditions: tranformQuery(customFilter.data)
291
- }]
292
- };
293
- var _filterQuery2 = {
294
- filters: [{
295
- conditions: (_Object$keys6 = Object.keys(_basicQuery)) === null || _Object$keys6 === void 0 ? void 0 : _Object$keys6.map(function (k) {
296
- return _basicQuery[k];
297
- })
298
- }]
299
- };
407
+
408
+ var _tranformQuery4 = tranformQuery({
409
+ customFilter: customFilter,
410
+ basicQuery: _basicQuery
411
+ }),
412
+ _globalQuery3 = _tranformQuery4.globalQuery,
413
+ _filterQuery3 = _tranformQuery4.filterQuery;
414
+
300
415
  onChange === null || onChange === void 0 ? void 0 : onChange({
301
416
  complexFilter: complexFilter,
302
- globalQuery: _globalQuery2,
303
- filterQuery: _filterQuery2,
417
+ globalQuery: _globalQuery3,
418
+ filterQuery: _filterQuery3,
304
419
  type: type
305
420
  });
306
421
  }
422
+
423
+ if (type === 'clear') {
424
+ dispatch({
425
+ type: 'reset'
426
+ });
427
+
428
+ var _tranformQuery5 = tranformQuery({
429
+ customFilter: customFilter,
430
+ searchQuery: searchQuery,
431
+ basicQuery: basicQuery
432
+ }),
433
+ _globalQuery4 = _tranformQuery5.globalQuery,
434
+ _fuzzyQuery3 = _tranformQuery5.fuzzyQuery,
435
+ _filterQuery4 = _tranformQuery5.filterQuery;
436
+
437
+ onChange === null || onChange === void 0 ? void 0 : onChange({
438
+ fuzzyFilter: searchFilter,
439
+ basicFilter: basicFilter,
440
+ fuzzyQuery: _fuzzyQuery3,
441
+ globalQuery: _globalQuery4,
442
+ filterQuery: _filterQuery4,
443
+ type: 'clear'
444
+ });
445
+ }
307
446
  }, [tranformQuery, state]); // 清除事件
308
447
 
309
448
  var onClearChange = (0, _react.useCallback)(function () {
310
449
  var _props$onClearChange;
311
450
 
312
451
  var params = {
452
+ searchFilter: {},
453
+ searchQuery: {},
313
454
  basicFilter: {},
314
455
  complexFilter: {},
315
456
  basicQuery: {},
316
- type: 'basic'
457
+ type: 'clear'
317
458
  };
318
459
  (_props$onClearChange = props.onClearChange) === null || _props$onClearChange === void 0 ? void 0 : _props$onClearChange.call(props, params);
319
460
  onQuery(params);
320
461
  }, [onQuery]); // 根据字段查找过滤的数据, 不存在时返回默认值
321
462
 
322
- var getFilterValue = (0, _react.useCallback)(function (_ref3) {
323
- var field = _ref3.field,
324
- type = _ref3.type;
463
+ var getFilterValue = (0, _react.useCallback)(function (_ref4) {
464
+ var field = _ref4.field,
465
+ type = _ref4.type;
325
466
 
326
467
  if ((0, _utils.getIsHas)(state.basicFilter[field])) {
327
468
  return state.basicFilter[field];
@@ -332,8 +473,6 @@ var useCoreOptions = function useCoreOptions(_ref) {
332
473
  }, [state.basicFilter]); // 获取查询结构
333
474
 
334
475
  var getFilterQuery = (0, _react.useCallback)(function () {
335
- var _Object$keys7;
336
-
337
476
  var originData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : dataSource;
338
477
  var basicFilter = (0, _utils.getFilterShow)(state.basicFilter, originData);
339
478
  var basicQuery = (0, _utils.getFilterShow)(state.basicQuery, originData);
@@ -345,20 +484,20 @@ var useCoreOptions = function useCoreOptions(_ref) {
345
484
  type: 'changeBasicQuery',
346
485
  basicQuery: basicQuery
347
486
  });
348
- var globalQuery = {
349
- filters: [{
350
- conditions: tranformQuery(state.customFilter.data)
351
- }]
352
- };
353
- var filterQuery = {
354
- filters: [{
355
- conditions: (_Object$keys7 = Object.keys(basicQuery)) === null || _Object$keys7 === void 0 ? void 0 : _Object$keys7.map(function (k) {
356
- return basicQuery[k];
357
- })
358
- }]
359
- };
487
+
488
+ var _tranformQuery6 = tranformQuery({
489
+ customFilter: state.customFilter,
490
+ searchQuery: state.searchQuery,
491
+ basicQuery: basicQuery
492
+ }),
493
+ globalQuery = _tranformQuery6.globalQuery,
494
+ fuzzyQuery = _tranformQuery6.fuzzyQuery,
495
+ filterQuery = _tranformQuery6.filterQuery;
496
+
360
497
  return {
498
+ fuzzyFilter: state.searchFilter,
361
499
  basicFilter: basicFilter,
500
+ fuzzyQuery: fuzzyQuery,
362
501
  globalQuery: globalQuery,
363
502
  filterQuery: filterQuery,
364
503
  type: 'basic'
@@ -378,7 +517,7 @@ var useCoreOptions = function useCoreOptions(_ref) {
378
517
  type: item.type,
379
518
  value: Array.isArray(itemValue) ? itemValue : [itemValue],
380
519
  operator: item.operator || 'equal'
381
- })); // 数据清楚时不返回结构体
520
+ })); // 数据清除时不返回结构体
382
521
 
383
522
  if (!(0, _utils.getIsHas)(itemValue)) {
384
523
  delete basicFilter[field];
@@ -407,11 +546,21 @@ var useCoreOptions = function useCoreOptions(_ref) {
407
546
  var _initLocalization = initLocalization((0, _objectSpread4.default)((0, _objectSpread4.default)({}, props), {}, {
408
547
  localization: localization
409
548
  })),
549
+ searchFilter = _initLocalization.searchFilter,
550
+ searchQuery = _initLocalization.searchQuery,
410
551
  basicFilter = _initLocalization.basicFilter,
411
552
  basicQuery = _initLocalization.basicQuery,
412
553
  customFilter = _initLocalization.customFilter,
413
554
  customQuery = _initLocalization.customQuery;
414
555
 
556
+ dispatch({
557
+ type: 'changeSearchFilter',
558
+ searchFilter: searchFilter
559
+ });
560
+ dispatch({
561
+ type: 'changeSearchQuery',
562
+ searchQuery: searchQuery
563
+ });
415
564
  dispatch({
416
565
  type: 'changeBasicFilter',
417
566
  basicFilter: basicFilter
@@ -428,7 +577,32 @@ var useCoreOptions = function useCoreOptions(_ref) {
428
577
  type: 'changeCustomQuery',
429
578
  customQuery: customQuery
430
579
  });
431
- }, [props]); // 自定义筛选查询
580
+ }, [props]); // 模糊查询结构
581
+
582
+ var setSearchFilter = (0, _react.useCallback)(function (itemValue, item) {
583
+ var searchFilter = searchKey === null || searchKey === void 0 ? void 0 : searchKey.reduce(function (pre, cur) {
584
+ pre[cur] = itemValue;
585
+ return pre;
586
+ }, (0, _objectSpread4.default)({}, state.searchFilter));
587
+ var searchQuery = searchKey === null || searchKey === void 0 ? void 0 : searchKey.reduce(function (pre, cur) {
588
+ pre[cur] = (0, _objectSpread4.default)((0, _objectSpread4.default)({}, searchConfig), {}, {
589
+ fieldName: cur,
590
+ value: itemValue
591
+ });
592
+ return pre;
593
+ }, (0, _objectSpread4.default)({}, state.searchQuery)); // 数据清除时不返回结构体
594
+
595
+ if (!(0, _utils.getIsHas)(itemValue)) {
596
+ searchFilter = {};
597
+ searchQuery = {};
598
+ }
599
+
600
+ onQuery({
601
+ searchFilter: searchFilter,
602
+ searchQuery: searchQuery,
603
+ type: 'search'
604
+ });
605
+ }, [searchKey, state]); // 自定义筛选查询
432
606
 
433
607
  var setCustomFilter = (0, _react.useCallback)(function (val) {
434
608
  var customFilter = customOptions.find(function (v) {
@@ -436,14 +610,14 @@ var useCoreOptions = function useCoreOptions(_ref) {
436
610
  });
437
611
  onQuery({
438
612
  customFilter: customFilter,
439
- basicFilter: state.basicFilter,
440
613
  type: 'custom'
441
614
  });
442
615
  }, [customOptions, state.basicFilter]); // 组件内部使用
443
616
 
444
617
  var CoreMethods = {
445
618
  onQuery: onQuery,
446
- setCustomFilter: setCustomFilter
619
+ setCustomFilter: setCustomFilter,
620
+ setSearchFilter: setSearchFilter
447
621
  }; // 参与Ref转发
448
622
 
449
623
  var RefMethods = {
@@ -21,7 +21,9 @@ var _filterFns = _interopRequireWildcard(require("../filterFns"));
21
21
 
22
22
  // 根文件 => 参数聚合
23
23
  var reducer = function reducer(state, action) {
24
- var basicFilter = action.basicFilter,
24
+ var searchFilter = action.searchFilter,
25
+ searchQuery = action.searchQuery,
26
+ basicFilter = action.basicFilter,
25
27
  basicQuery = action.basicQuery,
26
28
  customFilter = action.customFilter,
27
29
  customQuery = action.customQuery,
@@ -34,6 +36,18 @@ var reducer = function reducer(state, action) {
34
36
  saveModal = action.saveModal;
35
37
 
36
38
  switch (action.type) {
39
+ case 'changeSearchFilter':
40
+ // 模糊查询
41
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state), {}, {
42
+ searchFilter: searchFilter
43
+ });
44
+
45
+ case 'changeSearchQuery':
46
+ // 模糊查询
47
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state), {}, {
48
+ searchQuery: searchQuery
49
+ });
50
+
37
51
  case 'changeBasicFilter':
38
52
  // 基础筛选数据改变
39
53
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state), {}, {
@@ -98,6 +112,8 @@ var reducer = function reducer(state, action) {
98
112
  case 'reset':
99
113
  // 一键清空
100
114
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, state), {}, {
115
+ searchFilter: {},
116
+ searchQuery: {},
101
117
  basicFilter: {},
102
118
  basicQuery: {},
103
119
  complexFilter: {}
@@ -111,12 +127,18 @@ var reducer = function reducer(state, action) {
111
127
 
112
128
  var getInitialState = function getInitialState(props) {
113
129
  var _initLocalization = (0, _filterFns.initLocalization)(props),
130
+ searchFilter = _initLocalization.searchFilter,
131
+ searchQuery = _initLocalization.searchQuery,
114
132
  basicFilter = _initLocalization.basicFilter,
115
133
  basicQuery = _initLocalization.basicQuery,
116
134
  customQuery = _initLocalization.customQuery,
117
- customFilter = _initLocalization.customFilter;
135
+ customFilter = _initLocalization.customFilter; // 字段对应关系 basicQuery => filterQuery; customQuery => globalQuery; searchQuery => fuzzyQuery
136
+
118
137
 
119
138
  return {
139
+ searchFilter: searchFilter,
140
+ searchQuery: searchQuery,
141
+ // 模糊查询
120
142
  basicFilter: basicFilter,
121
143
  basicQuery: basicQuery,
122
144
  customFilter: (0, _objectSpread2.default)({