@zgfe/modules-event 0.0.2-alpha.10

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 (92) hide show
  1. package/README.md +35 -0
  2. package/es/components/common/index.d.ts +6 -0
  3. package/es/components/common/index.js +17 -0
  4. package/es/components/common/styles/index.less +27 -0
  5. package/es/components/eventFilter/index.d.ts +4 -0
  6. package/es/components/eventFilter/index.js +174 -0
  7. package/es/components/eventFilter/styles/index.less +25 -0
  8. package/es/components/eventFilter/types.d.ts +11 -0
  9. package/es/components/eventFilter/types.js +1 -0
  10. package/es/components/index.d.ts +5 -0
  11. package/es/components/index.js +5 -0
  12. package/es/components/renderContent/index.d.ts +5 -0
  13. package/es/components/renderContent/index.js +54 -0
  14. package/es/components/renderContent/styles/index.less +24 -0
  15. package/es/components/renderContent/types.d.ts +12 -0
  16. package/es/components/renderContent/types.js +1 -0
  17. package/es/components/searchPanel/index.d.ts +5 -0
  18. package/es/components/searchPanel/index.js +107 -0
  19. package/es/components/searchPanel/styles/index.less +18 -0
  20. package/es/components/searchPanel/types.d.ts +16 -0
  21. package/es/components/searchPanel/types.js +1 -0
  22. package/es/components/table/index.d.ts +6 -0
  23. package/es/components/table/index.js +207 -0
  24. package/es/components/table/styles/index.less +87 -0
  25. package/es/components/table/types.d.ts +9 -0
  26. package/es/components/table/types.js +1 -0
  27. package/es/components/topBar/index.d.ts +4 -0
  28. package/es/components/topBar/index.js +111 -0
  29. package/es/components/topBar/styles/index.less +49 -0
  30. package/es/components/topBar/types.d.ts +7 -0
  31. package/es/components/topBar/types.js +1 -0
  32. package/es/constants/apis.d.ts +6 -0
  33. package/es/constants/apis.js +6 -0
  34. package/es/constants/chart.d.ts +2 -0
  35. package/es/constants/chart.js +31 -0
  36. package/es/constants/color.d.ts +1 -0
  37. package/es/constants/color.js +1 -0
  38. package/es/constants/fields.d.ts +220 -0
  39. package/es/constants/fields.js +205 -0
  40. package/es/constants/index.d.ts +6 -0
  41. package/es/constants/index.js +6 -0
  42. package/es/constants/initData.d.ts +2 -0
  43. package/es/constants/initData.js +9 -0
  44. package/es/index.d.ts +4 -0
  45. package/es/index.js +3 -0
  46. package/es/modules/chart/demo/data.d.ts +79 -0
  47. package/es/modules/chart/demo/data.js +490 -0
  48. package/es/modules/chart/demo/index.d.ts +2 -0
  49. package/es/modules/chart/demo/index.js +51 -0
  50. package/es/modules/chart/demo/panel.d.ts +2 -0
  51. package/es/modules/chart/demo/panel.js +30 -0
  52. package/es/modules/chart/index.d.ts +4 -0
  53. package/es/modules/chart/index.js +154 -0
  54. package/es/modules/chart/types.d.ts +15 -0
  55. package/es/modules/chart/types.js +1 -0
  56. package/es/modules/content/index.d.ts +5 -0
  57. package/es/modules/content/index.js +266 -0
  58. package/es/modules/content/styles/index.less +18 -0
  59. package/es/modules/content/types.d.ts +11 -0
  60. package/es/modules/content/types.js +1 -0
  61. package/es/modules/content/utils.d.ts +5 -0
  62. package/es/modules/content/utils.js +37 -0
  63. package/es/modules/home/demo/create.d.ts +2 -0
  64. package/es/modules/home/demo/create.js +50 -0
  65. package/es/modules/home/demo/edit.d.ts +2 -0
  66. package/es/modules/home/demo/edit.js +89 -0
  67. package/es/modules/home/demo/index.d.ts +3 -0
  68. package/es/modules/home/demo/index.js +50 -0
  69. package/es/modules/home/demo/scene.d.ts +2 -0
  70. package/es/modules/home/demo/scene.js +86 -0
  71. package/es/modules/home/demo/styles/index.less +33 -0
  72. package/es/modules/home/index.d.ts +5 -0
  73. package/es/modules/home/index.js +124 -0
  74. package/es/modules/home/styles/index.less +44 -0
  75. package/es/modules/home/types.d.ts +19 -0
  76. package/es/modules/home/types.js +1 -0
  77. package/es/style/image/noData.png +0 -0
  78. package/es/style/image/ring.svg +9 -0
  79. package/es/style/index.less +47 -0
  80. package/es/style/theme.d.ts +15 -0
  81. package/es/style/theme.js +14 -0
  82. package/es/types.d.ts +61 -0
  83. package/es/types.js +6 -0
  84. package/es/utils/ajaxConfig.d.ts +8 -0
  85. package/es/utils/ajaxConfig.js +40 -0
  86. package/es/utils/base64.d.ts +23 -0
  87. package/es/utils/base64.js +125 -0
  88. package/es/utils/formData.d.ts +10 -0
  89. package/es/utils/formData.js +227 -0
  90. package/es/utils/util.d.ts +32 -0
  91. package/es/utils/util.js +139 -0
  92. package/package.json +57 -0
