@zgfe/business-lib 1.0.25-userGroupFix.0 → 1.0.25

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 (33) hide show
  1. package/es/cycleTime/demo/disable.d.ts +2 -0
  2. package/es/cycleTime/demo/disable.js +17 -0
  3. package/es/cycleTime/index.d.ts +1 -0
  4. package/es/cycleTime/index.js +12 -5
  5. package/es/cycleTime/month.d.ts +1 -0
  6. package/es/cycleTime/month.js +6 -3
  7. package/es/cycleTime/styles/month.less +12 -0
  8. package/es/select/demo/multiple.js +3 -2
  9. package/es/select/handle.js +4 -3
  10. package/es/select/styles/handle.less +36 -27
  11. package/es/userCondition/conditions/styles/eventCondition.less +1 -1
  12. package/es/userCondition/conditions/styles/tagsCondition.less +1 -1
  13. package/es/userCondition/conditions/tagsCondition.js +26 -13
  14. package/es/userCondition/conditions/textDesc.js +27 -6
  15. package/es/userCondition/demo/index.js +5 -228
  16. package/es/userCondition/demo/mockData.d.ts +85 -0
  17. package/es/userCondition/demo/mockData.js +546 -0
  18. package/es/userCondition/types.d.ts +21 -3
  19. package/es/userCondition/util.d.ts +23 -1
  20. package/es/userCondition/util.js +39 -5
  21. package/es/userTagsSelector/cascaderOverlay.js +132 -42
  22. package/es/userTagsSelector/demo/index.js +12 -5
  23. package/es/userTagsSelector/groups/groupOption.js +3 -2
  24. package/es/userTagsSelector/groups/index.js +18 -11
  25. package/es/userTagsSelector/groups/styles/option.less +6 -1
  26. package/es/userTagsSelector/index.js +17 -3
  27. package/es/userTagsSelector/multipleCheckPanel/checkOption.js +2 -1
  28. package/es/userTagsSelector/multipleCheckPanel/index.js +7 -16
  29. package/es/userTagsSelector/styles/cascaderOverlay.less +9 -4
  30. package/es/userTagsSelector/types.d.ts +1 -10
  31. package/es/userTagsSelector/util.d.ts +1 -1
  32. package/es/userTagsSelector/util.js +6 -2
  33. package/package.json +2 -2
