@zgfe/modules-dm 1.0.34 → 1.0.36

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/es/components/demo.js +2 -1
  2. package/es/constants/api.d.ts +10 -0
  3. package/es/constants/api.js +25 -12
  4. package/es/modules/dataCollection/collectionAttributeList.js +32 -20
  5. package/es/modules/dataCollection/collectionEventList.js +62 -87
  6. package/es/modules/dataCollection/components/createVirtualDrawer.d.ts +4 -0
  7. package/es/modules/dataCollection/components/createVirtualDrawer.js +280 -0
  8. package/es/modules/dataCollection/components/eventFilter/index.d.ts +5 -0
  9. package/es/modules/dataCollection/components/eventFilter/index.js +154 -0
  10. package/es/modules/dataCollection/components/eventFilter/styles/index.less +72 -0
  11. package/es/modules/dataCollection/components/eventFilter/types.d.ts +52 -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 +452 -0
  15. package/es/modules/dataCollection/components/eventItem.d.ts +3 -0
  16. package/es/modules/dataCollection/components/eventItem.js +53 -0
  17. package/es/modules/dataCollection/components/selectAttributes.d.ts +3 -0
  18. package/es/modules/dataCollection/components/selectAttributes.js +219 -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} +162 -143
  21. package/es/modules/dataCollection/components/virtualTablePlus.d.ts +5 -0
  22. package/es/modules/dataCollection/components/virtualTablePlus.js +400 -0
  23. package/es/modules/dataCollection/index.js +7 -6
  24. package/es/modules/dataCollection/styles/index.less +535 -20
  25. package/es/modules/dataCollection/types.d.ts +78 -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 +343 -0
  29. package/es/modules/dataManage/demo/index.js +16 -12
  30. package/es/modules/dataPlan/addEventOrUser.js +1 -2
  31. package/es/modules/dataPlan/addPlan.js +3 -12
  32. package/es/modules/dataPlan/eventList.js +0 -1
  33. package/es/modules/dataPlan/index.js +8 -9
  34. package/es/modules/dataPlan/tablePlus.js +0 -1
  35. package/es/modules/dataPlan/userAttributeList.js +0 -1
  36. package/es/utils/index.d.ts +49 -0
  37. package/es/utils/index.js +315 -0
  38. package/package.json +6 -4
  39. package/es/modules/dataCollection/demo/index.d.ts +0 -2
  40. package/es/modules/dataCollection/demo/index.js +0 -7
  41. package/es/modules/dataPlan/demo/index.d.ts +0 -2
  42. package/es/modules/dataPlan/demo/index.js +0 -6
