linkmore-design 1.0.57 → 1.0.58

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 (63) hide show
  1. package/dist/CardTable/LmCardTable.d.ts +1 -0
  2. package/dist/Empty/demos/custom.d.ts +2 -0
  3. package/dist/Empty/empty.d.ts +2 -0
  4. package/dist/Empty/index.d.ts +18 -3
  5. package/dist/Empty/simple.d.ts +2 -0
  6. package/dist/LmFilter/utils.d.ts +1 -1
  7. package/dist/index.umd.js +336 -183
  8. package/dist/index.umd.min.js +6 -6
  9. package/es/CardTable/LmCardTable.js +4 -1
  10. package/es/CardTable/card/PictureTextRow.js +8 -3
  11. package/es/CardTable/style/index.css +8 -1
  12. package/es/CustomTableOption/cardSort.js +0 -3
  13. package/es/CustomTableOption/columnsSort.js +2 -4
  14. package/es/CustomTableOption/filterSort.js +0 -3
  15. package/es/CustomTableOption/index.js +2 -2
  16. package/es/Empty/empty.d.ts +2 -0
  17. package/es/Empty/empty.js +55 -0
  18. package/es/Empty/index.d.ts +18 -3
  19. package/es/Empty/index.js +100 -1
  20. package/es/Empty/simple.d.ts +2 -0
  21. package/es/Empty/simple.js +36 -0
  22. package/es/Empty/style/index.css +44 -0
  23. package/es/LmFilter/Controls/index.js +32 -2
  24. package/es/LmFilter/complexFilter/drawer.js +18 -32
  25. package/es/LmFilter/components/CascaderFilter.js +19 -32
  26. package/es/LmFilter/components/CheckboxFilter.js +13 -21
  27. package/es/LmFilter/components/DateFilter.js +50 -22
  28. package/es/LmFilter/components/DropdownFIlter.js +44 -23
  29. package/es/LmFilter/components/SelectFilter.js +2 -3
  30. package/es/LmFilter/components/index.js +5 -61
  31. package/es/LmFilter/filterFns/index.js +17 -17
  32. package/es/LmFilter/style/style.css +2 -1
  33. package/es/LmFilter/utils.js +63 -14
  34. package/es/LmFilter/wrapper/FilterRoot.js +4 -17
  35. package/es/LmTable/Table.js +8 -6
  36. package/lib/CardTable/LmCardTable.js +4 -1
  37. package/lib/CardTable/card/PictureTextRow.js +8 -3
  38. package/lib/CardTable/style/index.css +8 -1
  39. package/lib/CustomTableOption/cardSort.js +0 -3
  40. package/lib/CustomTableOption/columnsSort.js +2 -4
  41. package/lib/CustomTableOption/filterSort.js +0 -3
  42. package/lib/CustomTableOption/index.js +2 -2
  43. package/lib/Empty/empty.d.ts +2 -0
  44. package/lib/Empty/empty.js +66 -0
  45. package/lib/Empty/index.d.ts +18 -3
  46. package/lib/Empty/index.js +107 -1
  47. package/lib/Empty/simple.d.ts +2 -0
  48. package/lib/Empty/simple.js +47 -0
  49. package/lib/Empty/style/index.css +44 -0
  50. package/lib/LmFilter/Controls/index.js +32 -2
  51. package/lib/LmFilter/complexFilter/drawer.js +18 -32
  52. package/lib/LmFilter/components/CascaderFilter.js +19 -32
  53. package/lib/LmFilter/components/CheckboxFilter.js +13 -21
  54. package/lib/LmFilter/components/DateFilter.js +50 -22
  55. package/lib/LmFilter/components/DropdownFIlter.js +44 -23
  56. package/lib/LmFilter/components/SelectFilter.js +2 -3
  57. package/lib/LmFilter/components/index.js +5 -61
  58. package/lib/LmFilter/filterFns/index.js +17 -17
  59. package/lib/LmFilter/style/style.css +2 -1
  60. package/lib/LmFilter/utils.js +63 -14
  61. package/lib/LmFilter/wrapper/FilterRoot.js +4 -17
  62. package/lib/LmTable/Table.js +8 -6
  63. package/package.json +1 -1
