@zgfe/modules-dm 1.0.31 → 1.0.34-heyh.2

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 (43) hide show
  1. package/es/components/demo.js +2 -1
  2. package/es/constants/api.d.ts +11 -0
  3. package/es/constants/api.js +27 -12
  4. package/es/modules/dataCollection/collectionAttributeList.js +51 -26
  5. package/es/modules/dataCollection/collectionEventList.js +53 -83
  6. package/es/modules/dataCollection/components/createVirtualDrawer.d.ts +4 -0
  7. package/es/modules/dataCollection/components/createVirtualDrawer.js +222 -0
  8. package/es/modules/dataCollection/components/eventFilter/index.d.ts +5 -0
  9. package/es/modules/dataCollection/components/eventFilter/index.js +145 -0
  10. package/es/modules/dataCollection/components/eventFilter/styles/index.less +64 -0
  11. package/es/modules/dataCollection/components/eventFilter/types.d.ts +51 -0
  12. package/es/modules/dataCollection/components/eventFilter/types.js +1 -0
  13. package/es/modules/dataCollection/components/eventGroupingDrawer.d.ts +4 -0
  14. package/es/modules/dataCollection/components/eventGroupingDrawer.js +375 -0
  15. package/es/modules/dataCollection/components/selectAttributes.d.ts +3 -0
  16. package/es/modules/dataCollection/components/selectAttributes.js +207 -0
  17. package/es/modules/dataCollection/components/sortableComponnet.d.ts +3 -0
  18. package/es/modules/dataCollection/components/sortableComponnet.js +101 -0
  19. package/es/modules/dataCollection/{tablePlus.d.ts → components/tablePlus.d.ts} +2 -1
  20. package/es/modules/dataCollection/{tablePlus.js → components/tablePlus.js} +160 -147
  21. package/es/modules/dataCollection/components/virtualTablePlus.d.ts +5 -0
  22. package/es/modules/dataCollection/components/virtualTablePlus.js +351 -0
  23. package/es/modules/dataCollection/index.js +11 -10
  24. package/es/modules/dataCollection/styles/index.less +341 -14
  25. package/es/modules/dataCollection/types.d.ts +75 -0
  26. package/es/modules/dataCollection/types.js +1 -0
  27. package/es/modules/dataCollection/virtualEventList.d.ts +4 -0
  28. package/es/modules/dataCollection/virtualEventList.js +335 -0
  29. package/es/modules/dataManage/demo/index.js +16 -12
  30. package/es/modules/dataManage/index.js +4 -4
  31. package/es/modules/dataPlan/addEventOrUser.js +1 -2
  32. package/es/modules/dataPlan/addPlan.js +3 -12
  33. package/es/modules/dataPlan/eventList.js +0 -1
  34. package/es/modules/dataPlan/index.js +15 -15
  35. package/es/modules/dataPlan/tablePlus.js +0 -1
  36. package/es/modules/dataPlan/userAttributeList.js +0 -1
  37. package/es/utils/index.d.ts +48 -0
  38. package/es/utils/index.js +247 -0
  39. package/package.json +7 -4
  40. package/es/modules/dataCollection/demo/index.d.ts +0 -2
  41. package/es/modules/dataCollection/demo/index.js +0 -7
  42. package/es/modules/dataPlan/demo/index.d.ts +0 -2
  43. package/es/modules/dataPlan/demo/index.js +0 -6