@@ -0,0 +1,280 @@
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, Button, Select, Drawer, Form, message, Modal } from 'antd';
15
+ import { Fragment } from 'react';
16
+ import moment from 'moment';
17
+ var TextArea = Input.TextArea;
18
+ import request from '../../../utils/ajax';
19
+ import apis from '../../../constants/api';
20
+ import React, { useContext, useState } from 'react';
21
+ import { eventJsonHandle, getDelectAttributesData, getSubmitHandleData, getAppID, getVirtualContentChange } from '../../../utils';
22
+ import EventFilter from './eventFilter';
23
+ import SelectAttributes from './selectAttributes';
24
+ import _ from 'lodash';
25
+ var CreateVirtualDrawer = function CreateVirtualDrawer(props) {
26
+ var _formSubmitData$event;
27
+ var classPrefix = 'create-virtual-drawer';
28
+ var createVirtualShow = props.createVirtualShow,
29
+ setCreateVirtualShow = props.setCreateVirtualShow,
30
+ editVirtualEventData = props.editVirtualEventData,
31
+ virtualDrawerType = props.virtualDrawerType,
32
+ refresh = props.refresh,
33
+ groupOptions = props.groupOptions;
34
+ var _useState = useState(true),
35
+ _useState2 = _slicedToArray(_useState, 2),
36
+ formSubmit = _useState2[0],
37
+ setFormSubmit = _useState2[1];
38
+ var _useState3 = useState(),
39
+ _useState4 = _slicedToArray(_useState3, 2),
40
+ formSubmitData = _useState4[0],
41
+ setFormSubmitData = _useState4[1];
42
+ var attrMaxLength = 100;
43
+ var _useContext = useContext(BizGlobalDataContext),
44
+ currentApp = _useContext.currentApp,
45
+ eventGroupList = _useContext.eventGroupList;
46
+ var _useState5 = useState(false),
47
+ _useState6 = _slicedToArray(_useState5, 2),
48
+ selectAttributesShow = _useState6[0],
49
+ setSelectAttributesShow = _useState6[1];
50
+ var _useState7 = useState({}),
51
+ _useState8 = _slicedToArray(_useState7, 2),
52
+ selectAttributesData = _useState8[0],
53
+ setSelectAttributesData = _useState8[1];
54
+ var _useState9 = useState({}),
55
+ _useState10 = _slicedToArray(_useState9, 2),
56
+ submitData = _useState10[0],
57
+ setSubmitData = _useState10[1];
58
+ var _useState11 = useState([]),
59
+ _useState12 = _slicedToArray(_useState11, 2),
60
+ selectList = _useState12[0],
61
+ setSelectList = _useState12[1];
62
+ var onValuesChange = function onValuesChange(_, allData) {
63
+ var _selectList = [];
64
+ allData.eventJson.map(function (item) {
65
+ if (item === null || item === void 0 ? void 0 : item.eventId) _selectList.push(item.eventId);
66
+ });
67
+ setSelectList(_selectList);
68
+ setFormSubmitData(allData);
69
+ setFormSubmit(eventJsonHandle(allData));
70
+ };
71
+ // 保存
72
+ var onFinish = function onFinish(data) {
73
+ var _data = getDelectAttributesData(_.cloneDeep(data.eventJson), eventGroupList);
74
+ if (_data[0] && _data[0].attrList && _data[0].attrList.length > attrMaxLength) {
75
+ setSubmitData(data);
76
+ setSelectAttributesData(_data);
77
+ setSelectAttributesShow(true);
78
+ } else {
79
+ onSubmitHandle(data);
80
+ }
81
+ };
82
+ // 属性超过100个后的选择回调
83
+ var selectAttributesHandle = function selectAttributesHandle(data) {
84
+ onSubmitHandle(getSubmitHandleData(data, submitData, selectAttributesData));
85
+ };
86
+ // 表单提交
87
+ var onSubmitHandle = function onSubmitHandle(data) {
88
+ if (virtualDrawerType === 'edit') {
89
+ request(apis.updateVirtualEvent, {
90
+ method: 'post',
91
+ data: _objectSpread({
92
+ appId: getAppID(currentApp),
93
+ platform: currentApp === null || currentApp === void 0 ? void 0 : currentApp.platform
94
+ }, data)
95
+ }).then(function (res) {
96
+ if ((res === null || res === void 0 ? void 0 : res.code) === '100000' && res.data === 1) {
97
+ message.success('编辑成功');
98
+ refresh();
99
+ setCreateVirtualShow(false);
100
+ } else {
101
+ message.error(res === null || res === void 0 ? void 0 : res.msg);
102
+ }
103
+ });
104
+ } else {
105
+ request(apis.addVirtualEvent, {
106
+ method: 'post',
107
+ data: _objectSpread({
108
+ appId: getAppID(currentApp),
109
+ platform: currentApp === null || currentApp === void 0 ? void 0 : currentApp.platform
110
+ }, data)
111
+ }).then(function (res) {
112
+ if ((res === null || res === void 0 ? void 0 : res.code) === '100000' && res.data === 1) {
113
+ message.success('创建成功');
114
+ refresh();
115
+ setCreateVirtualShow(false);
116
+ } else {
117
+ message.error(res === null || res === void 0 ? void 0 : res.msg);
118
+ }
119
+ });
120
+ }
121
+ };
122
+ var onClose = function onClose() {
123
+ if (virtualDrawerType === "edit") {
124
+ if (formSubmit && getVirtualContentChange(_.cloneDeep(editVirtualEventData), _.cloneDeep(formSubmitData))) {
125
+ Modal.confirm({
126
+ centered: true,
127
+ title: '内容发生了修改,请确认是否保存修改内容',
128
+ okText: '确认',
129
+ cancelText: '取消',
130
+ maskClosable: false,
131
+ onOk: function onOk() {
132
+ onFinish(formSubmitData);
133
+ },
134
+ onCancel: function onCancel() {
135
+ setCreateVirtualShow(false);
136
+ }
137
+ });
138
+ } else {
139
+ setCreateVirtualShow(false);
140
+ }
141
+ } else {
142
+ setCreateVirtualShow(false);
143
+ }
144
+ };
145
+ var editGroupOptions = function editGroupOptions(eventGroupId) {
146
+ var text = '';
147
+ groupOptions.map(function (item) {
148
+ if (item.value == eventGroupId) {
149
+ text = item.label;
150
+ }
151
+ });
152
+ return text;
153
+ };
154
+ return /*#__PURE__*/React.createElement(Drawer, {
155
+ className: classPrefix,
156
+ width: 700,
157
+ title: "".concat(virtualDrawerType === 'edit' ? '编辑' : virtualDrawerType === 'see' ? '查看' : '创建', "\u865A\u62DF\u4E8B\u4EF6"),
158
+ placement: "right",
159
+ destroyOnClose: true,
160
+ onClose: onClose,
161
+ open: createVirtualShow,
162
+ extra: /*#__PURE__*/React.createElement(IconFont, {
163
+ type: "qingchu",
164
+ onClick: onClose
165
+ })
166
+ }, /*#__PURE__*/React.createElement(Fragment, null, virtualDrawerType === 'see' && /*#__PURE__*/React.createElement("div", {
167
+ className: "".concat(classPrefix, "-see-box")
168
+ }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", null, "\u540D\u79F0"), editVirtualEventData.eventName), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", null, "\u522B\u540D"), editVirtualEventData.aliasName), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", null, "\u5206\u7EC4"), editGroupOptions((editVirtualEventData === null || editVirtualEventData === void 0 ? void 0 : editVirtualEventData.groupId) === null ? -1 : editVirtualEventData === null || editVirtualEventData === void 0 ? void 0 : editVirtualEventData.groupId)), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", null, "\u5907\u6CE8"), editVirtualEventData.description), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", null, "\u521B\u5EFA\u4EBA"), editVirtualEventData.createUser), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", null, "\u521B\u5EFA\u65F6\u95F4"), moment(editVirtualEventData.insertTime).format('YYYY-MM-DD HH:mm:ss')), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("span", null, "\u66F4\u65B0\u65F6\u95F4"), moment(editVirtualEventData.updateTime).format('YYYY-MM-DD HH:mm:ss'))), /*#__PURE__*/React.createElement(Form, {
169
+ name: "basic",
170
+ labelCol: {
171
+ span: 2
172
+ },
173
+ wrapperCol: {
174
+ span: 16
175
+ },
176
+ initialValues: _objectSpread(_objectSpread({}, editVirtualEventData), {}, {
177
+ desc: editVirtualEventData === null || editVirtualEventData === void 0 ? void 0 : editVirtualEventData.description,
178
+ eventGroupId: (editVirtualEventData === null || editVirtualEventData === void 0 ? void 0 : editVirtualEventData.groupId) === null || (editVirtualEventData === null || editVirtualEventData === void 0 ? void 0 : editVirtualEventData.groupId) === undefined ? -1 : editVirtualEventData === null || editVirtualEventData === void 0 ? void 0 : editVirtualEventData.groupId
179
+ }),
180
+ onFinish: onFinish,
181
+ onValuesChange: onValuesChange,
182
+ autoComplete: "off"
183
+ }, virtualDrawerType !== 'see' && /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(Form.Item, {
184
+ label: "\u540D\u79F0",
185
+ name: "eventName",
186
+ rules: [{
187
+ required: true,
188
+ message: '请输入虚拟事件名称'
189
+ }, {
190
+ pattern: new RegExp(/^[^\u4e00-\u9fa5]+$/, ''),
191
+ message: '仅能输入英文、符号、数字'
192
+ }]
193
+ }, /*#__PURE__*/React.createElement(Input, {
194
+ placeholder: "\u8BF7\u8F93\u5165\u865A\u62DF\u4E8B\u4EF6\u540D\u79F0",
195
+ maxLength: 20,
196
+ disabled: virtualDrawerType === 'edit'
197
+ })), /*#__PURE__*/React.createElement(Form.Item, {
198
+ label: "\u522B\u540D",
199
+ name: "aliasName",
200
+ rules: [{
201
+ required: true,
202
+ message: '请输入虚拟事件别名'
203
+ }]
204
+ }, /*#__PURE__*/React.createElement(Input, {
205
+ placeholder: "\u8BF7\u8F93\u5165\u865A\u62DF\u4E8B\u4EF6\u522B\u540D",
206
+ maxLength: 20
207
+ })), /*#__PURE__*/React.createElement(Form.Item, {
208
+ label: "\u5206\u7EC4",
209
+ name: "eventGroupId"
210
+ }, /*#__PURE__*/React.createElement(Select, {
211
+ defaultValue: -1,
212
+ options: groupOptions.filter(function (item) {
213
+ return item.value !== -999;
214
+ }),
215
+ suffixIcon: /*#__PURE__*/React.createElement(IconFont, {
216
+ type: "xiangxia",
217
+ style: {
218
+ color: '#5f6085'
219
+ }
220
+ })
221
+ })), /*#__PURE__*/React.createElement(Form.Item, {
222
+ label: "\u5907\u6CE8",
223
+ name: "desc",
224
+ className: "".concat(classPrefix, "-desc")
225
+ }, /*#__PURE__*/React.createElement(TextArea, {
226
+ rows: 4,
227
+ placeholder: "\u8BF7\u8F93\u5165\u5907\u6CE8",
228
+ maxLength: 200
229
+ }))), /*#__PURE__*/React.createElement("div", {
230
+ className: "".concat(classPrefix, "-eventDataBox ").concat(virtualDrawerType === 'see' ? 'see' : '')
231
+ }, /*#__PURE__*/React.createElement("div", null, "\u7EC4\u5408\u865A\u62DF\u4E8B\u4EF6"), /*#__PURE__*/React.createElement("div", null, "\u5F53\u4EE5\u4E0B\u4E8B\u4EF6\u4E2D\u4EFB\u610F\u4E00\u4E2A\u88AB\u89E6\u53D1\u65F6\uFF0C\u89C6\u4F5C\u8BE5\u865A\u62DF\u4E8B\u4EF6\u88AB\u89E6\u53D1\u3002"), /*#__PURE__*/React.createElement("div", {
232
+ className: "".concat(classPrefix, "-formList")
233
+ }, /*#__PURE__*/React.createElement(Form.List, {
234
+ name: "eventJson"
235
+ }, function (fields, _ref, index) {
236
+ var add = _ref.add,
237
+ remove = _ref.remove;
238
+ return /*#__PURE__*/React.createElement(Form.Item, {
239
+ key: "item-".concat(index)
240
+ }, fields.map(function (field, _index) {
241
+ return /*#__PURE__*/React.createElement(Form.Item, _objectSpread(_objectSpread({}, field), {}, {
242
+ key: _index,
243
+ className: "".concat(classPrefix, "-form-item")
244
+ }), /*#__PURE__*/React.createElement(EventFilter, {
245
+ remove: remove,
246
+ index: _index,
247
+ virtualDrawerType: virtualDrawerType,
248
+ selectList: selectList
249
+ }));
250
+ }), fields.length < 10 && virtualDrawerType !== 'see' && /*#__PURE__*/React.createElement("div", {
251
+ className: "".concat(classPrefix, "-add")
252
+ }, /*#__PURE__*/React.createElement(IconFont, {
253
+ className: "".concat(classPrefix, "-add-icon"),
254
+ type: "tianjia1",
255
+ onClick: function onClick() {
256
+ return add();
257
+ }
258
+ }), /*#__PURE__*/React.createElement("span", {
259
+ onClick: function onClick() {
260
+ return add();
261
+ }
262
+ }, "\u6DFB\u52A0\u4E8B\u4EF6")));
263
+ }))), virtualDrawerType !== 'see' && /*#__PURE__*/React.createElement("div", {
264
+ className: "".concat(classPrefix, "-formSubmit")
265
+ }, /*#__PURE__*/React.createElement(Button, {
266
+ type: "default",
267
+ onClick: onClose
268
+ }, "\u53D6\u6D88"), /*#__PURE__*/React.createElement(Button, {
269
+ type: "primary",
270
+ htmlType: "submit",
271
+ disabled: !formSubmit || virtualDrawerType === 'edit' && (editVirtualEventData === null || editVirtualEventData === void 0 ? void 0 : editVirtualEventData.isStop) === 1 && (formSubmitData === undefined || formSubmitData && ((_formSubmitData$event = formSubmitData.eventJson) === null || _formSubmitData$event === void 0 ? void 0 : _formSubmitData$event.length) <= 0)
272
+ }, "\u4FDD\u5B58"))), /*#__PURE__*/React.createElement(SelectAttributes, {
273
+ selectAttributesShow: selectAttributesShow,
274
+ setSelectAttributesShow: setSelectAttributesShow,
275
+ selectAttributesData: selectAttributesData,
276
+ selectAttributesHandle: selectAttributesHandle,
277
+ attrMaxLength: attrMaxLength
278
+ })));
279
+ };
280
+ export default CreateVirtualDrawer;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import './styles/index.less';
3
+ import { EventFilterProps } from './types';
4
+ declare const EventFilter: React.FC<EventFilterProps>;
5
+ export default EventFilter;
@@ -0,0 +1,154 @@
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 { Tooltip, message } from 'antd';
14
+ import React, { useEffect, useRef, useState } from 'react';
15
+ import { BizEventSelector, BizAttrConditionGroup, IconFont } from '@zgfe/business-lib';
16
+ import './styles/index.less';
17
+ var classPrefix = 'virtual-event-eventfilter-box';
18
+ var EventFilter = function EventFilter(props) {
19
+ var remove = props.remove,
20
+ index = props.index,
21
+ virtualDrawerType = props.virtualDrawerType,
22
+ selectList = props.selectList;
23
+ // 筛选条件个数
24
+ var _useState = useState(props.value && props.value.filters && props.value.filters.conditions ? props.value.filters.conditions.length : 0),
25
+ _useState2 = _slicedToArray(_useState, 2),
26
+ count = _useState2[0],
27
+ setCount = _useState2[1];
28
+ // 是否点击添加
29
+ var _useState3 = useState(false),
30
+ _useState4 = _slicedToArray(_useState3, 2),
31
+ isAdd = _useState4[0],
32
+ setIsAdd = _useState4[1];
33
+ // 筛选条件组ref
34
+ var conditionRef = useRef(null);
35
+ // 当前选中的事件
36
+ var _useState5 = useState(),
37
+ _useState6 = _slicedToArray(_useState5, 2),
38
+ event = _useState6[0],
39
+ setEvent = _useState6[1];
40
+ // 筛选属性组
41
+ var _useState7 = useState(),
42
+ _useState8 = _slicedToArray(_useState7, 2),
43
+ filter = _useState8[0],
44
+ setFilter = _useState8[1];
45
+ // 初始化
46
+ useEffect(function () {
47
+ var _data = props.value;
48
+ if (_data) {
49
+ setEvent(props.value);
50
+ if (_data.filters) {
51
+ setFilter(_data.filters);
52
+ setCount(_data.filters.conditions.length);
53
+ }
54
+ }
55
+ }, []);
56
+ // 添加筛选
57
+ var onAdd = function onAdd() {
58
+ // 最多可添加5条属性筛选
59
+ if (count >= 5) {
60
+ message.error('最多可添加5条属性筛选');
61
+ return;
62
+ }
63
+ if (selectList.length <= 0) {
64
+ message.error('请选择事件');
65
+ return;
66
+ }
67
+ setIsAdd(true);
68
+ setTimeout(function () {
69
+ conditionRef.current.add();
70
+ }, 0);
71
+ };
72
+ // 筛选条件改变
73
+ var onChangeFilters = function onChangeFilters(data) {
74
+ setFilter(data);
75
+ };
76
+ useEffect(function () {
77
+ // countChange(count);
78
+ if (count <= 0) setFilter(undefined);
79
+ }, [count, filter]);
80
+ var onChangeEvent = function onChangeEvent(event) {
81
+ if (event && event.event) {
82
+ setEvent({
83
+ alias: event.event.alias,
84
+ eventId: event.event.id,
85
+ eventName: event.event.name,
86
+ owner: event.event.owner
87
+ });
88
+ }
89
+ setFilter(undefined);
90
+ setIsAdd(false);
91
+ setCount(0);
92
+ };
93
+ // 变更searchData
94
+ useEffect(function () {
95
+ var _event = _objectSpread({}, event);
96
+ if (filter) {
97
+ _event.filters = filter;
98
+ }
99
+ _event.count = count;
100
+ props.onChange && props.onChange(_event);
101
+ }, [filter, event, count]);
102
+ return /*#__PURE__*/React.createElement("div", {
103
+ className: classPrefix
104
+ }, /*#__PURE__*/React.createElement("div", {
105
+ className: "".concat(classPrefix, "-eventSelector ").concat(count > 0 ? 'hasattr' : '')
106
+ }, /*#__PURE__*/React.createElement("div", null, index + 1), /*#__PURE__*/React.createElement(BizEventSelector, {
107
+ showAllEvent: false,
108
+ showBuiltInTarget: false,
109
+ popupContainer: false,
110
+ defaultSelectAble: false,
111
+ disableVirtualEventShow: true,
112
+ selectList: selectList,
113
+ value: event && event.eventId ? {
114
+ event: {
115
+ id: event.eventId,
116
+ name: event.eventName
117
+ }
118
+ } : {},
119
+ onChange: onChangeEvent,
120
+ placeholder: "\u8BF7\u9009\u62E9\u4E8B\u4EF6"
121
+ }), /*#__PURE__*/React.createElement(Tooltip, {
122
+ placement: "top",
123
+ title: '添加属性筛选'
124
+ }, /*#__PURE__*/React.createElement(IconFont, {
125
+ className: "".concat(count < 5 && selectList.length > 0 ? '' : 'disable'),
126
+ type: "shaixuan",
127
+ onClick: function onClick() {
128
+ return onAdd();
129
+ }
130
+ }))), (filter || isAdd) && /*#__PURE__*/React.createElement("div", {
131
+ className: "".concat(count > 0 ? 'attr-box-show' : '', " top")
132
+ }, /*#__PURE__*/React.createElement(BizAttrConditionGroup, {
133
+ ref: conditionRef,
134
+ value: filter,
135
+ onlyAnd: true,
136
+ enableEventProp: true,
137
+ enableUserProp: false,
138
+ enableEnvProp: false,
139
+ enableDelete: true,
140
+ eventIdList: (event === null || event === void 0 ? void 0 : event.eventId) ? [event === null || event === void 0 ? void 0 : event.eventId] : [],
141
+ onChange: onChangeFilters,
142
+ onConditionsCount: setCount
143
+ })), /*#__PURE__*/React.createElement("div", {
144
+ className: "delete-box",
145
+ onClick: function onClick() {
146
+ return remove(index);
147
+ }
148
+ }, /*#__PURE__*/React.createElement(IconFont, {
149
+ type: "shanchu"
150
+ })), virtualDrawerType === 'see' && /*#__PURE__*/React.createElement("div", {
151
+ className: "not-clickable-mask"
152
+ }));
153
+ };
154
+ export default EventFilter;
@@ -0,0 +1,72 @@
1
+ .virtual-event-eventfilter-box {
2
+ position: relative;
3
+ width: 100%;
4
+ padding: 20px;
5
+ overflow: hidden;
6
+ border: 1px solid #ecedf0;
7
+ border-radius: 8px;
8
+ .not-clickable-mask {
9
+ position: absolute;
10
+ top: 0;
11
+ left: 0;
12
+ width: 100%;
13
+ height: 100%;
14
+ cursor: not-allowed;
15
+ }
16
+ &-eventSelector {
17
+ display: flex;
18
+ > :nth-child(1) {
19
+ width: 20px;
20
+ height: 20px;
21
+ margin: 6px 19px 6px 0;
22
+ color: #fff;
23
+ line-height: 20px;
24
+ text-align: center;
25
+ background: #165dff;
26
+ border-radius: 4px;
27
+ }
28
+ .biz-event-select,
29
+ .biz-attr-select {
30
+ width: 208px;
31
+ margin-right: 16px;
32
+ }
33
+ .shaixuan {
34
+ margin-top: 2px;
35
+ color: #9aa1a9;
36
+ font-size: 20px !important;
37
+ cursor: pointer;
38
+ }
39
+ .shaixuan:hover {
40
+ color: #165dff;
41
+ }
42
+ .disable {
43
+ color: #ccd0d4 !important;
44
+ cursor: not-allowed !important;
45
+ }
46
+ }
47
+ &-eventSelector.hasattr {
48
+ margin-bottom: 4px;
49
+ padding-bottom: 4px;
50
+ }
51
+ .delete-box {
52
+ position: absolute;
53
+ top: -32px;
54
+ right: -32px;
55
+ width: 64px;
56
+ height: 64px;
57
+ background: #f2f3f4;
58
+ border-radius: 50%;
59
+ .shanchu {
60
+ position: absolute;
61
+ bottom: 5px;
62
+ left: 11px;
63
+ font-size: 17px !important;
64
+ cursor: pointer;
65
+ }
66
+ }
67
+ .delete-box:hover {
68
+ .shanchu {
69
+ color: #FB5547;
70
+ }
71
+ }
72
+ }
@@ -0,0 +1,52 @@
1
+ /**
2
+ * 事件属性
3
+ */
4
+ export interface ConditionsnProps {
5
+ /**
6
+ * 属性id
7
+ */
8
+ attrId: number | undefined;
9
+ /**
10
+ * 属性类型
11
+ */
12
+ propCategory: string | undefined;
13
+ /**
14
+ * 类型
15
+ */
16
+ type: string | undefined;
17
+ /**
18
+ * id
19
+ */
20
+ id?: number | undefined;
21
+ /**
22
+ * 名字
23
+ */
24
+ name?: string | undefined;
25
+ /**
26
+ * 类别
27
+ */
28
+ category?: string | undefined;
29
+ /**
30
+ * 属性name
31
+ */
32
+ attrName?: string | undefined;
33
+ /**
34
+ * 属性label
35
+ */
36
+ label?: string | undefined;
37
+ /**
38
+ * dimensionSub
39
+ */
40
+ dimensionSub?: string | undefined;
41
+ }
42
+ /**
43
+ * EventFilter组件
44
+ */
45
+ export interface EventFilterProps {
46
+ value?: any;
47
+ onChange?: (event: any) => {};
48
+ remove: (index: number | number[]) => void;
49
+ index: number;
50
+ virtualDrawerType: string;
51
+ selectList: [];
52
+ }
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { EventGroupingDrawerProps } from '../types';
3
+ declare const EventGroupingDrawer: React.FC<EventGroupingDrawerProps>;
4
+ export default EventGroupingDrawer;