@@ -44,20 +44,16 @@ var CheckboxFilter = function CheckboxFilter(_ref) {
44
44
  setVisible = instance.setVisible;
45
45
  var _itemProps$data = itemProps.data,
46
46
  filters = _itemProps$data === void 0 ? [] : _itemProps$data;
47
- var inputRef = (0, _react.useRef)(); // 选中的数据项: [{}, {}, ...];
47
+ var inputRef = (0, _react.useRef)(); // 选中的数据项: [key, key, ...];
48
48
 
49
49
  var _useState = (0, _react.useState)(filterValue),
50
50
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
51
51
  checkedValues = _useState2[0],
52
52
  setCheckedValues = _useState2[1]; // 选中的数据的键
53
+ // const checkedKeys = useMemo(() => checkedValues.map(v => v), [checkedValues]);
54
+ // 搜索后的筛选项
53
55
 
54
56
 
55
- var checkedKeys = (0, _react.useMemo)(function () {
56
- return checkedValues.map(function (v) {
57
- return v.value;
58
- });
59
- }, [checkedValues]); // 搜索后的筛选项
60
-
61
57
  var _useState3 = (0, _react.useState)(filters),
62
58
  _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
63
59
  options = _useState4[0],
@@ -74,7 +70,7 @@ var CheckboxFilter = function CheckboxFilter(_ref) {
74
70
  return isAll && options.every(function (_ref2) {
75
71
  var value = _ref2.value;
76
72
  return checkedValues.some(function (v) {
77
- return v.value === value;
73
+ return v === value;
78
74
  });
79
75
  });
80
76
  }, [checkedValues, options]); // 是否半选: 存在选中的数据 && 未全选