@@ -0,0 +1,207 @@
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
+ 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; }
3
+ 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; }
4
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
5
+ 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."); }
6
+ 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); }
7
+ 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; }
8
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
9
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
10
+ import { ajax, BizGlobalDataContext, BizTable, IconFont } from '@zgfe/business-lib';
11
+ import React, { useContext, useEffect, useMemo, useState } from 'react';
12
+ import Highlight from 'react-highlight';
13
+ import { CopyToClipboard } from 'react-copy-to-clipboard';
14
+ import 'highlight.js/styles/vs.css';
15
+ import base64 from '../../utils/base64';
16
+ import { Apis } from '../../constants';
17
+ import { Modal, message } from 'antd';
18
+ import { formTableData, getColumns } from '../../utils/formData';
19
+ import './styles/index.less';
20
+ import { getValue } from '../../modules/content/utils';
21
+ import { EventContext } from '../../types';
22
+ var classPrefix = 'mi-table';
23
+ var EventTable = function EventTable(props) {
24
+ var dataSource = props.dataSource,
25
+ searchData = props.searchData,
26
+ showList = props.showList;
27
+ var _useState = useState([]),
28
+ _useState2 = _slicedToArray(_useState, 2),
29
+ tableData = _useState2[0],
30
+ setTableData = _useState2[1];
31
+ var _useContext = useContext(BizGlobalDataContext),
32
+ currentApp = _useContext.currentApp,
33
+ _useContext$eventGrou = _useContext.eventGroupList,
34
+ eventGroupList = _useContext$eventGrou === void 0 ? [] : _useContext$eventGrou;
35
+ var _useContext2 = useContext(EventContext),
36
+ onUserDrill = _useContext2.onUserDrill,
37
+ _useContext2$defaultS = _useContext2.defaultSearch,
38
+ defaultSearch = _useContext2$defaultS === void 0 ? {} : _useContext2$defaultS,
39
+ panelName = _useContext2.panelName;
40
+ var _useState3 = useState([]),
41
+ _useState4 = _slicedToArray(_useState3, 2),
42
+ sortTable = _useState4[0],
43
+ setSortTable = _useState4[1];
44
+ var _useState5 = useState([]),
45
+ _useState6 = _slicedToArray(_useState5, 2),
46
+ searchTable = _useState6[0],
47
+ setSearchTable = _useState6[1];
48
+ var _useState7 = useState(false),
49
+ _useState8 = _slicedToArray(_useState7, 2),
50
+ sqlModal = _useState8[0],
51
+ setSqlModal = _useState8[1];
52
+ var _useState9 = useState(''),
53
+ _useState10 = _slicedToArray(_useState9, 2),
54
+ sqlText = _useState10[0],
55
+ setSqlText = _useState10[1];
56
+ useEffect(function () {
57
+ var gLen = (searchData === null || searchData === void 0 ? void 0 : searchData.dimension) ? 1 : 0;
58
+ var sortData = formTableData(dataSource, searchData.userGroup || [0], gLen, eventGroupList);
59
+ setSearchTable(sortData);
60
+ setSortTable(sortData);
61
+ setTableData(sortData.slice(0, 10));
62
+ }, []);
63
+ var columns = useMemo(function () {
64
+ var _searchData$userGroup = searchData.userGroup,
65
+ userGroup = _searchData$userGroup === void 0 ? [0] : _searchData$userGroup;
66
+ var onShowClick = function onShowClick(nameGroup) {
67
+ props.changeShowByName(nameGroup);
68
+ };
69
+ var onClickToDetail = function onClickToDetail(item, time, count) {
70
+ var _searchData$filters;
71
+ var group_value = {};
72
+ if (searchData.dimension) {
73
+ group_value = {
74
+ group_value: item.dimension
75
+ };
76
+ }
77
+ onUserDrill && onUserDrill({
78
+ appId: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
79
+ platform: (currentApp === null || currentApp === void 0 ? void 0 : currentApp.platform) || 0,
80
+ count: count,
81
+ module: 'event',
82
+ params: _objectSpread(_objectSpread({}, group_value), {}, {
83
+ id: searchData.id,
84
+ userGroup: searchData.userGroup,
85
+ chartType: searchData.chartType,
86
+ conditions: (_searchData$filters = searchData.filters) === null || _searchData$filters === void 0 ? void 0 : _searchData$filters.conditions,
87
+ dimension: searchData.dimension,
88
+ dataType: searchData.id ? 'event' : 'overview',
89
+ time: _objectSpread(_objectSpread({}, searchData.time), {}, {
90
+ begin: time[0],
91
+ end: time.length > 1 ? time[1] : time[0]
92
+ })
93
+ }),
94
+ source: 'EVENT',
95
+ url: '/data/appEventBatch.jsp'
96
+ }, _objectSpread(_objectSpread({
97
+ source: 'EVENT'
98
+ }, defaultSearch), {}, {
99
+ name: panelName,
100
+ data: searchData
101
+ }));
102
+ };
103
+ var _getColumns = getColumns(dataSource.xAxis || [], userGroup, searchData, showList, onShowClick, onClickToDetail);
104
+ return _getColumns;
105
+ }, [dataSource.xAxis, showList, sortTable, panelName]);
106
+ var onChangeTable = function onChangeTable(pagination) {
107
+ var startNum = (pagination.current - 1) * pagination.pageSize;
108
+ var endNum = pagination.current * pagination.pageSize;
109
+ setTableData(searchTable.slice(startNum, endNum));
110
+ };
111
+ var seeSql = function seeSql() {
112
+ ajax(Apis.getEventDataSql, {
113
+ method: 'post',
114
+ data: _objectSpread({
115
+ appId: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
116
+ platform: (currentApp === null || currentApp === void 0 ? void 0 : currentApp.platform) || 0,
117
+ service: !searchData.dimension ? 'event/overview_sql' : 'event_sql'
118
+ }, searchData)
119
+ }).then(function (res) {
120
+ setSqlText(res.data.sql);
121
+ setSqlModal(true);
122
+ });
123
+ };
124
+ var download = function download() {
125
+ var seriesNames = [];
126
+ if (searchData.userGroup && searchData.userGroup.length > 1) {
127
+ seriesNames.push(base64.encode('用户群'));
128
+ }
129
+ if (searchData.dimension) {
130
+ seriesNames.push(base64.encode(getValue(searchData.dimension).label));
131
+ }
132
+ if (searchData.id && !searchData.dimension || !searchData.id) {
133
+ seriesNames.push(base64.encode('事件'));
134
+ }
135
+ var params = _objectSpread(_objectSpread({
136
+ appId: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
137
+ platform: (currentApp === null || currentApp === void 0 ? void 0 : currentApp.platform) || 0
138
+ }, searchData), {}, {
139
+ down: {
140
+ fname: base64.encode('事件分析'),
141
+ titles: seriesNames
142
+ }
143
+ });
144
+ ajax(Apis.eventDownloadReport, {
145
+ method: 'post',
146
+ data: params,
147
+ responseType: 'blob',
148
+ fileName: '事件分析',
149
+ getResponse: true
150
+ }).then(function () {
151
+ message.success('下载成功!');
152
+ });
153
+ };
154
+ return /*#__PURE__*/React.createElement("div", {
155
+ className: classPrefix
156
+ }, /*#__PURE__*/React.createElement("div", {
157
+ className: "".concat(classPrefix, "-table-header")
158
+ }, /*#__PURE__*/React.createElement("span", null, "\u6307\u6807\u8BE6\u60C5"), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
159
+ onClick: seeSql
160
+ }, "\u67E5\u770BSQL"), /*#__PURE__*/React.createElement("div", {
161
+ onClick: download
162
+ }, /*#__PURE__*/React.createElement(IconFont, {
163
+ type: "xiazai1"
164
+ }), "\u4E0B\u8F7D\u6570\u636E"))), /*#__PURE__*/React.createElement(BizTable, {
165
+ total: searchTable.length,
166
+ columns: columns,
167
+ dataSource: tableData,
168
+ rowKey: "id",
169
+ scroll: {
170
+ x: true
171
+ },
172
+ onChange: onChangeTable
173
+ }), /*#__PURE__*/React.createElement(Modal, {
174
+ open: sqlModal,
175
+ wrapClassName: "event-table-sql-modal",
176
+ okText: "\u786E\u5B9A",
177
+ cancelText: "\u53D6\u6D88",
178
+ closeIcon: /*#__PURE__*/React.createElement(IconFont, {
179
+ type: "qingchu"
180
+ }),
181
+ title: "\u67E5\u770BSQL",
182
+ className: "".concat(classPrefix, "-share-panel"),
183
+ onCancel: function onCancel() {
184
+ return setSqlModal(false);
185
+ },
186
+ onOk: function onOk() {
187
+ return setSqlModal(false);
188
+ },
189
+ maskClosable: false
190
+ }, /*#__PURE__*/React.createElement(Highlight, {
191
+ languageName: "sql",
192
+ style: {
193
+ whiteSpace: 'pre-wrap',
194
+ background: 'red'
195
+ }
196
+ }, sqlText), /*#__PURE__*/React.createElement(CopyToClipboard, {
197
+ text: JSON.stringify(sqlText, null, 2),
198
+ onCopy: function onCopy() {
199
+ return message.success('复制成功!');
200
+ }
201
+ }, /*#__PURE__*/React.createElement("div", {
202
+ className: "copy-box"
203
+ }, /*#__PURE__*/React.createElement(IconFont, {
204
+ type: "fuzhi1"
205
+ }), "\u590D\u5236\u4EE3\u7801"))));
206
+ };
207
+ export default EventTable;
@@ -0,0 +1,87 @@
1
+ .mi-table {
2
+ margin-top: 16px;
3
+ &-table-header {
4
+ display: flex;
5
+ justify-content: space-between;
6
+ height: 50px;
7
+ padding: 0 12px;
8
+ line-height: 50px;
9
+ background: #fafafb;
10
+ border-radius: 8px 8px 0 0;
11
+ > :nth-child(2) {
12
+ display: flex;
13
+ margin-top: 9px;
14
+ > :nth-child(1) {
15
+ margin-right: 16px;
16
+ }
17
+ div {
18
+ height: 32px;
19
+ padding: 0 16px;
20
+ line-height: 32px;
21
+ background: #fff;
22
+ border: 1px solid #f2f3f4;
23
+ cursor: pointer;
24
+ .xiazai1 {
25
+ margin-right: 4px;
26
+ font-size: 18px !important;
27
+ vertical-align: -2px;
28
+ }
29
+ }
30
+ }
31
+ }
32
+ .ant-table {
33
+ border-radius: 0 0 8px 8px;
34
+ }
35
+ .ant-table-cell-with-append {
36
+ padding-left: 20px;
37
+ .ant-table-row-expand-icon {
38
+ position: absolute;
39
+ left: 0;
40
+ margin-top: 0;
41
+ }
42
+ }
43
+ }
44
+ .event-table-sql-modal {
45
+ .ant-modal-header {
46
+ position: relative;
47
+ z-index: 1;
48
+ height: 82px;
49
+ background: transparent;
50
+ }
51
+ .ant-modal-body {
52
+ padding: 0 24px 18px 24px;
53
+ }
54
+ .ant-modal-close-x {
55
+ margin-top: 13px;
56
+ margin-right: 8px;
57
+ }
58
+ img {
59
+ width: 100%;
60
+ }
61
+ .qingchu {
62
+ font-weight: 500;
63
+ font-size: 22px !important;
64
+ }
65
+ .modal-bg {
66
+ position: absolute;
67
+ top: 0;
68
+ left: 0;
69
+ width: 100%;
70
+ height: auto;
71
+ }
72
+ .hljs {
73
+ padding: 16px;
74
+ background: #fafafb;
75
+ }
76
+ .copy-box {
77
+ position: absolute;
78
+ top: 98px;
79
+ right: 40px;
80
+ padding: 0 8px;
81
+ background: #f2f3f4;
82
+ border-radius: 4px;
83
+ .fuzhi1 {
84
+ margin-right: 8px;
85
+ }
86
+ }
87
+ }
@@ -0,0 +1,9 @@
1
+ import { ResponseDataProps, SearchValue } from '../../types';
2
+ export interface EventTableProps {
3
+ dataSource: ResponseDataProps;
4
+ searchData: SearchValue;
5
+ showList: string[];
6
+ isOverview?: boolean;
7
+ changeShowByName: (name: string) => void;
8
+ changeShow: (names: string[]) => void;
9
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import './styles/index.less';
3
+ declare const TopBar: React.FC<any>;
4
+ export default TopBar;
@@ -0,0 +1,111 @@
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
+ 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; }
3
+ 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; }
4
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
5
+ 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."); }
6
+ 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); }
7
+ 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; }
8
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
9
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
10
+ import { Button } from 'antd';
11
+ import React, { useContext, useState } from 'react';
12
+ import { BizAddToPanel, BizAddToScene, BizGlobalDataContext } from '@zgfe/business-lib';
13
+ import './styles/index.less';
14
+ import { EventContext } from '../../types';
15
+ import { chartTypes, platformOption } from '../../constants/fields';
16
+ var classPrefix = 'modules-event-topbar';
17
+ var TopBar = function TopBar(props) {
18
+ var _useContext = useContext(EventContext),
19
+ panelId = _useContext.panelId,
20
+ afterEditTarget = _useContext.afterEditTarget,
21
+ enableAddScene = _useContext.enableAddScene;
22
+ var _useState = useState(false),
23
+ _useState2 = _slicedToArray(_useState, 2),
24
+ showPanel = _useState2[0],
25
+ setShowPanel = _useState2[1];
26
+ var _useState3 = useState(false),
27
+ _useState4 = _slicedToArray(_useState3, 2),
28
+ showScene = _useState4[0],
29
+ setShowScene = _useState4[1];
30
+ var _useContext2 = useContext(BizGlobalDataContext),
31
+ currentApp = _useContext2.currentApp;
32
+ var searchData = props.searchData,
33
+ platformChange = props.platformChange;
34
+ var _useState5 = useState(searchData.platform === undefined ? 0 : searchData.platform),
35
+ _useState6 = _slicedToArray(_useState5, 2),
36
+ selectPlatform = _useState6[0],
37
+ setselectPlatform = _useState6[1];
38
+ var _useState7 = useState(),
39
+ _useState8 = _slicedToArray(_useState7, 2),
40
+ panelType = _useState8[0],
41
+ setPanelType = _useState8[1];
42
+ var closeHandle = function closeHandle(type) {
43
+ if (type === 'panel') {
44
+ setPanelType(undefined);
45
+ setShowPanel(false);
46
+ } else {
47
+ setShowScene(false);
48
+ }
49
+ };
50
+ var _onOk = function onOk(type, val) {
51
+ closeHandle(type);
52
+ if (afterEditTarget) afterEditTarget(type, val);
53
+ };
54
+ return /*#__PURE__*/React.createElement("div", {
55
+ className: classPrefix
56
+ }, !panelId && /*#__PURE__*/React.createElement("div", {
57
+ className: "".concat(classPrefix, "-panel")
58
+ }, /*#__PURE__*/React.createElement(Button, {
59
+ onClick: function onClick() {
60
+ setShowPanel(true);
61
+ }
62
+ }, "\u6DFB\u52A0\u5230\u770B\u677F"), showPanel && /*#__PURE__*/React.createElement(BizAddToPanel, {
63
+ type: panelType,
64
+ params: _objectSpread({
65
+ app_id: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
66
+ module: 'event'
67
+ }, searchData),
68
+ styleOptions: chartTypes,
69
+ onCancel: function onCancel() {
70
+ return closeHandle('panel');
71
+ },
72
+ onOk: function onOk(data) {
73
+ return _onOk('panel', data);
74
+ }
75
+ })), enableAddScene && /*#__PURE__*/React.createElement("div", {
76
+ className: "".concat(classPrefix, "-scene")
77
+ }, /*#__PURE__*/React.createElement(Button, {
78
+ onClick: function onClick() {
79
+ setShowScene(true);
80
+ }
81
+ }, "\u6DFB\u52A0\u5E38\u7528\u573A\u666F"), showScene && /*#__PURE__*/React.createElement(BizAddToScene, {
82
+ params: _objectSpread({
83
+ app_id: currentApp === null || currentApp === void 0 ? void 0 : currentApp.appId,
84
+ module: 'event'
85
+ }, searchData),
86
+ onOk: function onOk(data) {
87
+ return _onOk('scene', data);
88
+ },
89
+ onCancel: function onCancel() {
90
+ return closeHandle('scene');
91
+ }
92
+ })), /*#__PURE__*/React.createElement(Button, {
93
+ className: "".concat(classPrefix, "-earlywarning"),
94
+ type: "primary",
95
+ onClick: function onClick() {
96
+ return console.log('设置预警流失');
97
+ }
98
+ }, "\u8BBE\u7F6E\u9884\u8B66\u6D41\u5931"), /*#__PURE__*/React.createElement("div", {
99
+ className: "".concat(classPrefix, "-platform")
100
+ }, platformOption.map(function (item) {
101
+ return /*#__PURE__*/React.createElement("div", {
102
+ className: "".concat(selectPlatform === item.key ? 'active' : ''),
103
+ key: item.key,
104
+ onClick: function onClick() {
105
+ setselectPlatform(item.key);
106
+ platformChange(item.key);
107
+ }
108
+ }, item.value);
109
+ })));
110
+ };
111
+ export default TopBar;
@@ -0,0 +1,49 @@
1
+ @import '~@zgfe/business-lib/es/assets/styles/inner.less';
2
+
3
+ .modules-event-topbar {
4
+ display: flex;
5
+ justify-content: flex-end;
6
+ margin: 8px 0;
7
+ padding-right: 24px;
8
+ &-panel {
9
+ margin-right: 16px;
10
+ }
11
+ &-scene {
12
+ margin-right: 16px;
13
+ }
14
+ &-earlywarning {
15
+ margin-right: 16px;
16
+ }
17
+ &-platform {
18
+ display: flex;
19
+ height: 32px;
20
+ line-height: 32px;
21
+ > div {
22
+ position: relative;
23
+ padding: 0 16px;
24
+ background: #fff;
25
+ border: 1px solid #ecedf0;
26
+ cursor: pointer;
27
+ }
28
+ > div:hover,
29
+ .active {
30
+ z-index: 1;
31
+ color: #165dff;
32
+ background: #e8efff;
33
+ border: 1px solid #165dff;
34
+ }
35
+ > :nth-child(1) {
36
+ border-radius: 4px 0 0 4px;
37
+ }
38
+ > :nth-child(2) {
39
+ margin-left: -1px;
40
+ }
41
+ > :nth-child(3) {
42
+ margin-left: -1px;
43
+ }
44
+ > :nth-child(4) {
45
+ margin-left: -1px;
46
+ border-radius: 0 4px 4px 0;
47
+ }
48
+ }
49
+ }
@@ -0,0 +1,7 @@
1
+ export interface TopBarProps {
2
+ title?: string;
3
+ type?: string;
4
+ onSave?: () => void;
5
+ onSaveAs?: () => void;
6
+ onEditTitle?: (val: string) => void;
7
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,6 @@
1
+ declare const Apis: {
2
+ dataList: string;
3
+ getEventDataSql: string;
4
+ eventDownloadReport: string;
5
+ };
6
+ export default Apis;
@@ -0,0 +1,6 @@
1
+ var Apis = {
2
+ dataList: '/zg/web/v2/data/eventDataList',
3
+ getEventDataSql: '/zg/web/v2/dataSql/getEventDataSql',
4
+ eventDownloadReport: '/zg/web/v2/data/eventDownloadReport'
5
+ };
6
+ export default Apis;
@@ -0,0 +1,2 @@
1
+ import { ChartItemProp } from '../types';
2
+ export declare const chartTypeOptions: ChartItemProp[];
@@ -0,0 +1,31 @@
1
+ import { IconFont } from '@zgfe/business-lib';
2
+ import React from 'react';
3
+ export var chartTypeOptions = [{
4
+ label: '趋势图',
5
+ value: 'line',
6
+ icon: /*#__PURE__*/React.createElement(IconFont, {
7
+ type: "qushitu1",
8
+ size: 16
9
+ })
10
+ }, {
11
+ label: '汇总图',
12
+ value: 'bar',
13
+ icon: /*#__PURE__*/React.createElement(IconFont, {
14
+ type: "huizongtu",
15
+ size: 16
16
+ })
17
+ }, {
18
+ label: '占比图',
19
+ value: 'pie',
20
+ icon: /*#__PURE__*/React.createElement(IconFont, {
21
+ type: "bingtu",
22
+ size: 16
23
+ })
24
+ }, {
25
+ label: '地图',
26
+ value: 'map',
27
+ icon: /*#__PURE__*/React.createElement(IconFont, {
28
+ type: "ditu",
29
+ size: 16
30
+ })
31
+ }];
@@ -0,0 +1 @@
1
+ export declare const chartColors: string[];
@@ -0,0 +1 @@
1
+ export var chartColors = ['#165DFF', '#80E1D9', '#65789B', '#F8BC3B', '#6F66ED', '#66AFED', '#9661BC', '#FF7557', '#4DB273', '#F08BB4', '#CDDBFD', '#CDF3F0', '#CED4DE', '#FCE7B9', '#D1CEFD', '#D3E7F9', '#DFCFEA', '#FFD1C7', '#BBDEC8', '#FFE0ED'];