@@ -1,3 +1,9 @@
1
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
+
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+
5
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+
1
7
  export function buildCondition(type) {
2
8
  switch (type) {
3
9
  case 'add':
@@ -99,17 +105,45 @@ export function findPropAndEnv(name, list) {
99
105
 
100
106
  return null;
101
107
  }
102
- export function findTagFactory(data) {
103
- return function (id) {
108
+ export function buildSelectLayer(data) {
109
+ return function (layerLabelId) {
104
110
  var i = -1;
105
111
  var j = data.findIndex(function (item) {
106
- i = item.children.findIndex(function (tag) {
107
- return tag.labelId === id;
112
+ i = item.layers.findIndex(function (layer) {
113
+ return layer.layerLabelId === layerLabelId;
108
114
  });
109
115
  if (i < 0) return false;
110
116
  return true;
111
117
  });
112
118
  if (j < 0) return null;
113
- return data[j].children[i];
119
+ return [{
120
+ labelGroup: data[j].labelGroup
121
+ }, {
122
+ id: data[j].id,
123
+ labelName: data[j].labelName
124
+ }, {
125
+ layerLabelId: data[j].layers[i].layerLabelId,
126
+ layerLabelName: data[j].layers[i].layerLabelName
127
+ }];
114
128
  };
129
+ }
130
+ export function buildTagsGroup(list) {
131
+ var groupOrder = ['基本标签', '活跃标签', '行为标签', '预测标签', '其它标签'];
132
+ var groupsMap = {};
133
+ var options = [];
134
+ list.forEach(function (label) {
135
+ if (Object.hasOwn(groupsMap, label.labelGroup)) {
136
+ groupsMap[label.labelGroup].children.push(_objectSpread({}, label));
137
+ } else {
138
+ var group = {
139
+ labelGroup: label.labelGroup,
140
+ children: [_objectSpread({}, label)]
141
+ };
142
+ groupsMap[label.labelGroup] = group;
143
+ }
144
+ });
145
+ groupOrder.map(function (group) {
146
+ groupsMap[group] && options.push(groupsMap[group]);
147
+ });
148
+ return options;
115
149
  }
@@ -1,3 +1,7 @@
1
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
+
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+
1
5
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
6
 
3
7
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -6,6 +10,8 @@ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symb
6
10
 
7
11
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
8
12
 
13
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
14
+
9
15
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
16
 
11
17
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -18,49 +24,77 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
18
24
 
19
25
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
20
26
 
21
- import React from 'react';
27
+ import React, { useRef } from 'react';
22
28
  import { useState } from 'react';
23
29
  import { classPrefix } from '.';
24
30
  import './styles/cascaderOverlay.less';
25
31
  import Groups from './groups/index';
26
32
  import MultipleCheckPanel from './multipleCheckPanel';
27
- import { getFieldFactory } from './util';
33
+ import { filterFactory, getFieldFactory } from './util';
28
34
  import _ from 'lodash';
35
+ import Search from './components/search';
29
36
 
30
37
  var CascaderOverlay = function CascaderOverlay(props) {
31
- var data = props.data,
32
- currentValue = props.currentValue,
38
+ var currentValue = props.currentValue,
33
39
  labelFields = props.labelFields,
34
40
  keyFields = props.keyFields,
35
41
  valueFields = props.valueFields,
36
42
  childFields = props.childFields;
43
+ var timer = useRef(null);
37
44
 
38
- var _useState = useState(function () {
39
- var initPath = [];
40
- var curr = data[0];
41
- var getChildField = getFieldFactory(childFields);
42
-
43
- while (curr) {
44
- initPath.push(curr);
45
- curr = curr[getChildField()];
46
- }
47
-
48
- initPath.pop();
49
- return initPath;
50
- }),
45
+ var _useState = useState(props.data || []),
51
46
  _useState2 = _slicedToArray(_useState, 2),
52
- currentPath = _useState2[0],
53
- setCurrentPath = _useState2[1];
47
+ data = _useState2[0],
48
+ setData = _useState2[1];
49
+
50
+ var _useState3 = useState(initPath(data)),
51
+ _useState4 = _slicedToArray(_useState3, 2),
52
+ currentPath = _useState4[0],
53
+ setCurrentPath = _useState4[1];
54
+
55
+ var _useState5 = useState(''),
56
+ _useState6 = _slicedToArray(_useState5, 2),
57
+ highlightText = _useState6[0],
58
+ setHighlightText = _useState6[1];
59
+
60
+ function initPath(data) {
61
+ return function () {
62
+ var path = [];
63
+ var curr = data[0];
64
+ var getChildField = getFieldFactory(childFields);
65
+
66
+ while (curr) {
67
+ path.push(curr);
68
+ var childField = getChildField();
69
+
70
+ if (_.isArray(curr[childField])) {
71
+ curr = curr[childField].length ? curr[childField][0] : null;
72
+ } else {
73
+ curr = curr[childField];
74
+ }
75
+ }
76
+
77
+ path.pop();
78
+ return path;
79
+ };
80
+ }
54
81
 
55
82
  function onActive(data, level) {
56
83
  var currIndex = level;
57
84
  var getChildField = getFieldFactory(childFields.slice(currIndex).length ? childFields.slice(currIndex) : childFields.slice(-1));
58
85
  var curr = data;
59
- var newPath = currentPath.slice();
86
+ var newPath = currentPath.slice(0, level + 1);
60
87
 
61
88
  while (curr) {
62
89
  newPath[currIndex] = curr;
63
- curr = curr[getChildField()];
90
+ var childField = getChildField();
91
+
92
+ if (_.isArray(curr[childField])) {
93
+ curr = curr[childField].length ? curr[childField][0] : null;
94
+ } else {
95
+ curr = curr[childField];
96
+ }
97
+
64
98
  currIndex++;
65
99
  }
66
100
 
@@ -70,8 +104,13 @@ var CascaderOverlay = function CascaderOverlay(props) {
70
104
 
71
105
  function onCheck(data) {
72
106
  var getVabelField = getFieldFactory(valueFields);
107
+ var getLabelField = getFieldFactory(labelFields);
73
108
  var newValue = currentPath.map(function (item) {
74
- return item[getVabelField()];
109
+ var _ref;
110
+
111
+ var labelField = getLabelField();
112
+ var valueField = getVabelField();
113
+ return _ref = {}, _defineProperty(_ref, labelField, item[labelField]), _defineProperty(_ref, valueField, item[valueField]), _ref;
75
114
  }).concat(data);
76
115
  props.onChange([].concat(_toConsumableArray(currentValue), [newValue]));
77
116
  }
@@ -85,30 +124,81 @@ var CascaderOverlay = function CascaderOverlay(props) {
85
124
  props.onChange(newValues);
86
125
  }
87
126
 
127
+ function onSearch(val) {
128
+ timer.current && clearTimeout(timer.current);
129
+ timer.current = setTimeout(function () {
130
+ var _labelFields$, _props$data;
131
+
132
+ var res = [];
133
+ var filter = filterFactory((_labelFields$ = labelFields[1]) !== null && _labelFields$ !== void 0 ? _labelFields$ : labelFields[0], val);
134
+ (_props$data = props.data) === null || _props$data === void 0 ? void 0 : _props$data.forEach(function (item) {
135
+ var searchList = item[childFields[0]].filter(filter);
136
+
137
+ if (searchList.length) {
138
+ res.push(_objectSpread(_objectSpread({}, item), {}, _defineProperty({}, childFields[0], item[childFields[0]].filter(filter))));
139
+ }
140
+ });
141
+ setData(res);
142
+ setCurrentPath(initPath(res));
143
+ setHighlightText(val);
144
+ }, 300);
145
+ }
146
+
147
+ function render() {
148
+ if (!data.length) return /*#__PURE__*/React.createElement("div", {
149
+ style: {
150
+ padding: 8,
151
+ width: 596
152
+ }
153
+ }, "\u6682\u65E0\u6570\u636E");
154
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
155
+ className: "".concat(classPrefix, "-overlay-groups")
156
+ }, /*#__PURE__*/React.createElement(Groups, {
157
+ key: 0,
158
+ currentValue: currentValue,
159
+ valueField: valueFields[0],
160
+ keyField: keyFields[0],
161
+ childField: childFields[0],
162
+ labelField: labelFields[0],
163
+ data: data,
164
+ onActive: onActive,
165
+ level: 0
166
+ })), /*#__PURE__*/React.createElement("div", {
167
+ className: "".concat(classPrefix, "-overlay-groups")
168
+ }, /*#__PURE__*/React.createElement(Groups, {
169
+ currentValue: currentValue,
170
+ valueField: valueFields[1],
171
+ keyField: keyFields[1],
172
+ childField: childFields[1],
173
+ labelField: labelFields[1],
174
+ data: currentPath[0] ? currentPath[0][childFields[0]] : [],
175
+ onActive: onActive,
176
+ highlightText: highlightText,
177
+ level: 1
178
+ })), /*#__PURE__*/React.createElement("div", {
179
+ className: "".concat(classPrefix, "-overlay-selections")
180
+ }, /*#__PURE__*/React.createElement(MultipleCheckPanel, {
181
+ valueField: valueFields[2],
182
+ onCheck: onCheck,
183
+ onUncheck: onUncheck,
184
+ currentValue: currentValue,
185
+ level: 2,
186
+ labelField: labelFields[2],
187
+ data: currentPath[1] ? currentPath[1][childFields[1]] : []
188
+ })));
189
+ }
190
+
88
191
  return /*#__PURE__*/React.createElement("div", {
89
192
  className: "".concat(classPrefix, "-overlay")
90
193
  }, /*#__PURE__*/React.createElement("div", {
91
- className: "".concat(classPrefix, "-overlay-groups")
92
- }, /*#__PURE__*/React.createElement(Groups, {
93
- currentValue: currentValue,
94
- valueField: valueFields[0],
95
- keyField: keyFields[0],
96
- childField: childFields[0],
97
- labelField: labelFields[0],
98
- data: data,
99
- onActive: onActive,
100
- level: 0
194
+ className: "".concat(classPrefix, "-overlay-search")
195
+ }, /*#__PURE__*/React.createElement(Search, {
196
+ show: true,
197
+ onChange: onSearch,
198
+ placeholder: "\u641C\u7D22\u6807\u7B7E\u540D\u79F0"
101
199
  })), /*#__PURE__*/React.createElement("div", {
102
- className: "".concat(classPrefix, "-overlay-selections")
103
- }, /*#__PURE__*/React.createElement(MultipleCheckPanel, {
104
- valueField: valueFields[1],
105
- onCheck: onCheck,
106
- onUncheck: onUncheck,
107
- currentValue: currentValue,
108
- level: 1,
109
- labelField: labelFields[1],
110
- data: currentPath[0][childFields[0]]
111
- })));
200
+ className: "".concat(classPrefix, "-overlay-panel")
201
+ }, render()));
112
202
  };
113
203
 
114
204
  export default CascaderOverlay;
@@ -22,7 +22,14 @@ data.forEach(function (item) {
22
22
  var id = Math.random();
23
23
  var tag = {
24
24
  id: id,
25
- labelName: '标签' + id + id + id + id
25
+ labelName: '标签' + id + id + id + id,
26
+ layers: Array(5 * Math.random() >> 0).fill(1).map(function (_item, i) {
27
+ var layer = {
28
+ layerLabelId: Math.random(),
29
+ layerLabelName: '分层' + i
30
+ };
31
+ return layer;
32
+ })
26
33
  };
27
34
 
28
35
  if (id < 0.6 && defaultValue.length < 20) {
@@ -38,11 +45,11 @@ export default (function () {
38
45
  }
39
46
 
40
47
  return /*#__PURE__*/React.createElement(BizUserTagsSelect, {
41
- childFields: ['children'],
48
+ childFields: ['children', 'layers'],
42
49
  data: data,
43
- keyFields: ['labelGroup', 'id'],
44
- labelFields: ['labelGroup', 'labelName'],
45
- valueFields: ['labelGroup', 'labelId'],
50
+ keyFields: ['labelGroup', 'id', 'id'],
51
+ labelFields: ['labelGroup', 'labelName', 'layerLabelName'],
52
+ valueFields: ['labelGroup', 'labelName', 'id'],
46
53
  onChange: onChange
47
54
  });
48
55
  });
@@ -1,7 +1,7 @@
1
1
  import React, { forwardRef } from 'react';
2
2
  import { Badge } from 'antd';
3
3
  import { classPrefix } from '..';
4
- import theme from '../../assets/theme.js';
4
+ import { theme } from '../../assets/theme.js';
5
5
  import './styles/option.less';
6
6
  import { util } from '../../utils';
7
7
  var GroupOption = /*#__PURE__*/forwardRef(function (props, ref) {
@@ -30,7 +30,8 @@ var GroupOption = /*#__PURE__*/forwardRef(function (props, ref) {
30
30
  return _onClick(value);
31
31
  },
32
32
  className: ["".concat(classPrefix, "-group-option"), actived ? 'active' : '', checked ? 'checked' : ''].join(' '),
33
- ref: ref
33
+ ref: ref,
34
+ title: label
34
35
  }, /*#__PURE__*/React.createElement("div", {
35
36
  className: "".concat(classPrefix, "-group-option-label")
36
37
  }, renderLabel()), /*#__PURE__*/React.createElement("div", {
@@ -10,7 +10,7 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
10
10
 
11
11
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
12
 
13
- import React, { useMemo } from 'react';
13
+ import React, { useEffect, useMemo } from 'react';
14
14
  import VirtualList from 'rc-virtual-list';
15
15
  import { classPrefix } from '../';
16
16
  import GroupOption from './groupOption';
@@ -33,11 +33,21 @@ var Groups = function Groups(props) {
33
33
  searchValue = _useState2[0],
34
34
  setSearchValue = _useState2[1];
35
35
 
36
- var _useState3 = useState(data[0][valueField]),
36
+ var _useState3 = useState(data.length ? data[0][valueField] : null),
37
37
  _useState4 = _slicedToArray(_useState3, 2),
38
38
  active = _useState4[0],
39
39
  setActive = _useState4[1];
40
40
 
41
+ var searchFilter = useMemo(function () {
42
+ return filterFactory(labelField, searchValue);
43
+ }, [labelField, searchValue]);
44
+ var isChecked = useMemo(function () {
45
+ return isCheckedFactory(currentValue, level);
46
+ }, [currentValue, level]);
47
+ useEffect(function () {
48
+ if (data.length) setActive(data[0][valueField]);
49
+ }, [data]);
50
+
41
51
  function _onClick(i) {
42
52
  setActive(data[i][valueField]);
43
53
  props.onActive(data[i], level);
@@ -47,12 +57,6 @@ var Groups = function Groups(props) {
47
57
  setSearchValue(val);
48
58
  }
49
59
 
50
- var searchFilter = useMemo(function () {
51
- return filterFactory(labelField, searchValue);
52
- }, [labelField, searchValue]);
53
- var isChecked = useMemo(function () {
54
- return isCheckedFactory(currentValue, level);
55
- }, [currentValue, level]);
56
60
  if (!data.length) return /*#__PURE__*/React.createElement("span", null, "\u6682\u65E0\u6570\u636E");
57
61
  return /*#__PURE__*/React.createElement("div", {
58
62
  className: "".concat(classPrefix, "-groups-panel")
@@ -61,19 +65,22 @@ var Groups = function Groups(props) {
61
65
  onChange: onSearch
62
66
  }), /*#__PURE__*/React.createElement(VirtualList, {
63
67
  data: searchable ? data.filter(searchFilter) : data,
64
- height: 408,
68
+ height: 360,
69
+ itemHeight: 48,
65
70
  itemKey: keyField
66
71
  }, function (item, index) {
72
+ var _props$highlightText;
73
+
67
74
  return /*#__PURE__*/React.createElement(GroupOption, {
68
75
  onClick: function onClick() {
69
76
  return _onClick(index);
70
77
  },
71
78
  actived: item[valueField] === active,
72
- checked: isChecked(item[valueField]),
79
+ checked: isChecked(item, valueField),
73
80
  count: item[childField].length,
74
81
  label: item[labelField],
75
82
  value: item[valueField],
76
- highlightText: searchValue
83
+ highlightText: (_props$highlightText = props.highlightText) !== null && _props$highlightText !== void 0 ? _props$highlightText : searchValue
77
84
  });
78
85
  }));
79
86
  };
@@ -37,7 +37,7 @@
37
37
  }
38
38
  }
39
39
  &.active {
40
- color: #fff;
40
+ color: #fff !important;
41
41
  background: @primary-color;
42
42
  .biz-user-tags-selector-group-option-count {
43
43
  .ant-badge-count {
@@ -45,6 +45,11 @@
45
45
  background: @primary-color;
46
46
  }
47
47
  }
48
+ .biz-user-tags-selector-group-option-label {
49
+ * {
50
+ color: #fff !important;
51
+ }
52
+ }
48
53
  }
49
54
  }
50
55
  }
@@ -1,3 +1,9 @@
1
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
+
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+
5
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+
1
7
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
8
 
3
9
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -40,7 +46,14 @@ var UserTagsSelect = function UserTagsSelect(props) {
40
46
 
41
47
  var handleValue = useMemo(function () {
42
48
  return currentValue.map(function (item) {
43
- return item.slice().pop();
49
+ var last = item[item.length - 1];
50
+ var pre = item[item.length - 2];
51
+
52
+ var res = _objectSpread(_objectSpread({}, last), {}, {
53
+ handleText: "".concat(pre[labelFields[labelFields.length - 2]], "\uFF1A").concat(last[labelFields[labelFields.length - 1]])
54
+ });
55
+
56
+ return res;
44
57
  });
45
58
  }, [currentValue]);
46
59
 
@@ -51,7 +64,8 @@ var UserTagsSelect = function UserTagsSelect(props) {
51
64
  function onDelete(data) {
52
65
  var current = currentValue.slice();
53
66
  var index = current.findIndex(function (item) {
54
- return _.isEqual(item.slice().pop(), data);
67
+ var keyField = keyFields[keyFields.length - 1];
68
+ return _.isEqual(item.slice().pop()[keyField], data[keyField]);
55
69
  });
56
70
  current.splice(index, 1);
57
71
  props.onChange && props.onChange(current);
@@ -97,7 +111,7 @@ var UserTagsSelect = function UserTagsSelect(props) {
97
111
  }, /*#__PURE__*/React.createElement(SelectHandle, {
98
112
  border: false,
99
113
  value: handleValue,
100
- labelField: labelFields[labelFields.length - 1],
114
+ labelField: "handleText",
101
115
  multiple: true,
102
116
  size: "middle",
103
117
  placeholder: "\u9009\u62E9\u6807\u7B7E",
@@ -33,7 +33,8 @@ var CheckOption = /*#__PURE__*/forwardRef(function (props, ref) {
33
33
 
34
34
  return /*#__PURE__*/React.createElement("div", {
35
35
  ref: ref,
36
- className: ["".concat(classPrefix, "-check-option"), disabled ? "".concat(classPrefix, "-check-option-disabled") : ''].join(' ')
36
+ className: ["".concat(classPrefix, "-check-option"), disabled ? "".concat(classPrefix, "-check-option-disabled") : ''].join(' '),
37
+ title: label
37
38
  }, /*#__PURE__*/React.createElement(Checkbox, {
38
39
  onChange: onChange,
39
40
  disabled: disabled,
@@ -13,7 +13,6 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
13
  import React, { useMemo, useState } from 'react';
14
14
  import { classPrefix } from '..';
15
15
  import VirtualList from 'rc-virtual-list';
16
- import Search from '../components/search';
17
16
  import CheckOption from './checkOption';
18
17
  import { filterFactory, isCheckedFactory } from '../util';
19
18
 
@@ -21,16 +20,12 @@ var MultipleCheckPanel = function MultipleCheckPanel(props) {
21
20
  var data = props.data,
22
21
  labelField = props.labelField,
23
22
  level = props.level,
24
- currentValue = props.currentValue;
23
+ currentValue = props.currentValue,
24
+ valueField = props.valueField;
25
25
 
26
26
  var _useState = useState(''),
27
- _useState2 = _slicedToArray(_useState, 2),
28
- searchValue = _useState2[0],
29
- setSearchValue = _useState2[1];
30
-
31
- function onSearch(val) {
32
- setSearchValue(val);
33
- }
27
+ _useState2 = _slicedToArray(_useState, 1),
28
+ searchValue = _useState2[0];
34
29
 
35
30
  var searchFilter = useMemo(function () {
36
31
  return filterFactory(labelField, searchValue);
@@ -50,17 +45,13 @@ var MultipleCheckPanel = function MultipleCheckPanel(props) {
50
45
  if (!data.length) return /*#__PURE__*/React.createElement("span", null, "\u6682\u65E0\u6570\u636E");
51
46
  return /*#__PURE__*/React.createElement("div", {
52
47
  className: "".concat(classPrefix, "-check-panel")
53
- }, /*#__PURE__*/React.createElement(Search, {
54
- show: true,
55
- onChange: onSearch,
56
- placeholder: "\u641C\u7D22\u6807\u7B7E\u540D\u79F0"
57
- }), /*#__PURE__*/React.createElement(VirtualList, {
48
+ }, /*#__PURE__*/React.createElement(VirtualList, {
58
49
  data: data.filter(searchFilter),
59
50
  itemHeight: 48,
60
51
  itemKey: labelField,
61
- height: 361
52
+ height: 360
62
53
  }, function (item, index) {
63
- var checked = isChecked(item);
54
+ var checked = isChecked(item, valueField);
64
55
  return /*#__PURE__*/React.createElement(CheckOption, {
65
56
  checked: checked,
66
57
  highlightText: searchValue,
@@ -1,19 +1,24 @@
1
1
  @import '../../assets/styles/inner.less';
2
2
  .biz-user-tags-selector {
3
3
  &-overlay {
4
- display: flex;
5
- width: 651px;
6
4
  max-height: 425px;
7
5
  background-color: #fff;
8
6
  border-radius: @border-radius-normal;
9
7
  box-shadow: @box-shadow-base;
8
+ &-search {
9
+ height: 48px;
10
+ padding: @margin-xs @margin-xs 0;
11
+ }
12
+ &-panel {
13
+ display: flex;
14
+ }
10
15
  &-groups {
11
- width: 192px;
16
+ width: 204px;
12
17
  padding: @margin-xs;
13
18
  border-right: 1px solid @border-color-base;
14
19
  }
15
20
  &-selections {
16
- flex: 1;
21
+ width: 204px;
17
22
  min-width: 0;
18
23
  padding: @padding-xs;
19
24
  }
@@ -29,6 +29,7 @@ export declare namespace UserTagsSelectorTypes {
29
29
  searchable?: boolean;
30
30
  level: number;
31
31
  currentValue: any[];
32
+ highlightText?: string;
32
33
  }
33
34
  interface GroupOption {
34
35
  actived: boolean;
@@ -55,13 +56,3 @@ export declare namespace UserTagsSelectorTypes {
55
56
  disabled: boolean;
56
57
  }
57
58
  }
58
- export interface TagI {
59
- appId: number;
60
- createTime: string;
61
- updateTime: string;
62
- del: number;
63
- labelGroup: string;
64
- labelId: number;
65
- labelName: string;
66
- labelStatus: number;
67
- }
@@ -1,4 +1,4 @@
1
1
  export declare function curry(fn: Function): (...arg1: any[]) => (...arg2: any[]) => any;
2
2
  export declare function filterFactory(labelField: string, searchValue: string): (item: any) => boolean;
3
- export declare function isCheckedFactory(currentValue: any[], level: number): (val: any) => boolean;
3
+ export declare function isCheckedFactory(currentValue: any[], level: number): (option: any, valueFiled: string) => boolean;
4
4
  export declare function getFieldFactory(fields: string[]): () => string;
@@ -22,9 +22,13 @@ export function filterFactory(labelField, searchValue) {
22
22
  };
23
23
  }
24
24
  export function isCheckedFactory(currentValue, level) {
25
- return function (val) {
25
+ return function (option, valueFiled) {
26
26
  return currentValue.some(function (value) {
27
- return _.isEqual(val, value[level]);
27
+ if (value[level][valueFiled] !== undefined) {
28
+ return value[level][valueFiled] === option[valueFiled];
29
+ } else {
30
+ return value[level] === option[valueFiled];
31
+ }
28
32
  });
29
33
  };
30
34
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zgfe/business-lib",
3
- "version": "1.0.25-userGroupFix.0",
3
+ "version": "1.0.25",
4
4
  "scripts": {
5
5
  "start": "dumi dev",
6
6
  "docs:build": "dumi build",
@@ -58,5 +58,5 @@
58
58
  "react": "^16.12.0 || ^17.0.0",
59
59
  "yorkie": "^2.0.0"
60
60
  },
61
- "gitHead": "f8c8cea2af532487d17a3d4f2e4e766844b0c748"
61
+ "gitHead": "6bdaae4bcfed41d119805192cad8610711297f9d"
62
62
  }