@@ -94,20 +90,17 @@ var CheckboxFilter = function CheckboxFilter(_ref) {
94
90
 
95
91
  var onChange = function onChange(e, item) {
96
92
  e.preventDefault();
97
- var nValue = checkedValues.some(function (_ref3) {
98
- var value = _ref3.value;
93
+ var nValue = checkedValues.some(function (value) {
99
94
  return value === item.value;
100
- }) ? checkedValues.filter(function (_ref4) {
101
- var value = _ref4.value;
95
+ }) ? checkedValues.filter(function (value) {
102
96
  return value !== item.value;
103
- }) : (0, _utils.uniqueFunc)([].concat((0, _toConsumableArray2.default)(checkedValues), [item]), 'value');
97
+ }) : (0, _utils.uniqueFunc)([].concat((0, _toConsumableArray2.default)(checkedValues), [item.value]), 'value');
104
98
  setCheckedValues(nValue);
105
99
  }; // 全选事件
106
100
 
107
101
 
108
102
  var onCheckAllChange = function onCheckAllChange() {
109
- var nValue = checkAll ? checkedValues.filter(function (_ref5) {
110
- var value = _ref5.value;
103
+ var nValue = checkAll ? checkedValues.filter(function (value) {
111
104
  return !options.some(function (v) {
112
105
  return v.value === value;
113
106
  });
@@ -159,18 +152,17 @@ var CheckboxFilter = function CheckboxFilter(_ref) {
159
152
  }, "\u5168\u90E8"), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("span", {
160
153
  className: "filter_tip"
161
154
  }, "\u5DF2\u9009: ", checkedValues.length)))), /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Checkbox.Group, {
162
- value: checkedKeys,
155
+ value: checkedValues,
163
156
  className: "filter_body"
164
157
  }, /*#__PURE__*/_react.default.createElement(_linkmoreDesign.VirtualList, {
165
158
  options: options,
166
159
  className: "filter_list"
167
- }, function (_ref6) {
168
- var item = _ref6.item,
169
- resetProps = (0, _objectWithoutProperties2.default)(_ref6, _excluded);
160
+ }, function (_ref3) {
161
+ var item = _ref3.item,
162
+ resetProps = (0, _objectWithoutProperties2.default)(_ref3, _excluded);
170
163
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, resetProps, {
171
164
  className: (0, _classnames.default)('filter_item', {
172
- checked: checkedValues.some(function (_ref7) {
173
- var value = _ref7.value;
165
+ checked: checkedValues.some(function (value) {
174
166
  return value === item.value;
175
167
  })
176
168
  }),
@@ -19,15 +19,28 @@ var _react = _interopRequireWildcard(require("react"));
19
19
 
20
20
  var _linkmoreDesign = require("linkmore-design");
21
21
 
22
+ var _moment = _interopRequireDefault(require("moment"));
23
+
22
24
  var _utils = require("../utils");
23
25
 
24
26
  var RangePicker = function RangePicker(_ref) {
25
- var filterValue = _ref.filterValue,
26
- setFilterValue = _ref.setFilterValue,
27
+ var instance = _ref.instance,
27
28
  onChange = _ref.onChange,
28
- itemProps = _ref.itemProps,
29
- visible = _ref.visible;
30
- // 最近的时间段, 值为JSON转换后的字符串
29
+ itemProps = _ref.itemProps;
30
+ var filterValue = instance.filterValue,
31
+ setFilterValue = instance.setFilterValue,
32
+ visible = instance.visible,
33
+ setVisible = instance.setVisible;
34
+ var defaultValue = (0, _react.useMemo)(function () {
35
+ var nValue;
36
+
37
+ if ((0, _utils.getIsHas)(filterValue)) {
38
+ nValue = [(0, _moment.default)(filterValue[0]), (0, _moment.default)(filterValue[1])];
39
+ }
40
+
41
+ return nValue;
42
+ }, [filterValue]); // 最近的时间段, 值为JSON转换后的字符串
43
+
31
44
  var ranges = (0, _react.useMemo)(function () {
32
45
  return Object.entries((0, _utils.getRanges)()).map(function (item, i) {
33
46
  return {
@@ -82,17 +95,17 @@ var RangePicker = function RangePicker(_ref) {
82
95
  color: 'var(--text-color)'
83
96
  }
84
97
  }),
85
- placeholder: ['开始日期', '结束日期'],
86
- style: {
87
- width: 210
88
- }
98
+ placeholder: ['开始日期', '结束日期']
89
99
  }, itemProps, {
100
+ value: defaultValue,
90
101
  onChange: handleOnChange,
91
102
  open: visible,
103
+ onOpenChange: function onOpenChange(vis) {
104
+ return setVisible(vis);
105
+ },
92
106
  panelRender: panelRender,
93
107
  dropdownClassName: "lm_filter_dropdown_picker",
94
- bordered: false,
95
- size: "small",
108
+ size: "middle",
96
109
  inputReadOnly: true
97
110
  })));
98
111
  }; // 日期范围选择器
@@ -103,11 +116,25 @@ var DatePickerFilter = function DatePickerFilter(_ref2) {
103
116
  itemProps = _ref2.item;
104
117
  var filterValue = instance.filterValue,
105
118
  setFilterValue = instance.setFilterValue,
106
- visible = instance.visible;
107
- var _itemProps$props = itemProps.props,
108
- props = _itemProps$props === void 0 ? {
109
- picker: 'date'
110
- } : _itemProps$props; // 选中时间段的触发
119
+ visible = instance.visible,
120
+ setVisible = instance.setVisible;
121
+ var props = itemProps.props;
122
+
123
+ var _ref3 = props || {},
124
+ _ref3$picker = _ref3.picker,
125
+ picker = _ref3$picker === void 0 ? 'date' : _ref3$picker;
126
+
127
+ var defaultValue = (0, _react.useMemo)(function () {
128
+ var nValue; // 周/月/季/年 需要处理回显
129
+
130
+ if (picker !== 'date') return nValue;
131
+
132
+ if (filterValue) {
133
+ nValue = (0, _moment.default)(filterValue);
134
+ }
135
+
136
+ return nValue;
137
+ }, [filterValue]); // 选中时间段的触发
111
138
 
112
139
  var onChange = function onChange(dates, dateStrings) {
113
140
  setFilterValue((0, _utils.getIsHas)(dateStrings) ? dateStrings : null);
@@ -115,21 +142,22 @@ var DatePickerFilter = function DatePickerFilter(_ref2) {
115
142
 
116
143
  if (['range', 'rangePicker'].includes(itemProps.dateType || itemProps.datetype)) {
117
144
  return /*#__PURE__*/_react.default.createElement(RangePicker, {
118
- filterValue: filterValue,
119
- setFilterValue: setFilterValue,
145
+ instance: instance,
120
146
  onChange: onChange,
121
- itemProps: props,
122
- visible: visible
147
+ itemProps: props
123
148
  });
124
149
  }
125
150
 
126
151
  return /*#__PURE__*/_react.default.createElement(_datePicker.default, (0, _extends2.default)({
127
152
  placeholder: "\u9009\u62E9\u65F6\u95F4"
128
153
  }, props, {
154
+ defaultValue: defaultValue,
129
155
  onChange: onChange,
130
156
  open: visible,
131
- bordered: false,
132
- size: "small",
157
+ onOpenChange: function onOpenChange(vis) {
158
+ return setVisible(vis);
159
+ },
160
+ size: "middle",
133
161
  inputReadOnly: true,
134
162
  dropdownClassName: "lm_filter_dropdown_picker"
135
163
  }));
@@ -100,57 +100,78 @@ var getPlacehodler = function getPlacehodler(props) {
100
100
 
101
101
 
102
102
  var getLabel = function getLabel(filterValue, item) {
103
- var _val;
103
+ var _data$find;
104
104
 
105
- var val = filterValue;
106
- var type = item.type; // 不存在筛选时
105
+ var type = item.type,
106
+ data = item.data; // 不存在筛选时
107
107
 
108
- if (!(0, _utils.getIsHas)(val)) {
108
+ if (!(0, _utils.getIsHas)(filterValue)) {
109
109
  return getPlacehodler(item);
110
- } // 存在筛选数据时
110
+ } // 存在筛选数据时 ⬇️
111
+ // 级联数据转换平级结构
111
112
 
112
113
 
113
- if (Array.isArray(val)) {
114
+ if (['cascader'].includes(type)) {
115
+ var nArr = (0, _utils.getFlatItem)(filterValue, data);
116
+ var labels = nArr.map(function (v) {
117
+ return v.label;
118
+ });
119
+
120
+ switch (labels.length) {
121
+ case 1:
122
+ return labels[0];
123
+
124
+ case 2:
125
+ return "".concat(labels[0], "\u3001").concat(labels[1]);
126
+
127
+ default:
128
+ return "".concat(labels[0], "\u3001+").concat(labels.length - 1, "...");
129
+ }
130
+ }
131
+
132
+ if (Array.isArray(filterValue)) {
133
+ var _data$filter;
134
+
114
135
  // 日期
115
136
  if (['date'].includes(type)) {
116
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, val[0], /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
137
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, filterValue[0], /*#__PURE__*/_react.default.createElement(_linkmoreDesign.IconFont, {
117
138
  type: "lmweb-swap-right",
118
139
  style: {
119
140
  fontSize: 14,
120
141
  color: 'var(--text-color)'
121
142
  }
122
- }), val[1]);
123
- } // 级联数据转换平级结构
124
-
125
-
126
- if (['cascader'].includes(type)) {
127
- var _filterValue$map;
128
-
129
- val = (_filterValue$map = filterValue.map(function (v) {
130
- return v[1] ? v[1] : v[0].children;
131
- })) === null || _filterValue$map === void 0 ? void 0 : _filterValue$map.flat(2);
143
+ }), filterValue[1]);
132
144
  } // 多选
133
145
 
134
146
 
135
- switch (val.length) {
147
+ var _labels = data === null || data === void 0 ? void 0 : (_data$filter = data.filter(function (v) {
148
+ return filterValue.includes(v.value);
149
+ })) === null || _data$filter === void 0 ? void 0 : _data$filter.map(function (v) {
150
+ return v.label;
151
+ });
152
+
153
+ switch (_labels.length) {
136
154
  case 1:
137
- return val[0].label;
155
+ return _labels[0];
138
156
 
139
157
  case 2:
140
- return "".concat(val[0].label, "\u3001").concat(val[1].label);
158
+ return "".concat(_labels[0], "\u3001").concat(_labels[1]);
141
159
 
142
160
  default:
143
- return "".concat(val[0].label, "\u3001+").concat(val.length - 1, "...");
161
+ return "".concat(_labels[0], "\u3001+").concat(_labels.length - 1, "...");
144
162
  }
145
163
  } // 输入框
146
164
 
147
165
 
148
166
  if (['input', 'date'].includes(type)) {
149
- return val;
167
+ return filterValue;
150
168
  } // 单选框
151
169
 
152
170
 
153
- return (_val = val) === null || _val === void 0 ? void 0 : _val.label;
171
+ var label = (_data$find = data.find(function (v) {
172
+ return v.value === filterValue;
173
+ })) === null || _data$find === void 0 ? void 0 : _data$find.label;
174
+ return label;
154
175
  };
155
176
  /*
156
177
  * css样式控制
@@ -53,7 +53,6 @@ var SelectFilter = function SelectFilter(_ref) {
53
53
 
54
54
  var handleFilter = function handleFilter() {
55
55
  var val = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
56
- console.log('val', val);
57
56
  var serachValues = filters.filter(function (v) {
58
57
  return v.label.indexOf(val) > -1;
59
58
  });
@@ -63,7 +62,7 @@ var SelectFilter = function SelectFilter(_ref) {
63
62
 
64
63
  var onChange = function onChange(e, obj) {
65
64
  e.preventDefault();
66
- setFilterValue === null || setFilterValue === void 0 ? void 0 : setFilterValue(obj);
65
+ setFilterValue === null || setFilterValue === void 0 ? void 0 : setFilterValue(obj.value);
67
66
  }; // 展开下拉时触发: 赋值 && 聚焦 && 重置显示内容
68
67
 
69
68
 
@@ -98,7 +97,7 @@ var SelectFilter = function SelectFilter(_ref) {
98
97
  resetProps = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
99
98
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, resetProps, {
100
99
  className: (0, _classnames.default)('filter_item', {
101
- checked: item.value === (filterValue === null || filterValue === void 0 ? void 0 : filterValue.value)
100
+ checked: item.value === filterValue
102
101
  }),
103
102
  onClick: function onClick(e) {
104
103
  return onChange(e, item);
@@ -55,72 +55,16 @@ var FilterControl = /*#__PURE__*/_react.default.memo(function (props) {
55
55
  }),
56
56
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
57
57
  aliveValue = _useState2[0],
58
- setAliveValue = _useState2[1]; // 单独使用时将值转换为行数据
58
+ setAliveValue = _useState2[1]; // 单独使用 检查是否受控模式
59
59
 
60
60
 
61
61
  var transformFilterValue = (0, _react.useMemo)(function () {
62
- // 检查是否受控模式
63
- var checkedValue = value || aliveValue;
64
- var getOptions = (resetItem === null || resetItem === void 0 ? void 0 : resetItem.data) || [];
65
- var nValue = checkedValue;
66
-
67
- if (['select'].includes(resetItem.type)) {
68
- nValue = getOptions === null || getOptions === void 0 ? void 0 : getOptions.find(function (v) {
69
- return v.value === checkedValue;
70
- });
71
- }
72
-
73
- if (['checkbox'].includes(resetItem.type)) {
74
- nValue = (getOptions === null || getOptions === void 0 ? void 0 : getOptions.filter(function (v) {
75
- return checkedValue.includes(v.value);
76
- })) || [];
77
- }
78
-
79
- if (['cascader'].includes(resetItem.type)) {
80
- // 查询值
81
- // const getRow = (val, arr) => {
82
- // let nRow = '';
83
- // arr.forEach(item => {
84
- // nRow = item.value === val ? item : getRow(val, item.children);
85
- // })
86
- // return nRow;
87
- // };
88
- // checkedValue?.map(v => {
89
- // return Array.isArray(v) ? getRow(v) : getRow(v);
90
- // })
91
- return '';
92
- }
93
-
94
- return nValue;
95
- }, [value, aliveValue, resetItem.data, resetItem.type]); // 单独使用时抛出选中的值: val => obj || Array
62
+ return value || aliveValue;
63
+ }, [value, aliveValue]); // 单独使用时抛出选中的值
96
64
 
97
65
  var handleChange = function handleChange(val) {
98
- var nValue = val;
99
-
100
- if (['cascader'].includes(resetItem.type)) {
101
- var flatKeys = function flatKeys(arr) {
102
- return arr.map(function (v) {
103
- return v.value;
104
- });
105
- };
106
-
107
- nValue = val.map(function (v) {
108
- return Array.isArray(v) ? flatKeys(v) : v.value;
109
- });
110
- }
111
-
112
- if (['select'].includes(resetItem.type)) {
113
- nValue = val.value;
114
- }
115
-
116
- if (['checkbox'].includes(resetItem.type)) {
117
- nValue = val.map(function (v) {
118
- return v.value;
119
- });
120
- }
121
-
122
- setAliveValue === null || setAliveValue === void 0 ? void 0 : setAliveValue(nValue);
123
- onChange === null || onChange === void 0 ? void 0 : onChange(nValue);
66
+ setAliveValue === null || setAliveValue === void 0 ? void 0 : setAliveValue(val);
67
+ onChange === null || onChange === void 0 ? void 0 : onChange(val);
124
68
  }; // 重组instance
125
69
 
126
70
 
@@ -21,6 +21,8 @@ var CoreOptions = function CoreOptions(_ref) {
21
21
  var onChange = props.onChange; // 设置筛选的值 item => Object || Array => [{label: '', value: ''}, ...]
22
22
 
23
23
  var setFilterValue = function setFilterValue(item, field) {
24
+ var _Object$entries;
25
+
24
26
  var basicFilter = (0, _objectSpread3.default)((0, _objectSpread3.default)({}, state.basicFilter), {}, (0, _defineProperty2.default)({}, field, item));
25
27
 
26
28
  if (!(0, _utils.getIsHas)(item)) {
@@ -32,26 +34,24 @@ var CoreOptions = function CoreOptions(_ref) {
32
34
  type: 'changeBasicFilter',
33
35
  basicFilter: basicFilter
34
36
  });
35
-
36
- var formatVK = function formatVK() {
37
- var obj = {};
38
- Object.entries(basicFilter).forEach(function (item) {
39
- if (Array.isArray(item[1])) {
40
- obj[item[0]] = item[1].map(function (v) {
41
- return v.value;
42
- });
43
- return;
44
- }
45
-
46
- obj[item[0]] = item[1].value;
47
- });
48
- return obj;
49
- }; // 触发外部事件
50
-
37
+ dispatch({
38
+ type: 'changeComplexFilter',
39
+ complexFilter: {}
40
+ }); // 基础筛选清空高级筛选
41
+ // 抛出给外部存储
42
+
43
+ var filterQuery = (_Object$entries = Object.entries(basicFilter)) === null || _Object$entries === void 0 ? void 0 : _Object$entries.map(function (v) {
44
+ return {
45
+ fieldName: v[0],
46
+ value: v[1],
47
+ operator: 0
48
+ };
49
+ }); // 触发外部事件
51
50
 
52
51
  onChange === null || onChange === void 0 ? void 0 : onChange({
53
52
  basicFilter: basicFilter,
54
- formatVK: formatVK()
53
+ filterQuery: filterQuery,
54
+ type: 'basic'
55
55
  });
56
56
  }; // 根据字段查找过滤的数据, 不存在时返回默认值
57
57
 
@@ -14,6 +14,7 @@
14
14
  display: inline-flex;
15
15
  }
16
16
  .lm_filter_basic_item {
17
+ font-size: 12px;
17
18
  display: inline-flex;
18
19
  align-items: center;
19
20
  line-height: 1;
@@ -65,7 +66,7 @@
65
66
  }
66
67
  .ant-dropdown.filter_dropdown_container_date .ant-picker {
67
68
  visibility: hidden;
68
- transform: translateY(-28px);
69
+ transform: translateY(-36px);
69
70
  }
70
71
  .ant-dropdown .filter_dropdown {
71
72
  display: flex;
@@ -5,14 +5,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.getFlat = getFlat;
8
+ exports.getFlatItem = getFlatItem;
9
9
  exports.getIsHas = getIsHas;
10
10
  exports.getRanges = getRanges;
11
11
  exports.getValueForType = getValueForType;
12
12
  exports.uniqueFunc = uniqueFunc;
13
13
 
14
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/toConsumableArray"));
15
-
16
14
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/typeof"));
17
15
 
18
16
  var _dayjs = _interopRequireDefault(require("dayjs"));
@@ -44,7 +42,9 @@ function getValueForType(type) {
44
42
  function uniqueFunc(arr, guid) {
45
43
  var res = new Map();
46
44
  return arr.filter(function (item) {
47
- return !res.has(item[guid]) && res.set(item[guid], 1);
45
+ var isHas = (item === null || item === void 0 ? void 0 : item[guid]) || typeof (item === null || item === void 0 ? void 0 : item[guid]) === 'number';
46
+ var resetItem = isHas ? item === null || item === void 0 ? void 0 : item[guid] : item;
47
+ return !res.has(resetItem) && res.set(resetItem, 1);
48
48
  });
49
49
  } // 获取最近的时间段
50
50
 
@@ -55,17 +55,66 @@ function getRanges() {
55
55
  '近一月': [(0, _dayjs.default)().subtract(1, 'month').format('YYYY-MM-DD'), (0, _dayjs.default)().format('YYYY-MM-DD')],
56
56
  '近一年': [(0, _dayjs.default)().subtract(1, 'year').format('YYYY-MM-DD'), (0, _dayjs.default)().format('YYYY-MM-DD')]
57
57
  };
58
- }
59
-
60
- function getFlat(arr) {
61
- var nValue = [];
62
- arr.forEach(function (item) {
63
- if (item.length > 1) {
64
- var suf = item.splice(1);
65
- getFlat(suf);
58
+ } // 级联选择器获取深层结构数据 type: 遍历子/父结构
59
+
60
+
61
+ function getFlatItem(filterValues, originArr) {
62
+ var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'children';
63
+ var nArr = []; // 获取子级项
64
+
65
+ var getChildren = function getChildren(item) {
66
+ var _item$children;
67
+
68
+ if (type === 'parent') {
69
+ nArr.push(item);
70
+ return;
71
+ }
72
+
73
+ if (item === null || item === void 0 ? void 0 : (_item$children = item.children) === null || _item$children === void 0 ? void 0 : _item$children.length) {
74
+ item === null || item === void 0 ? void 0 : item.children.forEach(function (v) {
75
+ return getChildren(v);
76
+ });
66
77
  } else {
67
- nValue.push.apply(nValue, (0, _toConsumableArray2.default)(item[0].children));
78
+ nArr.push(item);
79
+ }
80
+ }; // 检测到三级结构
81
+
82
+
83
+ filterValues.forEach(function (item) {
84
+ if (item.length === 1) {
85
+ var findItem = originArr.find(function (v) {
86
+ return v.value === item[item.length - 1];
87
+ });
88
+ getChildren(findItem);
89
+ }
90
+
91
+ if (item.length === 2) {
92
+ var findArr1 = originArr.find(function (v) {
93
+ return v.value === item[0];
94
+ }).children;
95
+
96
+ var _findItem = findArr1.find(function (v) {
97
+ return v.value === item[item.length - 1];
98
+ });
99
+
100
+ getChildren(_findItem);
101
+ }
102
+
103
+ if (item.length === 3) {
104
+ var _findArr = originArr.find(function (v) {
105
+ return v.value === item[0];
106
+ }).children;
107
+
108
+ var findArr2 = _findArr.find(function (v) {
109
+ return v.value === item[1];
110
+ }).children;
111
+
112
+ var _findItem2 = findArr2.find(function (v) {
113
+ return v.value === item[item.length - 1];
114
+ });
115
+
116
+ nArr.push(_findItem2);
68
117
  }
69
118
  });
70
- return nValue;
119
+ return nArr;
71
120
  }
@@ -72,30 +72,17 @@ var reducer = function reducer(state, action) {
72
72
  default:
73
73
  throw new Error();
74
74
  }
75
- }; // const getRows = ({ fieldName, value }, arr) => {
76
- // const findItem = arr.find(item => {
77
- // return item.field === fieldName;
78
- // })
79
- // switch (findItem.type) {
80
- // case 'input':
81
- // return value;
82
- // case 'select':
83
- // return findItem.data.find(v => v.value === value);
84
- // case 'checkbox':
85
- // return findItem.data.find(v => [value].includes(v.value));
86
- // default:
87
- // break;
88
- // }
89
- // };
90
- // 仅在初始化时触发一次
75
+ }; // 仅在初始化时触发一次
91
76
 
92
77
 
93
78
  var getInitialState = function getInitialState(_ref) {
79
+ var _filterQuery$filter;
80
+
94
81
  var localization = _ref.localization;
95
82
  var globalQuery = localization.globalQuery,
96
83
  filterQuery = localization.filterQuery;
97
84
  var basicFilter = {};
98
- filterQuery.filter.forEach(function (item) {
85
+ filterQuery === null || filterQuery === void 0 ? void 0 : (_filterQuery$filter = filterQuery.filter) === null || _filterQuery$filter === void 0 ? void 0 : _filterQuery$filter.forEach(function (item) {
99
86
  basicFilter[item.fieldName] = item.value;
100
87
  });
101
88
  return {
@@ -23,14 +23,14 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm
23
23
 
24
24
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
25
25
 
26
- var _icons = require("@ant-design/icons");
27
-
28
26
  var _proTable = _interopRequireDefault(require("@ant-design/pro-table"));
29
27
 
30
28
  var _sortable = require("@dnd-kit/sortable");
31
29
 
32
30
  var _classnames = _interopRequireDefault(require("classnames"));
33
31
 
32
+ var _linkmoreDesign = require("linkmore-design");
33
+
34
34
  var _lodash = require("lodash");
35
35
 
36
36
  var _react = _interopRequireWildcard(require("react"));
@@ -39,13 +39,11 @@ var _reactResizable = require("react-resizable");
39
39
 
40
40
  var _reactSortableHoc = require("react-sortable-hoc");
41
41
 
42
- var _linkmoreDesign = require("linkmore-design");
43
-
44
42
  var _empty = _interopRequireDefault(require("./assets/empty.png"));
45
43
 
46
44
  var _resetConfig = _interopRequireDefault(require("./resetConfig"));
47
45
 
48
- var _excluded = ["dataSource", "autoSize", "columns", "rowClick", "onDoubleClick", "checkConfig", "summary", "pagination", "hiddenPage", "loading", "virtual", "sortOpen", "resizeable", "customCheck", "components", "rowSelection", "columnsState", "onChange", "filterChange", "tableRowType", "size"],
46
+ var _excluded = ["dataSource", "autoSize", "columns", "rowClick", "onDoubleClick", "checkConfig", "summary", "pagination", "hiddenPage", "loading", "virtual", "sortOpen", "resizeable", "customCheck", "components", "rowSelection", "columnsState", "onChange", "filterChange", "tableRowType", "size", "emptyProps"],
49
47
  _excluded2 = ["className", "style"],
50
48
  _excluded3 = ["onResize", "width", "onResizeStop"];
51
49
  var Summary = _proTable.default.Summary; // const DragHandle = SortableHandle(() => <MenuOutlined style={{ cursor: 'grab', color: '#999' }} />);
@@ -97,7 +95,9 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
97
95
  tableRowType = _props$tableRowType === void 0 ? 'default' : _props$tableRowType,
98
96
  _props$size = props.size,
99
97
  size = _props$size === void 0 ? 'default' : _props$size,
98
+ emptyProps = props.emptyProps,
100
99
  resetProps = (0, _objectWithoutProperties2.default)(props, _excluded);
100
+ console.log(emptyProps, '--emptyProps');
101
101
  var _resetProps$rowKey = resetProps.rowKey,
102
102
  rowKey = _resetProps$rowKey === void 0 ? 'id' : _resetProps$rowKey;
103
103
 
@@ -513,7 +513,9 @@ var ResetTable = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
513
513
  width: '100%'
514
514
  }
515
515
  }, /*#__PURE__*/_react.default.createElement(_configProvider.default, {
516
- renderEmpty: customizeRenderEmpty
516
+ renderEmpty: emptyProps ? function () {
517
+ return /*#__PURE__*/_react.default.createElement(_linkmoreDesign.Empty, emptyProps, (emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.footer) || null);
518
+ } : customizeRenderEmpty
517
519
  }, /*#__PURE__*/_react.default.createElement(_proTable.default, (0, _extends2.default)({}, config, {
518
520
  loading: loading,
519
521
  dataSource: dataSource,