@@ -0,0 +1,375 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
+ 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; }
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
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
6
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
7
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
+ 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."); }
9
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
12
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
+ import { BizGlobalDataContext, IconFont } from '@zgfe/business-lib';
14
+ import { Input, Modal, message, Drawer, Popover, Checkbox, Select, Button } from 'antd';
15
+ import { DragDropContext, Droppable, Draggable } from 'react-beautiful-dnd';
16
+ import request from '../../../utils/ajax';
17
+ import apis from '../../../constants/api';
18
+ import { eventListHandle, groupListSort, eventCheckedAll, openChangeData, groupDeleteData, eventShowOrHiddenData, eventMoveData, getAppID } from '../../../utils/index';
19
+ import React, { Fragment, useContext, useEffect, useState } from 'react';
20
+ import _ from 'lodash';
21
+ import SortableComponnet from './sortableComponnet';
22
+ var EventGroupingDrawer = function EventGroupingDrawer(props) {
23
+ var classPrefix = 'event-grouping-drawer';
24
+ var eventGroupingShow = props.eventGroupingShow,
25
+ setEventGroupingShow = props.setEventGroupingShow;
26
+ var _useContext = useContext(BizGlobalDataContext),
27
+ currentApp = _useContext.currentApp;
28
+ var _useState = useState([]),
29
+ _useState2 = _slicedToArray(_useState, 2),
30
+ groupingData = _useState2[0],
31
+ setGroupingData = _useState2[1];
32
+ var _useState3 = useState(false),
33
+ _useState4 = _slicedToArray(_useState3, 2),
34
+ isDragDisabled = _useState4[0],
35
+ setIsDragDisabled = _useState4[1];
36
+ var queryList = function queryList() {
37
+ request(apis.queryCollectionEventList, {
38
+ method: 'post',
39
+ data: {
40
+ appId: getAppID(currentApp),
41
+ platform: 0,
42
+ isAll: true
43
+ }
44
+ }).then(function (res) {
45
+ if (res && res.data) {
46
+ eventListHandle(res.data);
47
+ setGroupingData(res.data);
48
+ }
49
+ });
50
+ };
51
+ useEffect(function () {
52
+ if (eventGroupingShow) queryList();
53
+ }, [eventGroupingShow]);
54
+ var onChangeAll = function onChangeAll(groupId) {
55
+ setGroupingData(_.cloneDeep(eventCheckedAll(groupId, groupingData)));
56
+ };
57
+ var openChange = function openChange(groupId) {
58
+ setGroupingData(_.cloneDeep(openChangeData(groupId, groupingData)));
59
+ };
60
+ // 拖拽之后改变对应数据
61
+ var onDragEnd = function onDragEnd(result) {
62
+ // console.log('拖拽之后改变对应数据: ', result);
63
+ // 分组移动
64
+ if (result.source.droppableId.indexOf('item') === -1) {
65
+ var ids = groupListSort(result, groupingData, setGroupingData);
66
+ request(apis.orderEventGroup, {
67
+ method: 'post',
68
+ data: {
69
+ appId: getAppID(currentApp),
70
+ ids: ids
71
+ }
72
+ });
73
+ }
74
+ setIsDragDisabled(false);
75
+ };
76
+ // 删除事件分组
77
+ var groupDelete = function groupDelete(groupId) {
78
+ Modal.confirm({
79
+ centered: true,
80
+ title: '提示',
81
+ content: '是否确认删除?',
82
+ className: 'group-delete-modal',
83
+ icon: /*#__PURE__*/React.createElement(IconFont, {
84
+ type: "tishi1"
85
+ }),
86
+ okText: '确认',
87
+ cancelText: '取消',
88
+ maskClosable: false,
89
+ onOk: function onOk() {
90
+ request(apis.deleteEventGroup, {
91
+ method: 'post',
92
+ data: {
93
+ appId: getAppID(currentApp),
94
+ eventGroupId: groupId
95
+ }
96
+ }).then(function (res) {
97
+ if (res) {
98
+ message.success('删除成功');
99
+ groupDeleteData(groupId, groupingData, setGroupingData);
100
+ }
101
+ });
102
+ }
103
+ });
104
+ };
105
+ // 显示或隐藏
106
+ var eventShowOrHidden = function eventShowOrHidden(type, groupId) {
107
+ var ids = eventShowOrHiddenData(type, groupId, groupingData, setGroupingData);
108
+ if (ids !== '') {
109
+ request(apis.hiddenEvent, {
110
+ method: 'post',
111
+ data: {
112
+ appId: getAppID(currentApp),
113
+ hidden: type,
114
+ ids: ids
115
+ }
116
+ });
117
+ }
118
+ };
119
+ // 移动
120
+ var _useState5 = useState(undefined),
121
+ _useState6 = _slicedToArray(_useState5, 2),
122
+ eventMoveShow = _useState6[0],
123
+ setEventMoveShow = _useState6[1];
124
+ var _useState7 = useState(-1),
125
+ _useState8 = _slicedToArray(_useState7, 2),
126
+ eventMoveChangeId = _useState8[0],
127
+ setEventMoveChangeId = _useState8[1];
128
+ var _useState9 = useState([]),
129
+ _useState10 = _slicedToArray(_useState9, 2),
130
+ eventMoveOption = _useState10[0],
131
+ setEventMoveOption = _useState10[1];
132
+ var _useState11 = useState(0),
133
+ _useState12 = _slicedToArray(_useState11, 2),
134
+ eventMoveLength = _useState12[0],
135
+ setEventMoveLength = _useState12[1];
136
+ var _useState13 = useState(''),
137
+ _useState14 = _slicedToArray(_useState13, 2),
138
+ eventMoveIds = _useState14[0],
139
+ setEventMoveIds = _useState14[1];
140
+ var eventMove = function eventMove(groupId) {
141
+ var data = eventMoveData(groupId, groupingData, setGroupingData);
142
+ setEventMoveOption(data.groupingOption);
143
+ setEventMoveLength(data.length);
144
+ setEventMoveIds(data.ids);
145
+ if (data.length > 0) {
146
+ setEventMoveShow(groupId);
147
+ setEventMoveChangeId(data.groupingOption[0].value);
148
+ } else {
149
+ setEventMoveShow(undefined);
150
+ }
151
+ };
152
+ var eventMoveChange = function eventMoveChange() {
153
+ request(apis.operateGroupRelations, {
154
+ method: 'post',
155
+ data: {
156
+ appId: getAppID(currentApp),
157
+ platform: 0,
158
+ hasPublicAttrView: true,
159
+ eventIds: eventMoveIds,
160
+ eventGroupId: eventMoveChangeId,
161
+ oldEventGroupId: eventMoveShow
162
+ }
163
+ }).then(function (res) {
164
+ if (res.code == '00') {
165
+ queryList();
166
+ }
167
+ }).finally(function () {
168
+ setEventMoveShow(undefined);
169
+ });
170
+ };
171
+ var moveContent = function moveContent() {
172
+ return /*#__PURE__*/React.createElement("div", {
173
+ className: "move-content"
174
+ }, /*#__PURE__*/React.createElement("div", null, "\u5C06", eventMoveLength, "\u4E2A\u6307\u6807\u79FB\u52A8\u5230\u4EE5\u4E0B\u5206\u7EC4"), /*#__PURE__*/React.createElement("div", null, "\u9009\u62E9\u5206\u7EC4", ' ', /*#__PURE__*/React.createElement(Select, {
175
+ defaultValue: eventMoveOption[0].value,
176
+ style: {
177
+ width: 120
178
+ },
179
+ onChange: function onChange(id) {
180
+ setEventMoveChangeId(id);
181
+ },
182
+ options: eventMoveOption
183
+ })), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Button, {
184
+ type: "text",
185
+ size: "small",
186
+ onClick: function onClick() {
187
+ return setEventMoveShow(false);
188
+ }
189
+ }, "\u53D6\u6D88"), /*#__PURE__*/React.createElement(Button, {
190
+ type: "primary",
191
+ size: "small",
192
+ onClick: eventMoveChange
193
+ }, "\u786E\u5B9A")));
194
+ };
195
+ // 创建分组 & 修改分组名
196
+ var _useState15 = useState(null),
197
+ _useState16 = _slicedToArray(_useState15, 2),
198
+ createOrEditGrpup = _useState16[0],
199
+ setCreateOrEditGrpup = _useState16[1];
200
+ var _useState17 = useState(-1),
201
+ _useState18 = _slicedToArray(_useState17, 2),
202
+ grpupModalSelectGrpupId = _useState18[0],
203
+ setGrpupModalSelectGrpupId = _useState18[1];
204
+ var _useState19 = useState(''),
205
+ _useState20 = _slicedToArray(_useState19, 2),
206
+ grpupNameInput = _useState20[0],
207
+ setGrpupNameInput = _useState20[1];
208
+ var GrpupModalHandle = function GrpupModalHandle() {
209
+ if (grpupNameInput === '') {
210
+ message.error('请填写分组名');
211
+ return;
212
+ }
213
+ var _data = {};
214
+ if (createOrEditGrpup === 'edit') {
215
+ _data.eventGroupId = grpupModalSelectGrpupId;
216
+ }
217
+ request(apis.upsertEventGroup, {
218
+ method: 'post',
219
+ data: _objectSpread(_objectSpread({
220
+ eventGroupName: grpupNameInput,
221
+ appId: getAppID(currentApp)
222
+ }, _data), {}, {
223
+ platform: 0
224
+ })
225
+ }).then(function (res) {
226
+ if ((res === null || res === void 0 ? void 0 : res.code) == '01') {
227
+ message.error('事件组名称已存在');
228
+ }
229
+ if ((res === null || res === void 0 ? void 0 : res.code) == '00') {
230
+ message.success("".concat(createOrEditGrpup === 'create' ? '创建' : '编辑', "'\u6210\u529F'"));
231
+ queryList();
232
+ GrpupModalClose();
233
+ }
234
+ });
235
+ };
236
+ var GrpupModalClose = function GrpupModalClose() {
237
+ setCreateOrEditGrpup(null);
238
+ setGrpupModalSelectGrpupId(-1);
239
+ setGrpupNameInput('');
240
+ };
241
+ return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(Drawer, {
242
+ className: classPrefix,
243
+ width: '60%',
244
+ title: /*#__PURE__*/React.createElement("div", null, "\u4E8B\u4EF6\u5206\u7EC4\u7BA1\u7406", /*#__PURE__*/React.createElement("span", null, "\u7EDF\u4E00\u7BA1\u7406\u57CB\u70B9\u4E8B\u4EF6\u548C\u865A\u62DF\u4E8B\u4EF6\u4E1A\u52A1\u5206\u7EC4\uFF0C\u652F\u6301\u5BF9\u4E8B\u4EF6\u8C03\u6574\u6392\u5E8F\u548C\u9690\u85CF")),
245
+ placement: "right",
246
+ onClose: function onClose() {
247
+ setEventGroupingShow(false);
248
+ setEventMoveShow(undefined);
249
+ },
250
+ destroyOnClose: true,
251
+ open: eventGroupingShow,
252
+ extra: /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(Button, {
253
+ type: "primary",
254
+ size: "small",
255
+ onClick: function onClick() {
256
+ setCreateOrEditGrpup('create');
257
+ }
258
+ }, "\u521B\u5EFA\u5206\u7EC4"), /*#__PURE__*/React.createElement(IconFont, {
259
+ type: "qingchu",
260
+ onClick: function onClick() {
261
+ setEventGroupingShow(false);
262
+ setEventMoveShow(undefined);
263
+ }
264
+ }))
265
+ }, /*#__PURE__*/React.createElement(DragDropContext, {
266
+ onDragEnd: onDragEnd
267
+ }, groupingData.map(function (item, index) {
268
+ return /*#__PURE__*/React.createElement(Droppable, {
269
+ droppableId: index.toString(),
270
+ key: index,
271
+ type: "person",
272
+ isDragDisabled: false,
273
+ direction: "vertical"
274
+ }, function (provided) {
275
+ return /*#__PURE__*/React.createElement("div", _objectSpread({
276
+ key: index,
277
+ ref: provided.innerRef
278
+ }, provided.droppableProps), /*#__PURE__*/React.createElement(Draggable, {
279
+ isDragDisabled: isDragDisabled,
280
+ key: item.groupId.toString(),
281
+ draggableId: item.groupId.toString(),
282
+ index: index
283
+ }, function (provided) {
284
+ return /*#__PURE__*/React.createElement("div", _objectSpread({
285
+ ref: provided.innerRef
286
+ }, provided.draggableProps), /*#__PURE__*/React.createElement("div", {
287
+ className: "".concat(classPrefix, "-box")
288
+ }, /*#__PURE__*/React.createElement("div", {
289
+ className: "".concat(classPrefix, "-box-header")
290
+ }, /*#__PURE__*/React.createElement("div", {
291
+ className: "operate-left"
292
+ }, /*#__PURE__*/React.createElement("div", {
293
+ id: "create-or-edit-grpup-modal"
294
+ }, item.open && /*#__PURE__*/React.createElement(IconFont, {
295
+ type: "fangxiangxia",
296
+ onClick: function onClick() {
297
+ return openChange(item.groupId);
298
+ }
299
+ }), !item.open && /*#__PURE__*/React.createElement(IconFont, {
300
+ type: "fangxiangshang",
301
+ onClick: function onClick() {
302
+ return openChange(item.groupId);
303
+ }
304
+ }), /*#__PURE__*/React.createElement("div", null, item.groupName ? item.groupName : '未分组'), /*#__PURE__*/React.createElement(IconFont, {
305
+ type: "zhongmingming",
306
+ onClick: function onClick() {
307
+ setCreateOrEditGrpup('edit');
308
+ setGrpupNameInput(item.groupName ? item.groupName : '未分组');
309
+ setGrpupModalSelectGrpupId(item.groupId);
310
+ }
311
+ })), /*#__PURE__*/React.createElement("div", null, item.eventList.length, "\u4E2A\u6307\u6807")), /*#__PURE__*/React.createElement("div", {
312
+ className: "operate-right"
313
+ }, item.eventList.length > 0 && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(Checkbox, {
314
+ checked: item.checked,
315
+ onChange: function onChange() {
316
+ return onChangeAll(item.groupId);
317
+ }
318
+ }, "\u5168\u9009"), /*#__PURE__*/React.createElement(Popover, {
319
+ overlayClassName: "move-popover ".concat(eventMoveLength ? 'show' : 'hidden'),
320
+ placement: "bottomRight",
321
+ open: eventMoveShow === item.groupId,
322
+ title: null,
323
+ content: moveContent
324
+ }, /*#__PURE__*/React.createElement("span", {
325
+ onClick: function onClick() {
326
+ return eventMove(item.groupId);
327
+ }
328
+ }, "\u79FB\u52A8")), /*#__PURE__*/React.createElement("span", {
329
+ onClick: function onClick() {
330
+ return eventShowOrHidden(0, item.groupId);
331
+ }
332
+ }, "\u663E\u793A"), /*#__PURE__*/React.createElement("span", {
333
+ onClick: function onClick() {
334
+ return eventShowOrHidden(1, item.groupId);
335
+ }
336
+ }, "\u9690\u85CF")), /*#__PURE__*/React.createElement("span", {
337
+ onClick: function onClick() {
338
+ return groupDelete(item.groupId);
339
+ }
340
+ }, "\u5220\u9664"), /*#__PURE__*/React.createElement(IconFont, _objectSpread(_objectSpread({}, provided.dragHandleProps), {}, {
341
+ type: "tuozhuai1"
342
+ })))), /*#__PURE__*/React.createElement("div", {
343
+ className: "".concat(classPrefix, "-box-content ").concat(item.open ? 'open' : 'close')
344
+ }, /*#__PURE__*/React.createElement(SortableComponnet, {
345
+ componnetData: item.eventList,
346
+ componnetIndex: index,
347
+ groupId: item.groupId,
348
+ groupingData: groupingData,
349
+ setGroupingData: setGroupingData
350
+ }))));
351
+ }));
352
+ });
353
+ }))), /*#__PURE__*/React.createElement(Modal, {
354
+ wrapClassName: "create-or-edit-grpup-modal",
355
+ title: "".concat(createOrEditGrpup === 'create' ? '创建分组' : '修改分组名'),
356
+ bodyStyle: {
357
+ padding: '0 24px 24px 24px'
358
+ },
359
+ destroyOnClose: true,
360
+ open: createOrEditGrpup === null ? false : true,
361
+ getContainer: function getContainer() {
362
+ return document.getElementById("create-or-edit-grpup-modal");
363
+ },
364
+ onOk: GrpupModalHandle,
365
+ onCancel: GrpupModalClose
366
+ }, /*#__PURE__*/React.createElement(Input, {
367
+ placeholder: "\u8BF7\u8F93\u5165\u5206\u7EC4\u540D",
368
+ value: grpupNameInput,
369
+ maxLength: 20,
370
+ onChange: function onChange(e) {
371
+ return setGrpupNameInput(e.currentTarget.value);
372
+ }
373
+ })));
374
+ };
375
+ export default EventGroupingDrawer;
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const SelectAttributes: React.FC<any>;
3
+ export default SelectAttributes;
@@ -0,0 +1,207 @@
1
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
+ 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."); }
3
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
4
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
5
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
6
+ 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."); }
7
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
9
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
10
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
11
+ import { IconFont, BizSearchInput } from '@zgfe/business-lib';
12
+ import { Select, Modal, Dropdown, Checkbox, message } from 'antd';
13
+ import { useEffect } from 'react';
14
+ import React, { useState } from 'react';
15
+ var SelectAttributes = function SelectAttributes(props) {
16
+ var classPrefix = 'select-attributes';
17
+ var selectAttributesShow = props.selectAttributesShow,
18
+ setSelectAttributesShow = props.setSelectAttributesShow,
19
+ selectAttributesData = props.selectAttributesData,
20
+ selectAttributesHandle = props.selectAttributesHandle;
21
+ // 下拉菜单是否显示
22
+ var _useState = useState(false),
23
+ _useState2 = _slicedToArray(_useState, 2),
24
+ visible = _useState2[0],
25
+ setVisible = _useState2[1];
26
+ // select选项
27
+ var _useState3 = useState([]),
28
+ _useState4 = _slicedToArray(_useState3, 2),
29
+ options = _useState4[0],
30
+ setOptions = _useState4[1];
31
+ // select选中项
32
+ var _useState5 = useState([]),
33
+ _useState6 = _slicedToArray(_useState5, 2),
34
+ selectValue = _useState6[0],
35
+ setSelectValue = _useState6[1];
36
+ // 当前选中的事件id
37
+ var _useState7 = useState(-999),
38
+ _useState8 = _slicedToArray(_useState7, 2),
39
+ selectEventId = _useState8[0],
40
+ setSelectEventId = _useState8[1];
41
+ // 搜索属性名称
42
+ var _useState9 = useState(''),
43
+ _useState10 = _slicedToArray(_useState9, 2),
44
+ searchValue = _useState10[0],
45
+ setSearchValue = _useState10[1];
46
+ // 属性展示列表(属性名称,搜索过滤使用)
47
+ var _useState11 = useState([]),
48
+ _useState12 = _slicedToArray(_useState11, 2),
49
+ attrShowList = _useState12[0],
50
+ setAttrShowList = _useState12[1];
51
+ // 属性展示列表 - 原数据(属性名称,搜索过滤使用)
52
+ var _useState13 = useState([]),
53
+ _useState14 = _slicedToArray(_useState13, 2),
54
+ attrShowListOriginalData = _useState14[0],
55
+ setAttrShowListOriginalData = _useState14[1];
56
+ useEffect(function () {
57
+ if (!selectAttributesShow) return;
58
+ var _options = [];
59
+ var _selectValue = [];
60
+ var _attrShowList = [];
61
+ selectAttributesData[0].attrList.map(function (item) {
62
+ _options.push({
63
+ label: item.label,
64
+ value: item.label,
65
+ ofEventId: item.ofEventId
66
+ });
67
+ _attrShowList.push(item.label);
68
+ if (_selectValue.length < 100) {
69
+ _selectValue.push(item.label);
70
+ }
71
+ });
72
+ setOptions(_options);
73
+ setSelectValue(_selectValue);
74
+ setAttrShowList(_attrShowList);
75
+ setAttrShowListOriginalData(_attrShowList);
76
+ }, [selectAttributesData, selectAttributesShow]);
77
+ // 下拉菜单显示隐藏改变
78
+ var onVisibleChange = function onVisibleChange(show) {
79
+ setVisible(show);
80
+ setSearchValue('');
81
+ };
82
+ // 保存
83
+ var handleOk = function handleOk() {
84
+ if (selectValue.length > 100) {
85
+ message.error('最多可选择100个属性');
86
+ } else {
87
+ selectAttributesHandle(selectValue);
88
+ setSelectAttributesShow(false);
89
+ }
90
+ };
91
+ // 取消
92
+ var handleCancel = function handleCancel() {
93
+ setSelectAttributesShow(false);
94
+ };
95
+ // select选中的数据变化
96
+ var handleSelectChange = function handleSelectChange(data) {
97
+ setSelectValue(data);
98
+ };
99
+ // 左侧事件id变化
100
+ var onSelectEventIdChange = function onSelectEventIdChange(id) {
101
+ setSelectEventId(id);
102
+ };
103
+ // 右侧事件属性变化
104
+ var onSelectAttributesChange = function onSelectAttributesChange(label) {
105
+ if (selectValue.indexOf(label) !== -1) {
106
+ setSelectValue(selectValue.filter(function (_label) {
107
+ return _label !== label;
108
+ }));
109
+ } else {
110
+ setSelectValue([].concat(_toConsumableArray(selectValue), [label]));
111
+ }
112
+ };
113
+ useEffect(function () {
114
+ if (searchValue) {
115
+ var _attrShowList = [];
116
+ attrShowListOriginalData.map(function (name) {
117
+ if (name.indexOf(searchValue) !== -1) {
118
+ _attrShowList.push(name);
119
+ }
120
+ });
121
+ setAttrShowList(_attrShowList);
122
+ } else {
123
+ setAttrShowList(attrShowListOriginalData);
124
+ }
125
+ }, [searchValue]);
126
+ // 渲染属性列表
127
+ var selectAttributesRender = function selectAttributesRender() {
128
+ return selectAttributesData.map(function (item, index) {
129
+ if (item.id === selectEventId) {
130
+ return item.attrList.map(function (_item) {
131
+ return attrShowList.indexOf(_item.label) !== -1 ? /*#__PURE__*/React.createElement("div", {
132
+ className: "".concat(selectValue.indexOf(_item.id) !== -1 ? 'active' : ''),
133
+ key: _item.id
134
+ }, /*#__PURE__*/React.createElement(Checkbox, {
135
+ checked: selectValue.indexOf(_item.label) !== -1,
136
+ onChange: function onChange() {
137
+ return onSelectAttributesChange(_item.label);
138
+ }
139
+ }, _item.label)) : null;
140
+ });
141
+ }
142
+ });
143
+ };
144
+ return /*#__PURE__*/React.createElement(Modal, {
145
+ title: /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(IconFont, {
146
+ type: "tishi1"
147
+ }), "\u63D0\u793A", /*#__PURE__*/React.createElement(IconFont, {
148
+ type: "qingchu"
149
+ })),
150
+ open: selectAttributesShow,
151
+ onOk: handleOk,
152
+ onCancel: handleCancel
153
+ }, /*#__PURE__*/React.createElement(Dropdown, {
154
+ dropdownRender: function dropdownRender() {
155
+ return /*#__PURE__*/React.createElement("div", {
156
+ className: "".concat(classPrefix, "-box")
157
+ }, /*#__PURE__*/React.createElement("div", {
158
+ className: "".concat(classPrefix, "-box-left")
159
+ }, selectAttributesData.map(function (item) {
160
+ return /*#__PURE__*/React.createElement("div", {
161
+ key: item.id,
162
+ className: "".concat(selectEventId === item.id ? 'active' : ''),
163
+ onClick: function onClick() {
164
+ return onSelectEventIdChange(item.id);
165
+ }
166
+ }, /*#__PURE__*/React.createElement("span", null, item.name), /*#__PURE__*/React.createElement("span", null, item.attrList.length));
167
+ })), /*#__PURE__*/React.createElement("div", {
168
+ className: "".concat(classPrefix, "-box-right")
169
+ }, /*#__PURE__*/React.createElement(BizSearchInput, {
170
+ className: "".concat(classPrefix, "-search"),
171
+ onChange: function onChange(val) {
172
+ return setSearchValue(val);
173
+ },
174
+ placeholder: "\u641C\u7D22\u5C5E\u6027"
175
+ }), /*#__PURE__*/React.createElement("div", null, selectAttributesRender())));
176
+ },
177
+ trigger: ['click'],
178
+ overlayStyle: {
179
+ minWidth: 0,
180
+ paddingLeft: 8
181
+ },
182
+ open: visible,
183
+ onOpenChange: onVisibleChange,
184
+ getPopupContainer: props.popupContainer ? function () {
185
+ return document.getElementById("".concat(classPrefix, "-select"));
186
+ } : undefined,
187
+ destroyPopupOnHide: props.defaultSelectAble
188
+ }, /*#__PURE__*/React.createElement("div", {
189
+ className: "".concat(classPrefix, "-select"),
190
+ id: "".concat(classPrefix, "-select")
191
+ }, /*#__PURE__*/React.createElement(Select, {
192
+ mode: "tags",
193
+ maxTagCount: 3,
194
+ maxTagTextLength: 5,
195
+ style: {
196
+ width: '100%'
197
+ },
198
+ placeholder: "Please select",
199
+ getPopupContainer: function getPopupContainer() {
200
+ return document.getElementById("".concat(classPrefix, "-select"));
201
+ },
202
+ value: selectValue,
203
+ onChange: handleSelectChange,
204
+ options: options
205
+ }))));
206
+ };
207
+ export default SelectAttributes;
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const SortableComponnet: React.FC<any>;
3
+ export default SortableComponnet;